如何做好推荐系统

推荐系统的4个方面完全总结 目录 一、常见的推荐算法原理(时间、位置影响) (一)、基于内容的推荐 (二)、基于用户的协同过滤算法 (三)、基于物品的协同过滤算法 (四)、基于标签的推荐 (五)、隐语义模型 LFM (六)、社会化推荐 (七)、根据时间上下文推荐 (八)、基于地理位置的推荐 二、推荐系统的冷启动问题 三、推荐系统的架构 四、推荐系统的度量 什么是好的推荐系统: 推荐系统的评价... 阅读详情

现在是“互联网+”的时代、大数据的时代——至少我遇到的很多人都开始转行做大数据了,很多人在网络上学习了几个常见算法,深入些的会再学习一下斯坦福的机器学习课程,然后就去尝试跳进大数据的海洋了,很多人可能马上就被海浪拍到了沙滩上。这篇文章就是想帮助那些即将跳进数据海洋搞数据挖掘的人,给你一个游泳圈以保证安全。

 

1、推荐系统简介

推荐系统是数据挖掘领域很重要的一个分支,其也是与搜索引擎一样,帮助用户找到自己所需要信息的一种工具。不同于搜索引擎的有明确目的的信息推荐,推荐系统往往是用户没有明确目的需求时的一种潜在推荐,来帮助用户发现自己可能喜欢的东西。

推荐系统在具体实践中有相关推荐系统和个性化推荐系统,其作用的主要对象分别是Item和User,前者是根据大众行为的推荐引擎,对每个用户都给出同样的推荐内容;后者是个性化的推荐引擎,对不同的用户,根据他们的口味和喜好给出更加精确的推荐。当然这两种并没有明确的划分,更多是在实际应用中的实现方式。一般说,推荐系统利用特殊的信息过滤技术,将不同的物品或内容推荐给可能对它们感兴趣的用户。其工作原理如下:

 

 

2、推荐系统的数据源

一个好的推荐系统,不一定是算法多么优秀,很多时候是找到了更合适的计算数据源。如何选择计算的数据以及如何过滤数据中的噪声和杂质,是建立推荐系统最重要的基础步骤。数据源的选择包括数据范围选择、特征选择以及数据源的组合。

①  数据范围选择,就是要找到哪些数据源对于推荐系统是有帮助的,一般来讲,包括Item相关的数据源、User相关的数据源以及Item和User关联的数据源。根据不同的数据源就可以选择不用的推荐算法。

②  特征选择,就要找到特定数据源中那些对于计算是有帮助的属性。其与降维有些许相似,两者达到的效果是一样的,都是去试图减少特征数据集中的属性数目,但是两者采用的方法不同:降维的方法主要是通过属性间的关系,如组合不同的属性得到新的属性,这样就改变了原来的特征空间;而特征选择是从原始特征数据中选择出子集,是一种包含关系,没有改变原始的特征空间。

③  数据源的组合,更多是实际应用中的体现。前面提到的不论基于Item还是User的数据源,都是从某一角度来寻找相关数据,实际中这些不同角度的数据都会在同一推荐项中出现,因此恰当的组合不同数据源对于后续的算法选择和调优具有很好的帮助效果。


3、推荐系统的常用算法

①基于内容的推荐(Content-based Recommendation)是建立在Item的内容信息上做出推荐的,而不需要依据用户对项目的行为信息。基于内容的推荐算法常用的有决策树、神经网络和基于向量的表示方法等。

基于内容的推荐算法,其主要优点包括:不需要用户的数据,没有冷启动问题;能推荐新的活不是很流行的Item,没有新Item问题;通过列出推荐项目的内容特征,具有较好的可解释性。缺点是要求内容可以抽取成有意义的特征,特征具有良好的结构性,并且用户的喜好可以用内容特征来表述。

②基于协同过滤的推荐(ClllaborativeFilter Recommendation)技术是推荐系统中应用最早和最为成功的技术之一。一般利用用户的历史行为喜好信息来计算用户或者物品之间的相似距离,然后利用目标用户或物品的最近邻居用户或物品的加权评价值来预测喜好程度,根据这一喜好程度来对目标进行推荐。

