從五個(gè)方面帶你入門機(jī)器學(xué)習(xí):什么是機(jī)器學(xué)習(xí)?工作流程是什么?機(jī)器學(xué)習(xí)算法有哪些?模型評估學(xué)習(xí)以及Azure機(jī)器學(xué)習(xí)模型搭建實(shí)驗(yàn)。
1什么是機(jī)器學(xué)習(xí)
機(jī)器學(xué)習(xí)是從數(shù)據(jù)中自動分析獲得模型,并利用模型對未知數(shù)據(jù)進(jìn)行預(yù)測。
2機(jī)器學(xué)習(xí)工作流程
1.獲取數(shù)據(jù)
2.數(shù)據(jù)基本處理
3.特征工程
4.機(jī)器學(xué)習(xí)(模型訓(xùn)練)
5.模型評估
結(jié)果達(dá)到要求,上線服務(wù)
沒有達(dá)到要求,重新上面步驟
2.1獲取到的數(shù)據(jù)集介紹
數(shù)據(jù)簡介
在數(shù)據(jù)集中一般:
一行數(shù)據(jù)我們稱為一個(gè)樣本
一列數(shù)據(jù)我們成為一個(gè)特征
有些數(shù)據(jù)有目標(biāo)值(標(biāo)簽值),有些數(shù)據(jù)沒有目標(biāo)值(如上表中,電影類型就是這個(gè)數(shù)據(jù)集的目標(biāo)值)
數(shù)據(jù)類型構(gòu)成:
數(shù)據(jù)類型一:特征值+目標(biāo)值(目標(biāo)值是連續(xù)的和離散的)
數(shù)據(jù)類型二:只有特征值,沒有目標(biāo)值
數(shù)據(jù)分割:
機(jī)器學(xué)習(xí)一般的數(shù)據(jù)集會劃分為兩個(gè)部分:
訓(xùn)練數(shù)據(jù):用于訓(xùn)練,構(gòu)建模型
測試數(shù)據(jù):在模型檢驗(yàn)時(shí)使用,用于評估模型是否有效
劃分比例:
訓(xùn)練集:70% 80% 75%
測試集:30% 20% 25%
2.2數(shù)據(jù)基本處理
即對數(shù)據(jù)進(jìn)行缺失值、去除異常值等處理
2.3特征工程
2.3.1什么是特征工程
特征工程是使用專業(yè)背景知識和技巧處理數(shù)據(jù),使得特征能在機(jī)器學(xué)習(xí)算法上發(fā)揮更好的作用的過程。
意義:會直接影響機(jī)器學(xué)習(xí)的效果
2.3.2 為什么需要特征工程(Feature Engineering)
機(jī)器學(xué)習(xí)領(lǐng)域的大神Andrew Ng(吳恩達(dá))老師說“Coming up with features is difficult, time-consuming, requires expert knowledge.
”Applied machine learning“ is basically feature engineering. ”
注:業(yè)界廣泛流傳:數(shù)據(jù)和特征決定了機(jī)器學(xué)習(xí)的上限,而模型和算法只是逼近這個(gè)上限而已。
2.3.3 特征工程包含內(nèi)容
特征提取
特征預(yù)處理
特征降維
2.3.4 各概念具體解釋
特征提取
將任意數(shù)據(jù)(如文本或圖像)轉(zhuǎn)換為可用于機(jī)器學(xué)習(xí)的數(shù)字特征
特征預(yù)處理
通過一些轉(zhuǎn)換函數(shù)將特征數(shù)據(jù)轉(zhuǎn)換成更加適合算法模型的特征數(shù)據(jù)過程
特征降維
指在某些限定條件下,降低隨機(jī)變量(特征)個(gè)數(shù),得到一組“不相關(guān)”主變量的過程
2.4 機(jī)器學(xué)習(xí)
選擇合適的算法對模型進(jìn)行訓(xùn)練
2.5 模型評估
對訓(xùn)練好的模型進(jìn)行評估
3 機(jī)器學(xué)習(xí)算法分類
根據(jù)數(shù)據(jù)集組成不同,可以把機(jī)器學(xué)習(xí)算法分為:
監(jiān)督學(xué)習(xí)
無監(jiān)督學(xué)習(xí)
半監(jiān)督學(xué)習(xí)
強(qiáng)化學(xué)習(xí)
3.1 監(jiān)督學(xué)習(xí)
定義:
輸入數(shù)據(jù)是由輸入特征值和目標(biāo)值所組成。函數(shù)的輸出可以是一個(gè)連續(xù)的值(稱為回歸),或是輸出是有限個(gè)離散值(稱作分類)。
3.1.1 回歸問題
例如:預(yù)測房價(jià),根據(jù)樣本集擬合出一條連續(xù)曲線。
3.1.2 分類問題
例如:根據(jù)腫瘤特征判斷良性還是惡性,得到的是結(jié)果是“良性”或者“惡性”,是離散的。
3.2 無監(jiān)督學(xué)習(xí)
定義:
輸入數(shù)據(jù)是由輸入特征值組成,沒有目標(biāo)值
輸入數(shù)據(jù)沒有被標(biāo)記,也沒有確定的結(jié)果。樣本數(shù)據(jù)類別未知;
需要根據(jù)樣本間的相似性對樣本集進(jìn)行類別劃分。
舉例:
有監(jiān)督,無監(jiān)督算法對比:
3.3 半監(jiān)督學(xué)習(xí)
定義:訓(xùn)練集同時(shí)包含有標(biāo)記樣本數(shù)據(jù)和未標(biāo)記樣本數(shù)據(jù)。
舉例:
監(jiān)督學(xué)習(xí)訓(xùn)練方式:
半監(jiān)督學(xué)習(xí)訓(xùn)練方式
3.4 強(qiáng)化學(xué)習(xí)
定義:實(shí)質(zhì)是make decisions 問題,即自動進(jìn)行決策,并且可以做連續(xù)決策。
舉例:小孩想要走路,但在這之前,他需要先站起來,站起來之后還要保持平衡,接下來還要先邁出一條腿,是左腿還是右腿,邁出一步后還要邁出下一步。
小孩就是 agent,他試圖通過采取行動(即行走)來操縱環(huán)境(行走的表面),并且從一個(gè)狀態(tài)轉(zhuǎn)變到另一個(gè)狀態(tài)(即他走的每一步),當(dāng)他
完成任務(wù)的子任務(wù)(即走了幾步)時(shí),孩子得到獎(jiǎng)勵(lì)(給巧克力吃),并且當(dāng)他不能走路時(shí),就不會給巧克力。
主要包含五個(gè)元素:agent, action, reward, environment, observation;
強(qiáng)化學(xué)習(xí)的目標(biāo)就是獲得最多的累計(jì)獎(jiǎng)勵(lì)。
監(jiān)督學(xué)習(xí)和強(qiáng)化學(xué)習(xí)的對比:
拓展概念:什么是獨(dú)立同分布:
獨(dú)立同分布概念
拓展閱讀:Alphago進(jìn)化史 漫畫告訴你Zero為什么這么牛:
Alphago進(jìn)化史 漫畫告訴你Zero為什么這么牛
4 模型評估
4.1分類模型評估
準(zhǔn)確率
預(yù)測正確的數(shù)占樣本總數(shù)的比例。
其他評價(jià)指標(biāo):精確率、召回率、F1-score、AUC指標(biāo)等
4.2回歸模型評估
均方根誤差(Root Mean Squared Error,RMSE)
RMSE是一個(gè)衡量回歸模型誤差率的常用公式。不過,它僅能比較誤差是相同單位的模型。
舉例:
假設(shè)上面的房價(jià)預(yù)測,只有五個(gè)樣本,對應(yīng)的
真實(shí)值為:100,120,125,230,400
預(yù)測值為:105,119,120,230,410
那么使用均方根誤差求解得
其他評價(jià)指標(biāo):相對平方誤差(Relative Squared Error,RSE)、平均絕對誤差(Mean Absolute Error,MAE)、相對絕對誤差 (Relative Absolute Error,RAE)
4.3擬合
模型評估用于評價(jià)訓(xùn)練好的的模型的表現(xiàn)效果,其表現(xiàn)效果大致可以分為兩類:過擬合、欠擬合。
在訓(xùn)練過程中,你可能會遇到如下問題:
訓(xùn)練數(shù)據(jù)訓(xùn)練的很好啊,誤差也不大,為什么在測試集上面有問題呢?
當(dāng)算法在某個(gè)數(shù)據(jù)集當(dāng)中出現(xiàn)這種情況,可能就出現(xiàn)了擬合問題。
4.3.1 欠擬合
因?yàn)闄C(jī)器學(xué)習(xí)到的天鵝特征太少了,導(dǎo)致區(qū)分標(biāo)準(zhǔn)太粗糙,不能準(zhǔn)確識別出天鵝。
欠擬合(under-fitting):模型學(xué)習(xí)的太過粗糙,連訓(xùn)練集中的樣本數(shù)據(jù)特征關(guān)系都沒有學(xué)出來。
4.3.2 過擬合
機(jī)器已經(jīng)基本能區(qū)別天鵝和其他動物了。然后,很不巧已有的天鵝圖片全是白天鵝的,于是機(jī)器經(jīng)過學(xué)習(xí)后,會認(rèn)為天鵝的羽毛都是白的,以后看到羽毛是黑的天鵝就會認(rèn)為那不是天鵝。
過擬合(over-fitting):所建的機(jī)器學(xué)習(xí)模型或者是深度學(xué)習(xí)模型在訓(xùn)練樣本中表現(xiàn)得過于優(yōu)越,導(dǎo)致在測試數(shù)據(jù)集中表現(xiàn)不佳。
上問題解答:
訓(xùn)練數(shù)據(jù)訓(xùn)練的很好啊,誤差也不大,為什么在測試集上面有問題呢?
5Azure機(jī)器學(xué)習(xí)模型搭建實(shí)驗(yàn)
Azure平臺簡介
Azure Machine Learning(簡稱“AML”)是微軟在其公有云Azure上推出的基于Web使用的一項(xiàng)機(jī)器學(xué)習(xí)服務(wù),機(jī)器學(xué)習(xí)屬人工智能的一個(gè)分支,它技術(shù)借助算法讓電腦對大量流動數(shù)據(jù)集進(jìn)行識別。這種方式能夠通過歷史數(shù)據(jù)來預(yù)測未來事件和行為,其實(shí)現(xiàn)方式明顯優(yōu)于傳統(tǒng)的商業(yè)智能形式。
微軟的目標(biāo)是簡化使用機(jī)器學(xué)習(xí)的過程,以便于開發(fā)人員、業(yè)務(wù)分析師和數(shù)據(jù)科學(xué)家進(jìn)行廣泛、便捷地應(yīng)用。
這款服務(wù)的目的在于“將機(jī)器學(xué)習(xí)動力與云計(jì)算的簡單性相結(jié)合”。
AML目前在微軟的Global Azure云服務(wù)平臺提供服務(wù),用戶可以通過站點(diǎn):
https://studio.azureml.net/申請免費(fèi)試用。
Azure機(jī)器學(xué)習(xí)實(shí)驗(yàn)
實(shí)驗(yàn)?zāi)康模毫私鈾C(jī)器學(xué)習(xí)從數(shù)據(jù)到建模并最終評估預(yù)測的整個(gè)流程。
更多信息可以來這里獲取==>>電子技術(shù)應(yīng)用-AET<<