This is a basic multilayer perceptron neural network capable of basic training and feed forward operations.
More...
|
| AZ_RTTI (MultilayerPerceptron, "{E12EF761-41A5-48C3-BF55-7179B280D45F}", INeuralNetwork) |
|
| MultilayerPerceptron (const MultilayerPerceptron &) |
|
| MultilayerPerceptron (AZStd::size_t activationCount) |
|
MultilayerPerceptron & | operator= (const MultilayerPerceptron &) |
|
MultilayerPerceptron & | operator= (const ModelAsset &) |
|
void | AddLayer (AZStd::size_t layerDimensionality, ActivationFunctions activationFunction=ActivationFunctions::ReLU) |
| Adds a new layer to the model.
|
|
Layer * | GetLayer (AZStd::size_t layerIndex) |
| Retrieves a specific layer from the model, this is not thread safe and should only be used during unit testing to validate model parameters.
|
|
|
AZStd::string | GetName () const override |
|
AZStd::string | GetAssetFile (AssetTypes assetType) const override |
| Returns the file where model parameters are stored.
|
|
AZStd::size_t | GetInputDimensionality () const override |
| Returns the number of input neurons the model supports.
|
|
AZStd::size_t | GetOutputDimensionality () const override |
| Returns the number of output neurons the model supports.
|
|
AZStd::size_t | GetLayerCount () const override |
| Returns the total number of layers in the network.
|
|
AZ::MatrixMxN | GetLayerWeights (AZStd::size_t layerIndex) const override |
| Returns the weight matrix for the requested layer.
|
|
AZ::VectorN | GetLayerBiases (AZStd::size_t layerIndex) const override |
| Returns the weight matrix for the requested layer.
|
|
AZStd::size_t | GetParameterCount () const override |
| Returns the total number of parameters in the neural network.
|
|
IInferenceContextPtr | CreateInferenceContext () override |
|
ITrainingContextPtr | CreateTrainingContext () override |
|
const AZ::VectorN * | Forward (IInferenceContextPtr context, const AZ::VectorN &activations) override |
| Performs a basic feed-forward operation to compute the output from a set of activation values.
|
|
void | Reverse (ITrainingContextPtr context, LossFunctions lossFunction, const AZ::VectorN &activations, const AZ::VectorN &expected) override |
| Accumulates the loss gradients given a loss function, an activation vector and a corresponding label vector.
|
|
void | GradientDescent (ITrainingContextPtr context, float learningRate) override |
| Performs a gradient descent step and resets all gradient accumulators to zero.
|
|
bool | LoadModel () override |
| Loads the current model parameters from the associated asset file.
|
|
bool | SaveModel () override |
| Saves the current model parameters to the associated asset file.
|
|
| AZ_RTTI (INeuralNetwork, "{64E5B5B1-4A7D-489D-9A29-D9510BB7E17A}") |
|
| INeuralNetwork (INeuralNetwork &&)=default |
|
| INeuralNetwork (const INeuralNetwork &)=default |
|
INeuralNetwork & | operator= (INeuralNetwork &&)=default |
|
INeuralNetwork & | operator= (const INeuralNetwork &)=default |
|
void | add_ref () |
|
void | release () |
|
This is a basic multilayer perceptron neural network capable of basic training and feed forward operations.