当参数一样多的时候,神经网络变得更高比变宽更有效果。为什么会这样呢?

其实和软件行业的模块化思想是一致的。

比如,如果直接对这四种分类进行训练,长发的男孩数据较少,那么这一类训练得到的classifier不是很好。
但如果分成长发or短发,男孩or女孩,这两种基分类器,那么数据就是足够的,可以得到很好的结果。这样的话,其实用比较少的数据就可以得到很好地分类结果。

模组化这个事情机器是可以自动学到的。

图像应用

语音应用

第一步要做的事情就是把acoustic feature转成state,再把state转成phoneme,再转成文字。

传统的HMM-GMM方法,给你一个feature,你就可以说每一个acoustic feature从每一个state产生出来的几率。
但是每一个state都要用Gaussian Mixture Model来描述,参数太多了。

有一些state,他们会共用同一个model distribution,这件事叫做Tied-state。是否共用,需要借助知识。

HMM-GMM的方式,所有的state是independently的,没有一个effective的方法来model人声。
不同的phoneme之间其实是有关系的,如果说每个phoneme都搞一个model,这件事是没有效率的。

DNN的方法,input是一个acoustic feature,output是acoustic feature属于每个state的几率。
最关键的一点是所有的state都共用同一个DNN,并没有为每一个state产生一个DNN。

虽然DNN的参数很多,但并不是因为参数多所以比GMM好,因为GMM的每一个phoneme都有一个model,参数加起来可能比DNN还要多。

两种方法比较:
DNN做的事情在比较低层的时候,它并不是马上去侦测这个发音是属于哪个state。
它的做事是它先观察(detector)说,当你听到这个发音的时候,人是用什么方式在发这个声音的。(模组化)

普遍性原理:
过去的理论说,任何的continuous function,都可以用一层来完成。但这种模型效率并不高。

逻辑电路和逻辑闸的例子,后边做的是奇偶校验。

还有个形象的例子就是剪窗花,右图的features transformation和它是一个道理。

二维坐标的例子。

End to End Learning
深度学习的一个好处就是,我们可以做End-to-end learning。
就是说只要给model input和output,不用告诉它每层function要咋样分工,让它自己去学中间每一个function。

对于语音识别问题,DNN的方法得到的结果,和传统方法中最好的MFCC可以持平。

图像识别的问题也是一样。

还有,对于复杂问题,一层是远远不够的。

对于语音识别来说,看起来每个人说的很不一样,但当到第八层时,不同的人说的同样的句子,它自动的被line在一起了。

对于手写数字识别,到了第三层时,就可以很好地分开了。

