《深度学习之TensorFlow入门、原理与进阶实战》— 3 TensorFlow基本开发步骤
第3章 TensorFlow基本开发步骤——
以逻辑回归拟合二维数据为例
环境搭建好之后,读者一定迫不及待地想试试深度学习的程序了吧。本章就直接将一个例子拿出来,在没有任何基础的前提下,一步一步实现一个简单的神经网络。通过这个实例来理解模型,并了解TensorFlow开发的基本步骤。
3.1 实例1:从一组看似混乱的数据中找出y≈2x的规律
本节通过一个简单的逻辑回归实例为读者展示深度学习的神奇。通过对代码的具体步骤,让读者对深度学习有一个直观的印象。
实例描述
假设有一组数据集,其x和y的对应关系为y≈2x。
本实例就是让神经网络学习这些样本,并能够找到其中的规律,即让神经网络能够总结出y≈2x这样的公式。
深度学习大概有如下4个步骤:
(1)准备数据。
(2)搭建模型。
(3)迭代训练。
(4)使用模型。
准备数据阶段一般就是把任务的相关数据收集起来,然后建立网络模型,通过一定的迭代训练让网络学习到收集来的数据特征,形成可用的模型,之后就是使用模型来为我们解决问题。
3.1.1 准备数据
这里使用y=2x这个公式来做主体,通过加入一些干扰噪声让它的“等号”变成“约等于”。
具体代码如下:
* 导入头文件,然后生成-1~1之间的100个数作为x,见代码第1~5行。
* 将x乘以2,再加上一个[-1,1]区间的随机数×0.3。即,y=2×x+a×0.3(a属于[-1,1]之间的随机数),见代码第6行。
代码3-1 线性回归
01 import tensorflow as tf
02 import numpy as np
03 import matplotlib.pyplot as plt
04
05 train_X = np.linspace(-1, 1, 100)
06 train_Y = 2 * train_X + np.random.randn(*train_X.shape) * 0.3 # y=2x,
但是加入了噪声
07 #显示模拟数据点
08 plt.plot(train_X, train_Y,
'ro', label='Original data')
09 plt.legend()
10 plt.show()
?注意:np.random.randn(*train_X.shape)这个代码如果看起来比较奇怪,现在给出解释—它等同于np.random. randn(100)
运行上面代码,显示结果如图3-1所示。
- 点赞
- 收藏
- 关注作者
评论(0)