This library was developed during the "Machine Learning and Pattern Recognition" course at PoliTO during the accademic year 2021/2022.
In Classifier.py you can find the implementations of the following shallow learning models :
- Gaussian Model (Naive and/or Tied assumption)
- (Quadratic) Logistic Regression
- Support Vector Machine (Linear, Polynomial and RBF kernels)
- Gaussian Mixture Model (Naive and/or Tied assumption)
In preprocessing.py there are the implementations of some PP technique:
- PCA
- LDA
- Gaussianization
- Z-Score / Z-Normalization
In validation.py there are some helpful functions that you can use to plot graphs such as:
- DET curve
- ROC curve
- Bayes Error
- Data Histograms
- Correlation Heatmap
In the same file, there is something that you can use to deal with the K-Fold protocol or with the Single Split one.
The init.py and eval.py can be used as template to start to be confident with the APIs.
In the data folder you can find the training and the test data used to develop the report assignment.