摘要:是為結(jié)果導(dǎo)向型人群開設(shè)的深度學(xué)習(xí)在線課程。但是最關(guān)鍵的是,我想通過構(gòu)建簡單的深度學(xué)習(xí)解決方案來實(shí)現(xiàn)理論和實(shí)踐的相結(jié)合。我的目標(biāo)是在一天結(jié)束前進(jìn)入排名的前。我的時(shí)間都用于學(xué)習(xí)庫組織數(shù)據(jù)和評估結(jié)果都是一些與深度學(xué)習(xí)無關(guān)的簡單流程。
Fast.ai是Jeremy Howard為結(jié)果導(dǎo)向型人群開設(shè)的深度學(xué)習(xí)在線課程。
我讀過很多關(guān)于機(jī)器學(xué)習(xí)的書,也參加過不少這方面的課程,但我認(rèn)為Fast.ai是迄今為止實(shí)用的深度學(xué)習(xí)入門課程。在本文中,我將與大家分享我在學(xué)完前兩課后的一些經(jīng)驗(yàn)。
從數(shù)學(xué)開始學(xué)習(xí)人工智能是個(gè)錯(cuò)誤的選擇
22年前,我在斯坦福大學(xué)學(xué)習(xí)Bernie Widrow的神經(jīng)網(wǎng)絡(luò)課程,這位數(shù)字濾波器之父諄諄善誘,向我們講解隨機(jī)梯度下降的原理。
學(xué)了一半的理論課程,我還是不能完成神經(jīng)網(wǎng)絡(luò)的實(shí)現(xiàn),只學(xué)會了如何用MatLab構(gòu)建神經(jīng)網(wǎng)絡(luò)。后來,當(dāng)我需要編寫代碼來訓(xùn)練我的網(wǎng)絡(luò)權(quán)重時(shí),我才終于理解了什么是隨機(jī)梯度下降。
不過,這種窘境到現(xiàn)在也并未發(fā)生多大變化。大多數(shù)機(jī)器學(xué)習(xí)實(shí)戰(zhàn)工程師都有著學(xué)術(shù)背景;當(dāng)專業(yè)程序員問他們 “我該如何開始學(xué)習(xí)人工智能?”,多數(shù)工程師會向他們推薦一些偏重?cái)?shù)學(xué)的學(xué)習(xí)資料,比如《深度學(xué)習(xí)》這本書(這種情況時(shí)有發(fā)生)。
對研究人員而言,Ian Goodfellow的這本書是一本很好的參考書,但對我們中的大多數(shù)人而言它并不是一本好的入門書籍。這本書關(guān)于梯度下降的章節(jié)使我回想起讀研究生時(shí)遇到的窘境:
上圖為Goodfellow等人所著的《深度學(xué)習(xí)》中關(guān)于梯度下降的一頁。這本書有很好的研究參考價(jià)值,但是對專業(yè)程序員而言,并不是一本實(shí)用的入門書。我在圣誕節(jié)期間讀完了本書三分之二的內(nèi)容,但我還是不會構(gòu)建神經(jīng)網(wǎng)絡(luò)。
對于研究人員或者人工智能前沿的推進(jìn)而言,理解理論是至關(guān)重要的一步。但是,對于大多數(shù)人工智能商業(yè)應(yīng)用而言,數(shù)學(xué)是個(gè)很大的干擾。
為什么?因?yàn)槠髽I(yè)面臨著一些更為嚴(yán)峻的挑戰(zhàn),例如選擇正確的問題,組織數(shù)據(jù),部署解決方案等。面對市場風(fēng)險(xiǎn)和執(zhí)行風(fēng)險(xiǎn),專業(yè)程序員不得不使用成熟的技術(shù)來開發(fā)應(yīng)用——因此,懂得如何實(shí)現(xiàn)某一解決方案要比理解該方案的工作原理更為重要。
光讀不練假把式,必須實(shí)踐。
學(xué)習(xí)新技能的方法就是:使用該技能練習(xí)構(gòu)建。深度學(xué)習(xí)也一樣, JeremyHoward的Fast.ai課程注重實(shí)踐,是學(xué)習(xí)人工智能最快的方法。
Fast.ai讓你通過實(shí)踐學(xué)習(xí)深度學(xué)習(xí)
課程的聯(lián)合創(chuàng)始人Jeremy Howard和Rachel Thomas實(shí)現(xiàn)了他們的承諾——“讓所有人都能運(yùn)用機(jī)器學(xué)習(xí)的力量”。本文不對課程進(jìn)行描述,我會推薦你閱讀學(xué)習(xí)者對該課程的評論并分享我早期的經(jīng)驗(yàn)。
我為什么決定參加這個(gè)課程
在參加該課程之前,我已具備良好的深度學(xué)習(xí)理論基礎(chǔ),并掌握了該技術(shù)各種應(yīng)用的實(shí)踐知識。我參加這個(gè)課程是為了獲得更多實(shí)踐經(jīng)驗(yàn)。
構(gòu)建簡單的解決方案能幫我更加有效地籌劃項(xiàng)目、雇用項(xiàng)目人員和進(jìn)行工程學(xué)權(quán)衡——這是任何領(lǐng)導(dǎo)者都須具備的技能。
但是最關(guān)鍵的是,我想通過構(gòu)建簡單的深度學(xué)習(xí)解決方案來實(shí)現(xiàn)理論和實(shí)踐的相結(jié)合。
如何建立一個(gè)算法來檢測入侵物種
在一天內(nèi)能達(dá)到什么樣的水平?
學(xué)完前兩課后,我決定參加Kaggle比賽。
我的目標(biāo)是:
在一天結(jié)束前進(jìn)入排名的前50%。
自己動手編寫每行代碼,不用剪切和粘貼。
了解所有引用的庫和API。
我選擇了“入侵物種監(jiān)測”競賽(Invasive Species Monitoring playground competition)。 這是一個(gè)比較簡單的分類問題,對初學(xué)者而言算是一個(gè)很好的起點(diǎn)。
還有,它聽起來就很有趣。
上圖為 “入侵物種監(jiān)測Kaggle競賽”中入侵性繡球花(繡球花:一種植物的分類)。
比賽的內(nèi)容是開發(fā)出識別森林和葉子圖像中是否包含入侵性性繡球花的算法。
早上七點(diǎn),我沏了一壺咖啡后開始工作,在亞馬遜AWS上對GPU進(jìn)行了加速。晚上9點(diǎn),我的眼睛開始酸痛,我的大腦跟炸了一樣。
我決定將我的結(jié)果提交給Kaggle……
我的代碼
這是我在github上的完整筆記,里面記錄了我工作計(jì)劃的7個(gè)步驟
不用對我的代碼感到驚訝——我使用的方法與課堂上學(xué)習(xí)的方法類似。任何一個(gè)具有1年工作經(jīng)驗(yàn)(或以上)的程序員應(yīng)該都能寫出這樣的代碼。
我90%的時(shí)間都用于學(xué)習(xí)庫、組織數(shù)據(jù)和評估結(jié)果——都是一些與深度學(xué)習(xí)無關(guān)的簡單流程。
驗(yàn)證結(jié)果
我使用90%的圖像訓(xùn)練我的算法,并用剩余的10%來驗(yàn)證結(jié)果。
預(yù)測精度
我的預(yù)測精度達(dá)到了91%。這是混淆矩陣:
混淆矩陣顯示了我的算法檢測驗(yàn)證集的有效性。 最需要改進(jìn)的的地方是漏報(bào)問題——在12個(gè)實(shí)例中算法錯(cuò)誤地將入侵物種識別為非入侵物種。 您可以在下方查看該結(jié)果。
91%是什么概念? 就在3年前,較先進(jìn)的計(jì)算機(jī)視覺識別技術(shù)也只能達(dá)到80%!我在第一次嘗試中就超越了它。
包含花的圖像被正確識別
我檢查了被算法正確識別的圖像。大藍(lán)色繡球花似乎是關(guān)鍵特征。
某些被錯(cuò)誤識別的圖像存在明顯問題
這個(gè)算法錯(cuò)誤地識別了18個(gè)圖像。 這是算法需要改進(jìn)的地方。
漏報(bào)的圖像似乎是未被正確識別的小花。 我認(rèn)為通過裁剪照片生成更多標(biāo)記樣本,可以改善算法的結(jié)果。
勝利! 我進(jìn)入了前50%!
在我的第一次嘗試中,我在52位參賽者中排名第21,進(jìn)入前50%。
目標(biāo)達(dá)成!
我在一天內(nèi)進(jìn)入了排名的前50%。
沒有較好只有更好。
Fast.ai是否適合你?
如果你的目標(biāo)是加入Open.ai團(tuán)隊(duì)或贏得ImageNet競賽,那么Fast.ai課程并不十分適合你,因?yàn)槟阈枰獙W(xué)習(xí)偏導(dǎo)函數(shù)。
但對于其他人,比如想要獲得實(shí)用的基礎(chǔ)知識介紹的團(tuán)隊(duì)領(lǐng)導(dǎo),希望學(xué)習(xí)深度學(xué)習(xí)工程師入門知識的專業(yè)程序員,想知道如何開發(fā)AI spec的產(chǎn)品經(jīng)理,或者任何想對一噸樂高進(jìn)行分類的人員來說,F(xiàn)ast.ai是個(gè)很好的開始。
相關(guān)鏈接
GitHub地址
https://github.com/kevindewalt/ai-notebooks/blob/master/invasive_species.ipynb
Fast.ai深度學(xué)習(xí)課程地址(英文)
http://course.fast.ai/
Invasive Species Monitoring
https://www.kaggle.com/c/invasive-species-monitoring
原文地址
https://medium.com/the-business-of-ai/fast-ai-how-i-built-a-deep-learning-application-to-detect-invasive-species-in-just-1-day-and-for-38e0ced809e9
歡迎加入本站公開興趣群商業(yè)智能與數(shù)據(jù)分析群
興趣范圍包括各種讓數(shù)據(jù)產(chǎn)生價(jià)值的辦法,實(shí)際應(yīng)用案例分享與討論,分析工具,ETL工具,數(shù)據(jù)倉庫,數(shù)據(jù)挖掘工具,報(bào)表系統(tǒng)等全方位知識
QQ群:81035754
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/4555.html
摘要:你是如何開始參加比賽的正如之前所說的,我一直在閱讀大量機(jī)器學(xué)習(xí)和深度學(xué)習(xí)方面的書籍和論文,但發(fā)現(xiàn)很難將我學(xué)到的算法應(yīng)用于小型數(shù)據(jù)集。機(jī)器學(xué)習(xí)中,你對哪個(gè)子領(lǐng)域最感興趣我對深度學(xué)習(xí)的各種進(jìn)步都很感興趣。 showImg(https://segmentfault.com/img/bVboxKz?w=800&h=600); 作者 Kaggle Team中文翻譯 MikaCDA 數(shù)據(jù)分析師...
摘要:年月日,機(jī)器之心曾經(jīng)推出文章為你的深度學(xué)習(xí)任務(wù)挑選最合適從性能到價(jià)格的全方位指南。如果你想要學(xué)習(xí)深度學(xué)習(xí),這也具有心理上的重要性。如果你想快速學(xué)習(xí)深度學(xué)習(xí),多個(gè)廉價(jià)的也很好。目前還沒有適合顯卡的深度學(xué)習(xí)庫所以,只能選擇英偉達(dá)了。 文章作者 Tim Dettmers 系瑞士盧加諾大學(xué)信息學(xué)碩士,熱衷于開發(fā)自己的 GPU 集群和算法來加速深度學(xué)習(xí)。這篇博文最早版本發(fā)布于 2014 年 8 月,之...
摘要:在這里我分享下我個(gè)人入門機(jī)器學(xué)習(xí)的經(jīng)歷,希望能對大家能有所幫助。相關(guān)學(xué)習(xí)鏈接,,入門后的體驗(yàn)在入門了機(jī)器學(xué)習(xí)之后,在實(shí)際工作中,絕大多數(shù)的情況下你并不需要去創(chuàng)造一個(gè)新的算法。 機(jī)器學(xué)習(xí)在很多眼里就是香餑餑,因?yàn)闄C(jī)器學(xué)習(xí)相關(guān)的崗位在當(dāng)前市場待遇不錯(cuò),但同時(shí)機(jī)器學(xué)習(xí)在很多人面前又是一座大山,因?yàn)榘l(fā)現(xiàn)它太難學(xué)了。在這里我分享下我個(gè)人入門機(jī)器學(xué)習(xí)的經(jīng)歷,希望能對大家能有所幫助。 PS:這篇文章...
閱讀 976·2021-11-24 10:42
閱讀 3524·2021-11-19 11:34
閱讀 2660·2021-09-29 09:35
閱讀 2544·2021-09-09 09:33
閱讀 690·2021-07-26 23:38
閱讀 2535·2019-08-30 10:48
閱讀 1400·2019-08-28 18:07
閱讀 434·2019-08-26 13:44