02.28 學習人工智能怎麼入門?

用戶7440821997705


人工智能雖然經過了60多年的發展,期間也有眾多著名科學家的參與,但是目前人工智能領域的發展依然處在初級階段,整個人工智能領域還有大量的課題需要攻關,所以目前人工智能領域更關注中高端人才。

要想系統的學習人工智能一方面需要具備紮實的基礎知識,另一方面還需要通過具體的崗位實踐(課題研發)來完成,因為目前人工智能領域的很多方向還依然有待完善,所以對於初學者來說選擇一個方向並完成入門學習是比較現實的選擇。

人工智能的入門學習需要具備以下知識結構:

第一:編程語言。編程語言是學習人工智能的基礎內容之一,掌握了編程語言才能完成一系列具體的實驗。推薦學習Python語言,一方面原因是Python語言簡單易學,實驗環境也易於搭建,另一方面原因是Python語言有豐富的庫支持。目前Python語言在人工智能領域有廣泛的應用,包括機器學習、自然語言處理和計算機視覺等方向。

第二:算法設計基礎。目前人工智能的研究內容集中在六個大的方向上,分別是自然語言處理、知識表示、自動推理、機器學習、計算機視覺和機器人學,這些內容都有一個重要的基礎就是算法設計,可以說算法設計是研究人工智能的關鍵所在。學習算法設計可以從基礎算法開始,包括遞歸、概率分析和隨機算法、堆排序、快速排序、線性時間排序、二叉樹搜索、圖算法等內容。

第三:人工智能基礎。人工智能基礎內容的學習是打開人工智能大門的鑰匙,人工智能基礎內容包括人工智能發展史、智能體、問題求解、推理與規劃、不確定知識與推理、機器學習、感知與行動等幾個大的組成部分。

在完成以上內容的學習之後,最好能參加一個人工智能的項目組(課題組),在具體的實踐中完成進一步的學習過程。

隨著大數據的發展,人工智能也進入了一個全新的發展時代,對於基礎薄弱的初學者來說,通過大數據進入人工智能領域也是一個不錯的選擇。





美食多巴哥


學好人工智能離不開三部曲。培養信心和熱情,打牢專業基礎,建立人工智能思維

第一部曲,培養信心和熱情

信心是學習基礎,熱情是成功之道。人工智能的內容很龐大,知識很多,要學好人工之類必須要有信心和熱情,這種信心和熱情不是短期的暫時的,而是長期堅持堅定不移的。遇到困難,也不會放棄的。那麼如何才能夠做到呢?

  • 首先是從認識瞭解開始。

我們要了解人工智能大致的淵源和發展。我們可以從一般性的科普文章來了解,把大致的內容弄清楚,另外我們也可以從一些案例,典型人物的角度來了解,特別是從一些成功人士的介紹,人物傳記當中瞭解人工智能的一些基本情況。我們也可以從一些成功的企業身上學習人工智能。

這樣學習,不斷有利於我們去增強對人工智能這個專業的瞭解,而且對它的現狀和未來發展趨勢,前景都增加了解。這樣能增強我們的信心,增加我們對人工智能的熱愛。

  • 其次,概覽式瞭解專業知識結構

培養信心和熱愛這個基礎工作還有一些非常好的辦法,那就是對人工智能的整個專業結構和體系要先了解。

就像我們瞭解一個建築房屋,我們先要看到它的建築圖,它的藍圖。看到了這個建築圖藍圖概覽圖,我們就能夠了解這個建築的大致方位和結構。

我們這裡有一種叫做動物園式的瞭解方法,就是當你去過動物園的時候,動物園裡有很多動物,有很多遊樂設施,有很多好看的場景。那麼我們首先從哪裡開始看呢?這麼多好看的東西,沒有參觀路線圖不行啦。

所以我們就必須登高望遠,先找一處地方能夠對動物園的整體風貌,整體地貌,整個設施一覽無遺,這樣我們的心裡才有數噢。原來動物園有這麼多好玩的東西啊。只有心中有數以後我們才能夠把信心建立的更可靠更牢固,把熱情建立的更充分。

所以對初學者來說,這個動物園概覽式的方法是非常好的。

