【问题标题】:Azure Machine Learning - Recommender web serviceAzure 机器学习 - 推荐程序 Web 服务
【发布时间】:2016-04-20 18:57:40
【问题描述】:

我们正在尝试为我们的系统创建一个“下一步”推荐器:给定一个用户和一个上下文,我们想要一个可以就用户可能想要采取的下一步措施提供建议的模型。 em>

火柴盒推荐器采用评级、用户和项目。在我们的例子中,下一步是项目,用户及其上下文的组合是用户,使用数据是评分.

“评分”:

用户 ID ScreenID 评级 1 屏幕A 50 1 屏幕B 35 3 屏幕A 55 3 屏幕B 60 3 屏幕C 10 5 屏幕A 50 5 屏幕B 35 5 屏幕D 10

“用户”:

UserID EmployeeID Role ContextCategory ContextTask 1 078570 代表 C 分配/重新分配 3 076545 代表A分配/重新分配 5 076545 代表 G 分配/重新分配

我已经训练了一个模型,创建了一个预测实验,并发布了网络服务。我不得不更改网络服务输入以询问用户及其上下文(本质上是用户特征)的组合,并希望网络服务根据其他类似的“用户”给我建议:

但是,当我测试网络服务时,它只返回所有受过培训的用户及其建议的列表,而不是针对我在输入中指定的新用户/冷用户的建议。

结果:{"Results":{"output1":{"type":"table","value":{"ColumnNames":["User","Item 1","Item 2","Item 3"],"ColumnTypes":["String","String","String","String"],"Values":[["1","ScreenA","ScreenB","ScreenC"],[ "3","ScreenA","ScreenB","ScreenC"],["5","ScreenA","ScreenB","ScreenC"]]}}}}

有很多关于为 Matchbox Recommender 创建训练模型的文档/示例,但其中大多数都将一个项目作为输入,并将推荐的项目作为输出。我找不到任何将用户作为输入并将其转化为有用的网络服务的示例。

【问题讨论】:

    标签: azure machine-learning


    【解决方案1】:

    这是冷启动问题。要允许没有评分的用户,您需要训练具有用户特征的推荐器 - https://msdn.microsoft.com/en-us/library/azure/dn905846.aspx

    这是一个为冷启动案例传递用户和项目特征的示例 - https://gallery.cortanaintelligence.com/Experiment/Recommender-Restaurant-ratings-2

    这是上述案例的预测实验,展示了如何在这种情况下为 Web 服务设置实验 - https://gallery.cortanaintelligence.com/Experiment/Recommender-Restaurant-ratings-Predictive-Exp-2

    【讨论】:

    • 感谢您的链接,neerajkh!我的问题的根源是我需要两个 Web 服务输入 - 来代替 user-item-rating 和 user-context。
    猜你喜欢
    • 1970-01-01
    • 2018-05-17
    • 1970-01-01
    • 1970-01-01
    • 2016-11-03
    • 1970-01-01
    • 2021-12-23
    • 2012-03-17
    • 1970-01-01
    相关资源
    最近更新 更多