概述
目录
1 Anaconda
1.1 Anaconda的下载与安装
1.2 测试
2 tensorflow
2.1 新建环境
2.2 更换镜像源
2.3 安装tensorflow
3 例子-线性回归模型
3.1 小问题
3.1.1 代码无法运行问题(In[*])
3.2 生成训练数据
3.3 训练模型
1 Anaconda
1.1 Anaconda的下载与安装
下载链接:https://www.anaconda.com/products/individual#Downloads
下载完毕后安装
此处上面的选项打勾,会自动添加环境变量
之后等待安装完毕。
1.2 测试
安装完毕后在开始菜单中可以打开命令终端或图形界面,这里建议使用图形界面。
打开终端后,输入conda --version
可以查看conda的版本:
输入conda info --envs
可以查看当前全部环境
2 tensorflow
2.1 新建环境
首先,新建一个环境:
终端:
conda create -n tensorflow python=3.6
图形界面:
然后切换到新建的tensorflow环境:
终端:
activate tensorflow
图形界面:
2.2 更换镜像源
Anaconda在安装、更新包时,默认会从国外的网站上进行下载,所以我们需要更换镜像源,否则下载会经常失败或者非常慢。
这里使用的是中国科技大学的镜像源,如需使用其他链接可以自行百度,有很多。
终端:
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
图形界面:
点击Channels→Add→输入镜像源链接→删除defaults→Update channels
其他的附加库(可在需要时添加):
Conda 附加库:
- Conda Forge
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
- msys2
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
- bioconda
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
- menpo
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/
2.3 安装tensorflow
终端输入 conda list
可以查看当前拥有的包:
输入命令安装tensorflow,这里安装的是cpu版本:
conda install tensorflow
(另:后面安装其他包可以通过 conda install xxx
来安装)
这里可以看到,镜像源更换成功后,包的下载链接已经被更换了。
等待安装完毕,安装完毕后可以查看一下,可以看到已经有tensorflow、numpy等包了
3 例子-线性回归模型
这里使用jupyter编写,可通过图形界面直接安装
jupyter可以通过 shift
+ enter
直接运行
可以分块写代码,分块运行,方便查找问题
这里是一个简单的线性回归问题,并未涉及神经网络,只是用于熟悉tensorflow使用。
自动产生1000个 y = 0.1x + 0.3 的点,然后训练权重W与偏置b,使其接近0.1与0.3。
3.1 小问题
3.1.1 代码无法运行问题(In[*])
输入 print("Hello World")
试运行,发现左边一直是In[*],一直处于运行中的状态
这个问题主要是因为默认安装的 tornado
这个包的版本过高,不支持Python,所以需要更换版本,更换成4.5.3或者4.2都可以
更换版本后,可以顺利运行了。
3.2 生成训练数据
随机生成x,计算 0.1 * x +0.3 后添加一个随机偏移量得到y
%matplotlib notebook
import numpy as np
import tensorflow as tf
import matplotlib.pyplot as plt
#随机生成1000个点在直线 y=0.1x+0.3 的周围
num_points = 1000
vectors_set = []
for i in range(num_points):
x1 = np.random.normal(0.0, 0.55)
y1 = x1 * 0.1 + 0.3 + np.random.normal(0.0, 0.03)
vectors_set.append([x1, y1])
#生成样本
x_data = [v[0] for v in vectors_set]
y_data = [v[1] for v in vectors_set]
#显示
plt.scatter(x_data, y_data, c='r')
plt.show()
3.3 训练模型
#初始化 W 和 b
W = tf.Variable(tf.random_uniform([1], -1.0, 1.0), name='W')
b = tf.Variable(tf.zeros([1]), name='b')
#预估值y
y = W * x_data + b
#以预估值 y 和实际值 y_data 的均方差作为损失函数(目标函数)
loss = tf.reduce_mean(tf.square(y - y_data), name='loss')
#以梯度下降法作为优化函数,此处步长设置为0.5(通常要更小,比如0.01)
optimizer = tf.train.GradientDescentOptimizer(0.5)
#训练的过程就是使误差最小化
train = optimizer.minimize(loss, name='train')
#建立session
sess = tf.Session()
init = tf.global_variables_initializer()
sess.run(init)
#初始化 W 和 b
print("W = ", sess.run(W), "b = ", sess.run(b), "loss = ", sess.run(loss))
#执行20次训练
for step in range(20):
sess.run(train)
print("W = ", sess.run(W), "b = ", sess.run(b), "loss = ", sess.run(loss))
训练结果:
可以看到,当训练到最后几轮时,损失值达到0.000867左右后就几乎不再减少了,W趋近于0.0959,b趋近于0.2997. 下面是训练结果的图像:
最后
以上就是甜甜鸡翅为你收集整理的Anaconda与tensorflow的安装与线性回归模型示例1 Anaconda2 tensorflow3 例子-线性回归模型的全部内容,希望文章能够帮你解决Anaconda与tensorflow的安装与线性回归模型示例1 Anaconda2 tensorflow3 例子-线性回归模型所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复