|
arm_cmsis_nn_status | arm_fully_connected_s16 (const cmsis_nn_context *ctx, const cmsis_nn_fc_params *fc_params, const cmsis_nn_per_tensor_quant_params *quant_params, const cmsis_nn_dims *input_dims, const int16_t *input, const cmsis_nn_dims *filter_dims, const int8_t *kernel, const cmsis_nn_dims *bias_dims, const int64_t *bias, const cmsis_nn_dims *output_dims, int16_t *output) |
| Basic s16 Fully Connected function. More...
|
|
int32_t | arm_fully_connected_s16_get_buffer_size (const cmsis_nn_dims *filter_dims) |
| Get the required buffer size for S16 basic fully-connected and matrix multiplication layer function for TF Lite. More...
|
|
arm_cmsis_nn_status | arm_fully_connected_s8 (const cmsis_nn_context *ctx, const cmsis_nn_fc_params *fc_params, const cmsis_nn_per_tensor_quant_params *quant_params, const cmsis_nn_dims *input_dims, const int8_t *input, const cmsis_nn_dims *filter_dims, const int8_t *kernel, const cmsis_nn_dims *bias_dims, const int32_t *bias, const cmsis_nn_dims *output_dims, int8_t *output) |
| Basic s8 Fully Connected function. More...
|
|
int32_t | arm_fully_connected_s8_get_buffer_size (const cmsis_nn_dims *filter_dims) |
| Get the required buffer size for S8 basic fully-connected and matrix multiplication layer function for TF Lite. More...
|
|
Collection of fully-connected and matrix multiplication functions.
Fully-connected layer is basically a matrix-vector multiplication with bias. The matrix is the weights and the input/output vectors are the activation values. Supported {weight, activation} precisions include {8-bit, 8-bit} and {8-bit, 16-bit}
◆ arm_fully_connected_s16()
arm_cmsis_nn_status arm_fully_connected_s16 |
( |
const cmsis_nn_context * |
ctx, |
|
|
const cmsis_nn_fc_params * |
fc_params, |
|
|
const cmsis_nn_per_tensor_quant_params * |
quant_params, |
|
|
const cmsis_nn_dims * |
input_dims, |
|
|
const int16_t * |
input_data, |
|
|
const cmsis_nn_dims * |
filter_dims, |
|
|
const int8_t * |
filter_data, |
|
|
const cmsis_nn_dims * |
bias_dims, |
|
|
const int64_t * |
bias_data, |
|
|
const cmsis_nn_dims * |
output_dims, |
|
|
int16_t * |
output_data |
|
) |
| |
- Parameters
-
[in,out] | ctx | Function context (e.g. temporary buffer). Check the function definition file to see if an additional buffer is required. Optional function {API}_get_buffer_size() provides the buffer size if an additional buffer is required. The caller is expected to clear the buffer ,if applicable, for security reasons. |
[in] | fc_params | Fully Connected layer parameters. fc_params->input_offset : 0 fc_params->filter_offset : 0 fc_params->output_offset : 0 |
[in] | quant_params | Per-tensor quantization info. It contains the multiplier and shift values to be applied to the output tensor. |
[in] | input_dims | Input (activation) tensor dimensions. Format: [N, H, W, C_IN] Input dimension is taken as Nx(H * W * C_IN) |
[in] | input_data | Input (activation) data pointer. Data type: int16 |
[in] | filter_dims | Two dimensional filter dimensions. Format: [N, C] N : accumulation depth and equals (H * W * C_IN) from input_dims C : output depth and equals C_OUT in output_dims H & W : Not used |
[in] | filter_data | Filter data pointer. Data type: int8 |
[in] | bias_dims | Bias tensor dimensions. Format: [C_OUT] N, H, W : Not used |
[in] | bias_data | Bias data pointer. Data type: int64 |
[in] | output_dims | Output tensor dimensions. Format: [N, C_OUT] N : Batches C_OUT : Output depth H & W : Not used. |
[in,out] | output_data | Output data pointer. Data type: int16 |
- Returns
- The function returns
ARM_CMSIS_NN_SUCCESS
- Supported framework: TensorFlow Lite
◆ arm_fully_connected_s16_get_buffer_size()
int32_t arm_fully_connected_s16_get_buffer_size |
( |
const cmsis_nn_dims * |
filter_dims | ) |
|
- Parameters
-
[in] | filter_dims | dimension of filter |
- Returns
- The function returns required buffer size in bytes
◆ arm_fully_connected_s8()
arm_cmsis_nn_status arm_fully_connected_s8 |
( |
const cmsis_nn_context * |
ctx, |
|
|
const cmsis_nn_fc_params * |
fc_params, |
|
|
const cmsis_nn_per_tensor_quant_params * |
quant_params, |
|
|
const cmsis_nn_dims * |
input_dims, |
|
|
const int8_t * |
input_data, |
|
|
const cmsis_nn_dims * |
filter_dims, |
|
|
const int8_t * |
filter_data, |
|
|
const cmsis_nn_dims * |
bias_dims, |
|
|
const int32_t * |
bias_data, |
|
|
const cmsis_nn_dims * |
output_dims, |
|
|
int8_t * |
output_data |
|
) |
| |
- Parameters
-
[in,out] | ctx | Function context (e.g. temporary buffer). Check the function definition file to see if an additional buffer is required. Optional function {API}_get_buffer_size() provides the buffer size if an additional buffer is required. The caller is expected to clear the buffer ,if applicable, for security reasons. |
[in] | fc_params | Fully Connected layer parameters. Range of fc_params->input_offset : [-127, 128] fc_params->filter_offset : 0 Range of fc_params->output_offset : [-128, 127] |
[in] | quant_params | Per-tensor quantization info. It contains the multiplier and shift values to be applied to the output tensor. |
[in] | input_dims | Input (activation) tensor dimensions. Format: [N, H, W, C_IN] Input dimension is taken as Nx(H * W * C_IN) |
[in] | input_data | Input (activation) data pointer. Data type: int8 |
[in] | filter_dims | Two dimensional filter dimensions. Format: [N, C] N : accumulation depth and equals (H * W * C_IN) from input_dims C : output depth and equals C_OUT in output_dims H & W : Not used |
[in] | filter_data | Filter data pointer. Data type: int8 |
[in] | bias_dims | Bias tensor dimensions. Format: [C_OUT] N, H, W : Not used |
[in] | bias_data | Bias data pointer. Data type: int32 |
[in] | output_dims | Output tensor dimensions. Format: [N, C_OUT] N : Batches C_OUT : Output depth H & W : Not used. |
[in,out] | output_data | Output data pointer. Data type: int8 |
- Returns
- The function returns
ARM_CMSIS_NN_SUCCESS
- Supported framework: TensorFlow Lite
◆ arm_fully_connected_s8_get_buffer_size()
int32_t arm_fully_connected_s8_get_buffer_size |
( |
const cmsis_nn_dims * |
filter_dims | ) |
|
- Parameters
-
[in] | filter_dims | dimension of filter |
- Returns
- The function returns required buffer size in bytes