所以,我正在关注 Chris Mattman 写的关于 Tensorflow 的书。它有很多错误并且已经过时,但我仍在尝试用它进入机器学习(书中还有一些有趣的概念)
这是代码:
import tensorflow as tf
tf.disable_v1_behavior()
#...
#...
#...
def model(X, w):
terms = []
for i in range(num_coeffs): #num_coeffs = 6
term = tf.multiply(w[i], tf.pow(X, i))
terms.append(term)
return tf.add_n(terms)
w = tf.Variable([0.]*num_coeffs, name="parameters")
y_model = model(X, w) #X = tf.placeholder(tf.float32)
我的问题:我们如何将 0. 乘以变量中的某个值并得到与 0 不同的值? 编辑:我忘了提,它是多项式回归模型 =)
参数
[0.]*num_coefs
是w
表示的张量流变量的初始值。当然,当所有系数都为零时,乘以这些系数的结果也为零。
针对某些距离或损失度量(例如最小化均方误差)执行优化的要点是变量将被更新为非零值,从而根据输入和输出数据优化度量。您的代码尚未包含 optimizer,因此该变量不会被更新。添加优化器将导致变量更新为非零向量,并根据所选优化器遵循某种策略。