天天看點

深度學習真的可以零基礎入門嗎?

深度學習真的可以零基礎入門嗎?

我們先來談談自學深度學習最大的問題。

現在搞深度學習的,十之八九并不是“科班出身”。

這就導緻:如果你想要跨行成為一名深度學習工程師,從頭到尾的一切,都基本靠自學。但是,開發者很快就會發現自己遇到了第一個障礙:

絕大多數的學習資源以理論研究為導向,輕工程實踐。

其實這也難怪。這幾年,深度學習是火了,但大牛們都來自學界,例子不勝枚舉:比如谷歌雲首席科學家李飛飛、主管 fair 的 yann lecun、在谷歌大腦的 ian goodfellow,以及在過去三年裡任百度首席科學家的吳恩達。大牛出身高校,他們編寫的教材、錄制的慕課也是,不可避免帶有很強的學術屬性,總給人一種“聽大學老師講課”的感覺(本來就是)。即便有意避免研究導向,甚至弱化數學理論部分(比如吳恩達老師在 coursera 上的“machine learning”),仍然離産業界的需求相去甚遠。

用一句話來概括:現有的深度學習資源,對學生群體很友好,但對在職工程師并不如此。許多人花大半年時間(有毅力的會更久)研讀了幾本深度學習教材,發現實際操作時仍然不知道該怎麼實作一個具體的東西。

我們的老熟人——澳洲的機器學習(ml)專家 jason brownlee,就常用自己的“慘痛經曆”勸誡深度學習學習者切勿迷信學校裡的東西。

他本是一名普通的軟體工程師,對 ml 感興趣之後,花幾百澳刀買了幾本教材自學,但效果不是很好,以為需要“科班”學習經曆才能讀懂那些學術語言。一咬牙辭職,從 ai 專業的研究所學生讀到博士。畢業了,卻發現“搞” ml(而不是研究 ml),其實在 it 技能的基礎上,一步步邊實踐邊摸索就夠了,饒了一大圈回來,還是重拾程式猿的老本行,成為一名幾年前的自己其實就能勝任的 ml 工程師。

深度學習真的可以零基礎入門嗎?

jason brownlee

如今, “machine learning mastery” 已成為業界最知名的 ml 教育品牌之一。

關注雷鋒網的讀者應該也發現了,但凡 jason 有符合國内讀者需求的技術教程,雷鋒網總在第一時間翻譯出來分享給大家。而這實際折射了一個趨勢:凡是冠以“實戰”二字的深度學習、ml 文章,會更受歡迎。

這直接反映出:工程實踐導向的深度學習、ml 學習資源有多匮乏。

但由于深度學習開發者教育訓練需要經驗豐富的工程師現場指導如何設定環境、如何操作開發工具,以及如何 troubleshooting,慕課的萬人線上、線上學習形式難以滿足要求。高品質的教育訓練,往往線上下進行,這大幅限制了參與人數,導緻資源依舊稀缺。

深度學習真的可以零基礎入門嗎?

雷鋒網對指導老師中的三位:楊傑、max 和趙伊丹進行了采訪。

其中,楊傑老師曾在南方航空動力機械有限公司從事多年的生産線設計,轉型深度學習後進行算法金融項目的研發;max 本是金融學博士,在“深度學習”和“無人駕駛”領域有豐富教學經驗;趙伊丹老師在緻力于深度學習之前,從事校園 vc 的深度學習與無人駕駛項目。

為什麼實戰教育訓練如此重要?

楊傑:現在的學習資源太傾向數學理論。比如 ian goodfellow、yoshua bengio、aaron courville 編寫的教科書《deep learning》,初學者看了也不知道該怎麼做。深度學習的理論研究已經進入到很深的層次,對于想要真正做好、精通的人,我認為這本書是必讀的,但不适合初學者。

max(經雷鋒網(公衆号:雷鋒網)編譯,下同):fast.ai 的創始人 jeremy howard 喜歡舉這麼個例子:對于足球運動員,不需要學習物體的實體運動原理,隻需要喜歡這項運動,然後去踢,不斷在練習中提高技藝。對于開發者,在一開始上手時,隻需要知道怎麼做,而不需要知道為什麼。

楊傑:(補充道) 數學理論可以上手後再慢慢學。一開始就往裡鑽容易産生畏難情緒, “覺得不是他的菜”,因而放棄。可以先用起來,感興趣之後慢慢再研究理論。

