3D-NAND CIM Classification Storage for Extreme Class Filtering
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The increasing number of categories in extreme classification tasks leads to computational complexity, memory usage issues, and resource bottlenecks, particularly in the final classification layer, which consumes significant resources and exceeds chip memory capacity, necessitating a more efficient memory-centric approach.
Innovation Solution
A computing-in-memory (CIM) unit and storage unit architecture using 3D-NAND flash memory to perform low-precision filtering and full-precision computation, employing a threshold-based selection method to identify candidate classes, reducing internal data movement and optimizing threshold settings for improved filtering efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the final classification layer uses traditional memory architecture, then storage capacity is sufficient, but data transfer bandwidth is insufficient and computational complexity increases
Solution Approach 1:
The patent merges storage and computation functions by integrating the classification layer directly into the storage device structure. The storage device includes a storage unit for holding classification parameters and a computing unit for performing classification computations, eliminating the need for separate memory components and reducing data transfer requirements.
Solution Approach 2:
The patent introduces an intermediary buffer memory between the storage unit and the computing unit. This buffer temporarily stores data during classification operations, facilitating efficient data exchange between storage and computation components while managing bandwidth constraints.
2Adaptability or versatility
If the number of categories is increased for extreme classification, then classification capability improves, but computational complexity and memory usage increase proportionally
Solution Approach 1:
The patent segments the classification parameters into different storage locations within the storage device. The storage unit is divided into regions for different categories, allowing the computing unit to access only relevant parameter segments during classification, thereby reducing overall computational resource consumption while maintaining support for large numbers of categories.
3Loss of energy
If near-data processing is implemented close to DRAM, then data transfer is eliminated, but storage capacity for final layer parameters is insufficient
Solution Approach 1:
The patent transitions from traditional two-dimensional memory architecture to a three-dimensional stacked structure. The storage unit is arranged in multiple layers with the computing unit positioned between them, enabling high-capacity storage of classification parameters while maintaining proximity for efficient computation and eliminating long data transfer paths.
4Measurement precision
If full-precision weights are stored in CIM unit, then computation accuracy improves, but storage space requirement increases
Solution Approach 1:
The patent applies different precision requirements to different parts of the weight data. The storage unit stores full-precision weights for accurate classification computations, while the computing unit uses optimized precision formats during processing. This local differentiation allows maintaining high measurement precision where needed while reducing overall storage space requirements.
Data Source
AI summary
A first operation is performed on input data and first weights to generate first computation results. The first computation results are compared with a threshold value to obtain a comparison result. Based on the comparison result, a first portion of second weights corresponding to candidate classes are read out from the storage unit. A bit length of the second weight is larger than a bit length of the first weight. A second operation is performed on the input data and the first portion of the second weights to generate second computation results. Based on the second computation results, a plurality of target candidate classes with top one or several highest product values are selected from the candidate classes.


