我正在尝试训练CNN来预测给定温度下2D Ising模型的地面(平衡)状态。本质上,方形矩阵是随机初始化的,具有两个可能的值。根据一套规则,系统会随着时间的推移发展到均衡状态。
问题在于基态取决于温度,CNN需要知道温度。是否有可能创建一个以温度和矩阵作为输入的CNN,并输出均衡?
如果重要的话,我打算使用Keras。
答案 0 :(得分:2)
首先对单独的输入(例如卷积)进行操作,然后在输入最后的密集层之前将它们连接起来。
input_1 = Input(shape=(100, 100, 1), name="matrix")
input_2 = Input(shape=[1], name="temperature")
matrix = Conv2D(24, kernel_size = 3, strides = 2, padding='same', activation='relu')(input_1)
concat = Concatenate()([matrix, input_2])
dense_layer = Dense(512, activation='relu')(concat)
output = Dense(num_classes, activation='softmax')(dense_layer)
model = Model([input_1,input_2], output)