機器學習 特徵提取

2021-10-03 06:29:22 字數 3447 閱讀 6066

from sklearn.feature_extraction import dictvectorizer

import numpy as np

#定義一組字典列表,用來表示多個資料樣本

d1=[,,

]#例項化

dict

= dictvectorizer(

)data =

dict

.fit_transform(d1)

#轉化後的特徵矩陣,各個特徵的名稱

data.toarray(),

dict

.get_feature_names(

)

輸出結果:

(array([[

0.,1

.,0.

,100.]

,[1.

,0.,

0.,80

.],[

0.,0

.,1.

,70.]

]),[

'city=上海'

,'city=北京'

,'city=深圳'

,'tep'

])

from sklearn.feature_extraction.text import countvectorizer

d2=[

"life is short,i like python"

,"life is ****** , i dislike the jupter"

]cv=countvectorizer(

)data=cv.fit_transform(d2)

data.toarray(

),cv.get_feature_names(

)#.toarray() 是將結果轉化為稀疏矩陣矩陣的表示方式

結果:

(array([[

0,1,

0,1,

1,1,

1,0,

0],[

1,1,

1,1,

0,0,

0,1,

1]], dtype=int64),[

'dislike'

,'is'

,'jupter'

,'life'

,'like'

,'python'

,'short'

,'******'

,'the'

])

import jieba

defcutword()

: con1=jieba.cut(

"扶門切思君之囑登高望斷天涯路。玲瓏骰子安紅豆,入骨相思知不知。世人謂我戀長安,其實只戀長安某。山有木兮木有枝"

) con2=jieba.cut(

"一往情深深幾許深山夕照深秋雨 朝暮不依長相思,白首不離長相守。只緣感君一回顧,使我思君朝與暮。衣帶漸寬終不悔"

) con3=jieba.cut(

"一往情深深幾許深山夕照深秋雨。長相思兮長相憶,短相思兮無窮極。早知如此絆人心,何如當初莫相識心悅君兮君不知。"

) content1=

list

(con1)

content2=

list

(con2)

content3=

list

(con3)

c1=" ".join(content1)

c2=" ".join(content2)

c3=" ".join(content3)

return c1,c2,c3

c1,c2,c3=cutword(

)cv=countvectorizer(

)data=cv.fit_transform(

[c1,c2,c3]

)print

(cv.get_feature_names())

data.toarray(

)

結果:

[

'一往情深'

,'不依'

,'不知'

,'世人'

,'之囑'

,'人心'

,'何如'

,'入骨相思'

,'其實'

,'幾許'

,'只戀'

,'只緣'

,'君兮君'

,'回顧'

,'夕照'

,'天涯'

,'山有'

,'當初'

,'心悅'

,'思君'

,'思君朝'

,'感君'

,'我戀'

,'扶門切'

,'無窮'

,'早知如此'

,'有枝'

,'望斷'

,'朝暮'

,'木兮木'

,'深山'

,'玲瓏'

,'登高'

,'白首'

,'相思'

,'相識'

,'秋雨'

,'紅豆'

,'衣帶漸寬終不悔'

,'長安'

,'長相'

,'骰子'

]array([[

0,0,

1,1,

1,0,

0,1,

1,0,

1,0,

0,0,

0,1,

1,0,

0,1,

0,0,

1,1,

0,0,

1,1,

0,1,

0,1,

1,0,

0,0,

0,1,

0,2,

0,1]

,[1,

1,0,

0,0,

0,0,

0,0,

1,0,

1,0,

1,1,

0,0,

0,0,

0,1,

1,0,

0,0,

0,0,

0,1,

0,1,

0,0,

1,1,

0,1,

0,1,

0,1,

0],[

1,0,

1,0,

0,1,

1,0,

0,1,

0,0,

1,0,

1,0,

0,1,

1,0,

0,0,

0,0,

1,1,

0,0,

0,0,

1,0,

0,0,

2,1,

1,0,

0,0,

1,0]

],dtype=int64)

特徵提取 機器學習

特徵提取簡介 sift原理 sift原理 sift原理 1.k近鄰法,簡單來說就是哪個點離得近就把例項點歸到哪一類中。特殊情況是最近鄰演算法 1近鄰演算法。演算法主要包括演算法的模型,距離度量 k值的選擇和演算法的具體實現。其中演算法的實現主要有兩種形式 線性掃瞄法和構建資料索引。改善演算法最好的當...

機器學習特徵提取

本文主要介紹基於sklearn的特徵提取,旨在為機器學習提供乙個好的開端 1.分類特徵提取 如上圖所示 許多特徵如pclass代表乘客船艙等級,分為1,2,3。還有例如性別,乘客登船碼頭,稱之為分類特徵。對於這一類資料的提取,採用one hot編碼。例如 data資料有兩個特徵,分別是城市和溫度,顯...

機器學習 特徵提取(一)

原始資料的種類有很多,除了數位化的訊號資料,還有大量符號化的文字。然而,無法將符號化的文字用於任務計算,二是通過某些處理手段,預先將文字量化為特徵向量。有些用符號化表示的資料特徵已經相對結構化,並且以字典這種資料結構進行儲存。這時使用dictvectorizer對特徵進行抽取和量化。定義乙個字典列表...