1. 程式人生 > >Spark MLlib 特徵抽取、轉化和選擇 -- 特徵抽取3 CountVectorizer

Spark MLlib 特徵抽取、轉化和選擇 -- 特徵抽取3 CountVectorizer

這一部分主要介紹和特徵處理相關的演算法,大體分為以下三類:
1)特徵抽取:從原始資料中抽取特徵

2)特徵轉換:特徵的維度、特徵的轉化、特徵的修改

3)特徵選取:從大規模特徵集中選取一個子集

特徵提取:

CountVectorizer

CountVectorizer旨在通過計數來將一個文件轉換為向量。當不存在先驗字典時,CountVectorizer作為Estimator提取詞彙進行訓練,並生成一個CountVectorizerModel用於儲存相應的詞彙向量空間。

在CountVectorizerModel的訓練過程中,CountVectorizer將根據語料庫中的詞頻排序從高到低進行選擇,詞彙表的最大含量由vocabsize超引數來指定,超引數minDF,則指定詞彙表中的詞語至少要在多少個不同文件中出現。

1)匯入CountVectorizer所需要的包:

2)假設我們有如下的DataFrame,其包含id和words兩列,可以看成是一個包含兩個文件的迷你語料庫

3)通過CountVectorizer設定超引數,訓練一個CountVectorizer,這裡設定詞彙表的最大量為3,設定詞彙表中的詞至少要在2個文件中出現過,以過濾那些偶然出現的詞彙。

4)在訓練結束後,可以通過cv對DataFrame進行fit,獲得到模型的詞彙表:

5)在訓練結束後,可以通過cv對DataFrame進行fit,獲得到模型的詞彙表:

相關推薦

Spark MLlib 特徵抽取轉化選擇 -- 特徵抽取3 CountVectorizer

這一部分主要介紹和特徵處理相關的演算法,大體分為以下三類: 1)特徵抽取:從原始資料中抽取特徵 2)特徵轉換:特徵的維度、特徵的轉化、特徵的修改 3)特徵選取:從大規模特徵集中選取一個子集 特徵提取: CountVectorizer CountVectorizer旨

Spark MLlib 特徵抽取轉化選擇 -- 特徵選取:卡方選擇

這一部分主要介紹和特徵處理相關的演算法,大體分為以下三類: 1)特徵抽取:從原始資料中抽取特徵 2)特徵轉換:特徵的維度、特徵的轉化、特徵的修改 3)特徵選取:從大規模特徵集中選取一個子集 特徵選擇(feature Selection)指的是在特徵向量中選擇出那些優秀的

Spark 2.0 機器學習 ML 庫:特徵提取轉化選取(Scala 版)

