如何使用TensorFlow神经网络构造线性回归模型
发表于:2025-11-16 作者:千家信息网编辑
千家信息网最后更新 2025年11月16日,小编给大家分享一下如何使用TensorFlow神经网络构造线性回归模型,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!先制作
千家信息网最后更新 2025年11月16日如何使用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安全错误
数据库的锁怎样保障安全
服务器管理器自动刷新失败
ssh更换数据库
神舟数据库使用说明书
计算机网络技术专业教师
db2 查看有几个数据库
广州工机网络技术有限公
数据库构成
3322服务器地址
网络技术员ktv
软件开发公司年审需要什么
数据库超级用户的权限怎么恢复
oracle数据库 培训
长治市科迪计算机网络技术
空间数据库的组织分级
体验数据库管理技术教案
电厂数据库管理
tbc木喉要塞服务器人口
数据库 ods
广东app软件开发如何收费
计算机网络技术及应用知识点
网站数据库要钱吗
如何在泰拉瑞亚创建服务器
机房断电服务器安全事故报告
怎样修改数据库前缀
unigui 数据库控件
崇明区技术软件开发成本
怎么查看服务器硬盘参数
手机监考软件开发
csgo服务器bhop指令
如何确定软件开发者