An implementation of Artificial Neural Network using C++.
- CMAKE 3.0
- MAKE
./ANN_train
Follow the Prompt
./ANN_test
Follow the Prompt
https://github.com/ZhekaiJin/Artifical_NN.git
cd Artifical_NN/
mkdir build && cd build
cmake .. && make
cd Artifical_NN/
rm -rf build
-
Filename: robot_dataset
-
Title: Wall-Following navigation task with mobile robot SCITOS-G5
-
Reasonable parameter:
- learning rate : 0.05
- Epoch(iterations) : 100
- Number of hidden nodes: 5
-
Filename for trained/untrained/result:
- untrained: init_weight
- trained: sample.out.05.100.trained
- result: sample.out.05.100.results
-
Initial weights are generated through scirpt : init_weight.py
-
Database are modified using script : format_to_data.py [take 1 parameter as the percentage of the training set to be partitioned from the dataset, e.g. 0.8]
- Dropped incomplete data
- Encoded the classification to binary classification of four nodes
- Drop out irrelevant feature (no correlation to classification task)
- Partition the data to test (20 % of original sets) and train (80% of original sets)
-
Full description of the dataset can be found at Wall-following.names in the folder, dataset found on UCI machine learning dataset repository