{ "cells": [ { "cell_type": "code", "execution_count": 57, "id": "d8221be3", "metadata": { "id": "d8221be3" }, "outputs": [], "source": [ "import torch\n", "import numpy as np\n", "import json\n", "import transformers\n", "import matplotlib.pyplot as plt\n", "import IPython\n", "\n", "from math import ceil\n", "\n", "from IPython.display import clear_output\n", "from tqdm.auto import tqdm\n", "\n", "import torch.nn as nn\n", "import torch.nn.functional as F\n", "from torch.utils.data import Dataset, DataLoader\n", "\n", "from transformers import AutoTokenizer, AutoModel, pipeline, DistilBertForSequenceClassification, DistilBertConfig\n", "from sklearn.model_selection import train_test_split" ] }, { "cell_type": "markdown", "id": "ee73f15e-21cd-485e-86f7-37569ee1fe79", "metadata": { "jp-MarkdownHeadingCollapsed": true }, "source": [ "## Берем данные" ] }, { "cell_type": "code", "execution_count": 2, "id": "26f74ee9-9664-4b2b-88f9-dada7be5958e", "metadata": {}, "outputs": [], "source": [ "# import kagglehub\n", "# import shutil\n", "\n", "# # Download latest version\n", "# path = kagglehub.dataset_download(\"neelshah18/arxivdataset\")\n", "\n", "# print(\"Path to dataset files:\", path)\n", "# shutil.move(path, '/home/mosievich.kirill/ysda/ml_3/data')" ] }, { "cell_type": "code", "execution_count": 3, "id": "b620c98a", "metadata": { "id": "b620c98a" }, "outputs": [], "source": [ "import json\n", "file = open('/home/mosievich.kirill/ysda/ml_3/data/2/arxivData.json')\n", "data = json.load(file)" ] }, { "cell_type": "code", "execution_count": 4, "id": "72d730ad", "metadata": { "id": "72d730ad" }, "outputs": [], "source": [ "def trl(container):\n", " return tqdm(range(len(container)))\n", "\n", "def prepared(string):\n", " string = string.replace(\"'\", '\"')\n", " string = string.replace('None', 'null')\n", " return string" ] }, { "cell_type": "code", "execution_count": 5, "id": "FxkFT0jraIdt", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 113, "referenced_widgets": [ "178d4cb384414bf09d3bc169f053c2d6", "349caef343c14390b238b4a2d98ee2a5", "f51995e48cbb481681f9479a8929dc4a", "0b2dae89c43f4703b5ef14bef89fb9eb", "ef788247aa5b4c3f9e33b828eb3d268d", "2fbebcb6032d4e12abeba4aab97526f8", "625e0c35ec2040728fae1034df16c1a9", "a761c844588346cc85342abcfeb3cb24", "ab2bb80581ab49e8922083ee87b86470", "4e2a02ad68c841d1bda0f47f19abb33a", "b53cc88bea8e45ffa60d5c218ac4e188", "3dd75426281c43a39381f38219008b10", "4e721ae401d143a084243e4d94ffed64", "51895fbafc734fba9136d4a1454c1e11", "e89747a6ed64405d993e932ddf219e14", "e764a60a310446deb7acd1c5c93b2c01", "1dd92e188b9e4960b019098b2add2386", "e74975cf464c4993829e58b0950f299b", "ae75b8557be346cabfcd3e8828e56014", "f562dd9eedb6431f96787062c6a7729b", "7f6a9c7b1acb44a08425d061c81d1b69", "cc74d58c54a44f3ea96e55a9294e3de7", "bc6e579196d14c328b6e03216f295442", "e41be6bf8f7e42ad986728f410482c2b", "93d100d9c81f48cdaf2847723b23c8fa", "93538da37dd54a4caf269a78dfb2fa31", "63f0d1f2ae3f4cb2872414ddf29a6a23", "64a8ccfa2af74410af3c0f8b07c61dba", "cfe9261ad31a475cb4873522028d0cbe", "109710f970354497853790fd83bf4e52", "00902257e4bc48f2a2537459841332cc", "f325898d1ecf463aa1846b00c382f439", "d2edf2539dc34bc6af15a80f5ceffab5" ] }, "id": "FxkFT0jraIdt", "outputId": "b6f4e6cc-4ee3-4027-f026-904a36face4e" }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "55b292bdfc3f44cc9a0bf0d49c1825c4", "version_major": 2, "version_minor": 0 }, "text/plain": [ " 0%| | 0/41000 [00:00 percentage or batch == batches: \n", " out_display.update(f'Steps: {int(percentage * size)} / {size} | Loss: {train_loss[-1]}')\n", " percentage += step\n", " \n", " if history_loss is not None:\n", " history_loss.append(np.mean(train_loss))\n", "\n", " return {'train_loss': np.mean(train_loss)}\n", " \n", "def test_loop(model, dataloader, loss_fn, history_loss=None, history_acc=None):\n", "\n", " size = len(dataloader.dataset)\n", " test_loss, correct = 0, 0\n", " batches = ceil(size / dataloader.batch_size)\n", "\n", " val_loss = []\n", " \n", " with torch.no_grad():\n", " for batch, (X, y) in enumerate(tqdm(dataloader, leave=False, desc='Batch: ')):\n", " X, y = X.to(device), y.to(device)\n", " output = F.softmax(model(X).logits, dim=1)\n", " loss = loss_fn(output, y)\n", " test_loss += loss.item()\n", " \n", " val_loss.append(loss.item())\n", " \n", " test_loss /= batches\n", " correct /= size\n", " \n", " print(f\"Validation accuracy: {100 * correct}, Validation loss: {test_loss} \\n\")\n", " \n", " if history_loss is not None:\n", " history_loss.append(np.mean(val_loss))\n", " \n", " return {'val_loss': np.mean(val_loss)}" ] }, { "cell_type": "code", "execution_count": 44, "id": "8b3fdae8", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 472, "referenced_widgets": [ "68ba131771e74fecaf566200b750ae8e", "83377b5315bb4cf9afde69de730eea74", "6206b8e0120b4bd3ace09dd7ef0bcd77", "84bd549d0d4d44a094fb2736349503cd", "0122b93db5a348348a56f6e0d25b0827", "4653fd9d1da54b86966a1abe09ba47da", "61b1307830b74bce84e33554d2623575", "9bf4a5de738147abadee3c752edf535b", "0df7722970ff4e68a8f5d1412805a171", "9e63528f3eca48b790dd5f482315cea6", "ffb17552898a443994a955002e8c514a", "c3f4d29aadea4e1ab11ffccb0db08c27", "ad68795a3cbe441f82285c3e91032c20", "1be907dd6b6c4016aaef4c70def3e4f3", "99bce90a567546d6bfcf4706b8b46c55", "9ea0fa9ce79f4482bd423207106ce6a1", "24c436a3d45441d0bc1a2b4a042d157f", "597262e1e6f347df9699deb2532dc424", "276c882aeb5b43f2858ae248d2f02f31", "31173f5986174bb0ac40a52e5dae42fc", "e87085ed3e2e4b5d8ec61b2522bbec85", "d95a0dd74a8c4f1bb5258ba240586ed8", "ea20efdf75df47deb94f1031beda3c41", "192986bbf2874412ae1905efb9a7dac6", "90d1f38f8fd04cff9257f1f38f95f0d6", "122980e492714a0c84d866095b57ff3f", "e60fe83ac5e748538a7f606415adfb32", "b6f30b5bba5e483299756396336b6ad6", "156a0a62bcbb4f069d39a55e687a50fe", "31cd7947861a46648fb1c2a6ef1be850", "af7bf02a568b4a01a70a4766cf9fde5d", "75cdc2eae37449aa85df8698a694a61d", "70a8af3cec604585a8de776379c76810", "51f689fa9853446eb62900948efd262a", "2efb538bc69d4e7e910fb063c334d835", "bec159416158478f9ec3957d8994c4a8", "79d6c17b27c8424480f63537cc0fff02", "5f13716bd7d645f19476492b23dc43ca", "9bb1e80fa94144d6b7ddc9932b21410d", "7f742abc49364d2b9ba4afb4ba772496", "99b7870f17b84a55805e421fc79c6695", "7d81592e5ecf4bbb9e2ab713c49cad02", "a25facff1e25479fa4b4e3d3bebc600b", "5e62198cf2844c5a9720ce72dec510f2", "2e7fd7a85a2a4f1db8e04fc46709eb9f", "b1dda552522c4e6d95e509526c3449f9", "10e6acd494ec474eb1d490d09ddd8cba", "18f78c41745b43528e94ab4930592a6b", "52507746bfa54bfdbbc27abb0865102d", "c74c90a16f874a87a558965c50ffa84f", "40d1d56121eb4b7e992c87f0eeac946c", "e4372538ef374a5e9f2652275630e8c3", "de5dea4904d54361aee8ec74f7fe91d1", "31bd5a6eeb684842a6025676b408cc36", "4bdba1ab1eba4108926e837fb9bc7310", "692ad0d3c0ed43bbb440809ff0c013eb", "aacd424d56bc4615b9bfb7beb9b0f372", "3a1a2bd494f444268041c33d2d65975b", "57cf30998fd940d395cf58748d708e4e", "8173fabc41bf4a5d868c6dfe1a535551", "496d17e7590d40c3a8c7ad838f10822d", "efd90f05197e4c20b23ce391f9e718ed", "0001cd9576c646e8aa7368fc5c684afb", "ac5171a4163346c59306c44d25d4fb5a", "bf89f946afb54ca09dab67583a5416bd", "e0663841f92c4190b261b4f4d1430652", "5d3ed1d26cd9446385430a9b484526bc", "00c399c9aeab4eda80626973b3e8d412", "964b42a665144213a3aa18972b96d354", "f3b11c41f9de46ea8d6b83c708a8bc02", "dfac6413506a4dc883e697c7dbf622a2", "fb4dc06597c84089abd427a1d637e796", "cf24549e24a244bbb71b9a78ddf8c886", "f56dba0b9ffd41d0a48d3a5826e043a0", "a22137680204478988872a8d71d2a7a4", "5ac3b0753639464bb03313651a49a0f3", "2d5769737c744ac686d5ce30ed85dadc", "93acc469db2d4bbbb33953110f6fa732", "93ffebd455ee47d582cf47bb4ab6c513", "d23dbd4454ad4c7f87307d169c9ebd46", "d5120c81828844efafd9a075f382040a", "ec1bf608a8644fbc899ac1cbc4a1a73d", "ca2f94049c1c49c4a830814e3f7700f8", "e1161471d6ab42a49b2c48bbc345d720", "9284367d36f5469f9cc685cf15235e84", "e0a53a97088d409c85b940b7624b10a8", "889213b2f83c47a391eede2c49286105", "382fb3db26bc4b6db48f2260390e5768", "e08ce1c1f6724366bb122a6fd4a81ab5", "6c7e7f472faf4691a7fe01df344e66b8", "5e5572fe13104182aad1241ce1ac92c1", "7395b3debf414175b7bb90ef9f9351d2", "064f3fb0908e44dcbe915b0aed63a101", "e5ab96160f9c4b238917e943b25e2af3", "d6b365d8c8324ed3a36f76cc75600ee1", "75bab1dc25854fc18cb91d0f9f5c376c", "bce47854ae1245fe94abb6dc1035a644", "c01cc363469b45078a632d84814bb212", "a14f463658284fbcaa6b7b2a88009136", "689098b5df734aa59c631bb1ee6cdbe5", "dd6a61afffb54552a08d940b65a6e307", "fbdf9a0f18c44095b3e7ead8cab0f9bb", "4c48dde4e6b940a88728f64d9a7d98f2", "7b8622ad1a2248d7b7d903544d36addd", "2a378ee4b7e442b9b144ecdfc03c5121", "65d8c0788fcc49daae6919ba23e73d8c", "e53563ada626478a8589a18dadde4db9", "132273595e414dbfaf2d160b9a8320dd", "0fd8f0729a454a149dc1002333bc5655", "63f9ded0af9d475ba6f307c5356417a1", "5b2b0c8f58c24ec3aa96681800258c98", "785cf6980ebd4f8c9a59dcbf21a99f06", "acfcebeadd9b425aa2812a257b52c679", "119d474e6bcd4d0f917401c2cfb45038", "86711e122de646018d83945602efbd98", "6df53b6977d4413d9eb55c6252a8b1f4", "da8a02fda04041119be961924ae16e12", "803fcb41f57e42dfbb9037b068d9c601", "f8de56c528164101a48fd3dd579fa159", "52a3e3ec18594e37ba4923e7ff8a5eae", "69202ea602e5480da3cae7219097b91d", "d5955ca2f117493a99e83e827398d033", "66ea9b8047154e61a0ec575a321a1149", "e8a59e07110f444fb94d8aad4d136f61", "3a9021fabfdf448baabc8cd357720f2a", "9607c734f63d4163a4db68de12f25046", "b4800e4cd77d4a53aa6dc5d91ff061f5", "523e5436327b44d6b928d7affe5caf25", "b4e67cbc4ffc4a928c72577dbeeeeabd", "296f9f2bee7c483bbc9fc77db7d88530", "50c1aba424b14941adf1e25a0e85c0a7", "5c7dfd18326d43f2bb8f4ed8b3b0e7c2" ] }, "id": "8b3fdae8", "outputId": "0ab7e973-93d3-4d86-ec4b-0264d8afa758" }, "outputs": [ { "data": { "image/png": "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Xtq3b88rr7wCwK5duwAYP348b7/9Ns2aNaN+/fqkpqZy22238dprr+Hp6cmnn37KgAEDSExMvOhOFwB/+9vf+Pvf/85bb73F+++/z/Dhw0lOTiYwMLBqPmw51INUzXh7uDOip31obcbqAxVO8CIiIkbw9/fHw8MDb29vwsLCCAsLc6xe/corr3DTTTfRvHlzAgMD6dSpE4899hjt27enZcuWvPrqqzRv3vwPe4QefPBBhg0bRosWLXj99dfJzc39w43tr5R6kKqhB3pFMWvtQX45nE3CwZP0ah5sdEkiImKAunXc+O2V/oa995Xq1q1bqee5ubm8/PLLfPfddxw9epSSkhLOnDlDSkrKJa/TsWNHx599fHzw8/MjIyPjiuu7FAWkaijI15Mh3cL5NCGZGasPKiCJiNRSJpOpQsNc1VXZu9HGjh1LfHw8b7/9Ni1atKBu3boMHjzYsQzPxZTdJ9VkMjnWL3QWDbFVU49c2wyzCdbsPc6utGyjyxEREbkoDw8PLBbLH7Zbt24dDz74IIMGDaJDhw6EhYWRlJTk/AIrQQGpmooI8ub2jo0AmLXmoMHViIiIXFxUVBQbN24kKSmJEydOXLR3p2XLlixYsIAdO3bw888/c9999zm9J6iyFJCqsceubwbA4l+OkpqZb3A1IiIi5Rs7dixubm60bduWBg0aXHRO0T/+8Q/q169Pr169GDBgAP3796dLly5XudqK0UKRleSshSLLuv9fG1m77wQPxEXyt7vaO+19RETEWK68UGR1o4Uia4HHezcHYN6WVDLzLj2JTURERKqGAlI116t5EB0a+1NQbOWT9UlGlyMiIlIrKCBVcyaTicd62+cifZKQRH5RicEViYiI1HwKSC7g1vYNiQzyJiu/mC83pxpdjoiISI2ngOQC3MwmRl1n70WavfYQxZbqeUukiIhITaGA5CIGd21CsK8HR7LO8N0vR40uR0REpEZTQHIRXnXceLBXFKBNbEVERJxNAcmF3N8zCm8PN/akn2b13uNGlyMiIlJjKSC5EH/vOgzrEQHYe5FERERqgqioKN59912jyyhFAcnFjLy2Ke5mExsOZrIjNcvockRERGokBSQX0yigLnfG2DexnaleJBEREadQQHJB57YfWbornYPHcw2uRkREarNZs2bRqFEjrNbSS9DcddddPPzwwxw4cIC77rqL0NBQ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9VYiIiI4ffo0c+fOZdWqVfzwww9Gl+ZS6tWrd8H8Nx8fH4KCgjQv7jKMHTuWAQMGEBkZSVpaGpMmTcLNzY1hw4YZXZpLefbZZ+nVqxevv/46Q4YMYdOmTcyaNYtZs2Zd/WJsIpdh5cqVNuCCxwMPPGB0aS6jvO8PsH388cdGl+ZSHn74YVtkZKTNw8PD1qBBA9uNN95o+/HHH40uq0bo3bu3bfTo0UaX4VKGDh1qa9iwoc3Dw8PWuHFj29ChQ2379+83uiyX9O2339rat29v8/T0tEVHR9tmzZplSB0mm81mu/qxTERERKT60iRtERERkTIUkERERETKUEASERERKUMBSURERKQMBSQRERGRMhSQRERERMpQQBIREREpQwFJREREpAwFJBGRKrJq1SpMJhNZWVlGlyIiV0gBSURERKQMBSQRERGRMhSQRKTGsFqtTJ48maZNm1K3bl06derEV199BZwf/vruu+/o2LEjXl5e9OzZk507d5a6xn//+1/atWuHp6cnUVFRTJkypdT5wsJCxo0bR3h4OJ6enrRo0YJ//etfpdps3bqVbt264e3tTa9evUhMTHTuBxeRKqeAJCI1xuTJk/n000+ZMWMGu3bt4tlnn+XPf/4zq1evdrR57rnnmDJlCps3b6ZBgwYMGDCA4uJiwB5shgwZwr333suvv/7Kyy+/zIsvvsicOXMcrx8xYgSff/45U6dOZffu3cycORNfX99SdTz//PNMmTKFLVu24O7uzsMPP3xVPr+IVB2TzWazGV2EiMiVKiwsJDAwkGXLlhEXF+c4/sgjj5Cfn8+jjz5K3759+eKLLxg6dCgAmZmZNGnShDlz5jBkyBCGDx/O8ePH+fHHHx2v/9///V++++47du3axd69e2ndujXx8fH069fvghpWrVpF3759WbZsGTfeeCMAS5Ys4fbbb+fMmTN4eXk5+VsQkaqiHiQRqRH2799Pfn4+N910E76+vo7Hp59+yoEDBxztfh+eAgMDad26Nbt37wZg9+7dXHPNNaWue80117Bv3z4sFgs7duzAzc2N3r17X7KWjh07Ov7csGFDADIyMq74M4rI1eNudAEiIlUhNzcXgO+++47GjRuXOufp6VkqJFVW3bp1K9SuTp06jj+bTCbAPj9KRFyHepBEpEZo27Ytnp6epKSk0KJFi1KP8PBwR7sNGzY4/nzq1Cn27t1LmzZtAGjTpg3r1q0rdd1169bRqlUr3Nzc6NChA1artdScJhGpmdSDJCI1Qr169Rg7dizPPvssVquVa6+9luzsbNatW4efnx+RkZEAvPLKKwQFBREaGsrzzz9PcHAwAwcOBOB//ud/6N69O6+++ipDhw4lISGBadOm8c9//hOAqKgoHnjgAR5++GGmTp1Kp06dSE5OJiMjgyFDhhj10UXECRSQRKTGePXVV2nQoAGTJ0/m4MGDBAQE0KVLFyZOnOgY4nrjjTcYPXo0+/btIyYmhm+//RYPDw8AunTpwpdffslLL73Eq6++SsOGDXnllVd48MEHHe8xffp0Jk6cyF/+8hdOnjxJREQEEydONOLjiogT6S42EakVzt1hdurUKQICAowuR0SqOc1BEhERESlDAUlERESkDA2xiYiIiJShHiQRERGRMhSQRERERMpQQBIREREpQwFJREREpAwFJBEREZEyFJBEREREylBAEhERESlDAUlERESkjP8HpmELZ3qB05IAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "device = 'cuda'\n", "\n", "\n", "loss_fn = F.binary_cross_entropy\n", "optimizer = torch.optim.Adam(classifier.parameters(), lr=1e-4)\n", "epochs = 6\n", "\n", "train_loss = []\n", "val_loss = []\n", " \n", "for epoch in range(epochs):\n", " print(f\"Epoch: {epoch + 1}\")\n", " \n", " train_loop(classifier, base_train_dl, loss_fn, optimizer, history_loss=train_loss)\n", " test_loop(classifier, base_test_dl, loss_fn, history_loss=val_loss)\n", " \n", " clear_output()\n", " plot_learning_process(train_loss, val_loss)" ] }, { "cell_type": "code", "execution_count": 45, "id": "81d6a077-eaf4-4729-9843-f2955529357b", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkgAAAGwCAYAAABSN5pGAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAA9hAAAPYQGoP6dpAABZPklEQVR4nO3dd3xUVf7/8dfMpHeSkAahl1ATpQRQF1xBRKToIhHZBev63VUX5YcL2LCsoqusruKCuq7YkKKICIjSLAhKCV06EgJptHTSZub3x5DBhERCyOSmvJ+Px30wuXPunc+Nyrw959xzTXa73Y6IiIiIOJmNLkBERESkrlFAEhERESlHAUlERESkHAUkERERkXIUkERERETKUUASERERKUcBSURERKQcN6MLqK9sNhspKSn4+/tjMpmMLkdERESqwG63k5OTQ1RUFGZz5f1ECkjVlJKSQnR0tNFliIiISDUkJyfTvHnzSt9XQKomf39/wPELDggIMLgaERERqYrs7Gyio6Od3+OVUUCqptJhtYCAAAUkERGReuZi02M0SVtERESkHAUkERERkXIUkERERETKqRMB6Y033qBVq1Z4eXkRHx/Pxo0bf7P9woULiYmJwcvLi27durF8+XLne8XFxUyePJlu3brh6+tLVFQU48aNIyUlpcw5hg8fTosWLfDy8iIyMpI//elPF7QRERExgtVqpaCgQFs1NqvVWiP/DEx2u91eI2eqpvnz5zNu3Dhmz55NfHw8r776KgsXLmTfvn2EhYVd0H79+vX87ne/Y/r06dx0003MnTuXF198kcTERLp27UpWVhajRo3i3nvvJTY2ljNnzjBhwgSsViubN292nueVV16hb9++REZGcvz4cSZNmuQ8f1VkZ2cTGBhIVlaWJmmLiEiNsNvtpKWlkZmZaXQp9VpQUBAREREVTsSu6ve34QEpPj6eXr16MXPmTMCxAGN0dDQPPvggU6ZMuaB9QkICeXl5LF261LmvT58+xMXFMXv27Ao/Y9OmTfTu3ZukpCRatGhRYZslS5YwcuRICgsLcXd3v2jdCkgiIlLTUlNTyczMJCwsDB8fHy1EfInsdjv5+flkZGQQFBREZGTkBW2q+v1t6G3+RUVFbNmyhalTpzr3mc1mBg4cyIYNGyo8ZsOGDUycOLHMvsGDB7N48eJKPycrKwuTyURQUFCF758+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ZMgQWrRoQU5ODnPnzuWbb77hq6++Mro0l/D3979gPpmvry8hISENdp7ZpEmTGDZsGC1btiQlJYVp06ZhsVgYM2aM0aW5xMMPP0y/fv14/vnnGT16NBs3buStt97irbfeMro0l7HZbLz77ruMHz++QS/hAI47b5977jlatGhBly5d2Lp1K//617+46667ar8YuzR6a9eutQMXbOPHjze6tBpX0XUC9nfffdfo0lzirrvusrds2dLu4eFhb9q0qf26666zf/3110aXVav69+9vnzBhgtFluExCQoI9MjLS7uHhYW/WrJk9ISHBfvDgQaPLcqkvvvjC3rVrV7unp6c9JibG/tZbbxldkkt99dVXdsC+b98+o0txuezsbPuECRPsLVq0sHt5ednbtGljf+yxx+yFhYW1XovJbjdgeUoRERGROkzrIImIiIiUo4AkIiIiUo4CkoiIiEg5CkgiIiIi5SggiYiIiJSjgCQiIiJSjgKSiIiISDkKSCIiIiLlKCCJiNSQb775BpPJRGZmptGliMhlUkASERERKUcBSURERKQcBSQRaTBsNhvTp0+ndevWeHt7ExsbyyeffAKcH/5atmwZ3bt3x8vLiz59+rBr164y5/j000/p0qULnp6etGrVihkzZpR5v7CwkMmTJxMdHY2npyft2rXjnXfeKdNmy5Yt9OzZEx8fH/r168e+fftce+EiUuMUkESkwZg+fTrvv/8+s2fPZvfu3Tz88MP88Y9/5Ntvv3W2eeSRR5gxYwabNm2iadOmDBs2jOLiYsARbEaPHs1tt93Gzp07eeqpp3jiiSeYM2eO8/hx48bx8ccf89prr7Fnzx7efPNN/Pz8ytTx2GOPMWPGDDZv3oybmxt33XVXrVy/iNQck91utxtdhIjI5SosLCQ4OJhVq1bRt29f5/577rmH/Px8/vznP3Pttdcyb948EhISADh9+jTNmzdnzpw5jB49mrFjx3LixAm+/vpr5/F///vfWbZsGbt372b//v107NiRlStXMnDgwAtq+Oabb7j22mtZtWoV1113HQDLly9n6NChnD17Fi8vLxf/FkSkpqgHSUQahIMHD5Kfn8+gQYPw8/Nzbu+//z6HDh1ytvt1eAoODqZjx47s2bMHgD179nDVVVeVOe9VV13FgQMHsFqtbNu2DYvFQv/+/X+zlu7duztfR0ZGApCRkXHZ1ygitcfN6AJERGpCbm4uAMuWLaNZs2Zl3vP09CwTkqrL29u7Su3c3d2dr00mE+CYHyUi9Yd6kESkQejcuTOenp4cPXqUdu3aldmio6Od7X788Ufn6zNnzrB//346deoEQKdOnfjhhx/KnPeHH36gQ4cOWCwWunXrhs1mKzOnSUQaJvUgiUiD4O/vz6RJk3j44Yex2WxcffXVZGVl8cMPPxAQEEDLli0BeOaZZwgJCSE8PJzHHnuM0NBQRo4cCcD/+3//j169evHss8+SkJDAhg0bmDlzJv/5z38AaNWqFePHj+euu+7itddeIzY2lqSkJDIyMhg9erRRly4iLqCAJCINxrPPPkvTpk2ZPn06hw8fJigoiCuvvJJHH33UOcT1wgsvMGHCBA4cOEBcXBxffPEFHh4eAFx55ZUsWLCAJ598kmeffZbIyEieeeYZ7rjjDudnzJo1i0cffZS//vWvnDp1ihYtWvDoo48acbki4kK6i01EGoXSO8zOnDlDUFCQ0eWISB2nOUgiIiIi5SggiYiIiJSjITYRERGRctSDJCIiIlKOApKIiIhIOQpIIiIiIuUoIImIiIiUo4AkIiIiUo4CkoiIiEg5CkgiIiIi5SggiYiIiJTz/wFv6vFiXKklyAAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "for epoch in range(2):\n", " print(f\"Epoch: {epoch + 1}\")\n", " \n", " train_loop(classifier, base_train_dl, loss_fn, optimizer, history_loss=train_loss)\n", " test_loop(classifier, base_test_dl, loss_fn, history_loss=val_loss)\n", " \n", " clear_output()\n", " plot_learning_process(train_loss, val_loss)" ] }, { "cell_type": "code", "execution_count": 50, "id": "pJMF9lg16z2U", "metadata": { "id": "pJMF9lg16z2U" }, "outputs": [], "source": [ "torch.save(classifier.state_dict(), 'pytorch_model_w.bin')" ] }, { "cell_type": "code", "execution_count": 51, "id": "j8BGaz9-Ni45", "metadata": { "id": "j8BGaz9-Ni45" }, "outputs": [], "source": [ "classifier.save_pretrained('my_model')" ] }, { "cell_type": "code", "execution_count": 58, "id": "4cb346f1-a844-45cd-b8c5-6599d6130372", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": 60, "id": "ad3de351-65e3-489f-9ed5-36520ba6bf40", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/tmp/ipykernel_42443/2240823436.py:2: FutureWarning: You are using `torch.load` with `weights_only=False` (the current default value), which uses the default pickle module implicitly. It is possible to construct malicious pickle data which will execute arbitrary code during unpickling (See https://github.com/pytorch/pytorch/blob/main/SECURITY.md#untrusted-models for more details). In a future release, the default value for `weights_only` will be flipped to `True`. This limits the functions that could be executed during unpickling. Arbitrary objects will no longer be allowed to be loaded via this mode unless they are explicitly allowlisted by the user via `torch.serialization.add_safe_globals`. We recommend you start setting `weights_only=True` for any use case where you don't have full control of the loaded file. Please open an issue on GitHub for any issues related to this experimental feature.\n", " state_dict = torch.load('YSDA_ML/pytorch_model.bin')\n" ] } ], "source": [] }, { "cell_type": "code", "execution_count": 61, "id": "a8bee1ec-c5d3-4254-b9cb-139d29a104d5", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 61, "metadata": {}, "output_type": "execute_result" } ], "source": [] }, { "cell_type": "markdown", "id": "b20daefd", "metadata": { "id": "b20daefd" }, "source": [ "## Что можно доделать?" ] }, { "cell_type": "markdown", "id": "47ba5a18-5c78-44f4-95d5-f55aa7a75fb2", "metadata": {}, "source": [ "- Взять более сильную модель 1b deepseek (у меня не завелся на hf c ходу, хотя время на обучения потратил, правда через lora adapter)\n", "- Взять большую обучающую выборку | нагенерировать синтетику через ChatGPT/DeepSeek\n", "- Большую модель можно квантизовать + спарсификация, что в терии поможет ее прогонять на мобильных устройствах\n", "- Нормальный deploy: triton or vllm " ] }, { "cell_type": "code", "execution_count": 55, "id": "470f3659-b94a-409d-b682-3acbf68210d2", "metadata": {}, "outputs": [], "source": [ "# import kagglehub\n", "\n", "# # Download latest version\n", "# path = kagglehub.dataset_download(\"Cornell-University/arxiv\",)\n", "\n", "# print(\"Path to dataset files:\", path)" ] }, { "cell_type": "code", "execution_count": 57, "id": "60478d78", "metadata": { "id": "60478d78" }, "outputs": [], "source": [ "# big_data = []\n", "# with open('./data/226/arxiv-metadata-oai-snapshot.json') as big_file:\n", "# for line in tqdm(big_file):\n", "# big_data.append(json.loads(line))\n", "# if len(big_data) >= 10**5:\n", "# break" ] }, { "cell_type": "code", "execution_count": 58, "id": "fc91b965", "metadata": { "id": "fc91b965" }, "outputs": [], "source": [ "# titles = [big_data[i]['title'] for i in trl(big_data)]\n", "# summaries = [big_data[i]['abstract'] for i in trl(big_data)]\n", "# tags = [big_data[i]['categories'].split() for i in trl(big_data)]" ] }, { "cell_type": "code", "execution_count": 59, "id": "1c812bcd", "metadata": { "id": "1c812bcd" }, "outputs": [], "source": [ "# for i, line in enumerate(tags):\n", "# line = list(set(line) & possible_tags)\n", "# int_line = []\n", "# for tag in line:\n", "# int_line.append(tag_to_id[tag])\n", "# if len(int_line) == 0:\n", "# int_line.append(155)\n", "# tags[i] = int_line" ] } ], "metadata": { "accelerator": "GPU", "colab": { "provenance": [] }, "gpuClass": "standard", "kernelspec": { "display_name": "localization_wb", "language": "python", "name": "localization_wb" }, "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.12" }, "widgets": { "application/vnd.jupyter.widget-state+json": { "state": { "00e2e5dae44b46498bb5ef3a75492042": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "layout": "IPY_MODEL_4539a2db28ca4b64995240c4c30ed7d5", "max": 33, "style": "IPY_MODEL_808c847c39b0472e8ec5ca603c78fa1f", "value": 33 } }, "015c3eec171e40ac85ad50e6ff92fcd4": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "0267b03af57141d9bf92c1baabb10bab": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_3ac9c82cf9fe4976ad6fa1168a27329e", "style": "IPY_MODEL_35221a5619604e9c9831ff544e6a86ab", "value": " 32/33 [00:25<00:00,  1.20it/s]" } }, "055d708b21804391b596ecfd8d8b3fe3": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "057b56112ca14a489f8fbd03b65d67cb": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "05884f4850254b79bd1c4d08e35d22c0": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "0b9093e788f24b61b9221c60f4656685": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "0c629367da584293a3da38d850de3836": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "0c8f4d5cc5bd4ba894add0387246d191": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "0da8ea0a92b446f486cd6020f658499f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "0dd98e3a731a457c9bd850e5a94bb2a7": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "0f9365c1973144488d6f34a2a286ad1e": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_87546ac7ee104e2f8011652ebbed7a8c", "style": "IPY_MODEL_a79592a686dd4089bf42f2d082923645", "value": " 289/289 [03:50<00:00,  1.51it/s]" } }, "105857d88a1a4bfaa6ebf4a4650255c8": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "119d800feb7942cf8d7d164472ea2b79": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "12f04e9e3a6c4629b0a1a4a664e440a6": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "13144aad2baf4141b04a784e63614bc0": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "bar_style": "success", "layout": "IPY_MODEL_415c664e3e22454187c73a0652d78930", "max": 41000, "style": "IPY_MODEL_d57ec69aac1b4cf69714767f07f5bf96", "value": 41000 } }, "14b9270ab5e7492599b61da0de552450": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "14ea4cb70ab04df89faf6f9132634b00": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "16af4f6285e5445f9fe4ef4f7dcbc3a7": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "layout": "IPY_MODEL_51aa4fe2c06c4f17a4d6de3dd8cc08b0", "max": 33, "style": "IPY_MODEL_055d708b21804391b596ecfd8d8b3fe3", "value": 33 } }, "1af509b6935444008b3b789bc52aaaab": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "layout": "IPY_MODEL_f0d7f3eae55c4447af7f11c4f3fb7bf8", "max": 289, "style": "IPY_MODEL_b54dfa1397664513b7fb01e4f38b85a7", "value": 289 } }, "1ee06ad835014eb49c6b9a4c27c8fba9": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "21c2e3d4dd2f4526b24cbbb7d002ab37": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "233aefcc268c4b9a87fef01e708488be": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_4e389bf9396c49649db60c29a5c809fc", "style": "IPY_MODEL_14ea4cb70ab04df89faf6f9132634b00", "value": "Batch:  97%" } }, "234c8b66eb0c4b8ea5a718aaca6e42e1": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "layout": "IPY_MODEL_66fc2ccbeff647a696cb6ce4693bcc22", "max": 289, "style": "IPY_MODEL_526840937ca64e67ac5bcd0382c27ec6", "value": 289 } }, "237df1095bc847ed8b8cd838a866fce3": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "visibility": "hidden" } }, "2399682816eb4fcc87b0c683973553a8": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "layout": "IPY_MODEL_e461cdc9d8844f8fb45d84462920cd95", "max": 33, "style": "IPY_MODEL_057b56112ca14a489f8fbd03b65d67cb", "value": 33 } }, "23de491d126b414d856b4464f6cb5358": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_c1abbdf88d384142b1c4c3be03fe0288", "style": "IPY_MODEL_75dafbc6045943a98f527b8694e5d126", "value": " 32/33 [00:25<00:00,  1.24it/s]" } }, "2665affd65dd4172a873712cfc2fdb35": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "28bd9e7c6f3c433fa2809381893c0fe4": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "layout": "IPY_MODEL_7c226f559c7d4c54a21cbadab00289f5", "max": 289, "style": "IPY_MODEL_526e30adfab7476c82702bc906618162", "value": 289 } }, "2a20bfe665914f80a28a786ee42fccfe": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "3047564dee79452a8e6761864ab842f9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_3b4428f9b1ad489db6735e12350529f4", "style": "IPY_MODEL_553ddc610a864aa9858fa4dfcf0d7db0", "value": "Batch: 100%" } }, "3314dc4211224dddbb857253ae6e5e69": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "visibility": "hidden" } }, "337a48809b634b1eb8dbeac43ce75199": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "visibility": "hidden" } }, "34065b95555a437bbf18f4b971415fb7": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "visibility": "hidden" } }, "35221a5619604e9c9831ff544e6a86ab": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "359400ccdb854e1690f20fba3f75c1f9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_feb1491628b34a3d9d76654a89f28d98", "style": "IPY_MODEL_0b9093e788f24b61b9221c60f4656685", "value": " 32/33 [00:25<00:00,  1.24it/s]" } }, "36c114d62dda4be38e694db0b86e46d5": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "3780c5b5ff284b43a0ec56242951c07c": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "399a1dbd066f40fc97933bf5c29e36f0": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "3ac9c82cf9fe4976ad6fa1168a27329e": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "3b4428f9b1ad489db6735e12350529f4": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "3c6dcb2b308449e595a2cf7d64219d86": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "3f5850f0452345a08c92b8b979987b19": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "415c664e3e22454187c73a0652d78930": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "416da69400f94bcf85e7a766c7425c2b": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "420b7f393c254447a37fc092e62ca604": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "4539a2db28ca4b64995240c4c30ed7d5": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "45b9b14346aa4957abf1b75f3363f2c9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_6b4e21127def406ab975ff0fe1379614", "style": "IPY_MODEL_ce17822fd22a4e588d8eaab8b28b933f", "value": "Batch: 100%" } }, "4698c34a90e24c80b572624e2191f6ef": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "4762f78d069b45d081610218eb13be70": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "layout": "IPY_MODEL_7260483caab74ac2834321f7a59986d8", "max": 33, "style": "IPY_MODEL_a8c66e5df15545958fc9cb1edb227858", "value": 33 } }, "4b14d91ad2154880adc95838f80ec814": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_c23edc897aa0475d895094fb658692d7", "style": "IPY_MODEL_9356d91f389e47cebbe864a8de46de5f", "value": " 289/289 [03:50<00:00,  1.62it/s]" } }, "4cef604daa57400c89d95fd3dce3760b": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "visibility": "hidden" } }, "4e389bf9396c49649db60c29a5c809fc": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "5053111b9c84413a9e1eaeae6e9316cb": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "5098f03fa0cc423b9c1bb39f9dd80731": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "51aa4fe2c06c4f17a4d6de3dd8cc08b0": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "526840937ca64e67ac5bcd0382c27ec6": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "526e30adfab7476c82702bc906618162": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "531fc5ec07da43c687c8adad80166386": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "layout": "IPY_MODEL_77f46e5085f64032bfac1be05e80ab6b", "max": 33, "style": "IPY_MODEL_a2a78afc4d904bf1a4d06654065a8dc0", "value": 33 } }, "53325138febc4947bed3b058c211b1cd": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_a51f30bdc6494964a1ccffc57644e825", "style": "IPY_MODEL_a5c9ec1bedc3431d9984296330c47815", "value": "Batch:  97%" } }, "53a2ca223c4140e4a3f0a15a7a32e434": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "553ddc610a864aa9858fa4dfcf0d7db0": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "55b292bdfc3f44cc9a0bf0d49c1825c4": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HBoxModel", "state": { "children": [ "IPY_MODEL_e991ab943fcf4a1e95ff46b20d9fd1f2", "IPY_MODEL_13144aad2baf4141b04a784e63614bc0", "IPY_MODEL_9bb85aeeab7840f48c12628694723bf5" ], "layout": "IPY_MODEL_a836e29bbb184d07bc619a4506c4f7b2" } }, "55c6221fd0394765bea4a37abfed068b": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "58fd855ed2ac4b0ead6738c3c207aabd": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "596e757a0de04e509052dfbdf2e0e888": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "5a31516afc934dd59a75564bdb6e4c24": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_db3b1f9feb7340b2aadb98ce3bad094c", "style": "IPY_MODEL_2a20bfe665914f80a28a786ee42fccfe", "value": " 289/289 [03:58<00:00,  1.53it/s]" } }, "5b761ed73f5342f5bf7883d9d7aafdd0": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "visibility": "hidden" } }, "5ecb12c1a235414ebc7bf2f345ab5d8c": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "605b34bd943f48c398846f28b8731631": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_7c583a2c8fe7473daf14ecb84bbffa8e", "style": "IPY_MODEL_0c629367da584293a3da38d850de3836", "value": "Batch: 100%" } }, "6091ae6b1ff24624b96e9110e5573f68": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_1ee06ad835014eb49c6b9a4c27c8fba9", "style": "IPY_MODEL_3780c5b5ff284b43a0ec56242951c07c", "value": " 32/33 [00:26<00:00,  1.21it/s]" } }, "60969d6e3bb84ea38b2bec288c6705a7": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "64a936703a494397aaa5c1a58add3419": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "64b38d339b084192ac6559b83cc25e14": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "visibility": "hidden" } }, "66fc2ccbeff647a696cb6ce4693bcc22": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "69876e022cf9471e80876f2d419b4540": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_a47c67911a9a484e8815dac559caffe0", "style": "IPY_MODEL_fe8eb722ad6644a2bb20dc64f2ad0e86", "value": "100%" } }, "6b4e21127def406ab975ff0fe1379614": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "709a0244909a4fd8ad80b1d788a3ca02": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_a143ce83c0e140769543707fea37d086", "style": "IPY_MODEL_e0482b472bc74f8ea0b32c6854c31629", "value": " 41000/41000 [00:00<00:00, 1739160.63it/s]" } }, "7165c6e9206b4d53bbf3528671ffcb15": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "71eece578b73402d851797bd76025785": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "layout": "IPY_MODEL_05884f4850254b79bd1c4d08e35d22c0", "max": 289, "style": "IPY_MODEL_12f04e9e3a6c4629b0a1a4a664e440a6", "value": 289 } }, "7260483caab74ac2834321f7a59986d8": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "7274ffadc3ad4907b4aa038a0d24bf24": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "73e162909f2346e68e55ffd6b75f6754": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "75dafbc6045943a98f527b8694e5d126": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "779f79b3c89c43718a5671f9e9fb72a2": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "77f46e5085f64032bfac1be05e80ab6b": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "7b667ca23cdd46b6b44d65925d02936c": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "visibility": "hidden" } }, "7c226f559c7d4c54a21cbadab00289f5": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "7c583a2c8fe7473daf14ecb84bbffa8e": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "7cc5147039ff4d189dcf553ff6ed0be3": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_7d7e58a6d5a5405897f73b87eae394db", "style": "IPY_MODEL_3f5850f0452345a08c92b8b979987b19", "value": " 289/289 [03:48<00:00,  1.61it/s]" } }, "7d7e58a6d5a5405897f73b87eae394db": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "7f09942b121d4b1b89b9dfe4ca3cbc73": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_c961098f78304ad6aa85fab8a8d48009", "style": "IPY_MODEL_7f3e63099b044b03970bd31adc3ced23", "value": "100%" } }, "7f3e63099b044b03970bd31adc3ced23": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "8074ff0f809c45d4936328aeacff76b6": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HBoxModel", "state": { "children": [ "IPY_MODEL_7f09942b121d4b1b89b9dfe4ca3cbc73", "IPY_MODEL_f973f92045544e72b05373c8c4434ba0", "IPY_MODEL_fb39cdf0d5704fdd9cf4b756f9199067" ], "layout": "IPY_MODEL_9758115195b843f5afbc023561cfe94f" } }, "808c847c39b0472e8ec5ca603c78fa1f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "82b1e24d0a074f8a85c8831cf4020605": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_b0d4b159bdf44066bb59515bde97a2df", "style": "IPY_MODEL_dad5cd803fb64fa089174b0de5309d23", "value": " 32/33 [00:25<00:00,  1.29it/s]" } }, "835fd602447549cbaead0abb6ff29335": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "layout": "IPY_MODEL_2665affd65dd4172a873712cfc2fdb35", "max": 289, "style": "IPY_MODEL_58fd855ed2ac4b0ead6738c3c207aabd", "value": 289 } }, "85d7bfcf7a6641deb93bed4b0541c95a": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "86cfd1d5f5294530b88eac86d9b18d63": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "87546ac7ee104e2f8011652ebbed7a8c": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "8d62e637837545798fde05c85d97045b": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "layout": "IPY_MODEL_0c8f4d5cc5bd4ba894add0387246d191", "max": 33, "style": "IPY_MODEL_dd4c4c21af56473e891e532bcf6abb35", "value": 33 } }, "8e6eced5d5024c4a8f91e90e8c0cebfd": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "8fe97b2cfe97485b923ad3e0d680b264": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_86cfd1d5f5294530b88eac86d9b18d63", "style": "IPY_MODEL_105857d88a1a4bfaa6ebf4a4650255c8", "value": "Batch: 100%" } }, "923b75f45a5a45189d0eecd600383cc2": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "9356d91f389e47cebbe864a8de46de5f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "94269c9c29754a8480fc9675a85b2866": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "visibility": "hidden" } }, "9573ca4230814910adcf96b6d33c6f79": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_ba41d7a202ea48328bc0a31cdc410d2b", "style": "IPY_MODEL_b7537a99b10647d9a5a8c3f362cdce7f", "value": " 289/289 [03:55<00:00,  1.54it/s]" } }, "9758115195b843f5afbc023561cfe94f": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "9a832dc42f5d418980a21d0c776f9eb3": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "9a8f4d45167540cda145cf1ee638f250": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "9bb85aeeab7840f48c12628694723bf5": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_7274ffadc3ad4907b4aa038a0d24bf24", "style": "IPY_MODEL_55c6221fd0394765bea4a37abfed068b", "value": " 41000/41000 [00:00<00:00, 1774240.27it/s]" } }, "9d415c0b4c4b4409adc40f4b6a193388": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "9d753f4b47f744359592e7ddfddbc982": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "visibility": "hidden" } }, "9d9af2e7cb604581a65534c201cab1c1": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "layout": "IPY_MODEL_85d7bfcf7a6641deb93bed4b0541c95a", "max": 33, "style": "IPY_MODEL_a426c693f5ab4904887b298f4705a659", "value": 33 } }, "9fadeca65db34c34b522d28e6fe74c4c": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_b9c821b259854482a468155a6dddaff1", "style": "IPY_MODEL_cfc3e2149b674682802f937ab61cd229", "value": "Batch:  97%" } }, "a001743c9a334b62be497c773b8d4c93": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "layout": "IPY_MODEL_ca62431c80cb49b6a7e315f0cd1f0cf5", "max": 289, "style": "IPY_MODEL_c64234c845f04c788ade85e511db7812", "value": 289 } }, "a0032c3f7c554451ba3312f00829a107": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "visibility": "hidden" } }, "a143ce83c0e140769543707fea37d086": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "a17fb8f4080e4ee68973969073f07aba": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_d5873d5160b44c6bbec2264a74e803ba", "style": "IPY_MODEL_8e6eced5d5024c4a8f91e90e8c0cebfd", "value": "Batch:  97%" } }, "a2a78afc4d904bf1a4d06654065a8dc0": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "a3c23187bd124f5da4b56a7179d47a26": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "layout": "IPY_MODEL_7165c6e9206b4d53bbf3528671ffcb15", "max": 33, "style": "IPY_MODEL_416da69400f94bcf85e7a766c7425c2b", "value": 33 } }, "a426c693f5ab4904887b298f4705a659": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "a442115fa49f4768bfa4150665c8925e": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_64a936703a494397aaa5c1a58add3419", "style": "IPY_MODEL_aa442c03eb2440309b229c7f4f90cfeb", "value": " 289/289 [03:52<00:00,  1.51it/s]" } }, "a47c67911a9a484e8815dac559caffe0": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "a51f30bdc6494964a1ccffc57644e825": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "a5c9ec1bedc3431d9984296330c47815": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "a5e29beae67a4806b6cba586d5a6a0b3": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_9a832dc42f5d418980a21d0c776f9eb3", "style": "IPY_MODEL_5ecb12c1a235414ebc7bf2f345ab5d8c", "value": " 32/33 [00:25<00:00,  1.25it/s]" } }, "a5e52d4923c14e3ba69bc181874126be": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "visibility": "hidden" } }, "a61003cc694744269377079648ff057d": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "a79592a686dd4089bf42f2d082923645": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "a836e29bbb184d07bc619a4506c4f7b2": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "a8c66e5df15545958fc9cb1edb227858": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "aa442c03eb2440309b229c7f4f90cfeb": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "ac6b583a459b430c9b57a916e04a6579": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "af5969d5478d43a395e9d23b24fa3823": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "b00b652b226442b1aaffddc6e5cf96ae": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "b0d4b159bdf44066bb59515bde97a2df": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "b2a1a35bb15a42deab7624f6303e50e8": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_cb546bc1b6664219acc23ba8ed6d1c74", "style": "IPY_MODEL_420b7f393c254447a37fc092e62ca604", "value": " 289/289 [03:52<00:00,  1.59it/s]" } }, "b389b81f79b1405e806e9d5b491d7f02": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "b54dfa1397664513b7fb01e4f38b85a7": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "b7537a99b10647d9a5a8c3f362cdce7f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "b9c821b259854482a468155a6dddaff1": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "ba41d7a202ea48328bc0a31cdc410d2b": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "bd53eabcc9ea438f9603c38e71009be8": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_923b75f45a5a45189d0eecd600383cc2", "style": "IPY_MODEL_399a1dbd066f40fc97933bf5c29e36f0", "value": "Batch:  97%" } }, "c08a5eb0b1f542c0a334be655726e31f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "c1abbdf88d384142b1c4c3be03fe0288": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "c23edc897aa0475d895094fb658692d7": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "c27a51e071b24cd8852d0c87463e387a": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "visibility": "hidden" } }, "c3bb3ead358742f9b6ece4bd5a470310": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "bar_style": "success", "layout": "IPY_MODEL_21c2e3d4dd2f4526b24cbbb7d002ab37", "max": 41000, "style": "IPY_MODEL_0da8ea0a92b446f486cd6020f658499f", "value": 41000 } }, "c60994a0d8a2473aa8b4923e5eee275e": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "c64234c845f04c788ade85e511db7812": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "c8f936751c174790aad89b20674ddaf6": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_9d415c0b4c4b4409adc40f4b6a193388", "style": "IPY_MODEL_4698c34a90e24c80b572624e2191f6ef", "value": " 289/289 [03:53<00:00,  1.55it/s]" } }, "c961098f78304ad6aa85fab8a8d48009": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "ca62431c80cb49b6a7e315f0cd1f0cf5": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "cb546bc1b6664219acc23ba8ed6d1c74": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "cb77ba934d5e4a298d129d180d5d9713": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "layout": "IPY_MODEL_53a2ca223c4140e4a3f0a15a7a32e434", "max": 289, "style": "IPY_MODEL_e6d6c0910133432b8a2700da8d8707bf", "value": 289 } }, "cdb01364da864611be2b024d33cd588c": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_e1317f2ffe2f4679854426b7353a066b", "style": "IPY_MODEL_779f79b3c89c43718a5671f9e9fb72a2", "value": "Batch:  97%" } }, "ce17822fd22a4e588d8eaab8b28b933f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "cfc3e2149b674682802f937ab61cd229": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "d1b5e01c083f4c4a8a3a31e4c6f18482": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "d4c8382fe85349629effd2151684437c": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "d50b32f79b9c4a8f9c645f67e5bbb95f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HBoxModel", "state": { "children": [ "IPY_MODEL_69876e022cf9471e80876f2d419b4540", "IPY_MODEL_c3bb3ead358742f9b6ece4bd5a470310", "IPY_MODEL_709a0244909a4fd8ad80b1d788a3ca02" ], "layout": "IPY_MODEL_f915256e64e6400082f8186a9eeb5914" } }, "d57ec69aac1b4cf69714767f07f5bf96": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "d5873d5160b44c6bbec2264a74e803ba": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "d6074aa447844fb79c3d549e37613917": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_596e757a0de04e509052dfbdf2e0e888", "style": "IPY_MODEL_14b9270ab5e7492599b61da0de552450", "value": " 32/33 [00:26<00:00,  1.25it/s]" } }, "d6a4e3454371496988454c31247d2a4a": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_ed34c0f5a3534d73b6dbb704bf8e6d88", "style": "IPY_MODEL_5098f03fa0cc423b9c1bb39f9dd80731", "value": "Batch: 100%" } }, "dad5cd803fb64fa089174b0de5309d23": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "db3b1f9feb7340b2aadb98ce3bad094c": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "dd4c4c21af56473e891e532bcf6abb35": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "dd9e09b1a1554f689f9cb53371e69cd8": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_015c3eec171e40ac85ad50e6ff92fcd4", "style": "IPY_MODEL_b00b652b226442b1aaffddc6e5cf96ae", "value": "Batch:  97%" } }, "e0482b472bc74f8ea0b32c6854c31629": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "e1317f2ffe2f4679854426b7353a066b": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "e3d619b964d9431a8aa1657733738b70": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "e3f321a653ae43aaa7cb700eabc0977d": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "visibility": "hidden" } }, "e461cdc9d8844f8fb45d84462920cd95": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "e6d6c0910133432b8a2700da8d8707bf": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "description_width": "" } }, "e976d72d337a48c5b85f050ffdcf74a3": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "visibility": "hidden" } }, "e991ab943fcf4a1e95ff46b20d9fd1f2": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_ac6b583a459b430c9b57a916e04a6579", "style": "IPY_MODEL_c60994a0d8a2473aa8b4923e5eee275e", "value": "100%" } }, "ed18d1ab88a443d3bf6668530709099b": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_e3d619b964d9431a8aa1657733738b70", "style": "IPY_MODEL_9a8f4d45167540cda145cf1ee638f250", "value": "Batch:  97%" } }, "ed34c0f5a3534d73b6dbb704bf8e6d88": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "eda6db8660bb44e5bca913f046d52219": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "visibility": "hidden" } }, "f0d7f3eae55c4447af7f11c4f3fb7bf8": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "f281ce1451ce40a48705050e86bc0524": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_fc70fa89e80e403f8cecf40318518bde", "style": "IPY_MODEL_5053111b9c84413a9e1eaeae6e9316cb", "value": "Batch: 100%" } }, "f3d93a4c1a9a4f5891793a9ffae962cb": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_a61003cc694744269377079648ff057d", "style": "IPY_MODEL_3c6dcb2b308449e595a2cf7d64219d86", "value": "Batch: 100%" } }, "f915256e64e6400082f8186a9eeb5914": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "f973f92045544e72b05373c8c4434ba0": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "bar_style": "success", "layout": "IPY_MODEL_d4c8382fe85349629effd2151684437c", "max": 41000, "style": "IPY_MODEL_0dd98e3a731a457c9bd850e5a94bb2a7", "value": 41000 } }, "f9a0860b72e749938e6ac5326cf84d37": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "layout": "IPY_MODEL_d1b5e01c083f4c4a8a3a31e4c6f18482", "max": 289, "style": "IPY_MODEL_c08a5eb0b1f542c0a334be655726e31f", "value": 289 } }, "fb39cdf0d5704fdd9cf4b756f9199067": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_73e162909f2346e68e55ffd6b75f6754", "style": "IPY_MODEL_60969d6e3bb84ea38b2bec288c6705a7", "value": " 41000/41000 [00:00<00:00, 75464.14it/s]" } }, "fc64dacdc46a4273b0b39a5bf414eec9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_af5969d5478d43a395e9d23b24fa3823", "style": "IPY_MODEL_119d800feb7942cf8d7d164472ea2b79", "value": " 32/33 [00:26<00:00,  1.21it/s]" } }, "fc70fa89e80e403f8cecf40318518bde": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "fe8eb722ad6644a2bb20dc64f2ad0e86": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "description_width": "", "font_size": null, "text_color": null } }, "feb1491628b34a3d9d76654a89f28d98": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {} }, "ff5179dae926428081a9396520a359cb": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "layout": "IPY_MODEL_36c114d62dda4be38e694db0b86e46d5", "style": "IPY_MODEL_b389b81f79b1405e806e9d5b491d7f02", "value": "Batch: 100%" } } }, "version_major": 2, "version_minor": 0 } } }, "nbformat": 4, "nbformat_minor": 5 }