<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

目前機器學習面臨的常見問題和挑戰

深度學習自然語言處理 ? 來源:CSDN技術社區 ? 作者:CSDN技術社區 ? 2020-10-23 11:42 ? 次閱讀

由于我們的主要任務是選擇一種學習算法,并對某些數據進行訓練,所以最可能出現的兩個問題不外乎是“壞算法”和“壞數據”,本文主要從壞數據出發,帶大家了解目前機器學習面臨的常見問題和挑戰,從而更好地學習機器學習理論。

一、訓練數據的數量不足

要教一個牙牙學語的小朋友什么是蘋果,你只需要指著蘋果說“蘋果”(可能需要重復這個過程幾次)就行了,然后孩子就能夠識別各種顏色和形狀的蘋果了,簡直是天才!

機器學習還沒達到這一步,大部分機器學習算法需要大量的數據才能正常工作。即使是最簡單的問題,很可能也需要成千上萬個示例,而對于諸如圖像或語音識別等復雜問題,則可能需要數百萬個示例(除非你可以重用現有模型的某些部分)。

數據的不合理有效性

在2001年發表的一篇著名論文中,微軟研究員Michele Banko和Eric Brill表明,給定足夠的數據,截然不同的機器學習算法(包括相當簡單的算法)在自然語言歧義消除這個復雜問題上注8,表現幾乎完全一致(如下圖所示)。

數據與算法的重要性注

正如作者所說:“這些結果表明,我們可能會重新思考如何在二者之間做權衡—將錢和時間花在算法的開發上,還是花在語料庫的建設上?!?/p>

對復雜問題而言,數據比算法更重要,這一想法被Peter Norvig等人進一步推廣,于2009年發表論文“The Unreasonable Effectiveness of Data”注10。不過需要指出的是,中小型數據集依然非常普遍,獲得額外的訓練數據并不總是一件輕而易舉或物美價廉的事情,所以暫時先不要拋棄算法。

二、訓練數據不具代表性

為了很好地實現泛化,至關重要的一點是對于將要泛化的新示例來說,訓練數據一定要非常有代表性。無論你使用的是基于實例的學習還是基于模型的學習,都是如此。

例如,前面用來訓練線性模型的國家數據集并不具備完全的代表性,有部分國家的數據缺失。下圖顯示了補充缺失國家信息之后的數據表現。

更具代表性的訓練樣本

如果你用這個數據集訓練線性模型,將會得到圖中的實線,而虛線表示舊模型。正如你所見,添加部分缺失的國家信息不僅顯著地改變了模型,也更清楚地說明這種簡單的線性模型可能永遠不會那么準確??雌饋?,某些非常富裕的國家并不比中等富裕的國家更幸福(事實上,看起來甚至是不幸福),反之,一些貧窮的國家也似乎比許多富裕的國家更加幸福。

使用不具代表性的訓練集訓練出來的模型不可能做出準確的預估,尤其是針對那些特別貧窮或特別富裕的國家。

針對你想要泛化的案例使用具有代表性的訓練集,這一點至關重要。不過說起來容易,做起來難:如果樣本集太小,將會出現采樣噪聲(即非代表性數據被選中);而即便是非常大的樣本數據,如果采樣方式欠妥,也同樣可能導致非代表性數據集,這就是所謂的采樣偏差。

關于采樣偏差的一個示例

最著名的采樣偏差的示例發生在1936年美國總統大選期間,蘭登對決羅斯福。Literary Digest當時舉行了一次大范圍的民意調查,向約1000萬人發送郵件,并得到了240萬個回復,因此做出了高度自信的預言—蘭登將獲得57%的選票。結果恰恰相反,羅斯福贏得了62%的選票。問題就在于Literary Digest的采樣方式:

首先,為了獲取發送民意調查的地址,Literary Digest采用了電話簿、雜志訂閱名單、俱樂部會員名單等類似名簿。而所有這些名單上的人往往對富人有更大的偏好,也就更有可能支持共和黨(即蘭登)。

