IP Library Granted Patent US 12,387,091
Granted Patent B2
US 12,387,091 · App. 17/962,348 · Granted Aug 12, 2025

Activation functions for deep neural networks

Inventors: Christopher Martin (Leighton Buzzard, GB); Antonios Tsichlas (Watford, GB); Yuan Li (London, GB)
Assignee: Imagination Technologies Limited
G06N3/063G06N3/047G06N3/048G06N3/045
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,387,091
App. No.
17/962,348
Granted
Aug 12, 2025
Kind
B2
Abstract

Hardware for implementing a Deep Neural Network (DNN) for performing an activation function includes, at an activation module for performing an activation function, a programmable lookup table for storing lookup data approximating the activation function over a first range of input values to the activation module, the method comprising: providing calibration data to a representation of the hardware; monitoring an input to an activation module of the representation of the hardware so as to determine a range of input values to the activation module; generating lookup data for the lookup table representing the activation function over the determined range of input values; and loading the generated lookup data into the lookup table of the hardware, thereby configuring the activation module of the hardware for performing the activation function over the determined range of input values.

Claims (29)

1. Hardware for implementing a Deep Neural Network (DNN) comprising an activation module for performing an activation function and a configuration module for determining a first range of input values to the activation module, the configuration module being configured to:

cause calibration data to be provided to the hardware wherein the hardware is configured to implement the DNN on the calibration data; and

monitor an input to the activation module of the hardware during implementation of the DNN on the calibration data so as to determine the first range of input values to the activation module; the activation module comprising:

a programmable lookup table for storing lookup data representing an activation function over the first range of input values to the activation module; and

a Rectified Linear Unit (ReLU) operable to perform a ReLU activation function;

wherein the configuration module is further configured to, on the DNN requiring the activation module to implement a ReLU activation function, cause the activation module to perform the activation function at the ReLU and turn off the programmable lookup table.

2. Hardware as claimed in claim 1 , wherein the configuration module is configured to, on the DNN requiring the activation module to implement an activation function using the programmable lookup table, cause the activation module to perform the activation function using the programmable lookup table and turn off the ReLU.

3. Hardware as claimed in claim 1 , wherein, on the DNN requiring the activation module to implement an activation function using the programmable lookup table, the ReLU is configured to clamp input values received at the activation module which lie outside the first range of input values, the clamped input values being subsequently passed to the programmable lookup table for implementation of the activation function.

4. Hardware as claimed in claim 3 , wherein the ReLU is configured to clamp the input values at the closest extreme of the first range of input values.

5. Hardware as claimed in claim 1 , wherein the configuration module is configured to form a histogram of input values representing the probability of occurrence of input values and use as the bounds of the first range of input values a pair of input values between which a predefined or programmable proportion of the distribution of input values lies.

6. Hardware as claimed in claim 1 , wherein the hardware is embodied on an integrated circuit.

7. Hardware as claimed in claim 1 , wherein the configuration module is further configured to generate lookup data for the programmable lookup table representing the activation function over the first range of input values.

8. A method for implementing in hardware a Deep Neural Network (DNN), the hardware comprising an activation module for performing an activation function and a configuration module for determining a first range of input values to the activation module, the activation module comprising, a programmable lookup table for storing lookup data representing an activation function over a first range of input values to the activation module, and a Rectified Linear Unit (ReLU) operable to perform a ReLU activation function, the method comprising:

causing calibration data to be provided to the hardware;

monitoring an input to the activation module of the hardware during implementation of the DNN on the calibration data so as to determine the first range of input values to the activation module; and

when the DNN requires the activation module to implement a ReLU activation function:

turning off the programmable lookup table; and

causing the activation module to perform the activation function at the ReLU.

9. The method as claimed in claim 8 , further comprising:

when the DNN requires the activation module to implement an activation function using the programmable lookup table:

clamping the input values received at the activation module which lie outside of input values at the closest extreme of the first range of input values;

subsequently passing the clamped input values to the programmable lookup table; and

causing the activation module to perform the activation function using the programmable lookup table.

10. The method of claim 8 , wherein the method further comprises:

generating lookup data for the programmable lookup table representing the activation function over the first range of input values.