新手入門深度學習的主要障礙是什麼?

楊傑:心理障礙。

max :知識點太多,需要了解的術語、概念太多。是以在一開始深度學習看上去很難。但真正上手之後,會發現其實沒有想象中那麼難。

趙伊丹:環境配置(楊傑和 max 點頭贊同)。這一關會把很多初學者吓跑——很多人靠自己很難把第一步的開發環境設定起來。這裡需要的東西很多也很麻煩,容易遇到各種系統問題。是以,“12小時零基礎入門深度學習”會把環境調好讓大家可以直接上手。

新手最需要掌握的技能是什麼?

max :python 和 numpy。

楊傑:什麼都不需要,一張白紙最好。什麼都沒學過更容易入門,不然容易和以前學到的程式設計知識混淆。雖然深度學習開發必須要用 python,但一開始不會 python 用不着介意。相比主流程式設計語言,比如 c++,python 上手更簡單,對普通人更友好。

趙伊丹:基礎程式設計技巧,以及計算機指令行。雖然這些可以慢慢學,但事先就會的話能省些功夫。

推薦哪些輔助開發工具、架構?

三位老師:keras+tensorflow,後者已經成為行業标準,前者是後者的 api。

conda 和 anaconda。

另外,由于硬體基本都是用 gpu,需要 cuda。

對于各個深度學習模型,你們認為新手應從哪一個上手?

max:cnn。圖像處理問題一般基于 cnn,它也很适合應用于分類問題。簡單來說就是:它最基礎,應用頻繁,很多更複雜的模型都是基于 cnn,非常适合入門。

三年前,世界屈指可數的頂級研究機構才能實作的一些算法,現在任何一個開發者都可以利用各種開發工具借助 cnn 實作。

深度學習入門課程,比如”12 小時零基礎入門深度學習“,能為學習者帶來的最大的提升在于哪個方面?

楊傑:信心——明白“i can do it”。

趙伊丹:指導老師手把手帶着嘗試過了,在實戰中就知道怎麼去做、朝什麼方向去做。

你們當初入門深度學習的過程中都遇到了哪些困難,又是如何解決的?

max:搭建環境是個很大的坎兒。另外,當時我沒有 gpu,訓練速度特别慢。後來就想辦法減少資料加快速度。

我覺得新手可以多看看 “help”幫助文檔。再有就是 google 和百度——從我的經驗來看,99%的問題都能搜尋解決。絕大多數問題别人已經遇到過,并且已經解決過了,隻需要多點耐心找出來。

趙伊丹:缺乏實踐項目的磨煉, 理論學得太多,但不知道怎麼用。舉個例子,有很多深度學習模型的優化方法,但隻憑理論是無法判斷出應該用哪個的,也不知道怎麼去調。這裡就需要實踐經驗并結合實際項目來做選擇。

有許多原本從事其他行業的程式員、甚至非程式員,想要跨行做深度學習,對他們的建議是?

楊傑:(笑)我們以前就是跨行的。這次的教育訓練也是針對這一點,不需要深厚基礎,不需要對深度學習數學理論有多深的了解。程式員也未必優勢很大,他們上手新程式設計語言更容易,僅此而已。

fast.ai 的座右銘是”make deep learning uncool again“,即“讓深度學習不再高冷”。你們的了解是?

max:深度學習不應該是隻有科學家才能做的事情。各行各業的技術人員,都應該有能力把深度學習技術整合進他們的工程應用中,把産品做得更好。現在,隻有谷歌等少數網際網路巨頭才稱得上是大範圍地應用深度學習。但在不遠的将來,無數公司的服務、産品都會有這個需要。這其中的關鍵,就是讓深度學習不局限于内行、專家,讓任何專業背景的技術人員借助工具都能掌握。而且,它本來就不難學。

 趙伊丹:(補充道)現在還存在大片市場空白。在許多尚未涉及的領域,一旦應用深度學習就很容易産生很大的效果。

深度學習真的可以零基礎入門嗎?

學習形式:線下授課

時間:6 月 17 -18 日,兩天共九課時

地點:北京市海澱區海澱大街鼎好大廈a座西南門 3 層

教育訓練價格:999 元

報名須知:每位學員請帶上個人筆記本電腦,windows 使用者請安裝 xshell

另:學員有機會參與太庫(techcode)組織的 ai 企業參觀活動。

====================================分割線================================

本文作者:三川

下一篇: 網絡安全