在《一文了解人工智能(AI)》文章中我們介紹了AI可以解決哪些復雜的問題。這些問題無法通過固定的規則進行解決,需要機器根據以往的事例進行比較評估,作出最終的判斷。機器需要模仿人類對事物進行學習。
人類的學習過程可以拆分為以下幾個階段:感知、記憶、對比和歸納、總結和實踐。
感知:通過自己的感官(視覺、聽覺、觸覺、味覺和嗅覺)獲取外界的信息,觀察和體驗周圍的環境和發生的事情。除了親身感受之外,為了更高效的獲取信息,人們通過聽故事、閱讀圖書和觀看視頻來了解曾經發生過的事情。
記憶:當我們獲取到新信息后,我們會將以后需要使用的信息記在大腦之中,并拋棄認為不需要的信息。
對比和歸納:人們了解新信息的最好辦法是與自己記憶中的信息進行比較。通過對比信息的相似性和差異性,理解新信息并對不同的信息進行分類。
總結:人們將一個個獨立的信息整合到一起,推導出信息之間的聯系及規律。構建起信息的網絡,幫助理解事情的原因和結果。
實踐:學習的意義是將獲得的知識應用到現實生活中。在解決問題的過程中驗證知識的適用性和正確性。在驗證的過程中,又進入新的一輪感知過程。
在這五個步驟中,記憶是計算機最擅長的事情,自然及人文類的數據感知是一個需要消耗大量人力的過程,可以通過儀器檢測的數據指標則可以自動化的進行數據收集。第三步的對比和歸納以及第四步的總結是算法實現的部分。機器學習程序與普通程序最大的不同在于實踐的部分。普通的軟件程序輸出結果后,便完成了整個流程。但是機器學習程序可以對每次的結果進行評分,然后算法可以根據評分調整運算的結果。
由于機器需要運行的結果反饋來進行學習,所以機器學習算法的開發過程包含了算法編寫和學習兩個階段。機器學習階段也被稱為訓練階段,在此階段使用已知的數據進行學習和驗證。對每次訓練的結果進行評估,然后對算法進行調整。這種學習的過程分為兩種:監督學習和無監督學習。
監督學習適合待解決的問題有明確預期,希望機器可以對未來出現的同類問題進行預測。監督學習的訓練數據必須成對出現,包含程序輸入的特征信息和程序輸出的結果信息。監督學習訓練時,訓練集被隨機分成兩份:一份用于對程序進行訓練,另一份用于驗證算法的處理結果是否符合預期。
無監督學習用于探索數據之間的關系和規律,獲得的是某個問題的結果。無監督學習的訓練數據只有程序輸入的特征信息,訓練時使用整份數據進行學習。無監督學習獲得的訓練的結果無法用訓練集進行驗證,需要單獨進行評估后,再對算法進行調整。
機器學習的過程模仿了人類學習的流程。在了解機器學習的過程中,我們僅是在學習一個IT類的知識,我們也可以反思自身的學習過程如何進行優化。