什麼是機器學習?
機器學習是一門開發演算法和統計模型的科學,這些算法和模型可以讓電腦系統根據模式和推理來執行任務,而不需要由人類輸入精確的指令。電腦系統使用機器學習演算法處理大量的歷史資料,並從中找出資料的模式。這讓電腦能更精準地根據輸入的資料集預測結果。比如,資料科學家可以使用數百萬張 X 光片和對應的診斷結果來訓練一支醫療應用程式,讓該程式可以僅透過 X 光片就能診斷病人是否罹患癌症。
機器學習的重要性為何?
機器學習能幫助企業成長、找到新的收入管道,並解決企業遇到的難題。每個商業決策的背後,都需要資料來做為判斷的依據,傳統上,企業會使用從各個來源收集到資料進行決策,例如顧客回饋、員工意見和財報等等。機器學習實現了該流程的自動化和優化。透過使用軟體自動高速處理並分析大量的資料,企業能更快地作出決策。
機器學習使用案例和實際範例
以下是機器學習在某些關鍵產業中的應用:
生產製造
機器學習可以為製造業的預測性維護、品質控管和創新研究提供幫助。機器學習技術也可以幫助企業改進後勤問題,包括:資產、供應鏈和庫存管理。例如,製造業龍頭 3M 使用機器學習來改進砂紙的製造。機器學習演算法可讓 3M 的研究人員分析形狀、大小和方向的細微變化會如何影響砂紙的研磨性和耐用性。這些資訊可以用來改進製造業過程。
醫療保健與生命科學
穿戴式感應器和裝置不斷普及,帶來了大量的健康相關資料。機器學習程式會分析這些資訊,並幫助醫生即時診斷及治療病人。機器學習研究者也正在研究能檢測癌症腫瘤和眼疾的方法,這對人們的健康有著重大的意義。例如,Cambia Health Solutions 使用機器學習來自動化及自訂對於孕婦的治療。
金融服務
金融機器學習專案改善了風險分析和控制。透過分析股票市場的動向、評估對沖基金,或調整金融投資組合,機器學習技術能讓投資者找到新的投資機會。另外,機器學習還可以協助辨識高風險貸款客戶並降低被詐騙的可能。例如,個人金融公司 NerdWallet 使用機器學習來比較信用卡、銀行服務和貸款等金融產品。
零售
零售產業可以使用機器學習來改善客戶服務、倉儲管理、向上銷售和跨通路行銷。例如,Amazon Fulfillment (AFT) 使用機器學習模型來辨識錯放的庫存,藉此減少了 40% 的基礎設施成本。這也幫助他們確保商品能準時送達客戶手中,即使每年都要經手數百萬件全球貨物,也能維持住 Amazon 的高服務品質。
媒體與娛樂
娛樂產業公司使用機器學習來幫助他們了解目標觀眾的喜好,帶來能讓觀眾身臨其境的個人化隨需內容。機器學習演算法的部署可助益設計預告片和其他廣告、提供觀眾個人化的內容推薦,甚至提高内容生产效率。
例如 Disney 使用機器學習來儲存他們的媒體庫。機器學習工具可以自動化標籤、描述並整理影音內容,讓 Disney 的作家和動畫師可以更快地找到並熟悉 Disney 的角色。
電腦視覺
電腦視覺是一種自動辨識影像並準確有效地描述影像的技術。如今,電腦系統可以從智慧型手機、測速照相機、安全系統和其他裝置存取許多圖像和影片。電腦視覺應用程式會使用機器學習精確地處理這些資料,以進行物件識別和臉部辨識,以及分類、建議、監控和偵測。
例如,CampSite 是針對夏令營的領先軟體平台。他們的營地每天上傳數千張照片,讓父母更能參與孩子的營隊體驗。對父母來說,他們要花很多時間和精力找到自己孩子的照片。對此,CampSite 透過機器學習自動識別影像,並在上傳孩子的新照片時通知父母。
機器學習如何運作?
機器學習的核心概念是找到輸入與輸出資料對之間的數學關聯。機器學習模型一開始並不知道這個關聯是怎樣的,但隨著給予其足夠的資料,模型的預測會越來越準確。因此,每個機器學習演算法都是基於一個可修改的數學函數建立的。以下的例子可以幫助您了解基本原理:
- 我們可以使用這些輸入/輸出資料對 (i,o) 來「訓練」演算法 – (2,10)、(5,19) 和 (9,31)
- 演算法運算出這些輸入與輸出之間的關聯為:o=3*i+4
- 接著,我們將輸入設為 7,並要求算法給出預測的輸出。算法即會自動算出輸出為 25。
雖然這只是簡單的範例,但機器學習的原理即是找出資料的關聯性。無論是多麼複雜的資料,只要有足夠的資料和能夠處理資料的運算能力,電腦系統總是能找出資料之間的數學關聯。因此,輸出結果的準確性與輸入資料的數量直接相關。
機器學習演算法有哪些類型?
演算法可以根據輸入和輸出的類型分為四種。
- 監督式機器學習
- 無監督機器學習
- 半監督學習
- 強化機器學習
1.監督式機器學習
資料科學家提供已標記和定義過的訓練資料給演算法,讓演算法找出資料間的關聯。訓練用資料必須包含演算法的輸入與輸出。例如,手寫數字的圖片必須標記上這張圖片中寫的數字是多少。只要給予其足夠的範例,監督式學習系統可以找出像素的排列與表示的數字之間的關聯。最終,機器學習可以辨識出手寫數字,可以區分出 9 和 4 或 6 和 8 之間的不同。
監督學習的結構很簡單,因此很容易設計。當可能的輸出結果有限、需要將資料分類,或要結合兩個其他機器學習演算法的結果時,監督式學習是很好的辦法。但是,如何將數百萬筆資料標上標記是個問題。讓我們深入瞭解資料標記:
什麼是資料標記?
資料標記是將輸入資料標記上其應該得到的輸出值的過程。監督學習需要已標記的訓練資料才能進行。例如,假使現在有數百萬張蘋果和香蕉的相片,這些相片需要根據其內容被標記為「蘋果」或是「香蕉」。 之後機器學習應用程式才能用這些訓練資料來學習辨識圖片中的水果為何。但是,將數百萬筆資料標記的過程相當耗費時間和成本。使用如 Amazon Mechanical Turk 等群眾外包服務可以一定程度的解決監督學習演算法的這個問題。這些服務能幫助機器學習訓練者用經濟實惠的價格雇傭全球各地的人幫忙標記,讓標記資料變得比較容易達成。
2.無監督機器學習
無監督學習演算法使用未標記的資料進行訓練。這些算法會掃描所有資料,嘗試找出輸入值與預設的輸出值之間有哪些有意義的關聯。這類算法可以找出模式和分類資料。例如,無監督演算法可以將來自不同新聞網站的新聞報導分類進各種不同的新聞類別,比如運動類新聞或犯罪新聞等等。它們可以使用自然語言處理來理解報導的內容含意和表現出的情緒。在零售業,無監督學習可以找出顧客購買商品的模式,並提供一些資料分析結果,比如,顧客常一起購買麵包和奶油。
無監督學習在辨識模式、偵測異常和自動分類資料的任務中很有用。由於其不需要標記過的訓練資料,它的設定相當簡單。這些演算法也可以用來自動清理資料和對資料進行前處理,好方便之後訓練其他算法時使用。無監督學習的缺點在於其無法提供準確的特定結果。另外,其也無法獨立挑出特定類型的資料輸出結果。
3.半監督學習
如同其名,辦監督學習結合了監督學習和無監督學習。這項技術使用少量的已標記資料和大量的無標記資料來訓練系統。首先,半監督學習會用已標記的資料訓練機器學習演算法。之後再使用經過部份訓練的演算法來標記那些未標記的資料。這個過程稱為偽標記。接著再直接使用產出的資料和原本的已標記資料一起重新訓練模型。
這個做法的優點是不需要大量的已標記資料。像大型文件這種資料就需要花費大量時間閱讀,很難取得標記過的資料。
4.強化學習
強化學習在演算法的不同步驟設定所謂的獎勵值。模型的目標是在過程中盡可能地獲得最多的獎勵值。在過去的十年中,強化學習的實際應用多半在遊戲相關的領域中。最先進的強化學習演算法已經在各類遊戲中取得了巨大的成果,甚至完勝人類對手。
雖然強化學習在不確定性高以及複雜的資料環境中的表現最好,但它很少用於商業領域。對於定義明確的任務,強化學習的效率不高,且開發人員的偏見會影響結果。根據資料科學家設計的獎勵不同,強化學習的結果也會跟著改變。
機器學習模型有確定性嗎?
如果一個系統的輸出是可預測的,我們可以說它具有確定性。大多數軟體應用程式都是根據使用者指令運作,所以您可以明確地說:「如果使用者按了那個按鈕,會出現這樣的結果」。 但是機器學習演算法會透過觀察和經驗學習。因此,機器學習的本質是機率性的 (不確定的)。狀況會變成:「如果使用者按了那個按鈕,有 X% 的機率會出現這樣的結果」。
在機器學習中,策略是否具有確定性可以在進行上述訓練時選擇。無論是監督式、非監督式或其他的訓練方法,都可以根據業務需要訓練出確定性的策略。根據要研究的問題、資料的檢索、結構和儲存方式來決定要訓練出確定性還是非確定性的策略。
確定性與機率性的方法比較
確定性的方法更注重收集到的資料的準確性與數量,因此效率比不確定性更重要。另一方面,非確定性 (機率性) 的方法則是用來處理不確定因素。內建工具已整合進機器學習的演算法中,以幫助模型在學習和觀察的過程中量化、辨識並量測不確定性。
什麼是深度學習?
深度學習是一種以人腦為參考開發的機器學習技術。深度學習演算法使用與人類相近的邏輯結構來分析資料。深度學習使用被稱為類神經網路的智慧系統來分層處理資訊。資料從輸入層開始,經過數個「深度」的隱藏神經網路層,最後到達輸出層。這些隱藏的神經網路層能幫助學習,效果比起標準機器學習模型好上許多。
什麼是類神經網路?
深度學習層是類神經網路 (ANN) 節點,其運作方式就像是人類的神經元。這些節點可以是硬體或軟體,亦或是兩者混和。深度學習演算法的每一層都是由 ANN 節點組成。每個節點 (類神經元) 都與其他節點相連,並有一個關聯值和一個閾值。節點在啟動時會將其值傳送至下一層的節點,作為下一個節點的輸入。而一個節點只有在其輸出超過閾值時才會啟動。不然沒有資料會被傳送至下一個節點。
什麼是電腦視覺?
電腦視覺是深度學習的一項實際應用。就像人工智慧讓電腦能思考一樣,電腦視覺讓電腦能看見、觀察並回應。自動駕駛汽車可以使用電腦視覺來「看見」道路標示。車子的攝影機捕捉到標示的影像。這個影像會被送到車子的深度學習演算法中。演算法的第一層隱藏層檢測邊緣、第二層分辨顏色,而第三層分辨出標示上的文字。演算法預測出標示上寫的是「停止」,汽車隨之踩下剎車。
機器學習與深度學習一樣嗎?
深度學習是一種機器學習。深度學習演算法可以被視為是機器學習演算法的一種複雜的數學演變。
機器學習與人工智慧一樣嗎?
簡單的回答是「不一樣」。雖然機器學習和人工智慧 (AI) 常常被混用,但它們並不相同。人工智慧是一個廣泛的定義,任何讓機器更像人類的科技或技術都可以稱為人工智慧。從智慧助理如 Alexa 到打掃機器人和自動駕駛汽車,它們都是一種 AI。機器學習是人工智慧眾多分枝中的一個。因此機器學習是一種 AI,但並非所有 AI 都是機器學習。
機器學習與資料科學一樣嗎?
不,機器學習和資料科學不一樣。資料科學是用科學方法從資料中擷取出意義和發現的研究領域。資料科學家使用各種工具來分析資料,機器學習只是其中一種。資料科學家了解資料以外的全貌,例如商業模式、領域和資料收集,而機器學習是僅處理原始資料的運算過程。
機器學習有什麼優點和缺點?
以下是一些機器學習可以做到和不能做到的事:
機器學習模型的優點:
- 可以辨識出人類可能會錯過的資料趨勢或模式。
- 在設定後,可以自動作業,不需人類操作。例如,網路安全軟體中的機器學習可以在沒有管理員操作的情況下持續監控和抓出網路通訊中的違規行為。
- 結果會隨著時間越來越精準。
- 可以在動態且複雜的資料環境下處理大量不同格式的資料。
機器學習模型的缺點:
- 一開始的訓練很耗費時間和成本。如果沒有充足的資料,難以訓練出可用的模型。
- 需要大量的運算能力,如果自行準備硬體設施,需要大量的前期投資。
- 如果沒有專業人員協助,不容易正確解釋輸出的結果和消除不確定性。
Amazon Machine Learning 可以提供哪些協助?
AWS 讓每個開發人員、資料科學家和企業使用者都能掌握機器學習。 Amazon Machine Learning 服務提供高效能、價格合理且可擴展的基礎設施,以符合商業需求。
剛入門嗎?
使用我們的實作教育裝置來學習機器學習吧!如 AWS DeepRacer、AWS DeepComposer 和 AWS DeepLens。
已有資料封存?
使用 Amazon SageMaker Ground Truth 開始內建的 資料標記工作流程,其支援影片、圖片和文字。
已有機器學習系統?
使用 Amazon SageMaker Clarify 來偵測偏差,使用 Amazon SageMaker Debugger 來監控和最佳化效能。
想要實作深度學習嗎?
使用 Amazon SageMaker Distributed Training 來自動訓練大型的深度學習模型。 立刻註冊免費帳戶,開始您的機器學習之旅吧!