tensorflow学习:准备训练数据和构建训练模型
【摘要】 数据不是收集的,是自己生成的%matplotlib inline这个是为了让在jupyter在浏览器里能够显示图像。生成y=2x+1的随机数据,数据加背景噪声限值0.4生成等差数列,100个x_data=np.linspace(-1,1,100)y_data=2*x_data+1.0+np.random.randn(*x_data.shape)*0.4*号是把shape元组拆成一个个参数之前...
数据不是收集的,是自己生成的
%matplotlib inline
这个是为了让在jupyter在浏览器里能够显示图像。
生成y=2x+1的随机数据,数据加背景噪声限值0.4
生成等差数列,100个
x_data=np.linspace(-1,1,100)
y_data=2*x_data+1.0+np.random.randn(*x_data.shape)*0.4
*号是把shape元组拆成一个个参数
之前设置了伪随机数种子 np.random.seed(5)
画散点图:plt.scatter(x_data,y_data)
画上帝视角已学习到的的线性函数直线:
plt.plot(x_data,2*x_data+1.0,color='red',linewidth=3)
先定义训练数据的占位符,定义了2个,
1个是特征值x,1个是标签值y
然后定义模型函数,这个函数有3个参数,
1个就是上面说的x,还有2个是参数,分别是w和b,就是2个参数:斜率和位移
而上面的2个参数,要用tf.Variable来声明来创建变量,它是会变的,在训练中学习到的,所以给它的初值是多少是无所谓的
然后就是怎么样来训练模型了
训练模型就是一个不断迭代不断改进的过程
首先是训练参数,也就是超参,一个是迭代次数train_epochs,这里设置为10,根据复杂情况,可能上万次都可能的。一个是学习率learning_rate,这里默认为0.05
下一步定义损失函数,用于描述预测值与真实值之间的误差,从而指导模型收敛方向,这个非常重要,这个就好像是你在学习的过程中,有一个贴心的小蜜,总能在合适的时候告诉你说,亲你这里不对,亲你那里错了,这样你不会在错误的方向越走越远碰到南墙才回头
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)