0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

機器學習中最常見錯誤解決方案

新機器視覺 ? 來源:機器之心 ? 作者:機器之心 ? 2022-08-08 16:56 ? 次閱讀

當你構建第一個模型,注意避免這5個坑。

數(shù)據(jù)科學和機器學習正變得越來越流行,這個領域的人數(shù)每天都在增長。這意味著有很多數(shù)據(jù)科學家在構建他們的第一個機器學習模型時沒有豐富的經(jīng)驗,而這也是錯誤可能會發(fā)生的地方。

近日,軟件架構師、數(shù)據(jù)科學家、Kaggle 大師 Agnis Liukis 撰寫了一篇文章,他在文中談了談在機器學習中最常見的一些初學者錯誤的解決方案,以確保初學者了解并避免它們。

以下為文章內(nèi)容:

在機器學習領域,初學者避免這 5 個坑

1、在需要的地方?jīng)]有使用數(shù)據(jù)歸一化

對數(shù)據(jù)進行歸一化操作,然后獲取特征,并將其輸入到模型中,讓模型做出預測,這種方法是很容易的。但在某些情況下,這種簡單方法的結果可能會讓人失望,因為它缺少一個非常重要的部分。

一些類型的模型需要數(shù)據(jù)歸一化,如線性回歸、經(jīng)典神經(jīng)網(wǎng)絡等。這類模型使用特征值去乘訓練值的權重。在非歸一化特征的情況下,一個特征值的可能范圍可能不同于另一個特征值的可能范圍。

假設一個特征的值在 [0,0.001] 范圍內(nèi),另一個特征的值在 [100000,200000] 范圍內(nèi)。對于使兩個特征同等重要的模型,第一個特征的權重將比第二個特征的權重大 1 億倍。巨大的權重可能會給模型帶來嚴重問題,比如存在一些異常值的時候。此外,估計各種特征的重要性變得困難,因為權重大可能意味著特征很重要,但也可能只是意味著其特征值很小

歸一化后,所有特征的值都在相同的范圍內(nèi),通常為 [0,1] 或 [-1,1]。在這種情況下,權重將在相似的范圍內(nèi),并與每個特征的實際重要性密切對應。

總的來說,在需要的地方使用數(shù)據(jù)歸一化將產(chǎn)生更好、更準確的預測。

2、認為特征越多越好

有人可能會認為加入所有特征是一個好主意,認為模型會自動選擇并使用最好的特征。實際上,這種想法很難成真。

模型的特征越多,過擬合的風險越大。即使在完全隨機的數(shù)據(jù)中,模型也能夠找到一些特征(信號),盡管有時較弱,有時較強。當然,隨機噪聲中沒有真實信號。但如果我們有足夠多的噪聲列,則該模型有可能根據(jù)檢測到的故障信號使用其中的一部分。當這種情況發(fā)生時,模型預測質(zhì)量將會降低,因為它們一定程度上基于隨機噪聲。

現(xiàn)在有許多技術幫助我們進行特征選擇。但你要記住,你需要解釋你擁有的每一個特征,以及為什么這個特征會幫助你的模型。

3. 在需要外推的情況下,使用基于樹的模型

基于樹的模型易于使用,功能強大,這也是其受歡迎的原因。然而,在某些情況下,使用基于樹的模型可能是錯誤的。

基于樹的模型無法外推,這些模型的預測值永遠不會大于訓練數(shù)據(jù)中的最大值,而且在訓練中也永遠不會輸出比最小值更小的預測值。

在某些任務中,外推能力可能非常重要。例如,如果該模型預測股票價格,那么未來股票價格可能會比以往任何時候都高。在這種情況下,基于樹的模型將無法直接使用,因為它們的預測幾乎會超過最高歷史價格。

這個問題有多種解決方案,一種解決方案是預測變化或差異,而不是直接預測價值。另一種解決方案是為此類任務使用不同類型的模型。線性回歸或神經(jīng)網(wǎng)絡就可以進行外推。

