问题标签 [amazon-personalize]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 如何确定 Amazon Personalize 是否正在自动更新最新的解决方案版本
我正在使用 AWS Personalize 构建推荐系统。我已经导入了所需的数据集及其相应的架构,并使用用户个性化配方创建了一个解决方案和一个解决方案版本。从文档中,他们提到
借助用户个性化,Amazon Personalize 每两小时在后台自动更新最新模型(解决方案版本)以包含新数据,而无需创建新的解决方案版本。每次更新时,Amazon Personalize 都会使用最新的商品信息更新解决方案版本,并根据用户的隐式反馈调整探索。这使 Amazon Personalize 可以根据已探索项目的新交互来衡量项目质量,并不断更新项目探索。
Amazon Personalize 仅自动更新在 trainingMode 设置为 FULL 的情况下训练的最新解决方案版本,并且仅当您提供自上次自动更新以来的新项目或交互数据时。如果您训练了新的解决方案版本,Amazon Personalize 不会自动更新您在活动中部署的旧解决方案版本。如果您删除了数据集,也不会发生更新。
我创建了一个解决方案版本,其中trainingMode设置为 FULL。目前,我正在为新的用户、项目和交互数据集使用批量导入,并为所有三个数据集创建了一个新的导入作业。当我使用 Python SDK 2 小时后检查解决方案版本状态和描述时,并没有显示解决方案版本已更新。这是我运行时的代码输出personalize.list_solution_versions(solutionArn)
我的问题是,在我导入新的用户、项目、交互数据集后,我如何知道 AWS Personalize 何时开始更新我的解决方案版本?谢谢
amazon-web-services - AWS Personalize:如何处理没有足够交互数据的庞大目录
我正在将 Amazon Personalize 的产品推荐功能添加到电子商务网站。我们目前拥有庞大的产品目录,其中包含数百万种商品。我们希望能够在我们的商品详情页面上使用 Amazon Personalize 向当前商品推荐其他相关商品。
现在您可能已经知道,Amazon Personalize 严重依赖用户交互来提供推荐。然而,由于我们才刚刚开始我们的新业务,我们并没有获得足够的交互数据。我们目录中的大多数项目根本没有交互。一些项目(数千个)虽然会进行很多交互,但会对推荐结果产生巨大影响。因此,即使它们与当前项目根本不相关,您也会看到这几个项目总是被推荐,从而产生了非常奇怪的推荐。
我认为这就是我们通常所说的“冷启动”情况——除了通常的冷启动问题与项目“冷启动”或用户“冷启动”有关,但我现在面临的问题是新业务“冷启动”——我们没有基本的交互数据量来支持完全个性化的推荐。由于没有每个项目的交互数据,我们希望 Amazon Personalize 服务依赖项目元数据来提供推荐。因此,理想情况下,我们希望服务基于项目元数据进行推荐,一旦获得更多交互,就基于项目元数据+交互进行推荐。
到目前为止,我已经做了很多研究,只是为了找到一个解决方案——在创建活动时增加 exploreWeight。正如本文所指出的,explorationWeight 的较高值表示较高的探索;展示次数少的新商品更有可能被推荐。但这似乎对我没有用。它稍微改善了这种情况,但我仍然经常看到由于更高的集成率而被推荐的奇怪结果。
我不确定是否有其他解决方案可以解决我的问题。当我有一个庞大的目录而没有足够的交互数据时,如何改进推荐结果?
如果有人有任何建议,我将不胜感激。谢谢你,有一个美好的一天!
amazon-personalize - InvalidInputException:AWS Personalize 在用户或项目元数据中导入布尔字段时出错
我正在使用 AWS Personalize 构建推荐系统。用户个性化配方有 3 个数据集输入:交互、user_metadata 和 item_metadata。我无法导入包含boolean
字段的用户元数据。我创建了以下架构:
数据集 csv 文件内容如下所示:
我在 s3 存储桶上上传了给定的 csv 文件。当我尝试创建数据集导入作业时,它给了我以下异常:
我测试过,它可以在没有boolean
field的情况下工作is_active
。给定列中没有 NaN 值!
如果能够直接测试您的 pandas 数据框或 csv 文件是否符合给定的架构并可能获得更详细的错误消息,那就太好了。
有人知道如何格式化布尔字段来解决这个问题吗?
amazon-personalize - 如何通过 REST API 公开 AWS Personlize 建议
我想通过 REST API 向客户公开来自 AWS Personalize 的建议。此时我正在考虑 AWS API Gateway > AWS Lambda > AWS Personalise。有没有一种本地方法可以做到这一点或更好的方法来做到这一点?
amazon-web-services - AWS Personalize 的分页 GetRecommendations API
我目前正在尝试创建一个包含无限滚动分页(类似于 Instagram 探索)的推荐页面,但无法找到使用 AWS SDK 开箱即用的方法。
有没有其他方法可以分页方式从 AWS Personalize 获取数据并确保检索到的数据不重复?
amazon-web-services - 无法创建解决方案版本 在训练模式设置为 FULL 的最后一个活动解决方案版本之后,应至少更新一个数据集
我有一个 AWS 个性化解决方案,其中包含 3 个成功的解决方案版本,使用 AWS 控制台和 AWS SDK python 训练了 trainingMode = "FULL"。但是,当我尝试使用 trainingMode="UPDATE" 创建新的解决方案版本时,如下面的代码所示:
我得到了以下异常:
任何遇到这个问题的人,有什么我想念的东西可以用 UPDATE 模式训练吗?
amazon-web-services - Pinpoint 不向 Kinesis 发送事件数据
我想将个性化用于我的应用推荐模型。获取我的当前应用分析数据。如本文档中所述,我已连接 pinpoint 以借助 kinesis firehose 获取数据。
但是当我将 kinesis data firehose 连接到 pinpoint 时。
我的 pinpoint 将数据发送到 kinesis。但是输出与我想要的不同。
运动设置:
和我得到的输出。
有没有其他方法可以解决发送数据以从精确定位到个性化以启动活动。活动开始后,我可以根据文档通过活动发送数据。
amazon-web-services - AWS 个性化事件 REST 接口
有没有办法使用他们的 REST API 而不是 SDK 来“放置事件”?
例如,在他们的文档中,我看到https://docs.aws.amazon.com/personalize/latest/dg/API_UBS_PutEvents.html
但是我已经在各处搜索文档以查找基本 url,但它似乎根本没有列出。
我们的问题是我们需要记录事件以从 iOS 和 Web 进行个性化,虽然似乎有一个 js sdk,但似乎没有用于个性化的 iOS sdk,所以我们希望通过简单的 REST 调用来实现。
或者使用 lambda 函数 + api 网关会更好吗?
amazon-web-services - 有什么方法可以告诉 AWS 个性化某些交互比其他交互更重要?
我想根据一堆不同的交互类型来训练 AWS 个性化,例如“列表视图”、“详细视图”、“保存”、“点击”。某些交互显然比其他交互更重要......例如,如果用户保存他可能真的很喜欢它的项目而不是“列表视图”,他可能只是滚动它并短暂暂停。
AWS 个性化有什么方法可以告诉它某些交互应该比其他交互更重要?