- Arthur Samuel定義(1959):機器學習是研究使得計算機無需顯示編程就能賦予計算機學習能力的學科。(Machine Learning: Field of study that gives computers the ability to learn without being explicitly programmed.)
- Tom Michell定義(1998):爲完成任務T,計算機從經驗E中學習,並用性能P來度量,並經過經驗E來提升性能P。(A computer program is said to learnfrom experience E with respect to some task Tand some performance measure P, if itsperformance on T, as measured by P, improveswith experience E.)
舉個例子,咱們須要將郵件自動分類爲垃圾郵件(Spam)和正常郵件(Not Spam),此時任務T指的就是郵件分類這項工做,經驗E就是歷史郵件數據,這些數據包含了郵件內容並標明是否爲垃圾郵件,性能P指的是正確分類的數量,越高越準確。算法
機器學習主要分爲監督學習(Supervised Learning)和無監督學習(Unsupervised Learning)。此外,還有強化學習(Reinforcement Learning)和推薦系統(Recommender Systems)。編程
在監督學習中,數據所對應正確答案已經給出。網絡
對於迴歸問題(Regression),給出數據的同時也給出的對應的值(正確答案)。例如房價預測,給出了房屋面積和價格,咱們的任務是按照面積預測房價,此時給出的訓練數據包含了房屋面積和價格,這些價格就是正確答案。機器學習算法須要找到一條曲線(或直線)來擬合這些數據,從而獲得一個模型,這個模型接受房屋面積做爲輸入,根據模型輸出預測價格。迴歸模型須要預測的數據是連續值。如圖:機器學習
除了迴歸問題,還有分類問題(Classfication)。例如,咱們想要預測是否患乳腺癌,訓練集給出了腫塊大小與是否患癌的關係,這些是否患癌的數據稱爲標籤(Tag)。分類問題的典型特徵就是輸出爲離散值(Discrete valued output)。算法輸出0表示未患癌,輸出1表示患癌。如圖:性能
對於監督學習,訓練集包含了數據(特徵向量)和正確答案(標籤或值)。而無監督學習主要解決的問題是,當數據沒有給出對應的正確答案時,咱們須要將其分組(或分類),稱爲聚類(Clustering)。以下圖:學習
其應用範圍較廣,例如網絡上的新聞聚合,當程序搜索到多條新聞,這些新聞不少是報道同一件事的,此時使用聚類算法就能夠將這些新聞歸爲一類,造成專題。例如報道華爲的新聞經過聚類算法展現爲一類。此外,其應用還有社交網絡分析(分析出哪些人有聯繫並歸類)、市場劃分(根據客戶數據分爲不一樣種類的客戶)。spa
除了聚類,還有雞尾酒會算法、PCA(Principal Component Analysis,主成分分析)等無監督學習算法。orm