4、在不需要的地方使用數(shù)據(jù)歸一化

之前文章談到了數(shù)據(jù)歸一化的必要性,但情況并非總是如此,基于樹的模型不需要數(shù)據(jù)歸一化。神經(jīng)網(wǎng)絡可能也不需要明確的歸一化,因為有些網(wǎng)絡內(nèi)部已經(jīng)包含歸一化層,例如 Keras 庫的 BatchNormalization 操作。

在某些情況下,即使是線性回歸也可能不需要數(shù)據(jù)歸一化,這是指所有特征都已處于類似的值范圍,并且具有相同的含義。例如,如果模型適用于時間序列數(shù)據(jù),并且所有特征都是同一參數(shù)的歷史值。

5. 在訓練集和驗證集 / 測試集之間泄漏信息

造成數(shù)據(jù)泄漏比人們想象的要容易,考慮以下代碼段:

67499348-165a-11ed-ba43-dac502259ad0.png

數(shù)據(jù)泄漏的示例特性

實際上,這兩種特征(sum_feature 和 diff_feature)都不正確。它們正在泄漏信息,因為在拆分到訓練集 / 測試集后,具有訓練數(shù)據(jù)的部分將包含來自測試的一些信息。這將導致更高的驗證分數(shù),但當應用于實際的數(shù)據(jù)模型時,性能會更差。

正確的方法是首先將訓練集 / 測試集分開,然后才應用特征生成功能。通常,分別處理訓練集和測試集是一種很好的特征工程模式。

在某些情況下,可能需要在兩者之間傳遞一些信息 —— 例如,我們可能希望在測試集和訓練集上使用相同的 StandardScaler。

總而言之,從錯誤中吸取教訓是件好事,希望上述所提供的錯誤示例能幫助到你。

審核編輯:彭靜
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴

