cgpotts / cs224u
- четверг, 24 августа 2023 г. в 00:00:10
Code for Stanford CS224u
Code for the Stanford course.
Spring 2023
setup.ipynbDetails on how to get set up to work with this code.
hw_*.ipynbThe set of homeworks for the current run of the course.
tutorial_* notebooksIntroductions to Juypter notebooks, scientific computing with NumPy and friends, and PyTorch.
torch_*.py modulesA generic optimization class (torch_model_base.py) and subclasses for GloVe, Autoencoders, shallow neural classifiers, RNN classifiers, tree-structured networks, and grounded natural language generation.
tutorial_pytorch_models.ipynb shows how to use these modules as a general framework for creating original systems.
evaluation_*.ipynb and projects.mdNotebooks covering key experimental methods and practical considerations, and tips on writing up and presenting work in the field.
iit* and feature_attribution.ipynbPart of our unit on explainability and model analysis.
np_*.py modulesThis is now considered background material for the course.
Reference implementations for the torch_*.py models, designed to reveal more about how the optimization process works.
vsm_*This is now considered background material for the course.
A unit on vector space models of meaning, covering traditional methods like PMI and LSA as well as newer methods like Autoencoders and GloVe. vsm.py provides a lot of the core functionality, and torch_glove.py and torch_autoencoder.py are the learned models that we cover. vsm_03_contextualreps.ipynb explores methods for deriving static representations from contextual models.
sst_*This is now considered background material for the course.
A unit on sentiment analysis with the English Stanford Sentiment Treebank. The core code is sst.py, which includes a flexible experimental framework. All the PyTorch classifiers are put to use as well: torch_shallow_neural_network.py, torch_rnn_classifier.py, and torch_tree_nn.py.
finetuning.ipynbThis is now considered background material for the course.
Using pretrained parameters from Hugging Face for featurization and fine-tuning.
utils.pyMiscellaneous core functions used throughout the code.
test/To run these tests, use
py.test -vv test/*
or, for just the tests in test_shallow_neural_classifiers.py,
py.test -vv test/test_shallow_neural_classifiers.py
If the above commands don't work, try
python3 -m pytest -vv test/test_shallow_neural_classifiers.py
The materials in this repo are licensed under the Apache 2.0 license and a Creative Commons Attribution-ShareAlike 4.0 International license.