多目标建模方案——让推荐引擎告别标题党

2019 年 9 月 18 日 凡人机器学习


机器学习被广泛的应用于推荐、风控等场景。经典的机器学习建模数据是由特征列和单一目标列构成的,比如要做广告的CTR预测,其实模型关心的是一个广告曝光后是否会被点击,这是一个单一目标场景的建模过程。但是在实际应用场景中,往往有时候会出现“既要也要”的情况,比如推荐一个视频给客户,推荐引擎不光希望客户可以点击这个视频,更希望客户可以长时间光看,这就成了一个多目标建模的情况。

 

单目标建模在很多情况下是有局限的,以新闻推荐为例,如果只通过新闻是否点击来评估模型好坏,那么推送一些吸引眼球的没有内涵的新闻往往可以提升点击,比如推送《八旬老汉偷窥儿媳妇洗澡》,但是这种推荐是没有灵魂的。多目标推荐会更好的帮助模型去理解用户。比如在美拍视频中,需要考虑点击率、播放、关注、时长等四个因素。

 

那么多目标推荐要怎么做呢?目前在中文网站上很难找到相关文献,于是我去到国外的网站看了下Multi-label Classification相关的介绍,大体可以通过以下方法去做实现多目标建模。为了更好地说明,这里模拟一份数据:

用户

特征1

特征2

特征3

目标1

目标2

A

32

523

234

0

1

B

124

463

46

1

0

C

42

352

64

1

1

 

方法一:将多目标问题转化成单目标问题


以上面的问题为例,假设目标1和目标2的正例都是“1”,则转化成单目标建模逻辑的时候可以把目标1和目标2都是“1”的情况标为“1”,其它情况标为“0”。案例数据变为下面的形式:

用户

特征1

特征2

特征3

目标

A

32

523

234

0

B

124

463

46

0

C

42

352

64

1

这种方法比较暴力并且好实现,但是问题就是减少了很多数据间的信息。

 

方法二:将多目标问题转化成多分类问题


转化成多分类问题的好处是可以保留所有的信息,给业务系统更多选择。比如一个系统有两个推荐评估目标分别是点击和时长,但是某用户没有匹配到点击和时长都不错的内容。这时候转换成多分类问题的好处就体现出来了,在没有两个目标都符合的方案情况下,可以从其它符合的类别中选择一个推送给客户。

 

转化成多分类问题后,样例数据变为下面的形式:

用户

特征1

特征2

特征3

目标

A

32

523

234

0

B

124

463

46

1

C

42

352

64

2

  • 目标值为0对应原始目标1=“0”,目标2=“1”

  • 目标值为1对应原始目标1=“1”,目标2=“0”

  • 目标值2对应原始目标1=“1”,目标2=“1”

 

方法三:将多目标问题转化成多组模型的形式


多组模型的模式是最精确地模式,但是也是计算量最大的模式。比如样例数据有两个评估指标,可以分别对两个评估指标进行建模。

 

训练数据1:

用户

特征1

特征2

特征3

目标1

A

32

523

234

0

B

124

463

46

1

C

42

352

64

1

训练数据2:

用户

特征1

特征2

特征3

目标2

A

32

523

234

1

B

124

463

46

0

C

42

352

64

1

 

这样的话会分别针对目标1和目标2生成两个分类模型。实际预测的时候,每个样本需要调用两次模型分别拿到对应两个目标的分类结果,假如样本1对应的两份结果分别是“0.65”和”0.21”,把这两个结果组合起来就是最终的预测结果,是向量[0.65,0.21]。以此类推,计算所有样本的预测向量,再通过向量具体判断用户的意向。

 

 

总结


随着推荐系统的普及,多目标建模一定会变成业内普遍的需求,希望这篇文章可以给有需要的同学更多地帮助。

 

 

参考:https://en.wikipedia.org/wiki/Multi-label_classification

 

 

登录查看更多
0

相关内容

推荐引擎,是主动发现用户当前或潜在需求的定律,并主动推送信息给用户的信息网络。挖掘用户的喜好和需求,主动向用户推荐其感兴趣或者需要的对象。
【SIGIR 2020】 基于协同注意力机制的知识增强推荐模型
专知会员服务
88+阅读 · 2020年7月23日
【WWW2020-微软】理解用户行为用于文档推荐
专知会员服务
34+阅读 · 2020年4月5日
【WWW2020-UIUC】为新闻故事生成具有代表性的标题
专知会员服务
26+阅读 · 2020年3月18日
专知会员服务
85+阅读 · 2020年1月20日
推荐系统(一):推荐系统基础
菜鸟的机器学习
25+阅读 · 2019年9月2日
【实战分享】电影推荐系统项目实战应用
七月在线实验室
34+阅读 · 2019年3月7日
一文简单理解“推荐系统”原理及架构
51CTO博客
8+阅读 · 2018年10月31日
今日头条推荐算法详解(PDF下载)
机器学习算法与Python学习
17+阅读 · 2018年2月27日
今日头条推荐算法原理全文详解
架构文摘
7+阅读 · 2018年1月30日
推荐|今日头条公布其算法原理(全)
全球人工智能
7+阅读 · 2018年1月16日
【推荐系统】详解基于内容的推荐算法
产业智能官
23+阅读 · 2018年1月11日
一个框架解决几乎所有机器学习问题
北京思腾合力科技有限公司
5+阅读 · 2017年10月13日
基于LDA的主题模型实践(一)
机器学习深度学习实战原创交流
20+阅读 · 2015年9月9日
Arxiv
21+阅读 · 2019年8月21日
Learning Discriminative Model Prediction for Tracking
VIP会员
相关资讯
推荐系统(一):推荐系统基础
菜鸟的机器学习
25+阅读 · 2019年9月2日
【实战分享】电影推荐系统项目实战应用
七月在线实验室
34+阅读 · 2019年3月7日
一文简单理解“推荐系统”原理及架构
51CTO博客
8+阅读 · 2018年10月31日
今日头条推荐算法详解(PDF下载)
机器学习算法与Python学习
17+阅读 · 2018年2月27日
今日头条推荐算法原理全文详解
架构文摘
7+阅读 · 2018年1月30日
推荐|今日头条公布其算法原理(全)
全球人工智能
7+阅读 · 2018年1月16日
【推荐系统】详解基于内容的推荐算法
产业智能官
23+阅读 · 2018年1月11日
一个框架解决几乎所有机器学习问题
北京思腾合力科技有限公司
5+阅读 · 2017年10月13日
基于LDA的主题模型实践(一)
机器学习深度学习实战原创交流
20+阅读 · 2015年9月9日
Top
微信扫码咨询专知VIP会员