其次,收到民意調查郵件的人中,不到25%的人給出了回復。這再次引入了采樣偏差,那些不怎么關心政治的人、不喜歡Literary Digest的人以及其他的一些關鍵群體直接被排除在外了。這是一種特殊類型的采樣偏差,叫作無反應偏差。

再舉一個示例,假設你想創建一個系統用來識別funk音樂視頻。構建訓練集的方法之一是直接在YouTube上搜索“funk music”,然后使用搜索結果的視頻。但是,這其實基于一個假設—YouTube的搜索引擎返回的視頻結果是所有能夠代表funk音樂的視頻。而實際的搜索結果可能會更偏向于當前流行的音樂人(如果你住在巴西,你會得到很多關于“funk carioca”的視頻,這聽起來跟James Brown完全不是一回事)。另一方面,你還能怎樣獲得一個大的訓練集?

三、低質量數據

顯然,如果訓練集滿是錯誤、異常值和噪聲(例如,低質量的測量產生的數據),系統將更難檢測到底層模式,更不太可能表現良好。所以花時間來清理訓練數據是非常值得的投入。事實上,大多數數據科學家都會花費很大一部分時間來做這項工作。例如:

如果某些實例明顯是異常情況,那么直接將其丟棄,或者嘗試手動修復錯誤,都會大有幫助。

如果某些實例缺少部分特征(例如,5%的顧客沒有指定年齡),你必須決定是整體忽略這些特征、忽略這部分有缺失的實例、將缺失的值補充完整(例如,填寫年齡值的中位數),還是訓練一個帶這個特征的模型,再訓練一個不帶這個特征的模型。

四、無關特征

正如我們常說的:垃圾入,垃圾出。只有訓練數據里包含足夠多的相關特征以及較少的無關特征,系統才能夠完成學習。一個成功的機器學習項目,其關鍵部分是提取出一組好的用來訓練的特征集。這個過程叫作特征工程,包括以下幾點:

特征選擇(從現有特征中選擇最有用的特征進行訓練)。

特征提?。▽F有特征進行整合,產生更有用的特征—正如前文提到的,降維算法可以提供幫助)。

通過收集新數據創建新特征。

現在我們已經看了不少“壞數據”的示例,再來看幾個“壞算法”的示例。

五、過擬合訓練數據

假設你正在國外旅游,被出租車司機敲詐,你很可能會說,那個國家的所有出租車司機都是強盜。過度概括是我們人類常做的事情,不幸的是,如果我們不小心,機器很可能也會陷入同樣的陷阱。在機器學習中,這稱為過擬合,也就是指模型在訓練數據上表現良好,但是泛化時卻不盡如人意。下圖顯示了一個訓練數據過擬合的高階多項式生活滿意度模型。雖然它在訓練數據上的表現比簡單的線性模型要好得多,但是你真的敢相信它的預測嗎?

過擬合訓練數據

雖然諸如深度神經網絡這類的復雜模型可以檢測到數據中的微小模式,但是如果訓練集本身是有噪聲的,或者數據集太?。ㄒ肓瞬蓸釉肼暎?,那么很可能會導致模型檢測噪聲本身的模式。很顯然,這些模式不能泛化至新的實例。舉例來說,假設你給生活滿意度模型提供了更多其他的屬性,包括一些不具信息的屬性(例如國家名)。在這種情況下,一個復雜模型可能會檢測到這樣的事實模式:訓練數據中,名字中帶有字母w的國家,如新西蘭(New Zealand,生活滿意度為7.3)、挪威(Norway,生活滿意度為7.4)、瑞典(Sweden,生活滿意度為7.2)和瑞士(Switzerland,生活滿意度為7.5),生活滿意度均大于7。當把這個w滿意度規則泛化到盧旺達(Rwanda)或津巴布韋(Zim-babwe)時,你對結果有多大的自信?顯然,訓練數據中的這個模式僅僅是偶然產生的,但是模型無法判斷這個模式是真實的還是噪聲產生的結果。

