由于换了个电脑,系统也由W10换成了W11,原来带有python3.5的anaconda也不知道怎么回事一直处于闪退当中,于是无奈之下安装了python3.7,所有的包也重新安装,安装路程如下:
1.安装anacond
这里建议在清华镜像下面安装,因为快
anaconda清华镜像地址
本人下载的地址如下,如果有小白不想有别的麻烦,可以根据我的安装地址来安装
由于tensorflow的环境适配较为蛋疼,接下来最好根据这篇博客的安装步骤来安装:
Anaconda环境适配
2.安装tensorflow
现在是2022年2月7日,我也不知道为什么打开清华镜像的tensorflow网页就提示无此文件,而直接pip tensorflow 的话时间太长了,还不知道能不能安装完成,因此直接采用手动安装的方式,这里需要主意版本的适配问题,我这里3.7版本的python选择安装1.9.0的tensorflow,安装的文件在下面:
tensorflow1.9.0安装包
然后把这个文件放在D盘下面,把CMD转到D盘目录下,直接pip安装。
这里如果不是会员的话,可以私聊我,留下邮箱,我把文件发给你,走到这一步,如果输入import tensorflow as tf 没有错误的话,基本就安装完成了。
3.安装keras+theano
keras的安装历程比较心酸,如果一开始直接pip install keras 的话,会报一个错误,大致是这样的。
ImportError: cannot import name 'tf2' from 'tensorflow.python'
这是因为我们的keras版本和tensorflow的版本不一致,因此需要找到对应版本的keras再进行pip,这里大家可以借鉴这篇博客,讲的很明白了,对照着做就完事了:
keras安装。
到这一步如果进行import的话还是会报错的,很长一串的错误代码和解决方案如下:
方案1
方案2
直接根据这上面来就完事了,
那么走到这一步了,如果有不幸的小朋友肯定还会遇到一个问题那就是在进行conda的时候会发现无法利用conda安装,报错代码如下:
Anaconda An HTTP error occurred when trying to retrieve this URL.HTTP errors are often intermittent,
这是conda的url源加入了不知名的URL,现在不能使用了(或者废弃),因此需要改一下,可以借鉴下面3个大佬的方案:
方案1
方案2
方案3
这里我是直接更改C盘user下的.condarc文件
接下来还有如果你足够倒霉的话,还会在import keras 的时候遇到一个Waring;
WARNING (theano.tensor.blas): Using NumPy C-API based implementation for BLAS functions.
不要怕,解决方案在这里
方案1
在这里.theanorc.txt如果没有的话,需要你创建一个。
下面cxxflags = -ID:\Anaconda\MinGW
是你的anaconda安装地址,直接复制就行了。到这里所有的Waring和Error都已经没了,这时再import一下。
啊~~~舒服。
我们来测试一下
import tensorflow as tf
import numpy as np
#create data
x_data = np.random.rand(100).astype(np.float32)
y_data = x_data*0.1 + 0.3
###create tensorflow structure start ###
Weight = tf.Variable(tf.random_uniform([1],-1.0,1.0)) #一维向量,从-1.0到1.0
biases = tf.Variable(tf.zeros([1])) #一维0向量
y = Weight*x_data + biases
loss = tf.reduce_mean(tf.square(y-y_data))
optimizer = tf.train.GradientDescentOptimizer(0.5) #梯度下降优化器
train = optimizer.minimize(loss) #训练器
init = tf.initialize_all_variables() #初始化变量
###create tensorflow structure end ###
sess = tf.Session() #建立会话
sess.run(init) #激活整个神经网络very important
for step in range(201):
sess.run(train)
if step % 20 == 0:
print(step,sess.run(Weight),sess.run(biases))
这里有2个Waring,我查验都不是什么大的问题,第一个Waring,程序的书写上需要规范。
Waring1解决方案
Waring2解决方案.
这里2个Waring我也只是从表面上去理解,如果大佬会的话,可以解答一下,不过最后结果还是运行了出来。
4.安装opencv
opencv的话从官网上下载一个包然后手动pip一下安装包就可以使用了,这时候需要主意要下载合适的版本,地址在这里:
官方下载地址
但是pip一下opencv的话大概率会遇到这个error:
from .cv2 import * ImportError: numpy.core.multiarray failed to import
这个是因为numpy包还要和tensorflow的版本适配,可以参考这篇博文:
方案1
这里是适配表
tensorflow和numpy的适配表
如果到最后还是报错的话,直接升级最新的numpy包,就可以解决上面的报错:
pip install -U numpy
最最最最后,我做完上述,进行import tensorflow的时候还遇到了这个报错:
FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
这里有很长一段,这个还是很简单的,根据提示的地址,找到dtypes.py这个文件,用spyder打开, (type, 1) ”都改成“(type, (1,))”就可以了。
方案1
完工,没有报错,面向CSDN编程之旅开始了。