淺談機(jī)器學(xué)習(xí)算法

關(guān)于機(jī)器學(xué)習(xí)的文章,在之前的學(xué)習(xí)過程中寫過幾篇若贮,但現(xiàn)在看來實(shí)在有點(diǎn)誤人子弟了.....(別噴我奈应,畢竟我當(dāng)時一個小白),現(xiàn)在回過來看账磺,真的非常有必要糾正一下當(dāng)年無知的自己芹敌,希望能夠幫助到大家,也讓自己對機(jī)器學(xué)習(xí)的了解更加深入

一垮抗、機(jī)器學(xué)習(xí)的定義

1.1什么是機(jī)器學(xué)習(xí)

“機(jī)器學(xué)習(xí)”這概念看起來高大上(哇讓機(jī)器都能自己去學(xué)習(xí)了)氏捞,貌似很復(fù)雜的樣子,可要知道他是怎么回事冒版,我們就得先回到我們傳統(tǒng)上的計算機(jī)是如何運(yùn)行的幌衣。

其實(shí)也很簡單,傳統(tǒng)上如果我們想讓計算機(jī)工作壤玫,就要先給它設(shè)置一串指令豁护,就相當(dāng)于是建立了一個黑匣子,黑匣子里面要做什么運(yùn)算都是我事先定義好欲间,接下來我輸入什么楚里,這個黑匣子就會輸出一個結(jié)果。最簡單我就定義為“y=2x+3”猎贴,那么我輸入x為“2”班缎,輸出y當(dāng)然是“3”,我輸入x為“4”她渴,輸出y當(dāng)然就是“11”咯(到此為止沒毛泊镏贰)

機(jī)器學(xué)習(xí),則剛好是反其道而行之趁耗。它可以說基于以下的假設(shè)推論:

·我們的客觀世界事物之間是存在著某種規(guī)律(可能簡單沉唠,也可能復(fù)雜)

·這個規(guī)律,是可以通過數(shù)學(xué)的模型去表達(dá)(或者我們嘗試通過數(shù)學(xué)模型去表達(dá))

·如果想要尋找到這個模型苛败,當(dāng)然首先要收集到關(guān)于它在現(xiàn)實(shí)世界的信息(即數(shù)據(jù))

·收集到足夠的數(shù)據(jù)后满葛,我們使用什么方法才能畫出這個模型,怎樣畫(擬合)得更逼真罢屈,怎么畫得更快(這也就是機(jī)器學(xué)習(xí)的核心問題之一:算法)

·畫出這個模型之后嘀韧,我得檢驗(yàn)它是不是真的有效果,那就得用現(xiàn)實(shí)的數(shù)據(jù)去檢驗(yàn)(模型到底好不好用缠捌,也即檢驗(yàn)一個模型的核心標(biāo)準(zhǔn):泛化能力)

舉個栗子锄贷,就明白為什么是反其道而行之了:

假如我現(xiàn)在要賣我家的房子(好吧其實(shí)并沒有),我先假定它只跟面積相關(guān),而且他們可能是某種線性關(guān)系谊却。那我當(dāng)然要收集足夠的證據(jù)去證明我的假設(shè)蹂随,所以我找扁了小區(qū)的鄰居,收集到了他們房子的面積“x”和他們目前的估計“y”

當(dāng)我把這些數(shù)據(jù)在平面坐標(biāo)系中標(biāo)注之后因惭,驚人地發(fā)現(xiàn):他們的分布密集集中在一個直線岳锁。然后我通過計算估計除了這個直線的參數(shù):y=5000x+6000。以上你所做得蹦魔,就是最機(jī)器學(xué)習(xí)最為核心的思想激率,只不過要把這個過程交給機(jī)器去做

當(dāng)然,現(xiàn)實(shí)世界房子不可能只跟面積相關(guān)勿决,跟所在城市乒躺、地段、學(xué)區(qū)房低缩、樓齡嘉冒、樓層等N多個因素相關(guān),那么這個“模型”就不可能是簡單的“線性模型”了咆繁,這就是“機(jī)器學(xué)習(xí)”要解決的問題讳推,面對更為復(fù)雜的參數(shù)和模型,如何才能快速地找到最為“合理”(或者稱為接近現(xiàn)實(shí))的模型玩般,也是機(jī)器學(xué)習(xí)要解決的核心問題银觅。或者干脆說機(jī)器學(xué)習(xí)是把現(xiàn)實(shí)問題轉(zhuǎn)換成一個數(shù)學(xué)模型求解的問題

