×
Home CV Academic Qualifications Employment History Seminars Projects Skills

Projects

Mental Health Classification on Social Media Data

Python, PyTorch

Benchmarking deep learning architectures on mental health classification using unstructured social media data.
Code & Report: github/Mental-Health
06/2026

Imbalanced Diabetes Risk Prediction

Python, Tensorflow

Comparison of classical machine learning algorithms versus SOTA tabular deep learning architectures on highly imbalanced public health data using BRFSS dataset.
Code: github/DiabetesPrediction
06/2026

Applications of AI

Python

Exploring and experimenting with various AI techniques, following the course Applications of AI of the German University of Digital Science. Applies AI in the fields:

Code: github.com/ApplicationsAI
05/2026

Deep Learning

Python

Exploring and experimenting with various DL techniques, following the course Deep Learning of the German University of Digital Science.
Code: github.com/DL
03/2026

Deepfake Detector C++, openFrameworks, MediaPipe,OpenCV

C++

Real-time deepfake/authenticity detection. Tracks faces via a 468-point face mesh and runs multiple signal analyzers to produce an authenticity score. Supports camera feed and video upload.
Code: github/deepfake-detector
03/2026

Machine Learning

Python

Exploring and experimenting with various ML techniques, following the course ML & Analytics of the German University of Digital Science.
Code: github.com/ML
03/2026

BeatMachine – Step Sequencer with Synth Drums

C++, openFrameworks

A C++ drum machine built with openFrameworks. Includes a step sequencer, synthesized drum voices, per-track controls, probability mode, VU meters, and some pre-recorded sounds.
Code: github.com/beat-machine
02/2026

Team Matcher Web Application

Flask, PyGAD, NumPy

Team Matcher is a web-based tool designed to automate and optimize the formation of student groups. By leveraging a Genetic Algorithm, the application processes complex student data, such as availability, skills, and diversity metrics, to generate balanced, diverse teams. There are both homogeneous and heterogeneous criteria.
Code: github/teammatcher
12/2025

Naive Bayes Custom Implementation

C++

A custom implementation of the Naive Bayes algorithm in C++ using an imdb dataset.
Code: github.com/mar-kan/NaiveBayesImplementation
04/2022

Convolutional Neural Networks and their Application in Cancer Diagnosis based on RNA-Sequencing

Python, R

BSc thesis in Deep Learning for diagnosing and classifying cancer types, using RNA-sequencing data, converted into 2D images.
Paper: pergamos.lib.uoa.gr/Kanellaki_thesis
Code: github.com/mar-kan/thesis
10/2022-02/2022

Compilers Project

Java

Semantics check for the minijava language.
Code: github.com/mar-kan/semantics_check_for_minijava

LLVM translator for minijava input files.
Code: github.com/mar-kan/semantics_check_for_minijava
04/2021-05/2021

Database Management Systems

C

A database management system that uses block files. There are three implementations:
the first one organizes the files into a heap and the second one into a hash table.
Code: github.com/mar-kan/DBMS_System

The last implementation uses two hash tables, the first one using the primary key the id number and the second one the secondary key surname.
Code: github.com/mar-kan/DBMS_System_secondary_index
12/2020

Algorithm Project

Python

This project consists of 3 parts:
 ▫ a bottleneck autoencoder for image compression,
 ▫ heuristic or approximate search for the nearest neighbor images using, Manhattan Distance and
 ▫ heuristic search of the 10 nearest neighbor images, using Earth Mover's Distance.
Code: github.com/mar-kan/algorithm_project
11/2020

Autoencoder

Python, Tensorflow, Keras

This project trains an autoencoder model to encode and reconstruct images.
Code: github.com/mar-kan/autoencoder
10/2020

Disease Monitor

C/C++, Bash script, forks, pthreads, Linux

Q/A application that monitors diseases, stores patient records in hand-written data structures and executes commands regarding disease statistics (The data structures used are Linked List, Hash Table, AVL Tree, Max Heap, Priority Queue).
Code: github.com/mar-kan/diseaseMonitor

Child processes were added in this version using forks. The records are divided between the child processes and the commands are sent to every worker. The worker that finds results sends them back to the aggregator.
Code: github.com/mar-kan/diseaseAggregator

In this version, a multi-threaded server (receives queries and sends them to the workers) and a client (sends queries to the server) were added to the previous project. This project can also be executed in different machines.
Code: github.com/mar-kan/server-client-project
03/2020-06/2020

Machine Learning Project

Python

Experimental Project for classifying news articles based on subject, using SVM, Random Forests and Naïve Bayes.
Code: github.com/mar-kan/ML-algorithms-Classification

Experimental Project for binary classification on youtube comments. Experimentation on optimizations with SVM, Random Forests and Naïve Bayes.
Code: github.com/mar-kan/ML-Sentiment-Classification
04/2020-05/2020

Data Mining Project

Python

Data Mining Project on a bnb dataset to extract information about prices, neighborhoods and other relevant data.
Code: github.com/mar-kan/data_mining_bnb
03/2020

Card Game

C++

A simplified version of the Legend of The Five Rings game without graphics.
Code: github.com/mar-kan/card-game
01/2020