初入机器学习,正确安装tensorflow、python版本匹配(Import:DLL load failed等问题解决)

    学习python,机器学习(maching-lerning)、深度学习(deep-learning)等概念也是耳熟能详。我最近从新手开始学习maching-learning知识,不过课程偏向基本的理论知识,所以有时感觉枯燥无味,于是我试着实践代码,对于从零开始的小白来说,理论到实践要解决的第一个问题居然是各种第三方包的安装成功和测试顺利。这次让我意识到不仅要写好程序,还有编译运行环境、程序的各种依赖满足。“万事俱备,只欠东风”也许说的就是这样吧。

下面记录自己采坑过程,希望能够对初学者有所帮助。

在anaconda环境下python3.7安装tensorflow2.0出现错误
  ImportError:DLL load failed:找不到指定的模块
初入机器学习,正确安装tensorflow、python版本匹配(Import:DLL load failed等问题解决)_第1张图片

import tensorflow

使用import测试一直出现Import:DLL load failed:找不到指定模块和Failed to load the native Tensorflow runtime的问题。

一、1次尝试:卸载重装
    根据提示去官网查看tensorflow安装错误,并不能很好解决,这明显不是办法,我想这是自己安装包的时候出现错误,于是卸载已安装的tensorflow(要把相关文件清除干净)。

本想着这次应该好了,毕竟之前检查了一遍,环境变量、测试程序都是正确的。而这安装过程真是漫长,以为刚才不小心删错文件,出现不可预知错误(运行超时)。
在这里插入图片描述
二、2次尝试,版本问题
1、解决超时问题
    寻求方法,我们可以使用国内清华镜像进行下载,速度很快,一样可以安装python第三方包。

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

2、解决tensorflow与python版本匹配问题
初入机器学习,正确安装tensorflow、python版本匹配(Import:DLL load failed等问题解决)_第2张图片
重复一次安装过程,测试代码,查看资料之后都是关于tensorflow的cpu、gpu版本一些问题,gpu加速程序会跑的快,它会使用电脑gpu资源,但是觉得有点复杂,还要安装其他支撑(cuda、cudnn),而且考虑各种版本兼容问题。
    所以,我们不涉及gpu相关内容,开始学跑程序数据不会很多,决定先使用cpu版本,我想刚才应该安装时候没注意tf版本,接下来再试一次。
    这个过程出现的错误,是因为python中各种包版本兼容问题,有些包依赖其他包,比如许多要有numpy这个科学数据计算的重要包,兼容问题很重要,上图是错误提示,可供参考。

三、3次尝试:关键(解决问题!)
重点:python3.7+tensorflow2.0 不兼容,另外,现在tf2.0发布还不完善,不是很普遍可能存在潜在问题。
方法:降低版本,使用python3.6+tensorflow1.x,后来终于成功了!

测试代码如下:

import tensorflow as tf
hello = tf.constant('hello,tensorflow')
sess=tf.Session()
print(sess.run(hello))
sess.close()

测试成功:打印出:b’hello,tensorflow’

☆总结:

  1. 每一步安装都要仔细,版本兼容、安装路径、环境变量都要正确。
  2. tensorflow与numpy等各种包版本兼容问题,加上python环境。成功测试版本为python3.6+tensorflow1.x
  3. 卸载重装有时能够解决问题,但这不是做好办法,需要提前了解具体情况,以免无法回滚之前操作。

环境搭建好了,接下来会开启机器学习之门,学习分享会记录下来,与大家共同学习进步!

你可能感兴趣的:(机器学习/深度学习,tensorflow,python,机器学习,pycharm)