質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Keras

Kerasは、TheanoやTensorFlow/CNTK対応のラッパーライブラリです。DeepLearningの数学的部分を短いコードでネットワークとして表現することが可能。DeepLearningの最新手法を迅速に試すことができます。

Pythonista

Pythonistaは、iOS上でPythonプログラミングができる開発アプリです。さらに、Pythonの関数・変数などを自動で補完する便利なコードエディタや、PythonスクリプトをiOS上で多様な形で機能させる各種機能も内包しています。

解決済

Kerasを使ったモデルの予測において、同じ設定でも実行のたびに結果が変わるのはなぜ?

kougakaka
kougakaka

総合スコア22

Keras

Kerasは、TheanoやTensorFlow/CNTK対応のラッパーライブラリです。DeepLearningの数学的部分を短いコードでネットワークとして表現することが可能。DeepLearningの最新手法を迅速に試すことができます。

Pythonista

Pythonistaは、iOS上でPythonプログラミングができる開発アプリです。さらに、Pythonの関数・変数などを自動で補完する便利なコードエディタや、PythonスクリプトをiOS上で多様な形で機能させる各種機能も内包しています。

1回答

0リアクション

0クリップ

272閲覧

投稿2022/07/07 11:56

Kerasを用いてディープラーニングのモデルの結果について質問があります。
データ、学習パラメータなどの設定を変えずに、同じプログラムを実行すると、
実行のたびに出力結果(損失関数値や精度値)が変わるのはKerasの仕様なのでしょうか。
またその理由について教えていただければ幸いです。

↓プログラムの一部。プログラムを最初から実行するたびに、結果が変わります。

python

# プログラムの一部 # モデルの定義 model = Sequential() # 隠れ層1 # model.add(Dense(H, activation='relu', input_shape=(D,), kernel_initializer=initializers.RandomNormal(mean=0.0, stddev=0.05, seed=None))) model.add(Dense(H, activation='relu', input_shape=(D,))) # 隠れ層2 # model.add(Dense(H, activation='relu', kernel_initializer='random_uniform')) model.add(Dense(H, activation='relu')) # 出力層 model.add(Dense(num_classes, activation='softmax')) # コンパイル sgd = optimizers.SGD(lr=0.01) # 初期値 model.compile(loss = 'categorical_crossentropy', optimizer = sgd, metrics=['accuracy']) # 学習 batch_size = 512 # 繰り返し回数 nb_epoch = 100 # モデルの学習 history1 = model.fit( x_train, y_train_ohe, batch_size = batch_size, epochs = nb_epoch, verbose = 1, validation_data = (x_test, y_test_ohe))

〇実行結果その1
Epoch 100/100
118/118 [==============================] - 1s 5ms/step - loss: 0.1431 - accuracy: 0.9593 - val_loss: 0.1521 - val_accuracy: 0.9562

〇実行結果その2
Epoch 100/100
118/118 [==============================] - 1s 5ms/step - loss: 0.1441 - accuracy: 0.9593 - val_loss: 0.1518 - val_accuracy: 0.9551

上記のように同じ設定で実行しても結果が変わります。

以下のような質問にはリアクションをつけましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

リアクションが多い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

kougakaka

2022/07/11 06:03

理解しました。 ありがとうございます!

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Keras

Kerasは、TheanoやTensorFlow/CNTK対応のラッパーライブラリです。DeepLearningの数学的部分を短いコードでネットワークとして表現することが可能。DeepLearningの最新手法を迅速に試すことができます。

Pythonista

Pythonistaは、iOS上でPythonプログラミングができる開発アプリです。さらに、Pythonの関数・変数などを自動で補完する便利なコードエディタや、PythonスクリプトをiOS上で多様な形で機能させる各種機能も内包しています。