Skip to main content

A fully modular framework for modeling and optimizing analog/photonic neural networks

Project description

AnalogVNN

arXiv Open In Colab

PyPI version Documentation Status Python License: MPL 2.0

Documentation: https://analogvnn.readthedocs.io/

Installation:

pip install analogvnn

3 Layered Linear Photonic Analog Neural Network

Abstract

AnalogVNN is a simulation framework built on PyTorch which can simulate the effects of optoelectronic noise, limited precision, and signal normalization present in photonic neural network accelerators. We use this framework to train and optimize linear and convolutional neural networks with up to 9 layers and ~1.7 million parameters, while gaining insights into how normalization, activation function, reduced precision, and noise influence accuracy in analog photonic neural networks. By following the same layer structure design present in PyTorch, the AnalogVNN framework allows users to convert most digital neural network models to their analog counterparts with just a few lines of code, taking full advantage of the open-source optimization, deep learning, and GPU acceleration libraries available through PyTorch.

AnalogVNN Paper: https://arxiv.org/abs/2210.10048

Citing AnalogVNN

We would appreciate if you cite the following paper in your publications for which you used AnalogVNN:

@article{shah2022analogvnn,
  title={AnalogVNN: A fully modular framework for modeling and optimizing photonic neural networks},
  author={Shah, Vivswan and Youngblood, Nathan},
  journal={arXiv preprint arXiv:2210.10048},
  year={2022}
}

Or in textual form:

Vivswan Shah, and Nathan Youngblood. "AnalogVNN: A fully modular framework for modeling 
and optimizing photonic neural networks." arXiv preprint arXiv:2210.10048 (2022).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

analogvnn-1.0.5.tar.gz (48.5 kB view details)

Uploaded Source

Built Distribution

analogvnn-1.0.5-py3-none-any.whl (71.3 kB view details)

Uploaded Python 3

File details

Details for the file analogvnn-1.0.5.tar.gz.

File metadata

  • Download URL: analogvnn-1.0.5.tar.gz
  • Upload date:
  • Size: 48.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.16

File hashes

Hashes for analogvnn-1.0.5.tar.gz
Algorithm Hash digest
SHA256 0e50da0ec69b90cb513228535a60defd2df64b46591ab27f31269e9585d2e55b
MD5 918e372685669f9133ab8404bfce2347
BLAKE2b-256 718b5ca858bc02c41b5f13f4af84670e5f240758d8cc8151df78bd0a6403690e

See more details on using hashes here.

File details

Details for the file analogvnn-1.0.5-py3-none-any.whl.

File metadata

  • Download URL: analogvnn-1.0.5-py3-none-any.whl
  • Upload date:
  • Size: 71.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.16

File hashes

Hashes for analogvnn-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 f1ab1bfbde2d877a708bca400cba608983d2bda3efd87b6280d4487b56bfcfbb
MD5 ba3f8b96841a3cb5202ea312a94bc04e
BLAKE2b-256 aeda038ea090e1bfb85e259228b63c0a3b2d838b6465abcf985b8107ea4bc5b1

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page