Deep Q-Network for ATARI Snake Game

Project: Deep Q-Network for ATARI Snake Game Overview The aim of the project was to implement Deep QNetworks, following the description contained in Playing Atari with Deep Reinforcement Learning and in particular to exploit it to make an agent learn how to play Snake game. Instead of directly implementing DQN using CNNs, we progressively build up different models, starting from basic Qlearning algorithms and moving towards MLP, in order to deal with increasing complexity of the game....

September 18, 2023 · 3 min · Alessandro Serra

Evolutionary architecture selection

Project: Evolutionary architecture selection Overview This repository contains an implementation (in PyTorch) of the DENSER ( Deep Evolutionary Network Structured Representation) approach for automatic selection of a Convoluational Neural Network (CNN) architecture. Key Technologies: Python, Pytorch, Genetic Algorithms Project Details The method proposed in the paper has to do with Neuroevolution, a field which deals with the automatic optimisation of ANN architectures and parametrization. The DENSER approach, in particular, combines Genetic Algorithms (GA) with Dynamic structured grammatical evolution (SGDE), which represents the genotype of each individual (a DNN in our case) through the use of a grammar, expressed in backus-naur form (BNF)....

September 18, 2023 · 3 min · Alessandro Serra

MCQA Benchmark

Overview The MCQA_Benchmark serves as a comprehensive benchmark for Language Model (LLM) performance on multiple-choice Q&A datasets. It primarily utilizes various methods from DADApy, enabling the analysis of model hidden states through geometric tools like intrinsic dimension calculation and advanced clustering techniques. Key Technologies: Python, PyTorch, DADApy, Hugging Face Transformers, Dataset Management, SQLite Project Details The inference configuration allows users to choose a dataset and model from the Hugging Face Hub, including the number of shots for few-shot learning....

September 18, 2023 · 1 min · Alessandro Serra

Parallel KD_Tree

Project: Parallel KD_Tree Overview Parallel implementation of k-d tree using MPI, OpenMP and C++17 Key Technologies: C++, MPI, OpenMP, Bash Source: DALLE Project Details A K-dimensional tree is a data structure widely used for partitioning and organizing points in a k-dimensional space, they’re involved in many different applications such as searches involving a multidimensional search key (e.g. range searches and nearest neighbor searches). The task of the assignement was to write a program which takes as input a 2d dataset and compute over it the associated kd-tree....

September 18, 2023 · 3 min · Alessandro Serra