深度学习用于推荐系统

黑马文章

深度学习到推荐系统
深度学习发展成功与局限

​ 最近几年深度学习的流行,大家一般认为是从2012年 AlexNet 在图像识别领域的成功作为一个里程碑。AlexNet 提升了整个业界对机器学习的接受程度:以前很多机器学习算法都处在“差不多能做 demo ”的程度,但是 AlexNet 的效果跨过了很多应用的门槛,造成了应用领域井喷式的兴趣。

​ 成功的原因:是大数据,是高性能计算。 大量的数据,比如说移动互联网的兴起,以及 AWS 这样低成本获得标注数据的平台,使机器学习算法得以打破数据的限制; 由于 GPGPU 等高性能运算的兴起,又使得我们可以在可以控制的时间内(以天为单位甚至更短)进行 exaflop 级别的计算,从而使得训练复杂网络变得可能。

​ 局限的地方:一点是结构化的理解,一点是小数据上的有效学习算法。 很多深度学习的算法还是在感知这个层面上形成了突破,可以从语音、图像,这些非结构化的数据中进行识别的工作。面对更加结构化的问题的时候,简单地套用深度学习算法可能并不能达到很好的效果。在数据量非常小的时候,深度学习的复杂网络往往无法取得很好的效果,在很多领域,特别是类似医疗这样的领域,数据是非常难获得的。

推荐系统的应用需求

​ 实际上深度学习在自然语言处理,图像处理,图像识别等领域迅猛发展的近4年来,深度学习在其他领域,例如推荐系统也得到快速的发展。除了语音和图像之外,如何解决更多问题。在阿里、美团等很多互联网企业中有一个“沉默的大多数”的应用,就是推荐系统:它常常占据了超过80%甚至90%的机器学习算力,如何将深度学习和传统推荐系统进一步整合,如何寻找新的模型,如何对搜索和推荐的效果建模,也是公司不可缺少的技能。

推荐系统为什么加入深度学习?

为什么我们会想到使用深度学习去处理推荐系统里面的事情呢,推荐系统从基于内容的推荐,到协同过滤的推荐,协同过滤的推荐在整个推荐算法领域里独领风骚了多年。

或许深度学习在推荐系统里面没有像图像处理算法那样一枝独秀,但是深度学习对于推荐系统的帮助确实起到了推波助澜的功效。

能够直接从内容中提取特征,表征能力强:容易对噪声数据进行处理;

抗噪能量强:深度学习便于对负责数据进行统一处理

机器学习和深度学习在推荐系统中的应用比较
区别

机器学习的特征工程步骤是要靠手动完成的,而且需要大量领域专业知识。

深度学习通常由多个层组成,它们通常将更简单的模型组合在一起,通过将数据从一层传递到另一层来构建更复杂的模型。通过大量数据的训练自动得到模型,不需要人工设计特征提取环节。

数据量

机器学习需要的执行时间远少于深度学习。

深度学习参数往往很庞大,需要通过大量数据的多次优化来训练参数:

​ 第一、它们需要大量的训练数据集

​ 第二、是训练深度神经网络需要大量的算力,可能要花费数天、甚至数周的时间,才能使用数百万张图像的数据集训练出一个深度网络。所以需要强大的GPU服务器来进行计算和全面管理的分布式训练与预测服务。

算法代表

机器学习 朴素贝叶斯、决策树等 深度学习 神经网络

深度学习的主要应用

图像识别 物体识别

场景识别 车型识别

人脸检测跟踪 人脸关键点定位 人脸身份认证

自然语言处理技术 机器翻译 文本识别

聊天对话 语音技术 语音识别

推荐系统

第二篇:

深度学习的发展及在推荐系统中的应用

一、深度学习介绍

深度学习其实就是神经网络模型,一般来说,隐含层数量大于等于2层就认为是深度学习(神经网络)模型。神经网络不是什么新鲜概念,在好几十年前就被提出来了,最早可追溯到1943年McCulloch与Pitts合作的一篇论文(参考文献1),神经网络是模拟人的大脑中神经元与突触之间进行信息处理与交互的过程而提出的。神经网络的一般结构如下图,一般分为输入层、隐含层和输出层三层,其中隐含层可以有多层,各层中的圆形是对应的节点(模拟神经元的对应物),节点之间通过有向边(模拟神经元之间的突触)连接,所以神经网络也是一种有向图模型。

img

图1:深度学习网络(前馈神经网络)结构示意图

img

对于更加复杂的深度学习网络模型,公式会更加复杂,这里不细说。深度学习一般应用于回归、分类等监督学习问题,通过输出层的损失函数,构建对应的最优化问题,深度学习借助于反向传播(参考文献3)技术来进行迭代优化,将预测误差从输出层向输入层(即反向)传递,依次更新各层的网络参数,通过结合某种参数更新的最优化算法(一般是各种梯度下降算法),实现参数的调整和更新,最终通过多伦迭代让损失函数收敛到(局部)最小值,从而求出模型参数。梯度下降算法的推导公式依赖于数学中求导的链式规则,这里具体不做介绍,读者可以参考相关文章及书本学习了解。

虽然神经网络很早被提出来了,但当时只是停留在学术研究领域,一直没有得到大规模的产业应用。最早的神经网络叫做感知机(Perceptron),是单层的人工神经网络,只用于模拟简单的线性可分函数,连最简单的XOR异或都无能为力,这种致命的缺陷导致了神经网络发展的第一次低谷,科研院校纷纷减少对神经网络研究的经费支持。单层感知机无法解决线性不可分的分类问题,后面人们提出了有名的多层感知机(MLP),但是限于当时没有好的方法来训练MLP,直到80年代左右,反向传递算法被发现,被用于手写字符识别并取得了成功,但是训练速度非常慢,更复杂的问题根本无法解决。90年代中期,由Vapnik等人发明的支持向量机(SVM)在各类问题上取得了非常好的效果,基本秒杀神经网络模型,这时神经网络技术陷入了第二次低谷,只有Hinton等很少学者一直坚持研究神经网络。事情的转机出现在2006年,Hinton提出了深度置信网络,通过预训练及微调的技术让深度神经网络的训练时间及效果得到了极大提升。到了2012年,Hinton及他的学生提出的AlexNet网络(一种深度卷积神经网络)在ImageNet竞赛(2010年开始,斯坦福的李飞飞教授组织的ImageNet项目,是一个用于视觉对象识别软件研究的大型可视化数据库,该竞赛直接促进了以深度学习驱动的第三次AI浪潮的发展)中取得了第一名,成绩比第二名高出许多,这之后深度学习技术获得了空前的巨大成功。

经过近十来年的发展,有更多的神经网络模型被陆续发现,除了最古老的多层感知机(MLP)外,卷积神经网络(CNN)图像识别取得极大的胜利,循环神经网络(RNN)语音识别、自然语音处理中如鱼得水,CNN和RNN是当前最成功的两类神经网络模型,它们有非常多的变种。另外,像自编码器(Autoencoder)、对抗网络(Adversarial Network,简称AN)等新的模型神经网络架构不断被提出。


深度学习和推荐系统的结合

深度学习于推荐系统综述:Deep Learning based Recommender System: A Survey and New Perspectives

深度学习在推荐系统中的应用

深度学习在推荐系统中的应用)

  • 1
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Every DAV inci

小辣鸡一枚,不求打赏啦~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值