网络融合示例

image

https://github.com/DandelionLau/Neural-Network-Architecture/blob/master/RNN-FCN.py

r_layer1 = LSTM(32, return_sequences=True)(input)
r_layer2 = LSTM(64,return_sequences=True)(r_layer1)
r_layer2 = Flatten()(r_layer2)

# CNN
c_layer1 = Conv1D(64, 3, activation='relu')(input)
c_layer1 = keras.layers.BatchNormalization()(c_layer1)

c_layer2 = Conv1D(128, 3, activation='relu')(c_layer1)
c_layer2 = keras.layers.BatchNormalization()(c_layer2)

c_layer3 = Conv1D(64, 3, activation='relu')(c_layer2)
c_layer3 = keras.layers.BatchNormalization()(c_layer3)

c_pool = GlobalAveragePooling1D()(c_layer3)
#通过merge将RNN和CNN的输出融合起来
merge = keras.layers.concatenate([r_layer2, c_pool])
output = Dense(2, activation='softmax')(merge)
model = Model(inputs=[input], outputs=output)

model.compile(loss='binary_crossentropy',
              optimizer='rmsprop',
              metrics=['accuracy'])

idea:将特定的脑区(如病灶区)提取出来作为输入
优点:有针对性


基于keras的LSTM时间序列预测需要先做归一化处理

https://blog.csdn.net/pipixiu/article/details/81001599

posted @ 2025-12-18 16:08  点影成金  阅读(11)  评论(0)    收藏  举报