\documentclass[10pt]{article}

\usepackage{fullpage}
\usepackage{setspace}
\usepackage{parskip}
\usepackage{titlesec}
\usepackage[section]{placeins}
\usepackage{xcolor}
\usepackage{breakcites}
\usepackage{lineno}
\usepackage{hyphenat}





\PassOptionsToPackage{hyphens}{url}
\usepackage[colorlinks = true,
            linkcolor = blue,
            urlcolor  = blue,
            citecolor = blue,
            anchorcolor = blue]{hyperref}
\usepackage{etoolbox}
\makeatletter
\patchcmd\@combinedblfloats{\box\@outputbox}{\unvbox\@outputbox}{}{%
  \errmessage{\noexpand\@combinedblfloats could not be patched}%
}%
\makeatother


\usepackage{natbib}




\renewenvironment{abstract}
  {{\bfseries\noindent{\abstractname}\par\nobreak}\footnotesize}
  {\bigskip}

\titlespacing{\section}{0pt}{*3}{*1}
\titlespacing{\subsection}{0pt}{*2}{*0.5}
\titlespacing{\subsubsection}{0pt}{*1.5}{0pt}


\usepackage{authblk}


\usepackage{graphicx}
\usepackage[space]{grffile}
\usepackage{latexsym}
\usepackage{textcomp}
\usepackage{longtable}
\usepackage{tabulary}
\usepackage{booktabs,array,multirow}
\usepackage{amsfonts,amsmath,amssymb}
\providecommand\citet{\cite}
\providecommand\citep{\cite}
\providecommand\citealt{\cite}
% You can conditionalize code for latexml or normal latex using this.
\newif\iflatexml\latexmlfalse
\providecommand{\tightlist}{\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}%

\AtBeginDocument{\DeclareGraphicsExtensions{.pdf,.PDF,.eps,.EPS,.png,.PNG,.tif,.TIF,.jpg,.JPG,.jpeg,.JPEG}}

\usepackage[utf8]{inputenc}
\usepackage[english]{babel}








% Edit this header.tex file to include frontmatter definitions and global macros

% Add here any LaTeX packages you would like to load in all document blocks
% \usepackage{xspace}

% Add here any LaTeX macros you would like to load in all document blocks
% \def\example{This is an example macro.}
\usepackage{tabulary}
\usepackage{enumerate}
\usepackage{threeparttable}

\usepackage{acronym}
\acrodef{RRAM}[RRAM]{Resistive Random Access Memory}
\acrodef{DL}[DL]{Deep Learning}
\acrodef{DMNN}[DMNN]{Deep Memristive Neural Network}
\acrodef{IMC}[IMC]{In-Memory Computing}
\acrodef{CNN}[CNN]{Convolutional Neural Network}
\acrodef{JCU}[JCU]{James Cook University}
\acrodef{ECR}[ECR]{Early Career Researcher}
\acrodef{DRTPS}[DRTPS]{Domestic Prestige Research Training Program Scholarship}
\acrodef{ETML}[ETML]{Electro‐thermal Modulation Layer}
\acrodef{NLSR}[NLSR]{Nonlinear Least Squares Regression}
\acrodef{SNN}[SNN]{Spiking Neural Network}
\acrodef{STDP}[STDP]{Spike Timing Dependant Plasticity}
\acrodef{LIF}[LIF]{Leaky Integrate and Fire}
\acrodef{MNIST}[MNIST]{Modified National Institute of Standards and Technology}
\acrodef{PCM}[PCM]{Phase Change Memory}
\acrodef{ECM}[ECM]{Electrochemical Metallisation}
\acrodef{VCM}[VCM]{Valence Change Memory}
\acrodef{TSM}[TSM]{Threshold Switching Mechanism}
\acrodef{PECVD}[PECVD]{Plasma Enhanced Chemical Vapour Deposition}
\acrodef{ML}[ML]{Machine Learning}
\acrodef{DNN}[DNN]{Deep Neural Network}
\acrodef{ANN}[ANN]{Artificial Neural Network}
\acrodef{NN}[NN]{Neural Network}
\acrodef{VTEAM}[VTEAM]{Voltage Threshold Adaptive Memristor}
\acrodef{CMOS}[CMOS]{Complementary Metal-Oxide-Semiconductor} 
\acrodef{SOTA}[SOTA]{State-Of-The-Art}
\acrodef{EFISHG}[EFISHG]{Electric Field Induced optical second Harmonic Generation}
% -----

\iflatexml
% Add here any LaTeXML-specific commands

% -----

\else
% Add here any export style-specific LaTeX commands. These will only be loaded upon document export. 
% \paperfield{Subject domain of my document}
% \keywords{keyword1, keyword2}
% \corraddress{Author One PhD, Department, Institution, City, State or Province, Postal Code, Country}
% \fundinginfo{Funder One, Funder One Department, Grant/Award Number: 123456.}
\fi


\begin{document}

\title{{Unsupervised Character Recognition with Graphene Memristive Synapses}}



\author[1]{Ben Walters}%
\author[1]{Corey Lammie}%
\author[2]{Shuangming Yang}%
\author[1]{Mohan Jacob}%
\author[1]{Mostafa Rahimi Azghadi}%
\affil[1]{College of Science and Engineering, James Cook University, Townsville, QLD 4811, Australia}%
\affil[2]{School of Electrical and Information Engineering, Tianjin University, China}%


\vspace{-1em}



  
  \date{May 26, 2024}


\begingroup
\let\center\flushleft
\let\endcenter\endflushleft
\maketitle
\endgroup





