淺談機器學(xué)習(xí)酒奶,聊聊訓(xùn)練過程蚁孔,就醬!

banner.png

寫在最前

本故事講的是關(guān)于機器學(xué)習(xí)的基本概念和訓(xùn)練過程。通過這個故事惋嚎,你將對機器學(xué)習(xí)有一個直觀的了解杠氢。隨后,當(dāng)你翻閱關(guān)于機器學(xué)習(xí)的書籍時另伍,也許會有不同的感受鼻百。如果你有感覺到任督二脈被打通了,那我真是太高興了。如果沒有温艇,我再努努力 ?(?_|

在這個 AI 內(nèi)容生成泛濫的時代因悲,依然有一批人"傻傻"堅持原創(chuàng),如果您能讀到最后中贝,還請點贊或收藏或關(guān)注支持下我唄囤捻,感謝 ( ̄︶ ̄)↗


機器學(xué)習(xí)是什么?

丹尼爾:蛋兄邻寿,今天的天氣真好啊

蛋先生:嗯蝎土,是啊,陽光明媚

丹尼爾:對了绣否,蛋兄誊涯,什么是機器學(xué)習(xí)啊蒜撮?

蛋先生:(lll¬ω¬) 你這暴构,話題轉(zhuǎn)得讓人猝不及防啊,咋這么好學(xué)呢段磨!

丹尼爾:只是愛瞎折騰取逾,隨便聊聊嘛 (~ ̄▽ ̄)~

蛋先生:好吧,先來說說“學(xué)習(xí)”二字苹支。你覺得人類是怎么學(xué)習(xí)的砾隅?

丹尼爾:就是讀讀書、聽聽課唄

蛋先生:沒錯债蜜。你所說的讀書和聽課是獲取信息的方式晴埂。然后我們把這些信息傳遞給大腦,大腦會進行整理和加工寻定,從而理解這些信息儒洛,之后我們還可以學(xué)以致用

丹尼爾:那機器也這樣嗎?

蛋先生:機器學(xué)習(xí)的方式類似狼速。我們需要給機器一堆訓(xùn)練數(shù)據(jù)(信息)琅锻,讓它自己去找出其中的規(guī)律(理解),然后讓它處理類似的問題(學(xué)以致用)

丹尼爾:哇向胡,真是太神奇了浅浮!

蛋先生:根據(jù)學(xué)習(xí)方式的不同,機器學(xué)習(xí)可以分為監(jiān)督學(xué)習(xí)捷枯、無監(jiān)督學(xué)習(xí)等,其中最常用的就是監(jiān)督學(xué)習(xí)了


什么是監(jiān)督學(xué)習(xí)专执?

丹尼爾:監(jiān)督學(xué)習(xí)是啥淮捆?

蛋先生:先來說說“監(jiān)督”二字。你要監(jiān)督孩子做作業(yè),前提是你手上有標(biāo)準(zhǔn)答案攀痊,才能衡量對錯桐腌,對吧?

丹尼爾:嗯苟径,所以監(jiān)督學(xué)習(xí)是?

蛋先生:監(jiān)督學(xué)習(xí)就像監(jiān)督機器做家庭作業(yè)一樣案站。我們提供題目(訓(xùn)練數(shù)據(jù)),同時也提供標(biāo)準(zhǔn)答案(標(biāo)簽)棘街,這樣機器才能“知錯能改”

丹尼爾:這聽起來挺有趣的蟆盐!您繼續(xù)

蛋先生:想象一下,你有一堆加法題目和答案遭殉,比如 1+1=2石挂,2+2=4 等等,但你事先并沒有告訴機器加法的計算規(guī)則险污。機器會不斷地嘗試并對自己的答案進行調(diào)整痹愚,最終找到輸入到輸出的對應(yīng)關(guān)系,從而學(xué)會了加法

丹尼爾:哇塞蛔糯,比我還厲害拯腮!我學(xué)加法的時候可是先從數(shù)手指開始的,機器直接從題目和答案里學(xué)會了

蛋先生:是啊蚁飒,一旦機器學(xué)會了加法动壤,它就能獨立解決新的加法題目了


機器學(xué)習(xí)都學(xué)了些什么?

丹尼爾:我挺好奇的飒箭,機器學(xué)習(xí)最終學(xué)到了什么呢狼电?

蛋先生:其實,你經(jīng)常聽到某某大模型有多少億的參數(shù)弦蹂,這些參數(shù)就是機器學(xué)習(xí)最終學(xué)到的“知識”肩碟。具體來說,參數(shù)分為權(quán)重參數(shù)和偏置參數(shù)

丹尼爾:權(quán)重參數(shù)和偏置參數(shù)凸椿?這些到底是啥玩意兒削祈?

蛋先生:我們用最簡單的線性回歸來解釋吧。線性回歸的基本公式是:y = wx + b脑漫。這里的 x 是我們給機器的輸入數(shù)據(jù)(訓(xùn)練數(shù)據(jù)髓抑,也叫特征),而 y 則是對應(yīng)的輸出數(shù)據(jù)(標(biāo)簽)优幸,而 w 和 b 就是機器要學(xué)習(xí)的權(quán)重參數(shù)和偏置參數(shù)

丹尼爾:為什么叫 w 為權(quán)重參數(shù)吨拍,叫 b 為偏置參數(shù)呢?

蛋先生:因為 w 決定了每個 x 的重要程度网杆,影響了 x 對最終輸出 y 的貢獻羹饰。而 b 就像一個基準(zhǔn)線伊滋,可以調(diào)整整個公式的輸出。只要機器確定了 w 和 b 的值队秩,它就能計算出給定 x 對應(yīng)的 y

丹尼爾:這個公式看上去有點簡單

蛋先生:嗯笑旺,這個公式是可換的。比如在傳統(tǒng)機器學(xué)習(xí)中馍资,我們可以換成有多個 x 特征的線性公式筒主,比如 y = w1x1 + w2x2 + b;或者換成非線性公式鸟蟹,比如 y = wx^2 + b乌妙;甚至還可以換成深度學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)

