[Master course] Lab assignments developed during the Machine Learning course at UNIGE
- MATLAB
- LaTeX
- Linear classifier
- No algorithms developed, instead a manual-visual approach was used to select the hyperplane dividing 2 linearly-separable classes.
- Naive Bayes classifier
- Developed naive bayes classifier on categorical data (multivariate multinomial distribution).
- Dataset consisting of 14 observations with 4 features each.
- Binary classification (yes, no)
- k-Nearest Neighbors classifier
- lazy-learner algorithm developed and tested on semeion-digits dataset (handwritten scanned digits).
- Introduction to the confusion matrix and its terminology (accuracy, recall, precision, F1 score)
- t-SNE embedding (optional visualization usng built-in MATLAB function)
- Multiclass classification (0, 1, 2, ..., 9)
- Percetron and cross-validation
- Developed Rosenblatt's perceptron using sign as activation function.
- Tested with semeion-digits dataset (handwritten digits)
- Cross validation and hyper-parameter tuning.
- Binary (one-vs-all) and multiclass classification.
- Comparison between performance of perceptron and k-NN.
- Autoencoder using NNs
- Collaborative lab with Alexandre Sarazin
- Use of MATLAB's nntool (neural networks toolbox)
- Autoencoder using a simple Neural Netwrok with 1 hidden layer.
(cleverly intended misspelling)
This folder contains the implementation of
- kNN classification algorithm
- Rosenblatt's perceptron
Useful functions used throghout the reports
- Confusion matrix related
- plot_confMat.m
- accuracy.m
- precision.m
- recall.m
- F1Score.m
- specificity.m
- Cross-validation
- cross_val_score.m
- get_scores.m
- merge_scores.m
- Train-test-split
- train_test_split.m
- stratified_split.m