GPUでエラー
Pylearn2を使ったDeep Learningの計算を、Tesla K40でやるようになったら、突然こんなエラーが。

ERROR (theano.gof.opt): Optimization failure due to: local_gpu_softmax_with_bias
ERROR (theano.gof.opt): TRACEBACK:
ERROR (theano.gof.opt): Traceback (most recent call last):
File "/home/tsuji/anaconda/lib/python2.7/site-packages/theano/gof/opt.py", line 1286, in process_node
replacements = lopt.transform(node)
File "/home/tsuji/anaconda/lib/python2.7/site-packages/theano/sandbox/cuda/opt.py", line 999, in local_gpu_softmax_with_bias
gpu_sm = GpuSoftmaxWithBias()(gpu_from_host(x), gpu_from_host(b))
File "/home/tsuji/anaconda/lib/python2.7/site-packages/theano/gof/op.py", line 399, in __call__
node = self.make_node(*inputs, **kwargs)
File "/home/tsuji/anaconda/lib/python2.7/site-packages/theano/sandbox/cuda/basic_ops.py", line 128, in make_node
dtype=x.dtype)()])
File "/home/tsuji/anaconda/lib/python2.7/site-packages/theano/sandbox/cuda/type.py", line 68, in __init__
(self.__class__.__name__, dtype, name))
TypeError: CudaNdarrayType only supports dtype float32 for now. Tried using dtype float64 for variable None

調べて見ると、無視してもいいとのこと。たしかに、CPUで計算するとエラーが出ないのは、GPUがfloat32しか受付ないからだと思うんですが、気持ち悪いのでデータを作る時、PandasのDataFrameで精度を変更することに。こんな感じで、float64からfloat32に変更できます。

import numpy
d = data.astype(numpy.float32)
スポンサーサイト
【2015/03/17 14:05】 | 機械学習 | トラックバック(0) | コメント(0) | page top↑
<<HaskellをMacにインストール | ホーム | pylearn2のメモ>>
コメント
コメントの投稿














管理者にだけ表示を許可する

トラックバック
トラックバックURL
→http://tanopy.blog79.fc2.com/tb.php/124-d2ccaaf3
この記事にトラックバックする(FC2ブログユーザー)
| ホーム |