Spaces:
Running
Running
Update model.py
Browse files
model.py
CHANGED
|
@@ -23,8 +23,8 @@ def build_embedding_network(input_shape):
|
|
| 23 |
x = base_model(inputs) # Pass input through FaceNet
|
| 24 |
|
| 25 |
# Final Embedding Layer
|
| 26 |
-
x = layers.Dense(256, activation=None)(x) # No activation before L2 norm
|
| 27 |
-
x = layers.Lambda(lambda x: tf.math.l2_normalize(x, axis=1))(x) # L2-normalized embeddings
|
| 28 |
|
| 29 |
return keras.Model(inputs, x)
|
| 30 |
|
|
@@ -37,18 +37,18 @@ def build_siamese():
|
|
| 37 |
embedding_network = build_embedding_network(input_shape)
|
| 38 |
|
| 39 |
# Define inputs for the Siamese network
|
| 40 |
-
input_1 = layers.Input(input_shape)
|
| 41 |
-
input_2 = layers.Input(input_shape)
|
| 42 |
|
| 43 |
# Pass inputs through the embedding network
|
| 44 |
tower_1 = embedding_network(input_1)
|
| 45 |
tower_2 = embedding_network(input_2)
|
| 46 |
|
| 47 |
# Compute Euclidean distance between embeddings
|
| 48 |
-
distance = layers.Lambda(euclidean_distance, name='distance_layer')([tower_1, tower_2])
|
| 49 |
|
| 50 |
# Custom Contrastive Output Layer
|
| 51 |
-
output = layers.Dense(1, activation='sigmoid',
|
| 52 |
kernel_regularizer=keras.regularizers.l2(1e-4))(distance)
|
| 53 |
|
| 54 |
# Build the Siamese model
|
|
|
|
| 23 |
x = base_model(inputs) # Pass input through FaceNet
|
| 24 |
|
| 25 |
# Final Embedding Layer
|
| 26 |
+
x = keras.layers.Dense(256, activation=None)(x) # No activation before L2 norm
|
| 27 |
+
x = keras.layers.Lambda(lambda x: tf.math.l2_normalize(x, axis=1))(x) # L2-normalized embeddings
|
| 28 |
|
| 29 |
return keras.Model(inputs, x)
|
| 30 |
|
|
|
|
| 37 |
embedding_network = build_embedding_network(input_shape)
|
| 38 |
|
| 39 |
# Define inputs for the Siamese network
|
| 40 |
+
input_1 = keras.layers.Input(input_shape)
|
| 41 |
+
input_2 = keras.layers.Input(input_shape)
|
| 42 |
|
| 43 |
# Pass inputs through the embedding network
|
| 44 |
tower_1 = embedding_network(input_1)
|
| 45 |
tower_2 = embedding_network(input_2)
|
| 46 |
|
| 47 |
# Compute Euclidean distance between embeddings
|
| 48 |
+
distance = keras.layers.Lambda(euclidean_distance, name='distance_layer')([tower_1, tower_2])
|
| 49 |
|
| 50 |
# Custom Contrastive Output Layer
|
| 51 |
+
output = keras.layers.Dense(1, activation='sigmoid',
|
| 52 |
kernel_regularizer=keras.regularizers.l2(1e-4))(distance)
|
| 53 |
|
| 54 |
# Build the Siamese model
|