2018/12/14 Deep Neural Network Training(1)

Loss Function and Optimization

  • 损失函数
  • 如何优化
  1. 线性分类器
    损失函数是量化的评估线性分类器的标准。损失函数是优化的目标。
    损失函数的定义:
    当初始化W很小的时候,S–>0,此时L–>c-1(其中c代表类的个数)
    线性代数
    有限字长
    当我们在训练集上训练出来的分类器训练的很好的时候,这时候会出现一个过拟合效应,原因是我们的训练集并没有很好的表现现实中的状况。接下来就需要避免过拟合问题。
  • 加入约束项(惩罚函数)
    lambda 属于一个超参数。
    奥卡姆剃刀
    复杂性带来的多样式是一些系统适应环境的一种方式,比如人、人类社会
  • SoftMax 分类器:评分–>概率问题
    这个score有了一个信息学意义,即概率分布
    一个单样本问题转化为
  • 整合起来如何找到最好的W?

最优化方法

  1. 随机搜索(random search),就是暴力搜索
    超级非凸不一定是不连续的–>2
  2. 梯度下降
    超参数 step-size 步长
  3. 随机梯度下降
    为了缩减计算量,我们认为样本空间足够的大,我们在其中随机的抽取一个小的BATCH。N is a minibatch

BP

链式法则
upstream gradient & local gradient(这个是要会算的)
分支处的梯度可以直接加起来,因为其是线性的
雅克比

problem

  • KL散度的定义
    在这里插入图片描述
    在这里插入图片描述
  • accurate 是如何算出来的以及loss是如何算出来的????
  • 一些计算概念

训练过程

  • 一次性准备:激活函数,数据预处理,权重初始化,正则化,梯度
  • 训练过程:参数更新,超参数(网络参数选项)
  • 验证评估:模型整合

激活函数

all kinds of activation functions
sigmoid and tanh 有啥区别呢????

  • sigmoid 很容易饱和,杀死梯度;只能往一个方向走(this is also why you want zero-mean data);计算量稍大
    数值计算是一个很重要的问题
  • TANH
  • relu :simple 但是存在无法更新的区域
  • leaky relu :keep properties ; Prelu;这两个的表现很好
  • Elu :不会选
  • Maxout 计算量太大,不会选

数据预处理

  • preprocess the data
    零均值(随机采样,一个很重要的思路;统计意义上,一幅图像的均值和很多张图像的均值相差不大 )和归一化为了更快地收敛
    PCA and Whitening(图像一般不会再做了)

假定小的随机数:值不停地在衰减,所以每一层衰减的很快。求和抵消不了指数衰减(?)。bp传不回去
比较大的随机数:产生震荡,所有的层都几近饱和,所以梯度也会为0
xavier初始化(激活函数是tanh),每个数除以根号下N ,求方差,后面还会有平方项
用relu的话/根号下2n

batch normalization

训练过程

  • double check that the loss is reasonable
  • learning rate 选择要使loss减小
  • accurate 是如何算出来的以及loss是如何算出来的???
  • 1e-3—1e-5之间学习率经验值

random search vs. grid search

  • 大量的依赖于经验
  • update and values的比值约为0.01经验值

掌握它的思路是发现新问题的一个重要因素

满足自私的唯一的办法就是利他

猜你喜欢

转载自blog.csdn.net/the__future/article/details/84997531