前提・実現したいこと
https://github.com/DmitryUlyanov/texture_netsにアップロードされているstyle transferを自分のローカル環境で実行したいです。
当方luaを初めて触るため、見当違いな内容で合ったら申し訳ありません
発生している問題・エラーメッセージ
README.MDに従って、リポジトリ内のtrain.luaの実行を試みました
(私自身のユーザネームの箇所は(muyname)で置換しています)
(以下のtrain2014は訓練用画像のデータセットが入っているフォルダを、the_scream.jpgはスタイル画像をそれぞれ指しています)
(base) (myname)@(myname):~/texture_nets-master$ th train.lua -data train2014 -style_image the_scream.jpg /home/(myname)/torch/install/bin/luajit: /home/(myname)/torch/install/share/lua/5.1/trepl/init.lua:389: module 'cudnn' not found:No LuaRocks module found for cudnn no field package.preload['cudnn'] no file '/home/(myname)/.luarocks/share/lua/5.1/cudnn.lua' no file '/home/(myname)/.luarocks/share/lua/5.1/cudnn/init.lua' no file '/home/(myname)/torch/install/share/lua/5.1/cudnn.lua' no file '/home/(myname)/torch/install/share/lua/5.1/cudnn/init.lua' no file './cudnn.lua' no file '/home/(myname)/torch/install/share/luajit-2.1.0-beta1/cudnn.lua' no file '/usr/local/share/lua/5.1/cudnn.lua' no file '/usr/local/share/lua/5.1/cudnn/init.lua' no file '/home/(myname)/.luarocks/lib/lua/5.1/cudnn.so' no file '/home/(myname)/torch/install/lib/lua/5.1/cudnn.so' no file '/home/(myname)/torch/install/lib/cudnn.so' no file './cudnn.so' no file '/usr/local/lib/lua/5.1/cudnn.so' no file '/usr/local/lib/lua/5.1/loadall.so' stack traceback: [C]: in function 'error' /home/(myname)/torch/install/share/lua/5.1/trepl/init.lua:389: in function 'require' train.lua:5: in main chunk [C]: in function 'dofile' ...aoru/torch/install/lib/luarocks/rocks/trepl/scm-1/bin/th:150: in main chunk [C]: at 0x00405d50
エラー内容をググってみると、どうやらモジュールのcudnnが見つからないために起こるエラーなので、luarocks install cudnnでインストールを試みました
(base) (myname)@(myname):~/texture_nets-master$ luarocks install cudnn Installing https://raw.githubusercontent.com/torch/rocks/master/cudnn-scm-1.rockspec... Using https://raw.githubusercontent.com/torch/rocks/master/cudnn-scm-1.rockspec... switching to 'build' mode Missing dependencies for cudnn: cutorch (中略) -- Configuring incomplete, errors occurred! See also "/tmp/luarocks_cutorch-scm-1-2088/cutorch/build/CMakeFiles/CMakeOutput.log". See also "/tmp/luarocks_cutorch-scm-1-2088/cutorch/build/CMakeFiles/CMakeError.log". Error: Failed installing dependency: https://raw.githubusercontent.com/torch/rocks/master/cutorch-scm-1.rockspec - Build error: Failed building.
CMakeError.logは以下です。(CMakeOutput.logは行数が500行程度と非常に多いため質問欄への記載は控えております)
Performing C SOURCE FILE Test HAS_LUAL_SETFUNCS failed with the following output: Change Dir: /home/(myname)/torch/extra/cutorch/build/CMakeFiles/CMakeTmp Run Build Command:"/usr/bin/make" "cmTC_8afe6/fast" /usr/bin/make -f CMakeFiles/cmTC_8afe6.dir/build.make CMakeFiles/cmTC_8afe6.dir/build make[1]: ディレクトリ '/home/(myname)/torch/extra/cutorch/build/CMakeFiles/CMakeTmp' に入ります Building C object CMakeFiles/cmTC_8afe6.dir/src.c.o /usr/bin/cc -I/home/(myname)/torch/install/include -std=c99 -Werror=implicit-function-declaration -DHAS_LUAL_SETFUNCS -o CMakeFiles/cmTC_8afe6.dir/src.c.o -c /home/(myname)/torch/extra/cutorch/build/CMakeFiles/CMakeTmp/src.c /home/(myname)/torch/extra/cutorch/build/CMakeFiles/CMakeTmp/src.c: In function ‘main’: /home/(myname)/torch/extra/cutorch/build/CMakeFiles/CMakeTmp/src.c:5:20: error: ‘luaL_setfuncs’ undeclared (first use in this function) long i = sizeof(&luaL_setfuncs); ^ /home/(myname)/torch/extra/cutorch/build/CMakeFiles/CMakeTmp/src.c:5:20: note: each undeclared identifier is reported only once for each function it appears in CMakeFiles/cmTC_8afe6.dir/build.make:65: ターゲット 'CMakeFiles/cmTC_8afe6.dir/src.c.o' のレシピで失敗しました make[1]: *** [CMakeFiles/cmTC_8afe6.dir/src.c.o] エラー 1 make[1]: ディレクトリ '/home/(myname)/torch/extra/cutorch/build/CMakeFiles/CMakeTmp' から出ます Makefile:126: ターゲット 'cmTC_8afe6/fast' のレシピで失敗しました make: *** [cmTC_8afe6/fast] エラー 2 Source file was: #include <lauxlib.h> int main() { long i = sizeof(&luaL_setfuncs); return 0; }
試したこと
train.luaのソースコードを見てみると、はじめの数行で
lua
1require 'torch' 2require 'nn' 3require 'image' 4require 'optim' 5require 'cudnn' 6 7require 'src/utils' 8require 'src/descriptor_net' 9require 'src/preprocess_criterion'
と定義されていたため、(pythonで言うところのimport ○○に該当?)luarocks installで上から順にインストールしていったところcudnn以外は正常にインストールできたようでした。
また、https://github.com/torch/cunn/issues/113で似たような内容の質問があったのですが、CUDAのインストールで同様にエラーが出てきてしまい躓いている状況です
補足情報(FW/ツールのバージョンなど)
実行環境:ubuntu16.04 LTS
最低限として、thコマンドでTorch7は実行できます
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/11/21 09:43
2019/11/21 10:10
2019/11/21 11:09
2019/11/21 11:32
2019/11/25 06:09
2019/11/25 10:31