機(jī)器學(xué)習(xí)
回目錄
一種實(shí)現(xiàn)人工智能的方法
智能是現(xiàn)代生活中一個(gè)很常見(jiàn)的詞,例如智能手機(jī)、智能家居產(chǎn)品、智能機(jī)器人等,但是不同的場(chǎng)合智能的含義也不一樣。我們所說(shuō)的“人工智能”(Artificial Intelligence, AI)則是指讓機(jī)器像人一樣思考,具備人類的智能。
從誕生至今,人工智能這個(gè)領(lǐng)域經(jīng)歷了一次又一次的繁榮與低谷,其發(fā)展上大體上可以分為“推理期”,“知識(shí)期”和“學(xué)習(xí)期”。推理期主要注重邏輯推理但是感知器過(guò)于簡(jiǎn)單;知識(shí)期雖然建立了各種各樣的專家系統(tǒng),但是自主學(xué)習(xí)能力和神經(jīng)網(wǎng)絡(luò)資源能力都不足。學(xué)習(xí)期機(jī)器能夠自己學(xué)習(xí)知識(shí),而直到1980年后,機(jī)器學(xué)習(xí)因其在很多領(lǐng)域的出色表現(xiàn),才逐漸成為熱門學(xué)科。近代,隨著互聯(lián)網(wǎng)、云計(jì)算、大數(shù)據(jù)的發(fā)展,以及GPU、芯片和軟件技術(shù)的提升,深度學(xué)習(xí)開(kāi)始興起,拓展了人工智能的領(lǐng)域范圍,也推動(dòng)著社會(huì)從數(shù)字化向智能化的變革。
GitHub
人工智能的主要包含幾個(gè)部分:首先是感知,包括視覺(jué)、語(yǔ)音、語(yǔ)言;然后是決策,例如做出預(yù)測(cè)和判斷;最后是反饋,如果想做一套完整的系統(tǒng),就像機(jī)器人或是自動(dòng)駕駛,則需要一個(gè)反饋。 人工智能眾多的能力中,很重要的一個(gè)能力是其學(xué)習(xí)能力-機(jī)器學(xué)習(xí),它是人工智能的核心,是使計(jì)算機(jī)具有智能的關(guān)鍵。不能自我學(xué)習(xí),人工智能也只是徒有其表。
GitHub
認(rèn)識(shí)人工智能,還需要理清幾個(gè)概念之間的關(guān)系:人工智能是一個(gè)大的概念,是讓機(jī)器像人一樣思考甚至超越人類;而機(jī)器學(xué)習(xí)是實(shí)現(xiàn)人工智能的一種方法,是使用算法來(lái)解析數(shù)據(jù)、從中學(xué)習(xí),然后對(duì)真實(shí)世界中的事件做出決策和預(yù)測(cè);深度學(xué)習(xí)是機(jī)器學(xué)習(xí)的一種實(shí)現(xiàn)方式,通過(guò)模擬人神經(jīng)網(wǎng)絡(luò)的方式來(lái)訓(xùn)練網(wǎng)絡(luò);而統(tǒng)計(jì)學(xué)是機(jī)器學(xué)習(xí)和神經(jīng)網(wǎng)絡(luò)的一種基礎(chǔ)知識(shí)。
GitHub
機(jī)器學(xué)習(xí)最大的特點(diǎn)是利用數(shù)據(jù)而不是指令來(lái)進(jìn)行各種工作,其學(xué)習(xí)過(guò)程主要包括:數(shù)據(jù)的特征提取、數(shù)據(jù)預(yù)處理、訓(xùn)練模型、測(cè)試模型、模型評(píng)估改進(jìn)等幾部分。接下來(lái)我們重點(diǎn)介紹機(jī)器學(xué)習(xí)過(guò)程中的常見(jiàn)算法。
GitHub
2. 機(jī)器學(xué)習(xí)算法:是使計(jì)算機(jī)具有智能的關(guān)鍵
回目錄
是使計(jì)算機(jī)具有智能的關(guān)鍵 算法是通過(guò)使用已知的輸入和輸出以某種方式“訓(xùn)練”以對(duì)特定輸入進(jìn)行響應(yīng)。代表著用系統(tǒng)的方法描述解決問(wèn)題的策略機(jī)制。人工智能的發(fā)展離不開(kāi)機(jī)器學(xué)習(xí)算法的不斷進(jìn)步。 機(jī)器學(xué)習(xí)算法可以分為傳統(tǒng)的機(jī)器學(xué)習(xí)算法和深度學(xué)習(xí)。傳統(tǒng)機(jī)器學(xué)習(xí)算法主要包括以下五類:
回歸:建立一個(gè)回歸方程來(lái)預(yù)測(cè)目標(biāo)值,用于連續(xù)型分布預(yù)測(cè)
分類:給定大量帶標(biāo)簽的數(shù)據(jù),計(jì)算出未知標(biāo)簽樣本的標(biāo)簽取值
聚類:將不帶標(biāo)簽的數(shù)據(jù)根據(jù)距離聚集成不同的簇,每一簇?cái)?shù)據(jù)有共同的特征
關(guān)聯(lián)分析:計(jì)算出數(shù)據(jù)之間的頻繁項(xiàng)集合
降維:原高維空間中的數(shù)據(jù)點(diǎn)映射到低維度的空間中
GitHub
下面我們將選取幾種常見(jiàn)的算法,一一介紹。
線性回歸:找到一條直線來(lái)預(yù)測(cè)目標(biāo)值
一個(gè)簡(jiǎn)單的場(chǎng)景:已知房屋價(jià)格與尺寸的歷史數(shù)據(jù),問(wèn)面積為2000時(shí),售價(jià)為多少?
GitHub
此類問(wèn)題可以用回歸算法來(lái)解決。回歸是指確定兩種或兩種以上變量間相互依賴的定量關(guān)系的一種統(tǒng)計(jì)分析方法,通過(guò)建立一個(gè)回歸方程(函數(shù))來(lái)估計(jì)特征值對(duì)應(yīng)的目標(biāo)變量的可能取值。 最常見(jiàn)的是線性回歸(Y= a X + b),即找到一條直線來(lái)預(yù)測(cè)目標(biāo)值。回歸的求解就是求解回歸方程的回歸系數(shù)(a,b)的過(guò)程,并且使誤差最小。 房?jī)r(jià)場(chǎng)景中,根據(jù)房屋面積和售價(jià)的關(guān)系,求出回歸方程,則可以預(yù)測(cè)給定房屋面積時(shí)的售價(jià)。
GitHub
線性回歸的應(yīng)用非常廣泛,例如:
預(yù)測(cè)客戶終生價(jià)值: 基于老客戶歷史數(shù)據(jù)與客戶生命周期的關(guān)聯(lián)關(guān)系,建立線性回歸模型,預(yù)測(cè)新客戶的終生價(jià)值,進(jìn)而開(kāi)展針對(duì)性的活動(dòng)。
機(jī)場(chǎng)客流量分布預(yù)測(cè): 以海量機(jī)場(chǎng)WiFi數(shù)據(jù)及安檢登機(jī)值機(jī)數(shù)據(jù),通過(guò)數(shù)據(jù)算法實(shí)現(xiàn)機(jī)場(chǎng)航站樓客流分析與預(yù)測(cè)。
貨幣基金資金流入流出預(yù)測(cè): 通過(guò)用戶基本信息數(shù)據(jù)、用戶申購(gòu)贖回?cái)?shù)據(jù)、收益率表和銀行間拆借利率等信息,對(duì)用戶的申購(gòu)贖回?cái)?shù)據(jù)的把握,精準(zhǔn)預(yù)測(cè)未來(lái)每日的資金流入流出情況。
電影票房預(yù)測(cè): 依據(jù)歷史票房數(shù)據(jù)、影評(píng)數(shù)據(jù)、輿情數(shù)據(jù)等互聯(lián)網(wǎng)公眾數(shù)據(jù),對(duì)電影票房進(jìn)行預(yù)測(cè)。
邏輯回歸:找到一條直線來(lái)分類數(shù)據(jù)
邏輯回歸雖然名字叫回歸,卻是屬于分類算法,是通過(guò)Sigmoid函數(shù)將線性函數(shù)的結(jié)果映射到Sigmoid函數(shù)中,預(yù)估事件出現(xiàn)的概率并分類。
Sigmoid是歸一化的函數(shù),可以把連續(xù)數(shù)值轉(zhuǎn)化為0到1的范圍,提供了一種將連續(xù)型的數(shù)據(jù)離散化為離散型數(shù)據(jù)的方法。
因此,邏輯回歸從直觀上來(lái)說(shuō)是畫出了一條分類線。位于分類線一側(cè)的數(shù)據(jù),概率>0.5,屬于分類A;位于分類線另一側(cè)的數(shù)據(jù),概率<0.5,屬于分類B。
例如圖中通過(guò)計(jì)算患腫瘤的概率,將結(jié)果分類兩類,分別位于邏輯分類線的兩側(cè)。
GitHub
3. K-近鄰:用距離度量最相鄰的分類標(biāo)簽
一個(gè)簡(jiǎn)單的場(chǎng)景:已知一個(gè)電影中的打斗和接吻鏡頭數(shù),判斷它是屬于愛(ài)情片還是動(dòng)作片。當(dāng)接吻鏡頭數(shù)較多時(shí),根據(jù)經(jīng)驗(yàn)我們判斷它為愛(ài)情片。那么計(jì)算機(jī)如何進(jìn)行判別呢?
GitHub
可以使用K近鄰算法,其工作原理如下:
計(jì)算樣本數(shù)據(jù)中的點(diǎn)與當(dāng)前點(diǎn)之間的距離
算法提取樣本最相似數(shù)據(jù)(最近鄰)的分類標(biāo)簽
確定前k個(gè)點(diǎn)所在類別的出現(xiàn)頻率. 一般只選擇樣本數(shù)據(jù)集中前k個(gè)最相似的數(shù)據(jù),這就是k-近鄰算法中k的出處,通常k是不大于20的整數(shù)
返回前k個(gè)點(diǎn)所出現(xiàn)頻率最高的類別作為當(dāng)前點(diǎn)的預(yù)測(cè)分類
電影分類場(chǎng)景中,k取值為3,按距離依次排序的三個(gè)點(diǎn)分別是動(dòng)作片(108,5)、動(dòng)作片(115,8)、愛(ài)情片(5,89)。在這三個(gè)點(diǎn)中,動(dòng)作片出現(xiàn)的頻率為三分之二,愛(ài)情片出現(xiàn)的頻率為三分之一,所以該紅色圓點(diǎn)標(biāo)記的電影為動(dòng)作片。
K近鄰算法的一個(gè)常見(jiàn)應(yīng)用是手寫數(shù)字識(shí)別。手寫字體對(duì)于人腦來(lái)說(shuō),看到的數(shù)字是一幅圖像,而在電腦看來(lái)這是一個(gè)二維或三維數(shù)組,那怎么對(duì)數(shù)字進(jìn)行識(shí)別?
使用K近鄰算法的進(jìn)行識(shí)別的具體步驟為:
首先將每個(gè)圖片處理為具有相同的色彩和大小:寬高是32像素x32像素。
將3232的二進(jìn)制圖像矩陣轉(zhuǎn)換成11024的測(cè)試向量。
將訓(xùn)練樣本儲(chǔ)存在訓(xùn)練矩陣中,創(chuàng)建一個(gè)m行1024列的訓(xùn)練矩陣,矩陣的每行數(shù)據(jù)存儲(chǔ)一個(gè)圖像。
計(jì)算目標(biāo)樣本與訓(xùn)練樣本的距離,選擇前k個(gè)點(diǎn)所出現(xiàn)頻率最高的數(shù)字作為當(dāng)前手寫字體的預(yù)測(cè)分類。
樸素貝葉斯:選擇后驗(yàn)概率最大的類為分類標(biāo)簽
一個(gè)簡(jiǎn)單的場(chǎng)景:一號(hào)碗(C1)有30顆水果糖和10顆巧克力糖,二號(hào)碗(C2)有水果糖和巧克力糖各20顆。現(xiàn)在隨機(jī)選擇一個(gè)碗,從中摸出一顆糖,發(fā)現(xiàn)是水果糖。
問(wèn)這顆水果糖(X)最有可能來(lái)自哪個(gè)碗?這類問(wèn)題可以借助貝葉斯公式來(lái)計(jì)算,不需要針對(duì)目標(biāo)變量建立模型。在分類時(shí),通過(guò)計(jì)算樣本屬于各個(gè)類別的概率,然后取概率值大的類別作為分類類別。
P(X|C): 條件概率,C中X出現(xiàn)的概率
P©: 先驗(yàn)概率,C出現(xiàn)的概率
P(C|X): 后驗(yàn)概率,X屬于C類的概率
假設(shè)有 C1 和 C2 兩個(gè)類,由于 P(X)都是一樣的,所以不需要考慮 P(X) 只需考慮如下:
如果 P(X|C1)P(C1) > P(X|C2)P(C2),則 P(C1|X) > P(C2|X),得 X 屬于C1;
如果 P(X|C1) P(C1) < P(X|C2) P(C2),則 P(C2|X) < P(C2|X),得 X 屬于C2。
例如上面的例子中: P(X): 水果糖的概率為5/8
P(X|C1): 一號(hào)碗中水果糖的概率為3/4
P(X|C2): 二號(hào)碗中水果糖的概率為2/4
P(C1)=P(C2): 兩個(gè)碗被選中的概率相同,為1/2
則水果糖來(lái)自一號(hào)碗的概率為:
$P(C1|X)=P(X|C1)P(C1)/P(X)=(3/4)(1/2)/(5/8)=3/5
水果糖來(lái)自二號(hào)碗的概率為:
P(C2|X)=P(X|C2)P(C2)/P(X)=(2/4)(1/2)/(5/8)=2/5
P(C1|X)>P(C2|X)
因此這顆糖最有可能來(lái)自一號(hào)碗。
樸素貝葉斯的主要應(yīng)用有文本分類、垃圾文本過(guò)濾,情感判別,多分類實(shí)時(shí)預(yù)測(cè)等。
**
5. 決策樹(shù):構(gòu)造一棵熵值下降最快的分類樹(shù)
一個(gè)簡(jiǎn)單的場(chǎng)景:
相親時(shí),可能首先檢測(cè)相親對(duì)方是否有房。如果有,則考慮進(jìn)一步接觸。如果沒(méi)有房,則觀察其是否有上進(jìn)心,如果沒(méi)有,直接Say Goodbye。如果有,則可以列入候選名單。
這就是一個(gè)簡(jiǎn)單的決策樹(shù)模型。決策樹(shù)是一種樹(shù)型結(jié)構(gòu),其中每個(gè)內(nèi)部結(jié)點(diǎn)表示在一個(gè)屬性上的測(cè)試,每個(gè)分支代表一個(gè)測(cè)試輸出,每個(gè)葉結(jié)點(diǎn)代表一種類別。采用的是自頂向下的遞歸方法,選擇信息增益最大的特征作為當(dāng)前的分裂特征。
決策樹(shù)可以應(yīng)于:用戶分級(jí)評(píng)估、貸款風(fēng)險(xiǎn)評(píng)估、選股、投標(biāo)決策等。
6. 支持向量機(jī)(SVM):構(gòu)造超平面,分類非線性數(shù)據(jù)
一個(gè)簡(jiǎn)單的場(chǎng)景:
要求用一根線將不同顏色的球分開(kāi),要求盡量在放更多球之后,仍然適用。 A、B兩條線都可以滿足條件。再繼續(xù)增加球,線A仍可以將球很好的分開(kāi),而線B則不可以。
GitHub
進(jìn)一步增加難度,當(dāng)球沒(méi)有明確的分界線,用一條直線已經(jīng)無(wú)法將球分開(kāi),該怎么解決?
GitHub
這個(gè)場(chǎng)景中涉及支持向量機(jī)的的兩個(gè)問(wèn)題:
當(dāng)一個(gè)分類問(wèn)題,數(shù)據(jù)是線性可分時(shí),只要將線的位置放在讓小球距離線的距離最大化的位置即可,尋找這個(gè)最大間隔的過(guò)程,就叫做最優(yōu)化。
一般的數(shù)據(jù)是線性不可分的,可以通過(guò)核函數(shù),將數(shù)據(jù)從二維映射到高位,通過(guò)超平面將數(shù)據(jù)切分。
不同方向的最優(yōu)決策面的分類間隔通常是不同的,那個(gè)具有“最大間隔”的決策面就是SVM要尋找的最優(yōu)解。這個(gè)真正的最優(yōu)解對(duì)應(yīng)的兩側(cè)虛線所穿過(guò)的樣本點(diǎn),就是SVM中的支持樣本點(diǎn),稱為支持向量。
SVM的應(yīng)用非常廣泛,可以應(yīng)用于垃圾郵件識(shí)別、手寫識(shí)別、文本分類、選股等。
7. K-means:計(jì)算質(zhì)心,聚類無(wú)標(biāo)簽數(shù)據(jù)
在上面介紹的分類算法中,需要被分類的數(shù)據(jù)集已經(jīng)有標(biāo)記,例如數(shù)據(jù)集已經(jīng)標(biāo)記為○或者×,通過(guò)學(xué)習(xí)出假設(shè)函數(shù)對(duì)這兩類數(shù)據(jù)進(jìn)行劃分。而對(duì)于沒(méi)有標(biāo)記的數(shù)據(jù)集,希望能有一種算法能夠自動(dòng)的將相同元素分為緊密關(guān)系的子集或簇,這就是聚類算法。
GitHub
舉個(gè)具體的例子,例如有一批人的年齡的數(shù)據(jù),大致知道其中有一堆少年兒童,一堆青年人,一堆老年人。
聚類就是自動(dòng)發(fā)現(xiàn)這三堆數(shù)據(jù),并把相似的數(shù)據(jù)聚合到同一堆中。如果要聚成3堆的話,那么輸入就是一堆年齡數(shù)據(jù),注意,此時(shí)的年齡數(shù)據(jù)并不帶有類標(biāo)號(hào),也就是說(shuō)只知道里面大致有三堆人,至于誰(shuí)是哪一堆,現(xiàn)在是不知道的,而輸出就是每個(gè)數(shù)據(jù)所屬的類標(biāo)號(hào),聚類完成之后,就知道誰(shuí)和誰(shuí)是一堆了。
而分類就是,事先告訴你,少年兒童、青年人及老年人的年齡是什么樣的,現(xiàn)在新來(lái)了一個(gè)年齡,輸入它的年齡,輸出她屬于的分類。一般分類器是需要訓(xùn)練的,它才能識(shí)別新的數(shù)據(jù)。
K-Means算法是一種常見(jiàn)的聚類算法,其基本步驟為:
隨機(jī)生成k個(gè)初始點(diǎn)作為質(zhì)心;
將數(shù)據(jù)集中的數(shù)據(jù)按照距離質(zhì)心的遠(yuǎn)近分到各個(gè)簇中;
將各個(gè)簇中的數(shù)據(jù)求平均值,作為新的質(zhì)心,重復(fù)上一步,直到所有的簇不再改變。 兩個(gè)分類間隔越遠(yuǎn),則聚類效果越好。
K-means算法的一個(gè)案例是:客戶價(jià)值細(xì)分,精準(zhǔn)投資。
以航空公司為例,因?yàn)闃I(yè)務(wù)競(jìng)爭(zhēng)激烈,企業(yè)營(yíng)銷焦點(diǎn)從產(chǎn)品中心轉(zhuǎn)為客戶中心;建立合理的客戶價(jià)值評(píng)估模型,進(jìn)行客戶分類,進(jìn)行精準(zhǔn)營(yíng)銷,是解決問(wèn)題的關(guān)鍵。
識(shí)別客戶價(jià)值,通過(guò)五個(gè)指標(biāo):最近消費(fèi)時(shí)間間隔R,消費(fèi)頻率F,飛行里程 M和折扣系數(shù)的平均值C,客戶關(guān)系長(zhǎng)度L(LRFMC模型)。采用K-Means算法對(duì)客戶數(shù)據(jù)進(jìn)行客戶分群,聚成五類(需結(jié)合業(yè)務(wù)的理解與分析來(lái)確定客戶的類別數(shù)量)繪制客戶群特征雷達(dá)圖。
客戶價(jià)值分析:
重要保持客戶:C、F、M較高,R低。應(yīng)將資源優(yōu)先投放到這類客戶身上,進(jìn)行差異化管理,提高客戶的忠誠(chéng)度和滿意度。
重要發(fā)展客戶:C較高,R、F、M較低。這類客戶入會(huì)時(shí)長(zhǎng)(L)短、當(dāng)前價(jià)值低、發(fā)展?jié)摿Υ螅瑧?yīng)促使客戶增加在本公司和合作伙伴處的消費(fèi)。
重要挽留客戶:C、F 或 M 較高,R較高 或 L變小,客戶價(jià)值變化的不確定性高。應(yīng)掌握客戶最新信息、維持與客戶的互動(dòng)。
一般和低價(jià)值客戶:C、F、M、L低、R較高。這類客戶可能在打折促銷時(shí)才會(huì)選擇消費(fèi)。
K-means算法的一個(gè)比較有趣的案例是進(jìn)行圖像壓縮。在彩色圖像中,每個(gè)像素的大小為3字節(jié)(RGB),可以表示的顏色總數(shù)為256 256 256。利用K-means算法把類似的顏色分別放在K個(gè)簇中,因此只需要保留每個(gè)像素的標(biāo)簽,以及每個(gè)簇的顏色編碼即可完成圖像的壓縮。
8. 關(guān)聯(lián)分析:挖掘啤酒與尿布(頻繁項(xiàng)集)的關(guān)聯(lián)規(guī)則
20世紀(jì)90年代美國(guó)沃爾瑪超市中,超市管理人員分析銷售數(shù)據(jù)時(shí)發(fā)現(xiàn) “啤酒”與“尿布”兩件看上去毫無(wú)關(guān)系的商品會(huì)經(jīng)常出現(xiàn)在同一個(gè)購(gòu)物籃中。經(jīng)過(guò)調(diào)查發(fā)現(xiàn),這種現(xiàn)象出現(xiàn)在年輕的父親身上。在美國(guó)有嬰兒的家庭中,一般是母親在家中照看嬰兒,年輕的父親去超市買尿布時(shí),往往會(huì)順便為自己購(gòu)買啤酒。如果在賣場(chǎng)只能買到兩件商品之一,他很有可能會(huì)放棄購(gòu)物而去另一家可以同時(shí)買到啤酒與尿布的商店。由此,沃爾瑪發(fā)現(xiàn)了這一獨(dú)特的現(xiàn)象,開(kāi)始在賣場(chǎng)嘗試將啤酒與尿布擺放在相同區(qū)域,讓年輕的父親可以同時(shí)找到這兩件商品,從而獲得了很好的商品銷售收入。
“啤酒+尿布”故事中利用的就是關(guān)聯(lián)算法,比較常見(jiàn)的一種關(guān)聯(lián)算法是FP-growth算法。
算法中幾個(gè)相關(guān)的概念:
頻繁項(xiàng)集:在數(shù)據(jù)庫(kù)中大量頻繁出現(xiàn)的數(shù)據(jù)集合。例如購(gòu)物單數(shù)據(jù)中{‘啤酒’}、{‘尿布’}、{‘啤酒’, ‘尿布’}出現(xiàn)的次數(shù)都比較多。
關(guān)聯(lián)規(guī)則:由集合 A,可以在某置信度下推出集合 B。即如果 A 發(fā)生了,那么 B
也很有可能會(huì)發(fā)生。例如購(gòu)買了{(lán)‘尿布’}的人很可能會(huì)購(gòu)買{‘啤酒’}。 支持度:指某頻繁項(xiàng)集在整個(gè)數(shù)據(jù)集中的比例。假設(shè)數(shù)據(jù)集有 10條記錄,包含{‘啤酒’, ‘尿布’}的有 5 條記錄,那么{‘啤酒’, ‘尿布’}的支持度就是 5/10 = 0.5。
置信度:有關(guān)聯(lián)規(guī)則如{‘尿布’} -> {‘啤酒’},它的置信度為 {‘尿布’} -> {‘啤酒’}
假設(shè){‘尿布’, ‘啤酒’}的支持度為 0.45,{‘尿布’}的支持度為 0.5,則{‘尿布’} -> {‘啤酒’}的置信度為 0.45 / 0.5 = 0.9。
應(yīng)用比較廣泛,例如: 用于制定營(yíng)銷策略。如同啤酒與尿布的例子,超市如果將啤酒和尿布放在相鄰的位置,會(huì)增加兩者的銷量。 用于發(fā)現(xiàn)共現(xiàn)詞。在瀏覽器中輸入"普元"時(shí),瀏覽器自動(dòng)彈出如"普元平臺(tái)","普元EOS"等備選記錄。 FP-growth算法一個(gè)簡(jiǎn)單的案例:通過(guò)購(gòu)物車數(shù)據(jù),分析商品之間的關(guān)聯(lián)關(guān)系。
GitHub
分析步驟為:
從購(gòu)物車數(shù)據(jù)中挖掘出頻繁項(xiàng)集
從頻繁項(xiàng)集中產(chǎn)生關(guān)聯(lián)規(guī)則,計(jì)算支持度
輸出置信度
GitHub
根據(jù)結(jié)果,可以分析出購(gòu)買了鞋子,極有可能會(huì)同時(shí)購(gòu)買襪子;購(gòu)買了雞蛋與面包,極有可能會(huì)購(gòu)買牛奶。
9. PCA降維:減少數(shù)據(jù)維度,降低數(shù)據(jù)復(fù)雜度
降維是指將原高維空間中的數(shù)據(jù)點(diǎn)映射到低維度的空間中。因?yàn)楦呔S特征的數(shù)目巨大,距離計(jì)算困難,分類器的性能會(huì)隨著特征數(shù)的增加而下降;減少高維的冗余信息所造成的誤差,可以提高識(shí)別的精度。
GitHub
比較常用的是主成分分析算法(PCA)。它是通過(guò)某種線性投影,將高維的數(shù)據(jù)映射到低維的空間中表示,并期望在所投影的維度上數(shù)據(jù)的方差最大,以此使用較少的數(shù)據(jù)維度,同時(shí)保留住較多的原數(shù)據(jù)點(diǎn)的特性。
GitHub
例如對(duì)數(shù)字進(jìn)行降維,當(dāng)使用1個(gè)特征向量的時(shí)候,3的基本輪廓已經(jīng)保留下來(lái)了,特征向量使用的越多就越與原始數(shù)據(jù)接近。
10. 人工神經(jīng)網(wǎng)絡(luò):逐層抽象,逼近任意函數(shù)
前面介紹了九種傳統(tǒng)的機(jī)器學(xué)習(xí)算法,現(xiàn)在介紹一下深度學(xué)習(xí)的基礎(chǔ):人工神經(jīng)網(wǎng)絡(luò)。 它是模擬人腦神經(jīng)網(wǎng)絡(luò)而設(shè)計(jì)的模型,由多個(gè)節(jié)點(diǎn)(人工神經(jīng)元)相互聯(lián)結(jié)而成,可以用來(lái)對(duì)數(shù)據(jù)之間的復(fù)雜關(guān)系進(jìn)行建模。不同節(jié)點(diǎn)之間的連接被賦予了不同的權(quán)重,每個(gè)權(quán)重代表了一個(gè)節(jié)點(diǎn)對(duì)另一個(gè)節(jié)點(diǎn)的影響大小。每個(gè)節(jié)點(diǎn)代表一種特定函數(shù),來(lái)自其他節(jié)點(diǎn)的信息經(jīng)過(guò)其相應(yīng)的權(quán)重綜合計(jì)算。是一個(gè)可學(xué)習(xí)的函數(shù),接受不同數(shù)據(jù)的訓(xùn)練,不斷通過(guò)調(diào)整權(quán)重而得到契合實(shí)際模型,一個(gè)三層的神經(jīng)網(wǎng)絡(luò)可以逼近任意的函數(shù)。
GitHub
例如利用單層神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)邏輯與門和同或門。
GitHub
多層神經(jīng)網(wǎng)絡(luò)的每一層神經(jīng)元學(xué)習(xí)到的是前一層神經(jīng)元值的更抽象的表示,通過(guò)抽取更抽象的特征來(lái)對(duì)事物進(jìn)行區(qū)分,從而獲得更好的區(qū)分與分類能力。例如在圖像識(shí)別中,第一個(gè)隱藏層學(xué)習(xí)到的是 “邊緣”的特征,第二層學(xué)習(xí)由“邊緣”組成的“形狀”的特征,第三層學(xué)習(xí)到的是由“形狀”組成的“圖案”的特征,最后的隱藏層學(xué)習(xí)到的是由“圖案”組成的“目標(biāo)”的特征。
GitHub
深度學(xué)習(xí):賦予人工智能以璀璨的未來(lái)
深度學(xué)習(xí)是機(jī)器學(xué)習(xí)的分支,是對(duì)人工神經(jīng)網(wǎng)絡(luò)的發(fā)展。深度學(xué)習(xí)是當(dāng)今人工智能爆炸的核心驅(qū)動(dòng),賦予人工智能以璀璨的未來(lái)。
看一下深度學(xué)習(xí)與傳統(tǒng)機(jī)器學(xué)習(xí)的區(qū)別。傳統(tǒng)機(jī)器學(xué)習(xí)特征處理和預(yù)測(cè)分開(kāi),特征處理一般需要人工干預(yù)完成。這類模型稱為淺層模型,或淺層學(xué)習(xí),不涉及特征學(xué)習(xí),其特征主要靠人工經(jīng)驗(yàn)或特征轉(zhuǎn)換方法來(lái)抽取。
GitHub
要提高一種表示方法的表示能力,其關(guān)鍵是構(gòu)建具有一定深度的多層次特征表示 。一個(gè)深層結(jié)構(gòu)的優(yōu)點(diǎn)是可以增加特征的重用性,從而指數(shù)級(jí)地增加表示能力。從底層特征開(kāi)始,一般需要多步非線性轉(zhuǎn)換才能得到較為抽象的高層語(yǔ)義特征。這種自動(dòng)學(xué)習(xí)出有效特征的方式稱為“表示學(xué)習(xí)”。