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

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

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

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

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

1回答

2894閲覧

keras model.fitでエラーが出る

mamagauro

総合スコア12

Keras

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

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2018/12/26 06:50

前提・実現したいこと

https://keras.io/ja/getting-started/sequential-model-guide/
の中にある『MLPを用いた二値分類:』
を写経してみましたがmodel.fit(・・・)まで進んだところでエラーが出てしましました。

発生している問題・エラーメッセージ

#<入力コード> import numpy as np from keras.models import Sequential from keras.layers import Dense, Dropout # 疑似データの生成 x_train = np.random.random((1000, 20)) y_train = np.random.randint(2, size=(1000, 1)) x_test = np.random.random((100, 20)) y_test = np.random.randint(2, size=(100, 1)) model = Sequential() model.add(Dense(64, input_dim=20, activation='relu')) model.add(Dropout(0.5)) model.add(Dense(64, activation='relu')) model.add(Dropout(0.5)) model.add(Dense(1, activation='sigmoid')) model.compile(loss='binary_crossentropy', optimizer='rmsprop', metrics=['accuracy']) model.fit(x_train, y_train, epochs=20, batch_size=128) #<以下エラー表示> Epoch 1/20 --------------------------------------------------------------------------- InternalError Traceback (most recent call last) <ipython-input-7-2f241b0bd634> in <module> 1 model.fit(x_train, y_train, 2 epochs=20, ----> 3 batch_size=128) ~\AppData\Local\Continuum\anaconda3\envs\keras_tensor_py36_clone\lib\site-packages\keras\engine\training.py in fit(self, x, y, batch_size, epochs, verbose, callbacks, validation_split, validation_data, shuffle, class_weight, sample_weight, initial_epoch, steps_per_epoch, validation_steps, **kwargs) 1037 initial_epoch=initial_epoch, 1038 steps_per_epoch=steps_per_epoch, -> 1039 validation_steps=validation_steps) 1040 1041 def evaluate(self, x=None, y=None, ~\AppData\Local\Continuum\anaconda3\envs\keras_tensor_py36_clone\lib\site-packages\keras\engine\training_arrays.py in fit_loop(model, f, ins, out_labels, batch_size, epochs, verbose, callbacks, val_f, val_ins, shuffle, callback_metrics, initial_epoch, steps_per_epoch, validation_steps) 197 ins_batch[i] = ins_batch[i].toarray() 198 --> 199 outs = f(ins_batch) 200 outs = to_list(outs) 201 for l, o in zip(out_labels, outs): ~\AppData\Local\Continuum\anaconda3\envs\keras_tensor_py36_clone\lib\site-packages\keras\backend\tensorflow_backend.py in __call__(self, inputs) 2713 return self._legacy_call(inputs) 2714 -> 2715 return self._call(inputs) 2716 else: 2717 if py_any(is_tensor(x) for x in inputs): ~\AppData\Local\Continuum\anaconda3\envs\keras_tensor_py36_clone\lib\site-packages\keras\backend\tensorflow_backend.py in _call(self, inputs) 2673 fetched = self._callable_fn(*array_vals, run_metadata=self.run_metadata) 2674 else: -> 2675 fetched = self._callable_fn(*array_vals) 2676 return fetched[:len(self.outputs)] 2677 ~\AppData\Local\Continuum\anaconda3\envs\keras_tensor_py36_clone\lib\site-packages\tensorflow\python\client\session.py in __call__(self, *args, **kwargs) 1397 ret = tf_session.TF_SessionRunCallable( 1398 self._session._session, self._handle, args, status, -> 1399 run_metadata_ptr) 1400 if run_metadata: 1401 proto_data = tf_session.TF_GetBuffer(run_metadata_ptr) ~\AppData\Local\Continuum\anaconda3\envs\keras_tensor_py36_clone\lib\site-packages\tensorflow\python\framework\errors_impl.py in __exit__(self, type_arg, value_arg, traceback_arg) 524 None, None, 525 compat.as_text(c_api.TF_Message(self.status.status)), --> 526 c_api.TF_GetCode(self.status.status)) 527 # Delete the underlying status object from memory otherwise it stays alive 528 # as there is a reference to status from this from the traceback due to InternalError: Blas GEMM launch failed : a.shape=(128, 20), b.shape=(20, 64), m=128, n=64, k=20 [[{{node dense_1/MatMul}} = MatMul[T=DT_FLOAT, _class=["loc:@training/RMSprop/gradients/dense_1/MatMul_grad/MatMul_1"], transpose_a=false, transpose_b=false, _device="/job:localhost/replica:0/task:0/device:GPU:0"](_arg_dense_1_input_0_0/_37, dense_1/kernel/read)]] [[{{node loss/mul/_61}} = _Recv[client_terminated=false, recv_device="/job:localhost/replica:0/task:0/device:CPU:0", send_device="/job:localhost/replica:0/task:0/device:GPU:0", send_device_incarnation=1, tensor_name="edge_604_loss/mul", tensor_type=DT_FLOAT, _device="/job:localhost/replica:0/task:0/device:CPU:0"]()]]

