搜索
查看: 3288|回复: 3

python模块numpy+mkl调用函数错误

[复制链接]

3

主题

24

帖子

161

积分

一级会员

Rank: 2

积分
161
发表于 2017-12-16 08:54:37 | 显示全部楼层 |阅读模式
本帖最后由 messias 于 2017-12-16 08:56 编辑

  1. import console;
  2. console.open();
  3. import py;
  4. py.appendPath("\lib");     //lib文件夹里复制了numpy+mkl

  5. var pyCode=/**
  6. from numpy import array, random, dot
  7. random.seed(1)
  8. weights = 2 * random.random((3, 1)) - 1  #3*1矩阵
  9. outputs = array([[0, 1, 1, 0]])          #1*4矩阵
  10. print(weights)
  11. print("================")
  12. print(outputs)
  13. print("================")
  14. print(dot(weights,outputs))    #这行报错,提示"Cannot load mkl_intel_thread.dll"
  15. **/
  16. py.exec(pyCode);
  17. console.pause(true);
复制代码


完整错误提示:Intel MKL FATAL ERROR: Cannot load mkl_intel_thread.dll
估计是加载dll路径问题,尝试着把mkl_intel_thread.dll复制到工程根目录和ide根目录也不行,不知道问题在哪儿。
论坛关于py导入模块的帖子都翻了一下,没有找到相关的信息,考虑到在py在矩阵运算和图像处理方面非常便利,对于我们学习神经网络有很大帮助。。。。
回复

使用道具 举报

187

主题

2540

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
14031
发表于 2017-12-16 10:17:56 | 显示全部楼层
到aardio扩展库里打开python解释器目录,
Python模块的DLL都放在 ~\lib\py\.res\DLLs 这个目录下面,
这个目录结构跟python官方版本是一样的。这些是使用Python的基础知识,你在aardio论坛上当然翻不到,我们这又不是python论坛对吧?!

python的模块安装会有些麻烦,可能会依赖一堆其他的模块或DLL,
只要同一python版本下能用的模块,在aardio里也可以用的。如果模块安装遇到问题,最好是求助你那个Python模块作者会好一些。

python3扩展库使用的是3.4官方版本。
python2扩展库使用的是2.7 VC10编译版本,模块必须到我提供网盘地址下载,这些在范例里写的很详细,要使用VC90编译版本需要带上VC90安装程序 - 所以aardio没有用这个版本。

其他版本的Python,可以试试自己替换,替换出了问题自己克服一下。

我也知道用好python对你们多么的有意义,但哪个编程语言又不是“很有意义”呢,所以自己克服一下吧,没有什么比自己解决自己的问题更有意义了。




回复

使用道具 举报

3

主题

24

帖子

161

积分

一级会员

Rank: 2

积分
161
 楼主| 发表于 2017-12-16 10:45:26 | 显示全部楼层
Jacen.He 发表于 2017-12-16 10:17
到aardio扩展库里打开python解释器目录,
Python模块的DLL都放在 ~\lib\py\.res\DLLs 这个目录下面,
这 ...

感谢这么快速的回复,放到~\lib\py\.res\DLLs 这个目录下面,也还是报同样的错误。

我再尝试一下其它办法吧。
回复

使用道具 举报

2

主题

10

帖子

186

积分

一级会员

Rank: 2

积分
186
发表于 2017-12-16 23:47:09 | 显示全部楼层
我将numpy模块放到~\lib\py\.res\DLLs目录下没有问题。我下载的是numpy-1.13.3+mkl-cp34-cp34m-win32.whl这个包。
我的环境是win10 64bit。
思路是
  1. import console;
  2. console.log("");
  3. import py;
  4. py.run();
  5. console.pause(true);
复制代码

看到python 3.4.3 on win32 就下载相对应的包。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|站长邮箱|aardio.com|aardio官方社区 ( 皖ICP备09012014号 )

GMT+8, 2019-11-15 20:13 , Processed in 0.062500 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表