基于协同过滤的推荐算法,其主要优点包括:能够过滤难以进行近期自动内容分析的信息;具有较好的惊喜性,可以发现内容上完全不相似的信息;能够有效的使用其他相似用户的反馈信息,加快学习速度。缺点主要是稀疏问题和可扩展问题。

③基于关联规则的推荐(AssociationRule-based Recommendation),是通过分析用户和物品的行为数据,发掘可以表示的具有一定相关性的规则集。这种算法的发现频繁项是最为关键和耗时的。


4、推荐系统的实践

不同的推荐算法根据其适用的数据而具有不同推荐效果。在效果上,算法本身并没有什么优劣之分,只是由于适用计算数据源不同。因此,同一种数据源选择最合适的算法才是推荐系统中的关键能力体现。

①算法简单:对于推荐效果相差无几的情况下,选择那些算法运行简单、健壮性更好的,这样对于日常的维护和系统架构都很有帮助。

②参数调优:现在很多的开源插件中都已经实现了常用的算法,但是对于参数的选择和调优却不能很好的进行,因此对于使用者而言,清楚算法的基本原理,根据自己的数据源,对于算法进行必要的改造和参数调整非常有效,我们不建议直接完全的套用标准算法。

③组合推荐:一种算法可能只适用某一种或几种场景,实际中的推荐系统会面对各种各样的场景和情况,因此采用不同的算法进行组合推荐,以及不同场景的不同算法推荐都是很必要的。

④人工干预:完全依靠编辑推荐的推荐系统是不够的,同样完全依靠算法的推荐系统也是不够的,有时必要的人工干预是对推荐系统的良好补充,包括人工规则的设定、特殊条件下的推荐设定等。

推荐系统系列二:推荐系统的工程实现 下面内容转自大数据与人工智能微信公众号,由于网络上推荐系统的相关学习资料太多太杂,东拼西凑学习很难摸出门道,同时我也在学习推荐系统,因此我将该系列内容摘录到我的博客,方便大家直接在博客中查看,大家一起学习进步,后面我也会阅读推荐系统相关的论文,并在本博客记录笔记,希望大家一起进步哈。 在我更新第一篇《推荐系统介绍》之后,过了一两天这篇介绍的阅读量就达到了三百多,可见... 阅读详情

相关推荐

【推荐系统】推荐系统简介分类以及长尾问题

推荐系统简介分类以及长尾问题推荐系统简述长尾问题推荐系统分类协同过滤推荐系统基于内容的推荐系统混合推荐系统序列推荐系统协同过滤推荐和基于内容推荐有什么区别? 推荐系统简述 当下我们已经处于信息爆炸的时代,要从庞大的各类数据库中提取有用的信息,并能为目标用户提供他们需要的信息变得越来越困难。推荐系统正是为了解决这个问题所提出的。 推荐系统目前在很多领域都发挥着重要的角色,比如电子商务领域(淘宝,天猫,Amazon等),视频推荐(抖音,快手,B站等),社交网络(腾讯,Facebook,Twitter等),新闻推

qq_41101762的博客 3309

大数据分析-第八章 推荐系统

第八章 推荐系统

SpriCoder的博客 4536

个性化推荐系统的实现步骤

个性化推荐系统的实现步骤 摘要 个性化推荐系统是当前互联网应用中不可或缺的一环,它通过分析用户行为和偏好,提供定制化的内容和服务,从而提升用户体验和满意度。本文将详细探讨个性化推荐系统的实现步骤,从基本概念到核心技术,再到实际应用与优化,全面解析个性化推荐系统的构建过程。文章还将讨论未来的发展趋势、伦理与

AI天才研究院 1375

谈谈推荐系统(一)什么是推荐系统

推荐系统以及评估标准

Mtchy的专栏 4187

非线性功率放大器对QAM传输BER性能的影响及补偿