1.2機(jī)器學(xué)習(xí)定義

所以我個人對機(jī)器學(xué)習(xí)理解的定義:機(jī)器學(xué)習(xí)是通過收集現(xiàn)實(shí)數(shù)據(jù)坏为,去嘗試擬合一個基于數(shù)據(jù)的模型究驴,并通過這個模型去實(shí)現(xiàn)預(yù)測、分類等功能

這也就回答了最開始我提出的匀伏,為什么機(jī)器學(xué)習(xí)可以說剛好和“計算機(jī)編程”反其道而行之的觀點(diǎn)洒忧。計算機(jī)編程是我們事先告訴好計算機(jī)“模型”是什么,然而輸入不同的數(shù)據(jù)得到不同的結(jié)果够颠。

機(jī)器學(xué)習(xí)則剛好是我們?nèi)ナ占F(xiàn)實(shí)世界對應(yīng)的“輸入”和“結(jié)果”數(shù)據(jù)熙侍,然后讓計算機(jī)找到符合這個數(shù)據(jù)所描述的模型

二摧找、學(xué)習(xí)方式

機(jī)器學(xué)習(xí)的方式分為兩類核行,一類為監(jiān)督學(xué)習(xí),一類為無監(jiān)督學(xué)習(xí)

2.1監(jiān)督學(xué)習(xí)

所謂監(jiān)督學(xué)習(xí)蹬耘,即計算機(jī)學(xué)習(xí)的數(shù)據(jù)集中的每個樣本都是有“正確答案”(即結(jié)果)。在上個預(yù)測房價的機(jī)器學(xué)習(xí)模型里减余,它的數(shù)據(jù)集中的“房價”已經(jīng)是被人為打上標(biāo)簽的“答案”

2.2無監(jiān)督學(xué)習(xí)

在無監(jiān)督學(xué)習(xí)中综苔,則剛好與“監(jiān)督學(xué)習(xí)”相反,它的數(shù)據(jù)是沒有經(jīng)過任何人為處理的。換句話說如筛,我們不知道這個這個數(shù)據(jù)所代表的現(xiàn)實(shí)特征是什么堡牡,我們面對這些數(shù)據(jù),什么都不知道杨刨。但我們?nèi)匀幌胪ㄟ^這些數(shù)據(jù)晤柄,去嘗試挖掘這個數(shù)據(jù)內(nèi)在有沒有某種結(jié)構(gòu)或關(guān)系。

其中“聚類”就是無監(jiān)督學(xué)習(xí)中的一個典型算法妖胀,它能夠把數(shù)據(jù)分成不同的“簇”芥颈,不同簇對應(yīng)著不同的數(shù)據(jù)集合,所以這個算法叫“聚類”.(后面要詳細(xì)提到)

三赚抡、機(jī)器學(xué)習(xí)算法

在這里特別想做個說明爬坑,就是算法之于模型的關(guān)系(大神請自動飄過)。模型是我們基于現(xiàn)實(shí)數(shù)據(jù)對應(yīng)的數(shù)學(xué)描述涂臣,而機(jī)器學(xué)習(xí)中的算法是找到這個模型的一種實(shí)現(xiàn)方法盾计。當(dāng)然實(shí)現(xiàn)方法取決于“描述模型的目的”和“數(shù)據(jù)特點(diǎn)”。

比如面對沒有任何標(biāo)簽的數(shù)據(jù)赁遗,但我們想把這些數(shù)據(jù)進(jìn)行分類署辉,就會選用“聚類”;面對有“標(biāo)簽”的數(shù)據(jù)岩四,你想找出一個“分類模型”涨薪,就可以選擇“邏輯回歸”的算法等等

3.1監(jiān)督學(xué)習(xí)

(1)回歸

