從小白視角理解<數據挖掘十大算法>

1、PageRank

當一篇論文被引用的次數越多,證實這篇論文的影響力越大。
一個網頁的入鏈越多,入鏈越優質,網頁的質量越高數據庫

原理

  • 一個網頁的影響力:全部入鏈的頁面的加權影響力之和
  • 一個網頁對其餘網頁的影響力貢獻爲:自身影響力/出鏈數量
  • 用戶並不都是按照跳轉連接的方式來上網,還有其餘的方式,好比直接輸入網址訪問,
    因此須要設定阻尼因子,表明了用戶按照跳轉連接來上網的機率

比喻說明

  1. 微博
    一我的的微博粉絲數不必定等於他的實際影響力,還須要看粉絲的質量如何。
    若是是殭屍粉沒什麼用,但若是是不少大V或者明星關注,影響力很高。
  2. 店鋪的經營
    顧客比較多的店鋪質量比較好,可是要看看顧客是否是託。
  3. 興趣
    在感興趣的人或事身上投入了相對多的時間,對其相關的人事物也會投入必定的時間。
    那我的或事,被關注的越多,它的影響力/受衆也就越大。

關於阻尼因子數據結構

  1. 經過你的鄰居的影響力來評判你的影響力,可是若是不能經過鄰居來訪問你,並不表明你沒有影響力,由於能夠直接訪問你,因此引入阻尼因子的概念
  2. 海洋除了有河流流經,還有雨水,可是下雨是隨機的(網頁影響力=阻尼影響力+全部入鏈集合頁面的加權影響力之和)
  3. 提出阻尼係數,仍是爲了解決某些網站明明存在大量出鏈(入鏈),可是影響力卻很是大的情形。
    出鏈例子:hao123導航網頁,出鏈極多入鏈極少
    入鏈例子:百度谷歌等搜索引擎,入鏈極多出鏈極少。

2、Apriori(關聯分析)

關聯關係挖掘,從消費者交易記錄中發掘商品與商品之間的關聯關係機器學習

原理

1.支持度
某個商品組合出現的次數與總次數之間的比例
5次購買,4次買了牛奶,牛奶的支持度爲4/5=0.8
5次購買,3次買了牛奶+硯,牛奶+麪包的支持度爲3/5=0.6函數

2.置信度
購買了商品A,有多大機率購買商品B,A發生的狀況下B發生的機率是多少
買了4次牛奶,其中2次買了啤酒,(牛奶->啤酒)的置信度爲2/4=0.5
買了3次啤酒,其中2次買了牛奶,(啤酒->牛奶)的置信度爲2/3-0.67性能

3.提高度
衡量商品A的出現,對商品B的出現 機率提高的程度學習

提高度(A->B)=置信度(A->B)/支持度(B)

提高度>1,有提高; 提高度=1,無變化; 提高度<1,降低大數據

4.頻繁項集
項集:能夠是單個商品,也能夠是商品組合
頻繁項集是支持度大於最小支持度(Min Support)的項集網站

計算過程搜索引擎

  1. 從K=1開始,篩選頻繁項集。
  2. 在結果中,組合K+1項集,再次篩選
  3. 循環一、2步。直到找不到結果爲止,K-1項集的結果就是最終結果。

擴展:FP-Growth 算法
Apriori 算法須要屢次掃描數據庫,性能低下,不適合大數據量
FP-growth算法,經過構建 FP 樹的數據結構,將數據存儲在 FP 樹中,只須要在構建 FP 樹時掃描數據庫兩次,後續處理就不須要再訪問數據庫了。

比喻說明

啤酒和尿不溼擺在一塊兒銷售
沃爾瑪經過數據分析發現,美國有嬰兒的家庭中,通常是母親在家照顧孩子,父親去超市買尿不溼。父親在購買尿不溼時,經常會順便搭配幾瓶啤酒來犒勞本身,因而,超市嘗試推出了將啤酒和尿不溼擺在一塊兒的促銷手段,這個舉措竟然使尿不溼和啤酒的銷量都大幅增長。