1、线性功率放大器对传输性能的影响 为表述非线性功率放大器对传输性能的影响,以Saleh模型进行观察。具体来说,在QAM调制器之后添加一个非线性模块,使调制后的波形经历AM / AM和AM / PM转换。 在Saleh模型中,转换用四个参数表示,即AM / AM转换为????a和????a,AM / PM转换为????p和????p。 在Saleh模型中,AM / AM和AM / PM方程以输入电压u的大小表示为: 式中,FAM / AM是AM / AM转换的输出电压与输入电压的关系,而FAM

太阳帅帅的博客 2080

Andriod应用开发基础项目——记账本

本项目采用Java语言编写,是一款基于Android Studio开发的简易项目,本项目可以提高Java语言编写软件的能力,同时加深对开发软件Android studio有了更深层次的掌握,很适合初学者。在项目过程中,遇到了一些挑战和问题,但通过不断的努力和学习,最终取得了成功。未来,可以还可以继续优化App的功能和性能,增加更多实用的功能,提升用户体验。

eryasd的博客 3467

什么是推荐系统

1. 推荐系统和搜索引擎的区别: 搜索引擎满足了用户有明确需求时的主动查找请求 推荐系统能够在用户没有明确目的的时候帮助他们发现兴趣 2. 几乎所有的推荐系统都是由前台的展示页面,后台的日志系统以及推荐算法系统3部分组成 3. 个性化推荐的成功应用需要两个条件,第一是存在信息过载,因为如果用户可以很容易的从物品中找到喜欢的物品。就不需要个性化推荐了。第二是用户大部分时间

mhtlee的专栏 1160

Qt Installer Framework4.6.1的最基础使用1(win10+离线安装包 )

因工作需要,win程序发布后,打包成一可执行exe文件,且兼容win7系统笔者记录了一些关键要点,供有需要的小伙伴使用。

aggs1990的专栏 904

一文简单理解推荐系统

本文主要介绍什么是推荐系统,为什么需要推荐系统,如何实现推荐系统的方案,包括实现推荐系统的一些常见模型,希望给读者提供学习实践参考。 1 推荐系统概述 为什么需要推荐系统 信息爆炸 对于信息消费者,需要从大量信息中找到自己感兴趣的信息,而在信息过载时代,用户难以从大量信息中获取自己感兴趣、或者对自己有价值的信息。 对于信息生产者,信息生产者,需要让自己生产的信息脱颖而出,受到广大...

huahuazhu的博客 1823

Xilinx FPGA ICAP原语实现多重配置

众所周知,常见的FPGA通常为SRAM结构,固件程序一般存放在外置的串行Flash中,比如SPI Flash,M25P16或N25Q128等。 FPGA启动时,一般先从SPI起始地址开始加载数据到内部的SRAM,加载完成、校验通过则会直接运行。 那么有没有可能在SPI Flash中存放两个或多个FPGA固件呢?

whik1194的博客 4612

【IPC】ONVIF Device Manager 测试工具

介绍onvif 协议测试工具

以实战经验介绍行业知识 1961

完美的推荐系统设想

完美的推荐系统设想 智能推荐是现在几乎每个app都会配备的功能,特别是电商、新闻资讯、短视频等类型的应用,平台内容积累得越多,越需要通过智能推荐来进行流量分发,为每个用户提供个性化的服务。那针对不同的应用来说,怎样的一个推荐系统才算是完美的,我们可以从涉及到推荐系统的每个关系方来进行设想。 一、app用户 对于用户来说,自己应该是公司的“上帝”,毕竟公司产品都是服务大众的。所以,一个智能推荐系统应...

zozim的博客 373

AD9914数字斜坡模式使用

类似的,如果DRG输出处于负斜率斜坡中间,DRCTL引脚由逻辑0变为逻辑1,那么DRG会立即切换成正斜率参数,恢复在两个限值之间振荡输出。当两个非驻留位同时设置时,每次DRG输出达到编程设定的上限值或下限值后(假定DRG过输出使能位(0x01[13])已设置),DROVER信号会产生一个正脉冲(两个DDS时钟周期)。不过,在非驻留操作中,DRG输出不一定保持在上下限值。例如,设置数字斜坡非驻留高位,则当达到上限值时,DRG会自动(立即)跳到下限值(这一过程并非以斜坡方式返回下限值,而是直接跳至下限值)。

