zoukankan      html  css  js  c++  java
  • 2.1 深度学习的实用层面

    1. 训练集,验证集,测试集

      当数据量较小时,可以分别占60%, 20%, 20%,当数据集规模很大时,验证集和测试集所占比例可以很小。

    2.偏差和方差

     2.1判断

      我们可以根据训练集误差,判断数据拟合情况,判断是否有偏差问题。之后根据验证集误差,判断方差是否过高。

     2.2 解决

      针对高偏差(欠拟合):使用更复杂网络,花费更多时间训练算法或者是用优化算法,(或者采用新架构)

      针对高方差(过拟合):采用更多数据,正则化,(新架构)

    3.正则化

    3.1 正则化预防过拟合的原因

      正则化参数λ变大时,W变小,Z变小,激活函数会相对呈线性,整个神经网络会计算离线性网络近的值(神经网络会变简单,所以避免了过拟合)。

    3.2 正则化方法

      L2

      L1

      dropout

      在不便引入新的数据时将图片翻转或剪裁(数据扩增),

      early stopping。绘制验证集误差

    4.梯度消失与梯度爆炸

    5. 作业

      1. 初始化参数:不同的初始化参数导致不同结果

      将所有W初始化为0 ,这将导致"break symmetry", 例子中识别准确率50%

      所有参数随机初始化并将规模*10,导致梯度下降缓慢,迭代次数过多,识别准确率83%

      He初始化(推荐激活函数为relu的层使用),在随机初始化的规模设为sqrt(2./layers_dims[l-1]),识别准确率99%

      Xavier initialization :sqrt(1./layers_dims[l-1])  

      2.正则化

      2.1 L2正则化

      正向:$$J_{regularized} = small underbrace{-frac{1}{m} sumlimits_{i = 1}^{m} large{(}small y^{(i)}logleft(a^{[L](i)} ight) + (1-y^{(i)})logleft(1- a^{[L](i)} ight) large{)} }_ ext{cross-entropy cost} + underbrace{frac{1}{m} frac{lambda}{2} sumlimits_lsumlimits_ksumlimits_j W_{k,j}^{[l]2} }_ ext{L2 regularization cost} ag{2}$$

      反向:$frac{d}{dW} ( frac{1}{2}frac{lambda}{m}  W^2) = frac{lambda}{m} W$

      2.2 dropout步骤:

      正向:1. 随机初始化D矩阵 

          2.将D转换为0/1矩阵

          3.将 $A^{[1]}$ 转换为 $A^{[1]} * D^{[1]}$

          4.将 $A^{[1]}$ 除以 `keep_prob`

      反向:1. dAl = dAl * Dl

          2. dAl = dAl / keep_prob

     3.梯度检测

      梯度检测的步骤:

      1.初始化:将梯度和参数化成向量

      2.针对每一个参数循环

         计算$J^{+}_i$

    1.Set $ heta^{+}$ to `np.copy(parameters_values)`
    2. Set $ heta^{+}_i$ to $ heta^{+}_i + varepsilon$
    3. Calculate $J^{+}_i$ using to `forward_propagation_n(x, y, vector_to_dictionary(`$ heta^{+}$ `))

        计算$J^{-}_i$

        计算梯度

      3.得到一个梯度序列,与原梯度对比

  • 相关阅读:
    运行Jmeter时,出现java.util.prefs.WindowsPreferences <init>
    Jmeter下载安装及JDK安装
    面试常用-基础理论(五)
    Fiddler (六) 最常用的快捷键
    Fiddler (五) Mac下使用Fiddler
    Fiddler (四) 实现手机的抓包
    Fiddler (三) Composer创建和发送HTTP Request
    Fiddler (二) Script 用法
    Web调试工具——Fiddler介绍
    生成任意位数随机字符串
  • 原文地址:https://www.cnblogs.com/cs-zzc/p/11373172.html
Copyright © 2011-2022 走看看