{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Encoder\n", "\n", "Each encoder layer contains:\n", "\n", "1. Self-Attention:\n", " * Captures relationships within the sequence.\n", "2. Feedforward Network (FFN):\n", " * Two linear layers with a ReLU/GELU activation in between.\n", "3. Add & Normalize:\n", " * Residual connection and layer normalization.\n", "\n", "\n", "
\n", " \n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Self-Attention\n", "\n", "### Self-Attention Mechanism\n", "\n", "Self-attention enables each token in the input sequence to attend to every other token in the sequence.\n", "\n", "#### Step 1: Compute Three Vectors for Each Token\n", "- **Query (𝑄)**: What the token wants to know.\n", "- **Key (𝐾)**: How relevant a token is for answering.\n", "- **Value (𝑉)**: The content of the token.\n", "\n", "#### Step 2: Calculate Attention Scores\n", "The attention score is computed as follows:\n", "\n", "$$\n", "\\text{Attention}(Q, K, V) = \\text{softmax}\\left(\\frac{QK^T}{\\sqrt{d_k}}\\right) V\n", "$$\n", "\n", "Where:\n", "\n", "- $softmax$ ensures the scores are normalized.\n", "- $d_k$ is the scaling factor to stabilize gradients.\n" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [], "source": [ "import os\n", "import sys\n", "# Add the parent directory of `TransformerNNX` to the Python path\n", "sys.path.insert(0, os.path.abspath(os.path.join(os.getcwd(), \"../../..\")))" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [], "source": [ "import jax\n", "import jax.numpy as jnp\n", "from typing import Optional, Tuple, List\n", "import matplotlib.pyplot as plt\n", "from flax import nnx\n", "from model import utils" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [], "source": [ "def scaled_dot_product(\n", " q: jnp.ndarray, \n", " k: jnp.ndarray, \n", " v: jnp.ndarray, \n", " mask: Optional[jnp.ndarray] = None,\n", ") -> Tuple[jnp.ndarray, jnp.ndarray]:\n", " \"\"\"\n", " Compute scaled dot-product attention.\n", "\n", " Args:\n", " q: Query tensor of shape (..., seq_len, d_k).\n", " k: Key tensor of shape (..., seq_len, d_k).\n", " v: Value tensor of shape (..., seq_len, d_k).\n", " mask: Optional mask tensor of shape (..., seq_len, seq_len).\n", " \n", " Returns:\n", " values: Tensor of shape (..., seq_len, d_k) containing the attention-weighted values.\n", " attention: Tensor of shape (..., seq_len, seq_len) containing attention scores.\n", " \"\"\"\n", " d_k = q.shape[-1] # Dimensionality of key vectors\n", " attn_logits = jnp.matmul(q, jnp.swapaxes(k, -2, -1)) # Compute attention logits\n", " attn_logits = attn_logits / jnp.sqrt(d_k) # Scale by sqrt(d_k)\n", "\n", " if mask is not None:\n", " attn_logits = jnp.where(mask == 0, -1e9, attn_logits) # Apply mask with large negative value\n", "\n", " attention = jax.nn.softmax(attn_logits, axis=-1) # Softmax over last axis\n", " values = jnp.matmul(attention, v) # Compute weighted values\n", " return values, attention\n", "\n" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Output values shape: (1, 5, 4)\n", "Attention shape: (1, 5, 5)\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAl0AAAIjCAYAAAA5qq6aAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAT2hJREFUeJzt3XucTfX+x/H3nmEuzAUxMy7DKCdMchuXhuQ2mlNSkhJOhkqFKZpTB7mMknTVKMKRS52IFOocRc5kiOQ+RSUqzCTjksuYcRn2Xr8/HPvXbob2nvZe297zej4e63Gs7/ru7/ezd6f69Fnf9V0WwzAMAQAAwKMCvB0AAABAWUDSBQAAYAKSLgAAABOQdAEAAJiApAsAAMAEJF0AAAAmIOkCAAAwAUkXAACACUi6AAAATEDSBeCyLBaLxo0b5+0wrhj9+/dXXFyct8MA4INIugAPeuONN2SxWNS6desSr3/77bcaN26c9u7dW+Jn586d69kA/+fjjz++4hKrcePGyWKxKCAgQLm5ucWu5+fnKzQ0VBaLRampqS6Pf+rUKY0bN05ZWVluiBYA/hhJF+BB8+bNU1xcnDZu3Kgffvih2PVvv/1WTz/99BWRdD399NMlXjt9+rRGjx5tShwlCQ4O1rvvvlusffHixX9q3FOnTunpp592OemaOXOmvv/++z81N4CyiaQL8JA9e/boiy++0KRJk1StWjXNmzfP2yGVSkhIiMqVK+e1+W+99dYSk6758+era9eupsVRWFgoSSpfvryCg4NNmxeA/yDpAjxk3rx5qly5srp27aqePXsWS7rmzp2ru+++W5LUsWNHWSwWWSwWZWVlKS4uTt98841Wr15tb+/QoYP9s8ePH9ewYcMUGxur4OBg1atXTy+88IJsNpu9z969e2WxWPTyyy/rn//8p6655hoFBwerZcuW2rRpk71f//79NXXqVEmyz2WxWOzXS1rTtW3bNt1yyy2KiIhQWFiYOnfurC+//LLY97NYLFq3bp3S0tJUrVo1VaxYUXfeeacOHz7s9O/Yp08fZWdna+fOnfa2vLw8ffbZZ+rTp0+x/kVFRRo7dqwSEhIUGRmpihUrql27dlq1apXDb1OtWjVJ0tNPP23/zhe/Z//+/RUWFqYff/xRt956q8LDw9W3b1/7td+u6UpPT1dAQIAyMzMd4njooYcUFBSkr776yunvCsC/ee8/XwE/N2/ePPXo0UNBQUHq3bu3pk2bpk2bNqlly5aSpJtuukmPPfaYXnvtNT311FNq2LChJKlhw4bKyMjQo48+qrCwMI0aNUqSFB0dLenCbbH27dtr//79evjhh1W7dm198cUXGjlypA4cOKCMjAyHOObPn6+TJ0/q4YcflsVi0YsvvqgePXrop59+Uvny5fXwww/rl19+0cqVK/Wvf/3rD7/XN998o3bt2ikiIkL/+Mc/VL58ec2YMUMdOnTQ6tWri61fe/TRR1W5cmWlp6dr7969ysjIUGpqqhYuXOjU73jTTTepVq1amj9/vp555hlJ0sKFCxUWFlZipSs/P19vvvmmevfurYEDB+rkyZOaNWuWkpOTtXHjRjVt2lTVqlXTtGnTNGjQIN15553q0aOHJKlx48b2cc6fP6/k5GTdeOONevnll1WhQoUS4xs9erT+/e9/64EHHtD27dsVHh6uFStWaObMmRo/fryaNGni1PcEUAYYANxu8+bNhiRj5cqVhmEYhs1mM2rVqmUMHTrUod+iRYsMScaqVauKjXHdddcZ7du3L9Y+fvx4o2LFisauXbsc2keMGGEEBgYaOTk5hmEYxp49ewxJxlVXXWUcPXrU3u/DDz80JBn//ve/7W1DhgwxLvWPA0lGenq6/bx79+5GUFCQ8eOPP9rbfvnlFyM8PNy46aab7G1z5swxJBlJSUmGzWaztz/++ONGYGCgcfz48RLnuyg9Pd2QZBw+fNh44oknjHr16tmvtWzZ0hgwYIA9viFDhtivnT9/3jh79qzDWMeOHTOio6ON+++/3952+PDhYt/topSUFEOSMWLEiBKv1alTx6Ft+/btRlBQkPHggw8ax44dM2rWrGm0aNHCOHfu3GW/I4CyhduLgAfMmzdP0dHR6tixo6QLt+h69eqlBQsWyGq1/qmxFy1apHbt2qly5co6cuSI/UhKSpLVatWaNWsc+vfq1UuVK1e2n7dr106S9NNPP7k8t9Vq1aeffqru3bvr6quvtrdXr15dffr00dq1a5Wfn+/wmYceesjhdmW7du1ktVq1b98+p+ft06ePfvjhB23atMn+vyXdWpSkwMBABQUFSZJsNpuOHj2q8+fPq0WLFtq6dasrX1eDBg1yql+jRo309NNP680331RycrKOHDmit956y6tr4QBcefgnAuBmVqtVCxYsUMeOHbVnzx57e+vWrfXKK68oMzNTN998c6nH3717t77++mv7mqTfO3TokMN57dq1Hc4vJmDHjh1zee7Dhw/r1KlTql+/frFrDRs2lM1mU25urq677jq3zt+sWTM1aNBA8+fPV6VKlRQTE6NOnTpdsv9bb72lV155RTt37tS5c+fs7XXr1nV6znLlyqlWrVpO93/yySe1YMECbdy4Uc8995zi4+Od/iyAsoGkC3Czzz77TAcOHNCCBQu0YMGCYtfnzZv3p5Ium82mLl266B//+EeJ16+99lqH88DAwBL7GYZR6hhc4a75+/Tpo2nTpik8PFy9evVSQEDJhfp33nlH/fv3V/fu3fXkk08qKipKgYGBmjhxon788Uen5wsODr7kHCX56aeftHv3bknS9u3bnf4cgLKDpAtws3nz5ikqKsr+ROBvLV68WEuWLNH06dPtG3teyqWuXXPNNSooKFBSUpLbYr5cHL9VrVo1VahQocR9qnbu3KmAgADFxsa6La7f6tOnj8aOHasDBw5cdsH/+++/r6uvvlqLFy92+F7p6ekO/Zz9zs6w2Wzq37+/IiIiNGzYMD333HPq2bOnfYE+AEgkXYBbnT59WosXL9bdd9+tnj17Frteo0YNvfvuu/roo4/Uq1cvVaxYUdKFLSB+r2LFiiW233PPPRo3bpxWrFih5ORkh2vHjx9XWFiYy2uJfhtHpUqVLtkvMDBQN998sz788EPt3bvXvnXCwYMHNX/+fN14442KiIhwaW5nXXPNNcrIyNDp06fVqlWry8YoXaikXUysNmzYoPXr1zvc6rz4NGJJv7GrJk2apC+++EIfffSRunbtqqysLA0aNEg33XSTqlat+qfHB+AfSLoAN/roo4908uRJ3X777SVev+GGG+wbpfbq1UtNmzZVYGCgXnjhBZ04cULBwcHq1KmToqKilJCQoGnTpunZZ59VvXr1FBUVpU6dOunJJ5/URx99pNtuu039+/dXQkKCCgsLtX37dr3//vvau3evy/+iT0hIkCQ99thjSk5OVmBgoO69994S+z777LNauXKlbrzxRg0ePFjlypXTjBkzdPbsWb344ouu/WAuGjp06B/2ue2227R48WLdeeed6tq1q/bs2aPp06crPj5eBQUF9n6hoaGKj4/XwoULde2116pKlSpq1KiRGjVq5FJM3333ncaMGaP+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8xSnbi/+NuEqLCx0qT8AAABKsWVEdHS07r//fq1du9YT8QAAAD9WlreMcDnpeuedd3T06FF16tRJ1157rZ5//nn98ssvnogNAADAb7icdHXv3l1Lly7V/v379cgjj2j+/PmqU6eObrvtNi1evFjnz5/3RJwAAMAPlOWnF0u9I321atWUlpamr7/+WpMmTdJ///tf9ezZUzVq1NDYsWN16tQpd8YJAADg00q9I/3Bgwf11ltvae7cudq3b5969uypBx54QD///LNeeOEFffnll/r000/dGSsAAPBx7EjvgsWLF2vOnDlasWKF4uPjNXjwYP3tb39TpUqV7H3atGmjhg0bujNOAADgBzxxO9BXbi+6nHQNGDBAvXv31rp169SyZcsS+9SoUUOjRo3608EBAAD4C5eSrvPnz2vixIm66667FB0dfcl+oaGhSk9P/9PBAQAA/2J44Pair1S6XFpIX65cOT3xxBM6c+aMp+IBAADwSy4/vdiqVStt27bNE7EAAAA/Z0gyDDcf3v5STnJ5TdfgwYP197//XT///LMSEhJUsWJFh+uNGzd2W3AAAAD+wuWk695775UkPfbYY/Y2i8UiwzBksVhktVrdFx0AAPArNllkKaMvvHY56dqzZ48n4gAAAPBrLiddderU8UQcAACgDCjL+3SV6jVA//rXv9S2bVvVqFFD+/btkyRlZGToww8/dGtwAADAv1zckd7dhy9wOemaNm2a0tLSdOutt+r48eP2NVyVKlVSRkaGu+MDAADwCy4nXa+//rpmzpypUaNGKTAw0N7eokULbd++3a3BAQAA/+L27SL+d/gCl5OuPXv2qFmzZsXag4ODVVhY6JagAAAA/I3LSVfdunWVnZ1drH358uW85BoAAFzWxYX07j58gctPL6alpWnIkCE6c+aMDMPQxo0b9e6772rixIl68803PREjAACAz3M56XrwwQcVGhqq0aNH69SpU+rTp49q1KihyZMn2zdOBQAAKElZ3jLC5aRLkvr27au+ffvq1KlTKigoUFRUlLvjAgAA8CulSrouqlChgipUqOCuWAAAgJ+zGRZZ3FyZ8pV9ulxOuurWrSuL5dJf7qeffvpTAQEAAP/liS0efGXLCJeTrmHDhjmcnzt3Ttu2bdPy5cv15JNPuisuAAAAv+Jy0jV06NAS26dOnarNmzf/6YAAAID/ulDp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2P8syeHYs2ePsWrVKkOScezYMfuY77//vv071qlTx3j55ZcdYq5Tp44xYcIEY8CAAUZYWJgRGxtrzJgx47Lfc9GiRUa1atUc2vbs2WNIMrZt22bk5OQY9evXNzp16mScPHnSqd90z549hsViMTZt2uQw7quvvmrUrl3bsFqthmEYxtmzZ43g4GDjv//972VjBOA7qHQBvxEWFqawsDAtXbpUZ8+evWS/u+++W4cOHdInn3yiLVu2qHnz5urcubOOHj0qSXrvvfc0btw4Pffcc9q8ebOqV6+uN954w+V4UlNTtX79ei1YsEBff/217r77bv31r3/V7t277X1OnTqll19+Wf/617+0Zs0a5eTk6IknnrBfnzZtmoYMGaKHHnpI27dv10cffaR69eo5/V2cERoaKkkqKirS/v37deutt6ply5b66quvNG3aNM2aNUvPPvusJOnAgQPq3bu37r//fn333XfKyspSjx49ZBhGsXEnT56sxMREDRw4UAcOHNCBAwcUGxtbrN+WLVt0zz336N5779X27ds1btw4jRkzxuE2pSS98soratGihbZt26bBgwdr0KBB+v777y/5vT7//HMlJCSUeO37779X27ZtFR8fr48//lhhYWH2a5f7TePi4pSUlKQ5c+Y4jDdnzhz1799fAQEX/rEcFBSkpk2b6vPPP79kfAB8jLezPuBK8/777xuVK1c2QkJCjDZt2hgjR440vvrqK/v1zz//3IiIiDDOnDnj8LlrrrnGXjlJTEw0Bg8e7HC9devWLlW69u3bZwQGBhr79+936NO5c2dj5MiRhmFcqHRJMn744Qf79alTpxrR0dH28xo1ahijRo0q8bs6811Kot9UugoLC43BgwcbgYGBxldffWU89dRTRv369Q2bzeYQU1hYmGG1Wo0tW7YYkoy9e/eWOPZvK12GUfLv9PtKV58+fYwuXbo49HnyySeN+Ph4+3mdOnWMv/3tb/Zzm81mREVFGdOmTbvk97zjjjuM+++/36HtYqUrKCjI6Nixo3H+/HmH6878pgsXLjQqV65s77NlyxbDYrEYe/bscfjMnXfeafTv3/+S8QHwLVS6gN+566679Msvv+ijjz7SX//6V2VlZal58+b2qslXX32lgoICXXXVVfbKWFhYmPbs2aMff/xRkvTdd9+pdevWDuMmJia6FMf27dtltVp17bXXOsyzevVq+zySVKFCBV1zzTX28+rVq+vQoUOSpEOHDumXX35R586dS5zDme9yKb1791ZYWJjCw8P1wQcfaNasWWrcuLG+++47JSYmOqy3atu2rQoKCvTzzz+rSZMm6ty5s66//nrdfffdmjlzpo4dO+bSb/N73333ndq2bevQ1rZtW+3evVtWq9Xe1rhxY/ufLRaLYmJi7L9VSU6fPq2QkJASr91+++36/PPPtXjxYod2Z37T7t27KzAwUEuWLJEkzZ07Vx07drQv1r8oNDRUp06d+uMfAIBPKOftAIArUUhIiLp06aIuXbpozJgxevDBB5Wenq7+/furoKBA1atXV1ZWVrHP/dEC8N8KCAgodkvt3Llz9j8XFBQoMDBQW7ZsUWBgoEO/397KKl++vMM1i8ViH/fibb9L+TPf5dVXX1VSUpIiIyNVrVq1y/b9rcDAQK1cuVJffPGFPv30U73++usaNWqUNmzYoLp16zo9TmmU9FvZbLZL9q9ateolE8JRo0apcePG6tOnjwzD0D333CPJud80KChI/fr105w5c9SjRw/Nnz9fkydPLtb/6NGjDgk1AN9G0gU4IT4+XkuXLpUkNW/eXHl5eSpXrlyxysRFDRs21IYNG9SvXz9725dffunQp1q1ajpw4ID93Gq1aseOHerYsaMkqVmzZrJarTp06JDatWtXqrjDw8MVFxenzMxM+7i/5cx3uZSYmBiHtWEXNWzYUB988IEMw7BXu9atW6fw8HD7k30Wi0Vt27ZV27ZtNXbsWNWpU0dLlixRWlpasfGCgoIcqlUladiwYbEtPdatW6drr722WMLqimbNmumdd9655PUxY8YoICBAffv2lWEY6tWrl9O/6YMPPqhGjRrpjTfe0Pnz59WjR49ifXbs2KGePXuWOn4AVxZuLwK/8euvv6pTp05655139PXXX2vPnj1atGiRXnzxRd1xxx2SpKSkJCUmJqp79+769NNPtXfvXn3xxRcaNWqUNm/eLEkaOnSoZs+erTlz5mjXrl1KT0/XN9984zBXp06dtGzZMi1btkw7d+7UoEGDHDb7vPbaa9W3b1/169dPixcv1p49e7Rx40ZNnDhRy5Ytc/o7jRs3Tq+88opee+017d69W1u3btXrr7/u9Hdx1eDBg5Wbm6tHH31UO3fu1Icffqj09HSlpaUpICBAGzZssD9gkJOTo8WLF+vw4cNq2LBhiePFxcVpw4YN2rt3r44cOVJiZervf/+7MjMzNX78eO3atUtvvfWWpkyZ4vBAQWkkJyfrm2++ueztz1GjRmn8+PHq27ev3n33Xad/04YNG+qGG27Q8OHD1bt372JVyb1792r//v1KSkr6U98BwBXEqyvKgCvMmTNnjBEjRhjNmzc3IiMjjQoVKhj169c3Ro8ebZw6dcreLz8/33j00UeNGjVqGOXLlzdiY2ONvn37Gjk5OfY+EyZMMKpWrWqEhYUZKSkpxj/+8Q+HhfRFRUXGoEGDjCpVqhhRUVHGxIkTi20ZUVRUZIwdO9aIi4szypcvb1SvXt248847ja+//towjP/fMuK3lixZYvz+b+3p06cb9evXt4/x6KOPuvRdfk+/2zLi9y63ZcS3335rJCcnG9WqVTOCg4ONa6+91nj99dftn/39Qvrvv//euOGGG4zQ0FCntowoX768Ubt2beOll15yiKlOnTrGq6++6tDWpEkTIz09/ZLfwzAMo1WrVvatMAzDccuI33rhhReMwMBAY968eU7/prNmzTIkGRs3biw273PPPWckJydfNjYAvsViGCU8pw3A7caNG6elS5c67GSOK9+yZcv05JNPaseOHfbtHNxl/PjxWrRokb7++muH9qKiIv3lL3/R/Pnziz0gAMB3saYLAC6ja9eu2r17t/bv31/iHmGlUVBQoL1792rKlCn2/ct+KycnR0899RQJF+BnSLoA4A/8/t2Pf1Zqaqreffddde/eXffff3+x6/Xq1SvxIQUAvo3biwAAACbg6UUAAAATkHQBAACYgKQLAADABCRdAAAAJiDpAgAAMAFJFwAAgAlIugAAAExA0gUAAGCC/wPoQwK08uNIcgAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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c+agXr16WLx4sV6nWwKVXKehdu3aGD58uK5jISIiqnIPKw26Hgip3fEhISHlPtOptNUeQ0JCcPz4cS0jezKykobNmzeje/fusLCwwObNm8s99qWXXtJJYERERGRcZCUN4eHhyMzMhIuLC8LDw8s8TqFQQKVS6So2IiIivdPnlMuaRlbSoFarS/0zERERmQ6tp1yW5u7du7pohoiIqMoJPW01kdZJw/Tp07F69WrpdZ8+feDk5ISnn34aJ06c0GlwREREZDy0ThoWLFgAT09PAA8Xkti5cye2bduG7t27Y/z48ToPkIiISJ/0+cCqmkbrKZeZmZlS0vDrr7+ib9++eOGFF9CgQQO0b99e5wESERHplT76E2po/4TWlYY6deogPT0dALBt2zbp0ZxCCM6cICIiqsG0rjS88sorGDBgAJ555hncunUL3bt3BwAcP34cPj4+Og+QiIhIr/TRncDuiYdmzZqFBg0aID09HV988QVsbW0BABkZGXj77bd1HiAREREZB62TBgsLC7z33nsl9r/77rs6CYiIiKgqGcMDq6qLSj174vz589izZw+ysrJKLPY0ceJEnQRGRERExkXrpGHRokUYNWoU6tatCzc3NygU/+u3USgUBkkawn/5L8ysrKr8uqboteOHDB2CyTn2TqGhQzAp9d/LMHQIJqUorxCnFhs2Bi4jLZ/WScOnn36KadOm4YMPPtBHPERERGSktE4a7ty5gz59+ugjFiIioqonFLqf7VBDKw1ar9PQp08fbN++XR+xEBERVbnigZC63moirSsNPj4++OSTT3Do0CG0aNECFhYWGu//97//1VlwREREZDy0Thq+++472NraYu/evdi7d6/GewqFgkkDERFVL1xGWjatk4a0tDR9xEFERERGTusxDcUKCwuRmpqKBw8e6DIeIiKiKsWnXMqnddJw7949DB06FLVr10azZs1w5coVAMA777yDzz//XOcBEhERkXHQOmmIiYnBiRMnkJCQAKtHFlQKDQ3F6tWrdRocERFRlRA63moorcc0bNy4EatXr8Zzzz2nsRpks2bNcPHiRZ0GR0RERMZD66Thxo0bcHFxKbE/Ly9PI4kgIiKqDriMtHxad0+0bdsWW7ZskV4XJwqLFy9GYGCg7iIjIiKqCrrumqjBXRRaVxo+++wzdO/eHX/99RcePHiAOXPm4K+//sLB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+fXz8/NRWFiol7YtLS1rVMIAVPPuCTOzh+M4HRwcqtVfkmL29vbVMm6g+sbOuKsW46561TX24n/Pq5qVlVWN+8GuT5w9QURERLIwaSAiIiJZqnXSoFQqERsbC6VSaehQtFJd4waqb+yMu2ox7qpXXWOvrnGbqmo9EJKIiIiqTrWuNBAREVHVYdJAREREsjBpICIiIlmYNBAREZEs1S5puH37NgYOHAh7e3s4Ojpi6NChyM3NLfeckJAQKBQKjW3kyJF6jXPevHlo0KABrKys0L59exw5cqTc43/++Wf4+fnBysoKLVq0wG+//abX+MqiTdzx8fEl7qshFknZt28fevXqBQ8PDygUCmzcuLHCcxISEtCmTRsolUr4+PggPj5e73GWRtvYExISStxzhUKht2VwSxMXF4dnn30WdnZ2cHFxQXh4OFJTUys8z9Df8crEbSzf8fnz58Pf319auCkwMBBbt24t9xxD329A+7iN5X5T2apd0jBw4ECcPn0aO3bswK+//op9+/ZhxIgRFZ43fPhwZGRkSNsXX3yhtxhXr16N6OhoxMbG4tixY2jZsiXCwsKQlZVV6vEHDx5E//79MXToUBw/fhzh4eEIDw/HqVOn9BajLuIGHq4+9+h9vXz5chVG/FBeXh5atmyJefPmyTo+LS0NPXv2xPPPP4/k5GSMHTsWw4YNw++//67nSEvSNvZiqampGvfdxcVFTxGWtHfvXkRFReHQoUPYsWMHioqK8MILLyAvL6/Mc4zhO16ZuAHj+I7Xq1cPn3/+OZKSknD06FF07twZvXv3xunTp0s93hjud2XiBozjflM5RDXy119/CQDizz//lPZt3bpVKBQKce3atTLP69SpkxgzZkwVRPhQu3btRFRUlPRapVIJDw8PERcXV+rxffv2FT179tTY1759e/HWW2/pNc7HaRv30qVLhYODQxVFJw8AsWHDhnKPef/990WzZs009r3++usiLCxMj5FVTE7se/bsEQDEnTt3qiQmObKysgQAsXfv3jKPMZbv+KPkxG2M3/FiderUEYsXLy71PWO838XKi9uY7zc9VK0qDYmJiXB0dETbtm2lfaGhoTAzM8Phw4fLPXfFihWoW7cumjdvjpiYGNy7d08vMRYWFiIpKQmhoaHSPjMzM4SGhiIxMbHUcxITEzWOB4CwsLAyj9eHysQNALm5ufDy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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "key = jax.random.PRNGKey(0)\n", "\n", "# Define dimensions\n", "seq_len = 5\n", "d_k = 4 # Dimensionality of the key/query/value vectors\n", "\n", "# Create random tensors for q, k, v\n", "q = jax.random.normal(key, (1, seq_len, d_k)) # Query tensor of shape (1, seq_len, d_k)\n", "k = jax.random.normal(key, (1, seq_len, d_k)) # Key tensor of shape (1, seq_len, d_k)\n", "v = jax.random.normal(key, (1, seq_len, d_k)) # Value tensor of shape (1, seq_len, d_k)\n", "\n", "# Optional mask encoding matrix\n", "mask = jnp.tril(jnp.ones((seq_len, seq_len)), k=0)\n", "\n", "# Test the function\n", "values, attention = scaled_dot_product(q, k, v, mask=mask)\n", "\n", "# Check the shape of the output\n", "print(f\"Output values shape: {values.shape}\")\n", "print(f\"Attention shape: {attention.shape}\")\n", "plt.figure(figsize=(8, 6))\n", "plt.imshow(attention[0], cmap=\"viridis\", interpolation=\"nearest\")\n", "plt.colorbar()\n", "plt.title(\"Attention Matrix\")\n", "plt.xlabel(\"Sequence Position (Key)\")\n", "plt.ylabel(\"Sequence Position (Query)\")\n", "plt.show()\n", "\n", "# Plot the values (weighted sum of value vectors)\n", "plt.figure(figsize=(8, 6))\n", "plt.imshow(values[0], cmap=\"viridis\", interpolation=\"nearest\")\n", "plt.colorbar()\n", "plt.title(\"Weighted Values (Result of Attention)\")\n", "plt.xlabel(\"Sequence Position\")\n", "plt.ylabel(\"Embedding Dimension\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Multi-Head Attention\n", "\n", "Instead of using a single attention mechanism, **Multi-Head Attention** splits the query, key, and value vectors into multiple \"heads\":\n", "\n", "1. Split $Q, K, V$ into multiple heads.\n", "2. Perform attention for each head independently.\n", "3. Concatenate the results and project back to the original model dimension.\n" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [], "source": [ "class MultiHeadAttention(nnx.Module):\n", " \"\"\"\n", " Implements a multi-head attention mechanism.\n", "\n", " Attributes:\n", " ----------\n", " qkv_projection : nnx.Linear\n", " Linear layer for projecting the input into query, key, and value tensors.\n", " out_projection : nnx.Linear\n", " Linear layer for projecting the output values back to the embedding dimension.\n", "\n", " Methods:\n", " -------\n", " __call__(x, num_heads, mask=None):\n", " Computes the multi-head attention output for the input tensor `x` with the given number of heads.\n", " \"\"\"\n", "\n", " def __init__(self, \n", " embed_dim: int, \n", " num_heads:int, \n", " *, rngs: nnx.Rngs) -> None:\n", " \"\"\"\n", " Initializes the MultiHeadAttention module.\n", "\n", " Parameters:\n", " ----------\n", " embed_dim : int\n", " The dimension of the input embeddings.\n", " num_heads : int\n", " The number of attention heads.\n", " rngs : nnx.Rngs\n", " Random number generators for initializing weights of the projection layers.\n", " \"\"\"\n", " self.num_heads = num_heads\n", " self.qkv_projection = nnx.Linear(embed_dim, 3 * embed_dim, rngs=rngs)\n", " self.out_projection = nnx.Linear(embed_dim, embed_dim, rngs=rngs)\n", " \n", "\n", " def __call__(self, \n", " x: jnp.ndarray, \n", " mask: Optional[jnp.ndarray] = None,\n", " ) -> Tuple[jnp.ndarray, jnp.ndarray]:\n", " \"\"\"\n", " Applies the multi-head attention mechanism.\n", "\n", " Parameters:\n", " ----------\n", " x : jnp.ndarray\n", " Input tensor of shape `(batch_size, seq_len, embed_dim)`.\n", " mask : Optional[jnp.ndarray], default=None\n", " Optional mask tensor of shape `(batch_size, seq_len, seq_len)` \n", " or `(batch_size, num_heads, seq_len, seq_len)` to apply attention masking.\n", "\n", " Returns:\n", " -------\n", " Tuple[jnp.ndarray, jnp.ndarray]\n", " - Output tensor of shape `(batch_size, seq_len, embed_dim)`.\n", " - Attention weights tensor of shape `(batch_size, num_heads, seq_len, seq_len)`.\n", " \"\"\"\n", " batch_size, seq_len, embed_dim = x.shape\n", " if mask is not None:\n", " mask = utils.expand_mask(mask) # Ensure mask is in the correct 4D format\n", " \n", " # Compute query, key, and value projections\n", " qkv = self.qkv_projection(x) # Shape: (batch_size, seq_len, 3 * embed_dim)\n", " qkv = qkv.reshape(batch_size, seq_len, self.num_heads, -1) # Split heads\n", " qkv = qkv.transpose(0, 2, 1, 3) # Shape: (batch_size, num_heads, seq_len, d_k)\n", " q, k, v = jnp.array_split(qkv, 3, axis=-1) # Split into query, key, value\n", " \n", " # Compute scaled dot-product attention\n", " values, attention = scaled_dot_product(q, k, v, mask) # Custom function\n", " \n", " # Reshape and project output\n", " values = values.transpose(0, 2, 1, 3).reshape(batch_size, seq_len, -1)\n", " out = self.out_projection(values)\n", " \n", " return out, attention\n" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "data": { "image/png": "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G6YVPRuY+1TR8XQDERERGcVLIImIiMgoFglERERkFIsEIiIiMopFAhERERnFIoGIiIiMYpFARERERrFIICIiIqNYJBAREZFRLBKIiIjIKBYJREREZBSLBCIiIjKKRQIREREZxSKBiIiIjGKRQEREREaxSKByM2zYMAQFBZk7jKfG1KlTodFocOPGDXOHQibEvDfEvK9YWCRYmOXLl0Oj0eD33383Or99+/YICwtTOSplvvjiC7Rr1w6VK1eGvb09goODMXz4cKSkpJR5nboDk+7HysoK/v7+6NGjB3799dcyrTMvLw9Tp07Fzp07yxzXk0hKSsKkSZMQEREBBwcHaDSaJ9pHlox5b1xFzPuEhAQMGDAANWrUgJOTE+rUqYPJkycjKyvLLPE862zMHQA9e44cOYLg4GD06tULHh4eSE5OxhdffIGffvoJx44dQ5UqVcq87kWLFsHFxQVarRaXLl3CF198gbZt2+LgwYNo3LixonXl5eVh2rRpAO7/E1LbgQMHMH/+fISGhqJevXo4evSo6jFQ+WHel86YMWNQpUoVvPTSS6hevTpOnDiBhQsXYtOmTfjjjz/g6OioekzPMhYJpLrPPvus2LQ+ffogPDwcK1euxN/+9rcyr7tfv37w9vY2WG9YWBjWrl2r+GBpbr169UJWVhZcXV3xz3/+k0WChWPel866deuKFSfNmjVDXFwcvv76a4waNco8gT2jeLrhGbFq1So0a9YMjo6O8PT0xIsvvohLly4ZLLNnzx70798f1atXh729PQICAjBp0iTcuXOn2Po2btyIsLAwODg4ICwsDBs2bHii+HTndMu7S9HPzw8AYGPzv3r43r17eO+999CsWTNUqlQJzs7OaNOmDXbs2KFfJiUlBT4+PgCAadOm6btzp06dql/m9OnTiI2NhY+PDxwdHVGnTh288847xWLIysrCsGHD4O7ujkqVKmH48OHIy8t7bOyenp5wdXUt61snMO8tMe+N9V5ER0cDABITE0v1/qn8sCfBQt26dcvowKCCgoJi02bOnIl3330XsbGxGDVqFK5fv44FCxagbdu2OHLkCNzd3QEAa9euRV5eHsaOHQsvLy8cPHgQCxYswOXLl7F27Vr9+rZu3YqYmBiEhoZi1qxZuHnzJoYPH45q1aopeg83b95EUVERLl68iOnTpwMAOnbsqGgdD8vIyAAA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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Create synthetic data\n", "batch_size = 2\n", "seq_len = 10\n", "embed_dim = 16\n", "num_heads = 4\n", "\n", "# Random inputs and mask\n", "key = jax.random.PRNGKey(42)\n", "x = jax.random.normal(key, (batch_size, seq_len, embed_dim))\n", "mask = jnp.tril(jnp.ones((seq_len, seq_len))) # Lower triangular mask\n", "\n", "# Initialize MultiHeadAttention\n", "rngs = nnx.Rngs(0)\n", "mha = MultiHeadAttention(embed_dim, num_heads, rngs=rngs)\n", "\n", "# Forward pass\n", "output, attention = mha(x, mask=mask)\n", "\n", "# Assert output shape\n", "assert output.shape == (batch_size, seq_len, embed_dim)\n", "assert attention.shape == (batch_size, num_heads, seq_len, seq_len)\n", "\n", "# Plot attention weights for each head\n", "fig, axes = plt.subplots(num_heads, batch_size, figsize=(4, 8))\n", "fig.suptitle(\"Attention Weights Across Heads and Batches\", fontsize=16)\n", "\n", "for i in range(num_heads):\n", " for j in range(batch_size):\n", " ax = axes[i, j] if num_heads > 1 else axes[j]\n", " ax.matshow(attention[j, i], cmap=\"viridis\")\n", " ax.set_title(f\"Head {i + 1}, Batch {j + 1}\")\n", " ax.set_xlabel(\"Key Positions\")\n", " ax.set_ylabel(\"Query Positions\")\n", " ax.set_xticks([])\n", " ax.set_yticks([])\n", "\n", "plt.tight_layout()\n", "plt.show()\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Encoder Block\n", "\n", "The **Encoder Block** is a foundational component of the Transformer architecture, designed to efficiently model sequence-to-sequence relationships. It integrates **multi-head attention** and **feedforward layers** with residual connections, layer normalization, and dropout to ensure stability and robustness during training.\n", "\n", "\n", "### Implementation\n", "The encoder block starts with a multi-head attention mechanism followed by a feedforward network. Residual connections wrap around both components, and layer normalization ensures smooth gradient flow.\n", "\n", "### Design Debate: Layer Norm Position\n", "One of the most contentious design choices in the encoder block is the placement of **Layer Normalization**. \n", "\n", "#### Traditional Position (Post-Residual):\n", "- In the original Transformer paper by Vaswani et al., layer normalization is applied *after* the residual connection. \n", "- **Why?**\n", " - Normalizing the combined output of the main path and residual path improves stability.\n", " - This placement assumes that residual connections should provide unaltered \"backup\" gradients during backpropagation.\n", "\n", "#### Modern Position (Pre-Residual):\n", "- Newer architectures like **T5** apply layer normalization *before* the residual connection.\n", "- **Why the shift?**\n", " - Pre-norm stabilizes training for deeper models.\n", " - Makes gradient flow smoother, especially for large-scale training with many encoder blocks.\n", " - Avoids the need for additional scaling factors in residual connections." ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [], "source": [ "class EncoderBlock(nnx.Module):\n", " \"\"\"\n", " A single Transformer encoder block consisting of multi-head attention, feedforward layers, \n", " layer normalization, and dropout.\n", "\n", " Attributes:\n", " mha (MultiHeadAttention): Multi-head attention mechanism.\n", " linear (list[nnx.Module]): A list of feedforward layers including two linear transformations and dropout.\n", " norm1 (nnx.LayerNorm): Layer normalization after the multi-head attention layer.\n", " norm2 (nnx.LayerNorm): Layer normalization after the feedforward layers.\n", " dropout (nnx.Dropout): Dropout layer applied after the multi-head attention and feedforward layers.\n", " \n", " Args:\n", " input_dim (int): Dimensionality of the input embeddings.\n", " feedforward_dim (int): Dimensionality of the intermediate feedforward layer.\n", " dropout_prob (float): Probability of dropout.\n", " num_heads (int): Number of attention heads.\n", " rngs (nnx.Rngs): Random number generators for reproducibility.\n", " \"\"\"\n", "\n", " def __init__(self, \n", " input_dim: int, \n", " feedforward_dim: int, \n", " dropout_prob: float, \n", " num_heads: int,\n", " *, rngs: nnx.Rngs):\n", " self.mha = MultiHeadAttention(input_dim, num_heads, rngs=rngs)\n", " self.linear = [\n", " nnx.Linear(input_dim, feedforward_dim, rngs=rngs),\n", " nnx.Dropout(dropout_prob, rngs=rngs),\n", " nnx.Linear(feedforward_dim, input_dim, rngs=rngs),\n", " ]\n", " self.norm1 = nnx.LayerNorm(input_dim, rngs=rngs)\n", " self.norm2 = nnx.LayerNorm(input_dim, rngs=rngs)\n", " self.dropout = nnx.Dropout(dropout_prob, rngs=rngs)\n", "\n", " def __call__(self, \n", " x: jnp.ndarray, \n", " mask: Optional[jnp.ndarray] = None\n", " ) -> jnp.ndarray:\n", " \"\"\"\n", " Forward pass for the Transformer encoder block.\n", "\n", " Args:\n", " x (jnp.ndarray): Input tensor of shape (batch_size, seq_len, input_dim).\n", " mask (Optional[jnp.ndarray]): Optional attention mask of shape \n", " (seq_len, seq_len), \n", " (batch_size, seq_len, seq_len), \n", " or (batch_size, num_heads, seq_len, seq_len).\n", "\n", " Returns:\n", " jnp.ndarray: Output tensor of shape (batch_size, seq_len, input_dim).\n", " \"\"\"\n", " # Multi-Head Attention with residual connection and layer norm\n", " mha_out, _ = self.mha(x, mask=mask)\n", " x = x + self.dropout(mha_out)\n", " x = self.norm1(x)\n", " \n", " # Feedforward network with residual connection and layer norm\n", " linear_out = x\n", " for l in self.linear:\n", " linear_out = l(linear_out)\n", " linear_out = nnx.gelu(linear_out)\n", " x = x + self.dropout(linear_out)\n", " x = self.norm2(x)\n", " return x" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABIoAAAJRCAYAAAAqOFwjAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAmutJREFUeJzs3Xd0VNXax/HfJJACKSQQeghVQfpFVECacAEREVERK6CiUgTEAlwLRRAbiqIiNpqiYsF2VUSkSFMQaSIISJMiRSDUhGT2+wd35mVIAhk858xM5vtZ66zFnDlnP8+UzDzs2XsflzHGCAAAAAAAAGEvItAJAAAAAAAAIDjQUQQAAAAAAABJdBQBAAAAAADgf+goAgAAAAAAgCQ6igAAAAAAAPA/dBQBAAAAAABAEh1FAAAAAAAA+B86igAAAAAAACCJjiIAAAAAAAD8Dx1FABBkKlasKJfLdc5t0qRJgU7VUp7HvWXLFsdjnrnFxcWpbt26GjJkiPbv35/rud27dw/o62B1/GHDhsnlcqlFixaWtIfzZ4zRBx98oM6dOys1NVUxMTFKSkpSvXr19PDDD2vbtm2BTjEkTJo0KV+fpRUrVnQkn0B8xp2N5/H7K6/H0aJFC7lcLs2dO9eaBAEAAVMo0AkAAHLXpEkTVa1aNc/7z3Yf/HP6c+12u7Vz504tWrRITz31lKZMmaIffvhBlStXDnCWOJfu3btr8uTJmjhxorp37x7odM7Lzp07de211+qnn36Sy+VSgwYN1KRJEx07dkyLFy/Ws88+q5deekljxoxRnz59LIs7d+5ctWzZUs2bNw+a/+hblVPRokV1/fXX53l/iRIlzrttAAAKIjqKACBI3XXXXSH7n91Qk9tzvXv3bjVv3ly///67Hn74YX300UeBSQ5h48CBA2ratKn++OMP1a9fX1OnTlXNmjW992dlZenFF1/UoEGD1LdvX2VnZ6tfv34BzDg0lChRosCNwAxGU6ZM0bFjx1ShQoVApwIA+IeYegYAQC5Kly6thx56SJI0e/bsAGeDcNC3b1/98ccfqlSpkr7//nufTiJJKlSokB544AG9+OKLkqQHH3xQv/32WyBSBXKoUKGCqlevriJFigQ6FQDAP0RHEQAUEKevN/Hxxx/r8ssvV0JCgooWLaomTZroq6++yvPcrKwsvf3222rdurVKlCih6OholS9fXq1bt9a4ceNyPf61115T48aNlZiYqJiYGFWrVk39+vXTjh078oyzdu1a3XDDDSpRooRiY2NVq1YtPffcc8rOzj7rY8vKytKbb76pFi1aKDk5WdHR0apUqZJ69eql7du35zh+7ty53vV2jh07pscff1w1atRQkSJF/FqPpHTp0t74/nr//ffVqlUrb75paWm644479Pvvv5/1cfrzOuTlm2++UUJCgmJiYvT+++/7nfvptmzZ4l3HxRij119/XQ0aNFDRokWVmJioNm3aaPHixbmee/p78o033vCeV6xYMbVv315Lliw553m5OXMtFE+OkydPliT16NHDZw2aYcOGnfUxHjx4ULGxsYqMjDzr+/f666+Xy+XydtRI0qFDh/Too4+qdu3aKlq0qKKjo1W2bFk1adJEjz/+uE6ePHnW2B5//PGH97V67rnnVKxYsTyP7d27t+rWrauTJ0/qmWee8bnvXGtXedbtOX0EXYsWLdSyZUtJ0rx58/Jcv+f0tleuXKnOnTsrJSVFsbGxqlOnjl588cVc/5btzMkOnvW6hg0bpp07d+quu+5S2bJlvZ9Zb731lvfYdevW6eabb1bp0qUVExOjunXr6oMPPjhnjBkzZng/o+Pj49WiRYuzfkZL0kcffaR27dopJSVFUVFRKleunG699VatXbs2z3MWL16sK6+8UsWKFVNcXJwuvvhivf322+fM73w+q/Nao+j013/z5s267bbbVLp0aUVHR6tKlSp69NFHlZGRkWubWVlZGjNmjGrVqqWYmBiVLFlSN9xwg9auXZvr+8bjww8/VOvWrVW8eHEVLlxYxYsX10UXXaSePXtq1apV53z8ABDumHoGAAXM0KFD9cQTT6hx48Zq37691q1bp0WLFqlDhw76+OOPde211/ocf+jQIXXo0EELFixQ4cKF1bhxY5UtW1a7d+/WqlWrNHv2bN13333e4zMyMtShQwd99913iomJUcuWLZWQkKBFixZp3Lhxeu+99zRz5kz961//8omzYMECtWvXTkePHlXlypX173//W/v27dN//vOfPDsMJOnw4cPq2LGj5s6dq7i4ODVo0EApKSlavXq1XnvtNX344YeaNWuW6tevn+PcEydOqEWLFlq7dq2aNWumunXr5rk4dW5++uknScoxsuNsjDHq3r27pkyZokKFCqlZs2YqWbKkli9frokTJ+qDDz7Qxx9/rHbt2vmc5+/rkJcJEyaoT58+SkxM1FdffaXLL78837mfS48ePTRt2jQ1bdpUHTp00IoVKzRr1izNnz9f8+bN06WXXprreQMHDtTYsWPVpEkTXXPNNVq9erW+/vprzZo1S9OnT8/xnvRXXFycunXrpgULFmjTpk051veqV6/eWc8vVqyYrr32Wr333nuaOnWqBg8enOOY/fv364svvlBUVJRuvfVWSdKxY8d0+eWXa82aNUpJSVGrVq1UtGhR7d692/t3N3DgwLN2+nh88cUXcrvdKlasmDp27HjWY10ul2677TatXLlSX3zxhYwx57UosUe7du0UExOjmTNnqlSpUj7vzdzW7/npp5/Uq1cvlS5dWq1atdKBAwc0d+5cDRgwQAsWLND06dP/UT7nk5Mdtm3bpgYNGigqKkpNmzbV3r17NX/+fN111106ePCgmjRpojZt2qhs2bJq2bKltm7dqsWLF6tr166SpBtvvDHXdl966SW98MILuvjii9WhQwdt2rRJ8+bN07x58/TSSy/l+DvPysrSLbfcounTpys6OloNGjRQuXLl9Pvvv+vdd9/VJ598ok8++STHZ8qHH36om266SdnZ2apVq5Zq166t7du366677tKvv/6a5+M+38/qc1mxYoX69++vpKQkNW/eXH///bcWLlyoUaNG6ddff9WMGTN8jne73br22mv15ZdfKioqSi1atFBSUpKWLl2qhg0b6o477sg1zogRIzR06FAVKlRIjRs3Vrly5XTo0CFt27ZNb731lmrWrKk6deqc9+MAgLBgAABBJS0tzUgyEydO9Os8SUaSKVasmFmyZInPfUOHDjWSzAUXXJDjvM6dOxtJpn79+mbz5s0+9508edJ8+umnPvsGDRpkJJkqVar4HJ+ZmWnuvPNOI8lUqlTJZGRkeO87fvy4SU1NNZLMgAEDTFZWlve+lStXmhIlSnjzPzOHm2++2UgyHTp0MH/99ZfPfS+88IKRZKpVq+bT5pw5c7zt1alTx+zatSvX5yy35zo7O9v8+eefZty4cSY6OtpERkaaL774Ise53bp1y/V1Gj9+vJFkSpQoYX755Rfvfrfb7X0dihUrZvbs2eNznr+vw5nx3W63efjhh72vzfr163N9zHnx5Na8eXOf/Zs3b/Y+l2lpaT7tZmVlmTvuuMNIMm3atMnR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/o6O8bwvrFaxYkW1bNlS33//vWbMmKGbb75ZJ0+e1LRp0yTJOxrsdE899ZTuvfdeffHFF1qwYIEWLlyoiRMnauLEiWrYsKHmzJmjokWLnjN2gwYN9M4772j58uXKyspSoUJnL9E8C60XL17cr6uA2fXcncmf19SpnPx1rve8XX8Tpz93nuematWqatKkyVnPO5+OZiedz/N1ts6xvO5r2rSptmzZov/+97+aN2+eFi1apJkzZ+rrr7/W0KFDNWPGDLVq1crvXAAgnNBRBABhzPML77p16/J1vGfqw+bNm/M8xvML+OnTJDz/3rJlS67nHDx4MNdfqFNTUyWdmhr28ssv5ytHK0VERKhixYrat2+ffvvtt3Me73mc+/fvV3p6eq6jinJ7fvx9HU7Xpk0b3XvvverQoYPuuusuHTlyRP369fO7HTtt3rw51yuPed4P5cuX99lfuHBhnTx5UocPH851FJdnBJYdevTooe+//14TJ07UzTffrC+++EL79u1T48aNdeGFF+Z6TsWKFXXfffd5r1a1dOlS3XrrrVq6dKmeeeYZDR8+/Jxxr776aj3wwAM6dOiQPvvsM1133XV5HmuM0dSpUyXlnM7jmZJ6+PDhXM+14rnL6+//8OHD3umHp7+mTuQUSjZv3pxrx3dufw+ez8ALL7zQr1FR5cqV07p16/L8zM1r//l+VlvNk8fevXt19OjRXDtb88pROvUjwfXXX++dnrZ37149+uijev3113XHHXeE3XsOAPxVcH52BgD4zbPeyldffZWvNUUuvvhixcXF6e+//9bnn3+e4/7jx4/r/fffl3RqfQ+P5s2bS5KmT5+ukydP5jhvypQpuca78sorJUmff/55ntM47OR2u73/Gclr+sPpypcv751altt/6owx3v2nPz/+vg5natasmWbPnq2kpCT1799fTz75pN9t2MnTqZHXfs8aKx6e/yTm1jm3atUqbd++Pdf2PB0SWVlZ55uqrrvuOiUmJur777/X9u3bvdPOchtNlJeGDRuqd+/ekk6tb5QfVapUUZcuXSRJDz30kA4ePJjnsa+++qpWrVqlQoUK6aGHHvK572zPnTFGX3/9da5t+vPcffjhh8rIyMix3/N6Vq1aNdeOYjtzCiV5/T14PgdP/3to1aqVoqKiNHfuXJ/phufi+cx99913zxorr/P8/ay2Wmpqqnek3HvvvZfj/szMTH388cf5bi8lJUXPPPOMJGnbtm06cOCAJXkCQEFFRxEAhLF69erpmmuu0fHjx3XNNddo27ZtPvdnZWX5dAjFxMR4p1898MADPr/Knjx5Uv3799fu3btVqVIln4VGr7/+epUrV07btm3TkCFDfKaarFmzRiNHjsw1v/r16+u6667T9u3b1blz51x/QT569KjefffdfK/tkl9ZWVl69NFHtW/fPklSx44d83Xegw8+KEl64okntHLlSu9+Y4xGjhypFStWqFixYurZs6f3Pn9fh9w0bNhQc+fOVenSpfXII49o8ODB+crXCePHj8+xYPULL7ygn376SfHx8brzzjt97mvdurUkafjw4T4dElu2bFG3bt3ynNbkGYnx66+/nneusbGx6tq1q9xut55++ml98803KlKkiG688cYcx86YMUPz58/PMXXq5MmT3gXK09LS8h37lVdeUcWKFbV582ZdccUVOR5HVlaWnn/+efXv31+S9PTTT6tmzZo+x3ieu6lTp/os5Hvy5EkNGjRIS5cuzTW257nbsGFDrh0Ep9u5c6cefPBBZWdne/f99ttvGjFihCTp/vvvdzynUDJjxgxvh7rHRx99pI8//liFChXyjkyTpFKlSum+++7T0aNHdfXVV2v16tU52svIyNDnn3/uMyLxzjvvVFxcnBYvXqyXXnrJ5/i5c+fqtddeyzW38/2stoNnZOTQoUP1+++/e/e73W4NGTIk1w7jrVu36s0331R6enqO+7744gtJp9ZZymsNOQDAKUw9A4Ag9eabb571alBt2rTJ9Wow/po4caLat2+vJUuWqFq1amrcuLHKli2r3bt3a/Xq1dq7d6/Pf8yHDx+uZcuWafbs2apRo4Zatmyp+Ph4LV68WNu2bVPx4sX14Ycf+lyVLTY2Vu+++67at2+vMWPG6NNPP1XDhg21f/9+zZ07V1dffbV+/vnnXKcDTJw4UQcPHtTXX3+tCy+8UHXr1lWlSpVkjNGWLVu0cuVKZWZm6rffflOpUqXO6zk487nev3+/Vq5c6f2PyCOPPKLGjRvnq6177rlHixYt0tSpU3XxxRerefPmKlmypJYvX67169crNjZW06ZNy7EAsb+vQ25q166tH374Qa1atdLTTz+tw4cP6+WXXz7nIrh2u+eee3TFFVeoadOmKleunNasWaPVq1crMjJSb7/9tkqXLu1z/H/+8x999NFH+uqrr3TBBReoYcOG2rt3r5YuXaomTZqocePGuV7lrlOnTho+fLheeuklrVmzRqmpqYqIiFDHjh3z3dEnnRo9NGHCBL3yyiuSTl11KbcpcPPmzdOLL76oEiVKqH79+ipZsqQOHz6sJUuWaM+ePSpXrpwefvjhfMdNTk7WggUL1KlTJy1btky1a9fWxRdfrCpVqujYsWNavHix9u7dq6ioKI0ZM8bbYXQ6z0Lan332mS6++GJdfvnlio2N1fLly5Wenq7+/fvrxRdfzHFehQoVdPHFF/vEjYmJUYkSJfTUU0/5HHvvvffqzTff1H//+19deumlOnDggObMmaPMzExde+216tWrl+M5nc2+ffvOeWGAV199VUWKFMl3m/9E//79ddNNN+n5559XtWrVtGnTJv3444+SpOeee0516tTxOf6pp57Srl27NG3aNO96bZUrV1ahQoX0559/asWKFTp69Ki+/vpr7zpFZcuW1RtvvKFbb71V/fv315tvvqlatWppx44d+uGHHzRgwAC98MILOXL7J5/VVuvXr59mzZqlr7/+WnXq1FHLli1VrFgxLV26VDt37lTv3r316quv+nzXHDhwQD179lTv3r1Vr14976LcGzZs0C+//CKXy6Vnn33WZ1F6AEAuDAAgqKSlpRlJ59z69+/vc55nf16aN29uJJk5c+bkuC8jI8OMHz/eNG3a1BQrVsxERUWZ8uXLm3//+9/mlVdeyXH8yZMnzauvvmouu+wyEx8fb6KiokyVKlXMfffdZ/788888c1i9erXp3LmzSU5ONtHR0aZGjRpm9OjR5uTJk97HvXnz5hznZWdnm2nTppn27dubUqVKmcKFC5vixYubWrVqmR49epgZM2aYzMxM7/Fz5swxkkzz5s3zzMWYvJ/rqKgok5aWZm688cZcny9jjOnWrZuRZCZOnJjr/dOmTTMtWrQwxYoVM4ULFzapqamme/fuZt26dXnm48/rcLb427ZtMxdccIGRZG6//XaTlZV11ufBGGOGDh2a63O2efNmI8mkpaXleW5er93p78nx48ebevXqmdjYWJOQkGDatWtnFi5cmGeba9euNZ07dzZJSUkmOjraXHjhhWbkyJEmMzPzrO/lGTNmmCZNmpj4+HjjcrmMJDN06NBzPv4z1axZ05t/Xu+BX375xQwePNhcfvnlply5ciYqKsqkpKSYBg0amCeffNLs27fP77jGnHq/v/fee+aaa64xZcuWNVFRUSYhIcHUrl3bPPDAA7n+jZzuxIkT5tFHHzWVK1c2hQsXNiVLljQ33XST2bhxo5k4caKRZLp165bjvK1bt5qbb77ZlClTxhQqVCjH6376e2758uXm6quvNsWLFzfR0dGmZs2a5vnnnzcnT550NKez8bSbn+3AgQPe8zx/C3m9b871t5/X+/P0v5Pp06ebRo0ambi4OFO0aFHTtGlT88UXX5z18Xz11Vemc+fOply5cqZw4cKmWLFipkaNGqZr165m2rRp5ujRoznO+eGHH0zbtm1NQkKCKVKkiKlfv76ZMGGCMebs3xnn81md1+M+1/N1ttc/MzPTPPPMM+aiiy4y0dHRpkSJEubaa681q1evNiNGjDCSzJAhQ7zHp6enm7Fjx5prr73WVKtWzfv8XnDBBeb22283y5Yty/sJBgB4uYzx81IjAAAA+eAZyUSpUTB0795dkydP1sSJE885Qgew2xVXXKE5c+bo448/VufOnQOdDgAUKKxRBAAAACDorFixQpmZmT77MjMzNWzYMM2ZM0clS5ZU+/btA5QdABRcrFEEAAAAIOgMGDBAK1asUN26dVWmTBkdOHBAq1ev1q5duxQTE6PJkycrJiYm0GkCQIHDiCIAAAAAQadnz55q3LixNm3apM8++0zz5s1TTEyM7rjjDv38889q165doFMEgAKJNYoAAAAAAAAgiRFFAAAAAAAA+B86igAAAAAAACCJjiIAAAAAAAD8Dx1FAAAAAAAAkERHEQAAAAAAAP6HjiIAAAAAAABIoqMIAAAAAAAA/0NHEQAAAAAAACTRUQQAAAAAAID/oaMIAAAAAAAAkugoAgAAAAAAwP/QUQQAAAAAAABJdBQBAAAAAADgf+goAgAAAAAAgCQ6igAAAAAAAPA/dBQBAAAAAABAEh1FAAAAAAAA+B86igAHtGjRQrVq1XIklsvl0rBhw8553LBhw+RyuXz2VaxYUd27d7cnMYtMnz5dycnJOnLkSKBTsURur4NTLrvsMj388MMBiQ0AQH5t2bJFLpdLzz33nO2xJk2aJJfLpS1btpzz2DPrprlz58rlcmnu3Lm25WeF9u3bq2fPnoFOwzKBql/Xrl2rQoUKac2aNY7HBuxGRxHOm+eLdNmyZYFORZJ07NgxDRs2LN9fzp4v87y2999/396E4bfs7GwNHTpU9913n+Li4rz7MzMz9eKLL6p+/fpKSEhQsWLFVLNmTd19991at25dADN23pEjRzR06FC1a9dOycnJcrlcmjRpUq7HDho0SK+88op2797tbJIAUAD9+uuvuvXWW1WuXDlFR0erbNmyuuWWW/Trr7/+o3affPJJffrpp9YkeQ6LFi3SsGHDdPDgwXwd37179zzrqJiYGHuTxXlZuHChvv32Ww0aNMhn/5YtW9SjRw9VqVJFMTExKl26tJo1a6ahQ4cGKNPA+emnn9S7d281aNBAhQsXzvMHvYsuukhXXXWVHn/8cYczBOxXKNAJAFY5duyYhg8fLunUCJ786tevnxo2bJhjf6NGjaxKLWSsX79eERHB23/8xRdfaP369br77rt99l933XX6+uuvddNNN6lnz546efKk1q1bpy+//FKNGzdW9erVA5Sx8/bt26cRI0aoQoUKqlu37lk7Tq+55holJCTo1Vdf1YgRI5xLEgAKmE8++UQ33XSTkpOTdeedd6pSpUrasmWL3nrrLX300Ud6//33de21155X208++aSuv/56derUydqkc7Fo0SINHz5c3bt3V7FixfJ1TnR0tN58880c+yMjIy3OLvg1a9ZMx48fV1RUVKBTydOzzz6rVq1aqWrVqt59GzduVMOGDRUbG6s77rhDFStW1K5du7R8+XI9/fTT3vo6XHz11Vd68803VadOHVWuXFm///57nsfee++9at++vTZt2qQqVao4mCVgLzqKEPaaNm2q66+/PtBpBIXo6OhAp3BWEydOVJMmTVSuXDnvvqVLl+rLL7/UqFGj9J///Mfn+Jdffjnfv4oWFGXKlNGuXbtUunRpLVu2LNdOUI+IiAhdf/31mjJlioYPHx6wKXAAEMo2bdqk2267TZUrV9b8+fOVkpLiva9///5q2rSpbrvtNq1atUqVK1cOYKb2KFSokG699dZApxEUIiIignok1Z49e/Tf//5Xr732ms/+F154QUeOHNGKFSuUlpaW45xw06tXLw0aNEixsbHq27fvWTuKWrduraSkJE2ePJkf3VCgBO/QAYSk7t27Ky4uTjt27FCnTp0UFxenlJQUPfjgg8rOzvYed/pc8xdeeEFpaWmKjY1V8+bNc8zzbdGiRa4jhLp3766KFSt62/MUZp7/8OZ3rZ78cLlc6tu3rz788ENddNFFio2NVaNGjbR69WpJ0oQJE1S1alXFxMSoRYsWec5r//nnn9W4cWPFxsaqUqVKOb6oJSkjI0NDhw5V1apVFR0drdTUVD388MPKyMjIcdz999+vlJQUxcfHq2PHjvrzzz9zjbtgwQI1bNhQMTExqlKliiZMmJDrcWfO8fZML1y4cKEGDhyolJQUFS1aVNdee6327t3rc67b7dawYcNUtmxZFSlSRC1bttTatWtztHny5EkNHz5c1apVU0xMjIoXL67LL79cs2bNyjUnjxMnTuibb75R69atffZv2rRJktSkSZMc50RGRqp48eLe21u3blXv3r114YUXKjY2VsWLF9cNN9yQ4/XyPO4FCxaoX79+SklJUbFixXTPPfcoMzNTBw8e1O23366kpCQlJSXp4YcfljHGe74/7++8vPPOO2rQoIFiY2OVnJysrl27avv27ec8Lzo6WqVLl85XDEn697//ra1bt2rFihX5PgcA8P+effZZHTt2TK+//rpPJ5EklShRQhMmTNDRo0f1zDPPePefXsOc7sx161wul44eParJkyd7axvPd6rn2HXr1qlLly5KSEhQ8eLF1b9/f504ccLbhuc7KbdpyKfXSsOGDdNDDz0kSapUqZI3Xn7W6jmXf/q9err8fK+uW7dO119/vZKTkxUTE6OLL75Yn3/+eY7jfv31V11xxRWKjY1V+fLlNXLkSLnd7hzHGWM0cuRIlS9f3lvj5DalMLc1ijzrVK5du1YtW7ZUkSJFVK5cOZ/3g8fWrVvVsWNHFS1aVCVLltT999+vmTNn5mhzw4YNuu6661S6dGnFxMSofPny6tq1qw4dOpTrc+bx3//+V1lZWbnWUuXLl8/RSSRJJUuW9Ln92Wef6aqrrlLZsmUVHR2tKlWq6IknnvCp809/3KtWrVLz5s1VpEgRVa1aVR999JEkad68ebr00ksVGxurCy+8UN99953P+fl9f+fl4MGDGjBggFJTUxUdHa2qVavq6aefzvX1PVOpUqUUGxt7zuMkqXDhwmrRooU+++yzfB0PhApGFMFy2dnZatu2rS699FI999xz+u677zRmzBhVqVJFvXr18jl2ypQpOnz4sPr06aMTJ07oxRdf1BVXXKHVq1erVKlS+Y6ZkpKi8ePHq1evXrr22mvVuXNnSVKdOnXOee7hw4e1b9++HPuLFy/uU6z98MMP+vzzz9WnTx9J0ujRo9WhQwc9/PDDevXVV9W7d28dOHBAzzzzjO644w59//33Pu0dOHBA7du3V5cuXXTTTTdp+vTp6tWrl6KionTHHXdIOtXZ0rFjRy1YsEB33323atSoodWrV+uFF17Q77//7rNGwV133aV33nlHN998sxo3bqzvv/9eV111VY7HsXr1arVp00YpKSkaNmyYsrKyNHToUL+e3/vuu09JSUkaOnSotmzZorFjx6pv37764IMPvMcMGTJEzzzzjK6++mq1bdtWK1euVNu2bXN8mQ8bNkyjR4/WXXfdpUsuuUTp6elatmyZli9frn//+9955vDzzz8rMzNT//rXv3z2e4qad999V02aNFGhQnl/rC1dulSLFi1S165dVb58eW3ZskXjx49XixYttHbtWhUpUiTH4y5durSGDx+uJUuW6PXXX1exYsW0aNEiVahQQU8++aS++uorPfvss6pVq5Zuv/12n/PP9/09atQoPfbYY+rSpYvuuusu7d27V+PGjVOzZs30yy+/5Hs6QH40aNBA0qk1C+rXr29ZuwAQLr744gtVrFhRTZs2zfX+Zs2aqWLFivrvf//rd9tTp071fl96pl2fOb2lS5cuqlixokaPHq0lS5bopZde0oEDBzRlyhS/YnXu3Fm///673nvvPb3wwgsqUaKEJOXo/MpNbnVUVFSUEhISfPY58b3666+/ekcfDx48WEWLFtX06dPVqVMnffzxx94pgLt371bLli2VlZXlPe7111/PtYPg8ccf18iRI9W+fXu1b99ey5cvV5s2bZSZmZmv5/bAgQNq166dOnfurC5duuijjz7SoEGDVLt2bV155ZWSpKNHj+qKK67Qrl271L9/f5UuXVrTpk3TnDlzfNrKzMxU27ZtlZGR4X0+d+zYoS+//FIHDx5UYmJinnksWrRIxYsXz9EhlJaWpu+++07ff/+9rrjiirM+lkmTJikuLk4DBw5UXFycvv/+ez3++ONKT0/Xs88+m+Nxd+jQQV27dtUNN9yg8ePHq2vXrnr33Xc1YMAA3Xvvvbr55pv17LPP6vrrr9f27dsVHx/v08b5vL+PHTum5s2ba8eOHbrnnntUoUIFLVq0SEOGDNGuXbs0duzYsz5GfzVo0ECfffaZ0tPTc7zngZBlgPM0ceJEI8ksXbrUu69bt25GkhkxYoTPsfXr1zcNGjTw3t68ebORZGJjY82ff/7p3f/jjz8aSeb+++/37mvevLlp3rx5jvjdunUzaWlp3tt79+41kszQoUPzlf+cOXOMpDy3Xbt2eY+VZKKjo83mzZu9+yZMmGAkmdKlS5v09HTv/iFDhhhJPsc2b97cSDJjxozx7svIyDD16tUzJUuWNJmZmcYYY6ZOnWoiIiLMDz/84JPra6+9ZiSZhQsXGmOMWbFihZFkevfu7XPczTffnOM56NSpk4mJiTFbt2717lu7dq2JjIw0Z34EpKWlmW7dunlve17j1q1bG7fb7d1///33m8jISHPw4EFjjDG7d+82hQoVMp06dfJpb9iwYUaST5t169Y1V111lfHXm2++aSSZ1atX++x3u93e57dUqVLmpptuMq+88orP4/U4duxYjn2LFy82ksyUKVNyPO62bdv6PO5GjRoZl8tl7r33Xu++rKwsU758eZ/3qD/v76FDh/q8Dlu2bDGRkZFm1KhRPnmuXr3aFCpUKMf+s1m6dKmRZCZOnHjW46KiokyvXr3y3S4A4JSDBw8aSeaaa64563EdO3Y0krz1wpk1jMeZ3wnGGFO0aFGf79Ezj+3YsaPP/t69extJZuXKlcaY//9Oyu274Mya4dlnn81Rw5yNp+7LbWvbtq33OCe/V1u1amVq165tTpw44d3ndrtN48aNTbVq1bz7BgwYYCSZH3/80btvz549JjEx0ec52LNnj4mKijJXXXWVT+7/+c9/ctQ4ntpyzpw53n2eGuX0OiMjI8OULl3aXHfddd59Y8aMMZLMp59+6t13/PhxU716dZ82f/nlFyPJfPjhh8Zfl19+uU897rFmzRoTGxtrJJl69eqZ/v37m08//dQcPXo0x7G51VL33HOPKVKkiM9z7nnc06ZN8+5bt26dkWQiIiLMkiVLvPtnzpyZ4z2a3/e3MTnr1yeeeMIULVrU/P777z7nDh482ERGRppt27bl8uzkrk+fPjn+Js80bdq0HO8lINQx9Qy2uPfee31uN23aVH/88UeO4zp16uSz3swll1yiSy+9VF999ZXtOXo8/vjjmjVrVo4tOTnZ57hWrVr5DBO/9NJLJZ1aSPn0Xz88+898vIUKFdI999zjvR0VFaV77rlHe/bs0c8//yxJ+vDDD1WjRg1Vr15d+/bt826eX3c8vyp5np9+/fr5xBgwYIDP7ezsbM2cOVOdOnVShQoVvPtr1Kihtm3b5u8JknT33Xf7jK5q2rSpsrOztXXrVknS7NmzlZWVpd69e/ucd9999+Voq1ixYvr111+1YcOGfMeXpP3790uSkpKSfPa7XC7NnDlTI0eOVFJSkt577z316dNHaWlpuvHGG33WKDr9V8KTJ09q//79qlq1qooVK6bly5fniHnnnXf6PO5LL71Uxhjdeeed3n2RkZG6+OKLLXt/f/LJJ3K73erSpYvPe6B06dKqVq1ajl8WrZCUlJTrr8EAgLM7fPiwJOUYBXEmz/3p6emW5+AZ6ezh+e51qpaKiYnJtY566qmnchxr9/fq33//re+//15dunTxjhjft2+f9u/fr7Zt22rDhg3asWOHpFPPz2WXXaZLLrnE215KSopuueUWn5jfffedMjMzdd999/nkfmbNdTZxcXE+6zhFRUXpkksu8XmM33zzjcqVK6eOHTt698XExOS4jL1nxNDMmTN17NixfOcgnaqlzqyjJKlmzZpasWKFbr31Vm3ZskUvvviiOnXqpFKlSumNN97wOfb0WsrzHDdt2lTHjh3LcaXZuLg4de3a1Xv7wgsvVLFixVSjRg1vvSzlXTtL5/f+/vDDD9W0aVNvfePZWrdurezsbM2fPz/Pc8+H5zmllkJBwtQzWC4mJibHMOWkpCQdOHAgx7HVqlXLse+CCy7Q9OnTbcvvTLVr184xVzs3p3e0SP//RZ2amprr/jMfb9myZVW0aFGffRdccIGkU+sHXHbZZdqwYYN+++23PId5exYU3Lp1qyIiInIMP7/wwgt9bu/du1fHjx/P9Xm+8MIL811EnvnYPV+Insfo6TA6/QoakpScnJyjIBkxYoSuueYaXXDBBapVq5batWun2267LV/TBCXlumZBdHS0HnnkET3yyCPatWuX5s2bpxdffFHTp09X4cKF9c4770iSjh8/rtGjR2vixInasWOHT1u5zev35zW36v29YcMGGWNyPVc6NRfeasYYFrIGgPPg6QDydBjlJb8dSufjzO+LKlWqKCIiwpK1hfIjMjIyX3WUZP/36saNG2WM0WOPPabHHnss1xz27NmjcuXKaevWrT6dFR5n1lKeGufM2CkpKbl2uuSmfPnyOb5nk5KStGrVKp84VapUyXHcmbVVpUqVNHDgQD3//PN699131bRpU3Xs2FG33nrrWaedeeRWR0mnnsepU6cqOztba9eu1ZdffqlnnnlGd999typVquR9jX/99Vc9+uij+v7773N0fJ5ZS+X2uBMTE/NdO0vn9/7esGGDVq1adc562iqe55RaCgUJHUWwnNWXQ3W5XLl+qZ25aJ7d8npcee3P64v4bNxut2rXrq3nn38+1/vP/GJ1ipWPsVmzZtq0aZM+++wzffvtt3rzzTf1wgsv6LXXXtNdd92V53meRakPHDig8uXL53lcmTJl1LVrV1133XWqWbOmpk+frkmTJqlQoUK67777NHHiRA0YMECNGjVSYmKiXC6Xunbtmuvihv685ufzXOTG7XbL5XLp66+/zjVOXFycJXFOd/DgQe9aFACA/EtMTFSZMmV8/sOfm1WrVqlcuXLe9Uvy+g+lFbXNmW3bGctfdn+ver7LH3zwwTxHTp/Z8eIEK+soSRozZoy6d+/uraX69evnXcPnbDVS8eLFc+2MOTPX2rVrq3bt2mrUqJFatmypd999V61bt9bBgwfVvHlzJSQkaMSIEapSpYpiYmK0fPlyDRo0KEctZUftnJ/OGLfbrX//+996+OGHc73f80OtVTzPKbUUChI6ihBQuU0/+v33332meCUlJeU6FNXzC49HsPfi79y5U0ePHvUZVeS53Kbn8VapUkUrV65Uq1atzvp40tLS5Ha7tWnTJp9fvtavX+9zXEpKimJjY3N9ns889p/wLIq4ceNGVapUybt///79uRYkycnJ6tGjh3r06KEjR46oWbNmGjZs2Fk7iqpXry5J2rx5s2rXrn3OnAoXLqw6depow4YN3qlbH330kbp166YxY8Z4jztx4oTP9DQr5ef9faYqVarIGKNKlSpZXsjkZseOHcrMzFSNGjVsjwUABVGHDh30xhtvaMGCBbr88stz3P/DDz9oy5YtPtPPk5KScv3uObO2kc5d32zYsMHnu3fjxo1yu93e7xrPqJcz451PrEA71/dq5cqVJZ2qAc41yiktLS1f9ZGnxtmwYYO3fenUqO1zdbr4Iy0tTWvXrs0xynfjxo25Hu/pzHn00Ue1aNEiNWnSRK+99ppGjhyZZ4zq1avr448/zndOF198sSRp165dkk5d1W3//v365JNP1KxZM+9xmzdvzneb/jrX+zs3VapU0ZEjR/I90u2f2rx5syIiIhyp2wCnsEYRAurTTz/1zhWXpJ9++kk//vij9woQ0qkP+3Xr1vlcjn3lypVauHChT1ueK1bZ9Z/+fyorK8vnsvSZmZmaMGGCUlJSvFee6tKli3bs2JFjPrh0atrU0aNHJcn7/Lz00ks+x5x5FYfIyEi1bdtWn376qbZt2+bd/9tvv2nmzJmWPC7p1PpNhQoV0vjx4332v/zyyzmO9aw15BEXF6eqVasqIyPjrDEaNGigqKgoLVu2zGf/hg0bfB6bx8GDB7V48WIlJSV5hx5HRkbm+LVq3Lhxtv2qmp/395k6d+6syMhIDR8+PEeuxpgcz98/5Vkfq3Hjxpa2CwDh4qGHHlJsbKzuueeeHJ/Rf//9t+69914VKVLEe+l56VRtc+jQIZ+RSLt27dKMGTNytF+0aNGz1javvPKKz+1x48ZJ+v9aISEhQSVKlMixLsurr76aaywpeGupc32vlixZUi1atNCECRO8nRunO72WbN++vZYsWaKffvrJ5/53333X55zWrVurcOHCGjdunM/3stVXzmrbtq127Nihzz//3LvvxIkTOWrC9PR0ZWVl+eyrXbu2IiIizllLNWrUSAcOHMjxA+wPP/ygkydP5jjes0SB50dJz0ig05+HzMzMXN9LVjnX+zs3Xbp00eLFi3OtdQ8ePJjj+funfv75Z9WsWTNfU/+AUMGIIgRU1apVdfnll6tXr17KyMjQ2LFjVbx4cZ+honfccYeef/55tW3bVnfeeaf27Nmj1157TTVr1vSZGx0bG6uLLrpIH3zwgS644AIlJyerVq1aqlWr1llz+OGHH3Jcwl2S6tSpk+91c/KjbNmyevrpp7VlyxZdcMEF+uCDD7RixQq9/vrr3nVnbrvtNk2fPl333nuv5syZoyZNmig7O1vr1q3T9OnTNXPmTF188cWqV6+ebrrpJr366qs6dOiQGjdurNmzZ+f6q9Pw4cP1zTffqGnTpurdu7eysrI0btw41axZ85xD5fOrVKlS6t+/v8aMGaOOHTuqXbt2Wrlypb7++muVKFHC55exiy66SC1atFCDBg2UnJysZcuW6aOPPlLfvn3PGiMmJkZt2rTRd999pxEjRnj3r1y5UjfffLOuvPJKNW3aVMnJydqxY4cmT56snTt3auzYsd7CpkOHDpo6daoSExN10UUXafHixfruu++809qslp/395mqVKmikSNHasiQIdqyZYs6deqk+Ph4bd68WTNmzNDdd9+tBx988KxxX375ZR08eFA7d+6UdOrSzX/++aekU4tAnl7IzJo1SxUqVFD9+vUteMQAEH6qVaumyZMn65ZbblHt2rV15513qlKlStqyZYveeust7du3T++9957PuoJdu3bVoEGDdO2116pfv346duyYxo8frwsuuCDHxRUaNGig7777Ts8//7zKli2rSpUq+ayts3nzZu937+LFi/XOO+/o5ptvVt26db3H3HXXXXrqqad011136eKLL9b8+fO9o5rPjCVJjzzyiLp27arChQvr6quvzrHG4umysrK8awGe6dprrz3ruf7Kz/fqK6+8ossvv1y1a9dWz549VblyZf31119avHix/vzzT61cuVKS9PDDD2vq1Klq166d+vfvr6JFi+r1119XWlqaT32UkpKiBx98UKNHj1aHDh3Uvn17/fLLL94axyr33HOPXn75Zd10003q37+/ypQpo3fffVcxMTGS/n+01/fff6++ffvqhhtu0AUXXKCsrCxNnTpVkZGRuu66684a46qrrlKhQoX03Xff6e677/buf/rpp/Xzzz+rc+fO3tp3+fLlmjJlipKTk70Ldzdu3FhJSUnq1q2b+vXrJ5fLpalTp1o2/T43+Xl/n+mhhx7S559/rg4dOqh79+5q0KCBjh49qtWrV+ujjz7Sli1bzvrabd26VVOnTpUk7w+UnpFaaWlpuu2227zHnjx5UvPmzctxQRcg5Dl3gTUUNJ5LnS5dutS7r1u3bqZo0aI5jj3zcq+ey5w+++yzZsyYMSY1NdVER0ebpk2b+lzu0uOdd94xlStXNlFRUaZevXpm5syZuV5adtGiRaZBgwYmKioqxyVfz+S5hGle2+nnSjJ9+vTxOf/0x5Bbu6dftrR58+amZs2aZtmyZaZRo0YmJibGpKWlmZdffjlHXpmZmebpp582NWvWNNHR0SYpKck0aNDADB8+3Bw6dMh73PHjx02/fv1M8eLFTdGiRc3VV19ttm/fnuvjnjdvnvd5qVy5snnttddyvQTvmZcXze01Pv0xnn7516ysLPPYY4+Z0qVLm9jYWHPFFVeY3377zRQvXtznsrcjR440l1xyiSlWrJiJjY011atXN6NGjTKZmZk5noszffLJJ8blcvlc1vSvv/4yTz31lGnevLkpU6aMKVSokElKSjJXXHGF+eijj3zOP3DggOnRo4cpUaKEiYuLM23btjXr1q3L9+P2PGd79+712X/m+96f93dur4Mxxnz88cfm8ssvN0WLFjVFixY11atXN3369DHr168/5/OUlpaW5/v69EseZ2dnmzJlyphHH330nG0CAM5u1apV5qabbjJlypQxhQsXNqVLlzY33XSTWb16da7Hf/vtt6ZWrVomKirKXHjhheadd97J9Tth3bp1plmzZt7Ll3u+rzzHrl271lx//fUmPj7eJCUlmb59+5rjx4/7tHHs2DFz5513msTERBMfH2+6dOli9uzZk2vN8MQTT5hy5cqZiIiIHN8bZ+rWrdtZaynPuU5+rxpjzKZNm8ztt99uSpcubQoXLmzKlStnOnTokKMuWLVqlWnevLmJiYkx5cqVM0888YR56623cv2+HD58uClTpoyJjY01LVq0MGvWrMlRP+RWH3lqwNyeuzPr2D/++MNcddVVJjY21qSkpJgHHnjAfPzxx0aS93Lyf/zxh7njjjtMlSpVTExMjElOTjYtW7Y03333XY4YuenYsaNp1aqVz76FCxeaPn36mFq1apnExERTuHBhU6FCBdO9e3ezadOmHMdedtllJjY21pQtW9Y8/PDD3svb5+dxp6WlmauuuirH/jNrbX/e32e+DsYYc/jwYTNkyBBTtWpVExUVZUqUKGEaN25snnvuuXPWnGf7P0Lz5s19jv3666+NJLNhw4aztgmEGpcxNnYBA3nYsmWLKlWqpGefffacoyMQug4ePKikpCSNHDlSjzzyyD9uLzs7WxdddJG6dOmiJ554woIM7REq7+9PP/1UN998szZt2qQyZcoEOh0AgB+GDRum4cOHa+/evSyiW4CNHTtW999/v/7880+VK1fuH7f3ww8/qEWLFlq3bl2eV1gNBqHy/u7UqZNcLleu00aBUMYaRQAscfz48Rz7PPP3W7RoYUmMyMhIjRgxQq+88oqOHDliSZvh7Omnn1bfvn3pJAIAIAicWUudOHFCEyZMULVq1SzpJJKkpk2bqk2bNnrmmWcsaS+c/fbbb/ryyy+D+sdL4HyxRhEAS3zwwQeaNGmS2rdvr7i4OC1YsEDvvfee2rRpoyZNmlgW58Ybb9SNN95oWXvhbPHixYFOAQAA/E/nzp1VoUIF1atXT4cOHdI777yjdevW5Vhg+5/6+uuvLW0v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atSokSRp8eLF2r59u7766ivLEwQAAAXXBx98oIEDB+q1117TpZdeqrFjx6pt27Zav369SpYsGej0zgu1EgAACGV+d2U1b95cv//+uzp37qyDBw/q4MGD6ty5s9avX6+mTZv+o2Tmzp2rsWPH/qM2AADAuRm5bNn89fzzz6tnz57q0aOHLrroIr322msqUqSI3n77bRsetTPsrJUk6iUAAJxgV610PvWS0/waUbRlyxbNmjVLmZmZ6tq1K0OeAQDAecvMzNTPP/+sIUOGePdFRESodevWWrx4cQAzO3/USgAAINTlu6Nozpw56tChg44fP37qxEKF9Pbbb+vWW2+1LTkAAGAPO+bIe9pLT0/32Z/X4sr79u1Tdna2SpUq5bO/VKlSWrdunaW5OYFaCQCAgsOu9YTOp81XXnlFzz77rHbv3q26detq3LhxuuSSSyzPzSPfGT722GP697//rR07dmj//v3q2bOnHn74YdsSAwAA9vFc8tXqTZJSU1OVmJjo3UaPHh3gR+sMaiUAAAoOu2olT72UX571HIcOHarly5erbt26atu2rfbs2WPTI/ejo2jNmjV68sknVaZMGSUlJenZZ5/Vnj17tH//ftuSAwAAoWf79u06dOiQdzt9atnpSpQoocjISP31118++//66y+VLl3aiVQtRa0EAACsFoj1HPPdUZSenq4SJUp4bxcpUkSxsbE6dOiQLYkBAAD72Lk4Y0JCgs+W27QzSYqKilKDBg00e/Zs7z63263Zs2d7rxYWSqiVAAAoOOxezDo9Pd1ny8jIyJGDZz3H1q1be/c5sZ6jX4tZz5w5U4mJid7bnmJuzZo13n0dO3a0LjsAAFCgDRw4UN26ddPFF1+sSy65RGPHjtXRo0fVo0ePQKd2XqiVAABAfqSmpvrcHjp0qIYNG+azL1DrOfrVUdStW7cc++655x7vv10ul7Kzs/95VgAAwFZ2LmbtjxtvvFF79+7V448/rt27d6tevXr65ptvchREoYJaCQCAgsHuxay3b9+uhIQE7/68RmAHQr47itxut515AACAMNW3b1/17ds30Gn8Y9RKAAAgvzxT9M8mUOs5Wt89BgAAgp6dc+4BAABCnd1rFOVHoNZz9GvqGQAAAAAAAJwRiPUc6SgCACAMGdmwRhEDlQEAQAFhR63kadcfgVjPkY4iAAAAAACAIOX0eo50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K97ylej25JaXmJUckxyzkhDyyUtyzUpCyDcvMStRXymEEMKWE09EREREREREROSYnOYaRURERERERERE1DtOFBEREREREREREQBOFBERERERERER0Q2cKCIiIiIiIiIiIgCcKCIiIiIiIiIiohs4UURERERERERERAA4UURERERERERERDdwooiIiIiIiIiIiABwoojIJt5++238+Mc/tvm4p0+fhkKhQE1NzW23+de//gWFQoFLly4BAAoLC3HffffZvBZrPP7440hPT5e6jDtSKBTYsmWL1GUQERHJEvNS75iXiGig4EQROZU5c+ZAoVB0e8TGxkpdms3MmjUL9fX1/b6fwsJC8+vn4uICX19fREZG4p133sHly5cttv3ss8+wePHifq/JWhcuXMBTTz0ldRlERESSYl6yHeYlInJErlIXQGRvsbGxKCgosFjm4eEhUTW2p1aroVar7bIvb29vGI1GCCFw6dIl7N27Fzk5OSgoKMCePXug1+sBAIMHD7ZLPdbSarVSl0BERDQgMC/ZDvMSETkanlFETsfDwwNardbi4evra16vUCiQl5eHadOmwdPTE8HBwdi3bx9OnDiBxx9/HF5eXpgwYQJOnjzZbey8vDwMGzYMnp6eiIuL6/aXoo8//hjBwcFQqVQYNWoU/vSnP1msr6ioQFhYGFQqFcLDw1FdXd1tH9u3b8ePfvQjqNVqPPHEEzh9+rTF+ltPpe46zfuvf/0rAgMD4ePjg+eeew4tLS3mbVpaWhAfHw8vLy/odDqsWrWqT6c/KxQKaLVa6HQ6BAcHIzk5GXv37kVrayt++9vfmre7dazAwEC8++67SExMxKBBgxAQEIDi4mL873//w9NPP41BgwYhNDQUBw4csNjf7t278dhjj0GtVmPYsGFIS0tDW1ubxbjZ2dmYO3cuNBoNDAYD8vPzzeuvXbuG1NRU6HQ6qFQqBAQEICcnx6Kfm0+lrq2txZNPPgm1Wg0/Pz+89NJLaG1tNa+fM2cOZsyYgeXLl0On08HPzw8pKSno6Ojo9XUjIiIa6JiXmJeYl4icFyeKiHqwePFiJCYmoqamBqNGjcLzzz+Pl19+GW+88QYOHDgAIQRSU1MtvubEiRPYuHEjtm7dii+++ALV1dV49dVXzevXrVuHhQsXYsmSJairq0N2djaysrLwySefAABaW1sxbdo0jB49GgcPHsTbb7+N3/zmNxb7OHv2LGbOnInp06ejpqYGL7zwAhYsWHDHfk6ePIktW7Zg27Zt2LZtG8rKyvDee++Z18+fPx979uxBcXExSkpKUF5ejqqqqnt67YYMGYL4+HgUFxejs7PzttutWrUK0dHRqK6uxtSpU5GQkIDExETMnj0bVVVVGD58OBITEyGEMPcQGxuLn//85zh8+DA2bNiA3bt3d3sfVqxYYQ6Nr776Kn71q1/BaDQCAFavXo3i4mJs3LgRRqMR69atQ2BgYI/1tbW1YcqUKfD19UVlZSU2bdqEnTt3dttfaWkpTp48idLSUnzyyScoLCxEYWHhPb12REREjoR5iXmJeYlIpgSRE0lKShIuLi7Cy8vL4rFkyRLzNgDEW2+9ZX6+b98+AUD8+c9/Ni9bv369UKlU5ueLFi0SLi4u4ty5c+ZlO3bsEEqlUly4cEEIIcTw4cNFUVGRRT2LFy8WUVFRQggh8vLyhJ+fn/j+++/N63NzcwUAUV1dLYQQ4o033hCjR4+2GCMzM1MAEN99950QQoiCggLh4+NjUZunp6dobm42L8vIyBCRkZFCCCGam5uFm5ub2LRpk3n9pUuXhKenp5g3b95tX8tb93OzrrovXrwohBBi4sSJFmMFBASI2bNnm59fuHBBABBZWVnmZV2ve9frl5ycLF566SWL/ZSXlwulUml+zW4d12QyiSFDhojc3FwhhBCvvfaaePLJJ4XJZOqxbgBi8+bNQggh8vPzha+vr2htbTWv/8c//iGUSqVobGwUQlz/fgoICBA//PCDeZtnn31WzJo1q8fxiYiIHAHz0nXMS8xLRM6K1ygip/PEE08gNzfXYtmtnwkPDQ01/9vf3x8AEBISYrGsvb0dzc3N8Pb2BgAYDAYMHTrUvE1UVBRMJhOMRiM0Gg1OnjyJ5ORkvPjii+ZtfvjhB/j4+AAA6urqEBoaCpVKZTHGzerq6hAZGWmx7NZtehIYGAiNRmN+rtPp0NTUBAA4deoUOjo6EBERYV7v4+ODkSNH3nHc2xE3/qqlUChuu01fXmMAaGpqglarxaFDh3D48GGsW7fOYj8mkwkNDQ0IDg7uNm7Xqd5dvc6ZMwc/+clPMHLkSMTGxmLatGmYPHlyj/XV1dVh7Nix8PLyMi+Ljo42v6dd9Y0ZMwYuLi7mbXQ6HWpra3t7eYiIiAY85iXmJeYlIufFiSJyOl5eXhgxYkSv27i5uZn/3fXLu6dlJpOpT/vs+pz22rVruwWXm39p9pebaweu19/X2u9FXV0dvL294efn16ea+vIat7a24uWXX0ZaWlq3sQwGQ4/jdo3TNca4cePQ0NCAHTt2YOfOnYiLi0NMTAz+/ve/322LfdofERGRo2JeYl5iXiJyXrxGEZGNfP311zh//rz5+f79+6FUKjFy5Ej4+/tDr9fj1KlTGDFihMUjKCgIABAcHIzDhw+jvb3dYoybBQcHo6KiwmLZrdvcrQcffBBubm6orKw0L7t8+fI93zK2qakJRUVFmDFjBpRK2x1ixo0bh6NHj3Z7/UaMGAF3d/c+j+Pt7Y1Zs2Zh7dq12LBhAz799FN8++233bYLDg7GoUOHLC7+uGfPHvN7SkRERHePeek65iUiGsg4UURO5+rVq2hsbLR4fPPNN1aPq1KpkJSUhEOHDqG8vBxpaWmIi4sz30L097//PXJycrB69WrU19ejtrYWBQUFWLlyJQDg+eefh0KhwIsvvoijR49i+/btWL58ucU+XnnlFRw/fhwZGRkwGo0oKiqy+kKAGo0GSUlJyMjIQGlpKf7zn/8gOTkZSqWy11OhgeunMjc2NuLChQuoq6vDX/7yF0yYMAE+Pj4WF3+0hczMTOzduxepqamoqanB8ePH8fnnn3e7WGJvVq5cifXr1+PYsWOor6/Hpk2boNVqLe560iU+Pt78nh45cgSlpaV47bXXkJCQYD6NmoiISK6YlywxLzEvETkTThSR0/niiy+g0+ksHo8++qjV444YMQIzZ87ET3/6U0yePBmhoaEWt3N94YUX8PHHH6OgoAAhISGYOHEiCgsLzX8hGzRoELZu3Yra2lqEhYXhzTffxNKlSy32YTAY8Omnn2LLli0YO3Ys1qxZg+zsbKtrX7lyJaKiojBt2jTExMQgOjrafFva3jQ3N0On02Ho0KGIiopCXl4ekpKSUF1dDZ1OZ3VdNwsNDUVZWRnq6+vx2GOPISwsDAsXLoRer+/zGBqNBsuWLUN4eDjGjx+P06dPY/v27T3+Jc/T0xNffvklvv32W4wfPx7PPPMMJk2ahA8//NCWbREREQ1IzEvdMS8xLxE5C4XouooaEdENbW1tGDp0KFasWIHk5GSpyyEiIiIacJiXiEiueDFrIkJ1dTWOHTuGiIgIXL58Ge+88w4A4Omnn5a4MiIiIqKBgXmJiJwFJ4qICACwfPlyGI1GuLu745FHHkF5eTnuv/9+qcsiIiIiGjCYl4jIGfCjZ0REREREREREBIAXsyYiIiIiIiIiohs4UURERERERERERAA4UURERERERERERDdwooiIiIiIiIiIiABwooiIiIiIiIiIiG7gRBEREREREREREQHgRBEREREREREREd3AiSIiIiIiIiIiIgLAiSIiIiIiIiIiIrrh/x/rBcS/bZmgAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Define the EncoderBlock test parameters\n", "batch_size = 2\n", "seq_len = 10\n", "input_dim = 16\n", "feedforward_dim = 64\n", "dropout_prob = 0.1\n", "num_heads = 4\n", "\n", "# Create random input data and mask\n", "key = jax.random.PRNGKey(42)\n", "x = jax.random.normal(key, (batch_size, seq_len, input_dim))\n", "mask = jnp.tril(jnp.ones((seq_len, seq_len))) # Lower triangular mask\n", "\n", "# Initialize EncoderBlock\n", "rngs = nnx.Rngs(key)\n", "encoder_block = EncoderBlock(input_dim, feedforward_dim, dropout_prob, num_heads, rngs=rngs)\n", "\n", "# Forward pass\n", "output = encoder_block(x, mask=mask)\n", "\n", "# Assert the output shape\n", "assert output.shape == (batch_size, seq_len, input_dim), \"Output shape mismatch.\"\n", "\n", "# Visualize the input and output embeddings for one sample\n", "fig, axes = plt.subplots(1, 2, figsize=(12, 6))\n", "fig.suptitle(\"EncoderBlock Input vs Output Embeddings\", fontsize=16)\n", "\n", "# Input Embeddings\n", "axes[0].imshow(x[0], aspect=\"auto\", cmap=\"coolwarm\")\n", "axes[0].set_title(\"Input Embeddings (Sample 1)\")\n", "axes[0].set_xlabel(\"Embedding Dimension\")\n", "axes[0].set_ylabel(\"Sequence Position\")\n", "axes[0].colorbar = plt.colorbar(axes[0].imshow(x[0], aspect=\"auto\", cmap=\"coolwarm\"), ax=axes[0])\n", "\n", "# Output Embeddings\n", "axes[1].imshow(output[0], aspect=\"auto\", cmap=\"coolwarm\")\n", "axes[1].set_title(\"Output Embeddings (Sample 1)\")\n", "axes[1].set_xlabel(\"Embedding Dimension\")\n", "axes[1].set_ylabel(\"Sequence Position\")\n", "axes[1].colorbar = plt.colorbar(axes[1].imshow(output[0], aspect=\"auto\", cmap=\"coolwarm\"), ax=axes[1])\n", "\n", "plt.tight_layout()\n", "plt.show()\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Transformer Encoder\n", "The **Transformer Encoder** is the central component of the Transformer architecture, consisting of multiple stacked **Encoder Blocks**. It processes input sequences through a series of attention and feedforward transformations, progressively refining the representations for downstream tasks like machine translation, text classification, or other sequence-based applications.\n", "\n", "\n", "### Design Considerations\n", "#### Stacked Architecture\n", "- Stacking multiple `EncoderBlocks` allows the model to progressively refine its understanding of the input sequence.\n", "- Each block captures increasingly abstract representations, with lower blocks focusing on local patterns and higher blocks aggregating global context.\n", "\n", "#### Flexibility in Masks\n", "- The encoder supports multiple types of masks:\n", " - **Padding masks** to prevent attention to padded positions.\n", " - **Causal masks** to prevent access to future tokens (if used in auto-regressive settings).\n", "\n", "### Additional Insights\n", "#### Role of Masking\n", "- Masks play a crucial role in ensuring attention mechanisms focus on meaningful portions of the input sequence. This is particularly important in padded sequences or when causal modeling is required.\n", "\n", "#### Balancing Depth and Computational Cost\n", "- Increasing the number of `EncoderBlocks` improves model expressiveness but comes with higher computational costs. Careful tuning is required based on the dataset and task.\n", "\n", "#### Interpretability via Attention\n", "- The ability to extract and visualize attention weights helps in understanding which parts of the input the model finds most relevant, making the model more interpretable and trustworthy in applications like healthcare or protein modeling.\n" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [], "source": [ "class TransformerEncoder(nnx.Module):\n", " \"\"\"\n", " A Transformer encoder consisting of multiple stacked encoder blocks.\n", "\n", " Attributes:\n", " blocks (list[EncoderBlock]): List of encoder blocks comprising the Transformer encoder.\n", "\n", " Args:\n", " input_dim (int): Dimensionality of the input embeddings.\n", " feedforward_dim (int): Dimensionality of the intermediate feedforward layers in each encoder block.\n", " num_blocks (int): Number of encoder blocks to stack.\n", " dropout_prob (float): Probability of dropout.\n", " num_heads (int): Number of attention heads in each encoder block.\n", " rngs (nnx.Rngs): Random number generators for reproducibility.\n", " \"\"\"\n", "\n", " def __init__(self, \n", " input_dim: int, \n", " feedforward_dim: int, \n", " num_blocks: int, \n", " dropout_prob: float, \n", " num_heads: int,\n", " *, rngs: nnx.Rngs): \n", " self.blocks = [\n", " EncoderBlock(input_dim, feedforward_dim, dropout_prob, num_heads, rngs=rngs) \n", " for _ in range(num_blocks)\n", " ]\n", "\n", " def __call__(self, \n", " x: jnp.ndarray, \n", " mask: Optional[jnp.ndarray] = None\n", " ) -> jnp.ndarray:\n", " \"\"\"\n", " Forward pass for the Transformer encoder.\n", "\n", " Args:\n", " x (jnp.ndarray): Input tensor of shape (batch_size, seq_len, input_dim).\n", " mask (Optional[jnp.ndarray]): Optional attention mask of shape \n", " (seq_len, seq_len), \n", " (batch_size, seq_len, seq_len), \n", " or (batch_size, num_heads, seq_len, seq_len).\n", "\n", " Returns:\n", " jnp.ndarray: Output tensor of shape (batch_size, seq_len, input_dim).\n", " \"\"\"\n", " for block in self.blocks:\n", " x = block(x, mask=mask)\n", " return x\n", "\n", " def get_attention_weights(self, \n", " x: jnp.ndarray, \n", " mask: Optional[jnp.ndarray] = None,\n", " ) -> List[jnp.ndarray]:\n", " \"\"\"\n", " Extracts the attention weights from each encoder block.\n", "\n", " Args:\n", " x (jnp.ndarray): Input tensor of shape (batch_size, seq_len, input_dim).\n", " mask (Optional[jnp.ndarray]): Optional attention mask of shape \n", " (seq_len, seq_len), \n", " (batch_size, seq_len, seq_len), \n", " or (batch_size, num_heads, seq_len, seq_len).\n", "\n", " Returns:\n", " List[jnp.ndarray]: List of attention weight tensors from each encoder block. Each tensor has shape \n", " (batch_size, num_heads, seq_len, seq_len).\n", " \"\"\"\n", " attention_weights = []\n", " for block in self.blocks:\n", " _, attention_weight = block.mha(x, mask=mask)\n", " attention_weights.append(attention_weight)\n", " return attention_weights\n" ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [ { "data": { "image/png": "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DZo9e7ZuvvlmSVJAQIA6duyoL7/8UitXrsyznfzOHBs6dKieeOIJDRkyROPHjz+vxwAAAPwHZ0oBAGDRzJkzdezYMY+LZP/Z3/72N8XExGjy5Mm68847ddVVVykwMFAvvviijh49qtDQUF1//fWKjY1Vw4YNNX78eI0YMUI1atRQbGysrr/+ej355JOaOXOmbrnlFvXo0UMNGzbU8ePH9fPPP2vq1Knavn27x3WDCqJhw4aSpP79+6tt27YKDAzUXXfdle+6I0aM0Jw5c3TNNdfo0UcfVVBQkN566y1lZGS4G0TekpiYqEqVKmnJkiWqUqWKEhISPJY3b95cn3/+uRwOh0djpkWLFnrkkUc0evRorV27VjfeeKOCg4O1ZcsWTZkyRa+88oo6d+6c75iPPPKIXn/9dd1999167LHHFB8fr8mTJ7s/GljQs8r+rHr16ipVqpQmTJigqKgoRUREqGnTplq3bp369u2rLl266LLLLlN2drY+/PBDBQYGepz55S1Tp05VZGSkjDHas2eP3n33XR05ckQTJkw46+P697//rXbt2qlZs2Z68MEHdfLkSb322muKjo7W8OHD3euNGjVKs2fPVosWLdSrVy/Vrl1bKSkpmjJlihYtWqRSpUrlu+2jR4+qT58+ioqK8rhofH4+/PBD7dixw31h+IULF7rPKLv//vu5YDoAADbZ/Oo/AAAudbfeeqsJCwszx48fP+M6PXr0MMHBwebgwYPGGGPeeecdU61aNRMYGGgkmXnz5hljjNm7d69p3769iYqKMpJMixYt3Ns4duyYGTJkiKlRo4YJCQkx5cqVM82bNzcvv/yyyczMNMYYk5ycbCSZf//733kySDLDhg1zT2dnZ5t+/fqZmJgY43A4zJ9Lir+ua4wxq1evNm3btjWRkZGmRIkSplWrVuann37yWGfixIlGklmxYoXH/Hnz5nk8znO5++67jSRzzz335Fk2duxYI8nUrl073/u+/fbbpmHDhiY8PNxERUWZevXqmaeeesrs2bPHvU6LFi089q0xxmzbts20b9/ehIeHm5iYGPOPf/zDfP7550aSWbp0qcd969atm2fc7t27m8qVK3vM++KLL0ydOnVMUFCQkWQmTpxotm3bZnr27GmqV69uwsLCTJkyZUyrVq3M999/X6B9U1DDhg0zkjxuERERplmzZuazzz7zWDf3eTNx4kSP+d9//71JSkoy4eHhpmTJkubWW281v/76a56xduzYYbp162ZiYmJMaGioqVatmunTp4/JyMgwxuT/vHA6nebuu+82QUFBZsaMGWd9LC1atMjzWHJvBX1OAQCAouEwxkdXLQUAALiEjBs3To8//rj++OMPVahQwXYcAAAAv0NTCgAA4AKdPHnS4+Lhp06dUoMGDeR0OrV582aLyQAAAPwX15QCAAC4QJ06dVJiYqKuuuoqHT16VB999JF+++03TZ482XY0AAAAv0VTCgAA4AK1bdtW//3vfzV58mQ5nU7VqVNHn3zyie68807b0QAAAPwWH98DAAAAAACAzwXYDgAAAAAAAIBLD00pAAAAAAAA+BxNKQAAAAAAAPgcTSkAAAAAAAD4HE0pAAAAAAAA+BxNKQAAAAAAAPgcTSkAAAAAAAD4HE0pAAAAAAAA+BxNKQAAAAAAAPgcTSkAAAAAAAD4HE0pAAAAAAAA+BxNKQAAAAAAAPgcTSkAAAAAAAD4HE0pAAAAAAAA+BxNKQAAAAAAAPgcTSkAAAAAAAD4HE0pAAAAAAAA+BxNKQAAAAAAAPgcTSkAAAAAAAD4HE0pAAAAAAAA+BxNKQAAAAAAAPgcTSkAOINJkybJ4XBo5cqVtqMAAABcNKihABQUTSkAfiG3ePnzLTY2Vq1atdK333573tsdNWqUZsyY4b2ghZCSkqLBgwerVatWioqKksPh0Pz5861kAQAAxVNxrKHmzp2rnj176rLLLlOJEiVUrVo1PfTQQ0pJSbGSB0DRCbIdAAD+7Pnnn1fVqlVljNG+ffs0adIk3Xzzzfryyy91yy23FHp7o0aNUufOndWxY0fvhz2HTZs26cUXX1TNmjVVr149LVmyxOcZAADApaE41VCDBg3S4cOH1aVLF9WsWVPbtm3T66+/rq+++kpr165VXFyczzMBKBo0pQD4lXbt2qlRo0bu6QcffFDly5fX//73v/MqqGxq2LChDh06pDJlymjq1Knq0qWL7UgAAKCYKk411NixY3XNNdcoIOD0B3tuuukmtWjRQq+//rpGjBhhMR0Ab+LjewD8WqlSpRQeHq6gIM8e+ssvv6zmzZurbNmyCg8PV8OGDTV16lSPdRwOh44fP67333/ffTp7jx493Mt3796tBx98UAkJCQoNDVXVqlXVu3dvZWZmemwnIyNDAwcOVExMjCIiInT77bfrwIED58weFRWlMmXKnP+DBwAAOE8Xcw113XXXeTSkcueVKVNGGzduLOSeAODPOFMKgF85evSoDh48KGOM9u/fr9dee03p6em67777PNZ75ZVX1KFDB917773KzMzUJ598oi5duuirr75S+/btJUkffvihHnroITVp0kS9evWSJFWvXl2StGfPHjVp0kSpqanq1auXatWqpd27d2vq1Kk6ceKEQkJC3GP169dPpUuX1rBhw7R9+3aNGzdOffv21aeffuqjvQIAAHB2xb2GSk9PV3p6usqVK3e+uwiAH6IpBcCvtGnTxmM6NDRU7733nm644QaP+Zs3b1Z4eLh7um/fvrr66qs1duxYd0F133336e9//7uqVauWpyAbMmSI9u7dq2XLlnmc6v7888/LGOOxbtmyZTV79mw5HA5Jksvl0quvvqqjR48qOjr6wh80AADABSruNdS4ceOUmZmpO++8s1D3A+Df+PgeAL/yxhtvaM6cOZozZ44++ugjtWrVSg899JCmTZvmsd6fi6kjR47o6NGjuvbaa7V69epzjuFyuTRjxgzdeuutHsVUrtzCKVevXr085l177bVyOp3asWNHYR8eAABAkSjONdTChQv13HPPqWvXrrr++usLdV8A/o0zpQD4lSZNmngUOXfffbcaNGigvn376pZbbnGfEv7VV19pxIgRWrt2rTIyMtzr/7UYys+BAweUlpamK664okCZEhMTPaZLly4tKaeQAwAA8AfFtYb67bffdPvtt+uKK67Qf//73wLfD8DFgTOlAPi1gIAAtWrVSikpKdqyZYsk6ccff1SHDh0UFhamN998U998843mzJmje+65J89p494QGBiY7/yiGAsAAMAbikMNtWvXLt14442Kjo7WN998o6ioKG/GA+AHOFMKgN/Lzs6WlHOBS0n6/PPPFRYWplmzZik0NNS93sSJE/PcN793/WJiYlSyZElt2LChiBIDAADYdzHXUIcOHdKNN96ojIwMzZ07V/Hx8UU+JgDf40wpAH4tKytLs2fPVkhIiGrXri0p5103h8Mhp9PpXm/79u2aMWNGnvtHREQoNTXVY15AQIA6duyoL7/8UitXrsxzH86AAgAAF7uLuYY6fvy4br75Zu3evVvffPONatas6ZXtAvA/nCkFwK98++23+u233yRJ+/fv18cff6wt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BUCSdOjQIV1//fX66KOPtH79eiUnJ2vKlCl66aWXdNttt0mS2rRpo2bNmqljx46aPXu2tm/frp9++klPP/20Vq5cKUl67LHH9N5772nixInavHmzhg0bpl9++cVjrOuvv15ff/21vv76a/3222/q3bu3UlNT3csvu+wy3XvvverWrZumTZum5ORkLV++XKNHj9bXX39d4Mc0fPhwjRkzRq+++qq2bNmi1atX67XXXivwYymsRx99VLt27VK/fv3022+/6YsvvtCwYcM0cOBABQQEaNmyZe4LmO7cuVPTpk3TgQMHVLt27Xy3V6VKFS1btkzbt2/XwYMH831n7h//+Ifmzp2rF154QZs3b9b777+v119/3eOCpQAAoGhQP1E/AbhANi9oBcB/nDp1ygwePNhcffXVJjo62pQoUcJcfvnl5plnnjEnTpxwr5eWlmb69etnEhISTHBwsKlUqZK59957zc6dO93rjBw50pQrV85ERkaa7t27m6eeesrjQp2ZmZmmd+/epkyZMiY2NtaMHj06z1caZ2ZmmmeffdZUqVLFBAcHm/j4eHP77beb9evXG2NOf6Xxn02fPt389bA2YcIEc/nll7u30a9fv0I9lr/SX77S+K/O9pXGv/76q2nbtq2JiYkxoaGh5rLLLjOvvfaa+75/vVDnpk2bzN/+9jcTHh5eoK80Dg4ONomJiebf//63R6bKlSub//znPx7z6tevb4YNG3bGxwEAAM6N+on6CcCFcRiTz3dpAoAXDR8+XDNmzNDatWttRwEAALgoUD8BuBTw8T0AAAAAAAD4HE0pAAAAAAAA+Bwf3wMAAAAAAIDPcaYUAAAAAAAAfI6mFAAAAAAAAHyOphQAAAAAAAB8jqYUAAAAAAAAfI6mFAAAAAAAAHyOphQAAAAAAAB8jqYUAAAAAAAAfI6mFAAAAAAAAHzu/wBfDh1DOxNg6AAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAGMCAYAAAALJhESAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAXlpJREFUeJzt3X98zfX///H72e+xGcNsY34rkhARS4iSlCT6HVJvveVH8q7wLlHEp97x1k/6ST/0VhT9DsmPCGF+pIQyP2J+xTYbtjl7fv/Yd4fThh3OzvNsbtfL5Vzq9es87+e1s9ceHud1Xi+HMcYIAAAAAAAA8KEA2wEAAAAAAABw4aEpBQAAAAAAAJ+jKQUAAAAAAACfoykFAAAAAAAAn6MpBQAAAAAAAJ+jKQUAAAAAAACfoykFAAAAAAAAn6MpBQAAAAAAAJ+jKQUAAAAAAACfoykFAAC8yuFwaPTo0bZjFJt27dqpXbt257ztpZde6t1Alm3fvl0Oh0PTpk0rluefNm2aHA6HVq9eXSzPDwAA7KEpBQCAH3nttdfkcDjUsmXLQpf/+uuvGj16tLZv317otsXVGPi7r7/+2q8aT88//7wcDofWrl3rNt8YowoVKsjhcCg5Odlt2fHjxxUaGqq77rrLl1GLZM+ePRo9erTWrVtnZfzRo0fL4XC4HgEBAYqLi9ONN96oFStWWMl0Ln777Tc9/vjjatKkiSIjIxUXF6cuXbrQ4AIAwE/QlAIAwI9Mnz5dNWvW1E8//aTff/+9wPJff/1VTz/9tF80pZ5++ulClx07dkxPPvmkT3Lku+qqqyRJS5cudZv/yy+/KDU1VUFBQVq2bJnbslWrVik7O9u1bVHNmzdP8+bNO7/AZ7Fnzx49/fTT1ppS+SZPnqz3339f06ZN08CBA7Vx40ZdffXV1nMV1VtvvaU333xTzZs314QJEzR06FBt3rxZV155pb777jvb8QAAuODRlAIAwE8kJyfrxx9/1MSJE1W5cmVNnz7ddqRzEhYWpqCgIJ+O2bx5c4WFhRVoSi1btkwVK1ZUhw4dCizLn/a0KRUSEqKQkJDzC1xC9OjRQ/fcc4969eqlJ554Ql999ZVycnI0c+ZM29GK5M4779SuXbv01ltvqV+/fnrssce0cuVKRUdH+9WZfgAAXKhoSgEA4CemT5+uChUqqEuXLurRo0eBptS0adPUs2dPSVL79u1dX61atGiRatasqV9++UWLFy92zT/1ukepqakaMmSIEhISFBoaqrp16+q5555Tbm6ua538awO98MILeuONN1SnTh2Fhobqiiuu0KpVq1zr9enTR6+++qokuX3FK19h15Rau3atOnfurHLlyikiIkIdOnQo8DWw/GsHLVu2TEOHDlXlypVVtmxZ3XLLLTpw4MAZ911ISIiuuOKKAmdDLVu2TK1atVJiYmKhy8qXL++6xlNubq4mTZqkhg0bKiwsTFWqVNGDDz6ow4cPu21X2DWlduzYoa5du6ps2bKKiYnRI488orlz57p+Pn/366+/qn379ipTpoyqVq2q559/3rVs0aJFuuKKKyRJ9913n2v/5p8Ft3XrVt16662KjY1VWFiYqlWrpjvuuENpaWln3EfeEBsbK0lFajp+//33atOmjcqWLavy5cvr5ptv1qZNmwqst3v3bt1///2Kj49XaGioatWqpf79+ys7O/u0z3348GG1aNFC1apV0+bNm0+7XrNmzRQREeE2r2LFimrTpk2hWQAAgG/59mNMAABwWtOnT1f37t0VEhKiO++8U5MnT9aqVatcDYqrr75agwcP1ksvvaR///vfatCggSSpQYMGmjRpkgYNGqSIiAg98cQTkqQqVapIko4ePaq2bdtq9+7devDBB1W9enX9+OOPGjFihFJSUjRp0iS3HB9++KGOHDmiBx98UA6HQ88//7y6d++ubdu2KTg4WA8++KD27Nmj+fPn6/333z/r6/rll1/Upk0blStXTo8//riCg4P1+uuvq127dlq8eHGB62cNGjRIFSpU0KhRo7R9+3ZNmjRJAwcO1EcffXTGca666ir98MMP2r59u2rWrCkpr/H0wAMPqEWLFho1apRSU1NVvnx5GWP0448/qlWrVgoIyPuM7sEHH9S0adN03333afDgwUpOTtYrr7yitWvXatmyZQoODi503MzMTF1zzTVKSUnRww8/rNjYWH344YdauHBhoesfPnxY119/vbp3767bbrtNs2bN0rBhw9SoUSN17txZDRo00DPPPKOnnnpK/fr1U5s2bSRJrVu3VnZ2tjp16qSsrCwNGjRIsbGx2r17t7788kulpqYqKirqrD8PTxw6dEhSXsNu9+7dGjNmjMLCwnTbbbedcbvvvvtOnTt3Vu3atTV69GgdO3ZML7/8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8df36tatq5EjR2rFihVq1KiRgoOD3ZYPHjzYa+E6dOign3/+2W3efffdp/r162vYsGEKDAz02lgAAADFiRoKAADAncdNqTfeeEMRERFavHixFi9e7LbM4XB4taCKjIzUpZde6javbNmyqlixYoH5AAAA/owaCgAAwJ3HTank5OTiyAEAAFCqUUMBAAC487gpdSpjjCS53dK4uC1atMhnYwEAABQHaigAAIBzuNC5JL333ntq1KiRwsPDFR4erssuu0zvv/++t7MBAACUKtRQAAAAJ3l8ptTEiRM1cuRIDRw4UImJiZKkpUuX6p///KcOHjyoRx55xOshvaHG21sVFBBibfzN/65nbex85X/z3aexp+NoUNl2BElSVHKu7Qh65M0PbUfQEy/1tR1BsR/m2I6g7beE244gSQr7q5LtCAr/ZbftCKpyLNZ2BP3ZvoztCDrcIMx2BElSq3/903YEBbYwVsc/kXNc+vP8n6ck1lAZjeIVFGzvvZgTcU6fn3pVaGrBuz37WtbFx2xHkCRVe81+/eQMP68veniFCQu1HUHZfnCDzKxo+/tBknZ0s51Aqveu/Xo2eEa07QgKPZBmO4KOxUfYjiBJip9p/9/eOeXs/g09caJofzM8Pqq//PLLmjx5snr16uWa17VrVzVs2FCjR4/2y4IKAADANmooAAAAdx63zlJSUtS6desC81u3bq2UlBSvhAIAAChtqKEAAADcedyUqlu3rj7++OMC8z/66CPVq2f/K2oAAAD+iBoKAADAncdf33v66ad1++23a8mSJa7rISxbtkwLFiwotNACAAAANRQAAMDfeXym1K233qqVK1eqUqVKmjNnjubMmaNKlSrpp59+0i233FIcGQEAAEo8aigAAAB353T7imbNmumDDz7wdhYAAIBSjRoKAADgpCI1pdLT01WuXDnX/59J/noAAAAXOmooAACA0ytSU6pChQpKSUlRTEyMypcvL4fDUWAdY4wcDoecTqfXQwIAAJRE1FAAAACnV6Sm1Pfff6/o6GhJ0sKFC4s1EAAAQGlBDQUAAHB6RWpKtW3b1vX/tWrVUkJCQoFP+owx2rVrl3fTAQAAlGDUUAAAAKfn8d33atWqpQMHDhSYf+jQIdWqVcsroQAAAEobaigAAAB3Hjel8q978HcZGRkKCwvzSigAAIDShhoKAADAXZG+vidJQ4cO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19atW13rHD16VC+88ILef/99LVmyRDt37tSjjz7qWj558mQNGDBA/fr1088//6zPP/9cdevWLfJrKYrw8HBJUnZ2tnbv3q0bbrhBV1xxhdavX6/Jkyfr7bff1tixYyVJKSkpuvPOO9W3b19t2rRJixYtUvfu3WWMKfC8L774olq1aqV//OMfSklJUUpKihISEgqst2bNGt12222644479PPPP2v06NEaOXKk22nskjRhwgQ1b95ca9eu1UMPPaT+/ftr8+bNRX6dAACgIOon6icA58l2VwyA/5g1a5apUKGCCQsLM61btzYjRoww69evdy3/4YcfTLly5czx48fdtqtTp47rk6NWrVqZhx56yG15y5YtPfqkb8eOHSYwMNDs3r3bbZ0OHTqYESNGGGPyPumTZH7//XfX8ldffdVUqVLFNR0fH2+eeOKJQl9rUV5LYXTKJ32ZmZnmoYceMoGBgWb9+vXm3//+t7n44otNbm6uW6aIiAjjdDrNmjVrjCSzffv2Qp/71E/6jCl8P/39k7677rrLXHvttW7rPPbYY+aSSy5xTdeoUcPcc889runc3FwTExNjJk+efNrXCQAAiob6ifoJwLnjTCkALrfeeqv27Nmjzz//XNdff70WLVqkyy+/3PWp0fr165WRkaGKFSu6PhmMiIhQcnKy/vjjD0nSpk2b1LJlS7fnbdWqlUc5fv75ZzmdTl100UVu4yxevNg1jiSVKVNGderUcU3HxcVp//79kqT9+/drz5496tChQ6FjFOW1nM6dd96piIgIRUZG6pNPPtHbb7+tyy67TJs2bVKrVq3crleQmJiojIwM/fnnn2rcuLE6dOigRo0aqWfPnnrzzTd1+PBhj/bN323atEmJiYlu8xITE7V161Y5nU7XvMsuu8z1/w6HQ7Gxsa59BQAAzh31E/UTgHMXZDsAAP8SFhama6+9Vtdee61GjhypBx54QKNGjVKfPn2UkZGhuLg4LVq0qMB2Z7vA5KkCAgIKnHKdk5Pj+v+MjAwFBgZqzZo1CgwMdFsvIiLC9f/BwcFuyxwOh+t5808LP53zeS3//e9/1bFjR0VFRaly5cpnXPdUgYGBmj9/vn788UfNmzdPL7/8sp544gmtXLlStWrVKvLznIvC9lVubm6xjgkAwIWC+on6CcC54UwpAGd0ySWXKDMzU5J0+eWXa+/evQoKClLdunXdHpUqVZIkNWjQQCtXrnR7jhUrVrhNV65cWSkpKa5pp9OpjRs3uqabNm0qp9Op/fv3FxgnNja2SLkjIyNVs2ZNLViwoNDlRXktpxMbG6u6desWKKgaNGig5cuXuxWMy5YtU2RkpKpVqyYpr5hJTEzU008/rbVr1yokJESzZ88udJyQkBC3T+sK06BBgwK3nF62bJkuuuiiAgUpAADwDeqngqifABSGphQASdJff/2la665Rh988IE2bNig5ORkzZw5U88//7xuvvlmSVLHjh3VqlUrdevWTfPmzdP27dv1448/6oknntDq1aslSQ8//LDeeecdTZ06VVu2bNGoUaP0yy+/uI11zTXX6KuvvtJXX32l3377Tf3791dqaqpr+UUXXaS7775bvXr10qeffqrk5GT99NNPGj9+vL766qsiv6bRo0drwoQJeumll7R161YlJSXp5ZdfLvJr8dRDDz2kXbt2adCgQfrtt9/02WefadSoURo6dKgCAgK0cuVK1wVMd+7cqU8//VQHDhxQgwYNCn2+mjVrauXKldq+fbsOHjxY6Cdz//rXv7RgwQKNGTNGW7Zs0bvvvqtXXnnF7YKlAACgeFA/UT8BOE82L2gFwH8cP37cDB8+3Fx++eUmKirKlClTxlx88cXmySefNEePHnWtl56ebgYNGmTi4+NNcHCwSUhIMHfffbfZuXOna51nn33WVKpUyURERJjevXubxx9/3O1CndnZ2aZ///4mOjraxMTEmPHjxxe4pXF2drZ56qmnTM2aNU1wcLCJi4szt9xyi9mwYYMx5uQtjU81e/Zs8/fD2pQpU8zFF1/seo5BgwZ59Fr+Tn+7pfHfnemWxr/++qvp1KmTqVy5sgkNDTUXXXSRefnll13b/v1CnZs3bzZXXnmlCQ8PL9ItjYODg0316tXNf/7zH7dMNWrUMP/973/d5jVu3NiMGjXqtK8DAACcHfUT9ROA8+MwppB7aQKAF40ePVpz5szRunXrbEcBAAAoEaifAFwI+PoeAAAAAAAAfI6mFAAAAAAAAHyOr+8BAAAAAADA5zhTCgAAAAAAAD5HUwoAAAAAAAA+R1MKAAAAAAAAPkdTCgAAAAAAAD5HUwoAAAAAAAA+R1MKAAAAAAAAPkdTCgAAAAAAAD5HUwoAAAAAAAA+9/8Aaa9UjY9TokgAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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f6hFixbKysrSkiVLVKlSpQI/j27dumn+/Pn68MMPXVdbPHHiRIEfDwAAigaH7wEAYFl2dramT5+uVq1aaceOHa7pTZs21bhx47RgwQLddNNNF7z+rVu36qefflLZsmXznX/gwAG3+wkJCW73cxtUfz23UkEcPHhQx48f15VXXplnXq1atVxXdatTp85Fj1+yZEnVqVPHrfHUsGFD1yFazZs3d5uX2wyScrZRamqqYmJi8l33X7fRn+3atUvVqlXL00T565UTc1WoUCHPsqVKldJPP/10zucnSVWqVNGgQYP08ssva9q0abruuuvUoUMH3Xfffec8dC89PV3p6emu+/7+/md9P/zZ9ddf73ai886dO6tGjRrq37+/1q5dm+9jcpuHZ3vN586d6zqULi0tzXVOr/O5//77FRAQoE2bNrnObVVQlSpVcjWxunXrpt69e6tNmzbavHkzh/ABAGARTSkAACz77rvvlJycrOnTp2v69Ol55k+bNu2imlJOp1M33nijnnrqqXznX3HFFW73z3Y1MmPMBWcojIsZ/9prr9WkSZOUkpKiZcuWqXnz5q55zZs31zvvvKOsrCwtXbpUjRo1cl0p0Ol0KiYmJs/J5XMVpIFTUBe7fceNG6eePXvq008/1bx58zRgwACNHTtWK1asUIUKFfJ9zEsvvaTnnnvOdb9SpUrauXNnobOHh4eradOm+vTTT5WRkaGwsLBCr+NCderUSe+9955eeeUVjR079qLW1blzZ02ePFlLlixR27ZtPZQQAAAUFk0pAAAsmzZtmmJiYlxXtPuzWbNmafbs2Zo0aZJCQ0Pz7GHzZ2ebV61aNaWnp6tNmzYey3yuHH9WtmxZlShRIt8rpP3222/y8/NTxYoVPZbr2muv1cSJE/Xtt99q/fr1evLJJ13zmjdvrhMnTujLL7/U9u3bdeedd7rmVatWTd9++60SExMLvedMpUqV9Ouvv8oY47Zdtm3bdsHP43zbt169eqpXr56eeeYZ/fDDD0pMTNSkSZM0atSofJfv3r2761BFSRe1d9Dp06cl5ex9lV9TKnePpLO95mXKlFFYWJhCQ0MVGRmpjRs3Fmjc/v37q3r16nr22WcVFRWlIUOGXPBzyD10zxtXLAQAAGfHOaUAALDoxIkTmjVrlm677TZ17tw5z61fv346duyYPvvsM0lyNQFSUlLyrCssLCzf6V27dtXy5cs1d+7cPPNSUlJcTYbCOFeOP/P399dNN92kTz/91G3PnP379+vDDz/Utddeq8jIyEKPfza5jZeXX35ZWVlZbntKVa5cWXFxcXrxxRfdlpVytlF2drZGjhyZZ52nT58+5/Ns27at9u7d63qNJOnkyZOaPHnyBT+Ps23ftLS0PK9XvXr15Ofnp8zMzLOur2rVqmrTpo3rlpiYeEG5jhw5oh9++EGxsbFnPdQxLi5ODRo00LvvvuuWf+PGjZo3b55uueUWSZKfn586duyozz//XGvWrMmznvz2HBs2bJieeOIJDR06VBMnTjxv3oMHD+Y7/e2335bD4dDVV1993nUAAICiw55SAABY9Nlnn+nYsWNuJ8n+s7/97W8qW7aspk2bprvuuksNGjSQv7+/XnjhBaWmpio4OFg33HCDYmJi1KhRI02cOFGjRo1S9erVFRMToxtuuEFPPvmkPvvsM912223q2bOnGjVqpIyMDP3888+aOXOmdu7c6XbeoIJo1KiRJGnAgAFq27at/P39dffdd+e77KhRozR//nxde+21evTRRxUQEKA333xTmZmZrgaRpyQkJKhixYpavny5KleurPj4eLf5zZs31yeffCKHw+HWmGnRooUeeeQRjR07Vhs2bNBNN92kwMBAbd26VTNmzNArr7yizp075zvmI488otdff13dunXTY489pri4OE2bNs11aGBB9yr7s2rVqqlkyZKaNGmSIiIiFBYWpqZNm+rHH39Uv3791KVLF11xxRU6ffq03n//ffn7+7vt+eUpM2fOVHh4uIwxSkpK0ttvv62jR49q0qRJ53xe//73v9WuXTs1a9ZMDz74oE6cOKHXXntNUVFRGjFihGu5MWPGaN68eWrRooV69+6tWrVqKTk5WTNmzNDSpUtVsmTJfNedmpqqvn37KiIiwu2k8X81evRoLVu2TDfffLMSEhJ05MgRffLJJ1q9erVrzysAAGCRzUv/AQBwuWvfvr0JCQkxGRkZZ12mZ8+eJjAw0Bw6dMgYY8zkyZNN1apVjb+/v5FkFi5caIwxZt++febWW281ERERRpJp0aKFax3Hjh0zQ4cONdWrVzdBQUGmTJkypnnz5uall14yp06dMsYYs2PHDiPJ/Pvf/86TQZIZPny46/7p06dN//79TdmyZY3D4TB/Lin+uqwxxqxbt860bdvWhIeHmxIlSphWrVqZH374wW2ZKVOmGElm9erVbtMXLlzo9jzPp1u3bkaSueeee/LMe/nll40kU6tWrXwf+9Zbb5lGjRqZ0NBQExERYerVq2eeeuopk5SU5FqmRYsWbtvWGGO2b99ubr31VhMaGmrKli1r/vGPf5hPPvnESDIrVqxwe2ydOnXyjNujRw9TqVIlt2mffvqpqV27tgkICDCSzJQpU8z27dtNr169TLVq1UxISIiJjo42rVq1Mt9++22Btk1BDR8+3Ehyu4WFhZlmzZqZjz/+2G3Z3PfNlClT3KZ/++23JjEx0YSGhprIyEjTvn178+uvv+YZa9euXaZ79+6mbNmyJjg42FStWtX07dvXZGZmGmPyf19kZ2ebbt26mYCAADNnzpyzPo958+aZ2267zcTHx5vAwEATERFhEhMTzZQpU4zT6byILQQAADzBYYyXzloKAABwGRk/frwef/xx/fHHHypfvrztOAAAAD6HphQAAMBFOnHihNvJw0+ePKmGDRsqOztbW7ZssZgMAADAd3FOKQAAgIvUqVMnJSQkqEGDBkpNTdUHH3yg3377TdOmTbMdDQAAwGfRlAIAALhIbdu21X//+19NmzZN2dnZql27tqZPn6677rrLdjQAAACfxeF7AAAAAAAA8Do/2wEAAAAAAABw+aEpBQAAAAAAAK+jKQUAAAAAAACvoykFAAAAAAAAr6MpBQAAAAAAAK+jKQUAAAAAAACvoykFAAAAAAAAr6MpBQAAAAAAAK+jKQUAAAAAAACvoykFAAAAAAAAr6MpBQAAAAAAAK+jKQUAAAAAAACvoykFAAAAAAAAr6MpBQAAAAAAAK+jKQUAAAAAAACvoykFAAAAAAAAr6MpBQAAAAAAAK+jKQUAAAAAAACvoykFAAAAAAAAr6MpBQAAAAAAAK+jKQUAAAAAAACvoykFAGcxdepUORwOrVmzxnYUAACASwY1FICCoikFwCfkFi9/vsXExKhVq1b6+uuvL3i9Y8aM0Zw5czwXtBCSk5M1ZMgQtWrVShEREXI4HFq0aJGVLAAAoHgqjjXUggUL1KtXL11xxRUqUaKEqlatqoceekjJyclW8gAoOgG2AwDAnz3//POqUqWKjDHav3+/pk6dqltuuUWff/65brvttkKvb8yYMercubM6duzo+bDnsXnzZr3wwguqUaOG6tWrp+XLl3s9AwAAuDwUpxpq8ODBOnLkiLp06aIaNWpo+/btev311/XFF19ow4YNio2N9XomAEWDphQAn9KuXTs1btzYdf/BBx9UuXLl9L///e+CCiqbGjVqpMOHDys6OlozZ85Uly5dbEcCAADFVHGqoV5++WVde+218vM7c2DPzTffrBYtWuj111/XqFGjLKYD4EkcvgfAp5UsWVKhoaEKCHDvob/00ktq3ry5SpcurdDQUDVq1EgzZ850W8bhcCgjI0Pvvvuua3f2nj17uubv3btXDz74oOLj4xUcHKwqVaqoT58+OnXqlNt6MjMzNWjQIJUtW1ZhYWG64447dPDgwfNmj4iIUHR09IU/eQAAgAt0KddQ119/vVtDKndadHS0Nm3aVMgtAcCXsacUAJ+SmpqqQ4cOyRijAwcO6LXXXlN6erruu+8+t+VeeeUVdejQQffee69OnTql6dOnq0uXLvriiy906623SpLef/99PfTQQ2rSpIl69+4tSapWrZokKSkpSU2aNFFKSop69+6tmjVrau/evZo5c6aOHz+uoKAg11j9+/dXqVKlNHz4cO3cuVPjx49Xv3799NFHH3lpqwAAAJxbca+h0tPTlZ6erjJlylzoJgLgg2hKAfApbdq0cbsfHBysd955RzfeeKPb9C1btig0NNR1v1+/frr66qv18ssvuwqq++67T3//+99VtWrVPAXZ0KFDtW/fPq1cudJtV/fnn39exhi3ZUuXLq158+bJ4XBIkpxOp1599VWlpqYqKirq4p80AADARSruNdT48eN16tQp3XXXXYV6HADfxuF7AHzKhAkTNH/+fM2fP18ffPCBWrVqpYceekizZs1yW+7PxdTRo0eVmpqq6667TuvWrTvvGE6nU3PmzFH79u3diqlcuYVTrt69e7tNu+6665Sdna1du3YV9ukBAAAUieJcQy1ZskTPPfecunbtqhtuuKFQjwXg29hTCoBPadKkiVuR061bNzVs2FD9+vXTbbfd5tol/IsvvtCoUaO0YcMGZWZmupb/azGUn4MHDyotLU1169YtUKaEhAS3+6VKlZKUU8gBAAD4guJaQ/3222+64447VLduXf33v/8t8OMAXBrYUwqAT/Pz81OrVq2UnJysrVu3SpK+//57dejQQSEhIXrjjTf01Vdfaf78+brnnnvy7DbuCf7+/vlOL4qxAAAA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rVq1ynYkrxo7dqyuueYaRUREKCYmRh07dtTmzZttx7LuX//6lxwOhwYOHGg7ihV79+7Vfffdp9KlSys0NFT16tXTmjVrbMfyquzsbA0bNkxVqlRRaGioqlWrppEjR+pyuHbEkiVL1L59e8XHx8vhcGjOnDlu840xevbZZxUXF6fQ0FC1adNGW7dutRO2CJ1rO2RlZWnw4MGqV6+ewsLCFB8fr+7duyspKcle4CJ0vvfEn/3973+Xw+HQ+PHjvZYP3ne5108SNdTZUENRQ12uNRT10xnUUDmon3LQlDqHjz76SIMGDdLw4cO1bt061a9fX23bttWBAwdsR/OaxYsXq2/fvlqxYoXmz5+vrKws3XTTTcrIyLAdzZrVq1frzTff1FVXXWU7ihVHjx5VYmKiAgMD9fXXX+vXX3/VuHHjVKpUKdvRvOqFF17QxIkT9frrr2vTpk164YUX9OKLL+q1116zHa3IZWRkqH79+powYUK+81988UW9+uqrmjRpklauXKmwsDC1bdtWJ0+e9HLSonWu7XD8+HGtW7dOw4YN07p16zRr1ixt3rxZHTp0sJC06J3vPZFr9uzZWrFiheLj472UDDZQP+WghsqLGooaSrp8ayjqpzOooXJQP/0/g7Nq0qSJ6du3r+t+dna2iY+PN2PHjrWYyq4DBw4YSWbx4sW2o1hx7NgxU6NGDTN//nzTokUL89hjj9mO5HWDBw821157re0Y1t16662mV69ebtM6depk7r33XkuJ7JBkZs+e7brvdDpNbGys+fe//+2alpKSYoKDg83//vc/Cwm946/bIT+rVq0yksyuXbu8E8qSs22LP/74w5QvX95s3LjRVKpUyfznP//xejZ4B/VT/qihqKGooXJQQ1E//Rk1VI7LuX5iT6mzOHXqlNauXas2bdq4pvn5+alNmzZavny5xWR2paamSpKio6MtJ7Gjb9++uvXWW93eF5ebzz77TI0bN1aXLl0UExOjhg0bavLkybZjeV3z5s21YMECbdmyRZL0448/aunSpWrXrp3lZHbt2LFD+/btc/sZiYqKUtOmTS/rz04p5/PT4XCoZMmStqN4ndPp1P33368nn3xSderUsR0HRYj66eyooaihqKFyUEPlRf10bpdrDXW51E8BtgP4qkOHDik7O1vlypVzm16uXDn99ttvllLZ5XQ6NXDgQCUmJqpu3bq243jd9OnTtW7dOq1evdp2FKu2b9+uiRMnatCgQfrnP/+p1atXa8CAAQoKClKPHj1sx/OaIUOGKC0tTTVr1pS/v7+ys7M1evRo3XvvvbajWbVv3z5JyvezM3fe5ejkyZMaPHiwunXrpsjISNtxvO6FF15QQECABgwYYDsKihj1U/6ooaihJGqoXNRQeVE/nd3lXENdLvUTTSkUWN++fbVx40YtXbrUdhSv27Nnjx577DHNnz9fISEhtuNY5XQ61bhxY40ZM0aS1LBhQ23cuFGTJk26rAqqjz/+WNOmTdOHH36oOnXqaMOGDRo4cKDi4+Mvq+2A88vKylLXrl1ljNHEiRNtx/G6tWvX6pVXXtG6devkcDhsxwGsoIaihpKooXJRQ6GgLuca6nKqnzh87yzKlCkjf39/7d+/3236/v37FRsbaymVPf369dMXX3yhhQsXqkKFCrbjeN3atWt14MABXX311QoICFBAQIAWL16sV199VQEBAcrOzrYd0Wvi4uJUu3Ztt2m1atXS7t27LSWy48knn9SQIUN09913q169err//vv1+OOPa+zYsbajWZX7+chnZ47cYmrXrl2aP3/+ZfcNnyR9//33OnDggBISElyfn7t27dI//vEPVa5c2XY8eBj1U17UUNRQuaihclBD5UX9lNflXkNdTvUTTamzCAoKUqNGjbRgwQLXNKfTqQULFqhZs2YWk3mXMUb9+vXT7Nmz9d1336lKlSq2I1nRunVr/fzzz9qwYYPr1rhxY917773asGGD/P39bUf0msTExDyXtN6yZYsqVapkKZEdx48fl5+f+0eov7+/nE6npUS+oUqVKoqNjXX77ExLS9PKlSsvq89O6UwxtXXrVn377bcqXbq07UhW3H///frpp5/cPj/j4+P15JNPau7cubbjwcOon86ghspBDXUGNVQOaqi8qJ/cUUNdXvUTh++dw6BBg9SjRw81btxYTZo00fjx45WRkaEHHnjAdjSv6du3rz788EN9+umnioiIcB3THBUVpdDQUMvpvCciIiLPOSDCwsJUunTpy+7cEI8//riaN2+uMWPGqGvXrlq1apXeeustvfXWW7ajeVX79u01evRoJSQkqE6dOlq/fr1efvll9erVy3a0Ipeenq5t27a57u/YsUMbNmxQdHS0EhISNHDgQI0aNUo1atRQlSpVNGzYMMXH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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Test function for TransformerEncoder\n", "def test_transformer_encoder_visualization():\n", " # Parameters for the Transformer Encoder\n", " input_dim = 64\n", " feedforward_dim = 256\n", " num_blocks = 3\n", " num_heads = 4\n", " dropout_prob = 0.1\n", " seq_len = 16\n", " batch_size = 2\n", "\n", " # Random seed for reproducibility\n", " key = jax.random.PRNGKey(42)\n", " rngs = nnx.Rngs(key)\n", "\n", " # Instantiate the TransformerEncoder\n", " encoder = TransformerEncoder(\n", " input_dim=input_dim,\n", " feedforward_dim=feedforward_dim,\n", " num_blocks=num_blocks,\n", " dropout_prob=dropout_prob,\n", " num_heads=num_heads,\n", " rngs=rngs\n", " )\n", "\n", " # Create synthetic input data (batch_size, seq_len, input_dim)\n", " x = jax.random.normal(key, (batch_size, seq_len, input_dim))\n", " \n", " # Optional mask (None in this case for simplicity)\n", " mask = None\n", "\n", " # Forward pass\n", " output = encoder(x, mask=mask)\n", "\n", " # Retrieve attention weights\n", " attention_weights = encoder.get_attention_weights(x, mask=mask)\n", "\n", " # Visualization of attention weights\n", " for block_idx, weights in enumerate(attention_weights):\n", " # weights.shape = (batch_size, num_heads, seq_len, seq_len)\n", " avg_weights = jnp.mean(weights, axis=1) # Average over heads (seq_len, seq_len)\n", "\n", " fig, axes = plt.subplots(1, batch_size, figsize=(12, 4))\n", " fig.suptitle(f'Attention Weights - Block {block_idx + 1}')\n", " \n", " for batch_idx in range(batch_size):\n", " ax = axes[batch_idx] if batch_size > 1 else axes\n", " ax.imshow(avg_weights[batch_idx], cmap='viridis', aspect='auto')\n", " ax.set_title(f'Batch {batch_idx + 1}')\n", " ax.set_xlabel('Sequence Position')\n", " ax.set_ylabel('Sequence Position')\n", " \n", " plt.tight_layout()\n", " plt.show()\n", "\n", "# Run the test\n", "test_transformer_encoder_visualization()\n" ] } ], "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.10.6" } }, "nbformat": 4, "nbformat_minor": 2 }