Deep Metric Learning Techniques
Project Description
This project was my master’s project. It focused more on the research element than the engineering element. Later, the results from this project contributed to the publication “Creating an Advanced Combat System in an cRPG Game Based on Similarity of Symbols Drawn by the Player Using Neural Networks”. Below you can read the Abstract from the paper “Deep Metric Learning Techniques“.
Abstract: This paper aims to analyze the effect of different loss functions and the number of training epochs on the performance of a neural network model using deep learning metrics in an image classification task. The study was conducted on the MNIST dataset, and the evaluation of the model’s accuracy was performed using the k nearest neighbor algorithm. Several different loss functions were used in the study, including neighborhood component analysis loss, margin loss, proxy anchor loss, contrastive loss and triple loss. For each loss function, the model was trained at the number of epochs: 1, 5, 10, 20 and 50. The goal was to understand how the loss functions and the number of training epochs affect the quality of the classification results. Analysis of the results shows that the choice of an appropriate loss function has a significant impact on the achieved accuracy of the model. It turned out that there is no single universally best loss function for all cases, but their effectiveness depends on the specifics of the problem. Moreover, the effect of the number of training epochs on the results varies – longer training does not always translate into better results. Cases of model overlearning were observed, leading to lower accuracy with too much training. The conclusions of the study confirm the effectiveness of deep learning metrics in image classification tasks. Selecting appropriate loss functions and adjusting the number of training epochs are key to achieving optimal accuracy. These results have important implications for the design and optimization of neural network models in classification applications.
The following loss functions used in deep metrics learning have been studied in this project: