Jann is a Java Artificial Neural Network library.
- Started in 2011, around a year later development stopped due to work and travel.
- 9 years later, a revisit was decided, but no high expectations, only learning motivation as was in its start.
- Using maven
- Code clean up
- Using Java 14, Jbom, and Jutils
Part 1 Linear regression One/Multiple Variables Linear regression Training: Batch GD (single neuron) Stochastic GD (single or nNeurons) Feature Mapping with degrees Feature Scaling with (STD, average) Normal Equation (single neuron) Dynamic Training through Train Class Better Tests
Part 2 Models:
- Logistic Regression One Class
- Logistic Regression Multiple Classes
Training:
- Logistic Regression GD
- Regularized Linear Regression
- Regularized Logistic Regression
Utils:
- Random Initialization of theta
Part 3
Models: 1- Logistic Regression Neural Network 2- Linear Regression Neural Network
Gradient Checking Numerical Estimation of gradients Neural Network Back propagation
Part 4 Notes or Logic for Decision Making For handling errors :
- Identify Problems with the help of (Graphs, tools)
- Act upon on it (Manual ways, Automatic ways)
Part 5
- More Tests
- More Graphs
- Graphed Network
- Functors IFunctionable aka Java function pointers {IPerformance, Iweight, ITransfere}
- Feed forward, perceptron, backpropagation trials
- Many network structure trials
- Transfere Functions:
- COMPET
- HARDLIM
- HARDLIMS
- LOGSIG
- LOGSIGDIFF
- POSLIN
- PURELIN
- SATLIN
- SATLINS
- TANSIG
- TANSIGDIFF
- Performance Functions:
- MSE, MAE, SSE