【发布时间】:2018-05-03 03:42:30
【问题描述】:
我正在尝试通过玩线性回归 (LR) 来熟悉来自 this site 的 TensorFlow 框架。 LR的源代码可以找到here,名称为03_linear_regression_sol.py。
一般来说,LR的定义模型是Y_predicted = X * w + b,其中
-
w和b是参数(tf.Variable) -
Y_predicted和X是训练数据 (placeholder)
对于w和b,在示例代码中,它们的定义如下
w = tf.Variable(0.0, name='weights')
b = tf.Variable(0.0, name='bias')
我将这两行代码稍作改动,如下所示
w = tf.get_variable('weights', [], dtype=tf.float32)
b = tf.get_variable('bias', [], dtype=tf.float32)
对于这个实验,我为这两个版本获得了两个不同的total_loss/n_samples。更具体地说,在原始版本中,我随时都能得到确定性结果,1539.0050282141283。但是,在修改后的版本中,我在不同的运行时间得到了不确定的结果,例如,total_loss/n_samples 可能是1531.3039793868859,1526.3752814714044,......等等。
tf.Variable() 和 tf.get_variable() 有什么区别?
【问题讨论】:
标签: python machine-learning tensorflow