2017-06-27 1 views
2

Je travaille sur un réseau neuronal convolutif qui nécessite que certaines parties des poids du noyau soient non-malléables. tf.nn.conv2d (x, W) prend une variable entraînable W comme poids. Comment puis-je rendre certains éléments de W impossibles à former?Tensorflow: Masquage de variables pouvant être entraînées

+0

Voulez-vous dire que vous voulez des éléments individuels d'un poids matrice pour être non-entrainable? Ou vous voulez que certains de vos nœuds soient non-entraînables? Je présume que ce n'est pas un problème que l'abandon résoudrait? – JCooke

+0

Je veux dire que je veux que les éléments individuels d'une matrice de poids ne puissent pas être entraînés. –

Répondre

1

Peut-être que vous pourriez avoir votre poids trainable W1, un masque M indiquant où les variables trainable sont, et une matrice de poids constant/untrainable W2, et utiliser

W = tf.multiply(W1, tf.cast(M, dtype=W1.dtype)) + tf.multiply(W2, tf.cast(tf.logical_not(M), dtype=W2.dtype))