私はケラスに小さなニューラルネットワークを持っています。ケラスロスとトレーニング中のval_loss
contextTrain, contextTest, utteranceTrain, utteranceTest = train_test_split(context, utterance, test_size=0.1, random_state=1)
model = Sequential()
model.add(LSTM(input_shape=contextTrain.shape[1:], return_sequences=True, units=300, activation="sigmoid", kernel_initializer="glorot_normal", recurrent_initializer="glorot_normal"))
model.add(LSTM(return_sequences=True, units=300, activation="sigmoid", kernel_initializer="glorot_normal", recurrent_initializer="glorot_normal"))
model.compile(loss="cosine_proximity", optimizer="adam", metrics=["accuracy"])
model.fit(contextTrain, utteranceTrain, epochs=5000, validation_data=(contextTest, utteranceTest), callbacks=[ModelCheckpoint("model{epoch:02d}.h5", monitor='val_acc', save_best_only=True, mode='max')])
コンテキストおよび発話は、例えば、形状のnumpyの配列であります(100,15,300)。 fisrt LSTMのInput_shapeは(15,300)でなければなりません。
私は何が起こったのかわからないけど、突然、それは訓練中に負の損失とval_lossを出力します。以前は陽性だった(約0.18程度)。 90個のサンプルについて
列車、10個のサンプル
エポック1/5000 90/90 [上有効======================= =======] - 5秒52ms /ステップ - 損失:-0.4729 - acc:0.0059 - val_loss:-0.4405 - val_acc:0.0133
エポック2/5000 90/90 [====== ========================] - 2Sの18ms /ステップ - 損失:-0.5091 - ACC:0.0089 - val_loss:-0.4658 - val_acc:0.0133
エポック5000分の3 90/90 [==============================] - 2Sの18ms /ステップ - 損失:-0.5204 - acc:0.0170 - val_loss:-0.4829 - val_acc:0.0200
エポック4/5000 90/90 [================== ==========] - 2Sの20ミリ秒/ステップ - 損失:-0.5296 - ACC:0.0244 - val_loss:-0.4949 - val_acc:0.0333
エポック5000分の5 90/90 [=== ===========================] - 2Sの20ミリ秒/ステップ - 損失:-0.5370 - ACC:0.0422 - val_loss:-0.5021 - val_acc :0.0400
それは何を意味するのでしょうか?考えられる理由は何ですか?
は、任意の返信
答えが役に立つと分かった場合は、親切に受け入れてください - ありがとう – desertnaut