import tensorflow.compat.v1 as tf
tf.compat.v1.disable_eager_execution()
import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
def linearregression():
"""
tensorflow实现线性回归
:return:
"""
#生成一个100个一维数据
X = tf.random_normal([100, 1], mean=0.0, stddev=1.0)
#用100个一维数据生成一个符合 y=0.8x+0.7分布的[100,1]矩阵
y_true = tf.matmul(X, [[0.8]]) + [[0.7]]
#随机初始化w,b
weights = tf.Variable(initial_value=tf.random_normal([1, 1]))
bias = tf.Variable(initial_value=tf.random_normal([1, 1]))
#构建预测线性关系的计算矩阵
y_predict = tf.matmul(X, weights) + bias
#构造损失函数
loss = tf.reduce_mean(tf.square(y_predict - y_true))
#剃度下降优化损失,指定学习率
optimizer = tf.train.GradientDescentOptimizer(learning_rate=0.01).minimize(loss)
#初始化变量
init_op = tf.global_variables_initializer()
#开启会话进行训练
with tf.Session() as sess:
sess.run(init_op)
for i in range(1000):
sess.run(optimizer)
print("loss:", sess.run(loss))
print("weights:", sess.run(weights))
print("bias:", sess.run(bias))
return None
if __name__ == '__main__':
linearregression()
2021-09-24 案例-线性回归实现
最新推荐文章于 2024-10-21 00:00:00 发布