本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
CreateSolution
创建用于训练模型的配置。经过训练的模型称为解决方案。创建配置后,您可以通过调用CreateSolutionVersion操作来训练模型(创建解决方案)。每次致电时CreateSolutionVersion
,都会创建一个新版本的解决方案。
创建解决方案版本后,您可以通过调用来检查其准确性GetSolutionMetrics。如果您对版本感到满意,则使用进行部署CreateCampaign。该活动通过 GetRecommendationsAPI向客户提供建议。
要训练模型,Amazon Personalize 需要训练数据和配方。训练数据来自您在请求中提供的数据集组。配方指定了训练算法和特征转换。您可以指定 Amazon Personalize 提供的预定义食谱之一。或者,您可以指定performAutoML
,Amazon Personalize 将分析您的数据并为您选择最佳的 USER_PERSONALIZATION 配方。
Amazon Personalize 目前不支持配置解决方案超参数优化。hpoObjective
状态
解决方案可以处于以下某种状态:
-
CREATE PENDING > CREATE IN_PROGRESS > ACTIVE - 或 - CREATE FAILED
-
DELETE PENDING > DELETE IN_PROGRESS
要了解解决方案的状态,请致电DescribeSolution。等到状态显示为 ACTIVE 后再拨打电话CreateSolutionVersion
。
请求语法
{
"datasetGroupArn": "string
",
"eventType": "string
",
"name": "string
",
"performAutoML": boolean
,
"performHPO": boolean
,
"recipeArn": "string
",
"solutionConfig": {
"algorithmHyperParameters": {
"string
" : "string
"
},
"autoMLConfig": {
"metricName": "string
",
"recipeList": [ "string
" ]
},
"eventValueThreshold": "string
",
"featureTransformationParameters": {
"string
" : "string
"
},
"hpoConfig": {
"algorithmHyperParameterRanges": {
"categoricalHyperParameterRanges": [
{
"name": "string
",
"values": [ "string
" ]
}
],
"continuousHyperParameterRanges": [
{
"maxValue": number
,
"minValue": number
,
"name": "string
"
}
],
"integerHyperParameterRanges": [
{
"maxValue": number
,
"minValue": number
,
"name": "string
"
}
]
},
"hpoObjective": {
"metricName": "string
",
"metricRegex": "string
",
"type": "string
"
},
"hpoResourceConfig": {
"maxNumberOfTrainingJobs": "string
",
"maxParallelTrainingJobs": "string
"
}
},
"optimizationObjective": {
"itemAttribute": "string
",
"objectiveSensitivity": "string
"
}
},
"tags": [
{
"tagKey": "string
",
"tagValue": "string
"
}
]
}
请求参数
请求接受采用 JSON 格式的以下数据。
- datasetGroupArn
-
提供训练数据的数据集组的 Amazon 资源名称(ARN)。
类型:字符串
长度限制:最大长度为 256。
模式:
arn:([a-z\d-]+):personalize:.*:.*:.+
必需:是
- eventType
-
当您有多个事件类型(使用
EVENT_TYPE
架构字段)时,此参数将指定使用哪种事件类型(例如,“单击” 或 “点赞”)来训练模型。如果您没有提供
eventType
,Amazon Personalize 将使用所有交互进行同等权重的训练,而不考虑类型。类型:字符串
长度限制:最大长度为 256。
必需:否
- name
-
解决方案的名称。
类型:字符串
长度限制:最小长度为 1。最大长度为 63。
模式:
^[a-zA-Z0-9][a-zA-Z0-9\-_]*
必需:是
- performAutoML
-
是否执行自动机器学习 (AutoML)。默认为
false
。在这种情况下,必须指定recipeArn
。设置为后
true
,Amazon Personalize 会分析您的训练数据并选择最佳的 USER_PERSONALIZATION 配方和超参数。在这种情况下,必须省略recipeArn
。Amazon Personalize 通过使用不同的超参数值运行测试来确定最佳配方。与选择特定食谱相比,AutoML 延长了训练过程。类型:布尔值
必需:否
- performHPO
-
是否对指定食谱或所选食谱执行超参数优化(HPO)。默认为
false
。执行 AutoML 时,此参数始终为
true
,不应将其设置为false
。类型:布尔值
必需:否
- recipeArn
-
用于模型训练的食谱的 ARN。仅在为 fals
performAutoML
e 时指定。类型:字符串
长度限制:最大长度为 256。
模式:
arn:([a-z\d-]+):personalize:.*:.*:.+
必需:否
- solutionConfig
-
与解决方案一起使用的配置。设置
performAutoML
为 true 时,Amazon Personalize 仅评估解决方案配置的autoMLConfig
部分。注意 Amazon Personaliz
hpoObjective
e 目前不支持配置。类型:SolutionConfig 对象
必需:否
- tags
-
要应用于解决方案的标签列表。
类型:Tag 对象数组
数组成员:最少 0 项。最多 200 项。
必需:否
响应语法
{
"solutionArn": "string"
}
响应元素
如果此操作成功,则该服务将会发送回 HTTP 200 响应。
服务以 JSON 格式返回的以下数据。
- solutionArn
-
解决方案的 ARN。
类型:字符串
长度限制:最大长度为 256。
模式:
arn:([a-z\d-]+):personalize:.*:.*:.+
错误
- InvalidInputException
-
为字段或参数提供有效值。
HTTP 状态代码:400
- LimitExceededException
-
已超过每秒请求。
HTTP 状态代码:400
- ResourceAlreadyExistsException
-
指定的资源已经存在。
HTTP 状态代码:400
- ResourceInUseException
-
指定的资源正在使用中。
HTTP 状态代码:400
- ResourceNotFoundException
-
找不到指定的资源。
HTTP 状态代码:400
- TooManyTagsException
-
您已超过您可以应用到此资源的最大标签数量。
HTTP 状态代码:400
另请参阅
有关在特定语言的 Amazon 软件开发工具包中使用此 API 的更多信息,请参阅以下内容: