This program construct a neural network that can be used with different options for binary classification.
data.csv
. And place it under the data folder. There are two modes to this program: 1. trial 2.model. If you already know the parameters of your NN architecture you can use option 2 directly but if you don't know the best parameters that should be used for your data set you can use trial mode. ensure you adjust the "Objective" method in the main.py to adjust the range of the parameters you want to study:
- Command for Trial mode: python main.py --mode trial:
- Command for Model mode: python main.py --mode model --layers <layers> --epochs <epochs> --learning_rate <learning_rate>
The result of the model performance, including loss curves, accuracy, and evaluation metrics, will be displayed in the terminal during training and the associated graphs are saved as .png file.
For this dataset, we conducted an initialize analysis before training. The analysis results can be found in the "DataAnalysis.pdf" document. The following steps outline our approach to building and training the neural network:
Data Preprocessing:
Neural Network Architecture:
NeuralNetwork
class provided in the code.n_input
, n_hlayers
, and n_output
parameters.Weight Initialization:
Regularization:
Training:
Loss and Metrics: