机器的深度学习究竟有多“深”?

2019 年 11 月 24 日 人人都是产品经理

关注并将「人人都是产品经理」设为星标

每天早 07 : 45 按时送达


每次提起深度学习,没有接触过的人会处于一种模糊臆想状态,认为其遥不可及。笔者通过简单易懂的例子摘下深度学习“高大上”的面纱,用一些简化的模型和通俗的比喻阐述其中的概念。

作者:张小喵Miu

微信公众号:XO喵妖(ID:XO_miu)

题图来自 Pixabay,基于 CC0 协议

全文共 2698 字 10 图,阅读需要 6 分钟


—————— / BEGIN / ——————


1980年福岛邦彦提出感知机,但由于计算代价过大,并且“神经网络”这个名词听起来和生物相关,投资者们纷纷拒绝,导致未能进行实际的应用。


经过一段漫长的沉寂与暗中生长,2006年 Geoffrey Hinton 等人在《Science》杂志发表 Deep Belief Networks 的文章。


为了能更好地骗经忽悠信徒,率先使用了“深度”这个词,就此开启了深度神经网络的新时代。


深度学习的本源,其实就是神经网络的在机器学习中的应用,它是机器学习的子集,如下图:



一、机器学习


我们日常做数学题,是已知公式(规则),拿到题目(数据)去求答案;机器学习正好相反,它是给出数据和答案,需要机器去学习规则。



机器学习,尤其是深度学习,呈现出相对较少的数学理论,并且是以工程为向导的。这是一门需要上手实践的科学,想法更多地是靠实践来证明,而不是靠理论推导。


机器学习分类:


  • 无监督式学习(回归、分类)

  • 有监督式学习(回归、分类)

  • 半监督式学习(聚簇)


我们用养孩子的比喻来理解机器学习。


1. 无监督式学习


孩子生出来直接散养,让孩子自己去面对世界建立礼义廉耻的价值观。


把小孩和猫咪狗狗放在一块,经过一段时间,他会知道猫和狗是不同类型的东西。但没有人为引导,他不知道“猫”“狗”这样明确的定义。


由于事物具有多面性和复杂性的特点,仅通过有限的特征进行无监督式学习,容易出现与人类期望不符的结果。例如,“长头发的人和长头发的狗”,如下图。


这种方式是把具有相似性的事物归为一类(聚簇),分离结果只能通过特征的表象,缺点是结果容易跑偏,不符合期望。



图片来源于网络


2. 有监督式学习


和无监督式学习相反,孩子出生后,虎爸虎妈手把手教学,兴趣班叠加补习班,任何事情都直接给出正确答案。


经过一系列应试教育,孩子成绩非常优秀(有监督学习的识别率普遍比无监督高许多)。但一旦遇到稍微超纲的问题,立马懵逼,这就是“过拟合”。


而且,标签的获取常常需要极大的人工工作量。所以,这种方式多用于有明确结果的数据有限的集合。


3. 半监督式学习


半监督式学习介于以上两者之间,小时候亲力亲为教导小孩,长大后让他基于已有的基本伦理和社会道德去接触大千世界。


所以,半监督式学习会有小部分已标注的训练集用于初始化学习,而留下一大部分未标注的训练数据让其自我学习。


二、深度学习


先回忆下中学的生物知识,神经反射接受信息的过程:


感受器(肌肉)

反射弧

中枢神经系统


我们识别一个人通过模糊到具体的特征,如衣着、头发、脸、眼睛、眉毛等特征,每个特征由一个神经元判断。


深度学习,就是通过一个个特征组不断学习识别出事物。


深度学习的“深”相对“浅”而言,优点是慢慢深入,前期容易筛选出有用的数据集,结果较准确。


如文章开头所说,深度学习是神经网络在机器学习中的应用。其技术定义:学习数据表示的多级方法。


也可以把深度网络看做多级信息蒸馏操作:信息穿过连续的过滤器,其纯度越来越高(即对任务的帮助越来越大),即权重越高。


权重怎么理解?


