什麼是機器學習?

Michael Chen | 內容策略師 | 2024 年 11 月 25 日

近年來,機器學習已成為家喻戶曉的術語,從科幻概念發展為驅動企業和組織處理資訊的關鍵技術。隨著資料創建速度持續呈指數級增長,機器學習工具對於希望發現模式、梳理趨勢和規劃最具獲利能力的發展路徑的組織至關重要。

機器學習有多普及?如果您曾點擊過電子商務網站或串流平台的推薦、收到信用卡可能被濫用的通知,或使用過轉錄軟體,您就已經受益於機器學習。機器學習被廣泛應用於金融、醫療、行銷、零售及許多其他領域,用來從資料中提取有價值的洞見並自動化流程。

什麼是機器學習?

機器學習 (Machine learning, ML) 是人工智慧的一個子領域,專注於建立隨著資料的增加而學習與進步的系統。人工智慧是一個更廣泛的術語,指能模擬人類智慧的系統及機器。機器學習和 AI 經常一起討論,而且有時這兩個詞能通用,但它們並不指稱相同的事物。

簡而言之,所有的機器學習都是人工智慧,但並非所有的人工智慧都是機器學習。

重點精華

  • 機器學習是人工智慧的一個子領域。
  • 機器學習最常見的四種類型是監督式學習、非監督式學習、半監督式學習和強化學習。
  • 熱門的機器學習演算法包括神經網絡、決策樹、叢集和隨機森林。
  • 在商業領域中,機器學習的常見應用包括物物件別與分類、異常偵測、文件處理和預測分析。

機器學習詳解

機器學習是一種技術,透過搜尋大量資料集來發現資料中以前未知的關聯,從而發現超越簡單統計分析的模式和趨勢。機器學習使用先進的演算法來識別資料中的模式,並建立模型。這些模型可以用來進行預測和資料分類。

請注意,演算法與模型不同。演算法是一組解決特定問題或執行某項任務的規則和步驟,而模型則是將演算法應用於資料集後的輸出或結果。

訓練前,您擁有的是演算法;訓練後,您擁有的是模型。

舉例來說,機器學習在醫療領域的應用非常廣泛,包括醫學影像分析、預測分析和疾病診斷。機器學習模型非常適合分析醫學影像,如 MRI 掃描、X 光片和CT 掃描,以識別模式並偵測可能無法用肉眼察覺的異常,或是那些過勞的診斷人員可能會錯過的情況。機器學習系統也能分析症狀、基因資訊和其他病人資料,以建議進一步檢測癌症、糖尿病和心臟病等疾病。

機器學習的主要功能包括:

  • 自動發現模式
  • 預測可能的結果
  • 產生可執行的資訊
  • 能夠分析大量資料

機器學習類型

