(解決方法)tensorflow ImportError: DLL load failed: 找不到指定的模塊。

pip install tensorflow後,運行import tensorflow 沒有錯誤,但是運行測試程序,

import tensorflow as tf
h = tf.constant("hell,TF")
sess=tf.Session()
print(sess.run(h))

出現錯誤如下:

Traceback (most recent call last):
  File "E:/機器學習/untitled/tsfl.py", line 1, in <module>
    import tensorflow as tf
  File "D:\Pycharm\Python3.6\lib\site-packages\tensorflow\__init__.py", line 24, in <module>
    from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
  File "D:\Pycharm\Python3.6\lib\site-packages\tensorflow\python\__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "D:\Pycharm\Python3.6\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 74, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "D:\Pycharm\Python3.6\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "D:\Pycharm\Python3.6\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "D:\Pycharm\Python3.6\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "D:\Pycharm\Python3.6\lib\imp.py", line 243, in load_module
    return load_dynamic(name, filename, file)
  File "D:\Pycharm\Python3.6\lib\imp.py", line 343, in load_dynamic
    return _load(spec)
ImportError: DLL load failed: 找不到指定的模塊

查詢後發現了一些方案,沒有成功。比如裝一個Anaconda; 要裝個visual studio2017……

還有如下網址的解決方案

https://www.cnblogs.com/native-hadoop/p/7724481.html

在官網下載Microsoft Visual C++ 2015 Redistributable Update 3

https://www.microsoft.com/en-us/download/details.aspx?id=53587

結果發現電腦已經裝好Microsoft Visual C++ 2015 Redistributable Update 3 ,依舊沒有解決問題。

查閱Tensorflow官網,按照windows的正確配置方法來進行

https://www.tensorflow.org/install/source_windows

 

經過測試的構建配置

原安裝爲win10 + python3.6 + CUDA10 + cudnnv7.5.0 + tensorflow1.13.1 + NVIDIA GTX 1050 檢查後發現出現該問題的原因爲版本不匹配。

解決:修改爲win10 + python3.6 + CUDA9.0 + cudnn v7.3 + tensorflow1.12.0

1.首先在NVIDIA 控制面板中查看顯卡 支持的CUDA版本,具體方法參考《Windows系統查看CUDA版本號》,地址如下https://www.jianshu.com/p/d3b9419a0f89(如果打不開NVIDIA控制面板,可重裝驅動)

 

本電腦支持CUDA9.2及以下版本

故需重裝CUDA,卸載方法參考(親測CUDA10依然有效) https://blog.csdn.net/xuefengyang666/article/details/79422012

CUDA9.0 和 對應cudnn的安裝包及安裝方法參考https://blog.csdn.net/xuefengyang666/article/details/79422012

2.修改tensorflow的版本(不修改可能也有效)

pip install tensorflow-gpu==1.12.0

版本匹配後,再執行測試程序則能正常運行,問題解決。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章