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

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

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

Chainerは、国産の深層学習フレームワークです。あらゆるニューラルネットワークをPythonで柔軟に書くことができ、学習させることが可能。GPUをサポートしており、複数のGPUを用いた学習も直感的に記述できます。

Python 3.x

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

Q&A

0回答

4525閲覧

計算途中(実行中)にKernel died , restarting というメッセージが表示されてしまいます。

ozawa

総合スコア6

Chainer

Chainerは、国産の深層学習フレームワークです。あらゆるニューラルネットワークをPythonで柔軟に書くことができ、学習させることが可能。GPUをサポートしており、複数のGPUを用いた学習も直感的に記述できます。

Python 3.x

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

0グッド

0クリップ

投稿2016/12/06 17:41

###前提・実現したいこと
Python 3.5.2で、ある大量計算を行ったところ、計算途中に下記のメッセージが大量(6回くらい?)に出て、Variable explorerがリセットされました。
これは計算が重すぎて起きているのでしょうか。
それとも他のどこかに問題がある可能性はあるのでしょうか。

使用しているパソコンのスペックは下記のとおりです。
プロセッサ:2.5 GHz Intel Core i5
メモリ:8 GB 1600 MHz DDR3
起動ディスク:Macintosh HD
グラフィックス:Intel HD Graphics 4000 1536 MB

計算しようとしている内容は補足に書きました。
回答よろしくお願い致します。
###発生している問題・エラーメッセージ

Kernel died, restarting

###該当のソースコード

model = chainer.FunctionSet(conv1=F.Convolution2D(4, 1, (101,150)), # 入力4枚、出力1枚、フィルタサイズ101*150ピクセル conv2=F.Convolution2D(1, 1, (101,150)), # 入力1枚、出力1枚、フィルタサイズ101*150ピクセル conv3=F.Convolution2D(1, 1, (21,30)), # 入力1枚、出力1枚、フィルタサイズ21*30ピクセル conv4=F.Convolution2D(1, 1, (5,8)), # 入力1枚、出力1枚、フィルタサイズ5*8ピクセル l1=F.Linear(55, 3), # 入力55ユニット、出力3ユニット l2=F.Linear(3, 3)) # 入力3ユニット、出力3ユニット def forward(x_data, y_data, train=True): x, t = chainer.Variable(x_data), chainer.Variable(y_data) h = F.max_pooling_2d(F.relu(model.conv1(x)), 2) h = F.max_pooling_2d(F.relu(model.conv2(h)), 2) h = F.max_pooling_2d(F.relu(model.conv3(h)), 2) h = F.max_pooling_2d(F.relu(model.conv4(h)), 2) h = F.dropout(F.relu(model.l1(h)), train=train) y = model.l2(h) if train: return F.softmax_cross_entropy(y, t) else: return F.accuracy(y, t) optimizer = optimizers.Adam() optimizer.setup(model) #%% # 訓練ループ start_time = time.clock() #for epoch in range(1, n_epoch + 1): # print ("epoch: %d" % epoch) # perm = np.random.permutation(N) for i in range(1): x = np.asarray(X_train) yv = np.asarray(y_train) optimizer.zero_grads() loss = forward(x, yv) loss.backward() optimizer.update() xt = Variable(X_test, volatile='on') yy = model.fwd(xt) ans = yy.data nrow, ncol = ans.shape ok = 0 for i in range(nrow): cls = np.argmax(ans[i,:]) print (ans[i,:], cls) if cls == y_test[i]: ok += 1 print (ok, "/", nrow, " = ", (ok * 1.0)/nrow) end_time = time.clock() print( end_time - start_time)

###試したこと
似たような計算式(ソースコードも)で、計算量を少なくしたら実行することができました。

###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報
Chainerを使って、畳み込みニューラルネットワークの実装(画像認識)を行おうと思っています。
自分で集めた795×492ピクセルの画像データを使って、畳み込みニューラルネットワークによる画像認識を行おうと思ったのですが、実行すると計算中に上記のメッセージが出てVariable explorerがリセットされます。

Mnistと呼ばれるデータセットを使って、手書き文字認識の畳み込みニューラルネットワークによる実装はできました。

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

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

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

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問