機器學習有四種主要類型,每種方法各有優勢與局限,因此選擇適合當前任務的方式非常重要。

  • 監督式機器學習是最常見的類型。在這種方法中,已標註的資料會教導演算法應該得出什麼結論。就像孩子透過背誦圖畫書來學習辨識水果,監督式學習的演算法使用已標註的資料集進行訓練。例如,垃圾電子郵件篩選器就是一個監督式機器學習的範例,演算法使用已標註的資料集進行訓練,其中每封電子郵件會被標註為垃圾郵件或非垃圾郵件。模型從這些標註過的範例中學習,然後根據識別的模式,預測新的電子郵件是否可能是垃圾郵件。監督式學習需要人類專家透過標註資料來提供正確答案,協助演算法學習並在未來做出準確的預測。

    請注意,這裡的目標不是使用原始資料進行訓練。您需要模擬系統在現實世界中會遇到的情況 — 有些垃圾郵件容易辨識,但有些則隱蔽或模糊不清。過於乾淨的資料會導致過度擬合,這意味著模型只會識別其他乾淨的範例。
  • 非監督式機器學習則採用更為獨立的方法,在這種方法中,電腦不依賴於事先標註的資料,而是學習識別複雜的過程和模式。非監督式機器學習不僅涉及基於未標註資料的訓練,還沒有特定的定義輸出,例如是否某封電子郵件是垃圾郵件。

    非監督式機器學習通常能發現相似資料的群組,並建立叢集。訓練完成後,模型可以識別相似的模式並將資料歸類到適當的群組中。非監督式機器學習的常見應用是推薦引擎,這在消費者應用程式中用於提供「購買此商品的人也買了……」的建議。當發現不相似的模式時,演算法能夠識別異常,這在欺詐檢測中非常有用。
  • 半監督式機器學習可解決資料標註不足以完全訓練模型的問題。例如,您可能擁有大量的訓練資料集,但不希望花費時間和成本標註整個資料集。透過結合監督式和非監督式方法,通常可以實現完全訓練的模型。訓練過程開始時像監督式學習,利用標註資料來獲得初步結果並建立演算法的指導方針。當標註資料耗盡時,半訓練模型會接受未標註的資料集。它利用已有的訓練,並檢視未標註的資料,目標是為資料集添加標註。如果模型能以較高的確定性為某個範例找到適當的標註,該範例就會被加入到標註資料中。學習過程再次開始,但這時資料集的標註範例更多。透過反覆的迭代,更多的範例會被標註為所謂的偽標註,並且可以進一步調整模型。

    強化機器學習 像非監督式學習一樣,使用未標註的資料集並讓演算法對資料進行評估。然而,強化學習的不同之處在於,它朝著既定目標前進,而不是探索資料來發現可能存在的模式。有了明確的目標後,演算法會進行試錯過程。每一步都會收到正面、負面或中立的回饋,演算法利用這些回饋來改善其整體決策過程。強化學習演算法可以在宏觀層面上朝著專案目標邁進,即使這意味著需要承受短期的負面後果。因此,強化學習比其他方法能夠處理更複雜、更動態的情況,因為它讓專案目標影響決策的風險。教導電腦下棋就是一個很好的例子。總體目標是贏得棋局,但這可能需要在過程中犧牲棋子。

哪一種方法最適合您的需求?選擇監督式方法或其他三種方法通常取決於資料的結構與規模、可用的預算與訓練時間,以及您希望應用最終模型的使用情境。建議將襯衫與裙子搭配,這可能無關緊要;但如果未發現腫瘤,那就大不相同了。

機器學習如何運作

機器學習正如其名,透過建立基於電腦的統計模型,藉由評估訓練資料來針對特定目的進行優化,而非採用傳統方法,由程式設計師開發靜態演算法來解決問題。機器學習模型處理資料集後,會根據準確度來評估結果,讓資料科學家透過一系列預設變數 (稱為超參數) 和演算法調整變數(稱為學習參數) 來調整模型。

由於演算法會在評估訓練資料時進行調整,處理新資料的過程讓演算法能夠變得更加精確。演算法是專案中的計算部分,而「模型」則是經過訓練後,可以應用於實際案例的演算法。

機器學習專案的範圍、資源和目標將決定最適合的執行路徑,但大多數專案都涉及一系列的步驟。

1.收集和編譯資料

訓練機器學習模型需要大量高品質的資料。找到這些資料有時會很困難,若需要標註資料,則可能會非常消耗資源。確定潛在的資料來源後,需評估其整體品質並與專案現有的資料整合/儲存資源進行對比,這些來源構成機器學習專案的訓練基礎。

2.選擇適合的演算法來產生所需的模型

根據專案是否計畫使用監督式、非監督式或半監督式學習,資料科學家可以選擇合適的演算法。例如,對於簡單的專案,若資料集已標註,可以使用決策樹;而聚類分析 (將資料樣本分組為相似物件) 則需要更多的運算資源,因為演算法在非監督模式下運行,必須找出達成目標的最佳路徑。

3.調整和準備資料以進行分析

傳入的資料通常無法直接使用。資料準備包括清理資料集,確保在訓練過程中能夠輕鬆擷取所有記錄。準備工作包括一系列的轉換任務,例如建立日期和時間格式、根據需要合併或分開欄位,以及設定其他格式參數,例如實數資料中可接受的有效數字。其他關鍵任務包括清理重複紀錄 (亦稱為刪除重複資料),以及識別並可能移除異常值。

