正則化:
一般可以通過減少特征或者懲罰不重要特征的權重來緩解過擬合,但是我們通常不知道該懲罰那些特征的權重,而正則化就是幫助我們懲罰特征權重的,即特征的權重也會成為模型的損失函數一部分。可以理解為, 為了使用某個特征,我們需要付出loss的代價(loss為給權重weight加的一個loss,正則化),除非這個特征非常有效,否賊就會被loss上的增加覆蓋效果。這樣我們就能篩選出最有效的特征,減少特征權重防止過擬合。
一般來說,L1正則會制造稀疏的特征,大部分無用特征的權重會被至為0,
L2正則會讓特征的權重不過大,使得特征的權重比較平均。 tensorflow.nn.l2_loss(weight) 就是計算weight的L2 loss。
數據增強:
tf.image.random_flip_left_right(): 照片的隨機水平翻轉 //這里沒寫參數列表,下同
tf.random_crop():從照片中隨機剪切一塊照片
tf.image.random_brightness():設置隨機的亮度
tf.image.random_contrast():設置隨機的對比度
tf.image.per_image_whitening():對數據進行標准化(對數據減去均值,除去方差,保證數據0平均, 方差為1)
