zoukankan      html  css  js  c++  java
  • CV第七课 正则化/迁移学习

    总结:优化是为了 improve the training_loss; Regularization/ Ensembling is improving the performance on the test data; Transfer learning 使得在样本量小的时候也可以使用CNN。

    Regulazation

      一般用 batch Normalization 就够了,特别在的深层神经网络中帮助收敛; 不足的时候用dropout or other 

    Dropout

      1. 在全连接层时使用,随机使一半的元素为0; 在卷积层时,随机使得一些通道(channel)的值为0

      2. 这是为了防止一些 features' co-adaption 比如可能学习到 特征组合  毛+爪子+胡须 ,dropout之后就需要用零散的特征来判断。

      3. Dropout 与 BN 都是通过引入一定的 随机性 或 noise 来达到 防止overfitting的效果

       所以一般只用BN就可以了,不用DropOut;但实际上,DropOut有参数p 调节,效果更好

    np.random.rand是做 [ 0,1 ) 的均匀分布

    train

    Test Time 

    Data Augmentation 数据增强 

      通过增加了样本量,与引入了一定的随机性来对抗Overfitting

      1.  翻转

      2. 旋转

      3 .拉伸

     

    Transfer Learning:

      1. 如果感兴趣的dataset非常小 < 1M , 可以找一个相似的大dataset (ImageNet)预训练,如下图

      2. 再运用在你的dataset上学习

  • 相关阅读:
    基于组的策略(GBP)开启新型网络设计时代
    49 多维数组(二维数组)
    48 查找
    47 排序
    46 字符数组和字符串
    45 数组应用
    44 数组
    43 C语言宏定义
    42 预处理命令
    41 函数封装练习
  • 原文地址:https://www.cnblogs.com/ChevisZhang/p/12952125.html
Copyright © 2011-2022 走看看