[](https://github.com/microsoft/ML-For-Beginners/blob/master/LICENSE)
[](https://GitHub.com/microsoft/ML-For-Beginners/graphs/contributors/)
[](https://GitHub.com/microsoft/ML-For-Beginners/issues/)
[](https://GitHub.com/microsoft/ML-For-Beginners/pulls/)
[](http://makeapullrequest.com)
[](https://GitHub.com/microsoft/ML-For-Beginners/watchers/)
[](https://GitHub.com/microsoft/ML-For-Beginners/network/)
[](https://GitHub.com/microsoft/ML-For-Beginners/stargazers/)
### 🌐 多語言支援
#### 透過 GitHub Action 支援(自動化且永遠保持最新)
[阿拉伯語](../ar/README.md) | [孟加拉語](../bn/README.md) | [保加利亞語](../bg/README.md) | [緬甸語 (Myanmar)](../my/README.md) | [中文(簡體)](../zh-CN/README.md) | [中文(繁體,香港)](../zh-HK/README.md) | [中文(繁體,澳門)](../zh-MO/README.md) | [中文(繁體,臺灣)](./README.md) | [克羅埃西亞語](../hr/README.md) | [捷克語](../cs/README.md) | [丹麥語](../da/README.md) | [荷蘭語](../nl/README.md) | [愛沙尼亞語](../et/README.md) | [芬蘭語](../fi/README.md) | [法語](../fr/README.md) | [德語](../de/README.md) | [希臘語](../el/README.md) | [希伯來語](../he/README.md) | [印地語](../hi/README.md) | [匈牙利語](../hu/README.md) | [印尼語](../id/README.md) | [義大利語](../it/README.md) | [日語](../ja/README.md) | [坎納達語](../kn/README.md) | [高棉語](../km/README.md) | [韓語](../ko/README.md) | [立陶宛語](../lt/README.md) | [馬來語](../ms/README.md) | [馬拉雅拉姆語](../ml/README.md) | [馬拉地語](../mr/README.md) | [尼泊爾語](../ne/README.md) | [奈及利亞洋泾浜英語](../pcm/README.md) | [挪威語](../no/README.md) | [波斯語 (Farsi)](../fa/README.md) | [波蘭語](../pl/README.md) | [葡萄牙語 (巴西)](../pt-BR/README.md) | [葡萄牙語 (葡萄牙)](../pt-PT/README.md) | [旁遮普語 (Gurmukhi)](../pa/README.md) | [羅馬尼亞語](../ro/README.md) | [俄語](../ru/README.md) | [塞爾維亞語 (西里爾字母)](../sr/README.md) | [斯洛伐克語](../sk/README.md) | [斯洛文尼亞語](../sl/README.md) | [西班牙語](../es/README.md) | [斯瓦希里語](../sw/README.md) | [瑞典語](../sv/README.md) | [他加祿語 (菲律賓語)](../tl/README.md) | [泰米爾語](../ta/README.md) | [泰盧固語](../te/README.md) | [泰語](../th/README.md) | [土耳其語](../tr/README.md) | [烏克蘭語](../uk/README.md) | [烏爾都語](../ur/README.md) | [越南語](../vi/README.md)
> **偏好本機複製?**
>
> 本儲存庫包含超過 50 種語言的翻譯,會大幅增加下載大小。若想在無翻譯的情況下進行複製,請使用稀疏簽出:
>
> **Bash / macOS / Linux:**
> ```bash
> git clone --filter=blob:none --sparse https://github.com/microsoft/ML-For-Beginners.git
> cd ML-For-Beginners
> git sparse-checkout set --no-cone '/*' '!translations' '!translated_images'
> ```
>
> **CMD(Windows):**
> ```cmd
> git clone --filter=blob:none --sparse https://github.com/microsoft/ML-For-Beginners.git
> cd ML-For-Beginners
> git sparse-checkout set --no-cone "/*" "!translations" "!translated_images"
> ```
>
> 這將讓您以更快的速度下載,並取得完成課程所需的一切。
#### 加入我們的社群
[](https://discord.gg/nTYy5BXMWG)
我們有一個持續進行的 Discord AI 學習系列,詳細資訊與加入請見 [Learn with AI Series](https://aka.ms/learnwithai/discord),活動時間為 2025 年 9 月 18 日至 30 日。您將獲得使用 GitHub Copilot 進行資料科學的技巧與祕訣。

# 給初學者的機器學習課程
> 🌍 隨著我們透過世界各地的文化探索機器學習,環遊世界一圈吧 🌍
微軟的雲端倡導者很高興提供一個為期 12 週、共 26 課的完整課程,專注於 機器學習。在本課程中,您將學習通常被稱作 經典機器學習 的內容,主要使用 Scikit-learn 作為函式庫,並避免深度學習,深度學習內容可在我們的 [AI 初學者課程](https://aka.ms/ai4beginners) 中找到。這些課程也可與我們的 ['資料科學初學者課程'](https://aka.ms/ds4beginners) 搭配使用!
與我們一起環遊世界,將這些經典技術應用於來自世界各地的資料。每課包括課前與課後測驗、書面教學說明、解答、作業等。我們的專案導向教學法讓您在實作中學習,是培養新技能的有效方法。
**✍️ 衷心感謝作者** Jen Looper、Stephen Howell、Francesca Lazzeri、Tomomi Imura、Cassie Breviu、Dmitry Soshnikov、Chris Noring、Anirban Mukherjee、Ornella Altunyan、Ruth Yakubu 及 Amy Boyd
**🎨 同時感謝插畫師** Tomomi Imura、Dasani Madipalli 及 Jen Looper
**🙏 特別感謝 Microsoft 學生大使作者、審閱者與內容貢獻者**,尤其是 Rishit Dagli、Muhammad Sakib Khan Inan、Rohan Raj、Alexandru Petrescu、Abhishek Jaiswal、Nawrin Tabassum、Ioan Samuila 與 Snigdha Agarwal
**🤩 額外感謝 Microsoft 學生大使 Eric Wanjau、Jasleen Sondhi 及 Vidushi Gupta 為我們帶來的 R 課程!**
# 開始使用
請依照以下步驟操作:
1. **Fork 本儲存庫**:點擊本頁右上角的「Fork」按鈕。
2. 複製儲存庫:`git clone https://github.com/microsoft/ML-For-Beginners.git`
> [於我們的 Microsoft Learn 集合中尋找此課程的所有額外資源](https://learn.microsoft.com/en-us/collections/qrqzamz1nn2wx3?WT.mc_id=academic-77952-bethanycheum)
> 🔧 **需要協助?** 請查看我們的 [故障排除指南](TROUBLESHOOTING.md),獲得安裝、設定及執行課程時通用問題的解決方案。
**[學生](https://aka.ms/student-page)**,欲使用此課程,請將整個儲存庫 Fork 至您自己的 GitHub 帳號,並自行或與團體完成練習:
- 先完成課前測驗。
- 閱讀課程內容並完成活動,每個知識檢核時停下反思。
- 嘗試透過理解課程內容自行建立專案,而非僅執行解答程式碼;不過在各專案導向課程的 `/solution` 資料夾中會提供解答。
- 進行課後測驗。
- 完成挑戰題。
- 完成作業。
- 完成一組課程後,請訪問 [討論區](https://github.com/microsoft/ML-For-Beginners/discussions),並透過填寫相對應的 PAT 評分表「大聲學習(learn out loud)」。PAT 是「進度評估工具」,您可透過填寫它來促進自己的學習。您也可以對其他人的 PAT 表示回應,讓我們一起學習。
> 若想更深入學習,我們建議跟隨這些 [Microsoft Learn](https://docs.microsoft.com/en-us/users/jenlooper-2911/collections/k7o7tg1gp306q4?WT.mc_id=academic-77952-leestott) 模組及學習路徑。
教師,我們有 [包含一些建議](for-teachers.md) 如何使用此課程。
---
## 影片導覽
部分課程有提供短影片說明。您可以在課程中內嵌觀賞,或於 [Microsoft Developer YouTube 頻道的 ML for Beginners 播放清單](https://aka.ms/ml-beginners-videos) 中觀看,點選下方圖片可前往。
[](https://aka.ms/ml-beginners-videos)
---
## 團隊介紹
[](https://youtu.be/Tj1XWrDSYJU)
動圖製作者 [Mohit Jaisal](https://linkedin.com/in/mohitjaisal)
> 🎥 點擊上方圖片觀看介紹本計畫與其創作者的影片!
---
## 教學法
我們在建立這套課程時選擇了兩個教學原則:確保它是動手實作的 專案導向,並且包涵 頻繁的測驗。另外,本課程也有一個共通的 主題,以增加連貫性。
透過確保內容與專案對齊,讓學習流程更吸引學生且增強概念的記憶。此外,課前的低壓力測驗有助設定學生的學習目標,而課後測驗則促進知識的鞏固。此課程設計靈活且有趣,可完整學習或分段進行。專案從簡單開始,隨 12 週週期末漸趨複雜。課程還包含有關機器學習在現實世界應用的後記,能作為額外學分或討論基礎。
> 請查看我們的 [行為準則](CODE_OF_CONDUCT.md)、[貢獻指南](CONTRIBUTING.md)、[翻譯](..) 及 [故障排除](TROUBLESHOOTING.md) 指引。我們歡迎您的建設性回饋!
## 每堂課包含
- 選用的筆記草圖
- 選用的補充影片
- 影片導覽(部分課程)
- [課前暖身測驗](https://ff-quizzes.netlify.app/en/ml/)
- 書面課程內容
- 專案導向課程中,建構專案的逐步指導
- 知識檢核
- 挑戰題
- 補充閱讀
- 作業
- [課後測驗](https://ff-quizzes.netlify.app/en/ml/)
> 關於語言的說明:這些課程主要使用 Python 撰寫,但也有許多課程提供 R 語言版本。若要完成 R 課程,請至 `/solution` 資料夾中尋找 R 課程。它們包含 .rmd 副檔名,代表R Markdown檔案,這種檔案簡單定義為將 `程式碼區塊`(R 或其他語言)與 `YAML 標頭`(用來指導如何格式化輸出,如 PDF)嵌入於 `Markdown 文件` 中。因而,這是資料科學中代表性的撰寫框架,因為它允許你將程式碼、其輸出及想法結合並用 Markdown 撰寫。此外,R Markdown 文件可以輸出為 PDF、HTML 或 Word 等格式。
> 關於測驗的說明:所有測驗皆收錄於 [Quiz App folder](../../quiz-app) 中,共有 52 個測驗,每個測驗三題。它們從課程中連結,也可以在本機上運行測驗應用;請依照 `quiz-app` 資料夾中的指示進行本機託管或部署至 Azure。
| Lesson Number | 主題 | 課程群組 | 學習目標 | 相關課程 | 作者 |
| :-----------: | :------------------------------------------------------------: | :------------------------------------------: | ------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------: | :--------------------------------------------------: |
| 01 | 機器學習簡介 | [Introduction](1-Introduction/README.md) | 學習機器學習的基本概念 | [Lesson](1-Introduction/1-intro-to-ML/README.md) | Muhammad |
| 02 | 機器學習的歷史 | [Introduction](1-Introduction/README.md) | 學習此領域背後的歷史 | [Lesson](1-Introduction/2-history-of-ML/README.md) | Jen and Amy |
| 03 | 公平性與機器學習 | [Introduction](1-Introduction/README.md) | 在建立及應用 ML 模型時,學生應考慮的公平相關重要哲學議題 | [Lesson](1-Introduction/3-fairness/README.md) | Tomomi |
| 04 | 機器學習技術 | [Introduction](1-Introduction/README.md) | ML 研究人員用來建立 ML 模型的技術有哪些? | [Lesson](1-Introduction/4-techniques-of-ML/README.md) | Chris and Jen |
| 05 | 回歸介紹 | [Regression](2-Regression/README.md) | 使用 Python 和 Scikit-learn 入門回歸模型 | [Python](2-Regression/1-Tools/README.md) • [R](../../2-Regression/1-Tools/solution/R/lesson_1.html) | Jen • Eric Wanjau |
| 06 | 北美南瓜價格 🎃 | [Regression](2-Regression/README.md) | 在準備 ML 時,視覺化與清理資料 | [Python](2-Regression/2-Data/README.md) • [R](../../2-Regression/2-Data/solution/R/lesson_2.html) | Jen • Eric Wanjau |
| 07 | 北美南瓜價格 🎃 | [Regression](2-Regression/README.md) | 建立線性與多項式回歸模型 | [Python](2-Regression/3-Linear/README.md) • [R](../../2-Regression/3-Linear/solution/R/lesson_3.html) | Jen and Dmitry • Eric Wanjau |
| 08 | 北美南瓜價格 🎃 | [Regression](2-Regression/README.md) | 建立邏輯回歸模型 | [Python](2-Regression/4-Logistic/README.md) • [R](../../2-Regression/4-Logistic/solution/R/lesson_4.html) | Jen • Eric Wanjau |
| 09 | Web 應用 🔌 | [Web App](3-Web-App/README.md) | 建立一個可以使用訓練模型的網頁應用 | [Python](3-Web-App/1-Web-App/README.md) | Jen |
| 10 | 分類介紹 | [Classification](4-Classification/README.md) | 清理、準備並視覺化資料;分類入門 | [Python](4-Classification/1-Introduction/README.md) • [R](../../4-Classification/1-Introduction/solution/R/lesson_10.html) | Jen and Cassie • Eric Wanjau |
| 11 | 美味的亞洲與印度料理 🍜 | [Classification](4-Classification/README.md) | 分類器介紹 | [Python](4-Classification/2-Classifiers-1/README.md) • [R](../../4-Classification/2-Classifiers-1/solution/R/lesson_11.html) | Jen and Cassie • Eric Wanjau |
| 12 | 美味的亞洲與印度料理 🍜 | [Classification](4-Classification/README.md) | 更多的分類器 | [Python](4-Classification/3-Classifiers-2/README.md) • [R](../../4-Classification/3-Classifiers-2/solution/R/lesson_12.html) | Jen and Cassie • Eric Wanjau |
| 13 | 美味的亞洲與印度料理 🍜 | [Classification](4-Classification/README.md) | 使用模型構建推薦系統的網頁應用 | [Python](4-Classification/4-Applied/README.md) | Jen |
| 14 | 分群介紹 | [Clustering](5-Clustering/README.md) | 清理、準備並視覺化資料;分群入門 | [Python](5-Clustering/1-Visualize/README.md) • [R](../../5-Clustering/1-Visualize/solution/R/lesson_14.html) | Jen • Eric Wanjau |
| 15 | 探索奈及利亞音樂喜好 🎧 | [Clustering](5-Clustering/README.md) | 探索 K-均值分群法 | [Python](5-Clustering/2-K-Means/README.md) • [R](../../5-Clustering/2-K-Means/solution/R/lesson_15.html) | Jen • Eric Wanjau |
| 16 | 自然語言處理簡介 ☕️ | [Natural language processing](6-NLP/README.md) | 透過建立簡單機器人學習 NLP 基礎 | [Python](6-NLP/1-Introduction-to-NLP/README.md) | Stephen |
| 17 | 常見的 NLP 任務 ☕️ | [Natural language processing](6-NLP/README.md) | 透過理解處理語言結構時所需的常見任務,加深 NLP 知識 | [Python](6-NLP/2-Tasks/README.md) | Stephen |
| 18 | 翻譯與情感分析 ♥️ | [Natural language processing](6-NLP/README.md) | 以 Jane Austen 文學做翻譯與情感分析 | [Python](6-NLP/3-Translation-Sentiment/README.md) | Stephen |
| 19 | 歐洲浪漫飯店 ♥️ | [Natural language processing](6-NLP/README.md) | 使用飯店評論進行情感分析 1 | [Python](6-NLP/4-Hotel-Reviews-1/README.md) | Stephen |
| 20 | 歐洲浪漫飯店 ♥️ | [Natural language processing](6-NLP/README.md) | 使用飯店評論進行情感分析 2 | [Python](6-NLP/5-Hotel-Reviews-2/README.md) | Stephen |
| 21 | 時間序列預測介紹 | [Time series](7-TimeSeries/README.md) | 時間序列預測介紹 | [Python](7-TimeSeries/1-Introduction/README.md) | Francesca |
| 22 | ⚡️ 全球用電量 ⚡️ - 使用 ARIMA 做時間序列預測 | [Time series](7-TimeSeries/README.md) | 使用 ARIMA 進行時間序列預測 | [Python](7-TimeSeries/2-ARIMA/README.md) | Francesca |
| 23 | ⚡️ 全球用電量 ⚡️ - 使用 SVR 做時間序列預測 | [Time series](7-TimeSeries/README.md) | 使用支持向量回歸 (SVR) 進行時間序列預測 | [Python](7-TimeSeries/3-SVR/README.md) | Anirban |
| 24 | 強化學習介紹 | [Reinforcement learning](8-Reinforcement/README.md) | 強化學習 Q-Learning 介紹 | [Python](8-Reinforcement/1-QLearning/README.md) | Dmitry |
| 25 | 幫助 Peter 避開狼!🐺 | [Reinforcement learning](8-Reinforcement/README.md) | 強化學習 Gym | [Python](8-Reinforcement/2-Gym/README.md) | Dmitry |
| 後記 | 實際世界中的機器學習情境與應用 | [ML in the Wild](9-Real-World/README.md) | 傳統機器學習有趣且具啟發性的真實世界應用 | [Lesson](9-Real-World/1-Applications/README.md) | Team |
| 後記 | 使用 RAI dashboard 進行機器學習模型偵錯 | [ML in the Wild](9-Real-World/README.md) | 使用負責任 AI 儀表板元件進行機器學習模型偵錯 | [Lesson](9-Real-World/2-Debugging-ML-Models/README.md) | Ruth Yakubu |
> [在我們的 Microsoft Learn 集合中找到本課程的所有其他資源](https://learn.microsoft.com/en-us/collections/qrqzamz1nn2wx3?WT.mc_id=academic-77952-bethanycheum)
## 離線使用
你可以使用 [Docsify](https://docsify.js.org/#/) 離線執行此文件。將本存放庫分叉,於本機安裝 [Docsify](https://docsify.js.org/#/quickstart),然後在本存放庫根目錄輸入 `docsify serve`。網站會在本機的 3000 埠執行:`localhost:3000`。
## PDF 檔案
請至此處下載一份帶有連結的課程綱要 PDF [here](https://microsoft.github.io/ML-For-Beginners/pdf/readme.pdf)。
## 🎒 其他課程
我們團隊還製作其他課程!請查看:
### LangChain
[](https://aka.ms/langchain4j-for-beginners)
[](https://aka.ms/langchainjs-for-beginners?WT.mc_id=m365-94501-dwahlin)
[](https://github.com/microsoft/langchain-for-beginners?WT.mc_id=m365-94501-dwahlin)
---
### Azure / Edge / MCP / Agents
[](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst)
[](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst)
[](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst)
[](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst)
---
### 生成式 AI 系列
[](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst)
[-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst)
[-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst)
[-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst)
---
### 核心學習
[](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst)
[](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst)
[](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst)
[](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung)
[](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst)
[](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst)
[](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst)
---
### Copilot 系列
[](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst)
[](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst)
[](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst)
## 尋求幫助
如果你在學習機器學習或建立 AI 應用程式時遇到困難或有問題,別擔心 — 可以獲得協助。
你可以加入其他學習者與開發者的討論,提出問題,並與社群分享你的想法。
- 加入社群,一起提問與學習
- 討論機器學習概念與專案想法
- 獲得經驗豐富開發者的指導
有支持的社群是提升技能和更快解決問題的絕佳方式。
[Microsoft Foundry Discord 社群](https://discord.gg/nTYy5BXMWG)
如果你遇到錯誤、問題,或有改進建議,也可以在此存放庫開啟 **Issue** 回報問題。
如需產品反饋或查找現有社群貼文,請造訪開發者論壇:
[](https://aka.ms/foundry/forum)
## 其他學習建議
- 課後回顧筆記本以加深理解。
- 練習自行實作演算法。
- 運用所學概念探索真實世界資料集。
---
**免責聲明**:
本文件係使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們努力確保翻譯的準確性,但請注意,自動翻譯可能包含錯誤或不準確之處。原文文件及其母語版本應視為具權威性的內容來源。對於重要資訊,建議尋求專業人工翻譯。我們不對因使用本翻譯所產生的任何誤解或誤譯承擔責任。