\selectlanguage{english}
\begin{abstract}
Memristive devices being applied in neuromorphic computing are
envisioned to significantly improve the power consumption and speed of
future computing platforms. The materials used to fabricate such devices
will play a significant role in their viability. Graphene is a promising
material, with superb electrical properties and the ability to be
produced sustainably. In this paper, we demonstrate that a fabricated
graphene-pentacene memristive device can be used as synapses within
Spiking Neural Networks (SNNs) to realise Spike Timing Dependent
Plasticity (STDP) for unsupervised learning in an efficient manner.
Specifically, we verify operation of two SNN architectures tasked for
single digit (0-9) classification: (i) a simple single-layer network,
where inputs are presented in 5x5 pixel resolution, and (ii) a larger
network capable of classifying the Modified National Institute of
Standards and Technology (MNIST) dataset, where inputs are presented in
28x28 pixel resolution. Final results demonstrate that for 100 output
neurons, after one training epoch, a test set accuracy of up to 86\% can
be achieved, which is higher than prior art using the same number of
output neurons. We attribute this performance improvement to homeostatic
plasticity dynamics that we used to alter the threshold of neurons
during training. Our work presents the first investigation of the use of
green-fabricated graphene memristive devices to perform a complex
pattern classification task. This can pave the way for future research
in using graphene devices with memristive capabilities in neuromorphic
computing architectures. In favour of reproducible research, we make our
code and data publicly
available~\url{https://anonymous.4open.science/r/c69ab2e2-b672-4ebd-b266-987ee1fd65e7}.%
\end{abstract}%



\sloppy


\par\null

Corresponding author(s)
Email:\emph{{~}mostafa.rahimiazghadi@jcu.edu.au{~ ~}}

\section{ToC Figure}

{\label{510509}}\par\null\selectlanguage{english}
\begin{figure}[h!]
\begin{center}
\includegraphics[width=0.70\columnwidth]{figures/blank/Graphical-Abstract}
\caption{{\textbf{ToC Figure.}~In this paper, we develop a STDP window using I-V
data from a graphene-based memristive device. We show that this STDP
window is suitable for use in a Spiking Neural Network. We also
demonstrate our networks' capabilities of performing two classification
tasks. The results clearly show that our network's performance is
comparable to state-of-the-art while using green-fabricated
graphene-based memristive devices.
{\label{506762}}%
}}
\end{center}
\end{figure}

\par\null

\section{Introduction}

{\label{121439}}

There is a plethora of work dedicated to the memristor, ever since its concept was proposed by Leon Chua in~\hyperref[csl:1]{(Chua, 1971)}. Specifically, the hysteresis effect observed in memristive devices allows for in-situ learning and memory, breaking down the Von-Neumann bottleneck present in traditional computing architectures~\hyperref[csl:2]{(Maranhão \& Guimarães, 2021}; \hyperref[csl:3]{Rahimi Azghadi et al., 2020)}. The first fabricated memristor was created by HP labs in 2008~\hyperref[csl:4]{(Strukov et al., 2008)}, and ever since many different devices have been created, with a variety of switching properties observed. Examples include conductive filament (the most common)~\hyperref[csl:5]{(Sun et al., 2021)}, Schottky Barrier~\hyperref[csl:6]{(Wang et al., 2021)}, and other less common switching mechanisms~\hyperref[csl:7]{(Rouco et al., 2021}; \hyperref[csl:8]{Komarov et al., 2021)}. There are even mechanisms within these mechanisms such as Electrochemical Metallisation (ECM)~\hyperref[csl:9]{(Guo et al., 2021}; \hyperref[csl:10]{Kim et al., 2021)}, Valence Change Memory (VCM)~\hyperref[csl:11]{(Ahn et al., 2021)}, Phase Change Memory (PCM)~\hyperref[csl:12]{(Ambrogio et al., 2016)}, and Threshold Switching Mechanism (TSM)~\hyperref[csl:13]{(Wang et al., 2021)}, all pertaining to conductive filament resistive switching.

One of the most important aspects of memristor design is choosing its constructive material, with different materials such as conventional oxides~\hyperref[csl:11]{(Ahn et al., 2021)}, and 2D materials like graphene~\hyperref[csl:14]{(Zhang et al., 2021)}, being recent common choices. Of particular interest in this paper is the use of graphene, not only due to its superior electrical properties, but also due to the ability to manufacture graphene sustainably and at a low cost~\hyperref[csl:15]{(Jacob et al., 2015)}. Since memristors have been demonstrated to be able to play a significant role in Artificial Intelligence (AI) hardware~\hyperref[csl:3]{(Rahimi Azghadi et al., 2020}; \hyperref[csl:16]{Burr, 2019)}, this can be beneficial in building large-scale neuromorphic, Machine Learning (ML), and Deep Learning (DL) systems towards green intelligent machines.

There are many forms of ML and DL architectures including Deep Neural Networks (DNNs)~\hyperref[csl:17]{(Xiang et al., 2019}; \hyperref[csl:18]{Vaila et al., 2020)}, which are capable of performing many challenging engineering tasks~\hyperref[csl:19]{(Chellappa et al., 2021)}. These architectures, which rely on the first and second generations of Artificial Neural Networks (ANNs), usually learn by minimising an error function through optimising their learning parameters, which may differ to the learning processes in biological brains. On the other hand, neuromorphic and bio-inspired computing systems, emulate biophysical processes that occur in the brain, which are believed to be responsible for biological learning and memory. SNNs, commonly referred to as the third generation of ANNs, are the fundamental architecture of neuromorphic systems. They transmit information in the form of voltage spikes~\hyperref[csl:20]{(Zhang \& Li, 2019)}, asynchronously. Consequently, they are capable of efficient low-power operation~\hyperref[csl:21]{(Zambrano et al., 2019)}, because unlike conventional ANNs that work on a synchronous clock-driven basis, they process data only when available and are in low-power mode at other times.

Another difference between neuromorphic SNNs and their DNN counterparts is the way they learn. Unlike DNNs, SNNs usually follow an unsupervised learning mechanism, where the synaptic weights of the network are modified by a bio-inspired mechanism, and not an error minimisation process. 
One of the most widely-used and -studied brain-inspired learning mechanisms that has been the subject of myriad studies~\hyperref[csl:3]{(Rahimi Azghadi et al., 2020}; \hyperref[csl:22]{Azghadi et al., 2017}; \hyperref[csl:23]{Azghadi et al., 2013)} is STDP. STDP governs the synaptic weight changes in an unsupervised manner, and based on the timing of neuronal activity events~\hyperref[csl:24]{(Song et al., 2000)}. 

To fully exploit the remarkable benefits of graphene devices in neuromorphic computing, in this paper, we utilise a sustainably-sourced graphene device to implement STDP. To that end, we first generate a STDP learning mechanism utilising the current-voltage data obtained from a sample graphene-pentacene (Al/ C$_{22}$H$_{14}$/C$_{140}$H$_{42}$O$_{20}$/SiO$_2$/Si) memristive device, fabricated by our group~\hyperref[csl:15]{(Jacob et al., 2015)}. 
We then use this graphene-based STDP learning to perform comprehensive simulations of SNNs containing Leaky Integrate and Fire (LIF) neurons with adaptive voltage thresholds for two classification tasks; binary pattern classification, and hand-written digit classification.

We demonstrate significant performance on both tasks. We also release our code and data, providing a benchmark of comparison for future research endeavours investigating the use of graphene-based devices for neuromorphic computing systems. Our specific contributions are as follows:

\begin{enumerate}
    \item For the first time, we generate a STDP window using the I-V data from a graphene-pentacene memristive device for use in large-scale simulations of SNNs;
    % \item Generated a \ac{STDP} window using the I-V data for the graphene/pentacene device;
    \item We evaluate the effectiveness of our graphene-pentacene memristive device when used in conjunction with LIF neurons with an adaptive threshold voltage using a simple pattern classification task;
    % \item Implemented the device into a single-layer network to verify performance;
    % \item Implemented the device into a larger network to demonstrate MNIST classification.
    \item We demonstrate competitive performance on the unsupervised learning of MNIST dataset when simulating larger networks, and report state-of-the-art performance for some network configurations.
\end{enumerate}


The rest of the paper is structured as follows. Section \ref{sec:rel-work} describes related work. Section \ref{sec:graphene} discusses how the graphene-based device that was used in the network simulations was fabricated and simulated. Section \ref{sec:unsupervised} explains the layout and components of a single-layer network used to verify the learning in the graphene-based device using a simple binary pattern classification task. Section \ref{sec:mnist} presents the network used to perform the MNIST classification task and discusses its achieved results compared to literature. Finally, the paper is concluded in Section~\ref{sec:conclusion}.

\section{Related Work} \label{sec:rel-work}

\subsection{Unsupervised STDP-based MNIST Classification}
Many works have investigated unsupervised learning in \acp{SNN}. In~\hyperref[csl:25]{(Diehl \& Cook, 2015)}, Diehl and Cook designed a network to perform unsupervised learning of the MNIST dataset. They achieved a classification accuracy of 95.0$\%$ with 6,400 excitatory neurons. They also reported accuracies between 80.0$\%$ and 90.0$\%$ when they tested their network with 100-1600 excitatory neurons. Although 95.0$\%$ is one of the highest accuracies using unsupervised STDP learning reported in the literature, Diehl and Cook utilised a non-memristive software-based synapse model.

Brivio \textit{et al.}~\hyperref[csl:26]{(Brivio et al., 2021)} also performed unsupervised STDP learning of the MNIST dataset using a SNN. Whilst their reported accuracies tended to saturate at 85.0$\%$, their aim was to test architectures that could possibly be implemented in hardware using the hybrid Complementary Metal-Oxide-Semiconductor (CMOS)-memristive technologies, unlike~\hyperref[csl:25]{(Diehl \& Cook, 2015)} which focused on theoretical architectures and learning rules. 
In another work, Querlioz \textit{et al.} \hyperref[csl:27]{(Querlioz et al., 2013)} performed unsupervised learning with memristive STDP synapses, and achieved an accuracy of 93.5$\%$ with 300 output neurons. Several other works \hyperref[csl:28]{(Covi et al., 2016}; \hyperref[csl:29]{Qu et al., 2020}; \hyperref[csl:30]{Demin et al., 2021}; \hyperref[csl:31]{Hajiabadi \& Shalchian, 2021}; \hyperref[csl:32]{Kim et al., 2015)} have also tested SNNs, using memristive synapses. \textbf{Table~\ref{tab:MNISTComparison}} lists the related memristive STDP studies, along with their memristive material choices (where applicable), their customised synaptic learning rule, their image pre-processing techniques, as well as the number of training epochs they have used. We have also listed our graphene-based memristive STDP synapse model. % their performances in terms of classification accuracy of the \ac{MNIST} dataset. 
These works are used as a benchmark for the results of this paper. It is worth noting that, we could not find any previous works that used graphene-based memristors for learning MNIST by a SNN.\selectlanguage{english}
\begin{table*}[!t]
\centering
\caption{{\label{tab:MNISTComparison} Related work on usnsupervised STDP-based MNIST classification.}}
% \begin{tabular}{ccccc}
\begin{tabulary}{1\textwidth}{CCCCC}
\toprule \toprule
\textbf{Paper} &
  \textbf{Synapse Learning Rule} &
  \textbf{N. Epochs} &
  \textbf{Image Pre-processing} &
  \textbf{Memristive Material} \\ \hline
\hyperref[csl:25]{(Diehl \& Cook, 2015)} & Weight Dependant STDP & 1,3,7,15 & Frequency Proportional Spike Trains & N/A \\ \hline
\hyperref[csl:26]{(Brivio et al., 2021)} & Simulated memristive           & 1  & Frequency Proportional Spike Trains       & N/A               \\ \hline
\hyperref[csl:27]{(Querlioz et al., 2013)} & Fixed STDP                & 3  & Frequency Proportional Spike Trains       & N/A               \\ \hline
\hyperref[csl:32]{(Kim et al., 2015)}& Device conductance mapping, STDP & 1& Frequency Proportional Spike Trains & Carbon nanotube \\ \hline
\hyperref[csl:33]{(Hansen et al., 2017)} & Device conductance mapping, STDP       & 3  & Frequency Proportional Spike Trains       &
\multicolumn{1}{c}{\begin{tabular}[c]{@{}c@{}}Al/Al$_{2}$O$_{3}$/Nb$_{x}$\\O$_{y}$/Au\end{tabular}} \\ \hline
\hyperref[csl:34]{(Guo et al., 2019)} & Soft-bound STDP               & 1  & Frequency Proportional Spike Trains       & TaO$_{y}$/HfO$_{x}$         \\ \hline
\hyperref[csl:35]{(Nandakumar \& Rajendran, 2020)} & Device conductance mapping, STDP & 10 & Image thresholding & Cu/SiO$_{2}$/W         \\ \hline
\hyperref[csl:36]{(Boybat et al., 2018)} & Multi-memristive synapse       & 3  & Frequency Proportional Spike Trains       & Ge$_{2}$Sb$_{2}$Te$_{5}$         \\ \hline

\textbf{This Paper} &
  \textbf{Device current mapping, STDP} &
  \textbf{1,1,2,3,3} &
  \textbf{Image thresholding} &
  \multicolumn{1}{c}{\begin{tabular}[c]{@{}c@{}}\textbf{Al/C$_{22}$H$_{14}/$C$_{140}$}\\\textbf{H$_{42}$O$_{20}$/SiO$_2$/Si}\end{tabular}}\\
  \bottomrule \bottomrule
% \end{tabular}
\end{tabulary}  
\end{table*}

\subsection{Graphene-based Synapses in SNNs}
Graphene has long been researched and studied due to its widely useful electrical and mechanical properties, such as zero bandgap, linear energy dispersion near the dirac point and a high electron mobility of 15,000 $cm^{2}V^{-1}s^{-1}$ \hyperref[csl:37]{(Kopelevich et al., 2012)} as well as high thermal conductivity and mechanical robustness \hyperref[csl:37]{(Kopelevich et al., 2012}; \hyperref[csl:38]{Akinwande et al., 2017)}. Furthermore, recent studies have demonstrated the viability of green fabrication of graphene. In particular \hyperref[csl:15]{(Jacob et al., 2015)} has demonstrated that graphene can be fabricated in a rather sustainable manner by using natural extracts as precursors. Because of this, graphene is touted to having many potential applications such as transistors, Transparent Conducting Electrodes (TCEs), Photovoltaics, Light-Emitting Diodes (LEDs), among others \hyperref[csl:37]{(Kopelevich et al., 2012)}. Hence, many devices ranging in purpose have been fabricated by utilising graphene, such as graphene memristive devices.

Many different types of graphene memristive devices have been developed, such as graphene based transistors~\hyperref[csl:39]{(Chen et al., 2019}; \hyperref[csl:40]{Schranghamer et al., 2020}; \hyperref[csl:41]{Sun et al., 2021)}, Graphene-oxide based memristors~\hyperref[csl:42]{(Abunahla et al., 2020}; \hyperref[csl:43]{Qi et al., 2020}; \hyperref[csl:44]{Romero et al., 2020}; \hyperref[csl:45]{Porro et al., 2015)} as well as other graphene-based memristive devices~\hyperref[csl:46]{(Liu et al., 2018}; \hyperref[csl:47]{Krishnaprasad et al., 2019}; \hyperref[csl:15]{Jacob et al., 2015)}. Other 2D materials such as black phosphorous, boron nitrides, dichalcogenides, 2D perovskite have picked up interest in this field as well~\hyperref[csl:48]{(Feng et al., 2020}; \hyperref[csl:14]{Zhang et al., 2021}; \hyperref[csl:49]{Cao et al., 2021}; \hyperref[csl:50]{Yalagala et al., 2019)}.

During the process of device characterisation, it is natural to investigate the memristive properties for their suitability within neuromorphic applications. One of the most widely investigated aspects of memristors is their ability to perform the STDP learning rule. The STDP learning rule is a biologically derived learning rule which relates the timing of pre- and post-synaptic voltage spikes to determine changes in synaptic weights~\hyperref[csl:51]{(Bi \& Poo, 2001)}. Works such as~\hyperref[csl:52]{(Sahu et al., 2021}; \hyperref[csl:53]{Wang et al., 2020}; \hyperref[csl:54]{Wang et al., 2021)} have developed STDP windows for their devices.

In some of these works, graphene-based devices were implemented into various types of NNs. Some works, such as~\hyperref[csl:43]{(Qi et al., 2020}; \hyperref[csl:42]{Abunahla et al., 2020)}, have implemented their devices into ANNs to perform image recognition, whilst other works such as~\hyperref[csl:39]{(Chen et al., 2019}; \hyperref[csl:55]{Wang et al., 2020}; \hyperref[csl:53]{Wang et al., 2020}; \hyperref[csl:54]{Wang et al., 2021)}, implemented their devices into SNNs. In~\hyperref[csl:39]{(Chen et al., 2019)}, the network was trained using a supervised learning rule. \hyperref[csl:54]{(Wang et al., 2021)} showed a graphene-based synapses with synaptic plasticity, but
did not perform a pattern classification task. However,~\hyperref[csl:55]{(Wang et al., 2020)} performed unsupervised learning in a manner very similar to this paper, as did~\hyperref[csl:53]{(Wang et al., 2020)} and~\hyperref[csl:56]{(Wang et al., 2021)}. In all cases, alphabetic characters were classified, making it difficult to benchmark their performance against other SNNs that have generally been tested on classifying the MNIST dataset.
In fact, Table \ref{tab:MNISTComparison} shows that, to the best of our knowledge, no previous work has used graphene-based synapses to perform unsupervised classification of MNIST dataset using the STDP rule, which is performed in this paper.

There have also been works based on developing memristive models for implementation in SNNs. Some models, such as the Simmons tunnel barrier model, the ion drift models (linear and non-linear), and Stanford-PKU model are complex, physics based models~\hyperref[csl:57]{(Hajri et al., 2019}; \hyperref[csl:58]{Pershin \& Di Ventra, 2012)}. Other models such as the Voltage Threshold Adaptive Memristor (VTEAM) model~\hyperref[csl:59]{(Kvatinsky et al., 2015)}, or the data-driven model proposed in~\hyperref[csl:60]{(Messaris et al., 2018)}, are empirical. There has even been work investigating analytical models for graphene oxide devices~\hyperref[csl:52]{(Sahu et al., 2021)}. The choice of model used is dependant on the properties and switching characteristics of the device in question, and it is sometimes necessary to accommodate for the differences between model and device performance.

\section{Graphene Device Implementation}\label{sec:graphene}
We have previously characterised the memristive behaviour of our graphene-based device \hyperref[csl:15]{(Jacob et al., 2015)} used in this work. The device consists of graphene sandwiched in between layers of pentacene, aluminium and fused silica, as shown in \textbf{Figure~\ref{349880}}. The utilised graphene was fabricated using the Plasma Enhanced Chemical Vapour Deposition (PECVD) method described in~\hyperref[csl:15]{(Jacob et al., 2015)}.\selectlanguage{english}
\begin{figure}[h!]
\begin{center}
\includegraphics[width=0.70\columnwidth]{figures/Graphene-PentaceneDevice/Figure-2}
\caption{{Structure and dimensions of our fabricated graphene/pentacene memristive
device.
{\label{349880}}%
}}
\end{center}
\end{figure}

\textbf{Figure~\ref{308147}} shows the experimental I-V characteristics of a representative device that was later used to determine the STDP window for this work. This memristive device implemented graphene as an electrode, due to its superior conductivity.
The resistive switching behaviour of the fabricated device is attributed to hole injection at the graphene pentacene interface, which makes the device memristive~\hyperref[csl:61]{(Jacob et al., 2017)} .

Initially, the VTEAM model~\hyperref[csl:59]{(Kvatinsky et al., 2015)} was curve-fitted to the I-V data generated by the device, by minimising the error function specified in~\hyperref[csl:59]{(Kvatinsky et al., 2015)}. Figure~\ref{308147} illustrates the final result from the curve fitting procedure. Whilst a close fit with most of the data was achieved, there was clearly a section of data on the right hand side of Figure~\ref{308147} that did not align with the model well. %Despite best efforts,
Therefore, this data could not be reconciled with the VTEAM model. Upon further investigation, it was revealed that the I-V data was undergoing significant conductance changes when the voltage was beyond the positive and negative thresholds, like the VTEAM model, but also when the voltage was reset back to zero. It was therefore decided that the VTEAM memristor model could not be used, hence another approach was devised to utilise the memristive behaviour of our graphene-based device to implement STDP for our unsupervised pattern classification task. This method is described in Section~\ref{sec:syn}.

Therefore, this data could not be reconciled with the VTEAM model. Upon further investigation, it was revealed that the I-V data was undergoing significant conductance changes when the voltage beyond the positive and negative thresholds, like the VTEAM model, but also when the voltage was reset back to zero. It was therefore decided that the VTEAM memristor model could not be used, hence another approach was devised to utilise the memristive behaviour of our graphene-based device to implement STDP for our unsupervised pattern classification task. This method is described in Section~\ref{sec:syn}.\selectlanguage{english}
\begin{figure}[h!]
\begin{center}
\includegraphics[width=0.70\columnwidth]{figures/VTEAM-CurveFitting/Figure-3}
\caption{{IV data of the graphene/pentacene memristive device (blue) and the VTEAM
model curve-fitted to it (red).
{\label{308147}}%
}}
\end{center}
\end{figure}

\section{Unsupervised Binary Pattern Classification} \label{sec:unsupervised}
In this section, we discuss the structure and building blocks of a simple single-layer network we used in our simulations to perform unsupervised pattern classification using our graphene-based memristive synapse.\selectlanguage{english}
\begin{figure}[h!]
\begin{center}
\includegraphics[width=450px]{figures/PreVsPost/Figure-4}
\caption{{Deriving the STDP waveform. (a) The pre- (blue) and post-synaptic
(green) action potentials for various~\(\Delta T\) values, summing
to an overall memristive voltage waveform (red). (b) The current
waveform produced by interpolating the values in the red waveform of (a)
onto the graphene I-V data in Fig. 3. ~
{\label{742947}}%
}}
\end{center}
\end{figure}

\subsection{Neuron Model} 
The LIF neuron was used, as it has previously demonstrated significant performance in many neuromorphic systems \hyperref[csl:3]{(Rahimi Azghadi et al., 2020}; \hyperref[csl:62]{Azghadi et al., 2015)}, and it has a much smaller hardware footprint compared to more complex neuron models, such as the Izhikevich \hyperref[csl:63]{(Izhikevich, 2003)} and Hodgkin-Huxley neuron model \hyperref[csl:64]{(Hodgkin \& Huxley, 1990)}. The membrane voltage, $V$, of a LIF neuron is described as
\begin{equation}\label{eq:LIF_model}
    \tau \frac{dV}{dt} = (E_{rest} - V) + I_{sum}R,
\end{equation}

\noindent where $E_{rest}$ is the resting potential, $\tau$ is the membrane time constant, $R$ is the membrane resistance, and $I_{sum}$ is the sum of the input currents into the neuron~\hyperref[csl:65]{(Mihalaş \& Niebur, 2009)}. When the membrane potential exceeds the neurons threshold voltage, $V_{th}$, the neuron's membrane potential resets to its resting potential, $E_{rest}$. The neuron parameters used in our simulations are as follows: $\tau = 0.03s$, $R = 1000 \Omega$ and $E_{rest} = 0.2V$.

\subsection{Synapse Implementation} \label{sec:syn}
An interpolation-based approach was used to determine an empirical STDP window compatible with our graphene-memristive device, for use in our simulations.
Initially, this involved finding the differential voltages applied to the two terminals of the graphene-based memristive synapse, for various $\Delta T$ values, where $\Delta T$ represents the timing difference between pre- and post-synaptic voltage spikes, i.e. $T_{post}-T_{pre}$, as shown in \textbf{Figure~\ref{742947}a}. Each voltage within this time-varying waveform was then interpolated onto the graphene-memristive device I-V data to produce a corresponding current waveform, as shown in \textbf{Figure~\ref{742947}b}.

The blue shaded area in Figure~\ref{742947}b was calculated, by integrating current with respect to time. This change in the memristor current in response to $\Delta T$ is reminiscent of the change in Excitatory Post Synaptic Potential current (EPSC) amplitude, which in experimental studies represents the synaptic weight to induce current to its afferent neurons \hyperref[csl:24]{(Song et al., 2000)}. This way, an STDP window, where the synaptic weight is represented by EPSC, was produced.


In order to produce a viable STDP waveform, the shape of the action potential was carefully considered. Similar to previous works~\hyperref[csl:66]{({Linares-Barranco}, 2011)}, an exponential shape was chosen as shown in Figure~\ref{742947}a. By modifying the parameters of this action potential, such as the timing constants, widths and peak voltages for both pre- and post-synaptic spikes, as well as the ratio between pre- and post-synaptic signals, different STDP windows were produced. Next, by implementing several different windows into our developed SNN, its ability to perform a binary pattern classification task was evaluated. 
This eventually led to the STDP window shown in \textbf{Figure~\ref{671845}}, which demonstrated the best convergence results for the targeted pattern classification task, using the network architecture described in \textbf{Figure~\ref{388848}}.\selectlanguage{english}
\begin{figure}[h!]
\begin{center}
\includegraphics[width=0.70\columnwidth]{figures/GrapheneSTDP(2)/Figure-5}
\caption{{The graphene-based memristive STDP window that shows change in the
synaptic current, i.e. EPSC, in response to change in the pre-synaptic
and post-synaptic time difference,~\(\Delta T=T_{post}-T_{pre}\).
{\label{671845}}%
}}
\end{center}
\end{figure}

\subsection{Network Architecture}
The network outlined in \hyperref[csl:67]{(Lammie et al., 2018)} had been previously used to perform unsupervised character recognition using the STDP learning rule. As such, a similar network was developed in order to test the graphene memristive synapses.\selectlanguage{english}
\begin{figure}[h!]
\begin{center}
\includegraphics[width=450px]{figures/SNNArchitecture/SNNArchitecture}
\caption{{Network architecture used to perform unsupervised character recognition.
{\label{388848}}%
}}
\end{center}
\end{figure}

The single-layer network, shown in Figure~\ref{388848}, had 10 separate, 5x5 binary images presented to it. These binary images were encoded into Poissonian spike trains, where "active" or "on" pixels were encoded with an average frequency of 200 Hz and "non-active" or "off" pixels were encoded with an average frequency of 20 Hz. These frequencies were chosen after several trials to determine the frequencies which would best result in potentiation and depression. The image patterns were basic, because the purpose of this network was to determine whether or not any form of unsupervised learning could be performed using the proposed graphene memristive synapses.

With the pre-synaptic spike trains temporally encoded, they were applied through excitatory graphene memristive synapses to the output LIF neurons that generated post-synaptic spike trains. The timing of these post- and pre-synaptic spikes were then used to calculate the change in the EPSC of the graphene memristive synapses based on the STDP figure shown in Figure~\ref{671845}. 

To introduce competitive Hebbian learning between neurons \hyperref[csl:68]{(Song et al., 2000)}, as shown in Figure~\ref{388848}, inhibitory synapses were connected in between all output neurons to activate lateral inhibition. The weight (current) of these synapses were kept fixed at -185 mA. %This was found to be an abnormally large current, particularly considering that the maximum and minimum currents for the excitatory synapses were only $\pm$25 mA. However, this was found to be sufficient current to suppress neuronal firings from other neurons.
This was found to be a larger current compared to the maximum excitatory current of $\pm$25 mA for our graphene memristive synapses. Our experiments showed that, the negative feedback current required by the inhibitory synapses need to be significantly larger to suppress the sum of the inputs to specific neurons. 

After applying the patterns to the network, the neuronal firing rates as well as the synaptic receptive field of output neurons were monitored to see which neurons converged to which input patterns. These were also monitored to implement homeostasis into the network.%, as discussed in Section~\ref{sec:homeostatic_plasticity}.

\subsection{Homeostatic Plasticity}\label{sec:homeostatic_plasticity}
For certain input patterns, the output neuron associated with that pattern may have a higher or lower neuronal firing rate than other neurons in the network. With lateral inhibition in the network, the difference in neuronal activity is widened, and can lead to single neurons dominating for multiple input patterns, whilst other neurons are unable to converge to any pattern~\hyperref[csl:27]{(Querlioz et al., 2013)}. Consequently, there was a need to regulate the neuronal activity of each neuron so that low-spiking patterns were not overlooked in the training process. Monitoring and adjusting the neuronal activity can be done in many ways, so it is ideal to look for biologically plausible solutions, such as synaptic homeostatic regulation and intrinsic neuronal homeostatic regulation~\hyperref[csl:69]{({Shi} et al., 2018)}. Synaptic homeostatic regulation refers to the strengthening or weakening of synaptic weights, whereas intrinsic homeostatic plasticity refers to the regulating of the neuron's threshold to uphold a certain level of activity~\hyperref[csl:69]{({Shi} et al., 2018)}.

When researching homeostasis in regards to SNNs performing pattern classification tasks, little was found in regards to synaptic homeostatic regulation, likely due to the fact that the learning rules associated with these networks would also modify the synaptic weights. Hence, intrinsic neuronal regulation was used to implement homeostasis. Many different forms of intrinsic homeostatic regulation exist, such as those described in \hyperref[csl:70]{(Lazar et al., 2007)} and \hyperref[csl:65]{(Mihalaş \& Niebur, 2009)}. However, whilst biologically plausible, these aforementioned models were never used to perform pattern classification. Here, we employed the homeostatic regulation model used in \hyperref[csl:27]{(Querlioz et al., 2013)} and \hyperref[csl:33]{(Hansen et al., 2017)}, not only due to its biologically plausible nature, but also because it has demonstrated to significantly improve performance results \hyperref[csl:27]{(Querlioz et al., 2013)}. %, as demonstrated with a recognition rate of 82\%~\hyperref[csl:27]{(Querlioz et al., 2013)}. 
This model updates the threshold of the neuron using
%Hence, it was important to regulate the neuronal activity of each neuron. This was done by introducing an algorithm that alters the neurons threshold based off of its neuronal activity within the specified training period. The neurons threshold was modelled by the following equation:
\begin{equation}\label{eq:neuron_threshold}
    \frac{dV_{th}}{dt} = \gamma(A - T),
\end{equation}

\noindent where $V_{th}$ is the neuron's threshold, $\gamma$ is a moderating constant, $A$ is the neuronal firing activity (i.e, the number of times a neuron has fired within a given time period), and $T$ is the target activity for the given period~\hyperref[csl:27]{(Querlioz et al., 2013)}. For our single-layer pattern classification network, a target value of 25 and $\gamma = 35$ were chosen. The maximum and minimum thresholds were set between values of $0.25V$ and $20V$.


\subsection{Training and Classification}
Training the single-layer network involved presenting each of the 10 inputs (shuffled in a randomised order) to the network for a 100 ms duration. This was repeated for 40 training epochs, when the receptive field converged. By observing the final synaptic weights connecting to each neuron for the patterns that were presented to the network, the output neuron selective to each of the 10 patterns was identified. The spiking rates of each neuron was monitored and recorded into a raster plot, clearly showing the spiking activity per pattern. This was used to determine if each neuron classified a single pattern, and did not dominate the output response.\selectlanguage{english}
\begin{figure}[h!]
\begin{center}
\includegraphics[width=450px]{figures/SLWeights/Figure-7}
\caption{{Evolution of all synaptic weights for the single-layer network over 40
training epochs.
{\label{311907}}%
}}
\end{center}
\end{figure}

\subsection{Single-Layer Network Results}
In \textbf{Figure~\ref{311907}}, we depict the excitatory synapse receptive field pre- and post-learning. Figure~\ref{311907} shows the weights during 40 training epochs. As shown, each of the ten neurons learns to converge to a particular pattern. To visualise the learning process of the network, \textbf{Figure~\ref{897692}} was generated. This figure that shows the spiking raster plots of all the 10 output neurons confirms that, at the end of the learning process, i.e. Figure~\ref{897692}, each neuron only conforms to one pattern, as each neuron mostly fires for one 100ms period, barring minor spiking events for neurons 1 and 3. On occasions, it was rarely observed that neurons that learned patterns "8" and "6" would have some overlaps in the raster plot. The reason for this is the patterns high similarity. Furthermore, patterns "0","3" and "5" share some major similarities with "8" and "6" as well, and would also overlap on rare occasions. Overall, the results shown in Figures~\ref{311907} and \ref{897692} demonstrate that our proposed synaptic memristive device is able to effectively perform unsupervised learning.\selectlanguage{english}
\begin{figure}[h!]
\begin{center}
\includegraphics[width=450px]{figures/RasterPlotComp/Figure-8}
\caption{{Raster plots for each training epoch of the network.
{\label{897692}}%
}}
\end{center}
\end{figure}

\section{Handwritten Digit Classification} \label{sec:mnist}
After confirming that our graphene-based memristive synapse can realise STDP and perform unsupervised pattern classification, we investigated its ability to carry out a more complex classification task. %In this section, we discuss how we used our proposed memristive synapse to develop and simulate a two-layer network tasked for handwritten digit classification using the MNIST dataset.
In most of the literature, one of the common benchmarks used to evaluate the performance of neuromorphic systems is the classification of handwritten digits using the MNIST dataset. To truly compare our graphene memristive device to related works in literature, it was decided that another larger network had to be created in order to test our device's synaptic performance in a SNN. This network was similar to our single-layer network created previously, as the neuron model and STDP window used were kept the same. However, due to the larger number of pixels of the MNIST images, we increased the number of output spiking neurons in order to ensure unsupervised learning occurred.

\subsection{Neuron Parameter Modification}


The first modification included some parameter adjustments of the LIF neuron model used previously. This was to accommodate for the larger sum of current being presented to the network. The parameter changes are summarised in \textbf{Table~\ref{tab:parameterSummary}}.\selectlanguage{english}
\begin{table}
\centering
\caption{{Summary of neuron parameters used in the binary and MNIST classification tasks.}}
\label{tab:parameterSummary}
%\resizebox{\columnwidth}{!}{%
\begin{tabular}{lrr}
\toprule \toprule
\textbf{Parameter}    & \textbf{Binary} & \textbf{MNIST}   \\ \midrule
$\tau$         & 0.03                                    & 0.05                           \\
$R$            & 1000                                    & 1000                           \\
$E_{Rest}$     & 0.2                                     & 0                              \\
$V_{th_{min}}$ & 0.25                                    & 0.25                           \\
$V_{th_{max}}$ & 20                                      & 50                             \\
$T$            & 25                                      & 10                             \\
$\gamma$       & 35                                      & 0.005                          \\
$I_{Inhibitory}$ & -0.185A                               & -1.0A                        \\
\bottomrule \bottomrule
\end{tabular}%
%}
\end{table}

\subsection{Input Encoding}
The training and test input images were derived from  the MNIST dataset, which consists of 60,000 training examples and 10,000 test examples. Each image (example) consists of 28x28 pixels encoded in grayscale between 0 and 255. We investigated different ways to encode the input image grayscale pixel values. These included the mapping of the pixel value to the average frequency of a Poissonian spike train, as well as using a binary mapping scheme. In this scheme, if the pixel value is above/below a predetermined threshold, a Poissonian spike train with a high/low average frequency, represents that pixel. Our experimentation showed that the binary encoding works well and could result in a bi-modal STDP weight convergence during training, similar to the outcome seen in Figure~\ref{311907}b. %This could be attributed to the the bi-modal distribution of the memristive device's weights under ordinary circumstances, it is unlikely to expect anything other than a bi-modal distribution of the final memristive weights. 
Consequently, through experimentation, we chose a threshold value of 50 to encode all MNIST images to a series of Poissonian spike trains.
%all images were converted into binary images via a thresholding procedure, where pixels with a value above the threshold of 50 were encoded into Poissonian spike trains with an average frequency of 200 Hz, and pixels below 50 were encoded with an average frequency of 20 Hz. %A value of 50 was used for this level, as it was found through many different trainings of the network to provide the best results.
%Maybe say: Early simulations of the STDP window shows that the distribution of weights was bi-modal, where maximum and minimum weights were converged to. As such, it is unlikely to expect anything different for the \ac{MNIST} classification. Consequently...

\subsection{Training and Classification}
%It was not only important to modify the parameters of the network, but to also modify some elements of how the network was trained to perform pattern classification. 
The training phase adopted was similar to the one used to train our single-layer network. However, each image was presented for 50 ms (as opposed to 100 ms) to allow for weight and threshold updates. Images were also presented in a random order to eliminate any form of bias, and were only selected from the MNIST training set, i.e., no image from the MNIST test set was used to train the network. 
In order to label the network output neurons, each neuron was assigned a class. This assigning procedure was done by monitoring each neuron's spiking activity in response to every class presented. For a given neuron, the class with the highest spiking activity during the training phase was assigned to that neuron.

%Due to the higher complexity of the \ac{MNIST} dataset, the manual classification procedure outlined previously would not be sufficient in determining the networks accuracy. Therefore, a testing phase was required where images from the \ac{MNIST} test set were presented to the network, and the network's response was monitored to measure the classification accuracy. 
To evaluate the network after training, we used a similar method to that used in \hyperref[csl:26]{(Brivio et al., 2021)}, which proposed a classification accuracy where the output neuron with the highest spiking activity was said to classify the input pattern being presented. If the class assigned to the neuron matches the class presented to the network, then the pattern was deemed to be successfully classified. Thus the accuracy could be measured by dividing the total number of correctly classified digits with the total number of digits presented.

\subsection{Parameter Optimisation}
Prior to training and evaluating our MNIST classification network architecture with various number of output neurons, we performed preliminary investigations to determine optimal network hyper-parameters for each of these networks. % \textcolor{red}{To discuss why we chose all currently fixed parameters and what influence they have on performance/network dynamics.}
After an initial exploratory analysis, empirically, it was found that the $\gamma$ and $\tau$ parameters had the largest influence on network performance. Consequently, Bayesian Optimisation was used to optimise $\gamma$ and $\tau$ to maximise the validation accuracy. For all network configurations, other neuron parameters were kept fixed, as shown in Table~\ref{tab:parameterSummary}. %following parameters were kept fixed: $R = 1,000$, $V_{th_{min}} = 0.25V$, $V_{th_{max}} = 50V$, $V_{e} = 0V$. 
% as the main hyper-parameters
% In addition.The search space of
%The target activity, $T_A$, was fixed to 10, \textcolor{red}{to encourage one neuron to spike during each time-step,}and the inhibition current, $I_C$, was fixed to  -1.0A\textcolor{red}{, which demonstrated significant performance empirically. 
To confine the search space, when performing Bayesian optimisation, $\gamma$ and $\tau$ were confined between $0.05$--$0.15$, and $0.0001$--$0.01$, respectively.

To perform hyper-parameter optimisation, separate training and validation subsets were constructed from the original MNIST training set using \texttt{sklearn.model\_selection.train\_test\_split} with an initial random state of 1, and with shuffling enabled. Both subsets adhered to the same class distribution as the MNIST test set, and were sampled from the pseudo-randomly shuffled original MNIST training set. The training subset contained 50,000 images, and the validation subset contained 10,000 images.

A total of 50 Bayesian trials were executed for each network configuration, sampling $\gamma$ and $\tau$ parameters in log-space.
Trial pruning was used to predicatively prune unsuccessful trials to speed up optimisation using the \texttt{optuna}~\hyperref[csl:71]{(Akiba et al., 2019)} Python library.
In \textbf{Table~\ref{tab:optimized_network_parameters}}, we report the best validation accuracy achieved and the corresponding optimised network parameters for network configurations with different numbers of output neurons. It is noted that, cross validation and a larger parameter search space could be used to improve the efficacy of our hyper-parameter optimisation procedure. However, our current results prove the proposed concept.%, they are computationally demanding, and would exponentially increase required run-times. Consequently, we leave further hyper-parameter optimisation investigations to future work, as our current results prove the efficiency of our network.\selectlanguage{english}
\begin{table}[!t]
\centering
\caption{{Optimised network parameters and the best validation accuracy achieved in 50 optimisation trials.}}
% \resizebox{\columnwidth}{!}{%
\begin{tabular}{lccc}
\toprule \toprule
\textbf{N. Output Neurons} & \textbf{Validation Accuracy (\%)} & \textbf{$\gamma$} & \textbf{$\tau$} \\
\midrule
10 & 56.16 & 0.00998 & 0.139285 \\
30 & 78.11 & 0.00996 & 0.134985 \\
100 & 86.05 & 0.006046 & 0.087734 \\
300 & 89.16 & 0.006441 & 0.074826 \\
500 & 89.31 & 0.008660 & 0.084793 \\
\bottomrule \bottomrule
\end{tabular}\label{tab:optimized_network_parameters} %}
\end{table}\selectlanguage{english}
\begin{figure}[h!]
\begin{center}
\includegraphics[width=0.70\columnwidth]{figures/idx-40000/idx-40000}
\caption{{Receptive field after training MNIST classification network.
{\label{370832}}%
}}
\end{center}
\end{figure}

\subsection{MNIST Classification Results}\label{sec:results}
After performing parameter optimisation, the classification accuracy was investigated for each network configuration by training the network using the original 60,000 images in MNIST training set, and testing it using the 10,000 images in the MNIST test set. In addition to the optimized $\gamma$ and $\tau$ parameter sets reported in Table~\ref{tab:optimized_network_parameters}, the classification accuracy was determined for other $\gamma$ and $\tau$ parameter sets, which achieved significant performance on the validation set. In this section, we report our best results, i.e., those that obtained the highest classification accuracy on MNIST test set. Not all parameters from Table~\ref{tab:optimized_network_parameters} were used, as our constructed validation set failed to generalise to (i.e., to be completely representative of) the MNIST test set. It is believed that testing on the validation set as opposed to the actual test set, as well as the randomised variations between each training and testing evaluation are the likely contributors to this effect. All parameters used to train networks whose evaluation results are presented in this section are provided\footnote{\url{https://anonymous.4open.science/r/c69ab2e2-b672-4ebd-b266-987ee1fd65e7}}.

\textbf{Figure~\ref{370832}} illustrates the synaptic receptive field after a sample training phase of the network. %using thresholded images from the \ac{MNIST} dataset. 
The receptive field clearly shows learning of the handwritten digits. This is reflected in the high average test-set classification accuracies shown in \textbf{Figure~\ref{958489}a}, where the values are calculated over 10 trials for networks with different number of output neurons. For each trial, the network was trained from scratch starting with random initial weights to learn the MNIST training set, and after training was completed, it was tested using the MNIST test set. The figure also shows the maximum and minimum accuracies achieved across these 10 trials. It is worth noting that, these classification accuracies are reported for a single training epoch, which shows the efficiency of our network in reaching a great performance while being trained only for one epoch. %For each of these and ten different training/testing evaluations.
As shown, an increase in the number of neurons has resulted in more neurons learning more variations of each pattern. This gives a wider representation of all of the possible handwritten digits, resulting in a higher accuracy. It was also found that the deviation of the results obtained generally decreased with the increase in the number of neurons except for the 500 case. It is believed that one epoch may be too short to train all 500 neurons accurately, thus leading to this result.

\textbf{Figure~\ref{958489}b} demonstrates the classification accuracy plotted against the number of images presented to the network in a training epoch. Naturally, it was expected that increasing the number of training images increased the accuracy, due to the more thorough learning. The leveling off of the accuracy was also expected, and is in keeping with other networks in literature that have attempted this~\hyperref[csl:25]{(Diehl \& Cook, 2015)}.\selectlanguage{english}
\begin{figure}[h!]
\begin{center}
\includegraphics[width=450px]{figures/AccuracyResults2/Figure-10}
\caption{{(a) Classification accuracy plotted against the number of output neurons
for a single training epoch. (b) Running accuracy during training phase.
~
{\label{958489}}%
}}
\end{center}
\end{figure}

%Finally, Fig.~\ref{fig:AccuracyResults}(c) illustrates the classification accuracy as the number of neurons increases.
 
Finally, analysing the confusion matrix in \textbf{Figure~\ref{765279}} shows which digits were more accurately classified than others. The most accurately classified digits were "0" and "1", whilst the most inaccurately classified digits were "3","4" and "9". The patterns "4" and "9" were often misclassified with each other. This observation is in agreement with literature~\hyperref[csl:25]{(Diehl \& Cook, 2015)}. In addition, the pattern "3" was often misclassified with "5" and "8", although in much lesser amounts than "4" and "9". This result has also been observed in other literature such as~\hyperref[csl:34]{(Guo et al., 2019)}, further re-enforcing the results that have been obtained.\selectlanguage{english}
\begin{figure}[h!]
\begin{center}
\includegraphics[width=0.70\columnwidth]{figures/Figure-10/Figure-10}
\caption{{Confusion matrix after testing phase of MNIST classification.
{\label{765279}}%
}}
\end{center}
\end{figure}

As the learning was unsupervised, the number of output neurons being assigned to a class could not be controlled. One common observation in the results was an over-representation of the class "1" being present in the final receptive field. Naturally, this meant that this pattern was the most accurately classified pattern, as shown in the confusion matrix in Figure~\ref{765279}. It was also noted that the pattern "0" was consistently under-represented, although its accuracy remained relatively high. 
In order to test this further, a training scheme (for the 100-neuron network) was run where every second "1" was overlooked. As expected, the number of "1"'s in the final receptive field were reduced and distributed evenly, although interestingly the maximum overall accuracy achieved dropped from 84$\%$ to 82$\%$, even though the class distributions was more even. %(although "0" was still under-represented.) 
This suggests that over-representing "1" is desirable for increased accuracy. A possible explanation could be that within the approximately 6,000 MNIST training images of the pattern "1", there exists a wider variety of ways in which to represent "1" than any other character. Thus, more output neurons converge to this pattern to better reflect this.

\subsection{Comparison and Discussion}
The primary objective of this paper was to investigate whether green-fabricated graphene-based memristive devices can be used to perform complex pattern classification tasks. We did not intend to report the best performance on the MNIST dataset compared to other works in the literature. Nonetheless,
\textbf{Figure~\ref{319474}} shows the comparison between our best results and state-of-the-art literature on MNIST classification using unsupervised learning in SNNs. Our results show the average test set classification accuracy and maximum and minimum achieved accuracies over 10 learning trials. As shown, when a low number of output neurons are used, our network shows a low accuracy with a high variation reflected in its high deviation from mean. This can be attributed to our input encoding scheme, as well as the homeostatic mechanism we have employed. Note that, \hyperref[csl:27]{(Querlioz et al., 2013)} has used a similar homeostatic neuronal spiking regulation, which resulted in a slightly better accuracy for 10 output neurons. This slight improvement is most likely due to its more complex input encoding scheme, and higher number of training epochs.

To determine whether homeostatic neuronal regulation had any significant influence on the learning ability of our networks, we performed ablation studies for network architectures in Section~\ref{sec:unsupervised} and Section~\ref{sec:mnist}. We found out that without homeostatic regulation, our networks failed to converge to achieve a significant result for both tasks. We believe this is due to the relatively symmetrical STDP window achieved using our graphene-based memristive device, as well as the simplicity of our proposed network architectures used when compared to literature.\selectlanguage{english}
\begin{figure}[h!]
\begin{center}
\includegraphics[width=450px]{figures/ImprovedMNISTComp/Figure-12}
\caption{{Comparison of SNNs that have performed unsupervised MNIST classification
using memristive synapses. {[}25{]} is the only software-based network
reported in this figure. For our work, 1 training epoch was used for
when the number of output neurons was equal to 10 and 30, 2 training
epochs for the 100 neuron case, and 3 epochs for the 300 and 500 cases.
{\label{319474}}%
}}
\end{center}
\end{figure}

Furthermore, most of the STDP-based MNIST classification studies in literature~\hyperref[csl:36]{(Boybat et al., 2018}; \hyperref[csl:33]{Hansen et al., 2017}; \hyperref[csl:35]{Nandakumar \& Rajendran, 2020}; \hyperref[csl:32]{Kim et al., 2015}; \hyperref[csl:34]{Guo et al., 2019)} have used up to 100 neurons, which has resulted in classification accuracies lower than 80\%, which is not significant. Previous studies \hyperref[csl:25]{(Diehl \& Cook, 2015}; \hyperref[csl:27]{Querlioz et al., 2013}; \hyperref[csl:26]{Brivio et al., 2021)} have shown that this problem can be addressed by including more output neurons to improve the classification accuracy.
Compared to state-of-the-art, our network demonstrates the best reported classification accuracy for the case where 100 output neurons are used. In addition, it is better than or comparable with other works that reported accuracies for 300 and 500 neuron cases. 
Although the 300 neuron case did not demonstrate the above 90$\%$ accuracy reported by \hyperref[csl:27]{(Querlioz et al., 2013)}, the network still performed quite well for the cases where a larger number of output neurons were used and was on par with the software-based work of Diehl and Cook \hyperref[csl:25]{(Diehl \& Cook, 2015)}, while showing a better performance than \hyperref[csl:26]{(Brivio et al., 2021)} for 500 neurons.

The lower classification accuracy compared to \hyperref[csl:27]{(Querlioz et al., 2013)} can be due to our simple input image binary encoding scheme, which may result in losing some information contained within the images. The benefit, however, is a much simpler encoding scenario, which requires less complex spike encoding circuitry. %This lost information could be the reason for the lower accuracies compared to those reported by Querlioz \textit{et al.} in \hyperref[csl:27]{(Querlioz et al., 2013)}. 
What is remarkable about our results is that when the 100, 300 and 500 neuron cases were trained for only 1 epoch (shown in Figure~\ref{958489}a), we achieved comparable accuracies to most of the works in literature that were trained for more epochs as shown in Table \ref{tab:MNISTComparison}. This suggests a very swift convergence rate, and that the network is being trained in an efficient manner.



\section{Conclusion}\label{sec:conclusion}
In this paper, we investigated the integration of sustainably-fabricated graphene-based memristive devices into neuromorphic \acp{SNN} for unsupervised learning. We demonstrated that the device's I-V characteristics can be used to mimic biology in producing the excitatory post-synaptic current response to the differential voltage applied to the memristive synapse, as pre- and post-synaptic potentials. Using this, we developed a STDP window and performed two different pattern classification tasks. We showed that a homeostatic neuronal activity regulation could help the STDP-based unsupervised learning to perform MNIST classification efficiently, even when a simple binary pattern encoding scheme and fewer training epochs are used. Our results demonstrated improvement in classification accuracies compared to other memristive SNNs in literature when higher number of output neurons are used to reach significant classification performance. %It was also noted that an over-fitting of the pattern "1" was found when testing the device in the network, and that when this observation was nullified, it decreased the overall accuracy. This suggests a preference to over-fitting with the pattern "1". 
We believe that this work will serve as a foundation and benchmark to future neuromorphic architectures utilising graphene memristive devices. %We leave a complete hardware implementation and power/area/latency analysis to future work.

\section{Acknowledgements}

{\label{802803}}

Ben Walters acknowledges the Domestic Research Training Program
Scholarship (DRTPS). Corey Lammie acknowledges the~Domestic Prestige
Research Training Program Scholarship (DPRTPS), IBM PhD Fellowship, and
the Circuits and Systems (CAS) Society Predoctoral Grant.

\section{Conflict of interest}

The authors declare no conflict of interest.

\section{Supporting Information}

{\label{948995}}

Supporting Information is available from the Wiley Online Library or
from the author.

\selectlanguage{english}
\FloatBarrier
\section*{References}\sloppy
\phantomsection
\label{csl:1}{Memristor-The missing circuit element}. (1971). [Journal Article]. \textit{IEEE Transactions on Circuit Theory}, \textit{18}(5), 507–519. \url{https://doi.org/10.1109/TCT.1971.1083337}

\phantomsection
\label{csl:2}{Low-power hybrid memristor-CMOS spiking neuromorphic STDP learning system}. (2021). \textit{IET Circuits, Devices \& Systems}, \textit{15}(3), 237–250. \url{https://doi.org/https://doi.org/10.1049/cds2.12018}

\phantomsection
\label{csl:3}{Complementary Metal-Oxide Semiconductor and Memristive Hardware for Neuromorphic Computing}. (2020). \textit{Advanced Intelligent Systems}, \textit{2}(5), 1900189. \url{https://onlinelibrary.wiley.com/doi/abs/10.1002/aisy.201900189}

\phantomsection
\label{csl:4}{The missing memristor found}. (2008). \textit{Nature}, \textit{453}(7191), 80–83. \url{https://doi.org/10.1038/nature06932}

\phantomsection
\label{csl:5}{The Future of Memristors: Materials Engineering and Neural Networks}. (2021). \textit{Advanced Functional Materials}, \textit{31}(8), 2006773. \url{https://doi.org/https://doi.org/10.1002/adfm.202006773}

\phantomsection
\label{csl:6}{CsFAMAPbIBr Photoelectric Memristor Based on Ion-Migration Induced Memristive Behavior}. (2021). \textit{Advanced Electronic Materials}, \textit{7}(5), 2100014. \url{https://doi.org/https://doi.org/10.1002/aelm.202100014}

\phantomsection
\label{csl:7}{Ferroionic inversion of spin polarization in a spin-memristor}. (2021). \textit{APL Materials}, \textit{9}(3), 031110. \url{https://doi.org/10.1063/5.0039030}

\phantomsection
\label{csl:8}{Resistive Switching Effect of the Structure Based on Silicon Nitride}. (2021). \textit{Technical Physics}, \textit{66}(1), 133–138. \url{https://doi.org/10.1134/S1063784221010126}

\phantomsection
\label{csl:9}{Electrochemical reaction in memristor devices in a set state}. (2021). \textit{AIP Advances}, \textit{11}(1), 015302. \url{https://doi.org/10.1063/5.0033613}

\phantomsection
\label{csl:10}{An Artificial Neuron Using a Bipolar Electrochemical Metallization Switch and Its Enhanced Spiking Properties through Filament Confinement}. (2021). \textit{Advanced Electronic Materials}, \textit{7}(1), 2000410. \url{https://doi.org/https://doi.org/10.1002/aelm.202000410}

\phantomsection
\label{csl:11}{Memristors Based on (Zr, Hf, Nb, Ta, Mo, W) High-Entropy Oxides}. (2021). \textit{Advanced Electronic Materials}, \textit{7}(5), 2001258. \url{https://doi.org/https://doi.org/10.1002/aelm.202001258}

\phantomsection
\label{csl:12}{Unsupervised Learning by Spike Timing Dependent Plasticity in Phase Change Memory (PCM) Synapses}. (2016). \textit{Frontiers in Neuroscience}, \textit{10}, 56. \url{https://doi.org/10.3389/fnins.2016.00056}

\phantomsection
\label{csl:13}{Threshold switching memristor-based stochastic neurons for probabilistic computing}. (2021). \textit{Mater. Horiz.}, \textit{8}(2), 619–629. \url{https://doi.org/10.1039/D0MH01759K}

\phantomsection
\label{csl:14}{Recent progress on 2D materials-based artificial synapses}. (2021). \textit{Critical Reviews in Solid State and Materials Sciences}, \textit{0}(0), 1–26. \url{https://doi.org/10.1080/10408436.2021.1935212}

\phantomsection
\label{csl:15}{Catalyst-Free Plasma Enhanced Growth of Graphene from Sustainable Sources}. (2015). \textit{Nano Letters}, \textit{15}(9), 5702–5708. \url{https://doi.org/10.1021/acs.nanolett.5b01363}

\phantomsection
\label{csl:16}{A role for analogue memory in AI hardware}. (2019). \textit{Nature Machine Intelligence}, \textit{1}(1), 10–11.

\phantomsection
\label{csl:17}{Impacts of State Instability and Retention Failure of Filamentary Analog RRAM on the Performance of Deep Neural Network}. (2019). \textit{IEEE Transactions on Electron Devices}, \textit{66}(11), 4517–4522. \url{https://doi.org/10.1109/TED.2019.2931135}

\phantomsection
\label{csl:18}{A Deep Unsupervised Feature Learning Spiking Neural Network with Binarized Classification Layers for EMNIST Classification}. (2020). [Journal Article]. \textit{IEEE TETCI}.

\phantomsection
\label{csl:19}{Advances in Machine Learning and Deep Neural Networks}. (2021). \textit{Proceedings of the IEEE}, \textit{109}(5), 607–611. \url{https://doi.org/10.1109/JPROC.2021.3072172}

\phantomsection
\label{csl:20}{Information-Theoretic Intrinsic Plasticity for Online Unsupervised Learning in Spiking Neural Networks}. (2019). \textit{Frontiers in Neuroscience}, \textit{13}, 31. \url{https://doi.org/10.3389/fnins.2019.00031}

\phantomsection
\label{csl:21}{Sparse Computation in Adaptive Spiking Neural Networks}. (2019). \textit{Frontiers in Neuroscience}, \textit{12}, 987. \url{https://doi.org/10.3389/fnins.2018.00987}

\phantomsection
\label{csl:22}{A Hybrid CMOS-Memristor Neuromorphic Synapse}. (2017). [Journal Article]. \textit{IEEE Trans Biomed Circuits Syst}, \textit{11}(2), 434–445. \url{https://doi.org/10.1109/TBCAS.2016.2618351}

\phantomsection
\label{csl:23}{A neuromorphic VLSI design for spike timing and rate based synaptic plasticity}. (2013). \textit{Neural Networks}, \textit{45}, 70–82.

\phantomsection
\label{csl:24}{Competitive Hebbian learning through spike-timing-dependent synaptic plasticity}. (2000). \textit{Nature Neuroscience}, \textit{3}(9), 919–926.

\phantomsection
\label{csl:25}{Unsupervised learning of digit recognition using spike-timing-dependent plasticity}. (2015). \textit{Frontiers in Computational Neuroscience}, \textit{9}, 99. \url{https://doi.org/10.3389/fncom.2015.00099}

\phantomsection
\label{csl:26}{Non-linear Memristive Synaptic Dynamics for Efficient Unsupervised Learning in Spiking Neural Networks}. (2021). \textit{Frontiers in Neuroscience}, \textit{15}, 27. \url{https://doi.org/10.3389/fnins.2021.580909}

\phantomsection
\label{csl:27}{Immunity to Device Variations in a Spiking Neural Network With Memristive Nanodevices}. (2013). \textit{IEEE Transactions on Nanotechnology}, \textit{12}, 288–295. \url{https://doi.org/10.1109/TNANO.2013.2250995}

\phantomsection
\label{csl:28}{Analog Memristive Synapse in Spiking Networks Implementing Unsupervised Learning}. (2016). [Journal Article]. \textit{Front Neurosci}, \textit{10}, 482. \url{https://doi.org/10.3389/fnins.2016.00482}

\phantomsection
\label{csl:29}{Efficient and hardware-friendly methods to implement competitive learning for spiking neural networks}. (2020). [Journal Article]. \textit{Neural Computing and Applications}. \url{https://doi.org/10.1007/s00521-020-04755-4}

\phantomsection
\label{csl:30}{Necessary conditions for STDP-based pattern recognition learning in a memristive spiking neural network}. (2021). \textit{Neural Networks}, \textit{134}, 64–75. \url{https://doi.org/https://doi.org/10.1016/j.neunet.2020.11.005}

\phantomsection
\label{csl:31}{Memristor-based synaptic plasticity and unsupervised learning of spiking neural networks}. (2021). \textit{Journal of Computational Electronics}. \url{https://doi.org/10.1007/s10825-021-01719-2}

\phantomsection
\label{csl:32}{Carbon Nanotube Synaptic Transistor Network for Pattern Recognition}. (2015). \textit{ACS Appl. Mater. Interfaces}, \textit{7}(45), 25479–25486. \url{https://doi.org/10.1021/acsami.5b08541}

\phantomsection
\label{csl:33}{Double-Barrier Memristive Devices for Unsupervised Learning and Pattern Recognition}. (2017). \textit{Frontiers in Neuroscience}, \textit{11}, 91. \url{https://doi.org/10.3389/fnins.2017.00091}

\phantomsection
\label{csl:34}{Unsupervised Learning on Resistive Memory Array Based Spiking Neural Networks}. (2019). \textit{Frontiers in Neuroscience}, \textit{13}, 812. \url{https://doi.org/10.3389/fnins.2019.00812}

\phantomsection
\label{csl:35}{Bio-mimetic Synaptic Plasticity and Learning in a sub-500mV Cu/SiO2/W Memristor}. (2020). [Journal Article]. \textit{Microelectronic Engineering}, \textit{226}. \url{https://doi.org/10.1016/j.mee.2020.111290}

\phantomsection
\label{csl:36}{Neuromorphic computing with multi-memristive synapses}. (2018). \textit{Nature Communications}, \textit{9}(1), 2514. \url{https://doi.org/10.1038/s41467-018-04933-y}

\phantomsection
\label{csl:37}{Experimental Review of Graphene}. (2012). \textit{ISRN Condensed Matter Physics}, \textit{2012}, 501686. \url{https://doi.org/10.5402/2012/501686}

\phantomsection
\label{csl:38}{A review on mechanics and mechanical properties of 2D materials—Graphene and beyond}. (2017). \textit{Extreme Mechanics Letters}, \textit{13}, 42–77. \url{https://doi.org/https://doi.org/10.1016/j.eml.2017.01.008}

\phantomsection
\label{csl:39}{Graphene-ferroelectric transistors as complementary synapses for supervised learning in spiking neural network}. (2019). \textit{Npj 2D Materials and Applications}, \textit{3}(1), 31. \url{https://doi.org/10.1038/s41699-019-0114-6}

\phantomsection
\label{csl:40}{Graphene memristive synapses for high precision neuromorphic computing}. (2020). \textit{Nature Communications}, \textit{11}(1), 5474. \url{https://doi.org/10.1038/s41467-020-19203-z}

\phantomsection
\label{csl:41}{{WSe}2/graphene heterojunction synaptic phototransistor with both electrically and optically tunable plasticity}. (2021). \textit{2D Materials}, \textit{8}(3), 035034. \url{https://doi.org/10.1088/2053-1583/abfa6a}

\phantomsection
\label{csl:42}{NeuroMem: Analog Graphene-Based Resistive Memory for Artificial Neural Networks}. (2020). \textit{Scientific Reports}, \textit{10}(1), 9473. \url{https://doi.org/10.1038/s41598-020-66413-y}

\phantomsection
\label{csl:43}{Uniform multilevel switching of graphene oxide-based RRAM achieved by embedding with gold nanoparticles for image pattern recognition}. (2020). \textit{Applied Physics Letters}, \textit{116}(16), 163503. \url{https://doi.org/10.1063/5.0003696}

\phantomsection
\label{csl:44}{Resistive Switching in Graphene Oxide}. (2020). \textit{Frontiers in Materials}, \textit{7}, 17. \url{https://doi.org/10.3389/fmats.2020.00017}

\phantomsection
\label{csl:45}{Memristive devices based on graphene oxide}. (2015). \textit{Carbon}, \textit{85}, 383–396. \url{https://doi.org/https://doi.org/10.1016/j.carbon.2015.01.011}

\phantomsection
\label{csl:46}{Programmable Synaptic Metaplasticity and below Femtojoule Spiking Energy Realized in Graphene-Based Neuromorphic Memristor}. (2018). \textit{ACS Appl. Mater. Interfaces}, \textit{10}(24), 20237–20243. \url{https://doi.org/10.1021/acsami.8b04685}

\phantomsection
\label{csl:47}{Electronic synapses with near-linear weight update using MoS2/graphene memristors}. (2019). \textit{Applied Physics Letters}, \textit{115}(10), 103104. \url{https://doi.org/10.1063/1.5108899}

\phantomsection
\label{csl:48}{2D photonic memristor beyond graphene: progress and prospects}. (2020). [Journal Article]. \textit{Nanophotonics}, \textit{0}(0). \url{https://doi.org/10.1515/nanoph-2019-0543}

\phantomsection
\label{csl:49}{2D Material Based Synaptic Devices for Neuromorphic Computing}. (2021). \textit{Advanced Functional Materials}, \textit{31}(4), 2005443. \url{https://doi.org/https://doi.org/10.1002/adfm.202005443}

\phantomsection
\label{csl:50}{Wirelessly destructible MgO-PVP-Graphene composite based flexible transient memristor for security applications}. (2019). \textit{Materials Science in Semiconductor Processing}, \textit{104}, 104673. \url{https://doi.org/https://doi.org/10.1016/j.mssp.2019.104673}

\phantomsection
\label{csl:51}{Synaptic modification by correlated activity: Hebb's postulate revisited}. (2001). [Journal Article]. \textit{Annu Rev Neurosci}, \textit{24}, 139–166. \url{https://doi.org/10.1146/annurev.neuro.24.1.139}

\phantomsection
\label{csl:52}{Graphene oxide based synaptic memristor device for neuromorphic computing}. (2021). \textit{Nanotechnology}, \textit{32}(15), 155701. \url{https://doi.org/10.1088/1361-6528/abd978}

\phantomsection
\label{csl:53}{Compact Graphene-Based Spiking Neural Network With Unsupervised Learning Capabilities}. (2020). \textit{IEEE Open Journal of Nanotechnology}, \textit{1}, 135–144. \url{https://doi.org/10.1109/OJNANO.2020.3041198}

\phantomsection
\label{csl:54}{Graphene-Based Artificial Synapses with Tunable Plasticity}. (2021). \textit{J. Emerg. Technol. Comput. Syst.}, \textit{17}(4). \url{https://doi.org/10.1145/3447778}

\phantomsection
\label{csl:55}{Carbon-based Spiking Neural Network Implemented with Single-Electron Transistor and Memristor for Visual Perception}. (2020). \textit{2020 IEEE 14th International Conference on Anti-Counterfeiting, Security, and Identification (ASID)}, 143–146. \url{https://doi.org/10.1109/ASID50160.2020.9271721}

\phantomsection
\label{csl:56}{A Reconfigurable Graphene-based Spiking Neural Network Architecture}. (2021). \textit{IEEE Open Journal of Nanotechnology}, 1–1. \url{https://doi.org/10.1109/OJNANO.2021.3094761}

\phantomsection
\label{csl:57}{RRAM Device Models: A Comparative Analysis With Experimental Validation}. (2019). \textit{IEEE Access}, \textit{7}, 168963–168980. \url{https://doi.org/10.1109/ACCESS.2019.2954753}

\phantomsection
\label{csl:58}{SPICE Model of Memristive Devices with Threshold}. (2012). \textit{Radioengineering}, \textit{22}.

\phantomsection
\label{csl:59}{VTEAM: A General Model for Voltage-Controlled Memristors}. (2015). [Journal Article]. \textit{IEEE Transactions on Circuits and Systems II: Express Briefs}, \textit{62}(8), 786–790. \url{https://doi.org/10.1109/tcsii.2015.2433536}

\phantomsection
\label{csl:60}{A Data-Driven Verilog-A ReRAM Model}. (2018). \textit{IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems}, \textit{37}(12), 3151–3162. \url{https://doi.org/10.1109/TCAD.2018.2791468}

\phantomsection
\label{csl:61}{Resistive switching in graphene-organic device: Charge transport properties of graphene-organic device through electric field induced optical second harmonic generation and charge modulation spectroscopy}. (2017). [Journal Article]. \textit{Carbon}, \textit{112}, 111–116. \url{https://doi.org/10.1016/j.carbon.2016.11.005}

\phantomsection
\label{csl:62}{Programmable spike-timing-dependent plasticity learning circuits in neuromorphic vlsi architectures}. (2015). \textit{ACM Journal on Emerging Technologies in Computing Systems (JETC)}, \textit{12}(2), 1–18.

\phantomsection
\label{csl:63}{Simple model of spiking neurons}. (2003). \textit{IEEE Transactions on Neural Networks}, \textit{14}(6), 1569–1572. \url{https://doi.org/10.1109/TNN.2003.820440}

\phantomsection
\label{csl:64}{A quantitative description of membrane current and its application to conduction and excitation in nerve}. (1990). \textit{Bulletin of Mathematical Biology}, \textit{52}(1), 25–71. \url{https://doi.org/10.1007/BF02459568}

\phantomsection
\label{csl:65}{A Generalized Linear Integrate-and-Fire Neural Model Produces Diverse Spiking Behaviors}. (2009). \textit{Neural Computation}, \textit{21}(3), 704–718. \url{https://doi.org/10.1162/neco.2008.12-07-680}

\phantomsection
\label{csl:66}{On Spike-Timing-Dependent-Plasticity, Memristive Devices, and Building a Self-Learning Visual Cortex}. (2011). \textit{{Frontiers in Neuroscience}}, \textit{5}, {26}. \url{https://doi.org/{10.3389/fnins.2011.00026}}

\phantomsection
\label{csl:67}{Unsupervised Character Recognition with a Simplified FPGA Neuromorphic System}. (2018). [Journal Article]. \textit{Proceedings of the International Symposium on Circuits and Systems}. \url{https://doi.org/10.1109/ISCAS.2018.8351532}

\phantomsection
\label{csl:68}{Competitive Hebbian learning through spike-timing-dependent synaptic plasticity}. (2000). [Journal Article]. \textit{Nature Neuroscience}, \textit{3}(9), 919–926. \url{https://doi.org/10.1038/78829}

\phantomsection
\label{csl:69}{Memristor-Based Circuit Design for Neuron With Homeostatic Plasticity}. (2018). \textit{IEEE Transactions on Emerging Topics in Computational Intelligence}, \textit{2}(5), 359–370. \url{https://doi.org/10.1109/TETCI.2018.2829914}

\phantomsection
\label{csl:70}{Fading memory and time series prediction in recurrent networks with different forms of plasticity}. (2007). \textit{Neural Networks}, \textit{20}(3), 312–322. \url{https://doi.org/https://doi.org/10.1016/j.neunet.2007.04.020}

\phantomsection
\label{csl:71}{Optuna: A Next-Generation Hyperparameter Optimization Framework}. (2019). \textit{Proceedings of the 25th ACM SIGKDD International Conference on Knowledge Discovery \ Data Mining}, 2623–2631. \url{https://doi.org/10.1145/3292500.3330701}

\end{document}

