20行代码认识简单的TersonFlow——训练一个二次函数

1.安装Anaconda

1.Window,MacOS,Linux都已支持Tensorflow。 2.Window用户只能使用python3.5(64bit)。MacOS,Linux支持python2.7和python3.3+。 3.有GPU可以安装带GPU版本的,没有GPU就安装CPU版本的。 4.推荐安装Anaconda

Anaconda下载地址:


如果没有jupyter_notebook_config.py文件 打开命令提示符执行:jupyter notebook –generate-config

2.Tensorflow安装

Windows安装Tensorflow 管理员方式打开命令提示符,输入命令:pip install tensorflow CPU版本: 管理员方式打开命令提示符,输入命令:pip install tensorflow-gpu GPU版本: 更新Tensorflow: pip uninstall tensorflow pip install tensorflow pip install tensorflow –upgrade

具体安装详情可以参考 liguoyin乖小小 这位博主:


Linux和MacOS安装Tensorflow Python 2.7用户:pip install tensorflow Python3.3+用户:pip3 install tensorflow CPU版本: pip install tensorflow-gpu pip3 install tensorflow-gpu

3.让我们开始写代码吧!

1.打开Jupyter NoteBook,创建一个Python3文件


2.敲键盘

1.首先导入tersonflow和numpy
import tensorflow as tf
import numpy as np
2.使用numpy生成100个随机点样本
x_data = np.random.rand(100) # x_data是二次函数的斜率
y_data = x_data*0.1 + 0.2 #  0.2是二次函数的截距
# 以上数据大家在写的时候可以随便写
3.构建一个线性模型
# tf.Variable是tersonflow中的变量
# 截距
b=tf.Variable(0.)
# 斜率
k=tf.Variable(0.)
y=k*x_data+b
4.写一个二次代价函数
# (样本值-预测值)的误差的平方的平均值
loss = tf.reduce_mean(tf.square(y_data-y))
5.定义一个梯度下降法来进行训练的优化器
optimizer = tf.train.GradientDescentOptimizer(0.2)
6.写一个最小化代价函数(训练的目的)
train=optimizer.minimize(loss)
7.初始化变量
init = tf.global_variables_initializer()
8.定义会话
# 训练500次,每50次输出训练的斜率与截距
with tf.Session() as sess:
    sess.run(init)
    for step in range(501):
        sess.run(train)
        if step%50==0:
            print(step,sess.run([k,b]))

我训练的结果:

代码已上传到百度网盘,github不知道为什么最近总是登不上去。 链接: 密码:uyu4

经验分享 程序员 微信小程序 职场和发展