日本无码免费高清在线|成人日本在线观看高清|A级片免费视频操逼欧美|全裸美女搞黄色大片网站|免费成人a片视频|久久无码福利成人激情久久|国产视频一二国产在线v|av女主播在线观看|五月激情影音先锋|亚洲一区天堂av

  • 手機(jī)站
  • 小程序

    汽車測(cè)試網(wǎng)

  • 公眾號(hào)
    • 汽車測(cè)試網(wǎng)

    • 在線課堂

    • 電車測(cè)試

機(jī)器學(xué)習(xí)之全面了解模型驗(yàn)證

2021-03-04 00:53:59·  來(lái)源:MATLAB  作者:MathWorks  
 
作者:Laura Martinez Molera ◆??◆??◆??◆ 本專欄我們將和大家一起探討機(jī)器學(xué)習(xí)與數(shù)據(jù)科學(xué)的主題,解釋相關(guān)背景知識(shí),并就一些來(lái)自 MATLAB 和 Simulink 社區(qū)的問(wèn)題進(jìn)行解答。 本文主要介紹模型驗(yàn)證及其相關(guān)主題,如過(guò)擬合和超參數(shù)調(diào)優(yōu)。我將概括介紹該主題
作者:Laura Martinez Molera
 
本專欄我們將和大家一起探討機(jī)器學(xué)習(xí)與數(shù)據(jù)科學(xué)的主題,解釋相關(guān)背景知識(shí),并就一些來(lái)自 MATLAB 和 Simulink 社區(qū)的問(wèn)題進(jìn)行解答。
本文主要介紹模型驗(yàn)證及其相關(guān)主題,如過(guò)擬合和超參數(shù)調(diào)優(yōu)。我將概括介紹該主題及其重要性,然后探討以下四個(gè)問(wèn)題:
1. 模型準(zhǔn)確率為什么會(huì)變差?
2. 訓(xùn)練數(shù)據(jù)集和測(cè)試數(shù)據(jù)集有什么區(qū)別?
3. 驗(yàn)證數(shù)據(jù)集用來(lái)做什么?
4. 如何在改進(jìn)模型的同時(shí)避免過(guò)擬合?
 
引言
模型驗(yàn)證是機(jī)器學(xué)習(xí)的一項(xiàng)基礎(chǔ)方法。如果使用得當(dāng),它將幫助您評(píng)估機(jī)器學(xué)習(xí)模型在新數(shù)據(jù)上的表現(xiàn)。
這可以提供兩方面的幫助:
  • 它可以幫助您確定要使用的算法和參數(shù)。
  • 它可以防止訓(xùn)練過(guò)程中出現(xiàn)過(guò)擬合。
當(dāng)我們用手頭的數(shù)據(jù)集解決問(wèn)題時(shí),找到合適的機(jī)器學(xué)習(xí)算法來(lái)創(chuàng)建模型非常重要。每個(gè)模型都有自己的優(yōu)點(diǎn)和缺點(diǎn)。
例如,某些算法能更好地處理小型數(shù)據(jù)集,另一些算法則在處理大量高維數(shù)據(jù)時(shí)表現(xiàn)出色。
因此,兩個(gè)不同的模型可能基于同一個(gè)數(shù)據(jù)集預(yù)測(cè)出不同的結(jié)果,并且具有不同的準(zhǔn)確度。
為您的數(shù)據(jù)找到最佳模型是一個(gè)交互式過(guò)程,需要測(cè)試不同的算法以最大程度地減少模型誤差。
控制機(jī)器學(xué)習(xí)算法行為的參數(shù)稱為超參數(shù)。
根據(jù)超參數(shù)取值的差異,所得的模型可能大相徑庭。因此,通過(guò)調(diào)整超參數(shù)的值,您可以得到不同并且有可能更好的模型。
如果沒(méi)有模型驗(yàn)證,很容易不知不覺(jué)將模型調(diào)整到過(guò)擬合的程度。
您的訓(xùn)練算法應(yīng)該調(diào)整參數(shù)以最小化損失函數(shù),但有時(shí)會(huì)做得太過(guò)。
發(fā)生這種情況時(shí),模型將變得過(guò)擬合,也就是說(shuō),模型過(guò)于復(fù)雜,不能很好地處理新數(shù)據(jù)。
我將在下面的問(wèn)題中更深入地探討這一點(diǎn)。
要測(cè)試您的模型在新數(shù)據(jù)上的表現(xiàn),可以使用模型驗(yàn)證,方法是對(duì)數(shù)據(jù)集進(jìn)行劃分,然后使用一個(gè)子集訓(xùn)練算法,使用其余數(shù)據(jù)測(cè)試算法。
由于模型驗(yàn)證并未將全部數(shù)據(jù)用于構(gòu)建模型,因此是防止訓(xùn)練過(guò)程中出現(xiàn)過(guò)擬合的一種常用方法。
 
