Neural Network Processor
First Claim
1. A circuit for performing neural network computations for a neural network comprising a plurality of neural network layers, the circuit comprising:
- a matrix computation unit configured to, for each of the plurality of neural network layers;
receive a plurality of weight inputs and a plurality of activation inputs for the neural network layer,generate a plurality of accumulated values based on the plurality of weight inputs and the plurality of activation inputs; and
a vector computation unit communicatively coupled to the matrix computation unit and configured to, for each of the plurality of neural network layers;
apply an activation function to each accumulated value generated by the matrix computation unit to generate a plurality of activated values for the neural network layer.
2 Assignments
0 Petitions
Accused Products
Abstract
A circuit for performing neural network computations for a neural network comprising a plurality of neural network layers, the circuit comprising: a matrix computation unit configured to, for each of the plurality of neural network layers: receive a plurality of weight inputs and a plurality of activation inputs for the neural network layer, and generate a plurality of accumulated values based on the plurality of weight inputs and the plurality of activation inputs; and a vector computation unit communicatively coupled to the matrix computation unit and configured to, for each of the plurality of neural network layers: apply an activation function to each accumulated value generated by the matrix computation unit to generate a plurality of activated values for the neural network layer.
59 Citations
28 Claims
-
1. A circuit for performing neural network computations for a neural network comprising a plurality of neural network layers, the circuit comprising:
-
a matrix computation unit configured to, for each of the plurality of neural network layers; receive a plurality of weight inputs and a plurality of activation inputs for the neural network layer, generate a plurality of accumulated values based on the plurality of weight inputs and the plurality of activation inputs; and a vector computation unit communicatively coupled to the matrix computation unit and configured to, for each of the plurality of neural network layers; apply an activation function to each accumulated value generated by the matrix computation unit to generate a plurality of activated values for the neural network layer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method for performing neural network computations for a neural network comprising a plurality of neural network layers using a circuit comprising a matrix computation unit and a vector computation unit coupled to the matrix computation unit, the method comprising, for each of the plurality of neural network layers:
-
providing a plurality of weight inputs and a plurality of activation inputs for the neural network layer to the matrix computation unit; generating, using the matrix computation unit, a plurality of accumulated values, wherein the matrix computation unit is configured to receive the plurality of weight inputs and the plurality of activation inputs for the neural network layer and generate the plurality of accumulated values based on the plurality of weight inputs and the plurality of activation inputs; and generating, using the vector computation unit, a plurality of activated values for the neural network layer, wherein the matrix computation unit is configured to apply an activation function to each accumulated value generated by the matrix computation unit to generate a plurality of activated values for the neural network layer. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
Specification