一周入門機(jī)器學(xué)習(xí)靠譜嗎?這有一份詳細(xì)的學(xué)習(xí)日程表
原作者 | Per Harald Borgen
編譯 | 魏子敏,賴小娟,張禮俊
“對(duì)外行來(lái)說(shuō),想要入門機(jī)器學(xué)習(xí)可能是個(gè)不可完成的任務(wù)。然而,在沉溺于一周的機(jī)器學(xué)習(xí)基礎(chǔ)學(xué)習(xí)之后,我發(fā)現(xiàn)它比我之前想象的更容易理解。” |
這篇文章來(lái)自于medium,一位作者親歷了一周入門機(jī)器學(xué)習(xí)后,分享他的“從下到上”的學(xué)習(xí)經(jīng)驗(yàn)給各位,希望給那些有興趣入門機(jī)器學(xué)習(xí)的讀者一個(gè)容易上手的詳細(xì)日程表。
背景
在我開(kāi)始我的機(jī)器學(xué)習(xí)周之前,我已經(jīng)了解這個(gè)項(xiàng)目一段時(shí)間了,瀏覽了一半Coursera上Andrew NG的課程和其他一些理論性課程。雖然我還不能完全將我的知識(shí)轉(zhuǎn)化成代碼,但對(duì)機(jī)器學(xué)習(xí)已經(jīng)有了大致的概念理解。這也是促使我想改變的原因。
我想要一周結(jié)束之時(shí)有能力解決機(jī)器學(xué)習(xí)的問(wèn)題,雖然這意味著會(huì)跳過(guò)很多基礎(chǔ)知識(shí),使用從上到下的學(xué)習(xí)方法代替從底層到高層的方式。
在征得Hacker News的意見(jiàn)之后,我總結(jié)出Python的Scikit Learn模型是最好的開(kāi)始入口點(diǎn)。這個(gè)模型提供了豐富的算法可供選擇,將機(jī)器學(xué)習(xí)實(shí)戰(zhàn)降低在數(shù)十行代碼之內(nèi)。
星期一:實(shí)例學(xué)習(xí)
在一周的開(kāi)始,我去尋找一些Scikit Learn的視頻教學(xué),最后我選擇了Sentdex的關(guān)于怎么樣用機(jī)器學(xué)習(xí)投資股票的輔導(dǎo)視頻,這個(gè)視頻給了我繼續(xù)下一步學(xué)習(xí)的必要知識(shí)。
Sentdex輔導(dǎo)視頻比較好的一方面是導(dǎo)師展示了關(guān)于數(shù)據(jù)收集的所有步驟。當(dāng)你們順著再往下學(xué)習(xí),你們會(huì)意識(shí)到獲取和清洗數(shù)據(jù)的時(shí)間會(huì)比實(shí)際機(jī)器學(xué)習(xí)操作的時(shí)間還要多很多。因此有能力寫(xiě)出腳本從文件和網(wǎng)頁(yè)上抓取到數(shù)據(jù)是成為機(jī)器學(xué)習(xí)專家的必要技能。
之后我還反復(fù)看了好幾遍這個(gè)視頻,在我被問(wèn)題卡住的時(shí)候很有幫助,建議你們也多看幾遍。然而,如果你已經(jīng)知道怎么從網(wǎng)站上獲得數(shù)據(jù),這個(gè)教程可能不是最合適的,大段大段的圍繞著數(shù)據(jù)的獲取。Udacity的機(jī)器學(xué)習(xí)入門教程或許更適合你。
星期二:實(shí)際問(wèn)題中的應(yīng)用
星期二我想看看我是不是可以用我學(xué)到的東西去解決一個(gè)實(shí)際的問(wèn)題。由于和我合作寫(xiě)代碼的另一個(gè)開(kāi)發(fā)人員正在參加英格蘭銀行的數(shù)據(jù)可視化競(jìng)賽,我跟他一起合作查看了銀行公布的數(shù)據(jù)集。最有趣的數(shù)據(jù)是關(guān)于他們房屋調(diào)查,一個(gè)由銀行完成的基于幾千個(gè)家庭關(guān)于錢的相關(guān)主題的年度調(diào)查。
我們決定解決的問(wèn)題如下:
給出一個(gè)人的教育水平、年齡和收入,計(jì)算機(jī)可以預(yù)測(cè)到其性別么?
我跟數(shù)據(jù)集周旋,花了幾個(gè)小時(shí)清洗數(shù)據(jù),然后用Scikit Learn圖找到最適合這個(gè)問(wèn)題的算法。
最后我們以大概63%的成功率結(jié)束,并不是很理想。但是機(jī)器至少可以做到猜出的概率稍大于成功率在50%的拋硬幣。
看到成果會(huì)激發(fā)你們的動(dòng)力,所以我建議你們一旦對(duì)怎么使用Scikit Learn有一個(gè)基本掌握,可以自己試試。
當(dāng)你意識(shí)到你能夠開(kāi)始用機(jī)器學(xué)習(xí)解決真實(shí)生活問(wèn)題時(shí),這是一個(gè)關(guān)鍵的時(shí)刻。
星期三:從頭開(kāi)始
在嘗試過(guò)不同Scikit Learn模型之后,我決定試著去徹底地寫(xiě)一個(gè)線性回歸算法。之所以想這樣做,雖因?yàn)槲矣X(jué)得我實(shí)在不明白計(jì)算引擎是如何運(yùn)行的。
幸運(yùn)地,Coursera上有關(guān)于幾個(gè)算法如何執(zhí)行的課程,在這個(gè)時(shí)候幫了大忙。更具體地說(shuō),它描述了線性回歸的基礎(chǔ)概念。
這絕對(duì)是最有效的機(jī)器學(xué)習(xí)技術(shù),它迫使你去明白“引擎之下”的每一步是如何前行的。我強(qiáng)烈推薦你在某些時(shí)刻這樣去做。
當(dāng)我繼續(xù)往下學(xué)的時(shí)候我計(jì)劃重寫(xiě)更復(fù)雜的實(shí)現(xiàn)算法,但是我想在嘗試Scikit Learn相關(guān)算法之后再做這些。
星期四:開(kāi)始實(shí)現(xiàn)
在星期四的時(shí)候,我開(kāi)始實(shí)現(xiàn)一些Kaggle的入門教程。Kaggle是一個(gè)機(jī)器學(xué)習(xí)競(jìng)賽的平臺(tái),你可以給那些公司或機(jī)構(gòu)的發(fā)布的問(wèn)題提交解決方案。
我建議你在有了對(duì)機(jī)器學(xué)習(xí)一定的理論和實(shí)踐理解之后再嘗試Kaggle。否則,帶給你比獎(jiǎng)勵(lì)更多的是沮喪。
為了提交你的方案到競(jìng)賽平臺(tái)上,詞袋教程會(huì)指導(dǎo)你每一步驟,以及一個(gè)簡(jiǎn)單而又讓人興奮的對(duì)自然語(yǔ)言處理過(guò)程的介紹。當(dāng)我看完教程之后對(duì)自然語(yǔ)言處理過(guò)程有了更多的興趣。
星期五:重回學(xué)校
星期五,我繼續(xù)研究Kaggle的教程,也開(kāi)始了Udacity的機(jī)器學(xué)習(xí)入門教程。雖然我還在學(xué)習(xí)中段,但是發(fā)現(xiàn)它真的很令人享受。
它比Coursera上面的課程要簡(jiǎn)單很多,它不會(huì)涉及到算法底層。但是實(shí)用性更高,它教你使用Scikit Learn。比起你在Coursera上面從頭開(kāi)始用Octave寫(xiě)一個(gè)算法來(lái)說(shuō),應(yīng)用算法到實(shí)際世界中簡(jiǎn)單太多。
繼續(xù)前行
一周的體驗(yàn)不僅僅是許多的樂(lè)趣,它可以幫我們意識(shí)到機(jī)器學(xué)習(xí)在社會(huì)上的用處。我學(xué)到關(guān)于它的東西越多,就看到它可以用于越多的領(lǐng)域中。
如果你對(duì)機(jī)器學(xué)習(xí)感興趣,我強(qiáng)烈建議你花幾天或晚上對(duì)它進(jìn)行簡(jiǎn)單的了解。
如果你還沒(méi)準(zhǔn)備好應(yīng)對(duì)繁重的素材資料,你可以選擇一個(gè)至上而下的方法,盡快地在解決實(shí)際問(wèn)題中學(xué)習(xí)。
來(lái)源:
https://medium.com/learning-new-stuff/machine-learning-in-a-week-a0da25d59850#.qw3zmizf9
【本文是51CTO專欄機(jī)構(gòu)大數(shù)據(jù)文摘的原創(chuàng)譯文,微信公眾號(hào)“大數(shù)據(jù)文摘( id: BigDataDigest)”】