小貼士
如果您想深入了解有關(guān)使用 MATLAB 進(jìn)行交叉驗(yàn)證和超參數(shù)優(yōu)化的函數(shù)和語(yǔ)法,請(qǐng)參見(jiàn):模型構(gòu)建和評(píng)估(https://ww2.mathworks.cn/help/stats/classification-model-building-and-assessment.html)。
現(xiàn)在討論第一個(gè)問(wèn)題。

Q1、我的模型可以很好地處理訓(xùn)練數(shù)據(jù),但是處理新數(shù)據(jù)時(shí),結(jié)果并不理想。我該如何解決這個(gè)問(wèn)題? 
看樣子您的模型是過(guò)擬合了,也就是說(shuō)您的模型完全跟著訓(xùn)練集走,但不知道如何對(duì)新輸入或數(shù)據(jù)作出響應(yīng)。模型對(duì)訓(xùn)練所用數(shù)據(jù)集的響應(yīng)“好過(guò)頭了”。
一開(kāi)始,過(guò)擬合模型可能會(huì)顯得很成功,因?yàn)樗谟?xùn)練集上的誤差很小。然而,模型在測(cè)試集上的誤差會(huì)變大,也就不那么準(zhǔn)確了。
模型過(guò)擬合的最常見(jiàn)原因是訓(xùn)練數(shù)據(jù)不足,因此最好的解決方法是收集更多的數(shù)據(jù),更好地訓(xùn)練模型。
但是,您不僅需要更多的數(shù)據(jù),還需要確保這些數(shù)據(jù)足以代表模型的復(fù)雜性和多樣性,以便模型知道如何對(duì)其作出響應(yīng)。
 

Q2、我知道數(shù)據(jù)需要分組,但是我以為測(cè)試數(shù)據(jù)集和訓(xùn)練數(shù)據(jù)集的用途相同。它們之間有什么區(qū)別?
實(shí)際上,測(cè)試數(shù)據(jù)集和訓(xùn)練數(shù)據(jù)集是不同的。在前面介紹模型驗(yàn)證時(shí),我談到了模型驗(yàn)證如何將數(shù)據(jù)劃分為這樣兩個(gè)子集,接下來(lái)我深入探討一下。
模型驗(yàn)證使用隨機(jī)劃分到不同子集的數(shù)據(jù),通過(guò)調(diào)整模型來(lái)對(duì)新輸入作出正確的響應(yīng),從而降低模型過(guò)擬合的風(fēng)險(xiǎn)。兩種典型的數(shù)據(jù)子集如下:
  • 訓(xùn)練集 - 這部分?jǐn)?shù)據(jù)用于訓(xùn)練和擬合模型并確定參數(shù),通常占數(shù)據(jù)的 60-70%,需要反映模型的復(fù)雜性和多樣性。
  • 測(cè)試集 - 這部分?jǐn)?shù)據(jù)用于評(píng)估模型的性能,通常占數(shù)據(jù)的 30-40%,同樣需要反映模型的復(fù)雜性和多樣性。