假设我们通过衣着判断性别,分为四类:穿裤子的女生、穿裙子的女生、穿裤子的男生、穿裙子的男生。通过日常经验知道,穿裙子较大概率是女生;所以资源不应该平均分配,也就是权重不同。


深度网络可以先提取“衣着”作为一层神经元的筛选,如果恰好筛选出为裙子;那么在筛选出来的集合里,我们已经可以大概率的认为这个样本90%的概率是女性了。


人会根据外界反馈调节自身的状态,深度学习也是。


在深度学习中,衡量实际与期望误差的函数称为损失函数,根据损失函数的损失值反过来优化调整权重,以达到局部最优解。



深度学习的“学习”方式


常见的深度学习模型


1. 有监督的神经网络


  • 神经网络(Artificial Neural Networks)和深度神经网络(Deep Neural Networks),ANN&DNN

  • 循环神经网络(Recurrent Neural Networks)和递归神经网络(Recursive Neural Networks),RNN

  • 卷积网络(Convolutional Neural Networks),CNN


2. 无监督的神经网络


  • 深度生成模型(Deep Generative Models),DGM

  • 玻尔兹曼机(Boltzmann Machines)和受限玻尔兹曼机(Restricted Boltzmann Machines),BM&RBM

  • 深度信念网络(Deep Belief Neural Networks),DBNN

  • 生成式对抗网络(Generative Adversarial Networks),GAN


不同的深度学习模型有自身的优缺点,有的擅长处理分类任务,有的擅长处理存在前后依赖关系、有序列关系的数据,有的擅长处理格状结构化的数据等,开发会按需选择。


三、深度学习应用举例


刷资讯APP时,低俗、标题党等文章易吸引眼球,但体验差。这类内容若泛滥会严重伤害用户体验,所以对这类内容应该进行打压,深度学习可以帮上忙。


以低俗识别为例,俗即“庸俗、低俗、媚俗”,指某人某事不入流、情趣低下或微色情、low等,社会、情感、搞笑、娱乐等类别特别容易出现。低俗内容过多会影响阅读体验和流量生态的良性循环。


如何应用深度学习找出低俗内容呢?


第一步:定义标准


定义低俗和制定标准(case辅助)


第二步:设置关键词


给机器提供种子词(具有分值的关键词)+分类等特征+部分人为规则+训练集(标题+摘要+正文等文本)



种子词示例



训练集正样本示例


第三步:机器深度学习和调参


例如采用CNN(卷积神经网络),深度学习中根据损失函数调整特征权重或训练样本。


第四步:验证集的效果测评


低俗文章的识别属于二分类评估,每个评估对象有唯一的结果,YES或NO。


评估留意三大指标:准确率,精确率,召回率。


  1. 准确率:机器识别正确的样本数/样本总数(备注:正确识别包含把低俗样本识别为色情,把非低俗样本识别为非低俗两种情况);

  2. 精确率:机器正确识别出的低俗样本数总和/机器识别出的低俗样本总;

  3. 召回率:机器正确识别出的低俗样本数总和/低俗样本总数。



以上数据仅做理论说明,不做实际参考



  • 准确率=(5000-40-11)/5000=98.98%

  • 精确率=140/180=77.78%

  • 召回率=140/151=92.72%


低俗样本对于大盘来说,浓度很低。所以,评估准确率没有多大意义,更主要是看精确率和召回率。


更多经典例子来自疾病试纸和验孕试纸(有兴趣的朋友可以查阅一下),所以统计的时候需要注意本体的对象。


第五步:上线或反馈badcase


当模型效果达预期(召回率和精确率呈现负相关,最佳组合可用 F Score 求得,见文末),即可上线做“苦工”。若不达预期,根据badcase继续优化。


附:F Score,[0,1],值越大表示效果越好


F1 Score:召回率和精确率同等重要



Fβ Score:召回率和精确率不同等重要


  • F2:召回率的重要程度是准确率的2倍

  • F0.5:召回率的重要程度是准确率的一半



β大于0


参考文献:

《Deep Learning with Python》[美]弗朗索瓦·肖莱 著;张亮 译


—————— / END / ——————



 ▼点击「阅读原文」了解F Score

登录查看更多
0

相关内容

