PandA-2024.02
Functions
backprop.c File Reference
#include "backprop.h"
Include dependency graph for backprop.c:

Go to the source code of this file.

Functions

void soft_max (TYPE net_outputs[possible_outputs], TYPE activations[possible_outputs])
 
void RELU (TYPE activations[nodes_per_layer], TYPE dactivations[nodes_per_layer], int size)
 
void add_bias_to_activations (TYPE biases[nodes_per_layer], TYPE activations[nodes_per_layer], int size)
 
void matrix_vector_product_with_bias_input_layer (TYPE biases[nodes_per_layer], TYPE weights[input_dimension *nodes_per_layer], TYPE activations[nodes_per_layer], TYPE input_sample[input_dimension])
 
void matrix_vector_product_with_bias_second_layer (TYPE biases[nodes_per_layer], TYPE weights[nodes_per_layer *nodes_per_layer], TYPE activations[nodes_per_layer], TYPE input_activations[nodes_per_layer])
 
void matrix_vector_product_with_bias_output_layer (TYPE biases[possible_outputs], TYPE weights[nodes_per_layer *possible_outputs], TYPE activations[possible_outputs], TYPE input_activations[nodes_per_layer])
 
void take_difference (TYPE net_outputs[possible_outputs], TYPE solutions[possible_outputs], TYPE output_difference[possible_outputs], TYPE dactivations[possible_outputs])
 
void get_delta_matrix_weights3 (TYPE delta_weights3[nodes_per_layer *possible_outputs], TYPE output_difference[possible_outputs], TYPE last_activations[nodes_per_layer])
 
void get_oracle_activations2 (TYPE weights3[nodes_per_layer *possible_outputs], TYPE output_differences[possible_outputs], TYPE oracle_activations[nodes_per_layer], TYPE dactivations[nodes_per_layer])
 
void get_delta_matrix_weights2 (TYPE delta_weights2[nodes_per_layer *nodes_per_layer], TYPE output_difference[nodes_per_layer], TYPE last_activations[nodes_per_layer])
 
void get_oracle_activations1 (TYPE weights2[nodes_per_layer *nodes_per_layer], TYPE output_differences[nodes_per_layer], TYPE oracle_activations[nodes_per_layer], TYPE dactivations[nodes_per_layer])
 
void get_delta_matrix_weights1 (TYPE delta_weights1[input_dimension *nodes_per_layer], TYPE output_difference[nodes_per_layer], TYPE last_activations[input_dimension])
 
void update_weights (TYPE weights1[input_dimension *nodes_per_layer], TYPE weights2[nodes_per_layer *nodes_per_layer], TYPE weights3[nodes_per_layer *possible_outputs], TYPE d_weights1[input_dimension *nodes_per_layer], TYPE d_weights2[nodes_per_layer *nodes_per_layer], TYPE d_weights3[nodes_per_layer *possible_outputs], TYPE biases1[nodes_per_layer], TYPE biases2[nodes_per_layer], TYPE biases3[possible_outputs], TYPE d_biases1[nodes_per_layer], TYPE d_biases2[nodes_per_layer], TYPE d_biases3[possible_outputs])
 
void backprop (TYPE weights1[input_dimension *nodes_per_layer], TYPE weights2[nodes_per_layer *nodes_per_layer], TYPE weights3[nodes_per_layer *possible_outputs], TYPE biases1[nodes_per_layer], TYPE biases2[nodes_per_layer], TYPE biases3[possible_outputs], TYPE training_data[training_sets *input_dimension], TYPE training_targets[training_sets *possible_outputs])
 

Function Documentation

◆ add_bias_to_activations()

void add_bias_to_activations ( TYPE  biases[nodes_per_layer],
TYPE  activations[nodes_per_layer],
int  size 
)

◆ backprop()

void backprop ( TYPE  weights1[input_dimension *nodes_per_layer],
TYPE  weights2[nodes_per_layer *nodes_per_layer],
TYPE  weights3[nodes_per_layer *possible_outputs],
TYPE  biases1[nodes_per_layer],
TYPE  biases2[nodes_per_layer],
TYPE  biases3[possible_outputs],
TYPE  training_data[training_sets *input_dimension],
TYPE  training_targets[training_sets *possible_outputs] 
)

◆ get_delta_matrix_weights1()

void get_delta_matrix_weights1 ( TYPE  delta_weights1[input_dimension *nodes_per_layer],
TYPE  output_difference[nodes_per_layer],
TYPE  last_activations[input_dimension] 
)

Definition at line 135 of file backprop.c.

References input_dimension, and nodes_per_layer.

Referenced by backprop().

Here is the caller graph for this function:

◆ get_delta_matrix_weights2()

