在現實場景的例子裡,有很多從資料集提取特徵的方法。通常,將幾種特徵提取方法組合使用會收到更好的效果。本例顯示怎樣使用函式featureunion
組合特徵。這裡要用到scikit-learn自帶資料集——「鳶尾花資料集」。
「鳶尾花(iris)資料集」位於datasets
裡,是由著名統計學家sir ronald fisher在2023年收集整理的資料集,作為機器學習演算法的基準資料集而聞名。它包括3個品種的鳶尾花(iris setosa, iris virginica and iris versicolor), 每個品種50個樣本。每個樣本有4個特徵,分別是
特徵值是正浮點數,單位是厘公尺。目標變數是鳶尾花的類別(iris setosa(山鳶尾)、iris versicolour(雜色鳶尾),iris virginica(維吉尼亞鳶尾))。
下面顯示iris的一部分特徵資料
target資料
首先,從scikit-learn
裡匯入必需的模組與函式。
from sklearn.pipeline import pipeline, featureunion
from sklearn.model_selection import gridsearchcv
from sklearn.svm import svc
from sklearn.datasets import load_iris
from sklearn.decomposition import pca
from sklearn.feature_selection import selectkbest
載入iris資料集,並且將特徵資料和目標資料分成兩個物件。
iris = load_iris()
x, y = iris.data, iris.target
建立包括兩個主成分的主成分物件pca
. 主成分是一種重要的線性降維方法,它的基本原理是通過對資料進行奇異值分解(singular value decomposition), 實現將高維資料投影到低維空間,從而降低了特徵的維數。
pca = pca(n_components=2)
建立最大分數特徵選擇器selection
. 它的基本原理是根據方差分析計算類標籤與特徵之間的f值,進而選擇f值最大的特徵。
selection = selectkbest(k=1)
組合pca與單變數選擇器,建立特徵選擇估計量。
combined_features = featureunion([("pca", pca), ("univ_select", selection)])
引數是元組(tuples)型的,在每乙個元組裡,前一半是轉換器的名字,後一半是轉換器。建立估計量後,使用它的組合特徵轉換資料集。
x_features = combined_features.fit(x, y).transform(x)
建立線性核函式的c-支援向量分類器。
svm = svc(kernel="linear")
建立combined_features和svm轉換器的管道(pipeline), 最終得到乙個估計量。在管道裡,連續地應用轉換。管道的中間步必須是轉換,即執行擬合與估計方法。最終的估計量僅僅需要執行估計。使用引數memory
儲存管道裡的轉換器。建立管道的目的是把不同的步驟集合起來,經設定不同的引數,一併進行交叉驗證。
pipeline = pipeline([("features", combined_features), ("svm", svm)])
最後,在三種特徵提取方法上做網格搜尋。
param_grid = dict(features__pca__n_components=[1, 2, 3],
features__univ_select__k=[1, 2],
svm__c=[0.1, 1, 10])
grid_search = gridsearchcv(pipeline, param_grid=param_grid, verbose=10)
grid_search.fit(x, y)
print(grid_search.best_estimator_)
python時域訊號特徵提取
def psfeaturetime data 均值df mean data.mean df var data.var df std data.std 均方根 df rms np.sqrt pow df mean,2 pow df std,2 峰峰值 fengfengzhi max data min ...
NLP實踐系列 2 特徵提取
自然語言處理中,特徵提取是十分重要的一環,而提取特徵,主要是提取單詞的特徵,比如讀音,和語義。這就涉及到了分詞的問題。分詞指的是將乙個單詞序列切分成乙個乙個單獨的詞。分詞就是將連續的字序列按照一定的規範重新組合成詞序列的過程。現有的分詞方法可分為三大類 基於字串匹配的分詞方法 基於理解的分詞方法和基...
nlp 特徵提取 task2
1.1 分詞的概念 分詞的正向最大 逆向最大 雙向最大匹配法 漢語分詞難點 分詞規範 歧義切分 未登入詞識別。分詞規範 詞這個概念一直是漢語語言學界糾纏不清又揮之不去的問題,也就是說,對於詞的抽象定義 詞是什麼 和詞的具體界定 什麼是詞 迄今拿不出乙個公認的 具有權威性的詞表來。歧義切分 切分歧義是...