當模型相對于訓練數據的數量和噪度都過于復雜時,會發生過擬合??赡艿慕鉀Q方案如下。

簡化模型:可以選擇較少參數的模型(例如,選擇線性模型而不是高階多項式模型)也可以減少訓練數據中的屬性數量,或者是約束模型。

收集更多的訓練數據。

減少訓練數據中的噪聲(例如,修復數據錯誤和消除異常值)。

通過約束模型使其更簡單,并降低過擬合的風險,這個過程稱為正則化。例如,我們前面定義的線性模型有兩個參數:θ0和θ1。因此,該算法在擬合訓練數據時,調整模型的自由度就等于2,它可以調整線的高度(θ0)和斜率(θ1)。如果我們強行讓θ1 = 0,那么算法的自由度將會降為1,并且擬合數據將變得更為艱難—它能做的全部就只是將線上移或下移來盡量接近訓練實例,最后極有可能停留在平均值附近。這確實太簡單了!如果我們允許算法修改θ1,但是我們強制它只能是很小的值,那么算法的自由度將位于1和2之間,這個模型將會比自由度為2的模型稍微簡單一些,同時又比自由度為1的模型略微復雜一些。你需要在完美匹配數據和保持模型簡單之間找到合適的平衡點,從而確保模型能夠較好地泛化。

下圖顯示了三個模型。點線表示的是在以圓圈表示的國家上訓練的原始模型(沒有正方形表示的國家),虛線是我們在所有國家(圓圈和方形)上訓練的第二個模型,實線是用與第一個模型相同的數據訓練的模型,但是有一個正則化約束??梢钥吹?,正則化強制了模型的斜率較?。涸撃P团c訓練數據(圓圈)的擬合不如第一個模型,但它實際上更好地泛化了它沒有在訓練時看到的新實例(方形)。

在學習時,應用正則化的程度可以通過一個超參數來控制。超參數是學習算法(不是模型)的參數。因此,它不受算法本身的影響。超參數必須在訓練之前設置好,并且在訓練期間保持不變。如果將正則化超參數設置為非常大的值,會得到一個幾乎平坦的模型(斜率接近零)。學習算法雖然肯定不會過擬合訓練數據,但是也更加不可能找到一個好的解決方案。調整超參數是構建機器學習系統非常重要的組成部分。

正則化降低了過擬合的風險

六、欠擬合訓練數據

你可能已經猜到了,欠擬合和過擬合正好相反。它的產生通常是因為對于底層的數據結構來說,你的模型太過簡單。例如,用線性模型來描述生活滿意度就屬于欠擬合?,F實情況遠比模型復雜得多,所以即便是對于用來訓練的示例,該模型產生的預測都一定是不準確的。

解決這個問題的主要方式有:

選擇一個帶有更多參數、更強大的模型。

給學習算法提供更好的特征集(特征工程)。

減少模型中的約束(例如,減少正則化超參數)。

七、全局總結

現在我們對機器學習已經有了一定了解。我們暫且退后一步,縱觀一下全局:

機器學習是關于如何讓機器可以更好地處理某些特定任務的理論,它從數據中學習,而無須清晰地編碼規則。

機器學習系統有很多類型:有監督和無監督,批量的和在線的,基于實例的和基于模型的,等等。

在一個機器學習項目中,你從訓練集中采集數據,然后將數據交給學習算法來計算。如果算法是基于模型的,它會調整一些參數來將模型適配于訓練集(即對訓練集本身做出很好的預測),然后算法就可以對新的場景做出合理的預測。如果算法是基于實例的,它會記住這些示例,并根據相似度度量將它們與所學的實例進行比較,從而泛化這些新實例。

責任編輯人:CC

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 機器學習
    +關注

    關注

    66

    文章

    8176

    瀏覽量

    131002

原文標題:機器學習訓練中常見的問題和挑戰!

