![]() |
AIfES 2 2.0.0
|
AIfES Express functions for weights with F32 (float32) data type. More...
Go to the source code of this file.
Data Structures | |
struct | AIFES_E_model_parameter_fnn_f32 |
Parameters for the FNN model. More... | |
struct | AIFES_E_training_parameter_fnn_f32 |
Parameters for Training. More... | |
struct | AIFES_E_init_weights_parameter_fnn_f32 |
Parameters for weight initialization. More... | |
Typedefs | |
typedef struct AIFES_E_model_parameter_fnn_f32 | AIFES_E_model_parameter_fnn_f32 |
typedef struct AIFES_E_training_parameter_fnn_f32 | AIFES_E_training_parameter_fnn_f32 |
typedef struct AIFES_E_init_weights_parameter_fnn_f32 | AIFES_E_init_weights_parameter_fnn_f32 |
Enumerations | |
enum | AIFES_E_activations { AIfES_E_relu , AIfES_E_sigmoid , AIfES_E_softmax , AIfES_E_leaky_relu , AIfES_E_elu , AIfES_E_tanh , AIfES_E_softsign , AIfES_E_linear } |
Possible activation functions in AIfES-Express. More... | |
enum | AIFES_E_loss { AIfES_E_mse , AIfES_E_crossentropy } |
Possible loss functions in AIfES-Express. More... | |
enum | AIFES_E_optimizer { AIfES_E_adam , AIfES_E_sgd } |
Possible optimizers in AIfES-Express. More... | |
enum | AIFES_E_init_weights_method { AIfES_E_init_uniform , AIfES_E_init_glorot_uniform , AIfES_E_init_no_init } |
Possible weight initialization methods in AIfES-Express. More... | |
enum | AIFES_E_early_stopping { AIfES_E_early_stopping_off , AIfES_E_early_stopping_on } |
Turn early stopping on or off. | |
Functions | |
uint32_t | AIFES_E_flat_weights_number_fnn_f32 (uint32_t *fnn_structure, uint32_t layer_count) |
Calculates the total required float weights for the selected network structure. More... | |
int8_t | AIFES_E_inference_fnn_f32 (aitensor_t *input_tensor, AIFES_E_model_parameter_fnn_f32 *AIFES_E_fnn, aitensor_t *output_tensor) |
Executes the inference. More... | |
int8_t | AIFES_E_training_fnn_f32 (aitensor_t *input_tensor, aitensor_t *target_tensor, AIFES_E_model_parameter_fnn_f32 *AIFES_E_fnn, AIFES_E_training_parameter_fnn_f32 *AIFES_E_fnn_training, AIFES_E_init_weights_parameter_fnn_f32 *AIFES_E_fnn_init_weights, aitensor_t *output_tensor) |
Executes the training. More... | |
AIfES Express functions for weights with F32 (float32) data type.
AIfES is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.
AIfES Express is a beginner friendly high-level API of AIfES. This file contains all necessary functions for neural networks with float32 weights.
enum AIFES_E_activations |
Possible weight initialization methods in AIfES-Express.
enum AIFES_E_loss |
enum AIFES_E_optimizer |
uint32_t AIFES_E_flat_weights_number_fnn_f32 | ( | uint32_t * | fnn_structure, |
uint32_t | layer_count | ||
) |
Calculates the total required float weights for the selected network structure.
*fnn_structure | The FNN structure |
layer_count | Number of layers |
int8_t AIFES_E_inference_fnn_f32 | ( | aitensor_t * | input_tensor, |
AIFES_E_model_parameter_fnn_f32 * | AIFES_E_fnn, | ||
aitensor_t * | output_tensor | ||
) |
Executes the inference.
Requires the input tensor, the FNN model parameters and an output tensor for the results. All data sets of the input tensor are calculated
Possible returns:
Example:
*input_tensor | Tensor with the inputs |
*AIFES_E_fnn | The FNN model parameters |
*output_tensor | Tensor for the results |
int8_t AIFES_E_training_fnn_f32 | ( | aitensor_t * | input_tensor, |
aitensor_t * | target_tensor, | ||
AIFES_E_model_parameter_fnn_f32 * | AIFES_E_fnn, | ||
AIFES_E_training_parameter_fnn_f32 * | AIFES_E_fnn_training, | ||
AIFES_E_init_weights_parameter_fnn_f32 * | AIFES_E_fnn_init_weights, | ||
aitensor_t * | output_tensor | ||
) |
Executes the training.
Requires the input tensor, the target tensor, FNN model parameters, training parameters, weight initialization method and an output tensor for the results. All data sets of the input tensor are used for the training
Possible returns:
Example:
*input_tensor | Tensor with the input training data |
*target_tensor | Tensor with the training target data / labels |
*AIFES_E_fnn | The FNN model parameters |
*AIFES_E_fnn_training | The training parameters |
*AIFES_E_fnn_init_weights | The weight init parameters |
*output_tensor | Tensor for the results |