在科技新聞和報導中,經常能看到人工智慧AI、機器學習和深度學習,但你知道他們究竟是什麼嗎?機器學習和深度學習又有什麼差別?他們在「學習」什麼呢?其實早在 1950 年代AI 的概念就被提出,希望「讓機器做人類會做的事情」;1980年代隨著資訊越來越多,人類開始利用已有的數據來調整人工智慧,程式裡的參數不再全是由工程師設定,也可以透過演算法得出適當的值,讓機器從數據中學習,也就是機器學習;過了30年,2010年深度學習才正式興起,使用人工神經網絡讓機器能在不需人類協助的情況下自動處理龐大的數據。機器學習是人工智慧的子集,而深度學習則包括在機器學習裡面。接下來就讓馬克來先為你詳細介紹什麼是人工智慧、機器學習和深度學習,再比較機器學習與深度學習的差異。
人工智慧(Artificial Intelligence, AI)—讓機器做人會做的事
人工智慧廣義來說就是「讓機器做人會做的事」,讓電腦模仿人類的思維進而模擬人類的行為。1940年代艾倫.圖靈(Alan Turing)率先提出電腦概念時,1950年代的電腦科學剛起步,科學家到一般大眾都對於電腦充滿無盡的想像,主流科學家甚至預估約 20 到 30 年左右便可以成功創造出與人類同樣高度的人工智慧。然而當時的機器程式是由工程師設定好的邏輯和規則來運作,換言之,機器能力的高低取決於工程師個人的知識和將其轉化為程式的技巧,若遇到人類不知道答案的問題時機器也無法回答。好在後來隨著科技的進步,硬體設備越來越完善,AI 也變得更加複雜,如今已轉而強調機器須具備人類的認知功能,例如具備解決問題的能力。而AI 也被廣泛地運用在不同領域,例如語音辨識、自然語言處理、語意分析、產生創造力(生成文案、圖片等)、語言翻譯、人臉辨識等。
機器學習(Machine Learning, ML)—讓機器從數據中學習,預測未來
機器學習是透過大量的數據和過去的經驗訓練機器,讓它學習資料的特徵與運行規律,然後執行特定的任務,做出更好的分類、判斷和分析。簡單來說,經歷過大量演算法訓練的機器,將有能力替新資料進行分類,並推測它可能是什麼。而機器學習又可以細分為監督式學習、非監督式學習、強化式學習,詳細介紹如下:
監督式學習(Supervised learning):先從訓練資料(Training Data)中擷取資料的特徵(Features),然後在將每筆資料都標上「標籤」,進行資料分類。例如希望電腦分辨句子是正面還是負面,開心、快樂、生氣、難過等形容詞就是特徵,也就是標籤,給機器看了大量的句子後,再給它一個新句子它就能幫辨識語意正面還是負面。另外,除了資料分析,也包含了迴歸算法,而最具代表的算法有 Adaboost、SVM、Decision Tree、Neural Network 等。
非監督式學習(Unsupervised learning):資料不需要貼標籤,訓練時僅須對機器提供輸入資料,它會自動從中找出潛在的規則。除了聚類分類,也包含了降低維度和關聯規則等演算法,最具代表的算法有 Kmean、PCA 等。
強化式學習(Reinforcement learning):不需給機器任何資料,讓機器不斷從互動中學習,並利用獎勵與懲罰和成效評估的機制,不斷嘗試與修正至最佳化的模型。最具代表的算法有 Q-Learning、SARSA 等。
機器學習日常中相當常見,社群平台的廣告和影音平台的自動推薦功能,都是根據用戶的數據推薦你可能有興趣的商品和影片;圖像辨識是其中最常見的應用,例如用在醫療上判斷病人X光片是否有病變跡象,而像是Siri 這樣的語音識別服務、翻譯軟體、預測分析等也都是機器學習的運用之一。
深度學習(Deep Learning, DL)—以人工神經網路為基礎,最近似於人類大腦
深度學習是運用以人工神經網路為基礎的分層演算法,專為持續分析資料所設計,需要非常大量的數據和強大的硬體支援,而且不需要人類的協助。人工神經網路是以人類的大腦的生理神經網路為靈感設計,包含了多個輸入層、輸出層和隱藏層。 每一層可以將輸入的資料轉換成資訊,以供下一層用於特定預測工作,也因為如此機器可以透過自己的資料處理進行學習,而越多層則學習得越深度(Deep)。
Google 的AlphaGo 就是深度學習的最佳例子。2016年在一場五番棋比賽已4:1擊敗頂尖職業棋手李世乭,成為第一個不藉助讓子而擊敗圍棋職業九段棋士的電腦圍棋程式,消息出來後引發大家的關注。後來在2017年的烏鎮圍棋峰會上,贏過了世界第一棋士柯潔,當時的團隊戰與組隊戰也都全勝。在沒有人類對手後,AlphaGo 宣布退役。從業餘到世界第一AlphaGo 僅花了兩年左右的時間,而最終版本的AlphaZero 更加厲害,強大的自我學習能力使其僅花費21天就達到中國棋手柯潔的水平。由此可見,深度學習真的相當聰明且厲害,你曾經想過機器有一天也能打敗天下無敵手嗎?
機器學習 VS 深度學習
因為深度學習是機器學習更進階的分支,所以深度學習可以說是機器學習的一種,兩者大致上是相同的,運作方法也類似。然而,「人為介入與否」是兩者最大的差異。機器學習始終需要人為的介入指引,若演算法回傳不正確的預測,工程師就必須進行調整。而深度學習則是透過人工神經網路自行學習進行判斷,是能夠發揮最近似於人類大腦思考邏輯的人工智慧功能。以兩者在算法架構上的差異舉例,如果要分辨圖片中的動物是鯨魚還是金魚,機器學習和深度學習會分別如何進行?
機器學習:資料輸入 → 特徵擷取 → 訓練模型 → 輸出(判斷)
輸入資料後,進行「特徵擷取 (feature extraction)」,在這項例子中我們先假設辨別兩者差異的是大小、顏色和生活區域。特徵擷取結束後,將資料輸入訓練模型中(因為該例題是分類問題,模型是分類器),最後可以得出我們想要的答案,分辨給予的圖片中是鯨魚還是金魚。要特別關注的是,這裡的特徵「是由人類想出來的」。
深度學習:資料輸入 → 特徵擷取 + 訓練模型 → 輸出(判斷)
在這裡,不需要人為進行特徵擷取,只需將資料丟入訓練模型(也就是人工神經網路)中即可。模型會自行操作特徵擷取,然後判斷圖片中是鯨魚還是金魚。
此外,深度學習必須使用非常大量的資料進行預測,並依賴高階的硬體設備支援,如此才能進行數以萬計的運算迭代,訓練出能用的統計模型。機器學席則可以使用少量的資料進行預測,並在低階的機器上運作,不需要大量的計算能力。此外,因為深度學習演算法涉及眾多階層,通常會需要很長的時間定型,而機器學習僅需幾秒鐘至幾小時即可。以Pinterest 為例,它利用深度學習進行更好的影像分類;Meta 則運用類似的技術在使用者上傳照片時自動進行臉部辨識,指出你的好友;自動駕駛車、垃圾郵件偵測等也都是深度學習的例子。
結論
看完上述的內容是否對人工智慧、機器學習和深度學習有更進一步的了解呢?人類許多的文明都起源於天馬行空的想法,因為想讓機器也能做人會做的事,而發明了人工智慧;為了像鳥一樣在天空飛翔而創造出了飛機。隨著科技的進步,這些想法透過不斷修改變得更加完善,最終惠及人類。而最後,請記得機器學習是人工智慧的分支,而深度學習則是機器學習的分支,三者間的關係密不可分;機器學習與深度學習最大的差異在於「是否需要人為的介入」,深度學習是使用神經網路自行進行學習與判斷,能夠發揮最近似於人類大腦思考邏輯的人工智慧功能。