python分类预测降低准确率_十分钟掌握python机器学习特征选择
十分鐘掌握python機器學習特征選擇-1.jpg (33.2 KB, 下載次數: 0)
2018-6-26 23:01 上傳
在機器學習中,特征選擇是實踐中的一步, 幫你在所有特征中選擇對結果貢獻最多的特征。 顯然, 使用不相關數據會減少模型的精確性,尤其是線性算法:線性回歸,邏輯回歸等。因為線性算法一般使用梯度下降來尋找最優值, 那么如果特征無關, 標的目的就有可能誤導
有效的特征篩選有以下優勢:
1,減少過擬合。 這個話題其實比較年夜。 要理解什么是過擬合, 就是模型過于貼近訓練集, 致使了泛化能力很差。
2,提高精確性。更少的無效數據意味著模型精確性的提升。
3,減少訓練時間。 數據少了自然運算時間短了。
sklearn.feature_selection模塊中的類可用于樣本集中的特征選擇/維數降低,以提高估計器的準確度
十分鐘掌握python機器學習特征選擇-2.jpg (26.24 KB, 下載次數: 0)
2018-6-26 23:01 上傳
1,SelectKBest類
scikit-learn提供了SelectKBest類可以用來根據一些統計的測試來選擇出一些數量的最有效的特征,選擇K個與輸入值相關性最年夜的特征,移除其他的特征
SelectKBest(score_func, k=10)
score_func:回調函數,默認是 'f_classif ',基于方差檢驗的體例估計兩個隨機變量之間的線性依賴水平
對回歸: f_regression , mutual_info_regression
對分類: chi2 , f_classif , mutual_info_classif
類體例:fit_transform(X[, y]) 適合于數據,然后轉換它,獲得轉換后的數據
十分鐘掌握python機器學習特征選擇-3.jpg (27 KB, 下載次數: 0)
2018-6-26 23:01 上傳
2,VarianceThreshold(threshold=0.0)
它會移除所有那些方差不滿足一些閾值的特征。默認情況下,它將會移除所有的零方差特征,即那些在所有的樣本上的取值均不變的特征
移除那些在整個數據集中特征值為0或者為1的比例跨越80%的特征
十分鐘掌握python機器學習特征選擇-4.jpg (24.37 KB, 下載次數: 0)
2018-6-26 23:01 上傳
3,遞歸特征消除法 RFE
RFE(estimator, n_features_to_select=None, step=1, verbose=0)
遞歸特征消除呢就是說每次把對結果最沒有用的這個特征去失落。 然后如此繼續。 最終獲得自己想留下的特征數量。
遞歸特征消除的主要思想是頻頻的構建模型(如SVM或者回歸模型)然后選出最好的(或者最差的)的特征(可以根據系數來選),把選出來的特征放到一遍,然后在剩余的特征上重復這個過程,直到所有特征都遍歷了。這個過程中特征被消除的順序就是特征的排序。因此,這是一種尋找最優特征子集的貪心算法。
RFE的穩定性很年夜水平上取決于在迭代的時候底層用哪種模型。例如,假如RFE采取的普通的回歸,沒有經過正則化的回歸是不穩定的,那么RFE就是不穩定的;假如采取的是Ridge,而用Ridge正則化的回歸是穩定的,那么RFE就是穩定的
十分鐘掌握python機器學習特征選擇-5.jpg (42.2 KB, 下載次數: 0)
2018-6-26 23:01 上傳
4,SelectFromModel進行特征選擇
SelectFromModel是一個元轉換器,它可以用來措置任何帶有 coef_ 或者 feature_importances_屬性的訓練之后的評估器。如果相關的``coef_`` 或者 featureimportances 屬性值低于預先設置的閾值,這些特征將會被認為不重要并且移除失落
十分鐘掌握python機器學習特征選擇-6.jpg (39.51 KB, 下載次數: 0)
2018-6-26 23:01 上傳
更多內容回復查看:
游客,如果您要查看本帖隱藏內容請回復
總結
以上是生活随笔為你收集整理的python分类预测降低准确率_十分钟掌握python机器学习特征选择的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: delphi7 获取dll的类_跟我学J
- 下一篇: tga文件怎么打开_教你win10系统怎