課程回顧-Neural Network & Deep Learning

爲何深度學習發展了

數據

  • 對於小量數據來講,神經網絡表現比線性迴歸、SVM
  • 對於大量數據來講神經網絡比SVM好
  • 對於大量數據來講,大的網絡比小的網絡好
  • 因爲電腦的大量使用數據愈來愈多

計算

  • GPUs.
  • Powerful CPUS.
  • Distributed computing.
  • ASICs

算法發展

Relu等新的技巧提出html

Logistics Regression

y = s i g m o i d ( w T x ) git

Numpy

reshape的計算代價很小,因此你不肯定數據維度的時候均可以放上

一些解決潛在bug的trick

  • 若是不設置向量的維度,那麼默認值會是(m,),而且轉置操做不會使用,你必須將其reshape成(m,1)。儘可能不要使用rank=1的矩陣
  • 計算前嘗試檢驗維度,如assert(a.shape == (5,1))
  • 若是發現了rank=1的矩陣,作reshape

作了歸一化以後梯度降低更易收斂

激活函數

  • tanh在隱層使用會比較好(mean=0)
  • sigmoid和tanh會存在問題,由於當值極小或極大會形成梯度接近零
  • relu更加經常使用
  • 選擇激活函數的準則:若是你的分類結果是0和1,用sigmoid,不然用relu

對於權值要作隨機初始化

爲何要深層網絡

Reference

https://github.com/mbadry1/DeepLearning.ai-Summarygithub



相關文章
相關標籤/搜索