1

我有一个 AWS 个性化解决方案,其中包含 3 个成功的解决方案版本,使用 AWS 控制台和 AWS SDK python 训练了 trainingMode = "FULL"。但是,当我尝试使用 trainingMode="UPDATE" 创建新的解决方案版本时,如下面的代码所示:

import boto3
personalize = boto3.client('personalize')
personalize.create_solution_version(solutionArn = solution_arn, trainingMode = "UPDATE")

我得到了以下异常:

Exception has occurred: InvalidInputException
An error occurred (InvalidInputException) when calling the CreateSolutionVersion operation: There should be updates to at least one dataset after last active solution version with training mode set to FULL.

任何遇到这个问题的人,有什么我想念的东西可以用 UPDATE 模式训练吗?

4

1 回答 1

0

的目的trainingMode="UPDATE"是处理添加到项目数据集的新项目(通过PutItems批量上传)以及自上次FULL/UPDATE培训以来添加到交互中的新交互的展示数据。新项目和印象用于更新使用aws-user-personalization配方创建的解决方案的探索功能。即引入新的/冷项目进行探索,并在进一步探索中调整现有冷项目的概率。请注意,这UPDATE只会引入新项目和展示数据,不会重新训练模型。

FULL因此,如果自上次/以来没有数据集更新,则使用 .UPDATE创建新的解决方案版本没有任何价值UPDATE

最后,请记住,Personalize每两小时免费自动更新使用 aws-user-personalization 配方创建的解决方案版本。这基本上为你做了一个。UPDATE

借助用户个性化,Amazon Personalize 每两小时在后台自动更新最新模型(解决方案版本)以包含新数据,而无需创建新的解决方案版本。每次更新时,Amazon Personalize 都会使用最新的商品信息更新解决方案版本,并根据用户的隐式反馈调整探索。这使 Amazon Personalize 可以根据已探索项目的新交互来衡量项目质量,并不断更新项目探索。

如果您使用 来创建解决方案版本UPDATE,您需要为执行更新的服务器小时数付费。实际上,您唯一需要手动创建解决方案版本的UPDATE时候是您不想等待下一次自动更新。

于 2021-09-24T00:07:52.803 回答