丹尼爾:神經(jīng)網(wǎng)絡(luò)?

蛋先生:神經(jīng)網(wǎng)絡(luò)戏锹,可以簡單將它看成由很多個只進行最簡單的一元線性方程的節(jié)點組合而成冠胯,然后再通過激活函數(shù)來實現(xiàn)非線性效果。這個屬于深度學(xué)習(xí)的話題锦针,咱們以后再聊吧荠察!

丹尼爾:好滴,簡單講就是機器學(xué)習(xí)最終學(xué)習(xí)了權(quán)重參數(shù)和偏置參數(shù)

蛋先生:沒錯


機器學(xué)習(xí)是怎么學(xué)習(xí)的奈搜?

? 收集數(shù)據(jù)

丹尼爾:那機器是怎么學(xué)習(xí)到這些參數(shù)的悉盆?

蛋先生:首先,我們需要收集訓(xùn)練數(shù)據(jù)馋吗,而且這些數(shù)據(jù)得是高質(zhì)量的

丹尼爾:這個容易理解焕盟,就像俗話說的,近朱者赤宏粤,近墨者黑嘛脚翘。數(shù)據(jù)質(zhì)量越高,機器學(xué)習(xí)的效果自然也會越好绍哎。那怎么保證數(shù)據(jù)質(zhì)量高呢来农?

蛋先生:這就涉及到數(shù)據(jù)清洗、特征工程崇堰、數(shù)據(jù)增強等數(shù)據(jù)預(yù)處理操作沃于。這些內(nèi)容可是一個大工程,這一時半會也說不完

丹尼爾:好的海诲,我明白了繁莹。暫時我只需要知道需要收集數(shù)據(jù),并且有數(shù)據(jù)預(yù)處理的環(huán)節(jié)就夠了

蛋先生:明白人

? 劃分?jǐn)?shù)據(jù)

丹尼爾:那接下來呢特幔?

蛋先生:接下來我們需要把數(shù)據(jù)劃分成訓(xùn)練集咨演、測試集和驗證集

丹尼爾:為什么要這么做呢?

蛋先生:這樣做是為了提高模型的泛化能力蚯斯,避免過擬合

丹尼爾:慢著雪标,什么是過擬合零院?

蛋先生:想象一下,你平時一直在做同一套習(xí)題村刨。如果考試恰好出了你練習(xí)過的那些題目,當(dāng)然能考高分撰茎。但如果考試出了你從沒見過的題目嵌牺,你就會不知所措。這就是過擬合龄糊,模型只能處理它見過的訓(xùn)練數(shù)據(jù)逆粹,對于新數(shù)據(jù)表現(xiàn)不好