4.透過訓練來教育模型

選擇所需的最終模型後,訓練過程就會開始。在訓練過程中,經過標註或未標註的精選資料集都會被輸入到演算法中。在初期的運行中,結果可能不理想,但資料科學家會根據需要進行調整,以改善效能並提高準確度。接著,演算法會再次接收資料,通常會使用更多的資料來進行更精確的調整。演算法接觸到的資料越多,最終模型在達成預期結果上就會越精準。

5.評估模型效能與準確性

當模型訓練到足夠的準確度後,就可以用先前未見過的資料來測試其表現。通常,測試所用的資料是從訓練資料中分出的一部分,會在初步訓練後使用。

6.微調並增強模型參數

此時,模型應該已經接近可以投入使用。使用測試資料集運行應該能產生非常準確的結果。透過使用特定資料 (通常是公司營運所特有的資料) 進行額外訓練來進一步增強,以補充原始培訓中使用的通用資料。

7.啟動模型

當結果達到最佳狀態後,模型就準備好在正常生產環境中處理先前未見過的資料。當模型上線後,專案團隊會收集有關模型在現實情境中表現的資料,這可以透過監控關鍵績效指標來進行,例如準確度 (模型預測的整體正確性) 和召回率 (正確預測的正面觀察比率)。同時,也要考慮模型的預測如何影響業務結果。例如,它是否在提高銷售或改善診斷方面創造價值?

定期審核與檢討模型的表現,有助於識別部署後可能出現的問題或偏差,這對確保模型有效運作並達成預期目標至關重要。

機器學習如何運作

機器學習演算法

演算法是機器學習專案中的計算部分。演算法經過訓練後會生成模型,並以統計概率來回答問題或達成目標。這個目標可能是識別影像中的某些特徵,例如「找出所有的貓」,或者是發現資料中的異常,這些異常可能表示詐騙、垃圾郵件或機器故障問題。還有一些演算法可能試圖進行預測,例如根據目前購物車中的商品,推測買家可能會喜歡哪些衣物。

以下是機器學習中最常用的演算法:

  • 神經網路:人類大腦透過創建節點網路來運作,這些節點執行多種功能,包括處理來自眼睛的影像、儲存記憶和控制肌肉。基於電腦的神經網路模仿大腦結構,創建了多層節點,這些節點會根據所分析過的資料和鄰近節點的資料來權衡之間的關聯。這些節點作為一個網絡,能夠識別資料的特徵,例如圖像中的元素。
  • 線性迴歸:線性迴歸演算法採用資料點並為最能支持預測結果的線建立數學方程式,這有時被稱為「最佳擬合線」。線性迴歸透過調整方程式中的變數,將預測誤差降到最低。在兒科護理中,線性迴歸的其中一個例子是根據歷史資料,使用不同的資料點來預測孩子的身高和體重。類似地,BMI (體重指數) 也是線性迴歸的一種,試圖將身高和體重與總體體脂肪進行關聯。由於演算法使用的是簡單的直線進行預測,誤差率可能較高。例如,BMI 為 30 通常代表肥胖,這對一般大眾來說是正確的,但對於像美式足球聯盟 (NFL) 線衛等力量型運動員來說,這不一定適用。
  • 邏輯迴歸:邏輯迴歸最適用於二元結果,類似於線性迴歸,但對於可能的資料範圍邊界有特殊考量。邏輯迴歸的例子包括對潛在顧客轉化為付費顧客的可能性進行通過/不通過的分析。邏輯迴歸經常用於醫療診斷,例如將某一範圍內的血漿葡萄糖濃度用作糖尿病的重要指標。邏輯迴歸也可以用來預測電子郵件是否為垃圾郵件,或信用卡交易是否為詐騙。
  • 叢集:叢集是一種非監督式學習,會對未標注的資料集顯示演算法,其中的資料可能會劃分為不同的群組或集群。在評估訓練資料的過程中,演算法會尋找資料之間的模式和重疊細節,並進行分門別類。例如,假設演算法正在分析各種水果的營養價值,它可能會發現柑橘類水果屬於一類,漿果類水果屬於另一類,而瓜果類屬於第三類;這樣就可以更清楚地瞭解每個類別的獨特之處。叢集功能特別適用於任何分類專案,例如市場細分。
  • 決策樹:決策樹使用監督式學習和基本的「如果…那麼」邏輯來進行預測。根據專案的複雜度,決策樹是一種只需較少資源的演算法,能提供直觀的結果,堪稱理想的選擇。例如,如果一所大學想決定哪些學生可以免修大一英文,可能會使用一個決策樹,首先詢問學生是否在高中修過四年英文,如果是,接著詢問學生在這些課程中的 GPA 是否至少為 3.6。另一個方法可能僅僅詢問學生在 SAT 的閱讀、寫作和語言部分是否得分超過某個門檻。
  • 隨機森林:當單獨使用時,由於決策樹依賴於嚴格的工作流程,並要求回答所有的評估問題,因此有其固有的局限性。在上面的決策樹例子中,該大學可能會要求要符合兩個條件,儘管只要符合其中一個條件可能就足夠了。還可能有其他因素需要考慮,例如學生在入學申請論文中的表現。如果三個條件都需要滿足,那麼該大學就會面臨「過度擬合」的問題。那些在所有三個標準上表現良好的學生,極有可能不需要修英文 101 這門課;然而,其他也符合要求的學生仍然會被要求修這門課。隨機森林將多個決策樹集合在一起,透過累積的結果來呈現更全面的視角。使用隨機森林時,專案可以繼續使用決策樹的核心機制,同時考慮相關資料點之間的細微關係。因此,該大學可能會將這三個標準分開成不同的決策樹,然後使用權重來決定誰可以免修英文 101 課,可能會發現高中英文成績最具預測性,而論文表現則最不具預測性。

