license: apache-2.0
Model Card: MS-HNN (Mirror Symmetry-based Hodge Neural Network)
Model Description
MS-HNN is a novel neural network architecture inspired by mathematical concepts from mirror symmetry and Hodge theory in algebraic geometry. The model leverages symmetric structures and duality principles to better capture intrinsic patterns in data that exhibit symmetrical or dual relationships.
Model Architecture
The MS-HNN incorporates several key components inspired by advanced mathematical concepts:
- Hodge Dual Layer: Implements duality operations inspired by Hodge theory
- Mirror Symmetry Block: Creates parallel pathways with symmetry preservation mechanisms
- Complex Structure Module: Models complex geometric structures through separate real and imaginary transformations
Performance
When tested on synthetic data with inherent symmetry properties:
- Test Loss: 0.035721
- R² Score: 0.998237 (near-perfect prediction)
- RMSE: 0.189524
Compared to standard MLP models, MS-HNN demonstrated:
- 86% reduction in test loss
- 1.1 percentage point improvement in R² score
- 62% reduction in RMSE
Intended Use
MS-HNN is particularly well-suited for applications involving:
- Data with inherent symmetries or mirror structures
- Physical systems with conservation laws
- Problems involving dual representations
- Complex systems where standard neural networks struggle to capture symmetrical patterns
Limitations
- The model architecture is more complex than standard MLPs
- Training may require more computational resources
- Performance advantages are most significant for data with inherent symmetrical properties
Training Data
The model was trained on synthetic data specifically designed to exhibit mirror symmetry and complex structure properties. The dataset contains 5,000 samples with 10-dimensional input features.
Training Procedure
- Framework: PyTorch
- Optimizer: Adam
- Learning Rate: 0.001 with ReduceLROnPlateau scheduler
- Batch Size: 32
- Epochs: 100
- Loss Function: Mean Squared Error (MSE)
Model Weights & Usage
The model weights are saved in mirror_symmetry_hodge_model.pth
. To use the model:
model = MirrorSymmetryHodgeNetwork(input_dim=10, hidden_dim=64, output_dim=1)
model.load_state_dict(torch.load('mirror_symmetry_hodge_model.pth'))
model.eval()