決策矩陣、聚類、回歸?這裡有一篇無人駕駛的機器學習演算法大全!
GIF/1.7M
圖:pixabay
「機器人圈」導覽:無人駕駛被認為是未來人工智慧技術應用的最大市場規模和影響力的落腳點。近年來,為了使汽車能夠安全可靠地「自主」上路,研究人員可沒少花心思。本文編譯自kdnuggets,該文全面概述了無人駕駛現階段使用的機器學習技術。我們一起來看看,哪些技術將影響未來下一代出行?
今天,機器學習演算法被廣泛應用,以解決製造無人駕駛汽車行業中出現的各種挑戰。隨著感測器數據處理在汽車ECU(電子控制單元)中被引入,我們必須越來越多地使用機器學習來完成新的任務。潛在的應用涉及通過來自不同外部和內部感測器(如激光雷達、雷達、照相機或物聯網)的數據融合來評估駕駛員狀況或駕駛場景分類。
運行汽車信息娛樂系統的應用程序可以從感測器數據融合系統接收信息。例如,如果車輛注意到駕駛員狀態不對勁,則可以將汽車指引到醫院。這種基於機器學習的應用程序還包括駕駛員的語言、手勢識別和語言翻譯。演算法被分類為無監督學習和監督學習。兩者之間的區別在於他們學習的方式。
監督學習演算法利用訓練數據集學習,並持續學習直到達到他們所期望的信息(最小化錯誤概率)的程度。監督演算法可以分為回歸、分類和異常檢測或降維。
無監督學習演算法嘗試從可用數據中獲取價值。這意味著,在可用數據內,演算法產生關係,以便檢測模式或根據它們之間的相似程度將數據集劃分為子組。無監督學習演算法通常被分類為關聯規則學習和聚類。
強化學習演算法是另一組機器學習演算法,這種學習演算法介於在無監督和監督學習之間。對於每個訓練示例,在監督學習中有一個目標標籤;在無監督學習中完全沒有標籤;強化學習包括時間延遲和稀疏標籤——也就是「激勵」。
每個agent會根據環境獎勵學習自身行為。了解演算法的優點和局限性,並開發高效的學習演算法是強化學習的目標。強化學習可以解決大量實際應用,從人工智慧的問題到控制工程或運籌學,這些都是與自動駕駛汽車開發相關的。它可以分為間接學習和直接學習。
在自動駕駛汽車上,機器學習演算法的主要任務之一是持續感應周圍環境,並預測可能出現的變化。這些任務分成四個子任務:
?檢測對象
?物體識別及分類
?物體定位
?運動預測
機器學習演算法被分為4類:
?決策矩陣演算法
?聚類演算法
?模式識別演算法
?回歸演算法
我們可以利用其中一類機器學習演算法來完成2個以上的子任務。例如,回歸演算法既可以用於物體定位,也可以用於對象檢測和運動預測。
決策矩陣演算法
決策矩陣演算法能系統地分析、識別和評估信息集和值之間關係的表現。這些演算法主要用於決策。汽車是否需要制動或左轉基於這些演算法對物體的下一次運動的識別、分類和預測的置信度。決策矩陣演算法是由獨立訓練的各種決策模型組合起來的模型,在某些方面,將這些預測結合起來進行總體預測,同時降低決策中錯誤的可能性。AdaBoosting就是其中最常用的演算法。
Adaptive Boosting演算法也可以簡稱為AdaBoost,它是可以用於回歸或分類的多種學習演算法的組合。與任何其他機器學習演算法相比,它克服了過度擬合問題,並且通常對異常值和雜訊數據非常敏感。為了創建一個複合強大的學習器,AdaBoost需要經過多次迭代,因此,它具有適應性。學習器將重點關注被分類錯誤的樣本,最後再通過加權將弱學習器組合成強學習器。
AdaBoost有助於將弱閾值分類器提升為強分類器。上面的圖像描繪了如何在一個可以理解性代碼的單個文件中實現AdaBoost演算法。該函數包含一個弱分類器和boosting組件。弱分類器嘗試在數據維度之一中定位理想閾值,將數據分為2類。分類器通過迭代部分調用,並且在每個分類步驟之後,它改變了錯誤分類樣本的權重。因此,它實際創建了級聯的弱分類器,但性能像強分類器一樣好。
聚類演算法
有時,由系統獲取的圖像不清楚,並且難以定位和檢測物體。有時,分類演算法有可能丟失對象,在這種情況下,它們無法對系統進行分類並報告。原因可能是不連續的數據、非常少的數據點或低解析度圖像。聚類演算法專門用於從數據點發現結構。它描述了分類的方法和分類的問題,如回歸。聚類方法通常通過對分層和基於質心的方法進行建模來組織。所有方法都利用數據中的固有結構將數據完美地組織成最大共性的組。K-means是一種常見的聚類演算法。
K-means是一個著名的聚類演算法。 K-means存儲它用於定義集群的k個質心。如果一個點比任何其他質心更接近該集群的質心,那麼這個點被說成是在一個特定的集群中。通過根據當前分配數據點到集群和根據當前質心將數據點分配給集群,選擇質心之間進行交替。
K-means演算法——聚類質心被描繪為十字,訓練樣本被描繪為點。 其中(a)表示原始數據集;(b)表示隨機初始聚類中心。(c-f)表示運行2次k-means迭代的演示。每個訓練樣本在每個迭代中分配給最接近的聚類中心,然後將每個聚類中心移動到分配給它的點的平均值。
模式識別演算法(分類)
通過高級駕駛輔助系統(ADAS)中的感測器獲得的圖像由各種環境數據組成,需要過濾圖像以通過排除不相關的數據點來確定物體類別的樣例。在對物體分類之前,模式的識別是數據集中的重要一步。這種演算法被定義為數據簡化演算法。
數據簡化演算法有助於減少對象的數據集邊緣和折線(擬合線段)以及圓弧到邊緣。直到一個角落、線段與邊緣對齊,並在此之後開始一個新的線段。圓弧與類似於弧的線段的序列對齊。以各種方式,將圖像的特徵(圓弧和線段)組合以形成用於確定物體的特徵。
通過PCA(原理分量分析)和HOG(定向梯度直方圖),支持向量機(SVM)是ADAS中常用的識別演算法。我們也經常用到KNN分類演算法和貝葉斯決策規則。
SVM依賴於定義決策界限的決策平面概念。決策平面分離由不同的類成員組成的對象集。下面是一個示意圖。在這裡,物體屬於RED或GREEN類,分離邊界線將紅色和綠色物體分開。任何落在左側的新對象都標記為RED,如果它落在右邊,則將其標記為GREEN。
回歸演算法
這種演算法有利於預測事件。回歸分析會評估2個或更多個變數之間的關係,並將變數的影響整理到不同的量表上,主要由3個指標驅動:
?回歸線的形狀
?因變數的類型
?自變數的數量
圖像(攝像機或雷達)在啟動和定位中在ADAS中起著重要作用,而對於任何演算法來說,最大的挑戰是如何開發一種用於進行特徵選取和預測的、基於圖像的模型。
回歸演算法利用環境的重複性,以創建給定物體在圖像中的位置與該圖像之間的關係的統計模型。這個模型通過圖像採樣,提供快速在線檢測,同時可以離線學習。它可以進一步擴展到其他物體上,而不需要大量人類建模。演算法會將某一物體的位置以一種在線狀態下的輸出和一種對物體存在的信任作為反饋。
回歸演算法也可以用於短期預測和長期學習中。在自動駕駛汽車上,回歸演算法可以是決策林回歸、神經網路回歸和貝葉斯回歸等。
神經網路回歸
神經網路用於回歸、分類或無監督學習。他們對未標記的數據進行分組,對數據進行分類或在監督訓練後對連續值進行預測。神經網路通常在網路的最後一層使用邏輯回歸的形式,將連續數據變為變數1或變數0。
在上圖中,「x」是輸入,從網路上一層傳出的特徵。進入最後一層隱藏層的每一個節點,將傳遞給許多x,並將每個x乘以w,相應的權重。對於偏移,乘積之和將被移動到一個激活函數中。激活函數是ReLU(整流線性單元),它不像Sigmoid函數那樣在處理淺層梯度問題時容易飽和。ReLU為每個隱藏節點提供一個輸出,激活a,並且激活被添加到通過激活和輸出節點中。這意味著,執行回歸的神經網路包含單個輸出節點,並且該節點將先前層的激活總和乘以1,該網路的估值「y hat」將是結果。「Y」是所有x映射到的因變數。您可以以這種方式使用神經網路來獲取與您嘗試預測的y(一個因變數)相關的x(自變數)。
來源:kdnuggets
作者:Savaram Ravindra
※Python 語言下的機器學習庫
※邁克爾·喬丹採訪:人類對機器學習期待過高,不奢望、不局限
※UC伯克利教授邁克爾·喬丹採訪:人類對機器學習期待過高,機器學習的發展還應當更廣闊
※人工智慧專家 Michael Jordan 談機器學習的未來
※必看!現代營銷人員機器學習演算法指南
TAG:機器學習 |
※無監督機器學習中,最常見的聚類演算法有哪些?
※人人都能看懂的機器學習!3個案例詳解聚類、回歸、分類演算法
※無監督機器學習中,最常見4類聚類演算法總結
※無監督核心聚類演算法
※半監督模糊聚類演算法的研究與改進
※一種聚類「車輛駕駛相遇」數據的深度無監督學習方法
※弈聰軟體尹宏剛:聚類演算法簡單有效是大數據應用及人工智慧的基礎
※大數據聚類演算法知多少?如何無需編程快速實踐?演算法乾貨
※數據科學家必須了解的六大聚類演算法:帶你發現數據之美
※計算機如何感知大數據——聚類演算法
※數據科學家需要了解的5大聚類演算法
※R語言聚類演算法在新媒體中的場景應用
※一文簡述多種無監督聚類演算法的Python實現
※數據科學中必須熟知的5種聚類演算法
※物以聚類!「整容狂魔」與他的「野蠻女友」
※大講堂|面向大數據的圖聚類方法
※面向大數據的圖聚類方法
※基於Kmeans演算法的文檔聚類
※使用Python進行人臉聚類的詳細教程
※乾貨:基於用戶畫像的聚類分析