问题描述
以下是制作集成模型的通用代码。
所有三个模型的所有输入都相同。但是如果模型由于不同的窗口大小而具有不同的输入形状,例如 lstm 模型。
所以模型 A 的输入形状是 (window_size_A,features),模型 B 的输入形状是 (window_size_B,features)。
窗口大小不同但特征数量相同。
因此,由于窗口大小不同,每个模型对同一数据集的训练数据进行了不同的拆分,使得模型 A 的 X_train.shape
: (train_data_A,window_size_A,output) 而对于模型 B: (train_data_B,window_size_B,输出)。
注意训练数据来自同一个数据集,但由于窗口大小不同,长度不同。
你会如何组合这些模型?
def get_model():
inputs = keras.Input(shape=(128,))
outputs = layers.Dense(1)(inputs)
return keras.Model(inputs,outputs)
model1 = get_model()
model2 = get_model()
model3 = get_model()
inputs = keras.Input(shape=(128,))
y1 = model1(inputs)
y2 = model2(inputs)
y3 = model3(inputs)
outputs = layers.average([y1,y2,y3])
ensemble_model = keras.Model(inputs=inputs,outputs=outputs)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)