日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 互聯網 > Spark MLlib NaiveBayes 貝葉斯分類器

Spark MLlib NaiveBayes 貝葉斯分類器

來源:程序員人生   發布時間:2015-05-08 08:03:41 閱讀次數:3629次

1.1樸素貝葉斯公式

貝葉斯定理:

      

其中A為事件,B為種別,P(B|A)為事件A條件下屬于B種別的幾率。

樸素貝葉斯分類的正式定義以下:

      1、設為1個待分類項,而每一個a為x的1個特點屬性。

      2、有種別集合

      3、計算

      4、如果,則

      那末現在的關鍵就是如何計算第3步中的各個條件幾率:

      1、找到1個已知分類的待分類項集合,這個集合叫做訓練樣本集。

      2、統計得到在各種別下各個特點屬性的條件幾率估計。即

      3、如果各個特點屬性是條件獨立的,則根據貝葉斯定理有以下推導:

      

      由于分母對所有種別為常數,由于我們只要將份子最大化皆可。又由于各特點屬性是條件獨立的,所以有:

        

1.2 NaiveBayesModel源碼解析

1、NaiveBayesModel主要的3個變量:

1)labels:種別

scala> labels

res56: Array[Double] = Array(2.0, 0.0, 1.0)

2)pi:各個label的先驗幾率

scala> pi

res57: Array[Double] = Array(⑴.1631508098056809, -0.9808292530117262, ⑴.1631508098056809)

3)theta:存儲各個特點在各個種別中的條件幾率。

scala> theta

res58: Array[Array[Double]] = Array(Array(⑵.032921526044943, ⑴.8658674413817768, -0.33647223662121295), Array(-0.2451224580329847, ⑵.179982770901713, ⑵.26002547857525), Array(⑴.9676501356917193, -0.28410425110389714, ⑵.2300144001592104))

4)lambda:平滑因子

 

2、NaiveBayesModel代碼

1) train

/**

   * Run the algorithm with the configured parameters on an input RDD of LabeledPoint entries.

   *

   * @param data RDD of [[org.apache.spark.mllib.regression.LabeledPoint]].

   */

  def run(data: RDD[LabeledPoint]) = {

// requireNonnegativeValues:取每個樣本數據的特點值,以向量情勢存儲,特點植必須為非負數。

    val requireNonnegativeValues: Vector => Unit = (v: Vector) => {

      val values = vmatch {

        case SparseVector(size, indices, values) =>

          values

        case DenseVector(values) =>

          values

      }

      if (!values.forall(_ >=0.0)) {

        thrownew SparkException(s"Naive Bayes requires nonnegative feature values but found $v.")

      }

    }

 

    // Aggregates term frequencies per label.

    // TODO: Calling combineByKey and collect creates two stages, we can implement something

// TODO: similar to reduceByKeyLocally to save one stage.

// aggregated:對所有樣本數據進行聚合,以labelkey,聚合同1個labelfeatures

// createCombiner:完成樣本從VCcombine轉換,(v: Vector)

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 美日韩精品视频 | 欧美亚洲国产精品 | 国产专区一区 | 欧美不卡视频 | 精品国产91乱码一区二区三区 | 一区二区三区在线电影 | 亚洲精品国产综合99久久夜夜嗨 | 在线亚洲电影 | av片在线看免费高清网站 | 在线播放国产视频 | 成人短视频在线观看 | 国产精品一区二区三区免费视频 | 神马久久福利 | 国产精品亚洲成人 | 亚洲视频在线观看网址 | 一区色| 五月激情久久 | 综合色区 | 国产乱码精品一区二区三区中文 | 久久国产精品99久久久久久老狼 | 精品久久久久久亚洲精品 | 久久久久久国产精品免费免费 | 亚洲天堂资源 | 2022国产精品 | 五月激情综合网 | 国产a区| 男女网站在线观看 | 在线欧美日韩 | 精品一区二区三区国产 | 欧洲xxx | 欧美三级免费网站 | 精品国产一区二区三区不卡蜜臂 | 久久久亚洲综合 | 日韩特黄特色大片免费视频 | 亚洲色图第一页 | 在线亚洲自拍 | 国产精品久久久久久在线 | 国产一区欧美 | av在线色| 亚洲一区网站 | 国产伦精品一区二区三区精品视频 |