web-dev-qa-db-ja.com

tf.contrib.slimを手動でtf 2.0にアップグレードする

pythonを使用するコードに問題がありますtf.contrib.slim機能。2.0にtensorflowにアップグレードすると機能しなくなります。

以下をtf 2.0にアップグレードするにはどうすればよいですか。

import tensorflow.contrib.slim as slim
import tensorflow.contrib.slim.nets

# ...

net = slim.conv2d(
    inp, 
    dim,
    [3, 3],
    rate=1,
    normalizer_fn=slim.layer_norm,
    activation_fn=lrelu,
    scope='g_' + str(width) + '_conv1') 

ありがとう。

2
Jonas G.

それでうまくいくかもしれません:

net = tf.keras.layers.Conv2D(filters=dim, kernel_size=3, name='g_' + str(width) + '_conv1')(inp)
net = tf.keras.layers.BatchNormalization()(net)
net = tf.keras.layers.LeakyReLU()(net)

スリムを使用すると、コンボリューションレイヤーの後にどのバッチの正規化とアクティブ化を行うかを指定するオプションがあります。 2.0では実行できないため、2つの異なるレイヤーでどの正規化とアクティブ化を行うかを正確に指定する必要があります。

0
Ohad Meir