

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

# 選擇用於訓練的項目互動資料
<a name="event-values-types"></a>

**重要**  
根據預設，所有新解決方案都會使用自動訓練。透過自動訓練，您會在解決方案處於作用中狀態時產生訓練成本。為了避免不必要的成本，您可以在完成後[更新解決方案](updating-solution.md)以關閉自動訓練。如需訓練成本的相關資訊，請參閱 [Amazon Personalize 定價](https://aws.amazon.com/personalize/pricing/)。

您可以在項目互動資料集中選擇 Amazon Personalize 在建立解決方案版本 （訓練模型） 時使用的事件。在訓練之前選擇項目互動資料，可讓您僅使用相關資料子集進行訓練，或移除雜訊以訓練更最佳化的模型。如需項目互動資料集的詳細資訊，請參閱 [項目互動資料](interactions-datasets.md)。

**注意**  
如果您使用 User-Personalization-v2 或 Personalized-Ranking-v2，您的訓練成本取決於您的項目互動資料，然後再依事件類型或值進行篩選。如需定價的詳細資訊，請參閱 [Amazon Personalize 定價](https://aws.amazon.com/personalize/pricing/)。

您可以選擇項目互動資料，如下所示：
+ **根據類型選擇記錄** – 當您設定解決方案時，如果您的項目互動資料集在 EVENT\_TYPE 欄中包含事件類型，您可以選擇指定要在訓練中使用的事件類型。例如，如果您的項目互動資料集包含*購買*、*點選*和*監看*事件類型，而且您希望 Amazon Personalize 只使用*監*看事件來訓練模型，當您設定解決方案時，您會提供*監看*作為 `event type` Amazon Personalize 在訓練中使用的 。

  如果您有多個事件類型，並使用 User-Personalization-v2 配方或 Personalized-Ranking-v2 配方，當您設定自訂解決方案時，您可以為不同類型的指定不同的權重。例如，您可以設定解決方案，給予比點擊事件更多的購買事件權重。如需詳細資訊，請參閱[使用事件組態最佳化解決方案](optimizing-solution-events-config.md)。

   如果您的項目互動資料集在 EVENT\_TYPE 欄中有多個事件類型，而且您在設定解決方案時未提供事件類型，則無論類型為何，Amazon Personalize 都會使用所有項目互動資料進行同等權重的訓練。
+ **根據類型和值選擇記錄 ** – 當您設定解決方案時，如果您的項目互動資料集包含 EVENT\_TYPE 和 EVENT\_VALUE 欄位，您可以將特定值設定為閾值，以排除訓練中的記錄。例如，如果具有 EVENT\_TYPE *監看*事件的 EVENT\_VALUE 資料是使用者監看的視訊百分比，如果您將事件值閾值設定為 0.5，且要*監看*的事件類型，Amazon Personalize 只會使用 EVENT\_VALUE 大於或等於 0.5 的*監看*互動事件來訓練模型。

下列程式碼說明如何使用適用於 Python (Boto3) 的 SDK 來建立解決方案，該解決方案只會使用使用 監看一半以上影片`watch`的事件。

```
import boto3

personalize = boto3.client('personalize')

create_solution_response = personalize.create_solution(
    name = 'solution name',
    datasetGroupArn = 'arn:aws:personalize:region:accountId:dataset-group/datasetGroupName',
    recipeArn = 'arn:aws:personalize:::recipe/aws-user-personalization-v2',
    eventType = 'watch',
    solutionConfig = {
        "eventValueThreshold": "0.5"
    }
)

# Store the solution ARN
solution_arn = create_solution_response['solutionArn']

# Use the solution ARN to get the solution status
solution_description = personalize.describe_solution(solutionArn = solution_arn)['solution']
print('Solution status: ' + solution_description['status'])
```