神經網路之外

機器學習使用了各式各樣的演算法。除了上述討論的熱門演算法,以下是五個較少見但仍然有用的演算法。

梯度提升法 (Gradient boosting) 依序建立模型,重點在於修正先前的錯誤,對於詐騙與垃圾郵件偵測特別有效。
K近鄰法 (K-nearest neighbors, KNN) 簡單但高效的模型,根據訓練資料中最接近的標籤對資料點進行分類。
主成分分析 (Principal component analysis, PCA) 透過識別最重要的特徵來降低資料的維度,對於資料可視化和壓縮 (例如異常偵測) 非常有用。
Q學習 (Q-learning) 透過代理反覆試驗,對正確行為給予獎勵,對錯誤行為給予懲罰。
支援向量機 (Support vector machines, SVM) 創建超平面來有效地將屬於不同類別的資料點區分開,常用於圖像分類等應用。

機器學習的優勢

機器學習讓企業能夠從資料中提取洞察,這些是透過其他方式可能無法發現的。將機器學習整合至流程中所帶來的主要優勢如下:

  • 簡化決策和預測分析:資料導向的決策始於資料分析。這是顯而易見的事實,但當手動分析時,過程既耗時又需大量資源,並且可能無法提供足夠豐富的洞察來證明成本的合理性。機器學習可以快速檢索大量資料,識別趨勢和模式,讓使用者能專注於查詢和可執行的結果,而不是改善手動處理資料的方法。根據分析工具,機器學習能生成預測並發現資料中難以察覺的洞察,從而實現更深層次的分析,並為企業創造更多價值。
  • 提升效率和自動化任務:機器學習是許多技術的核心,有助員工提高效率。許多低認知度、重複的任務 (包括拼寫檢查、文件數位化與分類) 如今都可以由電腦完成,這都歸功於機器學習。

    機器學習還擅長於進行快速且即時的資料分析,這是人類難以做到的。這筆交易是詐騙嗎?那封電子郵件是釣魚詐騙嗎?機器學習系統通常能在幾秒鐘內準確做出判斷,並自動採取適當的行動。結合機器學習技術後,企業能夠利用資料進行預測,並獲得影響預測結果的因素說明,從而協助高層決策者規劃企業最佳發展路徑。
  • 服務個人化與創新:機器學習為客戶體驗開啟了新大門,尤其是在個人化方面。企業可利用購買歷史記錄、瀏覽記錄、人口統計資料及其他資訊來建立每個客戶的個人資料,並進行交叉比對,以預測客戶的興趣。這樣一來,推薦引擎、自动生成折扣及其他個人化互動成為可能,促進客戶持續回流。

    在此語境下使用的術語:決策樹有助於對客戶進行分類。比如,一位客戶喜歡復古二手時尚,而另一位則偏好前衛設計師服飾。將客戶進行相似群組的聚類,有助於識別他們可能點擊的產品,或是他們是否對促銷活動有興趣。機器學習可根據客戶所屬的群組預測最適合的優惠。

