gpt4 book ai didi

python - 在这个例子中如何通过tensorflow进行回归?

转载 作者:行者123 更新时间:2023-12-01 02:25:48 25 4
gpt4 key购买 nike

我正在使用 tensorflow 进行线性回归。在这里我面临一个问题:

import pandas as pd
import tensorflow as tf
import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"] = (8,6)

data = pd.read_csv('./data.csv')
xs = data["A"][:100]
ys = data["B"][:100]

X = tf.placeholder(tf.float32, name='X')
Y = tf.placeholder(tf.float32, name='Y')

W = tf.Variable(tf.random_normal([1]),name = 'weight')
b = tf.Variable(tf.random_normal([1]),name = 'bias')

Y_pred = tf.add(tf.multiply(X,W), b)

sample_num = xs.shape[0]
loss = tf.reduce_sum(tf.pow(Y_pred - Y,2))/sample_num
learning_rate = 0.0001
optimizer = tf.train.GradientDescentOptimizer(learning_rate).minimize(loss)

n_samples = xs.shape[0]
init = tf.global_variables_initializer()
with tf.Session() as sess:

sess.run(init)

for i in range(100):
for x,y in zip(xs,ys):
_, l = sess.run([optimizer, loss], feed_dict={X: x, Y:y})

W, b = sess.run([W, b])

plt.plot(xs, ys, 'bo', label='Real data')
plt.plot(xs, xs*W + b, 'r', label='Predicted data')
plt.legend()
plt.show()

data.csv 为 here .

情节与我的预期截然相反: enter image description here那么,问题出在哪里呢?我是python和tensorflow的初学者,只是达不到要点。

最佳答案

正如 Nipun 提到的,尝试使用 AdamOptimizer 而不是 GradientDescentOptimizer

您经常会发现 AdamOptimizer 通常是比 GradientDescentOptimizer 更好的优化器,并且更快地达到最小值。

它是通过调整学习率而不是保持恒定(在您的情况下为0.0001)来实现的。

此外,纪元数越多,模型越好(此处不考虑过度拟合)。

关于python - 在这个例子中如何通过tensorflow进行回归?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47413054/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com