日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【机器学习】机器学习实践中的 7 种常见错误

發(fā)布時間:2025/3/12 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【机器学习】机器学习实践中的 7 种常见错误 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

編譯:伯樂在線 - yixingqingkong,英文:Cheng-Tao Chu

編注:本文作者是 Codecademy 的分析主管 Cheng-Tao Chu,其專長是數(shù)據(jù)挖掘和機(jī)器學(xué)習(xí),之前在 Google、LinkedIn和Square就職。


統(tǒng)計建模非常像工程學(xué)。

在工程學(xué)中,有多種構(gòu)建鍵-值存儲系統(tǒng)的方式,每個設(shè)計都會構(gòu)造一組不同的關(guān)于使用模式的假設(shè)集合。在統(tǒng)計建模中,有很多分類器構(gòu)建算法,每個算法構(gòu)造一組不同的關(guān)于數(shù)據(jù)的假設(shè)集合。

當(dāng)處理少量數(shù)據(jù)時,嘗試盡可能多的算法,然后挑選最好的一個的做法是比較合理的,因為此時實驗成本很低。但當(dāng)遇到“大數(shù)據(jù)”時,提前分析數(shù)據(jù),然后設(shè)計相應(yīng)“管道”模型(預(yù)處理,建模,優(yōu)化算法,評價,產(chǎn)品化)是值得的。

正如我之前文章中所指出的,有很多種方法來解決一個給定建模問題。每個模型做出不同假設(shè),如何導(dǎo)引和確定哪些假設(shè)合理的方法并不明確。在業(yè)界,大多數(shù)實踐者是挑選他們更熟悉而不是最合適的建模算法。在本文中,我想分享一些常見錯誤(不能做的),并留一些最佳實踐方法(應(yīng)該做的)在未來一篇文章中介紹。

1. 想當(dāng)然地使用缺省損失函數(shù)

許多實踐者使用缺省損失函數(shù)(如,均方誤差)訓(xùn)練和挑選最好的模型。實際上,現(xiàn)有損失函數(shù)很少符合業(yè)務(wù)目標(biāo)。以欺詐檢測為例,當(dāng)試圖檢測欺詐性交易時,業(yè)務(wù)目標(biāo)是最小化欺詐損失。現(xiàn)有二元分類器損失函數(shù)為誤報率和漏報率分配相等權(quán)重,為了符合業(yè)務(wù)目標(biāo),損失函數(shù)懲罰漏報不僅要多于懲罰誤報,而且要與金額數(shù)量成比例地懲罰每個漏報數(shù)據(jù)。此外,欺詐檢測數(shù)據(jù)集通常含有高度不平衡的標(biāo)簽。在這些情況下,偏置損失函數(shù)能夠支持罕見情況(如,通過上、下采樣)。

2.非線性情況下使用簡單線性模型

當(dāng)構(gòu)建一個二元分類器時,很多實踐者會立即跳轉(zhuǎn)到邏輯回歸,因為它很簡單。但是,很多人也忘記了邏輯回歸是一種線性模型,預(yù)測變量間的非線性交互需要手動編碼。回到欺詐檢測問題,要獲得好的模型性能,像“billing address = shipping address and transaction amount < $50”這種高階交互特征是必須的。因此,每個人都應(yīng)該選擇適合高階交互特征的帶核SVM或基于樹的分類器。

3.忘記異常值

異常值非常有趣,根據(jù)上下文環(huán)境,你可以特殊關(guān)注或者完全忽略它們。以收入預(yù)測為例,如果觀察到不同尋常的峰值收入,給予它們額外關(guān)注并找出其原因可能是個好主意。但是如果異常是由于機(jī)械誤差,測量誤差或任何其它不可歸納的原因造成的,那么在將數(shù)據(jù)輸入到建模算法之前忽略掉這些異常值是個不錯的選擇。

相比于其它模型,有些模型對異常值更為敏感。比如,當(dāng)決策樹算法簡單地將每個異常值計為一次誤分類時,AdaBoost算法會將那些異常值視為“硬”實例,并為異常值分配極大權(quán)值。如果一個數(shù)據(jù)集含有相當(dāng)數(shù)量的異常值,那么,使用一種具有異常值魯棒性的建模算法或直接過濾掉異常值是非常重要的。

4.樣本數(shù)少于特征數(shù)(n<<p)時使用高方差模型

