emp-admin's picture
Update README.md
e2a298d verified
metadata
license: mit
language: en
library_name: pytorch-lightning
tags:
  - pytorch
  - pytorch-lightning
  - timeseries
  - forecasting
  - headache-prediction
  - custom-code
pipeline_tag: tabular-classification
metrics:
  - f1
  - accuracy
  - precision
  - recall
  - roc_auc

Headache Prediction Model (Time Series Transformer)

Model Description

This repository contains a model trained to predict the probability of experiencing a headache for the next 5 days. It utilizes a Transformer Encoder architecture implemented using PyTorch and PyTorch Lightning.

The model takes into account the previous 14 days of historical data, including:

  • Weather features (temperature, humidity, pressure, precipitation)
  • Engineered features (pressure change, day of week)
  • User-reported diary features (stress level, sleep hours)
  • Lagged headache occurrences (status from day-1 to day-4)
  • Static user features (age, gender, chronic condition)

Developed by: [Your Name / Organization] Model Version: [e.g., v1.1 - corresponding to the uploaded checkpoint]

Intended Uses & Limitations

  • Intended Use: To provide a daily forecast of headache risk for the subsequent 5 days, based on a user providing the required 14-day historical sequence and static features. Can be used for personal awareness or potentially integrated into health tracking applications.
  • Limitations:
    • Requires a complete, chronologically ordered sequence of 14 days of input data ending on the day before the first prediction day.
    • Requires the specific input features listed in config/settings.py (MODEL_INPUT_FEATURES and STATIC_FEATURES_USED).
    • Requires the custom Python code provided in this repository (headache_model.py, base_model.py, config/settings.py) to load and run the model correctly.
    • Depends heavily on the scalers.pkl file for correct input preprocessing. Using data outside the distribution seen during training may yield poor results.
    • Trained on [Describe your training data source briefly - e.g., synthetic data, specific user group data]. Performance may vary significantly on data from different sources or demographics.
    • The model provides probabilities; a threshold (default 0.5 or 0.6 used in training eval) must be applied for binary yes/no predictions, impacting the Precision/Recall trade-off.

How to Use

1. Installation:

Ensure you have Python 3.9+ and install the necessary libraries. It's recommended to use the versions specified in requirements.txt.

# Clone the repository (includes code, config, requirements)
git lfs install # Run once per machine if not done before
git clone [https://huggingface.co/YourUsername/YourRepoName](https://huggingface.co/YourUsername/YourRepoName) # Replace with your Repo ID
cd YourRepoName

# Install dependencies
pip install -r requirements.txt