機器學習的挑戰

機器學習專案的成效,取決於其所建立的系統與資源。因此,這強調了在適當規劃與準備方面進行投資的必要性。

以下是機器學習專案中常見的挑戰:

  • 資料品質:「垃圾進,垃圾出」這句話同樣適用於機器學習 — 無論是在訓練階段或是生產環境中,資料品質都非常重要。高品質的資料能夠提供更準確、有效率的結果;低品質的資料則可能導致模型產生不準確或扭曲的結果。值得注意的是,「品質」對不同專案的定義可能不同。以訓練圖像辨識系統為例,資料應該能代表模型在現實世界中所見的情境。這包括陰影中的物體、略微模糊的圖像,以及沒有正對鏡頭的情況。對於訓練來說,資料越接近系統在實際應用中所見的情形,效果越好。

    因此,企業應該對資料來源進行審查,將資料集轉換為一致且兼容的格式,執行清理與去除重複程序,為使用者提供有關流程與規範的訓練,同時整合工具來評估資料的品質與適用性。
  • 偏差:資料可能很乾淨,但是否沒有偏差?舉個明顯的例子,假設你想訓練一個機器學習系統來檢測圖片中的狗,並且你擁有只有拉布拉多和貴賓犬的強大資料集。訓練完成後,此模型在識別這些狗時表現得很好,可以說它對這些狗有偏見。但當它看到一張鬥牛犬的照片時,此模型卻說找不到狗。這是當然的,因為此模型並未針對這類狗進行訓練。

    建立正確的訓練訓練集是建立能夠達到預期效果的機器學習工具中最具挑戰性且成本最高的部分之一。某些類型訓練的稀缺,經常會產生意想不到的偏見。例如,藏獒是一個稀有品種,看起來像是橙棕色的紐芬蘭犬。因此,如果藏獒的訓練樣本不足,機器學習模型將其誤認為紐芬蘭犬也不足為奇。
  • 資料安全:儘管機器學習有許多優勢,但它也可能帶來一系列安全問題。機器學習分析所用的資料可能包含不應被公開的敏感或專有資訊。同樣,資料也可能成為網絡攻擊的目標,目的是篡改模型並將錯誤資訊注入結果中。資料準備過程可能會揭示並解決安全漏洞,尤其是當資料集在系統間進行匯出或匯入處理時。為了減少安全問題,企業必須採取一系列安全政策、流程和控制措施,包括實用的員工培訓。
  • 資料隱私權:確保敏感資料不被洩露是一項持續的工作。資料匿名化是一種新的做法,但並非總是可行,也并非完全足夠。例如,假設某公司希望提供一項服務,讓其商業客戶能根據公司收集的資料,瞭解更多有關最終消費者的資訊。這類資訊需要受到保護,並且在法律要求下進行使用,企業也需要仔細考量可能透過機器學習系統試圖破壞資料的新威脅來源。

機器學習使用案例

