Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Sketch RNN template. #143

Merged
merged 5 commits into from
Oct 25, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -280,6 +280,7 @@ We welcome community contributions in the form of new templates. While these are

- Infectious Disease Modeling (`seir`) - [PR #137](https://github.com/SakanaAI/AI-Scientist/pull/137)
- Image Classification with MobileNetV3 (`mobilenetV3`) - [PR #141](https://github.com/SakanaAI/AI-Scientist/pull/141)
- Sketch RNN (`sketch_rnn`) - [PR #143](https://github.com/SakanaAI/AI-Scientist/pull/143)

*This section is reserved for community contributions. Please submit a pull request to add your template to the list! Please describe the template in the PR description, and also show examples of the generated papers.*

Expand Down
Binary file added templates/sketch_rnn/datasets/butterfly.npz
Binary file not shown.
Binary file added templates/sketch_rnn/datasets/cat.npz
Binary file not shown.
Binary file added templates/sketch_rnn/datasets/owl.npz
Binary file not shown.
Binary file added templates/sketch_rnn/datasets/yoga.npz
Binary file not shown.
399 changes: 399 additions & 0 deletions templates/sketch_rnn/experiment.py

Large diffs are not rendered by default.

38 changes: 38 additions & 0 deletions templates/sketch_rnn/ideas.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
[
{
"Name": "latent_space_decorrelation",
"Title": "Enhancing Sketch Diversity through Latent Space Decorrelation",
"Experiment": "Introduce a covariance penalty term in the loss function that encourages the covariance matrix of the latent vectors to be close to the identity matrix. This can be implemented by adding a term to the loss that penalizes the off-diagonal elements of the covariance matrix of the latent vectors. Modify the `train` method to include this additional regularization term in the loss computation.",
"Interestingness": 8,
"Feasibility": 9,
"Novelty": 7,
"novel": true
},
{
"Name": "temporal_smoothing_loss",
"Title": "Enhancing Sketch Generation with Temporal Smoothing Loss",
"Experiment": "Introduce a Temporal Smoothing Loss (TSL) to the existing model to encourage smooth transitions in pen movements. Define TSL as the L2 norm of the difference between consecutive pen movements. Modify the `train` method to include TSL in the loss computation. Implement an adaptive weighting mechanism that adjusts the influence of TSL based on the variance of pen movements within a sequence. Evaluate the quality and diversity of the generated sketches with and without TSL.",
"Interestingness": 7,
"Feasibility": 9,
"Novelty": 7,
"novel": true
},
{
"Name": "attention_mechanism",
"Title": "Enhancing Sketch Generation with Attention Mechanism",
"Experiment": "In this experiment, we introduce an attention mechanism to the decoder RNN. This involves adding an attention layer that computes a context vector at each decoding step by taking a weighted sum of the latent representations. The context vector is concatenated with the decoder's hidden state and the current input to generate the next output. Modify the `DecoderRNN` class to include the attention mechanism and adjust the `forward` method accordingly. Evaluate the quality and diversity of the generated sketches with and without the attention mechanism.",
"Interestingness": 9,
"Feasibility": 8,
"Novelty": 8,
"novel": true
},
{
"Name": "adaptive_dropout",
"Title": "Improving Sketch Generation with Adaptive Dropout",
"Experiment": "Introduce an adaptive dropout mechanism that adjusts the dropout rate dynamically based on the training step. Implement a `dropout_scheduler` function that decreases the dropout rate from 0.5 to 0.1 linearly over the training steps. Modify the `EncoderRNN` and `DecoderRNN` classes to accept a dynamic dropout rate parameter. Update the dropout rate in each forward pass of the encoder and decoder based on the current training step. Integrate the `dropout_scheduler` into the training loop, updating the dropout rates in each step. Evaluate the quality and diversity of the generated sketches with and without adaptive dropout.",
"Interestingness": 8,
"Feasibility": 8,
"Novelty": 7,
"novel": true
}
]
Loading