x = image_crop for block_id, (layer_num, chan_num, pool) in enumerate(zip(layers_per_block, out_chan_list, pool_list), 1): for layer_id in range(layer_num): x = ops.conv_relu(x, 'conv%d_%d' % (block_id, layer_id+1), kernel_size=3, stride=1, out_chan=chan_num, trainable=train) if pool: x = ops.max_pool(x, 'pool%d' % block_id)注释代码
时间: 2023-12-05 07:06:41 浏览: 129
, y_train], axis=1)).fit()
df_test = pd.concat([X_test, y_test], axis=1)
df_test['这段代码是使用卷积神经网络对图像进行特征提取和池化操作。其中,layers_per_block表示predict'] = model_logit_train.predict(df_test)
df_test['predict_class'] = df_test['predict'].apply(lambda x: 1 if x > 0.5 else 0)
predict_num = df_test['predict_class'].sum()
actual_num = df_test['ad每个模块(block)中卷积层的数量,out_chan_list表示每个模块中输出通道数的列表mit'].sum()
hit_rate = df_test[df_test['predict_class'] == df_test['admit']].shape[0] / df_test.shape[0]
print('predict_num:', predict_num)
print('actual_num:', actual_num)
print('hit_rate:', hit_rate)
#,pool_list表示每个模块是否进行池化操作的列表。在每个模块中,先进行若干个卷 使用ols进行预测
model_ols_train = ols('admit ~ C(prestige)', data=pd.concat([X_train,积层,每个卷积层包括一个卷积和ReLU激活函数,然后根据pool_list判断是否进行池 y_train], axis=1)).fit()
df_test['predict_ols'] = model_ols_train.predict(df_test)
df_test['predict化操作,如果进行池化,则使用最大池化操作。整个过程中,使用了ops模块中的conv_ols_class'] = df_test['predict_ols'].apply(lambda x: 1 if x > 0.5 else 0)
_relu和max_pool函数来实现。
阅读全文