This is a Python implementation of the paper "Correlation Networks for Extreme Multi-label Text Classification" by Guangxu Xun, Kishlay Jha, Jianhui Sun, Aidong Zhang.
This project develops the Correlation Networks (CorNet) architecture for the extreme multi-label text classification (XMTC) task, where the objective is to tag an input text sequence with the most relevant subset of labels from an extremely large label set. XMTC can be found in many real-world applications, such as document tagging and product annotation.
Recently, deep learning models have achieved outstanding performances in XMTC tasks. However, these deep XMTC models ignore the useful correlation information among different labels. CorNet addresses this limitation by adding an extra CorNet module at the prediction layer of a deep model, which is able to learn label correlations, enhance raw label predictions with correlation knowledge and output augmented label predictions.
The goal of this project is to replicate the results obtained from a specific model among those shown in the paper mentioned above, specifically the CorNetAttentionXML, which represents an implementation of the Deep Model AttentionXML with the addition of the CorNet module in the hope of improving the performance.
The project was implemented with a google colab given the need to use a good quality GPU.
Furthermore, it will not be necessary to go and download any of the libraries used in the code, since they are managed by the colab itself.
Within the project, two different datasets were used which differ on dimensionality:
- One medium-scale dataset: AmazonCat-13k
- One small-scale dataset: EUR-Lex
This implementation is based on the work by XunGuangxu and the codes for the baseline model is adapted from the following repository available here.
- Lorenzo Gianassi
Machine Learning Project © Course held by Professor Paolo Frasconi - Computer Engineering Master Degree @University of Florence