chore: checkpoint PROTEAN research planning and architecture
This commit is contained in:
commit
2cc6a9859e
22 files changed
+2138
No files matched your search
@@ -0,0 +1,44 @@
|
||||
# PROTEAN detection model as described in Chennoufi et al. (2025), Section 4.1.
|
||||
# The architecture is FROZEN to the baseline and is not part of this study's
|
||||
# contribution. The only proposed change is server-side prototype aggregation.
|
||||
|
||||
model:
|
||||
name: protean_cnn
|
||||
framework: pytorch
|
||||
input: flow_features # tabular -> treated as 1D / single-channel input
|
||||
embedding_dim: 128 # output of the dense layer == prototype dimension d
|
||||
layers:
|
||||
- type: conv1d
|
||||
filters: 64
|
||||
activation: relu
|
||||
pool: max
|
||||
dropout: 0.2
|
||||
- type: conv1d
|
||||
filters: 128
|
||||
activation: relu
|
||||
pool: max
|
||||
dropout: 0.5
|
||||
- type: flatten
|
||||
- type: dense
|
||||
units: 128
|
||||
- type: classification_head
|
||||
output: log_softmax
|
||||
# Head concatenates/uses the dense embedding; EOF prototypes are extracted
|
||||
# from the embedding part phi(x) (first 8 of 10 layers per the paper text).
|
||||
prototype_source: embedding
|
||||
|
||||
loss:
|
||||
# Eq. (3): classification loss + lambda * prototype alignment + mu/2 * model alignment
|
||||
terms:
|
||||
- classification: cross_entropy
|
||||
- prototype_alignment: l2_squared_distance_to_global_prototype
|
||||
weight: lambda
|
||||
- model_alignment: l2_squared_distance_to_previous_global_model
|
||||
weight: mu
|
||||
mu: 0.1
|
||||
lambda: null # UNRESOLVED: not stated in the paper text
|
||||
|
||||
inference:
|
||||
rule: nearest_global_prototype_l2
|
||||
trailing: "assign label of the global prototype with the smallest L2 distance
|
||||
to the instance embedding (paper Section 3.2)"
|
||||
Reference in new issue
Block a user