# 在預測中使用日期功能

從使用自動工程化日期功能訓練的 ML 部署執行預測時，在套用資料中指定日期和時間有相關要求。這些要求和考量會因您是執行批次預測、即時預測，還是使用 Qlik Predict 分析連接器而略有不同。

## 自動日期功能工程

自動功能工程是在模型訓練期間於 ML 實驗中執行的資料準備步驟。透過此程序，會從訓練資料集建立新的功能，然後用於訓練模型。對於日期功能欄，此程序預設會自動執行。使用者可以選擇退出日期功能工程。然而，在大多數情況下，建議使用此功能。

如需詳細資訊，請參閱[日期特性工程](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/AutoML/date-feature-engineering.htm)。

## 批次預測的需求

使用訓練資料集建立模型時，會產生自動設計的日期特徵，其會部署並作為 ML 部署使用，以對新資料進行預測 (對於 批次預測，這是 套用資料集)。

部署透過自動設計之日期特徵訓練的模型以進行預測時，產生預測的套用資料集不需要納入自動設計的日期特徵。Qlik Predict 在預測前為套用資料集產生自動設計的特徵。不過，套用資料集必須包含父日期特徵 (日期部分是從中衍生而來)，且您使用的欄必須具有日期、日期時間、時間戳記或時間資料類型。

透過 ML 部署建立的預測資料集，包括 SHAP 和套用資料集，將會納入自動設計的日期特徵。

## 即時和連接器型預測的需求

執行 即時預測 以及來自 Qlik Predict 分析連接器的預測時，對於您提供給 Qlik Predict 的套用資料中的日期特徵有需求。對於這些類型的預測，套用資料是在小型 JSON 承載中指定，而非作為套用資料集。對於即時和連接器型預測，您正在將 JSON 承載傳送到機器學習 API 中的即時預測端點。

為了讓機器學習 API 中的即時預測端點能夠處理日期和時間戳記欄位，您傳送至端點的 JSON 承載必須遵守以下要求：

* 日期和日期時間值必須是根據 ISO 8601 標準格式化的字串。範例：

  * 2020-01-14

  * 2020-01-14T00:00:00.000Z

* 父日期—從中衍生出日期部分的功能，特性—必須完整包含在內。例如，您的模型可能只使用 年份 功能，但您仍需要以符合 ISO 8601 的格式提供日期。

* 每個欄內的資料需要屬於相同時區。

上述需求：

* 僅適用於使用日期功能工程訓練的功能。如果功能類型手動變更為類別功能類型，則這些需求不適用。如果功能類型已變更為類別，請在套用資料中提供欄位，其日期格式應與原始用於訓練的格式相同。

* 不適用於時間序列模型。

資訊備註您用來訓練模型的資料不必遵守這些要求。

資訊備註

已取代即時預測 API，並替換為 [機器學習 API](https://qlik.dev/apis/rest/ml/) 中的即時預測端點。目前未取代該功能本身。對於未來的即時預測，請使用 機器學習 API 中的即時預測端點。如需從即時預測 API 遷移到 機器學習 API 的協助，請參閱 [Qlik Cloud 開發人員入口網站上的遷移指南](https://qlik.dev/apis/rest/automl-deployments/#migrate-from-the-automl-real-time-predictions-api-to-the-machine-learning-api)。

## 瞭解更多資訊

* [自動特徵設計](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/AutoML/automatic-feature-engineering.htm)
* [日期特性工程](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/AutoML/date-feature-engineering.htm)
* [Qlik Predict 分析來源](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/LoadData/ac-qlik-automl-connector-overview.htm)