當前位置:
首頁 > 科技 > 人工智慧——機器學習工程師需要了解的十種演算法

人工智慧——機器學習工程師需要了解的十種演算法

毫無疑問,近些年機器學習和人工智慧領域受到了越來越多的關注。隨著大數據成為當下工業界最火爆的技術趨勢,機器學習也藉助大數據在預測和推薦方面取得了驚人的成績。比較有名的機器學習案例包括Netflix根據用戶歷史瀏覽行為給用戶推薦電影,亞馬遜基於用戶的歷史購買行為來推薦圖書。


那麼,如果你想要學習機器學習的演算法,該如何入門呢?就我而言,我的入門課程是在哥本哈根留學時選修的人工智慧課程。老師是丹麥科技大學應用數學和計算機專業的全職教授,他的研究方向是邏輯學和人工智慧,主要是用邏輯學的方法來建模。課程包括了理論/核心概念的探討和動手實踐兩個部分。我們使用的教材是人工智慧的經典書籍之一:Peter Norvig教授的《人工智慧——一種現代方法》,課程涉及到了智能代理、基於搜索的求解、對抗搜索、概率論、多代理系統、社交化人工智慧,以及人工智慧的倫理和未來等話題。在課程的後期,我們三個人還組隊做了編程項目,實現了基於搜索的簡單演算法來解決虛擬環境下的交通運輸任務。


我從課程中學到了非常多的知識,並且打算在這個專題里繼續深入學習。在過去幾周內,我參與了舊金山地區的多場深度學習、神經網路和數據架構的演講 —— 還有一場眾多知名教授雲集的機器學習會議。最重要的是,我在六月初註冊了Udacity的《機器學習導論》在線課程,並且在幾天前學完了課程內容。在本文中,我想分享幾個我從課程中學到的常用機器學習演算法。

機器學習演算法通常可以被分為三大類 —— 監督式學習,非監督式學習和強化學習。監督式學習主要用於一部分數據集(訓練數據)有某些可以獲取的熟悉(標籤),但剩餘的樣本缺失並且需要預測的場景。非監督式學習主要用於從未標註數據集中挖掘相互之間的隱含關係。強化學習介於兩者之間 —— 每一步預測或者行為都或多或少有一些反饋信息,但是卻沒有準確的標籤或者錯誤提示。由於這是入門級的課程,並沒有提及強化學習,但我希望監督式學習和非監督式學習的十個演算法足夠吊起你的胃口了。


決策樹:


決策樹是一種決策支持工具,它使用樹狀圖或者樹狀模型來表示決策過程以及後續得到的結果,包括概率事件結果等。請觀察下圖來理解決策樹的結構。

人工智慧——機器學習工程師需要了解的十種演算法 點擊播放 GIF/4K


從商業決策的角度來看,決策樹就是通過儘可能少的是非判斷問題來預測決策正確的概率。這種方法可以幫你用一種結構性的、系統性的方法來得出合理的結論。


樸素貝葉斯分類器:


樸素貝葉斯分類器是一類基於貝葉斯理論的簡單的概率分類器,它假設特徵之前是相互獨立的。下圖所示的就是公式 —— P(A|B)表示後驗概率,P(B|A)是似然值,P(A)是類別的先驗概率,P(B)代表預測器的先驗概率。

人工智慧——機器學習工程師需要了解的十種演算法


現實場景中的一些例子包括:


檢測垃圾電子郵件


將新聞分為科技、政治、體育等類別


判斷一段文字表達積極的情緒還是消極的情緒

用於人臉檢測軟體


最小平方回歸:


如果你學過統計課程,也許聽說過線性回歸的概念。最小平方回歸是求線性回歸的一種方法。你可以把線性回歸想成是用一條直線擬合若干個點。擬合的方法有許多種,「最小平方」的策略相當於你畫一條直線,然後計算每個點到直線的垂直距離,最後把各個距離求和;最佳擬合的直線就是距離和最小的那一條。

人工智慧——機器學習工程師需要了解的十種演算法


線性指的是用於擬合數據的模型,而最小平方指的是待優化的損失函數。


邏輯回歸:


邏輯回歸模型是一種強大的統計建模方式,它用一個或多個解釋性變數對二值輸出結果建模。它用邏輯斯蒂函數估計概率值,以此衡量分類依賴變數和一個或多個獨立的變數之間的關係,這屬於累積的邏輯斯蒂分布。

人工智慧——機器學習工程師需要了解的十種演算法



通常來說,邏輯回歸模型在現實場景中的應用包括:


信用評分


預測商業活動的成功概率


預測某款產品的收益


預測某一天發生地震的概率


支持向量機:


支持向量機是一種二分類演算法。在N維空間中給定兩類點,支持向量機生成一個(N-1)維的超平面將這些點分為兩類。舉個例子,比如在紙上有兩類線性可分的點。支持向量機會尋找一條直線將這兩類點區分開來,並且與這些點的距離都儘可能遠。

人工智慧——機器學習工程師需要了解的十種演算法



利用支持向量機(結合具體應用場景做了改進)解決的大規模問題包括展示廣告、人體結合部位識別、基於圖像的性別檢查、大規模圖像分類等……