3、AdaBoost

原理

簡單的說,多個弱分類器訓練成爲一個強分類器。
將一系列的弱分類器以不一樣的權重比組合做爲最終分類選擇

計算過程

  1. 初始化基礎權重
  2. 獎權重矩陣,經過已的分類器計算錯誤率,選擇錯誤率最低的爲最優分類器
  3. 經過分類器權重公式,減小正確樣本分佈,增長錯誤樣本分佈,獲得新的權重矩陣和當前k輪的分類器權重
  4. 將新的權重矩陣,帶入上面的步驟2和3,從新計算權重矩陣
  5. 迭代N輪,記錄每一輪的最終分類器權重,獲得強分類器

比喻說明

  1. 利用錯題提高學習效率
    作正確的題,下次少作點,反正都會了
    作錯的題,下次多作點,集中在錯題上
    隨着學習的深刻,作錯的題會愈來愈少
  2. 合理跨界提升盈利
    蘋果公司,軟硬結合,佔據了大部分的手機市場利潤,兩個領域的知識結合起來產生新收益

4、C4.5(決策樹)

決策就是對於一個問題,有多個答案,選擇答案的過程就是決策。
C4.5算法是用於產生決策樹的算法,主要用於分類
C4.5使用信息增益率作計算,對ID3算法使用信息率。

原理

C4.5選擇最有效地方式對樣本集進行分裂,分裂規則是分析全部屬性的信息增益率
信息增益率越大,意味着這個特徵分類的能力越強,咱們就要優先選擇這個特徵作分類

比喻說明

挑西瓜
拿到一個西瓜,先判斷它的紋路,若是很模糊,就認爲這不是好瓜,若是它清晰,就認爲它是一個好瓜,若是它稍稍模糊,就考慮它的密度,密度大於某個值,就認爲它是好瓜,不然就是壞瓜。

5、CART(決策樹)

CART:Classification And Regression Tree,中文叫分類迴歸樹,便可以作分類也能夠作迴歸。
什麼是分類樹、迴歸樹?
分類樹:處理離散數據,也就是數據種類有限的數據,輸出的是樣本的類別 。
迴歸樹:能夠對連續型的數值進行預測,輸出的是一個數值,數值在某個區間內都有取值的可能。
迴歸問題和分類問題的本質同樣,都是針對一個輸入作出一個輸出預測,其區別在於輸出變量的類型

原理

CART分類樹與C4.5算法相似,只是屬性選擇的指標是基尼係數。
基尼係數反應了樣本的不肯定度,基尼係數越小,說明樣本之間的差別性小,不肯定程度低。
分類是一個不肯定度下降的過程,CART在構造分類樹的時候會選擇基尼係數最小的屬性做爲屬性的劃分。
CART 迴歸樹是採用均方偏差或絕對值偏差爲標準,選取均方偏差或絕對值偏差最小的特徵

比喻說明

分類任務:預測明天是陰、晴仍是雨
迴歸任務:預測明天的氣溫是多少度

6、樸素貝葉斯(條件機率)

樸素貝葉斯一種簡單有效的經常使用分類算法,計算未知物體出現的條件下各個類別出現的機率,取機率最大的分類

原理

假設輸入的不一樣特徵之間是獨立的,基於機率論原理,經過先驗機率P(A)、P(B)和條件機率推算出後機率出P(A|B)
P(A):先驗機率,即在B事件發生以前,對A事件機率的一個判斷。
P(B|A):條件機率,事件 B 在另一個事件 A 已經發生條件下的發生機率
P(A|B):後驗機率,即在B事件發生以後,對A事件機率的從新評估。

比喻說明

給病人分類

