/deep-macrofin

Deep neural network for solving continuous time economic models

Primary LanguagePythonMIT LicenseMIT

Deep-MacroFin

Build Status PyPI version PyPI Downloads PyPI - License

Deep-MacroFin is a comprehensive deep-learning framework designed to solve equilibrium economic models in continuous time. The library leverages deep learning to alleviate curse of dimensionality.

Documentation: mkdocs

Start developing

Code

All the code are under deep_macrofin, and the tests are under tests

To run the code and tests locally

python -m venv venv
source venv/bin/activate # venv/Scripts/activate using Windows powershell
pip install -r requirements.txt
pip install -r requirements-dev.txt
pip install -r requirements-doc.txt

For easier testing, you can create a file in the root folder of the project, and import functions from deep_macrofin.

To properly run all tests in the tests/ folder

pip install -e .
pytest tests/

Examples

Various examples using the library, with comparisons to DeepXDE and PyMacroFin are included in examples

  • basic_examples: Solutions to basic ODEs/PDEs, diffusion equation, function approximation and systems of ODEs, with some comparisons to DeepXDE.
  • initial_examples: Initial scripts for testing deep neural networks for ODE/PDE solutions, and macromodels.
  • kan_examples: Solutions to basic ODEs, using KAN as approximators
  • macro_problems: Macroeconomic models in different dimensions.
  • paper_example: Examples in the paper, with PyMacroFin and deepXDE comparisons. Models and log files for reproducing paper results can be found in Google Drive.
  • pymacrofin_eg: Examples from PyMacroFin and proposition 2 from Brunnermeier and Sannikov (2014)

Note: PyMacroFin and DeepXDE are used as benchmarks in several examples, but the associated packages are not included in this repo's requirements.txt. To run the comparisons properly, please install their packages respectively.

Docs

The documentation site is based on mkdocs and mkdocs-mateiral.

Layouts

mkdocs.yml    # The configuration file.
docs/
    index.md  # The documentation homepage.
    ...       # Other markdown pages, images and other files.

To see the site locally, run the following command:

mkdocs serve

Cite Deep-MacroFin

If you use Deep-MacroFin for academic research, you are encouraged to cite the following paper:

@misc{wu2024deepmacrofin,
      title={Deep-MacroFin: Informed Equilibrium Neural Network for Continuous Time Economic Models}, 
      author={Yuntao Wu and Jiayuan Guo and Goutham Gopalakrishna and Zisis Poulos},
      year={2024},
      eprint={2408.10368},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={https://arxiv.org/abs/2408.10368}, 
}