11. A non-transitory computer readable storage medium having stored thereon a computer readable dataset description of hardware for implementing a Deep Neural Network (DNN) comprising an activation module for performing an activation function and a configuration module for determining a first range of input values to the activation module, that, when processed in an integrated circuit manufacturing system, causes the integrated circuit manufacturing system to manufacture an integrated circuit embodying the hardware, wherein the configuration module is configured to cause calibration data to be provided to the hardware wherein the hardware is configured to implement the DNN on the calibration data and monitor an input to the activation module of the hardware during implementation of the DNN on the calibration data so as to determine the first range of input values to the activation module, the activation module comprising:

a programmable lookup table for storing lookup data representing an activation function over the first range of input values to the activation module; and

a Rectified Linear Unit (ReLU) operable to perform a ReLU activation function;

wherein the configuration module is configured to, on the DNN requiring the activation module to implement a ReLU activation function, cause the activation module to perform the activation function at the ReLU and turn off the programmable lookup table.

Assignments (1)
SECURITY INTEREST Recorded Jul 31, 2024
From: IMAGINATION TECHNOLOGIES LIMITED
To: FORTRESS INVESTMENT GROUP (UK) LTD
Reel/Frame 068221/0001 →
Priority Claims (1)
GB 1718300 · Nov 3, 2017 · national
Continuity (2)
Division 16181195 · Nov 5, 2018
Related Publication 20230041966A1 · Feb 9, 2023
References Cited (27)
US 6983389B1 · Filippo · 2006 [cited by examiner]
US 8238609B2 · Lookingbill · 2012 [cited by examiner]
US 11494622B2 · Li · 2022 [cited by examiner]
US 20020159466A1 · Rhoades · 2002 [cited by applicant]
US 20030033194A1 · Ferguson · 2003 [cited by examiner]
US 20060017740A1 · Coleman · 2006 [cited by applicant]
US 20130329833A1 · Bai · 2013 [cited by applicant]
US 20160179434A1 · Herrero Abellanas et al. · 2016 [cited by applicant]
US 20170103304A1 · Glenn et al. · 2017 [cited by applicant]
US 20170103305A1 · Henry · 2017 [cited by examiner]
US 20170103320A1 · Henry · 2017 [cited by examiner]
US 20170103385A1 · Wilson, Jr. et al. · 2017 [cited by applicant]
US 20170277658A1 · Pratas et al. · 2017 [cited by applicant]
US 20180060278A1 · Lin · 2018 [cited by examiner]
EP 3035205A1 · 2016 [cited by applicant]
GB 2566702A · 2019 [cited by applicant]
WO 2017108399A1 · 2017 [cited by applicant]
Zamanlooy et al. (Efficient VLSI Implementation of Neural Networks With Hyperbolic Tangent Activation Function, Jan. 2014, pp. 39-48) (Year: 2014). [cited by examiner]
Piazza et al., “Neural Networks with Digital LUT Activation Functions,” 1993, IJCNN '93 Nagoya. Proceedings of 1993 International Joint Conference on Neural Networks. [cited by applicant]
Hosseinzadeh et al., “Artificial Neural Networks Activation Function HDL Coder”; 2009, EIT '09. IEEE International Conference on Electro/Information Technology; Jun. 1, 2009; pp. 389-392. [cited by applicant]
Meher; “An Optimized Lookup-Table for the Evaluation of Sigmoid Function for Artificial Neural Networks”; 2010 18th IEEE/IFIP International Conference on VLSI and System-On-Chip; Nov. 22, 2010; pp. 91-95. [cited by applicant]
Nascimento et al; “A new solution to the hyperbolic tangent implementation in hardware: plynomial modeling of the fractional exponential part”; Neural Computing and Applications; vol. 23; No. 2; Apr. 6, 2012; pp. 363-36… [cited by applicant]
Szabo et al; “An Efficient Hardware Implementation of Feed-Forward Neural Networks”; Electronic Publishing, Artistic Imaging, and Digital Typography; vol. 2070; Jan. 1, 2001; pp. 300-313. [cited by applicant]
Namin et al; “Artificial neural networks activation function HDL coder”; IEEE International Conference on Electro/Information Technology; Jun. 1, 2009; pp. 389-392. [cited by applicant]
Saichand et al.,FPGA Realization of Activation Function for Artificial Neural Networks, Eighth Int'l Conference on Intelligent Systems Design and Applications, IEEE Computer Society 2008, pp. 159-164. [cited by applicant]
Fiori, “Hybrid Independent Component Analysis by Adaptive LUT Activation Function Neurons,” Neural Networks vol. 15, 2002, pp. 85-94. [cited by applicant]
(Note: copies of NPL documents in parent apn). [cited by applicant]