Spark機(jī)器學(xué)習(xí)庫(kù)的各種機(jī)器學(xué)習(xí)算法
推薦 + 挑錯(cuò) + 收藏(0) + 用戶評(píng)論(0)
本文將簡(jiǎn)要介紹Spark機(jī)器學(xué)習(xí)庫(kù)(Spark MLlib’s APIs)的各種機(jī)器學(xué)習(xí)算法,主要包括:統(tǒng)計(jì)算法、分類算法、聚類算法和協(xié)同過(guò)濾算法,以及各種算法的應(yīng)用。
你不是一個(gè)數(shù)據(jù)科學(xué)家。“根據(jù)科技和商業(yè)媒體報(bào)道,機(jī)器學(xué)習(xí)將防止全球變暖”,顯然只有中國(guó)的新聞媒體才會(huì)發(fā)布類似的虛假新聞,可能機(jī)器學(xué)習(xí)能夠識(shí)別虛假新聞吧(與分類算法有關(guān))?事實(shí)上,機(jī)器學(xué)習(xí)還真的可以呢!
那么機(jī)器學(xué)習(xí)能做點(diǎn)什么呢?你又將怎樣發(fā)現(xiàn)呢?如果你已經(jīng)使用了Apache Spark進(jìn)行批處理和流處理,那么現(xiàn)在有一東西可以幫你更好地處理。有一個(gè)你在用Spark SQL和Spark流處理的時(shí)候很可能同時(shí)用到的東西,就是Spark MLlib,Spark MLlib是一個(gè)API形式的機(jī)器學(xué)習(xí)庫(kù)和統(tǒng)計(jì)算法。
下面簡(jiǎn)要介紹一下四種最基本的MLlib APIs,主要包括它們的作用和應(yīng)用。
統(tǒng)計(jì)算法
這些API主要是用來(lái)進(jìn)行A-B檢驗(yàn)或者A-B-C檢驗(yàn)。通常在商業(yè)中,我們認(rèn)為,如果兩個(gè)東西的平均值相等,那么這兩個(gè)東西就大體相當(dāng)了。其實(shí)不一定。試想一下,一個(gè)汽車制造商換掉汽車座椅之后,做一個(gè)關(guān)于座椅舒適度的調(diào)查。對(duì)于個(gè)子矮小的用戶來(lái)說(shuō),他們可能覺(jué)得座椅更舒服了,但是對(duì)于個(gè)子高大的用戶來(lái)說(shuō),他們可能會(huì)覺(jué)得非常不舒服,以至于放棄購(gòu)買(mǎi)汽車,而個(gè)子中等的用戶剛好平衡了這個(gè)差異。通常,新座椅也許要更舒服一些,但是,如果沒(méi)有身高超過(guò)6英尺的用戶購(gòu)買(mǎi)的話,我們還是失敗了。根據(jù)Spark的假設(shè)測(cè)試,你可以先做一個(gè)皮爾遜卡方值檢驗(yàn)或者一個(gè)柯?tīng)柲陕宸?斯米洛夫檢驗(yàn),先測(cè)試一下某個(gè)東西的“合適程度”,或者它的取值是否符合“正態(tài)分布”。這種方法基本適用于所有需要比較兩串?dāng)?shù)據(jù)的情況。“合適程度”表明“你是否喜歡”,或者說(shuō)新算法是否達(dá)到了“優(yōu)于”舊算法的目的。趕緊報(bào)名參加Coursera的基礎(chǔ)統(tǒng)計(jì)課程吧。
分類算法
你的屬性是什么?如果你手頭有一堆屬性不同的東西,你可以讓電腦對(duì)這些東西進(jìn)行正確的歸類。這里的技巧就是要把各個(gè)屬性對(duì)應(yīng)到各個(gè)“類”,而對(duì)于這個(gè)分類,并沒(méi)有標(biāo)準(zhǔn)的正確答案,錯(cuò)誤答案倒是不少。如果你認(rèn)為某人在看一組表格并把它們歸類,這就是分類算法。你在使用垃圾郵件過(guò)濾器時(shí)就已經(jīng)接觸過(guò)分類算法了,垃圾郵件過(guò)濾器就是過(guò)濾掉包含垃圾郵件中常見(jiàn)詞語(yǔ)的郵件。分類算法還可以用來(lái)診斷患者病情或用來(lái)預(yù)測(cè)哪些用戶有可能取消訂購(gòu)有線廣播電視(一般是不看體育節(jié)目的人)。從本質(zhì)上來(lái)說(shuō),分類學(xué)習(xí)是基于過(guò)去的數(shù)據(jù)標(biāo)簽,然后把這些標(biāo)簽應(yīng)用到未來(lái)的發(fā)展預(yù)測(cè)。在Coursera的機(jī)器學(xué)習(xí)專業(yè)化中,有一門(mén)專門(mén)針對(duì)分類學(xué)習(xí)的課程,7月10開(kāi)始開(kāi)課,現(xiàn)在報(bào)名參加應(yīng)該也來(lái)得及。
聚類算法
當(dāng)你跟一個(gè)人討論“機(jī)器學(xué)習(xí)”的時(shí)候,如果對(duì)方只能說(shuō)出k-means算法,那說(shuō)明他只看過(guò)“小抄”,什么都不懂。如果你手上有一組屬性,你可以找到一些關(guān)鍵點(diǎn)把這些屬性歸為各個(gè)類中,這就是聚類算法。你能說(shuō)出各個(gè)不同類之間的區(qū)別,但是也有可能有些類是比較接近的。有可能一個(gè)大的東西和一個(gè)小的東西被歸為了同一類,而另一個(gè)更小的東西卻被歸為了大的一類。再加上其他各種復(fù)雜的屬性和不同的維度,所以其實(shí)聚類算法也有很多種。聚類算法和分類算法不同,但是聚類算法經(jīng)常用來(lái)對(duì)一群人分組,二者最大的區(qū)別在于,在聚類算法中,我們不知道集群前面的標(biāo)簽(或組)是什么,而在分類算法中,標(biāo)簽就很明確了。客戶細(xì)分是一個(gè)常見(jiàn)的應(yīng)用,不同的客戶有不一樣的喜好特點(diǎn),比如可以把客戶分成信用組、保留風(fēng)險(xiǎn)組或購(gòu)買(mǎi)組(對(duì)于新鮮農(nóng)產(chǎn)品或熟食),但是也有可能要根據(jù)已有數(shù)據(jù)進(jìn)行詐騙識(shí)別的分類。Coursera上有專門(mén)講解聚類算法的講座系列,沒(méi)錯(cuò),他們確實(shí)有包括k-means算法,但有點(diǎn)詭異的是,有一半的教授是漂浮在黑板表面的(你去看了之后就知道我在說(shuō)什么了)。
協(xié)同過(guò)濾算法
好吧,協(xié)同過(guò)濾算法是一種大眾化的算法。我們公司就用協(xié)同過(guò)濾算法去提高搜索結(jié)果的精確度,我還做過(guò)一個(gè)相關(guān)的講座,如果有足夠多的人點(diǎn)擊第二張貓的照片,那它一定比第一張貓的圖片好。在一個(gè)社交或電子商務(wù)環(huán)境中,如果你充分運(yùn)用各種用戶的“喜歡”和“不喜歡”,你就可以找到出對(duì)于大部分用戶或者某一特定用戶群體來(lái)說(shuō)“最好的”結(jié)果,這是通過(guò)個(gè)性化系統(tǒng)的多屬性過(guò)濾來(lái)實(shí)現(xiàn)的,例如,當(dāng)你在Google地圖或Yelp上搜索餐廳(你可以根據(jù)服務(wù)質(zhì)量、食物種類、內(nèi)部風(fēng)格、是否適合小孩、是否有情調(diào)、用戶評(píng)論和消費(fèi)水平等等進(jìn)行過(guò)濾)時(shí)使用的就是這個(gè)原理。斯坦福大學(xué)機(jī)器學(xué)習(xí)課程有關(guān)于協(xié)同過(guò)濾算法的專題講座,7月10日開(kāi)課(現(xiàn)在也還可以報(bào)名)。
上述并不是關(guān)于機(jī)器學(xué)習(xí)的所有算法,但也算是使用過(guò)程中最常見(jiàn)的幾種算法了。以上四個(gè)大類中,每一類中都包含好幾個(gè)可選算法或者衍生算法,那要選哪個(gè)呢?好吧,具體選用哪一種算法是考慮數(shù)學(xué)背景、實(shí)驗(yàn)過(guò)程和已知數(shù)據(jù)等各種因素的綜合結(jié)果。記住,這些算法都只是你分析問(wèn)題的工具而已,也有可能使用這些算法之后得到的是沒(méi)有用的結(jié)果。
非常好我支持^.^
(0) 0%
不好我反對(duì)
(0) 0%
下載地址
Spark機(jī)器學(xué)習(xí)庫(kù)的各種機(jī)器學(xué)習(xí)算法下載
相關(guān)電子資料下載
- 如何創(chuàng)建FPGA控制的機(jī)器人手臂 49
- 機(jī)器學(xué)習(xí)需要掌握的九種工具盤(pán)點(diǎn) 16
- Hugging Face被限制訪問(wèn) 404
- 《人工智能在指揮和控制系統(tǒng)中的決策支持》 133
- 生成式人工智能和機(jī)器學(xué)習(xí)正在這9個(gè)學(xué)科中打造未來(lái) 216
- 智慧礦山AI算法帶你解決皮帶運(yùn)行難題! 51
- 人工智能領(lǐng)域存在第一性原理嗎? 53
- 英特爾啟動(dòng)首個(gè)AI PC加速計(jì)劃,目標(biāo)2025年前為超100萬(wàn)臺(tái)PC提供AI特性 223
- PLC就是邏輯控制嗎?PLC的網(wǎng)絡(luò)通信怎么樣? 51
- 機(jī)器學(xué)習(xí)常用的5種采樣方法盤(pán)點(diǎn) 45