最近學校開始了深度學習的課程,想大體上了解下關於機器學習有關的知識:算法
00 試着翻出一些機器學習相對權威的定義,看看它們有什麼共同點:編程
簡單來講,就是機器經過一系列「任務」從「經驗」(數據)中學習,而且評估「效果」如何:機器學習
爲何叫作「學習」呢?通常編程語言的作法,是定義每一步指令,逐一執行並最終達到目標。而機器學習則相反,先定義好輸出,而後程序自動「學習」出達到目標的「步驟」。編程語言
機器學習能夠分爲:學習
固然是替代重複的人工勞動,用機器自動從大量數據中識別模式——也就是「套路」啦。知道「套路」後,咱們能夠幹嗎呢?人工智能
好比垃圾郵件識別的問題,作法是先從每一封郵件中抽取出對識別結果可能有影響的因素(稱爲特徵 feature),好比發件地址、郵件標題、收件人數量等等。而後使用算法去訓練數據中每一個特徵和預測結果的相關度,最終獲得能夠預測結果的特徵。spa
算法再強大,若是沒法從數據中「學習到」更好的特徵表達,也是徒勞。一樣的數據,使用不一樣的表達方法,可能會極大影響問題的難度。一旦解決了數據表達和特徵提取問題,不少人工智能任務也就迎刃而解。orm
可是對機器學習來講,特徵提取並不簡單。特徵工程每每須要人工投入大量時間去研究和調整,就好像本來應該機器解決的問題,卻須要人一直在旁邊攙扶。深度學習
深度學習即是解決特徵提取問題的一個機器學習分支。它能夠自動學習特徵和任務之間的關聯,還能從簡單特徵中提取複雜的特徵。博客