由于這兩個(gè)數(shù)據(jù)集都需要反映模型的復(fù)雜性和多樣性,因此數(shù)據(jù)應(yīng)該是隨機(jī)劃分的。
這種方法也會(huì)降低模型過(guò)擬合的風(fēng)險(xiǎn),幫助我們得出更準(zhǔn)確但更簡(jiǎn)單的模型,以將其結(jié)果用于研究。
如果我們使用非隨機(jī)選擇的數(shù)據(jù)集訓(xùn)練模型,則就這一特定數(shù)據(jù)子集而言,模型將得到很好的訓(xùn)練。
問(wèn)題在于,非隨機(jī)數(shù)據(jù)不能代表其余數(shù)據(jù),也不能代表我們要用模型處理的新數(shù)據(jù)。
比如說(shuō),我們要分析一個(gè)城鎮(zhèn)的能源消耗。如果我們用于訓(xùn)練和測(cè)試的數(shù)據(jù)集不是隨機(jī)的,只包含周末的能源消耗數(shù)據(jù)(通常低于工作日),那么當(dāng)我們將該模型應(yīng)用于新數(shù)據(jù)(例如新月份)時(shí),它會(huì)是不準(zhǔn)確的,因?yàn)樗淮碇苣?/div>
為了形象說(shuō)明,我們來(lái)看兩個(gè)基于同一訓(xùn)練數(shù)據(jù)集的模型。這里使用的是機(jī)器學(xué)習(xí)入門之旅(https://ww2.mathworks.cn/learn/tutorials/machine-learning-onramp.html)中的一個(gè)基本示例。
以下是一個(gè)簡(jiǎn)單模型和一個(gè)復(fù)雜模型:
簡(jiǎn)單模型
84% 準(zhǔn)確度
復(fù)雜模型
100% 準(zhǔn)確度
我們會(huì)看到,復(fù)雜模型可以更好地適應(yīng)訓(xùn)練數(shù)據(jù),其準(zhǔn)確度為 100%,而簡(jiǎn)單模型為 84%。
我們會(huì)傾向于認(rèn)為復(fù)雜模型勝出。
但是,讓我們看看如果將測(cè)試數(shù)據(jù)集(未在訓(xùn)練中使用的新數(shù)據(jù))輸入這些模型會(huì)有什么結(jié)果:
簡(jiǎn)單模型
70% 準(zhǔn)確度
復(fù)雜模型
60% 準(zhǔn)確度
比較兩種模型的性能時(shí),我們會(huì)發(fā)現(xiàn)簡(jiǎn)單模型的準(zhǔn)確度從 84% 下降到 70%;
然而,相比復(fù)雜模型 40 個(gè)百分點(diǎn)的跌幅(從 100% 降至 60%),這點(diǎn)變化就不那么明顯了。
總結(jié)一下,對(duì)此分析而言,簡(jiǎn)單模型更好、更準(zhǔn)確,同時(shí)我們也看到,使用測(cè)試數(shù)據(jù)集來(lái)評(píng)估模型非常重要。
最后,還有一個(gè)建議。為了降低變異性,不妨使用數(shù)據(jù)集的多種劃分進(jìn)行多輪模型驗(yàn)證,以使模型更好地適應(yīng)您的分析。
這種方法稱為 K 折交叉驗(yàn)證。了解其他交叉驗(yàn)證方法,您可以訪問(wèn):https://ww2.mathworks.cn/discovery/cross-validation.html。
我使用的示例可以在機(jī)器學(xué)習(xí)入門之旅中找到。您可以通過(guò)這個(gè)鏈接在 PC 端訪問(wèn)這個(gè)兩小時(shí)的免費(fèi)、交互式學(xué)習(xí)課程:https://ww2.mathworks.cn/learn/tutorials/machine-learning-onramp.html。
 
Q3、我以為只要有訓(xùn)練集和測(cè)試集就夠了;一定還要有驗(yàn)證數(shù)據(jù)集嗎?我真的需要再次拆分我的數(shù)據(jù)嗎?
很遺憾,驗(yàn)證集再次遭到誤解。
這是一個(gè)常見(jiàn)的問(wèn)題。一般情況下,沒(méi)有人會(huì)質(zhì)疑訓(xùn)練集和測(cè)試集的必要性,但驗(yàn)證集的必要性則不是那么確鑿。
簡(jiǎn)單的解釋是,超參數(shù)調(diào)整中需要使用驗(yàn)證集,以查看調(diào)整是否有效,換句話說(shuō),能否在完整模型上進(jìn)行迭代。但是,有時(shí)人們錯(cuò)誤地使用驗(yàn)證集來(lái)描述測(cè)試數(shù)據(jù)集。
下面,我會(huì)詳細(xì)說(shuō)明驗(yàn)證數(shù)據(jù)集的重要性:
  • 驗(yàn)證集 - 此數(shù)據(jù)集用于在調(diào)整模型的超參數(shù)時(shí)評(píng)估模型的性能。該數(shù)據(jù)用于更頻繁的評(píng)估,并用于更新超參數(shù),因此驗(yàn)證集會(huì)間接影響模型。調(diào)整模型的超參數(shù)并不是絕對(duì)必要的,但通常建議這樣做。
  • 測(cè)試集 - 此數(shù)據(jù)集用于對(duì)訓(xùn)練集中的最終模型擬合進(jìn)行無(wú)偏評(píng)估。此數(shù)據(jù)集只在模型訓(xùn)練完成后使用一次,并且不影響模型;它只是用于計(jì)算性能。
總結(jié)一下,訓(xùn)練數(shù)據(jù)集用于訓(xùn)練可用的各種算法,驗(yàn)證數(shù)據(jù)集用于比較不同算法(使用不同的超參數(shù))的性能,并決定采用哪一種算法。測(cè)試數(shù)據(jù)集用于了解特定模型的準(zhǔn)確度、敏感度和性能。
Q4、我想改進(jìn)我的模型,但又擔(dān)心過(guò)擬合。我該怎么做?
這是個(gè)好問(wèn)題。
在本文的簡(jiǎn)介部分,我簡(jiǎn)要提到了超參數(shù)可以控制機(jī)器學(xué)習(xí)算法的行為。接下來(lái),我將對(duì)此進(jìn)行更深入的介紹。
您可以將超參數(shù)想像成自行車的部件:我們可以通過(guò)改變它們來(lái)影響系統(tǒng)的性能。
假設(shè)您購(gòu)買了一輛二手自行車。車架尺寸合適,但如果您調(diào)整一下座椅高度,收緊或放松剎車,給鏈條上油或安裝適合地形的輪胎,這輛自行車可能會(huì)更高效。
外部因素也會(huì)影響您的騎行,但是有了一輛優(yōu)化過(guò)的自行車,同一段行程會(huì)變得更輕松。類似地,優(yōu)化超參數(shù)將幫助您改進(jìn)模型。
下面是一個(gè)機(jī)器學(xué)習(xí)示例。在人工神經(jīng)網(wǎng)絡(luò) (ANN) 中,超參數(shù)是確定網(wǎng)絡(luò)結(jié)構(gòu)的變量,例如人工神經(jīng)元的隱藏層數(shù)和每一層中的人工神經(jīng)元數(shù);或者是定義如何訓(xùn)練模型的變量,例如學(xué)習(xí)率,即學(xué)習(xí)過(guò)程的速度。
超參數(shù)是在學(xué)習(xí)過(guò)程開(kāi)始之前定義的。相對(duì)地,ANN 的參數(shù)是每個(gè)人工神經(jīng)元連接的系數(shù)或權(quán)重,并在訓(xùn)練過(guò)程中進(jìn)行調(diào)整。
典型的神經(jīng)網(wǎng)絡(luò)架構(gòu)
超參數(shù)是在訓(xùn)練或?qū)W習(xí)過(guò)程開(kāi)始之前確定的模型參數(shù),它位于模型的外部;換句話說(shuō),如果您想更改超參數(shù),需要手動(dòng)更改。
自行車座椅不會(huì)自行調(diào)整,您需要在出發(fā)前先行調(diào)整;類比到機(jī)器學(xué)習(xí)模型中,就是使用驗(yàn)證數(shù)據(jù)集進(jìn)行調(diào)整。
相對(duì)地,其他參數(shù)是在訓(xùn)練過(guò)程中使用訓(xùn)練數(shù)據(jù)集確定的。
訓(xùn)練和測(cè)試模型所需的時(shí)間取決于其超參數(shù),模型的超參數(shù)越少,越易于驗(yàn)證或調(diào)整,因此您可以減小驗(yàn)證數(shù)據(jù)集的大小。
非凸曲面示例
大多數(shù)機(jī)器學(xué)習(xí)問(wèn)題都是非凸的。
這意味著根據(jù)我們?yōu)槌瑓?shù)選擇的值,我們可以得到完全不同的模型,并且,通過(guò)更改超參數(shù)的值,我們可以找到不同的、更好的模型。
這就是驗(yàn)證數(shù)據(jù)集的重要之處,它讓您能夠使用不同的超參數(shù)進(jìn)行迭代,從而為您的分析找到最佳模型。
如果您想進(jìn)一步了解超參數(shù),不妨看看 Adam Filion 這段 5 分鐘的視頻,其中相當(dāng)扼要地介紹了超參數(shù)優(yōu)化。

以上就是本文的全部?jī)?nèi)容。希望您喜歡這個(gè)“模型驗(yàn)證”專欄。如果您希望看到更多其他機(jī)器學(xué)習(xí)與數(shù)據(jù)科學(xué)主題的探討,歡迎留言告訴我們。
分享到:
 
反對(duì) 0 舉報(bào) 0 收藏 0 評(píng)論 0
滬ICP備11026917號(hào)-25