CS224u:自然语言理解
斯坦福大学课程的代码。
2023年春季
核心组件
setup.ipynb
关于如何设置以使用此代码的详细信息。
hw_*.ipynb
当前课程运行的一系列作业。
tutorial_*
笔记本
Jupyter笔记本、使用NumPy及其相关工具进行科学计算以及PyTorch的入门介绍。
torch_*.py
模块
一个通用优化类(torch_model_base.py
)以及GloVe、自动编码器、浅层神经分类器、RNN分类器、树结构网络和基于语境的自然语言生成的子类。
tutorial_pytorch_models.ipynb
展示了如何使用这些模块作为创建原创系统的通用框架。
evaluation_*.ipynb
和 projects.md
涵盖关键实验方法和实际考虑因素的笔记本,以及关于在该领域撰写和展示工作的提示。
iit*
和 feature_attribution.ipynb
我们可解释性和模型分析单元的一部分。
np_*.py
模块
现在被视为课程的背景材料。
torch_*.py
模型的参考实现,旨在更多地揭示优化过程的工作原理。
vsm_*
现在被视为课程的背景材料。
关于意义的向量空间模型的单元,涵盖传统方法如PMI和LSA以及较新的方法如自动编码器和GloVe。vsm.py
提供了许多核心功能,而torch_glove.py
和torch_autoencoder.py
是我们涵盖的学习模型。vsm_03_contextualreps.ipynb
探索了从上下文模型中派生静态表示的方法。
sst_*
现在被视为课程的背景材料。
使用英语斯坦福情感树库进行情感分析的单元。核心代码是sst.py
,其中包括一个灵活的实验框架。所有PyTorch分类器都得到了使用:torch_shallow_neural_network.py
、torch_rnn_classifier.py
和torch_tree_nn.py
。
finetuning.ipynb
现在被视为课程的背景材料。
使用来自Hugging Face的预训练参数进行特征化和微调。
utils.py
整个代码中使用的各种核心函数。
test/
要运行这些测试,请使用
py.test -vv test/*
或者,仅运行test_shallow_neural_classifiers.py
中的测试,
py.test -vv test/test_shallow_neural_classifiers.py
如果上述命令不起作用,请尝试
python3 -m pytest -vv test/test_shallow_neural_classifiers.py
许可证
本仓库中的材料根据Apache 2.0许可证和知识共享署名-相同方式共享4.0国际许可证授权。