丹尼爾:那什么是泛化呢?

蛋先生:泛化是指雖然考試出了你沒做過的題目炫惩,但你仍然能利用平時練習(xí)時學(xué)到的知識僻弹,舉一反三,依然能夠取得好成績他嚷。泛化能力強的模型能夠處理沒見過的新數(shù)據(jù)

丹尼爾:那訓(xùn)練集蹋绽、測試集和驗證集各自有什么具體作用呢?

蛋先生:別急筋蓖,這個我們等會聊卸耘!

? 選擇模型(算法)

丹尼爾:好吧,那接下來我們干什么呢粘咖?

蛋先生:接下來就是選擇模型蚣抗。你可以選擇簡單的線性回歸模型,也可以選擇復(fù)雜的神經(jīng)網(wǎng)絡(luò)

丹尼爾:怎么選擇模型呢瓮下?

蛋先生:這要根據(jù)你要解決的問題來選擇翰铡。不過今天我們主要聊訓(xùn)練的流程,這個問題就不深入探討了讽坏。但有一點需要提一下锭魔,模型也屬于超參數(shù)。訓(xùn)練時震缭,你可能需要對模型進行調(diào)整赂毯。比如在傳統(tǒng)機器學(xué)習(xí)中使用不同的公式,或者在深度學(xué)習(xí)中增加隱藏層等

丹尼爾:超參數(shù)是什么拣宰?

蛋先生:超參數(shù)不是機器要學(xué)習(xí)的參數(shù)党涕,而是外部提供的參數(shù),可以是人為設(shè)置巡社,也可以通過算法自動調(diào)節(jié)

丹尼爾:聽你這么一說膛堤,我的問題更多了。不過今天我只需要知道晌该,在訓(xùn)練過程中需要根據(jù)實際情況對模型進行調(diào)整就好了

蛋先生:明白人

? 勇敢嘗試

丹尼爾:感覺萬事俱備肥荔,是不是可以開始學(xué)習(xí)了绿渣?機器是怎么找到合適的 w 和 b 的值呢?

蛋先生:一開始燕耿,誰也不知道合適的參數(shù)是什么(如果知道就不用折騰了)中符,所以我們會先隨機給出參數(shù)值,勇敢地邁出第一步

丹尼爾:也就是說誉帅,機器可以隨便假設(shè) w 和 b 為一個值淀散,比如 0 或者其它隨機的值?(初始值的選擇其實是有講究的蚜锨,這個以后有緣再說)

蛋先生:沒錯档插!一開始就是這么做的。因為不知道正確答案亚再,所以先大膽假設(shè)一個值

丹尼爾:那之后呢郭膛?

蛋先生:之后就像你走路發(fā)現(xiàn)方向不對會調(diào)整一樣氛悬,機器也會根據(jù)情況調(diào)整參數(shù)

丹尼爾:首先,機器怎么知道參數(shù)不對勁呢圆雁?

