第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

Spark MLlib機器學習開發(fā)指南(6)--特征提取--CountVectorizer

標簽:
Spark

Spark MLlib机器学习开发指南(6)--特征提取,转换,选择--CountVectorizer

翻译自CountVectorizer,基于最新2.2.0版本翻译,转载注明出处 xcrossed 机器学习

CountVectorizer

CountVectorizer和CountVectorizerModel的目标是帮助将一个文档集合转换成一个包含token计数的向量当没有预先的字典可用时。CountVectorizer可用作估计器来提取词汇表,生成CountVectorizerModel。该模型为文档中的文档生成稀疏的词汇表示形式,然后将这些文档传递给LDA等其他算法。

在拟合过程中,CountVectorizer将在语料库中选择由词频排序最高的词汇。一个可选的参数minDF也通过指定一个词汇必须出现在词汇表中的最小值(或小于1.0)来影响拟合过程。另一个可选的二进制切换参数控制输出向量。如果设置为真,所有非零计数都设置为1。这对于离散的概率模型来说尤其有用,模型是二进制的,而不是整数的。

Examples
假定我们有一个列名为id和texts的DataFrame

 id | texts
----|---------- 0  | Array("a", "b", "c") 1  | Array("a", "b", "b", "c", "a")

每行在texts列中表示的是一个Array[String]类型的文档,调用CountVectorizer的fit()方法能产生一个包含词汇表(a, b, c)的CountVectorizerModel.转换后包含一个vector的输出列

 id | texts                           | vector
----|---------------------------------|--------------- 0  | Array("a", "b", "c")            | (3,[0,1,2],[1.0,1.0,1.0]) 1  | Array("a", "b", "b", "c", "a")  | (3,[0,1,2],[2.0,2.0,1.0])

每个向量表示该文档在词汇表上的出现计数。

详细API参考CountVectorizer Scala docsCountVectorizerModel Scala docs

import org.apache.spark.ml.feature.{CountVectorizer, CountVectorizerModel}

val df = spark.createDataFrame(Seq(
  (0, Array("a", "b", "c")),
  (1, Array("a", "b", "b", "c", "a"))
)).toDF("id", "words")// fit a CountVectorizerModel from the corpusval cvModel: CountVectorizerModel = new CountVectorizer()
  .setInputCol("words")
  .setOutputCol("features")
  .setVocabSize(3)
  .setMinDF(2)
  .fit(df)// alternatively, define CountVectorizerModel with a-priori vocabularyval cvm = new CountVectorizerModel(Array("a", "b", "c"))
  .setInputCol("words")
  .setOutputCol("features")

cvModel.transform(df).show(false)

完整示例代码在spark代码仓库"examples/src/main/scala/org/apache/spark/examples/ml/CountVectorizerExample.scala"



作者:xcrossed
链接:https://www.jianshu.com/p/bbf4d3811222


點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優(yōu)惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號

舉報

0/150
提交
取消