回歸是機(jī)器學(xué)習(xí)最為經(jīng)典和基礎(chǔ)的算法,同時也最為容易理解炫乓。比如剛才說的“預(yù)測房價”的例子刚夺,就是通過回歸去實(shí)現(xiàn)擬合模型∧┑罚回歸可以理解為侠姑,通過數(shù)據(jù)去嘗試推測出一系列連續(xù)值的屬性。

回歸分為線性回歸和邏輯回歸箩做,雖然都叫“回歸”莽红,但它們的應(yīng)用可是大有不同

·線性回歸

線性回歸即我們要擬合的模型是“線性”的,比如我們剛才假設(shè)的“房價線性模型”邦邦。至于求解的方法安吁,既然是線性模型。我們就可以通過“最小二乘法”的思想去進(jìn)行求解燃辖,把求解現(xiàn)實(shí)模型問題轉(zhuǎn)換為一個數(shù)學(xué)上的函數(shù)求最小值問題鬼店。


線性回歸模型

但求解的方法則不再是簡單求導(dǎo)的方式(大量的數(shù)據(jù)和特征維度導(dǎo)致計算量太大),而可以采用“梯度下降法”去處理黔龟。

·邏輯回歸

邏輯回歸雖然和線性回歸都屬于“回歸”算法妇智,但他的本質(zhì)和處理的問題則和線性回歸不同滥玷。邏輯回歸多用于處理“分類問題”,而分類問題則要求輸出必然是“離散值”巍棱。

它的實(shí)現(xiàn)方式是在線性回歸的基礎(chǔ)上惑畴,對其結(jié)果通過Sigmoid函數(shù)進(jìn)行一次映射,把線性回歸輸出的結(jié)果(區(qū)間在負(fù)無窮到正無窮)航徙,映射到(0如贷,1)之間,那么大于0.5可以代表一個“結(jié)果”到踏,在(0杠袱,0.5)之間的可以代表一個值,這樣就實(shí)現(xiàn)了分類的效果夭禽。

順便一提霞掺,邏輯回歸擬合的模型也多是處理線性模型的,它并不是適合處理大數(shù)據(jù)的非線性模型讹躯。當(dāng)然菩彬,下面就要提到他的“威力加強(qiáng)版”SVM支持向量機(jī)算法

(2)SVM支持向量機(jī)

SVM支持向量機(jī)可以很好地解決邏輯回歸無法解決的“線性不可分”問題。對于在二維平面的一堆“線性不可分”數(shù)據(jù)潮梯,可以通過“升維”的方式找到三維空間的超平面去解決骗灶。本質(zhì)上,在二維空間“線性不可分”的那對數(shù)據(jù)秉馏,映射到三維空間就可以完美通過一個“空間平面”去分割耙旦。

二維空間映射至三維空間

但“升維”會造成計算難度增加(現(xiàn)實(shí)處理的數(shù)據(jù),往往不是三維空間可以解決的)萝究,甚至?xí)斐伞熬S數(shù)災(zāi)難”

SVM支持向量機(jī)通過應(yīng)用核函數(shù)的展開定理免都,巧妙地避開了這個問題,既可以在高維映射空間建立學(xué)習(xí)機(jī)帆竹,同時又不增加計算的復(fù)雜度

(3)神經(jīng)網(wǎng)絡(luò)

神經(jīng)網(wǎng)絡(luò)是通過模擬“生物腦神經(jīng)”建立的一種網(wǎng)絡(luò)結(jié)構(gòu)绕娘,網(wǎng)絡(luò)分為“輸入層”,“隱含層”和“輸出層”栽连,輸入層負(fù)責(zé)接收原始數(shù)據(jù)险领,隱含層負(fù)責(zé)處理數(shù)據(jù)(簡單理解為特征提取)秒紧,輸出層負(fù)責(zé)輸出結(jié)果绢陌。整個神經(jīng)網(wǎng)絡(luò)可以簡單理解為一個“黑盒”,對于訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)而言熔恢,你輸入一個數(shù)據(jù)脐湾,它會根據(jù)已經(jīng)訓(xùn)練好的“神經(jīng)網(wǎng)絡(luò)模型”給予對應(yīng)的輸出

