This repository includes the implementation of machine learning algorithms (Classification, Clustering, Ensemble Method) learnt in Professor Nicholas Ruozzi's Machine Learning Class (http://www.utdallas.edu/~nrr150130/cs6375/2015fa/index.html).
The following algorithms have been implemented:
- Gradient Descent (Matlab)
- Coordinate Descent (Java)
- Support Vector Machine (Matlab)
- Decision Tree (Java)
- Naive Bayes (Java)
- Logistic Regression (Java)
- Bayesian Network Structure Learning - Chowliu Tree(Java)
- Bayesian Network Parameter Learning (Java)
- Adaboost (Java)
- Value iteration for Markov Decision Process (Java)
- Spectral Clustering (Matlab)
All the Java code are organized in packages, training and testing samples are in ./data folder. A driver class is provided for each algorithm implemented, it is called "*Test.java". To test an algorithm, run:
javac src/package_name/*Test.java
java bin//package_name/*Test
from the command line.