本文將推薦五種機器學習算法,你應(yīng)該考慮是否將它們投入應(yīng)用。這五種算法覆蓋最常用于聚類、分類、數(shù)值預(yù)測和樸素貝葉斯等四個門類。
1. 聚類算法:k-means
聚類算法的目標:觀察輸入數(shù)據(jù)集,并借助數(shù)據(jù)集中不同樣本的特征差異來努力辨別不同的數(shù)據(jù)組。聚類算法最強大之處在于,它不需要本文中其他算法所需的訓練過程,您只需簡單地提供數(shù)據(jù),告訴算法你想創(chuàng)造多少簇(樣本的組別),算法會為每個簇來分配一個編號。這種規(guī)范聚類算法就是k-means。
舉個例子,你的應(yīng)用可用k-means來按照營銷目的區(qū)分你的網(wǎng)絡(luò)服務(wù)的用戶。你只需要輸入(從電子商務(wù)網(wǎng)站獲取的)一組客戶的購買歷史,并確定四組客戶以進行分類營銷。此時,你為k-means提供了一個數(shù)據(jù)表,每行代表一名客戶,每列則是各種對客戶的購買行為特征(如成為客戶的時間、每月評價花費、每月評價訂單量、地理位置、對當天航運的使用比例等等)。算法會為表格增加一欄:編號1-4來表示不同的分組。
提示:使用kmeans函數(shù)或rxKmeans. 用以執(zhí)行bt rx的函數(shù)是ScaleR的一部分,所以不能支持量很大的數(shù)據(jù)集。
2&3. 兩類、多類分類算法
分類算法的目標:輸入一行數(shù)據(jù)及一個類目名稱表,通過對數(shù)據(jù)的校驗估測其所屬的類目。分類算法通常按照分類時的類目總數(shù)分為兩類和多類分類算法。在你使用種算法預(yù)測新數(shù)據(jù)前,你需要預(yù)先使用一組類目可知的數(shù)據(jù)對算法加以訓練。
不妨舉個簡單的例子來說明兩類分類算法:想象一個你希望得到是/否(或真/偽)的兩極化情形。此時,類別分別為“是”和“否”(或者“真”和“偽”)。兩類分類的典型應(yīng)用是:根據(jù)歷史天氣條件(如溫度、風速、降水、氣壓)和航班信息(如航空公司、起飛時間、航班號)來預(yù)測未來航班會推遲15分鐘離開還是照常起飛。輸出分為“延遲”和“不延遲”兩類。在大多數(shù)情況下,兩類分類算法的核心是邏輯回歸的使用,后者用于生成一個在0到1范圍內(nèi)的值。如果該值小于0.5,往往會解釋為第一個類(如“不延遲”),否則會劃為第二類(如“延遲”)。
另一個應(yīng)用是:預(yù)測貸款的償還情況,來作為拓展信用的一部分。你必須提供貸款人的相關(guān)數(shù)據(jù),譬如信用分數(shù)、房產(chǎn)年限、工作時長、信用卡債務(wù)總額、數(shù)據(jù)采集年份以及有貸款違約記錄。分類為“會違約”和“不會違約”。這個例子之所以非常有趣,是因為對于一些機器學習所處理的難題來說,僅僅有預(yù)測結(jié)果并不足夠,還必須知曉結(jié)論是怎樣得出的。這時多組分類算法形成的決策樹就派上用場了,決策樹中的多組分類算法可以分析從輸入到最終生成預(yù)測的過程。回到貸款這一案例,不妨想象你是銀行方,當你拒絕了消費者的貸款新的信用卡要求時,消費者的下一個問題可能是“為什么?”。通過決策樹,你可以具體回答:“好吧,你的信用分數(shù)太低了,信用卡債臺高筑,工作年頭又太短了。”
充分理解兩類分類算法后,進一步理解多類分類算法就順理成章了。多類分類算法可應(yīng)用于電影院,來告訴后者某部電影究竟是墊底的票房毒藥(不僅口碑差,而且主流觀眾不感興趣)、口碑導(dǎo)向(叫好不叫座)還是票房導(dǎo)向(口碑差,但是票房高)。三個分類分別是“毒藥”、“口碑導(dǎo)向”、“票房導(dǎo)向”。你也可以使用決策樹,來了解一部電影為何會得到這樣的評價。
提示:使用glm或rxLogit來進行兩類或多類分類。進行多類分類時,你可以使用rpart或rxDTree來建立可觀察決策樹。
4. 數(shù)值預(yù)測
數(shù)值預(yù)測算法的目標:根據(jù)一組輸入,預(yù)測一個具體數(shù)值。仍然使用上文中航班延誤的例子,我們現(xiàn)在要做的不再是預(yù)測航班是否會推遲15分鐘,數(shù)值預(yù)測算法將讓你知曉航班將具體被推遲多久。數(shù)值預(yù)測算法的核心是線性回歸的使用(不要與分類算法使用的邏輯回歸混淆),通過對歷史數(shù)據(jù)的線性擬合,線性回歸可以有效地進行數(shù)值預(yù)測。最好的例子是股票的預(yù)測,線性回歸根據(jù)過往數(shù)據(jù)的分布,擬合出一條最合適的直線,延長這條線你就可以預(yù)測將來的股票價格。
提示:使用Im或rxLinMod函數(shù)。
5. 樸素貝葉斯算法
最后,你的采納清單上還缺一個機器學習中勞苦功高的算法——樸素貝葉斯算法。它的核心是因果關(guān)系。更具體地說,樸素貝葉斯算法是在給定已知的成因的情況下,預(yù)測這一成因?qū)a(chǎn)生的效果以及效果的程度。現(xiàn)實生活中的典型例子是癌癥檢測。你可以通過對病人特定病狀(效果)的觀察,來預(yù)測病人患有癌癥的概率(疾病是成因)。再舉個和你相關(guān)的例子,樸素貝葉斯算法可以根據(jù)你已購買的商品為你推薦其他商品。例如,你網(wǎng)購了一些雞蛋,算法會提醒你買些牛奶,因為你的購買歷史顯示:購買雞蛋(成因)會導(dǎo)致購買牛奶(效果)。樸素貝葉斯有趣的一點在于,它可以用于分類和數(shù)值預(yù)測。。
提示:使用naiveBayes和rxNaiveBayes函數(shù)。
結(jié)論
好了,你有了一個實用算法的清單。現(xiàn)在,重新審視你的應(yīng)用,想一想哪些地方可以增添點機器學習帶來的智能性。
責任編輯:lq6
-
聚類算法
+關(guān)注
關(guān)注
2文章
118瀏覽量
12129 -
樸素貝葉斯
+關(guān)注
關(guān)注
0文章
12瀏覽量
3375 -
機器學習算法
+關(guān)注
關(guān)注
2文章
47瀏覽量
6457
發(fā)布評論請先 登錄
相關(guān)推薦
評論