神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程是輸入原始數(shù)據(jù),在隱含層進(jìn)行特征提取绩聘,在輸出層得到一個“擬合結(jié)果”沥割,然后通過誤差反向傳播耗啦,去倒過來一層一層修正“神經(jīng)元”的權(quán)值和偏重凿菩,讓下一次迭代的結(jié)果越來越接近“現(xiàn)實(shí)結(jié)果”


神經(jīng)網(wǎng)絡(luò)

目前大熱的“深度學(xué)習(xí)”机杜,就是從神經(jīng)網(wǎng)絡(luò)發(fā)展而來的。當(dāng)然所謂“深度”的含義不僅僅是“網(wǎng)絡(luò)層數(shù)”的增多衅谷,深度學(xué)習(xí)中不同的網(wǎng)絡(luò)結(jié)構(gòu)和原理不同椒拗,也用于解決不同的問題。比如特征提取和泛化能力極強(qiáng)適用于圖像識別的卷積神經(jīng)網(wǎng)絡(luò)(CNN)和適用于處理“前后文本關(guān)系”的卷積神經(jīng)網(wǎng)絡(luò)(RNN)

3.2非監(jiān)督學(xué)習(xí)

(1)聚類

聚類屬于無監(jiān)督學(xué)習(xí)获黔,像之前處理的數(shù)據(jù)都是經(jīng)過“人為標(biāo)簽”的標(biāo)定蚀苛,我們知道這些數(shù)據(jù)對于一個模型來說應(yīng)該輸出的結(jié)果是什么。而無監(jiān)督學(xué)習(xí)則不然玷氏,我們拿到是僅僅是一堆數(shù)據(jù)堵未,至于數(shù)據(jù)代表什么,有什么特征我們則完全不知道盏触。

但這時候我們又想知道這些數(shù)據(jù)之間是不是存在著某種內(nèi)在結(jié)構(gòu)渗蟹,就可以用到聚類算法。

聚類核心思想:通過對數(shù)據(jù)進(jìn)行特征提取赞辩,轉(zhuǎn)換為空間中的向量雌芽,通過計算每個“向量”的距離,從遠(yuǎn)近的角度去判定是否為同一個“簇”(類別)辨嗽。其本質(zhì)就是把現(xiàn)實(shí)世界中的特征世落,轉(zhuǎn)化為數(shù)學(xué)的空間向量,這樣我們就把現(xiàn)實(shí)的特征問題糟需,轉(zhuǎn)化成了一個可能通過數(shù)學(xué)方式解決的“向量計算問題”屉佳。


聚類的典型應(yīng)用比如說facebook中的新聞或短文本類型分類,再比如假設(shè)你想把“客戶”進(jìn)行分類洲押,你拿到了一堆客戶的數(shù)據(jù)武花,那么就可以通過聚類的算法,找到這對“客戶”數(shù)據(jù)的內(nèi)在結(jié)構(gòu)诅诱,從而實(shí)現(xiàn)“客戶分類”

(2)降維

降低維度的主要作用是把數(shù)據(jù)從“高維度”降低至“低維度”髓堪。比如我有的一個數(shù)據(jù)有200個特征,但我發(fā)現(xiàn)其中的100個實(shí)際上我并不需要娘荡,那么我就可以通過“降維算法”來減少數(shù)據(jù)的特征維度(注意這里的維度指的是數(shù)據(jù)中的“特征量”干旁,比如一個房子數(shù)據(jù)的特征可能有“面積、房間數(shù)量炮沐、低端争群、學(xué)區(qū)房”,房子的數(shù)據(jù)具有4個特征維度)

降維(3維-2維)

第二個作用就是“可視化”大年,我們可以把任何數(shù)據(jù)都降低至2維空間的平面换薄。當(dāng)然帶來的副作用也很明顯玉雾,算法只負(fù)責(zé)減少數(shù)據(jù)的特征維度,至于減少后在“可視化平面”上展示的數(shù)據(jù)的特征轻要,就必須由我們自己去尋找了复旬。

降維的主要算法為主成分分析(PCA),這里就先不多說了吧冲泥。

3.3推薦算法

推薦算法貌似在機(jī)器學(xué)習(xí)的學(xué)術(shù)領(lǐng)域不那么受重視驹碍,但他在商業(yè)可是占據(jù)了非常重要的地位,在電商領(lǐng)域如亞馬遜凡恍、天貓和京東都得到了廣泛的應(yīng)用(畢竟希望每個人都買買買爸就骸)

