推荐系统

转正牛皮

瘦欲@ 提交于 2019-11-28 19:44:30
本人于2019年7月11入职于公司测试部,任职测试工程师,在这近两个月的工作中,熟悉并遵守公司的规章制度,熟悉了公司的产品,受益匪浅。我的工作职责主要是负责公司产品功能测试,自动化测试,性能测试等分配的测试任务。参与了云息迭代测试,玩赚答题王测试,云闪测试,公益中国测试,推荐系统测试并提供推荐结果报告,补全testcase并完善迭代内容的testcase 在未来的工作中,我希望能不断的锻炼自己的工作能力,提升自己的专业知识储备,也希望自己更好的融入团队,配合同事同事工作。 团队成员都很热情,很快的帮助我了解了公司的产品,了解了工作内容,在遇到问题时,与开发和产品沟通的都很顺畅。 在计算推荐系统线上结果时出现了问题,领导的指导起到了重要的作用,重新规划了计算公式得到正确结果。 在工作完成有瑕疵的时候,领导指出问题,并给予机会改正。 公司的企业文化,对员工的重视,对规范化管理的重视,让我看到了公司无比巨大的发展潜力,这样的工作环境使我以最快的速度适应这份工作,并且很努力的把工作做好。能够加入这个团队,是我莫大的荣幸。 来源: https://www.cnblogs.com/SealLiu/p/11423766.html

#研发解决方案介绍#Recsys-Evaluate(推荐评测)

℡╲_俬逩灬. 提交于 2019-11-28 19:38:54
关键词: recsys 、推荐评测、Evaluation of Recommender System、piwik、flume、kafka、storm、redis、mysql 本文档适用人员:研发 推荐系统可不仅仅是围着推荐算法打转 先明确一下,我们属于工业领域。很多在学术论文里行之有效的新特奇算法,在工业界是行不通的。当年我们做语义聚合时,分词、聚类、相似性计算、实体词识别、情感分析等领域最终还都采用了工业界十几年前乃至于几十年前就流行的成熟算法。如果算法不能决定命运,那什么是关键呢? 算法+规则库+人工干预 (整理语料、标识、调参数等),大都是脏活儿累活儿。 或者叫, 特征+算法+人工干预 ,用 特征缩小数据范围 或降维。 我在2009年曾经 写道 : 在语义的世界里,可以近似地说:万事万物都是特征提取。 你只要找到特征,事情就好办。…… ……你期望毕其功于一役吗?自然语言处理的真实应用里是很难有什么场景找到一个通吃特征的。都是一层一层特征叠加的。 一层特征去掉一部分垃圾数据。如此反复,终成正果。注意方法论。 梁斌 在2012年微博说道: 统计粗且糙,乃大锤。规则细而精,乃小锤。先大场后细棋。 规则库怎么来的? 得建设一些方便观测的外围系统,才能发现特征、建立规则、调整参数、观察效果 。所以与此类似,做了推荐服务后,就需要推荐效果评测了。 推荐评测应用场景

摘抄的关于推荐算法的文章

蹲街弑〆低调 提交于 2019-11-28 17:29:43
最近因为PAC平台自动化的需求,开始探坑推荐系统。这个乍一听去乐趣无穷的课题,对于算法大神们来说是这样的:      而对于刚接触这个领域的我来说,是这样的:      在深坑外围徘徊了一周后,我整理了一些推荐系统的基本概念以及一些有代表性的简单的算法,作为初探总结,也希望能抛砖引玉,给同样想入坑的伙伴们提供一些思路。   ◆ ◆ ◆   什么是推荐系统   1. 什么是推荐系统?   推荐系统是啥?   如果你是个多年电商(剁手)党,你会说是这个:      如果你是名充满文艺细胞的音乐发烧友,你会答这个:      如果你是位活跃在各大社交平台的点赞狂魔,你会答这个:      没错,猜你喜欢、个性歌单、热点微博,这些都是推荐系统的输出内容。从这些我们就可以总结出,推荐系统到底是做什么的。   目的1. 帮助用户找到想要的商品(新闻/音乐/……),发掘长尾   帮用户找到想要的东西,谈何容易。商品茫茫多,甚至是我们自己,也经常点开淘宝,面对眼花缭乱的打折活动不知道要买啥。在经济学中,有一个著名理论叫长尾理论(The Long Tail)。      套用在互联网领域中,指的就是最热的那一小部分资源将得到绝大部分的关注,而剩下的很大一部分资源却鲜少有人问津。这不仅造成了资源利用上的浪费,也让很多口味偏小众的用户无法找到自己感兴趣的内容。   目的2. 降低信息过载  

Use of Deep Learning in Modern Recommendation System: A Summary of Recent Works(笔记)