文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    機器人面臨的十大緊迫挑戰

    2016年除了人工智能、虛擬現實技術受到了極大的關注,商用機器人逐漸出現在我們生活中,家庭陪伴機器人也越來越多,可以看到未來機器人市場前景廣闊,但也難免面臨
    發表于 02-02 04:04 ?1207次閱讀

    c語言學習常見問題解決

    c語言學習常見問題解決
    發表于 08-13 09:11

    如何應對機器人設計開發中的挑戰?

    公司副總裁、迪士尼夢幻工程公司主管,現任美國Olin學院SCOPE項目主管,)在2009年NIWeek圖形化系統設計會議上總結了當前機器人開發所面臨的三大挑戰:創造更小、更輕、更強大的電池;創造更小
    發表于 07-31 07:17

    電力系統設計面臨什么挑戰?

    電力系統設計工程師們正面臨著較之以往更大的挑戰。更加復雜的傳感算法、最新的能源效率挑戰和新一代高級傳感器的應用,都意味著電力設計師們需要學習比以往更加廣泛的技能,同時不斷吸收新的設計思
    發表于 08-20 07:33

    高速通信面臨挑戰是什么?

    高速通信面臨挑戰是什么?
    發表于 05-24 06:34

    機器開發人員面臨哪些軟件挑戰以及硬件挑戰?如何去應對這些挑戰?

    機器開發人員面臨哪些軟件挑戰以及硬件挑戰?如何去應對這些挑戰?
    發表于 06-26 07:27

    微型機器學習

    人工智能 AI 正在加快速度從云端走向邊緣,進入到越來越小的物聯網設備中。而這些物聯網設備往往體積很小,面臨著許多挑戰,例如功耗、延時以及精度等問題,傳統的機器學習模型無法滿足要求,那
    發表于 09-15 09:23

    Vivado常見問題大合集

    Vivado常見問題集錦目前學習FPGA的基本知識,之前只是在數電實驗課上簡單的寫過幾個小程序,現在屬于兩條腿走路,一邊做硬件一邊分出一定的時間做FPGA開發。我的開發板使用的是賽靈思旗下
    發表于 01-06 06:12

    C語言常見問題合集匯總

    C語言常見問題集,學習C語言的同學可以下載。
    發表于 03-29 10:07

    部署基于嵌入的機器學習模型

    的價值。這是機器學習社區目前面臨的主要挑戰之一?! 〔渴?b class='flag-5'>機器學習應用通常比部署傳統軟件應用程序更
    發表于 11-02 15:09

    掃地機器人面臨的設計挑戰有哪些

    除塵等。但對設計人員來說,這也意味著在設計可靠的系統時將會面臨更多的挑戰。而小型放大器可以幫助其快速克服許多重大挑戰。下文列舉了設計人員在設計過程中會遇到的六種挑戰,以及小型放大器能提
    發表于 11-09 06:02

    Keil編譯常見問題

    吳鑒鷹總結的Keil 編譯常見問題,吳鑒鷹總結的Keil 編譯常見問題。
    發表于 07-22 15:31 ?10次下載

    機器學習應用中的常見問題分類問題你了解多少

    分類問題是機器學習應用中的常見問題,而二分類問題是其中的典型,例如垃圾郵件的識別。本文基于UCI機器學習數據庫中的銀行營銷數據集,從對數據集
    的頭像 發表于 03-29 16:40 ?1.5w次閱讀
    <b class='flag-5'>機器</b><b class='flag-5'>學習</b>應用中的<b class='flag-5'>常見問題</b>分類問題你了解多少

    前機器學習面臨的落地挑戰

    ●當前機器學習落地挑戰● 近二十年來,機器學習已廣泛應用于數據挖掘、計算機視覺、自然語言處理、生物特征識別、搜索引擎、醫學診斷、檢測信用卡欺
    的頭像 發表于 06-17 11:14 ?3335次閱讀

    機器人關節模組常見問題答疑

    機器人關節模組常見問題答疑
    的頭像 發表于 04-20 14:51 ?612次閱讀
    <b class='flag-5'>機器</b>人關節模組<b class='flag-5'>常見問題</b>答疑
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>