Skip to content

LeonardoEmili/neural-wsd

Repository files navigation

Neural WSD

PyTorch Lightning Config: hydra Code style: black

This repo contains our implementation of a simple Word-Sense-Disambiguation system that users can access according to the Software-as-a-service model. We leverage the PyTorch Lightning Template to avoid writing boilerplate code and promote code quality, and GitHub Actions to encourage best practices when deploying to production builds. All the experiments are logged using Weights & Biases. To have a quick overview of the status of this project visit the related project board.

Project documentation

The documentation related to this project is available in the Wiki.

Running the project

For the training procedure, simply run python -m src.train model.use_lexeme_mask=True, which will train the model with the default set of hyper-parameters. For the unit tests, run python -m unittest -v <TEST_SCRIPT> pointing to the test you are looking for.

Repository Structure

neural-wsd
| conf                      # contains Hydra config files
  | data
  | model
  | train
  root.yaml                 # hydra root config file
| data                      # datasets should go here
| experiments               # where the models are stored
| src
  | pl_data_modules.py      # base LightinigDataModule
  | pl_modules.py           # base LightningModule
  | train.py                # main script for training the network
| tests
  | unit                    # contains unit tests
| README.md
| pyproject.toml            # black configuration file
| requirements.txt
| setup.sh                  # environment setup script 

Authors (contributed equally)