機器學習可以為幾乎所有產業及企業內的各個部門帶來顯著的效益。只要有資料,機器學習便能提供提升效率及打造新互動的方式。各行各業中常見的機器學習應用範例包括:

  • 零售業:對零售商來說,機器學習有助改善營運和銷售等方面。在營運層面,機器學習可以分析供應鏈資料,協助優化庫存管理,並提前識別可能的延遲。為了提升銷售,機器學習可以檢視顧客的搜尋與瀏覽歷史記錄,以及人口統計資料,建立客戶檔案,作為後續互動的基礎。
  • 串流媒體:就像零售商一樣,音訊與視訊串流服務商也可以根據使用者的互動與瀏覽歷史記錄以及人口統計資料來建立客戶檔案。這些檔案有助於驅動推薦引擎,協助發現新內容,並促進進一步的互動。
  • 金融:機器學習在金融業中最強大且簡單的應用之一便是詐騙偵測。透過機器學習,演算法可以識別一般的帳戶行為,並開始標註異常行為,進行潛在的詐騙調查。
  • 醫療:對於醫療業,幾乎在每個營運層面都適合運用機器學習。透過電子病歷中的病患檔案,可以根據相似人口統計資料進行比較,以提前識別可能出現的問題。來自物聯網裝置 (例如智慧型藥物分配器) 的資料能快速標註錯誤;病人流量或醫院床位使用情況等營運資料則能協助調整人員配置。

Oracle 提供更快速、更安全的機器學習

Oracle Database 中的機器學習提供一系列功能,能夠加速機器學習流程。透過將資料保持在資料庫內,資料科學家可以簡化工作流程並提高安全性,同時利用超過 30 種內建的高效能演算法、支援 R、SQL 和 Python 等熱門語言、自動化機器學習功能,以及無需編碼的介面。

對於擁有大量資料的企業, HeatWave MySQL 中的資料庫內機器學習可避免將資料轉移至其他系統進行機器學習,這樣不僅能提高安全性、降低成本,還能節省時間。HeatWave AutoML 自動化機器學習生命週期,包括演算法選擇、用於訓練的智慧資料採樣、功能選擇和調整,通常有助於節省更多時間和精力。

機器學習的最大價值在於能快速且準確地分析與解釋大量資料。訓練完成後,機器學習模型可以在幾秒鐘或幾分鐘內識別出趨勢、模式與洞察,這些是人類可能需要數週才能發現的,甚至是永遠無法察覺的。最終的結果是帶來更明智的決策、提升解決問題的能力,以及能夠進行資料導向預測。此外,機器學習模型還可以自動化重複過程,節省時間與資源。機器學習正在釋放其潛力,推動工作場所革新及創新。

機器學習是釋放資料價值的關鍵,也是成功人工智慧計畫的第一步。

機器學習常見問題

人工智慧與機器學習有何不同?

人工智慧 (AI) 是指一個廣泛的運算領域,專注於構建和完善像人類思考的系統;機器學習 (ML) 則是這一領域的子集,專注於學習過程中的運算方面。這兩個術語常常互換使用,也面臨類似的挑戰,但儘管如此,它們仍然是獨立的領域。

機器學習的四大主要類型是什麼?

機器學習的四種類型如下:

  • 監督式學習。監督式學習使用標註過的資料集來訓練演算法,指向特定的目標。
  • 非監督式學習。非監督式學習使用未標註的資料集,讓演算法有空間探索並識別模式。
  • 半監督式學習。半監督式學習先使用標註過的資料集進行初步訓練,建立專案的大致範圍。接著,演算法利用這些訓練來評估未標註的樣本,看看是否能以高概率為其標註。這個過程可以反覆進行,每次迭代標註的樣本集會變大。
  • 強化學習。強化學習與非監督式學習類似,也使用未標註的資料集。但不同的是,強化學習專注於通過正面、負面和中立的反饋來學習達成特定目標的最佳路徑,而非單純尋找模式。

學習機器學習難嗎?

像任何技術領域一樣,學習機器學習的所有内容是一個需要時間與投入的反覆過程。學習機器學習的一個良好起點是掌握程式語言基礎,如 Python 或 R,同時也要掌握統計學概念。評估機器學習結果的許多元素需要瞭解統計學的基本概念,如迴歸、分類、擬合和參數等。

機器學習的範例是什麼?

常見的機器學習範例包括推薦引擎。在電子商務中,這表現為「您可能也喜歡...」的產品推薦。在視訊串流平台中,則顯示為推薦觀看的內容。在這些情況下,演算法會根據使用者的歷史記錄來預測使用者可能感興趣的內容,且隨著使用者提供更多資料,演算法能不斷優化預測。