Task 4 李宏毅机器学习——深度学习

深度学习的三个步骤

1.define a set of function——该function即神经网络

2.goodness of function

3.pick the best function

神经网络的连接方式不同代表了不同的function

fully connect feedforward network(全连接前馈网络)

输入是一组向量,输出也是一组向量

一个网络如果已经设好了参数,就是一个function

如果仅仅是定义好了这个网络的结构(节点的连接方式),而没有设好参数,就是一个function set

有很多排(列)的神经元,每一排中有很多神经元

第一层的每个神经元会连接到第二层每个神经元上,第一层的神经元的输出会给到第二层上,成为第二层每个神经元的输入,

因为不同层级上的神经元之间两两都有连接,所以叫fully connect;

因为传递的方向是由第一层到第二层,第二层到第三层,所以叫feedforward

整个网络需要一组输入,这组输入是向量

对于第一层每个神经元来说,它的输入值就是输入向量的每一个维度

第L层的神经元的输出就是整个神经元的输出

除输入层,和最后一层输出层外,其余的都叫做隐藏层

deep:有很多隐藏层,所以叫deep learning

权重*输入值+bias,将这个向量输入到sigmoid函数或其他激励函数中求值

整理一下:将第一层所有神经元的权重集合起来形成w1;

bias集合起来形成b1;输入的向量为x;将第一层计算出来的结果记作a1,作为第二层的输入;σ是激励函数(如sigmoid函数)

一层一层计算下去直到算出最终的输出值y

神经网络的计算就是一连串的矩阵计算,可用GPU加速

神经网络在隐藏层做的工作可以看做是在做特征抽取的工作,能取代人工要做的特征工程工作,输入的一组特征经过隐藏层的sigmoid计算转换后,抽出一组特别好的特征,这组好的特征能够被一个简单的多层分类器分类好(即最后一层通过一个softmax function 实现)

手写识别的例子:

输入:手写图片,256*256像素的图片,用一个256*256的向量来表示,1:有墨水,0没有墨水

输出:是1-0这10个数字的可能性,是一个10维的矩阵

这个function set 中包含可以用来识别手写字的函数

网络的结构(network structure)需要好好设计使function set 能够包含好的function,例如需要考虑网络有几层,每层有几个神经元。

定义function的好坏:

计算  通过function计算得出的结果与预期结果之间的交叉熵(cross entropy)

对于所有的训练集中的数据,将所有数据的交叉熵加总,得到一个总的损失(total loss)

在function set中找出一个function使total loss最小

使用gradient descent的方法

可以用反向传播(backpropagation) 来计算微分

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值