本人研一小菜鸡一枚,因学习需要,需要安装tensorflow,但是我在安装的过程中心态差点就崩了,遇到了各种各样的问题,现发此博客,讲述我的悲惨经历,来帮助像我一样的小菜鸡脱坑!
1.一开始我下载了最新版本的tensorflow 1.12.0,但是它只支持python3.6版本及以下,所以我不得不卸载我的python 3.7,然后装上python 3.6。此链接为tensorflow 1.12.0版本的下载地址:https://pypi.org/project/tensorflow/1.12.0/#files,此链接为python 的各版本下载地址:https://www.python.org/downloads/windows/
2.在安装tensorflow的方法中个人建议使用pip进行安装,使用pip安装tensorflow非常的简单,以下是安装pip的方法:
①在python官网中下载安装pip的压缩包,这是下载的链接:https://pypi.org/search/?q=pip
②在安装pip之前先检查自己电脑的python有没有安装好,以及python的环境变量有没有设置好。打开控制台,输入python,如果出现以下情况,则代表已经安装完毕。关于python添加环境变量的方法这里就不赘述,不会的自己百度。
③把pip的压缩文件解压到任意文件中,并打开控制台,进入解压缩的路径(例如:E:\pip-18.1),输入下图中命令:
安装好之后,我们直接在命令行输入pip,同样会显示‘pip’不是内部命令,也不是可运行的程序,这是因为我们还没有给pip添加环境变量。按照之前介绍的添加环境变量的方法,我们在PATH最后添加:;E:\python 3.6.3\Scripts
安装完成后,在控制台输入命令:pip list
检测是否安装成功,若没有报错,且能看到pip和版本号,则pip已经安装成功了。
3.安装好pip后,我们直接在命令行输入:pip install tensorflow
当出现以下情况,则代表tensorflow正在安装,等待一会就可以安装完毕了最后我们检测tensnflow是否安装成功,直接在控制台中输入:pip list,如果出现下面这种情况则代表你的tensorflow完全安装成啦
但是别高兴得太早哦,我们可以导入tensorflow模块输入一段代码运行试一试,代码如下:
import tensorflow as tf
a = tf.constant([1.0,2.0],name='a')
b = tf.constant([2.0,3.0],name='b')
result = a+b
print(result)
如果你成功地输出了结果,那么恭喜你,你的tensorflow完全地安装成功啦!
也有很多人会出现如下的一大串错误,让人脑壳都疼!如:
ImportError: DLL load failed: 动态链接库(DLL)初始化例程失败
ModuleNotFoundError: No module named '_pywrap_tensorflow_internal'
Traceback (most recent call last):
File "C:\Users\aagarwal\AppData\Local\Programs\Python\Python35\lib\site-packag
es\tensorflow\python\pywrap_tensorflow_internal.py", line 18, in swig_import_hel
per
return importlib.import_module(mname)
File "C:\Users\aagarwal\AppData\Local\Programs\Python\Python35\lib\importlib\_
_init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 986, in _gcd_import
File "<frozen importlib._bootstrap>", line 969, in _find_and_load
File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 666, in _load_unlocked
File "<frozen importlib._bootstrap>", line 577, in module_from_spec
File "<frozen importlib._bootstrap_external>", line 906, in create_module
File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
ImportError: DLL load failed: The specified module could not be found.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\aagarwal\AppData\Local\Programs\Python\Python35\lib\site-packag
es\tensorflow\python\pywrap_tensorflow.py", line 41, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "C:\Users\aagarwal\AppData\Local\Programs\Python\Python35\lib\site-packag
es\tensorflow\python\pywrap_tensorflow_internal.py", line 21, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "C:\Users\aagarwal\AppData\Local\Programs\Python\Python35\lib\site-packag
es\tensorflow\python\pywrap_tensorflow_internal.py", line 20, in swig_import_hel
per
return importlib.import_module('_pywrap_tensorflow_internal')
File "C:\Users\aagarwal\AppData\Local\Programs\Python\Python35\lib\importlib\_
_init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ImportError: No module named '_pywrap_tensorflow_internal'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\aagarwal\AppData\Local\Programs\Python\Python35\lib\site-packag
es\tensorflow\__init__.py", line 24, in <module>
from tensorflow.python import *
File "C:\Users\aagarwal\AppData\Local\Programs\Python\Python35\lib\site-packag
es\tensorflow\python\__init__.py", line 51, in <module>
from tensorflow.python import pywrap_tensorflow
File "C:\Users\aagarwal\AppData\Local\Programs\Python\Python35\lib\site-packag
es\tensorflow\python\pywrap_tensorflow.py", line 52, in <module>
raise ImportError(msg)
ImportError: Traceback (most recent call last):
File "C:\Users\aagarwal\AppData\Local\Programs\Python\Python35\lib\site-packag
es\tensorflow\python\pywrap_tensorflow_internal.py", line 18, in swig_import_hel
per
return importlib.import_module(mname)
File "C:\Users\aagarwal\AppData\Local\Programs\Python\Python35\lib\importlib\_
_init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 986, in _gcd_import
File "<frozen importlib._bootstrap>", line 969, in _find_and_load
File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 666, in _load_unlocked
File "<frozen importlib._bootstrap>", line 577, in module_from_spec
File "<frozen importlib._bootstrap_external>", line 906, in create_module
File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
ImportError: DLL load failed: The specified module could not be found.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\aagarwal\AppData\Local\Programs\Python\Python35\lib\site-packag
es\tensorflow\python\pywrap_tensorflow.py", line 41, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "C:\Users\aagarwal\AppData\Local\Programs\Python\Python35\lib\site-packag
es\tensorflow\python\pywrap_tensorflow_internal.py", line 21, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "C:\Users\aagarwal\AppData\Local\Programs\Python\Python35\lib\site-packag
es\tensorflow\python\pywrap_tensorflow_internal.py", line 20, in swig_import_hel
per
return importlib.import_module('_pywrap_tensorflow_internal')
File "C:\Users\aagarwal\AppData\Local\Programs\Python\Python35\lib\importlib\_
_init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ImportError: No module named '_pywrap_tensorflow_internal'
Failed to load the native TensorFlow runtime.
See https://www.tensorflow.org/install/install_sources#common_installation_probl
ems
for some common reasons and solutions. Include the entire stack trace
above this error message when asking for help.
哈哈哈,毫无例外,笔者也遇到了这个问题,后来在网上搜了一下,原因竟然是我的机器太老了,处理器不支持最新的tensorflow 1.12.0(此时我的内心是崩溃的...),解决的方法有:
1.安装Visual Studio 2017配置环境,原因是Visual Studio 2017的环境正好适配最新版本的tensorflow
2.下载安装tensorflow 1.5或者以下版本
第一种方法太复杂,我选择了第二个方法,步骤如下:
①下载tensorflow 1.5的版本,链接:https://pypi.org/project/tensorflow/1.5.0/#files
②打开控制台,输入:pip uninstall tensorflow,进行卸载
③卸载完成后输入:pip install tensorflow==1.5,重新进行安装就可以啦
经过千辛万苦,最终我的tensorflow完全地安装成功了,此时的我默默地点了一支烟,内心毫无波动...