【发布时间】:2020-11-12 08:50:45
【问题描述】:
我有一个简单的线性模型,它输入 (x, y) 对并在 y = b0 + b1 * x 中推导出 b0 和 b1;关键代码如下。 它在已知大小的数据集上进行训练。现在我想添加不断训练它的能力:即每隔一批添加(x,y),并根据新数据更新系数。将有无限量的输入。
x = tf.placeholder(tf.float32, [data_len], name="x")
y = ...
b0 = tf.Variable([0.8], trainable=True)
b1 = ...
#the model
y = tf.add(tf.mul(x, b1), b0)
y_act = tf.placeholder(tf.float32, [data_len], name="y_act")
error = tf.sqrt((y - y_act) * (y - y_act))
train_step = tf.train.AdamOptimizer(0.01).minimize(error)
x_in = ...
y_in = ...
init = tf.initialize_all_variables()
sess.run(init)
feed_dict = { ... }
fetches_in = { b0: b0, b1: b1, y: y, train_step: train_step }
for i in range(0, 50):
fetches = sess.run(fetches_in, feed_dict)
我的想法是记住到目前为止训练的系数,用它们初始化一个模型,然后用新的数据部分再次重复训练。对每个输入重复。这是正确的方法吗?该模型可能会在以后升级为更复杂的东西..
【问题讨论】:
标签: python tensorflow