症狀 職業 疾病
打噴嚏 護士 感冒
打噴嚏 農夫 過敏
頭痛 建築工人 腦震盪
頭痛 建築工人 感冒
打噴嚏 教師 感冒
頭痛 教師 腦震盪

給定一個新病人,是一個打噴嚏的建築工人,計算他患感冒的機率

7、SVM

SVM: Support Vector Machine,中文名爲支持向量機,是常見的一種分類方法,在機器學習中,SVM 是有監督的學習模型。
什麼是有監督學習和無監督學習 ?
有監督學習:即在已有類別標籤的狀況下,將樣本數據進行分類。
無監督學習:即在無類別標籤的狀況下,樣本數據根據必定的方法進行分類,即聚類,分類好的類別須要進一步分析後,從而得知每一個類別的特色。

原理

找到具備最小間隔的樣本點,而後擬合出一個到這些樣本點距離和最大的線段/平面。

硬間隔:數據是線性分佈的狀況,直接給出分類
軟間隔:容許必定量的樣本分類錯誤。
核函數:非線性分佈的數據映射爲線性分佈的數據。

比喻說明

1.分隔桌上一堆紅球和籃球
用一根線將桌上的紅球和藍球分紅兩部分
2.分隔箱子裏一堆紅球和籃球
用一個平面將箱子裏的紅球和藍球分紅兩部分

8、KNN

機器學習算法中最基礎、最簡單的算法之一。既能用於分類,也能用於迴歸。經過測量不一樣特徵值之間的距離來進行分類。

原理

根據場景,選取距離計算方式,計算待分類物體與其餘物體之間的距離
對於K個最近的鄰居,所佔數量最多的類別,預測爲該分類對象的類別

計算步驟
1.根據場景,選取距離計算方式,計算待分類物體與其餘物體之間的距離

  1. 統計距離最近的K個鄰居
  2. 對於K個最近的鄰居,所佔數量最多的類別,預測爲該分類對象的類別

比喻說明

近朱者赤,近墨者黑

9、K-Means(聚類)

K-means是一個聚類算法,是無監督學習,生成指定K個類,把每一個對象分配給距離最近的聚類中心

原理

1.隨機選取K個點爲分類中心點
2.將每一個點分配到最近的類,這樣造成了K個類
3.從新計算每一個類的中心點。好比都屬於同一個類別裏面有10個點,那麼新的中心點就是這10個點的中心點,一種簡單的方式就是取平均值。

比喻說明

1.選老大
你們隨機選K個老大,誰離得近,就是那個隊列的人(計算距離,距離近的人聚合在一上進心)
隨着時間的推移,老大的位置在變化(根據算法,從新計算中心點),直到選出真正的中心老大(重複,直到準確率最高)

2.Kmeans和Knn的區別
Kmeans開發,選老大,風水輪流轉,直到選出最佳中心老大
Knn小弟加隊伍,離那個班相對近,就是那個班的

10、EM(聚類)

EM 的英文是 Expectation Maximization,因此 EM 算法也叫最大指望算法,
和K-Means的區別:
EM是計算機率,KMeans是計算距離。
它和K-means都屬於聚類算法,可是,EM屬於軟聚類,同同樣本可能屬於多個類別;然後者則屬於硬聚類,一個樣本只能屬於一個類別。因此前者可以發現一些隱藏的數據。

原理

先估計一個大機率的可能參數,而後再根據數據不斷地進行調整,直到找到最終的確認參數

比喻說明

菜稱重。 不多有人用稱對菜進行稱重,再計算一半的份量進行平分。 大部分人的方法是先分一部分到碟子 A 中,而後再把剩餘的分到碟子 B 中,再來觀察碟子 A 和 B 裏的菜是否同樣多,哪一個多就勻一些到少的那個碟子裏,而後再觀察碟子 A 和 B 裏的是否同樣多……整個過程一直重複下去,直到分量不發生變化爲止。

相關文章
相關標籤/搜索