下面我們就用這個動物園概覽式方法,幫大家建立起對人工智能的信心和熱情。前面說過,人工智能是一個龐大的知識體系,而且現在還在以很快的速度增加專業門類和知識。通過這種概覽方式,可以將它分出三個大類。

  1. 基礎專業知識。這些基礎專業知識實際上應用比較少,但它是基礎,對人工智能專業起到潛移默化的作用。那麼這種基礎有哪些呢?它包括數學,醫學,工程學。也包括包括社會學的一些專業,像社會心理學,認知科學,經濟學等。
  2. 核心知識部分,也叫做人工智能的工程學部分。這部分內容是經常用到的,也是學習的重點和難點,包括大數據,雲計算,人工智能算法,算力,算料等。還有神經網絡,深度學習,網絡配置,數據庫等。還有機器視角技術,自然語言處理,語音識別,智能機器人等等,以及未來不斷增加發展的知識技術。這些都是屬於它的核心應用部分,是重點要學好的,也是有難度的知識。
  3. 運用場景中使用的一些專業知識。因為人工智能是要具體運用到某些部門,某些場景當中去,比如說農業部門,工業部門,服務業。在這三大產業裡面還有很多具體細分的產業,像金融業,互聯網,高科技領域。這些都是大量經常用到人工智能的。

那麼我們必須對這些應用場景的專業方向,專業知識要有所瞭解。這就涉及到經濟學,涉及到金融學,涉及到企業管理,涉及到工業製造,涉及到農業知識技術等等。

這些我們都要學習瞭解。特別是對於人工智能職業的中後期,我們作為項目主管,或者發展做產品經理,都得必須有這種專業知識背景。

所以,我們通過這種動物園概覽式的方法,對人工智能專業有了一個初步的瞭解,知道這裡面有很多很好的專業知識需要學習,信心和熱情就建立起來了。

上面說到的這些都是在培養熱情,樹立信心階段要了解到的內容。只有做到了第一部曲,我們的專業熱情和專業信念才能牢固地建立起來,而不是心血來潮式。

第二部曲,打牢專業基礎

  1. 一個好的學習計劃十分重要。打好基礎就得要多讀書,要有自己細緻的長期的學習計劃。學習的方式可以採取自學,也可以採取跟班培訓,拓展學習等等。兩種方式單獨都可以,這兩種方式摻雜結合起來也可以的,但是共同的都是要有一個長期的學習計劃。
  2. 制定好學習計劃後,要選準學習路徑,先易後難,由淺入深,建議先從數學學起。數學知識很豐富。但我們只需要學習人工智能涉及到的知識,主要包括微積分,線性代數,統計概率,信息論,集合論和圖論博弈論等。
  3. 數學對人工智能和計算機都很重要。學習同時也可以結合腦科學和認知科學一起學。
  4. 這些都是最核心的基礎,學好了,基本人工智能就沒有多大問題了。
  5. 在此基礎上就可以進一步學習計算機技術和人工智能專業。

這裡特別強調,打牢專業基礎,重點是打牢數學基礎。

第三部曲,建立智能思維

我們學習人工智能不是僅僅為了學習知識點,學習它的一些具體的技術,更重要的是要學習和建立人工智能的思維模式。

學好了人工智能的思維模式,對於我們的工作和以後的學習都有非常大的好處,至少可以讓我們避免沉入到純粹的技術思維當中去。

那麼人工智能的思維包括哪些呢?

  • 首先,要有數學思維。

數學是所有認識物質世界活動的科學,甚至是宇宙最基礎的思維表達模式。它的思維模式具有這樣幾個特點,一個就是精確性,強調所有的思維必須建立在量化和精確性的基礎上,建立在量化論證和推理的基礎上,這是它的一個特點。另外強調系統性,全面性,邏輯性,開放性。數學思維是人工智能思維的基礎。

  • 其次,要有產業的思維。

