【机器学习】一篇白话机器学习概念
前言: 應(yīng)出版社約稿,計(jì)劃出個(gè)機(jī)器學(xué)習(xí)及深度學(xué)習(xí)通俗序列文章,不足之處還請(qǐng)多提建議。
4.1 機(jī)器學(xué)習(xí)簡(jiǎn)介
???????????機(jī)器學(xué)習(xí)看似高深的術(shù)語,其實(shí)就在生活中,古語有云:“一葉落而知天下秋”,意思是從一片樹葉的凋落,就可以知道秋天將要到來。這其中蘊(yùn)含了樸素的機(jī)器學(xué)習(xí)的思想,揭示了可以通過學(xué)習(xí)對(duì)“落葉”特征的經(jīng)驗(yàn),預(yù)判秋天的到來。
????????機(jī)器學(xué)習(xí)作為人工智能領(lǐng)域的核心組成,是非顯式的計(jì)算機(jī)程序?qū)W習(xí)數(shù)據(jù)經(jīng)驗(yàn)以優(yōu)化自身算法,以學(xué)習(xí)處理任務(wù)的過程。一個(gè)經(jīng)典的機(jī)器學(xué)習(xí)的定義是:A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E.(一個(gè)計(jì)算機(jī)程序在處理任務(wù)T上的指標(biāo)表現(xiàn)P可以隨著學(xué)習(xí)經(jīng)驗(yàn)E積累而提高。)
????????如圖4.1 ,任務(wù)T即是機(jī)器學(xué)習(xí)系統(tǒng)如何正確處理數(shù)據(jù)樣本。指標(biāo)表現(xiàn)P即是衡量任務(wù)正確處理的情況。經(jīng)驗(yàn)E可以體現(xiàn)在模型學(xué)習(xí)處理任務(wù)后的自身的參數(shù)值。模型參數(shù)意義即如何對(duì)各特征的有效表達(dá)以處理任務(wù)。
????????進(jìn)一步的,機(jī)器學(xué)習(xí)的過程一般可以概括為:計(jì)算機(jī)程序基于給定的、有限的學(xué)習(xí)數(shù)據(jù)出發(fā)(常基于每條數(shù)據(jù)樣本是獨(dú)立同分布的假設(shè)),選擇某個(gè)的模型方法(即假設(shè)要學(xué)習(xí)的模型屬于某個(gè)函數(shù)的集合,也稱為假設(shè)空間),通過算法更新模型的參數(shù)值(經(jīng)驗(yàn)),以優(yōu)化處理任務(wù)的指標(biāo)表現(xiàn),最終學(xué)習(xí)出較優(yōu)的模型,并運(yùn)用模型對(duì)數(shù)據(jù)進(jìn)行分析與預(yù)測(cè)以完成任務(wù)。由此可見,機(jī)器學(xué)習(xí)方法有四個(gè)要素:
數(shù)據(jù)
模型
學(xué)習(xí)目標(biāo)
優(yōu)化算法
我們通過將機(jī)器學(xué)習(xí)方法歸納為四個(gè)要素及其相應(yīng)地介紹,便于更好地理解各種算法原理的共性所在,而不是獨(dú)立去理解各式各樣的機(jī)器學(xué)習(xí)方法。
4.1.1 數(shù)據(jù)
數(shù)據(jù)是機(jī)器學(xué)習(xí)方法的基礎(chǔ)的原料,它通常由一條條數(shù)據(jù)(每一行)樣本組成,樣本由描述其各個(gè)維度信息的特征及目標(biāo)值標(biāo)簽(或無)組成。如圖4.2所示癌細(xì)胞分類任務(wù)的數(shù)據(jù)集:
4.1.2 模型
學(xué)習(xí)到“好”的模型是機(jī)器學(xué)習(xí)的直接目的。機(jī)器學(xué)習(xí)模型簡(jiǎn)單來說,即是學(xué)習(xí)數(shù)據(jù)特征與標(biāo)簽的關(guān)系或者學(xué)習(xí)數(shù)據(jù)特征內(nèi)部的規(guī)律的一個(gè)函數(shù)。
機(jī)器學(xué)習(xí)模型可以看作是(如圖4.3):首先選擇某個(gè)的模型方法,再?gòu)臄?shù)據(jù)樣本(x,(y))中學(xué)習(xí),優(yōu)化模型參數(shù)w以調(diào)整各特征的有效表達(dá),最終獲得對(duì)應(yīng)的決策函數(shù)f( x; w )。該函數(shù)將輸入變量 x 在參數(shù)w作用下映射到輸出預(yù)測(cè)Y,即Y= f(x; w)。
4.1.3 學(xué)習(xí)目標(biāo)
學(xué)習(xí)到“好”的模型,“好”即是模型的學(xué)習(xí)目標(biāo)。“好”對(duì)于模型也就是預(yù)測(cè)值與實(shí)際值之間的誤差盡可能的低。具體衡量這種誤差的函數(shù)稱為代價(jià)函數(shù) (Cost Function)或者損失函數(shù)(Loss Function),我們即通過以極大化降低損失函數(shù)為目標(biāo)去學(xué)習(xí)模型。
對(duì)于不同的任務(wù)目標(biāo),往往也需要用不同損失函數(shù)衡量,經(jīng)典的損失函數(shù)如:回歸任務(wù)的均方誤差損失函數(shù)及分類任務(wù)的交叉熵?fù)p失函數(shù)等。
均方誤差損失函數(shù)
衡量模型回歸預(yù)測(cè)的誤差情況,我們可以簡(jiǎn)單地用所有樣本的預(yù)測(cè)值減去實(shí)際值求平方后的平均值,這也就是均方誤差(Mean Squared Error)損失函數(shù)。
交叉熵?fù)p失函數(shù)
衡量分類預(yù)測(cè)模型的誤差情況,常用極大似然估計(jì)法推導(dǎo)出的交叉熵?fù)p失函數(shù)。通過極小化交叉熵?fù)p失,使得模型預(yù)測(cè)分布盡可能與實(shí)際數(shù)據(jù)經(jīng)驗(yàn)分布一致。
4.1.4 優(yōu)化算法
有了極大化降低損失函數(shù)為目標(biāo)去學(xué)習(xí)“好”模型,而如何達(dá)到這目標(biāo)?我們第一反應(yīng)可能是直接求解損失函數(shù)最小值的解析解,獲得最優(yōu)的模型參數(shù)。遺憾的是,機(jī)器學(xué)習(xí)模型的損失函數(shù)通常較復(fù)雜,很難直接求最優(yōu)解。幸運(yùn)的是,我們可以通過優(yōu)化算法(如梯度下降算法、牛頓法等)有限次迭代優(yōu)化模型參數(shù),以盡可能降低損失函數(shù)的值,得到較優(yōu)的參數(shù)值(數(shù)值解)。梯度下降算法如圖4.4,可以直觀理解成一個(gè)下山的過程,將損失函數(shù)J(w)比喻成一座山,我們的目標(biāo)是到達(dá)這座山的山腳(即求解最優(yōu)模型參數(shù)w使得損失函數(shù)為最小值)。
要做的無非就是“往下坡的方向走,走一步算一步”,而下坡的方向也就是J(w)負(fù)梯度的方向,在每往下走到一個(gè)位置的時(shí)候,求解當(dāng)前位置的梯度,向這一步所在位置沿著最陡峭最易下山的位置再走一步。這樣一步步的走下去,一直走到覺得我們已經(jīng)到了山腳。
當(dāng)然這樣走下去,有可能我們不是走到山腳(全局最優(yōu)),而是到了某一個(gè)的小山谷(局部最優(yōu)),這也后面梯度下降算法的調(diào)優(yōu)的地方。
對(duì)應(yīng)到算法步驟:
小結(jié)
本文我們首先介紹了機(jī)器學(xué)習(xí)的基本概念,并概括機(jī)器學(xué)習(xí)的一般過程:從數(shù)據(jù)出發(fā),通過設(shè)定了任務(wù)的學(xué)習(xí)目標(biāo),使用算法優(yōu)化模型參數(shù)去達(dá)到目標(biāo)。由此,重點(diǎn)引出了機(jī)器學(xué)習(xí)的四個(gè)組成要素(數(shù)據(jù)、模型、學(xué)習(xí)目標(biāo)及優(yōu)化算法),接下來我們會(huì)進(jìn)一步了解機(jī)器學(xué)習(xí)算法的類別。
文章首發(fā)于算法進(jìn)階,公眾號(hào)閱讀原文可訪問[GitHub項(xiàng)目源碼]
往期精彩回顧適合初學(xué)者入門人工智能的路線及資料下載機(jī)器學(xué)習(xí)及深度學(xué)習(xí)筆記等資料打印機(jī)器學(xué)習(xí)在線手冊(cè)深度學(xué)習(xí)筆記專輯《統(tǒng)計(jì)學(xué)習(xí)方法》的代碼復(fù)現(xiàn)專輯 AI基礎(chǔ)下載機(jī)器學(xué)習(xí)的數(shù)學(xué)基礎(chǔ)專輯黃海廣老師《機(jī)器學(xué)習(xí)課程》課件合集 本站qq群851320808,加入微信群請(qǐng)掃碼:總結(jié)
以上是生活随笔為你收集整理的【机器学习】一篇白话机器学习概念的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Win10系统如何查看电脑是否是UEFI
- 下一篇: 【小白学习PyTorch教程】五、在 P