Non-Volatile Memory Noise Injection for DNN Robustness Testing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Deep learning neural networks (DNNs) face challenges in effectively testing their robustness on noisy data and generating augmented datasets for training, as existing methods lack efficient mechanisms for injecting controlled noise into data sets stored in non-volatile memory arrays.
Innovation Solution
A device and method that include a non-volatile memory array with processing circuitry to read data using a specific read voltage, inject noise, and adjust the voltage to achieve a target amount of noise, utilizing techniques such as read voltage adjustments, XORing with stochastic data, and simulating dead CCD pixels to degrade data sets for testing and augmentation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If read voltage is adjusted to inject noise into data, then noise injection capability is improved, but data accuracy deteriorates
Solution Approach 1:
The read voltage is dynamically adjusted from its normal operating level to a modified level that induces controlled noise. The voltage adjustment is temporary and reversible, allowing the system to switch between accurate reading mode and noise injection mode as needed for different operational requirements.
Solution Approach 2:
The invention changes the physical parameter of read voltage to achieve noise injection. By modifying the voltage level applied during data retrieval from non-volatile memory, the system introduces controlled errors into the data stream, enabling robustness testing and dataset augmentation without permanently altering the stored data.
2Adaptability or versatility
If noise is injected into data sets, then robustness testing capability is improved, but data integrity deteriorates
Solution Approach 1:
Noise is injected into data sets in advance before they are used for training or testing neural networks. This preliminary degradation of data allows researchers to evaluate model robustness and generate augmented training datasets without requiring separate physical test environments or additional hardware modifications.
Solution Approach 2:
The read voltage adjustment serves as an intermediary mechanism between the storage system and the data processing pipeline. By introducing noise at the retrieval stage rather than during data generation or transmission, the system can preserve original data integrity in storage while providing degraded versions for testing purposes.
3Productivity
If read voltage is modified to degrade data, then dataset augmentation capability is improved, but data quality deteriorates
Solution Approach 1:
The system creates degraded copies of original data by modifying read voltage during data retrieval. These copied versions contain controlled noise and errors that make them suitable for training more robust neural networks, while the original high-quality data remains intact in storage for other purposes.
Data Source
AI summary
Noise injection procedures implemented on the die of a non-volatile memory (NVM) array are disclosed. In one example, noise is injected into data by adjusting read voltages to induce bit flips while using feedback to achieve a target amount of information degradation. In another example, random data is iteratively combined with itself to achieve a target percentage of random 1s or 0s, then the random data is combined with data read from the NVM array. In other examples, pixels are randomly zeroed out to emulate dead charge coupled device (CCD) pixels. In still other examples, the timing, voltage, and/or current values used within circuits while transferring data to/from latches or bitlines are adjusted outside their specified margins to induce bit flips to inject noise into the data. The noise-injected data may be used, for example, for dataset augmentation or for the testing of deep neural networks (DNNs).