我們做人工智能必須要落地,具體到產業當中去,那麼我們就必須要有產業的思維。現在產業的門類越來越多,越來越新,每個產業都不一樣。這種產業思維就是要熟悉產業門類,特點,市場,產品,技術結構,發展方向等。核心就是產業分析,市場調查,根據具體的產業來決定人工智能的技術方案。真正樹立人工智能根植於產業,來源於產業,又要高於產業,指導產業,甚至顛覆產業,創造產業的觀念思維。

產業思維的主要特點就是強調了落地應用與實際的結合,也就是人工智能的市場檢驗,實踐檢驗的觀念。

  • 再次,要有綜合思維。

人工智能是至今為止綜合性最強的學科專業。它的思維模式也特別強調綜合思維。既要綜合運用各種科技文化知識,又要綜合運用各個專門技術產品,凡屬於有用的知識,有用的技術,有用的模式,有用的產品,都可以為人工智能所用。

  • 最後,要有創新思維。

人工智能是創新的結果。人工智能目前面臨的很多瓶頸問題,如人工智能算法模型單一,實用性不強,急需突破目前的神經網絡設計原理的侷限性,在學習算法,意識算法,思維算法等方面創新,推出更好的核心技術,才能推動人工智能邁向新的階段。

總結

人工智能入門要有正確的指導。師傅引進門,修行在個人。

建立信念意志,保持熱情激情是學習人工智能的條件。

刻苦攻克難關,打牢專業基礎,是學習人工智能的關鍵。

建立思維模式,形成科學研究習慣,是人工智能學習的根本。


科技思想庫


在你開始從事人工智能之前,你需要先了解人類的智能。

我曾經問過別人、也被別人問過關於學習人工智能(AI)最好的方式是什麼?我應該去閱讀什麼書?我應該去看什麼視頻?後面我將講到這些,但是,考慮到人工智能涉及很多領域,我把這個問題分開來講可能更好理解。

學習人工智能很重要的一點是區別開研究方面和應用方面。Google 的 Cassie Kozyrkov 在近日於倫敦舉行的 O'Reilly 人工智能會議的一個演講中 描述了這個區別,並且這是一個很好的演講。

人工智能研究在本質上是學術性的,在你能夠獲得人工智能的某些細節之前,需要大量的跨各類學科的數學知識。這部分的人工智能關注於算法和驅動人工智能發展的工具。比如,什麼樣的神經網絡結構能夠改善視覺識別的結果?我們如何使無監督學習成為更有用的方法?我們能否找到一個更好的方法,去理解深度學習流水線是如何得出答案的?

另一方面,人工智能應用更多是關於使用現有工具去獲取有用的結果。開源在這裡發揮了一個重要的作用,那就是免費提供了易於使用的、各種語言的軟件。公有云提供商也致力於提供大量的機器學習、模型、以及數據集,這使得人工智能的入門比其它的要簡單的多。

在這個問題上我想補充一點,那就是人工智能的從業者不應該將他們的工具視為神秘地輸出答案的黑匣子。至少,他們應該去了解不同技術、模型、和數據採集方法的限制和潛在偏差。只是不需要去深入研究他們工具鏈中每個部分的理論基礎。

雖然在日常工作中人工智能可能並不那麼重要,但理解人工智能的大量的背景知識還是很有用的。人工智能已經超越了神經網絡上深度學習的狹窄範圍,目前神經網絡上的強化學習和監督學習已經取得重要成就。例如,人工智能經常被視為是增強(而不是替代)人類判斷和決策的一種方法。但是在機器和人類之間交換信息還有其自身的缺陷。

有了這些背景知識,下面是的一些研究領域和資源,你可能發現會很有用。

研究人工智能

在很多方面,用於人工智能研究的一個資源清單,可以反映出本科(甚至是研究生)的計算機科學項目都是專注於人工智能。最主要的區別是,你起草的教學大綱比起傳統的大綱更關注於跨學科。

你的計算機科學和數學背景知識決定了你的起點。

如果你的計算機科學和數據背景知識很差或已經荒蕪了,但你還希望能夠深入瞭解人工智能的基本原理,那麼從一些數學課程開始將會讓你受益。MOOC 上像非盈利的 edX 平臺和 Coursera 上都有許多可供你選擇的課程(這兩個平臺都對認證收費,但 edX 上所有的課程,對旁聽者是全免費的)。