取り合えず
batch_size=128)
が問題なのかと読み取ったのですがどう対処すればよいのか分かりません。
ご教示いただけます様お願いいたします。

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tiitoi

2018/12/26 06:55

batch_size=16 とか小さい値にしたらどうなりますか?
mamagauro

2018/12/26 07:02

回答いただきありがとうございます。 batch_size=16 に変更して走らせてみましたが、同じエラーが表示がされました。
tiitoi

2018/12/26 07:08

実行環境は GPU でしょうか? nvidia-smi でメモリの空きがあるか確認してください
quickquip

2018/12/26 07:11

GPUのメモリを全部使って計算している別のプロセスがあるのでは。
mamagauro

2018/12/26 07:25

お世話になります。ググって下記結果を得ましたが 8036MiB / 8192MiB で空きが無いという事なのでしょうか?空きが問題なのであれば空きの増やし方をご教示いただけないでしょうか? +-----------------------------------------------------------------------------+ | NVIDIA-SMI 385.54 Driver Version: 385.54 | |-------------------------------+----------------------+----------------------+ | GPU Name TCC/WDDM | Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | |===============================+======================+======================| | 0 GeForce GTX 1070 WDDM | 00000000:01:00.0 On | N/A | | N/A 52C P2 38W / N/A | 8036MiB / 8192MiB | 0% Default | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: GPU Memory | | GPU PID Type Process name Usage | |=============================================================================| | 0 620 C+G Insufficient Permissions N/A | | 0 1076 C ...envs\keras_tensor_py36_clone\python.exe N/A | | 0 5244 C+G ...2.0_x64__8wekyb3d8bbwe\WinStore.App.exe N/A | | 0 5696 C+G Insufficient Permissions N/A | | 0 6168 C+G ...tEdge_8wekyb3d8bbwe\MicrosoftEdgeCP.exe N/A | | 0 6596 C+G Insufficient Permissions N/A | | 0 7220 C+G ...tEdge_8wekyb3d8bbwe\MicrosoftEdgeCP.exe N/A | | 0 7724 C+G ...tEdge_8wekyb3d8bbwe\MicrosoftEdgeCP.exe N/A | | 0 8860 C+G ...tEdge_8wekyb3d8bbwe\MicrosoftEdgeCP.exe N/A | | 0 8864 C+G ...ekyb3d8bbwe\Office16\OfficeHubWin32.exe N/A | | 0 9268 C ...envs\keras_tensor_py36_clone\python.exe N/A | | 0 10356 C+G ...dows.Cortana_cw5n1h2txyewy\SearchUI.exe N/A | | 0 11048 C+G Insufficient Permissions N/A | | 0 11484 C ...envs\keras_tensor_py36_clone\python.exe N/A | | 0 12224 C+G ...t_cw5n1h2txyewy\ShellExperienceHost.exe N/A | | 0 13404 C ...envs\keras_tensor_py36_clone\python.exe N/A | | 0 13532 C+G ...tEdge_8wekyb3d8bbwe\MicrosoftEdgeCP.exe N/A | | 0 14604 C+G ...tEdge_8wekyb3d8bbwe\MicrosoftEdgeCP.exe N/A | | 0 14960 C+G ...oftEdge_8wekyb3d8bbwe\MicrosoftEdge.exe N/A | | 0 16324 C+G C:\Windows\explorer.exe N/A | +-----------------------------------------------------------------------------+
quickquip

2018/12/26 07:28

レイアウトが崩れないように質問に追記した方がいいですね。
mamagauro

2018/12/26 07:50

申し訳ありません。うまくレイアウトできませんでした。
tiitoi

2018/12/26 07:53

解決したようですが、空きがないということを意味していますね。 Notebook で実行しているのであれば、一旦 Notebook を Shutdown しないとずっとメモリを専有したままになります。
mamagauro

2018/12/26 07:55

ありがとうございます。原因が分からずかなりの時間を費やしていましたので大変助かりました。ご教示ありがとうございました。
guest

回答1

0

自己解決

nvidia-smiでメモリの空きが無いことが確認できた為
PCを再起動後、再度走らせてみたら最後まで動くようになりました。
アドバイスいただき大変ありがとうございました。

投稿2018/12/26 07:51

編集2018/12/26 07:53
mamagauro

総合スコア12

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問