【发布时间】:2020-10-11 18:46:42
【问题描述】:
我想编写一个基于输入拟合多个线性方程的模型。我想我需要一个估计分离(或拐点)点的层,对应于每个方程的参数集,以及一个根据分离点选择输出的层。但是,由于我是machine learning 的新手,我什至不知道相关的关键字。
import tensorflow as tf
def build_and_compile_model():
model = tf.keras.Sequential([
tf.keras.layers.InputLayer(input_shape=1),
tf.keras.layers.Dense(3),
# Need a kind of selection layer here.
tf.keras.layers.Dense(1),
])
model.compile(
loss='mean_absolute_error',
optimizer=tf.keras.optimizers.Adam(1)
)
return model
x = tf.constant([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12])
y = tf.constant([10, 20, 30, 40, 30, 10, -10, -30, 0, 0, 0, 0])
model = build_and_compile_model()
model.fit(
x,
y,
validation_split=0.2,
verbose=1,
epochs=100,
)
【问题讨论】:
-
是否有理由使用机器学习来解决看似普通的最小二乘问题?
-
@paisanco 这是一个简化的练习题。我有一个大型数据集,可以分为多个子空间,并适合每个子空间内的多变量线性回归模型。
标签: tensorflow keras linear-regression tensorflow2.0 tf.keras