久未见 提交于 2019-11-28 13:04:54
   注意:论文中,很多的地方出现baseline,可以理解为参照物的意思,但是在论文中,我们还是直接将它称之为基线, 也 就是对照物,参照物. 这片论文中,作者没有去做实际的实验,但是却做了一件很有意义的事,他收罗了近些年所有推荐系统中涉及到深度学习的文章 ,并将这些文章进行分类,逐一分析,然后最后给出了一个推荐系统以后的发展方向的预估. 那么通过这篇论文,我们可以较为 系统的掌握这些年,在推荐系统方面,深度学习都有那些好玩的应用,有哪些新奇的方法,这片论文起到了一个简报的作用,下面是论文的一个粗糙翻译: 概述:   随着互联网上数字信息量的急剧增加,在线商店、在线音乐、视频和图像库、搜索引擎和推荐系统已经成为在短时间内查找 相关信息的最方便的方式。近年来,深度学习在语音识别、图像处理和自然语言处理等领域得到了广泛的关注。同时,最近的一 些研究也显示了深度学习在推荐系统和信息检索领域的应用。近年来,深度学习在语音识别、图像处理和自然语言处理等领域得 到了广泛的关注。同时,最近的一些研究也显示了深度学习在推荐系统和信息检索领域的一些应用。在这个简短的回顾中,我们 涵盖了最近在使用各种不同的深度学习技术在推荐领域取得的进展。我们将综述分为三个部分:协作系统、基于内容的系统和混 合系统。本文还讨论了深度学习集成推荐系统在多个应用领域中的贡献

推荐系统(3)-- FM(Factorization Machine)

强颜欢笑 提交于 2019-11-28 07:28:10
判断一个商品的 是否进行推荐 需要根据 CTR预估的点击率 来进行。 在进行CTR预估时,除了单特征外,往往要对特征进行组合。对于特征组合来说,通用的做法主要有两大类:FM系列与Tree系列。 今天,我们就来讲讲FM算法。 FM(Factorization Machine)主要是为了解决数据稀疏的情况下,特征怎样组合的问题。 country,day,ad_type则是对应的特征。对于这种categorical特征,一般都是进行one-hot编码处理。one-hot编码带来的另一个问题是特征空间变大 来源: https://www.cnblogs.com/pocahontas/p/11399003.html

如何解决推荐系统中的冷启动问题?

不打扰是莪最后的温柔 提交于 2019-11-28 06:01:46
当新用户或新项目进入内容平台时,就会出现冷启动(Cold Start)问题。 以协同过滤这样的经典推荐系统为例,假设每个用户或项目都有评级,这样我们就可以推断出类似用户/项目的评级,即使这些评级没办法调用。但是,对于新进入的用户/项目,实现这一点很困难,因为我们没有相关的浏览、点击或下载等数据,也就没办法使用矩阵分解技术来“填补空白”。 不过,研究人员已经提出了各种方法来解决冷启动问题。在这篇文章中,我们会简单介绍一些解决推荐系统中冷启动问题的方法,至于这些方法在实践工作中是否奏效,尚无定论。 精华版 •基于代表性:使用有代表性的项目和用户子集; •基于内容:使用诸如文本、社交网络等的辅助信息; •老虎机:考虑新项目中的EE问题(Exploration&Exploitation); •深度学习:使用黑盒子。 详细版 基于代表性 如果没有足够的用户和项目信息,我们可以更多地依赖那些能够“代表”项目和用户的用户。这就是基于代表性的方法背后的哲学。 代表性用户的兴趣偏好线性组合能与其他用户的无限接近。例如,基于代表性的矩阵因子分解(RBMF,Representative Based Matrix Factorization),其实是矩阵因子分解方法的扩展,其附加约束条件是m个项应该由k个项的线性组合表示,如下面的目标函数所示: 有了这个附加约束条件,就有了类似于标准MF方法的重建误差

推荐系统实践笔记(八)

北战南征 提交于 2019-11-28 05:50:13
第八章 评分预测问题   一个评分记录为一个三元组(u,i,r)我们用$r{ui}$表示一个用户u给物品i的评分. 8.2 评分评测算法   (1) 平均值   假设有两个分类的函数,一个是用户分类函数$\phi$,一个是物品分类函数$\varphi$.$\phi(u)$定义了用户u所属的类,$varphi(i)$定义了物品i所属的类,评分预测值为:      (2) 基于领域的方法   基于用户的领域算法认为一个用户对一个物品的评分,需要参考和这个用户兴趣相似的用户对该物品的评分.      这里, S(u, K) 是和用户 u 兴趣最相似的 K 个用户的集合,N(i) 是对物品 i 评过分的用户集合.$r_{ui}$是用户v对物品i的评价,$\hat{r_v)}$是用户v所有评分的平均值,用户之间的相似度可以通过皮尔逊系数计算:   (3) 隐语义模型与矩阵分解模型   用户的评分行为可以表示成一个评分矩阵 R,其中 R [ u ][ i ] 就是用户 u 对物品 i 的评分,评分系统在某种意义上是对矩阵中确实的值填空.要寻找的补全方法是一种对矩阵扰动最小的补全方法--既补充之前与之后矩阵的特征值相差不大.   最开始使用SVD(奇异值分解)来解决这个问题,SVD对空间的要求以及其计算所需的高额时间负责度是大型推荐系统所不能接受的.Funk-SVD用了隐模型的方法来改进SVD

