千家信息网

如何使用TensorFlow神经网络构造线性回归模型

发表于:2024-11-22 作者:千家信息网编辑
千家信息网最后更新 2024年11月22日,小编给大家分享一下如何使用TensorFlow神经网络构造线性回归模型,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!先制作
千家信息网最后更新 2024年11月22日如何使用TensorFlow神经网络构造线性回归模型

小编给大家分享一下如何使用TensorFlow神经网络构造线性回归模型,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

先制作一些数据:

import numpy as npimport tensorflow as tfimport matplotlib.pyplot as plt# 随机生成1000个点,围绕在y=0.1x+0.3的直线周围num_points = 1000vectors_set = []for i in range(num_points):    x1 = np.random.normal(0.0, 0.55)    # np.random.normal(mean,stdev,size)给出均值为mean,标准差为stdev的高斯随机数(场),当size赋值时,如:size=100,表示返回100个高斯随机数。    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()# 构造1维的w矩阵,取值是随机初始化权重参数为[-1, 1]之间的随机数w = tf.Variable(tf.random_uniform([1], -1.0, 1.0), name='w')# 构造1维的b矩阵,初始化为0b = tf.Variable(tf.zeros([1]), name='b')# 建立回归公式,经过计算得出估计值yy = w * x_data +b# 定义loss函数,估计值y和实际值y_data之间的均方误差作为损失loss = tf.reduce_mean(tf.square(y - y_data), name='loss')# 采用梯度下降法来优化参数,学习率为0.5optimizer = tf.train.GradientDescentOptimizer(0.5)# train相当于一个优化器,训练的过程就是最小化losstrain = optimizer.minimize(loss, name='train')sess = tf.Session()# 全局变量的初始化init = tf.global_variables_initializer()sess.run(init)# 打印初始化的w和bprint('w = ', sess.run(w), 'b = ', sess.run(b), 'loss = ', sess.run(loss))# 训练迭代20次for step in range(20):    sess.run(train)    # 打印训练好的w和b    print('w = ', sess.run(w), 'b = ', sess.run(b), 'loss = ', sess.run(loss))

代码运行一下,下面这个图就是上面代码刚刚构造的数据点:

有了数据之后,接下来构造线性回归模型,去学习出来这个数据符合什么样的w和b,训练完后看下得到的w和b是不是接近构造数据时的w和b,最后一次结果是w = [ 0.10149562] b = [ 0.29976717] loss = 0.000948041的,也就是这个线性回归模型学习到了数据的分布规则。也可以看出随着训练次数的迭代,loss值也越来越小,也就是模型越来越好,将训练出来的w和b构造成图中蓝色的线,这条线就是当前最能拟合数据的直线了。运行结果如图所示:

以上是"如何使用TensorFlow神经网络构造线性回归模型"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

数据 训练 模型 线性 学习 就是 篇文章 随机数 高斯 神经 神经网络 网络 之间 也就是 代码 估计值 内容 参数 直线 矩阵 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 杨浦区网络技术服务信息 保定港冀网络技术有限公司 网络安全管理员工作经历 开源数据库技术栈 浙江华为服务器维修调试价格 梦幻西游转服务器宝宝锁定 华为服务器存储交付都干啥 数据库字段null对索引 大华i8700管理服务器 更新表中某个字段的数据库 美国哪家公司做网络安全的 中山大学网络安全研究生人数 销售数据库编程软件公司 企业网络安全的内容 dw学生管理系统数据库 rj45是无线网络技术吗 美团买家数据库 网络安全教育的目的是 网站登录页面如何连接数据库 搭建xmpp服务器 电脑显示服务器连接异常就掉线 梦幻西游 服务器合并 圳市光通网络技术有限公司 数据库查询条件用不用加引号 老百姓怎么防范网络安全知识 微信网络安全软件 分布式数据库两阶段提交协议 全国每年服务器规模 数据库设置数据有效期 网络安全解决方案的一般过程
0