机器学习的一个分支,它基于试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的一系列算法。

知识荟萃

精品入门和进阶教程、论文和代码整理等

更多

查看相关VIP内容、论文、资讯等
少标签数据学习,54页ppt
专知会员服务
196+阅读 · 2020年5月22日
深度学习自然语言处理概述,216页ppt,Jindřich Helcl
专知会员服务
212+阅读 · 2020年4月26日
专知会员服务
199+阅读 · 2020年3月6日
机器翻译深度学习最新综述
专知会员服务
98+阅读 · 2020年2月20日
麻省理工学院MIT-ICLR2020《神经网络能推断出什么?》
专知会员服务
50+阅读 · 2020年2月19日
模型压缩究竟在做什么?我们真的需要模型压缩么?
专知会员服务
27+阅读 · 2020年1月16日
【新书】傻瓜式入门深度学习,371页pdf
专知会员服务
187+阅读 · 2019年12月28日
【深度学习】深度学习的问题究竟在哪?
产业智能官
4+阅读 · 2019年8月30日
深度学习如何调参?
炼数成金订阅号
6+阅读 · 2018年10月18日
一文了解强化学习
AI100
15+阅读 · 2018年8月20日
深度学习面试100题(第81-85题)
七月在线实验室
16+阅读 · 2018年8月6日
深度学习面试100题(第71-75题)
七月在线实验室
5+阅读 · 2018年8月2日
深度学习大神都推荐入门必须读完这9篇论文
数据挖掘入门与实战
9+阅读 · 2018年1月15日
【干货】机器学习和深度学习概念入门(下)
机器学习研究会
6+阅读 · 2017年12月31日
【深度学习】神经网络和深度学习简史
产业智能官
8+阅读 · 2017年11月16日
Arxiv
9+阅读 · 2020年2月15日
Logically-Constrained Reinforcement Learning
Arxiv
3+阅读 · 2018年12月6日
Learning to Focus when Ranking Answers
Arxiv
5+阅读 · 2018年8月8日
Arxiv
10+阅读 · 2018年3月23日
Arxiv
27+阅读 · 2017年12月6日
VIP会员
相关VIP内容
少标签数据学习,54页ppt
专知会员服务
196+阅读 · 2020年5月22日
深度学习自然语言处理概述,216页ppt,Jindřich Helcl
专知会员服务
212+阅读 · 2020年4月26日
专知会员服务
199+阅读 · 2020年3月6日
机器翻译深度学习最新综述
专知会员服务
98+阅读 · 2020年2月20日
麻省理工学院MIT-ICLR2020《神经网络能推断出什么?》
专知会员服务
50+阅读 · 2020年2月19日
模型压缩究竟在做什么?我们真的需要模型压缩么?
专知会员服务
27+阅读 · 2020年1月16日
【新书】傻瓜式入门深度学习,371页pdf
专知会员服务
187+阅读 · 2019年12月28日
相关资讯
【深度学习】深度学习的问题究竟在哪?
产业智能官
4+阅读 · 2019年8月30日
深度学习如何调参?
炼数成金订阅号
6+阅读 · 2018年10月18日
一文了解强化学习
AI100
15+阅读 · 2018年8月20日
深度学习面试100题(第81-85题)
七月在线实验室
16+阅读 · 2018年8月6日
深度学习面试100题(第71-75题)
七月在线实验室
5+阅读 · 2018年8月2日
深度学习大神都推荐入门必须读完这9篇论文
数据挖掘入门与实战
9+阅读 · 2018年1月15日
【干货】机器学习和深度学习概念入门(下)
机器学习研究会
6+阅读 · 2017年12月31日
【深度学习】神经网络和深度学习简史
产业智能官
8+阅读 · 2017年11月16日
相关论文
Arxiv
9+阅读 · 2020年2月15日
Logically-Constrained Reinforcement Learning
Arxiv
3+阅读 · 2018年12月6日
Learning to Focus when Ranking Answers
Arxiv
5+阅读 · 2018年8月8日
Arxiv
10+阅读 · 2018年3月23日
Arxiv
27+阅读 · 2017年12月6日
Top
微信扫码咨询专知VIP会员