為什么越來越多的企業開始應用機器學習

機器學習是近20多年興起的一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、計算復雜性理論等多門學科。機器學習理論主要是設計和分析一些讓計算機可以自動“學習”的算法。機器學習算法是一類從數據中自動分析獲得規律,并利用規律對未知數據進行預測的算法。

前言:機器學習是近20多年興起的一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、計算復雜性理論等多門學科。機器學習理論主要是設計和分析一些讓計算機可以自動“學習”的算法。機器學習算法是一類從數據中自動分析獲得規律,并利用規律對未知數據進行預測的算法。因為學習算法中涉及了大量的統計學理論,機器學習與推斷統計學聯系尤為密切,也被稱為統計學習理論。算法設計方面,機器學習理論關注可以實現的,行之有效的學習算法。很多推論問題屬于無程序可循難度,所以部分的機器學習研究是開發容易處理的近似算法。

機器學習已廣泛應用于數據挖掘、計算機視覺、自然語言處理、生物特征識別、搜索引擎、醫學診斷、檢測信用卡欺詐、證券市場分析、DNA序列測序、語音和手寫識別、戰略游戲和機器人等領域。

一、機器學習的定義

機器學習有一下幾種定義:

  • 機器學習是一門人工智能的科學,該領域的主要研究對象是人工智能,特別是如何在經驗學習中改善具體算法的性能。
  • 機器學習是對能通過經驗自動改進的計算機算法的研究。
  • 機器學習是用數據或以往的經驗,以此優化計算機程序的性能標準。

二、機器學習分類

機器學習可以分成下面幾種類別:

  • 監督學習從給定的訓練數據集中學習出一個函數,當新的數據到來時,可以根據這個函數預測結果。監督學習的訓練集要求是包括輸入和輸出,也可以說是特征和目標。訓練集中的目標是由人標注的。常見的監督學習算法包括回歸分析和統計分類。
  • 無監督學習與監督學習相比,訓練集沒有人為標注的結果。常見的無監督學習算法有聚類。
  • 半監督學習介于監督學習與無監督學習之間。
  • 增強學習通過觀察來學習做成如何的動作。每個動作都會對環境有所影響,學習對象根據觀察到的周圍環境的反饋來做出判斷。

監督學習和非監督學習的差別就是訓練集目標是否人標注。他們都有訓練集 且都有輸入和輸出

三、機器學習算法列表

  • 決策樹(Decision tree)

決策樹是一個決策支持工具,它使用樹形圖或者決策模型以及可能性序列,包括偶然事件的結果、資源成本和效用。下圖是其基本原理:

機器學習,探碼科技

  • 樸素貝葉斯分類(Naive Bayesian classification)

樸素貝葉斯分類器是一類簡單的概率分類器,它基于貝葉斯定理和特征間的強大的(樸素的)獨立假設。圖中是貝葉斯公式,其中P(A|B)是后驗概率,P(B|A)是似然,P(A)是類先驗概率,P(B)是預測先驗概率。

機器學習,探碼科技

  • 最小二乘法(Ordinary Least Squares Regression)

如果你懂統計學的話,你可能以前聽說過線性回歸。最小二乘法是一種計算線性回歸的方法。你可以將線性回歸看做通過一組點來擬合一條直線。實現這個有很多種方法,“最小二乘法”就像這樣:你可以畫一條直線,然后對于每一個數據點,計算每個點到直線的垂直距離,然后把它們加起來,那么最后得到的擬合直線就是距離和盡可能小的直線。

機器學習,探碼科技

  • 邏輯回歸(Logistic Regression)

邏輯回歸是一個強大的統計學方法,它可以用一個或多個解釋變量來表示一個二項式結果。它通過使用邏輯函數來估計概率,從而衡量類別依賴變量和一個或多個獨立變量之間的關系,后者服從累計邏輯分布。

機器學習,邏輯回歸,探碼科技

  • 支持向量機(Support Vector Machine,SVM)

SVM是二進制分類算法。給定N維坐標下兩種類型的點,SVM生成(N-1)維的超平面來將這些點分成兩組。假設你在平面上有兩種類型的可以線性分離的點,SVM將找到一條直線,將這些點分成兩種類型,并且這條直線盡可能遠離所有這些點。

機器學習,支持向量機,探碼科技

  • 集成方法(Ensemble methods)

集成方法是學習算法,它通過構建一組分類器,然后通過它們的預測結果進行加權投票來對新的數據點進行分類。原始的集成方法是貝葉斯平均,但是最近的算法包括糾錯輸出編碼、Bagging和Boosting。

機器學習,繼承方法,探碼科技

  • 聚類算法(Clustering Algorithms)

聚類是將一系列對象分組的任務,目標是使相同組(集群)中的對象之間比其他組的對象更相似。

機器學習,聚類算法,探碼科技

  • 主成分分析(Principal Component Analysis,PCA)

PCA是一個統計學過程,它通過使用正交變換將一組可能存在相關性的變量的觀測值轉換為一組線性不相關的變量的值,轉換后的變量就是所謂的主分量。

機器學習,主成分分析,探碼科技

  • 奇異值分解(Singular Value Decomposition,SVD)

在線性代數中,SVD是分解一個實數的比較復雜的矩陣。對于一個給定的m*n的矩陣M,存在一個分解M = UΣV,這里U和V是酉矩陣,Σ是一個對角矩陣。

