首页 > 编程语言 >本地测试Spark的逻辑回归算法

本地测试Spark的逻辑回归算法

时间:2023-09-25 10:44:59浏览次数:44  
标签:val 0.1 0.3 算法 本地 apache import Spark spark

本地小数据量测试了一下Spark的LogisticRegressionWithSGD算法,效果不尽如人意。

    数据样例如下,竖杠前的0,1代表两种类型,后面逗号隔开的是两个特征,两个特征只要有一个大于等于0.6就会被分为1这一类,否则就是0。

1|0.3,0.6
0|0.2,0.1
1|0.5,0.6
1|0.8,0.3
0|0.4,0.3
0|0.3,0.4
0|0.3,0.1
0|0.3,0.2
0|0.1,0.4
1|0.3,0.7
1|0.8,0.2
1|0.9,0.1
0|0.2,0.1
0|0.25,0.11

  代码如下:

import org.apache.spark.mllib.classification.LogisticRegressionWithSGD
import org.apache.spark.mllib.linalg.Vectors
import org.apache.spark.mllib.regression.LabeledPoint
import org.apache.spark.{SparkConf, SparkContext}


object TestLogisticsAlgorithm {
  def main(args: Array[String]): Unit = {
    val sparkConf = new SparkConf().setMaster("local").setAppName("test").set("spark.testing.memory", "2147480000")
    val sparkContext = new SparkContext(sparkConf)
    val trainData = sparkContext.textFile("file:///D:\\var\\11.txt")
    val modelData = trainData.map(line => {
      println(line)
      val tmpData = line.split("\\|")
      //val tmpV:Vector=
      LabeledPoint(tmpData(0).toDouble,Vectors.dense(tmpData(1).split("\\,").map(_.toDouble)))
    }).cache()


    val model = LogisticRegressionWithSGD.train(modelData, 200)
    val predictData = Vectors.dense(0.01, 0.1)
    val result = model.predict(predictData)
    println(result)
  }
}

  

    输出效果为1,理想效果应该是0,如下图:

 

 关注公众号了解更多:

 

标签:val,0.1,0.3,算法,本地,apache,import,Spark,spark
From: https://www.cnblogs.com/beststrive/p/17727393.html

相关文章

  • 简单而经典:Java中的冒泡排序算法详解
    当谈到简单的排序算法时,冒泡排序(BubbleSort)通常是其中之一。虽然它不是最高效的排序算法之一,但它的简单性和易于理解使它成为学习排序算法的良好起点。在本文中,我们将详细介绍Java中的冒泡排序。冒泡排序的基本原理冒泡排序(BubbleSort)是一种简单的排序算法,它通过多次遍历待排序的......
  • 【算法】归并排序算法
    归并排序归并排序的思想归并排序运用了典型的分治策略,是一种稳定的排序算法,其时间复杂度为\(O(nlogn)\),空间复杂度为\(O(n)\)。分治的基本思想是将一个规模为N的问题分解为K个规模较小的子问题,这些子问题相互独立且与原问题性质相同。求出子问题的解,就可得到原问题的解。......
  • R语言使用Metropolis-Hastings采样算法自适应贝叶斯估计与可视化|附代码数据
    原文链接:http://tecdat.cn/?p=19889原文出处:拓端数据部落公众号 最近我们被客户要求撰写关于Metropolis-Hastings采样的研究报告,包括一些图形和统计输出。如果您可以写出模型的似然函数,则 Metropolis-Hastings算法可以负责其余部分(即MCMC)。我写了r代码来简化对任意模型的后......
  • 基于方向编码的模板匹配算法matlab仿真
    1.算法运行效果图预览  2.算法运行软件版本MATLAB2022a 3.算法理论概述       模板匹配是一种常见的计算机视觉方法,用于在一幅图像中寻找指定的模板。它在目标检测、图像识别、物体跟踪等领域中有广泛的应用。基于方向编码的模板匹配算法是一种改进的模板......
  • 【算法】循环不变式
    循环不变式一、数学归纳法因为循环不变式的定义与数学归纳法类似,所以我们先来看看数学归纳法。我们首先从高中开始回忆起,有关于数列的数学归纳法。一般的,证明一个与正整数\(n\)有关的命题,可以分为以下两个步骤[1]:1.归纳奠基:证明当\(n=n_0(n_0\inN^*)\)时,命题成立。2......
  • 排序算法
    排序算法哪些是稳定的排序算法,哪些是不稳定的稳定的:直接插入排序:最坏情况是逆序,时间复杂度是O(N^2^),最好情况是插入的都是顺序,时间复杂度O(N),空间复杂度O(1)冒泡排序:时间复杂度O(N^2^),空间复杂度O(1)计数排序:时间复杂度O(N+Range),空间复杂度O(range)不稳定:希尔排序:时间复杂......
  • JS实现电子签名,并将带logo和日期时间水印的电子签名图片保存到本地
    效果如下 实现代码如下<!DOCTYPEhtml><html><head><metacharset="utf-8"><title>电子签名</title><linkrel="icon"href="http://服务器IP/pic/xmj_logo.png"><style>......
  • 最近公共祖先 Tarjan算法
    P3379【模板】最近公共祖先(LCA)利用并查集点击查看代码#include<bits/stdc++.h>usingnamespacestd;constintN=5e5+10;vector<int>g[N];vector<pair<int,int>>query[N];intans[N],vis[N];intf[N];intfind(intx){ returnf[x]==x?x:f[x]......
  • 实现一致性哈希算法
    背景一致性哈希主要用于分布式系统解决数据存储与访问的负载问题,极大的提高了可用性与扩展性。分布式系统往往是把数据分布到不同的节点,这些节点可以动态的加入或离开集群,这样就需要考虑一些问题,如果按照传统的hash算法进行数据分布,动态扩缩节点就需要对数据进行rehash,数据量大或......
  • 一致性哈希算法实现(java)
    代码基本实现未完待续........... publicstaticvoidmain(String[]args){​TreeMap<Integer,String>hashNodes=newTreeMap<>();hashNodes.put(1,"1.1.1.1");hashNodes.put(4,"1.1.1.2");hashNodes.put......