一、前言 二、程式碼 1.TF-IDF(詞頻-逆向文件頻率) TF(詞頻Term Frequency):HashingTF不CountVectorizer用於生成詞頻TF向量。 HashingTF是一個特徵詞集的轉換器(Tr

數據清洗合並轉化重構

stack 8 8 2.0 str 食品添加劑 -m value lambda 聲明變量 數據清洗是數據分析關鍵的一步,直接影響之後的處理工作 數據需要修改嗎?有什麽需要修改的嗎?數據應該怎麽調整才能適用於接下來的分析和挖掘? 是一個叠代的過程,實際項目中可能

完整的goldengate抽取pumpreplicate進程配置

efault interval arch user barcode cat des use logo 抽取進程:extract ext_codeSETENV (NLS_LANG="AMERICAN_AMERICA.AL32UTF8")SETENV (OR

SSH學習02 【SSH網上商城專案實戰02】基本增刪查改ServiceAction的抽取以及使用註解替換xml

【SSH網上商城專案實戰02】基本增刪查改、Service和Action的抽取以及使用註解替換xml 轉自:https://blog.csdn.net/eson_15/article/details/51297698 上一節我們搭建好了Struts2、Hibernate和Spring的開

【線性代數】矩陣的特徵分解特徵值特徵向量(eigen-decomposition, eigen-value & eigen-vector)

就像我們可以通過質因數分解來發現整數的一些內在性質一樣(12 = 2 x 2 x 3),我們也可以通過分解矩陣來發現表示成陣列元素時不明顯的函式性質。 矩陣分解有種方式,常見的有 特徵分解 SVD 分解 三角分解 特徵分解 特徵分解是使用最廣泛的

Spark MLlib(一)正則化特徵

Spark 在其 MLlib 機器學習庫中內建了一些函式用於特徵的縮放和標準化。 (1)StandardScaler:標準正太變換 (2)Normalizer:特徵向量正則化(範數為1,xi∥x∥)

java nio學習:緩衝區通道選擇

java nio中引入了緩衝區,緩衝區中的資料可以寫入通道,也可以從通道中讀取資料到緩衝區。nio中的緩衝區就是對陣列的簡單封裝,緩衝區有讀模式和寫模式,緩衝區的屬性有容量(capacity)、限制(limit)、位置(position),容量表示陣列的大小,限制表示第一個

3 Spark機器學習 spark MLlib 矩陣向量矩陣運算Breeze庫-1

機器學習裡矩陣是必不可少的,無論Python、Java能做機器學習的語言,都會提供比較優質的矩陣庫。 spark mllib中提供的矩陣庫是Breeze,可以簡單看看Breeze庫的情況。 ScalaNLP是一套機器學習和數值計算的庫,主要是關於科學計算、機器學習和自

在以太坊區塊鏈上實現認證授權計費功能(3)-認證描述

2AAA(認證、授權和計費)   雲提供商提供雲資源,例如計算、網路、網路儲存資源,可以用最少的操作快速配置應用程式,而且僅需要支付消耗的資源[55]。 美國國家科學和技術研究院(NIST)[55]將這些資源分成三種模型:軟體即服務(SaaS),平臺即服務(PaaS

Spark機器學習中mlmllib中矩陣向量

int reg index mac matrix 對比 判斷 bsp ive 1:Spark ML與Spark MLLIB區別? Spark MLlib是面向RDD數據抽象的編程工具類庫,現在已經逐漸不再被Spark團隊支持,逐漸轉向Spark ML庫,Spark ML是面

Spark_Mllib系列之二———提取,轉化特徵選擇

Extracting, transforming and selecting features 這部分將會講到特徵的演算法,粗略的分為一下幾個部分: 特徵的提取 TF-IDF 詞條頻率-逆向檔案頻率是一種被廣泛使用在文字提取的向量化特徵的方法,反映了一個詞條對一篇語料庫

兩種模型選擇超引數調整方法及Spark MLlib使用示例(Scala/Java/Python)

機器學習除錯:模型選擇和超引數調整 模型選擇(又名超引數調整)        在機器學習中非常重要的任務就是模型選擇,或者使用資料來找到具體問題的最佳的模型和引數,這個過程也叫做除錯。除錯可以在獨立的如邏輯迴歸等估計器中完成,也可以在包含多樣演算法、特徵工程和其他步驟的管線

sparkmllib 特徵抽取特徵轉換及特徵選擇

特徵抽取 TF-IDF TF-IDF一般應用於文字挖掘中,用來反映一個特徵項的重要性。設特徵項為 t,文件為d,文件集為D。特徵頻率( term frequency)TF(t,d) 為特徵項在文件d中出現在次數。 文件頻率(document freque

三種特徵選擇方法及Spark MLlib呼叫例項(Scala/Java/python)

VectorSlicer 演算法介紹:         VectorSlicer是一個轉換器輸入特徵向量,輸出原始特徵向量子集。VectorSlicer接收帶有特定索引的向量列,通過對這些索引的值進行篩選得到新的向量集。可接受如下兩種索引 1.整數索引,setIndice

Spark機器學習之特徵提取選擇轉換

本節介紹了處理特徵的演算法,大致分為以下幾組:      1、提取:從“原始”資料提取特徵      2、轉換:縮放,轉換或修改要素      3、選擇:從一組較大的要素中選擇一個子集      4、區域性敏感雜湊(LSH):這類演算法將特徵變換的方面與其他演算法

Python 文字挖掘:使用機器學習方法進行情感分析(一特徵提取選擇

def create_word_bigram_scores(): posdata = pickle.load(open('D:/code/sentiment_test/pos_review.pkl','r')) negdata = pickle.load(open('D:/code/senti

Spark MLlib特徵處理:均值方差協方差 ---原理及實戰

原理 向量a→=(x1,x2,x3...xn),ak是a→中的任意元素,k=1,2,3⋯n 例如:a→代表一個維度(特徵)DimA,ak代表特徵值。 向量b→=(x1,x2,x3...xn),bk是b→中的任意元素,k=1,2,3⋯n 例如

spark mllibml類裏面的區別

回歸 ati pam return lec ref nsf 有變 onf mllib是老的api,裏面的模型都是基於RDD的,模型使用的時候api也是有變化的(model這裏是naiveBayes), (1:在模型訓練的時候是naiveBayes.run(data