
1 前言
歡迎來到藍(lán)色是天的機(jī)器學(xué)習(xí)筆記專欄!在上一篇文章《機(jī)器學(xué)習(xí)理論筆記(一):初識機(jī)器學(xué)習(xí)》中,我們初步了解了機(jī)器學(xué)習(xí),并探討了其定義、分類以及基本術(shù)語。作為繼續(xù)學(xué)習(xí)機(jī)器學(xué)習(xí)的進(jìn)一步之旅,今天我們將進(jìn)一步討論機(jī)器學(xué)習(xí)中的一些重要概念和技巧。
在本文中,我們將重點(diǎn)關(guān)注以下幾個方面:經(jīng)驗(yàn)誤差與過擬合、數(shù)據(jù)集劃分、調(diào)參以及最終模型的選擇
。這些主題對于解決實(shí)際問題中的機(jī)器學(xué)習(xí)挑戰(zhàn)至關(guān)重要。通過深入了解這些概念和方法,我們可以更好地理解機(jī)器學(xué)習(xí)模型的訓(xùn)練過程,提高模型的預(yù)測準(zhǔn)確性,從而使我們能夠做出更好的決策和預(yù)測。
無論你是新手還是有經(jīng)驗(yàn)的機(jī)器學(xué)習(xí)從業(yè)者,本文都將為你提供有價值的知識和實(shí)用的技巧。讓我們一起探索機(jī)器學(xué)習(xí)中這些關(guān)鍵領(lǐng)域,并加深對機(jī)器學(xué)習(xí)的理解。讓我們開始吧!
2 經(jīng)驗(yàn)誤差與過擬合
在機(jī)器學(xué)習(xí)中,我們通常希望通過訓(xùn)練學(xué)習(xí)器來對新樣本進(jìn)行泛化,即在未見過的數(shù)據(jù)上具有良好的預(yù)測準(zhǔn)確性。為了衡量學(xué)習(xí)器的性能,我們引入了錯誤率、精度、誤差
等概念。
- 錯誤率表示分類錯誤的樣本數(shù)占樣本總數(shù)的比例,而精度則是錯誤率的補(bǔ)數(shù),即1減去錯誤率。誤差是指學(xué)習(xí)器的實(shí)際預(yù)測輸出樣本與樣本真實(shí)輸出之間的差異。
- 訓(xùn)練誤差,也稱為經(jīng)驗(yàn)誤差,表示學(xué)習(xí)器在訓(xùn)練集上的誤差。訓(xùn)練誤差是通過與已知標(biāo)簽進(jìn)行比較來評估學(xué)習(xí)器的預(yù)測準(zhǔn)確性。然而,我們希望學(xué)習(xí)器在新樣本上也能表現(xiàn)出良好的預(yù)測能力,即具有較低的泛化誤差。
- 泛化誤差是指學(xué)習(xí)器在新樣本上的誤差,它度量了學(xué)習(xí)器在未見過的數(shù)據(jù)上的表現(xiàn)能力。我們希望泛化誤差盡可能小,但是我們只能通過訓(xùn)練集的經(jīng)驗(yàn)誤差作為指標(biāo)進(jìn)行衡量。
然而,經(jīng)驗(yàn)誤差往往無法完全反映學(xué)習(xí)器的泛化能力。當(dāng)學(xué)習(xí)器過度追求在訓(xùn)練集上的準(zhǔn)確性時,很可能會過于貼合訓(xùn)練數(shù)據(jù)的細(xì)節(jié)特征,而忽視了樣本的一般性質(zhì),從而導(dǎo)致泛化性能下降。這種現(xiàn)象被稱為過擬合
。
過擬合是機(jī)器學(xué)習(xí)中一個常見的問題,即學(xué)習(xí)器在訓(xùn)練集上表現(xiàn)出較好的性能,但在新樣本上的表現(xiàn)卻差。它表明學(xué)習(xí)器過于復(fù)雜,將訓(xùn)練樣本自身的特點(diǎn)當(dāng)作了所有潛在樣本都會具有的一般性質(zhì),從而導(dǎo)致了泛化性能的降低。
相對應(yīng)的,欠擬合
是指學(xué)習(xí)器對訓(xùn)練樣本的一般性質(zhì)學(xué)習(xí)得不夠好,導(dǎo)致無法很好地進(jìn)行預(yù)測和泛化。
雖然完全避免過擬合是不可能的,但我們可以采取一些措施來“緩解”過擬合并減小其風(fēng)險(xiǎn)。例如,我們可以增加更多的訓(xùn)練數(shù)據(jù),以減少對特定樣本的過度依賴。另外,我們還可以采用正則化方法來約束學(xué)習(xí)器的復(fù)雜度,以防止其過度擬合訓(xùn)練數(shù)據(jù)。
同時,對于欠擬合問題,我們可以嘗試增加模型的復(fù)雜度或采用更復(fù)雜的算法來提高學(xué)習(xí)器的性能。此外,合理選擇特征、調(diào)整模型參數(shù)以及使用集成學(xué)習(xí)等方法也可以幫助克服欠擬合問題。
在實(shí)際應(yīng)用中,我們需要根據(jù)問題的特點(diǎn)和數(shù)據(jù)的情況來選擇合適的機(jī)器學(xué)習(xí)算法,并采取恰當(dāng)?shù)姆椒▉砜朔^擬合或欠擬合的問題,以達(dá)到更好的泛化性能。
3 訓(xùn)練集與測試集的劃分方法
在機(jī)器學(xué)習(xí)中,訓(xùn)練集和測試集的劃分是評估模型性能的重要步驟。合理劃分訓(xùn)練集和測試集能夠準(zhǔn)確評估模型的泛化能力和性能。本文將介紹三種常用的訓(xùn)練集與測試集劃分方法:留出法、交叉驗(yàn)證法和自助法,并討論它們的優(yōu)缺點(diǎn)和適用場景。
3.1 留出法(Hold-out)
留出法是最簡單直接的劃分方法之一。它將原始數(shù)據(jù)集劃分為兩個互斥的集合:一個用作訓(xùn)練集,另一個用作測試集。訓(xùn)練集用于訓(xùn)練模型的參數(shù)和規(guī)則,而測試集則用于評估模型的性能。劃分時應(yīng)保持訓(xùn)練集和測試集的數(shù)據(jù)分布相同,并確保測試集與訓(xùn)練集互斥,即測試樣本不在訓(xùn)練集中出現(xiàn)。為了減小隨機(jī)劃分的影響,通常建議進(jìn)行多次隨機(jī)劃分,并取平均值作為留出法的評估結(jié)果。
直接將數(shù)據(jù)集刀劃分為兩個互斥的集合,其中一個集合作為訓(xùn)練集S,另一個作為測試集T,即D = S∪T, S∩T = ?。 上訓(xùn)練出模型后,用T來評估其測試誤差,作為對泛化誤差的估計(jì)
優(yōu)點(diǎn):
簡單易行,實(shí)現(xiàn)方便。
計(jì)算效率高,適用于大數(shù)據(jù)集。
缺點(diǎn):
可能由于隨機(jī)劃分的不一致導(dǎo)致評估結(jié)果偏差較大。
對于小規(guī)模數(shù)據(jù)集,劃分比例的選擇有一定的挑戰(zhàn)。
適用場景:
數(shù)據(jù)集規(guī)模較大。
對劃分效果要求不苛刻的場景。
3.2 交叉驗(yàn)證法(Cross Validation)
交叉驗(yàn)證法是一種更穩(wěn)健的劃分方法,它將原始數(shù)據(jù)集劃分為k個大小相似的互斥子集。然后,使用k-1個子集作為訓(xùn)練集,剩下的一個子集作為測試集,進(jìn)行模型的訓(xùn)練和測試。重復(fù)這個過程k次,每次選擇不同的測試集,最終將k次測試結(jié)果的均值作為最終評估結(jié)果。交叉驗(yàn)證法能夠更充分地利用數(shù)據(jù)集的信息,減小因單次劃分導(dǎo)致的偏差。常見的k值有10、5、20等,其中10折交叉驗(yàn)證是最常用的。
D=D1∪D2∪……Dk,Di∩Dj=?(i≠j)
優(yōu)點(diǎn):
可以更準(zhǔn)確地評估模型的性能,有效利用數(shù)據(jù)集。
具有較低的評估結(jié)果方差。
對于數(shù)據(jù)集較小且難以進(jìn)行有效劃分的情況下特別有用。
缺點(diǎn):
計(jì)算復(fù)雜度高,需要進(jìn)行多次模型訓(xùn)練和測試。
對于大規(guī)模數(shù)據(jù)集,計(jì)算資源消耗較大。
適用場景:
數(shù)據(jù)集規(guī)模較小。
對模型性能評估要求較高的場景。
3.3 自助法(Bootstrap)
自助法是一種特殊的劃分方法,適用于數(shù)據(jù)集較小或難以有效劃分訓(xùn)練集和測試集的情況。自助法通過自助采樣的方式,從原始數(shù)據(jù)集中進(jìn)行有放回地采樣,生成一個與原始數(shù)據(jù)集大小相同的自助樣本集。由于自助樣本集的生成過程中部分樣本可能多次出現(xiàn),而另一部分樣本可能未出現(xiàn),因此可以使用自助樣本集作為訓(xùn)練集,剩余未出現(xiàn)的樣本作為測試集,得到一個稱為包外估計(jì)(out-of-bag estimate)的評估結(jié)果。自助法能夠更充分地利用數(shù)據(jù)集的信息,減小因劃分導(dǎo)致的偏差,并且適用于數(shù)據(jù)集較小或難以有效劃分的情況。
給定包含m個樣本的數(shù)據(jù)集Q ,我們對它進(jìn)行釆樣產(chǎn)生數(shù)據(jù)集每次隨機(jī)從Q中挑選一個樣本,將其拷貝放入Df,然后再將該樣本放回初始數(shù)據(jù)集D中,使得該樣本在下次釆樣時仍有可能被釆到;這個過程重復(fù)執(zhí)行m次后,我們就得到了包含m個樣本的數(shù)據(jù)集Df,這就是自助釆樣的結(jié)果。顯然,D中有一部分樣本會在Df中多次出現(xiàn),而另一部分樣本不出現(xiàn)??梢宰鲆粋€簡單的估計(jì),樣本在m次釆樣中始終不被釆到的概率是:
( 1 ? 1 m ) m \left(1-{\frac{1}{m}}\right)^{m} (1?m1?)m
取極限得到
* ? l i m m → ∞ ( 1 ? 1 m ) m ? 1 e ≈ 0.368 \operatorname*{lim}_{m\rightarrow\infty}\left(1-\frac{1}{m}\right)^{m}\mapsto\frac{1}{e}\approx0.368 *limm→∞?(1?m1?)m?e1?≈0.368
優(yōu)點(diǎn):
可以有效利用小規(guī)模數(shù)據(jù)集,減小由于數(shù)據(jù)量不足導(dǎo)致的問題。
無需對數(shù)據(jù)集進(jìn)行顯式的劃分,簡化了訓(xùn)練集和測試集的劃分過程。
缺點(diǎn):
自助樣本集中約有37%的樣本未被采樣到,可能導(dǎo)致評估結(jié)果偏樂觀。
對于大規(guī)模數(shù)據(jù)集,自助法可能會導(dǎo)致計(jì)算資源浪費(fèi)。
適用場景:
數(shù)據(jù)集規(guī)模較小或難以有效劃分訓(xùn)練集和測試集的情況。
對數(shù)據(jù)集的利用率要求較高的場景。
4 調(diào)參與最終模型
在機(jī)器學(xué)習(xí)中,調(diào)參和算法選擇是非常重要的步驟,它們直接影響到最終模型的性能和泛化能力。本章將介紹調(diào)參的概念以及一些常見的調(diào)參方法,同時還會涉及到最終模型的訓(xùn)練和評估。
調(diào)參的過程實(shí)際上和算法選擇并沒有本質(zhì)的區(qū)別。對于許多學(xué)習(xí)算法來說,有很多參數(shù)需要設(shè)置,而這些參數(shù)的不同取值通常會導(dǎo)致學(xué)得模型的性能有顯著差異。因此,我們需要對參數(shù)進(jìn)行調(diào)節(jié)以找到最優(yōu)的參數(shù)配置。然而,由于學(xué)習(xí)算法的參數(shù)通常是連續(xù)的實(shí)數(shù)值,無法對每種參數(shù)取值都進(jìn)行模型訓(xùn)練。為了解決這個問題,我們常常會選擇一個參數(shù)的范圍和變化步長,然后在這個范圍內(nèi)進(jìn)行參數(shù)的取值評估。例如,在范圍 [0, 0.2] 內(nèi)以 0.05 為步長進(jìn)行取值評估,這樣就得到了5個候選參數(shù)值。盡管這種方法不能保證找到最佳的參數(shù)值,但是通過權(quán)衡計(jì)算開銷和性能估計(jì),它仍然是一個可行的解決方案。
我們通常會將學(xué)得模型在實(shí)際使用中遇到的數(shù)據(jù)稱為測試數(shù)據(jù),為了區(qū)分,模型評估和選擇中用于評估測試的數(shù)據(jù)集被稱為驗(yàn)證集(validation set)
。在調(diào)參過程中,我們會使用驗(yàn)證集來評估不同參數(shù)配置下模型的性能,并選擇表現(xiàn)最好的參數(shù)配置作為最終模型的參數(shù)。
需要注意的是,在模型訓(xùn)練和調(diào)參完成后,我們還需要使用初始的數(shù)據(jù)集重新訓(xùn)練模型。這樣做的目的是讓初始的測試集也被模型學(xué)習(xí),從而進(jìn)一步提升模型的學(xué)習(xí)效果。類比于考試的情形,就像我們每次考試完后,需要復(fù)習(xí)和消化考試題目的內(nèi)容,從而能夠更好地應(yīng)對下一次考試。因此,重新訓(xùn)練模型可以增強(qiáng)模型的泛化能力和性能。
綜上所述,調(diào)參和最終模型的訓(xùn)練是實(shí)現(xiàn)好的機(jī)器學(xué)習(xí)模型的重要步驟。通過選擇合適的參數(shù)值以及重新訓(xùn)練模型,我們可以進(jìn)一步提升模型的性能和泛化能力,從而更好地適應(yīng)實(shí)際應(yīng)用場景。調(diào)參需要耐心和實(shí)踐經(jīng)驗(yàn),同時也需要通過驗(yàn)證集的評估來指導(dǎo)參數(shù)選擇的過程。最終,我們希望通過調(diào)參和最終模型的訓(xùn)練得到一個具有良好性能的模型,以解決實(shí)際問題并取得好的效果。
5 結(jié)語
在本篇文章中,我們介紹了機(jī)器學(xué)習(xí)中的調(diào)參與最終模型的相關(guān)內(nèi)容。調(diào)參是為了找到最優(yōu)的參數(shù)配置,能夠提高模型的性能和泛化能力。同時,為了評估模型的性能,在訓(xùn)練和調(diào)參過程中,我們將數(shù)據(jù)集劃分為訓(xùn)練集和測試集。
對于數(shù)據(jù)集的劃分,我們介紹了三種常用的方法:留出法、交叉驗(yàn)證法和自助法。每種方法都有各自的使用場景和特點(diǎn),可以根據(jù)實(shí)際情況選擇合適的方法。
調(diào)參過程需要一定的經(jīng)驗(yàn)和技巧,在限定的參數(shù)范圍內(nèi)嘗試不同的取值,并通過驗(yàn)證集來評估模型的性能。通過不斷地調(diào)節(jié)參數(shù),我們可以找到最佳的參數(shù)配置,以獲得最佳的模型性能。
最終模型的訓(xùn)練也是十分重要的,通過重新使用全部的數(shù)據(jù)集來訓(xùn)練模型,可以進(jìn)一步提高模型的泛化能力和性能。
調(diào)參與最終模型的訓(xùn)練是機(jī)器學(xué)習(xí)中不可忽視的環(huán)節(jié),需要經(jīng)過實(shí)踐與驗(yàn)證逐步優(yōu)化模型。通過本文的內(nèi)容,我們希望讀者能夠理解調(diào)參的重要性,并掌握劃分?jǐn)?shù)據(jù)集和調(diào)參的基本方法。只有通過合理的調(diào)參和最終模型的訓(xùn)練,我們才能得到好的結(jié)果,并應(yīng)用機(jī)器學(xué)習(xí)技術(shù)來解決現(xiàn)實(shí)問題。文章來源:http://www.zghlxwxcb.cn/news/detail-670280.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-670280.html
到了這里,關(guān)于機(jī)器學(xué)習(xí)理論筆記(二):數(shù)據(jù)集劃分以及模型選擇的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!