編者按:Infinite Red首席技術架構師Gant Laborde通過有趣的視頻和平易近人的文字帶你入門機器學習。
如果你對人工智能和機器學習的了解是一個大大的問號,那么本文正是為你準備的。我將通過富于靈感的視頻和平易近人的文字逐漸增加你的卓越度(Awesomenessicity?)。
坐下來,放松一點。這些視頻時長分別在5-20分鐘,如果這些視頻不能給你足夠的啟發,你完全可以停止閱讀后文。然而,如果你發現你讀到了文章的末尾,那么你已經具備足夠的知識和激情進入一個全新的世界。進行到哪一步,完全取決于你。
理解為什么現在機器學習如此熱門
A.I. 一直很酷,《乓》中移動乒乓球拍的是A.I.,《街霸》中用組合技把你打上天的也是A.I.
雅達利1972年推出的乒乓球街機游戲
A.I.總可以通過程序員的猜測來實現,程序員猜測某事物應該如何表現。有意思的是,程序員并不像我們經常認為的那樣具備編程A.I.的天賦。google搜索“epic game fails”(史詩級的游戲失?。?,你可以看到大量游戲中A.I.和物理系統的故障(有時能看到有經驗的人類玩家的失敗)。
不管怎么說,現在A.I.有了一項新天賦。你可以教授計算機玩視頻游戲,理解語言,甚至如何識別人物或物體。這些新技術的冰山一角來自一個古老的概念,這一概念僅僅在最近才獲得足夠的處理能力,從而能夠存在于理論之外的場景。
我說的是機器學習(Machine Learning)。
你不再需要想出一個高級的算法。你只需教授計算機自己想出一個高級算法。
這樣的事情到底是怎么發生的?算法更多地不是寫出來的,而是繁殖出來的。我并沒有使用繁殖作為類比。
哇!這是一個瘋狂的過程!
算法實現之后,我們怎么能夠不理解算法是如何運作的呢?下面的視頻展示了一個通關馬里奧的A.I. 身為人類,我們都了解如何玩橫向卷軸游戲。但是A.I.的預測策略很是瘋狂。
令人印象深刻吧?這個想法很令人驚訝,是吧?唯一的問題是我們不知道機器學習,而且不知道如何將機器學習接入視頻游戲。
幸運的是,Elon Musk創辦了一家非盈利公司OpenAI,讓你只用寫幾十行代碼就可以將任何A.I.接入無數的游戲/任務。
為什么應該使用機器學習
關于你為什么應該在乎機器學習,我有兩個好答案。首先,機器學習(ML)正讓計算機處理我們之前從未讓計算機處理的任務。如果你想做一些新的事情,并不僅僅對你而言是新的,而且對世界而言是新的,你可以用ML來做這件事。
其次,如果你不影響世界,世界將影響你。
現在知名公司正投資ML,ML將改變世界,我們拭目以待。思想領袖發出警告,我們不能讓這一新時代的算法脫離公眾視線。想象一下如果某幾家企業控制互聯網會是什么結果。如果我們不參與,科技將不屬于我們。我認為Christian Heilmann關于ML的演講中說得很好:
我們可以希望其他人僅僅善意地使用這一力量。我卻是不看好這個賭博的人。相反,我寧愿成為這場革命的一部分。你也可以。
好,現在我有點興趣了……
這個概念挺有用,也挺酷的。我們已經在一個較高的層次了解這個概念,但機器學習的過程中到底發生了什么?它是如何工作的呢?
如果你想直接上手,我建議你跳過這一小節,直接閱讀下面的“如何入門”一節。如果你的動機是想應用機器學習技術,你不需要閱讀這一節。
如果你想要嘗試理解機器學習的工作機制,推薦觀看下面的視頻,該視頻使用經典的機器學習手寫作為例子,帶你了解機器學習的邏輯。
網絡就像一個函數,隨著層數的加深,小塊咀嚼數據,最終得到抽象概念。Adam Harley做了一個交互界面,你可以在上面親自手寫數字,看看神經網絡模型能否正確識別,以及相應各層的激活情況。
上面的交互界面展示的是數據流經已訓練模型的過程,而JavaFXpert開發的JavaFXpert/visual-neural-net-server項目(代碼發布于GitHub上)則可視化了網絡的訓練過程。
演示使用的數據集是iris數據集(源自1936年),可視化了神經網絡上反向傳播權重的過程。
我是通過JavaFXpert面向Java開發者介紹機器學習的報告上發現這個可視化工具的。即使你不是Java開發者,我也推薦你觀看JavaFXpert的這次報告,因為其中介紹了很多機器學習的概念。
你可以在YouTube上觀看這次報告:(時長一個半小時)
https://www.youtube.com/watch?v=I7GMyP6jdU0
譯者注:如果訪問YouTube遇到麻煩,文末附有獲取視頻下載地址的方法。
這些機器學習的概念真是令人激動!機器學習領域每天都有突破,所以請從現在開始。
如何入門
機器學習有很多資源。我將推薦兩條路線。
基本原理
通過這條路線,你將在算法和數學層面理解機器學習。我知道這聽起來很難,但是從頭開始,理解細節和代碼是很酷的。
如果你打算加入ML的主力軍,并深入參與討論,那么這是為你準備的路線。
我建議你嘗試下Brilliant.org的應用(對任何喜愛科學的人而言,這是一個很棒的應用),然后參加上面的人工神經網絡課程。該課程沒有時間限制,你需要用手機打發時間的時候可以學下ML。
注意,本課程在等級一之后需要付費。
你可以同時學習吳恩達的機器學習課程(斯坦福線上課程)。上面提到的JavaFXpert的報告中推薦了這門課程。另外,Jen Looper也向我推薦過這門課程。
很多人警告說這門課程比較難。對某些人來說,這意味著知難而退,但對另一些人而言,這正是深入學習這門課程并取得認證的理由。
課程是100%免費的。不過,如果你打算取得認證的話,需要為此支付一筆費用。
這兩門課程中有很多動手實踐的地方。如果你成功完成了這兩門課程,會讓每個人印象深刻,因為它們可不簡單。
不過,更重要的是,如果你確實完成了這兩門課程,你將深入理解機器學習的實現,有助于你以創新的方式應用機器學習改變世界。
極速賽車手
如果你對編寫算法不感興趣,但希望使用機器學習創建下一個突破性的網站/應用,你應該直接跳到TensorFlow以及相應的速成課程。
TensorFlow是機器學習開源軟件庫的事實標準。它有無數的應用,你甚至可以在JavaScript中使用TensorFlow。
如果參加一門課程不是你的風格,你很幸運。今時今日,你無需學習ML的本質就可以應用它。你可以有效地將ML作為一項服務使用,利用技術巨頭訓練好的模型。
不過我仍然提醒你注意,這樣可無法保證你的數據的安全性(甚至是你自己的安全性),不過ML服務很有吸引力。
如果你方便上傳數據到Amazon/Microsoft/Google,也許使用ML服務對你而言是最佳方案。我喜歡將這些服務看作是通向更高級的ML的介紹人。無論如何,現在就開始是個好主意。
讓我們成為創造者
我想借此機會向所有之間提到的人以及視頻作者表示感謝。他們在我的入門過程中給了我不少啟發,盡管我現在仍然是ML世界的一個新人,我很高興能為其他人照亮擁抱這一令人驚嘆的新時代的路徑。
當你開始學習新東西的時候,和他人交流是比不可少的。沒有友好的面孔、答案、熱鬧的討論區,任何事情都會很難。能夠提問并得到答案,效果大不一樣。你可以在推特上關注我(@GantLaborde),以及前面提到的其他人。Reddit的MachineLearning板塊也是一個交流的好地方。
下面是一個真實的例子,我在推特上和朋友討論高方差和過擬合問題。
我希望這篇文章啟發了你和你周圍的人來學習ML!
-
算法
+關注
關注
23文章
4608瀏覽量
92855 -
函數
+關注
關注
3文章
4329瀏覽量
62585 -
機器學習
+關注
關注
66文章
8411瀏覽量
132600
原文標題:從零到英雄:如何入門機器學習
文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論