對機器學習的一點點學習

最近由於工作需要,需要學習一下機器學習,之前雖然也學習過相關課程,但是現在忘得也差不多了。所以,找了一個做機器學習的同學問了一下相關概念,結合實際應用,對機器學習裏面的相關內容先混個簡單瞭解。後面會詳細學習每一個算法,希望有更深的瞭解。

(1)Spark和Hadoop
現在企業中兩種分佈式系統都在使用。Spark現在比較火,主要是因爲在Spark上面做機器學習比Hadoop更加快速高效,這是由Spark的特性所決定的。但是具體採用Spark還是hadoop,需要結合實際的應用來選擇。Spark和Hadoop可以跑在同樣的集羣上面,Spark也可以調用Hadoop的一些接口函數。

(2)對幾種算法的理解
樸素貝葉斯:有監督分類算法。在Spark中,輸入訓練數據,算法跑完之後返回的是四個函數,對於新來的數據,便可以通過這四個函數計算出分類結果。
決策樹:有監督分類算法。算法輸出結果是一組點對,這組點對對應到決策樹的每一個節點及其數值。根據這組點對就可以判斷新來數據的所屬分類了。
Logistic迴歸(LR):現在在廣告推薦方面應用的比較多。線性分類算法。函數返回結果爲函數中的參數,對於新輸入的數據,計算出結果數值,判斷其分類情況。【廣告推薦,基於現有的數據:用戶輸入的關鍵詞和廣告信息,學習到迴歸函數,對於新的關鍵詞,將其和現有廣告信息代入計算,計算出排名最靠前的廣告】
SVM: 和LR都屬於線性迴歸算法,只是思想不一樣。
KNN: 有監督分類。但是KNN應用非常少,因爲其K值不好選擇,而且計算量比較大。
Adaboost: 是一種boosting算法,主要是通過多個分類器達到好的分類結果。
K-means:聚類算法,無監督聚類,應用比較少。
SVD + pLSA + LDA: 應用的比較火,主要用於計算相似度,推薦這一塊。實際效果LDA > pLSA > SVD。【比如給出一篇文章,可以計算出文章的隱形語義(隱形語義可能是一組數字,人爲是看不懂的),對於新給出的文章,同樣可以計算出其隱形語義,然後計算不同文章之間的相似度】
GBDT: 阿里內部使用的比較多一些。它是一種迭代的決策樹算法,該算法由多棵決策樹組成,所有樹的輸出結果累加起來就是最終答案。
Apriori + FP Growth: 頻繁項挖掘算法。用在推薦處。

以後每天詳細學習一種算法,結合實際應用做出相關的說明。如有錯誤,及時更正。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章