pyphi - wmayner | Anaconda.org (original) (raw)
PyPhi is a Python library for computing integrated information (𝚽), and the associated quantities and objects.
If you use this code, please cite the paper:
Mayner WGP, Marshall W, Albantakis L, Findlay G, Marchman R, Tononi G. (2018)PyPhi: A toolbox for integrated information theory. PLOS Computational Biology 14(7): e1006343. https://doi.org/10.1371/journal.pcbi.1006343
Usage, Examples, and API documentation
- Documentation for the latest stable release
- Documentation for the latest (potentially unstable) development version.
- Documentation is also available within the Python interpreter with the
helpfunction.
Installation
Set up a Python 3 virtual environment and install with
To install the latest development version, which is a work in progress and may have bugs, run:
pip install "git+https://github.com/wmayner/pyphi@develop#egg=pyphi"
Note: this software is only supported on Linux and macOS. However, if you use Windows, you can run it by using the Anaconda Python distribution andinstalling PyPhi with conda:
conda install -c wmayner pyphi
Detailed installation guide for Mac OS X
User group
For discussion about the software or integrated information theory in general, you can join the pyphi-users group.
For technical issues with PyPhi or feature requests, please use the issues page.
Contributing
To help develop PyPhi, fork the project on GitHub and install the requirements with
pip install -r requirements.txt
The Makefile defines some tasks to help with development:
runs the unit tests every time you change the source code.
runs performance benchmarks.
builds the HTML documentation.
Developing on Linux
Make sure you install the C headers for Python 3, SciPy, and NumPy before installing the requirements:
sudo apt-get install python3-dev python3-scipy python3-numpy
Developing on Windows
If you're just looking for an editable install, pip may work better than the conda develop utility included in the conda-build package. When using pip on Windows, the build of pyemd may fail. The simplest solution to this is to obtain pyemd through conda.
conda create -n pyphi_dev conda activate pyphi_dev conda install -c wmayner pyemd cd path/to/local/editable/copy/of/pyphi pip install -e .
Unfortunately, pip isn't great at managing the DLLs that some packages (especially scipy) rely on. If you have missing DLL errors, try reinstalling the offending package (here, scipy) with conda.
conda activate pyphi_dev pip uninstall scipy conda install scipy
Credit
Please cite these papers if you use this code:
Mayner WGP, Marshall W, Albantakis L, Findlay G, Marchman R, Tononi G. (2018)PyPhi: A toolbox for integrated information theory. PLOS Computational Biology 14(7): e1006343. https://doi.org/10.1371/journal.pcbi.1006343
@article{mayner2018pyphi,
title={PyPhi: A toolbox for integrated information theory},
author={Mayner, William GP and Marshall, William and Albantakis, Larissa and Findlay, Graham and Marchman, Robert and Tononi, Giulio},
journal={PLoS Computational Biology},
volume={14},
number={7},
pages={e1006343},
year={2018},
publisher={Public Library of Science},
doi={10.1371/journal.pcbi.1006343},
url={https://doi.org/10.1371/journal.pcbi.1006343}
}
Albantakis L, Oizumi M, Tononi G (2014). From the Phenomenology to the Mechanisms of Consciousness: Integrated Information Theory 3.0. PLoS Comput Biol 10(5): e1003588. doi: 10.1371/journal.pcbi.1003588.
@article{iit3,
title={From the Phenomenology to the Mechanisms of Consciousness:
author={Albantakis, Larissa AND Oizumi, Masafumi AND Tononi, Giulio},
Integrated Information Theory 3.0},
journal={PLoS Comput Biol},
publisher={Public Library of Science},
year={2014},
month={05},
volume={10},
pages={e1003588},
number={5},
doi={10.1371/journal.pcbi.1003588},
url={http://dx.doi.org/10.1371%2Fjournal.pcbi.1003588}
}
This project is inspired by a previous project written in Matlab by L. Albantakis, M. Oizumi, A. Hashmi, A. Nere, U. Olces, P. Rana, and B. Shababo.
Correspondence regarding this code and the PyPhi paper should be directed to Will Mayner, at [email protected]. Correspondence regarding the Matlab code and the IIT 3.0 paper should be directed to Larissa Albantakis, PhD, at [email protected].