L2正則化的TensorFlow實現

2021-08-17 10:01:49 字數 477 閱讀 2121

tensorflow實現l2正則化

**:tensorflow的最優化方法tf.train.gradientdescentoptimizer包辦了梯度下降、反向傳播,所以基於tensorflow實現l2正則化,並不能按照上節的演算法直接干預權重的更新,而要使用tensorflow方式:

tf.add_to_collection(tf.graphkeys.weights, w_2)

tf.add_to_collection(tf.graphkeys.weights, w_3)

regularizer = tf.contrib.layers.l2_regularizer(scale=5.0/50000)

loss = (tf.reduce_mean(

tf.nn.sigmoid_cross_entropy_with_logits(labels=y_,

logits=z_3)) + reg_term)

對上述**的一些說明:

L1正則化和L2正則化

為了降低過擬合風險,需要控制模型複雜度,自然想到減少引數個數,但是這個問題不易直接解決,可以通過放寬條件控制。新增優化條件 這會使引數條件空間有明顯的凸角,這些突出點顯然會成為聯合優化時的最優解,但同時這些這些凸點中又會有較多的0值 由其限制條件可見,凸點都在座標軸上 因此l1範數會更易得到稀疏解,...

L1正則化和L2正則化

l1標準化與l2標準化 參考 l1 l2標準化及其python 實現 我們知道,正則化的目的是限制引數過多或者過大,避免模型更加複雜。l1 與 l2 解的稀疏性 以二維情況討論,上圖左邊是 l2 正則化,右邊是 l1 正則化。從另乙個方面來看,滿足正則化條件,實際上是求解藍色區域與黃色區域的交點,即...

L1正則化和L2正則化

摘自 深度學習 l1正則化和l2正則化 在機器學習中,我們非常關心模型的 能力,即模型在新資料上的表現,而不希望過擬合現象的的發生,我們通常使用正則化 regularization 技術來防止過擬合情況。正則化是機器學習中通過顯式的控制模型複雜度來避免模型過擬合 確保泛化能力的一種有效方式。如果將模...