這門課要解決什麼問題?
食品光譜與感測資料通常是高維、多變量、訊號重疊的資料。學生若只學單一模型,很容易停留在「按按鈕得到 accuracy」;這個三階段設計讓學生逐步理解資料、前處理、建模、驗證與解釋。
1. 看懂資料
理解光譜矩陣 X、食品成分或類別標籤 y,以及為什麼需要 PCA 先探索資料結構。
2. 建立模型
從 PLS regression 到 PLS-DA / SVM / Random Forest,學會依食品問題選擇分類或回歸。
3. 誠實驗證
用 cross-validation、confusion matrix、RMSE、balanced accuracy 判斷模型是否真的可信。
教學定位:本頁是總覽與入口;詳細的 Tecator PCA / PLS 操作已移到入門頁,避免與總覽頁重複。
三階段學習路徑
建議依序完成三個獨立頁面。每一階段都對應不同食品問題、不同資料複雜度與不同 chemometrics 技術。
入門:Tecator 肉品 NIR
從最乾淨、最適合入門的 NIR meat dataset 開始,學習 SNV、PCA、PLS regression。問題是:能不能用光譜預測脂肪含量?
進階:Olive Oil Data Fusion
把單一光譜推進到 multi-block data。學生要比較 single-block、low-level fusion、mid-level fusion,並避免 overfitting 與 data leakage。
為什麼選這三個 dataset?
| 階段 | Dataset | 食品問題 | 主要技術 | 適合教什麼 |
|---|---|---|---|---|
| 入門 | Tecator meat NIR | 肉品脂肪含量預測 | PCA、SNV、PLS regression | 光譜矩陣、主成分、定量模型、RMSE / R² |
| 中階 | Coffee–Barley NIR | 咖啡摻偽鑑別與比例預測 | PLS-DA、PLS regression、前處理比較 | 食品真偽、分類 vs 回歸、confusion matrix |
| 進階 | Olive Oil multi-block | 橄欖油認證與多儀器融合 | Block scaling、low-level fusion、mid-level fusion | Multi-block chemometrics、嚴格驗證、避免資料洩漏 |
Python 學習重點
- 用
pandas/numpy整理矩陣 - 用
scikit-learn建立 PCA、PLS、分類與交叉驗證 - 輸出 score plot、loading plot、predicted vs measured、confusion matrix
Orange 學習重點
- 用 File / Select Columns 設定 features、target、meta
- 用 PCA、Scatter Plot 視覺化樣本結構
- 用 Test & Score、Predictions、Confusion Matrix 評估模型
建議從入門頁開始
如果學生還不熟悉 NIR 或 chemometrics,請先從 Tecator 入門頁開始;若已熟悉 PCA / PLS,可直接跳到中階或進階。