SVM是現(xiàn)有建模算法中最受歡迎算法之一,它最強(qiáng)大的特性之一是,用不同核函數(shù)去擬合模型的能力。SVM核函數(shù)可被看作是一種自動結(jié)合現(xiàn)有特征,從而形成一個高維特征空間的方式。由于獲得這一強(qiáng)大特性不需任何代價,所以大多數(shù)實踐者會在訓(xùn)練SVM模型時默認(rèn)使用核函數(shù)。然而,當(dāng)數(shù)據(jù)樣本數(shù)遠(yuǎn)遠(yuǎn)少于特征數(shù)(n<<p)—業(yè)界常見情況如醫(yī)學(xué)數(shù)據(jù)—時,高維特征空間意味著更高的數(shù)據(jù)過擬合風(fēng)險。事實上,當(dāng)樣本數(shù)遠(yuǎn)小于特征數(shù)時,應(yīng)該徹底避免使用高方差模型。

5.尚未標(biāo)準(zhǔn)化就進(jìn)行L1/L2/等正則化

使用L1或L2去懲罰大系數(shù)是一種正則化線性或邏輯回歸模型的常見方式。然而,很多實踐者并沒有意識到進(jìn)行正則化之前標(biāo)準(zhǔn)化特征的重要性。

回到欺詐檢測問題,設(shè)想一個具有交易金額特征的線性回歸模型。不進(jìn)行正則化,如果交易金額的單位為美元,擬合系數(shù)將是以美分為單位時的100倍左右。進(jìn)行正則化,由于L1/L2更大程度上懲罰較大系數(shù),如果單位為美元,那么交易金額將受到更多懲罰。因此,正則化是有偏的,并且趨向于在更小尺度上懲罰特征。為了緩解這個問題,標(biāo)準(zhǔn)化所有特征并將它們置于平等地位,作為一個預(yù)處理步驟。

6. 不考慮線性相關(guān)直接使用線性模型

設(shè)想建立一個具有兩變量X1和X2的線性模型,假設(shè)真實模型是Y=X1+X2。理想地,如果觀測數(shù)據(jù)含有少量噪聲,線性回歸解決方案將會恢復(fù)真實模型。然而,如果X1和X2線性相關(guān)(大多數(shù)優(yōu)化算法所關(guān)心的),Y=2*X1, Y=3*X1-X2或Y=100*X1-99*X2都一樣好,這一問題可能并無不妥,因為它是無偏估計。然而,它卻會使問題變得病態(tài),使系數(shù)權(quán)重變得無法解釋。

7. 將線性或邏輯回歸模型的系數(shù)絕對值解釋為特征重要性

因為很多現(xiàn)有線性回歸量為每個系數(shù)返回P值,對于線性模型,許多實踐者認(rèn)為,系數(shù)絕對值越大,其對應(yīng)特征越重要。事實很少如此,因為:(a)改變變量尺度就會改變系數(shù)絕對值;(b)如果特征是線性相關(guān)的,則系數(shù)可以從一個特征轉(zhuǎn)移到另一個特征。此外,數(shù)據(jù)集特征越多,特征間越可能線性相關(guān),用系數(shù)解釋特征重要性就越不可靠。

這下你就知道了機(jī)器學(xué)習(xí)實踐中的七種常見錯誤。這份清單并不詳盡,它只不過是引發(fā)讀者去考慮,建模假設(shè)可能并不適用于手頭數(shù)據(jù)。為了獲得最好的模型性能,挑選做出最合適假設(shè)的建模算法—而不只是選擇你最熟悉那個算法,是很重要的。

看完本文有收獲?請轉(zhuǎn)發(fā)分享給更多人

往期精彩回顧適合初學(xué)者入門人工智能的路線及資料下載機(jī)器學(xué)習(xí)及深度學(xué)習(xí)筆記等資料打印機(jī)器學(xué)習(xí)在線手冊深度學(xué)習(xí)筆記專輯《統(tǒng)計學(xué)習(xí)方法》的代碼復(fù)現(xiàn)專輯 AI基礎(chǔ)下載機(jī)器學(xué)習(xí)的數(shù)學(xué)基礎(chǔ)專輯溫州大學(xué)《機(jī)器學(xué)習(xí)課程》視頻 本站qq群851320808,加入微信群請掃碼:

總結(jié)

以上是生活随笔為你收集整理的【机器学习】机器学习实践中的 7 种常见错误的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。