# .github/ISSUE_TEMPLATE/experiment.yml
name: Experiment
description: Document a new ML experiment
title: "[EXP] "
labels: ["experiment"]
assignees:
  - ${{github.actor}}
body:
  - type: markdown
    attributes:
      value: |
        Use this template to document a new experiment for your thesis.
        
  - type: textarea
    id: hypothesis
    attributes:
      label: Hypothesis
      description: What is the hypothesis you're testing with this experiment?
      placeholder: Using a deeper network with residual connections will improve accuracy on the imbalanced dataset without increasing overfitting
    validations:
      required: true
      
  - type: textarea
    id: background
    attributes:
      label: Background & Motivation
      description: Background context and why this experiment is important
      placeholder: Previous experiments showed promising results but suffered from overfitting. Recent literature suggests that...
    validations:
      required: true
      
  - type: textarea
    id: dataset
    attributes:
      label: Dataset
      description: What data will you use for this experiment?
      placeholder: |
        - Dataset: MNIST with augmentation
        - Preprocessing: Standardization + random rotation
        - Train/Test Split: 80/20
        - Validation strategy: 5-fold cross-validation
    validations:
      required: true
      
  - type: textarea
    id: methodology
    attributes:
      label: Methodology
      description: How will you conduct the experiment?
      placeholder: |
        1. Implement ResNet architecture with varying depths (18, 34, 50)
        2. Train with early stopping (patience=10)
        3. Compare against baseline CNN from experiment #23
        4. Analyze learning curves and performance metrics
    validations:
      required: true
      
  - type: textarea
    id: parameters
    attributes:
      label: Parameters & Hyperparameters
      description: List the key parameters for this experiment
      placeholder: |
        - Learning rate: 0.001 with Adam optimizer
        - Batch size: 64
        - Epochs: Max 100 with early stopping
        - Dropout rate: 0.3
        - L2 regularization: 1e-4
    validations:
      required: true
      
  - type: textarea
    id: metrics
    attributes:
      label: Evaluation Metrics
      description: How will you evaluate the results?
      placeholder: |
        - Accuracy
        - F1-score (macro-averaged)
        - ROC-AUC
        - Training vs. validation loss curves
        - Inference time
    validations:
      required: true
      
  - type: input
    id: notebook
    attributes:
      label: Notebook Location
      description: Where will the experiment notebook be stored?
      placeholder: notebooks/experiment_resnet_comparison.ipynb
    validations:
      required: false
      
  - type: textarea
    id: dependencies
    attributes:
      label: Dependencies
      description: What other issues or tasks does this experiment depend on?
      placeholder: |
        - Depends on issue #42 (Data preprocessing pipeline)
        - Requires completion of issue #51 (Baseline model)
    validations:
      required: false
      
  - type: textarea
    id: references
    attributes:
      label: References
      description: Any papers, documentation or other materials relevant to this experiment
      placeholder: |
        - He et al. (2016). "Deep Residual Learning for Image Recognition"
        - My previous experiment #23 (baseline CNN)
    validations:
      required: false
      
  - type: textarea
    id: notes
    attributes:
      label: Additional Notes
      description: Any other relevant information
      placeholder: This experiment may require significant GPU resources. Expected runtime is ~3 hours on Tesla V100.
    validations:
      required: false