PCA 是 SVD 的一個簡單應用,在計算機視覺中,第一個人臉識別算法,就運用了 PCA 和 SVD 算法。使用這兩個算法可以將人臉表示為 “特征臉”線性組合,降維,然后通過簡單的方法匹配人臉的身份;雖然現代的方法復雜得多,但許多仍然依賴于類似的技術。

機器學習,奇異值分解,探碼科技

  • 獨立成分分析(Independent Component Analysis,ICA)

ICA是一種統計技術,主要用于揭示隨機變量、測量值或信號集中的隱藏因素。ICA對觀測到的多變量數據定義了一個生成模型,這通常是作為樣本的一個大的數據庫。在模型中,假設數據變量由一些未知的潛在變量線性混合,混合方式也是未知的。潛在變量被假定為非高斯分布并且相互獨立,它們被稱為觀測數據的獨立分量。在線性代數中,SVD是復雜矩陣的因式分解。對于給定的m * n矩陣M,存在分解使得M=UΣV,其中U和V是酉矩陣,Σ是對角矩陣。

機器學習,獨立成分分析,探碼科技

四、經典案例看機器學習的優勢

安檢識別:航班乘客、音樂會觀眾以及球迷在進入特定場所時,其隨身攜帶的包都要進行安全檢查。人類安全檢查人員只能大概知道這些人包裹里帶的什么東西,而機器學習可以識別每個物品是什么。而且,機器學習可以輕松應付季節變化對于背包類型和包里所裝東西的變化,并能夠有針對某些特定比賽或場所設置特定檢測規則。

法律信息分析:律師有時需要尋找一些特定行為的描述文字,有時則需要為某個特定行為搜索更多資料。但人類會由于自身的經驗和過往經歷的限制,導致在尋找相關模型時產生偏見,比如尋找最熟悉的。但機器不會,機器學習可以更精確地找到結果,而且速度更快,也會節約成本。

垃圾郵件檢測:根據郵箱中的郵件,識別哪些是垃圾郵件,哪些不是。這樣的模型,可以程序幫助歸類垃圾郵件和非垃圾郵件。這個例子,我們應該都不陌生。

信用卡欺詐檢測:根據用戶一個月內的信用卡交易,識別哪些交易是該用戶操作的,哪些不是。這樣的決策模型,可以幫助程序退還那些欺詐交易。

數字識別:根據信封上手寫的郵編,識別出每一個手寫字符所代表的數字。這樣的模型,可以幫助程序閱讀和理解手寫郵編,并根據地利位置分類信件。

語音識別:從一個用戶的話語,確定用戶提出的具體要求。這樣的模型,可以幫助程序能夠并嘗試自動填充用戶需求。帶有Siri系統的iPhone就有這種功能。

人臉識別:根據相冊中的眾多數碼照片,識別出那些包含某一個人的照片。這樣的決策模型,可以幫助程序根據人臉管理照片。某些相機或軟件,如iPhone,就有這種功能。

產品推薦:根據一個用戶的購物記錄和冗長的收藏清單,識別出這其中哪些是該用戶真正感興趣,并且愿意購買的產品。這樣的決策模型,可以幫助程序為客戶提供建議并鼓勵產品消費。登錄Facebook或GooglePlus,它們就會推薦可能有關聯的用戶給你。

醫學分析:根據病人的癥狀和一個匿名的病人資料數據庫,預測該病人可能患了什么病。這樣的決策模型,可以程序為專業醫療人士提供支持。

股票交易:根據一支股票現有的和以往的價格波動,判斷這支股票是該建倉、持倉還是減倉。這樣的決策模型,可以幫助程序為金融分析提供支持。

客戶細分:根據用戶在試用期的的行為模式和所有用戶過去的行為,識別出哪些用戶會轉變成該產品的付款用戶,哪些不會。這樣的決策模型,可以幫助程序進行用戶干預,以說服用戶早些付款使用或更好的參與產品試用。

形狀鑒定:根據用戶在觸摸屏幕上的手繪和一個已知的形狀資料庫,判斷用戶想描繪的形狀。這樣的決策模型,可以幫助程序顯示該形狀的理想版本,以繪制清晰的圖像。iPhone應用Instaviz就能做到這樣。

五、企業越來越多的應用及其學習的原因

機器學習能夠擴展到企業所面臨的各項挑戰中,如合同管理,客戶服務,金融,法律,質量,定價,生產等,這一能力要歸功于機器學習會不斷學習并改善表現。機器學習算法本質上是迭代、持續學習的,并且會尋找最優的輸出結果。每出現一次誤算,機器學習算法就會改正一次錯誤,然后開始下一次的數據分析的迭代計算。計算過程以毫秒為單位進行,機器學習可以異常高效地優化決策和預測輸出。

加速企業采用機器學習的幾項因素有,云計算、云存儲的經濟性,驅動物聯網連接設備增長的傳感器的發展,可在幾分鐘內讀取幾 G 數據移動設備的普遍使用,等。還有以下情況,搜索引擎中創建語境(creatingcontext )所面臨的許多挑戰,在預測最具可能后果時,優化運行所面臨的復雜問題,以及既有的讓機器學習蓬勃的完美條件。