温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

spark mllib中如何实现朴素贝叶斯算法

发布时间:2021-12-16 14:40:12 来源:亿速云 阅读:154 作者:小新 栏目:云计算

这篇文章主要介绍了spark mllib中如何实现朴素贝叶斯算法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

数据源说明

第一列每行的标签,其他列为特征

运行代码如下

package spark.logisticRegression

import org.apache.spark.mllib.classification.NaiveBayes
import org.apache.spark.mllib.linalg.Vectors
import org.apache.spark.mllib.util.MLUtils
import org.apache.spark.{SparkConf, SparkContext}

/**
  * 分类 - 朴素贝叶斯简单示例
  * 后验概率 = 先验概率 x 调整因子
  * Created by eric on 16-7-18.
  */
object Bayes {
  val conf = new SparkConf()                                     //创建环境变量
    .setMaster("local")                                             //设置本地化处理
    .setAppName("Bayes")                              //设定名称
  val sc = new SparkContext(conf)

  def main(args: Array[String]) {
    val data = MLUtils.loadLabeledPoints(sc, "./src/main/spark/logisticRegression/bayes.txt")
    val model = NaiveBayes.train(data, 1.0)
    model.labels.foreach(println)//打印 label(labels是标签类别)
    model.pi.foreach(println)//打印先验概率 (pi存储各个label先验概率)
    //0.0
    //1.0
    //2.0
    //-1.0986122886681098
    //-1.0986122886681098
    //-1.0986122886681098
    val test = Vectors.dense(0, 0, 10)//新预测数据
    val result = model.predict(test)//预测结果
    println(result)//2.0
  }
}

bayes.txt

0,1 0 0
0,2 0 0
1,0 1 0
1,0 2 0
2,0 0 1
2,0 0 2

结果如图

spark mllib中如何实现朴素贝叶斯算法

感谢你能够认真阅读完这篇文章,希望小编分享的“spark mllib中如何实现朴素贝叶斯算法”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI