推荐系统三十六式
刑无刀
“贝壳找房”资深算法专家,8 年推荐系统工程师
43607 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 40 讲
开篇词 (1讲)
原理篇 · 深度学习 (2讲)
原理篇 · 其他应用算法 (3讲)
推荐系统三十六式
15
15
1.0x
00:00/00:00
登录|注册

33 | 和推荐系统有关的开源工具及框架介绍

选择开源项目的好处
推荐系统算法的开发语言
深度学习基于TensorFlow
Bandit算法
梯度提升树模型
线性模型
开源工具
低维稠密向量近邻搜索
ALS矩阵分解
SVD矩阵分解
KNN相似度计算
开源工具
文本分类
词嵌入
主题模型
时间是第一要义
开源轮子的优势
中小企业和刚起步的推荐系统
总结
完整推荐系统
其他工具
模型融合
协同过滤和矩阵分解
内容分析
为什么不重复造轮子
和推荐系统有关的开源工具及框架介绍

该思维导图由 AI 生成,仅供参考

我们懂得了原理,知道了实际推荐系统需要考虑哪些元素之后。正当你摩拳擦掌之际,如果发现要先从挖地基开始,你整个人可能是崩溃的。

轮子不要重复造

但是事实上你没必要这样做也不应该这样做。大厂研发力量雄厚,业务场景复杂,数据量大,自己从挖地基开始研发自己的推荐系统则是非常常见的,然而中小厂职工们则要避免重复造轮子。这是因为下面的原因。
中小企业,或者刚刚起步的推荐系统,要达成的效果往往是基准线,通用的和开源的已经能够满足;
开源的轮子有社区贡献,经过若干年的检验后,大概率上已经好于你自己从零开始写一个同样功能的轮子;
对于没有那么多研发力量的厂来说,时间还是第一位的,先做出来,这是第一要义。
既然要避免重复造轮子,就要知道有哪些轮子。
有别于介绍一个笼统而大全的“推荐系统”轮子,我更倾向于把粒度和焦点再缩小一下,介于最底层的编程语言 API 和大而全的”推荐系统”之间,本文按照本专栏的目录给你梳理一遍各个模块可以用到的开源工具。
这里顺带提一下,选择开源项目时要优先选择自己熟悉的编程语言、还要选有大公司背书的,毕竟基础技术过硬且容易形成社区、除此之外要考虑在实际项目中成功实施过的公司、最后还要有活跃的社区氛围。

内容分析

基于内容的推荐,主要工作集中在处理文本,或者把数据视为文本去处理。文本分析相关的工作就是将非结构化的文本转换为结构化。主要的工作就是三类。
主题模型;
词嵌入;
文本分类。
可以做这三类工作的开源工具有下面的几种。
由于通常我们遇到的数据量还没有那么大,并且分布式维护本身需要专业的人和精力,所以请慎重选择分布式的,将单机发挥到极致后,遇到瓶颈再考虑分布式。
这其中 FastText 的词嵌入和 Word2vec 的词嵌入是一样的,但 FastText 还提供分类功能,这个分类非常有优势,效果几乎等同于 CNN,但效率却和线性模型一样,在实际项目中久经考验。LightLDA 和 DMWE 都是微软开源的机器学习工具包。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文介绍了与推荐系统相关的开源工具及框架。作者指出,对于中小企业或刚刚起步的推荐系统来说,避免重复造轮子是非常重要的。因此,选择开源项目时应优先考虑自己熟悉的编程语言,并选择有大公司背书、在实际项目中成功实施过的项目以及有活跃的社区氛围的项目。文章从内容分析、协同过滤和矩阵分解、模型融合、其他工具以及完整推荐系统等方面介绍了各种开源工具和项目。作者建议选择各个模块的开源项目,再将其组合集成为自己的推荐系统,以降低学习成本、提高性能和效果的保证。总的来说,本文以Python和C++为主要开发语言,介绍了多种开源工具和项目,为读者提供了丰富的选择范围和实践建议。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《推荐系统三十六式》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(13)

  • 最新
  • 精选
  • 华仔
    Spark MLlib和Mahout这两个好像是全家桶,大神如何评价?

    作者回复: 工具当然要用专精的。

    2018-07-11
    2
  • 贾贵源
    很棒,已分享。会有更多的同事想订阅

    作者回复: 谢谢!

    2018-09-08
  • slvher
    总结很赞! topic model 可选的还有 Baidu Familia embedding 可选的还有 FAIR starspace
    2018-05-24
    17
  • 云学
    非常实用,谢谢
    2018-05-19
    3
  • 爱看球的领带
    老师好,ElasticSearch作存储和计算,推荐一下怎么学习吧,感谢
    2018-08-03
    1
    2
  • 芭蕾小丑
    如果是电商的推荐系统,能不能把以上几个模块帮忙组合一下,给个可行的方向吧?
    2018-06-23
    2
  • BreezeSzp
    不错,很实用!
    2018-05-18
    2
  • 风的轨迹
    真是盼星星盼月亮,这篇文章真是解决了初学者如何能够对核心算法有一个快速的感性认识的问题,感谢陈老师
    2018-05-30
    1
  • 拉羒尔
    貌似没有提到推荐系统工程方面的开源项目呀,这方面有推荐吗?
    2021-04-29
  • 晨晓
    谢谢分享,收藏去参考下
    2020-03-29
收起评论
显示
设置
留言
13
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部