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