导入tensorflow-gpu 1.13.1版本的错误——模块找不着

1、问题描述:

Traceback (most recent call last):
  File "D:\Anaconda3\envs\tensorflowModel\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "D:\Anaconda3\envs\tensorflowModel\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in
    _pywrap_tensorflow_internal = swig_import_helper()
  File "D:\Anaconda3\envs\tensorflowModel\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:\Anaconda3\envs\tensorflowModel\lib\imp.py", line 243, in load_module
    return load_dynamic(name, filename, file)
  File "D:\Anaconda3\envs\tensorflowModel\lib\imp.py", line 343, in load_dynamic
    return _load(spec)
ImportError: DLL load failed: 找不到指定的模块。

22512: ModuleNotFoundError: No module named   tensorflow.python._pywrap_tensorflow_internal'

2、我的环境是:

     2.1、python3.6+ Cuda10.0+Window10+Anconda x64  3.6

     2.2    GPU版本信息:NVIDIA GeForce MX150  (通过下图位置查看版本信息)

导入tensorflow-gpu 1.13.1版本的错误——模块找不着_第1张图片

3、解决办法:

注意:安装GPU版本需要预先安装CUDA、CUDNN、visual studio 这里给出别人的教程

<我在这里就已经解决了我的问题了。是由于没有安装CUDNN,我以为安装了CUDA就不需要安装CUDNN然而并不是。>

https://blog.csdn.net/weixin_43907422/article/details/88896928

第一步:视情况而定!首先conda search --info tensorflow-gpu 查看你安装的tensorflow-gpu的版本适合的环境

在这里我就贴出几个常用的:

导入tensorflow-gpu 1.13.1版本的错误——模块找不着_第2张图片

分别是tensorflow-gpu1.11.0,tensorflow-gpu1.12.0,tensorflow-gpu1.13.1

有以下几个可能错误原因:

1、将protobuf降级到3.6.0会给我带来这个错误,不知道谁应该支持这个修复,protobuf或tensorflow ...:
tensorflow-gpu 1.13.1有要求protobuf> = 3.6.1,但你有protobuf 3.6 .0这是不相容的。

2、硬件是否支持AVX。可能也会导致产生DLL错误!

下面提供个代码检查是否支持AVX。

from cpuid import *

def _is_set(id, reg_idx, bit):
    regs = cpuid(id)

    if (1 << bit) & regs[reg_idx]:
        return "Yes"
    else:
        return "--"

print("Vendor ID         : %s" % cpu_vendor())
print("CPU name          : %s" % cpu_name())
print("Microarchitecture : %s%s" % cpu_microarchitecture())
print("Vector instructions supported:")
print("SSE       : %s" % _is_set(1, 3, 25))
print("SSE2      : %s" % _is_set(1, 3, 26))
print("SSE3      : %s" % _is_set(1, 2, 0))
print("SSSE3     : %s" % _is_set(1, 2, 9))
print("SSE4.1    : %s" % _is_set(1, 2, 19))
print("SSE4.2    : %s" % _is_set(1, 2, 20))
print("SSE4a     : %s" % _is_set(0x80000001, 2, 6))
print("AVX       : %s" % _is_set(1, 2, 28))
print("AVX2      : %s" % _is_set(7, 1, 5))
print("BMI1      : %s" % _is_set(7, 1, 3))
print("BMI2      : %s" % _is_set(7, 1, 8))

这就是我得到的:

Vendor ID         : GenuineIntel
CPU name          : Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz        
Microarchitecture : kabylake
Vector instructions supported:
SSE       : Yes
SSE2      : Yes
SSE3      : Yes
SSSE3     : Yes
SSE4.1    : Yes
SSE4.2    : Yes
SSE4a     : --
AVX       : Yes
AVX2      : Yes
BMI1      : Yes
BMI2      : Yes

从输出结果可以看出是支持AVX2、AVX的。

硬件不支持是无法解决!

3、产生了:Could not find 'msvcp140.dll'错误

ImportError: Could not find 'msvcp140.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. You may install this DLL by downloading Visual C++ 2015 Redistributable Update 3 from this URL: https://www.microsoft.com/en-us/download/details.aspx?id=53587
  • 对于已在system32文件夹中具有此DLL的计算机,它很好,因为系统路径优先于用户路径。
  • 对于没有这个DLL的机器,而不是丢失了TF崩溃的TF,它崩溃了一些神秘的_pywrap_tensorflow_internal...错误,很可能是因为在scipy中找到的DLL与Microsoft Visual C ++ 2015 Redistributable Update 3 RC安装的最新版本不兼容。解决方法是简单地安装Microsoft Visual C ++ 2015 Redistributable 64位。这样,DLL安装在system32文件夹中,优先于scipy安装的文件夹。

4、我在环境变量中添加了“C:\ Program Files \ NVIDIA Corporation \ NvStreamSrv”到我的PATH。也有可能解决的DLL缺失的问题!

……

最后祝大家好运!解决问题安装成功!

下面提供几个网址:

网址1:https://github.com/tensorflow/tensorflow/issues/22512 关于 tensorflow-gpu安装没有pywrap_tensorflow_internal模块的问题解决,也许你能发现新的方法

网址2:https://www.tensorflow.org/install/errors  这是tf的官网安装,出错的解决办法都可在这里找找看看!

网址3:https://blog.csdn.net/weixin_43907422/article/details/88896928 关于tensorflow-gpu/cpu 1.13.1 的安装教程!

你可能感兴趣的:(Python,Tensorflow,DLL缺失错误解决)