matlab 归一化_机器学习中如何用Fscore进行特征选择(附Matlab代码)
生活随笔
收集整理的這篇文章主要介紹了
matlab 归一化_机器学习中如何用Fscore进行特征选择(附Matlab代码)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
作者:kervin
編輯:阿吉
?? ? ? ?目前,機器學習在腦科學領域的應用可謂廣泛而深入,不論你是做EEG/ERP研究,還是做MRI研究,都會看到機器學習的身影。機器學習最簡單或者最常用的一個應用方向是分類,如疾病的分類。對于有監督機器學習(如我們常用的SVM)來說,首先需要提取特征值,特征值作為機器學習的輸入進行訓練,得到模型。但是,在實際的例子中,不太可能把提取到的所有特征值輸入到機器學習模型中進行訓練,這是因為過多維度的特征值往往會包括冗余成分,這不僅會大大降低學習速度,而且還會產生過擬合現象,進而影響機器學習模型的性能。最典型的列子是我們做MRI研究,可能會提取到上萬個特征值。因此,我們需要首先對提取到的特征值進行特征選擇,去除冗余特征,即所謂的特征降維。? ? ? ?目前,特征降維的方法很多,筆者這里就不一一列舉(可自行度娘),而F-score是其中比較簡單和有效的方法,也是很常用的一種方法。今天,筆者在這里就詳細講解一下F-score如何計算,并給出Matlab程序。? ? ? ?第i個特征的F-score的計算公式如下所示:? ? ? ?其中,表示第i個特征中正類特征值的平均值,表示第i個特征中負類特征值的平均值,表示第i個特征所有特征值的平均值,n+表示第i個特征中正類特征值的個數,n-表示第i個特征中負類特征值的個數,表示正類特征值中第k個特征值,表示負類特征值中第k個特征值。? ?對于F-score需要說明一下幾點:1.一般來說,特征的F-score越大,這個特征用于分類的價值就越大;2.在機器學習的實際應用中,一般的做法是,先計算出所有維度特征的F-score,然后選擇F-score最大的N個特征輸入到機器學習的模型中進行訓練;而這個N到底取多少合適,需要你自己進行嘗試;3.F-score只適用于二分類,對于多分類的應用,可以考慮采用其他的特征選擇方法;4.F-score與SVM相結合,可以達到較好的分類效果;關于SVM,大家可以參考我們公眾號之前推送的文章《支持向量機SVM工具包LIBSVM的安裝和測試》。? ? ? ?按照上述的F-score的計算公式,我們可以用Matlab進行編程。筆者按此已經編寫好F-score函數,并進行了測試,需要下載程序的朋友,煩請先轉發本文到朋友圈,然后截圖到微信公眾號后臺,管理員會盡快把下載鏈接發送給您,謝謝!我們的業務第一屆腦電數據分析技術實戰班EEG/ERP數據處理服務推薦閱讀支持向量機SVM工具包LIBSVM的安裝和測試腦科學研究中常用的數據歸一化方法(附Matlab程序)聊一聊置換檢驗Permutation test的原理關注我們總結
以上是生活随笔為你收集整理的matlab 归一化_机器学习中如何用Fscore进行特征选择(附Matlab代码)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信投票python脚本_微信投票pyt
- 下一篇: JavaScript中的正则