void get_delta_matrix_weights2 ( TYPE  delta_weights2[nodes_per_layer *nodes_per_layer],
TYPE  output_difference[nodes_per_layer],
TYPE  last_activations[nodes_per_layer] 
)

Definition at line 110 of file backprop.c.

References nodes_per_layer.

Referenced by backprop().

Here is the caller graph for this function:

◆ get_delta_matrix_weights3()

void get_delta_matrix_weights3 ( TYPE  delta_weights3[nodes_per_layer *possible_outputs],
TYPE  output_difference[possible_outputs],
TYPE  last_activations[nodes_per_layer] 
)

Definition at line 85 of file backprop.c.

References nodes_per_layer, and possible_outputs.

Referenced by backprop().

Here is the caller graph for this function:

◆ get_oracle_activations1()

void get_oracle_activations1 ( TYPE  weights2[nodes_per_layer *nodes_per_layer],
TYPE  output_differences[nodes_per_layer],
TYPE  oracle_activations[nodes_per_layer],
TYPE  dactivations[nodes_per_layer] 
)

Definition at line 121 of file backprop.c.

References nodes_per_layer, TYPE, and bench_args_t::weights2.

Referenced by backprop().

Here is the caller graph for this function:

◆ get_oracle_activations2()

void get_oracle_activations2 ( TYPE  weights3[nodes_per_layer *possible_outputs],
TYPE  output_differences[possible_outputs],
TYPE  oracle_activations[nodes_per_layer],
TYPE  dactivations[nodes_per_layer] 
)

Definition at line 96 of file backprop.c.

References nodes_per_layer, possible_outputs, TYPE, and bench_args_t::weights3.

Referenced by backprop().

Here is the caller graph for this function:

◆ matrix_vector_product_with_bias_input_layer()

void matrix_vector_product_with_bias_input_layer ( TYPE  biases[nodes_per_layer],
TYPE  weights[input_dimension *nodes_per_layer],
TYPE  activations[nodes_per_layer],
TYPE  input_sample[input_dimension] 
)

Definition at line 33 of file backprop.c.

References add_bias_to_activations(), input_dimension, nodes_per_layer, and TYPE.

Referenced by backprop().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ matrix_vector_product_with_bias_output_layer()

void matrix_vector_product_with_bias_output_layer ( TYPE  biases[possible_outputs],
TYPE  weights[nodes_per_layer *possible_outputs],
TYPE  activations[possible_outputs],
TYPE  input_activations[nodes_per_layer] 
)

Definition at line 61 of file backprop.c.

References add_bias_to_activations(), nodes_per_layer, possible_outputs, and TYPE.

Referenced by backprop().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ matrix_vector_product_with_bias_second_layer()

void matrix_vector_product_with_bias_second_layer ( TYPE  biases[nodes_per_layer],
TYPE  weights[nodes_per_layer *nodes_per_layer],
TYPE  activations[nodes_per_layer],
TYPE  input_activations[nodes_per_layer] 
)

Definition at line 47 of file backprop.c.

References add_bias_to_activations(), nodes_per_layer, and TYPE.

Referenced by backprop().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ RELU()

void RELU ( TYPE  activations[nodes_per_layer],
TYPE  dactivations[nodes_per_layer],
int  size 
)

Definition at line 16 of file backprop.c.

References exp.

Referenced by backprop().

Here is the caller graph for this function:

◆ soft_max()

void soft_max ( TYPE  net_outputs[possible_outputs],
TYPE  activations[possible_outputs] 
)

Definition at line 3 of file backprop.c.

References exp, possible_outputs, sum, and TYPE.

Referenced by backprop().

Here is the caller graph for this function:

◆ take_difference()

void take_difference ( TYPE  net_outputs[possible_outputs],
TYPE  solutions[possible_outputs],
TYPE  output_difference[possible_outputs],
TYPE  dactivations[possible_outputs] 
)

Definition at line 75 of file backprop.c.

References possible_outputs.

Referenced by backprop().

Here is the caller graph for this function:

◆ update_weights()

void update_weights ( TYPE  weights1[input_dimension *nodes_per_layer],
TYPE  weights2[nodes_per_layer *nodes_per_layer],
TYPE  weights3[nodes_per_layer *possible_outputs],
TYPE  d_weights1[input_dimension *nodes_per_layer],
TYPE  d_weights2[nodes_per_layer *nodes_per_layer],
TYPE  d_weights3[nodes_per_layer *possible_outputs],
TYPE  biases1[nodes_per_layer],
TYPE  biases2[nodes_per_layer],
TYPE  biases3[possible_outputs],
TYPE  d_biases1[nodes_per_layer],
TYPE  d_biases2[nodes_per_layer],
TYPE  d_biases3[possible_outputs] 
)

Generated on Mon Feb 12 2024 13:03:10 for PandA-2024.02 by doxygen 1.8.13