A python package based on the brains-py library to peform benchmark tests and tasks for studying the capacity of the boron-doped silicon devices. The package is part of the brains-py project, a set of python libraries to support the development of nano-scale in-materio hardware neural-network accelerators.
- : A python package to support the study of Dopant Network Processing Units as hardware accelerators for non-linear operations. Its aim is to support key functions for hardware setups and algorithms related to searching functionality on DNPUs and DNPU architectures both in simulations and in hardware.
- : A python package for creating surrogate models of nano-electronic materials.
This package supports the following tasks:
- Boolean classifier:
- A single boolean gate classifier
- VC-Dimension tests
- Capacity tests for checking the performance on multiple VC-Dimensions
- Ring classifier:
- A particular ring classifier with a given separation gap
- Multiple runs on a ring classifier with a given separation gap
- Capacity tests for checking the performance on multiple separation gaps for several runs
The installation instructions differ depending on whether if you want to install as a developer or as a user of the library. Please follow the instructions that are most suitable for you:
This code is released under the GNU GENERAL PUBLIC LICENSE Version 3. Click here to see the full license. The package relies on the following libraries:
- brains-py
- matplotlib
This package has been created and it is maintained by the Brains team of the NanoElectronics research group at the University of Twente. It has been designed and developed by:
- Unai Alegre-Ibarra, @ualegre (u.alegre@utwente.nl)
- Hans Christian Ruiz-Euler, @hcruiz (h.ruiz@utwente.nl)
With the contribution of:
- Bram van de Ven, @bbroo1 (b.vandeven@utwente.nl) : General improvements and testing of the different hardware drivers and devices.
- Michel P. de Jong @xX-Michel-Xx (m.p.dejong@utwente.nl): Testing of the package and identification of bugs.
- Jochem Wildeboer @jtwild Perturbation ranking, Gradient ranking and Patch mapping tasks.
Some of the code present in this project has been refactored from the skynet legacy project. The original contributions to the scripts, which are the base of this project, can be found at skynet, and the authorship remains of those people who collaborated in it. Using existing scripts from skynet, a whole new structure has been designed and developed to be used as a general purpose python library.