機器學習(Machine Learning, ML)是一門多領域交叉學科,涉及機率論、統計學、逼近論、凸分析、算法複雜度理論等多門學科。專門研究計算機怎樣模擬或實現人類的學習行爲,以獲取新的知識或技能,從新組織已有的知識結構使之不斷改善自身的性能。算法
它是人工智能的核心,是使計算機具備智能的根本途徑,其應用遍佈人工智能的各個領域,它主要使用概括、綜合而不是演繹。網絡
機器學習有下面幾種定義:(一個講的比較好的文章)機器學習
一種常常引用的英文定義是:A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E.性能
機器學習已經有了十分普遍的應用,例如:數據挖掘、計算機視覺、天然語言處理、生物特徵識別、搜索引擎、醫學診斷、檢測信用卡欺詐、證券市場分析、DNA序列測序、語音和手寫識別、戰略遊戲和機器人運用。學習
機器學習不只有一種方法,實現它的方法多種多樣。這裏所說的方法,在程序語言中,咱們叫作算法。優化
1)、監督學習模式:supervised learning
若是在學習過程當中,咱們不斷的向計算機提供數據和這些數據對應的值,好比說給計算機看貓和狗的圖片,告訴計算機那些圖片裏是貓,那些是狗,而後在讓它學習去分辨貓和狗。經過這種指引的方式,讓計算機學習咱們是如何把這些圖片數據對應上圖片所表明的物體。也就是讓計算機學習這些標籤能夠表明那些圖片。這種學習方式叫作「監督學習」。預測房屋的價格,股票的漲停一樣能夠用監督學習來實現。你們所熟知的神經網絡一樣是一種監督學習的方式。搜索引擎
2)、非監督學習模式:unsupervised learning
一樣在這種學習過程當中,我只給計算機提供貓和狗的圖片,可是並無告訴它那些是貓那些是狗。取而代之的是,我讓它主機去判斷和分類。讓它本身總結出這兩種類型的圖片的不一樣之處。這就是一種「非監督學習」,在這種學習過程當中,咱們能夠不用提供數據所對應的標籤信息,計算機經過觀察各類數據之間的特性,會發現這些特性背後的規律。這些規律也就是非監督方法所學到的東西。人工智能
3)、半監督學習模式:semi-supervised learning
還有一種方法,綜合了監督學習和非監督學習的特徵,這種叫做「半監督學習」,它主要考慮如何利用少許有標籤的樣本和大量的沒有標籤樣本進行訓練和分類。spa
4)、遺傳算法模式:genetic algorithm
還有一種和強化學習相似的學習方法,叫作遺傳算法。這種方法是模擬咱們熟知的進化理論,淘汰弱者,適者生存。經過這樣的淘汰機制去選擇最優的設計或模型。好比開發者所開發的計算機學會超級瑪麗,最開始的馬里奧1代可能不久就犧牲了,不過系統會基於1代的馬里奧隨機生成2代。而後在保存這些代裏面最厲害的馬里奧。淘汰掉比較弱的馬里奧代,而後再次基於強者「繁衍和變異」,生出更強的馬里奧,這也就是遺傳算法的基本思想。設計
5)、強化學習模式:reinforcement learning
在規劃機器人的行爲準則方面,一種機器人學習方法叫做「強化學習」,也就是把計算機丟到一個對於它徹底陌生的環境或者讓它完成一項從未接觸過的任務。它本身回去嘗試各類手段。最後讓本身成功使用這一個陌生的環境。或者學會完成這件任務的方法途徑。好比我想訓練機器人去投籃,咱們只須要給它一個球。並告訴它你投進了我給你記一分,讓它本身去嘗試各類各樣的投籃方法。在開始階段,它的命中率可能會很是低。不過它回像人類同樣主機總結和學習投籃失敗或成功的經驗。最後達到很高的命中率。GOOGLE 開發的ALPHAGO 也就是應用了之一種學習方式。
傳通通計學習:基於數學模型的機器學習方法。包括SVM
、邏輯迴歸、決策樹等。
這一類算法基於嚴格的數學推理,具備可解釋性強、運行速度快、可應用於小規模數據集的特色。
深度學習:基於神經網絡的機器學習方法。包括前饋神經網絡、卷積神經網絡、遞歸神經網絡等。
這一類算法基於神經網絡,可解釋性較差,強烈依賴於數據集規模。可是這類算法在語音、視覺、天然語言等領域很是成功。
三、小結
沒有免費的午飯定理(No Free Lunch Theorem:NFL):對於一個學習算法A
,若是在某些問題上它比算法B
好,那麼必然存在另外一些問題,在那些問題中B
比A
更好。所以不存在這樣的算法:它在全部的問題上都取得最佳的性能。所以要談論算法的優劣必須基於具體的學習問題。