|
{
|
|
"model_type": "cnn",
|
|
"input_shape": [152, 152, 3],
|
|
"conv_layers": [
|
|
{
|
|
"filters": 32,
|
|
"kernel_size": [3, 3],
|
|
"activation": "relu",
|
|
"pool_size": [2, 2]
|
|
},
|
|
{
|
|
"filters": 64,
|
|
"kernel_size": [3, 3],
|
|
"activation": "relu",
|
|
"pool_size": [2, 2]
|
|
},
|
|
{
|
|
"filters": 128,
|
|
"kernel_size": [3, 3],
|
|
"activation": "relu",
|
|
"pool_size": [2, 2]
|
|
}
|
|
],
|
|
"dense_layers": [
|
|
{
|
|
"units": 64,
|
|
"activation": "relu"
|
|
}
|
|
],
|
|
"output_layer": {
|
|
"units": 69216,
|
|
"activation": "sigmoid"
|
|
},
|
|
"reshape_layer": {
|
|
"target_shape": [152, 152, 3]
|
|
},
|
|
"compile": {
|
|
"optimizer": "adam",
|
|
"loss": "mean_squared_error"
|
|
},
|
|
"data_augmentation": {
|
|
"rescale": 1.0,
|
|
"horizontal_flip": true,
|
|
"rotation_range": 20,
|
|
"zoom_range": 0.2,
|
|
"shear_range": 0.2,
|
|
"brightness_range": [0.8, 1.2]
|
|
},
|
|
"training": {
|
|
"batch_size": 10,
|
|
"target_size": [152, 152],
|
|
"epochs": 50,
|
|
"steps_per_epoch": "auto",
|
|
"validation_steps": "auto"
|
|
},
|
|
"save_path": "cnn_similarity_model.keras",
|
|
"similarity_metric": "euclidean"
|
|
}
|
|
|