Kerasで次の単語を予測するプログラムを書こうとしています。
参考にしている動画はこちら
(https://www.youtube.com/watch?v=VB7bbFIEAhk)
で、以下のように実行しました(14:00あたりです)
python
1from tensorflow.keras.callbacks import ModelCheckpoint 2 3checkpoint = ModelCheckpoint("next_words.h5", monitor = 'loss', verbose = 1, save_best_only = True) 4model.compile(loss = "BinaryCrossentropy", optimizer=Adam(learning_rate = 0.001)) 5model.fit(X, y, epochs = 70, batch_size = 64, callbacks = [checkpoint])
すると、以下のようなエラーが出ます。
python
1Epoch 1/70 2--------------------------------------------------------------------------- 3ValueError Traceback (most recent call last) 4<ipython-input-56-27002549d528> in <module>() 5 3 checkpoint = ModelCheckpoint("next_words.h5", monitor = 'loss', verbose = 1, save_best_only = True) 6 4 model.compile(loss = "BinaryCrossentropy", optimizer=Adam(learning_rate = 0.001)) 7----> 5 model.fit(X, y, epochs = 70, batch_size = 64, callbacks = [checkpoint]) 8 91 frames 10/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/func_graph.py in autograph_handler(*args, **kwargs) 11 1145 except Exception as e: # pylint:disable=broad-except 12 1146 if hasattr(e, "ag_error_metadata"): 13-> 1147 raise e.ag_error_metadata.to_exception(e) 14 1148 else: 15 1149 raise 16 17ValueError: in user code: 18 19 File "/usr/local/lib/python3.7/dist-packages/keras/engine/training.py", line 1021, in train_function * 20 return step_function(self, iterator) 21 File "/usr/local/lib/python3.7/dist-packages/keras/engine/training.py", line 1010, in step_function ** 22 outputs = model.distribute_strategy.run(run_step, args=(data,)) 23 File "/usr/local/lib/python3.7/dist-packages/keras/engine/training.py", line 1000, in run_step ** 24 outputs = model.train_step(data) 25 File "/usr/local/lib/python3.7/dist-packages/keras/engine/training.py", line 860, in train_step 26 loss = self.compute_loss(x, y, y_pred, sample_weight) 27 File "/usr/local/lib/python3.7/dist-packages/keras/engine/training.py", line 919, in compute_loss 28 y, y_pred, sample_weight, regularization_losses=self.losses) 29 File "/usr/local/lib/python3.7/dist-packages/keras/engine/compile_utils.py", line 201, in __call__ 30 loss_value = loss_obj(y_t, y_p, sample_weight=sw) 31 File "/usr/local/lib/python3.7/dist-packages/keras/losses.py", line 141, in __call__ 32 losses = call_fn(y_true, y_pred) 33 File "/usr/local/lib/python3.7/dist-packages/keras/losses.py", line 245, in call ** 34 return ag_fn(y_true, y_pred, **self._fn_kwargs) 35 File "/usr/local/lib/python3.7/dist-packages/keras/losses.py", line 1932, in binary_crossentropy 36 backend.binary_crossentropy(y_true, y_pred, from_logits=from_logits), 37 File "/usr/local/lib/python3.7/dist-packages/keras/backend.py", line 5247, in binary_crossentropy 38 return tf.nn.sigmoid_cross_entropy_with_logits(labels=target, logits=output) 39 40 ValueError: `logits` and `labels` must have the same shape, received ((None, 10) vs (None, 10, 10)).
文献もなく、途方に暮れています。どなたかお詳しい方、ご教授いただけると幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。