如何快速識別一個程序員有沒有做人工智能的能力或潛力?

lovetankai


首先得具備紮實的數學功底,至少學過線性代數,概率論和數理統計; 其次至少會一門編程語言,c++或者是python; 最後,精通深度學習常用算法,CNN,RNN等網絡模型,最好會夠手動搭建網絡。而且,深度學習引擎至少熟悉一個,Tensorflow或者Caffe。




這個名字真好聽


一. 目的

本文的目的是給出一個簡單的,平滑的,易於實現的學習方法,幫助 “普通” 程序員踏入AI領域這個門。這裡,我對普通程序員的定義是:擁有大學本科知識;平時工作較忙;自己能獲取的數據有限。因此,本文更像是一篇 “from the scratch” 的AI入門教程。

二. AI領域簡介

AI,也就是人工智能,並不僅僅包括機器學習。曾經,符號與邏輯被認為是人工智能實現的關鍵,而如今則是基於統計的機器學習佔據了主導地位。最近火熱的深度學習正是機器學習中的一個子項。目前可以說,學習AI主要的是學習機器學習。

但是,人工智能並不等同於機器學習,這點在進入這個領域時一定要認識清楚。關於AI領域的發展歷史介紹推薦看周老師寫的《機器學習簡介》。下面一個問題是:AI的門好跨麼?其實很不好跨。我們以機器學習為例。

在學習過程中,你會面對大量複雜的公式,在實際項目中會面對數據的缺乏,以及艱辛的調參等。如果僅僅是因為覺得這個方向未來會“火”的話,那麼這些困難 會容易讓人放棄。考慮到普通程序員的特點,而要學習如此困難的學科,是否就是沒有門路的?答案是否定的。只要制定合適的學習方法即可。

三. 學習方法

學習方法的設定簡單說就是回答以下幾個問題:我要學的是什麼?我怎樣學習?我如何去學習?這三個問題概括說就是:學習目標,學習方針與學習計劃。學習目 標比較清楚,就是踏入AI領域這個門。這個目標不大,因此實現起來也較為容易。“過大的目標時就是為了你日後放棄它時找到了足夠的理由”。

學習方針可以總結為 “興趣為先,踐學結合”。簡單說就是先培養興趣,然後學習中把實踐穿插進來,螺旋式提高。這種方式學習效果好,而且不容易讓人放棄。有了學習方針以後,就可以制定學習計劃,也稱為學習路線。下面就是學習路線的介紹。

四. 學習路線

我推薦的學習路線是這樣的,如下圖:

圖1 AI領域學習路線圖

這個學習路線是這樣設計的:首先了解這個領域,建立起全面的視野,培養起充足的興趣,然後開始學習機器學習的基礎,這裡選擇一門由淺入深的課程來學習, 課程最好有足夠的實驗能夠進行實戰。基礎打下後,對機器學習已經有了充足的瞭解,可以用機器學習來解決一個實際的問題。

這時還是可以把 機器學習方法當作一個黑盒子來處理的。實戰經驗積累以後,可以考慮繼續進行學習。這時候有兩個選擇,深度學習或者繼續機器學習。深度學習是目前最火熱的機 器學習方向,其中一些方法已經跟傳統的機器學習不太一樣,因此可以單獨學習。除了深度學習以外,機器學習還包括統計學習,集成學習等實用方法。

如果條件足夠,可以同時學習兩者,一些規律對兩者是共通的。學習完後,你已經具備了較強的知識儲備,可以進入較難的實戰。這時候有兩個選擇,工業界的可以選擇看開源項目,以改代碼為目的來讀代碼;學術界的可以看特定領域的論文,為解決問題而想發論文。

無論哪者,都需要知識過硬,以及較強的編碼能力,因此很能考察和鍛鍊水平。經過這個階段以後,可以說是踏入AI領域的門了。“師傅領進門,修行在個人”。之後的路就要自己走了。


路西法李


智力水平是最重要的,不聰明的建議直接淘汰,否則後期也只能作為一個調包俠的存在。

要有較好的算法基礎和數學基礎,否則培養成本太大,最後年紀小一點,有可能的情況下大後端出身,偏底層的較好,玩概念的,計算機基礎差的慎入

一個數學成績好的人智商通常都差不了哪去,其實就是看天賦。

還要看一個人的定力怎麼樣,有沒有耐心去學習。

還有一點其實也很重要,就是看這個程序員是不是科班出身的,如果是科班出身的程序員的基礎都非常紮實,這一類的人通常教得比較省心。


莫非8125


你只能去識別

他了解人工智能,還是不瞭解人工智能

也就是他現階段具不具備人工智能所涉及的技能

因為沒有學不會的技術

每個人都有潛力和能力

這不是別人所能決定或者測試出來的

只能說某個時間點,某個階段的一個結果

不能代表任何事情

瞭解人工智能實驗,可以關注在線實驗室

http://www.edu.futurelab.tv


AI學習社


看他對數學問題感不感興趣,如果一提到數學都不願意思考的,那麼我看來他可能不適合人工智能。


分享到:


相關文章: