学习AI可能不需要那么多数学知识:20小时进阶计划
這里還有一個關(guān)于AI不為人知的小秘密:
事實(shí)上你不需要儲備那么多的數(shù)學(xué)知識才能開始使用AI。
如果你是一名開發(fā)人員或系統(tǒng)管理員,你可能早已使用了很多你所了解的庫和框架。為了使用curl(一個廣泛使用的用來上傳和下載的命令行工具),其實(shí)你不必了解網(wǎng)站檢索內(nèi)部如何工作。AI也是如此。有很多框架和項(xiàng)目可以幫助你快速地使用AI算法,而不需要你成為一名數(shù)據(jù)科學(xué)博士。?
不要誤會我的意思。數(shù)學(xué)有助于你對算法背后發(fā)生的事情有所了解。借助它,你可以閱讀研究類論文,當(dāng)看到像Ian Goodfellow著作的深度學(xué)習(xí)一類高級書籍時,不會毫無頭緒。但是,如果你想開始使用AI,你可以今天就開始。
讓我們從一些實(shí)際的項(xiàng)目來開始做起。
我的學(xué)習(xí)方法與“第一個二十小時”中概述的優(yōu)秀方法非常相似。我們都知道一萬小時定律。要真正掌握一門技能,你需要投入大量時間。但我們只是剛剛開始。現(xiàn)在我們試圖通過初次嘗試來發(fā)現(xiàn)它的樂趣!
方法很簡單:
-
選擇一個項(xiàng)目;
-
克服自己一定會失敗的想法;
-
進(jìn)行各種嘗試并從失敗中快速學(xué)習(xí)
-
實(shí)踐。
很容易吧?所以讓我們開始!
選擇一個項(xiàng)目
首先你需要一個項(xiàng)目來激勵你離開舒適區(qū)。
一個有一百萬美元獎金并且可能對肺癌研究產(chǎn)生影響的項(xiàng)目聽起來如何?
Kaggle是你可以找到機(jī)器學(xué)習(xí)項(xiàng)目的地方。現(xiàn)在他們正在舉辦一場價值100萬美元的競賽來改善肺癌病變的分類。任何人都可以加入,包括你。
現(xiàn)在我知道你在想:我絕對沒有機(jī)會贏。這是一個聚集了最優(yōu)秀機(jī)器學(xué)習(xí)從業(yè)者的比賽。很高興你想到這里,因?yàn)榘盐覀儙У搅说诙?#xff1a;
克服自己一定會失敗的想法
學(xué)習(xí)任何新事物最重要的一步是盡可能地關(guān)掉頭腦中自我懷疑的聲音。“第一個二十小時”主張通過嘗試消除干擾,根據(jù)時間制定訓(xùn)練計劃和一些其他方法,例如冥想,自我肯定或適度飲酒等,做只要能讓聲音消失,讓你可以專注的事。如果你需要一本自我?guī)椭臅鴣矸竭@一障礙,請嘗試“You are a Badass”,一部有趣、滑稽和充滿諷刺意味的杰作。
就是這種情形:你現(xiàn)在感覺糟糕透了。但是沒關(guān)系,你不會這樣感覺很久。 ?
第一階段的學(xué)習(xí)總是會感到困惑和沮喪。所以,不要和自己過意不去,這表明你在正確的軌道上。你正在學(xué)東西,你很棒!你可能不會贏得比賽,但那又怎樣?專注于在截止日期之前提交一份證明你實(shí)力的報告。不是每個人都可以贏得一場馬拉松比賽,但是完成一場比賽本身就是一種成就,對嗎?
你知道嗎?你可能會贏。我是認(rèn)真的。
作為業(yè)余愛好者,你不會像專業(yè)人士一樣被多年的理論想法所束縛。只要記住這個關(guān)于學(xué)生的故事,他在黑板上看到了兩個看似無法解決的數(shù)學(xué)問題,誤以為是作業(yè),然后解了出來。事實(shí)上數(shù)據(jù)科學(xué)較于科學(xué)更似藝術(shù)。這是一個吸引了各種各樣學(xué)科背景的博學(xué)者聚集的領(lǐng)域。所以放手去試試你能做些啥把。
誰知道會發(fā)生什么??
也許你會發(fā)現(xiàn)連專家都錯過的東西;真真切切地影響到癌癥檢測,并將這筆可觀的收益帶回家。
進(jìn)行各種嘗試并從失敗中快速學(xué)習(xí)
如果你是一個開發(fā)人員,你就會知道這個口頭禪。同樣適用于學(xué)習(xí)。我的做法是找出有代表性的書,快速瀏覽他們,看看哪些對我來說是最有意義的。每個人都有不同的口味,所以有些書適合于一個人而其他人卻不喜歡。選最適合你的那個。
現(xiàn)在已經(jīng)有一些關(guān)于機(jī)器學(xué)習(xí)的書,像“Real World Machine Learning”。不幸的是,由于這是個新興領(lǐng)域,大部分的書籍今年才剛剛出現(xiàn)。你可以去預(yù)訂“Deep Learning: A Practitioners Approach?”或“Hands-on Machine Learning with Scikit-Learn and Tensorflow”。
但你不必等待。這里我推薦Safari Books Online。你可以使用現(xiàn)成工具來快速學(xué)習(xí)如何應(yīng)用深度學(xué)習(xí),這樣你才能在比賽項(xiàng)目里用上。 ?
你要一起使用Kera與?TensorFlow或者Theano,都可以。
你甚至不需要自己設(shè)置。試試github上這個非常棒的一體式深度學(xué)習(xí)Docker映射。(https://docs.docker.com/get-started/#prerequisites)
坦白的說,無論你使用TensorFlow還是Theano都沒關(guān)系。它們本質(zhì)上都是運(yùn)行機(jī)器學(xué)習(xí)的引擎。在你現(xiàn)階段的水平上,兩者幾乎是一樣的,所以選擇一個即可。
Keras是由一流的Google AI研究人員創(chuàng)建的機(jī)器學(xué)習(xí)框架庫。本周末,我有幸地遇見了Keras的創(chuàng)始人Francois Chollet。他把Keras形容為“AI民主化”的關(guān)鍵,他提到“深度學(xué)習(xí)是成熟的,但還沒有被廣泛傳播……你不必是AI研究員才去使用Keras”。而是可以馬上開始使用各種各樣最先進(jìn)的技術(shù)算法。
如果你已經(jīng)有了一個Mac或者是Linux的設(shè)備以及英偉達(dá)顯卡那么你將可以繼續(xù)了。如果沒有,請考慮挑選一款戴爾的外星人。我推薦中檔Aurora系列。你并不需要一個強(qiáng)大的處理器,而是一個SSD、備用磁盤來轉(zhuǎn)存數(shù)據(jù)、16-64GB的內(nèi)存和最好的英偉達(dá)顯卡。你該將你所有的現(xiàn)金集中花費(fèi)在顯卡上,因?yàn)樗麄冋娴目梢约铀偕疃葘W(xué)習(xí)的速度。你進(jìn)一步需要使用Linux重新格式化并獲取最新的二進(jìn)制驅(qū)動程序。不幸的是,開源軟件并不會在你最新的芯片組工作得很好,但及有可能會引起黑屏。你可以參考這個鏈接解決。(https://askubuntu.com/questions/760934/graphics-issues-after-while-installing-ubuntu-16-04-16-10-with-nvidia-graphics)
如果你想自己動手,還有一些教程(https://medium.com/@acrosson/building-a-deep-learning-box-d17d97e2905c)可以幫助于建好需要的設(shè)備。另外,我剛剛在第三部分添加了自己的教程!最后,你可以使用AWS,Google或者Azure cloud,但GPU在云計算里快起來會很貴。在你知道你在做什么之前,購買設(shè)備才比租賃更合適。
實(shí)踐
現(xiàn)在你準(zhǔn)備好開始了。以下是使用Keras入門的超簡單示例。你將需要一個進(jìn)行比賽的方法。再一次我會為你節(jié)省一些時間。目前最有效的標(biāo)記和研究圖像的方法是廣為人知的卷積神經(jīng)網(wǎng)絡(luò)(CNN)。Google, Facebook, Pinterest和Amazon都使用它們進(jìn)行圖像處理和標(biāo)記。你也可以從實(shí)踐中最好的算法開始吧?
實(shí)際上,如果你直奔競賽本身,獲取數(shù)據(jù)集,并查看該教程(https://www.kaggle.com/c/data-science-bowl-2017/details/tutorial),你將會看到它會引導(dǎo)你切割圖像并使用搭有Keras和TensorFlow后端的CNN。瞧!你幾周可能做的僅僅是實(shí)施教程還不得不把參數(shù)調(diào)來調(diào)去,但可以看看你收獲了什么。
隨后一切會變得瘋狂。在數(shù)據(jù)上使用不同的參數(shù)和算法。做實(shí)驗(yàn)和尋找樂趣。也許你會偶然發(fā)現(xiàn)專家錯失的東西!
如果你準(zhǔn)備嘗試更高級的內(nèi)容,那么在the Kaggle Data Science Bowl 2017 board(Kaggle數(shù)據(jù)科學(xué)超級碗2017, https://www.kaggle.com/c/data-science-bowl-2017/kernels)上有一些很棒的帖子。事實(shí)證明,數(shù)據(jù)科學(xué)家們并沒有超越他們分享的秘笈。查看這一個(https://www.kaggle.com/anokas/data-science-bowl-2017/exploratory-data-analysis),它是一系列匿名檢查者的CT掃描圖片,有助于你開始探索數(shù)據(jù)。這是一個目前論壇上更先進(jìn)的,最受歡迎的帖子。它可以幫助你做“預(yù)處理”,它基本上是清洗和轉(zhuǎn)換數(shù)據(jù),使神經(jīng)網(wǎng)絡(luò)更流暢、更容易處理。它實(shí)際上將兩維的圖像轉(zhuǎn)化為3維圖像!超酷!
坦白說,如果你自己輸入這些代碼并讓它運(yùn)行,你已經(jīng)做得很好了。這種編程方法是“艱難的”,直到真正了解前就開始實(shí)踐。甚至還有一系列關(guān)于Python和其他語言的書籍(http://amzn.to/2jQfHvR),采用這種學(xué)習(xí)方式,它可能適用于你。
一個警告:有些人在比賽中發(fā)布了一個完美的比分。然而卻是以通過研究比賽排行榜和增加訓(xùn)練集大小的小聰明來獲得(https://www.kaggle.com/olegtrott/data-science-bowl-2017/the-perfect-score-script)。這完全合法,但它不會真正有助于你實(shí)現(xiàn)目標(biāo)。你的目標(biāo)是學(xué)習(xí)針對訓(xùn)練集如何運(yùn)行神經(jīng)網(wǎng)絡(luò)。現(xiàn)在我將會跳過這個方法,并專注于針對CT掃描圖像運(yùn)行Keras。
就到這兒!祝你好運(yùn),你將幫助重新定義癌癥的研究,并把一些現(xiàn)金帶回家。不是糟糕的一天的工作。
但是,即使你沒有贏,你將會很好地學(xué)習(xí)如何在現(xiàn)實(shí)世界中使用AI。
無論發(fā)生什么,記得要玩得開心!
原文發(fā)布時間為:2017-5-08
本文來自云棲社區(qū)合作伙伴“大數(shù)據(jù)文摘”,了解相關(guān)信息可以關(guān)注“BigDataDigest”微信公眾號
總結(jié)
以上是生活随笔為你收集整理的学习AI可能不需要那么多数学知识:20小时进阶计划的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python的一些常用操作
- 下一篇: ruby动态new对象