

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 用於預測貨運需求的機器學習模型
<a name="machine-learning-models"></a>

下圖顯示訓練資料的範例。目標是您想要預測的內容，而相關的時間序列 1 和 2 是與預測目標相關的輸入功能。歷史資料用於訓練和驗證，而您保留一段時間的歷史資料以進行模型驗證。



![顯示歷史資料、保留資料和預測的折線圖](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/forecast-demand-freight-capacity/images/time-series-training-data.png)


在需求預測中，輸出 （或目標） 是您想要預測的需求量。輸入功能是與輸出相關的時間序列資料。若要訓練 ML 模型以準確預測需求量，解決方案中需要兩個機器學習模型。第一個模型會針對輸入功能進行時間序列預測，包括內部和外部資料。第二個模型使用所有功能進行最終需求預測。透過同時使用這兩個模型，您可以有效地擷取時間序列趨勢以及目標與輸入之間的關係。

## 輸入功能預測的 ML 模型
<a name="ml-model-input-feature"></a>

輸入功能包括內部和外部歷史時間序列資料。若要預測每個功能，您可以使用一維 (1D) 時間序列模型。有各種可用的演算法。例如， [https://facebook.github.io/prophet/](https://facebook.github.io/prophet/)最適合具有強烈季節性效果和數個季節歷史資料的時間序列。系統會為每個個別功能產生預測。

## 目標變數預測的 ML 模型
<a name="ml-model-target-forecast"></a>

輸出的 ML 模型或需求量，是為了擷取所有特徵與輸出之間的關係而建置。您可以使用各種監督式迴歸模型，例如 lasso、random forest、 ridge regression和 XGBoost。建置模型並尋找最佳參數和超參數時，您可以使用保留資料。*保留資料*是歷史標籤資料的一部分，從用於訓練機器學習模型的資料集保留。您可以使用保留資料，透過比較預測與保留資料來評估模型效能。