Top Banner
Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel r 22, 2022 1 /39 SEASONs: Spiking, Entropic, Asynchronous, Self-Organizing Neural Networks On self-modifying machine learningsystems Ph.D. project: Ludovic A. Krundel Supervisors : Dr. David J. Mulvaney Dr. Vassilios A. Chouliaras Neural Networks with Neural Networks with Cellular Automata Cellular Automata
39
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 1 /39

SEASONs:Spiking, Entropic, Asynchronous,Self-Organizing Neural Networks

On self-modifying ‘machine learning’ systems

Ph.D. project: Ludovic A. Krundel

Supervisors : Dr. David J. Mulvaney

Dr. Vassilios A. Chouliaras

Neural Networks with Neural Networks with Cellular AutomataCellular Automata

Page 2: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 2 /39

Theme (talk emphasis)

● Innovative Emergence

● Connectionist approach

● Bottom-Up engineering (vs. conventional Top-Down engineering)

● Self-Modifying systems

● examples of physical implementation of NN on hardware device

● Aspects of the work:

– Scalability of NN

No learning algorithm-ready for more than 100s neurons

Interconnects issues

– Incremental Learning: trial-and-error processes ( no learning without errors)

– Asynchronous operation of the microelectronic system

introduction

Page 3: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 3 /39

CPU: ubiquitous

●established industrialised solution as general purpose processor

●Typical example of full Top-Down design engineering

●sequencer

●low software level @ high hardware level

introduction

Page 4: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 4 /39

CPU: insight

introduction

Sequencer(Automaton)Sequencer(Automaton)

Processing Unit Memory

Arithmetic and

Logic Unit

Instruction Register RI

Exchange Unit

Accus

Exchange Register RE

Address Register RAM

Ordinal Counter CO

Data

or

Instruction

Page 5: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 5 /39

CPU: the good(?) old stuff?

● fatal processing error (e.g. wrong branching)

– not reliable for critical real-time system applications

embedded software for real-time applications: aircraft autopilot, space devices

microcontrollers for medical systems

● (exhibits) untrue time-parallelism: high surface/data-time-processing cost

– Instruction level parallelism

Pipelining

Superscalar design

– Thread level parallelism (MIMD)

Multiprocessing

Multithreading

– Data parallelism (SIMD) multimedia applications

Vector processor (vectors of data)

introduction

superscalar

pipeline

subscalar

Page 6: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 6 /39

Manufacture of CPU

ASIC design flow

introduction

Page 7: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 7 /39

Manufacture of CPU

Photolithography of ASIC circuit

CMOS Technology

introduction

Page 8: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 8 /39

FPGA (Field-Programmable Gate Array)

●“Programmable Chip”

(Re-)Configurable Microelectronic Circuit

●True Time-Parallelism

●Massively parallel, highly distributed

processing units as in ASIC

●Examples of application: ASIC prototyping,

upgradeable hardware device, labs experiments

introduction

Page 9: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 9 /39

FPGA: insight

introduction

Page 10: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 10 /39

FPGA: manufacture

introduction

Page 11: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 11 /39

SOC (System-On-a-Chip)

●True Time-Parallelism + CPU

●Lower surface/data-time-processing costs

introduction

Page 12: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 12 /39

SOC: examples of application

introduction

Page 13: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 13 /39

SOC: state-of-the-art

●Embedded FPGA (eFPGA): www.menta.fr

●Embedded CPU (eCPU): Mitrionics

– Massively parallel eCPU on FPGA

Supercomputing performance

introduction

Page 14: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 14 /39

Conventional CAM (Cellular Automata Machine):“CA are a natural way of studying the evolution

of large physical systems and constitute a general paradigm for parallel computation” [Toffoli and Margolus, 1987]

● Clocked: whole 2D CA landscape updated at each clock tick (nth-order systems/rules)

● Two-state cells: e.g., alive or dead [Conway’s “Game of life”]

● Local (action-at-a-distance forbidden) and uniform (single rules’ recipe) system’s rules

part 1

Pure CA (Cellular Automata)

Page 15: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 15 /39

Examples of self-organizing CAs

Innovative Emergence?

In big CA systems, complex global behaviours can emerge! [S. Wolfram, 2002]

Neuron-like CAs:

Dendritic CA

part 1

Page 16: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 16 /39

NNs with CA

●CA can be configured to create functions

●Non-Linear Dynamics and Chaos

– Organized complexity innovative emergence

●Substrate for highly adaptive NNs

part 1

Page 17: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 17 /39

EHW

●Intrinsic vs. Extrinsic EHW

●Evolving Neural Networks based on

Cellular Automata in hardware

●Genetic Algorithms

part 1

bit-streamJTAG

chromosome

Page 18: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 18 /39

The CBM

●The CAM Brain Machine [H. de Garis, 1999]

●CAM = Cellular Automata Machine

●Growing CA-based NN modules for the

behaviour of a robot cat: Robokoneko

●Too many rules

Need ‘Rule Learning’

part 1

Page 19: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 19 /39

CNN: Cellular Neural Networks

part 1

