小渣渣爱学习 2022-02-27 16:01 采纳率: 50%
浏览 50
已结题

keras两个input时怎么看是孪生网络还是伪孪生

请问我这个网络是孪生网络还是伪孪生网络呢?两个网络之间有没有共享权值呢
问题相关代码,请勿粘贴截图
  def Net():

input1 = Input(shape=(50, 5, 3))
X21 = layers.Conv2D(filters=3,kernel_size=(5,2),padding="valid")(input1)  
X21 = layers.BatchNormalization(axis=-1, momentum=0.99, epsilon=0.001, center=True, scale=True, beta_initializer='zeros', gamma_initializer='ones', moving_mean_initializer='zeros', moving_variance_initializer='ones', beta_regularizer=None, gamma_regularizer=None, beta_constraint=None, gamma_constraint=None)(X21)
X21 = layers.Activation('relu')(X21)
X21 = layers.MaxPooling2D(pool_size=(2,1),padding="valid")(X21) 
#X21 = layers.Dropout(0.5)(X21)
X21 = layers.Conv2D(filters=3,kernel_size=(3,2),padding="valid")(X21)
X21 = layers.Flatten()(X21)
X21 = layers.Dense(128, activation='relu')(X21)
X21 = layers.Dropout(0.5)(X21)
X2 = layers.Dense(2*n1)(X21)
X2 = 0.3*X2


input2 = Input(shape=(50, 5, 5, 7))  
X31 = layers.Conv3D(filters=7, kernel_size=(15, 3 ,3), padding="valid")(input2)  
X31 = layers.Activation('relu')(X31)
X31 = layers.BatchNormalization(axis=-1, momentum=0.99, epsilon=0.001, center=True, scale=True, beta_initializer='zeros', gamma_initializer='ones', moving_mean_initializer='zeros', moving_variance_initializer='ones', beta_regularizer=None, gamma_regularizer=None, beta_constraint=None, gamma_constraint=None)(X31)                 
X31 = layers.Dropout(0.5)(X31)
X310 = layers.Flatten()(X31)
X3 = layers.Dense(128, activation='relu')(X310)
X3 = layers.Dense(2*n1,activation='relu')(X3)

X = layers.concatenate([X2, X3])
X = layers.Dense(n1)(X)
return Model([input1,input2],X)

######################

model = Net()
history = model.fit([Train_x1,Train_x2],Train_y, epochs=Epochs, batch_size=256, shuffle=True,verbose=1,
validation_data=([Train_x1,Train_x2],Train_y))
  • 写回答

3条回答 默认 最新

  • ilmss 2022-02-27 22:36
    关注
    获得1.25元问题酬金

    是孪生的,FeatureNetwork()的功能和上面的功能相同,为方便选择,在ClassiFilerNet()函数中加入了判断是否使用共享参数模型功能,令reuse=True,便使用的是共享参数的模型。
    关键地方就在,只使用的一次Model,也就是说只创建了一次模型,虽然输入了两个输入,但其实使用的是同一个模型,因此权重共享的。

    评论

报告相同问题?

问题事件

  • 系统已结题 3月7日
  • 创建了问题 2月27日

悬赏问题

  • ¥30 python密码表示
  • ¥15 Flask应用部署到阿里云服务器失败,无法访问网页,问题出在哪里?
  • ¥15 计算个体的IBS遗传距离
  • ¥15 有什么好的直流步进减速电机42的厂家推荐,保持力矩达到0.3N.M
  • ¥15 一道蓝桥杯的题,请问我错在哪里
  • ¥15 关于#android问题,xposed模块找不到so
  • ¥15 UE5.4.2创建C++项目成功,但是编译失败
  • ¥15 华为手机备份nas,airdisk,遇到的空间不足问题。求个详细的解决方案。
  • ¥20 Cknife无法使用
  • ¥15 这个结构体为什么会出错呢?