天天看點

神經網絡訓練細節part1(上)

訓練神經網絡

神經網絡的曆史

  • 1960年左右,弗蘭克·羅森布拉特設計了感覺機
  • 1960年,威德羅和霍夫制造出了适應性神經元,他們将這些感覺機整合成了一個多層次的感覺機網絡
  • 1986年,神經網絡再次有了一個突破性進展,論文中第一次用清晰的公式很好的闡述了反向傳播概念,提出損失函數,讨論了反向傳播、梯度下降等問題。
  • 2006年,第一次建立了神經網絡的模型,同時提出了深度學習
  • 2010年,神經網絡有了非常大的成果,尤其是在語音合成方面。

激活函數

我們之前提到了激活函數有很多種,下面将着重介紹一下這些函數。

sigmoid

sigmoid有3個問題

  • 在圖像的飽和區域,梯度消失
  • sigmoid函數的輸出不是關于原點中心對稱的
  • 相比其他激活函數,指數運算相對耗時

tanh

  • 區間在[-1,1]
  • 中心對稱
  • 梯度消失

relu

  • 激活時,不會産生梯度彌散問題,即梯度不會為0
  • 計算高效
  • 收斂速度快
  • 不是關于原點中心對稱
  • 當x小于0時,同樣有梯度消失問題

Leaky relu

  • 不會發生梯度消失問題
  • 計算高效

ELU

  • 繼承了RELU的所有優點

資料處理

  • 歸一化
  • 零中心化
  • PCA
  • 圖像常用下面方法
神經網絡訓練細節part1(上)

權重初始化

  • small random numbers(gaussian with zero mean and 1e-2 standard deviation)

    w = 0.01*np.random.randn(D,H)