资源 | 普通程序员如何自学机器学习
機器學習工程師自學指南
???? 本文將會介紹機器學習的方方面面,從簡單的線性回歸到最新的神經網絡,你不僅僅能學會如何使用它們,并且還能從零進行構建。
???? 以下內容以計算機視覺為導向,這是學習一般知識的最快方法,并且你從中獲得的經驗可以很容易地遷移到機器學習的其他領域。
???? 本文我們將會使用TensorFlow作為機器學習框架。
???? 學習是一個多維因素作用的結果,所以如果能基于學習資料,理論和實踐并重,學習效果會好很多。另外,還有一個很好的實踐方法是參與Kaggle競賽,通過競賽的形式解決實際生活中的問題,從而鞏固此前所學。
(要求:關于Python,你無需達到專家級別,但要很好地掌握基礎知識)
1.課程
1.1 實用機器學習(約翰霍普金斯大學)
www.coursera.org/learn/pract…
1.2 機器學習(斯坦福大學)
www.coursera.org/learn/machi…
以上兩個課程會教你一些數據科學和機器學習的基礎知識,也有助于你對更有難度知識的學習和掌握。
1.3 CS231n:面向視覺識別的卷積神經網絡 2017 (2016)
cs231n.stanford.edu/
該課程是網上關于ML & CV最好的課程之一,不僅能讓你了解這里邊的水有多深,還能為你進一步的研究探索打下良好的基礎。
1.4 深度學習(Udacity的課程)
www.udacity.com/course/deep…
1.5 CS224d:面向自然語言處理的深度學習
cs224d.stanford.edu/
1.6 深度學習相關的電子書(涵蓋了ML的方方面面)
leonardoaraujosantos.gitbooks.io/artificial-…
2.實戰
以下是課程和項目列表,有助于理解運行原理并找到提升辦法。
2.1. Tensorflow 相關的簡單練習課
www.kadenze.com/courses/cre…
2.2. Tensorflow cookbook
github.com/nfmcclure/t…
2.3. Tensorflow-101教程部分
github.com/lengstrom/f…
2.4. 如何使用神經網絡實現圖像風格遷移。
github.com/lengstrom/f…
2.5 圖像分割
github.com/MarvinTeich…
2.6 使用SSD實現物體識別
github.com/balancap/SS…
2.7 面向物體識別和分割的快速掩膜RCNN
github.com/CharlesShan…
2.8 強化學習,對搭建一個機器人或者Dota AI非常有用。
github.com/dennybritz/…
2.9 Google Brain團隊的Magenta項目
github.com/tensorflow/…
2.10 深度度雙邊學習實時圖像增強
groups.csail.mit.edu/graphics/hd…
2.11 自動駕駛汽車項目
github.com/udacity/sel…
3. FAQ
學習過程中遇到困難怎么辦?
首先,你必須明白機器學習不是100%精確的,大多數情況下只是一個很好的猜測并且需要大量的調整迭代。因此,在大多數情況下,想出一些獨特的想法是非常困難的,因為你的時間和資源大多會花在訓練模型上。所以不要試圖獨自找出解決方案,你可以搜索論文、項目以及找可以幫助你的人。可以說,在獲得經驗方面越快越好。
以下這些網站可以幫得到你:
www.gitxiv.com/
www.arxiv-sanity.com/
arxiv.org/, https://s…
為什么論文不能完全解決問題,或者在一些特定情況下為什么論文被驗證是錯的?
很遺憾的說,并不是所有的科技人員都愿意公開自己的研究成果,但他們需要通過發表論文來獲得收益或者名望。所以他們中的一些人只公布了一部分材料,或者給出了錯誤的公式。所以我們最好搜索代碼,而不是論文。論文只是解決了特定問題的證據或者事實。
從哪里查找最新的學習資料?
www.gitxiv.com/,不僅能找到最新論文,還能找到所需要的代碼。
www.arxiv-sanity.com/
arxiv.org/
用云計算還是臺式機/筆記本電腦?
在有大量計算需求的情況下,云計算是最好的選擇。對于學習和測試,使用帶有支持CUDA的顯卡的PC/筆記本電腦要便宜得多。當然,如果你有免費云資源或多余資金,還是使用云比較好。
如何提高調超參數技能?
訓練中的主要問題是時間,你不可能一直坐在那里盯著訓練數據,因此建議你使用Grid Search。只需要創建一組超參數和模型架構,一個接一個的運行,并保存結果。這樣你就能晚上訓練,在接下來的一天對比結果,直至找到最有希望的那個。
你可以看看如何在sklearn庫中完成這個操作:
scikit-learn.org/stable/modu…
總結
以上是生活随笔為你收集整理的资源 | 普通程序员如何自学机器学习的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 3D游戏《龙心传奇Dragona》全套完
- 下一篇: TensorFlow学习笔记(1):va