推薦算法主要有兩類:基于內(nèi)容的推薦系統(tǒng)和用戶相似度推薦

基于內(nèi)容的推薦系統(tǒng):基于“用戶消費(fèi)行為”和“物品標(biāo)簽”構(gòu)建模型,根據(jù)用戶的消費(fèi)或?yàn)g覽記錄嚼酝,給他們推薦關(guān)聯(lián)程度最高的物品浮还。比如你近期想買毛衣,你在天貓上瀏覽了幾個闽巩,并沒有直接找到想要的毛衣钧舌,但算法可以根據(jù)你的瀏覽記錄,推薦給你在這個品類下最熱Or最新又官,或者跟你停留時間最長的物品類似的物品延刘,來滿足你的購買欲望.....

基于用戶相似度推薦,即找到“志同道合”的一類用戶集合六敬,假設(shè)在這個集合里有A和B碘赖,A最近購買了物品“1”,那么這個“1”就會推薦給B同志

機(jī)器學(xué)習(xí)的概念和經(jīng)典算法就科普到這里外构,后續(xù)會針對典型的機(jī)器學(xué)習(xí)算法和深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)做更為深入的探討哦~

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末普泡,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子审编,更是在濱河造成了極大的恐慌撼班,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,948評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件垒酬,死亡現(xiàn)場離奇詭異砰嘁,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)勘究,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評論 3 385
  • 文/潘曉璐 我一進(jìn)店門矮湘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人口糕,你說我怎么就攤上這事缅阳。” “怎么了景描?”我有些...
    開封第一講書人閱讀 157,490評論 0 348
  • 文/不壞的土叔 我叫張陵十办,是天一觀的道長秀撇。 經(jīng)常有香客問我,道長向族,這世上最難降的妖魔是什么呵燕? 我笑而不...
    開封第一講書人閱讀 56,521評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮炸枣,結(jié)果婚禮上虏等,老公的妹妹穿的比我還像新娘弄唧。我一直安慰自己适肠,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,627評論 6 386
  • 文/花漫 我一把揭開白布候引。 她就那樣靜靜地躺著侯养,像睡著了一般。 火紅的嫁衣襯著肌膚如雪澄干。 梳的紋絲不亂的頭發(fā)上逛揩,一...
    開封第一講書人閱讀 49,842評論 1 290
  • 那天,我揣著相機(jī)與錄音麸俘,去河邊找鬼辩稽。 笑死,一個胖子當(dāng)著我的面吹牛从媚,可吹牛的內(nèi)容都是我干的逞泄。 我是一名探鬼主播,決...
    沈念sama閱讀 38,997評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼拜效,長吁一口氣:“原來是場噩夢啊……” “哼喷众!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起紧憾,我...
    開封第一講書人閱讀 37,741評論 0 268
  • 序言:老撾萬榮一對情侶失蹤到千,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后赴穗,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體憔四,經(jīng)...
    沈念sama閱讀 44,203評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,534評論 2 327
  • 正文 我和宋清朗相戀三年般眉,在試婚紗的時候發(fā)現(xiàn)自己被綠了了赵。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,673評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡煤篙,死狀恐怖斟览,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情辑奈,我是刑警寧澤苛茂,帶...
    沈念sama閱讀 34,339評論 4 330
  • 正文 年R本政府宣布已烤,位于F島的核電站,受9級特大地震影響妓羊,放射性物質(zhì)發(fā)生泄漏胯究。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,955評論 3 313
  • 文/蒙蒙 一躁绸、第九天 我趴在偏房一處隱蔽的房頂上張望裕循。 院中可真熱鬧,春花似錦净刮、人聲如沸剥哑。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,770評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽株婴。三九已至,卻和暖如春暑认,著一層夾襖步出監(jiān)牢的瞬間困介,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,000評論 1 266
  • 我被黑心中介騙來泰國打工蘸际, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留座哩,地道東北人。 一個月前我還...
    沈念sama閱讀 46,394評論 2 360
  • 正文 我出身青樓粮彤,卻偏偏與公主長得像根穷,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子驾诈,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,562評論 2 349

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