This repo has my solutions to the Pattern recognintion course at the Faculty of Engineering Alexandria University. The course had 7 homework problem sets and 4 assignments. The course website has more information about the assigmnets and homework problems.
- Implementing the principal component analysis algorithm.
- Applying the implementation to a small dataset.
- Handwritten problems on the mathimatics of the algorithm.
- Implementing the Linear Descriminat analysis algorithm.
- Applying the implementation to a small dataset.
- Handwritten problems on the mathimatics of the algorithm.
- Implementing the Naive Bayes algorithm.
- Applying Naive Bayes and Full Bayes to a toy dataset.
- Implementing the Decision Tree algorithm from scratch.
- Applying the Implementation to the orl faces data set.
- Using sklearn Random Forests on the same dataset.
- Using PCA with Random Forests and Decision Trees and comparing the results of different procedurs.
- Experimenting with soft margin SVMs on a toy dataset.
- Visualizing resulting decison boundries.
- Using the resulting classifiers in an ensemble to classify the points by hand.
- Using sklearn's Linear Regression on a toy dataset and visualizing the resulting planes for different values of the regularization parameter alpha.
- Implementing kmeans and applying it to applying in to a toy dataset.
- Implementing normalized cut spectral clustering with rbf and knn affinity matrices and comparing the plots of the embedding space for both methods.
- Implementing a number of clustering internal and external evaluation measures and comparing the performance of the above clustering measures on the toy dataset using plots.
Every Assignment is contained in its own repo.Links to the repos are included in the corresponding description below.
- Implemented PCA and multiclass LDA.
- Using EigenFaces and FisherFaces to recognise faces in the orl faces data set.
Performing sentiment analysis on the IMDB movie reviews dataset
- Used NLTK to preprocess the reviews.
- Compared different vectorization techniques
- word2vec using gensim
- doc2vec with multple variations using gensim
- TF-IDF using sklearn
- Compared different traditional non deeplearning classifires.
- Obtained an accuracy of 92.8% using TF-IDF with a logistic regression classifier.
Performing a classification task on a dataset of modulated radio signals.
- Used and compared different neural network architectures.
- Compared accuracies and confusion matrices produced by each of the different methods.
Performing image segmentation on the Berkley Segmentation dataset
- Tried kMeans with different values of k.
- Tried normalized cut spectral clustering using a k-nearest neighbours affinity matrices.
- Evaluated a compared results using conditional entropy and F-measure.