実現したいこと
https://github.com/crmaximo/VAEGAN/blob/master/VAEGAN.py
のコードを動かそうとしています。
githubのVAEGANコードをtensorflow.kerasに変えて動かしてみようとしています。
AttributeError: 'KerasTensor' object has no attribute 'train_on_batch'
該当のソースコード
python3.9.7,
1 2def discriminator(kernel, filter, rows, columns, channel): 3 X = Input(shape=(rows, columns, channel)) 4 5 model = Conv2D(filters=filter*2, kernel_size=kernel, strides=2, padding='same')(X) 6 model = LeakyReLU(alpha=0.2)(model) 7 model = Conv2D(filters=filter*4, kernel_size=kernel, strides=2, padding='same')(model) 8 model = BatchNormalization(epsilon=1e-5)(model) 9 model = LeakyReLU(alpha=0.2)(model) 10 model = Conv2D(filters=filter*8, kernel_size=kernel, strides=2, padding='same')(model) 11 model = BatchNormalization(epsilon=1e-5)(model) 12 model = LeakyReLU(alpha=0.2)(model) 13 model = Conv2D(filters=filter*8, kernel_size=kernel, strides=2, padding='same')(model) 14 15 dec = BatchNormalization(epsilon=1e-5)(model) 16 dec = LeakyReLU(alpha=0.2)(dec) 17 dec = Flatten()(dec) 18 dec = Dense(1, activation='sigmoid')(dec) 19 20 output = keras.Model([X], [dec, model]) 21 return output 22 23dataset.shape=(2000,64,64,3) 24rows = 64 25columns = 64 26channel = 3 27X = Input(shape=(rows, columns, channel)) 28 29D = discriminator(5, 32, rows, columns, channel) 30D.compile(optimizer=SGDop, loss='mse') 31D_true, F_true = D(X) 32 33DlossTrue = D_true.train_on_batch(dataset, np.ones((batch_size, 1)))
D_trueがModelになっていないのでtrain_on_batchできないのでしょうか?

下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
また依頼した内容が修正された場合は、修正依頼を取り消すようにしましょう。