典型的基礎課程包括:

MIT 的微積分課程,從微分開始學習

線性代數 (德克薩斯大學)

概率與統計,比如 MIT 的 概率 —— 不確定性與數據科學

從一個研究的角度去深入人工智能,你可能需要深入所有的這些數據領域,甚至更多。但是上面的內容應該讓您在深入研究機器學習和AI之前大致瞭解可能是最重要的研究分支。

除了 MOOC 之外,像 MIT OpenCourseWare 這樣的資源也提供了大量的數學和計算機科學課程的大綱和各種支持材料。

有了這些基礎,你就可以學習更專業的人工智能課程了。吳恩達從他在斯坦福大學時教的 “AI MOOC” 就是整個在線課程領域中最早流行起來的課程之一。今天,他的 神經網絡和深度學習 也是 Coursera 深度學習專業的一部分。在 edX 上也有相關的一些項目,比如,哥倫比亞大學提供的一個 人工智能 MicroMasters。

除了課程之外,也可以在網上找到各種範例和其它學習材料。這些包括:

神經網絡和深度學習

MIT 出版的 Ian Goodfellow、Yoshua Bengio、Aaron Courville 的《深度學習》

應用人工智能

人工智能應用更關注於使用可用的工具,而不是去構建新工具。對一些底層的數學,尤其是統計學的瞭解仍然是非常有用的 —— 甚至可以說是必需的 —— 但對這些知識的瞭解程度不像研究人工智能的要求那麼高。

在這裡編程是核心技能。雖然可以使用不同的編程語言去做,但是一些庫和工具集 —— 比如 Python 的 PyTorch,依賴於 Python,所以這是一個應該掌握的好技能。尤其是,如果你有某種程度上的編程背景,MIT 的 計算機科學入門和使用 Python 編程,它是基於 MIT 的 6.001 在校課程,是一個非常好的啟蒙課程。如果你編程零基礎,來自密歇根大學的 Charles Severance 的 人人學編程(Python 使用入門) 是個很好的開端,它不會像 MIT 的課程那樣,把你一下子扔進代碼的汪洋大海。

R 編程語言 也是一個應該增加到你的技能庫中的很有用的技能。雖然它在機器學習(ML)中使用的很少,但它在其它數據科學任務中很常見,並且經常與人工智能/機器學習和數據科學的應用實踐結合在一起。例如,與組織和清理數據相關的許多任務同樣適用於您最終使用的任何分析技術。像哈佛的 


黑哥聊趣聞


這兩年人工智能發展很快,從之前的谷歌AlphaGo機器人戰勝世界圍棋冠軍,到百度無人車,京東和亞馬遜的無人倉庫分撥中心,還有很多人工智能的相關應用,可見人工智能的前景一片大好,於是就有很多人想要去進行人工智能學習。人工智能學習路線推薦給你:

階段一是Python語言(用時5周,包括基礎語法、面向對象、高級課程、經典課程);階段二是Linux初級(用時1周,包括Linux系統基本指令、常用服務安裝);階段三是Web開發之Diango(5周+2周前端+3周diango);階段四是Web開發之Flask(用時2周);

階段五是Web框架之Tornado(用時1周);階段六是docker容器及服務發現(用時2周);階段七是爬蟲(用時2周);階段八是數據挖掘和人工智能(用時3周)。

在這裡,小編還想給大家推薦一本人工智能學習必備書籍:《人工智能基礎教程(第2版)》系統地闡述了人工智能的基本原理、實現技術及其應用,全面地反映了國內外人工智能研究領域的最新進展和發展方向。

《人工智能基礎教程(第2版)》共18章,分為4個部分,第1部分是搜索與問題求解,系統地敘述了人工智能中各種搜索方法求解的原理和方法;

第2部分為知識與推理,討論各種知識表示和處理技術、各種典型的推理技術,還包括非經典邏輯推理技術和非協調邏輯推理技術;

第3部分為學習與發現,討論傳統的機器學習算法、神經網絡學習算法、數據挖掘和知識發現技術;

