{'fraction_non_alphanumeric': 0.019498607242339833, 'fraction_numerical': 0.002785515320334262, 'mean_word_length': 5.942028985507246, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Learning in Memristor Crossbar-Based Spiking Neural Networks Through Modulation of Weight-Dependent Spike-Timing-Dependent Plasticity

In this paper, we propose a methodology to design learning systems based on a memristor crossbar structure. Learning is carried out with the help of a hardware-friendly spike-timing-dependent plasticity learning rule. Several simplifications and adaptations are made in order to apply the learning algorithm to memristor-based neural networks. The difficulties in conducting division and representing signed weights are circumvented using the proposed techniques. In addition, different conductance-changing behaviors are considered to demonstrate the effectiveness of the proposed algorithm and architecture when applied to practical memristor devices. Furthermore, various nonidealities existing in the neural network, including variations in CMOS neurons and memristor synapses and noises associated with updating the synaptic weights, are considered. We demonstrate that the proposed learning algorithm and hardware architecture are robust against most variations and noises. This robustness of learning is promising, as variations and stochastic behaviors of memristor devices are usually substantial. Memristor-based neural networks with the proposed learning algorithm are benchmarked with the MNIST handwritten digits recognition task. A recognition accuracy as high as 97.10% is demonstrated.