{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,19]],"date-time":"2026-06-19T16:35:50Z","timestamp":1781886950413,"version":"3.54.5"},"reference-count":31,"publisher":"Frontiers Media SA","license":[{"start":{"date-parts":[[2023,3,3]],"date-time":"2023-03-03T00:00:00Z","timestamp":1677801600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"content-domain":{"domain":["frontiersin.org"],"crossmark-restriction":true},"short-container-title":["Front. Comput. Neurosci."],"abstract":"<jats:p>Over the past decade a body of work has emerged and shown the disruptive potential of neuromorphic systems across a broad range of studies, often combining novel machine learning models and nanotechnologies. Still, the scope of investigations often remains limited to simple problems since the process of building, training, and evaluating mixed-signal neural models is slow and laborious. In this paper, we introduce an open-source framework, called EBANA, that provides a unified, modularized, and extensible infrastructure, similar to conventional machine learning pipelines, for building and validating analog neural networks (ANNs). It uses Python as interface language with a syntax similar to Keras, while hiding the complexity of the underlying analog simulations. It already includes the most common building blocks and maintains sufficient modularity and extensibility to easily incorporate new concepts, electrical, and technological models. These features make EBANA suitable for researchers and practitioners to experiment with different design topologies and explore the various tradeoffs that exist in the design space. We illustrate the framework capabilities by elaborating on the increasingly popular Energy-Based Models (EBMs), used in conjunction with the local Equilibrium Propagation (EP) training algorithm. Our experiments cover 3 datasets having up to 60,000 entries and explore network topologies generating circuits in excess of 1,000 electrical nodes that can be extensively benchmarked with ease and in reasonable time thanks to the native EBANA parallelization capability.<\/jats:p>","DOI":"10.3389\/fncom.2023.1114651","type":"journal-article","created":{"date-parts":[[2023,3,3]],"date-time":"2023-03-03T05:15:31Z","timestamp":1677820531000},"update-policy":"https:\/\/doi.org\/10.3389\/crossmark-policy","source":"Crossref","is-referenced-by-count":7,"title":["Energy-based analog neural network framework"],"prefix":"10.3389","volume":"17","author":[{"given":"Mohamed","family":"Watfa","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Alberto","family":"Garcia-Ortiz","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Gilles","family":"Sassatelli","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"1965","published-online":{"date-parts":[[2023,3,3]]},"reference":[{"key":"B1","doi-asserted-by":"publisher","first-page":"52","DOI":"10.1109\/JXCDC.2019.2902409","article-title":"Using floating-gate memory to train ideal accuracy neural networks","volume":"5","author":"Agarwal","year":"2019","journal-title":"IEEE J. Explor. Solid State Comput. Devices Circuits"},{"key":"B2","doi-asserted-by":"publisher","first-page":"158","DOI":"10.1109\/JSSC.2018.2869150","article-title":"An always-on 3.8 \u03bc j\/86% cifar-10 mixed-signal binary cnn processor with all memory on chip in 28-nm cmos","volume":"54","author":"Bankman","year":"2019","journal-title":"IEEE J. Solid State Circuits"},{"key":"B3","doi-asserted-by":"publisher","first-page":"64270","DOI":"10.1109\/ACCESS.2018.2877890","article-title":"Benchmark analysis of representative deep neural network architectures","volume":"6","author":"Bianco","year":"2018","journal-title":"IEEE Access"},{"key":"B4","doi-asserted-by":"publisher","first-page":"2017","DOI":"10.1109\/4.104196","article-title":"An analog neural network processor with programmable topology","volume":"26","author":"Boser","year":"1991","journal-title":"IEEE J. Solid State Circuits"},{"key":"B5","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1109\/ISCAS45731.2020.9181250","article-title":"Analog circuits to accelerate the relaxation process in the equilibrium propagation algorithm,","volume-title":"2020 IEEE International Symposium on Circuits and Systems (ISCAS)","author":"Foroushani","year":"2020"},{"key":"B6","doi-asserted-by":"publisher","first-page":"745","DOI":"10.3389\/fnins.2018.00745","article-title":"Training lstm networks with resistive cross-point devices","volume":"12","author":"Gokmen","year":"2018","journal-title":"Front. Neurosci"},{"key":"B7","doi-asserted-by":"publisher","first-page":"333","DOI":"10.3389\/fnins.2016.00333","article-title":"Acceleration of deep neural network training with resistive cross-point devices: design considerations","volume":"10","author":"Gokmen","year":"2016","journal-title":"Front. Neurosci"},{"key":"B8","first-page":"599","volume-title":"A Practical Guide to Training Restricted Boltzmann Machines","author":"Hinton","year":"2012"},{"key":"B9","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1145\/2897937.2898010","article-title":"Dot-product engine for neuromorphic computing: programming 1T1M crossbar to accelerate matrix-vector multiplication,","volume-title":"Proceedings of the 53rd Annual Design Automation Conference","author":"Hu","year":"2016"},{"key":"B10","first-page":"1","article-title":"Towards efficient on-chip learning using equilibrium propagation,","volume-title":"2020 IEEE International Symposium on Circuits and Systems (ISCAS)","author":"Ji","year":"2020"},{"key":"B11","unstructured":"JohnsonW.\n          Nonlinear Electrical Networks2010"},{"key":"B12","doi-asserted-by":"publisher","DOI":"10.48550\/ARXIV.2006.01981","article-title":"Training end-to-end analog neural networks with equilibrium propagation","author":"Kendall","year":"2020","journal-title":"arXiv Preprint"},{"key":"B13","doi-asserted-by":"crossref","first-page":"422","DOI":"10.1109\/MWSCAS.2017.8052950","article-title":"Analog CMOS-based resistive processing unit for deep neural network training,","volume-title":"2017 IEEE 60th International Midwest Symposium on Circuits and Systems (MWSCAS)","author":"Kim","year":"2017"},{"key":"B14","doi-asserted-by":"publisher","first-page":"519","DOI":"10.1109\/NEWCAS52662.2022.9842178","article-title":"Impacts of feedback current value and learning rate on equilibrium propagation performance,","author":"Kiraz","year":"2022","journal-title":"2022 20th IEEE Interregional NEWCAS Conference (NEWCAS)"},{"key":"B15","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1109\/ISCAS.2018.8351344","article-title":"Analog backpropagation learning circuits for memristive crossbar neural networks,","volume-title":"2018 IEEE International Symposium on Circuits and Systems (ISCAS)","author":"Krestinskaya","year":"2018"},{"key":"B16","doi-asserted-by":"publisher","DOI":"10.3389\/fnins.2021.633674","article-title":"Scaling equilibrium propagation to deep ConvNets by drastically reducing its gradient estimator bias","author":"Laborieux","year":"2020","journal-title":"arXiv Preprint"},{"key":"B17","article-title":"A tutorial on energy-based learning,","volume-title":"Predicting Structured Data","author":"LeCun","year":"2006"},{"key":"B18","doi-asserted-by":"publisher","first-page":"1905","DOI":"10.1109\/TCAD.2015.2445741","article-title":"Rram-based analog approximate computing","volume":"34","author":"Li","year":"2015","journal-title":"IEEE Trans. Comput. Aid. Design Integr. Circuits Syst"},{"key":"B19","doi-asserted-by":"crossref","first-page":"126","DOI":"10.1007\/978-3-030-61638-0_8","article-title":"A comparison of weight initializers in deep learning-based side-channel analysis,","volume-title":"Applied Cryptography and Network Security Workshops, Vol. 12418","author":"Li","year":"2020"},{"key":"B20","doi-asserted-by":"publisher","first-page":"102222","DOI":"10.1016\/j.isci.2021.102222","article-title":"Eqspike: spike-driven equilibrium propagation for neuromorphic implementations","volume":"24","author":"Martin","year":"2021","journal-title":"iScience"},{"key":"B21","doi-asserted-by":"crossref","first-page":"1341","DOI":"10.1109\/ACSSC.2015.7421361","article-title":"Mixed-signal circuits for embedded machine-learning applications,","volume-title":"2015 49th Asilomar Conference on Signals, Systems and Computers","author":"Murmann","year":"2015"},{"key":"B22","doi-asserted-by":"publisher","first-page":"420","DOI":"10.1109\/TED.2018.2881972","article-title":"3-d stacked synapse array based on charge-trap flash memory for implementation of deep neural networks","volume":"66","author":"Park","year":"2019","journal-title":"IEEE Trans. Electron Devices"},{"key":"B23","doi-asserted-by":"publisher","first-page":"24","DOI":"10.3389\/fncom.2017.00024","article-title":"Equilibrium propagation: bridging the gap between energy-based models and backpropagation","volume":"11","author":"Scellier","year":"2017","journal-title":"Front. Comput. Neurosci"},{"key":"B24","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1109\/IJCNN55064.2022.9891914","article-title":"Compute trends across three eras of machine learning,","author":"Sevilla","year":"2022","journal-title":"2022 International Joint Conference on Neural Networks (IJCNN)"},{"key":"B25","doi-asserted-by":"publisher","first-page":"14","DOI":"10.1109\/ISCA.2016.12","article-title":"Isaac: a convolutional neural network accelerator with in-situ analog arithmetic in crossbars,","author":"Shafiee","year":"2016","journal-title":"2016 ACM\/IEEE 43rd Annual International Symposium on Computer Architecture (ISCA)"},{"key":"B26","doi-asserted-by":"publisher","DOI":"10.48550\/ARXIV.1409.1556","article-title":"Very deep convolutional networks for large-scale image recognition","author":"Simonyan","year":"2015","journal-title":"arXiv Preprint"},{"key":"B27","doi-asserted-by":"publisher","first-page":"2295","DOI":"10.1109\/JPROC.2017.2761740","article-title":"Efficient processing of deep neural networks: a tutorial and survey","volume":"105","author":"Sze","year":"2017","journal-title":"Proc. IEEE"},{"key":"B28","doi-asserted-by":"publisher","first-page":"869","DOI":"10.1109\/COMST.2020.2970550","article-title":"Convergence of edge computing and deep learning: a comprehensive survey","volume":"22","author":"Wang","year":"2020","journal-title":"IEEE Commun. Surv. Tutor"},{"key":"B29","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1109\/SOCC56010.2022.9908086","article-title":"Energy-based analog neural network framework,","author":"Watfa","year":"2022","journal-title":"2022 IEEE 35th International System-on-Chip Conference (SOCC)"},{"key":"B30","doi-asserted-by":"publisher","first-page":"031301","DOI":"10.1063\/1.5143815","article-title":"Analog architectures for neural network acceleration based on non-volatile memory","volume":"7","author":"Xiao","year":"2020","journal-title":"Appl. Phys. Rev"},{"key":"B31","doi-asserted-by":"publisher","first-page":"240","DOI":"10.3389\/fnins.2020.00240","article-title":"Equilibrium propagation for memristor-based recurrent neural networks","volume":"14","author":"Zoppo","year":"2020","journal-title":"Front. Neurosci"}],"container-title":["Frontiers in Computational Neuroscience"],"original-title":[],"link":[{"URL":"https:\/\/www.frontiersin.org\/articles\/10.3389\/fncom.2023.1114651\/full","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,3,3]],"date-time":"2023-03-03T05:15:40Z","timestamp":1677820540000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.frontiersin.org\/articles\/10.3389\/fncom.2023.1114651\/full"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,3,3]]},"references-count":31,"alternative-id":["10.3389\/fncom.2023.1114651"],"URL":"https:\/\/doi.org\/10.3389\/fncom.2023.1114651","relation":{},"ISSN":["1662-5188"],"issn-type":[{"value":"1662-5188","type":"electronic"}],"subject":[],"published":{"date-parts":[[2023,3,3]]},"article-number":"1114651"}}