【笔记】机器学习 - 李宏毅 - 13 - Why Deep的更多相关文章

  1. Deep Learning论文笔记之(八)Deep Learning最新综述

    Deep Learning论文笔记之(八)Deep Learning最新综述 zouxy09@qq.com http://blog.csdn.net/zouxy09 自己平时看了一些论文,但老感觉看完 ...

  2. 深度学习课程笔记(十八)Deep Reinforcement Learning - Part 1 (17/11/27) Lectured by Yun-Nung Chen @ NTU CSIE

    深度学习课程笔记(十八)Deep Reinforcement Learning - Part 1 (17/11/27) Lectured by Yun-Nung Chen @ NTU CSIE 201 ...

  3. Andrew Ng机器学习课程13

    Andrew Ng机器学习课程13 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 引言:主要从一般的角度介绍EM算法及其思想,并推导了EM算法的收敛性.最后 ...

  4. 《深入Java虚拟机学习笔记》- 第13章 逻辑运算

    <深入Java虚拟机学习笔记>- 第13章 浮点运算

  5. 【论文笔记】Malware Detection with Deep Neural Network Using Process Behavior

    [论文笔记]Malware Detection with Deep Neural Network Using Process Behavior 论文基本信息 会议: IEEE(2016 IEEE 40 ...

  6. 《从零开始学Swift》学习笔记(Day 13)——数据类型之整型和浮点型

    Swift 2.0学习笔记(Day 13)——数据类型之整型和浮点型 原创文章,欢迎转载.转载请注明:关东升的博客    Swift提供8.16.32.64位形式的有符号及无符号整数.这些整数类型遵循 ...

  7. 【笔记】机器学习 - 李宏毅 - 7 - Deep Learning

    深度学习发展历史: 感知机和逻辑回归很像,只是没有\(sigmoid\)激活函数. 深度学习训练的三个步骤: Step1:神经网络(Neural network) Step2:模型评估(Goodnes ...

  8. 机器学习笔记P1(李宏毅2019)

    该博客将介绍机器学习课程by李宏毅的前两个章节:概述和回归. 视屏链接1-Introduction 视屏链接2-Regression 该课程将要介绍的内容如下所示: 从最左上角开始看: Regress ...

  9. R语言学习笔记-机器学习1-3章

    在折腾完爬虫还有一些感兴趣的内容后,我最近在看用R语言进行简单机器学习的知识,主要参考了<机器学习-实用案例解析>这本书. 这本书是目前市面少有的,纯粹以R语言为基础讲解的机器学习知识,书 ...

随机推荐

  1. ICC中对Skew进行Debug的好工具--Interactive CTS Window

    本文转自:自己的微信公众号<集成电路设计及EDA教程> ​以后打算交替着推送多种EDA工具的教程而不只是单纯针对某个工具,依次来满足不同粉丝的需求. 这里分享一篇多年之前写的推文,虽然时间 ...

  2. 使用logstash结合logback收集微服务日志

    因为公司开发环境没有装elk,所以每次查看各个微服务的日志只能使用如下命令 这样子访问日志是并不方便,于是想为每个微服务的日志都用logstash收集到一个文件out中,那以后只要输出这个文件则可查看 ...

  3. Thread.yield( )方法

    Java线程中的Thread.yield( )方法,译为线程让步.顾名思义,就是说当一个线程使用了这个方法之后,它就会把自己CPU执行的时间让掉,让自己或者其它的线程运行,注意是让自己或者其他线程运行 ...

  4. 实现理论上无tps上限的分布式压测(基于Jmeter+InfluxDB+Grafana+Spring Boot)

    JMeter自身带有Master-Slave压测框架,对于并发量不是很高的压力情况下(比如tps低于5000),该方案是可行的,并且使用起来非常方便,只要在配置文件或者命令行工具的参数做一些补充,即可 ...

  5. hive执行计划简单分析

    原始SQL: select a2.ISSUE_CODE as ISSUE_CODE, a2.FZQDM as FZQDM, a2.FZQLB as FZQLB, a2.FJJDM as FJJDM, ...

  6. 图像分割:Semantic/Instance/Panoramic Segmentation

    一. 背景介绍 语义分割(Semantic Segmentation):对一张图片上的所有像素点进行分类,同一物体的不同实例不需要单独分割出来. 实例分割(Instance Segmentation) ...

  7. Matplotlib绘制漫威英雄战力图,带你飞起来!

    目录 前言 期望功能 代码实现 一.导入matplotlib依赖包 二.支持显示中文 三.使用ggplot主题 四.根据能力项等分圆 五.生成n个子图 六.获取支持的颜色 六.绘制所有子图 更多示例 ...

  8. C# 获取鼠标在屏幕上的位置

    获取鼠标位置及鼠标单击了哪个按键.private void GetMousePoint() {     Point ms = Control.MousePosition;     this.label ...

  9. JavaScript的算数,赋值,比较和逻辑运算符

    类似a=1+1这样的表达式称为运算符,js的运算符分为算数,赋值,比较和逻辑运算符:常见的算数有:+ - * / %(加减乘除,取模),比方说5/4=4*1+1:5%4=1,js算数顺序:从左往右,先 ...

  10. [javascript] test() 方法进行正则验证

    test() 方法用于检测一个字符串是否匹配某个模式 最近遇到的某业务中进行发票抬头的正则验证如下: console.log(/^[a-zA-Z\u4e00-\u9fa5\s()()<>& ...