前言
早些年间读专业领域的书,通常会跳过序和前言。回想起来,其实这两部分的内容也是相当重要的,读懂了这两部分才会更加清楚的认识到这本书到底是干啥的,值不值得继续读下去,这个领域到底是在做一件什么事儿。就像是论文的摘要一样,看完了摘要自己心里应该就有个底了。清楚了这些之后,学习起来才会更加明确。要不然等看完了各种零件之后,还是两眼一抹黑,迷茫的回想着,我是谁?我在做什么?
一、为什么要推荐?
简单来说,就是让不喜欢的人爱上,让爱上的人更爱。
对于公司、企业、商户来说
- 更好的推荐意味了更丰厚的收益。
- 带来更好的用户粘性。
- 获得更多的流量,在这个流量时代,更多的流量就更可以“为所欲为”。
而对于消费者来说,主要有两种类型。
- 有明确的目的性:今天我来就是要买到啤酒,如果这时候能够快速得到我想要的种类,那我就会满意得付钱,下次还会再来。更好的推荐意味着更高效的选择。
- 没有明确的目的性:啊,今天我来买点什么好呢?哦,这有啤酒,旁边还有尿布,这个商店不错。更好的推荐可以拓展思维和想法。
二、为什么是深度学习?
传统的机器学习方法不香吗,运行更快,实现简单、稳定性和效果都还不错。
古老的机器学习的劣势就不说了,简单来说,就是时代已来,条件允许,大势所趋。
深度学习的优势
- 深度学习框架模块化程度高,只需要几步简单的组装就可以召唤神龙。
- 运算能力标准化、自动化,不需要复杂的推导,实现优化器,初步解放了双手。其实和第一点差不多,现在是有非常多现成的工具。
- 专注在模型设计和领域理解。站在这么多巨人的肩膀上干活,可以更专注的做更有意义的事情。同时脱离局限,扩展视野。岂不美哉?
深度学习在图像、语音、自然语言处理中大放异彩了的同时,也深深影响了推荐系统的发展。其实这些领域都有非常相通的地方,很多的特征都可以应用在推荐系统模型构建上。
而这些优势带来的是什么,更多的创新,更深的思考,更广的视野。
三、怎么设计好的模型?
推荐序中阿里的大佬讲设计模式很有道理。
这里有个非常关键点就是,问题驱动。
由于推荐面对的场景千变万化,面对的领域可能会有很多,盲目的使用深度学习并非 “银弹”。真正要明确自己要解决什么场景的什么问题,对技术有什么需求,再去寻找构思对应使用的方法技术,才是解决推荐问题的有效途径。
现在被广泛使用的DIN,DIEN,ESMM也基本都是根据这种设计模式设计出来的产物,这样的成果更能的被大家所接受,因为这是真的在解决实际问题,并且是非常有效的方法。当然,就算是这样也不是说这些工业界方法就是万能的方法,场景不同,目的不同,效果也会差距很大。
在此不得不感叹,作者和推荐人真的是挺厉害的。
四、瓶颈在哪儿?
当模型的效果提升到了一定高度,难免会遇到一定的瓶颈,那具体这个瓶颈是什么呢?大致会有这三个点吧。
- 简单的使用开发好的工具设计受益会越来越低。
- 现有的大量数据,并不足以学到更深层次的特征。
- 工程架构更不上了算法的迭代更新了。
现在的我还没有完全接触到的以上的这些瓶颈,但是仔细一品,这几个确实是会存在一些问题的,没遇到不代表不存在。现在要做好的就是的,快速推进,争取尽快赶到瓶颈。
五、未来在哪儿?
又有一个我很赞同的点 “算法和系统架构协同设计”
算法部分并不是一个独立存在的模块,对工程的依赖会非常的大。在大多数的情况下都是算法和工程协同作战,才能发挥出更好的效果,这点深有体会,不了解工程结构算法改进有可能就是瞎忙活。
对于进一步发展来说,算法的不断的革新也是架构的升级密不可分的。算法工程一体化可能会是未来的趋势。
六、总结
最后做个总结就是
当深度学习的浪潮滚滚而来的时候,应该早已准备好,去迎接这一挑战和机遇。
- 领域场景理解,明确问题,抓住问题,解决问题。
- 由简单到复杂,不断迭代更新。
- 总结过去,扎实基础,展望未来。
- 不断强化自我,算法工程一把抓。
- 数据驱动,有效利用数据
可能这是我对这本书的粗浅认识吧。
Keywords
以下词句,记录下来,后续会进一步领悟。
DIN, DIEN,MIMN,ESMM,网络量化压缩,蒸馏,双塔user侧和doc侧特征没法交叉