wangjie36的博客 3864

推荐系统老司机的十条经验

本文来源微信公众号:ResysChina,版权归原作者所有,未经作者同意,请勿转载。 原文:推荐系统老司机的十条经验 作者:陈开江@刑无刀,金融科技公司天农科技CTO,曾任新浪微博资深推荐算法工程师,考拉FM算法主管,先后负责微博反垃圾、基础数据挖掘、智能客服平台、个性化推荐等产品的后端算法研发,为考拉FM从零构建了个性化音频推荐系统。 欢迎技术投稿、约稿、给文章纠错,请发送邮件至heyc...

Bingo 440

基于STM32、HAL库的GZP6816D气压传感器 驱动程序设计

测量范围:0-16kPa(可根据型号不同有变化)工作电压:1.8V-3.6V。高精度:±1% FS。

corlin6688的博客 217

深度学习100例-卷积神经网络(CNN)彩色图片分类 | 第2天

文章目录前期工作设置GPU导入数据标准化可视化构建CNN网络编译训练模型预测模型评估 前期工作 设置GPU 如果使用的是CPU可以忽略这步 import tensorflow as tf gpus = tf.config.list_physical_devices("GPU") if gpus: gpu0 = gpus[0] #如果有多个GPU,仅使用第0个GPU tf.config.experimental.set_memory_growth(gpu0, True) #设置GPU显存用量

“365天深度学习训练营”报名进行中~ 7855

推荐系统技术内幕(三):算法篇之用户画像

做好推荐系统的第二步,就是认识用户。如果你不了解用户的喜好,推荐也就无从谈起。所以在用户冷启动的时期,我们会用一些策略去试探用户的喜好,目标也是为了认识用户。 认识用户用专业术语表达就是用户画像(User Profile)。读者应该看过下图形式的用户画像: 这种图形化的用户画像,用不同颜色和字体的标签,拼出用户的剪影形象。 实际上,这种形式的用户画像,对计算机来说没什么用处。为什么呢? 因为对于...

Jony0917的专栏 3828

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

推荐系统库(MyMediaLite)

MyMediaLite 是一个 C 编写的推荐系统库,提供了多种推荐算法的实现,包括协同过滤、基于内容的推荐、矩阵分解等。它可以用于构建各种类型的推荐系统,并且支持在线学习和增量更新。MyMediaLite 由德国希尔德斯海姆大学的研究人员开发,其开发部分受到了欧洲委员会第七框架计划项目“动态个性化多媒体(MyMedia)”的资助。作为开源软件,它依据 GNU 通用公共许可证(GPL)进行发布,用户可以免费使用和修改源代码,这为开发者提供了极大的灵活性和可扩展性。

weixin_43156294的博客 1189

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

mahout之推荐系统源码笔记(1) ---预处理之PreparePreferenceMatrixJob

mahout之推荐系统源码笔记hadoop篇:因为时间原因首先更新分布式hadoop上的推荐系统源码的阅读。首先给出mahout中taste推荐系统的代码结构: taste common eval hadoop impl model neighborhood recommender similarity model neighborhood recommender simi

Utopia_1919 1954

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

一文入门推荐系统——推荐系统实践读书笔记

1. 推荐系统 1.1. 什么是推荐系统 1.2. 推荐系统评测 1.2.1. 实验方法 1.2.2. 评判指标 1.2.3. 评判维度 2. 数据来源 2.1. 用户行为数据 2.2. 用户标签数据 2.3. 上下文信息 2.3.1. 时间上下文信息 2.3.2. 地点上下文信息 2.4. 社交网络数据 3. 通用推荐模型 3.1. 协同过滤推荐 3.1.1. 基于邻域的模型 3.1.2. 隐语义模型 3.1.3. 基于图的模型 3.2. 基于内容的推荐 3.3. 基于关联规则的推荐 3.4. 基于知识的