推荐算法介绍

白昼怎懂夜的黑 提交于 2019-11-28 05:21:39
参考:今日头条推荐算法原理详解https://lusongsong.com/info/post/9829.html?__SAKURA=1bfda19153216f98a2cd21274262ab30d1566441057_1518905 1.典型推荐算法 2.典型推荐特征 主要有四类特征会对推荐起到比较重要的作用。 第一类是相关性特征,就是评估内容的属性和与用户是否匹配。 显性的匹配包括关键词匹配、分类匹配、来源匹配、主题匹配等。像FM模型中也有一些隐性匹配,从用户向量与内容向量的距离可以得出。 第二类是环境特征,包括地理位置、时间。 这些既是bias特征,也能以此构建一些匹配特征。 第三类是热度特征。 包括全局热度、分类热度,主题热度,以及关键词热度等。内容热度信息在大的推荐系统特别在用户冷启动的时候非常有效。 第四类是协同特征,它可以在部分程度上帮助解决所谓算法越推越窄的问题。 协同特征并非考虑用户已有历史。而是通过用户行为分析不同用户间相似性,比如点击相似、兴趣分类相似、主题相似、兴趣词相似,甚至向量相似,从而扩展模型的探索能力。 3.召回策略 见https://www.cnblogs.com/graybird/p/11393511.html 不同公司业务会设计自己的召回策略 4.数据依赖 5.评估体系 来源: https://www.cnblogs.com/graybird

推荐系统实践(七)

旧街凉风 提交于 2019-11-28 05:13:44
第七章 推荐系统实例 7.1 外围架构      数据收集和存储    需要实时存取的数据存储在数据库和缓存中,而大规模的非实时地存取数据存储在分布式文件系统中(HDFS)中。 7.2 推荐系统架构     用户和物品的联系如下所示:   如果认为用户喜欢的物品也是一种用 户特征,或者和用户兴趣相似的其他用户也是一种用户特征,那么用户就和物品通过特征相联系。基于上述的理解我们可以把推荐系统的核心任务拆分位两个部分1   > 如何给用户生成特征   > 如何根据特征找到物品   推荐系统的需求有很多,可以根据不同的需求设计不同的推荐引擎,通过不同的推荐引擎来满足客户的需求。 7.3 推荐引擎的架构       推荐引擎使用一种或几种用户特征,按照一种推荐策略生成一种类型物品的推荐列表。一个规则引擎的概念图如下所示:      > A部分从缓存中拿到用户的行为数据,通过分析用户的行为获取特征向量   > B部分将特征向量结合特征-物品矩阵生成初始的推荐列表   > C部分对初始的列表进行处理,从而生成最终的推荐结果。    生成用户特征向量    用户的特征一般有两种:一种是注册的时候获取的,另一种是通过用户的行为计算出来的。   计算用户特征向量主要考虑:   > 用户行为的种类 一般的标准是用户付出代价越大的行为权重越大   > 用户行为产生的时间 近期行为权重大   >

推荐系统实践(六)

余生颓废 提交于 2019-11-28 04:55:20
第六章 利用社交网络数据 6.2 社交网络数据简介   用图G(V,E,W)描述社交网络数据,V为顶点集合对应用户集;E为边集,两个用户之间有社交网络关系则就有一条边联系;W为每条边的权重.Facebook对应的社交网络为无向图(关系需要双方的确认),Twitter为有向图(朋友关系是单向的).   三种社交网络数据:   > 双向确认的社交网络数据   > 单向关注的社交网络数据   > 基于社区的社交网络数据( 用户之间没有明确的关系,只是包含了用户属于哪些社区的信息,例如喜欢海贼王的会有一些自己的圈子,都是天南地北的娃) 6.2 基于社交网络的推荐    优点:   > 基于好友的推荐可以增加推荐的信任度   > 社交网络可以解决冷启动问题   基于领域的社会化推荐算法:    用$p_{ui} =\sum_{v{\in}out(u)}w_{uv}r_{vi}$表示用户u对物品i的兴趣度.$out(u)$是用户的好友集合.$w_{uv}$由用户u,v的熟悉度以及兴趣相似度来衡量.熟悉度可以用两者的共同好友比例来度量$familiarity(u,v) =\frac{\left| out(u)\cap out(v) \right|}{\left| out(u) \cup out(v)\right|}$.兴趣的相似度可以用两者喜欢物品的重合度来衡量$similiarity(u,v)