蛋先生:機器使用假設(shè)的參數(shù),計算出對應(yīng)的 y`伪朽,也就是預(yù)測值

丹尼爾:恩

蛋先生:然后它會把預(yù)測值和真實值進行比較。如果預(yù)測值和真實值越接近烈涮,說明 w 和 b 的值越準(zhǔn)確。預(yù)測值和真實值之間的差距就是誤差坚洽,或稱為損失。所以機器學(xué)習(xí)的目標(biāo)就是要盡量減少損失讶舰,損失越小,預(yù)測值和真實值就越接近

? 計算誤差

丹尼爾:計算誤差就只是簡單相減一下嗎跳昼?

蛋先生:有專門的損失函數(shù)來解決這個問題,比如 MAE(平均絕對誤差)和 MSE(均方誤差)

丹尼爾:等等鹅颊,別一下子講這么多專業(yè)名詞

蛋先生:其實很好理解。我們這里的損失值不就是預(yù)測答案與正確答案的差嗎堪伍?當(dāng)然觅闽,差有正有負涮俄,所以通常要取正值蛉拙。取正值有兩種簡單的方法,一種是取絕對值禽拔,一種是取平方

丹尼爾:您接著說

蛋先生:我們的訓(xùn)練數(shù)據(jù)一般是有很多個的刘离。每個數(shù)據(jù)都會有一個損失值,所以總損失值需要包含所有樣本的損失值睹栖。計算總損失值有兩種方法,一種是求和茧痕,一種是求平均野来。結(jié)合絕對值計算和平方計算,求和計算和求平均計算的所有組合踪旷,就得到了四種常見的損失函數(shù):L1曼氛、L2、MAE 和 MSE


L1:絕對值計算 + 求和計算

L2:平方計算計算 + 求和計算

MAE:絕對值計算 + 求平均計算

MSE:平方計算計算 + 求平均計算

丹尼爾:哦令野,這么一解釋舀患,感覺清楚多了。那么該選擇哪種損失函數(shù)呢气破?

蛋先生:建議優(yōu)先使用 MAE 和 MSE聊浅,因為它們不受樣本數(shù)量的影響。然后選擇哪一個還取決于你對極端損失值的處理態(tài)度:是要嚴(yán)懲(MSE)還是忽略(MAE)

丹尼爾:哦现使,原來如此低匙。那么只有這些損失函數(shù)嗎?

蛋先生:當(dāng)然不止這些碳锈。對于回歸問題(可以簡單理解為填空題)顽冶,MSE 和 MAE 都是合適的。而對于分類問題(可以簡單理解為選擇題)售碳,有更合適的損失函數(shù)强重,可以避免在計算中使用大量內(nèi)存來滿足精度需求,比如交叉熵損失函數(shù)等

? 反復(fù)調(diào)整

丹尼爾:好吧贸人,我們已經(jīng)知道了當(dāng)前的損失值间景,接下來要怎么調(diào)整 w 和 b 才能讓損失值變小呢?

蛋先生:這時候就得靠梯度下降這個“指南針”啦灸姊!它會為機器指明 w 和 b 調(diào)整的大小和方向

丹尼爾:咦拱燃,這么神奇,那它是怎么做到的力惯?

蛋先生:額碗誉,這么快就忘記了召嘶?回憶一下我們之前談過的《梯度下降,原來如此哮缺?》

丹尼爾:哦哦弄跌,瞧我這個記性铛只,記起來了淳玩。然后就是不斷地反復(fù)操作非竿,對吧红柱?

蛋先生:對呀,就是這么反復(fù)嘗試韧骗。一直調(diào)整袍暴,直到損失函數(shù)的值基本不再變小容诬,這就算完成啦

? 小批量處理

丹尼爾:哦沿腰,這個過程中還有哪些細節(jié)要講的嗎颂龙?

蛋先生:在訓(xùn)練過程中,有一個重要的細節(jié)躲叼。如果我們每次迭代都處理所有的訓(xùn)練數(shù)據(jù)再更新參數(shù)枫慷,對于大規(guī)模數(shù)據(jù)集來說或听,會非常慢。所以顿颅,我們通常采用小批量處理的方式

丹尼爾:小批量處理粱腻?那是怎么一回事绍些?

蛋先生:簡單來說耀鸦,就是每次迭代只處理一小部分訓(xùn)練數(shù)據(jù)揭糕,這部分樣本數(shù)據(jù)可以看作是全部數(shù)據(jù)的代表著角。處理完這一批后吏口,我們就更新模型的參數(shù)

丹尼爾:那這樣處理完所有數(shù)據(jù)需要多少次迭代呢产徊?

蛋先生:這取決于你每次批處理設(shè)置的樣本數(shù)蜀细。比如奠衔,假設(shè)有 10000 個訓(xùn)練數(shù)據(jù),如果每次批處理 1000 個痊夭,那么 10 次迭代就能處理完所有數(shù)據(jù)她我。當(dāng)所有訓(xùn)練數(shù)據(jù)都被處理過一次番舆,我們稱之為一個 epoch。每個 epoch 結(jié)束后击敌,我們可以用驗證數(shù)據(jù)檢驗?zāi)P偷男阅芪纸铮纯此欠裼兴嵘?/p>

丹尼爾:原來如此衡瓶!這樣既節(jié)省了時間牲证,又能有效地評估模型性能坦袍。絕了

蛋先生:訓(xùn)練數(shù)據(jù)、驗證數(shù)據(jù)和測試數(shù)據(jù)的作用在聊到【劃分?jǐn)?shù)據(jù)】時并未提到蛮放,但剛剛已略作闡述包颁。訓(xùn)練數(shù)據(jù)主要用于更新模型參數(shù)娩嚼;驗證數(shù)據(jù)則在每個 epoch 結(jié)束時用來評估模型的性能滴肿,盡管它不參與模型參數(shù)的更新嘴高,但可用于調(diào)整超參數(shù)。最后是測試數(shù)據(jù)春瞬,在模型訓(xùn)練完成后宽气,用于評估模型在實際應(yīng)用中的表現(xiàn),這是對模型能力的最終檢驗绪氛,以確保其在未見過的數(shù)據(jù)上仍能保持良好的性能

丹尼爾:哦枣察,差點忘記這事了

蛋先生:那暫時就沒有什么要補充的了

丹尼爾:已經(jīng)夠多了燃逻,我得好好消化一下

蛋先生:那就此別過

丹尼爾:拜拜??


寫在最后

學(xué)習(xí)知識推薦采用自頂向下的方法伯襟,從大處著眼再到小處姆怪。本故事介紹了機器學(xué)習(xí)訓(xùn)練過程的一個大致輪廓,很多細節(jié)并沒有展開俺附,有緣再聊昙读!

親們,都到這了唠叛,要不,點贊或收藏或關(guān)注支持下我唄 o( ̄▽ ̄)d

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末册舞,一起剝皮案震驚了整個濱河市调鲸,隨后出現(xiàn)的幾起案子藐石,更是在濱河造成了極大的恐慌于微,老刑警劉巖株依,帶你破解...
    沈念sama閱讀 218,941評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件恋腕,死亡現(xiàn)場離奇詭異,居然都是意外死亡伙单,警方通過查閱死者的電腦和手機车份,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評論 3 395
  • 文/潘曉璐 我一進店門扫沼,熙熙樓的掌柜王于貴愁眉苦臉地迎上來缎除,“玉大人器罐,你說我怎么就攤上這事渐行。” “怎么了肴沫?”我有些...
    開封第一講書人閱讀 165,345評論 0 356
  • 文/不壞的土叔 我叫張陵颤芬,是天一觀的道長站蝠。 經(jīng)常有香客問我菱魔,道長吟孙,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,851評論 1 295
  • 正文 為了忘掉前任既荚,我火速辦了婚禮恰聘,結(jié)果婚禮上吸占,老公的妹妹穿的比我還像新娘。我一直安慰自己兼蕊,他們只是感情好孙技,可當(dāng)我...
    茶點故事閱讀 67,868評論 6 392
  • 文/花漫 我一把揭開白布牵啦。 她就那樣靜靜地躺著哈雏,像睡著了一般衫生。 火紅的嫁衣襯著肌膚如雪罪针。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,688評論 1 305
  • 那天,我揣著相機與錄音西篓,去河邊找鬼岂津。 笑死吮成,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的粱甫。 我是一名探鬼主播茶宵,決...
    沈念sama閱讀 40,414評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼乌庶,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了螃征?” 一聲冷哼從身側(cè)響起盯滚,我...
    開封第一講書人閱讀 39,319評論 0 276
  • 序言:老撾萬榮一對情侶失蹤淌山,失蹤者是張志新(化名)和其女友劉穎泼疑,沒想到半個月后荷荤,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蕴纳,經(jīng)...
    沈念sama閱讀 45,775評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡古毛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年稻薇,在試婚紗的時候發(fā)現(xiàn)自己被綠了塞椎。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,096評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡服傍,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出罩抗,到底是詐尸還是另有隱情瘪校,我是刑警寧澤,帶...
    沈念sama閱讀 35,789評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站麻惶,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏卡啰。R本人自食惡果不足惜警没,卻給世界環(huán)境...
    茶點故事閱讀 41,437評論 3 331
  • 文/蒙蒙 一杀迹、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧浅碾,春花似錦续语、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽懂版。三九已至躯畴,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間丰嘉,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評論 1 271
  • 我被黑心中介騙來泰國打工饮亏, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留路幸,地道東北人简肴。 一個月前我還...
    沈念sama閱讀 48,308評論 3 372
  • 正文 我出身青樓百侧,卻偏偏與公主長得像佣渴,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子膨处,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,037評論 2 355

推薦閱讀更多精彩內(nèi)容