01 術(shù)語整理
本節(jié)概述機(jī)器學(xué)習(xí)及其三個分類(監(jiān)督學(xué)習(xí)、非監(jiān)督學(xué)習(xí)和強(qiáng)化學(xué)習(xí))。首先,與機(jī)器學(xué)習(xí)相關(guān)的術(shù)語有人工智能(Artificial Intelligence,AI)、機(jī)器學(xué)習(xí)(Machine Learning,ML)、強(qiáng)化學(xué)習(xí)、深度學(xué)習(xí)等,這里對這些術(shù)語進(jìn)行簡單的整理。
AI意味著人工智能,其定義因研究人員而異。從廣義上講,它指“像人類一樣具有智能的系統(tǒng)和配備這種系統(tǒng)的機(jī)器人”。實現(xiàn)AI的方法之一是機(jī)器學(xué)習(xí)。
機(jī)器學(xué)習(xí)可以簡單地描述為“向系統(tǒng)提供數(shù)據(jù)(稱為訓(xùn)練數(shù)據(jù)或?qū)W習(xí)數(shù)據(jù))并通過數(shù)據(jù)自動確定系統(tǒng)的參數(shù)(變量值)”。相反,基于規(guī)則的系統(tǒng)是非機(jī)器學(xué)習(xí)系統(tǒng)的一個例子。在基于規(guī)則的系統(tǒng)中,由人類來清楚地定義分支條件的參數(shù),例如實現(xiàn)代碼中所存在的if語句等。
另一方面,機(jī)器學(xué)習(xí)自動根據(jù)訓(xùn)練數(shù)據(jù)確定代碼中的參數(shù),以使系統(tǒng)運行良好。之所以稱為機(jī)器學(xué)習(xí),正是因為系統(tǒng)能根據(jù)訓(xùn)練數(shù)據(jù)計算和確定系統(tǒng)運行所需的參數(shù)。
強(qiáng)化學(xué)習(xí)是機(jī)器學(xué)習(xí)中的一種。機(jī)器學(xué)習(xí)可分為三大類:監(jiān)督學(xué)習(xí)、非監(jiān)督學(xué)習(xí)和強(qiáng)化學(xué)習(xí)。我們稍后會討論這三個分類,這里只需要認(rèn)識到強(qiáng)化學(xué)習(xí)是機(jī)器學(xué)習(xí)的一部分即可。
接下來是深度學(xué)習(xí)。深度學(xué)習(xí)是實現(xiàn)機(jī)器學(xué)習(xí)的算法之一。機(jī)器學(xué)習(xí)的算法包括邏輯回歸、支持向量機(jī)(Support Vector Machine,SVM)、決策樹、隨機(jī)森林和神經(jīng)網(wǎng)絡(luò)等。深度學(xué)習(xí)是神經(jīng)網(wǎng)絡(luò)中的一種。
最后是深度強(qiáng)化學(xué)習(xí)。深度強(qiáng)化學(xué)習(xí)是強(qiáng)化學(xué)習(xí)和深度學(xué)習(xí)的結(jié)合。
02 監(jiān)督學(xué)習(xí)、非監(jiān)督學(xué)習(xí)、強(qiáng)化學(xué)習(xí)
這里對三種機(jī)器學(xué)習(xí)(監(jiān)督學(xué)習(xí)、非監(jiān)督學(xué)習(xí)和強(qiáng)化學(xué)習(xí))分別進(jìn)行介紹。
首先說明監(jiān)督學(xué)習(xí)。
例如,“對郵政編碼中的手寫數(shù)字進(jìn)行分類”是一種監(jiān)督學(xué)習(xí)。郵政編碼分類系統(tǒng)將每個數(shù)字的手寫圖像分類為0~9中的一個。諸如0到9的數(shù)據(jù)的分類目標(biāo)被稱為標(biāo)簽或類。這種系統(tǒng)被稱為監(jiān)督學(xué)習(xí),因為給事先提供的訓(xùn)練數(shù)據(jù)預(yù)先標(biāo)記出了正確的標(biāo)簽。換句話說,帶標(biāo)簽的訓(xùn)練數(shù)據(jù)成了系統(tǒng)的教師。
監(jiān)督學(xué)習(xí)包括學(xué)習(xí)階段和推理階段。我們將以圖為例來解釋手寫數(shù)字的分類(見圖1.1)。
▲圖1.1 使用監(jiān)督學(xué)習(xí)區(qū)分手寫數(shù)字的示例
在學(xué)習(xí)階段,準(zhǔn)備許多0到9的手寫數(shù)字圖像數(shù)據(jù),這些數(shù)據(jù)作為訓(xùn)練數(shù)據(jù)。訓(xùn)練數(shù)據(jù)有一個標(biāo)簽(0到9中的某個數(shù)值),根據(jù)標(biāo)簽可以找到關(guān)于手寫數(shù)字圖像的正確答案信息,例如“此手寫數(shù)字圖像為1”。在學(xué)習(xí)階段,當(dāng)將手寫數(shù)字圖像輸入系統(tǒng)時,調(diào)整(學(xué)習(xí))系統(tǒng)的參數(shù)以盡量將輸入圖像分類為正確的標(biāo)簽。
在應(yīng)用階段,將無標(biāo)簽的未知手寫數(shù)字圖像數(shù)據(jù)輸入系統(tǒng),圖像被分類為0到9中的某一個輸出標(biāo)簽并給出結(jié)果。如果已經(jīng)學(xué)習(xí)到正確的結(jié)果,當(dāng)輸入未知的手寫數(shù)字圖像時,系統(tǒng)將輸出正確的數(shù)值標(biāo)簽。除了手寫數(shù)字的分類之外,還可使用監(jiān)督學(xué)習(xí)來對圖像、聲音和文本數(shù)據(jù)進(jìn)行分類。
此外,除了上面例子中提到的分類任務(wù),監(jiān)督學(xué)習(xí)也用于回歸等任務(wù)。
接下來,介紹非監(jiān)督學(xué)習(xí)。用一個詞表達(dá)非監(jiān)督學(xué)習(xí)就是“分組”。它將大量數(shù)據(jù)中類似的數(shù)據(jù)分為一組(稱為聚類)。例如,“根據(jù)購買數(shù)據(jù)對客戶進(jìn)行分組的系統(tǒng)”是非監(jiān)督學(xué)習(xí)。根據(jù)購買歷史記錄的特征對客戶進(jìn)行分組,可以為每個組實施不同的銷售策略。
我們使用圖來說明購買數(shù)據(jù)分析的例子(見圖1.2)。假設(shè)存儲了每個客戶過去一年的購買數(shù)量和每次平均消費金額的數(shù)據(jù),并對此數(shù)據(jù)進(jìn)行分析。根據(jù)這些數(shù)據(jù),客戶可以分為兩組。A組(左上角)是以較低頻次購買高價商品的組,B組(右下角)是多次重復(fù)但每次消費金額較低的組。
▲圖1.2 使用非監(jiān)督學(xué)習(xí)根據(jù)購買數(shù)據(jù)對客戶分組的示例
使用非監(jiān)督學(xué)習(xí)進(jìn)行分組將有助于了解每個客戶所屬的組,并針對每個組實施最佳銷售策略(盡管部分業(yè)務(wù)還需要更詳細(xì)的分析)。除了本例中提到的分組(聚類)以外,非監(jiān)督學(xué)習(xí)也用于降維和推薦系統(tǒng)。
最后,我們討論強(qiáng)化學(xué)習(xí)。強(qiáng)化學(xué)習(xí)是一種主要用于“時變系統(tǒng)控制規(guī)則構(gòu)建”和“對戰(zhàn)博弈策略構(gòu)建”的方法。例如,強(qiáng)化學(xué)習(xí)用于機(jī)器人的步行控制和圍棋對戰(zhàn)程序。
在我們熟悉的例子中,可能更容易想象一個孩子學(xué)會騎自行車的情形。當(dāng)一個孩子學(xué)習(xí)騎自行車時,并沒有人去教其諸如牛頓力學(xué)等力學(xué)法則以及如何騎車的詳細(xì)方法,也不必通過觀看視頻來學(xué)習(xí)騎自行車。事實上,自己嘗試騎自行車,在多次失敗的過程中找到一種騎自行車的方法。
強(qiáng)化學(xué)習(xí)正如學(xué)騎自行車的例子,它是一種學(xué)習(xí)方法,它在不知道控制對象的物理定律的情況下重復(fù)試錯,以學(xué)習(xí)到所希望的控制方法。
強(qiáng)化學(xué)習(xí)中沒有帶標(biāo)簽的數(shù)據(jù)作為訓(xùn)練數(shù)據(jù),但這并不意味著根本沒有監(jiān)督信息。系統(tǒng)根據(jù)強(qiáng)化學(xué)習(xí)程序運行,在獲得所需結(jié)果時給出稱為獎勵的信號。例如,在機(jī)器人的步行控制中,可以走的距離就是獎勵。在圍棋的比賽程序中,贏或輸?shù)慕Y(jié)果就是獎勵。失敗時的獎勵是負(fù)值,也稱為懲罰。
如果想通過監(jiān)督學(xué)習(xí)來學(xué)習(xí)機(jī)器人的步行控制,就需要盡可能多的“如果腿的關(guān)節(jié)處于這個角度并且速度是某值,那么就像這樣轉(zhuǎn)動電動機(jī)A”這樣的模式,并預(yù)先給出其正確的做法。然而,當(dāng)機(jī)器人行走時,對于每個時刻變化的狀態(tài),很難預(yù)先給出控制該電動機(jī)的正確做法。
另一方面,在強(qiáng)化學(xué)習(xí)中,將行走距離作為獎勵提供給步行控制系統(tǒng),并且重復(fù)試驗多次。
這樣一來,強(qiáng)化學(xué)習(xí)系統(tǒng)會根據(jù)重復(fù)試驗和獲得的獎勵自行改變控制規(guī)則,以“如果之前的試驗中所做改變使我可以走得更遠(yuǎn),則這種改變是正確的”為基礎(chǔ)。因此,可以在不教導(dǎo)機(jī)器人如何行走的情況下讓機(jī)器人能漸漸行走更長的距離。
即使在像圍棋這樣的對戰(zhàn)游戲的策略構(gòu)建中,也無須在每個階段將強(qiáng)者視為教師數(shù)據(jù)來進(jìn)行教導(dǎo),僅通過將成功或失敗作為獎勵來重復(fù)試驗即可。這樣做,強(qiáng)化學(xué)習(xí)系統(tǒng)會一點一點地改變游戲方式并變得更強(qiáng)。
學(xué)到的圍棋或?qū)⑵逑到y(tǒng)比設(shè)計者本人更強(qiáng)大,這一點通過強(qiáng)化學(xué)習(xí)可以很容易實現(xiàn)。只聽這個解釋,強(qiáng)化學(xué)習(xí)就像魔術(shù),但在實踐中卻存在著種種困難。
強(qiáng)化學(xué)習(xí)主要適用于“時變系統(tǒng)控制規(guī)則構(gòu)建”和“對戰(zhàn)博弈策略構(gòu)建”,本書以前者“系統(tǒng)控制”為目標(biāo)任務(wù),通過編寫相關(guān)程序來學(xué)習(xí)強(qiáng)化學(xué)習(xí)。
關(guān)于作者:小川雄太郎,東京大學(xué)博士,曾在東京大學(xué)從事腦機(jī)能測量及計算論的神經(jīng)科學(xué)研究?,F(xiàn)就職于株式會社電通國際信息服務(wù)技術(shù)開發(fā)部,從事機(jī)器學(xué)習(xí)相關(guān)技術(shù)的研究開發(fā)。
本文摘編自《邊做邊學(xué)深度強(qiáng)化學(xué)習(xí):PyTorch程序設(shè)計實踐》,經(jīng)出版方授權(quán)發(fā)布。
-
人工智能
+關(guān)注
關(guān)注
1792文章
47508瀏覽量
239223 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8428瀏覽量
132838 -
強(qiáng)化學(xué)習(xí)
+關(guān)注
關(guān)注
4文章
268瀏覽量
11273
發(fā)布評論請先 登錄
相關(guān)推薦
評論