原文標題:機器學習初學者易踩的5個坑

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關推薦

    服務器錯誤是怎么回事?常見錯誤原因及解決方法匯總

    服務器錯誤是怎么回事?最常見的原因分有六個,分別是:硬件問題、軟件問題、網(wǎng)絡問題、資源耗盡、數(shù)據(jù)庫、文件權限問題??梢愿鶕?jù)以下具體錯誤原因進行辨別,并選擇適合的解決方法。關于常見服務器
    的頭像 發(fā)表于 08-12 10:11 ?840次閱讀

    功能測試覆蓋中最常見的是什么方法

    功能測試覆蓋是軟件測試過程中的一個重要環(huán)節(jié),它主要關注軟件產(chǎn)品的功能實現(xiàn)是否符合需求規(guī)格說明。在功能測試覆蓋中,有多種方法可以采用,以確保測試的全面性和有效性。本文將詳細介紹功能測試覆蓋中最常見
    的頭像 發(fā)表于 05-30 14:55 ?462次閱讀

    請問PSoC? Creator IDE可以支持IMAGIMOB機器學習嗎?

    。 我發(fā)現(xiàn)IMAGIMOB 是一個很好的解決方案來滿足我的需求,但現(xiàn)在的問題是, PSoC? Creator 不支持 IMAGIMOB! PSoC? Creator 可以支持機器學習或 IMAGIMOB 嗎?
    發(fā)表于 05-20 08:06

    音視頻解碼生成常見問題及解決方案

    在音視頻解碼生成的過程中,我們可能會遇到一些常見問題,這些問題可能會影響解碼的效果和效率。以下是一些常見問題及其解決方案: 問題1:解碼失敗 原因 :可能是文件本身有問題,如損壞或格式不支持;也
    的頭像 發(fā)表于 02-21 14:39 ?1051次閱讀

    PCB設計工作中常見錯誤有哪些?

    一站式PCBA智造廠家今天為大家講講PCB設計工作中常見錯誤有哪些?PCB設計中最常見到的六個錯誤。PCB設計是電子產(chǎn)品制造中非常關鍵的一環(huán)。它的質(zhì)量直接關系到整個產(chǎn)品的性能和穩(wěn)定性
    的頭像 發(fā)表于 02-21 09:32 ?458次閱讀
    PCB設計工作中<b class='flag-5'>常見</b>的<b class='flag-5'>錯誤</b>有哪些?

    最常見的直流負載工作方式

    最常見的直流負載工作方式? 直流負載工作方式是指在直流電路中使用的各種負載方式。直流負載是用于測試和測量直流電源輸出能力和能效的設備,可以模擬真實負載條件下的電流和功率需求。本文將詳細介紹最常見
    的頭像 發(fā)表于 01-18 15:12 ?618次閱讀

    盤點PCB設計中的常見錯誤

    搞技術,難免存在錯誤,只有經(jīng)歷過錯誤,才能更快地成長。PCB設計也一樣,今天就來盤點一下PCB設計中最常見錯誤
    的頭像 發(fā)表于 01-12 09:53 ?1248次閱讀
    盤點PCB設計中的<b class='flag-5'>常見</b><b class='flag-5'>錯誤</b>

    機械制圖常見錯誤匯總

    今天分享是《機械制圖常見錯誤》 資料。
    的頭像 發(fā)表于 12-26 10:41 ?824次閱讀
    機械制圖<b class='flag-5'>常見</b><b class='flag-5'>錯誤</b>匯總

    PCB金手指設計的常見問題和解決方案

    PCB金手指設計的常見問題和解決方案
    的頭像 發(fā)表于 12-25 10:09 ?1805次閱讀

    初學仿真常見錯誤

    本推文針對Sentaurus初學者頻繁遇到的錯誤進行簡單整理,具體是包括Sde、Sdevice仿真常見錯誤。
    的頭像 發(fā)表于 12-03 16:24 ?1814次閱讀
    初學仿真<b class='flag-5'>常見</b>的<b class='flag-5'>錯誤</b>

    vlookup常見的12種錯誤

    中,我將介紹VLOOKUP函數(shù)的常見錯誤,并提供詳盡、詳實、細致的解決方法。 錯誤#N/A:這是最常見的VLOOKUP錯誤之一,它表示無法找
    的頭像 發(fā)表于 12-01 11:19 ?2833次閱讀

    codeblocks環(huán)境錯誤解決辦法

    CodeBlocks是一款常用的集成開發(fā)環(huán)境,用于編寫、編譯和調(diào)試C、C++等程序。然而,有時在使用CodeBlocks時可能會遇到一些錯誤或問題。本文將為你提供一些常見CodeBlocks環(huán)境錯誤
    的頭像 發(fā)表于 11-26 09:37 ?5502次閱讀

    反激式電源中最常見的噪聲來源

    電子發(fā)燒友網(wǎng)站提供《反激式電源中最常見的噪聲來源.doc》資料免費下載
    發(fā)表于 11-15 10:34 ?1次下載
    反激式電源<b class='flag-5'>中最常見</b>的噪聲來源

    十大WiFi常見誤解

    電子發(fā)燒友網(wǎng)站提供《十大WiFi常見誤解.doc》資料免費下載
    發(fā)表于 11-10 16:06 ?1次下載
    十大WiFi<b class='flag-5'>常見</b><b class='flag-5'>誤解</b>

    TDK機器學習解決方案促進邊緣人工智能前景大幅擴展

    物聯(lián)網(wǎng)技術的進步為大量設備帶來了互聯(lián)網(wǎng)連接能力。此外,邊緣計算的發(fā)展如今還為邊緣設備提供機器學習*1,將人工智能的版圖從云端擴展到外圍。本文將深入介紹一款突破性軟件解決方案,該方案將從
    的頭像 發(fā)表于 10-27 12:18 ?330次閱讀
    TDK<b class='flag-5'>機器</b><b class='flag-5'>學習</b><b class='flag-5'>解決方案</b>促進邊緣人工智能前景大幅擴展