推荐系统有哪些坑?
Posted 黄含驰的机器学习与优化打怪路
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了推荐系统有哪些坑?相关的知识,希望对你有一定的参考价值。
原问题:https://www.zhihu.com/question/28247353、https://www.zhihu.com/question/32218407
吴海波老师的回答精华总结:
处理相似性计算的方法很多是凭经验,会出现各种magic number的参数。
svd/svd++比赛多用公司少用;
“推荐的召回策略多优于少,但系统的计算rt是个问题,没有好的系统架构,也没有什么优化空间;”
“i2i等类似计算算法,实际业务中容易跑挂,比如用spark就容易oom,很容易发生倾斜,处理起来又有很多trick和dirty job”;
“非常多的业务没有办法向头条/facebook之类的有稳定的用户留存指标,而留存是推荐系统非常重要目标,因此需要找各种折中的指标去知道abtest”;
训练样本穿越/泄露问题:在训练的特征中包含了测试集的样本的信息;
“大部分推荐系统的训练数据需要在离线条件下去拼接,其中用户的行为状态和时间有关,拼接非常容易出问题,因为系统当时的状态会有各种状况(延时、数据不一致)等,导致训练和实际在线的数据不一致,建议把训练需要的日志在实际请求中直接拼接好打印落盘”。
清华阿罗老师的回答精华总结:
1.学习率不宜过小,mini_batch_size不宜过大
2.广告预估ctr最高的结果不一定会被用户看到
3.喜欢新闻的人不一定对类似的广告也感兴趣
4.cvr模型预估的数据延迟上报问题
周开拓老师的回答精华总结:
1.数据不够
2.很多的人工规则干预
3.判断两个商品是不是同一个商品
4.平台上数据的清洗和规整化
面包君老师的回答精华总结:
1.必须并行提高你的模型和特征集合,某个时间只做其中一个可能会导致错误的结论
2.学会处理界面展现层的偏差
3.算法和展现层(UI界面)的联系有待探讨
4.很多公司正在投入以发现离线和在线的结果的相关性,这还是一个未解决的问题,需要更多研究。
樱桃小财主老师的回答精华总结:
往往效果好的,推荐的东西比较low,模型没有社会主义价值观;
“突然收到告警,数据大幅度下降,我大吃一惊,难道线上出了问题?仔细排查,原来刚发了新版本app,业务入口变了。做推荐,一个小小的ui改动,影响就比模型大的多。”
到了某个程度,你很难用各种模型提高数据了。你的kpi怎么办?
阿里巴巴淘系技术、DOTA老师的回答精华总结:
1.数据错误
2.离线在线不一致,eg: 延时、输入的特征、数据发布
3.推荐系统太难了。难到工程师和产品都还没清楚自己要的是什么。“推荐”这个问题本身都不是well-defined的
4.可以锦上添花,不能雪中送炭
“一个产品,没有多少用户,靠输血勉强维持体面,想几倍增长,单纯靠推荐算法真的是无能为力,一个不愚蠢的推荐系统和一个优质的推荐系统之间的差距已经没有几倍增长的可能了。”
5.工程里的一些坑
Slade Sal老师的回答精华总结:
入职前幻想的是:利用在知乎上接触到的的各种协同推荐,知识图谱,矩阵分解,YoutubeNet等等方法,随便提高2-3pp的效果
入职后的现实是:公司八百年前就做完了,等着你的是自己找最新论文自己找没有开源代码的方法的深坑
kung老师的回答精华总结:
1、高估算法作用
推荐系统中,按照影响效果:用户交互界面(UI) > 数据 > 算法。
2、评测时主观臆断
3、忽略算法生命周期,算法需不断迭代!
想飞的石头老师的回答精华总结:
1,数据量太大,机器处理不了
2,leader期望太高
3,数据质量太差
4,冷启动问题
5,热销比个性化在gmv上表现更好
来自推荐系统从业人员姚凯飞先生的live分享:
得嘞您内老师的回答精华总结:
2、很多推荐系统一点也不高大上
”很多中小公司的业务还处在刚起步阶段,手头没有充足的高质量数据,往往极度依赖领域专家的规则。很多同学就泄气了,觉得自己就是个写规则的,很low。这时候别气馁,一定要清醒的认识到,这个阶段最重要的是配合产品、领域专家,想办法让产品活下去,发展起来,争取早日进入技术变现阶段。
换个角度看,我们也要多问自己,为什么模型还干不过规则?是对问题理解不到位还是对模型理解不深入?“
王喆老师的回答精华总结:
最难填的坑还是跟业务有关的坑。我觉得任何跟技术有关的坑都不是不可抵抗力。各种业务老大提出各种规则要求,这一来二去,你的模型还是那个模型吗?数据的pattern还是那样的pattern吗?你的优化目标效果还是原来测出来的效果吗?你的模型好不容易提升了2%的效果,让人家加点rules之后,还有2%没有?
蒋超老师的回答精华总结:
数据工程上:
日志去重问题,日志中正例丢失分析和处理的问题,作弊流量清洗的问题,样本迁移学习的问题等等。
特征工程:
用户行为特征如何结构化。session内用户行为特征如何设计。长尾item CTR预估偏高,如何设计特征进行打压的问题。高阶特征如何自动挖掘的问题
夏唬人老师的回答精华总结:
没有科学的结构化数据
配合面包君老师的回答:
因为业务本身就没有怎么开展,所以没有数据,稀疏的样本数据找不到大量的正负样本导致没办法去训练模型;
业务开展了,技术方面埋点没做,或者埋点弄错了,导致统计的数据不对或者统计不到数据;
有了一点数据,格式什么的又没有结构化,还要很坑的去解析成结构化的数据;
数据解析好了,套模型去训练,又因为很多特征选的不对,导致最终跑出来的AUC很低;
因为在训练数据时,数据量选择不恰当,太吃内存导致一天模型都没跑出来;
因为机器学习平台挂了或者升级,导致之前的模型bug;
因为每个人的口径不同,写的文档不完整,把数据口径弄错;
法海老师的回答:
推荐系统在很大情况下,在寻求平衡和最优解。
产品或用户冷启动时(推荐系统:我太难了)
数据分布偏差时(推荐系统:我太难了)
候选池动态编排序(推荐系统:我太难了)
因子库召回聚合数据(推荐系统:我太难了)
老板说:为啥数据不是我想看的样子?为啥一堆相同类型?为啥看不到某条数据?为啥这顺序不对?为啥。。。
以上是关于推荐系统有哪些坑?的主要内容,如果未能解决你的问题,请参考以下文章