集成方法:


集成方法是先構建一組分類器,然後用各個分類器帶權重的投票來預測新數據的演算法。最初的集成方法是貝葉斯平均,但最新的演算法包括誤差糾正輸出編碼和提升演算法。

人工智慧——機器學習工程師需要了解的十種演算法



那麼集成模型的原理是什麼,以及它為什麼比獨立模型的效果好呢?


它們消除了偏置的影響:比如把民主黨的問卷和共和黨的問卷混合,從中得到的將是一個不倫不類的偏中立的信息。


它們能減小預測的方差:多個模型聚合後的預測結果比單一模型的預測結果更穩定。在金融界,這被稱為是多樣化 —— 多個股票的混合產品波動總是遠小於單個股票的波動。這也解釋了為何增加訓練數據,模型的效果會變得更好。


它們不容易產生過擬合:如果單個模型不會產生過擬合,那麼將每個模型的預測結果簡單地組合(取均值、加權平均、邏輯回歸),沒有理由產生過擬合。


聚類演算法:


聚類演算法的任務是將一群物體聚成多個組,分到同一個組(簇)的物體比其它組的物體更相似。

人工智慧——機器學習工程師需要了解的十種演算法



每種聚類演算法都各不相同,這裡列舉了幾種:


基於類心的聚類演算法


基於連接的聚類演算法


基於密度的聚類演算法


概率型演算法


降維演算法


神經網路/深度學習


主成分分析:


主成分分析屬於統計學的方法,過正交變換將一組可能存在相關性的變數轉換為一組線性不相關的變數,轉換後的這組變數叫主成分。

人工智慧——機器學習工程師需要了解的十種演算法



主成分分析的一些實際應用包括數據壓縮,簡化數據表示,數據可視化等。值得一提的是需要領域知識來判斷是否適合使用主成分分析演算法。如果數據的雜訊太大(即各個成分的方差都很大),就不適合使用主成分分析演算法。


奇異值分解:


奇異值分解是線性代數中一種重要的矩陣分解,是矩陣分析中正規矩陣酉對角化的推廣。對於給定的m*n矩陣M,可以將其分解為M = UΣV,其中U和V是m×m階酉矩陣,Σ是半正定m×n階對角矩陣。

人工智慧——機器學習工程師需要了解的十種演算法



主成分分析其實就是一種簡單的奇異值分解演算法。在計算機視覺領域中,第一例人臉識別演算法使用了主成分分析和奇異值分解將人臉表示為一組「特徵臉(eigenfaces)」的線性組合,經過降維,然後利用簡單的方法匹配候選人臉。儘管現代的方法更加精細,許多技術還是於此很相似。


獨立成分分析:


獨立成分分析是一種利用統計原理進行計算來揭示隨機變數、測量值或者信號背後的隱藏因素的方法。獨立成分分析演算法給所觀察到的多變數數據定義了一個生成模型,通常這些變數是大批量的樣本。在該模型中,數據變數被假定為一些未知的潛變數的線性混合,而且混合系統也未知。潛變數被假定是非高斯和相互獨立的,它們被稱為所觀察到的數據的獨立分量。

人工智慧——機器學習工程師需要了解的十種演算法



獨立成分分析與主成分分析有關聯,但它是一個更強大的技術。它能夠在這些經典方法失效時仍舊找到數據源的潛在因素。它的應用包括數字圖像、文檔資料庫、經濟指標和心理測量。


現在,請運用你所理解的演算法,去創造機器學習應用,改善全世界人們的生活質量吧。


來源:量化交易員


期權實戰培訓班(一期)十月開班,報名火熱進行中!


期權及其核心概念


期權交易及其核心概念


期權策略的構建與風險管理


波動率交易與場外期權


2016年10月15--16日 北京


請您繼續閱讀更多來自 大數據實驗室 的精彩文章:

關於量子衛星,這大概是最有趣的科普漫畫了
永恆的金色對角線
沒有氧氣,是什麼讓太陽熊熊燃燒?
概率與隨機過程基礎
現代數學確實在改變世界

TAG:大數據實驗室 |

您可能感興趣

工程領域的人工神經網路和深度學習等方法,是否需要尋求其在神經科學、認知科學和生物學等其他領域的合理性?
天文學領域都需要哪些計算機技術?
人工智慧投資熱不會衰退 但需要獨具慧眼
婚姻需要學習家庭溝通藝術
隨著人工智慧進步,是否還需要人去工作?
喬治:師弟需要學會控制自己
人工智慧需要自毀開關嗎?
創造智能不需要複製人類
中國工程師創新需要哪些支持,又要克服哪些障礙?
好的婚姻,需要工匠精神
如何在家培養孩子動手能力?你需要這份「大工程」清單
天堂有羽:羽毛球最需要的核心力量訓練方法
修行者學佛 需要哪幾種心
漫談弱光戰術——執法人員為何需要武器照明
物理教學需要一種人文情懷
「人工樹葉」不需要電池儲存能量
學佛需要拜師和實修嗎
老沒辦法PB?你需要試試科學化訓練
積極的人生需要學會做減法