●CNN for Machine Vision [Pr. Leong Chua]

●POEtic embryonic tissue

– Phylogenesis: evolution

– Ontogenesis: development

– Epigenesis: learning

Page 20: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 20 /39

CNN: POEtic embryonic tissue

part 1

Page 21: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 21 /39

CA-based NN

●Evolved Neural Networks based on

Cellular Automata for sensory-motor

controller [Kim & Cho, 2005]

part 1

Khepera

Page 22: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 22 /39

Cell Matrix

●The PIG Paradigm (Nicholas Macias, 1999)

●disappeared in 2005?

●FPGAs can actually also do it:

– ICAP: internal configuration access port

– Dynamic-reconfiguration efforts (IPFlex)

– Partial-reconfiguration efforts (JBits)

– Self-reconfiguration efforts (endo-reconfig)

part 1

Page 23: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 23 /39

Some Interesting Features of NNs

●Rules Extraction (from non-linear

systems) – Inductive Inference

●Learning and automatic generation of

rules instead of evolutionary approaches

●Cognitive learning vs. blind learning

part 2

Page 24: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 24 /39

Entropy Comparison Engine

●Improvability Evaluation: Self-Upgrades

●Similar concept to CPU sequencer:

systematic core engine

●Comparing NN system entropy with

environmental information

part 2

Page 25: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 25 /39

Learning Algorithm

●Robot Controller: sensor-activator

– Sensor Signals Fusion

●Unsupervised Learning

●Spiking Neurons

●Self-Adaptive NN

– Entropy-based NN re-organization

– Automatic generation of CA rules

part 2

Page 26: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 26 /39

Scalability

● Interconnects issues:

– NOC (Network-On-a-Chip)

– But FPGAs are now dominated by interconnects, just like NNs

●For more than 100s neurons:

– Modular architecture

multiplicity of learning algorithms?

– Hierarchical architecture

pseudo-fractal architecture?

part 2

Page 27: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 27 /39

Ongoing Work: Design Approach

1. Top-down design and debug of one cell

– Using conventional EDA tools and design flows

– Implement at hand a minimal set of initial rules: basic rules

2. Bottom-up assembly as multiple instantiations of totipotent cells in a modular-hierarchical fashion

– Using HDL (Balsa, Verilog) parameterization facilities:

recursive instantiation

instantiation by name

3. Real-Time Simulations of the global hardware system

– Parametric simulations

– Comprehensive analyses

– Goto 1.: Eventual refinements of the cell design and initial rules

part 2

Page 28: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 28 /39

Cell Architecture

part 2

Page 29: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 29 /39

Possible Cell Structure

part 2

Page 30: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 30 /39

Self-configured CA-based NN

Bottom-Up Engineering

part 2

Page 31: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 31 /39

Selected FPGA design flow

part 3

Xilinx ISE

Page 32: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 32 /39

Simulation with Balsa

●Spiking Entropic Asynchronous Self-

Organizing Neural networks: SEASONs

●Balsa development and simulation

environment

part 3

Page 33: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 33 /39

Simulation with Balsa

●Balsa simulation environment

part 3

Page 34: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 34 /39

FPGA Development Board

part 3

Page 35: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 35 /39

Other Hardware Machine-Learning

Techniques for Self-Modifying Systems

1. Use SystemC or Handel-C and write synthesizable(?) self-modifying code

2. Perform software simulations

3. Target hardware FPGA

4. Perform hardware simulations and compare

discussion

Page 36: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 36 /39

Neuropeptides

●nervous system + hormonal system

(immune system)

discussion

Page 37: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 37 /39

Neuro-Modulation

●why hardware machine-learning

discussion

Page 38: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 38 /39

Main Points

● SOC

● ASIC / FPGA

● CPU

● Digital Spiking NN based on asynchronous CA that dynamically reconfigure themselves to suit the changing task at hand

● Aware learning vs. blind adaptation

– Systematic learning mechanisms should not dominate a machine-learning technique

● Innovative Emergence of self-adaptation

conclusion

● CAM

● SEASON

Page 39: Neural Networks with Cellular Automata

Self-Adaptive Hardware Machine-Learning Systems Ludovic Krundel

Apr 8, 2023 39 /39

Acronyms

● FPGA: Field-Programmable Gate Array

● CPLD: Complex Programmable Logic Device

● ASIC: Application Specific Integrated Circuit

● SOC: System-On-a-Chip

● FSM: Finite State Machine

● CPU: Central Processing Unit

● DSP: Digital Signal Processor

● NN: Neural Network

● CA: Cellular Automata

● COTS: Commercially Off-The-Shelf

● EHW: Evolvable HardWare

● CAM: Cellular Automata Machine

● CBM: CAM Brain Machine

● JTAG: Joint Test Action Group

● ICAP: Internal Configuration Access Port

● RTL: Register Transfer Level

● EDIF: Electronic Design Interchange Format

● HDL: Hardware Description Language

● EDA: Electronic Design Automation

● VLSI: Very Large Scale Integration

● CMOS: Complementary Metal Oxide

Semiconductor