Deep Learning

Deep Learning 的前世今生

image-20210717110127426

image-20210717111502228

step1:define a set of function

定义一个function 这个function其实就是neural network

每个Logistic Regression 的weights 和 biases 的参数合在一起就是Network parameter

我们可以用不同的方法来连接这些Neuron,这些是需要你手动设计的。

最常见的连接方式:Fully Connect Feedforward Network

你把你的Neuron 排成一排一排的

image-20210717115539339

一个Neuron 就是一个一个function:input vector,output vector

Given network structure ,define a function set

image-20210717151153719

所谓的Deep = Many hidden layers

network 的运作我们常常会用Matrix Operation来表示。

image-20210717152409683

image-20210717152512665

image-20210717154504520

所有的 weight 集合起来当做Matrix W;bias 全部集合起来 当做Matrix b

所有的input x接起来当做 matrix x(因为可以用GPU 对矩阵运算加速)

例:手写辨识问题

image-20210720173055716

image-20210720173243857

接下来你要做的事情就是用Gradient Descent去找一组参数,去挑一个最适合拿来做手写数字辨识的function。

之前在做Logistic Regression 或是Linear Regression的时候我们对model 的structure 是没用什么好设计的。

但对neural network 来说我们现在唯一的constraint 只能是input 是256维,output 是10维。但中间要有一个hidden layer ,每个hidden layer 要有多少的neuron 是需要自己决定的。

• Q: How many layers? How many neurons for each layer?

Trial and Error + Intuition

找network structure 这件事,并没有那么容易,有时是蛮困难的甚至需要一些domain knowledge。

所有从非DL 方法到 DL的方法,我并不认为machine learning真的变得比较简单。而是我们把一个问题转化成另一个问题。

不是deep的model,我们要得到好的结果,往往需要做Feature Engineering ,然后找一组好的feature。

但是如果今天是做deep learning 的时候,你往往不需要找到好的feature。

比如说做影像辨识的时候,你可以直接把pixel丢进去

但是今天的deep learning 制造了一个新的问题,你需要design network 的structure,所以你的问题由如何抽feature 转化成怎么抽 怎么design network structure。

deep learning 是不是真的好用就取决于你觉得那一个问题比较容易

个人觉得如果是语音辨识或是影像辨识的话design network structure可能比Feature Engineering 容易。因为虽然说我们人都会看,听,但这件事情它太过潜意识了,他离我们的意识的层次太远,我们其实不知道我们到底是怎么做语音辨识这件事情。所以对人来说你要抽一组好的feature 让机器可以很方便的用linear的方法做语音辨识这件事对人来说很难,因为根本不知道好的feature 长什么样子。所以还不如design一个 network structure让machine 自己去找出好的feature,这件事情反而变得比较容易。(对人类而言,语音辨识这个函数是黑盒封装的)

有没有听过一个说法:“ deep learning 在NLP上面performance 没有那么好”

用在NLP上,进步量似乎没有影像辨识那么惊人,甚至很多NLP的人,现在仍然认为deep learning 不见得那么work。

我自己的猜想这个原因可能是,人在做NLP这件事情,比如文字处理来说人是比较强的。比如说让你设计一个rule detect 说一篇document它是正面的情绪,还是负面的情绪,你可以列一些正面情绪的词汇跟负面情绪的词汇然后看这个document里面,正面情绪的词汇出现的百分比,你可能就可以得到一个不错的结果。

NLP这个task,对人来说比较容易设计rule 往往可以给你一个还不错的结果。

就长久而已,因为文字处理其实也是很困难的问题,有很多细小的资讯可能是人自己都不知道的,所有就长久而言,deep learning 让machine自己去学这件事还是可以占到一些优势的。只是一下子,眼下看起来进步没有那么显著,它跟传统方法比起来的差异就没有那么惊人。

• Q: Can the structure be automatically determined?
• E.g. Evolutionary Artificial Neural Networks

• Q: Can we design the network structure?

​ Convolutional Neural Network(一个特殊的接法)

step2:goodness of function

在neural network里面怎么定义一组参数它的好坏呢?

计算y和 target 之间的cross entropy

image-20210720182308008

把所有data的cross entropy全部sum起来得到一个total loss,L

image-20210720182431558

step3:pick the best function

然后在function set里面找一个function,它可以minimize这个total loss或者是找一组

network的parameter θ*

怎么找这个 θ* 呢?

用的方法就是Gradient Descent。

image-20210720183042420

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

与 或

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值