Data Processing Apparatus Using Lookup Tables for Activation Functions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Deep learning algorithms require significant computational resources due to their high complexity and large data requirements, which conventional CPUs cannot efficiently meet, and existing special hardware solutions are inflexible and costly to implement and maintain.

Innovation Solution

A data processing method and apparatus that preprocesses input data by converting it into a fixed point number, obtaining configuration parameters based on the characteristics of activation functions through linear fitting, and using a preset circuit structure to process the data, allowing for efficient processing without the need for specialized circuits to implement activation functions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If special hardware circuits are used to implement activation functions, then processing speed is improved, but device complexity and cost increase

Engineering Contradiction:
Improveprocessing speedVSAvoidcircuit structure complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent uses lookup tables (LUTs) to store pre-computed activation function values, replacing complex real-time computation with simple table lookups. This copying approach stores the functional relationship in a data structure that can be quickly accessed, achieving high-speed processing without complex circuits.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent implements different activation functions by changing parameters in the lookup table rather than redesigning circuit structures. By dynamically configuring the LUT with different pre-computed values corresponding to different activation functions (sigmoid, tanh, ReLU, etc.), the system achieves functional diversity with a single circuit architecture.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If special hardware circuits are designed to support multiple activation functions, then functional versatility is improved, but circuit resource consumption increases

Engineering Contradiction:
Improveactivation function supportVSAvoidcircuit resource consumption
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a universal lookup table structure that can represent any activation function through parameter configuration. The same hardware circuit with LUTs can implement multiple activation functions by loading different pre-computed value sets, making the system multi-functional without requiring separate circuits for each function.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

Different activation functions are achieved by changing the parameters stored in the lookup table rather than changing the circuit architecture. The system stores pre-computed values for different functions and switches between them by selecting different table configurations, enabling versatility with minimal resource overhead.

Inventive Principle:
Principle #35Parameter changes

3Device complexity

If conventional CPUs are used for deep learning computations, then device complexity is kept low, but computing power is insufficient

Engineering Contradiction:
Improveprocessor structureVSAvoidcomputing power
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent replaces general-purpose CPU computation with specialized hardware acceleration using lookup tables. Instead of using sequential software-based floating-point operations on a CPU, the system uses parallel hardware LUTs that can simultaneously process multiple inputs, achieving significant speedup for deep learning inference.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent divides the computation task into two segments: pre-computation (done offline to generate LUT values) and runtime lookup (done in hardware). This segmentation moves the computationally intensive parts to offline preparation and leaves only simple memory access for runtime processing, dramatically improving real-time performance.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10607668B2Data processing method and apparatus
Publication Date: 2020.03.31 BEIJING BAIDU NETCOM SCI & TECH CO LTD
  • US10607668B2 patent drawing
  • US10607668B2 patent drawing
  • US10607668B2 patent drawing

AI summary

The present application discloses a data processing method and apparatus. A specific embodiment of the method includes: preprocessing received to-be-processed input data; obtaining a storage address of configuration parameters of the to-be-processed input data based on a result of the preprocessing and a result obtained by linearly fitting an activation function, the configuration parameters being preset according to curve characteristics of the activation function; acquiring the configuration parameters of the to-be-processed input data according to the storage address; and processing the result of the preprocessing of the to-be-processed input data based on the configuration parameters of the to-be-processed input data and a preset circuit structure, to obtain a processing result. This implementation manner implements the processing of the input data to be processed by using the configuration parameter and the preset circuit structure, without the need to use any special circuit for implementing the activation function, thereby simplifying the circuit structure. In addition, this implementation manner can support multiple types of activation functions, thereby improving the flexibility. With such an embodiment, the processing of the input data to be processed can be realized by using the configuration parameters and the preset circuit structure, without the need of using a special circuit to implement the activation function, thereby simplifying the circuit structure, supporting various activation functions, and improving the flexibility.