Skip to content

This is open source library for creating artificial neural network in c programming language for general purpose use.

License

Notifications You must be signed in to change notification settings

mohamedashraf-eng/ANN-lib-c

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Open source artificial neural network library built in c

This is open source library for creating artificial neural network in c programming language for general purpose use.

About Library

This library is essentialy made for Embedded Machine Learning. It's based on memory management (Not fully secured yet).


Complete Functions

Public Functions

  • Create_Network
  • forward_propagation

Activation Functions

  • ReLU
  • ELU
  • Sigmoid
  • Tanh
  • Softmax

Loss Functions

  • MSE
  • MAE

How to use

Setting your network parameters

Network Topology

Network_Topology_t MyNetworkTopology = {.input_layer_dense  = 2, 
                                        .hidden_layer_dense = 5,
                                        .hidden_layer_num   = 2,
                                        .output_layer_dense = 4,
                                        .activation_function        = &ELU,
                                        .output_activation_function = &SoftMax,
                                        .loss_function              = &MSE,
                                        .optimizer_function         = &GradientDescent};

System Confiurations

Network_Config_t MyNetworkConfig = {.learning_rate = 0.1332,
                                    .dropout = false,
                                    .epochs = 10};

Functions to use

By calling the "Create_Network()" function after setting all the parameters

DNN_Network *myNetwork = Create_Network(&MyNetworkTopology, &MyNetworkConfig);

This line creating like Cpp Class to your ANN network.

After creating your network with your parameters. To feed forward through the network

forward_propagation(myNetwork);

This line call the forward propagation algorithm to your created network


Useful resources

About

This is open source library for creating artificial neural network in c programming language for general purpose use.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Languages