對于機器學習而言,并不存在“一體適用”的說法。構建不同的模型需要用到不同的算法和不同技術,但如何才能確定哪種技術最合適呢?
機器學習并不局限于一套具體的算法,它依賴于你想要達到的目標,或者說依賴于數據類型和數據量。
以下是機器學習中一些常見的技術:
監督式學習
數據是否被貼上標簽,決定了它是被監督還是無人監督的。監督學習使用人類標記過的數據,通常在數據有能力預測可能發生的事件時使用。換句話說,在我們知道自己需要得到什么樣的結果輸出時,所輸入數據就是這些標記過的數據。該算法對一組輸入數據進行處理,并得到相應的輸出結果,通過將該輸出結果與正確結果進行比較來發現錯誤。一旦發現錯誤,就可以相應地對模型進行修改。
分類
分類屬于監督學習,可以定義為嘗試預測給定輸入的輸出結果。分類采用一組未知的實體,將其識別為更大的已知組。為了進行學習,它需要一組已標記的實例,例如圖像、文本或語音。隨著訓練次數的增長,使分類器達到高準確度所需的數據量可能很大,達到數千甚至數百萬個實例。雖然分類通常針對簡單的類別,但它可以擴展到目標是一個結構或一個序列的情況,就像自然語言處理一樣。
無監督學習
無監督學習使用無標記的數據。在這種情況下,機器在不了解任何事先數據或信息的情況下發現了新的模式。當數據被歸類到類似的數據組時,這種類型的學習會在集群下很好地工作。
強化學習
受強化行為心理觀念的啟發,強化學習是一種學習的理念。機器可以通過多次嘗試和錯誤來獲得一個理想的結果。隨著時間的推移,它學會了選擇某種行為,以得到理想的結果。這種類型的學習經常被應用于游戲、導航等應用程序中。
神經網絡
深度神經網絡(DNNs),又稱人工神經網絡(ANN),代表了一套用于構建強大的學習系統的技術。與某些算法不同,它們添加了一些“隱藏”層,用于提取中間表示。這種技術于20世紀80年代被發明,在2010年之后開始騰飛,這種飛速增長得益于強大的并行硬件和易于使用的開源軟件。
DNNs覆蓋了一系列不同的神經體系結構,最著名的是:
遞歸神經網絡(RNN)——神經元將反饋信號發送給彼此
卷積神經網絡(CNN——前饋神經網絡,通常用于視覺和圖像識別