Skip to content

A tool for construction and conversion of neural networks across different standards

License

Notifications You must be signed in to change notification settings

NeVerTools/CoCoNet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CoCoNet

CoCoNet is a tool for construction and conversion of neural networks across different standards. See the LICENSE for usage terms.
CoCoNet is written in Python, and relies on the pyNeVer API.

Publications

Here we collect the bibtex entries on our publications related to CoCoNet

@inproceedings{FoMLAS2023:DemarchiGPT23,
  author    = {Stefano Demarchi and Dario Guidotti and Luca Pulina and Armando Tacchella},
  title     = {Supporting Standardization of Neural Networks Verification with {VNNLIB} and {CoCoNet}},
  booktitle = {Proceedings of the 6th Workshop on Formal Methods for ML-Enabled Autonomous Systems},
  editor    = {Nina Narodytska and Guy Amir and Guy Katz and Omri Isac},
  series    = {Kalpa Publications in Computing},
  volume    = {16},
  pages     = {47--58},
  year      = {2023},
  publisher = {EasyChair},
  issn      = {2515-1762},
  url       = {https://easychair.org/publications/paper/Qgdn},
  doi       = {10.29007/5pdh}}

Execution requirements

CoCoNet can be executed on any system running Python >= 3.9.5
The instructions below have been tested on Windows, Ubuntu Linux and Mac OS x86 and ARM-based Mac OS.

Linux, Mac OS x86 & Windows

The packages required in order to run CoCoNet are the pyNeVer API and the PyQt6 framework, which can be installed via PIP

pip install pynever PyQt6

After the installation, you can run CoCoNet from the root directory

python CoCoNet/coconet.py

ARM-based Mac OS

Since the Python packages needed are incompatible with "Python for ARM Platform" you can install miniforge for arm64 (Apple Silicon) and create a Python virtual environment.

Create a new environment using Python 3.9.5 and activate it

$ conda create -n myenv python=3.9.5
$ conda activate myenv
$ conda install -c apple tensorflow-deps

You can now run PIP for installing the libraries and run CoCoNet

$ pip install tensorflow-macos tensorflow-metal
$ pip install pynever PyQt6
$ python CoCoNet/coconet.py

Note that each time you want to run CoCoNet you'll need to activate the Conda environment.

Usage

CoCoNet is a GUI for constructing and converting Neural Networks, but it also provides a simple CLI usage for checking whether a NN is compliant with VNN-LIB and quick-converting networks in the ONNX format. Typing

python CoCoNet/coconet.py -h

shows the possible command-line instructions available.

About

A tool for construction and conversion of neural networks across different standards

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages