shogun-toolbox的使用方法和问题总结
2016-09-30 15:39
363 查看
本以为在上一次安装入坑之后能顺利使用,没想到在matlab接口具体使用时又出现了问题,接下来我将一一进行说明.
上一篇shogun-toolbox的安装与问题总结
1. matlab接口示例代码生成
这块内容一定是shogun的新手遇到的头疼的问题,找不到切入点,没办法模仿示例代码进行改写.一开始我也是摸不着头脑,后来就看shogun包中的doc/cookbook,但发现里面压根没有关于matlab的示例.所有又在包中到处寻找,直到看到了example/README.md和example/generate_documented.sh文件才算找到了希望.
生成示例代码,我们可以在examples/documented/matlab_static下看到示例代码.
2. matlab示例代码执行问题处理
在matlab中执行示例代码时,遇到了如下错误:
然后,再次执行示例代码,这次又出现了新的问题.
这次又是与
首先,我们需要定位系统中的
我们可以发现系统中的
然后,重新启动matlab运行
其实,我在github上都提问了https://github.com/shogun-toolbox/shogun/issues/3453,但是自己解决掉了问题,属于自问自答型.
参考:
https://github.com/shogun-toolbox/shogun/wiki/INSTALL
https://github.com/shogun-toolbox/shogun/issues/2344
http://blog.csdn.net/woyaopojie1990/article/details/28426013
https://github.com/shogun-toolbox/shogun/issues/3453
上一篇shogun-toolbox的安装与问题总结
1. matlab接口示例代码生成
这块内容一定是shogun的新手遇到的头疼的问题,找不到切入点,没办法模仿示例代码进行改写.一开始我也是摸不着头脑,后来就看shogun包中的doc/cookbook,但发现里面压根没有关于matlab的示例.所有又在包中到处寻找,直到看到了example/README.md和example/generate_documented.sh文件才算找到了希望.
$ cd shogun/examples $ ./generate_documented.sh
生成示例代码,我们可以在examples/documented/matlab_static下看到示例代码.
2. matlab示例代码执行问题处理
在matlab中执行示例代码时,遇到了如下错误:
>> svr_regression Invalid MEX-file '/home/slave/kernel/shogun410/build/src/interfaces/matlab_static/sg.mexa64': libshogun.so.17: cannot open shared object file: No such file or directory Error in svr_regression (line 6) sg('set_features', 'TRAIN', traindat);
matlab无法找到
libshogun.so.17文件. 在github上找到了相关的问题https://github.com/shogun-toolbox/shogun/issues/2344,shogun的维护者说是没有配置
LD_LIBRARY_PATH变量导致的(其实这个问题在安装教程里就提到过https://github.com/shogun-toolbox/shogun/wiki/INSTALL#general,只是我当时没有注意).
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:path_to_shogun/src/shogun/
然后,再次执行示例代码,这次又出现了新的问题.
>> svr_regression Invalid MEX-file '/home/slave/kernel/shogun410/build/src/interfaces/matlab_static/sg.mexa64': /usr/local/MATLAB/R2012b/bin/glnxa64/../../sys/os/glnxa64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /usr/local/lib/libshogun.so.17) Error in svr_regression (line 6) sg('set_features', 'TRAIN', traindat);
这次又是与
libstdc++.so.6相关的问题,在网上搜索了相关的解决方案,最终解决.
首先,我们需要定位系统中的
libstdc++.so.6所在位置 ,然后我们将该位置的
libstdc++.so.6文件链接到matlab中.
$ locate libstdc++.so.6 /home/slave/Downloads/matlab/bin/glnxa64/libstdc++.so.6 /home/slave/Downloads/matlab/bin/glnxa64/libstdc++.so.6.0.13 /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.19 /usr/local/MATLAB/R2012b/sys/os/glnxa64/libstdc++.so.6 /usr/local/MATLAB/R2012b/sys/os/glnxa64/libstdc++.so.6.0.13 /usr/local/MATLAB/R2012b/toolbox/sldv/sldv/polyspace-dvo/lib/x86-linux/libstdc++.so.6 /usr/local/MATLAB/R2012b/toolbox/sldv/sldv/polyspace-dvo/lib/x86-linux/libstdc++.so.6.0.13 /usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.19-gdb.py
我们可以发现系统中的
libstdc++.so.6文件路径在
/usr/lib/x86_64-linux-gnu/libstdc++.so.6.将matlab中的文件备份,做链接.
$ sudo mv /usr/local/MATLAB/R2012b/sys/os/glnxa64/libstdc++.so.6 /usr/local/MATLAB/R2012b/sys/os/glnxa64/libstdc++.so.6.bak $ sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /usr/local/MATLAB/R2012b/sys/os/glnxa64/libstdc++.so.6
然后,重新启动matlab运行
svr_regression示例代码.得到一下信息,并绘制出图像.OK,大功告成.
libshogun (x86_64/v4.1.0_2016-2-10_18:33262400) Copyright (C) 1999-2009 Fraunhofer Institute FIRST Copyright (C) 1999-2011 Max Planck Society Copyright (C) 2009-2011 Berlin Institute of Technology Copyright (C) 2012-2014 Soeren Sonnenburg, Sergey Lisitsyn, Heiko Strathmann, Viktor Gal, Fernando Iglesias et al Written (W) 1999-2012 Soeren Sonnenburg, Gunnar Raetsch et al. ( configure options: "TODO" compile flags: "-Wall -Wno-unused-parameter -Wformat -Wformat-security -Wparentheses -Wshadow -Wno-unknown-pragmas -Wno-deprecated -fopenmp -O3 -fexpensive-optimizations -frerun-cse-after-loop -fcse-follow-jumps -finline-functions -fschedule-insns2 -fthread-jumps -fforce-addr -fstrength-reduce -funroll-loops -mfpmath=sse" link flags: "-lpthread" ) ( seeding random number generator with 0 (seed size 256)) determined range for x in log(1+exp(-x)) is:37 )
其实,我在github上都提问了https://github.com/shogun-toolbox/shogun/issues/3453,但是自己解决掉了问题,属于自问自答型.
参考:
https://github.com/shogun-toolbox/shogun/wiki/INSTALL
https://github.com/shogun-toolbox/shogun/issues/2344
http://blog.csdn.net/woyaopojie1990/article/details/28426013
https://github.com/shogun-toolbox/shogun/issues/3453
相关文章推荐
- 《Winpcap的安装使用方法》及《winpcap开发包使用中的问题总结》
- android模拟按键问题总结[使用IWindowManager.injectKeyEvent方法]
- window.open()使用方法以及传参数的问题总结
- 使用js中的replace()方法问题总结
- 扫描仪使用过程中常见问题解决方法总结
- android模拟按键问题总结[使用IWindowManager.injectKeyEvent方法]
- Winpcap的安装使用方法和问题总结
- Android学习总结一:adb的使用、打电话、Button监听两种方法、发短信、ADT23.0.2版本兼容问题
- (转)window.open()使用方法以及传参数的问题总结
- 关于崩溃等问题的定位总结(使用qcc的一些方法来尝试)
- shogun-toolbox的安装与问题总结
- 关于WebView的总结2---使用方法及常见问题和解决方案汇总
- Unity中使用jar包方法及遇到的问题总结
- 使用split()遇到的问题和方法总结 ( Dangling meta character 和 多个分隔字符)
- android模拟按键问题总结[使用IWindowManager.injectKeyEvent方法](转)
- WebSphere使用问题总结之:OpeanJPA执行merge()方法时的异常
- C++中const的不同使用方法及问题总结
- [Nebula2]使用3dmax7,nmaxtoolbox导出模型到nebula2遇到的问题及解决方法
- 使用git时遇到的问题总结及处理方法
- 疑问: 方法重载到底是不是面向对象的多态性问题?(好几天了,做一下总结)