An easy-to-use api for the closed-form continuous models in tensorflow
Project description
Closed-form Continuous-time Models
Closed-form Continuous-time Neural Networks (CfCs) are powerful sequential neural information processing units.
Paper Open Access: https://www.nature.com/articles/s42256-022-00556-7
Arxiv: https://arxiv.org/abs/2106.13898
Installation
pip install cfc-model
Requirements
- Python 3.7 or newer
- Tensorflow 2.4 or newer
- Pandas
- Numpy
For a fresh anaconda environment with the required dependencies:
conda env create --file environment.yml
conda activate cfc
Usage
Example
from cfc_model.dense_models import SequentialModel
import numpy as np
X = np.array([[1, 1, 1, 0], [1, 1, 0, 1], [1, 0, 0, 1], [1, 1, 0, 0],
[1, 0, 1, 0], [1, 1, 0, 1], [1, 0, 0, 1], [1, 0, 1, 0]])
y = np.array([0, 0, 1, 1, 1, 0, 1, 1])
model = SequentialModel()
model.fit(X, y)
y_pred = model.predict([1, 1, 0, 1]) # y_pred equals 0
Configuration
The following configuration states can be used
no_gateRuns the CfC without the (1-sigmoid) partminimalRuns the CfC direct solutionuse_ltcRuns an LTC with a semi-implicit ODE solver instead of a CfCuse_mixedMixes the CfC's RNN-state with a LSTM to avoid vanishing gradients
If none of these flags are provided, the full CfC model is used
Example
# Runs an LTC with a semi-implicit ODE solver instead of a CfC
config = {"use_ltc": True}
model.fit(X, y, config=config)
Cite
@article{hasani_closed-form_2022,
title = {Closed-form continuous-time neural networks},
journal = {Nature Machine Intelligence},
author = {Hasani, Ramin and Lechner, Mathias and Amini, Alexander and Liebenwein, Lucas and Ray, Aaron and Tschaikowski, Max and Teschl, Gerald and Rus, Daniela},
issn = {2522-5839},
month = nov,
year = {2022}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cfc_model-1.1.4.tar.gz.
File metadata
- Download URL: cfc_model-1.1.4.tar.gz
- Upload date:
- Size: 23.0 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5efdc17a387b9f9898f083cee8f58319ea4031f5c429584a0456ffd11fde61d3
|
|
| MD5 |
a23bfa1b8da97023845b6ed4f7ec39c3
|
|
| BLAKE2b-256 |
5419a30a83190c9a8775fc14fd02110ba766152f409d22dfeba8b6121995df85
|
File details
Details for the file cfc_model-1.1.4-py3-none-any.whl.
File metadata
- Download URL: cfc_model-1.1.4-py3-none-any.whl
- Upload date:
- Size: 23.0 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6d399ac183383112aeac8af560f9cb77172a3e4ce8df8d05ab77498c7e5c56a5
|
|
| MD5 |
3bcea276ca94cf76ce64e10bca6f429a
|
|
| BLAKE2b-256 |
3c173225c5fc8a9efb50e6d1e3499d99bc1687efbe2e4bebad622b5a67a32373
|