白水的博客 3万+

没有用户数据时如何搭建推荐系统?用这三种办法!

本账号为第四范式智能推荐产品先荐的官方账号。账号立足于计算机领域,特别是人工智能相关的前沿研究,旨在把更多与人工智能相关的知识分享给公众,从专业的角度促进公众对人工智能的理解;同时也希望为人工智能相关人员提供一个讨论、交流、学习的开放平台,从而早日让每个人都享受到人工智能创造的价值。即使没有用户数据,我们仍能搭建高效的推荐系统,向用户展示更多优质内容,让用户参与其中。太长不看版:第一步便是搭建基于...

weixin_30246221的博客 306

推荐系统实战1——什么是推荐系统与常见的推荐系统评价指标

工作需要了解一些有关推荐系统的内容,首先学一下什么是推荐系统与常见的推荐系统评价指标吧。顾名思义,推荐系统的功能就是推荐,在当前信息量急速膨胀的互联网时代,每一个人都面向了海量的数据,哪怕是一个小平台,数据量可能都是以千万为单位的,这个时候让用户自己一个一个去选择,显然是不可能的。推荐系统则可以面对海量的数据信息,从中快速推荐出符合用户特点的东西。一个好的推荐系统是互利共赢的,用户可以获取到他们最需要的内容(如商品、音乐、新闻等)。平台也可以获取到他们最需要的内容(如流量、成交量、播放量等)。而一个。...

Bubbliiiing的学习小课堂 7655

推荐系统入门笔记

1、初识推荐系统 https://www.ibm.com/developerworks/cn/web/1103_zhaoct_recommstudy1/index.html#icomments 2、常用推荐算法一览 (1)http://www.36dsj.com/archives/62617 (2)http://blog.jobbole.com/72373/ 3、相关

zwqsir的博客 378

什么是推荐系统?推荐系统类型、用例和应用

当前基于 DL 的推荐系统模型:DLRM、Wide and Deep (W&D)、神经协作过滤 (NCF)、b变分自动编码器 (VAE) 和 BERT(适用于 NLP)构成了 NVIDIA GPU 加速 DL 模型产品组合的一部分,并涵盖推荐系统以外的许多不同领域的各种网络架构和应用程序,包括图像、文本和语音分析。此方法基于物品和用户特征的相似性,并鉴于用户及其与之交互过的物品的信息(例如,用户的年龄、餐厅的菜系、电影的平均评价),来模拟新互动的可能性。会话中的用户物品交互类似于句子中的词嵌入。...

Jericho2022的博客 2万+

推荐系统系列一:推荐系统介绍

下面内容转自大数据与人工智能微信公众号,由于网络上推荐系统的相关学习资料太多太杂,东拼西凑学习很难摸出门道,同时我也在学习推荐系统,因此我将该系列内容摘录到我的博客,方便大家直接在博客中查看,大家一起学习进步,后面我也会阅读推荐系统相关的论文,并在本博客记录笔记,希望大家一起进步哈。 ===================正文开始=================== 一,推荐系...

Mr_HHH的博客 1万+

推荐系统系列——推荐系统简介

目录 演化关系图 推荐系统简介 什么是推荐系统 为什么需要推荐系统 如何构建推荐系统(推荐系统的步骤) 常用评测指标 召回与排序 召回层与排序层的特点 多路召回 使用Embedding做召回 A/B测试 为什么需要A/B测试 A/B测试的流程 演化关系图 推荐系统简介 什么是推荐系统 用户:帮助用户从海量的信息种快速寻找到自己想要的信息的一种工具 公司:可以提高公司产品与用户直接接触,购买等行为,有助于提高用户粘性的工具。 为什么需要推荐系统 用户

qq_36279562的博客 9031
上一篇: 基于Spark的用户分析系统
下一篇: Storm在推荐系统中的应用
山猪爸
博客等级 码龄11年 167粉丝 11原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值