diff --git a/notebooks/model_sz.ipynb b/notebooks/model_sz.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..87ee15738eed1701f725ae5b99d08ed0702bb16f --- /dev/null +++ b/notebooks/model_sz.ipynb @@ -0,0 +1,10936 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 25, + "id": "07285dc4-35d2-4b27-b5c8-80bfdc8d3dcb", + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "import csv\n", + "import pathlib\n", + "import pandas as pd\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "import seaborn as sns\n", + "import nltk\n", + "import re\n", + "import statistics\n", + "import string\n", + "from collections import Counter\n", + "from collections import defaultdict\n", + "from sklearn.model_selection import train_test_split\n", + "import octis\n", + "import gensim\n", + "import spacy\n", + "import sklearn\n", + "import torch\n", + "import libsvm\n", + "import flask\n", + "import sentence_transformers\n", + "import requests\n", + "import tomotopy" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "a76dcdfd-3d5e-4922-8aa2-278c79d1779b", + "metadata": {}, + "outputs": [], + "source": [ + "import warnings\n", + "warnings.filterwarnings(\"ignore\")" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "a854629e-caec-4d0e-a4d5-41261905ca76", + "metadata": {}, + "outputs": [], + "source": [ + "os.chdir(r\"C:\\Users\\onb1202\\OneDrive - Österreichische Nationalbibliothek\\Praktikum TK\\daten\")" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "a1e67379-505e-4ff8-97b4-491cc8670e2b", + "metadata": {}, + "outputs": [], + "source": [ + "sz_clean = pd.read_csv('sz_clean.tsv', sep = '\\t', encoding='utf-8')" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "4817819e-412e-4d57-8253-4f96aa838460", + "metadata": {}, + "outputs": [], + "source": [ + "sz_clean = sz_clean.iloc[: , 1:]" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "f98c8470-95ff-454e-a416-830e7944dd13", + "metadata": {}, + "outputs": [], + "source": [ + "sz_clean = sz_clean.drop(columns=['year'])" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "fd7b97c1-fe66-420f-a158-feeb29871698", + "metadata": {}, + "outputs": [], + "source": [ + "sz_clean.to_csv('corpus_sz_clean.tsv', sep='\\t', index=False, header=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "edc263f1-33d8-4bad-821b-d34cdbce7053", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ocrsplitmanifest_id
0salzburger intelligenzblatt mamm sonnabend ja...trainsza17890103
1zintellig sonnabend januar enzblatt geisterers...testsza17890110
2sintellig salzbu enzblatt sonnabend januar sta...trainsza17890117
3sonnabend januar salzb urger intelligenzblatt...testsza17890124
4salzburger sonnabend januar jungen galoppweite...validsza17890131
............
574salzburger intelligenzblatt xlix sonnabend de...validsza17991207
575salzburger intelligenzblatt sonnabend dezembe...trainsza17991214
576urger sonnabend dezember fers noth trunkener ...trainsza17991221
577intelligenzblatt sonnabend dezember diefe blät...trainsza17991228
578intelligenz jahre industrie vaterlands gewe v...testsza1799bl01
\n", + "

579 rows × 3 columns

\n", + "
" + ], + "text/plain": [ + " ocr split manifest_id\n", + "0 salzburger intelligenzblatt mamm sonnabend ja... train sza17890103\n", + "1 zintellig sonnabend januar enzblatt geisterers... test sza17890110\n", + "2 sintellig salzbu enzblatt sonnabend januar sta... train sza17890117\n", + "3 sonnabend januar salzb urger intelligenzblatt... test sza17890124\n", + "4 salzburger sonnabend januar jungen galoppweite... valid sza17890131\n", + ".. ... ... ...\n", + "574 salzburger intelligenzblatt xlix sonnabend de... valid sza17991207\n", + "575 salzburger intelligenzblatt sonnabend dezembe... train sza17991214\n", + "576 urger sonnabend dezember fers noth trunkener ... train sza17991221\n", + "577 intelligenzblatt sonnabend dezember diefe blät... train sza17991228\n", + "578 intelligenz jahre industrie vaterlands gewe v... test sza1799bl01\n", + "\n", + "[579 rows x 3 columns]" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "sz_clean" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "5386b902-460c-4b40-a1d5-e8ea185914d6", + "metadata": {}, + "outputs": [], + "source": [ + "sz_clean = pd.read_csv('sz_clean.tsv', sep='\\t', encoding='UTF-8', index_col=0)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "a126792e-68c2-44f0-91f8-8fd163c12208", + "metadata": {}, + "outputs": [], + "source": [ + "sz_clean = sz_clean.reset_index(drop=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "id": "976ab67a-1012-47bd-b334-e0ad615cb6cd", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "train 340\n", + "valid 125\n", + "test 114\n", + "Name: split, dtype: int64" + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "sz_clean['split'].value_counts()" + ] + }, + { + "cell_type": "markdown", + "id": "df5587b8-36ff-4603-bb92-7cc2c42a8e7a", + "metadata": {}, + "source": [ + "

create vocabulary

" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "6b3d5e0c-8927-46aa-b59e-bcfdcfbb2d4a", + "metadata": {}, + "outputs": [], + "source": [ + "texts_sz = sz_clean['ocr'].sum()" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "421ae351-944f-4378-aedf-b6603b30b24a", + "metadata": {}, + "outputs": [], + "source": [ + "texts_sz = texts_sz.split(\" \")" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "b67ed524-9650-447c-bd46-b43463279613", + "metadata": {}, + "outputs": [], + "source": [ + "vocabulary_sz = set(texts_sz)" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "5b09262b-d81a-4310-ab0f-2fb718884cf0", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "156692" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(vocabulary_sz)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "46971db9-f635-442f-96d4-f3bc4394f0ea", + "metadata": {}, + "outputs": [], + "source": [ + "textfile = open(\"vocabulary_sz.txt\", \"w\", encoding='cp1252')\n", + "for element in vocabulary_sz:\n", + " textfile.write(element + \"\\n\")\n", + "textfile.close()" + ] + }, + { + "cell_type": "markdown", + "id": "3508aefe-074c-4b60-a556-be324754fc61", + "metadata": {}, + "source": [ + "

model

" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "484c07b5-5594-4d21-9cde-856cce05123e", + "metadata": {}, + "outputs": [], + "source": [ + "from octis.models.ETM import ETM\n", + "from octis.dataset.dataset import Dataset" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "aa171fff-571d-4ef9-821b-127cdd6394b3", + "metadata": {}, + "outputs": [], + "source": [ + "dataset = Dataset()\n", + "dataset.load_custom_dataset_from_folder(r\"C:\\Users\\onb1202\\OneDrive - Österreichische Nationalbibliothek\\Praktikum TK\\daten\\corpus_sz_enc\", multilabel=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "3d9104f9-143f-4b18-b122-64fbe1e57ad8", + "metadata": {}, + "outputs": [], + "source": [ + "model = ETM(num_topics=30, num_epochs=120, t_hidden_size=800, rho_size=300,\n", + "embedding_size=300, activation='relu', dropout=0.5, lr=0.005,\n", + "optimizer='adam', batch_size=128, clip=0.0, wdecay=1.2e-06, bow_norm=1,\n", + "device='cpu', top_word=10, train_embeddings=True, embeddings_path=None,\n", + "embeddings_type='pickle', binary_embeddings=True,\n", + "headerless_embeddings=False, use_partitions=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "4434c955-3504-4bc0-b510-a38d2f8b071b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=30, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=30, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=30, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21536.43 .. NELBO: 21536.46\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n" + ] + } + ], + "source": [ + "model_output = model.train_model(dataset)" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "08b46917-5d94-48b5-82b9-63afbe767f12", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "tadelt requisition jäuer hierzu stöckl stellen jenigen pfenninge straßwalchen seekirchen\n", + "bereichert unterzeichneter räuchern jetzigen gedruckt comment fäden fichtbar beständiges reisende\n", + "mäßig verschafft täglich mochte handle land klagen bearbeitet jetzigen namur\n", + "zöglinge schulenburg erziehen xlii verweisen obrigkeitlichen monathlich nunft fchweren unis\n", + "geübt innerli winter kaisers voller geäußert stücken last zurück befördern\n", + "brüdern keineswegs kreise erweitern wußten gerste streichen natürlichen ministers sätze\n", + "hiesige fürchterlich reinigung logiert demnach traunstein schleunige anvertrauet maschine zimmern\n", + "auge zahnschmerzen beurtheilen bibliothek wirkungen ergiebt kalte reiben vergoldeten honig\n", + "fortdauernde angehöret belgische jetztmahligen meen befundenen rosinen schmeicheley räthlich verheerungen\n", + "schwärmerisch unnöthigen unterscheiden actionairs geschwächten einigkeit abscheu august vorgeschriebene wahne\n", + "mittlern obstbäume narchie danken beine effen auge stecken kran englischen\n", + "entwickelt solle pfarrer russische ferneren kind gefüllt beschluß darstellung hofrath\n", + "kenntnisse gewonnen genährt öster mahle censur eigentlich erheilt ungeachtet englischen\n", + "andenken tyrol worüber europa jahrhundert verlaffen glas ents reichsstände landesfürstlichen\n", + "mächtiges bürgers offiziers gewichte bauen zirkel ausrichten sechsten kette geendigt\n", + "zerschlagen theurung bastian gleich steigt vormittag gelang lasse müßiggange besetzung\n", + "stiftete allezeit unterm bündniß erbauungslehre verderbten daselbst diene bevorstehenden großherzog\n", + "gerühmt bestreiche annimmt voller streben direktor glich wichtigsten frau zusammen\n", + "vorsicht fols damahls tauf hende insonderheit erzeu gebühret data gesperrt\n", + "ununterbrochen gelangt wirkungen bein ausnahme versteigert gefäß nahmentlich frühzeitig erlaubte\n", + "preußischer glaube dunkeln äußersten aufeinander geschmacke finanz veräußert vorladung wichtigen\n", + "vorigen schließt blieb unkraut liest unterm führe breiter lärm buchhandlungen\n", + "aufrichtig wuth haupt terlandes bedacht befördern ausdünstungen fähig ernst ungleichen\n", + "soldaten verzweiflung bergstraße ichen aufgebracht fortdauer vielen petzl mörfer gewünscht\n", + "jurisdiction gedachter schickte uebrigens zugeht volke traten selbige eigenthums rend\n", + "einrich chrichton tage chey hierin entstandene geprüft heiliger eröffnete verglichen\n", + "verhindern mülln beträgt gemeinnützigen freyes ganze stocke belegen eingeweide zerstörten\n", + "munter aufruhrs straßen neue einbruch lügner anhänger europens gerechtigkeit bitter\n", + "franklin truppen märz geübt übermäßigen folg reiben zuver böses volke\n", + "bewahrt gift genöthiger unfug verbannt düngende verbundene müßten balken besuche\n" + ] + } + ], + "source": [ + "for t in model_output['topics'][:30]:\n", + " print(\" \".join(t))" + ] + }, + { + "cell_type": "markdown", + "id": "a7e3a39a-6356-4839-9d89-64805af01045", + "metadata": {}, + "source": [ + "

parameter optimisation

" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "f594c836-9217-4d2a-81cd-8326f25e3d2f", + "metadata": {}, + "outputs": [], + "source": [ + "from skopt.space.space import Real, Categorical, Integer\n", + "from octis.evaluation_metrics.coherence_metrics import Coherence\n", + "from octis.optimization.optimizer import Optimizer" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "1fca14c2-6283-4b8e-8c96-45d8d2536bd0", + "metadata": {}, + "outputs": [], + "source": [ + "search_space = {\"num_topics\": Integer(10,50), \n", + " \"num_epochs\": Categorical({100, 150, 200}),\n", + " \"dropout\": Real(0.0, 0.95)}" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "59b31e20-2119-4dde-a8ca-38a206d3aacc", + "metadata": {}, + "outputs": [], + "source": [ + "search_space = {\"num_topics\": Integer(20, 70)}" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "94c9ce52-3842-4f8a-9c9b-dad18cddd224", + "metadata": {}, + "outputs": [], + "source": [ + "coherence = Coherence(texts=dataset.get_corpus(), measure = 'c_v')" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "ce487f44-4d15-458d-bf1c-a9df5ffd2d5f", + "metadata": {}, + "outputs": [], + "source": [ + "optimization_runs=45" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "81bb752a-dc66-41ad-afb0-5b7561eafdaf", + "metadata": {}, + "outputs": [], + "source": [ + "model_runs=6" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "e5574541-f51f-4fa7-870f-21ac3600b335", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Current call: 0\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=44, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=44, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=44, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21538.29 .. NELBO: 21538.31\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=44, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=44, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=44, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21539.56 .. NELBO: 21539.59\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=44, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=44, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=44, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21540.48 .. NELBO: 21540.51\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=44, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=44, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=44, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.05 .. Rec_loss: 21539.55 .. NELBO: 21539.6\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=44, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=44, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=44, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21536.92 .. NELBO: 21536.96\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=44, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=44, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=44, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21539.55 .. NELBO: 21539.58\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 1\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=67, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=67, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=67, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21539.68 .. NELBO: 21539.71\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=67, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=67, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=67, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21539.65 .. NELBO: 21539.68\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=67, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=67, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=67, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21540.19 .. NELBO: 21540.23\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=67, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=67, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=67, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21541.09 .. NELBO: 21541.12\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=67, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=67, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=67, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21541.14 .. NELBO: 21541.17\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=67, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=67, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=67, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21541.46 .. NELBO: 21541.5\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 2\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=69, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=69, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=69, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21541.89 .. NELBO: 21541.93\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=69, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=69, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=69, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21540.72 .. NELBO: 21540.75\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=69, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=69, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=69, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21541.88 .. NELBO: 21541.91\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=69, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=69, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=69, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.05 .. Rec_loss: 21539.86 .. NELBO: 21539.91\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=69, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=69, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=69, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21540.97 .. NELBO: 21541.01\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=69, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=69, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=69, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21540.62 .. NELBO: 21540.65\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 3\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.55 .. NELBO: 21535.57\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21536.28 .. NELBO: 21536.31\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21534.36 .. NELBO: 21534.4\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.92 .. NELBO: 21533.95\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.37 .. NELBO: 21535.4\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.55 .. NELBO: 21534.57\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 4\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.38 .. NELBO: 21534.4\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21536.46 .. NELBO: 21536.48\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.96 .. NELBO: 21534.99\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21535.16 .. NELBO: 21535.2\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.96 .. NELBO: 21533.99\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.77 .. NELBO: 21535.8\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 5\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=32, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=32, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=32, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21537.11 .. NELBO: 21537.13\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=32, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=32, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=32, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21536.48 .. NELBO: 21536.51\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=32, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=32, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=32, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21537.83 .. NELBO: 21537.87\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=32, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=32, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=32, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.05 .. Rec_loss: 21537.18 .. NELBO: 21537.23\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=32, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=32, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=32, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21538.62 .. NELBO: 21538.65\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=32, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=32, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=32, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21537.62 .. NELBO: 21537.64\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 6\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=37, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=37, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=37, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21537.17 .. NELBO: 21537.19\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=37, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=37, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=37, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21537.63 .. NELBO: 21537.66\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=37, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=37, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=37, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21537.03 .. NELBO: 21537.07\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=37, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=37, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=37, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21538.67 .. NELBO: 21538.7\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=37, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=37, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=37, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.78 .. NELBO: 21535.8\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=37, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=37, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=37, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21539.29 .. NELBO: 21539.32\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 7\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.43 .. NELBO: 21533.46\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21531.71 .. NELBO: 21531.75\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.66 .. NELBO: 21535.69\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.62 .. NELBO: 21533.65\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.7 .. NELBO: 21535.72\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.12 .. NELBO: 21533.14\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 8\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=24, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=24, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=24, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.02 .. NELBO: 21533.05\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=24, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=24, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=24, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21537.81 .. NELBO: 21537.83\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=24, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=24, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=24, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.93 .. NELBO: 21533.95\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=24, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=24, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=24, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21537.08 .. NELBO: 21537.1\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=24, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=24, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=24, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.23 .. NELBO: 21534.26\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=24, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=24, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=24, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.54 .. NELBO: 21535.57\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 9\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.27 .. NELBO: 21534.29\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21534.26 .. NELBO: 21534.3\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.11 .. NELBO: 21535.13\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.83 .. NELBO: 21535.85\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.08 .. NELBO: 21535.1\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21534.25 .. NELBO: 21534.29\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 10\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21536.7 .. NELBO: 21536.73\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21537.23 .. NELBO: 21537.26\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.87 .. NELBO: 21535.89\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21536.01 .. NELBO: 21536.03\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21536.49 .. NELBO: 21536.51\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.93 .. NELBO: 21534.95\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 11\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=29, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=29, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=29, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.29 .. NELBO: 21535.32\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=29, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=29, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=29, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21537.71 .. NELBO: 21537.73\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=29, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=29, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=29, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21537.23 .. NELBO: 21537.25\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=29, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=29, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=29, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.32 .. NELBO: 21535.35\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=29, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=29, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=29, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21537.74 .. NELBO: 21537.77\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=29, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=29, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=29, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21537.77 .. NELBO: 21537.8\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 12\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=27, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21536.79 .. NELBO: 21536.81\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=27, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21536.49 .. NELBO: 21536.52\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=27, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21536.71 .. NELBO: 21536.73\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=27, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21535.89 .. NELBO: 21535.93\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=27, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21536.37 .. NELBO: 21536.4\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=27, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21537.57 .. NELBO: 21537.6\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 13\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=27, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.62 .. NELBO: 21535.65\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=27, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21537.06 .. NELBO: 21537.08\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=27, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21536.02 .. NELBO: 21536.04\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=27, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21536.21 .. NELBO: 21536.24\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=27, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.88 .. NELBO: 21535.91\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=27, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=27, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.12 .. NELBO: 21534.14\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 14\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.0 .. NELBO: 21534.02\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.47 .. NELBO: 21534.5\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.8 .. NELBO: 21533.83\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21536.07 .. NELBO: 21536.09\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.05 .. NELBO: 21535.07\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.45 .. NELBO: 21533.48\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 15\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21537.91 .. NELBO: 21537.94\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21538.27 .. NELBO: 21538.29\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21536.56 .. NELBO: 21536.58\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.48 .. NELBO: 21534.5\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.06 .. NELBO: 21535.09\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21536.96 .. NELBO: 21536.99\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 16\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=28, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=28, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=28, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21537.1 .. NELBO: 21537.13\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=28, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=28, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=28, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.81 .. NELBO: 21535.84\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=28, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=28, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=28, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21538.9 .. NELBO: 21538.93\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=28, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=28, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=28, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21536.82 .. NELBO: 21536.86\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=28, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=28, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=28, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21538.32 .. NELBO: 21538.34\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=28, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=28, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=28, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21536.88 .. NELBO: 21536.9\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 17\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21537.43 .. NELBO: 21537.46\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21536.04 .. NELBO: 21536.06\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21536.0 .. NELBO: 21536.04\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.71 .. NELBO: 21534.73\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21536.44 .. NELBO: 21536.48\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.96 .. NELBO: 21534.99\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 18\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21537.09 .. NELBO: 21537.11\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21537.5 .. NELBO: 21537.52\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21536.22 .. NELBO: 21536.25\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.06 .. NELBO: 21535.09\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.2 .. NELBO: 21535.23\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.97 .. NELBO: 21535.0\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 19\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21536.04 .. NELBO: 21536.07\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.29 .. NELBO: 21534.32\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.7 .. NELBO: 21533.73\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.63 .. NELBO: 21535.65\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.35 .. NELBO: 21535.37\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.63 .. NELBO: 21535.65\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 20\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21537.16 .. NELBO: 21537.18\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.05 .. Rec_loss: 21534.49 .. NELBO: 21534.54\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21536.18 .. NELBO: 21536.21\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21536.47 .. NELBO: 21536.49\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.98 .. NELBO: 21536.0\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.66 .. NELBO: 21535.68\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 21\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21536.55 .. NELBO: 21536.58\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21536.24 .. NELBO: 21536.28\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.36 .. NELBO: 21534.39\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21535.46 .. NELBO: 21535.5\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21535.73 .. NELBO: 21535.77\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.72 .. NELBO: 21535.74\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 22\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.77 .. NELBO: 21533.79\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21536.15 .. NELBO: 21536.18\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.07 .. Rec_loss: 21533.33 .. NELBO: 21533.4\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.31 .. NELBO: 21535.34\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.9 .. NELBO: 21533.92\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.69 .. NELBO: 21533.71\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 23\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=23, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=23, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=23, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.92 .. NELBO: 21534.95\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=23, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=23, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=23, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21535.11 .. NELBO: 21535.15\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=23, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=23, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=23, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.77 .. NELBO: 21534.79\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=23, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=23, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=23, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.83 .. NELBO: 21534.86\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=23, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=23, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=23, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.77 .. NELBO: 21533.79\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=23, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=23, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=23, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21536.5 .. NELBO: 21536.53\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 24\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21531.75 .. NELBO: 21531.77\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21536.95 .. NELBO: 21536.97\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.97 .. NELBO: 21535.0\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.53 .. NELBO: 21534.56\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.05 .. Rec_loss: 21533.03 .. NELBO: 21533.08\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21531.99 .. NELBO: 21532.03\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 25\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.25 .. NELBO: 21535.27\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21536.49 .. NELBO: 21536.52\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.02 .. NELBO: 21535.04\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.82 .. NELBO: 21534.85\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.61 .. NELBO: 21533.64\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.88 .. NELBO: 21535.91\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 26\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.65 .. NELBO: 21535.68\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.37 .. NELBO: 21534.39\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.77 .. NELBO: 21533.79\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.39 .. NELBO: 21535.42\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.43 .. NELBO: 21534.46\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.49 .. NELBO: 21534.51\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 27\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.97 .. NELBO: 21535.0\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.62 .. NELBO: 21533.65\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.23 .. NELBO: 21534.25\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.68 .. NELBO: 21534.7\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.31 .. NELBO: 21533.33\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=22, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=22, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.75 .. NELBO: 21534.77\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 28\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.65 .. NELBO: 21534.68\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.64 .. NELBO: 21535.67\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21537.81 .. NELBO: 21537.83\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21535.95 .. NELBO: 21535.99\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21537.12 .. NELBO: 21537.15\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=26, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=26, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.97 .. NELBO: 21534.99\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 29\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.08 .. NELBO: 21533.1\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.91 .. NELBO: 21533.93\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.37 .. NELBO: 21534.39\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.05 .. Rec_loss: 21534.25 .. NELBO: 21534.3\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.75 .. NELBO: 21534.77\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.53 .. NELBO: 21535.55\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 30\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21533.85 .. NELBO: 21533.89\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.42 .. NELBO: 21535.44\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.31 .. NELBO: 21534.34\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21532.81 .. NELBO: 21532.83\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.3 .. NELBO: 21533.32\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.18 .. NELBO: 21534.21\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 31\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.05 .. Rec_loss: 21533.86 .. NELBO: 21533.91\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.96 .. NELBO: 21533.98\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.09 .. NELBO: 21534.11\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.01 .. Rec_loss: 21534.65 .. NELBO: 21534.66\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.33 .. NELBO: 21533.35\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.73 .. NELBO: 21534.75\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 32\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.06 .. Rec_loss: 21535.05 .. NELBO: 21535.11\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.96 .. NELBO: 21534.98\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.43 .. NELBO: 21533.45\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.76 .. NELBO: 21533.78\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21532.7 .. NELBO: 21532.74\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.71 .. NELBO: 21535.73\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 33\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.99 .. NELBO: 21536.01\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.66 .. NELBO: 21535.68\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21532.95 .. NELBO: 21532.97\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.83 .. NELBO: 21533.86\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21532.62 .. NELBO: 21532.65\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21531.73 .. NELBO: 21531.76\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 34\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.7 .. NELBO: 21533.72\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.15 .. NELBO: 21534.18\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.61 .. NELBO: 21534.64\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.0 .. NELBO: 21533.03\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.83 .. NELBO: 21534.85\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=21, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=21, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.84 .. NELBO: 21533.86\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 35\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21532.48 .. NELBO: 21532.51\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21536.43 .. NELBO: 21536.45\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.39 .. NELBO: 21535.41\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.53 .. NELBO: 21533.56\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.57 .. NELBO: 21533.59\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21532.07 .. NELBO: 21532.09\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 36\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21535.18 .. NELBO: 21535.22\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.4 .. NELBO: 21534.43\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21532.27 .. NELBO: 21532.29\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21536.84 .. NELBO: 21536.86\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.06 .. NELBO: 21534.08\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.05 .. Rec_loss: 21532.58 .. NELBO: 21532.63\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 37\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.06 .. Rec_loss: 21534.14 .. NELBO: 21534.2\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.82 .. NELBO: 21535.84\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.37 .. NELBO: 21534.4\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21531.42 .. NELBO: 21531.44\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.41 .. NELBO: 21533.44\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.05 .. Rec_loss: 21532.89 .. NELBO: 21532.94\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 38\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21531.64 .. NELBO: 21531.67\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.63 .. NELBO: 21533.65\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.05 .. Rec_loss: 21533.28 .. NELBO: 21533.33\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.41 .. NELBO: 21533.44\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.07 .. NELBO: 21534.09\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21532.96 .. NELBO: 21532.98\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 39\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.85 .. NELBO: 21534.88\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.2 .. NELBO: 21534.22\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.36 .. NELBO: 21534.39\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.05 .. Rec_loss: 21533.89 .. NELBO: 21533.94\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21535.06 .. NELBO: 21535.08\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21531.43 .. NELBO: 21531.46\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 40\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.58 .. NELBO: 21533.6\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.69 .. NELBO: 21533.71\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.01 .. Rec_loss: 21534.51 .. NELBO: 21534.52\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.01 .. NELBO: 21534.03\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21535.84 .. NELBO: 21535.87\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.07 .. Rec_loss: 21532.11 .. NELBO: 21532.18\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 41\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.8 .. NELBO: 21534.82\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21532.5 .. NELBO: 21532.54\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21532.35 .. NELBO: 21532.37\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.13 .. NELBO: 21533.15\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21532.59 .. NELBO: 21532.61\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.2 .. NELBO: 21533.22\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 42\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21531.79 .. NELBO: 21531.83\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21532.57 .. NELBO: 21532.59\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.06 .. NELBO: 21533.09\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.69 .. NELBO: 21533.72\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.01 .. Rec_loss: 21534.37 .. NELBO: 21534.38\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21534.53 .. NELBO: 21534.57\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 43\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21532.74 .. NELBO: 21532.77\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21534.67 .. NELBO: 21534.69\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21533.26 .. NELBO: 21533.3\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21536.44 .. NELBO: 21536.46\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21531.96 .. NELBO: 21532.0\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.36 .. NELBO: 21534.39\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Current call: 44\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21533.41 .. NELBO: 21533.44\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21532.52 .. NELBO: 21532.54\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21534.34 .. NELBO: 21534.37\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.04 .. Rec_loss: 21534.14 .. NELBO: 21534.18\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21533.02 .. NELBO: 21533.04\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "model: ETM(\n", + " (t_drop): Dropout(p=0.5, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=20, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=20, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21536.84 .. NELBO: 21536.86\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n", + "Optimizing model took: 8695 seconds.\n" + ] + } + ], + "source": [ + "optimizer=Optimizer()\n", + "import time\n", + "start = time.time()\n", + "optimization_result = optimizer.optimize(\n", + " model, dataset, coherence, search_space, number_of_call=optimization_runs, \n", + " model_runs=model_runs, save_models=True, \n", + " extra_metrics=None, # to keep track of other metrics\n", + " save_path='results/test_ETM2_sz//')\n", + "end = time.time()\n", + "duration = end - start\n", + "optimization_result.save_to_csv(\"results_ETM2_sz.csv\")\n", + "print('Optimizing model took: ' + str(round(duration)) + ' seconds.')" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "221ffee2-73a4-4c4f-b032-99399c0e6b5e", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "dict_keys(['dataset_name', 'dataset_path', 'is_cached', 'kernel', 'acq_func', 'surrogate_model', 'optimization_type', 'model_runs', 'save_models', 'save_step', 'save_name', 'save_path', 'early_stop', 'early_step', 'plot_model', 'plot_best_seen', 'plot_name', 'log_scale_plot', 'search_space', 'model_name', 'model_attributes', 'use_partitioning', 'metric_name', 'extra_metric_names', 'metric_attributes', 'extra_metric_attributes', 'current_call', 'number_of_call', 'random_state', 'x0', 'y0', 'n_random_starts', 'initial_point_generator', 'topk', 'time_eval', 'dict_model_runs', 'f_val', 'x_iters'])" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import json\n", + "results = json.load(open('results/test_ETM2_sz/result.json','r'))\n", + "results.keys()" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "d9e4ff52-d0a2-4d7b-8962-6a6459ac8456", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[[44, 67, 69, 22, 22, 32, 37, 21, 24, 21, 26, 29, 27, 27, 21, 26, 28, 26, 26, 26, 26, 26, 20, 23, 22, 26, 22, 22, 26, 21, 21, 21, 21, 20, 21, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20]]\n" + ] + } + ], + "source": [ + "print([results['x_iters'][parameter] for parameter in results['x_iters'].keys()])" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "id": "78bef02d-af98-4451-9396-c59122b69393", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[199.79753470420837,\n", + " 164.27008295059204,\n", + " 156.8214030265808,\n", + " 195.18586945533752,\n", + " 216.5463879108429,\n", + " 214.58746552467346,\n", + " 200.9431939125061,\n", + " 153.3585410118103,\n", + " 169.90203428268433,\n", + " 167.50770354270935,\n", + " 177.28662037849426,\n", + " 148.6199119091034,\n", + " 167.85285353660583,\n", + " 181.87311911582947,\n", + " 161.42010831832886,\n", + " 159.3924379348755,\n", + " 160.64845895767212,\n", + " 153.29371118545532,\n", + " 155.92003321647644,\n", + " 158.44701433181763,\n", + " 201.469571352005,\n", + " 168.72124695777893,\n", + " 151.32265663146973,\n", + " 166.96324491500854,\n", + " 168.14511370658875,\n", + " 174.55623388290405,\n", + " 157.81115555763245,\n", + " 161.9603509902954,\n", + " 156.5354402065277,\n", + " 153.5927755832672,\n", + " 152.95550966262817,\n", + " 143.97192549705505,\n", + " 145.18925714492798,\n", + " 147.24916100502014,\n", + " 130.72677755355835,\n", + " 134.39738154411316,\n", + " 145.4677333831787,\n", + " 146.46045804023743,\n", + " 148.57755970954895,\n", + " 139.35528707504272,\n", + " 137.35290455818176,\n", + " 133.3790135383606,\n", + " 133.8296926021576,\n", + " 144.19657135009766,\n", + " 132.26087760925293]" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "results['time_eval']" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "id": "eae30fba-5e2d-42d3-99db-10653db83438", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[0.4443213716583959,\n", + " 0.46441204944248393,\n", + " 0.49565283613410316,\n", + " 0.46460495559957127,\n", + " 0.45264958763370833,\n", + " 0.45463548795731856,\n", + " 0.46289297701335264,\n", + " 0.4874282741160978,\n", + " 0.47918625546059196,\n", + " 0.47386581014689666,\n", + " 0.4757723262406793,\n", + " 0.5033268523643406,\n", + " 0.47265206405259674,\n", + " 0.46966314574292733,\n", + " 0.489625178490201,\n", + " 0.5114818145969728,\n", + " 0.49593128315760626,\n", + " 0.5065604233180653,\n", + " 0.4882203026255812,\n", + " 0.5022886118028231,\n", + " 0.5003404810883522,\n", + " 0.4992166645532794,\n", + " 0.5054008966580001,\n", + " 0.478290504783569,\n", + " 0.515818951650912,\n", + " 0.4832541760271378,\n", + " 0.49255208860412647,\n", + " 0.49110179911657464,\n", + " 0.4871746184127904,\n", + " 0.5109839628072517,\n", + " 0.5026056837805962,\n", + " 0.49899431316398946,\n", + " 0.4964181377164376,\n", + " 0.48983977945482915,\n", + " 0.477763680403128,\n", + " 0.5100650206877335,\n", + " 0.5070391419266269,\n", + " 0.5023028511212264,\n", + " 0.5044271288399846,\n", + " 0.5066368115624724,\n", + " 0.488725940044786,\n", + " 0.48747416295937007,\n", + " 0.49248979836600326,\n", + " 0.47980835610225003,\n", + " 0.4855062381589978]" + ] + }, + "execution_count": 33, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "results['f_val']" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "id": "3f5845f8-a0d7-4009-b767-5768c7337179", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "plt.xlabel('Iteration')\n", + "plt.ylabel('Coherence score (c_v)')\n", + "plt.title('Median coherence score per iteration')\n", + "plt.plot(results['f_val'])\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "id": "2af9f844-4029-49cd-acb3-0ff92affd226", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "24" + ] + }, + "execution_count": 35, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "results[ 'f_val'].index(max(results[ 'f_val']))" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "id": "751c3b69-ba41-4a2f-a1b4-a485c08fa8c3", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.515818951650912" + ] + }, + "execution_count": 39, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "results[\"f_val\"][24]" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "id": "4cf9154c-43e6-4330-b1d4-56f85a61b4c8", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "dict_keys(['dropout', 'num_epochs', 'num_topics'])" + ] + }, + "execution_count": 37, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "results['x_iters'].keys()" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "id": "76f2308a-d876-4f3e-a691-0f10cad145dd", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[0.6958804564903129, 150, 14]\n" + ] + } + ], + "source": [ + "print([results['x_iters'][parameter][10] for parameter in results['x_iters'].keys()])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7b0740bd-16e3-408f-8ce0-5adabe2ac3f2", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "137f6a24-04bd-4bd0-8d48-188ff4b43f3b", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d4ad2bd1-ee00-4655-827e-39e12f3758c4", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "881e72b3-746c-47b2-8d48-f26c6569d3f0", + "metadata": {}, + "outputs": [], + "source": [ + "model = ETM(num_topics=14, num_epochs=150, t_hidden_size=800, rho_size=300,\n", + "embedding_size=300, activation='relu', dropout=0.69588, lr=0.005,\n", + "optimizer='adam', batch_size=128, clip=0.0, wdecay=1.2e-06, bow_norm=1,\n", + "device='cpu', top_word=10, train_embeddings=True, embeddings_path=None,\n", + "embeddings_type='pickle', binary_embeddings=True,\n", + "headerless_embeddings=False, use_partitions=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "831f864c-f817-40ca-80a8-d8c5861ab672", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "model: ETM(\n", + " (t_drop): Dropout(p=0.69588, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=14, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=14, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=14, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21529.71 .. NELBO: 21529.73\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n" + ] + } + ], + "source": [ + "model_output = model.train_model(dataset)" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "c0f631cb-dd94-4d95-8840-f80e28f30e12", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "rege flüffe spruch beobachtungen erfordern vorschreibt anständig versucht schulprüfungen vorstädten\n", + "jedermanns nächste vieles faßte dünnen gäste gesetze gemachten besann stechen\n", + "venedig leichter wort murren unferm darlehen priesters gran erlauben franzose\n", + "wohls geneigt hofkammerrath schleifen sodann möglichen wolle früh gedrungen unruhe\n", + "leeren erzählte ebene korps allemahl projekt oberhaupts rächen zuchthaus stallungen\n", + "angebracht fall festungswerke tauf engländer dischen erwärmet hauptzweck leide hornung\n", + "hinziehen kinnlade zeige bleichen großmuth preßfreyheit brauchbare verwandten schulmeister karakter\n", + "muntern herzogthums deutlich königreichs bewaffnet berühren gener zieht vereinigen ehrlichkeit\n", + "hypo erben gesammte tyrann brunn thätigen westphälischen gram offizier wiederhohlte\n", + "einsehen anhang schont wahrt ausschweifung stifts qualität betrogenen ruhestandes tamsweg\n", + "leib weiches bilanz befonders stärkste einziehen felben befiehlt hirn fleisches\n", + "genehmigung schreib sarg innigsten unent leichtgläubigkeit enthaltenen geschah signal aufhebung\n", + "kartoffeln vernachläßiget feldmarschalls verfer rechtmäßiger staatszeitung verflossenen schien philosophischen zugwerker\n", + "versteigert landesherrn geringste aufsätze erwartete fere zähne stadtkaplanev wahrnehmen klaffe\n" + ] + } + ], + "source": [ + "for t in model_output['topics']:\n", + " print(\" \".join(t))" + ] + }, + { + "cell_type": "markdown", + "id": "01663149-8856-4aef-ab9e-681c3049b27e", + "metadata": {}, + "source": [ + "

further optimization

" + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "id": "d18b7666-b307-4c82-b46d-402bd56ec9d2", + "metadata": {}, + "outputs": [], + "source": [ + "search_space = {\"rho_size\": Integer(280,400), \n", + " \"t_hidden_size\": Categorical({700, 850, 1000}),\n", + " \"embedding_size\": Integer(280, 400)}" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "id": "fecc2d7f-9108-4d51-ba7c-1e1be318ad7b", + "metadata": {}, + "outputs": [], + "source": [ + "coherence = Coherence(texts=dataset.get_corpus(), measure = 'c_v')" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "id": "f8898396-ea76-4107-8f47-2af31ca26ffb", + "metadata": {}, + "outputs": [], + "source": [ + "optimization_runs=45" + ] + }, + { + "cell_type": "code", + "execution_count": 46, + "id": "1fc489cc-edae-4fa1-990e-e10056b521f9", + "metadata": {}, + "outputs": [], + "source": [ + "model_runs=6" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "id": "368f0810-27cb-4108-b41d-3cabe751215e", + "metadata": {}, + "outputs": [], + "source": [ + "optimizer=Optimizer()\n", + "import time\n", + "start = time.time()\n", + "optimization_result = optimizer.optimize(\n", + " model, dataset, coherence, search_space, number_of_call=optimization_runs, \n", + " model_runs=model_runs, save_models=True, \n", + " extra_metrics=None, # to keep track of other metrics\n", + " save_path='results/test_ETM2_sz//')\n", + "end = time.time()\n", + "duration = end - start\n", + "optimization_result.save_to_csv(\"results_ETM2_sz.csv\")\n", + "print('Optimizing model took: ' + str(round(duration)) + ' seconds.')" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "id": "49353f4e-36bc-442f-868d-8f73779a76ae", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "dict_keys(['dataset_name', 'dataset_path', 'is_cached', 'kernel', 'acq_func', 'surrogate_model', 'optimization_type', 'model_runs', 'save_models', 'save_step', 'save_name', 'save_path', 'early_stop', 'early_step', 'plot_model', 'plot_best_seen', 'plot_name', 'log_scale_plot', 'search_space', 'model_name', 'model_attributes', 'use_partitioning', 'metric_name', 'extra_metric_names', 'metric_attributes', 'extra_metric_attributes', 'current_call', 'number_of_call', 'random_state', 'x0', 'y0', 'n_random_starts', 'initial_point_generator', 'topk', 'time_eval', 'dict_model_runs', 'f_val', 'x_iters'])" + ] + }, + "execution_count": 48, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import json\n", + "results = json.load(open('results/test_ETM2_sz/result.json','r'))\n", + "results.keys()" + ] + }, + { + "cell_type": "code", + "execution_count": 49, + "id": "ce28315b-6b11-4ca1-ac93-847edd5844a7", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "plt.xlabel('Iteration')\n", + "plt.ylabel('Coherence score (c_v)')\n", + "plt.title('Median coherence score per iteration')\n", + "plt.plot(results['f_val'])\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "id": "078a4af7-e15f-4cc8-bb3f-12a423848956", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "31" + ] + }, + "execution_count": 50, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "results[ 'f_val'].index(max(results[ 'f_val']))" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "id": "5c50e8fc-355c-4b15-934e-f45877e13e75", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.48312621642588083" + ] + }, + "execution_count": 51, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "results[\"f_val\"][24]" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "id": "8ee5de1d-a386-4451-a115-ff8fea9d922d", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "dict_keys(['embedding_size', 'rho_size', 't_hidden_size'])" + ] + }, + "execution_count": 52, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "results['x_iters'].keys()" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "id": "b7d6a4f4-25e7-4b90-840c-2336b5f37b7e", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[327, 364, 700]\n" + ] + } + ], + "source": [ + "print([results['x_iters'][parameter][10] for parameter in results['x_iters'].keys()])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c0d156a7-1b56-4731-a26a-fc5f5305cb6d", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "69a6259e-904f-47c8-b1b8-e7128243510e", + "metadata": {}, + "outputs": [], + "source": [ + "model = ETM(num_topics=14, num_epochs=150, t_hidden_size=700, rho_size=364,\n", + "embedding_size=327, activation='relu', dropout=0.69588, lr=0.005,\n", + "optimizer='adam', batch_size=128, clip=0.0, wdecay=1.2e-06, bow_norm=1,\n", + "device='cpu', top_word=10, train_embeddings=True, embeddings_path=None,\n", + "embeddings_type='pickle', binary_embeddings=True,\n", + "headerless_embeddings=False, use_partitions=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "1a686356-9056-4c22-80e9-855ffd0e99a8", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "model: ETM(\n", + " (t_drop): Dropout(p=0.69588, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=364, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=364, out_features=14, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=700, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=700, out_features=700, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=700, out_features=14, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=700, out_features=14, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21529.75 .. NELBO: 21529.77\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n" + ] + } + ], + "source": [ + "model_output = model.train_model(dataset)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "313a0c0c-dbf1-4ede-8656-e9499318d030", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "verschwender schrei entschied wendete schlamm fracks xxxviii schloffe vorgegangen türkenkriege\n", + "kauft weihnachten orte juliana population geistlicher laßt drittheile überlassen fachen\n", + "triebfedern rasche erzherzog aufrecht amerikaner kommando hemden betrachteten anzuge höflich\n", + "verträgt feigen pfarre blüht eigenthümliche zoll faßt offene weifen empfindungen\n", + "allianztraktat jahren braver genua anzei künstlers cavalerie zähne reichsten bezah\n", + "zucker rubriken zwecke aufgeklärten urch sriedrich aufzulösen verschaffen ungehindert herrn\n", + "medaillen vorrücken intelligenzblatte befragen gemüther weigerte brigaden älteste ziem innerli\n", + "vermögen dienste sohns stan gegenwär gesorgt einsetzung apostolischen weißer forgt\n", + "fortpflanzen gegeben schwächern überlegenen landesherr umkehren zuverläßiges verehren mittelbar befindliche\n", + "verdammt ausdünstungen geschadet follst nische mahlzeiten anschläge beliebt materie abfaffen\n", + "lütticher meyer marktplätzen bemeldter trägerweibern diger braila abgeschickt urtheilet langer\n", + "aufrichtigen spinnen xxvii schadet vergrößert erwählen papiers kopfputz mörfer aufwallen\n", + "dürftigen gehorsame geziemend fehlet saamen säuren netzen glaubt zittern nützliche\n", + "kampfer aeckern poet dafige kopfe lichsten dürften seinige zusam gieng\n" + ] + } + ], + "source": [ + "for t in model_output['topics'][:14]:\n", + " print(\" \".join(t))" + ] + }, + { + "cell_type": "code", + "execution_count": 62, + "id": "f5b32f31-4169-4351-93cc-cd03a3c394fb", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['__class__',\n", + " '__class_getitem__',\n", + " '__contains__',\n", + " '__delattr__',\n", + " '__delitem__',\n", + " '__dir__',\n", + " '__doc__',\n", + " '__eq__',\n", + " '__format__',\n", + " '__ge__',\n", + " '__getattribute__',\n", + " '__getitem__',\n", + " '__gt__',\n", + " '__hash__',\n", + " '__init__',\n", + " '__init_subclass__',\n", + " '__ior__',\n", + " '__iter__',\n", + " '__le__',\n", + " '__len__',\n", + " '__lt__',\n", + " '__ne__',\n", + " '__new__',\n", + " '__or__',\n", + " '__reduce__',\n", + " '__reduce_ex__',\n", + " '__repr__',\n", + " '__reversed__',\n", + " '__ror__',\n", + " '__setattr__',\n", + " '__setitem__',\n", + " '__sizeof__',\n", + " '__str__',\n", + " '__subclasshook__',\n", + " 'clear',\n", + " 'copy',\n", + " 'fromkeys',\n", + " 'get',\n", + " 'items',\n", + " 'keys',\n", + " 'pop',\n", + " 'popitem',\n", + " 'setdefault',\n", + " 'update',\n", + " 'values']" + ] + }, + "execution_count": 62, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "dir(model_output)" + ] + }, + { + "cell_type": "code", + "execution_count": 70, + "id": "488c4b22-f4f7-48fb-b05f-bf940cb0ec10", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "dict_keys(['topic-word-matrix', 'topic-document-matrix', 'topics', 'test-topic-document-matrix'])\n" + ] + } + ], + "source": [ + "print(model_output.keys())" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "775236a0-e5e5-4ed3-b096-9336b40be5b4", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'topic-word-matrix': array([[6.9258522e-06, 7.0592828e-06, 6.7569863e-06, ..., 6.7321225e-06,\n", + " 6.7810251e-06, 7.2094231e-06],\n", + " [6.9169928e-06, 7.1107620e-06, 6.6437619e-06, ..., 6.9584157e-06,\n", + " 6.5923336e-06, 7.1025829e-06],\n", + " [7.0210517e-06, 7.1919844e-06, 6.8026607e-06, ..., 7.1691429e-06,\n", + " 6.7968931e-06, 7.0304377e-06],\n", + " ...,\n", + " [7.1035447e-06, 6.9865746e-06, 6.8815916e-06, ..., 6.8862514e-06,\n", + " 6.6918906e-06, 7.4530471e-06],\n", + " [7.0138044e-06, 7.2490761e-06, 6.9026905e-06, ..., 7.1273948e-06,\n", + " 6.8776390e-06, 6.8034424e-06],\n", + " [7.1460258e-06, 7.1902705e-06, 6.8003392e-06, ..., 6.7553269e-06,\n", + " 6.6256266e-06, 7.1808463e-06]], dtype=float32),\n", + " 'topic-document-matrix': array([[0.07591577, 0.07600834, 0.07590558, ..., 0.07593688, 0.07595427,\n", + " 0.0759881 ],\n", + " [0.07686871, 0.07691482, 0.07683634, ..., 0.07688177, 0.07689648,\n", + " 0.0769223 ],\n", + " [0.06412244, 0.06403678, 0.0641246 , ..., 0.06411767, 0.06410408,\n", + " 0.06406102],\n", + " ...,\n", + " [0.06970522, 0.06971214, 0.06970528, ..., 0.06972816, 0.06972184,\n", + " 0.06972551],\n", + " [0.06593458, 0.06585251, 0.06592115, ..., 0.06587868, 0.06586818,\n", + " 0.06585276],\n", + " [0.06263853, 0.06253602, 0.06266072, ..., 0.0626139 , 0.06259059,\n", + " 0.06254309]], dtype=float32),\n", + " 'topics': [['verschwender',\n", + " 'schrei',\n", + " 'entschied',\n", + " 'wendete',\n", + " 'schlamm',\n", + " 'fracks',\n", + " 'xxxviii',\n", + " 'schloffe',\n", + " 'vorgegangen',\n", + " 'türkenkriege'],\n", + " ['kauft',\n", + " 'weihnachten',\n", + " 'orte',\n", + " 'juliana',\n", + " 'population',\n", + " 'geistlicher',\n", + " 'laßt',\n", + " 'drittheile',\n", + " 'überlassen',\n", + " 'fachen'],\n", + " ['triebfedern',\n", + " 'rasche',\n", + " 'erzherzog',\n", + " 'aufrecht',\n", + " 'amerikaner',\n", + " 'kommando',\n", + " 'hemden',\n", + " 'betrachteten',\n", + " 'anzuge',\n", + " 'höflich'],\n", + " ['verträgt',\n", + " 'feigen',\n", + " 'pfarre',\n", + " 'blüht',\n", + " 'eigenthümliche',\n", + " 'zoll',\n", + " 'faßt',\n", + " 'offene',\n", + " 'weifen',\n", + " 'empfindungen'],\n", + " ['allianztraktat',\n", + " 'jahren',\n", + " 'braver',\n", + " 'genua',\n", + " 'anzei',\n", + " 'künstlers',\n", + " 'cavalerie',\n", + " 'zähne',\n", + " 'reichsten',\n", + " 'bezah'],\n", + " ['zucker',\n", + " 'rubriken',\n", + " 'zwecke',\n", + " 'aufgeklärten',\n", + " 'urch',\n", + " 'sriedrich',\n", + " 'aufzulösen',\n", + " 'verschaffen',\n", + " 'ungehindert',\n", + " 'herrn'],\n", + " ['medaillen',\n", + " 'vorrücken',\n", + " 'intelligenzblatte',\n", + " 'befragen',\n", + " 'gemüther',\n", + " 'weigerte',\n", + " 'brigaden',\n", + " 'älteste',\n", + " 'ziem',\n", + " 'innerli'],\n", + " ['vermögen',\n", + " 'dienste',\n", + " 'sohns',\n", + " 'stan',\n", + " 'gegenwär',\n", + " 'gesorgt',\n", + " 'einsetzung',\n", + " 'apostolischen',\n", + " 'weißer',\n", + " 'forgt'],\n", + " ['fortpflanzen',\n", + " 'gegeben',\n", + " 'schwächern',\n", + " 'überlegenen',\n", + " 'landesherr',\n", + " 'umkehren',\n", + " 'zuverläßiges',\n", + " 'verehren',\n", + " 'mittelbar',\n", + " 'befindliche'],\n", + " ['verdammt',\n", + " 'ausdünstungen',\n", + " 'geschadet',\n", + " 'follst',\n", + " 'nische',\n", + " 'mahlzeiten',\n", + " 'anschläge',\n", + " 'beliebt',\n", + " 'materie',\n", + " 'abfaffen'],\n", + " ['lütticher',\n", + " 'meyer',\n", + " 'marktplätzen',\n", + " 'bemeldter',\n", + " 'trägerweibern',\n", + " 'diger',\n", + " 'braila',\n", + " 'abgeschickt',\n", + " 'urtheilet',\n", + " 'langer'],\n", + " ['aufrichtigen',\n", + " 'spinnen',\n", + " 'xxvii',\n", + " 'schadet',\n", + " 'vergrößert',\n", + " 'erwählen',\n", + " 'papiers',\n", + " 'kopfputz',\n", + " 'mörfer',\n", + " 'aufwallen'],\n", + " ['dürftigen',\n", + " 'gehorsame',\n", + " 'geziemend',\n", + " 'fehlet',\n", + " 'saamen',\n", + " 'säuren',\n", + " 'netzen',\n", + " 'glaubt',\n", + " 'zittern',\n", + " 'nützliche'],\n", + " ['kampfer',\n", + " 'aeckern',\n", + " 'poet',\n", + " 'dafige',\n", + " 'kopfe',\n", + " 'lichsten',\n", + " 'dürften',\n", + " 'seinige',\n", + " 'zusam',\n", + " 'gieng']],\n", + " 'test-topic-document-matrix': array([[0.07585999, 0.07588612, 0.07585543, ..., 0.0758736 , 0.07587933,\n", + " 0.0755638 ],\n", + " [0.07681084, 0.07683492, 0.07680734, ..., 0.07682308, 0.07683484,\n", + " 0.07654927],\n", + " [0.06419118, 0.06416044, 0.06420392, ..., 0.06418631, 0.06417765,\n", + " 0.06453907],\n", + " ...,\n", + " [0.06972634, 0.06972192, 0.06973599, ..., 0.06973203, 0.06972956,\n", + " 0.06972978],\n", + " [0.06594001, 0.06592058, 0.06593978, ..., 0.06593129, 0.06591856,\n", + " 0.06612483],\n", + " [0.06272108, 0.06269031, 0.06272344, ..., 0.06270203, 0.06269071,\n", + " 0.06313221]])}" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "model_output" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "e7267fce-2e7d-4868-af2c-a75f3ee1988e", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "verschwender schrei entschied wendete schlamm fracks xxxviii schloffe vorgegangen türkenkriege\n", + "kauft weihnachten orte juliana population geistlicher laßt drittheile überlassen fachen\n", + "triebfedern rasche erzherzog aufrecht amerikaner kommando hemden betrachteten anzuge höflich\n", + "verträgt feigen pfarre blüht eigenthümliche zoll faßt offene weifen empfindungen\n", + "allianztraktat jahren braver genua anzei künstlers cavalerie zähne reichsten bezah\n", + "zucker rubriken zwecke aufgeklärten urch sriedrich aufzulösen verschaffen ungehindert herrn\n", + "medaillen vorrücken intelligenzblatte befragen gemüther weigerte brigaden älteste ziem innerli\n", + "vermögen dienste sohns stan gegenwär gesorgt einsetzung apostolischen weißer forgt\n", + "fortpflanzen gegeben schwächern überlegenen landesherr umkehren zuverläßiges verehren mittelbar befindliche\n", + "verdammt ausdünstungen geschadet follst nische mahlzeiten anschläge beliebt materie abfaffen\n", + "lütticher meyer marktplätzen bemeldter trägerweibern diger braila abgeschickt urtheilet langer\n", + "aufrichtigen spinnen xxvii schadet vergrößert erwählen papiers kopfputz mörfer aufwallen\n", + "dürftigen gehorsame geziemend fehlet saamen säuren netzen glaubt zittern nützliche\n", + "kampfer aeckern poet dafige kopfe lichsten dürften seinige zusam gieng\n" + ] + } + ], + "source": [ + "for t in model_output['topics']:\n", + " print(\" \".join(t))" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "b149bea1-fea2-4002-9288-6c0a23a18379", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "14" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(model_output['topic-document-matrix'])" + ] + }, + { + "cell_type": "code", + "execution_count": 140, + "id": "c2b3f5c0-8068-4e55-94ca-29083fc44005", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "verschwender schrei entschied wendete schlamm fracks xxxviii schloffe vorgegangen türkenkriege\n", + "kauft weihnachten orte juliana population geistlicher laßt drittheile überlassen fachen\n", + "triebfedern rasche erzherzog aufrecht amerikaner kommando hemden betrachteten anzuge höflich\n", + "verträgt feigen pfarre blüht eigenthümliche zoll faßt offene weifen empfindungen\n", + "allianztraktat jahren braver genua anzei künstlers cavalerie zähne reichsten bezah\n", + "zucker rubriken zwecke aufgeklärten urch sriedrich aufzulösen verschaffen ungehindert herrn\n", + "medaillen vorrücken intelligenzblatte befragen gemüther weigerte brigaden älteste ziem innerli\n", + "vermögen dienste sohns stan gegenwär gesorgt einsetzung apostolischen weißer forgt\n", + "fortpflanzen gegeben schwächern überlegenen landesherr umkehren zuverläßiges verehren mittelbar befindliche\n", + "verdammt ausdünstungen geschadet follst nische mahlzeiten anschläge beliebt materie abfaffen\n", + "lütticher meyer marktplätzen bemeldter trägerweibern diger braila abgeschickt urtheilet langer\n", + "aufrichtigen spinnen xxvii schadet vergrößert erwählen papiers kopfputz mörfer aufwallen\n", + "dürftigen gehorsame geziemend fehlet saamen säuren netzen glaubt zittern nützliche\n", + "kampfer aeckern poet dafige kopfe lichsten dürften seinige zusam gieng\n" + ] + } + ], + "source": [ + "for t in model_output['topics']:\n", + " print(*t)" + ] + }, + { + "cell_type": "code", + "execution_count": 135, + "id": "c097cbc3-f467-45b7-a4f1-ea74b2799733", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.0758883043904515\n", + "0.07683929406544741\n", + "0.06417275667190551\n", + "0.07903451053973506\n", + "0.07001960816628792\n", + "0.0760425948044833\n", + "0.08081603159799296\n", + "0.06421986480846124\n", + "0.0801154355135034\n", + "0.06826532531310531\n", + "0.06625365450540009\n", + "0.06973398713504567\n", + "0.065916263991419\n", + "0.06268237060045495\n" + ] + } + ], + "source": [ + "for list in model_output['topic-document-matrix']:\n", + " print(((sum(list))/340))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "22214121-5b7b-4dc1-b626-a1ebe8607c85", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "f3fbd760-4f73-491e-a6fb-7483772fe9a7", + "metadata": {}, + "outputs": [], + "source": [ + "model = ETM(num_topics=70, num_epochs=150, t_hidden_size=700, rho_size=364,\n", + "embedding_size=327, activation='relu', dropout=0.69588, lr=0.005,\n", + "optimizer='adam', batch_size=128, clip=0.0, wdecay=1.2e-06, bow_norm=1,\n", + "device='cpu', top_word=10, train_embeddings=True, embeddings_path=None,\n", + "embeddings_type='pickle', binary_embeddings=True,\n", + "headerless_embeddings=False, use_partitions=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "0ff074e3-95b9-47c9-985f-b49543dbc975", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "model: ETM(\n", + " (t_drop): Dropout(p=0.69588, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=364, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=364, out_features=70, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=700, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=700, out_features=700, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=700, out_features=70, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=700, out_features=70, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21538.63 .. NELBO: 21538.66\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n" + ] + } + ], + "source": [ + "model_output = model.train_model(dataset)" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "0be7476c-e7f8-4375-bba1-d1a8cdc63786", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "vermindern taucht weich chaft armuth angebracht befürchten nimmt eigen abende\n", + "brennt wörtlich verlassen wahre fordere schädlicher gerichten ergeben breite größere\n", + "westlichen rußische jagen bespritzt xxvi beginnen clement glänzte britische gemmingen\n", + "urtheile vorgelegt erwählt fchlagen anklage patriotischen feyer derten ausführung glieder\n", + "erdäpfel anvertrauet ueberschwemmungen mahl kennt geschenk dreyer beinahe weit donau\n", + "beschließen hinderniß fayette hätte wien endlich dauerhafter vorgegangen lieber fanden\n", + "rund raths geht freude gehalten thrones haut jakob leider herren\n", + "kannt erzieht vereiniget trocknet stockwerke vergnügungen zorn seelsorger anleit verspürt\n", + "gegenwart schwedens starke sachen hieronymus austrocknung ause leider feht mannes\n", + "haaren scheine theilung bracht gesichtspunkt gefell blitz gewitter beyder dukaten\n", + "entwurf fentliche ernannten frommen belieben feldzugs bewährtes entbehren suchet aposten\n", + "anordnung gestraft hoffe entreißen rettet stärkste verdacht einsehen georg jährlichen\n", + "hallein erregten thore forderungen antwort beschließen vorgegangen gallfieber aehnlichkeit vernachläßigung\n", + "schneidet werkzeuge silber verrathen derte ludwigs reinen ließen entgegen glaubten\n", + "glanze angebracht schweiße führen gefangen auszusetzen kalte bemerkte bewirken erfüllung\n", + "erleichterung abänderungen ständischen hochfürstl zeitlang baptist ende bisherige hinderniß lafft\n", + "mußt patriotischen fchäfte kanone auszehrung fuße ochsen verdienstes verursachte mahlen\n", + "fremde weislich gedruckt anfänglich trachten ellen nachsicht flammen fertig neueste\n", + "stehen falle knaben verächtlich versteigerung geschichte donau verschub getränke bürgerlicher\n", + "xliv titus meiden parthey auszudrücken nämlichen damen dienen fühlt unendliche\n", + "dieß kopfs quelle vollen belegen brüder bloßen darum darf lung\n", + "schicken kammerdiener bearbeitung wann bloße bißthum folgenden davon standes glatt\n", + "athmen unparteiische zwei dert martin koth kurze liebe hähne feinsten\n", + "leben hofraths geburt salzburger grafen satt geschöpfe bewährte gleichen stärken\n", + "falle anboth herz verlassenschaft jahr waffen freuet schale wahre errichten\n", + "hallein starker beschrieben frühe ruhig verführung hebamme nachsicht verbunden forderungen\n", + "gewerbes mahls chris erhebt weißt obst schmied raub schrie kommando\n", + "verbinden giftigen regierenden besonderer vorsicht braucht gesundheit westen gedenket erhabenen\n", + "unfre fünf wohlstand schwärmerisch publikum wirklich beliebe schuldigkeit schmid hause\n", + "wohl begehen mobilien behält vorurtheil professor ihrige gelegen capital erweitern\n", + "fränkischen aufnehmen wobey betrag bewiesen lehen nützlich vers begeben schauplatz\n", + "vorsicht anhaltenden ordentlichen leonhard begehen anstrengung verfertigten festem vervollkommnung tribunal\n", + "citation ausgelaffen seltenheit vermiethen erscheinen allein bewegungen vertheilung herbste mindesten\n", + "listige reiben soldat wohlthätig nothwendige neuerer wenigstens gartens entfernten metzen\n", + "magen donau fanden verbinden mahl müsse einfalt sämmtlichen vernunft gelesen\n", + "vorposten zorn kanone entfernung verschanzungen benedikt reichskriege feindes getrieben vermit\n", + "kammerdiener lieber hoffe kurze bisherige fürchtet gerichteten geringer vermögens wählten\n", + "früchten leeren fürchtet trieben mache mittlerweile keffel einnimmt physische gewöhnen\n", + "vermiethen benedikt bauen vergnügungen reich dreißig nutzen gleich unterhaltung scheinen\n", + "herren wanken verlohr diejenigen präsident vierten begierde nachtheile fieber schauplatz\n", + "verleger weißt staatsschulden eicheln fast nützlich fens paula lang ruhe\n", + "daran geschafft geburts hallein gehabt anstand veränderte wahrhaft unnütze erscheinung\n", + "förmliche angebracht verbeffern annahme auflage wahren contra getreidpr jagt gegebenen\n", + "aufführung größere tischen geschichte ganze vermeidung dorf verwit zeiten einwilligung\n", + "hielt palais ordentlichen durchl raplaney punkten vorzubereiten rauben nimmt wünschte\n", + "einfalt versuchen platze erwarten unterzeichnet operationen expedition febr niederlande verbündeten\n", + "ausdrückliche einfältig einflößt eingeführten nachlaffen groffen waffersucht bildern mörderischen vice\n", + "belastet konrad gesundheit erhalt mayn einzuschränken billig revolution gläubiger mache\n", + "adolph marschall unterdessen betrachten vorfällen gewohnheiten ferd bisherige zimmet neue\n", + "dürre dinge ändert bringt riefen sogar prie obst russische foll\n", + "platze willen obst prüfung körpern fortschritten lästigen glas eigen erhaltung\n", + "hitze stoff leute ganze schriftlichen befanden nachsicht führe eifen gehabt\n", + "königinn verkaufs unterrichtet verschiedener eigenthümer niedliche zweytens fester blitz jahrhunderts\n", + "fend leichenhauses angelegenheit helfern wirf gewürze majestät flecken beytreten bisherige\n", + "gegoffen entfernte ohnehin durchgehends burger neigt gefäß gnügen männlichen wovon\n", + "friedrich alterthum flei monarchien kriegerische unmittelbare verkannt sträubten blase binder\n", + "pauken gesetzes lauten jungf behält jagd erhöht vertreter selben landmanne\n", + "weswegen termins schuldbriefs zusammen geschlechte genauen möglich getreten ausschlage trifft\n", + "parlement eckelhaft stens gesammten feiner fester bettler leichnam gärten vortrefflichen\n", + "that plötzlich bestimmung liste taugt bekennen verlassenschaft geschenkt lionen verstand\n", + "wirklich fortschritten vermeiden kanzley verwandte konvent gemeinschaftlichen klara reichsgutachten nämlich\n", + "unges begünstigung heiß brennende fruchtlos präsident ersucht höret tigen todt\n", + "einziger fremd almanach annahme strafen geburts fuche gewählt verschwen geringes\n", + "barmherzig außerhalb tige schüffel viehes durchgängig bisweilen beiträge tonnthal ernähren\n", + "betrachten schmerzens sigmund entstandenen kluge gefagt bouteille drücken kostet beleidigung\n", + "ascht brüderschaft gewiss beruhigen spinne fert landtag zorn deisendorf sohin\n", + "schlaf haaren wesentliche jahrhunderts mißliche ungeheuer maschine oktober vernichten vorurtheil\n", + "leidet vorgegangen werthe anzeige mache handwerks reinigen wochen eise rapport\n", + "quartiergeld lehrern gelernet königinn zuverläßige abzustellen erblanden feine daselbst näml\n", + "aufführung hervorgebracht verfertiget königreich gänzliche fällt lieber aufschrift veranlassen gewerbe\n" + ] + } + ], + "source": [ + "for t in model_output['topics']:\n", + " print(\" \".join(t))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "91eeddd5-c4f4-4b3c-9814-d64bd0d7ce82", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "07a15252-e7c9-4fd0-a6fd-aa88b7edeb2a", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "53c97212-9120-4492-bfaf-d26a22ebc4bb", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "a770dd52-3423-40a8-8463-debe17ae7713", + "metadata": {}, + "outputs": [], + "source": [ + "search_space = {\"num_topics\": Integer(10,100)}" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "b33ab3da-2bc5-44c3-8060-5b5289ab3c28", + "metadata": {}, + "outputs": [], + "source": [ + "coherence = Coherence(texts=dataset.get_corpus(), measure = 'c_v')" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "d4b29e9b-001b-4ee5-930c-746929d57f67", + "metadata": {}, + "outputs": [], + "source": [ + "optimization_runs=45" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "2cb69cf2-86e7-4c36-8827-d20730ff2fee", + "metadata": {}, + "outputs": [], + "source": [ + "model_runs=6" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "id": "9690bd27-67d8-4f43-a99e-9606f30916f6", + "metadata": {}, + "outputs": [], + "source": [ + "optimizer=Optimizer()\n", + "import time\n", + "start = time.time()\n", + "optimization_result = optimizer.optimize(\n", + " model, dataset, coherence, search_space, number_of_call=optimization_runs, \n", + " model_runs=model_runs, save_models=True, \n", + " extra_metrics=None, # to keep track of other metrics\n", + " save_path='results/test_ETM3_sz//')\n", + "end = time.time()\n", + "duration = end - start\n", + "optimization_result.save_to_csv(\"results_ETM3_sz.csv\")\n", + "print('Optimizing model took: ' + str(round(duration)) + ' seconds.')" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "647773ed-e7f0-4f0d-b765-5d2fe1ef3040", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "dict_keys(['dataset_name', 'dataset_path', 'is_cached', 'kernel', 'acq_func', 'surrogate_model', 'optimization_type', 'model_runs', 'save_models', 'save_step', 'save_name', 'save_path', 'early_stop', 'early_step', 'plot_model', 'plot_best_seen', 'plot_name', 'log_scale_plot', 'search_space', 'model_name', 'model_attributes', 'use_partitioning', 'metric_name', 'extra_metric_names', 'metric_attributes', 'extra_metric_attributes', 'current_call', 'number_of_call', 'random_state', 'x0', 'y0', 'n_random_starts', 'initial_point_generator', 'topk', 'time_eval', 'dict_model_runs', 'f_val', 'x_iters'])" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import json\n", + "results = json.load(open('results/test_ETM3_sz/result.json','r'))\n", + "results.keys()" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "id": "44b257eb-dfcd-487c-b2ec-84a9ba0c8577", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "plt.xlabel('Iteration')\n", + "plt.ylabel('Coherence score (c_v)')\n", + "plt.title('Median coherence score per iteration')\n", + "plt.plot(results['f_val'])\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "228e2414-3e59-42ae-9ce4-86d109ee329c", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "25" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "results[ 'f_val'].index(max(results[ 'f_val']))" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "06392676-c7a8-48d0-bdc5-5feb635c9d08", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.5162661889775072" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "results[\"f_val\"][25]" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "6eb8a94a-2a5b-4666-9677-ad07fba8ad3f", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "dict_keys(['num_topics'])" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "results['x_iters'].keys()" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "id": "99229b6f-5368-432b-84bc-c9b64bdbdd75", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[13]\n" + ] + } + ], + "source": [ + "print([results['x_iters'][parameter][10] for parameter in results['x_iters'].keys()])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "baf0eb27-d0e9-4a13-8454-4b6067ad233b", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "0739ae2d-2b06-4978-8db2-ecce1d25fa39", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "890cecb6-c1eb-4f83-94a1-9168291ef786", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "41637cb9-c6f0-4ec8-92b2-a63c2225e019", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d9e06380-7dbf-4f37-93e1-16f30cdb1587", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 35, + "id": "7928e479-7a5a-4795-9a5f-9b0aae7eb43d", + "metadata": {}, + "outputs": [], + "source": [ + "model = ETM(num_topics=13, num_epochs=150, t_hidden_size=700, rho_size=364,\n", + "embedding_size=327, activation='relu', dropout=0.69588, lr=0.005,\n", + "optimizer='adam', batch_size=128, clip=0.0, wdecay=1.2e-06, bow_norm=1,\n", + "device='cpu', top_word=10, train_embeddings=True, embeddings_path=None,\n", + "embeddings_type='pickle', binary_embeddings=True,\n", + "headerless_embeddings=False, use_partitions=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "id": "46ac1fee-ae47-473b-889c-e11de03c2701", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "model: ETM(\n", + " (t_drop): Dropout(p=0.69588, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=364, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=364, out_features=13, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=700, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=700, out_features=700, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=700, out_features=13, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=700, out_features=13, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21526.05 .. NELBO: 21526.07\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n" + ] + } + ], + "source": [ + "model_output = model.train_model(dataset)" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "id": "59380194-ac72-4e08-bd54-6ce1cb43adcf", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "größerer dabei backofen glebt stören güter mathias festungswerke wänden höhlen\n", + "ueber kanzler klöster lothringen mächtige entwichen baumgartner verstor gastgeb geschehener\n", + "zinnernen monsieur gesittete zirkel feldwebel schätzbar bestens jährliche gehöret zenden\n", + "beschäftigten richtungen bildniß erscheinen wartete handle franzö fischer rufe unterm\n", + "kalter erstaunlichen schädlicher aenderung wahrnimmt fetz befolgt statuen provence kerl\n", + "oerter größern partey wanken mona fchrieb kleiner ausübenden holden bewunderung\n", + "gestillt fliegen feuersbrunst historische verschwinden ausgewiesen kranz wefen selbige gatten\n", + "beschriebenen verant geistlich öffentli lindner einleitung funken stadtkaplaner augusts gemeine\n", + "schurken schneiden bittlich hexerey baumes unzertrennlich ablegen ausdrücken redlichkeit getheilt\n", + "menschen aufgetragen starken wende braucht geschlecht mustern befinden dorf berufen\n", + "voll verbefferung haare ueberdieß fuhrmann weniger ernsthaft gesteckt wirkungen mitwirken\n", + "schändlichen regimentern erblicken schildwache fchehen liebes vergessen hessischen lebensmittel pfalzbayern\n", + "befund geldmangel vernehmen vormundschaften aussehen bruderhause schlug papiere bestellten gekannt\n" + ] + } + ], + "source": [ + "for t in model_output['topics']:\n", + " print(\" \".join(t))" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "id": "ecf3a530-81b2-476b-90f9-28f2e4f74ca0", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.0816387701779604\n", + "0.06550782502574079\n", + "0.07324710266993326\n", + "0.08245156196986927\n", + "0.07667943771709414\n", + "0.08171002884559772\n", + "0.0674297684474903\n", + "0.08192688380094136\n", + "0.08294161724693636\n", + "0.07475886167410542\n", + "0.06921058441786206\n", + "0.06680779917275205\n", + "0.09568976275622845\n" + ] + } + ], + "source": [ + "for list in model_output['topic-document-matrix']:\n", + " print(((sum(list))/340))" + ] + }, + { + "cell_type": "markdown", + "id": "53a54874-6bb0-4196-ae2a-34c727ae8b5b", + "metadata": {}, + "source": [ + "

13 topics seem to be too small, which this number is manually corrected

" + ] + }, + { + "cell_type": "markdown", + "id": "54418961-e557-4135-8785-bf26e551f5f7", + "metadata": {}, + "source": [ + "

therefore, first, 60 topics are calculated

" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "id": "6e89a97d-d740-4670-9d38-674b4b38984f", + "metadata": {}, + "outputs": [], + "source": [ + "model = ETM(num_topics=60, num_epochs=150, t_hidden_size=700, rho_size=364,\n", + "embedding_size=327, activation='relu', dropout=0.69588, lr=0.005,\n", + "optimizer='adam', batch_size=128, clip=0.0, wdecay=1.2e-06, bow_norm=1,\n", + "device='cpu', top_word=10, train_embeddings=True, embeddings_path=None,\n", + "embeddings_type='pickle', binary_embeddings=True,\n", + "headerless_embeddings=False, use_partitions=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "id": "b4d30926-d03c-42be-aff9-3a25b6ade65a", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "model: ETM(\n", + " (t_drop): Dropout(p=0.69588, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=364, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=364, out_features=60, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=700, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=700, out_features=700, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=700, out_features=60, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=700, out_features=60, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.02 .. Rec_loss: 21539.07 .. NELBO: 21539.09\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n" + ] + } + ], + "source": [ + "model_output = model.train_model(dataset)" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "id": "da364d76-e6a0-4113-96f4-d4065a1b6a7e", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "glänzenden mittelbar gegenseitigen gestillt wünschet bekanntmachung überlassen fordern besseren meiden\n", + "königsberg terung neumarkt bettlern geister schatz brunnen älteren feuersbrunst niemand\n", + "erhaltung bruderhaufe ledige kleinen euern daten schädliche möchten söhne eingesandt\n", + "güter zeit hofrath getreide plane verschiedenen ruperti leiten behandlung jüngst\n", + "gemacht nämlichen zweig stehen gebrochen pfund freye erheilt jederzeit ruht\n", + "errichtung folge äußerte belieben einsicht papiere hoffnung wodurch spur xxxiv\n", + "gewachsen wegen anzeigen theiles haupt witwen bouteille gesetzgebung folge metzger\n", + "gedanken fonderlich derten frankreichs bestellungen hält laut abgethan strafe termin\n", + "erschweren bricht herum geft fehlerhafte follte schenken terte äußerste vorzüglichsten\n", + "vertrauen minister eindringen wiederhohlt indeß alsdann dolch aufrechthaltung wahrscheinlichkeit thum\n", + "vorrath gelesen linz bedürf träumen trin rechnung jüngling folge heinrich\n", + "effe flüchtigen töpfen anberaumten papiers einförmiges klagte bemerkt leim weineßig\n", + "gemmingen antwortet ankommen stuttgart verirrungen anfalle auszüge getadelt beginnen halb\n", + "reihe fobald ertheilen erlangen bisherigen aufruhr verlieren verhüten geräumt unterzeichneten\n", + "bestrichen hochzeit urkunde unfers völkern belieben seele gleiches wirth meln\n", + "verblendet landmanns damen fäden krankenhaus äußerlichen einmahl entlegenen bezweifeln langsamer\n", + "gott ausfuhr vorläufige kleine mitglied bewogen ankunft vereinigen nämlichen wobey\n", + "taglöhnern gers brachte ruperti xxii gesellschaft anverwandten fern beys kommenden\n", + "stände keller katholischen stel jedesmahl dels bestellungen vermehren sohn bettel\n", + "schuß gruß gewerbes verwahrung gnädig anboth derfelben termine auszuführen unterliegen\n", + "vorläufige wichtige erhöhet geliebt unstreitig ists bezahlt gleiche anfänglich stehen\n", + "vorrath beobach peters leichnam brechen vermögen tags dichte fehler regierenden\n", + "vetter gesichtspunkte nährt uippigkeit entließ buchhandlungen ehescheidungsproeeffe arabischen trennung fens\n", + "schickliche schlager jurisdiction woiwodschaft digt beobachtung hochlöblichen verweisen infonderheit schmid\n", + "gnädigste verstärkt fortgang pauken gend eintheilung oberhand todes heftigsten wachs\n", + "höflich bekleidete livre dergl xxxviii beobachtungen livr materie betäubung fehr\n", + "prokurator verdienstvollen schiboleth goldne befunden fern jacobiner manu zufälle ausgaben\n", + "behausung vorige bier deutsch bezahlt anweisung theatiner gieng bringen burg\n", + "ausgefallen terthanen anerkennen schooß einmahl gouvernements wirds bamberg frühling wachsthum\n", + "unnütz hausknecht feldzuges thum dermahl vorrechte verhältniß vernunft herrschaft gebrochen\n", + "wichtigkeit deren güter fondern behausung adels asche waaren herrschenden schwert\n", + "reiß edlern nothwen heerde feinen eigenem betrachte landwirthe brüche hirn\n", + "trank gastgeb allgemeiner ankommen publikums lebenswandel gemeinschaftlichen offenbare kostbar angenommen\n", + "kriegsheere gott pforte frischen gleichen gebethen höhere zahlreichen frühjahre auswärtigen\n", + "gebühren fetz gültigkeit schloffen getreu schonen meen vergleiche anrichten vierzehn\n", + "thor starken tadel dorf witwen nigen kamen häufig anlage erkundigen\n", + "dauphin gastgeb mülln pfalzgraf formierung erbschaft philipp xliv grena gott\n", + "wiederum vollkommenste erreicht hall nunft schiffen gewäffer genauigkeit gerechtsame kündigen\n", + "veränderung gesetzbuch abends gegründeten älteren einwürfe studierte doktor vorsätzlich forderung\n", + "ferdinand gefärbt haus weniger hiermit folg reibt baum vorgelegt warnung\n", + "traff bauerngut wodurch gelegene vorrechte gewissen universität nonnthal tragen ruhigen\n", + "hamburg schweigen position reichskriege preußis mittwochs roer fition kriegserklärung düren\n", + "belohnungen pforte fchwache bergseite unreinen jungfr schadet kriegs versteigerung wegen\n", + "angesehen entsteht gelegenen freiem find skizze nonnthal verstande verwal uebersicht\n", + "fchloffen huffaren erbprinz verlieren festgesetzten revolution vorbereitung danzig beständiger genaueste\n", + "mehr ligen werk füßen vorkommenden augenblicklich wären liche getreuen hallein\n", + "letztwillige gesinde bensordnung pombal empfänglicher drücken stände bevorstehen uhrmacher taufen\n", + "bettstellen scherflein häusern wachsames gmünd fonach näße anlage einwoh vorbringen\n", + "gewarten beiderseitigen weine verkaufen staats ganzer roth provinz kungen sterbfälle\n", + "seelsorge bezeugen mülln gewalt kälte schnur verfloffen anwenden thum ende\n", + "köchinn jahren zunft forderten mitteln ansteckend fortschreitenden merkwürdigen eifer ehewirthinn\n", + "ungleich einmahl ficht bestürzung englischen gliedmaßen baare signal beyge punkte\n", + "pfarre vorstellungen unkosten zuversicht angenommen schreckliche nöthig anstellen schein mahle\n", + "ists lähmung zeiten philadelphia dersel haften weife volk füllt helfen\n", + "verfalls rebellion theil krieg gerührten resultate profession häufige wegen verfloffen\n", + "blattes thaten anscheine hauptarmee folge waisenhaus gesinnung volution wären verletzung\n", + "vormundschaften anmelden friedenszeiten kaiserliche hergestellt angenommenen ohren eckelhaft waltung vorschrift\n", + "schatz fonderlich gabe frühe vierter kern aufenthalt gelben bruder räumen\n", + "schmeicheley tagbau standhaften tels diefe darlehen gebür aufsätzen fugt erklä\n", + "fichert hälfte fchadet übermäßigen arbeiter schickt begriffe hölzernen lächerlich feste\n" + ] + } + ], + "source": [ + "for t in model_output['topics']:\n", + " print(\" \".join(t))" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "id": "2a6f54dc-745c-49cb-83ed-5403360767bc", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.01723491944482221\n", + "0.017236668391920187\n", + "0.0157984183060334\n", + "0.017634381468900864\n", + "0.01661811669850174\n", + "0.01663571109118707\n", + "0.01719652590177515\n", + "0.017064361027715837\n", + "0.016431375171112664\n", + "0.015872657074428656\n", + "0.0164889548357357\n", + "0.01610009382643244\n", + "0.01721568297156516\n", + "0.017266959401176257\n", + "0.016389209437457954\n", + "0.017395209455314805\n", + "0.016347301148754708\n", + "0.016142682024442096\n", + "0.017799496464431287\n", + "0.01729717804118991\n", + "0.016783817621934063\n", + "0.016314994658836547\n", + "0.016110020569142174\n", + "0.017394971464048413\n", + "0.01626732898876071\n", + "0.015882323150906492\n", + "0.01578833398354404\n", + "0.01650252865408273\n", + "0.016717323140405558\n", + "0.016014549733303924\n", + "0.018009355467031984\n", + "0.01752319793381235\n", + "0.015554356572273022\n", + "0.01585833207868478\n", + "0.01585486727383207\n", + "0.01675477241001585\n", + "0.017207161167307812\n", + "0.017749456973636852\n", + "0.01686207766042036\n", + "0.017983459933277438\n", + "0.01568224923685193\n", + "0.01599347461562823\n", + "0.01670747391112587\n", + "0.017389886601663688\n", + "0.01586936333161943\n", + "0.016977906265460394\n", + "0.016496777134563993\n", + "0.01623970685417161\n", + "0.017096926096607658\n", + "0.016297074719606078\n", + "0.015832825706285587\n", + "0.016395912105765412\n", + "0.016183709857218405\n", + "0.016820954723174082\n", + "0.017344665905351147\n", + "0.016922684079583954\n", + "0.015580450233948582\n", + "0.015997257061740933\n", + "0.01744953612523044\n", + "0.01742203987258322\n" + ] + } + ], + "source": [ + "for list in model_output['topic-document-matrix']:\n", + " print(((sum(list))/340))" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "id": "0a59041e-58a1-4fb0-b32f-9da12b072a37", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'topic-word-matrix': array([[6.9692292e-06, 7.2685348e-06, 6.9262410e-06, ..., 6.6892062e-06,\n", + " 6.9524299e-06, 6.9002613e-06],\n", + " [6.7746378e-06, 7.3319220e-06, 7.0040869e-06, ..., 6.8953987e-06,\n", + " 6.9261127e-06, 7.0273350e-06],\n", + " [7.0670890e-06, 7.1495933e-06, 6.8913992e-06, ..., 7.0143838e-06,\n", + " 7.2441853e-06, 6.9877970e-06],\n", + " ...,\n", + " [6.8921681e-06, 7.0301644e-06, 7.0706014e-06, ..., 6.7806122e-06,\n", + " 7.0952497e-06, 7.1484455e-06],\n", + " [6.8551976e-06, 7.3104443e-06, 6.9770017e-06, ..., 6.7461137e-06,\n", + " 6.7160818e-06, 6.9127032e-06],\n", + " [6.9815219e-06, 7.2152693e-06, 7.0196579e-06, ..., 7.0988849e-06,\n", + " 6.9083744e-06, 6.7498941e-06]], dtype=float32), 'topic-document-matrix': array([[0.0172399 , 0.01723652, 0.01723618, ..., 0.01723219, 0.01723669,\n", + " 0.01723262],\n", + " [0.01724352, 0.01723989, 0.01723797, ..., 0.01723266, 0.01723654,\n", + " 0.01723438],\n", + " [0.01579382, 0.01579704, 0.01579516, ..., 0.01579864, 0.01579574,\n", + " 0.01579613],\n", + " ...,\n", + " [0.01598469, 0.0159925 , 0.01599574, ..., 0.01600039, 0.0159951 ,\n", + " 0.01599846],\n", + " [0.01744807, 0.01745121, 0.0174521 , ..., 0.01745087, 0.01745479,\n", + " 0.01745041],\n", + " [0.01742894, 0.01742487, 0.0174367 , ..., 0.01741806, 0.01742839,\n", + " 0.0174193 ]], dtype=float32), 'topics': [['glänzenden', 'mittelbar', 'gegenseitigen', 'gestillt', 'wünschet', 'bekanntmachung', 'überlassen', 'fordern', 'besseren', 'meiden'], ['königsberg', 'terung', 'neumarkt', 'bettlern', 'geister', 'schatz', 'brunnen', 'älteren', 'feuersbrunst', 'niemand'], ['erhaltung', 'bruderhaufe', 'ledige', 'kleinen', 'euern', 'daten', 'schädliche', 'möchten', 'söhne', 'eingesandt'], ['güter', 'zeit', 'hofrath', 'getreide', 'plane', 'verschiedenen', 'ruperti', 'leiten', 'behandlung', 'jüngst'], ['gemacht', 'nämlichen', 'zweig', 'stehen', 'gebrochen', 'pfund', 'freye', 'erheilt', 'jederzeit', 'ruht'], ['errichtung', 'folge', 'äußerte', 'belieben', 'einsicht', 'papiere', 'hoffnung', 'wodurch', 'spur', 'xxxiv'], ['gewachsen', 'wegen', 'anzeigen', 'theiles', 'haupt', 'witwen', 'bouteille', 'gesetzgebung', 'folge', 'metzger'], ['gedanken', 'fonderlich', 'derten', 'frankreichs', 'bestellungen', 'hält', 'laut', 'abgethan', 'strafe', 'termin'], ['erschweren', 'bricht', 'herum', 'geft', 'fehlerhafte', 'follte', 'schenken', 'terte', 'äußerste', 'vorzüglichsten'], ['vertrauen', 'minister', 'eindringen', 'wiederhohlt', 'indeß', 'alsdann', 'dolch', 'aufrechthaltung', 'wahrscheinlichkeit', 'thum'], ['vorrath', 'gelesen', 'linz', 'bedürf', 'träumen', 'trin', 'rechnung', 'jüngling', 'folge', 'heinrich'], ['effe', 'flüchtigen', 'töpfen', 'anberaumten', 'papiers', 'einförmiges', 'klagte', 'bemerkt', 'leim', 'weineßig'], ['gemmingen', 'antwortet', 'ankommen', 'stuttgart', 'verirrungen', 'anfalle', 'auszüge', 'getadelt', 'beginnen', 'halb'], ['reihe', 'fobald', 'ertheilen', 'erlangen', 'bisherigen', 'aufruhr', 'verlieren', 'verhüten', 'geräumt', 'unterzeichneten'], ['bestrichen', 'hochzeit', 'urkunde', 'unfers', 'völkern', 'belieben', 'seele', 'gleiches', 'wirth', 'meln'], ['verblendet', 'landmanns', 'damen', 'fäden', 'krankenhaus', 'äußerlichen', 'einmahl', 'entlegenen', 'bezweifeln', 'langsamer'], ['gott', 'ausfuhr', 'vorläufige', 'kleine', 'mitglied', 'bewogen', 'ankunft', 'vereinigen', 'nämlichen', 'wobey'], ['taglöhnern', 'gers', 'brachte', 'ruperti', 'xxii', 'gesellschaft', 'anverwandten', 'fern', 'beys', 'kommenden'], ['stände', 'keller', 'katholischen', 'stel', 'jedesmahl', 'dels', 'bestellungen', 'vermehren', 'sohn', 'bettel'], ['schuß', 'gruß', 'gewerbes', 'verwahrung', 'gnädig', 'anboth', 'derfelben', 'termine', 'auszuführen', 'unterliegen'], ['vorläufige', 'wichtige', 'erhöhet', 'geliebt', 'unstreitig', 'ists', 'bezahlt', 'gleiche', 'anfänglich', 'stehen'], ['vorrath', 'beobach', 'peters', 'leichnam', 'brechen', 'vermögen', 'tags', 'dichte', 'fehler', 'regierenden'], ['vetter', 'gesichtspunkte', 'nährt', 'uippigkeit', 'entließ', 'buchhandlungen', 'ehescheidungsproeeffe', 'arabischen', 'trennung', 'fens'], ['schickliche', 'schlager', 'jurisdiction', 'woiwodschaft', 'digt', 'beobachtung', 'hochlöblichen', 'verweisen', 'infonderheit', 'schmid'], ['gnädigste', 'verstärkt', 'fortgang', 'pauken', 'gend', 'eintheilung', 'oberhand', 'todes', 'heftigsten', 'wachs'], ['höflich', 'bekleidete', 'livre', 'dergl', 'xxxviii', 'beobachtungen', 'livr', 'materie', 'betäubung', 'fehr'], ['prokurator', 'verdienstvollen', 'schiboleth', 'goldne', 'befunden', 'fern', 'jacobiner', 'manu', 'zufälle', 'ausgaben'], ['behausung', 'vorige', 'bier', 'deutsch', 'bezahlt', 'anweisung', 'theatiner', 'gieng', 'bringen', 'burg'], ['ausgefallen', 'terthanen', 'anerkennen', 'schooß', 'einmahl', 'gouvernements', 'wirds', 'bamberg', 'frühling', 'wachsthum'], ['unnütz', 'hausknecht', 'feldzuges', 'thum', 'dermahl', 'vorrechte', 'verhältniß', 'vernunft', 'herrschaft', 'gebrochen'], ['wichtigkeit', 'deren', 'güter', 'fondern', 'behausung', 'adels', 'asche', 'waaren', 'herrschenden', 'schwert'], ['reiß', 'edlern', 'nothwen', 'heerde', 'feinen', 'eigenem', 'betrachte', 'landwirthe', 'brüche', 'hirn'], ['trank', 'gastgeb', 'allgemeiner', 'ankommen', 'publikums', 'lebenswandel', 'gemeinschaftlichen', 'offenbare', 'kostbar', 'angenommen'], ['kriegsheere', 'gott', 'pforte', 'frischen', 'gleichen', 'gebethen', 'höhere', 'zahlreichen', 'frühjahre', 'auswärtigen'], ['gebühren', 'fetz', 'gültigkeit', 'schloffen', 'getreu', 'schonen', 'meen', 'vergleiche', 'anrichten', 'vierzehn'], ['thor', 'starken', 'tadel', 'dorf', 'witwen', 'nigen', 'kamen', 'häufig', 'anlage', 'erkundigen'], ['dauphin', 'gastgeb', 'mülln', 'pfalzgraf', 'formierung', 'erbschaft', 'philipp', 'xliv', 'grena', 'gott'], ['wiederum', 'vollkommenste', 'erreicht', 'hall', 'nunft', 'schiffen', 'gewäffer', 'genauigkeit', 'gerechtsame', 'kündigen'], ['veränderung', 'gesetzbuch', 'abends', 'gegründeten', 'älteren', 'einwürfe', 'studierte', 'doktor', 'vorsätzlich', 'forderung'], ['ferdinand', 'gefärbt', 'haus', 'weniger', 'hiermit', 'folg', 'reibt', 'baum', 'vorgelegt', 'warnung'], ['traff', 'bauerngut', 'wodurch', 'gelegene', 'vorrechte', 'gewissen', 'universität', 'nonnthal', 'tragen', 'ruhigen'], ['hamburg', 'schweigen', 'position', 'reichskriege', 'preußis', 'mittwochs', 'roer', 'fition', 'kriegserklärung', 'düren'], ['belohnungen', 'pforte', 'fchwache', 'bergseite', 'unreinen', 'jungfr', 'schadet', 'kriegs', 'versteigerung', 'wegen'], ['angesehen', 'entsteht', 'gelegenen', 'freiem', 'find', 'skizze', 'nonnthal', 'verstande', 'verwal', 'uebersicht'], ['fchloffen', 'huffaren', 'erbprinz', 'verlieren', 'festgesetzten', 'revolution', 'vorbereitung', 'danzig', 'beständiger', 'genaueste'], ['mehr', 'ligen', 'werk', 'füßen', 'vorkommenden', 'augenblicklich', 'wären', 'liche', 'getreuen', 'hallein'], ['letztwillige', 'gesinde', 'bensordnung', 'pombal', 'empfänglicher', 'drücken', 'stände', 'bevorstehen', 'uhrmacher', 'taufen'], ['bettstellen', 'scherflein', 'häusern', 'wachsames', 'gmünd', 'fonach', 'näße', 'anlage', 'einwoh', 'vorbringen'], ['gewarten', 'beiderseitigen', 'weine', 'verkaufen', 'staats', 'ganzer', 'roth', 'provinz', 'kungen', 'sterbfälle'], ['seelsorge', 'bezeugen', 'mülln', 'gewalt', 'kälte', 'schnur', 'verfloffen', 'anwenden', 'thum', 'ende'], ['köchinn', 'jahren', 'zunft', 'forderten', 'mitteln', 'ansteckend', 'fortschreitenden', 'merkwürdigen', 'eifer', 'ehewirthinn'], ['ungleich', 'einmahl', 'ficht', 'bestürzung', 'englischen', 'gliedmaßen', 'baare', 'signal', 'beyge', 'punkte'], ['pfarre', 'vorstellungen', 'unkosten', 'zuversicht', 'angenommen', 'schreckliche', 'nöthig', 'anstellen', 'schein', 'mahle'], ['ists', 'lähmung', 'zeiten', 'philadelphia', 'dersel', 'haften', 'weife', 'volk', 'füllt', 'helfen'], ['verfalls', 'rebellion', 'theil', 'krieg', 'gerührten', 'resultate', 'profession', 'häufige', 'wegen', 'verfloffen'], ['blattes', 'thaten', 'anscheine', 'hauptarmee', 'folge', 'waisenhaus', 'gesinnung', 'volution', 'wären', 'verletzung'], ['vormundschaften', 'anmelden', 'friedenszeiten', 'kaiserliche', 'hergestellt', 'angenommenen', 'ohren', 'eckelhaft', 'waltung', 'vorschrift'], ['schatz', 'fonderlich', 'gabe', 'frühe', 'vierter', 'kern', 'aufenthalt', 'gelben', 'bruder', 'räumen'], ['schmeicheley', 'tagbau', 'standhaften', 'tels', 'diefe', 'darlehen', 'gebür', 'aufsätzen', 'fugt', 'erklä'], ['fichert', 'hälfte', 'fchadet', 'übermäßigen', 'arbeiter', 'schickt', 'begriffe', 'hölzernen', 'lächerlich', 'feste']], 'test-topic-document-matrix': array([[0.01723224, 0.01723307, 0.01723333, ..., 0.01723293, 0.01723388,\n", + " 0.01722582],\n", + " [0.01723445, 0.01723597, 0.01723442, ..., 0.01723306, 0.01723501,\n", + " 0.01722938],\n", + " [0.01579835, 0.01579879, 0.01579891, ..., 0.01579754, 0.01579835,\n", + " 0.01580556],\n", + " ...,\n", + " [0.01599825, 0.01599739, 0.01599787, ..., 0.01599816, 0.01599808,\n", + " 0.01601249],\n", + " [0.01744944, 0.01744932, 0.01744905, ..., 0.0174499 , 0.01744922,\n", + " 0.01744314],\n", + " [0.01742044, 0.01742211, 0.01742058, ..., 0.01741937, 0.01741809,\n", + " 0.01740098]])}\n" + ] + } + ], + "source": [ + "print(model_output)" + ] + }, + { + "cell_type": "markdown", + "id": "7dd613c4-2a35-4fbf-9d18-f18bf413d674", + "metadata": {}, + "source": [ + "

check topic distribution over corpus

" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "id": "3493a968-6b0f-4490-bfb8-04e31a5d1d18", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "60" + ] + }, + "execution_count": 42, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(model_output['topic-document-matrix'])" + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "id": "71032ab6-4a01-4cbf-835a-15c6a10d9e93", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[[0.0172399 0.01723652 0.01723618 ... 0.01723219 0.01723669 0.01723262]\n", + " [0.01724352 0.01723989 0.01723797 ... 0.01723266 0.01723654 0.01723438]\n", + " [0.01579382 0.01579704 0.01579516 ... 0.01579864 0.01579574 0.01579613]\n", + " ...\n", + " [0.01598469 0.0159925 0.01599574 ... 0.01600039 0.0159951 0.01599846]\n", + " [0.01744807 0.01745121 0.0174521 ... 0.01745087 0.01745479 0.01745041]\n", + " [0.01742894 0.01742487 0.0174367 ... 0.01741806 0.01742839 0.0174193 ]]\n" + ] + } + ], + "source": [ + "print(model_output['topic-document-matrix'])" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "id": "e67e9b28-c6cc-41c3-9086-c93a77b87089", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[0.0172399 0.01723652 0.01723618 0.01723394 0.01723822 0.01723585\n", + " 0.01723375 0.01723643 0.01723787 0.01723983 0.01723397 0.01724032\n", + " 0.01723637 0.01723669 0.01723834 0.0172344 0.01724049 0.01723438\n", + " 0.01723569 0.01723637 0.01723702 0.0172386 0.01723505 0.01723684\n", + " 0.01724047 0.0172384 0.01723375 0.01723735 0.01723917 0.01723247\n", + " 0.01724225 0.01724079 0.01723858 0.01723779 0.01724051 0.01723897\n", + " 0.01724019 0.01723633 0.01723572 0.01723579 0.01723783 0.01723714\n", + " 0.01723908 0.01723934 0.01723865 0.01723944 0.01723885 0.01723262\n", + " 0.01723646 0.01723688 0.0172406 0.01723487 0.0172351 0.01723246\n", + " 0.01723558 0.01723595 0.01723406 0.01723397 0.01723728 0.01723761\n", + " 0.01723436 0.01723804 0.01723754 0.01723942 0.01723422 0.01723529\n", + " 0.01724069 0.01723626 0.01723449 0.01723887 0.01723927 0.01723549\n", + " 0.01723545 0.01724279 0.0172411 0.01723889 0.01723579 0.01723583\n", + " 0.01723475 0.0172379 0.01723859 0.01723824 0.01723723 0.01723348\n", + " 0.01723601 0.01723958 0.0172338 0.01723423 0.01723981 0.0172347\n", + " 0.01723612 0.01723946 0.01724108 0.01723819 0.01723807 0.01723735\n", + " 0.01723679 0.01723756 0.01723479 0.01723962 0.01724068 0.01723781\n", + " 0.01723545 0.01724244 0.01723566 0.01723577 0.01723818 0.01723783\n", + " 0.01723781 0.01723565 0.01723645 0.01723534 0.01723197 0.01723846\n", + " 0.01723907 0.01724251 0.01723494 0.01723534 0.01723585 0.01723378\n", + " 0.01723964 0.01723567 0.01723637 0.01723612 0.01723513 0.01723883\n", + " 0.0172351 0.01723047 0.01723338 0.01723214 0.01723518 0.01723556\n", + " 0.01722644 0.01723989 0.01723635 0.01722765 0.01723552 0.01723639\n", + " 0.0172325 0.01722999 0.01723061 0.01723452 0.01723303 0.01723419\n", + " 0.01723234 0.01723967 0.01723675 0.01722627 0.01723549 0.01722944\n", + " 0.01723529 0.01722883 0.01722757 0.01723044 0.01723191 0.01722853\n", + " 0.01722849 0.01722935 0.01722665 0.01722922 0.01723461 0.0172353\n", + " 0.01723463 0.01723534 0.01723447 0.01723281 0.01723534 0.01723989\n", + " 0.01723254 0.01723303 0.01723433 0.01723202 0.01723442 0.01723504\n", + " 0.01723704 0.01723638 0.01723497 0.01723235 0.01724476 0.01723421\n", + " 0.01723591 0.01723466 0.01723146 0.01722956 0.01723148 0.01723157\n", + " 0.0172304 0.0172403 0.01723469 0.01723162 0.01723172 0.01723806\n", + " 0.01723495 0.01723591 0.01723367 0.01723299 0.01723569 0.01723311\n", + " 0.01723514 0.01723302 0.01723524 0.01722642 0.01723429 0.01723401\n", + " 0.01723379 0.0172313 0.01723467 0.01723098 0.01723046 0.01723915\n", + " 0.01723208 0.0172374 0.01723982 0.01723439 0.01723593 0.01723195\n", + " 0.01723198 0.01723214 0.01723732 0.01723291 0.01723751 0.017231\n", + " 0.01723753 0.01723375 0.01723255 0.01723208 0.01723889 0.01723283\n", + " 0.01723248 0.01723399 0.01723957 0.01723527 0.01723198 0.01723351\n", + " 0.01723102 0.01723523 0.01723213 0.01723657 0.01723864 0.01723886\n", + " 0.01722833 0.01723278 0.0172337 0.01723721 0.01723927 0.01723911\n", + " 0.01723467 0.01723375 0.01723661 0.01723119 0.01722991 0.01723307\n", + " 0.01723082 0.01723022 0.01723 0.01723164 0.01723385 0.01722161\n", + " 0.01722427 0.0172327 0.01723208 0.01723305 0.01723146 0.01723193\n", + " 0.01723194 0.01723505 0.01723355 0.0172332 0.01723644 0.01723031\n", + " 0.01723531 0.0172339 0.01724067 0.01723844 0.01723342 0.01723298\n", + " 0.01723488 0.01723061 0.01723327 0.0172321 0.01722686 0.01724059\n", + " 0.01723637 0.01723401 0.01722939 0.01723237 0.01723509 0.01723028\n", + " 0.01723612 0.01723458 0.01723546 0.01723659 0.01723229 0.01723691\n", + " 0.01723706 0.01723689 0.01723634 0.01723084 0.01723369 0.0172345\n", + " 0.01723175 0.01723289 0.01723354 0.01723492 0.01723661 0.01723232\n", + " 0.01723296 0.01723508 0.01723738 0.01723348 0.01722988 0.01722639\n", + " 0.01723512 0.01723313 0.0172342 0.0172344 0.01723272 0.01723241\n", + " 0.01723044 0.01723556 0.01723313 0.01723661 0.01723563 0.01723217\n", + " 0.0172373 0.01723358 0.01723327 0.01723225 0.01723428 0.01723632\n", + " 0.01723274 0.01723247 0.01723213 0.01723647 0.01723004 0.01723624\n", + " 0.01723043 0.01723219 0.01723669 0.01723262]\n" + ] + } + ], + "source": [ + "print(model_output['topic-document-matrix'][0])" + ] + }, + { + "cell_type": "code", + "execution_count": 46, + "id": "4e1c5483-9dc9-4e1f-ae93-a7f893bb030f", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "60" + ] + }, + "execution_count": 46, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(model_output['topic-document-matrix'])" + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "id": "a814c715-9fa7-4851-87db-8ca368d5e6a5", + "metadata": {}, + "outputs": [], + "source": [ + "list_range = [*range(0, len(model_output['topic-document-matrix']))]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "824a8bde-c55e-458b-8185-0d705f3a69bf", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 48, + "id": "2eb3ca90-305f-44dd-8d9d-5c1754ebad84", + "metadata": {}, + "outputs": [], + "source": [ + "top_doc_matrix = model_output['topic-document-matrix']" + ] + }, + { + "cell_type": "code", + "execution_count": 49, + "id": "de09e774-f940-4922-92b5-01808b292e21", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[0.0172399 , 0.01723652, 0.01723618, ..., 0.01723219, 0.01723669,\n", + " 0.01723262],\n", + " [0.01724352, 0.01723989, 0.01723797, ..., 0.01723266, 0.01723654,\n", + " 0.01723438],\n", + " [0.01579382, 0.01579704, 0.01579516, ..., 0.01579864, 0.01579574,\n", + " 0.01579613],\n", + " ...,\n", + " [0.01598469, 0.0159925 , 0.01599574, ..., 0.01600039, 0.0159951 ,\n", + " 0.01599846],\n", + " [0.01744807, 0.01745121, 0.0174521 , ..., 0.01745087, 0.01745479,\n", + " 0.01745041],\n", + " [0.01742894, 0.01742487, 0.0174367 , ..., 0.01741806, 0.01742839,\n", + " 0.0174193 ]], dtype=float32)" + ] + }, + "execution_count": 49, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "top_doc_matrix" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "id": "f7c6f558-333a-468d-81a7-3ed0648df062", + "metadata": {}, + "outputs": [], + "source": [ + "df = pd.DataFrame(top_doc_matrix).T" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "id": "1f021822-801d-4f3e-be19-5d9fca2cda13", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
0123456789...50515253545556575859
00.0172400.0172440.0157940.0176390.0166170.0166330.0171940.0170660.0164320.015873...0.0158310.0163980.0161880.0168280.0173460.0169260.0155750.0159850.0174480.017429
10.0172370.0172400.0157970.0176370.0166180.0166390.0171970.0170670.0164330.015873...0.0158300.0163960.0161770.0168190.0173450.0169250.0155780.0159930.0174510.017425
20.0172360.0172380.0157950.0176440.0166210.0166400.0172050.0170600.0164300.015867...0.0158210.0163910.0161820.0168220.0173490.0169220.0155720.0159960.0174520.017437
30.0172340.0172430.0157940.0176460.0166210.0166430.0172050.0170600.0164340.015860...0.0158310.0163910.0161870.0168230.0173470.0169190.0155750.0159900.0174540.017440
40.0172380.0172390.0157990.0176390.0166180.0166370.0171950.0170610.0164340.015866...0.0158290.0163960.0161820.0168200.0173460.0169270.0155790.0159960.0174530.017427
..................................................................
3350.0172360.0172330.0157950.0176350.0166180.0166370.0171980.0170620.0164340.015872...0.0158350.0163940.0161870.0168220.0173470.0169210.0155840.0159940.0174510.017420
3360.0172300.0172320.0157970.0176310.0166200.0166370.0171970.0170630.0164320.015872...0.0158410.0163950.0161870.0168190.0173450.0169190.0155890.0159990.0174500.017418
3370.0172320.0172330.0157990.0176320.0166190.0166370.0171960.0170620.0164320.015874...0.0158440.0163940.0161860.0168200.0173460.0169150.0155910.0160000.0174510.017418
3380.0172370.0172370.0157960.0176400.0166200.0166370.0171990.0170640.0164320.015868...0.0158300.0163920.0161820.0168190.0173470.0169220.0155780.0159950.0174550.017428
3390.0172330.0172340.0157960.0176340.0166190.0166350.0171980.0170630.0164330.015873...0.0158380.0163950.0161860.0168210.0173430.0169200.0155860.0159980.0174500.017419
\n", + "

340 rows × 60 columns

\n", + "
" + ], + "text/plain": [ + " 0 1 2 3 4 5 6 \\\n", + "0 0.017240 0.017244 0.015794 0.017639 0.016617 0.016633 0.017194 \n", + "1 0.017237 0.017240 0.015797 0.017637 0.016618 0.016639 0.017197 \n", + "2 0.017236 0.017238 0.015795 0.017644 0.016621 0.016640 0.017205 \n", + "3 0.017234 0.017243 0.015794 0.017646 0.016621 0.016643 0.017205 \n", + "4 0.017238 0.017239 0.015799 0.017639 0.016618 0.016637 0.017195 \n", + ".. ... ... ... ... ... ... ... \n", + "335 0.017236 0.017233 0.015795 0.017635 0.016618 0.016637 0.017198 \n", + "336 0.017230 0.017232 0.015797 0.017631 0.016620 0.016637 0.017197 \n", + "337 0.017232 0.017233 0.015799 0.017632 0.016619 0.016637 0.017196 \n", + "338 0.017237 0.017237 0.015796 0.017640 0.016620 0.016637 0.017199 \n", + "339 0.017233 0.017234 0.015796 0.017634 0.016619 0.016635 0.017198 \n", + "\n", + " 7 8 9 ... 50 51 52 \\\n", + "0 0.017066 0.016432 0.015873 ... 0.015831 0.016398 0.016188 \n", + "1 0.017067 0.016433 0.015873 ... 0.015830 0.016396 0.016177 \n", + "2 0.017060 0.016430 0.015867 ... 0.015821 0.016391 0.016182 \n", + "3 0.017060 0.016434 0.015860 ... 0.015831 0.016391 0.016187 \n", + "4 0.017061 0.016434 0.015866 ... 0.015829 0.016396 0.016182 \n", + ".. ... ... ... ... ... ... ... \n", + "335 0.017062 0.016434 0.015872 ... 0.015835 0.016394 0.016187 \n", + "336 0.017063 0.016432 0.015872 ... 0.015841 0.016395 0.016187 \n", + "337 0.017062 0.016432 0.015874 ... 0.015844 0.016394 0.016186 \n", + "338 0.017064 0.016432 0.015868 ... 0.015830 0.016392 0.016182 \n", + "339 0.017063 0.016433 0.015873 ... 0.015838 0.016395 0.016186 \n", + "\n", + " 53 54 55 56 57 58 59 \n", + "0 0.016828 0.017346 0.016926 0.015575 0.015985 0.017448 0.017429 \n", + "1 0.016819 0.017345 0.016925 0.015578 0.015993 0.017451 0.017425 \n", + "2 0.016822 0.017349 0.016922 0.015572 0.015996 0.017452 0.017437 \n", + "3 0.016823 0.017347 0.016919 0.015575 0.015990 0.017454 0.017440 \n", + "4 0.016820 0.017346 0.016927 0.015579 0.015996 0.017453 0.017427 \n", + ".. ... ... ... ... ... ... ... \n", + "335 0.016822 0.017347 0.016921 0.015584 0.015994 0.017451 0.017420 \n", + "336 0.016819 0.017345 0.016919 0.015589 0.015999 0.017450 0.017418 \n", + "337 0.016820 0.017346 0.016915 0.015591 0.016000 0.017451 0.017418 \n", + "338 0.016819 0.017347 0.016922 0.015578 0.015995 0.017455 0.017428 \n", + "339 0.016821 0.017343 0.016920 0.015586 0.015998 0.017450 0.017419 \n", + "\n", + "[340 rows x 60 columns]" + ] + }, + "execution_count": 52, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "id": "79b2acdd-33ea-4a75-b369-95a482474074", + "metadata": {}, + "outputs": [], + "source": [ + "sz = pd.read_csv('sz_clean.tsv', sep = '\\t', encoding='utf-8')" + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "id": "76c64ca3-cee2-4ddb-bff8-99842911502f", + "metadata": {}, + "outputs": [], + "source": [ + "sz = sz.iloc[: , 1:]" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "id": "7a5e9e3d-c87b-401a-872f-ebff8347c2f7", + "metadata": {}, + "outputs": [], + "source": [ + "sz = sz.iloc[: , 1:]" + ] + }, + { + "cell_type": "code", + "execution_count": 56, + "id": "d706ba74-530e-427d-8e8e-ffa0485c847e", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
splitmanifest_idyear
0trainsza178901031789
1testsza178901101789
2trainsza178901171789
3testsza178901241789
4validsza178901311789
............
574validsza179912071799
575trainsza179912141799
576trainsza179912211799
577trainsza179912281799
578testsza1799bl011799
\n", + "

579 rows × 3 columns

\n", + "
" + ], + "text/plain": [ + " split manifest_id year\n", + "0 train sza17890103 1789\n", + "1 test sza17890110 1789\n", + "2 train sza17890117 1789\n", + "3 test sza17890124 1789\n", + "4 valid sza17890131 1789\n", + ".. ... ... ...\n", + "574 valid sza17991207 1799\n", + "575 train sza17991214 1799\n", + "576 train sza17991221 1799\n", + "577 train sza17991228 1799\n", + "578 test sza1799bl01 1799\n", + "\n", + "[579 rows x 3 columns]" + ] + }, + "execution_count": 56, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "sz" + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "id": "ab108b12-f7b5-4deb-96df-d116db6fc918", + "metadata": {}, + "outputs": [], + "source": [ + "df_split = sz[sz['split'] == 'train']" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "id": "c9bb28d6-412f-4e67-a042-b3f39dabfe6d", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
splitmanifest_idyear
0trainsza178901031789
2trainsza178901171789
6trainsza178902141789
7trainsza178902211789
9trainsza178903071789
............
572trainsza179911231799
573trainsza179911301799
575trainsza179912141799
576trainsza179912211799
577trainsza179912281799
\n", + "

340 rows × 3 columns

\n", + "
" + ], + "text/plain": [ + " split manifest_id year\n", + "0 train sza17890103 1789\n", + "2 train sza17890117 1789\n", + "6 train sza17890214 1789\n", + "7 train sza17890221 1789\n", + "9 train sza17890307 1789\n", + ".. ... ... ...\n", + "572 train sza17991123 1799\n", + "573 train sza17991130 1799\n", + "575 train sza17991214 1799\n", + "576 train sza17991221 1799\n", + "577 train sza17991228 1799\n", + "\n", + "[340 rows x 3 columns]" + ] + }, + "execution_count": 58, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_split" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c73d757f-1c64-49d7-8867-f956f7c1119a", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4f1361bc-010d-4c22-aaea-c6be85340d30", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 59, + "id": "2bd7e8dd-a819-4f0f-8ec9-eb2c3760f216", + "metadata": {}, + "outputs": [], + "source": [ + "df_split = df_split.reset_index(drop=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "id": "4af5f711-0a28-440b-a818-22bbfd53bc51", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
splitmanifest_idyear
0trainsza178901031789
1trainsza178901171789
2trainsza178902141789
3trainsza178902211789
4trainsza178903071789
............
335trainsza179911231799
336trainsza179911301799
337trainsza179912141799
338trainsza179912211799
339trainsza179912281799
\n", + "

340 rows × 3 columns

\n", + "
" + ], + "text/plain": [ + " split manifest_id year\n", + "0 train sza17890103 1789\n", + "1 train sza17890117 1789\n", + "2 train sza17890214 1789\n", + "3 train sza17890221 1789\n", + "4 train sza17890307 1789\n", + ".. ... ... ...\n", + "335 train sza17991123 1799\n", + "336 train sza17991130 1799\n", + "337 train sza17991214 1799\n", + "338 train sza17991221 1799\n", + "339 train sza17991228 1799\n", + "\n", + "[340 rows x 3 columns]" + ] + }, + "execution_count": 60, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_split" + ] + }, + { + "cell_type": "code", + "execution_count": 61, + "id": "aad405d2-261c-4d27-9a00-21a0d633762d", + "metadata": {}, + "outputs": [], + "source": [ + "df_top_doc_mat = pd.concat([df_split, df], axis=\"columns\")" + ] + }, + { + "cell_type": "code", + "execution_count": 62, + "id": "0eb8f389-e6ce-41dc-98c4-5b067edef116", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
splitmanifest_idyear0123456...50515253545556575859
0trainsza1789010317890.0172400.0172440.0157940.0176390.0166170.0166330.017194...0.0158310.0163980.0161880.0168280.0173460.0169260.0155750.0159850.0174480.017429
1trainsza1789011717890.0172370.0172400.0157970.0176370.0166180.0166390.017197...0.0158300.0163960.0161770.0168190.0173450.0169250.0155780.0159930.0174510.017425
2trainsza1789021417890.0172360.0172380.0157950.0176440.0166210.0166400.017205...0.0158210.0163910.0161820.0168220.0173490.0169220.0155720.0159960.0174520.017437
3trainsza1789022117890.0172340.0172430.0157940.0176460.0166210.0166430.017205...0.0158310.0163910.0161870.0168230.0173470.0169190.0155750.0159900.0174540.017440
4trainsza1789030717890.0172380.0172390.0157990.0176390.0166180.0166370.017195...0.0158290.0163960.0161820.0168200.0173460.0169270.0155790.0159960.0174530.017427
..................................................................
335trainsza1799112317990.0172360.0172330.0157950.0176350.0166180.0166370.017198...0.0158350.0163940.0161870.0168220.0173470.0169210.0155840.0159940.0174510.017420
336trainsza1799113017990.0172300.0172320.0157970.0176310.0166200.0166370.017197...0.0158410.0163950.0161870.0168190.0173450.0169190.0155890.0159990.0174500.017418
337trainsza1799121417990.0172320.0172330.0157990.0176320.0166190.0166370.017196...0.0158440.0163940.0161860.0168200.0173460.0169150.0155910.0160000.0174510.017418
338trainsza1799122117990.0172370.0172370.0157960.0176400.0166200.0166370.017199...0.0158300.0163920.0161820.0168190.0173470.0169220.0155780.0159950.0174550.017428
339trainsza1799122817990.0172330.0172340.0157960.0176340.0166190.0166350.017198...0.0158380.0163950.0161860.0168210.0173430.0169200.0155860.0159980.0174500.017419
\n", + "

340 rows × 63 columns

\n", + "
" + ], + "text/plain": [ + " split manifest_id year 0 1 2 3 \\\n", + "0 train sza17890103 1789 0.017240 0.017244 0.015794 0.017639 \n", + "1 train sza17890117 1789 0.017237 0.017240 0.015797 0.017637 \n", + "2 train sza17890214 1789 0.017236 0.017238 0.015795 0.017644 \n", + "3 train sza17890221 1789 0.017234 0.017243 0.015794 0.017646 \n", + "4 train sza17890307 1789 0.017238 0.017239 0.015799 0.017639 \n", + ".. ... ... ... ... ... ... ... \n", + "335 train sza17991123 1799 0.017236 0.017233 0.015795 0.017635 \n", + "336 train sza17991130 1799 0.017230 0.017232 0.015797 0.017631 \n", + "337 train sza17991214 1799 0.017232 0.017233 0.015799 0.017632 \n", + "338 train sza17991221 1799 0.017237 0.017237 0.015796 0.017640 \n", + "339 train sza17991228 1799 0.017233 0.017234 0.015796 0.017634 \n", + "\n", + " 4 5 6 ... 50 51 52 \\\n", + "0 0.016617 0.016633 0.017194 ... 0.015831 0.016398 0.016188 \n", + "1 0.016618 0.016639 0.017197 ... 0.015830 0.016396 0.016177 \n", + "2 0.016621 0.016640 0.017205 ... 0.015821 0.016391 0.016182 \n", + "3 0.016621 0.016643 0.017205 ... 0.015831 0.016391 0.016187 \n", + "4 0.016618 0.016637 0.017195 ... 0.015829 0.016396 0.016182 \n", + ".. ... ... ... ... ... ... ... \n", + "335 0.016618 0.016637 0.017198 ... 0.015835 0.016394 0.016187 \n", + "336 0.016620 0.016637 0.017197 ... 0.015841 0.016395 0.016187 \n", + "337 0.016619 0.016637 0.017196 ... 0.015844 0.016394 0.016186 \n", + "338 0.016620 0.016637 0.017199 ... 0.015830 0.016392 0.016182 \n", + "339 0.016619 0.016635 0.017198 ... 0.015838 0.016395 0.016186 \n", + "\n", + " 53 54 55 56 57 58 59 \n", + "0 0.016828 0.017346 0.016926 0.015575 0.015985 0.017448 0.017429 \n", + "1 0.016819 0.017345 0.016925 0.015578 0.015993 0.017451 0.017425 \n", + "2 0.016822 0.017349 0.016922 0.015572 0.015996 0.017452 0.017437 \n", + "3 0.016823 0.017347 0.016919 0.015575 0.015990 0.017454 0.017440 \n", + "4 0.016820 0.017346 0.016927 0.015579 0.015996 0.017453 0.017427 \n", + ".. ... ... ... ... ... ... ... \n", + "335 0.016822 0.017347 0.016921 0.015584 0.015994 0.017451 0.017420 \n", + "336 0.016819 0.017345 0.016919 0.015589 0.015999 0.017450 0.017418 \n", + "337 0.016820 0.017346 0.016915 0.015591 0.016000 0.017451 0.017418 \n", + "338 0.016819 0.017347 0.016922 0.015578 0.015995 0.017455 0.017428 \n", + "339 0.016821 0.017343 0.016920 0.015586 0.015998 0.017450 0.017419 \n", + "\n", + "[340 rows x 63 columns]" + ] + }, + "execution_count": 62, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_top_doc_mat" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1b42ac0d-cf99-4929-82e9-c74a31486c1b", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 63, + "id": "bec4d077-573c-4cb5-af3f-b940ded2e09a", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
splitmanifest_idyear0123456...50515253545556575859
0trainsza1789010317890.0172400.0172440.0157940.0176390.0166170.0166330.017194...0.0158310.0163980.0161880.0168280.0173460.0169260.0155750.0159850.0174480.017429
1trainsza1789011717890.0172370.0172400.0157970.0176370.0166180.0166390.017197...0.0158300.0163960.0161770.0168190.0173450.0169250.0155780.0159930.0174510.017425
2trainsza1789021417890.0172360.0172380.0157950.0176440.0166210.0166400.017205...0.0158210.0163910.0161820.0168220.0173490.0169220.0155720.0159960.0174520.017437
3trainsza1789022117890.0172340.0172430.0157940.0176460.0166210.0166430.017205...0.0158310.0163910.0161870.0168230.0173470.0169190.0155750.0159900.0174540.017440
4trainsza1789030717890.0172380.0172390.0157990.0176390.0166180.0166370.017195...0.0158290.0163960.0161820.0168200.0173460.0169270.0155790.0159960.0174530.017427
..................................................................
335trainsza1799112317990.0172360.0172330.0157950.0176350.0166180.0166370.017198...0.0158350.0163940.0161870.0168220.0173470.0169210.0155840.0159940.0174510.017420
336trainsza1799113017990.0172300.0172320.0157970.0176310.0166200.0166370.017197...0.0158410.0163950.0161870.0168190.0173450.0169190.0155890.0159990.0174500.017418
337trainsza1799121417990.0172320.0172330.0157990.0176320.0166190.0166370.017196...0.0158440.0163940.0161860.0168200.0173460.0169150.0155910.0160000.0174510.017418
338trainsza1799122117990.0172370.0172370.0157960.0176400.0166200.0166370.017199...0.0158300.0163920.0161820.0168190.0173470.0169220.0155780.0159950.0174550.017428
339trainsza1799122817990.0172330.0172340.0157960.0176340.0166190.0166350.017198...0.0158380.0163950.0161860.0168210.0173430.0169200.0155860.0159980.0174500.017419
\n", + "

340 rows × 63 columns

\n", + "
" + ], + "text/plain": [ + " split manifest_id year 0 1 2 3 \\\n", + "0 train sza17890103 1789 0.017240 0.017244 0.015794 0.017639 \n", + "1 train sza17890117 1789 0.017237 0.017240 0.015797 0.017637 \n", + "2 train sza17890214 1789 0.017236 0.017238 0.015795 0.017644 \n", + "3 train sza17890221 1789 0.017234 0.017243 0.015794 0.017646 \n", + "4 train sza17890307 1789 0.017238 0.017239 0.015799 0.017639 \n", + ".. ... ... ... ... ... ... ... \n", + "335 train sza17991123 1799 0.017236 0.017233 0.015795 0.017635 \n", + "336 train sza17991130 1799 0.017230 0.017232 0.015797 0.017631 \n", + "337 train sza17991214 1799 0.017232 0.017233 0.015799 0.017632 \n", + "338 train sza17991221 1799 0.017237 0.017237 0.015796 0.017640 \n", + "339 train sza17991228 1799 0.017233 0.017234 0.015796 0.017634 \n", + "\n", + " 4 5 6 ... 50 51 52 \\\n", + "0 0.016617 0.016633 0.017194 ... 0.015831 0.016398 0.016188 \n", + "1 0.016618 0.016639 0.017197 ... 0.015830 0.016396 0.016177 \n", + "2 0.016621 0.016640 0.017205 ... 0.015821 0.016391 0.016182 \n", + "3 0.016621 0.016643 0.017205 ... 0.015831 0.016391 0.016187 \n", + "4 0.016618 0.016637 0.017195 ... 0.015829 0.016396 0.016182 \n", + ".. ... ... ... ... ... ... ... \n", + "335 0.016618 0.016637 0.017198 ... 0.015835 0.016394 0.016187 \n", + "336 0.016620 0.016637 0.017197 ... 0.015841 0.016395 0.016187 \n", + "337 0.016619 0.016637 0.017196 ... 0.015844 0.016394 0.016186 \n", + "338 0.016620 0.016637 0.017199 ... 0.015830 0.016392 0.016182 \n", + "339 0.016619 0.016635 0.017198 ... 0.015838 0.016395 0.016186 \n", + "\n", + " 53 54 55 56 57 58 59 \n", + "0 0.016828 0.017346 0.016926 0.015575 0.015985 0.017448 0.017429 \n", + "1 0.016819 0.017345 0.016925 0.015578 0.015993 0.017451 0.017425 \n", + "2 0.016822 0.017349 0.016922 0.015572 0.015996 0.017452 0.017437 \n", + "3 0.016823 0.017347 0.016919 0.015575 0.015990 0.017454 0.017440 \n", + "4 0.016820 0.017346 0.016927 0.015579 0.015996 0.017453 0.017427 \n", + ".. ... ... ... ... ... ... ... \n", + "335 0.016822 0.017347 0.016921 0.015584 0.015994 0.017451 0.017420 \n", + "336 0.016819 0.017345 0.016919 0.015589 0.015999 0.017450 0.017418 \n", + "337 0.016820 0.017346 0.016915 0.015591 0.016000 0.017451 0.017418 \n", + "338 0.016819 0.017347 0.016922 0.015578 0.015995 0.017455 0.017428 \n", + "339 0.016821 0.017343 0.016920 0.015586 0.015998 0.017450 0.017419 \n", + "\n", + "[340 rows x 63 columns]" + ] + }, + "execution_count": 63, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_top_doc_mat" + ] + }, + { + "cell_type": "code", + "execution_count": 65, + "id": "036b3a23-1d35-4b42-ae01-576af08a6f06", + "metadata": {}, + "outputs": [], + "source": [ + "df_top_doc_mat['year'] = df_top_doc_mat['year'].astype(str)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "87bf7914-3d75-412c-90e1-d2cf72ab1771", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 66, + "id": "db4d19b6-8677-4399-bfd1-45b3c90320cd", + "metadata": {}, + "outputs": [], + "source": [ + "df_melted = df_top_doc_mat.melt(id_vars = ['split', 'manifest_id', 'year'], var_name = 'topics', value_name = 'values')" + ] + }, + { + "cell_type": "code", + "execution_count": 67, + "id": "a2099a66-9168-4e99-824e-baae5dbddc1e", + "metadata": {}, + "outputs": [], + "source": [ + "df_melted['topics'] = df_melted['topics'].astype(str)" + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "id": "6621202a-6c2d-40d0-82c5-c8e8ea8ed992", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "1791 2280\n", + "1794 2160\n", + "1793 2040\n", + "1795 1980\n", + "1796 1980\n", + "1798 1800\n", + "1790 1680\n", + "1797 1680\n", + "1799 1680\n", + "1792 1620\n", + "1789 1500\n", + "Name: year, dtype: int64" + ] + }, + "execution_count": 68, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_melted['year'].value_counts()" + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "id": "85f1dfa6-8570-44f2-bf7f-10e70ca97b48", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 69, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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unVvL1u2bGmfPn2av/nNb9Yk0UePlRBCSJuSxLNMm2DYOACoqalxI9lcddVVWyZNmlSfRCc9VkIIIWVJVNg4AFi3bl2ls/zAAw90O/roo/cl0UuPlRBCSFnihI2rr6/fN2zYsOEAMGvWrIb777+/eunSpR0BYMCAAU1//vOf1yXRS8NKCCGkLIkLG3fBBRfsbI1edgUTQgghKULDSgghhKQIDSshhBCSIjSshBBCSIrQsBJCCCEpQsNKCCGEpAgNKyGEkLIkLmwcANx000296urqjh0yZMiIadOmDUiil+NYCSGElCVxYeM++OCDyieeeKLbsmXL3u3YsaNqaGhIZCtpWAkhhJQlcWHj/uu//qvH97///Q87duyoAKB///4tuTX5oWElhBDSptz45oKa1bu2phw2rkfjjDFnFRU27oc//OGAhQsXVs2YMaN/+/bt1a9+9asN48aNayxUFw0rIYSQsiYYNi6bzcr27dszb7311vKFCxcecfHFFw/esGHD24ZR2GdJNKyEEELalCSeZdpEhY3r06dP09SpU3cYhoEzzjij0TAMtWnTpop+/foV1CXMr4IJIYSUJXFh4yZPnrzj2WefrQKAJUuWtG9ubjb69OlT8HtWeqyEEELKkriwcVdfffXWCy64oK6+vn5EZWWledddd71faDcwQMNKCCGkTIkLGwcA8+bNe79YvewKJoQQQlKEhpUQQghJERpWQgghJEVoWAkhhJAUoWElhBBCUoSGlRBCCEkRDrchhBBSlqxataryK1/5yqAtW7ZUGoaBSy65ZMv06dM/mjhx4lGrV6/uAAC7d+/OVFVVZZcvX760UL00rIQQQsqSuLBxTzzxxBpH5oorrhjQtWvXbBK97AomhBBSltTW1jaPHTu2EfCHjXPyTdPE/Pnzqy+55JJtSfTSYyWEENKm/OSN52pW7/443bBxVd0bp59wZlFh45y0BQsWdO7Ro0fzyJEjDyTZNj1WQgghZU0wbJyTfu+991afd955ibxVgB4rIYSQNiaJZ5k2UWHjAKC5uRlPPfXUka+++mrBHy050GMlhBBSlsSFjQOAefPmdTnqqKP2Dx48uDmpXhpWQgghZYkTNm7RokVVw4YNGz5s2LDhDz74YFcAuP/++6vPP//8xN3AALuCCSGElCm5wsY98sgja4vVS4+VEEIISREaVkIIISRFaFgJIYSQFKFhJYQQQlKEhpUQQghJERpWQgghJEVoWAkhhJQlq1atqjz55JOHHnXUUSOGDBky4ic/+UkvAPjnP//ZcdSoUcOGDRs2/Nhjjz3m+eefTzSPMQ0rIYSQssQJG7dmzZp3X3vttWVz5szp9cYbb3T43ve+N+CGG274YPny5UunT5/+wfXXX1+TRC8niCCEEFKW1NbWNtfW1jYD/rBxIoKdO3dmAGDHjh2Z3r17NyXRS8NKCCGkTfnJGwtrVu/elnLYuOrG6SeMKypsXG1tbdPEiRPrp0+fXmOaJhYtWrQ8ybbZFUwIIaSsCYaNu+2223r+7Gc/27Bp06YlN99884ZLL720Lok+UUqVqKqEEEJINIsXL147atSorW1djwMHDsiZZ5455LOf/ewuJ8JNVVXV6J07d75lGAZM00SXLl2O37Nnz7+CZRcvXtxj1KhRdcF0eqyEEELKkriwcT179mx+8sknqwBg/vz5VbW1tfuT6OU7VkIIIWWJEzauvr5+37Bhw4YDwKxZsxpmz5697rrrrqv5zne+I+3btzfvuOOOdUn00rASQggpS3KFjXv33XeXFauXXcGEEEJIitCwEkIIISlCw0oIIYSkCA0rIYQQkiI0rIQQQkiK0LASQgghKULDSgghpCyJCxv30ksvdRw9evSwoUOHDh8/fvyQbdu2JbKVNKyEEELKkriwcVdccUXdTTfdtHHlypVLv/jFL26fNWtWnyR6aVgJIYSUJbW1tc1jx45tBPxh49auXdthwoQJewBg0qRJux5//PEjk+jlzEuEEELalJ+8sahm9a4d6YaN69KtcfoJY4sKG1dfX7/vvvvu6/bVr351x7333lu9adOmdkm2TY+VEEJIWRMMGzd37ty1s2fP7jlixIhjdu/ebVRWViYKA0ePlRBCSJuSxLNMmwMHDsjEiRMHn3/++dsuueSSHQBw/PHH73/xxRffA4AlS5a0f/rpp7sl0UmPlRBCSFkSFzauoaGhAgCy2SxmzpzZ9+tf//pHSfTSYyWEEFKWxIWNW7lyZfs5c+b0AoAvfOEL26+++uqPk+gVpRJ1HRNCCCGtZvHixWtHjRq1ta3r0RoWL17cY9SoUXXBdHYFE0IIISlCw0oIIYSkCA0rIYQQkiI0rIQQQkiK0LASQgghKULDSgghhKQIDSshhJCypLGxUUaOHHnM0UcfPXzIkCEjrr322n4AsHnz5sypp55aX1tbe+ypp55av2XLlkwSvTSshBBCypIOHTqoRYsWrVixYsXSd999d+lzzz3X5bnnnus0c+bMvqeffvrudevWvXP66afvnjFjRqKwcZx5iRBCSFliGAa6du1qAkBTU5O0tLSIiOCpp57qtnDhwhUAcOWVV348bty4owE0FKqXhpUQQkib8pM3XqpZs2tnqmHjjurStXH6Cafkndy/paUFxx577PD169e3v+SSSz4aP3783o8//riitra2GbBitm7bti2RrWRXMCGEkLKloqICy5cvX7p+/folb775ZqfXXnutQ6t1plExQgghpFgK8SxLTY8ePbJjx47dPX/+/K7du3dvWbduXWVtbW3zunXrKqurq1uS6KLHSgghpCz54IMPKrZu3ZoBgD179sjf//73Lsccc8z+s846a8edd97ZHQDuvPPO7mefffaOJHrpsRJCCClLNmzYUHnppZcOymazUErJOeecs+2iiy7aecYZZ+yZMmXK4Nra2h79+vVrevTRR1cn0UvDSgghpCw5+eST9y1btmxpML1Pnz7Zl156aWWxetkVTAghhKQIDSshhBCSIjSshBBCSIrQsBJCCCEpQsNKCCGEpAgNKyGEEJIiNKyEEELKkriwcXPnzj1yyJAhIwzDOOEf//hH4jmMOY6VEEJIWeKEjevatat54MABOemkk45+7rnndo4ePXrfI488suqKK66oK0YvDSshhJCyJC5s3JgxY/a3Ri8NKyGEkDblJ6+/WrNm166Uw8Z1aZx+4qeKChvX2m3zHSshhJCyhWHjCCGEHHYU4lmWGj1s3EknndSqrmB6rIQQQsqSuLBxrdVLw0oIIaQs2bBhQ+Vpp5129NChQ4cff/zxw88444xdF1100c577rmnW+/evY976623Ok2ZMqV+7Nix9Un0ilKqVHUmhBBCIlm8ePHaUaNGbW3rerSGxYsX9xg1alRdMJ0eKyGEEJIiNKyEEEJIitCwEkIIISlCw0oIIYSkCA0rIYQQkiI0rIQQQkiK0LASQggpS+LCxl155ZUDBg0aNGLo0KHDP/e5zw12JpEoFBpWQgghZYkTNm7FihVL33333aXPPfdcl+eee67TWWedtWvlypXvrly5cumQIUP2T58+vU8SvTSshBBCypK4sHHnnnvursrKSgDAKaecsrehoaFdEr2chJ8QQkib8pPX36hZs2t3ymHjqhqnn3hCq8PG3X333T2mTp26Lcm26bESQggpW3KFjbv++uv7ZDIZNW3atESGlR4rIYSQNqUQz7LUBMPG3X777d0XLFjQ7YUXXlhpGMl8UHqshBBCypK4sHEPP/xwl9/+9rd9nnzyyVVVVVVmUr30WAkhhJQlGzZsqLz00ksHZbNZKKXknHPO2XbRRRftHDhw4LFNTU3G+PHjhwLAmDFj9tx3333rC9VLw0oIIaQsOfnkk/ctW7ZsaTB9/fr177RGL7uCCSGEkBShYSWEEEJShIaVEEIISREaVkIIISRFaFgJIYSQFKFhJYQQQlKEhpUQQkhZEhc27pprruk3dOjQ4cOGDRv+mc98pn7t2rWVSfTSsBJCCClL4sLGzZw5c9PKlSuXLl++fOmECRN2/uhHP+qbRC8NKyGEkLIkLmxcdXW1O43h3r17DRFJpJczLxFCCGlTfvr64prVO9MNGze4a1Xjf544quiwcd/+9rf7P/TQQ92rqqqyCxcuXJFk2/RYCSGElC1xYeNuv/32hk2bNi2ZOnXqx7fcckuvRDpLU1VCCCGkMArxLEtNMGyck37ZZZdtmzhxYv2tt976QaG66LESQggpS+LCxr399tvtHZmHHnqo2+DBg/cl0UuPlRBCSFkSFzburLPOGrxmzZoOIqIGDBjQNGfOnHVJ9NKwEkIIKUviwsYtWLBgdWv0siuYEEIISREaVkIIISRFaFgJIYSQFKFhJYQQQlKEhpUQQghJERpWQgghJEVoWAkhhJQlcWHjHGbMmNFbRE748MMPEw1N5ThWQgghZYkTNq5r167mgQMH5KSTTjr6ueee23nmmWfuXbVqVeXf/va3Ln379m1KqpceKyGEkLIkLmwcAFx11VU1t9xyy8akIeMAeqyEEELamJ++9k7N6p17Ug4b17nxP086tqiwcX/5y1+69u3bt/mUU05JNEewAw0rIYSQssUJG7d169bMxIkTB7/yyisdf/GLX/R9/vnn3ytaZ5oVJIQQQpJSiGdZapywcQ8//HC3jRs3tj/uuOOGA8DmzZvbjRkz5phXXnll2cCBA1sK0cV3rIQQQsqSqLBxY8aMady2bdvihoaGtxsaGt7u3bt305tvvlmwUQXosRJCCClT4sLGtVYvDSshhJCyJC5snE5DQ8PbSfWyK5gQQghJERpWQgghJEVoWAkhhJAUoWElhBBCUoSGlRBCCEkRGlZCCCEkRWhYCSGElCVxYeOuu+66fr169Tpu2LBhw4cNGzb8wQcf7JpEL8exEkIIKUviwsYBwLRp0zbfeOONm4vRS4+VEEJIWZIrbFxroMdKCCGkTbnpteU1q3fuTTlsXKfGG04aVlTYuMcff7zrnDlzej3wwAPdR40a1fjHP/5xQ8+ePbOFbpseKyGEkLLFCRu3fv36JW+++Wan1157rcO111770bp1695etmzZ0j59+jR/85vfrEmks1SVJYQQQgqhEM+y1Dhh4+bPn99Vf7d61VVXbZk0aVJ9El30WAkhhJQlUWHjjjnmmP3r1q2rdGQeeOCBbkcfffS+JHrpsRJCCClL4sLGfelLXxq0dOnSjgAwYMCApj//+c/rkuilYSWEEFKWxIWNe/TRR99vjV52BRNCCCEpQsNKCCGEpAgNKyGEEJIiNKyEEEJIitCwEkIIISlCw0oIIYSkCA0rIYSQsiQubBwA3HTTTb3q6uqOHTJkyIhp06YNSKKX41gJIYSUJXFh4xobG40nnnii27Jly97t2LGjamhoSGQr6bESQggpS+LCxs2ePbvn97///Q87duyoAKB///4tSfTSYyWEENKm3PTqqprVuxrTDRvX5YjGGz41pKiwcd/85jc7LFy4sGrGjBn927dvr371q19tGDduXGOh26ZhJYQQUrY4YeO2bt2amThx4uDXXnutQzable3bt2feeuut5QsXLjzi4osvHrxhw4a3DaOwTl4aVkIIIW1KIZ5lqdHDxvXp06dp6tSpOwzDwBlnnNFoGIbatGlTRb9+/QrqEuY7VkIIIWVJXNi4yZMn73j22WerAGDJkiXtm5ubjT59+hT8npUeKyGEkLIkLmzc/v375YILLqirr68fUVlZad51113vF9oNDNCwEkIIKVPiwsZ16NBBzZs3r+jQcewKJoQQQlKEhpUQQghJERpWQgghJEVoWAkhhJAUoWElhBBCUoSGlRBCCEkRDrchhBBSljQ2NsrJJ588rKmpSbLZrEyePHn7rbfe+sHEiROPWr16dQcA2L17d6aqqiq7fPny0LCcOGhYCSGElCVxYeOeeOKJNY7MFVdcMaBr167ZJHppWAkhhJQlcWHjHEzTxPz586ufeeaZFUn00rASQghpU256dW3Nmp37Ug0bd1TXjo03fKquqLBxTt6CBQs69+jRo3nkyJEHkmybHy8RQggpW5ywcevXr1/y5ptvdnrttdc6OHn33ntv9Xnnnbctsc50q0gIIYQkoxDPstToYeNOOumk/c3NzXjqqaeOfPXVVwv+aMmBHishhJCyJC5sHADMmzevy1FHHbV/8ODBzUn10mMlhBBSlsSFjQOA+++/v/r8889P3A0M0LASQggpU+LCxgHAI488srZYvewKJoQQQlKEhpUQQghJERpWQgghJEVoWAkhhJAUoWElhBBCUoSGlRBCCEkRGlZCCCFlSWNjo4wcOfKYo48+eviQIUNGXHvttf0A4J///GfHUaNGDRs2bNjwY4899pjnn38+0TzGHMdKCCGkLIkLGzdjxox+N9xwwwdf/vKXdz344INdr7/++ppXX3214Ag39FgJIYSUJXFh40QEO3fuzADAjh07Mr17925KopceKyGEkDblplc+qFmzc3/KYeM6NN5wcr+iwsZ169Ztw8SJE+unT59eY5omFi1atDzJtumxEkIIKVuiwsbddtttPX/2s59t2LRp05Kbb755w6WXXlqXRKcopUpUXUIIISSaxYsXrx01atTWtq6Hzne+852+nTp1Mm+99da+O3fufMswDJimiS5duhy/Z8+efwXlFy9e3GPUqFF1wXR6rIQQQsqSuLBxPXv2bH7yySerAGD+/PlVtbW1+5Po5TtWQgghZUlc2Ljq6ursddddV/Od73xH2rdvb95xxx3rkuhlVzAhhJCDzqHYFZwUdgUTQgghBwEaVkIIISRFaFgJIYSQFKFhJYQQQlKEhpUQQghJERpWQgghJEVoWAkhhJQlcWHjXnrppY6jR48eNnTo0OHjx48fsm3btkS2koaVEEJIWeKEjVuxYsXSd999d+lzzz3X5bnnnut0xRVX1N10000bV65cufSLX/zi9lmzZvVJopeGlRBCSFkSFzZu7dq1HSZMmLAHACZNmrTr8ccfPzKJXk5pSAghpE25+eWtNWt2NKUbNq5bu8YffbpHUWHj6uvr9913333dvvrVr+649957qzdt2tQuybbpsRJCCClbosLGzZ07d+3s2bN7jhgx4pjdu3cblZWVieb+pcdKCCGkTSnEsyw1PXr0yI4dO3b3/Pnzu954442bX3zxxfcAYMmSJe2ffvrpbkl00WMlhBBSlsSFjWtoaKgA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6KMlB3qshBBCyo64sHEAMG/evC5HHXXU/sGDBzcXo5uGlRBCCNG4//77q88///yiuoEBho0jhBDSBjBsHCGEEEIKgoaVEEIISREaVkIIISRFaFgJIYSQFKFhJYQQQlKEhpUQQghJERpWQgghZUtLSwuOOeaY4WecccYQAPjnP//ZcdSoUcOGDRs2/Nhjjz3m+eefTzyHMQ0rIYSQssUJG+esf+973xtwww03fLB8+fKl06dP/+D666+vSaqThpUQQkhZEhU2TkTgRLvZsWNHpnfv3k1J9XISfkIIIW3K2kcO1OzbnG7YuI69jca685KHjbvttts2TJw4sX769Ok1pmli0aJFy5Numx4rIYSQsiMubNxtt93W82c/+9mGTZs2Lbn55ps3XHrppXVJdXOuYEIIIQedtp4r+Fvf+lb/hx9+uHtFRYVywsZ9/vOf3/G3v/2t686dO98yDAOmaaJLly7H79mz519ROjhXMCGEEGITFzauZ8+ezU8++WQVAMyfP7+qtrZ2f1LdfMdKCCGE2MyePXvdddddV/Od73xH2rdvb95xxx3rkupgVzAhhJCDTlt3BacBu4IJIYSQgwANKyGEEJIiNKyEEEJIitCwEkIIISlCw0oIIYSkCA0rIYQQkiI0rIQQQsqWYNi4l156qePo0aOHDR06dPj48eOHbNu2LbGdpGElhBBStgTDxl1xxRV1N91008aVK1cu/eIXv7h91qxZfZLqpGElhBBSlkSFjVu7dm2HCRMm7AGASZMm7Xr88cePTKqXUxoSQghpUzY/cKDmwIfpho1r39do7H1h8rBx9fX1++67775uX/3qV3fce++91Zs2bWqXdNv0WAkhhJQdcWHj5s6du3b27Nk9R4wYcczu3buNysrKxPP+0mMlhBDSpuTzLEvBokWLOj/zzDPd+vfv39UJG3fOOecMmjdv3vsvvvjiewCwZMmS9k8//XS3pLrpsRJCCCk74sLGNTQ0VABANpvFzJkz+37961//KKluGlZCCCHEZu7cudV1dXXHDh48+Ni+ffs2X3311R8n1cGwcYQQQg46DBtHCCGEkIKgYSWEEEJShIaVEEIISREaVkIIISRFaFgJIYSQFKFhJYQQQlKEMy8RQggpW/r37z+yU6dOWcMwUFFRod55551lmzdvzkyZMuWohoaG9v379z8wb968NT179swWqpMeKyGEkLJm4cKFK5cvX770nXfeWQYAM2fO7Hv66afvXrdu3Tunn3767hkzZiQKHUePlRBCCNF46qmnui1cuHAFAFx55ZUfjxs37mgADYWWp2ElhBDSpuz87wM1LR+kGzauop/R2PWSwib3P/PMM+tFBJdddtmW7373u1s//vjjitra2mYAqK2tbd62bVsiW0nDSgghpGx58cUXl9fV1TU3NDRUjB8/fuiIESP2t1YnDSshhJA2pVDPshTU1dU1A0D//v1bJk6cuOOll17q1L1795Z169ZV1tbWNq9bt66yurq6JYlOfrxECCGkLNm1a5exfft2w1l+/vnnuxx33HH7zjrrrB133nlndwC48847u5999tk7kuilx0oIIaQs2bhxY8WUKVOGAEA2m5Xzzjvv46lTp+4aO3bs3ilTpgyura3t0a9fv6ZHH310dRK9NKyEEELKkuHDhzetWLFiaTC9T58+2ZdeemllsXrZFUz+//buNqbJc4/j+NVbEDlQQeSpFKRHHuVxh72YnixZ5IWmwS1zdlvOjjnRODJc3JaxbCZb1MzELItLXEYyl6FoFp+ImswwZbBF022VzOTsiLBSqzJQKnWeKSJWoLQ9L3ZYCGt3epcLe8z9/bwyffi3737+r3LfPwCARAQrAAASEawAAEhEsAIAIBHBCgCARAQrAAASEawAAM0yGo3lhYWFJcXFxSVlZWVLhBCiqalpQX5+fqmiKI9+8803qu9hzHWsAABNs1qtToPB8NttCx955JH7x48fv1xbW2uKZB7BCgDAFFVVVTO6ET/BCgCIqrHG+zn+Abm1cUq24omrjY+oNm6mn02wAgA0K1htnNlsHpnJTIIVABBV4W6WsyFYbdxMg5W/CgYAaFKo2riZziVYAQCaNDAwELN06dLioqKikqqqqiUrVqwYslgsw5999llyRkZGxfnz5xNWr15d8PjjjxeomasLBAKz9Z0BAAiqs7Ozr7KycsZ/KBRNnZ2dqZWVlabpj7OxAgAgEcEKAIBEBCsAABIRrAAASESwAgAgEcEKAIBE3HkJAKBZRqOxPCEhwacoioiJiQl0d3f3vPTSS9nt7e1JsbGxgdzc3LHDhw/3paam+sKdycYKANA0q9XqdDgc9u7u7h4hhFi5cuWw0+n80el02vPz80e3bNmSqWYewQoAwBTPPPPMcGxsrBBCiGXLlt1zuVxz1byfo2AAQFSN7b2dE3B5pdbG6YyxnrgNC2ZcG7d///5Ui8VyS81nE6wAAM36o9q4zZs3Z86ZMydQV1dHsAIAHh7hbpazIVRtXENDw8K2trbkb7/91qko6n415TdWAIAmhaqNO3bs2PwPP/ww89SpU5f1er1f7Vw2VgCAJg0MDMSsXr06XwghfD6fbs2aNb9YLJbhRYsWlY2PjyvV1dWFQghRVVU1cujQoavhziVYAQCaVFJSMn7x4kX79MevXr3aPZO5HAUDACARwQoAgEQEKwAAEhGsAABIRLACACARwQoAgERcbgMA0KxgtXGvvfZaVmtra7KiKGLhwoXegwcP9k3eoSkcbKwAAE2bXhu3bds2t9PptDscDrvZbL7z9ttvG9TMI1gBAJgiJSXlt9sY3rt3T9HpdKrez1EwACCqxvYN5gRcY5Jr4+I8cesNEdfGvfLKK8ajR48u1Ov1PqvVelHNZ7OxAgA0y2azOex2e097e/ulxsbG9NbW1kQhhGhoaHC53e4LFovll507d6armcnGCgCIqnA3y9kQqjZu8vn169ffqqmpKdi1a9f1cGeysQIANClUbVxXV1fc5GuOHj2anJeXd1/NXDZWAIAmhaqNW7lyZV5vb+88nU4XyM7OHt+7d2+/mrkEKwBAk0LVxrW1tV2ZyVyOggEAkIhgBQBAIoIVAACJCFYAACQiWAEAkIhgBQBAIoIVAKBZRqOxvLCwsKS4uLikrKxsydTntm7dmqHT6R4dHBxUdWkq17ECADTNarU6DQbDxNTHLl++HHv69On5BoNhXO08NlYAAKbZtGlTzs6dOwfUVsYJwcYKAIiysf19OYHr9+XWxmXFe+LWmSKqjTt48GCSwWDwLlu2TNU9gicRrAAAzbLZbA6TyeR1uVwx1dXVhaWlpaPvv/++4cyZM5cinUmwAgCiKtzNcjZMr407ffq0fmBgIK6ioqJECCFu3Lgxt6qqasn333/fs2jRook/nvYrfmMFAGhSsNq4xx577N6tW7c6XS5Xl8vl6srIyBj/4Ycfwg5VIdhYAQAaFao2bqZzCVYAgCaFqo2byuVydamdy1EwAAASEawAAEhEsAIAIBHBCgCARAQrAAASEawAAEhEsAIANCtYbVx9fX1Wenp6RXFxcUlxcXFJc3NzkpqZXMcKANC0YLVxdXV1N7Zv334jknlsrAAASMTGCgCIqvHPnDn+6/ek1sYpWQmeuf8ojKg2Tggh9u7dm37kyJGFlZWVno8//vhaWlqaL+zPjvRLAwDwsLPZbA673d7T3t5+qbGxMb21tTXx9ddf/7m/v7+rp6fHnpmZ6X355Zdz1MxkYwUARFW4m+VsmF4b19HRkWA2m0cmn9+0adPNVatWFaiZycYKANCkYLVxFRUV9/v7+2MnX3PkyJHkoqKi+2rmsrECADQpVG3c008//We73R4vhBDZ2dnj+/bt61czl2AFAGhSqNq4zz///KeZzOUoGAAAiQhWAAAkIlgBAJCIYAUAQCKCFQAAiQhWAAAkIlgBAJoVrDZOCCF27NiRbjKZyvLz80vr6uqy1czkOlYAgKZNr41raWnRnzx5Mrmnp+fH+Pj4gMvlUpWVbKwAAEyxe/futLfeemswPj4+IMSv9xFW8342VgBAVI0f6MrxXx+RXBuX6Jm7tjyi2rje3t55VqtVv3XrVmNcXFzggw8+uPbEE094wv1sghUAoFk2m81hMpm8Lpcrprq6urC0tHTU5/Ppbt++Pef8+fMOq9X6pxdeeCHv2rVrXYoS3iEvwQoAiKpwN8vZEKw2LjMzc9xisQwpiiKWL1/uURQl4Ha7Y7KyssI6EuY3VgCAJoWqjXvyySeHvv76a70QQly4cCHO6/UqmZmZYf/OysYKANCkULVxo6Ojuueff95UUFBQGhsb6//0009/CvcYWAiCFQCgUaFq4+bNmxc4ceJExNVxHAUDACARwQoAgEQEKwAAEhGsAABIRLACACARwQoAgERcbgMA0Cyj0ViekJDgUxRFxMTEBLq7u3tqamoWX7lyZZ4QQty9e3eOXq/3ORyO312WEwrBCgDQtOm1cSdPnuyd/HdtbW12UlKST808ghUAgCD8fr9oaWlJ+eqrry6qeR/BCgCIqvED/8zxDw7LrY0zzPfMXftoRLVxk4+3tbUlpqamesvLy8fUfDbBCgDQrGC1cWazeUQIIQ4cOJCyZs2aW2pnEqwAgKgKd7OcDcFq48xm84jX6xVffvnlgnPnzoX9R0uTuNwGAKBJoWrjhBDixIkT8xcvXjyal5fnVTuXjRUAoEmhauOEEOLw4cMpzz77rOpjYCEIVgCARoWqjRNCiOPHj/dFOpejYAAAJCJYAQCQiGAFAEAighUAAIkIVgAAJCJYAQCQiMttAACaFaw27uzZs/EbN27MHRsbU2JiYgINDQ39y5cv94Q7k2AFAGja9Nq4N998M/udd965/txzzw03Nzcnbd68OefcuXNhN9xwFAwAwBQ6nU7cuXNnjhBCDA0NzcnIyBhX8342VgBAVI0fPJvjHxySXBuX7Jn7979GVBv30UcfXaupqSnYsmVLjt/vF999951DzWcTrAAAzQpWG9fc3Lzgvffeu7Zu3bqhPXv2LFi3bp3p7NmzznBn6gKBwGx+ZwAAfqezs7OvsrLy3//7lQ9OfX19VmJiom/Xrl2GO3funFcURfj9fjF//vy/jIyM/Gv66zs7O1MrKytN0x/nN1YAgCaFqo1LS0vznjp1Si+EEC0tLfrc3NxRNXM5CgYAaFKo2ji9Xt9fX1+f88Ybb+ji4uL8n3zySb+auRwFAwAeuP/Ho2C1OAoGAOABIFgBAJCIYAUAQCKCFQAAiQhWAAAkIlgBAJCI61gBAJoVrDauo6MjfuPGjbkej0fJzs4eP3bsWG9KSoo/3JlsrAAATbNarU6Hw2Hv7u7uEUKI2tpa044dOwacTqf9qaeeuv3uu+9mqplHsAIAMEVfX988s9k8IoQQq1atGv7iiy8WqHk/R8EAgKjyHj6T4x+8Jbk2LsUT+7flEdXGFRQU3D906FDy2rVrhw4cOJDidrvnqvrsyL4yAAAPP5vN5rDb7T3t7e2XGhsb01tbWxObmpr6du/enVZaWrrk7t27SmxsrKp7/7KxAgCiKtzNcjaYTCavEEIYjcaJmpqaoY6OjoTt27ffsNlsl4QQ4sKFC3Ht7e3JamaysQIANClUbZzL5YoRQgifzye2bdtm2LBhw89q5hKsAABNGhgYiFm6dGlxUVFRSVVV1ZIVK1YMWSyW4aamphSTyVSWl5dXZjAYvK+++uovauZSGwcAeOCojQMAAGEhWAEAkIhgBQBAIoIVABANfr/fr4v2l4jUf7970PsHE6wAgGjovnnzZtLDGK5+v1938+bNJCFEd7DnuUEEAOCBm5iYeNHtdu9xu91l4uFb8vxCiO6JiYkXgz3J5TYAAEj0sP0vAQCA/2sEKwAAEhGsAABIRLACACARwQoAgET/AfZwddi3yt2GAAAAAElFTkSuQmCC\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.lineplot(data=df_melted, x=\"year\", y=\"values\", hue = 'topics')\n", + "plt.legend(bbox_to_anchor=(1.05, 1), loc=2, borderaxespad=0.)" + ] + }, + { + "cell_type": "code", + "execution_count": 70, + "id": "0ed12aa6-e894-4b5b-bf0a-f1ed319d78e4", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 70, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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3nH379/Pv/71L1JSUoiLi2PgwIG0a9eORx55hHPOOaeII1WlXUJCAuvXryc1NZXk5GQAmjVrVu5bL6AVjFLHWL58OQsXLgw65ZGcnEzbtm3p2rWr3+GpYpKYmMiaNWvo1q0bt9122wnzNmnS5ITvyyutYJQKceWVV/LYY4/x2muvISIsWLCAvn370qVLF79DU8UkOTmZlJQUYmNj+e9//8v27dvp0aMH9evXLzC/3jFWMK1glAoRERFBbGws9evXZ9WqVQwbNqxUPm2tTs+BAwcYN27cMS3YtWvX8vLLL/sdXqmiFYxSx6GjHJZP1apV47777mPKlCl5fe393//9H3feeaffoZU62lWMdhWjlCpARkYGS5YsoW3btrRp0yas0yptD2oWtqsYbcEopVQBirMFG/qgZlk58Ne+yJRSykcHDx5k06ZNQf31bdiwgalTp/od2q+mLRillPKRiFCpUqWgBzUBqlat6nNkv562YJSvEhMT+ctf/lJsvR7v3buXGTNmlJlTEKr0O+OMM2jatClZWVkkJyeTlZVFTExMmXjmSlswyhebN2/mueeeY9u2bcTFxdGvXz/q16/PM888w/nnnx+26b755pt8+OGHNGvWjObNm4dtOkqdirL6oKZWMOXYzp07ATj33HOLfdqbN29m48aNxzxrsGXLlrBVMElJSXk93Y4YMYLLLrusRN+po8qPsroe6imycioxMZH777+fv/71r75M/6qrruIf//gHCxYsICkpiY8//pjRo0fTvn37sEwvOzubzz77jIoVKxIfH8/PP//MkiVLwjItpZSlFUw5tHDhQlJSUujatSsHDhxg5MiR/PDDD8Uex0UXXcTQoUOpUaMGQ4cOJTo6OmzTevvtt9m1a1fQnTrbtm1j+fLlYZumUuWdniIrh1566Z/ExsYGnZr65ptU3n57UrHHUlzPGlxyySVMnjw56E6dChUq0KhRo7BPW6nySiuYcigu7npmzpyZt6Nt1KgRN9xwg99hhVVMTAwtWrRg9erVeV2qR0dH85vf/MbfwJQqw7SCKYcefPBBrrzySqZPn86dd95ZbvpYat68ORUqVODIkSNUqlSpzNypo1RJpX2RaV9kqgTJzs6mUqVKfoeh1AkVti8yvcivVAmxbNkyunXrxvfff+93KEoVibBWMCISKyJrRWSdiPQr4HMRkTHu81QRaev5bKKI7BSRtAK+94grN11ERnnSn3ZlrRURHR1KlSovvvgiubm5zJs3z+9QVDlgjGHy5Mls3749bNMI2zUYEYkEXgY6AZlAiojMMMZ4+wSJA5q6vw5AkvsP8AYwFngrpNzfA92BGGPMYRE516W3BO4AWgHnA/NFpJkx5mh45lCporFjxw7++c9/sm/fPuLj45k+fTqZmZk8+uijVK9e3e/wil1SUhKrV69mx44dREVF0bRp0zL7IKKfFi9ezL///W9SUlIYPXp0WKYRzhbMpcA6Y8wGY0w28A62YvDqDrxlrCVADRGpA2CMWQT8VEC5CcBIY8xhl2+np6x3jDGHjTEbgXUuBqVKtEWLFrF8+fKgZ3Q+//xzUlNT/Q7NF+vXr2fNmjX8/PPPpKWlsX79er9DKnMWLVrE6NGjiY+PZ926dXz00UccPVr0x+LhvIssCvA+vZdJfuvkRHmigG0nKLcZcKWIDAeygCeMMSnue95HswNlBRGRXkAv4LjjaytVnHr06MHOnTuZPXs2xhjmzp3L7bffzuWXX+53aMVu6dKlpKamUqVKlbyxUTIyMtiyZQtRUcdszuo0rF27lsTExKBuml566SUyMzN58MEHi3Ra4axgpIC00FvWCpMnVAXgHOAyoD0wVUQaF7YsY8yrwKtg7yI7ybSUCruKFSvy8MMPc+WVVzJv3jyGDx9Oq1at/A7LFwcOHADIa80ZY5g+fTqHDx/2ObKyo27dunTo0CHooeMGDRpwxRVXFPm0wlnBZAL1PO/rAltPI09B5U4z9v7qpSKSC9Q6zbKUKjFiYmKIiYnxOwxf/f73v2fKlClBO7/GjRvTuHFjv0MrM6pVq8awYcNIT09n4sSJPP7441x99dVhmVY4r8GkAE1FpJGIVMJegJ8RkmcG8Ed3N9llwF5jzIlOjwEkA9cCiEgzoBKw25V1h4hUFpFG2BsHlhbZ3CilikXr1q2JiopiyZIlREVFlftKN1xatWrFP/7xj7BVLhDGFowxJkdE+gBzgEhgojEmXUR6u8/HAzOB67EX5A8C9we+LyKTgWuAWiKSCQw2xkwAJgIT3e3L2cC9rjWTLiJTgQwgB3hY7yBTqvTRO8bKDn2SX5/kV6doz5497N+/n7p16/odijoBYwy5ublERkb6HUqZo0/yKxUmw4YNo2fPnn6HoU5i/Pjx9O7d2+8wyjWtYMqYJ554gvfff9/vMMqspKQkvvnmG44ePUpCQgJJSUl+h3Tatm3bxhtvvEFZPYvx/vvvs3nzZr/DKNe0gilDMjIySE1NLdU7vZIsJyeHr776iipVqhAfH8+WLVtYuXKl32GdtqSkJCZNmuTLYHPh5t0GSvuBQGmmFUwZsXjxYp555hni4+OpUqUK77zzDgcPHvQ7rDJlwIABbN26NeiJ+02bNpGVleV3aCc0bNgwunbtyoQJE/LSkpKSSElJAWDUqFFlagecnZ3N4sWLgw4Evv76a7/DKpe0gikDfvnlF4YPH06XLl3ydnwTJ07kueeG+x1amdK8eXMAZs2axbhx45g9ezZnnHEGFStW9Dmy41u4cCHLli3jhhtuYPr06UybNo2srCzWrl2b1zXIt99+y7p163yOtOgMHTqU3bt3Bx0IfP/99xw6dKjYYzlw4AAPP/wwa9asKfZplwQ64FgZcNZZZ3HTTTfx0Ucf5T2cFh0dze233+F3aGXKfffdR2pqKmlpaXmjYsbExJTYu5S2bNnCiBEjgroEGT9+PJ9++imrV68+pjuWHTt2cN555/kd9q8WGKXU+7BmZGRksS+npKQk5syZw8GDB+nXr1/eAWB5ohVMGSAi9OrViyuuuIJp06bxyCOP0KlTJ7/DKpOaNm1KRER+w78kj4p57rnnckm7dkE72qpVq1KvXj1Wr14d1B1LcnJymTml2rdvX9asWcOmTZuChscu7oHcvvrqK3Jzc4mPj2fWrFl88cUX9OrVq8QekISDVjBlSMuWLWnZsqXfYZRppekItGLFiox47jnS09OZM2cO/fv3p0OHDhhjSE9PP6YvqkaNGvkdcpGIiIjg4osvpnLlyhw5coQzzzyz2A8Evv76a7Zu3RrUekxOTmby5MncfffdxRqLn7SCOUWJiYmsWbOGe+65hy5ddEwzZeXm5vKvf/2Lrl27lrhWTatWrYI6zxQRLr30UlatWsWiRYvKZHcsfh8I1K1bl0qVKh9zmu6iiy7yNa7iphXMKZgxYwYpKSnExsby8ssvs27dOu666y7OOeccv0NTPhs8eDBfffUV6enpvPrqq36Hc1J+74DLunPPPZfmzS8kNTU16Hpd69at/Q2smOldZIW0bds2xo4dS2xsbN6dKdOnT2fMmDF+h6Z8lJWVxdChQ1m1ahXx8fFs376dnj17ltu7hlS+Jk2aEBMTQ7NmzbjoootKXMu2OGgLppB++9vf8uc//5lJkyYBMG/ePG688UZuvfVWnyNTftq2bRufffbZMefaFy5cmHdbsyqftJWonV2ecmeXGRkZrFq1itatW+sFdQXAp59+ypgxY+jYsSPz5s3j/vvvJy4ujgoV9PhNlU2F7exSKxjtTVkVAT3wUOVJYSsYPcRSqgjoLeJKHUsv8iulfPX222/zzTff+B2GCgNtwSilfPXmm29y5plnMm3aNL9DUUVMWzBKKd8kJiYCsH//fp8jUeGgFYxSyheLFy8mJSUlb4iJKVOmlPihD9Sp0VNkSqlit2fPHhKHD6dH9+55zw9NmDCB1atX8+yzz/odnioiWsEopYrdWWedxZVXXBHUV9c555yjvYCXMfocjD4Ho5Rv0tPTeeutt7j88svp3r273+GoQtIHLQtBKxillDp1ha1g9CK/UkqVA340JrSCUUqpMu6VV17hqaeeKvbpagWjVBmSlpbGu+++63cYqgRJSkrivffeY9WqVSQkJJCUlFRs09a7yJQqQwYNGsT+/ft1GAkFwNGjR/nss8+oUqUKcXFxeXftFRdtwShVRiQlJeU9EV/cR6qqZBo0cBC7du0iLi4ub6DETZs2cfTo0WKZvrZglCoDCjpSzcnJ8Tss5bOY1jGkLEsJet6oWrVqREQUT9tCWzBKlQHPjxp1zJHq999/z759+/wOTfno9ttvJzo6mqysLJKTk8nKyqJRo0aISLFMP6wtGBGJBV4CIoHXjTEjQz4X9/n1wEHgPmPM1+6ziUBXYKcxJtrznWeBnsAul/SMMWamiDQEVgNrXfoSY0zvMM2aUiXKBU2a8MnChUFHqpUqVaJy5cp+h6Z81rRp06AWS5MmTYpt2mGrYEQkEngZ6ARkAikiMsMYk+HJFgc0dX8dgCT3H+ANYCzwVgHFv2iMeaGA9PXGmDZFMgNKlSK33XYbX3zxBRkZGSQnJwMQExNDpUqV/A1M+S4hIcG3aYezBXMpsM4YswFARN4BugPeCqY78JaxtzUsEZEaIlLHGLPNGLPItUqUUoVw4YUXEhkZSW5uLpGRkcV6pKpUQcJZwUQBP3jeZ5LfOjlRnihg20nK7iMifwSWAY8bY3526Y1EZAXwCzDAGLP4dINXqrTx80hVqYKE8yJ/QVeRQm/ALkyeUElAE6ANtiL6h0vfBtQ3xlwMPAZMEpHqxwQl0ktElonIsl27doV+rJRSqoiEs4LJBOp53tcFtp5GniDGmB3GmKPGmFzgNeypOIwxh40xP7rXy4H1QLMCvv+qMaadMaZd7dq1T3GWlFJKFVY4K5gUoKmINBKRSsAdwIyQPDOAP4p1GbDXGHPC02MiUsfzNh5Ic+m13Y0FiEhj7I0DG4pmVpRSSp2qsF2DMcbkiEgfYA72NuWJxph0EentPh8PzMTeorwOe5vy/YHvi8hk4BqglohkAoONMROAUSLSBnsqbRPwoPvKVcBQEckBjgK9jTE/hWv+lFJKnZiOB6PjwSil1CnR8WCUUkr5SisYpZRSYVGuT5GJyC5gs3tbC9hdQLaC0sOVt7inV5JjK+7pleTYint6GlvpmJ6fsTUwxpz8NlxjjP7ZSnZZYdPDlbe4p1eSY9PfQn+L0hZbef0tTvSnp8iUUkqFhVYwSimlwkIrmHyvnkJ6uPIW9/RKcmzFPb2SHFtxT09jKx3TKymxHVe5vsivlFIqfLQFo5RSKiy0glFKKRUep3rbWVn8A2KxQy2vA/q5tInATiDNk68esBA7NHM68FegCrAUWOXShoSUHQmsAD70pG0CvgFW4m79A2oA/wPWuPJ/B1zo8gT+fgH6Ao+6aaUBk4Eqroy/urSfgX0hsf8XyAYOA/OAc4BbXV6DHRwukPcbIAfIAt53sQ0DfgKOuLLP9+Sf6NIMUMulrcD2CXfIxX69S//SU/Yol7bBlXvI/TYrscMx7PSkX+rydgb2uu/vA55y6dEuvmxgP9DPLa80N88GeMHlHQ8ccGX84sm7yaUdcsvhfPKX+Q5XxjOujNGu3ED+8Z68291n24BR2E5d97m82eT3Ip7ivnsI+B7bM3h7l/eQ+z8Cu44td+8PY3sKPwe4C9uHn3FpQzyxBcr9BRjpytjiSV/v5i+w/m515Yzy5A389tuxfQZW8fxGWcDnbnrvut/zkJu/7S5vmid9q5u/1th14JD7TasDv8Guk9+5eOe4cm/Frue5bnl86NL/7t4fcr9xDez6mUr+djIvZBvc4uavFvCse7/S/X5fefL+hfx1axQwhfzt7zC2Q16w6+cSTxmfufTWnt9nL/C1S//es/z2kr/9Zbu41pK/Lwis34ew22dg/rI9y3RVyL4kdP5yyF/W33nm70cXwyFgu0s74Ml7mPztL5DvIJDhmb8v3TQ/AKqfcN/q987d7z+38q0HGgOVsBVFS2znmW0J3knXAdq612cB37q8Z7q0isBXwGWe7zwGTOLYCqZWSBxvAn92rysBNQqIczt2I90InOHSpwL3YXewaUBV4Pcujm89358EjHF5+gHPAy2AP2AHbvNWMI9jd3RpLt/z2B1B4DfZCoz35L8Z+MJtAIEK5t/AiyG/3+/dtDq4ss916Xm/NXZ8n0HAXOBJl74J+MTlXen5nR7CbjAtscNzj3Hpg7CVzVXATdiKejH2odqW2J6927u8L3ryXulZtjuxO5c62KG952B3EutcGS9gh+72rgtXAb2A+UBNl3YFwevNGOzDaldhN9Q49/1M7I4+BYh1eXtidxyXuTj7Ydex74H/uOV3MfCJ+02/cnk7A2d7dsZbXXodz3q6CZiGHZPpQjd/m7EV2WXAc8ATeNZpt/wWApVdeiCvkL8NvOjm5TJggZu/itgK4Ws3f2Ox6+Mq7I5zlJu3x9zyXefKauFiWwfMJr+C6exim+Q+ex63o3NlLAM2e9a7odiK6CD5O+AnCNk23fx9C7wDfIhbPz3lrgbWuvdz3bw95n7/H116iptWLeBPwDBPpTHUvfZuf5nA50A7z7S2A+e5197tb5Mr9y+47c+lxXiWX2D+fuLYfczvsRXG+e79uZ4yAtutd/vb4cq7nvztLwW42r3Om7/j/ekpMs/QzsaYbOzK1d0Yswi7kPIYO5Tz1+71PuwKF2WM2e+yVHR/BkBE6gI3AK+fKAA3MNpVwARXdrYxZk9ItuuwFeEWbC/YZ4hIBWyFshW7si4xxhw0xiwEPsOulAGXYHdKYCuzHsaY1caYt7FHO975/AcQGI1tCVDXGPOL5zeJIHhguDuxOwqvzdgN2isBu3HtcNPZ6f57f+vbsK0yg92R/oStXAPjBDUO/E7YI6hK2FFQO2KP9sGOE1QRqGyMmWaMWYttTW3CLq93jDEpLu8i7BFcZeNGQHXLdjdQ1djhIx4AnsIeSX/nprcfuyy860JlF8dIY8cmWo09ENhmjPlaRAQ7xMRKl/cX7I5xH3ansp/8nT3YHddv3G9xPXa5VQT2AFe55bfC5a3gPjPGmLnGmL0ufRm2NWFM/lAYFT15DTDczV+gHIM9WAjKi11+w40xh12aBMowxux383crdmdqsOtV9cCywK5TzbHr6uvu/c3YodPnYreVROC37ndd7ZZNTSCZfBnYnfvr7reoa4z5xbO9rSB4G+wNDCTY2Ry7bT7mlsGrbvo7PWXc4OLY4vIaoKFL/wzb4gC7/A671/Pc/IHdTqe413nbHyHbnpOFXV/Bs/15Pq9G8PaXiF1+J7tjKwG7bLK98xfglp93+wsMCHk2+dvfhdhtJnT+Cnai2qc8/AG3AK973t8DjHWvG+I5Ag/5XkPsDrA6dge4ErtyPu/J8z/sjv0aglswG7FHc8uxR7xtsEevb2A3jteBaiHTmwj0ca//6qa1C3jb5B/tfYvdCKq68n/0fH+Pd36Anz2fLcHTgvHOO3YnfrdLG+5WtCygtkvrBrzk8ntbMM9ij86yXOznuN9oiJvHA7hWhGd6G8g/TdDC/b5bsadqGrj0L7AHAGArtVy3DPaElJWLp/nu5nE7IU16bGtjN/lHwIF5zAYaBebPfZbp/qq7+duEPS0zFTv0d/WQecwCrvFM6yqXP7DeeOcxB2jl5i9QCR0GDnuW30rcOhZYfth1bz+2Mveue4F1Mgf4wJO23f02u4Dabv7GuLy55LcCh7jf4KiLObD8hrpldxR4M2R637n0511aK1dGLvb0UAP3Wz+G3SbSXfoegreV7JBtaBl2WI4PPWmBvDvIXz9Xu/nbCMx1aZ9jd5jXENyCOeDinUn+Kbk92MolA9sybu+Z3p+xp7ECMbRw5W13v+UCz/q5A7v9/QBkufSjBG/zgeW30f0Gq4FeBewfVnnmbw/5p8kec2k7sK3t5e63Dcxf4PTmbqCvy7sSe8rtgJvm8JDprQU2eeYvx00vm/xLB97t7zFg3wn3r37v4P3+wx5xhVYw//LuZAv4zplugd4Ukl4DewohGugKjHPp1xBcweQ1Ud0K1NMtzA4u/SU8TU/sUfpu4Dzshv4xdudQEXtkF1gBH3AryiLgbWC3p4w9nHoFswN7DUZC0rdjd0BVsadPzubYCuY8bGsjDbvTnuhej3F517sVWzzl/gg87t6PwR4dNcTuhOe79ObYo90V2B3zvsD8hSyb/SHLax/wZMg8DsFucDeF5F2OvWY13DN/Z2J3+Pd65i8Se3prG/k7mDTssN7LsUeV3nl8DbvTuckzj39weV/AVnaB+VuObZEdwa5PgfmrgV3H9npi/gS7ji0Eoj3p/bGnekLTa7jfPykwfy79e+zReLRn/s4h/3RaYPkJcC12B+YtN8lNM7ANBJZhDffd1dhTUnOxO7O1bpnvJ3hbyXavuwLj3Pw96ObFu1297n57CUl/FXuwdTN2HT6b4ArmbhdrBLZV/737/o8u5mvc77DRE0OS+x+oYGYAs93rZ4FdnvXzU7f8RmG366vIv3YT2OYD6+35bv46ufSryN8/PIdtcVwVst9IxG6DV2G397NdudnAjW7Z1XXz9yL5p4DTsK1/Abpg12fv9N7AblNXud8hcCr6z9jt5yqC18/BeA5iC9y/+r2D9/sPezF9juf908DTnp1eWkj+ithTGI8dp7zB2PO7I7BHu5vcynAQ+G8B+Z/F7ug2edKuBD7yvO9O/hHZrcAEz2d/xG1YIeW+DGz1vF9L/nWVOrhzye6zgiqYx13MVUPSG7qy0oCLsEdPm9y8GuzG+lvv7+f5Pxu78Qberye/JdQEuzHWde/3ug0hkPeXApbBCGCpZ/7qufTB5J8rD+RdR/B57j9hK92/FbRssUfb33nm7xD2KNQ7f4H8w8ivuOdgW6OBI8z12IOBKtgNeohnens90xPvPLrPm7nf9Qk3f4FrKH8HdnryfQK0c/P9hEu7F3uNp6o33fOd0eQf/W5yfznuNwm9UeVF7I58NsEtsp+wAwGCPbW2A7tjC2wDe8mvXAe78r3bROAI+0fsjm2TiycXW8EHtqEsl++gWxcysa2GbJfmzestY41bZjnuv8EevY/x5N3l8qa56Wwnf3vdB/zT5T3qyg1MLytkXgwh27dbflsKWH4vHGf5PVvA8htewLJr4GIZGLL8crEHTL8N2V53uhgKs/xGF7DsBLvuhsbRDLf9He9Pr8EUbmhnIO8c5QRgtTFmtEurLSI13OszsOfg1xhjnjbG1DXGNHRlfmyMuVtEqonIWS5/NewFyy+BH0TkQjep67DN9IA7sc18sDu4y0SkqovnOuyRISJyrvtfH3tn3B5PGTOwpwPBrrzTj/eDiEgs9rz1ZmPMQZfW1JPlLDeP3xhjznXzeAX2aLutMWb7cYa2TsYe+YJtlQVaZrjvHzbGZLr3W4Gr3etq2J19YB4nuHmOwt69FZi/6S79MDDdu7ywOwPv/I0Gphhjnndpgj3VFVi23bBHlOdhW4SvYFsf3vkLlP0TkObKOBvINcaMFpFmnnn8EHuUO9gzPYM9kh3tfpfvRKSFiNQQkQjsTvmg+y3mAPe6dewWYLF33SP/+s8aEbkde6DUzU2jI7BVRNq6aZ/hPvsOexqrjVuGW9z8rA2siyF552OvfSAiF7nlslxEamMPgtZgK4uOLubtwNWujJuxO8G2blp3urxPYVu3Y1x6MrDBGHN3YBvCHgD1x25D0dgj6l3Yg62PjTF3Y0fMDWxvk4EdxpjmxphIY0wF7HZyCLtzHuHJOwXY5srti2393IFt2e3B3rH5Z2yL5jbP9DZizxw0xLZU9rrtu6GInOWW37Numt8Bs9zyq+bi/tS7L8AegHR260A88DcXx+/duhXjyXsLtnWSCjRxMQRORz4IVPXkvd3lTcOeDox1y6+1W34rXd6O2FbfZS7vtkBe7PW/Iy6OwD4mAhhA/vZXsBPVPuXlz/2A32KPNvu7tMnuRz6C3Tk9gN0JGvJvh1yJvZNphUtLAwYVUP415DetG2N3XIHbmgPTa4M915yK3cjOcelVsRvi2Z7yhmA35jRsE7+yS1+MrZh+dt/xxv4e+bfrZmHvRIkn/zbXQPoD2CO3wBFfNvYI6z3sBncEe6S0FXgg5LcygXTsBnjEpR3CHqVXwu5kAum7XN7JLo6jIb/1T57p7XDp/3TfPezSVrrld70nfR/2NsonPPOQ68paTn5rK3Br5m5P3sDtoXuxp0u9yzzblXs99mjQePKmecr4mfzbO/t5ysgkf70J5D3o8h5wy+R5F8Nh9/sMwt4llErwbcq/we4QA/OWg7sdFXsQEjhXfwh7EBXjll/gFto12Ao6hvz1Nxt7S3OM++0PefLWwd7R95PnN/q3m14Mdn3LdL9DIOZvPfOXib1u8leX/gO2VSnY64YLsDvi5eRfE4l33zvsprvTpa/zfH8vdif3npt2KvY6wfwCtsHAKbL/uOWYir1GM8/lqYRtnWx05V7r0t/AHnBdQ/52fAX510gygMUufaiLN7D8+pN/qjh0+fUOXX4u72HP8tvm5m+2Z3nuw64nofuSn938ve/J+wu2QgV7gf5nz2cTPGX8hN12A/uj2zzL7iDwsksPLL9vseuKhO7vvH/aVYxSSqmw0FNkSimlwkIrGKWUUmGhFYxSSqmw0ApGKaVUWGgFo5RSKiy0glEqjNwzLQ/9iu/P9DzrolSporcpKxVGItIQ++xEtN+xKFXctAWjVHiNBJqIyEoR+bv7SxORb9wT94jINSKySETeF5EMERnvnpRGRDaJSC33+o8ikioiq0TkPy7tVlfeKhFZdNwolPJBBb8DUKqM64ftELKNiNyMfXq7NfaJ6xRPpXApdpyZzdintm/C9uILgIi0wj4V/n/GmN0i8hv30SCgizFmi55KUyWNtmCUKj5XAJONMUeNMTuwve62d58tNXZMoqPYrnOuCPnutcD/jDG7AYwxgfFzPgfeEJGe2N6PlSoxtIJRqvjICT4LvRga+l4KSMMY0xvb6WA9bMeFNX9VhEoVIa1glAqvfdjep8H2yny7iES6HoivwnbtD3Cp69E7AtsD7mch5SwAbgtUIIFTZCLSxBjzlTFmELbTznrhnR2lCk+vwSgVRsaYH0XkcxFJw3bZnortvdYATxnb9X9z7JANI7Fj7CzC9ojrLSddRIZju3k/iu0B+T7g724oBcFWQquKZ86UOjm9TVkpn4nINdjBnLr6HIpSRUpPkSmllAoLbcEopZQKC23BKKWUCgutYJRSSoWFVjBKKaXCQisYpZRSYaEVjFJKqbD4f1utsqk9aBkeAAAAAElFTkSuQmCC\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.violinplot(x=\"topics\", y=\"values\", data=df_melted, scale=\"count\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c38dcbf6-c3cf-4c5b-a833-32f8297f2033", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 71, + "id": "6302b3da-cb80-41de-b605-141d5ce54846", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 71, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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7gjnbHn++edzHnvssVYA+MY3vtH/f/7P/6lIcknH4MiJiOgclJeXp7/88st+AFi3bp2/vLw8muyaRuPIiYgoxV155ZXT33vvPX9/f7+joKBg3j/90z91PPLIIy133HFH2Xe/+13hcrmsX/7yly3JrnM0hhMRUYqbqGXGrl27Gqe6llPFaT0iIrIdhhMREdkOw4mIiGyH4URERLbDcCIiItthOBERke0wnIiIUtx4LTM2b97smT9/fm1NTU3dkiVLqvr6+myVB7YqhoiIJt94LTNuvvnminvvvbetubm54Stf+Ur/PffcU5is+sbDcCIiSnHjtcw4ePCge+nSpUEAWL58+dCLL76YlZzqxscVIoiIpsDvPvphWXtgcltmlPgrw393/uktKFtdXR158sknM6+//vqBxx9/PLuzs9M5mbWdKY6ciIjOQY899tjBRx55JG/27NmzAoGAommaTHZNo3HkREQ0BU53hHO2nHfeedF33nlnDwBs377d9eqrr2YmuaRjcORERHQOam9vdwCAaZq4++67i775zW8eSXZNo3HkRESU4sZrmREMBpU1a9bkA8CXv/zl/ttuu6032XWOxnAiIkpxE7XMWLVqla1GS6NxWo+IiGyH4URERLbDcCIiItthOBERke0wnIiIyHYYTkREZDsMJyKiFLZ3717t4osvrpkxY8bsqqqq2T/+8Y/zAaCrq0u99NJLq8vLy+dceuml1d3d3Wqyax2N4URElMI0TcO//du/te3fv3/XBx980LhmzZr8jz76yH333XcXXX755YGWlpadl19+eWD16tW2apnBk3CJiFJYeXm5Xl5ergNAVlaWVVlZGTl06JDzlVdeydy4ceNuALjlllt6L7vsspkA2pNa7CgMJyKiKfDwn39YdmiSW2ZM81eGv33eqS8ou3v3bmdDQ4P3sssuC/b29jpGQqu8vFzv6+uzVR5wWo+I6BwwODiofPWrX63813/919bs7Gwr2fWcjK2SkogoVX2aEc5ki8ViYtmyZZXXXntt3w033DAAADk5OUZLS4tWXl6ut7S0aNnZ2cZJ7mZKceRERJTCLMvC3/7t35bX1NREf/jDH3aNXH7FFVcMPProozkA8Oijj+Z86UtfGkhakePgyImIKIW99tpraS+88EJOdXV1pLa2tg4A7rnnnvZ77rnn8NVXX11ZXl6eW1xcHH/h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LTMKCwvjK1asGFAUBYsXLw4riiI7OzsdxcXFtpjes0dEEhHRWTFRy4wrr7xy4PXXX/cDwPbt2126riuFhYW2CCaAIyciopQ2UcuM2267ree6666rqK6unq1pmvWrX/3qgF2m9ACGExFRSpuoZQYArF279sBU13Oq7BOTREREwxhORERkOwwnIiKyHYYTERHZDsOJiIhsh+FERES2w0PJiYhS2N69e7X/8T/+x/Tu7m5NURTccMMN3atWrTqybNmyGfv27XMDQCAQUP1+v9nU1NSQ7HpHMJyIiFLYRC0zXnrppf0j29x8882lGRkZZjLrHIvTekREKay8vFxftGhRGDi2ZcbI9ZZlYd26ddk33HBDX/KqPB5HTkREU+DHH71Rti/QO7ktM/w54VXnf/60WmaMXLZ+/fq03Nxcfe7cubHJrO1MceRERHQOGNsyY+Tyxx9/PPuaa66x1agJ4MiJiGhKfJoRzmQbr2UGAOi6jldeeSXr/ffft82BECM4ciIiSmETtcwAgLVr16bPmDEjWllZqServokwnIiIUthIy4xNmzb5a2tr62pra+ueeeaZDAB46qmnsq+99lrbTekBnNYjIkppJ2qZ8fzzzx+c4nJOGUdORERkOwwnIiKyHYYTERHZDsOJiIhsh+FERES2w3AiIiLbYTgREaWwvXv3ahdffHHNjBkzZldVVc3+8Y9/nA8A7777rqe+vr62tra2bs6cObM2bNgwqev+nSmGExFRChtpmbF///5dH3zwQeOaNWvyP/roI/f3vve90rvuuqujqampYdWqVR133nlnWbJrHY0n4RIRpbDy8nK9vLxcB45tmSGEwODgoAoAAwMDakFBQTy5lR6L4URENAV+/NHGsn2BvklumZEdXnX+ZafVMqO8vDy+bNmy6lWrVpVZloVNmzY1TWZtZ4rTekRE54CxLTMeeuihvJ/+9KetnZ2d23/yk5+03njjjRXJrnE0IaVMdg1ERClp27ZtB+vr63uSXUcsFhOf//znq77whS8MjaxM7vf75w8ODm5VFAWWZSE9Pf28YDD457G33bZtW259fX3FVNfMkRMRUQqbqGVGXl6e/vLLL/sBYN26df7y8vJo8qo8Hr9zIiJKYSMtM6qrqyO1tbV1AHDPPfe0P/LIIy133HFH2Xe/+13hcrmsX/7yly3JrnU0hhMRUQo7UcuMXbt2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ExER2Q7DiYgohU3UMmPz5s2e+fPn19bU1NQtWbKkqq+vz1Z5YKtiiIhoco20zNi9e3fDrl27Gt544430N954w3fzzTdX3HvvvW3Nzc0NX/nKV/rvueeewmTXOhrDiYgohU3UMuPgwYPupUuXBgFg+fLlQy+++GJWcis9FpcvIiKaAj95r6ds/0B8cltmZDrDP7gk97RaZlRXV0eefPLJzOuvv37g8ccfz+7s7HROZm1niiMnIqIUN17LjMcee+zgI488kjd79uxZgUBA0TTNVmvZceRERDQFTmWEc7bl5uaaixYtCqxbty7jRz/6Udc777yzBwC2b9/uevXVVzOTXN4xOHIiIkphE7XMaG9vdwCAaZq4++67i775zW8eSW6lx2I4ERGlsNbWVu2zn/3szJqamrrzzjuvbvHixUNf+9rXBh977LHsioqKOZWVlXOKior02267rTfZtY7GlhlERGcJW2acPo6ciIjIdhhORERkOwwnIiKyHYYTERHZDsOJiIhsh+FERES2w3AiIjoHGIaBWbNm1S1evLgKALq6utRLL720ury8fM6ll15a3d3drSa7xtEYTkRE54B/+Zd/KaiqqoqM/Pvuu+8uuvzyywMtLS07L7/88sDq1avZMoOIiKbOvn37tPXr12fcfPPNR08IfuWVVzJvueWWXgC45ZZbev/4xz+yZQYR0bnmJ5uDZQcGjEltmTE90xH+wcK0ky4o+w//8A9lP/vZz9oGBwePTt319vY6ysvLdQAoLy/X+/r6bJUHHDkREaWwp556KiM3N9f47Gc/G052LZ+GrZKSiChVncoI52zYtGlT2muvvZZZUlKSEYvFlFAopFx11VXTc3JyjJaWFq28vFxvaWnRsrOzjWTUNxGOnIiIUth//Md/tHd1dW1vb2/f8dvf/nb/JZdcEli7du2BK664YuDRRx/NAYBHH30050tf+tJAkks9BkdORETnoHvuuefw1VdfXVleXp5bXFwcf+GFF/Ylu6bR2DKDiOgsYcuM08dpPSIish2GExER2Q7DiYiIbIfhREREtsNwIiIi22E4ERGR7TCciIjOAWNbZjz22GNZVVVVsxVFOf+tt96a1DX/JgPDiYjoHDC2Zcb8+fMjzz///N4LLrggmMy6JsJwIiJKceO1zFiwYEG0vr4+lsy6ToTLFxERTYH/2BQrOzRgTer02bRMJfwPi1yn1TLD7jhyIiJKYWyZQUREEzqVEc7ZMFHLjLVr1x5IRj2niiMnIqIUNlHLjGTXdTIMJyKic9Dvfve7zIKCgnlbt271XX311dWLFi2qTnZNo7FlBhHRWcKWGaePIyciIrIdhhMREdkOw4mIiGyH4URERLbDcCIiItthOBERke0wnIiIzgFjW2bccsstpdOnT59dU1NT98UvfrGyp6fHVuvuMZyIiM4BY1tmXHHFFUPNzc27mpubG6qqqqKrVq0qTGZ9YzGciIhS3HgtM7761a8OaZoGAFi4cGGovb3dmbQCx8GFX4mIpsCTb8XKDvdNbsuMomwl/PXPnXnLjN/+9re5K1as6JvM2s4UR05ERCnsZC0z7rzzzkJVVeXKlSttFU4cORERTYFTGeGcDSdqmfHwww/nrF+/PvPtt99uVhR7jVXsVQ0REU2qiVpmPPfcc+k///nPC19++eW9fr/fSnadY3HkRER0DrrjjjumxeNxZcmSJTUAsGDBguCTTz55KNl1jWA4ERGdI5YvXx5Yvnx5AAAOHTq0M9n1nAin9YiIyHYYTkREZDsMJyIish2GExER2Q7DiYiIbIfhREREtsNwIiI6B4xtmfGd73ynuKampq62trbuM5/5TPXBgwe1ZNc4GsOJiOgcMLZlxt13393Z3Nzc0NTU1LB06dLBH/zgB0XJrG8shhMRUYobr2VGdnb20SWLQqGQIoRITnET4AoRRERTYN2GWFn3JLfMyMtWwlcuPv2WGd/+9rdLnn322Ry/329u3Lhx92TWdqY4ciIiSmEnapnx8MMPt3d2dm5fsWJF7/3335+fjPomwpETEdEUOJURztlwopYZI9vcdNNNfcuWLat+8MEHO5JR43g4ciIiSmETtczYsWOHa2SbZ599NrOysjJyovuZahw5ERGdg/7xH/+xdP/+/W4hhCwtLY2vWbOmJdk1jSaklMmugYgoJW3btu1gfX19z8m3tK9t27bl1tfXV0z17+W0HhER2Q7DiYiIbIfhREREtsNwIiIi22E4ERGR7TCciIjIdhhORETngLEtM0asXr26QAhx/uHDh2113ivDiYjoHDC2ZQYA7N27V3vzzTfTi4qK4smqayIMJyKiFDdeywwAuPXWW8vuv//+Nru1ywC4fBER0ZR48/VYWV/v5LbMyM5Rwku+cHotM5544omMoqIifeHChbZaU28ER05ERClsvJYZgUBAue+++4oeeOAB26xCPhZHTkREU+BURjhnw3gtM1asWDG9ra3NNW/evDoA6Orqci5YsGDWli1bGqdNm2Yko86xuPArEdFZYreFX1988UX/v/3bvxVs2LBh7+jLS0pK5n744YeNRUVFxwUTF34lIiIaxmk9IqJzxPLlywPLly8PjL28vb19RzLqORGOnIiIyHYYTkREZDsMJyIish2GExER2Q7DiYiIbIfhREREtsNwIiI6B4xtmXHHHXcU5+fnz6utra2rra2te+aZZzKSXeNoPM+JiOgcMNIyIxgMHl38deXKlV0/+tGPupJZ10Q4ciIiSnETtcywM46ciIimwOb1sbLBnsltmZGRq4QXXnF6LTMAYM2aNflPP/10Tn19ffgXv/hFa15enjmZ9Z0JjpyIiFLYeC0zAOD2228/0tLSsqOxsbGhsLBQ/9a3vlWWrBrHw5ETEdEUOJURztkwXsuMq666avratWsPjGxz6623di9fvrw6GfVNhCMnIqIU9h//8R/tXV1d29vb23f89re/3X/JJZcE1q5de6ClpUUb2ebpp5/OnDlzpq064nLkRER0DvrOd75T2tDQ4AGA0tLS+G9+85uWZNc0GpsNEhGdJXZrNng62GyQiIhoGMOJiIhsh+FERES2w3AiIiLbYTgREZHtMJyIiMh2GE5EROeAsS0zAODee+/Nr6iomFNVVTV75cqVpcmsbyyehEtEdA4Y2zJj3bp1/pdeeimzsbFxl8fjke3t7bbKA46ciIhS3HgtMx555JG873//+4c9Ho8EgJKSEiN5FR7PVklJRJSqtr4UKwtMcssMf64Snr/s9Fpm7N+/371x40b/6tWrS1wul3zggQdaL7vssvCJ7mcqceRERJTCJmqZYZqm6O/vV7du3dr0s5/9rPXrX/96pWVZySrzOBw5ERFNgVMZ4ZwNE7XMKCwsjK9YsWJAURQsXrw4rCiK7OzsdBQXF9tieo8jJyKiFDZRy4wrr7xy4PXXX/cDwPbt2126riuFhYW2CCaAIycionPSbbfd1nPddddVVFdXz9Y0zfrVr351QFHsM15hywwiorOELTNOn31ikoiIaBjDiYiIbIfhREREtsNwIiIi22E4ERGR7TCciIjIdnieExHROcAwDMydO7eusLAwvmHDhr3Lli2bsW/fPjcABAIB1e/3m01NTQ3JrnMEw4mI6BwwtmXGSy+9tH/kuptvvrk0IyPDTF51x+O0HhFRihuvZcYIy7Kwbt267BtuuKEvGbVNhCMnIqIp0PSHWFnoyOS2zPDlK+Har5xey4wR69evT8vNzdXnzp0bm8zazhRHTkREKWyilhkjHn/88exrrrnGVqMmgCMnIqIpcSojnLNhopYZa9euPaDrOl555ZWs999/3zYHQozgyImIKIVN1DIDANauXZs+Y8aMaGVlpZ7sOsdiOBERnaOeeuqp7GuvvdZ2U3oAW2YQEZ01bJlx+jhyIiIi22E4ERGR7TCciIjIdhhORERkOwwnIiKyHYYTERHZDsOJiOgcYBgGZs2aVbd48eIqAHj33Xc99fX1tbW1tXVz5syZtWHDhkld9+9MMZyIiM4BIy0zRv79ve99r/Suu+7qaGpqali1alXHnXfeWZbM+sZiOBERpbjxWmYIITCySvnAwIBaUFAQT16Fx+PCr0REU+Dg87GySNfktszwFCjhimtOr2XGQw891Lps2bLqVatWlVmWhU2bNjVNZm1niiMnIqIUNlHLjIceeijvpz/9aWtnZ+f2n/zkJ6033nhjRZJKHBfX1iMiOkvssLbeP/zDP5Q899xzOQ6HQ460zPirv/qrgTfffDNjcHBwq6IosCwL6enp5wWDwT+PvT3X1iMiokk3UcuMvLw8/eWXX/YDwLp16/zl5eXRZNc6Gr9zIiI6Bz3yyCMtd9xxR9l3v/td4XK5rF/+8pctya5pNE7rERGdJXaY1jtTnNYjIiIaxnAiIiLbYTgREZHtMJyIiMh2GE5ERGQ7DCciIrIdhhMR0TlgbMuMzZs3e+bPn19bU1NTt2TJkqq+vj5b5YGtiiEiorNjbMuMm2++ueLee+9ta25ubvjKV77Sf8899xQms76xGE5ERCluvJYZBw8edC9dujQIAMuXLx968cUXs5JX4fG4fBER0RToejpWFjs8uS0zXEVKuOBvT69lRnV1deTJJ5/MvP766wcef/zx7M7OTudk1namOHIiIkphE7XMeOyxxw4+8sgjebNnz54VCAQUTdNstZYdR05ERFPgVEY4Z8OmTZvSXnvttcySkpKMkZYZV1111fS1a9ceeOedd/YAwPbt212vvvpqZjLqmwhHTkREKWyilhnt7e0OADBNE3fffXfRN7/5zSPJrnU0hhMR0Tnosccey66oqJhTWVk5p6ioSL/tttt6k13TaGyZQUR0lrBlxunjyImIiGyH4URERLbDcCIiItthOBERke0wnIiIyHYYTkREZDtcIYKIKMWVlJTM9fl8pqIocDgccufOnY1dXV3q1VdfPaO9vd1VUlISW7t27f68vDwz2bWO4MiJiOgcsHHjxuampqaGnTt3NgLA3XffXXT55ZcHWlpadl5++eWB1atX26plBkdORETnoFdeeSVz48aNuwHglltu6b3ssstmAmhPcllHMZyIiKbA4H/FyoyOyW2Z4ShWwhk3nNqCsp///OerhRC46aabuv/xH/+xp7e311FeXq4DQHl5ud7X12erPLBVMURENPneeeedpoqKCr29vd2xZMmSmtmzZ0eTXdPJMJyIiKbAqY5wzoaKigodAEpKSoxly5YNbN682ZeTk2O0tLRo5eXlektLi5adnW0kq77x8IAIIqIUNjQ0pPT39ysjP2/YsCF93rx5kSuuuGLg0UcfzQGARx99NOdLX/rSQFILHYMjJyKiFNbW1ua4+uqrqwDANE1xzTXX9K5YsWJo0aJFoauvvrqyvLw8t7i4OP7CCy/sS3atozGciIhSWF1dXXz37t0NYy8vLCw0N2/e3JyMmk4Fp/WIiMh2GE5ERGQ7DCciIrIdhhMREdkOw4mIiGyH4URERLbDcCIiSnElJSVza2pq6mpra+vmzJkzCwAee+yxrKqqqtmKopz/1ltvTeqaf5OB5zkREZ0DNm7c2FxUVHR0iaL58+dHnn/++b0333xzRRLLmhDDiYjoHLRgwQJbL/7KcCIimgKxX0fKrLbJbZmhlCph182e02qZMZl1nA0MJyKiFDdey4ylS5cGk13XiTCciIimwKmOcM6G8Vpm2D2ceLQeEVEKm6hlRrLrOhmGExFRCmtra3NccskltTNnzqxbsGDBrL/6q78aWLFixdDvfve7zIKCgnlbt271XX311dWLFi2qTnatowkpZbJrICJKSdu2bTtYX19v+4MPTmTbtm259fX1FVP9ezlyIiIi22E4ERGR7TCciIjIdhhORERkOwwnIiKyHYYTERHZDleIICJKcSUlJXN9Pp+pKAocDofcuXNn4y233FL66quvZmiaJsvLy2NPPfXUwdzcXDPZtY7gyImI6BywcePG5qampoadO3c2AsAVV1wx1NzcvKu5ubmh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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.lineplot(data = df_melted, x='manifest_id', y='values', hue='topics')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4f82125b-089d-4078-b142-8be84f8a1c64", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 72, + "id": "c092094d-9367-46ad-aab7-0d613020e921", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZAAAAOtCAYAAACvxDOWAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAADw4klEQVR4nOy9d7wkVZk+/pyq6u4bZ+7kzMwAwwxDzpKMCwiIiCR1jZhYRf0ZVl13FV1X110Ma/qKuKY1YRYwoyLqCqsoOSMwMDAzzDB55t7b3XXe3x+VTp1Qdaq6b997tZ7PZ+Z2V51U1VXnPc+bDiMiVKhQoUKFCkXhTPYAKlSoUKHC9EQlQCpUqFChQilUAqRChQoVKpRCJUAqVKhQoUIpVAKkQoUKFSqUQiVAKlSoUKFCKUyYAGGMfYEx9gRj7A7DecYY+wRj7AHG2G2MsSMnaiwVKlSoUKH7mEgG8iUAz844fzqAVeG/1wD4zASOpUKFChUqdBkTJkCI6DcAtmYUORvA/1CAGwGMMMYWTdR4KlSoUKFCdzGZNpAlAB4Vvq8Pj1WoUKFChWkAbxL7Zppj2rwqjLHXIFBzAcBREzaiCn8VOOqo9CPy5z/9Sf9g/RXhqKOOQrPZxO23396T/hYPzUCfW4u/P7jjSdQcBy3Oe9J/WXRjxTy1rzATW4hoXjcbnEwBsh7AMuH7UgCP6woS0RUArgCA+tAQHfHlr6TO77zjDtzz3vdgwZnPwfJXXIQnf/c7PHT5Z7D7ou8BAIa/eAEOfc9PMLB0TeFB3vDapVj5xhdg1nEHx8fuueCf8IlTTsYL1x4QH3vBVT/DVfc/BHdgAAf/5ydw31tfg7dcuAzPPm5OXGbL9iYuuPROeAfsg4M+8Or4+OPf/jUe/8YvUOubgRPe/F3MWXV8agzfu2gYjYXzceinPmQc5+0veiUufuEy/N0Jc4xlAOC1774TG58cx2EnzcZtv9+GNV8/H5u/eSc2fftO7Hn5epz24/Nx2657cdU7H1HqPuPSIcw6eS32fevz4mNPXnc7HvnsTwHGsc8bDsCsk+fh5rN/g5WrBvGGS5P789kPPYA9W1t4/wcOjI/df99ufOyjf8HYGMfFZy7GK05dqPR59nvvwDGHzMAbXrhPfOxV77sL6zaM4ZjvfTJVlrfauOXF/4ibbropdbxe87DxrYeg7qanj18+uBOX/HQ9/vDWtfGxPz+6By/88v1Y8w2zSe62f/hnjD+5A47TxqlXHIS+WTVtud+84z5svWcP9rzybgx+/kDMOOg4HPQvX1DK3feJt+LJG36KvRf/RtvO0OVPw6xZS/Hxf75bOffD6/4Li1dvw0c+8mFs3LgRh65dhV+++wBNKwH+/uP34PZ1e3HTu3Yr557yn8PwfcLaxf246o0HamoDr//KX/D7+8Zw9TmvxEFzk99r1X//O952zHH4l99ehyuuOAgA8Ia33oHdLR8v//Jhcbnvvf0ebH5gFHtefRMGP3c01h46jDe8fX/jeF//0pvBObB8xjzc/bKPKOcHPvlSLHnBBVhy3rnGNgDgD+ddiJcdsg8uf/YRmeVsMOtj12CszXH8lTcp5254wdFoDLi4+NNr0TfU2fTqtwkfedEtOP6rDxnL7Fp3F+583/NxwLveihkHrzWWW//N7+Lxb31/XUcD0mAyVVhXA3hp6I31FAA7iGhDmYbWX/l1AEBz65MAgPaunSC/nSpDVHbdQICUcJJA4NKxdrjychwXvNnE6DjHD3//ZKrMT27cCgakhEc4uKAbMO045x18Gpqbn1SOp5sgcJ6/zt6yrYXVRwzjnj/vhLtgGPV6PbWkari17Hsl3wuxT+EcSWNxXSZXTb4TlPsZgRPBdZhyrBtocwKTeLBN20QEMAbHYxjd3Mwulzqgv69ksWrvVtLTVtvm+sznPv2S/cDA4uc9bpf78BwndT9bLUJ9MD2Jyrcg77Ki83tb4+UGLMC3eD9skNXd8VfehHaT4+afb+lCP6TX0wgYXr4WfHwcj37lSjz+/Wuw/uvf7rjfIphIN95vALgBwGrG2HrG2CsZYxczxi4Oi/wYwIMAHgDwOQCvK9PP6GPrsffBBwEArW3bg7/bt4NarXTBstSaoH1i5Ikmejg5EajZBPr6cdfDe7BrbyDIiAjf/+1mNHUvcGriVcdZG5hp9ZLkFdm9p422Tzj3kmUAEdyhutJnw2mAMhQ+smAAUdyvODnIY3Fdpgi46B4SjHMriADXY8qxbqDNCQ6ThRMUoaKAE5jjAgTszRAgsq7DKChynk2HOR0sgNJo+eabxxBcu808KwsQn3PUHTddps0xODt9TJWpGc9a+Gx5AEbbGYLaUjB0a+FBBMAxswu/TdiyfqzzfrjFswhgnxe/G3sfWY/HvvU9bLj6xxjf3LnwssVEemG9kIgWEVGNiJYS0eeJ6HIiujw8T0T0eiLaj4gOISKVD1qg+eRWMC/4Mdu7dgbHtsrOX/qVvfW1KJOm+pLFul/i4K0mjvvKt+G5DP97+w4AwLpNY9i118d+H3uzsX0W1pfRmDEvfwWqEiUFGzaPo1FjaDQaIAIcL/z5hYtpePXsvjQCRDcAeU50PBMDYWGz+j6JAM9Vj3UDgQAxj8kEIgIcwG9xjG5pZZdTG9eUy342mUUZW/gZAgQs6CuPyTIAbfJTx9qco+akp5N2mzBzSV/qmPwuZclOHk6gywZGMOab77Pt4rBLBCRYYNUbmWV2Zi0sbPshQi4FAbD09Itw/BfvxfFfvA8gwqaf/qLjvm0xmTaQ7kB4sdq7Ar1ua9u2zHLF+5BVWBoGEn9n4K3g4Wm1ObbtChjI3jEO1wVmrQhsFFv/9w6MHL0aTqMG8nncrm6i6Ju5AAb/gswxydiweTxuhQhgtWBmFrvsd/syJyt5UiROYJEKLjrlqOV0DCToJmRupsU5ETxpYurWStLn0DAQQt69BhEc5sJvA7sfN6tWFHVNSQbC4HRPhZXDQGDDQJiGgRCH5zpgwoTX9gmL1w6l69rJVAAA9wMV48oZ8/Dw3u1ocx+exHIAOxVgMEa7e9huDGDTU56H8ZH5Wgpw9TMvBhwHjdn66XP8Jz8Bc4DhOXWr/kwgTjj1hy005u6yrjN61dX4y0MP4vtE2GNDXzrEtBcg0YtVg4v26F4AQGvnDk25DhiIhQ3EjxkIgTcDAcJ58BIByd8Ij3/jF+hbOhcDyxemXgDdRDEwd5/cOS3sOhOPPzGO8XEe98NqEQNJ+u93+zNVWMpkR0FpBqRmHkWFpWUgyQHTy00EuBPFQEhnAwFyV32cx4PasyFDVSGPs6QNxGGdMWgR8nOYAovYTj7b9TUqrIYwuXNOgfH7qOF01YxnQIbPCYwxnLh4JX63+SHsbo1hpDGoDseagdg9OJue8jzM2O9AzB7sA9NMwns3bgdr9GNgyQpt/T1ogTnAghUDVv2ZQJywyRnF0AqzU4RSZ8UqzJ4zGwNbnsAV4zs76t8G0z8XVjhpXX/Ov4HabfBWC+2dksRmKM9fSV/XZEQnIBEglLywsuqAfJ60m7Imqy9D/9z9cmdNQr7qYd1jo8mlEOA0IgaS1AsYiL0NJPpO8X8AmMaI7jHlNorfTWMnAmqeoxzrBnQqLBsGQkRgoQDZ+4S9CsskBPKEg8u6x0CyDMnWDASB0TzVLhFqgpdbq0VwHKAxlFb1FFJhhQzk/IUHo+a42G0ypHeZgYyPzDcKjwhOhgqrPnchiFsI4hyUqc0Yg+e6WDY8s6O+bTH9BUj48h2+6HA4tRraO3fC37tHLdZVL6wMFRbxlAE/FiDyxOvzuF3yk5dRN87++fuF5zIeKQsbyPqN4/HimghgdS8cclJxoNZf3AYSqbAiWw5T2YbnMaPwAcxzABGpNpAuKbMDFVb6mFXTkQDxahjfnqWbl78bGs95Nh2ne0b0TAYCVt6IThw1N1FoNFscjnxzUYyBcA6AAatWrULN9bCnqWd71gzE9rlhLFN4AAAbUJlQhNqMWcF99I1FJhw90F4B+CsQIESCwsV10dq5E/7YGI6fJ8V8dGRET9clUl8yX2ATvJmslFqtoK784pLPk5cnpfpRxzk8PJx0bBqjhQB5YmsTC5c14vJOPZyZhS4H3QFQRqhUpmE4ZiCqAMl040XG3EqA58o2EOPwCkHnhWVrRHfcGtb804fhj3P44yZmIR8oZwPxmJutViyAdlZXDHDAclfOBFIECCdCzXHiO9dscjia2cXSrwBAwNqjnydgIAZ1oTUDsSqWjbCNxuAM7NyxHd/4/BX6cizHYQHASy+8GDt2ZKiZyMaEPrmY9gIEnOKbzBjD+KZNYI6DX57/sVSxjlZwOjde6YWOGAhxDi4wkJbIQMS51vdBflRHPGEYJ2PZAkRjlxEx3uQYHfPxwrfuF1+T21AZyFB9qBADoei6CMn4mCpoPE+dmMSvJtUKB+BNkArLN8SB5KoeOAGeh5FDDoVTdzD6pN7jxlqFZSNAeqTCYo7d/W0L10JEoQBx4xmv2eSKcA4Lp79mjIf7FBvla65ZgHTbBpIFsYVdO3bgG1/4nLm/TGkN/M83L8fMmTM6HtNk4q/AiM6FOATC2GPrY7feFErGgZBmQskKJCTOYxsIkARu6RgIBKETH88YJ3ECU51QhLGazwUuvA7mLEgYCOtzo4bjcsO1bAGiYyCEQIhHzTBHlYOux5SfQLyHWW68NVmF1bXVuM4GYlOT4NSD6HPmAKNbWhha3KcW65IKy3NcEGWoygogL5iOMZabqoOQVmH5xMGQ9mhrtVThDKiXmrlW4ckSvOZ4RhuI7eKwO957SRsf/df34NGHH8I5TzseJzz9mQCA3/7i52CM4eUv+Xuc+8IzccPv/oAPf+hTmDVrBA8+8BCOO+FofOCyd8NxHBx/+Cn40S+/hdlzZuE7V16Fz376S2AMOHDtanz88g/hR1f/DB/+4KdR6x/E0PAMfPWHvywzzAnFtBcgEIye5Lcxun49mIY7d8RA5FU3ZdhAfB/UEgVIosJKVeGJABEt28Zx5jCQwP5uPn/t/25JCTEiwO0PU3AIXQ7XhnK8sOR7ETEQQYemU2F5jqq+EPrNtIHUJsiITgS3TCQ6J7DQiErcHEyoytpyDKTh1oBW53EFQCBAPJjdSwMbSM49oLQAaXMOhzkpVt5scr0AkZoWH6efXLURp521ILad+H6iy6+7LvYYVVh2D0S3VJ8R3vKef8X9d9+F719/A35+9Q/wzS99Ht//zY3Y9uQWnP/0E3DiU48BANz659vxy99fjaXLFuMl578WP/nhtTjzuafF7dx7zwP45EevwPd/8lXMnjML28KA6I9/5HJ86lOfxMpjn4WdO7Z3d/Bdwl+FCisCtVoYXf+ovlzJWYeJqpmoKZ0br+iSOpY86O3QkOb76UUB+TyeOFITiFGA5LCTDBvInr0+fvqbLek0FgQ4oQAR1Qgz6zOKMRCedJxiIFK5Wi1bhZXphTVhgYRQDL22RnTXCwSIP84x+oRhcs+SmFnlJNSdetdYF+fAyfuerj3HWOQynN0GgVJuvC0eqKvEd6LZsrtW8dm75jsbsGtnkoKIC+rpuuthd4dGdFsvrCwQ9HaJP//fDTjj3PPhui7mzl+AI488ErfefCcA4LAjD8HyFcvgui6ee+4Z+OONf07V/f1v/g9nPPdUzJ4zCwAwa9YIAOCoYw7He9/7Pnzrfz4P3y9qke8NBZn2AkRe1Y099pj+gSqrwoJGJ65jIEL7XBAgLV/PQEiYeJO/5lUqCyRIxjjN89A1v3oCRMCchQ2hPMUMRHyJR+ozCzEQcexZDMSraRgIJfck04iupDLpngqLSdcqN93eM6odlNPXH34G9m6xZSAmIZn9bPa7ja54Yfk8+GUve8HXjGUcCxsIUdqNt839UPCkGYiuGZMRPXoWtgn2JN9PVFh9roc9HbrxdisAVQfdbyt6JaagOG7o1X0fvOxSvO51/4CNj63H859+LLZtzc6HNxmY9gJEfiJ5s5kyYifFSr6ABFVtox5KM5BxQYBENhAuCSLOk4k7HRChH4cmtiI1Jo1Qi3DNdZvRbKX7JwKcgUiFlRyfVZ+ZoyrTrCCJ0nEgrtpEwEDSx6ziQADUJT/ebqkifE5wNZHoYvP3vPvDGNu4OT0mIrgDQpCYLbEoGYneX2t0RWi2fYKb88Y7Tv5EK3thaRlIk7SLYLMACf5ufTJ5d7mgcm04XoYR3VaF1QUGIjQxODSEPbuD7BdHH38ifvr978L3fWzdshk333wzDjwwyI57y59vxyPr1oNzjmu+/xMce1x69+4Tn/YU/PCqn2Hb1u0AEKuw1j38CA4++GC88Z8uxaw5c7HxsfUFBlr6Egth2ttASLQlRNDRvW5GomsM6+IEKDIQXwgkTKmwRNWPH40twwaCHBsIzKfH4uhzsTDgDdbj64kwt29OTjJFjRU0ZB/pOJB0G25NDYZLxYEYGYgmDqSLAsRxpN9RFnLjTfBxiWEQwenvT76aBm/MGyYfzr6gwXpObI4lWr7qtizDcRionVkkECBiCiHOA+O7zEAsKEh0XdHhbVslBhJisFbHjpaGDQLW73a3bSAjs+fgyOOegueeeAxO/rtTccBBB+Ocpz4FjDG84U1vwuzZc7DjsQ046ujD8O//+jHce9d9OO6Eo/Hs5/xdqp3Va/bHG978Gpx31svgug4OOuRAfOzTH8QH3/cRPHDvw2C1Bo5/6jOw5uBDrcfWI/kx/QVIYIzOKZOhGspFsLSXm8u2gYheWKIAiVZbodCLo7iFaG7jRMGQO3Oa7QhRP+lriLLxitc3UB+I62iDqQwTQNwoAOaqQYO1mhqJLlbNSmVSmyAjeosDXl6qeE6a9C2AN5C4X5rGY2tEz5sAh2sDXbGBtH29qiSCjRtv4LILiYH4cCMBEtZttrh2xZ+lwgKAzRsTNZV422fU+7CzqRcgvXTjlXHZFV9Mff/H930AANButzH+yP0gIvQP9OMzn1f3Mrnhlmvjz+e/8Hk4/4XPS52//Av/hSfXj2FwxSElRtYbETLtVVjBg2dxszrYKU11480WICQEErY1Kqx4co0NADz5nsFA8l4UsycT1ASHBHjDUTr39LUwMHCjx5DcaXQtQjsuU8rVakz5mYjUW6D0B4MNRBPlXBR6AYLUOIm4yjCI4M1MkgSSKWBMPmwSkjm/66z6YFekZsBAMgqw4LbqrRcBAuJMaAs2EN/AQHSXJT8XQhJrAMAmQYCIgYQz6v1TQoDYtuB5Xnei0cs+5j2iINNegIjL2gtXPtVQKEs1lI1APql15YcxFdMwLggQnjCQeKiRyipiHqLwybCBlGUgnAB46moPAyEB1VQzr5YNaihh4mWOqsLy6k72PcvwwpIneSJ0JVdDi5O27dRIOGkyERC8wZHke4YLcvp7OS+svNgcW7TaPDdFh+tke2H5PPBAVN14QwESBxKaNjjTM9iorGhED44FDc6s92OXQYD0VoVVoBEGPOWEY/Clb/y/bnQ8JTHtBYgYSPjF0/8pq2DZHrRPnqxyEb9zwWdfzMZL8WorsklIjCRH0OVNIuZgPAKESPCoWL2uqrCAMJjMdrJLCZDgM9NMQp6OgfCoYo4NRI5EB6DNk1EQbQsVltbGBkJ91qzUGLWwZSA5E+DMek5sjiVaOSosIF+AEAUMxRfG3Aq9sIIo/uBYs2VgIEYVVvB3x3bJiB6emNU/mMFA7O5N14zoUz2/SA8x7QUINCqsl686RVOsvA1EN0HIAiS1mm4mL4EvpDKJxUT0Zsl/DWwHCF0Bc14UoxqIA6h7gg0GqZdAvT5z+nA1IaIYRR9+0OS9qmndeDWsSO4vGLpSL9edyAItrtsuV5rkOFdZIRG8ufOFMvr2VbljEjTZz+aC/tnWq+wstH3Knft0WZNFcAqe9ZYvuvGGDER4D8dGDbobQyQ6UZAhf3ycx/njxKj5WY0B7DLEgfTajbeI/Oiox8mrbI2/AiN6+qXY+7qfKEWIqLwNRFhZi5BTQojfRQYSHRe3so03kJKXX7kMJMcGolVFhft19Hmgva34GMuoWISB6PZEZxqXXVMcSDwE06VRaD+RxqBNV1MQLU7wXI0NRB6jxohenzEn+ZoVxCJ+Ne+alTnOJUNze8ZAPDc7mWK0cBLjQFrcF2wgwfkxU4JJ+XukwgqdNmoew/ZtLcyb3wAXgm/n9A0as/Haahe67YVlhcnos4f9TnsGIqqwTOhsS1DSThC+1F68+mJMm8691RLakG0gKUN0hhtvLgNRz0eH+mYMJAxIouHq9WUwEEWFJTCQ8FqZZhKqN1Q33lQciFG9AzQ8dV9tVutcgPgcqGlVWKmBpW1U4ee+GcW9sMqqsJYPL+6SDSS/Ddd1MueeaKhNmYEgbUQfG9MzEFM2gogVuw6wLQzMFONA5g4MYa8pF9YUNKJ3A5Mle4pg2gsQnQpLX667DETRlUffHQfUThzpI1nR8sWJVmIg8WZUZB5nSSM6DzPOMjeJIyGJtcntBtoyu9VymoEEfxzPUX6SWkOj/+YWkegAarIXFgCnUdNXKIC2hoHIRnQinmYg0UbdYpmswcuNa8tlP5vL+ueF1TubUtoWS3BPs3OkiOi5VyLRHUmAjNvdE1GFGe37tjU0pIsZrOf2D2O0bUgZM0m5sCYa1//qd3j+88/Facesxec+flnB2pUKywo2BjSC/SpF34CFCisqwxxwXxAgEQMRVVii2y7S19CREd2QwYWxYFL345cVqUlQ58Zr7TEkjj1iIDU1o2u94RoNqME41WuLrlfWVhEBbp95RzhbtDihIS2hRENweEAI9NQ/b8afTLleS1YnYXBwMC6X50WVheAZzK5fzxEg0TMkMxAWMpCo6njTxEDk75Q63hznsQDhQvDtwsEZGPP1GYmts/GWnFT3PeZkrNu4sVRdHZYuWogb7sjOrOv7Pi591wfwiU98EiuPeRYuOOVEPOPZz8H+qw/s2ji6gWkvQMK9I3PKkLWeVN+FToUlq2PCyVNhIMHxVCbciIFIgiQYZ5YKK88GYmAgAFjdTXWTmoeUahlxIArzUo3orK6qq6JYDnESFH8W3TogDitxZRUWwR027whni5af3oZVNw6Snx3l5pkXMeI9YFFdHSwWQSzeF7280qBlilcRUKux7EwEBhuIq4kD0Tcgtxf+DVVYRMCmDYGqivOk/Eh9AD730eY+PKdcaoKyKqx1Gzdi9M3/UaquDv0fe0dumVv+fDuWr9gHS5cuRb1exxnnnI9f/eQaewHSI7Y17VVYurQi+oIdBBL6al1ZgMRfHSe1RW0kQFL659j7SmYgasxBDM0mTTLMDITBaSSbEikTnmJEz1jVyUPwpckVAdtRjOihHSPFOkQjuubSNHN1PITayLB+fAXQ5noBkhqK5IVFXJOm3IKBMDgwvtVWz2YGK7REoEbNfoZ03nIiot+pJcWBMDkSvUlasqNLTBodj4pHsSBB+p/wmXIc1Fx9Pix7G4hVsSmBjRs2YdHihfH3BYuXYNOGxydxRHpMewFi511VPpAQ0D+gssolZiAsYAqREElUWKoNJEUJEK3INSyi3UqXN0CnBop23WN1T3hZ02V0brzWNhDRwBypsBpqzAcQ2laEZgPyaBBqSNiTDCKgPm+2fnwF0OKkN6KnZKKGgUC2m5gYSPLZySxnx0CMv4kllD1pNKjX8wMJAUmFRRyu46SEb7PJIRMFABoGEhwInovgvrZb0bH0eINtbTWG9B7GgfQKwVDlhd3UC0CZ/gLERj1FKO/GG/UhQfHCEgWI68YZgSNZIRowExVWNHlGbelVWO3mnqiTosOMhYrT8JJARpLcObU2EMvJLiURor70q1gmZRROufGaVFhaCQL0L5mvOVEMba5mp5WN6CCSGIi6sraxgTC45oI9YyD5zsD1WrYXVsJAEjVty/dDH4+kZqtFcOu6jd3034mS+yomIBUHU3M9rSuv7X2ZRvIDixYvwIbHN8XfNz3+GOYvXGRdv1eXOu0FiJ1nSmcMBFoVVnoM4iiY48SxIJFgaWcY0cW/unFSqG/OuwbddqWREd1tuEIgo9S+SkBKxYFQuCh16uY9vOWwkcQGopZX4lWi4wBqy5fpx1cAbZ8UD6/AEJweJOV4YZlmJvEeuBkbbVgxkG4IkHY+A2lo3K1FxDYQ4Z0IGEgQSBjdu1aboz6g33+5huS4aAOL7mr0rvi+joFoYkH+ChnIYUccjIcfWofHHnsMzWYTP/7+t/GMZz+nQAu9udbpb0TXpprQoIvp3AFZfx9NdOH/zAGFGXmjuUdvRE+rb8hgAwkESLl07pwiFZZgA5FX9h14YekCCR2NxxUQqmHEgEuhjImByLQ9uobZ+y7Vj68AfCLUHI0NRBwLUdrTTCfoLBiIy1w0Tb+fzfObJdQt0fYl4ahBo55tA4nd0kU3Xl/dD6TdIgzMV6cXIkIDwsZm0dpJyI4QMRDup+93zXW1m0rZujdPJxuI53m49N/ehTdc8kaQ4+L5L3oZVq1Za99Aj6512gsQRUetL9SRG6/WBpLaDyHwLHIoXOU7TFBhhQzE18yWsgsS6VVYCIVAnsuyKQ4EYHD761qDZWochuuTxyIVTE5F6rJ+82OVMicIOm6te6xJqBhbL4Y2J9RzI9GRy0CMjx8BTjhaj7kwbrRhIRi6wkCEfGwm9PfJezSmETNq0YhOfhJIGFZutwkzFvWpDRAws5F40CWLmrCiIwgQxQbiYZeOgdiqsErOqssXLrTynLLF0kUL8wsBePozT8bh3z8Wg8vLpHPvDaa9ALFZvQUBeh2IZI0ASe3/QRwMgMfqaCFcaYcp3aNiaQYSqqS49PIYVG3E/eDRzzOi6ybcKA6kL8mFxYXVXrr/CFmR6MrghM6CP06f2QbCU6v5nLFrVFgaG3ZpBF5YkgCRJi2FgegM+yY3XgD18BVruHXsIlMcgw0D6Y4AyVuF9ws503SIzqXceP3IiJ5M0W2fsGD1gKYBYMHAPKW92ATiOulN2ISx1F0Pe7ReWBPLQB7842/jz3tbPu7fuht9K9fk1tv78N0Ymd9Aw6DK+2vA9LeBWDKLzrywTCv7AD4FO731e9GKS2UgohlF8cISGIhJgNikY9HGq8SsoCYwkGCMycWk62RGomfZQMLPbr9ehQWoAkS+BamypJobTJ5ZZdDmqg1Ea0RP7cRVhIEQ+pxAXdNw62ZB0SMbSOCFZe6LCBgczNZ+xIw6xUA4HCT2IyKC7xNWHjui9gHgkJH90geQCFHmuUYGUndd7Nblw7JO5z6NdFgdozfXOu0FiJV3lUk11EEfokaqHbrKDtdmxN4kkQ0kmCQpzUBMRnRDX0RhDG2eCkvLQIKxecO1mMLLKqwiDCRLhRV9dgY0m6Ijii9Jj808BrNaq1vejHoVlrRzZHCw8DiDE8BIYwYAYMDth/Gltp0AO/EkRMBA8mIJazV1m+PUGCJGLe5I6PsxAwECY73jAENzNNkCCHjeiuOTrxIrZjU33oTJl3J31RxXG41uawPpRj6xohPzX7vImvYCxIqBdGwD0TAQ4aX3w1QO+wwtjydmHgoQxgL2oTWiyzmxoGcZEQPJVWFpGUjw15vRpzVYwtCuORJd/i4KxuCvO+QZXxyN12/Yn6asjoF0cRXZ9g1GdGmAuV5YGbJ2UX/gbjyjNmD8/WzjQDqdAFvt/MSjYk4q/fmwLZ6OA4lsIERhDIhm68No/Kfuf2pyLF7UBN+9gXqcRLEtSbtgXLpoWUsVllWpbBT+CTr5ySarbgH8bQiQoGAnnSiH0jaQYJW/etbaIO8WELjxMhYIEF/anU1JpihOwmoOodiNNzeVieZYqPJxh9JG9HSh9NdMdVkWAwnP1QY97QPMpGj6XAaiaSNgIN2hID4RapJ6OnU5XPf72I0zwiEjBwAAZtRnmgtqbD36Yp1NgeOt/PqR0DbNydFzL+9I6LJEhdVqkna/L4N/SHguVH/OaCRqX4mByJ5emQ1rMDkarL9uDjLtBYiNCos6jkTXrdAlAQKGp+3zzLACBTYQxuAwBp/LKqy06iq9ijcLkNxAQkMcCBDsf67TmMn9Byi3H0icC2vIZIhlSmLb+LOWgRSbrIvC50BdSWWiCkQy0ab4kFmF9dzlTwMAzO0bybSBsFwR0nkkejMnnXukbgXMTC9WYVE6G6+YC6vZ0m+dq3WAkGR0bfZQvLCQBQgDUwJ4g3YtGUgXHp5eioPpIHqmvQCxVWF15oWVLUCCbKTAqStPj+NBeHMcYA4YC6i4GORH0n4gyBEg0cycv6Wt7hgFL224/zkRqbdClR8FvLBUPZQ7nPSVajaDgZi2P5Unosim0w20OaEuGdF9HStK/T52Kqyo7jP3DRYVi/sXwDQlEBGcnFcxMz+ZJcbb9gzELOv0DMRjUSBhqMIy5KAxxWBG3m2NxSPxs+BLKiwjA7FUYfV8Qqbyfb71Df+C4w5/Gi644MLynfcAE+rGyxh7NoCPA3AB/DcRfUg6PxPAVwHsE47lw0T0xSJ9aCdcpRDZGduNfejiQNITYfRiJEb0VmAU1AmQOLI8Wn6JqTJ0NpDI6F5GhRX8jfY/D/wJbOJAzKvl9NhUAVIfSPpSvajEz9kqrIlnIIS6tN96as6K9mnJZSCaxiU708qZSzNVWG6uVOzcC6vZyr95xCNbg75stPYRn+dx7sOL3HiJgky8ukSK0vA9OOCIFkfBsaEDFmELvznoQ1ZhGcY10Qyk++ncF+CGO36VWeb8Fz4PL/r7C/GWN76rXCc9kpYTJkAYYy6ATwM4BcB6AH9kjF1NRHcJxV4P4C4iOosxNg/AvYyxrxGRYecYDaxWHx2mMtEZp0n8rKogeKsJ5jhw4MPnBF+UczED0RnRs2wgZVRYwjEmkLGMOBCzy6hmaSqmc1dUY1JtJl8rGcsC+qDBKLK+G/CJ0JDegNT90hrRNQO1ECprhldlSD+Cy/JfxY4FiEU69yjdvulRiyZhUZXU5uk4EJOgknOw9aGBvTQanguO9R+4JE6yqRrR9SqsibaBrNu4EaNvKTmRa9D/0Q/mlnnKCUfjgXvWda3PicJEqrCOBfAAET0YCoQrAZwtlSEAwyzQUwwB2ArAEK6rh70KqwMGkrM6bqfGEMzOgRHdAQND26dUefOe6Dk2kDIqLOFglPAuz4getKUeZFCz7OoYCKAKi2Q8hs+6eVn2FsMEMBDXzEAUd+vwmDa4UTmWniwPmrF/fFwtzFHTpq5N0I1svM0cFRYhCTTMM4GJz3zTb6PuumEkesBATFmUxR90VmNIsMsFq4X+kf7AiO9rGIhjMqJbMpBpYVWYXphIAbIEwKPC9/XhMRGfAnAggMcB3A7gTaRZZjHGXsMYu4kxdhNvSX7gtoGEE6jC8sXJItJKNZuA6wKxCgvx3ZZtICm7rU6AkDqRacepOZ/KA8mCiUG5w9oVtHrNDtMkSdQY0cW+lHYNdg9bFVY3U5n4BDQ0yRSFQQV/UlGgBFKy8eokd/rryMhIqs1UfSLUnR4wkDwVVshOs1RY2jgQ4okKC4ER3SAnUz/ePkNL4nLis8AcoN3mSnJQx+BIYB8HYlVsymA6jHciBYgpkaqI0wDcAmAxgMMBfIoxNkOpRHQFER1NREc7tfRe2D1x47XwwhLBXBc0Pg7HDTIh+Tx04402VZJTmMTt61VH1m68OiahMJB8VVMwJLUx16mpNhDNhCv2lTXGlDAxLCyV1X4XJYjPCZ7kb+rrxielc1e6NzAQpSAzSVVCfy1vi97upDLJQ3R/jW68kYeUMJam76PuuDG7bTUNa33pgThxwZHCqeScwxh8n7RuvO0O4kC6E0jYY5Qecm+udSIFyHoAYs7tpQiYhohXAPgeBXgAwEMA8pPMiLBmIBbGdnNltVtRgPC0DcTxPFCzCcerxQyEc4LT35ces5zSRDwnjZ3kcrphalVGwrEwGE3dFc6OgdTduvpcmmIkdCos2QtLL3uE8yYG0h0JwonsGIikwpIlg3G1rUoQvRAgwlBNkzdKabNDAZKnwqKE4ZkYSHRYFCAt0YiOYDdCmywCF855Zng88gwMfRhZkIxR9sJymdORCmsaio/y6NHFTqQA+SOAVYyxlYyxOoAXALhaKvMIgGcBAGNsAYDVAB4s0ok1fe1AgOTFgYh0nogA1wMfHwM8L2AgfiArvFlBFlLZBhLnATKMM8mFlX2tRi+s8Hi0AFYj0XVtqZNNozagFE4zkOQjA1PkLgMKemGpXlzdXEVyjQrL1wnEHC8s/TFNyhVjhB5huDaUOVZjFHYBWDGQUB1rus3Rcy/+dm3OYxsIARhvcoNNK31wzZo1YZ9Re+F7wABuYCC+VsVr90xYEpUpgde/+m248JyXYt26dXj6IfvhO1/9YqH6vbrUCfPCIqI2Y+wSAD9D4Mb7BSK6kzF2cXj+cgDvB/AlxtjtCN6RdxDRlkL99MAGonubTCosBgJzXfBmE26YVygyog8sC9JayKlM4vZNGVcp1CnneWFpBYg04XM1DkQfBa6OY6BvCE/KuexIM+ECegYC2f1ZPK6OXc9K0DUVVsBA1FQmyQB0brw6hqi2rVNhmSL8iYB5jZHc8XacyiRHgIjqTbMKK/wrqbCGvYQdtNtcm1aHNL9dvKhJ5AfAGNptUtpgjMHX6wszrysu1kk6dwvPKVssXbQgt8ynP/dhjO5qY+eWJgZX/I2mcyeiHwP4sXTscuHz4wBOlesVQg9UWPmR6FyIAwlUWHx8HKwe6LX9cB+GkaNXB2Uin16NCkvPQAIakacD1+bCSmuwwkkiT4WlN1aODMzHo9vulzo1MZAMz6q42zwGYlCDqM2Wgs+BhuKFpRmTSUjGBzWNa72gzTaQxYNzsgfbpXTuechXYQXHxfvU4j7qbi0+ZtrjTZPIODiO9D4lUfofWYXlMUfPwmwESAaryoOYzn37WAvrduy1Sue+56G7MWNOHQMzyk2z5ZcL3XpD8jH9I9FtX6ouZ+OVbSDCFAMWChCn0QewZC/q2iErwqHoVVimp9zWjdeKgZBmUyGtVkU9uGDmcqWsSYUVLLc14xHvm5jeRa/ZUet3SQ9Bobql7snHU50Fx9q+csxYJzoGGIzo2tFg35myg6KKbuxImAUCYppgjgOJ/qYFSM1xYwFCRBnPVPqmJAyERAISMBBNJHpbe/8tngnX7ZlaR0RZ1tMReic/pr8AsY4w78SN16Cfj+BLkyir1cGb43AG+8EQJLFzGDBr1qygiLSlbdpG0UEuLM04fV94hIWXNV1RbUs3Wa1ceKBaOCPRoD71uXg+cwjWaq0y8MOVtmPhhUWyjctmUIbfymREP1jcI8OACWcgREIqE33ZmGWkjOgcdTdRYXFuvSaJj8vneOT6LsB13PJGdK82OV5YkyG1eohpL0BsdyPryAsrT4XFOVj8leC4HvzmOGpDwyAKjIoidafIG0YJVDO48XaUCwuJgIL+ZdV7YanHDt7/mTkMJPlsMsTKKWCyx666zHYrEr3NSZuvKTcORF6IMGa0q6vNM6V+dP8O74EAkVVCSvtIBLzptUq8sAQG4rdRdz344bVx3TMWta3YQILgwFQcCMwMRB+JbjEH9PV1ZS4XXie7wp12Vgod6OsKYtoLEGvV1ARGovvCbEFEcAcG4I+OwhsMQlrGpeyk8Za2KRsIC/Z8MDEQ8e02jlM9xnmaROtUWGo90jKQQxcdGrehq6y0q41L0Z8vks69G4j2sZeRNqJHAiT5TZQFC3O0L7pusozcqNMFg++zZ8/OHK/JAF8E7bzFFgleVkYVFsV/xcSKddcVbCAm9qVPW6+w4jAORG7HNQgQG2bhDQ9159npMYuZ6gRm2gsQey+siWMgbcmzyekfgD82Bm/mzNit0UkxkHRgYPACODCFbwdj1/vWp8tpxikaNBkLv+cnUzROVrJ13GBED05lM5vcOBBNLEU3BYiWgRR143WcDLWWRUZBk2VZrobe2ECitZBRhZXynAvKtHwfDdeNx2diOromI3WZfC6IA0kf6yQOpD57TlfsEYVbmAwJ0K1kcRaY9gLEOgp1IgMJSQi2III3MAh/bAyNOXMBAsZbJKmwJKM4Bbp4IwOhTnNhBSeMKixtW6bJKk2PUxNNKheWXrVjSl+inxcIgm4w7KI7b6TPoRUgqblP48arLFgcV89ANPIj+H1lFZaOqqjoBgORU4PICJ4NyoxEj34zVzBotyIGwiMGYujAkEUg7lc4wDUMxGGOPhLd4pnoX768i+Rh4qXC449twEte+Eqcf975eM6JR+B/PvupArV7J0Am1I23F7B9qTraUEo3EQqffWkV7g4OgzfHUV+0CARgrCmpsNqSUZwIDquBgevHGVklS8aBCCaWUIWlqrXUtswMJMVgMlhEsVxYmrETICee6nAOjeFzgqNVYakMRMmFJZRnrmvQ9xtnYLlDyxWjKnyKQjZK65CQLv34o8MsTCvSQLChVMP14mSFvmGc2gk8XI+IAa8EaONATCosKwZy0IGgq+U4Zjvse8xJWLdxU6m6Otikc3ddD+9411uxz+L9weaswLnPOh4nPP1Z2H/1gbntd2vHThtMewFiHV7aycuX48bb5mLuH4Lb1wfiHPU580AU7dCW1E28sBIVlufV4POmdpKwjQPJ8xYL2grft5QEUdvKVJeYdE9S/3njSe1mqBkEVwZqXMQWRttgjNfaQJRcWEIh1wWk/J5BQc0xTSwHkT5zrQ6dqrCsGAg3x/CIbThgaIdsObaBRM+zgexrVVgIFznSoiawgaTLuo6Dpu79sGAEy446EhsQLn4KTrDrNm7C6NsuLlQnC/0fvjy3zIKF8zDUP4JdW1sYHB7GfgeswaYNj1kJkEqFVQC9iAPRr9BFFZawyg9X58zzUG80QETKXtSJET1hILVaA4w5Bi8su1xYJhUWSZO2zgvLFR6FQBduYiBpQ3A6nbtYzqCWSunQU0NQyxrVWvqhFUHbxEBSNhBVhQWeThTo1DyjA4D2PS5pAwna7FyA1NGX00coNHMIFBNUWG3uo8/1YiO6SVBpWVkc3CoWNDEQR89uLNeQWYJxyoKAxx55GHfffgsOO+pYuzqVACmAnthAslfS8kqZiOB4Nfije0EUeWEJzSluvECtPqjVkcdjJwsjuua07yfeMokNRKYlgJcio3ovrKgNE+sQ2w3yemnumyH/lVGFJW/U1aUJoG2Yt3UMJJWNlyg1YTn1Pv0ElheJF7VnrcLSL2SKgHPgxH1Pyy4TXbKhr+i8wxhaKRtIOg5EB61dCIIAIaC1bU+g0vLV5z1K2KhvOB9BKrJpJEEI2Lt3L9748hfinR/4MIaGZ1hVY6x30/q0FyDWNpCOVFgm9UoAX6Lf5LfheB780dFAgDTTXk8xA4mN6IS+xnDww2t3JJTjRfQwqYzio7ENRKmIPqdPOmRmIGYVltKs8j3NhrLHrjOidysYrM3VXSQBOxuICKehFyB6fb8mzqcAq+iEgUSs4LIXfC2zHA91hHkqLAbEKiyfc/R7tVw3Xn2jDMQTtrHr9vUgUMhA5JLl3Xij+tNJgLRaLbzjHe/AWee9AKc+53n2FR3HWqh2imkvQKyXpBOowmqTtIEO56EA2QsCYUxRYUWqkURdMDQ4B6atZImiOJDiDERRYcnqgvCYnA3WqG+XopTTqgd5stePJ+lDaEfTlWhYTR3rAnxjIKHwJRqfIEBIGpQXBovKMBvRy3lhBWMrf/GtNsGxeNs5T1iBfgzBX8ZYrE5qcz/Ixht7YRlUWDrto6DCIhDau8ZABH0ciOOUDyTE9FJhERH++Z3vw4oVK/Dy172pUN2KgRSAPQPpsgpLmEQCBiKuXHmswuIcaDZ56s1JvLCisRNmjiwKfniTCguUy6L0+4Goq35duXl9c4V2cu6rgYEoOxIabAO68kZ7h7Z+5zpe32BMTQuQyMlBMtwIZWqz5xoGrxsmUwWLtQor34kiCyabj4xYCBgmZVEdGrnU+hQa0RHFgejbNttVKFFhbQ/UvkFG33S5QIVVXoBgGqmw/vh/f8bVP/ghbrrpJpzz9GNxztOPxfXX/tSucs72yN3E34wXVkduvFoVVvJZ3pGQOAcLVVicoDGipxkICJg3dz8wJ2NHQspXw2ltIAoDCVVY0kp7v6EV4gHziyZHUxtUWIF3jVq9uA1EPkbS4MuhbYgDyVNhyb9PbdZc+7xPgWFIKtgbFVarbZcCJi8SPfL7SBvROfo9L5+BaI5HrCBKptjatidQaWlsIC4cNcU7UIyBlHh2li9cYOU5ZQubdO7HPuUo3P3ALdi9rYWhlcXSuTO3EiD2sF1RdKT7yFFhcS5NPBysFjAQIIgDScVLRGMRbBv773syfvO7y/WTRDTjl1RhyWWijX+Sg8Dx84+UymXcL5PaSlFhqX2LhzKC2JXz6S46ZyBmLyylM8kLKz2oxvzFehuIYbLUuvFaRqJ3Yv9p+VwrMGUERF0fBAqo7utAsEhpeJ5gRDcJkKDtFKIEn+FtaW/bC06hF5bUjOOogYQe9F7UOpRVYT34x9/FnzfvGcf6XaMY2DffnXbPg3djYKaHGXPqxTvtAKyHDGT6q7AsVVNdN6KLKix5QuYczKvBHx0FEAqQVC6sRHBEk8Lq1SfAYY4xDiRYeBcXICmXyjgbr1gn+HL6yCliS9n6dgNz0NlWZKTdZIO/fegz2pnko91jIKY4kPRCIDyYPiaUGVq8Qj8c0xB1KixLdMRAfLv4h+j+moRVdDgwoicqrP6UG6++bTL8dkQh4yWgtWMUxKM9dNJldSqsOjx7BsI6N6IXrt1Bd2WrOl6tfKdF++pZTxME61VZJz70Obp8RU3EfbB6I2Yg4y0uVwjLUTr9h+Nqx2mbC0v3crSFbUGjHEepLsLTy5cvT12babJiWSosxUU1XTeYKNLfAWCYDdszkC4Z0Y0MRMOuUosU+R4v2yc8nH3tAfSBhFa6JerMiN72LVVYIUvI88ICGFqRFxZx9AkMJFv4pAcRu/FGDGRXsOVlu6XGK7lMNaI3nLq9FgLTx4gOoLQEYV7vGM+0FyD2NpAOdiTUGaeFYz7xdBnO4Q4MgO/ZDSBw4021JzOQ8M1mhl3niEIVWF4kuuZYygMVkVGdksJa15gcBmLtxqsRvCkvrODvPkP76NVA2vsOdMWIbowDEdkGpQeKiA0m30dGRsITUkNGi/Ek2UB8fSZctY+AJeTFgYgMhHMK3XhzjOgcyGIgRIC/ZxxA4HiiChCVQQzWsgMjRUxGHEhn3ZWrXDGQIrB9qTraE11zSBQgnBTVhzswCL5nD4CAgaQWtuKe6MIE7jAvO5CwjApLyA4YMxBKLiqYJKV8U8iYrCQfT6MKSxOJHgmw+Hs4G50473iDuks9ZlKDFEWhdO55Sbt012qpwrK3a3TmhdVq6xYKKjRau/QoEgKSUmHZMBDTvYu0ggSAjwYWjeZ4GHwrjNlzXIWBzCTXXoWFzgVIT8VP2c7cQID0YgOtaS9AbG9SZ8kUNSth4bNPlPpOxOEODqMtCBCdEZ0oUmEFb4njZKVzRy7byhMgQVvhv/gACjMQMjKQHDUOpe9l9PFFM15U0IjeOcwbSolfIlWj2Ygej0sbYS4VYprnkNupsDKFugXalgyEh89jrhGdAsHBKVgc1R0xEj1LhaU/HviJUOziHgsQoY7LHHBpVbFo8aKwDZsHw6yas0fvREjZnuJdNnugr5v+Xli2N6nLRvQ0A1EnBW94GM1HHwIQJFOse07qfNSumNuJOa5ehRUykMzZ0xB3IecloojJiCoszbVle2FZqLBIHQ+RxEDC0wcffDBwS1A+lbWYVD04F8feAXzK35FQzBQQH5MDaxDO/xphKWcSDhtIf7UWCjlqxRwE29naGNGjvvQ3WVSJtrmPNudwGIPjOEIkur5tkw0vfiYFjI9H3mnJcU8TSBh7ZXEC3Ozr6woDKfj4lWUBY2PjuPDcl2B8rAnueDjtrHPwhne+p1AbxDmYO7EcYdoLkF6kc9dNsuK7IGcIJc5RG5qB9mjAQHyOdKChuBMhJStDxgxGdF1AmwzD/htpBsJiORTLD91KGVkGWymZYgEVVtAuaT9HLpbiHGAyondjXRXkwiquwpJzYQHQCm9RTZg+rtN1TXwurNz90EMkgYT5Y2hzHgiQcPylGQiPX4UYTWkbaCCIRJcFAA8ZXJDVOGeyzEjRkoV9jzkR6zY+UbyiAUsXzccNd1yXWabRqOMLX74CzK+jsXQNXnzmM3Hy352Gw48+zr6jbnmcZGDaCxBrnUYHDERrDBYmh7bst+j78EZG0N67V2hDqCuosMRkekY3Xr8dfMh6+g35b9LNUajCSs/6ck4oytK3y870GSos+WWXPcBybSakc+PVD6soTKlMlEzDjEmeCASdBFFt47qBMvU5tN1RM48V5qDVtu0n+JtnRCcEAqTF/dibLTeZotG9F0k6d9cBfI7mOFfkqs4Ly4+82CzmgbIMZN3GJzD6j2cXrmdC/2VX5ZZhjGFwcAB7d7bRbrXQarUKp6GvbCA26IENRK/mST7LwU1EhNrMWfDHxrTlU949ohHdNaQGDwUIZe0I5DpQp1uTCgvxHKhNxUQ5LqO2KixNE7o4ECCKXJcFEJS5upvJFHPdeFNbDof9+6p3kKyrDwrq+9UHEtqNWdb/F0FbdzO1fYSsy1A0eZ4IbeKxCgsQo9iNF68cihw7ouGxUKq3Wup98RxXaTulwrJALybVbqHt+3jRi16Ekw5chhOe/iz7dO4RupU4LgPTXoBMfByIfnUjTtYtnQprZBb88USApB58YUOpgHEEb4priAPhkQDJugbX07708j7YsgpLFGDitWXdVzIKDeGLwTNJFwcCqEl+5eYidIuB2BjRYxdr2XCjSBCNCivXjcnw3YjOvbBseopyRebFgRCCvdBbOgGSocJSzrBkHRUsbIISzXGVGbtCAsd4vKHdzObeTKdkikAwH3z961/Hdbf9Bbf/+Y+47+47C9XPixvrBqa9ALFeeZSWxkydTJ10ty2ZGXCO+qw54M1m0r9GhRXPqBEDcTy9EZ3k5Isqgo2N1ONKKhMeqs3ihaTu/tnHgRARHLjaprSpTFJ1s8tzTgqr6h4Dyc+FldhA5GO6Gy19N8kPzWLDxgYSTLCdGdFtbl0ei4hVWBQxED9WrcRuvBkqLI3DXyqde8SyWy2NCksTie6L71IuWKlcWJONGTNHcOyJT8XvfvnzYhUrFZYFrBlIyZvpMHUycF3FmJjqinN4A4OpenrjbHo16zg17dsXq7CyBEi9nmtEJyQ+90i97JINJEvfLjMLIrihAFHUTbJdgPReWECUZiJdXrc2kG5ZaZjiQBRBLyVA1HlhmY3oGpQOJOwwG6+tAAmdFExlI0ZLCCZv38RADPYlpV2WOHbEDUOvwqo5rrKg4KENxGa1PZ02lHpyy1bs3LETADA2OoobfvMrrFy1ulAbHaVvssS0N6JPvBeWJlDJdcF5O/7aVlb5QV9OzYtZiNYGQoGqKKLqjiSYIkR9Zb0kTn+fkhU4qCsOLFrJUqYKC8j2wpKzINbcOlp+U7pIPVtIe3AJKizotTvKsS69E5zs9gNhcgp2kb2li6a/W6qwijCqTtx4bbUZtkZ0UGREFwUIz+xL32QgVLikam231LgV3Za2sVHd8t5MFxXWE5s2442v/Se0Wz7g1fHss8/FM047o1gjlReWBSbaBuJolPmNGqiZCBDZBhL1xTwPENRYMQwqLM+kwoq9sMzX4A4Noa05bjSix0PVT/LWcSAg9Hn92OvvVhmIVqVmOK9ZHeomsW6tIE02kHRKmkTQJ+fV+8IY1I0kLVVY9l5YnamwfJ5t10qGE7EIczsAwEGhG68PJ9zAKI+BZAVhyv21WhyuFNehc+P1Yzdeu+eizPOzfOF8K88pWyxdND+3zIEHrca3v/cNjO32C6dzj9ALG8jfjgApS+ccF3IeLbe/D7QrcdGVV0UxA/E86NICxftMSC+169a01xO7/WZcQ21kBsa0E7aqWkll5DUY0bP2RJfjQAZqg9g6vtmKLaT3A0m3qzOia1mJdmTFENhAsr2woiDPVByI1hNOXWTobx8pJ0hrGNDX7USAcG5nRE8YiP58bEQPbSAtzgUbSNKGzrPM9KpyUp/TdosUAVJjqhcWzxuwgLJG9Af/+L/x5/U7R/HE3nEMWqZzr/c7mL3IPl9XCp0+6JUXVj4mOpVJkCE3fcybMZB6GdoGzxpTUrOUEV142xy3pmcgPJ+BNObP1T5w8nwXCy1BFaF48WYwEAKUOJDZ/XMDQ3qOeoYxySajTLo2DASdv1golsokddDwG+Q5BAQHNceJYCdBOhMgvuV9iwSN6b1KvLAoCSQMh58bB2JUbansSKdZdR11T/TIBmKvwpomOqxOYchM0W1MewEy0Sos5qnpouvzZqXeRZ0RHcjIiims4sTJKWAgWUZ087U29lmmz8ab48arS6aIAgwEBCweXg4PnjJBycMN3nMDAzG48crX1M1kiloVlpgxgCj1FzCwQKb5bUzDNKg78xDESnQgQHxSHMX0/QR/TY+aGMLU4n4YSJhWYQUpaTRtZ9iPTK6/ImqOGiflE1efyQz8LewHEqBk2H1B/M0IkLLS2NEIkP59FqXakwVINEkwz6AhFN5ScUJy3Zre8GzBQOr7LAybllbx0oQdqbBSbrxadUMGA5FsIKvnHIi616eU03nc+AYBovvOxXFGZXh3VFg+J23qpDQDiX6nPBUWNOPUj1IJJLS1gaCzFSXX6QN15cJJ3pwLS1BhcUMgIQeYZmbRNhk+j9FtcVzhOVLceNV07jx6fi0ny87n1B4ymA676oUX1rQXIBMdSMhqDcV1sHbAARIDkVUxkReWfmOXVJI+YQI3MpAoF1bGAzG4KMhKmucKK9tdTLfFN+z0yORGCTh+31MxUBuQ5Yoyiepi8sR2dZOD6rapX8UWReDGqxHWGoN5LgOBZnI0jTFPahpBHU0I0c4BeYhIgqlsRGg5EfzYiB4KEAiMTb/ZijZgnygxog8MzhbOptvwmCkOxC6QUOeoURRFq0+qwqwHXlgTKkAYY89mjN3LGHuAMfZOQ5mnM8ZuYYzdyRi7vnAnE2wDcRoDylOw6PDlYZvBCcV9NvruGfYmFo3oggrJ9ep6BmIRid7X16dVBWuN6CQd0A0xY7KSVTtHLj4SMxuzlbbkph2WdtdMXasmGaROW9UtI3qLA55Gh6W9Nzk2EKZZAZvzPmmM6DboUIVlb0QPWYRJhZXywgqy8cqBhKYM9Sbto6jCGhiaJ1VIUHM8RQAkbrx/fSqsTjGtbSCMMRfApwGcDmAtgBcyxtZKZUYA/D8AzyWigwCcX7gj25tUkru6/UPaPsQVs6LCSvi4Uk/ZnEho23Pr2pmHW+4HEjRpVmFF31M+9wYVFjfs4EjiOAR3zcVDSzWTvXSgFAORx6UdVmG0SS9AtCosOZBQA50RXbMUUAVQj5Ip+mR37wIGkpXOPTne5Bxt4nDlSHSiOKeViOC02i7nyXM6Mm+FcWyOwxQhGm+HMIFeWJMGIvi+j+c/4zhc/MJzitef5oGExwJ4gIgeBADG2JUAzgZwl1DmRQC+R0SPAAARFc6ZPNEqLG9AXVkDSVSrC7MbL3M1AiTaSzX0PBHHX/MaBhuIH/7NvladITodSBgGbYmTuKFNkwBJGSwpYU+r5xyM6x/7mTRuqa6TbQOxc+O1i6jOQ5sTPI0RJOUfENKddGyIQYBYGNFJ7gD2z29mhmQLcG533yJDt9GNVzje4j5aviaVCQGO7t4a7UJJlual+xyN+24NYi7k0h5zlFQkPhVQYUFdpNhg32NOwLqNmwvXM2Hponm44Y5f55YjAFdeeSX2XbUau3ftKtzPdI8DWQLgUeH7egByMvsDANQYY78GMAzg40T0P4V6mWAjem3GHG0XTNjdTFZhxX256u0lngiQYDZPVvEBA9EJkMidNHtfd503SsqIDmjSuUc10+CGvsRJUNwM66RVp+OKWz+SlNNM/o7CQNIURFG/adRV3VpUmVRY4gRFnCuTvnES1LhLy2CkUVkVUGF1Gkho2U2mDUScgFu+n2IgsfqLB7sLaNvOUWGtPfB0/Oqad2v71qmwkh0SLVVYVqXSWLdxM3a968gSNfUY/uCfrcpt2rgJv/vd7/D6d70fX/rMJ4p31AMV1kQKEJ1zu7KoAHAUgGcB6AdwA2PsRiK6L9UQY68B8BoAcOuSYXqCGUh91iLoaLeoclFezpiBaG4vD1wc44mJkpQNgQ3EHAeSu6LIyycVrqa5xYRolUxRqPuUZU8J2qMwx5TGD505qldYfA56FZZOLdYN3W7LJysbSJAKSxizrxGsmjws2okSUCQg6VzNNMgK7rSB7OhhQpKN16DCEi6/6bfR8sX9QMKxEsHR7YRnGEKczh3AghVrjOU93YZSsYPJxC4kJwP/+R8fwRvf+EaQThpbYLp7Ya0HsEz4vhTA45oyPyWiPUS0BcBvABwmN0REVxDR0UR0tFOryefgWmUzLffg1Ocu0z/4LHEplPcDiSYJR2NEJ5/HaWCjyTBqvub16WeeiA3kTCBMU8SXGQgB1IENRGQ5ircNQ7LEI40KizGFEYlQ1FUal92u2UA4clVYiIMuRaFnUsPIB/QH9YGEduiIgVjuSBg9j+Y4kOREkwcMhEleWJwAplk7aSd50rDi5FQKruOoDDt6Bv/KAgl/8bNfY/bsWTjwwPyIdyOmeS6sPwJYxRhbCeAxAC9AYPMQcRWATzHGPAB1BCqujxXqhQiOjRwseTOHF67SvuTBXKlnINFDzjSBhEEcQThxhW9qNI15tYa2L25pA9Gt+lX7vqQLN7xQmSosIWeFMgXHdhFSJiHHYUpyx1SfJvWE1Hw35oAWJ9RyjOjxhG1hA5F1I6bJUpuN15ZEd8RA7Mol5NLETJPPLe6j7asqLCKC46nvJBFURhm2mbqtDgODyj7r2my8ZB91TdPHiH7T/92MX1/3G/z2N/+Lls+xe9dOvP3il+M/L/+SdRvT2gZCRG3G2CUAfgbABfAFIrqTMXZxeP5yIrqbMfZTALcheAX/m4juKNgR6o7FZZSddRavDqun03+nVFiGVaUukDA2ooflRDfeWq1PeUGCcjz91wB9PilxRoz0zWrTMrLUJXGbXGUgEaEhuW8EKqx0JHry2X5DKTt31Dy0OcHRJApItc6DGS8VB2IIJFSZhbaUolYoomYwxebY1S3AQDKEtGoDUbe0JQ54NR27M7E3iZkxwAFT3gXdfiDxd5vr60IcSK/wzve8Ga9+1T+gNcZx12Nb8YVP/1ch4QFg2nthgYh+DODH0rHLpe+XAbisfCdAwzWkDEn1U+5mzpw5M2ogNVmKE56SyoQiFVYNTl8dfEzIyMt9xQYSIWAgOhtIJwyEUoSHSGrHuNI0TVbJmEUjulBRLhbDcZi6vTjM332uMhzdKrYMWpwwmGMDiXOGWTAQLbHQjbMDFZaJFdpA3pnShOiSzdl4k8+BF5aOgQBeXeeFpb9c4un5n4GBMdVrrO54GhtfuB2CxfudpZqbkuhwrL2w91gJEMbYdwF8AcBPqKPNxbsPAmHAs8h22cnNjLym0geTwCn5XPiUspqaXVdkIIH7YnI7G7U+7Y9OPH9HwmBEGjfehOAgig5PNWMyomf1pTGiBwNIBwMqkehO+qFWb5usnoAioGzdUfPgc4KnMfSq6r20JDTv8yG3o1dh6QMJ7S7ILNTzYctAgp/dHAeSYiBhHIguEt1rGIzoGqZGJMUmsTAVilRUx0CCXAV2G0rJ47fF8oXzrD2nbLB00bz8QgKOPelpOPakpxXvaKoIEACfAfAKAJ9gjH0bwJeI6J6JG1YBEGFWYyizCAOsViiZ3XACE2ziWSqsaJJgXg2EtPxJqUC4xEC8Ae2PHjMQiwdC6yUarbRj9YR5Ek+GZpishPoU2zsCiBHZOjWI6zBl46B4N0PN2H2uJuWLVsidosUJNZ0RXVZhSYzNHEioUWEpAyWdUcr6ejpLZdIlFZYwhLbvo819IZAwWcS4OhWWMZWJ1B9jYdqbdGmPuRqnCg4Gx26ypHIC5ME//j7+/MC2Pdg53rJO5+7WGOYt6y/cZzdgzNvWRVh5YRHRL4jo7wEcCeBhANcyxn7PGHsFYyxffzSRIMLK4QWZRZhuX/Mi0DAQcXtMJZNonAurBiYLF9FuIE3m9XofdNMjWep5dVt2cqLE6yvsPzVR69RQyHHjjaWhpi6pxeLxSXvJEwENNIQ+pTFwTfNdWlS1DUZ0IgAhM0km7DIqLBNT0TwPltfUEQOxrBqrsAw3WlwstaQdCSOVJhFQ69N4IBqEamCXU98v+Z2tuyYvLJXZmdC5CqtgAxNPAjL6niICBAAYY3MAvBzAqwDcDODjCATKtRMysgI4al72XsFMs+FPIRi8PBI3XpmBBN+dWi20dQgnhVUBSW4hXr0/U4WV/5Ko+aQ4B1ikqglXeilXWk7Q5BTM1LfHk6M8HPE+kTqJBl5YIvshDLtDUVWt/Ubet7xbRtCWr2cgnACEGQRS+7YIY9ZBvlbzZFkykBAd2kCsVTzhM2JkpsnnFvfhcw5PUGFFE7/XrxMgmkZJo5ZkTLvFscfUdO48YsETqMJKDbeHAqFjG8ZUUWExxr4HYA2ArwA4i4g2hKe+yRi7aaIGZwUinLI8m066jGn3C7cFA5QHlGXZQMLvrBZElotnSVxWS9y9blRh2Xua6F4wVg8nxPB72jOLQCUZiOyZFlRE3Jd8KY7DUvMlEbBgYKHQZ7q8T6oKy1YVk4c2J9Q8nQoLSRJMnlxMfK3G3ZLU7/JvEQiVDmwgPfLCAsyPmnhNLe5jzG+JGtKYrDcGNPYljRGd4nPJCcYA3ZrPc9RUJnJizzz02gtrcgnI1PHC+u/QoyoGY6xBRONEdPQEjMsK0UNz+KLDM8u5zIXfyU+pNaJn+MxHDKReV54g8nmilpEmmUZjANpHTpNW3DRMnSssa3hJf1yawwhaBpLJdqJTGiN6MiOoxm7HZYqqYu1IIvzl+xhNSKmuu/ROBCosvaGXNQK1mpL4kjGzDcQQCyQ3bufuq0cvUplELNX0rPk8cdNuc44/bFqPg+cuCMdHcEM1ZW1AF0kI4+Otu606ARL1Ey1cyFRYf2mTOqH3Gr2IA7FVYf2b5tgN3RxIKVjOJq7jdkwHlZgGwd6gBhImbrwRwz76+8EtJJ+nH3phr9FGfVCvwiI7LyxA1YgQEdxQHx0RHjkfle7OGBmIMLnox0pRMeW8o7GBPH/xOanvqTFojOg2O9fZoM0Jmlg3EAhuf+DVF7+ATPDysfTCgo5Y6GhZgUDCzhiIZR8UMVXTeYoZdIv7uHH9w/j7tQcH50Chpx3QP1xAhSUvNnS54AE4Tnrnw+CzJtgzA50+PoWrTyoFmWQVFmNsIYKkiP2MsSOQKF9mABiY4LHlQkmlYUCdedhL7fId6Zb2SF4IxY8mcuOt1wEQlr7ktKSO7wc2mbC+OIHX64PZKiyLB0LnCusNJvnDlKAtITA+Xc8041AyDtmIHi1NpWIRHDcRANEYzjjgjLCuPo8XkwbXLQbic6BuSGVSnxHYZdIMhANwC6Rz18wdsvSO+7Cd/HrhhRX1pS8f/eQE4OEd28AYcOyiJfE512VoEaExpNvKQNMeshmPjEB1zOHCSb07E5mNN4UeCoQznn0WBgYGUOsfhOt6+M4vf59fScBUUGGdhsBwvhTAR4XjuwC8a4LGZA9LAdJwPYC3OuxKYiBgxlQm0Vvo1oPUJKkfMi7bB9B4auap14ege0Kt07lDM5FxwJvRSH2XvbC0RvQMj5/M1XgkIKDeM9dloGYkQJRWlevjnJStUbulw25zQk0XBwKgPn92NIDgr8hALI3oOgmiTcle4Hp6agMxBhKGrJCA7eOjWD0niWkgEBw38HgcnK3uxmnMhSXL1QyfF4cl752aNSAbROWen5XHnoBHNnQxnfviebjh9l9blb388sux9IiTy3U02bmwiOjLAL7MGDuXiL474aMpCksJ219rgMb2lu+H6fuKjeiKYS+MA6nVFLVFJEwajWGMN8dSL1U9zDSsGKfjFX/O9Wq8xYgItdmJHzrnpHhCaVVYWSvtlAornd4l7p7U4ToOi72B1F3rVAbik6pj7aYNpK4zohPQv2xJqjPReG4dSGgiFsrvYwpZ11XthIHYlYuGYhI4cnDnUfMTF3oioOYFnoB9c9SpRWvnAJDszCmOQ98/Q7j/jivtw2N1D9X8bDZ4ZMNmPP7+7qVzX/zu7gUlZqIHNpA8FdaLieirAFYwxt4inyeij2qq9QxaLyANhmsDwOjWDnoyxYEEnxW9fGREb0QMRJiwwzd5aGA2xsc3ax78MC2DELUY2UBsaL5ODVRfmARacnm+MjxkmZNVlgorK5DQZWgKKqzUT0dq9DNxqAykizaQuoGB1FbtH/YfMRCRddka0XWFNPuac/tAwl5EoscCJEeFFeHCNQcl50DwQqE8NEOnwtIxkDAOJHWKGddKTMiC7QuFbISrjhVPZTDGcMkll8BtDODCl70SF7zsVYXqTwUV1mD4NzvUe7Jg+TDMMNgWbKGLUQCyGEgoQGqqN09gRCcsmL8cT267NzgnVg89fZgjRmgXcOPVaEgG9p8r9C8JNE2TgRwwGdGT+toU3CmtQvp8oN4w9ysf8zULhO6qsOT+g7YXHroq+B7/bgIDMdwX5bDpAjU/UP4SKEBmepncut1VYUWZRv5u+cqkDyLUwhxYjaGGUjdzR0LxfmWosBhYLDg4EZzo7vUoDqSX+OIXP4/Zs+difGgBXnnemVi5ajWOOaGAOmuyjehE9Nnw7/smfCQlQKoeRIt5fTOh1ydYQpdkCoIA0VlQATiNUCXVTgsQABgcmh1+T68qGVO354y+57rxSmOJynv7DqfGnM9AWPZq11IKyHOl6ybp3BUGolFhESfIweLdM6KrDCRKxZE6EAwtV4grj4A2eaHqxkvErVfF1AkDsXz885zNOAHMYRis1XDJkcfGnlHB+IB63TG+klojOoWsWCFmBhWW6P1IPIgtgj2zmPg1efcwb/48+G3CnHnz8XdnPBe3//mmQgKkF2zLyo2XMfafjLEZjLEaY+yXjLEtjLEXT/TgcmF5gxYPzunwZqqpUMTJWpy0xah3pxG5g4pG9IBxDA3NC94GnXLaFK1sQ9NFBhD67A8NJQSS/LQNxGgUzkrnbpplGEu9ofIk4HjJfQxuSUqHpdxjn6AykG668boyu0mvRxIVVvKbahctwQyWPqS7fYq1OCpou3ruBQMJ/ppUXkSBUGeM4anL9kmfA6G/kSVANIwVkbozfc60UIi8sIBQgEQ6Tov3u6wRfTKwd89e7NmzJ/y8B//7619i1YEH5dRKYyqosCKcSkRvZ4ydg2AXwfMBXAfgqxM2MgvYuvGunLGoMzqnc29C8jCm2XeSr8ephzReVGGFn+fMXh6sbNvSBKJjIIUi0YXxKUtq1TahV2GxTBVWyoiutG9mIJ4nMhBpsoYuCJKUvbW7ZRf0OaHhyQJEr4pkEH4Dk8BV5IKdYC6SC6uzZIqWfZhYdYhIyDLNZEwE9GlyYMXntUI1UmGlD/evXojRx7YCu5up40zIKhGpsNrQ2JYM6IFduSvYvPlJXPSKNwAAuOPhOedeiJOfdWqxRqaQAIkSJp4B4BtEtNXGeD3hsLxBa2ft07k+UHnymED3k3OOkOLEibyqxPxXfiAwFixYnUQ2p5pWo51tVVjyhjni3lXxZUTqgug4J+29ydS3p1RY+lQmQdMSA3ETBqLP+aWuQh2FgZiHVQScSIkDkRmI6MabOAcYfgMbBqIpV4yBlFdh2a68EwZiaif4TQiaLNQgDA+6RseWrB0m5ddrn1ecjIc//nOMywIESDEQsPAJtGEgMKepz8I+i+Z11XNq6eL8dO7LVyzDld/8BrhPGFp5SLmOJtsGIuAaxtg9AEYBvI4xNg/A2MQNyxKWDOTQmSvQkQ3EkM03yislnnGYGz+kbiNwn1UECAHz5x0SrGylN5Xp9ncuEG1L0gQuv8zBlrYCSyiqwqJkotcb0YW2JcW75yZCVyt7pOZ06dy7pYLwCahLoegkG7RFZ4OYBapSWWsbNzEQKZajkBtvT9K5B3/NgYQE12WAL7nRhueGNBHo8XnTI8XT9ytifFp2zNI56JwogaiVACn3/Dz0hySA764tOzHW5nbp3B+6FwwcC1ZOTsx1L1RYtunc3wngeABHE1ELwB4AZ0/kwGxAxOU5SItZs2aF5UtOPjojerja96VJp+Z48cPs9IUMRPwh/WDCmDt3bsBA2r708OuM6OKsm41UmgeuevhoGYiE4CU1eBuJ45AnXDESXdO06yVeWNqxKSosqCqsLukgfE5o6BiIMCrRBhJ9JoWmJGNNfzeMU3Hjtd+it7NIdMuCsQAxjSFgkoCOgQCzR7xCNpCgzbQKi6KONPcwZQPhPMmJNRVVWJOqpNHQuglAkS1tD0QQDyLW+Z8uj6cYDC+zFtHKnplXSFnQMhBQuEpOGErNqWMvBVHvjhdG44oMRFpZ6R58U8pvGwEoFvF9jb2X5Gy8UMhZrhuvIECUEaVW7emzrpdEdOsuRc0krFFhdemd8DkpDEQOklOSKYp/ZViqsLQMxBKdBBJaG9HDX9RUnhMFafk16iBOhNmz+gt5YQEqgwsYiF6AiGraYDMpljSSg24Y0QtVZ+r2Cr1EL7ywbNO5fwXAfgBuARC9AYRJFiDFbpAaX1GsM0nVhIiBcDhCUGHdaQD+bqmqagMJGmHp5IrhMSVfUryhVN4EknaFDVRY6RLcjzaUClduhlVedjbeRIUlzxVpI376nMhAdNpHNQgymKxSx7rFQEiNA+GKCkt1fggYiESLiNTJ0ShANIsDy+e4IwZiedsSFZb5vOsCLaQD+YDgqZ41x7ygMzIQX1Krhh3pyjtSHEjMQKzvYe9mdMYcEMrbrTqSPoQpZUQ/GsBammphnEVukM62UKgvDQMhQptTuAoKzvd7fUBbWo1KDER8MCKbSKq8IV9S/u1Pv3S6yTbonkqrsFJuXKTZSySDgXiekyRTzLGfRGOV40C69QRyAvprmjiQFANJBH3KfUyTBl6JRLe0gZhUNfq6k+/Gywmx6k9UYUW/3fy5Q2YGkqHVE8/FXm96I0gqDoRFHpI2mapLpjIpDdcF2uVz8HU61E4Yqy1s07nfAWBhbqkeg0jjZmRA7qo6s7LJiK5uejRYH4by04uTqigwGMIHPznPNH0VsYHIDEAxokf65uiwVoWVca8omRy1uxmmGFD6lJuYh8Jzgr1Bo7IlHQPpkgThRGhojOjSgeSjYP1nMgMB1EWA6VHTskvb1XMnXlh25fIZCMELf0fRiB49UlmCyshAeHpip2gAmuIO0l5YLINJq2PvggqrQFnHndzdvqeSDWQugLsYY38AMB4dJKLnTsiobFHkBmXtJmcDzYNHRIEhT5gIR+ojqgAQLZi+GHkcGdFTA1VnH0svLDkSXWeojrPxxsZHgmzJyGQgWenckX6R5cnE85xMFZYSjUwqA+lmOvdGTiS6EgAaHmOuLJR1P5mJgZRXYfXEBiJ4OGnbIYQ7OaYn/UidFPyu+kWdmdRqIvR99RgAgOlVWPZeWLnFugbmdSZAdu3ahff/67/hoUfWgzGGf/vEZ3HEMU+xrj+VAgnfO5GDKIuiGrWyL2Bs1JMQeWGJk9y8vvnKw0yyLj1sizGkbSKa8uK489K5E1QGokzwoRtv1osXBENmMBATI2JI6f6VQMJadhyIzijraCbrThG5Xtelp182okedBdpPkYHkb5Zklr+SEb3AjNZRJLqtkIrKm39+1GoMBJ4aT2Q/KstAUsOLWK5OvYrkWnzRC9NmsizJQCYrnfuHL/sIjj/+eHz6W+9Gs9nE2GjBjOJTxYhORNczxpYDWEVEv2CMDQAoaY3uIoq8UIZtae370k94bWmWXj5zhVpViQMxqLTiceptIDbjV1aFmvNiM0SqqkBUE2R1oouizmMg8TwsXyLU+YJzQE6Y2w0juh8yDceRGUj6fkW/G4kDJgp2xhKhUQMWYiCW6IiBFFRhmbLxck5o1FwAfqpMdO80pDRpOysOJNUdIUr5IyOVjTdy4+UGtiL3A1I3f7PAIxs244H/6F469/3f8efcMrt27sbNN9+MSy+9FECw1UO03YMtplIurFcD+A6Az4aHlgD4wQSNyR5F3Hh1qqECUDcMShiIOIIljaVIuboCqsCIh8SUQMKguCBwDO3YjNP31bc5flljI7rahsNytgCOBRpSRnQmtSc34dVYPCkoHmKklp8oN942V5M0Rm2ndkCMGAgE92NOYPJeuKQ+H8YATWVHQnu7RmcqrPwyDrz49zH9/AQEGXcpbQPhoU5Slz4nrmtoM3bsiMG0aq3gjKTCKpCNlzTP2FTFI+sexcjICN73vvfh+c84Dv/ypouxN8yNZY2pEkgI4PUATgSwEwCI6H4A8ydqULYo9EKx8jrBYAWqYyBQ9u1ePGtpNLikviAkeCu9tS75ajbWlADhPrJcbuWBKiosuQgFnlosmkE1b5UuI3B6zIIaSpRvUXvx2NPt1uqCF5YijzX7gZAuF1bnM0AgQHTBgBmqxPh+EJiTJu7BToNSY7ZG9AICZKJVWA2nEd+DrP1A+uqO8nvFKqysdYeJlZF8/8jonSZn42XhmsR2P5Dpkkyx3fZx77334rzzzsf3rvs/DAwO4nOfuKxQG1MmEh3AOBHFSWnCYMLJ/yU0RmIzyjMQBphVWJQ2os/tn6+qy0QbiCJApHTuSBv7iQvRgFYqLPWlTvUnMRDTKi9rshKTO6bazxFgXo3FD43uUmwYSDc8E7MYiM4GEvSbCE1HYxxV3Xj1fRsTZVqgIzdei7d1oDEj1wbCidDX7yq5sOLEohnvZBYDSc0mEaPTqbCEZzMOJLSkFjo16VTFosULMH/+fBx8yMEAgFPPOgd33XpLsUamigoLwPWMsXcB6GeMnQLg2wCumbhh2SEwhtq68XamAlAmiHAlJPvLLxpcAjkdSYqBNFUGkvqhmcpAEoO3xThzGEhksIxdUTVepC7LMKJDuBck+W9JS1BZONU8NzElKCofdXVIfKIYiN5TSPXCEgWIIDRrkgAhKIzDnMpEjgPpjQ3ERh8+b3BB/PxkBRL2NwJvOjGQMPKIyszBmeXGq0aRGhhIko03cGAJl2+WkmG6MJD5C+ZhwYIFePjhdQCAG39zHfZfnZ9/S8RUYiDvBLAZwO0AXgvgxwD+ZaIGZY0okMgGnQYSagzbHKTEgcyqzUplbw2KCp/bggCJXItldY7YVyrWxYaBJJ99jT6aRwZHN1GLya3m2kDEqGwJKZONdMtqDZakypBX+1DnUk6YEC8sMwORfwjRjTcRmrIA0S6AjQbjSbKBWNy3/eYcFD9ixmSKAAYGvAwVlvrMxXVNQklaQwVqVkMyRST3IWIigQrM7t7YJpWcCnjbP74N73n3v+Dspx6Ne+64Da9589uLNdADYWnrhcUZYz8A8AMi6p4/W4co4gJZpnyqrkGFJRvRG41GKKs0kw80DESTTBESA7G2gSB9jTqPpXiyi5YOmpWeyxzwjL3bRAaSEmqSjkCrwoqdmbLVX9HQ3AlI596W7FZi22kNlspAiCjeqjg5CWXwxmdNCXaxv6BOVs823Rx/6Dn40b1fyyxPBAwPaVRYiNx4ze1nJVNUVjGZDCQRIE4B9S5gtu1kYZ9F86w8p2xhk84dAFYfsBpf+fqVGFy2ulQ/ncx3tsgUICzg+ZcCuATBu8UYYz6ATxLRv0746PJQ5GGYkFQmCN14lc7SQkB049UY0WWQZANh4f4Ledcrz2PK0MJhkajC0bTpMhftrHsV6bu1hgyxWPp8vZHe/lSupjOiuwoD6YYKixTBFLctHhZ/GyGVidvXr9Y1eF6r5SQG0iM3Xpv79uxVz47VClnp3Af6g03TxNV85IWVNWmZ3XjVBJ+mZIqBDSRRYQXPsT5vlg5lBIiYzv3WTTvgE1mlcweAPQ/djQXL+xOnlaLQpM2xBfnt/EIdIm90/x8C76tjiGgOEc0GcByAExljb57oweWi4AvVUW4YEwPR6WKYfvUKALzlp8tps/GKdf0keV9RI7qWgYQvqxOxGiirP5d5mRNOaodERf0mjiV9zqs5grFV066OgSipTIzDskbAQPQ2kPR4ogPpDMSsrjIQVftlmICnsAor3Zf5+MyhWiBAdIGEGf2YnilVi2sWCCkvrCgGi2A9F0yGCquTHplbJGG61K9tBs0OkCdAXgrghUT0UHSAiB4E8OLw3KSiGEVjHek/TCtmWYWl7UsUCDIDaUsTiMSUjDEh2kGmx+nLHjERAyEk6Tg0Kz3PcbMnK55MrOZz6u9Tr6fjQFJD103CREogYbcYiNELSx4UEChnBBWW29enVlZUWIbOO1BhdXLtQdX8VTCLHwvDZA9g1kxPYYyiF5YRRs8u6faFqtD8OJBAhWWKGdH31XsB0gniLSHKoIPcabbIEyA1ItoiHwztIJOcKQwFVVgTw0DaXBPbqjAQ4bMgMBgMKqyUDYQX8sJKRaKr9nlEPvdRMJzuxfMcN/NFy9qRMKXCko3oNTe+japA1u0vAUWF1Q0biG/0wpIi0cPrYxD23CaCOzCk1FVWe9YMpDcqLA7CgKOOWwYT1hX6MQAzhmrgpDOiM8WTLV3XdE/kVCbh/dYUT0Wi65wcclBGhSWiaG1WppIAxd5WALq5pdvIEyDNkucAAIyxZzPG7mWMPcAYe2dGuWMYYz5j7Ly8NkUUeaFYh5HoahZVJC+R8sZIfYkqrHZ2HAiQnlREI7qVDSTTiB4asYnAIt2qRg3lsVr2vTVJAal/ecLwGsxcVctAVBVWNxaQhRkICSeJ4A0OK3VtbSByQSqwSuzMBgIsHllpXV67NggvamgoeGTUSPRsBpK1Q0CKpUffjTaQoKHIjTco2ysVVm8ZDGvkC30TpkIyxcMYYzs1xxkADY8XCgQZ5z4N4BQA6wH8kTF2NRHdpSn3HwB+Zj3qCEW9sEq+gMHzrGcguhUNC7dA3Xn37UH9FAMRx6BPZZJ6GUQ3XovZM8sGETEjIiRJpjRN1hxXydCbHl6kh9KdFPqXvbC8aIyqjltWiUTlFAbSJRWWjoGoQi3NBKOBusPqHtcyA7E1ohd5hjsVIGcc/KLccsmjpnvegxe/0QhWxfJ+ILleWEYbiBqJTn6wsKlLqzPGkn7FHQltVVg9MAt0FTWdutQWky1AiKiThInHAnggtJmAMXYlgn3U75LKvQHAdwEcU7iHopNJJ6sP3WqbwoRuumY54cnfXaf0K9s88lVYSfm83bMDViQMQWYXYaAXEcBqZhVW3alb2UCURIwktMfUtl3XjcepYxs6I7o3iXEgKSFHyTXXZsxV6iorb2s33iKpTMpdfMREX3rSJRalGRj0Gy9xSqeea8sMJGeMWQzEZAMZcNMqnDQDETeUsrs3k2EDKdPjX+5/CK9+yZvhNgKPv0cffghveOd78LKL32Df72QLkA6xBMCjwvf1CDy4YjDGlgA4B8AzkSFAGGOvAfAaAHCFjJTFcmF1psJSV8yEaEdC5QEJ7S3+2JgyzrQAIdWIHnQmfPSTVCm5T2LamKiosGIGQrERXSfAak7dzgsr0DWkT+p9B5IhMIQbCOkYiNQPabLxdoWBmCPRlQGEf8VrbsyanVvX7LJazo03cFYt9/z60sSf2U+GEV0+JgsQhpxIdMNPp6ZzTxjqnP402xO9sLigwrIOJCzx/HQ7nfuSxfNw4+2/ziyz76qV+PrXv46hlYfA9308/ZB98XdnPrdQP72wgUykANE9svKv918A3kFEvmkTGgAgoisAXAEA9aEhYYbsjQpLq6BHaEQPjArpLK5hfh6KtrPMYiDtHAZCfnInLR7+LCN6oFoLmnE8IZWJhEYeA4lW43pFediZ/nwkx4Niwj0j2zgQ87Bs4dsykJQjRHQ/CM6sWZpGzXXTJ8oZ0Rn0u2LaQLexWE5n2vvMucRARDfeKMOAbkEVwpxMUWLXFN4XIqwYniMNLe2FlSyuLFVYJbQQj2zYjNs+2r107oe+5c/5hYTrufE3v8KyFSuxZNnyYh11I3FcDiZSgKwHsEz4vhTA41KZowFcGQqPuQDOYIy1iegHNh0UFghlKR1BeUAJwUvTDKW8K26PEiqDeSvwM0gZxVNGc6ZMIEw6Rqn9RnJUWEi/pL6iwkpIQyRAdBNYw63Z2UBI1l2nn1njipMoLCdM0FCfd50XVldUWGSOA0kdTkljilV29RlzlLrKuCwZiO0zmbnJVw58Q+S9vh8lE0+MVPp0aBiIQfDEMMpUUs+F9/qERWnDv7jlc7wfCGAUTrprmG748fe/jTOff2HhelPBC6sT/BHAKsbYSsZYHcALAFwtFiCilUS0gohWINhv5HW2wiNsoNCAuppMkQI1TIsHST88Jvprh77pkceVuJKVflTZC4uCzoR+felk1iDTt0RZDYpG9Hoo8HQMxM1WYYkeSen+0wPQvdMstsPkq0iIVBtI99K5q8dVViSpsMLvfTNmqHU1z4cWyjVaCpAO3NADwWgvQYL1j+73SQtYJRLdUC+CWYWleZRCZn7+woNTxx2RgYipVC0F8STEEXaEZrOJX/30Rzjtuc8vXHda20CIqM0YuwSBd5UL4AtEdCdj7OLw/OUd91E0kLDrcSBA2w+Svg3WJM8czsFbLWWcqgDJU2EFn2vMRYv8wH5h2nMaqgpLlCDMYeEcT3AiI7rmHjbcvszJKpocdekm4q+ZKiyDkVZxhaVJMKILv1VKGofXarr3kinL1gZiz0B6o8Ji4X/63yd9sC0sbuJAwowhZqqwpFM8FCCrVq1SBihGojvMzKR16DQOpNf47S9+hrWHHo658xcUrzzNVVggoh8jyNwrHtMKDiJ6efEOit2gbuYSCibrgIEQEWY2Zip9xQzEKEAonW8JUbZRUfce7AfiMoZWFBHtGpzjKF3X55RWRTEWv6ws2hBc8+L1O33ZHl8pI7p8juILMauw9JOJ/HJPnBdWlhFdZSBRttesSUqZ3E3jLGkDyUuxnwWfG+Weijw33pQNJM02Y+ZiR76E4+oJavvQST2HabywYH8fp40KiwAw4Eff+xbOfP4F5ZqY5iqsCQfpuG8WyvJXeWkPhJ6DoQABYfHA0uRktE9zaERPvSA5DIRAqUk9ejFcFrrAZqkIpGEqTlgOi/XNTsMzttdf68/xwqLUX7H/ePLQuPECiReW3kir3mPFBtIFHUS2EV1oX2YgipFEKCozEMP9UzaUslZhdcBAqKANBFk2kARKICFYZLrQw6jCMggQbZIgJsSBiFva/nUxEAIwNjaG31//S5zynOeVa6MH+roJZSATDsqLjJCLd98Lq+n74ASsnrU2Ps7CvmL7htabB6HhOFuFFc1MDbeGPdTK0RGkA/SUiTrKGwTAbUQCSW2m38sWICkbiFhOYBaRx5d2mAa5r1Nh1TzZBmIeli1aXL+lrepGnFwnEQ/Vh/o21TgQQ+e2/r4S3JxthrPQ9ovt3MkcuziQ4jYQ/TldKAy1uZaBBGszgYFE5W0ZSIkHaJ9F8+w8pyyxxDKde19fH268X/Y7KoDprsKacBR5GBg6uqGK/34YB+KHxvSn7fNMqUJiRNfubBcNyTKQsOF6gJ8vBBU3XlGD5SaJ51hkRNe81IPuQGbMgTixqifj3rSnIw8ffZyB3A/g9TCViWJEFz3gOKW/K3VV9qQvWM4G4jIX7ZJpNIoa0R3ST/ZKHAjJDES1u4kwPbqRl1hqLWISIEjnwooXAtYMxKpYCnE6dwL+vGk7vCX7xtH4edj78N2Ys7gPXr2gsofMOcWsm6hUWNkotCKjDhgIQZkRYhWWz8GJcOrK09PnOU/y8Qu69JQ9hAw/skaADNX6Arqe4+Uie2GlIKiw3P7Qa0zT3nB90IqBKO6X4n0yqLCicel+CtlHnwOo1dKPaDHOqUfbyEDkfSlCRTRFO+SZVVi2W9qW3RM9L8V+ForEPgRGdL3wDzbcSq5fVWFl2xiMNjFfnS2p7YNpptCUFxYlv2MvbCBRTVvhIdfrOXrAQKa1ANG6b5gQxmaU6kaK8I6OcQp84bUPJedJ4sRowm0HBnGnkeS3yU2mSMGqd1ZjKNKNZYwzPXH5UsR3wECCJpw+sw1kqJYtQNKqHem+hENnjn6oTDDky9C58U5IHAiHVTLFQH6Ek2lsA9G3qbyrXVZh1ZzyRvSigYSM6YcfydMIqR0JKcmFZRTyxgWFelvJz1JhhQyEi7mwemFEL1l3kiRIL2wg01qAFPVz7iidu/Lii0Z0CZHBMxQOsdurr5m5dAZEhYEQZjWGEcWXmCARHNWN13MQ2Ymd/pqx/2FvKMcLS2BU8gBiBmK2gUT7ssvVe+XG63PSbvSm7olOYMxNGEgBLyzTOMsykJrjlb54X5r488Acpp1o5b1vlEh0lr2mMzIQjWDWpvgBUlvaEgSXdutAQqtik46uDLMHcSDTWoAUeqE0aihbMJ0KC8GEM9rWbRtJgMaITm0/2NpSNKrLKiwiSYUVfF7QP2LForKM6MwJaAGB4A6YGciM2rAdA9HFgUQMJEOFJQs6cbxyubonC5CJVGFJB0jcMjU0KJm8sOSfxTiLan5vC9Tdemn1XaE4EGYmuvL90aqwSgUSyqmAENpAdF5YaQbiFlRhdeKF1VPZ04XOehFIOK0FSOHJpJsqrHAiHteulAJbQxxFLqmwBPGhfat0RvQDZi5GcQYiTTmuE68Q3eF62L7a3szGTCsGooxdFLRuhhGd67cs1amQ3Anwwmpz0j74KgEhMNeNl9WUNRFrhJ8O6nNk90z2OY3SDLqoLdV19L9dlLI9aZdS54K/ME9+WSosmYEYBu0I8TDpDaV6EwdSxrDdDbtdKXSDrudgWgsQbQ6EDHRkRNfEPHAijGtsGEGBhIHEL1e7Ha9o40Z0UGwgwFEL9s21gUA6LRMEVktUWLXBmlohxEhjRnY/0fVIHaQmD4MNJCqnNxup97juSUb0bgkQRyfApFedCMzxECf30810UV1bYlEyEr3fq5VmX/pNz8xwmH6i9SUnNNkGEoQwZSRTzFJhyWWNXlhIG9Fhzqig7asTBlK2aql6hK997et4zolH4KyTjsRbX/0SjIfZva1bKLBVQFlMbzfeor9o1yPRgXHDSinQmadVWLzlmzPVpfpSGcihM5cHB3LrplVYImI3XgAYaoTtq+3Nqc/KSabIo86klyNhFlmBb5FqTT6ri8PwFBWWcVjWaHPA1UxOOhWW69XQBoDIC8sEJQ4kQ3qmvtpd0ECtr7wA0c/FRjgutNtpK4GEGjfeTBtIRlyQYgORpVUIeUvb+He0NqJbFUthxbEn4NEep3PfuGETvvnNb+JH/3cn+vr78eZX/j1+/P1v4ZwXvtS6nyqQMAeUsdrRli87+xiU9lEgoalOTMMFGwgEAqJ/09Iza2xEnzUrzIeU/aKIaoV2O92+4znBZRDghQJEN4YZ3ozwlCHvVjxZZNxPVy9AonTuXCNBdPpprQ1E50JVAL7BBqJTYXm1BsYRTmhkZiC2axPlibWsOFwfLK0KKerGyxwG0pj25PtjtIEYuzMvKBQvrDbX3mpHigMpuiNhGQby6IbN+MMnupfO/dg3WgQlEuD7bYyNjcKr1TC6dy/mL1xUrKNKhZUD4mCFDOndYyBA8AKZVFiBykNWYflQIqaUfiRVG/eT985ChSVqRNq+KkCi6vWBKA5EbaMebtplNIJHdTSeaVF7JjfeoBqF40wX0KmBtAzEOrGTHi1OykZV0bjkuBa3HuwIR76fnUZGYRaGgta6rjRm1gdKTwiFJk0WbOKl8S1UBJGiwkKkwjI8N4Zh+DovLKMNRIoDiRYTf2XZeBcsWoAXv/jFeNbhq/DUg1ZgeMYMnPiMU4o1UhnRsxGrY+xKl7aBBLp9ta5PyX4gukriPtpA8FKEPj3i4cxxpsfMcmmpqLZSVp4NV81fZWgvk+2INpD00OOJlAnCSqnOQ/Yoa310XliuHEgIaH1wC6DN1Qh3ILQZSQOo94+EY6bsF1KJAzFNovL9t3smZ9RnlGbQ3TKic0I6UF8WIJF21ig89YfJFAeigeyF5UQM5K8smeKO7Ttw/fW/wbV/ugfX3/EQRvfuxdXf+nqhNiovrDxo3Ehzy5eCXoXlZ6iwyPeTsYkMRExTaxqOJg4kOWDPQHyJgbh9nmoHNrTHhKyn6vjCOpkMJN8GohzXNOfJkegEdZ/bgmhxgqdpQh0vod4fqvP8IJW+UYVly0AUPZndSz6/b6QjN94icA0edLItXlZhEekXBnH9zPFJTNOQQtgRbCBt8uGG6dxt54HpIkB+95sbsXjJYsyeOw+1Wg1/95yzcfMfbyzURjdc3vMwrQVIYUZR2gtLdeMFghV+yyDlqd0K9DhxE5REpsdt6d9SeUfCuDjLX1WIL4gsQFjdC1bSwntpZjRmBpJk49Wcj/p3mXHGiAytynStMTDXZSsdEZjXmemulcVAUrKa0D8wK/ji+5kMRI0DsSto+5Iv6J9d+vkNHgN7tZ/rMu1aS7ZRid+jT1kmEPOCQh2emYGkVVhF40Cmiwpr8ZJFuOP22zG6dy+ICDf+5jrsd8CaYo1URvQcZLl8KEXLq7BMQYg+cbQMDIQ3m2H69JBxcA5q+8EqMoeB6CLRA2TbTwCJgUiX69RdZRXZCQPRCZ+oOVbTr2KDMSbbw5rGHrVVq6k2EFbrVICoEe6AzgsL6J+5IOxXH7uSjEsVfjblbIXCkqG5HTIQ+7qep2ePwe+T3DdFhQXK9qw3qjQpCLAVj5lsIED8XLaJg0WLtL8yFdYRRx6KZz3rWTj3mU+B63k48JDDcMFLX1mojWm9I2FPUDRJXAfp3LUbIHGTDYSC/dCZA1AYPMgJ1JKFjW78lFZhEU/KWRjRRbuHbANxGyoDMd3DLBtIEomunqeQ9TCDF1ZQX/++K7mwADQ8VznmNGradm0RqLD0yRRldeHwnH2Cj6FK0hxIKH23ZSCWz/Dy4cUd2ECKqrAc/ZMp3R+tG2+pSHRA+pmNubBcx4n79YnHv6O1F1YJIbxs0Tw7zylL2KRzJwCvvfi1eMu/f6p8Rz0QltNagER7NFiXLyuRjQwkQ4XVaiXupoHlL7CBiM1oNViSEZ2n6+RNOOL5Vis9NtbnghNSLqxGmcpgZiA8Y7IIjzkZRnRjLix5cU5Q9gMhAty+YtlQZbR8wNMY4nVG9JF5K4OPfpALyywXZAZiKliOgSzrnxdWN29pbEJRTYZnsIHIqjCdF1amsDI9D4Frna4zBYEXVtgX8cQGMoEqrIfDdO5Nn+OuLTvRv/JA67p7H74bM+c30Ddg2EV0IlHZQHJQRHgAHTAQfV9GAUIAb7USes1YMPkYEsSpXckCJCVBMuuKhGi8mS7r9tcAsjSiW3hhaRNBRoGEJhUWS2wN8mnR2BstDGRzBxHBHR7Uj8sSbU5KfEnQtqBdDD/Mn394NLhQf2abC0vft62qS8bg4GCh8iKKMpC64beTGZpiRAe0m0NFyHULF48ZAgld5sQLm9Se6AVU2T1HmS67MMzKCysHhba07cQGAv1qmxuM6ASEKqzgBWCRCstPCwP9w5zW7xD5adKSc73i+WYrXTbOwCuWzzCimxhIkvdIp4cKa9edDA1dyD6kaxGHEtviXVWFVRsZNozZDiYvrJQKLfw8c2mwVXGQWSBDhaWwJ/XimdBuUtD+mWQldyUMUqzbo+Yxrb2FSwxEHEnEzcowkHSrYVHD5McYi7MA+8ThOhPPQOIxla47CUILqBhILgoY0ePyZbvS2Dp84mhnqbCityK0XfC2n55YTBOskiQu+p6fBkUcjqzCckMBYuvGa2Yg4V+NmoFSKix920FIhWmCSj6bguDr82brx2WJlk+oGYzo8RBkthHGgZg1U7JgUMswOKrAKPRMlhMgvo7uZaBW06sfZWM8lyPRDb9rhMxLZQCQLBZIs8kUEGztK25p67He5cLqpSDoRk8dbV9hiekvQOwLd0TpdHV9gsEGEhrRBQkSq7BSY9aMXxKKogqL2USiiwxESmXiDtXV7jJevFwbiGYssQqrkeeFpVuMp9mZdrVPQP+S+cYx26DNCTVNLIkYia7YNMI4EFsjuu7aHehUWMUYiPE3yUDROJB6PSOQUIBsAyGLvmow2wJcT3g+DV5YLnPifttc2NK2BxtKlapZTHZ32lsaPXDjndYCpJgKC123gXAiPQOh0I1XZCCRF1ZKT6Orqkaixyoj5E84KQYiCZD6SCMZT8YYgiJZXlSkdhYPIGQgjYxIdArakE/LDEQ3WxOA2vJl+oYt0eKEWl4kusRA8p415ZSWgbgaqdkDBlJQhVWv672w5MlXdeON91DTgojQgNkBohamjQHMCxuHObHthYPDc9y4bRt0PqeWSKNTps/uUJAuNJKNaS1ACjOQTgSIZkXEiaNtSllhYCDqntuacUqBhNHTxIJOM4cprgDbkgorysBrEweS6YWV4bIZVXHqbmbksWSPDY6n7EMavXh4fva+Sw0t26HNSXEbjfqM08xIAwj2d8kIJLSQIK6jSRBWgBXbJNPUQZe4MguNhl79KA6VMaAlWMyj/XEyJ3ICZjbMDhCNvhlCWZMASQIJfZGB2NpAJsseUQLf+Po3cNZJR+I5Jx6BL1/+ycL1e+EwML3deIuqpDpRYRm8sHyjCqsFAPC8BjjjAA9sILljkJgS8bTQybtmcZgtyUYRZ+AVy3czFxYgMBDNajvuE9qAszQDUd1VNTn3SqHtE+paG4jgWizstx19zxLeNqYNl7lolvTCApAt1DNQ1IjeqBtsIAJrrHlIxUAlDCRbgCwYMMdADM1YkDs2T4gDaRNHv1vUC8uqWAqTkc793nvux/d/8AN857qbUKvX8eoLzsLTTjkdK/bb37IX1tF8Z4vpLUCy+LJSuFMvLA0D4YS27okkxAJkaGgedo5uEmwggOuaA+GUOBCS3XjtbSCtdnrGjTPwihNzRnOFc2EJ7Tn9nnaoRNFErWMvgkpEpxk0qLWKImAg+jiQ1FhSDIRnq0A1RnRHGqzHNBttFJjRyjIQn5sz5OrQ38cMKqzkc1/DQavpC+cClpM1ZxGAQ0b2055jAOYsOEA5JkPMhcWJw2XhuzSBkeiPbtiM3366e+ncT359flDiX+5/CIccfAj6BwYAAMeccDJ+8aOr8Ko3vtW6nyoXVg6KMJBUCpEyMBjR9QwkUmEBK1c8BXAc8PEWeDMQKgP9s7JHqsSBiAIlT4UljK9N2p2TUiaQMrmwoiqa81EkutOXk43XTF7CPlSDdZG9vbPQ5hYMRNrlKHLjNUEXB1KT1mcNtw7V2l5AIJR149WoC7PQXzcL/6idubNrKftfxE7y3Hift+J4/TkG7LfqqXJxBQ4TGEjKiD5xDGQysGr1/rj55puxbeuTGN27F7/5xc+w8fH19g1YONx0A9NagBS+Qd2OAyFueGEIvNkEiHDKM98IxgB/zxioFSRTXLQwI5KVpGWcsgVq9jWL42z7BFZPK/sV11ijG6+NDcR8zu13jZMW56TfxjSlwlLHKnvWloVZgMidCd99nr+8lqr3OWmVYcOtK/e7yCqxIwZi2Q0BGBzU/3Tis77/ioGUB2KSC8ugtgwHcOr+pxo7Xrbq71KHdD+1JwgQThRnFJjIVCaTgf1X7YuXvuyleOW5Z+LVF5yFNQcdAtctpjDqxY6E01qAFFZhdaIT1OXCItLuokcUBBISgOXLjwxWZqPj4M1AgJxw/CuyBpqaJDhPbw2X64UlDMf3Ce6wZPdgkChIcQYS19ExkMiIPuAa1SayjIwgG9G157sgQQI3XkMkevRZcgOjnC1t1TgQCvaWFzDg9mvLFQEv8Qxn7VOugIB6Tb+hmPhsnXDsLLSFe8IRufEams0bNmOYNy9tHyHNTy0yEJ/8JCWN5WQ5XRgIADzveWfje9fdiK/+8JeYOWsWllvbPwCbxKvdwLQWIIWNRB3tSKjzwtILEICCdO7xRAv4e8djBnLM0edZ90W+tLdonheWKEA4obF4KHVejfjNaitbhaX3wgoZyJCnXcYGwkO/UlWN6Grd3qmwSBW0nBuFosJAACzqT8erzKjpdhUswEAy9pnPgl9Qexvtfa7mJkuu/tADZ8JhLGYhqS1tNci3X6n1mKYpz3GEvFscLiIGMvFxID0FAVu3bgUAPL7+EVz7w6tw5vMvsK+fs/NptzC9jehFBEiHRnTdxB29PM5An9QXYhUWEIzT3zsWM5DcoQrukTIDyTWiC+P0fcLwYQvTBWxVWCVzYUUq/tqgXo8ejNEgfIQKWvt8F1VY+kDCNANJ24q41i4jji19ADhkJG0UnlGfqVVhFbmkXhjRo/vMCamwP1kQuYxh3G+j7rqx8DW+kpoFQRkEcSCtcDyCM4StCmuayA8AePs/vgO79o7Bq9Xw7v/8L8wcybKdqqjceHNQKBNvnotIXn1N3XHfjze0UXprt+LxUZvD3zuebChVoC9ZTZefCyv4yzmBEzDjpJWp84wxq1QmgIUNxGhpBWD0wgomGl2gsWxEV8536e33DckU07mwuCaVScY0rCzXgaMWHpo6NLM+DJWqSO7CmSgXiV7EBhIOCUB0P/T7fwCBR9S472MYkRE9wwZS4tXTtZSOA/EDzzbY6/vL7KmybNE8K88pW9imc//vz38Og8sPKdUHY5qYownAtBYghQQClVu9JX2pP0bT5+EDrfbFm4IKy/fh7x3V7Adi6ksI0JIZSN6OhOE4W22Cw4Ch+UOZ5bPSued6YWWosLwB86MVbyiVMRbO9WSpGyqslkGFJQo1de94Hrry6tskjfA7sXFEqszsxgwNUyE4lppklvGbZKFowoZIhZVnrnGZg7FwURR5YZnXHMUZiNaILqqwiMOJMgpMIAOJ0rnvbrbxl2170LfSfmfAPQ/djeHZNQzO7GwPm8KovLDyUcwoXlARbNFX0/cDN0LNm8ZbzdTb1N65N7aB5IGTWYDYMpBWW3i5RFiqsIJxZM+W+kDC8O9AVFSaiBGbEzL7Cxa/ciBhdySIkYGkA0FS53LT5pD6ed99900VWTa4WKvC0rNYHcpHols/+tFrwtTfX1aFMRa8A0EfQV2TG2/QlHqdXmzDEI+yaCgK3JQRnVALGYgtxel5Ovey3XU6TGZOZtpNTKgAYYw9mzF2L2PsAcbYOzXn/54xdlv47/eMscMKddBLG4jmx2j6XJvgkMJkiuIP2N41GkSi23QlqK24YEQnwzhERC99q03Q7JmkvsJZc2IZL6zwXL1eTxUV++Ncv8OjWDZaBcvnGQJ218nL4XNCnyafe2qPb9mPmCLWZJogZeGnltl/ZKV2seEye0VAL3JhBfde3RddjidxQhtIVIdAxkWHFFYTo0+XG4uZEy46jMWeaMGOhEVVWOXRW9nTWWesR0b0CRMgjDEXwKcBnA5gLYAXMsbWSsUeAvA0IjoUwPsBXFGkj6JG9M5sIDoB4sPRrQoJQTp3oT9/917rDaVS0crimAP9QmbV6HSrZbdznWkiZkZ9O4uf7UwGglDlIoexcEK7TVl5GMNxGc4zhvs/+FnsuX+ddtw28Amo6wSIOCZ5URClMtHeLil7reE3OnLOGqg2EELNsdutLvCMKiFAstKLSIjUULrfjqTLZ2AYa0cMJN+IrsOsxlDYVoKsTA2e46ZyYcXszVqF1WMGAnTOJsqgRzaQiWQgxwJ4gIgeJKImgCsBnC0WIKLfE9G28OuNAIplySt0gzr1wtKpsAIGQhojSKDCEhjInjFrG4goGIvGgVBsA+F6nXMBFZauLwduInS0dgxVRSOCc6DZ5NoXOe2Fpaqr4mvbsQvt3XuM486DzwmNooGEkQ1EB8ZSk4TJW2yfkX3C8yJbIdQdSwZSMhLdlPBTC0HdpVVhSU3JDMTEBIz3ZGhJcF44liVAXMGIzonDizYcs5wLOptTy1UuU4vKdxdAl7hzAjCRAmQJgEeF7+vDYya8EsBPinRQODCwozgQDQPhfuBBIwc0EgUMRAAfHc9gIOmfgUQbSCoOhHIfisQGojdaFpAf2tWuw5IkidrJQmgwcgWVT4+O+rkMRJc4MTrGx8bBx1soi8AGYtgPJBqnEkiYce81AsRsq5GX9oT+mv0e7xMuQJDE4GhVWAIYEhtIZB0xBxLqx3DiAjXHVL1hdvwItrQN2hL3RLePRC+PaaTBAvsrsIHo/Vt1BRl7BgIB8g7D+dcwxm5ijN3EhYm5qAChrA2b86CLA/ENq3zND+ePjhsj59OqJialc5fceC1VWO22Ib6AMctIdP1kVfPqya+Y40llGu/YqJ9rA9ENK0qx7o8347xiZeAToaExoqcMwBr9jdGQ7kgvK8+QIEx6bokwVBuwHDkrvmhCCRVWJKg1Bn+Syqa8sCjDBmK4JRfOeaZybGDI7OYqZuMNUplMcSM6UEoY/NPb3oNTTjkVZ52UCNjt27bionPPwGnHHISLzj0DO7ZvM9ZnlmrRTjGRbrzrAYg7/ywF8LhciDF2KID/BnA6ET2pa4iIrkBoH6kPDYnLxGIj6nIcSNPn1k5BfLwFpgleAwAmGQ0p5cZbLHtr9II0Wxo/WO3AMk5p7m/dbWCsvScqoBtA8pnpd7YbHTO5BwsqLEOkOkNwL/l40zzwHHCCXoCk5IfeBqK9+046y24mA5GNm0QYrmW7WsdVUc4GUkyFlQxP/u18RX4Sxn3BBoLiqUzWrFkD/DZ9bGTeCjzx+K3aZz3lhcV5kspkAlVY3U7nvnjxPPzf7b/OLPP888/GOWefh/f+27/Hxz738Q/j+Kc+A69+0z/icx+/DJ/7+Ifxtks/oK3PXLcjjYstJlKA/BHAKsbYSgCPAXgBgBeJBRhj+wD4HoCXENF9RTvoKQPRPHkt7lsbQPl4C05dr9t1neS47OuvMBDLHQmD3QjVWUxOhVWUgfTVB7GjtTU8r6krG9E1RcZGfdQbqjCVGYgulQkAUKvdEQPhRGjoVFgpHRpX7hMZ0ggzzwPxRKDJUexS6fTvS4R5jRHrsZdKZVJUhcVNKiyCuJwmpG0gUV297sEcBxJ4MibfFyxai/tuvUpb1nNcKZ17wf1AStCBRzdsxrWXdy+d+ykX5wclHnPsUbjntodTx371k2vw5at+DgA4+8IX42Vnn5ohQGo90blNmAqLiNoALgHwMwB3A/gWEd3JGLuYMXZxWOw9AOYA+H+MsVsYYzcV6qTgi9GJANF7YdkLMPJ9oxtvOssmkxiIYAMh5F5z9CK1WhzaJ8gwKesK6la7w/2zk0oZgYSm7wAwNs7NXlbxZw0DCQtQuw1qlmcgPgcaefuBEKWS+WXZQJjrSdIPZg0WY9IynbB4cI7dwEsa0QvlHIX488oqrPRlckozEMD8PAXH7fj6MimtuwiXsXgLBV/0YLMRIL3xbJ0wPLn5CcxfuAgAMH/hImzdYmZFrGCW4rKY0Eh0IvoxgB9Lxy4XPr8KwKvKd9BLBqL2pU+kqGJoaD72jD0JPjquPV+TjahGG0iGITcqEZ5utcluBVKQgcwdWogHnojO61RYyUdTMGxznIMPaoSPuLo1acfCOcgfLSdAIj1+XfPkp35PIpWBGCLRnXodfDxVNG8Qqc/7zszyLUmjbCoTa1Bwj3RxID6RNHTCeGgDifYG4ZzANMvSrGFLPgg48MCT47HIcB0nvgecOGpugTgQ1zXaaKYaujZKzgF34uwh0zwSveBt7vJ+IIBdcr9jjroQzHWMXliNVNpvlvbCktR0tkb0Vtty54OMQrrJaumc/ZNKeQyE6YXMeJNrfwrFDq2MJ5nU/bEx88Az4IcaFkcTZZmybQuG8MGRpWjv2h3aXdSBOY2+9GGTGgdQWQQRDjbs0qfDRHthESU+ALp07uIRvxADybgnOhjKKnEgUUEbweDVJseI3iXMmTcfT2zcAAB4YuMGzJ6bk1OLsQnfE2RaC5CiRvFu7wcC2D23p5/2L9CGhYcYHJwdf2ZM9sKSVFh5cSCRCqutT19hu6GU2JaI1UuPTmaRHAZiKtIc5wYBIX7WCCfxvIHN5aHNgxxhOsgMJMIrL7sHzPOw6/Z7tRfk9PWnrjv7mUhUWNH9PXyCBUgRBhLEckQGe7nv9DPlE2EstIH4IgPR3N8s+cFkChIc1JaVt7StFYkD6eublJi+UtAM9JnPfg6u+uZXAQBXffOreObpZ2W3oYsG7TKmtQApvJroxAZi7Ct/DIODg5lMZXh4QfyZSW6esgord0tbQYVlKisezWpOx0AOXnBiWE8voMQVj+n5bbX0mzPJ6UCyZJ0/1okA0f8Y6UDC9MD52Bh23n6P9prdocG0aodnMFNxZR/+nT17tqGwirKpTIogmaDVdlIMhPM4DsRHwkB0Kqxc2518wKD/FONAOBFqYRCmzVzgDQ9NGxvIW974DrziFRfh4Qfuw9MP2Q/f+eoX8ao3vQ2///UvcdoxB+H3v/4lXv2mt2U3IruMTwCmdzbentpA8ifjspgze7nwzUHKJVQ0qAMWRvTgb6ulX+UbK6gntJPVwoXh/iKc9GORDolMIs4U3NKnMkkxDG2godBWRwJEf070wlKoPyFQQWr0ybUZsxS7RsZ6O3luMyWNYYwTzUAoEd6qCiv9nQCMtsO9OQQGorumrFsSFE+3zcC071bNdQUjOodbIBtvffYcjK0vsK94iGWL5ll5TtlisUU6949+4j+w88kmhlak07l/8fs/te6H9cBrYFoLkMJuvF1O5x60adu3ueCCBen00Gk3TykXVp4RXUjn3qn+0zhZhavDzP1AwoLi13YrESD5gYQ6+0oyB/kl40DaXA7cTJAakvRsvezDj+Er/7wSXJNRuT5/kTWrExkmmTIMmuqi3DNcxogOnRuvpuu9rWRzJwBa9+voeCEYbosLB4REBViLElFadNC/fDlGb7214ECSdO5bR5t4ZOco+oukc3/wbgzM8DBjbr1Qn2XcjRVUNpBs9DIOxKwOsvuByCfAYWCazKsrVpwQfw5sIKZAwvx93UUGYqO6yN7n29RAuLWqYZKPS0kqrFYz+NL29ewo34iOeGKh0gLEzgYi35eZM2eCfK5lvYPL903bQLKM6OKq0LBaN6NkJHqBKoTk3svBnDpjfCRAkjgQgGlucOZEplso6+wiiLywghNBNl77QML6QQd2YVou3kIpEtCteX+CVVjTWoAU/mU6MqLr69q6BZLvgzGGhibPz/JlydanjDlmG4gNAwlPN1sZe0CQ4bOETAZiiouQ1RzC91aTw/UCU5Qu0lwUxlyzlI3bcljpXFhtg5E36DPVmTq+dhveLFX90Fiyn/U9DZpOGEgxBVaPVFgGI7qundF22ohORNDF1mayMvNolCOiCktMZWKzkFt21JHxGMug5+aTTjtkbMK9zqa1AJnsZIrBcdhtSepzwGGYO3tlTsG0m6ffHE33l7cjYTjO8WbG5J9qkIzjNzKQ8MHMS+curyxbTQ7Pc+C6gSeW2p/8WdbBB40y5oC3ygsQ0wZOmTaQEDNWH6QcG9lnn6BOjisrgDQtK2EDmXAVFszXoWtmbzutwuKkZyDZrs1QJ0sTA4HohUWCF5ahbU1XE6zVmTpg6GjOs8G0FiBFGchEGNE5CAv6FhoqybeX4Ygjzs7sxmFO6kdvj4lpyw2rfs0wTQJEeYcJ8KALNCLjapdFHeV4UgXPb/K92QySTzoO045PVWHpGEiony+ZyiRgIDZeWPr77O/ZrW+YIRGeGSxH7EjZtMoCZVaURddZsQpL6mtU85uJyRSB4JocTar8PAaiyA9D2ZrrIopw4gVVWADCFC0lJUjZamX664qQK6fyLILpLUAKpzLp4GYauuJEePeR+nw0jsLlCSef+A/pQ9KbIrvx+k1BgJgM12IPEQNpWV4rEepQc3QF2rIsIzr090Q6lmYgwRfHYXoGkqqnCqjgtgQ3zHZ7YBmZXlh5bmAA2nvN+5BI3rkGCAyzqBchyhlXy+TCivoTsW2ves9jFZbAWkwCJCs/mFaCmGwggrosSmViO0kzgcEUxXQjLqwHdGtaC5DCdL6jSHSDDYQTzj34Au25dI4rABTEhKQhSxBHUWHN8oJ030SwduM1qrCUVT0woEsnTln69sC7I98LS1VhgbFgL20tAxFsIEY330B1xtvlBIhv6YWlvTbmgo/u1dZlQnxHnsEYgg2kWHh2uU3RbFPuROAGG8iOvSqDj1KZREKHE+BoMh3nG9FJPaaZsj0xDgSEuuMGk5i1AOlkTu2dCHnXOy7Fqaem07n/9Krv4jknHoG18/pxx81/smhl4m0g09qNt5fJFM0qLDM8r0/qP3+8jDlxwCMRwW+N4aJDErVX7o6EYRctowBRjesj9ZmGtrLdePO8sII2kjKtJg9sLkYBItdLT0TxypFz++2BJWQzEPGLmgrGqzXgj4/CiOiScn5mSnRExVVYJVh0YRVWaK+QJ59dY74y3PE4kDBhBV5dJ0CKjcEkWGuOm8qF5ToOXDC0bSfKEiqsyUjn/rxzn4tzzj4P7/tAks591YEH4ZNf+iYufevr7TurAgnNKLoa6ygOpIQk7++XJmaLH9MRGIjfHAVjDt5/8kuSMRDhoc98EXOeejxmHKT6o8cMpG05XiIs7V+sO5H9ohkESGryZOlLbjV5nKi22dQIH+EzJ/lI1F2owupAgJgZSNJfkFAw3X/f0FyMjW3XNywyEFX2SQXLqbCCMU68Ed0Uib5rzEdNmjGiVCax2osDbk2nwjKPQautMkWiO45gAwHqjoe646FteV8CU1Wx+/Hohs344RXdS+f+nNfkByUec8xRuO/Odalj+x1gH38CoCeR6NNahdVLN94yVHB4cG7hOsxJBEh7bFeQ1z8ZBMAJex9ch/FN+hVR9PK3rG0gwCEjB+oOZ3thWbjxytHMrSbFc6ZulzzZiC6XkPejMKXHz0J2JHqqM+Xy5u1zKHjTFAHPBLmQM1mKbrw98MIqzEB8AGBKvb1NH0ODaXtZU5NMUctAsl4fg71DawNh6f1Aaq6LwVrdWiT8LXlhMebAHy2XdNQW01qAFI2ynIhkilmYP3//+PN/fnATFi86NLcOQxIH0h7dBcdJL/mICK3tO+Hv1uvio1G2WvbjPXPZs7QtZa52yZALi8zfm019DiwA8OClzpki0SMw1ym1K2F2JHp2/2tPfCl4q6k9l9oUKW+yFFVYBdETG0goqOXr3NvkWLooHVEd58KKBQjBrWs2C8sZtjpEvRtvTUjnTkTwHAcz6n32NhBW3ojeS3RlhIzB32N2+ugGprUAKa4C6K0Ka/k+R8efBwcH8c/v/H1unWAjmJBFjO1KZ/ElAojD370H7d36ByO2gbT110pCmWiCOGn5Sdp2TB4/scE4T4UlfW81OTjXr4gH0J+bDiQ13zoOqIQrr5/FQMQvmgHsd/gZAfvSxaCkkiRmjSCRNISCNhDKEeoG6II2c7oBNPuBjLc4Tjp2VvydMWjTudc0u01mvT9GFZbmRrqOm6gKEaiwFvePZFxNoaFMHXRhjESEdiVAMlDwSeiEgZRRYR100OmF6ziOyEB2QvGaavngzSZa23cYxhn8bWXaQEQjrrlMVioT+0j05HOrycF9vW1lbn1e6qXRpzoR1GMOAy+xK2Gb7OJATM8Kcz34owbhHamw8lyteazryh6srm4vsvHygIGIv1OzHaSfOfm4GfGxei3Y1hlAvEcHEVDrV+OKRPuVFpYqLM9xUiosz3GwetaiAgykgziQnqILY+TcqKnoFqa1AOnlhlJlfs/585YXrsPgxuNsje1WOm7t3AUAaId/ZYj7gegLGD5rwLMEro0Ki6VXv81wK1uusX8cOLJG44WlaTs6zJxS6UyybCCp50myt0Rgrgtf58orqKZyH7OoQFFmgJI2kMIqrPRfIDSguwyNRrJ75sCAi5afpBWJ/tYGdCos/f0EoJUrxkBCYU/0iIGcvHytvQDB9LCBvO3/eycuuiidzv3aH12Fpx+yH2656f9w8YvOwavOf05mG7zdnnAGMq29sKY0A9FuipAPx3Vjj5L26C5lzBHzaO/SCBAhdUi7ncEuRBWWYTVOWQyEwcqILn8dHw1Xqxrb97mLn48fPZHsfqybbzgJSrWS0ej2brykne8YY/DH9K688bXmPCqJt1ZvUpkUd+MFIGVS3jXmw3UY7r5/Nw5cFeRzmz+7hnW70skUQUBjQJ1Wir4+puKe44IE+5zjODhp2cqwDzO7TFDcBrJs0Twrzylb2KRzv+xjH8LeHW0MrUyncz/lzLPtO/J940KzW5jmAqR3gYSFly3W80K6XUdIptga26nErrR27AQY0NZRU+bEzbV9DmgiglM9Zl0T5biMmmwgGXEg42Pm9i44+AJcdMur4kmASLXApIzoYBNrRDfNuozB10Sjp1JcZfnxMiQzeuHnsaQNpPBCS1Vh7R7ncBjwzas34r1vDZxDDthvEH95aCuAdC6sxqBGhZU1bEv1FRAZ0Qk+53EON1dMZ5IjQMq48Ubp3DfuHsPju8cwuK/qtWjCngfvRr3PwezFffmFJwAmVXe3ML1VWD104y28hLJdWUrNMseL37b26C5wPz1JtnfsDPTwezWrYMeJDd9tH2B9hvVBzEBgnOey1SXhBJ9LQFhq4sgSIEC+g1JKwwQqxUAyjegp9Z759/bHdHrlhP4F12yuH7vx8owfwFi3uP6lfC6s5FgURHjXvbvRDF3En3bcbLSJwmcheaj6RzTPXZfsDl7oxsuR7CxZd7zIsyO/ATY9VFjdCnqfaAYyrQVIYRXWBGTjNaHYtJBADCRs7d0BeRve1o6dAAA+pvHvdhK1g+8TvOGcTWwyguoyV7vRTJ8rQdJCZlyT/0puN56HtKlMUhKklBG9xe22tDXvd8Lhj+apsLKelZyLzEAwUffABhKnJREYyJgPokAA33FPkFBy35VDcBhD0/dTXlgDI5rcaoUnRH0Fz3FAEQORBIhVpgcUvx+dYjLlVUun6u4i/qYESGdGdKmvnDtX9qFxXC/ua3z3k8p5PjoGarf1e4LXvJQA6Vs2Uz82i4kud7KydONNBRLmCJBAu5NMXnLr0fzgOjUA1H0jung9XO/EHAgQvRE9msBsjehBIGH+mEVkOjaY6hR+TRJhEGHXmB+vGW64aVt83GUM46IAAdA/oldhmYahPW5UYXngIPjCXipJRl67e1NWfpQWBCUqdkvoVHEgGSjKCsob0TX0WLM3tlSjFAI/95CB7NmWWVZW4bBaLREgnDB8pCZFibzKznDjzdK3Byt0bTWpXPJZl4FXBGOS+kQjjIiABbP2A3g5FVbbmoFw/Uzj+3oBAmG8OY9l/BwW1qWUZCCFU5kgtIElx3aP+WiH3nP/d/OO+N1zmYNxv53Kxjs0R8dAuqTCChkIFwzmnuPEdrM8TAYDKYVuDNGr6VXdXcS0FiC9YyCahzNHgNgM7dMf342nnXxJ6pjjeGkVlmlEnqu46Dn1IKWDH6bhGHrqUnVc4uCyCAZyXvowG68j7SUi1xHVCuYEj2p9rX0+PPbyMz8A4ry0Ed0qnbvh2slvZxjRo7HnSZCoHEeRpUZA+iaegehUWLvGfLR8wvL/+g5aLcKGJwIG7DCGMd9PXXNjqAEZmbekAAXxQjufTxxOeO+ciIFYXWgHkejTQO6IaMxdCl+n6u4iprUAKZzKpKwAcTRpFRrqKkvqzarpC877ULorpxYLutboTmM95rrwpWh0b6APRIRWi+A4wNCQun2uOLIsN15kqbAiQkYEV96MKoOB5OXnCtJMBJ8DFZYsjIK/TznwNJDPyxvRDU+94sZrQHuPIQbH0rmq7H4gpRlIUQFC0QIiObZ1TxsEYNGiRXBdYNPmQHgzBjTbCQMxquQMbtFGGMrWHS/wwor23Y0gusFlQGS5RdFL+fEv73qvks79skv/CWc85VCc/dSjcclLL8DOHdsz21j47IvAx/Wpd7qFvy033tIqLFdZQrn9ffB3ZOgXS/5ojuvGgrE9ajaAMcbQ3pNWpXhDw2gR0G5zo5omGFv4N+NNokwVFosnhJorGeqlJsUu2poMvFKriX1Zo8JK2UU4LxeJnqHCShEQblBhAWjvMgj2RDJnD6K0CqtcNt6iE0gyvKTetj3J/ittn7D5yeDeO5INxDyGjHPa8mYGAgR7sDsSe7O9zsLp3I87AY8+3tt07mc/7zk495x0OvcTnv5MvPnd74fnefjw+/4ZV/zXZXjbpfrN7ABgySkvxrqvXAo+bkoA2jmmuQApWLwjBpLuzJsxAH+jauQWOivVlSe68Y5nG8B8SYDUZo9gL4IodNMqO2W66NSIDkKf1685LnwVVVh5GYKFNBM6I7o8XH9vcXre5mSk3WJ8QNZk5O/Vb2trtSd6qlxRL6zeqLCi8YnrrR2jiTdgs0nYFKqwGBjG/Hb8u2UQ2qwONcf0RSN1VVsOwixALYoKkEcf34zvff6IQnWy8PxX3pxb5uhjjsKD9z2aOnbiM06JPx929LH4+dXfy23H8bwJNaRPbxVWYRtISSonJHCLUJ83y1C4M7huLZ4k2uN74Bp05MS5klDRXTAXREEixSz3XJs4kCwjepSmnQgYqA1KtaSuhAN+zh4lqTgQTddc0qtwnSdaDtqc4DgG+wZJX0wMxLCtrZ1mitIFC3lb9MqNN6qXHBMFCAA8uiER3iIDMQqQDBWW3gRiHjMDQ9v3NQzEQoWFaRIHkoPvfe3LOPlZp+UXdFx90HGXMK0FSHE/+nIMhDmu8pT377PIXB4MK1ccV6ovx63FLw9vjWHVTMmTynHgACCfqwxkwXwAIQPJ0mAJKiyjmMlgIBTWBRFm9yd7njhQ71MRAQIg5UKqMpA0K9G6MuegbQ7QV2wg+jnMMefCSunfDCDEXliZEeuGymWe4eLrLFKcKHaPpQXIpi1pG0jC3vLVg+rJYuUZA1q8nV4k2QYSYvp7YV3+0Q/B9Tycdf4Lc5thjBkzd3cD01yAFLUOlhQgXl3pq3bAAZl1ygqriIEQ98HbLXz+6W9Kj8V1ceLCtaBWS3kwZi4JhNp4M2NlK+r5M4zoWTaQiIGAgMXDy+PjHjzlPokqLN8nrB06EDMwAzqk3XhVCUI8PX5/tLgA8TPdeEUVltRZCNerGfdFj+WHvqpasODzGLiv9saILtfbPZ4WINu2tcIxAWMWDMQUVwMkt+obV7wI7XZTOqrCAUOL+2kbOmDtVDOdGcgPrvwKfv3zn+Cyy79ktRkZEVUqLBMKx4GUnNQdjQBZdPhyQ2kgcPstL0BAhPbYbjDXwxFL95ObxpXPfAuAIK2JiPrIcLAibGUwC/GLrbeQro3QBrJ6TpIXqO71pQUUktsWsY+vH/w1/PrYX2X0mfyVf17ZLlLGjbfFCW6GfUjoTDuHNQZnwR832F7iXFg5gxACCYtAZgXW9YhQh30uJh5euyhQRwUX7FlPOxN7R/0gYScI46INxDgGmGVCePyuW67GhkdvCQdhHh9joQBJMRBYaySK5sKaDOhG+Ntf/hz//YmP4P999TvoHxiwbEhVdXcT01qAlODmpbphtYbiUppZHuW8ZYCEgbRGdwXqLBmcY9aswP7SkgQIZgQre1sGknc/shhINMEev++p8fGB2oBGhRUcaDU5HIdh//33xwEG9iYGeWndeGWBUjIOxDPo99JhIHobyKwF+xu3tRXzQWUh2Q+k6PNIpYJhiYBZgwsKlZfMTRgVHCBWv+5dqNUcPLmtCQIw1m4n155pRDfYnoTPD93/v2IFIxQBogv21WGa7Afy9rf+k5LO/d/e+f9hz+5deOV5Z+Kcpx+L9771ktx2qO3D3ztxNpBp7oVVVICUZCANdWLM7aqsAAnZTntsV2B7kdsV9gFv70x7A/X19YExYOfuNmx00dmR6IDPzXuORxPZkYsTP/WZjdl4YnyDtr9Wi+dnuGdJLi/dTyun3yrLQDxjHIjYuF4PtfLws/HYAzdo61uHd0ReWEWFQQcqrKfs8zT7biQjus9J2V/GdYEnnmyCE6VyYRnXLZmZn5Nz99/5czz11Ddnjs9hDG1JhZXbh4CiKqxli+dZeU7Zwiad+39++N8xvtdPpXM/78WvKNwXtdto79ptjp7tENNcgBQ0QZad1PuHCgkrxljptCmeWwcRR3tsl1ah7NQSVYSJmn70Cw8bVR1yvqcscNILEAJAvspyFg8txf0770wVjG55czxgICL+fOxNqe9pBqLecvmaygQStrIYiNyX5vasPfkV+N233w7ebsPxpP3qeSL9zHdWMIT3IJlidM/OXZ2/Wo0Qsb/ot9gz7sNzGVrCRmA+BzZvCQRIKg7E6IVlfoXE44+t+zO2b30UrtfAmUtWa8szlFdhlUll8vD/Benc1+3YiydHm4XTubsew7x9+vMLp9A9ltTavgO12SNda0/EhKqwGGPPZozdyxh7gDH2Ts15xhj7RHj+NsbYkbp2dGht3w7y25jfGLEfUEnq6g3MLlR3vxmrsOmJe/Hlr7wKO3ZuKtRXzWsARGiN7oLubSQ/CejSUVPOgcahC3Do91+sbV98x/IuiRsYSGKwTI9v9ZyDlec+ellbzXTiwN0v3qlVZSVuvOrgxps8JUS4bm/yHLQ4wTO4YdlEovf19YG5HriS0j3JVpBlRKe4AAo/j5mbfBkQyfm1a9fa9xOOP7oFu8c4PJdh+KiT4zLNJscToQAZa7fjskz3zBLh7mu3wDcEkkZHv3vma8AA/PwH7wED8M3n/YN+gAxo+W2pL7tcWEDvI9HL1Oumlk1RdXcREyZAGGMugE8DOB3AWgAvZIzJT/HpAFaF/14D4DO27T/8uStAjOGhV37DekxlGUhtxhztD+r0qTl/AOA3F96Ec1deiJv+/B187BOnYjwnIFBEzEBGd0JnSSQuCJBRfUr3/f/5Gcb2lViHDA5nUpcQkMxMAk5adbrGBhL8bTUpP/MsS8+t4li37Wzhyp9ugqDBAzXbKIpAhWVS76X0e+Zhare1Tdx+M11QKWEqZVRYRZ/hIOlgsW4iZ4XoOnaN+XAYcNDbk7Q7RMD6jWPweT4DefyO3dj+2DhOWfAUfYdh1TP2PwIEjttv+jbabbOHXeyFJfc1QYGE8jinG7S7l3YJE6nCOhbAA0T0IAAwxq4EcDaAu4QyZwP4Hwre3BsZYyOMsUVEtEFtLkC72cIT116LHTf/GcPk4br19rpJ3hzF9jt/U/hCeHMMIMLO2+5PHad2G3XU8dvHrlPqnHfABThr+fPw8l//Pf77iy/Gs57xRqu+tm57FNxvYutDfwJxH9c9elt87kfPvRQAcN2jt8EFwMfGsPO2u9INMGDXrRvBatlrg523bkBzU7Dn+nWP/05bZsP2dfjTg+q1AcDev2wEAPz+EfX8zlu2BW75ADY8Oor77tiFjY8GWUGv2/Br45gYgFse3I3Ht47j0c3jIAL+fE+wevrqDzdgtOnj/a+8Brc+EPTJx5vYedu9cX1q+/DbKmvyfR/XP7wLNYdh3dZRbGv5+O1f1FVZM1TR7LztboxteAIA8Ojd6vUxx8GO2/+ExryFqePb7t8DahN2PRJe6+OqrYQA7H3kXuwYHsGeh+4EiHDd+j8Z70m6LmHjlr/gjvuTMW3a8gB+/aef4yMf+TBuueUW7Nq9Bzfel1xbqx0IkD88pP8dddiz1wcIeGDTKH5061Z85KePg3PCjtvTKseHHx2FTxx3bHkCu1uBPcr3CetvS09Yv//CerTHOd501Etx3WN/UK8rnJive+QetJqjcL0G/ufkC3HdI/cY7gPw5yceQrPdTpXZdc89GN+cn3LkTxu3o+mbBfGCNseucXVx0goFvj9azKuJOMXbOdsiIv/tUX3Wg9z6zXFsvyOYO5pbt2J8U/dSsYhgE5VoizF2HoBnE9Grwu8vAXAcEV0ilPkhgA8R0e/C778E8A4iuklq6zUIGAoArAZwL/72MBfAlskexBRCdT8SVPciQcf34tprrz1k4cKFxentFMLGjRu9U045ZQPS92I5EeVb8AtgIhmIjjjL0sqmDIjoCgBXdGNQ0xWMsZuI6OjJHsdUQXU/ElT3IkE37sWtt9768MEHHzytBbLv+3MBbJno52IijejrASwTvi8F8HiJMhUqVKjwN4Xzzz9/xezZsw9btWrVQdGxN73pTYsPOOCAtWvWrFl74oknrnr44Yfz9pSYcEykAPkjgFWMsZWMsTqAFwC4WipzNYCXht5YTwGwI8v+UaFChQq9xqJF8w5jjB3VrX+LFs07LK/Piy66aMvVV1+dMrpeeumlG++777677rnnnrtOP/30He9617vMCfl6hAlTYRFRmzF2CYCfAXABfIGI7mSMXRyevxzAjwGcAeABAHsBFI+U+dvB37QKT4PqfiSo7kWCrt+LjRu3eF//YvfSub/oFTfnzrunn3767nvvvTe12c7s2bNjy/+ePXsci1xYE/5cTGggIRH9GIGQEI9dLnwmAK+fyDH8tSC0A1UIUd2PBNW9SPDXfi/e8IY3LPn2t789Z3h42L/++usznYl6cS+mdy6sChUqVPgbwic/+cnHNm7ceNt555335GWXXTZ/ssdTCZAKFSpUmGZ4xStesfWHP/zhxOxqVwCVAOkROknrwhj7AmPsCcbYHZp6bwjbvZMx9p/C8X8K27qXMWaxdVlv0cv7wRhbwRgbZYzdEv67XK43mZiIe8EY+6ZwvQ8zxm4Rzk3ZZ6OX92KqPxcAQETObbfddvBtt9128HXXXbc0Ov7tb397ZL/99hslIjz00EPLbrvttoNvv/32tbt27YrzvGfcj8MZYzeG13wTY+xY4VyhZ2N6J1OcJmBJWpdTELgu/5ExdjURiWHkYlqX4xCkdYm2NfwSgE8B+B+p3WcgiOY/lIjGGWPzw+NrEXi9HQRgMYBfMMYOIDJkR+wxen0/QvyFiA7v/tV0hom6F0R0odDHRwDsCD9P2Wej1/cixJR8Ls4666yVN9544/C2bdtqp5xySusd73jH4z/60Y+WvvrVrx5xHIcvXbq0+fnPf37dtm3bZo6Pj/cdcsghd+zatWvwkUce2eeggw6KwvO/BM39APCfAN5HRD9hjJ0Rfn96mWejEiC9QUdpXYjoN4yxFZp2/wFBJP84ABDRE0JbV4bHH2KMPRCOQZ+HvPfo9f2Yypioe4GwPQbgAgDPFNqaqs9Gr++FFRYunNu28Zwq0l5emWuuueahnTt3Dj7++OOL16xZcz8AXHDBBR4ALF26dGNU7sEHHxyZM2fOk4wxzJgxY4/v+974+HgNADLuBwHxtqAzkcTeFX42KgHSGywB8KjwfT2SVVNWmSUAsuJiDgBwMmPsAwDGALyNiP4Y1rtR09ZUQa/vBwCsZIzdDGAngH8hot92MP5uYqLuRYSTAWwioiimYCo/G72+F4DFc7Fhw+ZbLdruOprNZr1Wq8Wb3tTr9eaePXuGxDKtVqtWr9fjMrVardlsNvMCDP8/AD9jjH0YgRnjhPB44WejsoH0Bl1L6yLBAzALwFMA/COAb4WrrDJt9RK9vh8bAOxDREcAeAuArzPG9Buz9x4TdS8ivBCAmLJ6Kj8bvb4XU/m5MKEbv9U/AHgzES0D8GYAnw+PF763lQDpDSYqrct6AN+jAH9AkP99bsm2eome3g8iGieiJwGAiP4E4C8I2MpUwISl/GGMeQCeD+CbnbbVI/T0Xkzx5wL1er3ZarXiYMKQkaQ2wanVaq1msxmXabVa9Xq9nrdRzssAfC/8/G0EaiqgxL2tBEhvMFFpXX6AUJ/LGDsAQB1B9s2rAbyAMdZgjK1EYHBU82hPHnp6Pxhj80IDLRhj+yK4Hw927Wo6w0Sm/Pk7APcQ0Xqpran6bPT0Xkzx5wJDQ0N7xsfH+0ZHR+ucc7Z9+/bZs2bN2i6WGRkZ2f7kk0/OISLs3Llz0HVdv9Fo5AmQxwE8Lfz8TACRSq/ws1HZQHqATtO6MMa+AeDpAOYyxtYDuJSIPg/gCwC+ELrpNQG8LDQu3skY+xYC42MbwOungpdNhF7fD8bYUwH8K2OsDcAHcDERbe3R5WZiAu8FEEzAqR3Xwran5LPR63sBQPtc3HrrpJg8FDiOg2XLlj1y//33HwAAs2fP3jI4ODi2cePGeQCwcOHCzbNmzdqxY8eOmbfffvvBjDG+YsWKh6P6Gffj1QA+HrKyMYRbZZR5NiZsP5AKFSpUmI649dZbHz7ssMOmdTr3W2+9de5hhx22YqL7qVRYFSpUqDDFoEvnHuE973nPAsbYURs2bJh0DdKkD6BChQoVpjIWLZp32MaNW7oaB5LnGnzRRRdtedOb3vTEK17xipXi8QceeKD2q1/9asaiRYuaprq9RCVAKlSoUCEDGzdu8b745e6lc3/Fy8qlcweASy65ZNlll122/rzzztu/awPqAJUKq0KFChWmAb72ta/NXLRoUev4448fneyxRKgYSIUKFSpMcezatcv5j//4j0XXXXfd/fmle4eKgVSo0AEYY7snewwV/vpx9913N9avX9849NBD1y5ZsuSQTZs21Y888sgDH3nkkUklARUDqVChQoUpjmOPPXZ069atseF9yZIlh9x00013L1q0KDcx40SiYiAVKghgjP0HY+x1wvf3MsYuZYz9kjH2Z8bY7YyxszX1ns4Y+6Hw/VOMsZeHn49ijF3PGPsTY+xnjLFF4fE3MsbuYsG+Flf24PIqTBOcddZZK0866aQ1Dz30UGPBggWHfuxjH5s72WPSoWIgFSqkcSWA/wLw/8LvFwB4NoCPEdFOxthcBGnEryaLKFzGWA3AJwGcTUSbGWMXAvgAgIsAvBPAynDvkpHuX0qFbmDhwrltG8+pIu3llbnmmmseyjr/2GOP3d6t8XSCSoBUqCCAiG5mjM1njC0GMA/ANgRZWz8WpkThCFJcLwCw0dxSjNUADgZwbZAYGC6S1OO3AfgaY+wHCPJ4VZiCmKx07tMBlQCpUEHFdwCcB2AhAkby9wiEyVFE1GKMPQygT6rTRlolHJ1nAO4kouM1/ZyJIB/TcwG8mzF2EBFNqk67QoUiqGwgFSqouBJB8r3zEAiTmQCeCIXHMwAs19RZB2BtmMl0JoBnhcfvBTCPMXY8EKi0GGMHMcYcAMuI6DoAbwcwAmBI026FClMWFQOpUEFCmJV0GMBjRLSBMfY1ANcwxm4CcAuAezR1Hg0zmd6GID32zeHxJmPsPACfCAWLh8DGch+Ar4bHGAIby/YJv7gKFbqISoBUqKABER0ifN4CQKeCAhENCZ/fjoBNyGVuQaCqknFSxwOtUGESUamwKlSoUKFCKVQCpEKFChWmGHTp3N/ylrcsnj9//qFr1qxZu2bNmrXf/OY3Z07mGIFKhVWhQoUKmZhK6dwvvvjiTf/6r/+6qVtj6RSVAKlQoUKFDGzcuMX7zFe7l879H15cPp37VEOlwqpQoUKFaYLPf/7z8w844IC1559//orNmze7kz2eSoBUqFChwjTAm9/85ifWrVt3+913333XwoULW6973euWTfaYKgFSoUKFCtMAy5Yta3ueB9d1cckll2y+5ZZbBid7TJUAqVChQoVpgHXr1tWiz1deeeXI6tWrJ31nwsqIXqFChQpTDGedddbKG2+8cXjbtm3eggULDn3nO9/5+PXXXz9811139QPA0qVLm1/84hfXTfY4KwFSoUKFChlYuHBu28Zzqkh7eWV06dzf/OY3b+nWGLqFSoBUqFChQgaqdO5mVDaQChUqVKhQCpUAqVChQoUKpVAJkAoVKlSoUAqVAKlQoUKFCqVQCZAKFSpUqFAKlQCpUKFChSkGXTp3APjABz4wf8WKFQfvv//+B1188cVLJ2t8ESo33goVKlTIwMJF8w7b1MV07gsWzm1vLJHO/Zprrhn+0Y9+NHL33Xff2d/fT4899tikz9+TPoAKFSpUmMrYtHGL99Gvdy+d+1teVC6d+2c+85l5b3/72zf09/cTACxZsiQ3IHGiUamwKlSoUGEa4MEHH+y7/vrrhw899NA1xxxzzOrrr79+YLLHVDGQChUqVJgG8H2fbdu2zb3lllvuuf766wde9KIX7ffoo4/e7jiTxwMqBlKhQoUK0wALFy5snnfeedsdx8EznvGMvY7j0MaNGyeVBFQCpEKFChWmAc4666ztv/jFL4YB4Lbbbmu0Wi1n4cKFk2oHqVRYFSpUqDDFoEvn/sY3vnHLhRdeuGLVqlUH1Wo1fsUVVzw0meoroBIgFSpUqJCJBQvntm08p4q0l1dGl84dAK666irt8clCJUAqVKhQIQN5MRt/y6hsIBUqVKhQoRQqAVKhQoUKFUqhEiAVKlSoUKEUKgFSoUKFChVKoRIgFSpUqFChFCovrAoVKlSYYjj//PNX/PKXv5w5Z86c9v33338nAJx55pn7/uUvf+kDgF27drnDw8P+Pffcc9dkjrMSIBUqVKiQgamSzv1HP/rRg9HnV7/61Utnzpzpd2tMZVEJkAoVKlTIwKaNW7x/u7J76dz/5QXl0rlH4JzjmmuumX3ttdfe27VBlURlA6lQoUKFaYSf/exnQ3Pnzm0dcsgh45M9lkqAVKhQocI0wle/+tXZ55577tbJHgdQqbAqVKhQYdqg1Wrhpz/96aw//OEPk2o8j1AxkAoVKlSYJrjqqqtm7LvvvmP77bdfa7LHAlQCpEKFChWmHM4666yVJ5100pqHHnqosWDBgkM/9rGPzQWAb3zjG7PPP//8KaG+AioVVoUKFSpkYsHCuW0bz6ki7eWVMaVz/+53v/twt8bRDVQCpEKFChUyUKVzN6NSYVWoUKFChVKoBEiFChUqVCiFSoBUqFChQoVSqARIhQoVKlQohUqAVKhQoUKFUqgESIUKFSpMMZx//vkrZs+efdiqVasOio79/ve/7z/ssMPWrFmzZu3BBx984HXXXTcwmWMEKjfeChUqVMjEVEnn/o//+I9L//mf//nxCy64YOc3v/nNme94xzuW/eEPf5jUjLyVAKlQoUKFDGzauMV7x7e7l879P84vl86dMYYdO3a4ALB9+3Z3wYIFza4NqiQqAVKhQoUK0wCf+MQnHj3zzDNXvfvd717GOcfvfve7eyZ7TJUNpEKFChWmAT7xiU/M+/d///dHN27ceNsHP/jBR1/+8pevmOwxVQKkQoUKFaYBvvvd78556Utfuh0ALrroom233Xbb4CQPqRIgFSpUqDAdMG/evNaPf/zjYQC45pprhpcvXz422WOqbCAVKlSoMMVw1llnrbzxxhuHt23b5i1YsODQd77znY9/5jOfWfeWt7xl2Vvf+lbWaDT45Zdfvm6yx1kJkAoVKlTIwIKFc9s2nlNF2ssrY0rnfuedd97drXF0A5UAqVChQoUMVOnczahsIBUqVKhQoRQqAVKhQoUKFUqhEiAVKlSoUKEUKgFSoUKFChVKoRIgFSpUqFChFCoBUqFChQpTDLp07jfccEP/4YcfvuaAAw5Y+8xnPnP/rVu3Tvr8PekDqFChQoWpjAWL5h3GGDuqW/8WLJp3WF6fF1100Zarr776fvHYq1/96hUf+MAH1t933313Pfe5z932vve9b+HEXbUdqjiQChUqVMjAExu3eK/9XvfSuX/2+eXSuT/88MN9p59++m4AeM5znrPztNNOO+DjH//4410bWAlUDKRChQoVpgFWrVo1+vWvf30EAL761a/O3rhxYz2nyoSjEiAVKlSoMA3whS984eHPfOYz8w466KADd+3a5dRqNZrsMVUqrAoVKlSYBjjiiCPG/vd///d+ALjtttsaP//5z0cmeUgVA6lQoUKF6YDHHnvMAwDf93HppZcueuUrX/nEZI+pYiAVKlSoMMWgS+e+e/du5/Of//x8ADjjjDO2vfGNb3xyssdZCZAKFSpUyMD8hXPbNp5TRdrLK2NK5/7ud7970lmHiEqAVKhQoUIGNlXp3I2obCAVKlSoUKEUKgFSoUKFChVKoRIgFSpUqFChFCoBUqFChQoVSqESIBUqVKhQoRQqAVKhQoUKUwwPPPBA7bjjjjtg3333PWj//fc/6P3vf/98ANi0aZN7wgknrFq+fPnBJ5xwwqrNmze7kznOyo23QoUKFTIwf9G8wzZv3NK1uXLewrntJ3Jcg2u1Gj7ykY+sP+mkk/Zu27bNOeKII9aeccYZOz/3uc/NffrTn77rgx/84P3vete7Fr7nPe9Z+JnPfOaxbo2tKCoBUqFChQoZ2Lxxi/e8q7qXzv0HZ+cHJS5fvry1fPnyFgDMmjWL77fffqOPPPJI/ac//enI9ddffy8AvPa1r33yaU972moAkyZAKhVWhQoVKkxh3HvvvfW77rpr4GlPe9ruJ5980osEy/Lly1tbt26dVBJQCZAKFSpUmKLYsWOH8/znP3+/D33oQ4/Onj2bT/Z4ZFQCpEKFChWmIMbHx9mZZ5653/nnn7/1ZS972XYAmDNnTnvdunU1AFi3bl1t9uzZuXm1JhKVAKlQoUKFKQbOOV7wghcsP+CAA8be+973boqOn3baads/+9nPzgGAz372s3Oe/exnb5+0QaIyoleoUKHClMO111479IMf/GDOqlWrRtesWbMWAN73vvc99r73vW/DOeecs9/y5cvnLl68uPmDH/zgL5M5zkqAVKhQoUIG5i2c27bxnCrSXl6Z0047bTcR/Ul37oYbbrivW2PpFJUAqVChwv/f3r1HR1Xme/7/VqVKCBiDIZcqKiGBXKgkkIJwbMXLIGHZgQ6MjQT56Tk/BB1+BBvhgBfW0QEWHsVFYy9R2onoIbIcBBmIYyaCBG04UZBudPyRoAkoYG5FKhfCJVyTSjJ/9FR3Op3agYeNe3N8v/4isHvX13/q0/t5nv0JNPT1zsbPGXsgAAAlBAgAQAkBAgBQQoAAAJQQIAAAJQQIAJhMsDr3goKC25OSktKtVuvYzz//fIDRc3KMFwA0RA2J9jTXN+n2XRnpjPI3nWxUqnMfPXr0pcLCwmNz585N0Gue60GAAICG5vom25ji/6Tb/f7/qZ8r17lPmzbtnG6D6IAlLAAwse517kbP0hMBAgAmRZ07AOCa9VbnbjYECACYTLA6d7NhEx0ATCZYnfuVK1cszz777NDTp0/bpk2blpyamnpx3759Pxg1JwECABoinVH+qzk5dS336+sarTr3WbNmndFrlutFgACAhr7e2fg5Yw8EAKCEAAEAKCFAAABKCBAAgBICBACghAABAJMJVuc+b9682GHDhqWnpKSkPfDAA4nNzc0hRs5p6erqMvLzAcBUysrKqjweT3Pg56ghMZ7m+kYd3wOJ9jedbNA8GlxdXW2vra21d69zLywsPFZdXX3L1KlTz9ntdpk/f75LRCQ/P9/by39DpMfjSdBr5mB4DwQANDTXN9oy/9c/6Xa/b/7zJuU694ceeugvde7jxo27sH379tt1G0wBS1gAYGLB6tw3btwYOWnSpLNGzSVCgACAaQWrc1+6dKkjJCSkKy8vr8XI+VjCAgATClbnvm7dusElJSWDvvjii++tVmOfAQgQADCZYHXu27dvv23t2rWOL7744mhYWJjhv2CKAAEAkwlW5/7ss8/GtbW1WbOyslJERDIzM89v3ry5xqg5CRAA0BDpjPZfzcmpa7lfX9cEq3OfOXOmoZvmPREgAKChr3c2fs44hQUAUEKAAACUECAAACUECABACQECAFBCgACAyQSrc1+0aNGQlJSUNLfbnXbPPfckV1VV2Y2ckzp3AOjm7+rcnTGeZp+Ode6OaH9TvVqd+7Bhw9oCnVgvvfRSdEVFRf/eXiSkzh0ATKDZ12gbW7RQt/v97wffUK5zHzt27OXANRcuXLBaLBbd5lJBgACAifWsc3/qqadc27ZtGxwWFtZRWlp61MjZ2AMBAJPqrc593bp1Xp/PV56bm3tqzZo10UbOR4AAgAkFq3MPmDNnTsvHH3/MbyQEAPxVsDr3w4cP9wv8edu2bYMSExMvGTPhn7EHAgAmE6zOvaCgIPLEiRP9LRZLV2xsbNuGDRuqjZyTAAEADZGOaP/VnJy6lvv1dQ117gDwH0Bf72z8nLEHAgBQQoAAAJQQIAAAJQQIAEAJAQIAUEKAAIDJBKtzD1i+fHmMxWIZW19fb+hJWo7xAoCGKKfD0+xr0PE9kBh/U71P82iw3W6X3/3ud3Xd69x/9atfnRs7duzlY8eO2ffs2XOb0+ls02smVQQIAGho9jXYxn70vG73+9+/XnVdde4LFiyIW7NmTV1ubm6SbkMpYgkLAEyse537+++/H+50OtvHjRtnaAdWAE8gAGBS3evc7Xa7rF692rl3794fjJ4rgCcQADChnnXulZWV/erq6vplZGSkuVyuUQ0NDbdkZmam1tTUGPYgwBMIAJhMb3Xuv/jFLy61tLT8ZfPd5XKN+vrrryudTmef5Yw3Ck8gAGAygTr3ffv2hbnd7jS32522devWcKPn6oknEADQEOmI8V/NyalruV9f1wSrc+/O6/Ue1msmVQQIAGjo652NnzOWsAAASggQAIASAgQAoIQAAQAoIUAAAEoIEAAwmWB17kuWLBkSHR2dYZZ3QzjGCwAaop0OT5OOde5Rjhh/o2Kdu4hIXl5ew4svvtig1zzXgwABAA1NvgbbP/zPl3S739fT/qtynbtuQ+iEJSwAMLHude4iIhs2bIhOSUlJmzFjRkJTU1OIkbMRIABgUt3r3CMiIjoXL17cWF1dfbiysrLC4XC0P/nkk3FGzkeAAIAJ9axzFxGJi4vz22w2CQkJkQULFjQdOnRooJEzEiAAYDK91bmLiFRXV9sDf/7ggw8GjRgxwtDfTMgmOgCYTKDOPTk5+ZLb7U4TEVm5cqV3y5YtERUVFaEiIrGxsW3vvvtutZFzEiAAoCHKEeO/mpNT13K/vq4JVuc+c+bMs3rNoQcCBAA09PXOxs8ZeyAAACUECABACQECAFBCgAAAlBAgAAAlBAgAmEywOncRkZdffjk6ISFhZFJSUnpeXl6skXNyjBcANJipzv3kyZP2HTt2DKqsrPwuNDS0y+v1GvodToAAgIY/17m/qtv9vp72jHKd+zvvvBP53HPP1YeGhnaJiLhcrj5fSryRWMICABPrXud+4sSJ/qWlpWEZGRnuO+64Y0RpaekAI2fjCQQATKpnnXtHR4fl9OnTIYcOHTpSWlo64NFHH02sra09bLUa8yzAEwgAmFBvde4Oh6MtNzf3jNVqlQkTJly0Wq1dPp/PsAcBAgQATCZYnfvUqVPPfPbZZ2EiIuXl5f3a29utDofDsH0QlrAAwGSC1bkvXLiweebMmQnJycnpdru98+233/7RqOUrEQIEADT9uc6975NT13K/vq4JVucuIlJUVPSjXrNcLwIEADRQ5x4ceyAAACUECABACQECAFBCgAAAlBAgAAAlnMICAJM5duyY/R//8R+HNTU12a1Wqzz22GNNy5Yta8zJyRl+/Pjx/iIira2tIWFhYR1HjhypMGpOAgQANEQ7nZ4mHetCohwOf2N9vVKd+44dO04Erpk7d25seHh4h15zqSBAAEBDk89nu+PDdbrd76uHnlKucx87duxlkT9XnRQXF0d8+umnR3UbTAF7IABgYt3r3AN/V1JScmtkZGT7qFGjrhg5GwECACbVs8498PebNm2KmD59eouRs4mwhAUAptRbnbuISHt7u+zatev2gwcPGrZ5HsATCACYTLA6dxGRoqKi24YPH345MTGx3aj5AggQADCZQJ37vn37wtxud5rb7U7bunVruIjIli1bImbMmGH48pUIS1gAoCnK4fBfzcmpa7lfX9do1bkXFhZW6TXL9SJAAEBDX+9s/JyxhAUAUEKAAACUECAAACUECABACQECAFBCgACAyRw7dsx+5513pgwfPjw9KSkp/V//9V+jRUS+/PLLUI/H43a73WkjR45M3bt37wAj5+QYLwBoMFOd+7PPPhv7wgsvnHz44YfPbd26NXzp0qVxBw8eNKyRlwABAA1/rnNfr9v9vnponnKdu8VikbNnz4aIiJw5cyYkJiamTbfBFBAgAGBi3evc4+Pj23JycpKXLVsW19nZKfv27Tti5GzsgQCASfWsc3/jjTeiXnnllVqfz1e+atWq2tmzZycYOR8BAgAm1Fude2Fh4eBZs2adERF5/PHHT5eXlw80ckYCBABMJlide1RUVPvOnTvDRESKi4vD4uPjLxs3JXsgAGA6gTr35OTkS263O01EZOXKld78/PzqJUuWxD399NOWfv36db711lvVRs5JgACAhj/Xufd9cupa7tfXNVp17t99912lXrNcLwIEADRQ5x4ceyAAACUECABACQECAFBCgAAAlBAgAAAlBAgAmEywOvcDBw6Ejh492p2SkpKWlZWV1NLSYuh3OMd4AUCDmerc586dm7B69eranJyc82vXrh28cuVKx+uvv35Sr9muFQECABqafD7bHYXv6na/r6bPUa5zr6qq6j958uTzIiJT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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.kdeplot(data=df_melted, x=\"values\", hue=\"topics\", cut=0, multiple='fill', common_norm=False, alpha=1)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b7981be3-a4de-4201-a3ba-b9e22e1019df", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "64d3d692-edb8-4f9c-963a-093148baa509", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 73, + "id": "ce8b51b7-4b6b-4efb-9ac7-09698ea30712", + "metadata": {}, + "outputs": [], + "source": [ + "df_means = df_melted.groupby(['year', 'topics']).mean(['values'])" + ] + }, + { + "cell_type": "code", + "execution_count": 74, + "id": "a3182f6b-fcdc-4d61-ac69-3b7873bc10b8", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
values
yeartopics
178900.017237
10.017239
100.016488
110.016096
120.017218
.........
1799590.017420
60.017197
70.017063
80.016432
90.015871
\n", + "

660 rows × 1 columns

\n", + "
" + ], + "text/plain": [ + " values\n", + "year topics \n", + "1789 0 0.017237\n", + " 1 0.017239\n", + " 10 0.016488\n", + " 11 0.016096\n", + " 12 0.017218\n", + "... ...\n", + "1799 59 0.017420\n", + " 6 0.017197\n", + " 7 0.017063\n", + " 8 0.016432\n", + " 9 0.015871\n", + "\n", + "[660 rows x 1 columns]" + ] + }, + "execution_count": 74, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_means" + ] + }, + { + "cell_type": "code", + "execution_count": 75, + "id": "cddd5a6d-fd16-4436-8548-eb1fa58eb118", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 75, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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3nTTTSIvL0997LHHNvhdT8ouDCpEGcpt6Puvv/66urXrQqRj9xcREXmGQYWIiDzDoEJERJ5hUCEiIs8wqBARkWcYVIiIyDMMKkQZymno+w8//DB/2LBhVf369Rs4ZsyYvrt37+ZvnFoVNziiDOU09P2UKVPK77rrrk1r1qxZ+aMf/WjPrFmziv2qH2UnBhWiDOU09P369evbjBs3bj8ATJgwYd+rr77a0Z/aUbbiHfVEKVq+ZFZp3R5vh74v6FjRMHR0yweqrKysPPDMM890uOyyy/Y+/fTTRVu3bs31sl5E8bClQnQEmTt37vrZs2d3GTRo0IC6ujolJydH+l0nyi5sqRClKJkWRbocc8wxBz/44INvAGDFihV5b775Zgefq0RZhi0VoiNITU1NEABCoRBmzpxZctVVV233u06UXdhSIcpQTkPf79+/X5kzZ05XADj77LP3XHfddbv8ridlFwYVogzlNvT99OnT2Toh37D7i4iIPMOgQkREnmFQISIizzCoEBGRZxhUiIjIMwwqRETkGQYVogy1du3anJEjR/br06fPoL59+w668847u/pdJyIGFaIMlZOTgwceeGDTunXrvv7kk0+q58yZ0/Wzzz5r43e9KLsxqBBlqLKysqZRo0Y1AEDHjh3VioqKA99//z1HJSZf8Y56ohR99v7v0jL0/bEn/y7hgSpXr16du3LlyqNGjx6938t6ELUUWypEGa62tlY577zzKu69996NRUVFqt/1oezGlgpRilrSovDaoUOHxPjx4ysuuOCC3Zdffvlev+pBpGNLhShDqaqKiy++uKxfv34Hf/e7323zuz5EAIMKUcZ666232r388sudli5dWlBVVTWwqqpq4PPPP1/od70ou7H7iyhDjR07dr+U8jO/60FkxJYKERF5hkGFiIg8w6BCRESeYVAhIiLPMKgQEZFnGFSIiMgzDCpEGcpt6Ptt27YFTjzxxMqysrLBJ554YuWOHTsCfteVsgeDClGGchv6fubMmSWnnHJK3YYNG7465ZRT6mbMmFHsd10pe/DmR6IMVVZW1lRWVtYEmIe+f+ONNzosWbJkNQBMnTp11+jRo/sDqPG1spQ1GFSIUvTx0t+V7t3r7dD3HTpUNIwcldzQ97t27QrqwaasrKxp9+7d/J1Tq2H3F1GG49D3dDjhEQxRilrSovCa09D3nTp1at6w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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.lineplot(data=df_means, x=\"year\", y=\"values\", hue = 'topics')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5708961c-a49d-41af-9226-b33a5d542fe6", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1165b0a0-428b-4b85-9119-7be845ebca27", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 134, + "id": "75266e38-2c90-4f72-bfff-c0d3c2d63f2c", + "metadata": {}, + "outputs": [], + "source": [ + "df_melted.to_csv('df_melted_wz.tsv', sep='\\t', index=True, header=True)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9bd532f2-86c4-45ff-a0c5-f46d3bccf690", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 144, + "id": "dcc2e54d-b3a5-4e69-99f6-ed31a5c3ef88", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
0123456789101112
00.0740430.0886240.0793130.0671650.0874770.0659040.0765160.0741160.0826570.0870930.0765240.0734800.067090
10.0741040.0886170.0793460.0671690.0874030.0659260.0764920.0740450.0826980.0870730.0765120.0734770.067139
20.0741130.0885420.0793420.0672490.0873280.0659860.0764930.0740610.0826770.0870110.0765310.0734700.067197
30.0741350.0884560.0793490.0672940.0872790.0660150.0765250.0740570.0826170.0869700.0765620.0734610.067280
40.0740520.0885670.0793760.0671960.0873380.0659070.0765330.0740710.0826690.0871020.0765160.0734690.067205
..........................................
3350.0740700.0886260.0793640.0671480.0874690.0659060.0765230.0740420.0826840.0870900.0764940.0734680.067117
3360.0740990.0885600.0793580.0672010.0874090.0659450.0765290.0740490.0826480.0870410.0765040.0734850.067172
3370.0740710.0886450.0793670.0671300.0874530.0658750.0765240.0740630.0827060.0871110.0764930.0734600.067101
3380.0740910.0886130.0793650.0671460.0874340.0659060.0765220.0740520.0826790.0870690.0765030.0734760.067144
3390.0740810.0885930.0793620.0671680.0874320.0659220.0765180.0740410.0826720.0870820.0765080.0734830.067136
\n", + "

340 rows × 13 columns

\n", + "
" + ], + "text/plain": [ + " 0 1 2 3 4 5 6 \\\n", + "0 0.074043 0.088624 0.079313 0.067165 0.087477 0.065904 0.076516 \n", + "1 0.074104 0.088617 0.079346 0.067169 0.087403 0.065926 0.076492 \n", + "2 0.074113 0.088542 0.079342 0.067249 0.087328 0.065986 0.076493 \n", + "3 0.074135 0.088456 0.079349 0.067294 0.087279 0.066015 0.076525 \n", + "4 0.074052 0.088567 0.079376 0.067196 0.087338 0.065907 0.076533 \n", + ".. ... ... ... ... ... ... ... \n", + "335 0.074070 0.088626 0.079364 0.067148 0.087469 0.065906 0.076523 \n", + "336 0.074099 0.088560 0.079358 0.067201 0.087409 0.065945 0.076529 \n", + "337 0.074071 0.088645 0.079367 0.067130 0.087453 0.065875 0.076524 \n", + "338 0.074091 0.088613 0.079365 0.067146 0.087434 0.065906 0.076522 \n", + "339 0.074081 0.088593 0.079362 0.067168 0.087432 0.065922 0.076518 \n", + "\n", + " 7 8 9 10 11 12 \n", + "0 0.074116 0.082657 0.087093 0.076524 0.073480 0.067090 \n", + "1 0.074045 0.082698 0.087073 0.076512 0.073477 0.067139 \n", + "2 0.074061 0.082677 0.087011 0.076531 0.073470 0.067197 \n", + "3 0.074057 0.082617 0.086970 0.076562 0.073461 0.067280 \n", + "4 0.074071 0.082669 0.087102 0.076516 0.073469 0.067205 \n", + ".. ... ... ... ... ... ... \n", + "335 0.074042 0.082684 0.087090 0.076494 0.073468 0.067117 \n", + "336 0.074049 0.082648 0.087041 0.076504 0.073485 0.067172 \n", + "337 0.074063 0.082706 0.087111 0.076493 0.073460 0.067101 \n", + "338 0.074052 0.082679 0.087069 0.076503 0.073476 0.067144 \n", + "339 0.074041 0.082672 0.087082 0.076508 0.073483 0.067136 \n", + "\n", + "[340 rows x 13 columns]" + ] + }, + "execution_count": 144, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 76, + "id": "fa0e3e73-d7f4-40dd-b010-0486335a361a", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 76, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.heatmap(data = df)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "0fc57b6a-0342-49c7-a974-0d9cbb579588", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "bd498aaf-208d-4bd1-81ea-a79d8cc6cc58", + "metadata": {}, + "source": [ + "

final model

" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "8493fe7d-7a31-4b3a-b4ea-319ca3153b1e", + "metadata": {}, + "outputs": [], + "source": [ + "model = ETM(num_topics=67, num_epochs=150, t_hidden_size=800, rho_size=300,\n", + "embedding_size=300, activation='relu', dropout=0.69588, lr=0.005,\n", + "optimizer='adam', batch_size=128, clip=0.0, wdecay=1.2e-06, bow_norm=1,\n", + "device='cpu', top_word=10, train_embeddings=True, embeddings_path=None,\n", + "embeddings_type='pickle', binary_embeddings=True,\n", + "headerless_embeddings=False, use_partitions=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "f877df48-0f85-4ea3-a7fa-79eb8b30d767", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "model: ETM(\n", + " (t_drop): Dropout(p=0.69588, inplace=False)\n", + " (theta_act): ReLU()\n", + " (rho): Linear(in_features=300, out_features=141946, bias=False)\n", + " (alphas): Linear(in_features=300, out_features=67, bias=False)\n", + " (q_theta): Sequential(\n", + " (0): Linear(in_features=141946, out_features=800, bias=True)\n", + " (1): ReLU()\n", + " (2): Linear(in_features=800, out_features=800, bias=True)\n", + " (3): ReLU()\n", + " )\n", + " (mu_q_theta): Linear(in_features=800, out_features=67, bias=True)\n", + " (logsigma_q_theta): Linear(in_features=800, out_features=67, bias=True)\n", + ")\n", + "****************************************************************************************************\n", + "Epoch----->1 .. LR: 0.005 .. KL_theta: 0.03 .. Rec_loss: 21540.44 .. NELBO: 21540.47\n", + "****************************************************************************************************\n", + "****************************************************************************************************\n", + "VALIDATION .. LR: 0.005 .. KL_theta: nan .. Rec_loss: nan .. NELBO: nan\n", + "****************************************************************************************************\n" + ] + } + ], + "source": [ + "model_output = model.train_model(dataset)" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "cdb46a82-780e-4df8-8d47-188ad779d825", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "erhält einnimmt findet drey chaft friedliche betten saat behandelt berechnung\n", + "schranken trösten frieden setzte erfahrung schnee hügel rücken gege keller\n", + "schneidet erzählung vortrefflich meln unfähig freundlich uneheliche verschwendung rathgeber fchaften\n", + "käfe menschli starke zerstören birnen nämliche müsse unterstützen georg urheber\n", + "erfüllen absicht fünfzig bekannt keineswegs erzählte lungau soden befördern fenen\n", + "glänzende verderbten anwandte pfer parthey gebaut schnitt herkommen starben oberhaupt\n", + "nutzen zusam brauchen stadtkaplanen möglich jenigen quentchen untersuchung beim hervorbringt\n", + "moral steuer gehet verlegenheit schenkte schlechter halb zeiten agnes beamter\n", + "ausmacht stöckl zinsen umfange gerste bogen erfolge herausgekommenen buchhändler partie\n", + "bekleidet theilnehmer wiffenschaft magdalena unterricht drucke hoben stär gebräuche theuern\n", + "mahl neigung feldjäger ferne volkes somit hochfürstl kosten unzen seltene\n", + "göttlichen tyranney nahe riesen umlaufe langen entdeckung angesehen kammer gesichert\n", + "maria vortreffliche bestes wifen münchen ernstlich fammen länger zeugniß vorfälle\n", + "wörter hochfürstl fucht wünschen vermehret antwort instituts bleibt wohlstandes offenen\n", + "welt geschützt adreffen versicherung anton liebe königreich verstandes vertreten margaretha\n", + "wiederherstellung hängen terthanen ältern widersteht stadtkaplanev untersuchte heilig womit provinzen\n", + "leichtesten betreten innerhalb schnei ehrlich ihrigen pflegte jungfrau silber beförderung\n", + "freund reichskreisen provisorischen repartition zweyer feier wehr conclusum abzuwenden neuem\n", + "zuverlässig unserm schlacht nachdem hand viii gelber wilhelms feucht rechnung\n", + "stadtgerichts adeliche dabey todt frau gebaut schau sekretärs fragen verdienste\n", + "fordert vermehrt ansehnlich behalten berechnung reiten künf schranken magen salat\n", + "verleger gefüllten überhand feuersbrunst schriftstellern theile vember formieren belehren kalte\n", + "beschwerlichkeiten gestochen vollkommenheit nothleidenden bestehende nehmen reichsgutachten rung rigen bittern\n", + "urheber fünfzig bestechungen heimgesucht deutschland weggeschafft kunst fanatismus zimmermanns dünkel\n", + "heraus anwendung handwerks hauptsächlich abzuwenden palast auszudehnen erlauben erfordern peremptorischen\n", + "wißt mancherley lärm mehrerer follen überläßt helden entblößt stöckl bogen\n", + "königreichs wanderer melden miffthäter salza christen viele gegeben tete industrie\n", + "aufrichtigen pflegt deutscher wohl glasur läuft übrige zuwider quartier maßen\n", + "ausfallen citation gegenwärtig erwach wald mantua diätetische ommen gerste ausführung\n", + "fers umgeben liste vermuthung vortheilhaften neuen regenten schwer uebermaß battern\n", + "erweitert erhalten drey abschied ehemann rina begreiflich haltung rindvieh rußland\n", + "prensk fleißigsten tions consorten fels plock auszehrung woywodschaft seitdem agnes\n", + "heinrich ideen untersuchen irland herz gewarten pest scheinbar kenntniffe warnung\n", + "etwa gesetzen stärkere trag genoß gänzliche gnügen reiflich ehedem trieben\n", + "vorhaben erfüllen gesellschaften höre anzu bewegt ritt motion genden dietrichstein\n", + "freund ungemein möge äußerst verlangte aufopferungen letztere abzuwenden untergeordneten todtgebohrne\n", + "fetzt erwartung landesgesetze weiteren anlegung willens siebenbürgen äußert apostolischen lung\n", + "entlegen arten bauern schaffte achtzehnten ligen stand stärker regiert eigenthums\n", + "wissenschaft gebaut vergütet gestatten abentheuer königl nahmen viertel ieser zahlreich\n", + "ucht inhalt feinem angegebenen riefen sicherheit offiziere lungensucht harz bedeutung\n", + "anschläge gebracht gedeihen fchwächt erheilt mischung hirn weißer fürchterliches nehmsten\n", + "allerley winde häufige erfolge verstärkt seit trachten zerstöhren wilhelm rechtsbegnügig\n", + "bekleidete schaft hüten piece monarchie blech gelegenheiten vornehmsten regiert provinzen\n", + "lers mailand redlich nothwendigen räumung anfüh saal lehrers aufwarten engl\n", + "bestellt herz hierher fluß ächten ficht fühle reichischen vertraut weiters\n", + "angefallen tamsweg begann unternehmen grundsätzen provinzen ging stellet verdorben schutze\n", + "gesund kaufmann stem brücke rechnung stellen belangt ausgeführt bedauert nigs\n", + "tausch übel zeitlich reinheit verletzte ande triumph geäußert falle wünschen\n", + "strafe strengsten keineswegs verschwendung grundsätzen patente zugesprochen sieben feil vertilgt\n", + "kopfs riefen eiter erkaufte uner genius herz weise köpfe spott\n", + "unterzeichneter bischöfe auffätze noten verwitwete fetze fchwarz wirthinn ausgeschriebenen bauholz\n", + "maria verfer auszehrung frohen gleichen fuchet fens geschwind menschen hader\n", + "getroffen braucht kenntniffen wiffenschaft haar eroberungen mahl verlohren untern kritik\n", + "mehr kupfer erbschaft wohlstandes leopold zurück gegentheil ohnehin gebrauch ankam\n", + "bevollmächtigten landesherrlichen rung deshalb reif erhoben straffen böser erbauung schuß\n", + "trocknen weise schwefel erwerbe keime hieraus vertrauen verfalle meistens küchen\n", + "soldaten entschlossen munterkeit türkey athmen bürgerl gehet widerstehen länder beytrag\n", + "vorwürfen ruhig gleichwie morgen hund verordnung alljährlich thun wahrnehmen verwickelt\n", + "verr zeichneten barbara mühe erblickte nennen daumen befe doppelknoten rauh\n", + "unent ähnlichen spröde riefen wußt bestimmtheit bürde zimmermanns höhe mütze\n", + "verbleiben karl gebraucht einnehmer erzählte beobachten trieben bürgermeister klagte leopold\n", + "aufopferungen übergab gebiethen löbl dermahligen ueberall strenge reif beschäftiget freundlich\n", + "gehalten geheime retteten zuwider anzulegen tzung stürmen haar civil nehmen\n", + "errichten rang hausthiere zweyer eisen nennt vorwande rung feuer inquisition\n", + "branntwein fetzt schöne bearbeitung dauern bestätigung materialien gemüther erinnern entstehenden\n", + "peremptorischen endlich platze verschwörung sehet äußerte klagte fruchtbar sagte eigener\n", + "hindernisse rechnen brauchbar entlaffung reinem hungarn setzte geöffnet anschein reifen\n" + ] + } + ], + "source": [ + "for t in model_output['topics']:\n", + " print(\" \".join(t))" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "9d409994-cf56-48b3-888c-d6941c645c27", + "metadata": {}, + "outputs": [], + "source": [ + "from octis.evaluation_metrics.coherence_metrics import Coherence" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "16ee88ab-a5de-4918-aef6-735eecfcd340", + "metadata": {}, + "outputs": [], + "source": [ + "c_v = Coherence(texts=dataset.get_corpus(), topk=10, measure='c_v')" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "f89279a2-255e-461e-bd1e-50d493a5ed57", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Coherence: 0.44636441743829103\n" + ] + } + ], + "source": [ + "c_v_score1 = c_v.score(model_output)\n", + "print(\"Coherence: \"+str(c_v_score1))" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "dda4fa1e-136a-46ca-b827-bc96a5803a08", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Coherence: 0.4434428498465553\n" + ] + } + ], + "source": [ + "c_v_score2 = c_v.score(model_output)\n", + "print(\"Coherence: \"+str(c_v_score2))" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "60397247-b9f4-431f-ae91-d67096dacbef", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Coherence: 0.4261268041204477\n" + ] + } + ], + "source": [ + "c_v_score3 = c_v.score(model_output)\n", + "print(\"Coherence: \"+str(c_v_score3))" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "c04f63e8-4d3d-4220-8aed-7097c1c015a3", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.43864469046843135" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "(c_v_score1 + c_v_score2 + c_v_score3)/3" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "eecebc40-1a2a-4032-9a47-6f2255ccbf16", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "75b37493-780a-4e5c-8742-c7ed44dba3bc", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "1ced5031-6835-4f81-9ec2-633a5d47c800", + "metadata": {}, + "outputs": [], + "source": [ + "with open('output_sz12.csv', 'w') as csvfile:\n", + " csvwriter = csv.writer(csvfile)\n", + " for t in model_output['topics']:\n", + " csvwriter.writerow(t)" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "4bd91051-ec1f-40fe-acbe-41bbd77909f4", + "metadata": {}, + "outputs": [], + "source": [ + "with open('output_sz12_sc.csv', 'w') as csvfile:\n", + " csvwriter = csv.writer(csvfile)\n", + " for list in model_output['topic-document-matrix']:\n", + " csvwriter.writerow(str((sum(list))/340))" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "id": "aee914fa-c997-4386-b6b4-af35ca0bcda4", + "metadata": {}, + "outputs": [], + "source": [ + "a = pd.read_csv(\"output_sz12.csv\", sep='\\t', encoding='cp1252', header=None)\n", + "b = pd.read_csv(\"output_sz12_sc.csv\", sep='\\t', header =None, encoding='cp1252')" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "ad0e59de-233a-4418-9aa9-4853ae763a64", + "metadata": {}, + "outputs": [], + "source": [ + "topic_df = a.merge(b, left_index=True, right_index=True, how='left')" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "d7afc79e-f857-47c0-84e4-65488ad31eca", + "metadata": {}, + "outputs": [], + "source": [ + "topic_df = topic_df.rename(columns={\"0_x\": \"topic\", \"0_y\": \"percentage\"})" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "9fed2f0e-9c2e-49db-9e17-ec42c76dafa4", + "metadata": {}, + "outputs": [], + "source": [ + "topic_df['topic'] = topic_df['topic'].str.replace(\",\", \" \")" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "id": "6458df88-b94a-45f0-a714-4c867f40cac4", + "metadata": {}, + "outputs": [], + "source": [ + "topic_df['percentage'] = topic_df['percentage'].str.replace(\",\", \"\")" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "id": "aa26682a-90e0-43ae-9f56-0acb8c6096aa", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
topicpercentage
0jahrgang händler hallein glücke auflagen entha...0.01485521826235687
1abdankung theorie heimlich gienge unbekannt in...0.014656940954463446
2katholischen ange bestechungen ansteckend chie...0.014836286712328301
3nden verwendet geschenke schick klugen elegant...0.014710536692291498
4beobachter stellte ruhet merkwürdigen ritter d...0.015450867224375114
.........
62pariser tafeln hungarn wahr jesu unaufhörlich ...0.015926166141734404
63geschlachtet ungerechter schwer einmahl franzö...0.01482401183422874
64werke redliche wenige größ seide begraben heil...0.01392751745057895
65blattes natürlichen summe vergrößerten besoldu...0.0159805441275239
66körpern stifte erlauben ansehen brin neun munt...0.014102057175820365
\n", + "

67 rows × 2 columns

\n", + "
" + ], + "text/plain": [ + " topic percentage\n", + "0 jahrgang händler hallein glücke auflagen entha... 0.01485521826235687\n", + "1 abdankung theorie heimlich gienge unbekannt in... 0.014656940954463446\n", + "2 katholischen ange bestechungen ansteckend chie... 0.014836286712328301\n", + "3 nden verwendet geschenke schick klugen elegant... 0.014710536692291498\n", + "4 beobachter stellte ruhet merkwürdigen ritter d... 0.015450867224375114\n", + ".. ... ...\n", + "62 pariser tafeln hungarn wahr jesu unaufhörlich ... 0.015926166141734404\n", + "63 geschlachtet ungerechter schwer einmahl franzö... 0.01482401183422874\n", + "64 werke redliche wenige größ seide begraben heil... 0.01392751745057895\n", + "65 blattes natürlichen summe vergrößerten besoldu... 0.0159805441275239\n", + "66 körpern stifte erlauben ansehen brin neun munt... 0.014102057175820365\n", + "\n", + "[67 rows x 2 columns]" + ] + }, + "execution_count": 30, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "topic_df" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "id": "a0c2ece0-b64e-49c9-a068-52108a192f0f", + "metadata": {}, + "outputs": [], + "source": [ + "topic_df_sz = topic_df.assign(newspaper=\"sz\")" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "id": "df8f8abc-e028-4a91-a4fa-c82580cc7ed6", + "metadata": {}, + "outputs": [], + "source": [ + "topic_df_sz.to_excel(\"topics_sz1.xlsx\", index=True, header=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "id": "26c4d301-680f-465a-b8eb-3bb226f8cf67", + "metadata": {}, + "outputs": [], + "source": [ + "topic_df_sz.to_csv('topics_sz.csv', sep=',', index=True, header=True, encoding='cp1252')" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "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.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}