第4部分為領域應用,這些內容能夠使讀者對人工智能的基本概念和人工智能系統的構造方法有一個比較清楚的認識,對人工智能研究領域裡的最新成果有所瞭解。

《人工智能基礎教程(第2版)》強調先進性、實用性和可讀性,可作為計算機、信息處理、自動化和電信等it相關專業的高年級本科生和研究生學習人工智能的教材,也可供從事計算機科學研究、開發和應用的教學和科研人員參考


榮耀科技先行者


首先要掌握基礎編程語言,以下任選其一要熟練掌握:

Python:被認為是所有AI開發語言列表中的第一位。Python相對簡單易學,可以很容易地學習。此外python有很多AI相關的庫,便於在機器學習等方面快速上手。

C++:已經非常成熟了,而且是最快的計算機語言,如果你的項目開發時間有限,那麼C++是很好的選擇,它提供更快的執行時間和更快的響應時間,老司機優勢顯現無疑,遊戲開發大部分都是用C++語言。

C ++適用於機器學習和神經網絡。

Java:也是計算機語言的老司機之一,雖然褒貶不一,但是在各種項目的開發中,Java都是常用語言之一,它不僅適用於NLP(自然語言處理)和搜索算法,還適用於神經網絡。

Lisp:相當古老的語言,差不多是在人工智能火起來之後才又回到眾人眼中。有人認為Lisp是最好的人工智能編程語言,因為它為開發人員提供了自由。在人工智能中使用Lisp,因其靈活性可以快速進行原型設計和實驗,當然這也反過來促進Lisp在AI開發中的發展,例如,Lisp有一個獨特的宏系統,有助於開發和實現不同級別的智能。

但同時也因為它的古老,掌握的人不是大多數。

 

其次要找好方向:

計算機視覺CV、自然語言處理NLP、機器學習ML這三個方向是最火的,但其中也涉及了很多更深的知識,比如神經網絡、深度學習、強化學習等。

所以要有一定的數學基礎:微積分、概論、線性代數;

其次是算法與模型,這也是重中之重,算法模型學不好以後會很痛苦,甚至有些方面完全不能理解。

 

對自學沒有信心的話可以參加社會上的培訓課程,從零開始到高級課程全都有,找感興趣的,然後就是堅持下去。但總體來說市場上的課程還是有些亂,要邊學便自己梳理知識體系。

 

此外,還要深入瞭解一些框架:

谷歌的Tensorflow:

TensorFlow是一個開源軟件庫,可以描述一幅數據計算的數據流圖(data flow graph),用於各種感知和語言理解任務的機器學習。當前被50個團隊用於研究和生產許多Google商業產品,如語音識別、Gmail、Google 相冊和搜索。

Facebook 的 PyTorch:

與TensorFlow抗衡的學習框架,由 Facebook 的團隊開發,並於 2017 年在 GitHub 上開源。

TensorFlow 和PyTorch的關鍵差異是它們執行代碼的方式。這兩個框架都基於基礎數據類型張量(tensor)而工作。TensorFlow更像是一種語言,而PyTorch與Python結合的更緊密。

TensorFlow 是一種非常強大和成熟的深度學習庫,具有很強的可視化功能和多個用於高級模型開發的選項。它有面向生產部署的選項,並且支持移動平臺。另一方面,PyTorch 框架還很年輕,擁有更強的社區動員,而且它對 Python 友好。

所以如果你想更快速地開發和構建 AI 相關產品,TensorFlow 是很好的選擇。建議研究型開發者使用 PyTorch,因為它支持快速和動態的訓練。

兩者還有很多差異,各有優缺點,可以在實踐中慢慢摸索。

以上內容都完全懂了,就算入門了。


大王小王聊什麼


1.掌握高等數學,線性代數,概率論與數理統計相關知識。

2.掌握一門編程語言,建議c++或者Python。

3.掌握一項深度學習開源工具,Tensorflow或者caffe,其他的也可以,比如pytorch,keras等。

4.學習斯坦福大學的cs229或者cs231課程,andraw ng教授的深度學習系列課程。

5.掌握常見的深度學習算法,CNN或者RNN。

6.跟著github項目學,閱讀源碼,自己動手實現。


分享到:


相關文章: