Install and Run Guide
This guide explains how to install dependencies and run the IMDB Transformer experiments in assignment_llm_1/assignment_text.
First, enter this path using cd:
cd assignment_llm_1/assignment_text
What is added in the code
- Model-size experiment support in
assignment_text/code/c1.py:small:d_model=64,num_heads=4,num_layers=1,d_ff=128medium:d_model=128,num_heads=8,num_layers=2,d_ff=256large:d_model=256,num_heads=8,num_layers=4,d_ff=512
- Automatic experiment report generation:
assignment_text/saved_model/transformer_imdb_experiment_report.md
- Model-size selection in analysis script:
python code/c1_analysis.py --model_size small|medium|large ...
- Some qualitative error-analysis instances are available in:
assignment_text/documentation/error_analysis.json
1) Go to the project folder
cd ./assignment_llm_1/assignment_text
2) Create and activate environment
Option A: Conda (recommended if you use Conda)
conda create -n transformer_hw python=3.10 -y
conda activate transformer_hw
python -m pip install --upgrade pip
3) Install dependencies
If there is a requirements.txt file in this folder, run:
pip install -r requirements.txt
4) Train all model sizes (small, medium, large)
Run training from the code directory:
python code/c1.py
This will:
- train
small,medium, andlargeTransformer models, - save checkpoints under
assignment_llm_1/assignment_text/saved_model/, - create a Markdown experiment report at:
assignment_llm_1/assignment_text/saved_model/transformer_imdb_experiment_report.md
5) Evaluate and analyze a selected model size
From the same code directory:
python code/c1_analysis.py --split test --model_size small --num_examples 5
python code/c1_analysis.py --split test --model_size medium --num_examples 5
python code/c1_analysis.py --split test --model_size large --num_examples 5
Arguments:
--split: dataset split to evaluate (testortrain)--model_size: one ofsmall,medium,large--num_examples: number of misclassified examples to print
6) (Optional) Use a custom checkpoint path directly
If you want to bypass --model_size, pass an explicit checkpoint:
python code/c1_analysis.py \
--split test \
--checkpoint ../saved_model/transformer_imdb_large.pt \
--num_examples 5
7) Expected output files
After running c1.py, these files should exist in assignment_llm_1/assignment_text/saved_model/:
transformer_imdb_small.pttransformer_imdb_medium.pttransformer_imdb_large.pttransformer_imdb.pt(summary/compatibility checkpoint)transformer_imdb_experiment_report.md(human-readable report)