如何自學人工智慧路徑規劃(附資源,百分百親身經驗)
下面的每個資源都是我親身學過的,且是網上公開公認最優質的資源。
下面的每個學習步驟也是我一步步走過來的。希望大家以我為參考,少走彎路。
請大家不要浪費時間找非常多的資料,只看最精華的!
綜述,機器學習的自學簡單來說分為三個步驟
前期:知識儲備包括數學知識,機器學習經典演算法知識,程式設計技術(python)的掌握
中期:演算法的程式碼實現
後期:實戰水平提升
機器學習路徑規劃圖
一、數學基礎
很多人看到數學知識的時候就望而卻步,數學是需要的,但是作為入門水平,對數學的要求沒有那麼的高。 假設你上過大學的數學課(忘了也沒事),需要的數學知識啃一啃還是基本能理解下來的。
1.1、數學內容
線性代數:矩陣/張量乘法、求逆,奇異值分解/特徵值分解,行列式,範數等
統計與概率:概率分佈,獨立性與貝葉斯,最大似然(MLE)和最大後驗估計(MAP)等
優化:線性優化,非線性優化(凸優化/非凸優化)以及其衍生的如梯度下降、牛頓法等
微積分:偏微分,鏈式法則,矩陣求導等
資訊理論、數值理論等
上面的看不太懂沒事,不是特別難,學習一下就能理解了。
1.2、數學資源
網上有很多人會列舉大量大量的課程資源,這是非常不負責任的事,學完那些我頭髮都得白了。 實際上,我們只需要學習其中的一部分就夠了。
1.2.1、吳恩達的史丹佛大學機器學習王牌課程CS229,課後就有對學生數學知識的要求和補充,這些數學知識是完全符合機器學習要求的,不多也不少。牆裂推薦要看,不過只有英文版的。
連結:https://pan.baidu.com/s/1NrCAW38C9lXFqPwqTlrVRA 密碼:3k3m
1.2.2、深度學習的三大開山鼻祖之一Yoshua Bengio寫的深度學習(包含了機器學習)領域的教科書,現在以開源的形式在網上公開。這部書被譽為深度學習的聖經。在這裡我們只看這本書的第一部分,也就是數學基礎。囊括了機器學習所需的所有必備數學基礎,而且是從最基礎的說起,也不多,必讀的。
連結:https://pan.baidu.com/s/1GmmbqFewyCuEA7blXNC-7g 密碼:6qqm
1.2.3、跟機器學習演算法相結合的數學知識。上面兩部分是理論層面的數學,機器學習演算法中會對這些數學進行應用。
連結:https://zhuanlan.zhihu.com/p/25197792,知乎專欄上的一篇好文章,囊括了所有的應用知識點。
好了,數學方面我只推薦上面三個資源,三個都是必看的。裡面很多可能你現在看不太懂,沒關係。先大概過一遍,知道自己的數學水平在哪。在看到演算法知識的時候,不懂的再回來補就好。後期需要更多的數學資料我會再更新的。
二、 程式設計技術
程式語言:python3.5及以上,python易學,這個這期先不細講。
三、經典演算法知識
演算法包括機器學習和深度學習,機器學習是深度學習的基礎。所以務必先學機器學習的經典演算法,再學深度學習的演算法。
3.1、機器學習
3.1.1、課程資料
首推吳恩達的CS229,經典中的經典,在網易公開課裡有視訊,翻譯,課程講義,筆記是非常非常完備的。牆裂推薦。 這個課程對數學有一定的要求 ,但我覺得只要你上過大學的數學,然後補一下上面的數學,完全可以直接來看這個CS229。
假設你的數學真的很差的話,怎麼辦?吳恩達在coursera上也開了一門跟CS229完全匹配的課程,coursera機器學習課。這門課是CS229的翻版,唯一不同的是它對數學基本是沒有要求了,如果你對數學真的不懂的話,那就先看這個的教程吧。它跟CS229的關係就是同樣的廣度,但是深度淺很多,不過你學完coursera還是要回過頭來看CS229的。這個也是免費的。
CS229課程視訊:http://open.163.com/special/opencourse/machinelearning.html
課程講義和中文筆記:https://pan.baidu.com/s/1MC_yWjcz_m5YoZFNBcsRSQ 密碼:6rw6
3.1.2、配套書籍:
機器學習實戰,必看。用程式碼實現了一遍各大經典機器學習演算法,必須看,對你理解演算法有很大幫助,同時裡面也有應用。 如果大家看上面純理論的部分太枯燥了,就可以來看看這本書來知道在現實中機器學習演算法是怎麼應用的,會很大程度提升你的學習興趣 ,當初我可是看了好幾遍。
書籍及課後程式碼:連結:https://pan.baidu.com/s/15XtFOH18si316076GLKYfg 密碼:sawb
李航《統計學習方法》,配合著看
連結:https://pan.baidu.com/s/1Mk_O71k-H8GHeaivWbzM-Q 密碼:adep,配合著看
周志華《機器學習》,機器學習的百科全書,配合著看。
連結:https://pan.baidu.com/s/1lJoQnWToonvBU6cYwjrRKg 密碼:7rzl
3.2、深度學習
說到深度學習,我們不得不提史丹佛的另一門王牌課程CS231,李飛飛教授的。這門課的課程,課後習題,堪稱完美。必須必須看。整個系列下來,特別是課後的習題要做,做完之後你會發現,哇哦!它的課後習題就是寫程式碼來實現演算法的。這個在網易雲課堂上有。
視訊地址: http://study.163.com/course/introduction.htm?courseId=1004697005
課程筆記翻譯,知乎專欄: https://zhuanlan.zhihu.com/p/21930884
牆裂建議要閱讀這個知乎專欄,關於怎麼學這門課,這個專欄寫的很清楚。
課後作業配套答案:https://blog.csdn.net/bigdatadigest/article/category/7425092
3.3、學習時間
到這裡了,你的機器學習和深度學習算是入門了。學完上面這些,按一天6小時,一週六天的話,起碼也得三個月吧。上面是基本功一定要認真學。但是,還找不了工作。因為你還沒把這些知識應用到實際當中。
3.4、實戰部分
3.4.1、實戰基礎
這一個階段,你要開始用tensorflow(谷歌的深度學習框架)、scikit-learn(python的機器學習框架),這兩個框架極大程度地整合了各大演算法。其實上面在學習cs231n的時候你就會用到一部分。
scikit-learn的學習: http://sklearn.apachecn.org/cn/0.19.0/
這是scikit-learn的官方文件中文版翻譯,有理論有實戰,最好的庫學習資源,沒有之一。認真看,傳統的機器學習就是用這個庫來實現的。
Tensorflow的學習: https://tensorflow.google.cn/api_docs/python/?hl=zh-cn
官方文件很詳盡,還有實戰例子,學習tensorflow的不二之選
3.4.2、實戰進階
僅僅看這兩個教程是不夠的,你需要更多地去應用這兩個庫。
接下來推薦一部神書,機器學習和深度學習的實戰教學,非常非常的棒,網上有很多號稱實戰的書或者例子,我看了基本就是照搬官網的,只有這一本書,是完全按照工業界的流程解決方案進行實戰,你不僅能學習到庫的應用,還能深入瞭解工業界的流程解決方案,最好的實戰教學書,沒有之一。書名是hands-on-ml-with-sklearn-and-tf
連結:https://pan.baidu.com/s/1x318qTHGt9oZKQwHkoUvKA 密碼:xssj
3.4.3、實戰最終階段
kaggle資料競賽,如果你已經學到了這一步,恭喜你離夢想越來越近了:對於我們初學者來說,沒有機會接觸到機器學習真正的應用專案,所以一些比賽平臺是我們不錯的選擇。參加kaggle競賽可以給你的簡歷增分不少,裡面有入門級別到專家級別的實戰案例,滿足你的各方面需求。如果你能學到這一步了,我相信也不需要再看這個了。
上述所有資料的合集:https://pan.baidu.com/s/1tPqsSmSMZa6qLyD0ng87IQ 密碼:ve75
補充:
學到這個水平,應該是能夠實習的水平了,還有很多後面再說吧。比如深度學習和機器學習的就業方向,深度學習得看論文,找工作還得對你得程式設計基礎進行加強,具體就是資料結構與演算法,我當年在這個上面可是吃了很大的虧。
這裡面關於深度學習和機器學習的就業其實是兩個方向,上面的其實也沒有說全。一般來說,你得選擇一個方向專攻。我建議的是,自學的最好在後期側重機器學習方向,而不是深度學習。深度學習的崗位實在是太少,要求太高。機器學習還算稍微好點。
重點:上面的學習路徑是主要框架,但是不意味著僅僅學習這些就夠了。根據每個人基礎的不同,你有可能需要另外的學習資料補充。但是,我希望大家可以按照上面的主框架走,先按上面我推薦的資源學,有需要的再去看別的(我之後也會推薦),上面的我能列出來的都是最經典的,最有效率,而且我親身學過的。
後續文章:
上面每個學習步驟還可以細分開來,這是接下來文章的重點。比如python怎麼學,cs229和cs231學習過程中會碰到什麼困難,kaggle怎麼用,數學還跟不上怎麼辦?後續都會一一說明。
歡迎轉載,但請註明出處,尊重作者,謝謝大家了!
文章首發,討論學習,個人公眾號:learningthem
更多幹貨,會繼續分享
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31549715/viewspace-2199863/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 路徑規劃: 淺談路徑規劃演算法演算法
- 【三維路徑規劃】基於RRT三維路徑規劃
- Linux系統是什麼?親身自學經歷分享Linux
- 路徑規劃之A*演算法演算法
- 機器人路徑規劃 A*與D*機器人路徑規劃演算法詳述機器人演算法
- 學員親身經歷講述長沙“牽引力”教育網路科技
- 遊戲AI研究(三):路徑規劃遊戲AI
- 簡單的路徑規劃案例分享
- 人工智慧學習規劃人工智慧
- 動態規劃如何輸出路徑?動態規劃
- Java學習路線圖,內附完整Java自學視訊教程+工具經驗Java
- 資源路徑問題
- 軟體資源規劃
- 機器人路徑規劃其一 Dijkstra Algorithm【附動態圖原始碼】機器人Go原始碼
- 為什麼遊戲服務端的入門難度高?怎樣規劃自學路徑?遊戲服務端
- 高德地圖導航和路徑規劃地圖
- 機器人路徑規劃其二 A-Star(A*) Algorithm【附動態圖原始碼】機器人Go原始碼
- 親身經驗分享|短影片本地同城專案應該這樣做
- 2.基於取樣的路徑規劃:RRT
- 應用內路徑規劃的簡單實現
- AI博士如何做出有影響力的研究?斯隆獎得主弟子親身講述經驗AI
- 轉行軟體開發的通用學習路徑(轉自劉校長親筆)
- Django 最佳學習路徑 | 涵蓋眾多學習資源Django
- Web前端初學者應如何規劃學習路線呢?Web前端
- 為什麼你學不過動態規劃?告別動態規劃,談談我的經驗動態規劃
- 《非生物因素》解析:用資源規劃控制玩家體驗曲線
- 如何自學人工智慧?人工智慧
- 基礎路徑規劃演算法(Dijikstra、A*、D*)總結演算法
- 解析 :躋身資料科學領域的五條職業規劃道路資料科學
- 大資料學習入門規劃?和學習路線大資料
- 程式設計師面試題!親身經歷!程式設計師面試題
- 在香港尖沙咀基因檢測中心6周查血驗男女檢測後的感想,分享親身經驗
- Java技術自學規劃(學習路線圖、書籍、視訊總結)Java
- 零基礎java培訓如何規劃學習路線Java
- Linux再學習(一)-學習路線規劃Linux
- 如何用HMS Core位置和地圖服務實現附近地點路徑規劃功能地圖
- 【2018.04.19 ROS機器人作業系統】機器人控制:運動規劃、路徑規劃及軌跡規劃簡介之一ROS機器人作業系統
- 路徑規劃演算法 - 求解最短路徑 - Dijkstra(迪傑斯特拉)演算法演算法