# Machine Learning

機器學習( Machine Learning = ML)是透過演算法將收集到的資料進行分類或預測模型訓練，在未來中，當得到新的資料時，可以透過訓練出的模型進行預測，如果這些效能評估可以透過利用過往資料來提升的話，就叫機器學習。

# Learning ML

##### Free Course

- [ML for Developers](https://madewithml.com/)

##### Federated Learning

聯邦學習是一種讓多個分散的設備在不傳送原始資料的前提下，協同訓練共享模型的技術。

- [國家級聯邦學習平臺怎麼運作？三總揭醫療AI跨院訓練機制 | iThome](https://www.ithome.com.tw/news/173742)

# Data Analysis Tools

##### Orange Data Mining

Orange 資料探勘(Orange Data Mining，舊稱Orange 3) 是一個支援視覺化、圖示化介面的資料探索工具。使用Orange就可以像積木一樣，透過堆疊功能模組進行資料探勘( Data Mining)、機器學習 (Machine Learning)、圖像分析 (Image Analysis)、文字探勘 (Text Mining)，方便使用者可以專注於探索性數據而不是編碼工作。因此Orange這種視覺化程式設計工具(Visual Programming Tools)可提供開發人員和資料科學家各式各樣的模組，讓資料處理、模型建置、訓練及部署機器學習模型更加快速且視覺化更容易上手!

- [Orange Data Mining](https://orangedatamining.com/)

##### PyGWorker

Turn your pandas dataframe into an interactive UI for visual analysis. Alternative to Tableau.

Support for Jupyter Notebook/ CoLab/Streamlit/Kaggle.

GitHub: [PyGWalker: Turn your pandas dataframe into an interactive UI for visual analysis (github.com)](https://github.com/Kanaries/pygwalker)

# OCR

OCR - Optical Character Recognition

#### ANPR 車牌辨識

Automatic License/Number Plate Reader (ANPR)

- [Automatic License Plate Reader Using OCR in Python - PyImageSearch](https://pyimagesearch.com/2024/06/10/automatic-license-plate-reader-using-ocr-in-python/)
- [FastALPR](https://github.com/ankandrew/fast-alpr)

# Computer Vision

##### Supervision

Supervision 是由 Roboflow 開發的開源 Python 函式庫，用於建置電腦視覺應用程式。它提供了一個統一的 Detections 物件，並包含用於 Ultralytics、Roboflow Inference、Transformers、SAM、Detectron2、MMDetection、YOLO-NAS、PaddleDet、NCNN、Azure AI Vision 以及 VLM 解析器等支援輸出格式的轉換器。

- [Supervision](https://supervision.roboflow.com/latest/)
- [https://github.com/roboflow/supervision](https://github.com/roboflow/supervision)

##### Face Detection

- [deepface](https://github.com/serengil/deepface) - About A Lightweight Face Recognition and Facial Attribute Analysis (Age, Gender, Emotion and Race) Library for Python.

# Federated Learning

#### 什麼是 Federated Learning

聯邦學習 (Federated Learning) 是一種讓多個分散的設備在不傳送原始資料的前提下，協同訓練共享模型的技術。

應用場域：

1. **智慧手機與行動裝置**
    - 例如文字輸入法、語音助理或相機美顏功能，讓每部手機本地訓練使用者的打字、說話或影像樣本，再將模型更新匯聚，提升服務品質同時保護個人隱私。
2. **醫療健康資訊平台**
    - 各醫院或診所的電子病歷、影像檢查資料往往受限於法規與患者保密，聯邦學習可在各機構本地訓練疾病診斷、預測模型，聚合後得到跨院的高精度醫學 AI，卻不需要移轉或共享原始病患資料。
3. **智慧製造與工業物聯網**（IIoT） 
    - 工廠內部的感測器、機器設備產生大量運行數據，這些數據屬於企業機密。透過聯邦學習，各設備在本地學習設備故障預測或產能優化模型，然後把模型參數上傳至中心平台聚合，實現跨廠區或跨企業的知識共享，同時避免機密數據外流。

更多教學：

- [國家級聯邦學習平臺怎麼運作？三總揭醫療AI跨院訓練機制 | iThome](https://www.ithome.com.tw/news/173742)