omega/model/mlp.ipynb

602 lines
153 KiB
Plaintext

{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 1. Import and data processing"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Import all necessary libraries"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"import torch\n",
"import torch.nn as nn\n",
"from torch.utils.data import DataLoader, TensorDataset, random_split"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Load the training data"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [],
"source": [
"data = np.load(\"./data.npy\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Define constants that describe the data and model"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [],
"source": [
"CONTEXT_SIZE = 10\n",
"ALPHABET = list(\"abcdefghijklmnopqrstuvwxyz\")\n",
"ALPHABET_SIZE = len(ALPHABET)\n",
"TRAINING_DATA_SIZE = 0.9\n",
"\n",
"# +1 is for unknown characters\n",
"VOCAB_SIZE = ALPHABET_SIZE + 1\n",
"\n",
"EMBEDDING_DIM = 16\n",
"\n",
"INPUT_SEQ_LEN = CONTEXT_SIZE\n",
"OUTPUT_SIZE = VOCAB_SIZE\n",
"\n",
"BATCH_SIZE = 2048 * 2 * 2\n",
"\n",
"EPOCHS = 50\n",
"LEARNING_RATE = 1e-3"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Process the data"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [],
"source": [
"# Input: embeddings of the previous 10 letters\n",
"# shape: (num_samples, CONTEXT_SIZE)\n",
"X = data[:, :CONTEXT_SIZE]\n",
"\n",
"# Target: current letter index\n",
"# shape: (num_samples,)\n",
"y = data[:, CONTEXT_SIZE]\n",
"\n",
"# Torch dataset (important: use long/int64 for indices)\n",
"X_tensor = torch.tensor(X, dtype=torch.long) # for nn.Embedding\n",
"y_tensor = torch.tensor(y, dtype=torch.long) # for classification target\n",
"\n",
"dataset = TensorDataset(X_tensor, y_tensor)\n",
"\n",
"train_len = int(TRAINING_DATA_SIZE * len(dataset))\n",
"train_set, test_set = random_split(dataset, [train_len, len(dataset) - train_len])\n",
"\n",
"train_loader = DataLoader(train_set, batch_size=BATCH_SIZE, shuffle=True)\n",
"test_loader = DataLoader(test_set, batch_size=BATCH_SIZE)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 2. Model"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [],
"source": [
"from dataclasses import dataclass\n",
"\n",
"@dataclass\n",
"class MlpHiddenLayer():\n",
" size: int\n",
" activation_function: nn.Module"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [],
"source": [
"class MLP(nn.Module):\n",
" def __init__(self, *,\n",
" embedding_count: int,\n",
" embedding_dimension_size: int,\n",
" input_shape_size: int,\n",
" output_shape: int,\n",
" hidden_layers: list[MlpHiddenLayer]\n",
" ):\n",
"\n",
" super().__init__()\n",
"\n",
" self.embedding_count = embedding_count\n",
" self.embedding_dimension_size = embedding_dimension_size\n",
" self.input_shape_size = input_shape_size\n",
" self.output_shape = output_shape\n",
" self.hidden_layers = hidden_layers\n",
"\n",
" layers = [\n",
" nn.Embedding(num_embeddings=embedding_count, embedding_dim=embedding_dimension_size),\n",
" nn.Flatten(),\n",
" ]\n",
"\n",
" input_dimensions = input_shape_size\n",
"\n",
" for layer in hidden_layers:\n",
" layers.append(nn.Linear(input_dimensions, layer.size))\n",
" layers.append(layer.activation_function())\n",
" input_dimensions = layer.size\n",
"\n",
" layers.append(nn.Linear(input_dimensions, output_shape))\n",
"\n",
" self.net = nn.Sequential(*layers)\n",
"\n",
" def forward(self, x):\n",
" return self.net(x)"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Using device: cuda\n"
]
}
],
"source": [
"device = torch.device(\"cuda\" if torch.cuda.is_available() else \"cpu\")\n",
"print(f\"Using device: {device}\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 3. Training"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Create fresh instance of the model"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Mass testing all hyperparams"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"ename": "KeyboardInterrupt",
"evalue": "",
"output_type": "error",
"traceback": [
"\u001b[31m---------------------------------------------------------------------------\u001b[39m",
"\u001b[31mKeyboardInterrupt\u001b[39m Traceback (most recent call last)",
"\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[14]\u001b[39m\u001b[32m, line 73\u001b[39m\n\u001b[32m 64\u001b[39m model = MLP(\n\u001b[32m 65\u001b[39m hidden_layers=hidden_layers,\n\u001b[32m 66\u001b[39m embedding_count=VOCAB_SIZE,\n\u001b[32m (...)\u001b[39m\u001b[32m 69\u001b[39m output_shape=OUTPUT_SIZE,\n\u001b[32m 70\u001b[39m ).to(device)\n\u001b[32m 72\u001b[39m optimizer = torch.optim.Adam(model.parameters(), lr=learning_rate)\n\u001b[32m---> \u001b[39m\u001b[32m73\u001b[39m \u001b[43mtrain_model\u001b[49m\u001b[43m(\u001b[49m\u001b[43mmodel\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43moptimizer\u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 74\u001b[39m top1, top3, top5 = test_model(model)\n\u001b[32m 76\u001b[39m results.append({\n\u001b[32m 77\u001b[39m \u001b[33m\"\u001b[39m\u001b[33mconfig_id\u001b[39m\u001b[33m\"\u001b[39m: config_id,\n\u001b[32m 78\u001b[39m \u001b[33m\"\u001b[39m\u001b[33mactivation\u001b[39m\u001b[33m\"\u001b[39m: act_fn.\u001b[34m__name__\u001b[39m,\n\u001b[32m (...)\u001b[39m\u001b[32m 83\u001b[39m \u001b[33m\"\u001b[39m\u001b[33mtop5_acc\u001b[39m\u001b[33m\"\u001b[39m: top5\n\u001b[32m 84\u001b[39m })\n",
"\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[14]\u001b[39m\u001b[32m, line 16\u001b[39m, in \u001b[36mtrain_model\u001b[39m\u001b[34m(model, optimizer)\u001b[39m\n\u001b[32m 14\u001b[39m model.train()\n\u001b[32m 15\u001b[39m total_loss = \u001b[32m0\u001b[39m\n\u001b[32m---> \u001b[39m\u001b[32m16\u001b[39m \u001b[43m\u001b[49m\u001b[38;5;28;43;01mfor\u001b[39;49;00m\u001b[43m \u001b[49m\u001b[43mbatch_X\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mbatch_y\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;129;43;01min\u001b[39;49;00m\u001b[43m \u001b[49m\u001b[43mtrain_loader\u001b[49m\u001b[43m:\u001b[49m\n\u001b[32m 17\u001b[39m \u001b[43m \u001b[49m\u001b[43mbatch_X\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mbatch_y\u001b[49m\u001b[43m \u001b[49m\u001b[43m=\u001b[49m\u001b[43m \u001b[49m\u001b[43mbatch_X\u001b[49m\u001b[43m.\u001b[49m\u001b[43mto\u001b[49m\u001b[43m(\u001b[49m\u001b[43mdevice\u001b[49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mbatch_y\u001b[49m\u001b[43m.\u001b[49m\u001b[43mto\u001b[49m\u001b[43m(\u001b[49m\u001b[43mdevice\u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 18\u001b[39m \u001b[43m \u001b[49m\u001b[43moptimizer\u001b[49m\u001b[43m.\u001b[49m\u001b[43mzero_grad\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n",
"\u001b[36mFile \u001b[39m\u001b[32m~/Code/Skola/4-rocnik/programove-vybaveni/omega/.venv/lib/python3.12/site-packages/torch/utils/data/dataloader.py:708\u001b[39m, in \u001b[36m_BaseDataLoaderIter.__next__\u001b[39m\u001b[34m(self)\u001b[39m\n\u001b[32m 705\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m._sampler_iter \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[32m 706\u001b[39m \u001b[38;5;66;03m# TODO(https://github.com/pytorch/pytorch/issues/76750)\u001b[39;00m\n\u001b[32m 707\u001b[39m \u001b[38;5;28mself\u001b[39m._reset() \u001b[38;5;66;03m# type: ignore[call-arg]\u001b[39;00m\n\u001b[32m--> \u001b[39m\u001b[32m708\u001b[39m data = \u001b[38;5;28;43mself\u001b[39;49m\u001b[43m.\u001b[49m\u001b[43m_next_data\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 709\u001b[39m \u001b[38;5;28mself\u001b[39m._num_yielded += \u001b[32m1\u001b[39m\n\u001b[32m 710\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m (\n\u001b[32m 711\u001b[39m \u001b[38;5;28mself\u001b[39m._dataset_kind == _DatasetKind.Iterable\n\u001b[32m 712\u001b[39m \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28mself\u001b[39m._IterableDataset_len_called \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m\n\u001b[32m 713\u001b[39m \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28mself\u001b[39m._num_yielded > \u001b[38;5;28mself\u001b[39m._IterableDataset_len_called\n\u001b[32m 714\u001b[39m ):\n",
"\u001b[36mFile \u001b[39m\u001b[32m~/Code/Skola/4-rocnik/programove-vybaveni/omega/.venv/lib/python3.12/site-packages/torch/utils/data/dataloader.py:764\u001b[39m, in \u001b[36m_SingleProcessDataLoaderIter._next_data\u001b[39m\u001b[34m(self)\u001b[39m\n\u001b[32m 762\u001b[39m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34m_next_data\u001b[39m(\u001b[38;5;28mself\u001b[39m):\n\u001b[32m 763\u001b[39m index = \u001b[38;5;28mself\u001b[39m._next_index() \u001b[38;5;66;03m# may raise StopIteration\u001b[39;00m\n\u001b[32m--> \u001b[39m\u001b[32m764\u001b[39m data = \u001b[38;5;28;43mself\u001b[39;49m\u001b[43m.\u001b[49m\u001b[43m_dataset_fetcher\u001b[49m\u001b[43m.\u001b[49m\u001b[43mfetch\u001b[49m\u001b[43m(\u001b[49m\u001b[43mindex\u001b[49m\u001b[43m)\u001b[49m \u001b[38;5;66;03m# may raise StopIteration\u001b[39;00m\n\u001b[32m 765\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m._pin_memory:\n\u001b[32m 766\u001b[39m data = _utils.pin_memory.pin_memory(data, \u001b[38;5;28mself\u001b[39m._pin_memory_device)\n",
"\u001b[36mFile \u001b[39m\u001b[32m~/Code/Skola/4-rocnik/programove-vybaveni/omega/.venv/lib/python3.12/site-packages/torch/utils/data/_utils/fetch.py:50\u001b[39m, in \u001b[36m_MapDatasetFetcher.fetch\u001b[39m\u001b[34m(self, possibly_batched_index)\u001b[39m\n\u001b[32m 48\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m.auto_collation:\n\u001b[32m 49\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mhasattr\u001b[39m(\u001b[38;5;28mself\u001b[39m.dataset, \u001b[33m\"\u001b[39m\u001b[33m__getitems__\u001b[39m\u001b[33m\"\u001b[39m) \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28mself\u001b[39m.dataset.__getitems__:\n\u001b[32m---> \u001b[39m\u001b[32m50\u001b[39m data = \u001b[38;5;28;43mself\u001b[39;49m\u001b[43m.\u001b[49m\u001b[43mdataset\u001b[49m\u001b[43m.\u001b[49m\u001b[43m__getitems__\u001b[49m\u001b[43m(\u001b[49m\u001b[43mpossibly_batched_index\u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 51\u001b[39m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[32m 52\u001b[39m data = [\u001b[38;5;28mself\u001b[39m.dataset[idx] \u001b[38;5;28;01mfor\u001b[39;00m idx \u001b[38;5;129;01min\u001b[39;00m possibly_batched_index]\n",
"\u001b[36mFile \u001b[39m\u001b[32m~/Code/Skola/4-rocnik/programove-vybaveni/omega/.venv/lib/python3.12/site-packages/torch/utils/data/dataset.py:420\u001b[39m, in \u001b[36mSubset.__getitems__\u001b[39m\u001b[34m(self, indices)\u001b[39m\n\u001b[32m 418\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m.dataset.__getitems__([\u001b[38;5;28mself\u001b[39m.indices[idx] \u001b[38;5;28;01mfor\u001b[39;00m idx \u001b[38;5;129;01min\u001b[39;00m indices]) \u001b[38;5;66;03m# type: ignore[attr-defined]\u001b[39;00m\n\u001b[32m 419\u001b[39m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[32m--> \u001b[39m\u001b[32m420\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m [\u001b[38;5;28;43mself\u001b[39;49m\u001b[43m.\u001b[49m\u001b[43mdataset\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[43m.\u001b[49m\u001b[43mindices\u001b[49m\u001b[43m[\u001b[49m\u001b[43midx\u001b[49m\u001b[43m]\u001b[49m\u001b[43m]\u001b[49m \u001b[38;5;28;01mfor\u001b[39;00m idx \u001b[38;5;129;01min\u001b[39;00m indices]\n",
"\u001b[36mFile \u001b[39m\u001b[32m~/Code/Skola/4-rocnik/programove-vybaveni/omega/.venv/lib/python3.12/site-packages/torch/utils/data/dataset.py:211\u001b[39m, in \u001b[36mTensorDataset.__getitem__\u001b[39m\u001b[34m(self, index)\u001b[39m\n\u001b[32m 210\u001b[39m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34m__getitem__\u001b[39m(\u001b[38;5;28mself\u001b[39m, index):\n\u001b[32m--> \u001b[39m\u001b[32m211\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mtuple\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mtensor\u001b[49m\u001b[43m[\u001b[49m\u001b[43mindex\u001b[49m\u001b[43m]\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;28;43;01mfor\u001b[39;49;00m\u001b[43m \u001b[49m\u001b[43mtensor\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;129;43;01min\u001b[39;49;00m\u001b[43m \u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[43m.\u001b[49m\u001b[43mtensors\u001b[49m\u001b[43m)\u001b[49m\n",
"\u001b[31mKeyboardInterrupt\u001b[39m: "
]
}
],
"source": [
"from itertools import product\n",
"\n",
"MHL = MlpHiddenLayer\n",
"\n",
"learning_rates = [1e-2, 5e-3, 1e-3, 5e-4, 1e-4]\n",
"layer_sizes = [32, 64, 128, 256]\n",
"depths = [1, 2, 3]\n",
"activation_functions = [nn.ReLU]\n",
"\n",
"all_models = []\n",
"\n",
"def train_model(model, optimizer):\n",
" for epoch in range(EPOCHS):\n",
" model.train()\n",
" total_loss = 0\n",
" for batch_X, batch_y in train_loader:\n",
" batch_X, batch_y = batch_X.to(device), batch_y.to(device)\n",
" optimizer.zero_grad()\n",
" output = model(batch_X)\n",
" loss = criterion(output, batch_y)\n",
" loss.backward()\n",
" optimizer.step()\n",
" total_loss += loss.item() / batch_X.size(0)\n",
"\n",
"def test_model(model):\n",
" model.eval()\n",
" correct_top1 = 0\n",
" correct_top3 = 0\n",
" correct_top5 = 0\n",
" total = 0\n",
"\n",
" with torch.no_grad():\n",
" for batch_X, batch_y in test_loader:\n",
" batch_X, batch_y = batch_X.to(device), batch_y.to(device)\n",
" outputs = model(batch_X)\n",
"\n",
" _, top_preds = outputs.topk(5, dim=1)\n",
"\n",
" for true, top5 in zip(batch_y, top_preds):\n",
" total += 1\n",
" if true == top5[0]:\n",
" correct_top1 += 1\n",
" if true in top5[:3]:\n",
" correct_top3 += 1\n",
" if true in top5:\n",
" correct_top5 += 1\n",
"\n",
" top1_acc = correct_top1 / total\n",
" top3_acc = correct_top3 / total\n",
" top5_acc = correct_top5 / total\n",
"\n",
" return top1_acc, top3_acc, top5_acc\n",
"\n",
"criterion = nn.CrossEntropyLoss()\n",
"\n",
"results = []\n",
"\n",
"config_id = 0\n",
"for act_fn in activation_functions:\n",
" for depth in depths:\n",
" for size_combo in product(layer_sizes, repeat=depth):\n",
" for learning_rate in learning_rates:\n",
" hidden_layers = [MlpHiddenLayer(size=s, activation_function=act_fn) for s in size_combo]\n",
" model = MLP(\n",
" hidden_layers=hidden_layers,\n",
" embedding_count=VOCAB_SIZE,\n",
" embedding_dimension_size=EMBEDDING_DIM,\n",
" input_shape_size=CONTEXT_SIZE * EMBEDDING_DIM,\n",
" output_shape=OUTPUT_SIZE,\n",
" ).to(device)\n",
"\n",
" optimizer = torch.optim.Adam(model.parameters(), lr=learning_rate)\n",
" train_model(model, optimizer)\n",
" top1, top3, top5 = test_model(model)\n",
"\n",
" results.append({\n",
" \"config_id\": config_id,\n",
" \"activation\": act_fn.__name__,\n",
" \"layer_sizes\": size_combo,\n",
" \"learning_rate\": learning_rate,\n",
" \"top1_acc\": top1,\n",
" \"top3_acc\": top3,\n",
" \"top5_acc\": top5\n",
" })\n",
"\n",
" print(f\"[#{config_id}] {act_fn.__name__} {size_combo} lr={learning_rate:.0e} → top1={top1:.2f}, top3={top3:.2f}, top5={top5:.2f}\")\n",
" config_id += 1\n",
"\n",
" del model\n",
" torch.cuda.empty_cache()\n",
"\n",
"\n",
"print(results)\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Model training"
]
},
{
"cell_type": "code",
"execution_count": 41,
"metadata": {},
"outputs": [],
"source": [
"MHL = MlpHiddenLayer\n",
"Relu = nn.ReLU\n",
"Gelu = nn.GELU\n",
"Silu = nn.SiLU\n",
"\n",
"sizes = [256, 128]\n",
"\n",
"\n",
"model = MLP(\n",
" hidden_layers=[MHL(size=size, activation_function=Relu) for size in sizes],\n",
" embedding_count=VOCAB_SIZE,\n",
" embedding_dimension_size=EMBEDDING_DIM,\n",
" input_shape_size=CONTEXT_SIZE * EMBEDDING_DIM,\n",
" output_shape=OUTPUT_SIZE,\n",
" ).to(device)\n",
"\n",
"criterion = nn.CrossEntropyLoss()\n",
"optimizer = torch.optim.Adam(model.parameters(), lr=LEARNING_RATE)\n"
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[Epoch #01] - Loss: 1.48195 | Accuracy: 51.54%\n",
"[Epoch #02] - Loss: 1.48260 | Accuracy: 51.51%\n",
"# Small loss difference detected (1/5)\n",
"[Epoch #03] - Loss: 1.48176 | Accuracy: 51.56%\n",
"# Small loss difference detected (2/5)\n",
"[Epoch #04] - Loss: 1.48150 | Accuracy: 51.54%\n",
"# Small loss difference detected (3/5)\n",
"[Epoch #05] - Loss: 1.48147 | Accuracy: 51.56%\n",
"# Small loss difference detected (4/5)\n",
"[Epoch #06] - Loss: 1.48097 | Accuracy: 51.60%\n",
"# Small loss difference detected (5/5)\n",
"# Loss has been too stagnant for 5 epochs.\n",
"## Ending now\n"
]
}
],
"source": [
"prev_loss = float(\"inf\")\n",
"small_change_count = 0\n",
"SMALL_CHANGE_COUNT_TRIGGER = 5\n",
"\n",
"TOO_SMALL_CHANGE = 1e-3\n",
"\n",
"for epoch in range(EPOCHS):\n",
" if small_change_count >= SMALL_CHANGE_COUNT_TRIGGER:\n",
" print(f\"# Loss has been too stagnant for {SMALL_CHANGE_COUNT_TRIGGER} epochs.\\n## Ending now\")\n",
" break\n",
"\n",
" model.train()\n",
" total_loss = 0\n",
" correct = 0\n",
" total = 0\n",
"\n",
" for batch_X, batch_y in train_loader:\n",
" batch_X, batch_y = batch_X.to(device), batch_y.to(device)\n",
"\n",
" optimizer.zero_grad()\n",
" output = model(batch_X)\n",
" loss = criterion(output, batch_y)\n",
" loss.backward()\n",
" optimizer.step()\n",
"\n",
" total_loss += loss.item() * batch_X.size(0) # Multiply by batch size to sum loss\n",
" preds = torch.argmax(output, dim=1)\n",
" correct += (preds == batch_y).sum().item()\n",
" total += batch_X.size(0)\n",
"\n",
" avg_loss = total_loss / total\n",
" accuracy = correct / total * 100\n",
" print(f\"[Epoch #{(epoch+1):02}] - Loss: {avg_loss:.5f} | Accuracy: {accuracy:.2f}%\")\n",
"\n",
" if prev_loss - avg_loss < TOO_SMALL_CHANGE:\n",
" small_change_count += 1\n",
" print(f\"# Small loss difference detected ({small_change_count}/{SMALL_CHANGE_COUNT_TRIGGER})\")\n",
" else:\n",
" if small_change_count > 0:\n",
" print(\"# Loss difference increased again. Resetting counter\")\n",
" small_change_count = 0\n",
"\n",
" prev_loss = avg_loss\n"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Top 1 prediction accuracy: 49.92%\n",
"Top 3 prediction accuracy: 73.00%\n",
"Top 5 prediction accuracy: 82.72%\n"
]
}
],
"source": [
"model.eval()\n",
"correct_top1 = 0\n",
"correct_top3 = 0\n",
"correct_top5 = 0\n",
"total = 0\n",
"\n",
"with torch.no_grad():\n",
" for batch_X, batch_y in test_loader:\n",
" batch_X, batch_y = batch_X.to(device), batch_y.to(device)\n",
" outputs = model(batch_X)\n",
"\n",
" _, top_preds = outputs.topk(5, dim=1)\n",
"\n",
" for true, top5 in zip(batch_y, top_preds):\n",
" total += 1\n",
" if true == top5[0]:\n",
" correct_top1 += 1\n",
" if true in top5[:3]:\n",
" correct_top3 += 1\n",
" if true in top5:\n",
" correct_top5 += 1\n",
"\n",
"top1_acc = correct_top1 / total\n",
"top3_acc = correct_top3 / total\n",
"top5_acc = correct_top5 / total\n",
"\n",
"print(f\"Top 1 prediction accuracy: {(top1_acc * 100):.2f}%\")\n",
"print(f\"Top 3 prediction accuracy: {(top3_acc * 100):.2f}%\")\n",
"print(f\"Top 5 prediction accuracy: {(top5_acc * 100):.2f}%\")"
]
},
{
"cell_type": "code",
"execution_count": 62,
"metadata": {},
"outputs": [],
"source": [
"embeddings = model.net[0].weight.detach().cpu().numpy()"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAj0AAAJOCAYAAABcJ7ZuAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjEsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvc2/+5QAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzsnXd8JHX9/1+zNb3XS71Lcsn1yt0lB0c7qoIICIfSBdEvyg8EVEClg4gFFQVRelcOFBFPOhxFDu7Se6+Xupuym+3z+f0RPsPsZvvOZCeXz/PxuAdks/nse2dm5/Pad+UIIQQMBoPBYDAYRziqaBvAYDAYDAaDsRAw0cNgMBgMBmNJwEQPg8FgMBiMJQETPQwGg8FgMJYETPQwGAwGg8FYEjDRw2AwGAwGY0nARA+DwWAwGIwlARM9DAaDwWAwlgRM9DAYDAaDwVgSMNHDYIgoLi7GpZdeuuCv+8QTT4DjOPT09Cz4a4fC/fffjxUrVkCtVmPjxo2SrPnee++B4zi89NJLkqzHkA6O4/D9739f9teh18B7770X8LnHHXccjjvuOOHnnp4ecByHJ554Qjb7GEcOTPQolMbGRnzjG9/AihUrEBcXh4yMDOzatQv/+te/5j33uOOOA8dx4DgOKpUKSUlJKC8vx0UXXYQ333wz6Ne89NJLhXU4jkNSUhI2bNiAX//617DZbPOeX1NTgwsvvBAFBQXQ6/VIS0vD7t278fjjj8Plcs17/uTkJGJiYsBxHJqbm4O2iwoC+i8mJgYrV67E97//fYyMjAS9jhK455578I9//CPaZoTFG2+8gR/96EfYuXMnHn/8cdxzzz0B/+a9997D2WefjZycHOh0OmRlZeGMM87Ayy+/vAAWy8/HH3+M2267DZOTkwv2mrfddpvb58Hz3/Dw8ILZwmAsNjTRNoDhnd7eXszMzOCSSy7BsmXLMDs7i7179+LMM8/En//8Z3znO99xe35+fj7uvfdeAIDZbEZHRwdefvllPPPMMzjvvPPwzDPPQKvVBnxdvV6Pv/71rwDmRMrevXtxww034LPPPsMLL7wgPO+vf/0rvvvd7yI7OxsXXXQRysrKMDMzg7fffhvf/va3cfjwYdx8881ua//9738Hx3HIycnBs88+i7vuuiukY3LHHXdg+fLlsFqt+PDDD/HQQw/h9ddfR0NDA+Li4kJayxetra1QqeT7LnDPPffg3HPPxVlnneX2+EUXXYQ9e/ZAr9fL9tqR8s4770ClUuHRRx+FTqcL+Pxbb70Vd9xxB8rKynDVVVehqKgIExMTeP3113HOOefg2WefxTe/+c0FsFw+Pv74Y9x+++249NJLkZKSsqCv/dBDDyEhIWHe4wttR7QpKiqCxWIJ6v7GYIAwFg1Op5Ns2LCBlJeXuz1+7LHHkjVr1nh9/v/93/8RAORHP/pRwPUvueQSEh8f7/aYy+UiW7duJQDI4OAgIYSQTz75hKjVanL00UeT6enpeet89tln5PHHH5/3+K5du8jZZ59NrrvuOrJ8+fKA9lAef/xxAoB89tlnbo//8Ic/JADIc8895/NvTSZT0K+zEMTHx5NLLrkk2maExWWXXTbv+vDF3//+dwKAnHvuucRut8/7/b59+8i//vUvQggh7777LgFA/v73v0tqrydyXAv3338/AUC6u7slXddsNvv83a233koAkLGxMUlf0xsAyNVXXy3769Br4N133w343GOPPZYce+yxstvEODJh4a1FhFqtRkFBQdCudLVajd///vdYvXo1HnzwQUxNTYX8miqVSoif03yT22+/HRzH4dlnn0ViYuK8v9m6deu8vJi+vj7s378fe/bswZ49e9Dd3Y2PP/44ZHvEnHDCCQCA7u5uAHPhuYSEBHR2duL0009HYmIivvWtbwGY835df/31QiiuvLwcv/rVr0AIcVvTW07P5OQkrr32WuFvS0tLcd9994Hnebfn8TyP3/3ud1i3bh1iYmKQmZmJU089FZ9//jmAufwIs9mMJ598UghF0NfyldPzpz/9CWvWrIFer8eyZctw9dVXzzv/xx13HNauXYumpiYcf/zxiIuLQ15eHn75y18GdRydTifuvPNOlJSUQK/Xo7i4GDfffLNbSJPjODz++OMwm82C7f5yKH72s58hLS0Njz32mNdv4Keccgq++tWvzjt+d999N/Lz8xETE4MTTzwRHR0dbs/Zv38/vvGNb6CwsBB6vR4FBQW47rrrYLFY3J7n71oIdg0AaGlpwXnnnYfMzEzExsaivLwct9xyC4C5MNONN94IAFi+fLlwXMTn8JlnnsGWLVsQGxuLtLQ07NmzB/39/W6vQc/fwYMHsWvXLsTFxc3zkoYDzZP529/+httvvx15eXlITEzEueeei6mpKdhsNlx77bXIyspCQkICLrvsMq9hbAB49tlnUV5ejpiYGGzZsgUffPDBvOcMDg7i8ssvR3Z2NvR6PdasWYPHHnts3vMGBgZw1llnIT4+HllZWbjuuut8vu4jjzyCkpISxMbGYtu2bdi/f/+853jL6aHnf3BwEGeddRYSEhKQmZmJG264YV7ofWJiAhdddBGSkpKQkpKCSy65BLW1tfPWHB4exmWXXYb8/Hzo9Xrk5ubia1/7muLz8BjusPCWwjGbzbBYLJiamsKrr76K//znPzj//POD/nu1Wo0LLrgAP/vZz/Dhhx/iK1/5Ssg2dHZ2AgDS09MxOzuLt99+G7t27UJhYWHQazz//POIj4/HV7/6VcTGxqKkpATPPvssqqqqQrbHm10Up9OJU045BUcffTR+9atfIS4uDoQQnHnmmXj33Xfx7W9/Gxs3bsR///tf3HjjjRgcHMRvf/tbn68xOzuLY489FoODg7jqqqtQWFiIjz/+GDfddBMOHz6MBx54QHjut7/9bTzxxBM47bTTcMUVV8DpdGL//v343//+h61bt+Lpp5/GFVdcgW3btgnhyZKSEp+vfdttt+H222/H7t278b3vfQ+tra146KGH8Nlnn+Gjjz5yExNGoxGnnnoqzj77bJx33nl46aWX8OMf/xjr1q3Daaed5vc4XnHFFXjyySdx7rnn4vrrr8enn36Ke++9F83NzXjllVcAAE8//TQeeeQRHDhwQAh/+jp37e3taGlpweWXX+5VFPviF7/4BVQqFW644QZMTU3hl7/8Jb71rW/h008/FZ7z97//HbOzs/je976H9PR0HDhwAH/4wx8wMDCAv//9727rebsWQlmjrq4OxxxzDLRaLb7zne+guLgYnZ2d+Ne//oW7774bZ599Ntra2vD888/jt7/9LTIyMgAAmZmZAIC7774bP/vZz3DeeefhiiuuwNjYGP7whz9g165dqK6udgtDTUxM4LTTTsOePXtw4YUXIjs7O+DxMhgM8x7TaDTzwlv33nsvYmNj8ZOf/AQdHR34wx/+AK1WC5VKBaPRiNtuuw3/+9//8MQTT2D58uX4+c9/7vb377//Pl588UVcc8010Ov1+NOf/oRTTz0VBw4cwNq1awEAIyMj2LFjh5D4nJmZif/85z/49re/jenpaVx77bUAAIvFghNPPBF9fX245pprsGzZMjz99NN45513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E+bpUShXXXUVpqensWvXLuTl5WF4eBjPPvssWlpa8Otf/3ret+epqSnh28bs7KzQkbmzsxN79uzBnXfeKZltVVVV+OMf/4j/+7//Q0VFhVtH5vfeew+vvvoq7rrrLthsNuzduxcnnXQSYmJivK515pln4ne/+x1GR0eRlZUlmY1izjjjDBx//PG45ZZb0NPTgw0bNuCNN97AP//5T1x77bV+y8ZvvPFGvPrqq/jqV7+KSy+9FFu2bIHZbEZ9fT1eeukl9PT0ICMjA8cffzwuuugi/P73v0d7eztOPfVU8DyP/fv34/jjjxfmF23ZsgVvvfUWfvOb32DZsmVYvnw5tm/fPu91MzMzcdNNN+H222/HqaeeijPPPBOtra3405/+hKOOOkoyz9iGDRtwySWX4JFHHsHk5CSOPfZYHDhwAE8++STOOussHH/88WGte/7556O+vh533303qqurccEFFwgdmfft24e3334bzz33XEhrVlRUoKSkBDfccAMGBweRlJSEvXv3hpRYGsoav//973H00Udj8+bN+M53voPly5ejp6cH//73v1FTUwMAQoLvLbfcgj179kCr1eKMM85ASUkJ7rrrLtx0003o6enBWWedhcTERHR3d+OVV17Bd77zHdxwww0hvX9PXnrpJa9etJNOOimokvdgWbt2LU455RS3knUAbgL/F7/4Bd59911s374dV155JVavXg2DwYBDhw7hrbfeEsrrr7zySjz44IO4+OKLcfDgQeTm5uLpp5+el1Oj1Wpx11134aqrrsIJJ5yA888/H93d3Xj88ceDzukJhrPOOgvbtm3D9ddfj46ODlRUVODVV18V7KXeqLa2Npx44ok477zzsHr1amg0GrzyyisYGRnBnj17JLOHsQAsXKEYIxSef/55snv3bpKdnU00Gg1JTU0lu3fvJv/85z/nPZeWvNJ/CQkJpKysjFx44YXkjTfeCPo1gy1Jphw8eJB885vfJMuWLSNarZakpqaSE088kTz55JPE5XIJ5aCPPvqozzXee++9gOX0vjoyh2L/zMwMue666wRby8rKyP333+9WfkzI/JJ1+rc33XQTKS0tJTqdjmRkZJCqqiryq1/9yq0U2Ol0kvvvv59UVFQQnU5HMjMzyWmnnUYOHjwoPKelpYXs2rWLxMbGEgDCa3mWrFMefPBBUlFRQbRaLcnOzibf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",
"text/plain": [
"<Figure size 800x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"def pca_torch(X: torch.Tensor, n_components=3):\n",
" # Center the data\n",
" X = X - X.mean(dim=0)\n",
" # Compute SVD\n",
" U, S, V = torch.pca_lowrank(X, q=n_components)\n",
" return torch.matmul(X, V[:, :n_components])\n",
"\n",
"# Extract and reduce embeddings\n",
"embeddings = model.net[0].weight.detach().cpu()\n",
"reduced = pca_torch(embeddings, n_components=3)\n",
"\n",
"# Plot using matplotlib 3D\n",
"import matplotlib.pyplot as plt\n",
"from mpl_toolkits.mplot3d import Axes3D\n",
"\n",
"fig = plt.figure(figsize=(8, 6))\n",
"ax = fig.add_subplot(111, projection='3d')\n",
"\n",
"for i, label in enumerate(ALPHABET + ['<UNK>']):\n",
" x, y, z = reduced[i]\n",
" ax.scatter(x.item(), y.item(), z.item(), s=50)\n",
" ax.text(x.item(), y.item(), z.item(), label, fontsize=9)\n",
"\n",
"ax.set_title(\"3D PCA Projection of Character Embeddings\")\n",
"ax.set_xlabel(\"PC 1\")\n",
"ax.set_ylabel(\"PC 2\")\n",
"ax.set_zlabel(\"PC 3\")\n",
"plt.tight_layout()\n",
"plt.show()\n"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Export successful -> 'model.onnx'\n"
]
}
],
"source": [
"import torch.onnx\n",
"\n",
"FILENAME = \"model.onnx\"\n",
"model.eval()\n",
"\n",
"dummy_input = torch.randint(0, VOCAB_SIZE, (1, CONTEXT_SIZE), dtype=torch.long).to(device)\n",
"\n",
"torch.onnx.export(\n",
" model,\n",
" dummy_input,\n",
" FILENAME,\n",
" input_names=[\"input\"],\n",
" output_names=[\"output\"],\n",
" dynamic_axes={\n",
" \"input\": {0: \"batch_size\"},\n",
" \"output\": {0: \"batch_size\"},\n",
" },\n",
" opset_version=13\n",
")\n",
"\n",
"print(f\"Export successful -> '{FILENAME}'\")"
]
}
],
"metadata": {
"kernelspec": {
"display_name": ".venv",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}