Method or an apparatus implementing a neural network-based processing at low complexity
AssigneeInterDigital CE Patent Holdings, SAS
InventorsFranck Galpin, Guillaume Boisson, Philippe Bordes, Thierry Dumas
Life of this patent
Estimating the term…
Abstract
At least a method and an apparatus are presented for efficiently encoding or decoding video by applying a neural network-based processing to a tensor of input data to generate a tensor of output data. For example, the quantization of the tensors is limited to a scaling by a power of 2. For example, the tensor product layer, the bias addition layer and the activation are fused to reduce the number of operations and increase the available bits to represent the values.
Claims22
A computer-implemented method, comprising:
- obtaining a tensor of input data representative of coded data samples of an image block;
- applying a neural network-based processing to the tensor of input data to generate a tensor of output data;
- and
- decoding the image block based on the tensor of output data;
- wherein the neural network-based processing comprises a plurality of processing layers, wherein each of the plurality of processing layers generates an intermediate tensor, wherein at least one of the plurality of processing layers is represented as a tensor product between the tensor of input data and a weight tensor, and wherein at least one of the plurality of processing layers is represented as an addition of a bias tensor and is fused with the at least one of the plurality of processing layer representing the tensor product;
- wherein a scaling factor of a quantized representation of tensor of input data, a scaling factor of a quantized representation of the weight tensor, a scaling factor of a quantized representation of the bias tensor, a scaling factor of a quantized representation of an intermediate tensor, and a scaling factor of a quantized representation of the tensor of output data are powers of two, a quantized representation of a tensor being obtained by a shift according to an exponent of a respective power of two scaling factor;
- and
- wherein the fusion of the at least one processing layer representing the addition of the bias tensor with the at least one processing layer representing the tensor product involves a single combined bit-shifting operation for scaling a result of the tensor product with the scaling factor of the quantized representation of the bias tensor.
A computer-implemented method, comprising:
- obtaining a tensor of input data representative of data samples of an image block;
- applying a neural network-based processing to the tensor of input data to generate a tensor of output data;
- and
- encoding the image block based on the tensor of output data;
- wherein the neural network-based processing comprises a plurality of processing layers, wherein each of the plurality of processing layers generates an intermediate tensor, wherein at least one of the plurality of processing layers is represented as a tensor product between the tensor of input data and a weight tensor, and wherein at least one of the plurality of processing layers is represented as an addition of a bias tensor and is fused with the at least one of the plurality of processing layer representing the tensor product;
- wherein a scaling factor of a quantized representation of tensor of input data, a scaling factor of a quantized representation of the weight tensor, a scaling factor of a quantized representation of the bias tensor, a scaling factor of a quantized representation of an intermediate tensor, and a scaling factor of a quantized representation of the tensor of output data are powers of two, and a quantized representation of a tensor being obtained by a shift according to an exponent of a respective power of two scaling factor;
- and
- wherein the fusion of the at least one processing layer representing the addition of the bias tensor with the at least one processing layer representing the tensor product involves a single combined bit-shifting operation for scaling a result of the tensor product with the scaling factor of the quantized representation of the bias tensor.
An apparatus comprising a memory and one or more processors, wherein the one or more processors are configured to:
- obtain a tensor of input data representative of coded data samples of an image block;
- apply a neural network-based processing to the tensor of input data to generate a tensor of output data;
- and
- decode the image block based on the tensor of output data;
- wherein the neural network-based processing comprises a plurality of processing layers, wherein each of the plurality of processing layers generates an intermediate tensor, wherein at least one of the plurality of processing layers is represented as a tensor product between the tensor of input data and a weight tensor, and wherein at least one of the plurality of processing layers is represented as an addition of a bias tensor and is fused with the at least one of the plurality of processing layer representing the tensor product;
- wherein a scaling factor of a quantized representation of tensor of input data, a scaling factor of a quantized representation of the weight tensor, a scaling factor of a quantized representation of the bias tensor, a scaling factor of a quantized representation of an intermediate tensor, and a scaling factor of a quantized representation of the tensor of output data are powers of two, a quantized representation of a tensor being obtained by a shift according to an exponent of a respective power of two scaling factor;
- and
- wherein the fusion of the at least one processing layer representing the addition of the bias tensor with the at least one processing layer representing the tensor product involves a single combined bit-shifting operation for scaling a result of the tensor product with the scaling factor of the quantized representation of the bias tensor.
An apparatus comprising a memory and one or more processors, wherein the one or more processors are configured to:
- obtain a tensor of input data representative of data samples of an image block;
- apply a neural network-based processing to the tensor of input data to generate a tensor of output data;
- and
- encode the image block based on the tensor of output data;
- wherein the neural network-based processing comprises a plurality of processing layers, wherein each of the plurality of processing layers generates an intermediate tensor, wherein at least one of the plurality of processing layers is represented as a tensor product between the tensor of input data and a weight tensor, and wherein at least one of the plurality of processing layers is represented as an addition of a bias tensor and is fused with the at least one of the plurality of processing layer representing the tensor product;
- wherein a scaling factor of a quantized representation of tensor of input data, a scaling factor of a quantized representation of the weight tensor, a scaling factor of a quantized representation of the bias tensor, a scaling factor of a quantized representation of an intermediate tensor, and a scaling factor of a quantized representation of the tensor of output data are powers of two, a quantized representation of a tensor being obtained by a shift according to an exponent of a respective power of two scaling factor;
- and
- wherein the fusion of the at least one processing layer representing the addition of the bias tensor with the at least one processing layer representing the tensor product involves a single combined bit-shifting operation for scaling a result of the tensor product with the scaling factor of the quantized representation of the bias tensor.
Dependencies are inferred from the claim text.