From 9cdbafbf9b2a6a0144647ab5309331d58f1895fe Mon Sep 17 00:00:00 2001 From: Kaleidophon Date: Mon, 5 Dec 2022 18:29:14 +0100 Subject: [PATCH 01/23] :sparkles: Add structure for demo notebook with some placeholders for missing code blocks --- demo.ipynb | 485 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 485 insertions(+) create mode 100644 demo.ipynb diff --git a/demo.ipynb b/demo.ipynb new file mode 100644 index 0000000..c23b831 --- /dev/null +++ b/demo.ipynb @@ -0,0 +1,485 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "b0b06f40", + "metadata": {}, + "source": [ + "# 🤖💬❓nlp-uncertainty-zoo Demo\n", + "\n", + "This is a quick demo for the nlp-uncertainty-zoo, detailing how to jump in quickly with package. We will do this by training two different models on the Rotten Tomatoes sentiment analysis dataset, where want to classify where a movie review is positive or negative. \n", + "\n", + "For that purpose, we first start by importing all necessary packages as well as loading and preprocessing the dataset. Even though the first model we are using is LSTM-based, we will still use the BERT tokenizer here for the sake of simplicity." + ] + }, + { + "cell_type": "markdown", + "id": "971bc512", + "metadata": {}, + "source": [ + "## Loading the dataset & preprocessing" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "id": "f3bcf1b7", + "metadata": {}, + "outputs": [], + "source": [ + "import random\n", + "from string import ascii_lowercase\n", + "\n", + "from datasets import load_dataset\n", + "from torch.utils.data import DataLoader\n", + "from transformers import BertTokenizer\n", + "from nlp_uncertainty_zoo.models import LSTMEnsemble, VariationalBert # We will test these two models in this demo!\n", + "\n", + "# CONST\n", + "BATCH_SIZE = 16" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "e6ae10d2", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Using custom data configuration default\n", + "Reusing dataset rotten_tomatoes_movie_review (/Users/deul/.cache/huggingface/datasets/rotten_tomatoes_movie_review/default/1.0.0/9c411f7ecd9f3045389de0d9ce984061a1056507703d2e3183b1ac1a90816e4d)\n" + ] + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "7645d62961ed42af9789825a243b55fa", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "HBox(children=(FloatProgress(value=0.0, max=9.0), HTML(value='')))" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "def preprocess_with(tokenizer):\n", + " def preprocess(input_):\n", + " return tokenizer(\n", + " input_[\"text\"],\n", + " truncation=True,\n", + " padding=\"max_length\",\n", + " max_length=50\n", + " )\n", + " \n", + " return preprocess\n", + "\n", + "dataset = load_dataset(\"rotten_tomatoes\")\n", + "tokenizer = BertTokenizer.from_pretrained(\"bert-base-uncased\")\n", + "\n", + "train_set = dataset[\"train\"].map(preprocess_with(tokenizer), batched=True)\n", + "train_loader = DataLoader(train_set, batch_size=BATCH_SIZE)\n", + "\n", + "test_set = dataset[\"train\"].map(preprocess_with(tokenizer), batched=True)\n", + "test_loader = DataLoader(train_set, batch_size=BATCH_SIZE)" + ] + }, + { + "cell_type": "markdown", + "id": "2ad3fdaf", + "metadata": {}, + "source": [ + "## Training" + ] + }, + { + "cell_type": "markdown", + "id": "65d52c7f", + "metadata": {}, + "source": [ + "We now start by training an ensemble of LSTMs. Due to fact that all members of an ensemble are randomly initialized, models tend to converge to different solutions, making the ensemble very robust to unseen data points (see paper TODO). This is also a very useful property for uncertainty quantification, as we will see later. " + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "id": "259f2cac", + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Set seeds" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "dbbcef37", + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Training code for LSTM Ensemble" + ] + }, + { + "cell_type": "markdown", + "id": "94ffd8fa", + "metadata": {}, + "source": [ + "Next up, we will fine-tune a BERT model. For uncertainty quantification, we will use Monte Carlo Dropout (TODO: Citations): By using multiple different dropout masks during inference, we can create different predictions for the same data point. " + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "068ede00", + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Training code for Variational BERT" + ] + }, + { + "cell_type": "markdown", + "id": "805e664c", + "metadata": {}, + "source": [ + "## Evaluating task performance & calibration" + ] + }, + { + "cell_type": "markdown", + "id": "45ce5006", + "metadata": {}, + "source": [ + "Before we continue, let us first evaluate the models to reassure ourselves that the training was successful:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c7b21de1", + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Evaluate models" + ] + }, + { + "cell_type": "markdown", + "id": "57c0c40e", + "metadata": {}, + "source": [ + "We can also evaluate to what extend the probability of a predicted class actually corresponds to the chance of the model actually predicting the correct class, also called *calibration* (Guo et al., 2017). One way to evaluate this propery is the expected calibration error (ECE): By binning predictions with similar confidence scores, we can evaluate if the mean confidence per bin corresponds to the accuracy on the binned samples:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "8acaa4fe", + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Implement calibration with ECE" + ] + }, + { + "cell_type": "markdown", + "id": "91320321", + "metadata": {}, + "source": [ + "Another approach is evaluation using *prediction sets* (TODO: Citation). The idea here is to sort predictings descendingly and add classes to a set until a certain amount of probability mass - for instance 90 % in the example below - is reached. If the model is well calibrated, these prediction sets should be small and contain the correct class (on average). Using the functions implemented in the package, we evaluate these properties below: " + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "id": "b49bb6b7", + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Implement prediction set evaluation" + ] + }, + { + "cell_type": "markdown", + "id": "c1f634a0", + "metadata": {}, + "source": [ + "## Uncertainty quantification\n", + "\n", + "Next, we want to use the model to actually quantify their uncertainty in a prediction. For this purpose, we manually define some sequences which should seem suspicious to the models. " + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "id": "7b2f1bac", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "the gorgeously elaborate continuation of \" the lord of the rings \" trilogy is so huge that a column of words cannot adequately describe co-writer/director peter jackson's expanded vision of j . r . r . tolkien's middle-earth .\n" + ] + } + ], + "source": [ + "original_sentence = train_set[1][\"text\"]\n", + "print(original_sentence)" + ] + }, + { + "cell_type": "code", + "execution_count": 46, + "id": "907d2416", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "of vision expanded of lord of . \" huge a . the tolkien's is words describe peter so middle-earth cannot \" the of gorgeously column adequately r co-writer/director j rings . r that continuation trilogy . the jackson's elaborate\n", + "the gorgeously elaborate continuationpn of \" the lsord ofthe rings \" trilogy is sohuge that a column of words cannort adequaely describek co-riter/dzijrector pteorn ackson's expanded vsion of jm . r .r tolkien's middleearth .\n" + ] + } + ], + "source": [ + "# The model hasn't been finetuned on German, so this should be weird\n", + "sentence1 = (\n", + " \"Die umwerfend aufwendige Fortsetzung der „Der Herr der Ringe“-Trilogie ist so umfangreich,\"\n", + " \"dass eine Kolonne von Worten die erweiterte Vision von Co-Autor/Regisseur Peter Jackson \"\n", + " \"von j. r . r . Tolkiens Mittelerde nicht angemessen beschreiben kann.\"\n", + ").lower()\n", + "# Now we scramble the contents of the sentence randomly\n", + "tokens = original_sentence.split(\" \")\n", + "sentence2 = \" \".join(random.sample(tokens, len(tokens)))\n", + "print(sentence2)\n", + "\n", + "# Add noise to the sentence\n", + "delete_chars = 10\n", + "add_noise_chars = 10\n", + "\n", + "sentence3 = str(original_sentence)\n", + "\n", + "for _ in range(delete_chars):\n", + " idx = random.choice(range(len(sentence3)))\n", + " sentence3 = sentence3[:idx] + sentence3[idx + 1:]\n", + " \n", + "for _ in range(add_noise_chars):\n", + " idx = random.choice(range(len(sentence3)))\n", + " char = random.choice(ascii_lowercase)\n", + " \n", + " sentence3 = sentence3[:idx] + char + sentence3[idx:]\n", + " \n", + "print(sentence3)" + ] + }, + { + "cell_type": "markdown", + "id": "2f512a12", + "metadata": {}, + "source": [ + "We first check the predictions for the sentence above. The original sentence had a positive sentiment, so we first whether our model come to the same conclusion:" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "id": "f2d19730", + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Get predictions" + ] + }, + { + "cell_type": "markdown", + "id": "0f07ec96", + "metadata": {}, + "source": [ + "Since the sentences are very different from the training sentences, we now measure the uncertainty. Since the inputs above are pretty different from the inputs the models were trained on, we would hope the models to be more uncertain on the noisy sentences. \n", + "\n", + "In this demo, we will explore three different uncertainty matrix: Maximum softmax probability, predictive entropy, and mutual information. Depending on the model, there might be different metrics available. You can check that by inspecting the ``available_uncertainty_metrics`` attribute:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6c60ef34", + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Implement functionality and use here" + ] + }, + { + "cell_type": "markdown", + "id": "426e8b3e", + "metadata": {}, + "source": [ + "But back to metrics here. An easy and intuitive metric is the maximum softmax probability (TODO: Citation)\n", + "\n", + "$$1 - \\max_k p_{\\theta}(y=k|x)$$\n", + "\n", + "Intuitively, when the model is uncertain, the distribution over classes should be uniform, thus yielding a low maximum probability over classes. We substract the value from 1 here in order to have small values correspond to high certainty. \n", + "\n", + "Another way to measure uncertainty is to use the Shannon entropy of the predictive distribution: For a uniform distribution, the entropy will be maximal:\n", + "\n", + "$$-\\sum_{k=1}^K p_{\\theta}(y=k|x) \\log p_{\\theta}(y=k|x)$$\n", + "\n", + "Lastly, Smith & Gal (2017) propose mutual information as a way to exlusively measure the *model uncertainty*:\n", + "\n", + "$$\\text{H}\\bigg[\\mathbb{E}_{q(\\theta)}\\Big[p_{\\theta}(y|x)\\Big]\\bigg] - \\mathbb{E}_{q(\\theta)}\\bigg[\\text{H}\\Big[p_{\\theta}(y|x)\\Big]\\bigg]$$\n", + "\n", + "Here, the first term denotes the total uncertainty, from which the second term, the *data uncertainty*, is subtracted, leaving only the model uncertainty. Usually, the expectation in both terms would over the weight posterior $p(\\theta|\\mathcal{D})$ of the model, which is generally intractable to evaluate for neural networks, which is why we model an approximate posterior $q(\\theta)$ instead. To evaluate this expectation, we use monte carlo sampling, by simply averaging the predictions coming from different sets of weights - in the case of the LSTM ensemble, these come from different ensemble members, for the Variational BERT, this corresponds to predictions using different dropout masks." + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "id": "156aefeb", + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Demonstrate usage of uncertainty metrics, measure uncertainty on noisy sentences compared to original one" + ] + }, + { + "cell_type": "markdown", + "id": "e31e8d90", + "metadata": {}, + "source": [ + "## Evaluating the quality of uncertainty estimates" + ] + }, + { + "cell_type": "markdown", + "id": "bfce6eaa", + "metadata": {}, + "source": [ + "As we have done before with the raw probalities, we also want to know how reliable the uncertainty estimates for our models are. The package also provides several ways to do this: Firstly, we can evaluate them using an OOD detection task - the model should be more uncertain on data points that are unlike the ones in the training set. By using the uncertainty scores, we can use binary classification metrics like the area under the precision-recall curve (AUPR) and the area under the receiver-operator characteristic (AUROC) to evaluate this. In our Rotten tomatoes example, we will add noise to the sentences in our test set and use these sentences as an OOD data set." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ba637cd6", + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Evaluate " + ] + }, + { + "cell_type": "markdown", + "id": "55d213ef", + "metadata": {}, + "source": [ + "The other way introduced by Ulmer et al. (2022) is to measure how much high uncertainty corresponds to the model making wrong predictions. This is quantified by collecting the model loss and uncertainty for all points in the test set, and measuring their correlation using the [Kendall's $\\tau$ correlation coefficient](https://en.wikipedia.org/wiki/Kendall_rank_correlation_coefficient). The values range from -1 to 1, which 1 indicating that high uncertainty perfectly correlates with high model loss." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9fb64b13", + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Evaluate using Kendal's tau" + ] + }, + { + "cell_type": "markdown", + "id": "96041512", + "metadata": {}, + "source": [ + "## Visualizing sentence representations\n", + "\n", + "Part of the interface of the model implementations also allows us to create representation of input sequences and to visualize the latent space of the models. Below we visualize the representations for the original and corrupted sentences below:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6b96cbe1", + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Implement functions to extract representations and visualize data" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "8b05b61f", + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Plot representations for Variational BERT" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ff28d006", + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Plot representations for LSTM Ensemble" + ] + }, + { + "cell_type": "markdown", + "id": "498c53a4", + "metadata": {}, + "source": [ + "Thanks for reading through this demo! We only showcase the most useful functionalities here that people might want to use when applying the implemented models. If you would like to know more about the different models and functionalities in the package, consult [the documentation](http://dennisulmer.eu/nlp-uncertainty-zoo/). If you find any bugs or have requests for missing features, please [open an issue on the Github repository](https://github.com/Kaleidophon/nlp-uncertainty-zoo/issues). Below you can find the papers that were referenced in this demo:\n", + "\n", + "TODO" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f88ff06c", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "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.6.13" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} From ff0b9cbfb5a91f04afcd77bb3761632f80e74229 Mon Sep 17 00:00:00 2001 From: Kaleidophon Date: Mon, 9 Jan 2023 16:33:01 +0100 Subject: [PATCH 02/23] :recycle: Remove the bundling of model_params and instead state model params explicitly as argument for Model subclasses --- CHANGELOG.md | 0 demo.ipynb | 218 +++++++++++------- nlp_uncertainty_zoo/models/bayesian_lstm.py | 93 +++++++- nlp_uncertainty_zoo/models/bert.py | 102 +++++++- nlp_uncertainty_zoo/models/ddu_transformer.py | 154 ++++++++++++- nlp_uncertainty_zoo/models/dpp_transformer.py | 69 +++++- nlp_uncertainty_zoo/models/lstm.py | 73 +++++- nlp_uncertainty_zoo/models/lstm_ensemble.py | 117 ++++++++-- nlp_uncertainty_zoo/models/model.py | 55 ++++- .../models/sngp_transformer.py | 91 +++++++- nlp_uncertainty_zoo/models/st_tau_lstm.py | 38 ++- nlp_uncertainty_zoo/models/transformer.py | 40 +++- .../models/variational_lstm.py | 45 +++- .../models/variational_transformer.py | 72 +++++- nlp_uncertainty_zoo/utils/custom_types.py | 2 +- 15 files changed, 978 insertions(+), 191 deletions(-) create mode 100644 CHANGELOG.md diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..e69de29 diff --git a/demo.ipynb b/demo.ipynb index c23b831..8512522 100644 --- a/demo.ipynb +++ b/demo.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "markdown", - "id": "b0b06f40", + "id": "ae8ceee0", "metadata": {}, "source": [ "# 🤖💬❓nlp-uncertainty-zoo Demo\n", @@ -14,7 +14,7 @@ }, { "cell_type": "markdown", - "id": "971bc512", + "id": "a1e8f0d1", "metadata": {}, "source": [ "## Loading the dataset & preprocessing" @@ -22,8 +22,8 @@ }, { "cell_type": "code", - "execution_count": 39, - "id": "f3bcf1b7", + "execution_count": 1, + "id": "bf435d06", "metadata": {}, "outputs": [], "source": [ @@ -31,8 +31,10 @@ "from string import ascii_lowercase\n", "\n", "from datasets import load_dataset\n", + "import numpy as np\n", + "import torch\n", "from torch.utils.data import DataLoader\n", - "from transformers import BertTokenizer\n", + "from transformers import DistilBertTokenizer, DistilBertModel\n", "from nlp_uncertainty_zoo.models import LSTMEnsemble, VariationalBert # We will test these two models in this demo!\n", "\n", "# CONST\n", @@ -41,8 +43,8 @@ }, { "cell_type": "code", - "execution_count": 21, - "id": "e6ae10d2", + "execution_count": 2, + "id": "1f61486f", "metadata": {}, "outputs": [ { @@ -56,7 +58,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "7645d62961ed42af9789825a243b55fa", + "model_id": "23b0cc7163dd4d58911fdac4f3ea5f3a", "version_major": 2, "version_minor": 0 }, @@ -67,6 +69,48 @@ "metadata": {}, "output_type": "display_data" }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "96c87b8f14674d2394bb6e84c893475a", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "HBox(children=(FloatProgress(value=0.0, max=2.0), HTML(value='')))" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "63c54f7059954920977ab71fa5f5b7da", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "HBox(children=(FloatProgress(value=0.0, max=2.0), HTML(value='')))" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, { "name": "stdout", "output_type": "stream", @@ -88,18 +132,19 @@ " return preprocess\n", "\n", "dataset = load_dataset(\"rotten_tomatoes\")\n", - "tokenizer = BertTokenizer.from_pretrained(\"bert-base-uncased\")\n", + "tokenizer = DistilBertTokenizer.from_pretrained(\"distilbert-base-uncased\")\n", "\n", - "train_set = dataset[\"train\"].map(preprocess_with(tokenizer), batched=True)\n", - "train_loader = DataLoader(train_set, batch_size=BATCH_SIZE)\n", + "dataset = dataset.map(preprocess_with(tokenizer), batched=True)\n", + "dataset.set_format(type=\"torch\", columns=[\"input_ids\", \"attention_mask\", \"label\"])\n", + "dataset = dataset.rename_column(\"label\", \"labels\")\n", "\n", - "test_set = dataset[\"train\"].map(preprocess_with(tokenizer), batched=True)\n", - "test_loader = DataLoader(train_set, batch_size=BATCH_SIZE)" + "train_loader = DataLoader(dataset[\"train\"], batch_size=BATCH_SIZE)\n", + "test_loader = DataLoader(dataset[\"test\"], batch_size=BATCH_SIZE)" ] }, { "cell_type": "markdown", - "id": "2ad3fdaf", + "id": "4751bac9", "metadata": {}, "source": [ "## Training" @@ -107,7 +152,7 @@ }, { "cell_type": "markdown", - "id": "65d52c7f", + "id": "18aec99c", "metadata": {}, "source": [ "We now start by training an ensemble of LSTMs. Due to fact that all members of an ensemble are randomly initialized, models tend to converge to different solutions, making the ensemble very robust to unseen data points (see paper TODO). This is also a very useful property for uncertainty quantification, as we will see later. " @@ -115,27 +160,32 @@ }, { "cell_type": "code", - "execution_count": 48, - "id": "259f2cac", + "execution_count": 3, + "id": "752e25e3", "metadata": {}, "outputs": [], "source": [ - "# TODO: Set seeds" + "SEED = 1234\n", + "np.random.seed(SEED)\n", + "torch.manual_seed(SEED)\n", + "\n", + "vocab_size = len(tokenizer.vocab)" ] }, { "cell_type": "code", - "execution_count": 23, - "id": "dbbcef37", + "execution_count": null, + "id": "1121b0e4", "metadata": {}, "outputs": [], "source": [ - "# TODO: Training code for LSTM Ensemble" + "ensemble = LSTMEnsemble(vocab_size=vocab_size, output_size=2, ensemble_size=4)\n", + "ensemble.fit(train_loader, num_training_steps=50)" ] }, { "cell_type": "markdown", - "id": "94ffd8fa", + "id": "b3651728", "metadata": {}, "source": [ "Next up, we will fine-tune a BERT model. For uncertainty quantification, we will use Monte Carlo Dropout (TODO: Citations): By using multiple different dropout masks during inference, we can create different predictions for the same data point. " @@ -143,17 +193,48 @@ }, { "cell_type": "code", - "execution_count": 24, - "id": "068ede00", + "execution_count": 4, + "id": "95d41f7d", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "You are using a model of type distilbert to instantiate a model of type bert. This is not supported for all configurations of models and can yield errors.\n", + "Some weights of the model checkpoint at distilbert-base-uncased were not used when initializing BertModel: ['distilbert.embeddings.word_embeddings.weight', 'distilbert.embeddings.position_embeddings.weight', 'distilbert.embeddings.LayerNorm.weight', 'distilbert.embeddings.LayerNorm.bias', 'distilbert.transformer.layer.0.attention.q_lin.weight', 'distilbert.transformer.layer.0.attention.q_lin.bias', 'distilbert.transformer.layer.0.attention.k_lin.weight', 'distilbert.transformer.layer.0.attention.k_lin.bias', 'distilbert.transformer.layer.0.attention.v_lin.weight', 'distilbert.transformer.layer.0.attention.v_lin.bias', 'distilbert.transformer.layer.0.attention.out_lin.weight', 'distilbert.transformer.layer.0.attention.out_lin.bias', 'distilbert.transformer.layer.0.sa_layer_norm.weight', 'distilbert.transformer.layer.0.sa_layer_norm.bias', 'distilbert.transformer.layer.0.ffn.lin1.weight', 'distilbert.transformer.layer.0.ffn.lin1.bias', 'distilbert.transformer.layer.0.ffn.lin2.weight', 'distilbert.transformer.layer.0.ffn.lin2.bias', 'distilbert.transformer.layer.0.output_layer_norm.weight', 'distilbert.transformer.layer.0.output_layer_norm.bias', 'distilbert.transformer.layer.1.attention.q_lin.weight', 'distilbert.transformer.layer.1.attention.q_lin.bias', 'distilbert.transformer.layer.1.attention.k_lin.weight', 'distilbert.transformer.layer.1.attention.k_lin.bias', 'distilbert.transformer.layer.1.attention.v_lin.weight', 'distilbert.transformer.layer.1.attention.v_lin.bias', 'distilbert.transformer.layer.1.attention.out_lin.weight', 'distilbert.transformer.layer.1.attention.out_lin.bias', 'distilbert.transformer.layer.1.sa_layer_norm.weight', 'distilbert.transformer.layer.1.sa_layer_norm.bias', 'distilbert.transformer.layer.1.ffn.lin1.weight', 'distilbert.transformer.layer.1.ffn.lin1.bias', 'distilbert.transformer.layer.1.ffn.lin2.weight', 'distilbert.transformer.layer.1.ffn.lin2.bias', 'distilbert.transformer.layer.1.output_layer_norm.weight', 'distilbert.transformer.layer.1.output_layer_norm.bias', 'distilbert.transformer.layer.2.attention.q_lin.weight', 'distilbert.transformer.layer.2.attention.q_lin.bias', 'distilbert.transformer.layer.2.attention.k_lin.weight', 'distilbert.transformer.layer.2.attention.k_lin.bias', 'distilbert.transformer.layer.2.attention.v_lin.weight', 'distilbert.transformer.layer.2.attention.v_lin.bias', 'distilbert.transformer.layer.2.attention.out_lin.weight', 'distilbert.transformer.layer.2.attention.out_lin.bias', 'distilbert.transformer.layer.2.sa_layer_norm.weight', 'distilbert.transformer.layer.2.sa_layer_norm.bias', 'distilbert.transformer.layer.2.ffn.lin1.weight', 'distilbert.transformer.layer.2.ffn.lin1.bias', 'distilbert.transformer.layer.2.ffn.lin2.weight', 'distilbert.transformer.layer.2.ffn.lin2.bias', 'distilbert.transformer.layer.2.output_layer_norm.weight', 'distilbert.transformer.layer.2.output_layer_norm.bias', 'distilbert.transformer.layer.3.attention.q_lin.weight', 'distilbert.transformer.layer.3.attention.q_lin.bias', 'distilbert.transformer.layer.3.attention.k_lin.weight', 'distilbert.transformer.layer.3.attention.k_lin.bias', 'distilbert.transformer.layer.3.attention.v_lin.weight', 'distilbert.transformer.layer.3.attention.v_lin.bias', 'distilbert.transformer.layer.3.attention.out_lin.weight', 'distilbert.transformer.layer.3.attention.out_lin.bias', 'distilbert.transformer.layer.3.sa_layer_norm.weight', 'distilbert.transformer.layer.3.sa_layer_norm.bias', 'distilbert.transformer.layer.3.ffn.lin1.weight', 'distilbert.transformer.layer.3.ffn.lin1.bias', 'distilbert.transformer.layer.3.ffn.lin2.weight', 'distilbert.transformer.layer.3.ffn.lin2.bias', 'distilbert.transformer.layer.3.output_layer_norm.weight', 'distilbert.transformer.layer.3.output_layer_norm.bias', 'distilbert.transformer.layer.4.attention.q_lin.weight', 'distilbert.transformer.layer.4.attention.q_lin.bias', 'distilbert.transformer.layer.4.attention.k_lin.weight', 'distilbert.transformer.layer.4.attention.k_lin.bias', 'distilbert.transformer.layer.4.attention.v_lin.weight', 'distilbert.transformer.layer.4.attention.v_lin.bias', 'distilbert.transformer.layer.4.attention.out_lin.weight', 'distilbert.transformer.layer.4.attention.out_lin.bias', 'distilbert.transformer.layer.4.sa_layer_norm.weight', 'distilbert.transformer.layer.4.sa_layer_norm.bias', 'distilbert.transformer.layer.4.ffn.lin1.weight', 'distilbert.transformer.layer.4.ffn.lin1.bias', 'distilbert.transformer.layer.4.ffn.lin2.weight', 'distilbert.transformer.layer.4.ffn.lin2.bias', 'distilbert.transformer.layer.4.output_layer_norm.weight', 'distilbert.transformer.layer.4.output_layer_norm.bias', 'distilbert.transformer.layer.5.attention.q_lin.weight', 'distilbert.transformer.layer.5.attention.q_lin.bias', 'distilbert.transformer.layer.5.attention.k_lin.weight', 'distilbert.transformer.layer.5.attention.k_lin.bias', 'distilbert.transformer.layer.5.attention.v_lin.weight', 'distilbert.transformer.layer.5.attention.v_lin.bias', 'distilbert.transformer.layer.5.attention.out_lin.weight', 'distilbert.transformer.layer.5.attention.out_lin.bias', 'distilbert.transformer.layer.5.sa_layer_norm.weight', 'distilbert.transformer.layer.5.sa_layer_norm.bias', 'distilbert.transformer.layer.5.ffn.lin1.weight', 'distilbert.transformer.layer.5.ffn.lin1.bias', 'distilbert.transformer.layer.5.ffn.lin2.weight', 'distilbert.transformer.layer.5.ffn.lin2.bias', 'distilbert.transformer.layer.5.output_layer_norm.weight', 'distilbert.transformer.layer.5.output_layer_norm.bias', 'vocab_transform.weight', 'vocab_transform.bias', 'vocab_layer_norm.weight', 'vocab_layer_norm.bias', 'vocab_projector.weight', 'vocab_projector.bias']\n", + "- This IS expected if you are initializing BertModel from the checkpoint of a model trained on another task or with another architecture (e.g. initializing a BertForSequenceClassification model from a BertForPreTraining model).\n", + "- This IS NOT expected if you are initializing BertModel from the checkpoint of a model that you expect to be exactly identical (initializing a BertForSequenceClassification model from a BertForSequenceClassification model).\n", + "Some weights of BertModel were not initialized from the model checkpoint at distilbert-base-uncased and are newly initialized: ['embeddings.word_embeddings.weight', 'embeddings.position_embeddings.weight', 'embeddings.token_type_embeddings.weight', 'embeddings.LayerNorm.weight', 'embeddings.LayerNorm.bias', 'encoder.layer.0.attention.self.query.weight', 'encoder.layer.0.attention.self.query.bias', 'encoder.layer.0.attention.self.key.weight', 'encoder.layer.0.attention.self.key.bias', 'encoder.layer.0.attention.self.value.weight', 'encoder.layer.0.attention.self.value.bias', 'encoder.layer.0.attention.output.dense.weight', 'encoder.layer.0.attention.output.dense.bias', 'encoder.layer.0.attention.output.LayerNorm.weight', 'encoder.layer.0.attention.output.LayerNorm.bias', 'encoder.layer.0.intermediate.dense.weight', 'encoder.layer.0.intermediate.dense.bias', 'encoder.layer.0.output.dense.weight', 'encoder.layer.0.output.dense.bias', 'encoder.layer.0.output.LayerNorm.weight', 'encoder.layer.0.output.LayerNorm.bias', 'encoder.layer.1.attention.self.query.weight', 'encoder.layer.1.attention.self.query.bias', 'encoder.layer.1.attention.self.key.weight', 'encoder.layer.1.attention.self.key.bias', 'encoder.layer.1.attention.self.value.weight', 'encoder.layer.1.attention.self.value.bias', 'encoder.layer.1.attention.output.dense.weight', 'encoder.layer.1.attention.output.dense.bias', 'encoder.layer.1.attention.output.LayerNorm.weight', 'encoder.layer.1.attention.output.LayerNorm.bias', 'encoder.layer.1.intermediate.dense.weight', 'encoder.layer.1.intermediate.dense.bias', 'encoder.layer.1.output.dense.weight', 'encoder.layer.1.output.dense.bias', 'encoder.layer.1.output.LayerNorm.weight', 'encoder.layer.1.output.LayerNorm.bias', 'encoder.layer.2.attention.self.query.weight', 'encoder.layer.2.attention.self.query.bias', 'encoder.layer.2.attention.self.key.weight', 'encoder.layer.2.attention.self.key.bias', 'encoder.layer.2.attention.self.value.weight', 'encoder.layer.2.attention.self.value.bias', 'encoder.layer.2.attention.output.dense.weight', 'encoder.layer.2.attention.output.dense.bias', 'encoder.layer.2.attention.output.LayerNorm.weight', 'encoder.layer.2.attention.output.LayerNorm.bias', 'encoder.layer.2.intermediate.dense.weight', 'encoder.layer.2.intermediate.dense.bias', 'encoder.layer.2.output.dense.weight', 'encoder.layer.2.output.dense.bias', 'encoder.layer.2.output.LayerNorm.weight', 'encoder.layer.2.output.LayerNorm.bias', 'encoder.layer.3.attention.self.query.weight', 'encoder.layer.3.attention.self.query.bias', 'encoder.layer.3.attention.self.key.weight', 'encoder.layer.3.attention.self.key.bias', 'encoder.layer.3.attention.self.value.weight', 'encoder.layer.3.attention.self.value.bias', 'encoder.layer.3.attention.output.dense.weight', 'encoder.layer.3.attention.output.dense.bias', 'encoder.layer.3.attention.output.LayerNorm.weight', 'encoder.layer.3.attention.output.LayerNorm.bias', 'encoder.layer.3.intermediate.dense.weight', 'encoder.layer.3.intermediate.dense.bias', 'encoder.layer.3.output.dense.weight', 'encoder.layer.3.output.dense.bias', 'encoder.layer.3.output.LayerNorm.weight', 'encoder.layer.3.output.LayerNorm.bias', 'encoder.layer.4.attention.self.query.weight', 'encoder.layer.4.attention.self.query.bias', 'encoder.layer.4.attention.self.key.weight', 'encoder.layer.4.attention.self.key.bias', 'encoder.layer.4.attention.self.value.weight', 'encoder.layer.4.attention.self.value.bias', 'encoder.layer.4.attention.output.dense.weight', 'encoder.layer.4.attention.output.dense.bias', 'encoder.layer.4.attention.output.LayerNorm.weight', 'encoder.layer.4.attention.output.LayerNorm.bias', 'encoder.layer.4.intermediate.dense.weight', 'encoder.layer.4.intermediate.dense.bias', 'encoder.layer.4.output.dense.weight', 'encoder.layer.4.output.dense.bias', 'encoder.layer.4.output.LayerNorm.weight', 'encoder.layer.4.output.LayerNorm.bias', 'encoder.layer.5.attention.self.query.weight', 'encoder.layer.5.attention.self.query.bias', 'encoder.layer.5.attention.self.key.weight', 'encoder.layer.5.attention.self.key.bias', 'encoder.layer.5.attention.self.value.weight', 'encoder.layer.5.attention.self.value.bias', 'encoder.layer.5.attention.output.dense.weight', 'encoder.layer.5.attention.output.dense.bias', 'encoder.layer.5.attention.output.LayerNorm.weight', 'encoder.layer.5.attention.output.LayerNorm.bias', 'encoder.layer.5.intermediate.dense.weight', 'encoder.layer.5.intermediate.dense.bias', 'encoder.layer.5.output.dense.weight', 'encoder.layer.5.output.dense.bias', 'encoder.layer.5.output.LayerNorm.weight', 'encoder.layer.5.output.LayerNorm.bias', 'encoder.layer.6.attention.self.query.weight', 'encoder.layer.6.attention.self.query.bias', 'encoder.layer.6.attention.self.key.weight', 'encoder.layer.6.attention.self.key.bias', 'encoder.layer.6.attention.self.value.weight', 'encoder.layer.6.attention.self.value.bias', 'encoder.layer.6.attention.output.dense.weight', 'encoder.layer.6.attention.output.dense.bias', 'encoder.layer.6.attention.output.LayerNorm.weight', 'encoder.layer.6.attention.output.LayerNorm.bias', 'encoder.layer.6.intermediate.dense.weight', 'encoder.layer.6.intermediate.dense.bias', 'encoder.layer.6.output.dense.weight', 'encoder.layer.6.output.dense.bias', 'encoder.layer.6.output.LayerNorm.weight', 'encoder.layer.6.output.LayerNorm.bias', 'encoder.layer.7.attention.self.query.weight', 'encoder.layer.7.attention.self.query.bias', 'encoder.layer.7.attention.self.key.weight', 'encoder.layer.7.attention.self.key.bias', 'encoder.layer.7.attention.self.value.weight', 'encoder.layer.7.attention.self.value.bias', 'encoder.layer.7.attention.output.dense.weight', 'encoder.layer.7.attention.output.dense.bias', 'encoder.layer.7.attention.output.LayerNorm.weight', 'encoder.layer.7.attention.output.LayerNorm.bias', 'encoder.layer.7.intermediate.dense.weight', 'encoder.layer.7.intermediate.dense.bias', 'encoder.layer.7.output.dense.weight', 'encoder.layer.7.output.dense.bias', 'encoder.layer.7.output.LayerNorm.weight', 'encoder.layer.7.output.LayerNorm.bias', 'encoder.layer.8.attention.self.query.weight', 'encoder.layer.8.attention.self.query.bias', 'encoder.layer.8.attention.self.key.weight', 'encoder.layer.8.attention.self.key.bias', 'encoder.layer.8.attention.self.value.weight', 'encoder.layer.8.attention.self.value.bias', 'encoder.layer.8.attention.output.dense.weight', 'encoder.layer.8.attention.output.dense.bias', 'encoder.layer.8.attention.output.LayerNorm.weight', 'encoder.layer.8.attention.output.LayerNorm.bias', 'encoder.layer.8.intermediate.dense.weight', 'encoder.layer.8.intermediate.dense.bias', 'encoder.layer.8.output.dense.weight', 'encoder.layer.8.output.dense.bias', 'encoder.layer.8.output.LayerNorm.weight', 'encoder.layer.8.output.LayerNorm.bias', 'encoder.layer.9.attention.self.query.weight', 'encoder.layer.9.attention.self.query.bias', 'encoder.layer.9.attention.self.key.weight', 'encoder.layer.9.attention.self.key.bias', 'encoder.layer.9.attention.self.value.weight', 'encoder.layer.9.attention.self.value.bias', 'encoder.layer.9.attention.output.dense.weight', 'encoder.layer.9.attention.output.dense.bias', 'encoder.layer.9.attention.output.LayerNorm.weight', 'encoder.layer.9.attention.output.LayerNorm.bias', 'encoder.layer.9.intermediate.dense.weight', 'encoder.layer.9.intermediate.dense.bias', 'encoder.layer.9.output.dense.weight', 'encoder.layer.9.output.dense.bias', 'encoder.layer.9.output.LayerNorm.weight', 'encoder.layer.9.output.LayerNorm.bias', 'encoder.layer.10.attention.self.query.weight', 'encoder.layer.10.attention.self.query.bias', 'encoder.layer.10.attention.self.key.weight', 'encoder.layer.10.attention.self.key.bias', 'encoder.layer.10.attention.self.value.weight', 'encoder.layer.10.attention.self.value.bias', 'encoder.layer.10.attention.output.dense.weight', 'encoder.layer.10.attention.output.dense.bias', 'encoder.layer.10.attention.output.LayerNorm.weight', 'encoder.layer.10.attention.output.LayerNorm.bias', 'encoder.layer.10.intermediate.dense.weight', 'encoder.layer.10.intermediate.dense.bias', 'encoder.layer.10.output.dense.weight', 'encoder.layer.10.output.dense.bias', 'encoder.layer.10.output.LayerNorm.weight', 'encoder.layer.10.output.LayerNorm.bias', 'encoder.layer.11.attention.self.query.weight', 'encoder.layer.11.attention.self.query.bias', 'encoder.layer.11.attention.self.key.weight', 'encoder.layer.11.attention.self.key.bias', 'encoder.layer.11.attention.self.value.weight', 'encoder.layer.11.attention.self.value.bias', 'encoder.layer.11.attention.output.dense.weight', 'encoder.layer.11.attention.output.dense.bias', 'encoder.layer.11.attention.output.LayerNorm.weight', 'encoder.layer.11.attention.output.LayerNorm.bias', 'encoder.layer.11.intermediate.dense.weight', 'encoder.layer.11.intermediate.dense.bias', 'encoder.layer.11.output.dense.weight', 'encoder.layer.11.output.dense.bias', 'encoder.layer.11.output.LayerNorm.weight', 'encoder.layer.11.output.LayerNorm.bias', 'pooler.dense.weight', 'pooler.dense.bias']\n", + "You should probably TRAIN this model on a down-stream task to be able to use it for predictions and inference.\n" + ] + }, + { + "ename": "TypeError", + "evalue": "get_linear_schedule_with_warmup() missing 2 required positional arguments: 'num_warmup_steps' and 'num_training_steps'", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[0mbert_name\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m\"distilbert-base-uncased\"\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0moutput_size\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 4\u001b[0;31m \u001b[0mbert_class\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mDistilBertModel\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 5\u001b[0m )\n", + "\u001b[0;32m~/Desktop/Projects/nlp-uncertainty-zoo/nlp_uncertainty_zoo/models/variational_transformer.py\u001b[0m in \u001b[0;36m__init__\u001b[0;34m(self, bert_name, output_size, dropout, num_predictions, is_sequence_classifier, lr, weight_decay, optimizer_class, scheduler_class, scheduler_kwargs, model_dir, bert_class, device)\u001b[0m\n\u001b[1;32m 322\u001b[0m \u001b[0mmodel_dir\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mmodel_dir\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 323\u001b[0m \u001b[0mbert_class\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mbert_class\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 324\u001b[0;31m \u001b[0mdevice\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mdevice\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 325\u001b[0m )\n", + "\u001b[0;32m~/Desktop/Projects/nlp-uncertainty-zoo/nlp_uncertainty_zoo/models/bert.py\u001b[0m in \u001b[0;36m__init__\u001b[0;34m(self, model_name, bert_name, bert_module, output_size, is_sequence_classifier, lr, weight_decay, optimizer_class, scheduler_class, scheduler_kwargs, model_dir, bert_class, device, **model_params)\u001b[0m\n\u001b[1;32m 216\u001b[0m \u001b[0mbert_class\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mbert_class\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 217\u001b[0m \u001b[0mdevice\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mdevice\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 218\u001b[0;31m \u001b[0;34m**\u001b[0m\u001b[0mmodel_params\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 219\u001b[0m )\n\u001b[1;32m 220\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/Desktop/Projects/nlp-uncertainty-zoo/nlp_uncertainty_zoo/models/model.py\u001b[0m in \u001b[0;36m__init__\u001b[0;34m(self, model_name, module_class, model_dir, device, **model_params)\u001b[0m\n\u001b[1;32m 314\u001b[0m \u001b[0mscheduler_class\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmodel_params\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"scheduler_class\"\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 315\u001b[0m self.scheduler = scheduler_class(\n\u001b[0;32m--> 316\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0moptimizer\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmodel_params\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"scheduler_kwargs\"\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 317\u001b[0m )\n\u001b[1;32m 318\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mTypeError\u001b[0m: get_linear_schedule_with_warmup() missing 2 required positional arguments: 'num_warmup_steps' and 'num_training_steps'" + ] + } + ], "source": [ - "# TODO: Training code for Variational BERT" + "variational_bert = VariationalBert(\n", + " bert_name=\"distilbert-base-uncased\", \n", + " output_size=2,\n", + " bert_class=DistilBertModel\n", + ")" ] }, { "cell_type": "markdown", - "id": "805e664c", + "id": "88d6cafc", "metadata": {}, "source": [ "## Evaluating task performance & calibration" @@ -161,7 +242,7 @@ }, { "cell_type": "markdown", - "id": "45ce5006", + "id": "34c2b303", "metadata": {}, "source": [ "Before we continue, let us first evaluate the models to reassure ourselves that the training was successful:" @@ -170,7 +251,7 @@ { "cell_type": "code", "execution_count": null, - "id": "c7b21de1", + "id": "d5fe480a", "metadata": {}, "outputs": [], "source": [ @@ -179,7 +260,7 @@ }, { "cell_type": "markdown", - "id": "57c0c40e", + "id": "78b79c6f", "metadata": {}, "source": [ "We can also evaluate to what extend the probability of a predicted class actually corresponds to the chance of the model actually predicting the correct class, also called *calibration* (Guo et al., 2017). One way to evaluate this propery is the expected calibration error (ECE): By binning predictions with similar confidence scores, we can evaluate if the mean confidence per bin corresponds to the accuracy on the binned samples:" @@ -188,7 +269,7 @@ { "cell_type": "code", "execution_count": null, - "id": "8acaa4fe", + "id": "5298778f", "metadata": {}, "outputs": [], "source": [ @@ -197,7 +278,7 @@ }, { "cell_type": "markdown", - "id": "91320321", + "id": "7a1be622", "metadata": {}, "source": [ "Another approach is evaluation using *prediction sets* (TODO: Citation). The idea here is to sort predictings descendingly and add classes to a set until a certain amount of probability mass - for instance 90 % in the example below - is reached. If the model is well calibrated, these prediction sets should be small and contain the correct class (on average). Using the functions implemented in the package, we evaluate these properties below: " @@ -205,8 +286,8 @@ }, { "cell_type": "code", - "execution_count": 47, - "id": "b49bb6b7", + "execution_count": null, + "id": "0748a7cb", "metadata": {}, "outputs": [], "source": [ @@ -215,7 +296,7 @@ }, { "cell_type": "markdown", - "id": "c1f634a0", + "id": "ea4ab469", "metadata": {}, "source": [ "## Uncertainty quantification\n", @@ -225,18 +306,10 @@ }, { "cell_type": "code", - "execution_count": 43, - "id": "7b2f1bac", + "execution_count": null, + "id": "38e5a9ac", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "the gorgeously elaborate continuation of \" the lord of the rings \" trilogy is so huge that a column of words cannot adequately describe co-writer/director peter jackson's expanded vision of j . r . r . tolkien's middle-earth .\n" - ] - } - ], + "outputs": [], "source": [ "original_sentence = train_set[1][\"text\"]\n", "print(original_sentence)" @@ -244,19 +317,10 @@ }, { "cell_type": "code", - "execution_count": 46, - "id": "907d2416", + "execution_count": null, + "id": "f9222448", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "of vision expanded of lord of . \" huge a . the tolkien's is words describe peter so middle-earth cannot \" the of gorgeously column adequately r co-writer/director j rings . r that continuation trilogy . the jackson's elaborate\n", - "the gorgeously elaborate continuationpn of \" the lsord ofthe rings \" trilogy is sohuge that a column of words cannort adequaely describek co-riter/dzijrector pteorn ackson's expanded vsion of jm . r .r tolkien's middleearth .\n" - ] - } - ], + "outputs": [], "source": [ "# The model hasn't been finetuned on German, so this should be weird\n", "sentence1 = (\n", @@ -290,7 +354,7 @@ }, { "cell_type": "markdown", - "id": "2f512a12", + "id": "831fc2b0", "metadata": {}, "source": [ "We first check the predictions for the sentence above. The original sentence had a positive sentiment, so we first whether our model come to the same conclusion:" @@ -298,8 +362,8 @@ }, { "cell_type": "code", - "execution_count": 44, - "id": "f2d19730", + "execution_count": null, + "id": "89fe259a", "metadata": {}, "outputs": [], "source": [ @@ -308,7 +372,7 @@ }, { "cell_type": "markdown", - "id": "0f07ec96", + "id": "4272fda4", "metadata": {}, "source": [ "Since the sentences are very different from the training sentences, we now measure the uncertainty. Since the inputs above are pretty different from the inputs the models were trained on, we would hope the models to be more uncertain on the noisy sentences. \n", @@ -319,7 +383,7 @@ { "cell_type": "code", "execution_count": null, - "id": "6c60ef34", + "id": "29e90ad6", "metadata": {}, "outputs": [], "source": [ @@ -328,7 +392,7 @@ }, { "cell_type": "markdown", - "id": "426e8b3e", + "id": "3996f260", "metadata": {}, "source": [ "But back to metrics here. An easy and intuitive metric is the maximum softmax probability (TODO: Citation)\n", @@ -350,8 +414,8 @@ }, { "cell_type": "code", - "execution_count": 42, - "id": "156aefeb", + "execution_count": null, + "id": "e21e8401", "metadata": {}, "outputs": [], "source": [ @@ -360,7 +424,7 @@ }, { "cell_type": "markdown", - "id": "e31e8d90", + "id": "7575f64c", "metadata": {}, "source": [ "## Evaluating the quality of uncertainty estimates" @@ -368,7 +432,7 @@ }, { "cell_type": "markdown", - "id": "bfce6eaa", + "id": "f4f5e3ae", "metadata": {}, "source": [ "As we have done before with the raw probalities, we also want to know how reliable the uncertainty estimates for our models are. The package also provides several ways to do this: Firstly, we can evaluate them using an OOD detection task - the model should be more uncertain on data points that are unlike the ones in the training set. By using the uncertainty scores, we can use binary classification metrics like the area under the precision-recall curve (AUPR) and the area under the receiver-operator characteristic (AUROC) to evaluate this. In our Rotten tomatoes example, we will add noise to the sentences in our test set and use these sentences as an OOD data set." @@ -377,7 +441,7 @@ { "cell_type": "code", "execution_count": null, - "id": "ba637cd6", + "id": "edcea9db", "metadata": {}, "outputs": [], "source": [ @@ -386,7 +450,7 @@ }, { "cell_type": "markdown", - "id": "55d213ef", + "id": "29fe9353", "metadata": {}, "source": [ "The other way introduced by Ulmer et al. (2022) is to measure how much high uncertainty corresponds to the model making wrong predictions. This is quantified by collecting the model loss and uncertainty for all points in the test set, and measuring their correlation using the [Kendall's $\\tau$ correlation coefficient](https://en.wikipedia.org/wiki/Kendall_rank_correlation_coefficient). The values range from -1 to 1, which 1 indicating that high uncertainty perfectly correlates with high model loss." @@ -395,7 +459,7 @@ { "cell_type": "code", "execution_count": null, - "id": "9fb64b13", + "id": "a4dbb46a", "metadata": {}, "outputs": [], "source": [ @@ -404,7 +468,7 @@ }, { "cell_type": "markdown", - "id": "96041512", + "id": "568eeb40", "metadata": {}, "source": [ "## Visualizing sentence representations\n", @@ -415,7 +479,7 @@ { "cell_type": "code", "execution_count": null, - "id": "6b96cbe1", + "id": "07851e06", "metadata": {}, "outputs": [], "source": [ @@ -425,7 +489,7 @@ { "cell_type": "code", "execution_count": null, - "id": "8b05b61f", + "id": "65756b39", "metadata": {}, "outputs": [], "source": [ @@ -435,7 +499,7 @@ { "cell_type": "code", "execution_count": null, - "id": "ff28d006", + "id": "b75b4c2f", "metadata": {}, "outputs": [], "source": [ @@ -444,7 +508,7 @@ }, { "cell_type": "markdown", - "id": "498c53a4", + "id": "4e71193f", "metadata": {}, "source": [ "Thanks for reading through this demo! We only showcase the most useful functionalities here that people might want to use when applying the implemented models. If you would like to know more about the different models and functionalities in the package, consult [the documentation](http://dennisulmer.eu/nlp-uncertainty-zoo/). If you find any bugs or have requests for missing features, please [open an issue on the Github repository](https://github.com/Kaleidophon/nlp-uncertainty-zoo/issues). Below you can find the papers that were referenced in this demo:\n", @@ -455,7 +519,7 @@ { "cell_type": "code", "execution_count": null, - "id": "f88ff06c", + "id": "b9b991e8", "metadata": {}, "outputs": [], "source": [] diff --git a/nlp_uncertainty_zoo/models/bayesian_lstm.py b/nlp_uncertainty_zoo/models/bayesian_lstm.py index 99cdfe6..601ed11 100644 --- a/nlp_uncertainty_zoo/models/bayesian_lstm.py +++ b/nlp_uncertainty_zoo/models/bayesian_lstm.py @@ -3,11 +3,12 @@ """ # STD -from typing import Dict, Any, Optional +from typing import Optional # EXT import torch import torch.nn.functional as F +import torch.optim as optim from blitz.modules import BayesianLSTM as BlitzBayesianLSTM # PROJECT @@ -23,11 +24,11 @@ class BayesianLSTMModule(LSTMModule, MultiPredictionMixin): def __init__( self, - num_layers: int, vocab_size: int, + output_size: int, + num_layers: int, input_size: int, hidden_size: int, - output_size: int, dropout: float, prior_sigma_1: float, prior_sigma_2: float, @@ -40,20 +41,20 @@ def __init__( **build_params, ): """ - Initialize a Bayesian LSTM. + Initialize a Bayesian LSTM module. Parameters ---------- - num_layers: int - Number of layers. vocab_size: int Number of input vocabulary. + output_size: int + Number of classes. + num_layers: int + Number of layers. input_size: int Dimensionality of input to the first layer (embedding size). hidden_size: int Size of hidden units. - output_size: int - Number of classes. dropout: float Dropout probability. posterior_rho_init: float @@ -150,14 +151,86 @@ def predict(self, input_: torch.LongTensor, *args, **kwargs) -> torch.FloatTenso class BayesianLSTM(Model): def __init__( self, - model_params: Dict[str, Any], + vocab_size: int, + output_size: int, + num_layers: int = 2, + input_size: int = 650, + hidden_size: int = 650, + dropout: float = 0.3868, + prior_sigma_1: float = 0.7664, + prior_sigma_2: float = 0.851, + prior_pi: float = 0.11, + posterior_mu_init: float = -0.0425, + posterior_rho_init: float = -6, + num_predictions: int = 10, + is_sequence_classifier: bool = True, + lr: float = 0.1114, + weight_decay: float = 0.003016, + optimizer_class: optim.Optimizer = optim.Adam, model_dir: Optional[str] = None, device: Device = "cpu", ): + """ + Initialize a Bayesian LSTM. + + Parameters + ---------- + vocab_size: int + Number of input vocabulary. + output_size: int + Number of classes. + num_layers: int + Number of layers. Default is 2. + input_size: int + Dimensionality of input to the first layer (embedding size). Default is 650. + hidden_size: int + Size of hidden units. Default is 650. + dropout: float + Dropout probability. Default is 0.3868. + prior_sigma_1: float + Prior sigma on the mixture prior distribution 1. Default is 0.7664. + prior_sigma_2: float + Prior sigma on the mixture prior distribution 2. Default is 0.851. + prior_pi: float + Mixture weight of the prior. Default is 0.11. + posterior_mu_init: float + Posterior mean for the weight mu init. Default is -0.0425. + posterior_rho_init: float + Posterior mean for the weight rho init. Default is -6. + num_predictions: int + Number of predictions (forward passes) used to make predictions. Default is 10. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. Default is True. + lr: float + Learning rate. Default is 0.114. + weight_decay: float + Weight decay term for optimizer. Default is 0.003016. + optimizer_class: optim.Optimizer + Optimizer class. Default is Adam. + device: Device + Device the model should be moved to. + """ + super().__init__( "bayesian_lstm", BayesianLSTMModule, - model_params, model_dir, device, + vocab_size=vocab_size, + output_size=output_size, + num_layers=num_layers, + input_size=input_size, + hidden_size=hidden_size, + dropout=dropout, + prior_sigma_1=prior_sigma_1, + prior_sigma_2=prior_sigma_2, + prior_pi=prior_pi, + posterior_mu_init=posterior_mu_init, + posterior_rho_init=posterior_rho_init, + num_predictions=num_predictions, + is_sequence_classifier=is_sequence_classifier, + lr=lr, + weight_decay=weight_decay, + optimizer_class=optimizer_class ) diff --git a/nlp_uncertainty_zoo/models/bert.py b/nlp_uncertainty_zoo/models/bert.py index ab84c86..6b0216d 100644 --- a/nlp_uncertainty_zoo/models/bert.py +++ b/nlp_uncertainty_zoo/models/bert.py @@ -2,15 +2,21 @@ Define BERT modules used in this project and make them consistent with the other models in the repository. """ +from typing import Type, Optional, Dict, Any + # EXT +import numpy as np import torch import torch.nn as nn import torch.nn.functional as F -from transformers import BertModel +import torch.optim as optim +import torch.optim.lr_scheduler as scheduler +from torch.utils.data import DataLoader +from transformers import BertModel as HFBertModel # Rename to avoid collision # PROJECT -from nlp_uncertainty_zoo.models.model import Module -from nlp_uncertainty_zoo.utils.custom_types import Device +from nlp_uncertainty_zoo.models.model import Module, Model +from nlp_uncertainty_zoo.utils.custom_types import Device, WandBRun class BertModule(Module): @@ -24,6 +30,7 @@ def __init__( output_size: int, is_sequence_classifier: bool, device: Device, + bert_class: Type[HFBertModel] = HFBertModel, **build_params, ): """ @@ -40,9 +47,11 @@ def __init__( made at every time step. device: Device Device the model should be moved to. + bert_class: Type[HFBertModel] + Type of BERT to be used. Default is BertModel from the Huggingface transformers package. """ - bert = BertModel.from_pretrained(bert_name).to(device) + bert = bert_class.from_pretrained(bert_name).to(device) hidden_size = bert.config.hidden_size super().__init__( @@ -168,3 +177,88 @@ def get_hidden( activations = return_dict["last_hidden_state"] return activations + + +class BertModel(Model): + """ + Define a BERT model. The only purpose this serves it to provide a warmup_proportion for fit(). Since the number of + training steps is only defined in fit(), it means we can only define the scheduler in that method. + """ + def __init__( + self, + model_name: str, + bert_name: str, + bert_module: Type[BertModule], + output_size: int, + is_sequence_classifier: bool, + lr: float, + weight_decay: float, + optimizer_class: Type[optim.Optimizer] = optim.Adam, + scheduler_class: Optional[Type[scheduler._LRScheduler]] = None, + scheduler_kwargs: Optional[Dict[str, Any]] = None, + model_dir: Optional[str] = None, + bert_class: Type[HFBertModel] = HFBertModel, + device: Device = "cpu", + **model_params, + ): + super().__init__( + model_name=model_name, + bert_name=bert_name, + module_class=bert_module, + output_size=output_size, + is_sequence_classifier=is_sequence_classifier, + lr=lr, + weight_decay=weight_decay, + optimizer_class=optimizer_class, + scheduler_class=scheduler_class, + scheduler_kwargs=scheduler_kwargs, + model_dir=model_dir, + bert_class=bert_class, + device=device, + **model_params, + ) + + def fit( + self, + train_split: DataLoader, + num_training_steps: int, + warmup_proportion: float = 0.1, + valid_split: Optional[DataLoader] = None, + weight_loss: bool = False, + grad_clip: float = 10, + validation_interval: Optional[int] = None, + early_stopping_pat: int = np.inf, + early_stopping: bool = False, + verbose: bool = True, + wandb_run: Optional[WandBRun] = None, + **training_kwargs + ): + assert 0 <= warmup_proportion <= 1, f"warmup_proportion should be in [0, 1], {warmup_proportion} found." + + if self.model_params.get("scheduler_class", None) is not None: + scheduler_class = self.model_params["scheduler_class"] + scheduler_kwargs = self.model_params.get("scheduler_kwargs", {}) + scheduler_kwargs = { + # Warmup prob: 0.1 + "num_warmup_steps": int(num_training_steps * warmup_proportion), + "num_training_steps": num_training_steps, + **scheduler_kwargs + } + self.scheduler = scheduler_class( + self.optimizer, **scheduler_kwargs + ) + + # Now call rest of function + super().fit( + train_split=train_split, + num_training_steps=num_training_steps, + valid_split=valid_split, + weight_loss=weight_loss, + grad_clip=grad_clip, + validation_interval=validation_interval, + early_stopping_pat=early_stopping_pat, + early_stopping=early_stopping, + verbose=verbose, + wandb_run=wandb_run, + **training_kwargs + ) diff --git a/nlp_uncertainty_zoo/models/ddu_transformer.py b/nlp_uncertainty_zoo/models/ddu_transformer.py index e9c3c01..14b9955 100644 --- a/nlp_uncertainty_zoo/models/ddu_transformer.py +++ b/nlp_uncertainty_zoo/models/ddu_transformer.py @@ -5,7 +5,7 @@ # STD import math -from typing import Optional, Dict, Any, List +from typing import Optional, Dict, Any, List, Type # EXT import numpy as np @@ -13,6 +13,8 @@ import torch from einops import rearrange from torch.utils.data import DataLoader +import torch.optim as optim +import torch.optim.lr_scheduler as scheduler # PROJECT from nlp_uncertainty_zoo.models.spectral import ( @@ -203,7 +205,7 @@ def __init__( **build_params, ): """ - Initialize a DDU transformer. + Initialize a DDU transformer module. Parameters ---------- @@ -225,6 +227,8 @@ def __init__( Number of self-attention heads per layer. sequence_length: int Maximum sequence length in dataset. Used to initialize positional embeddings. + spectral_norm_upper_bound: float + Set a limit when weight matrices will be spectrally normalized if their eigenvalue surpasses it. projection_size: int Size hidden dimensions are projected to using PCA to save memory if given. is_sequence_classifier: bool @@ -255,16 +259,83 @@ def __init__( class DDUTransformer(Model): def __init__( self, - model_params: Dict[str, Any], + vocab_size: int, + output_size: int, + input_size: int = 512, + num_layers: int = 6, + hidden_size: int = 512, + input_dropout: float = 0.4362, + dropout: float = 0.4362, + num_heads: int = 16, + sequence_length: int = 128, + spectral_norm_upper_bound: float = 0.9211, + projection_size: int = 64, + ignore_indices: List[int] = tuple(), + is_sequence_classifier: bool = True, + lr: float = 0.4931, + weight_decay: float = 0.001357, + optimizer_class: Type[optim.Optimizer] = optim.Adam, + scheduler_class: Optional[Type[scheduler._LRScheduler]] = None, + scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", ): + """ + Initialize a DDU transformer. + + Parameters + ---------- + vocab_size: int + Vocabulary size. + output_size: int + Size of output of model. + input_size: int + Dimensionality of input to model. Default is 512. + num_layers: int + Number of model layers. Default is 6. + hidden_size: int + Size of hidden representations. Default is 512. + input_dropout: float + Dropout rate. Default is 0.4362. + dropout: float + Dropout rate. Default is 0.4362. + num_heads: int + Number of self-attention heads per layer. Default is 16. + sequence_length: int + Maximum sequence length in dataset. Used to initialize positional embeddings. Default is 128. + projection_size: int + Size hidden dimensions are projected to using PCA to save memory if given. Default is 64. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. Default is True. + ignore_indices: List[int] + Token indices to ignore when fitting the Gaussian Discriminant Analysis. Is empty by default. + device: Device + Device the model is located on. + """ super().__init__( "ddu_transformer", DDUTransformerModule, - model_params, - model_dir, - device, + input_size=input_size, + output_size=output_size, + num_layers=num_layers, + vocab_size=vocab_size, + hidden_size=hidden_size, + input_dropout=input_dropout, + dropout=dropout, + num_heads=num_heads, + sequence_length=sequence_length, + spectral_norm_upper_bound=spectral_norm_upper_bound, + projection_size=projection_size, + ignore_indices=ignore_indices, + is_sequence_classifier=is_sequence_classifier, + lr=lr, + weight_decay=weight_decay, + optimizer_class=optimizer_class, + scheduler_class=scheduler_class, + scheduler_kwargs=scheduler_kwargs, + model_dir=model_dir, + device=device, ) def _finetune( @@ -310,6 +381,27 @@ def __init__( device: Device, **build_params, ): + """ + Initialize a DDU Bert Module. + + Parameters + ---------- + bert_name: str + Name of the underlying BERT, as specified in HuggingFace transformers. + output_size: int + Number of classes. + spectral_norm_upper_bound: float + Set a limit when weight matrices will be spectrally normalized if their eigenvalue surpasses it. + projection_size: int + Size hidden dimensions are projected to using PCA to save memory if given. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. + ignore_indices: List[int] + Token indices to ignore when fitting the Gaussian Discriminant Analysis. Is empty by default. + device: Device + Device the model should be moved to. + """ super().__init__( bert_name, output_size, @@ -356,17 +448,57 @@ def get_uncertainty( class DDUBert(Model): def __init__( self, - model_params: Dict[str, Any], + bert_name: str, + output_size: int, + spectral_norm_upper_bound: float = 0.9211, + projection_size: int = 64, + ignore_indices: List[int] = tuple(), + is_sequence_classifier: bool = True, + lr: float = 0.4931, + weight_decay: float = 0.001357, + optimizer_class: Type[optim.Optimizer] = optim.Adam, + scheduler_class: Optional[Type[scheduler._LRScheduler]] = None, + scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", ): - bert_name = model_params["bert_name"] + """ + Initialize a DDU Bert. + + Parameters + ---------- + bert_name: str + Name of the underlying BERT, as specified in HuggingFace transformers. + output_size: int + Number of classes. + spectral_norm_upper_bound: float + Set a limit when weight matrices will be spectrally normalized if their eigenvalue surpasses it. + projection_size: int + Size hidden dimensions are projected to using PCA to save memory if given. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. + ignore_indices: List[int] + Token indices to ignore when fitting the Gaussian Discriminant Analysis. Is empty by default. + device: Device + Device the model should be moved to. + """ super().__init__( f"ddu-{bert_name}", DDUBertModule, - model_params, - model_dir, - device, + bert_name=bert_name, + output_size=output_size, + spectral_norm_upper_bound=spectral_norm_upper_bound, + projection_size=projection_size, + ignore_indices=ignore_indices, + is_sequence_classifier=is_sequence_classifier, + lr=lr, + weight_decay=weight_decay, + optimizer_class=optimizer_class, + scheduler_class=scheduler_class, + scheduler_kwargs=scheduler_kwargs, + model_dir=model_dir, + device=device, ) def _finetune( diff --git a/nlp_uncertainty_zoo/models/dpp_transformer.py b/nlp_uncertainty_zoo/models/dpp_transformer.py index 6d67deb..325e2b7 100644 --- a/nlp_uncertainty_zoo/models/dpp_transformer.py +++ b/nlp_uncertainty_zoo/models/dpp_transformer.py @@ -5,13 +5,15 @@ """ # STD -from typing import Dict, Any, Optional +from typing import Dict, Any, Optional, Type # EXT from alpaca.uncertainty_estimator.masks import build_mask from einops import rearrange import torch import torch.nn.functional as F +import torch.optim as optim +import torch.optim.lr_scheduler as scheduler # PROJECT from nlp_uncertainty_zoo.models.variational_transformer import VariationalBertModule, VariationalTransformerModule @@ -219,16 +221,46 @@ class DPPTransformer(Model): def __init__( self, - model_params: Dict[str, Any], + vocab_size: int, + output_size: int, + input_size: int, + num_layers: int, + hidden_size: int, + input_dropout: float, + dropout: float, + num_heads: int, + sequence_length: int, + num_predictions: int, + is_sequence_classifier: bool = True, + lr: float = 0.4931, + weight_decay: float = 0.001357, + optimizer_class: Type[optim.Optimizer] = optim.Adam, + scheduler_class: Optional[Type[scheduler._LRScheduler]] = None, + scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", ): super().__init__( f"dpp-transformer", DPPTransformerModule, - model_params, - model_dir, - device, + vocab_size=vocab_size, + output_size=output_size, + input_size=input_size, + num_layers=num_layers, + hidden_size=hidden_size, + input_dropout=input_dropout, + dropout=dropout, + num_heads=num_heads, + sequence_length=sequence_length, + num_predictions=num_predictions, + is_sequence_classifier=is_sequence_classifier, + lr=lr, + weight_decay=weight_decay, + optimizer_class=optimizer_class, + scheduler_class=scheduler_class, + scheduler_kwargs=scheduler_kwargs, + model_dir=model_dir, + device=device, ) @@ -303,15 +335,32 @@ class DPPBert(Model): def __init__( self, - model_params: Dict[str, Any], + bert_name: str, + output_size: int, + dropout: float, + num_predictions: int, + is_sequence_classifier: bool = True, + lr: float = 0.4931, + weight_decay: float = 0.001357, + optimizer_class: Type[optim.Optimizer] = optim.Adam, + scheduler_class: Optional[Type[scheduler._LRScheduler]] = None, + scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", ): - bert_name = model_params["bert_name"] super().__init__( f"dpp-{bert_name}", DPPBertModule, - model_params, - model_dir, - device, + bert_name=bert_name, + output_size=output_size, + dropout=dropout, + num_predictions=num_predictions, + is_sequence_classifier=is_sequence_classifier, + lr=lr, + weight_decay=weight_decay, + optimizer_class=optimizer_class, + scheduler_class=scheduler_class, + scheduler_kwargs=scheduler_kwargs, + model_dir=model_dir, + device=device, ) diff --git a/nlp_uncertainty_zoo/models/lstm.py b/nlp_uncertainty_zoo/models/lstm.py index 53a1ba4..a3ca5f7 100644 --- a/nlp_uncertainty_zoo/models/lstm.py +++ b/nlp_uncertainty_zoo/models/lstm.py @@ -3,9 +3,11 @@ """ # STD -from typing import Dict, Any, Optional, List, Tuple +from typing import Dict, Any, Optional, List, Tuple, Type # EXT +import torch.optim as optim +import torch.optim.lr_scheduler as scheduler import torch import torch.nn as nn import torch.nn.functional as F @@ -191,15 +193,76 @@ def init_hidden_states(self, batch_size: int, device: Device): class LSTM(Model): def __init__( self, - model_params: Dict[str, Any], + vocab_size: int, + output_size: int, + num_layers: int = 2, + input_size: int = 650, + hidden_size: int = 650, + dropout: float = 0.223, + init_weight: Optional[float] = 0.5848, + is_sequence_classifier: bool = True, + lr: float = 0.4931, + weight_decay: float = 0.001357, + optimizer_class: Type[optim.Optimizer] = optim.Adam, + scheduler_class: Optional[Type[scheduler._LRScheduler]] = None, + scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", ): - super().__init__("lstm", LSTMModule, model_params, model_dir, device) + """ + Initialize a LSTM. + + Parameters + ---------- + vocab_size: int + Number of input vocabulary. + output_size: int + Number of classes. + num_layers: int + Number of layers. + input_size: int + Dimensionality of input to the first layer (embedding size). + hidden_size: int + Size of hidden units. + dropout: float + Dropout probability. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. Default is True. + lr: float + Learning rate. Default is 0.4931. + weight_decay: float + Weight decay term for optimizer. Default is 0.001357. + optimizer_class: Type[optim.Optimizer] + Optimizer class. Default is Adam. + scheduler_class: Optional[Type[scheduler._LRScheduler]] + Learning rate scheduler class. Default is None. + scheduler_kwargs: Optional[Dict[str, Any]] + Keyword arguments for learning rate scheduler. Default is None. + device: Device + Device the model should be moved to. + """ + super().__init__( + "lstm", + LSTMModule, + num_layers=num_layers, + vocab_size=vocab_size, + input_size=input_size, + hidden_size=hidden_size, + output_size=output_size, + dropout=dropout, + is_sequence_classifier=is_sequence_classifier, + lr=lr, + weight_decay=weight_decay, + optimizer_class=optimizer_class, + scheduler_class=scheduler_class, + scheduler_kwargs=scheduler_kwargs, + model_dir=model_dir, + device=device, + ) # Only for Zaremba et al. / Gal & Ghahramani replication, I know this isn't pretty - if "init_weight" in model_params: - init_weight = model_params["init_weight"] + if "init_weight" is not None: for layer_weights in self.module.lstm.all_weights: for param in layer_weights: diff --git a/nlp_uncertainty_zoo/models/lstm_ensemble.py b/nlp_uncertainty_zoo/models/lstm_ensemble.py index edcdbd4..5e608f0 100644 --- a/nlp_uncertainty_zoo/models/lstm_ensemble.py +++ b/nlp_uncertainty_zoo/models/lstm_ensemble.py @@ -4,12 +4,13 @@ # STD from collections import Counter -from typing import Optional, Dict, Any, Generator, List +from typing import Optional, Dict, Generator, List, Type, Any import os from datetime import datetime # EXT import torch.optim as optim +import torch.optim.lr_scheduler as scheduler from torch.utils.data import DataLoader from torch.nn.utils import clip_grad_norm_ import dill @@ -44,7 +45,7 @@ def __init__( **build_params, ): """ - Initialize an LSTM. + Initialize a LSTM module. Parameters ---------- @@ -161,77 +162,147 @@ def get_sequence_representation(hidden: torch.FloatTensor) -> torch.FloatTensor: class LSTMEnsemble(Model): def __init__( self, - model_params: Dict[str, Any], + vocab_size: int, + output_size: int, + num_layers: int = 2, + input_size: int = 650, + hidden_size: int = 650, + dropout: float = 0.223, + ensemble_size: int = 10, + init_weight: Optional[float] = 0.5848, + is_sequence_classifier: bool = True, + lr: float = 0.4931, + weight_decay: float = 0.001357, + optimizer_class: Type[optim.Optimizer] = optim.Adam, + scheduler_class: Optional[Type[scheduler._LRScheduler]] = None, + scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", ): + """ + Initialize a LSTM ensemble. + + Parameters + ---------- + vocab_size: int + Number of input vocabulary. + output_size: int + Number of classes. + num_layers: int + Number of layers. + input_size: int + Dimensionality of input to the first layer (embedding size). + hidden_size: int + Size of hidden units. + dropout: float + Dropout probability. + ensemble_size: int + Number of members in the ensemble. Default is 10. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. Default is True. + lr: float + Learning rate. Default is 0.4931. + weight_decay: float + Weight decay term for optimizer. Default is 0.001357. + optimizer_class: Type[optim.Optimizer] + Optimizer class. Default is Adam. + scheduler_class: Optional[Type[scheduler._LRScheduler]] + Learning rate scheduler class. Default is None. + scheduler_kwargs: Optional[Dict[str, Any]] + Keyword arguments for learning rate scheduler. Default is None. + device: Device + Device the model should be moved to. + """ super().__init__( "lstm_ensemble", LSTMEnsembleModule, - model_params, - model_dir, - device, + num_layers=num_layers, + vocab_size=vocab_size, + input_size=input_size, + hidden_size=hidden_size, + output_size=output_size, + dropout=dropout, + ensemble_size=ensemble_size, + is_sequence_classifier=is_sequence_classifier, + lr=lr, + optimizer_class=optimizer_class, + scheduler_class=scheduler_class, + scheduler_kwargs=scheduler_kwargs, + model_dir=model_dir, + device=device, ) - if "init_weight" in model_params: - init_weight = model_params["init_weight"] - + if init_weight is not None: for member in self.module.ensemble_members: for layer_weights in member.lstm.all_weights: for param in layer_weights: param.data.uniform_(-init_weight, init_weight) # Override optimizer and scheduler - optimizer_class = self.model_params.get("optimizer_class", optim.Adam) self.optimizer = optimizer_class( params=[ { "params": self.module.ensemble_members[i].parameters(), - "lr": self.model_params["lr"], - "weight_decay": self.model_params.get("weight_decay", 0) + "lr": lr, + "weight_decay": weight_decay } for i in range(self.module.ensemble_size) ] ) - self.scheduler = None - if "scheduler_class" in self.model_params: - scheduler_class = self.model_params["scheduler_class"] + if scheduler_class is not None: self.scheduler = scheduler_class( - self.optimizer, **self.model_params["scheduler_kwargs"] + self.optimizer, **scheduler_kwargs ) def fit( self, train_split: DataLoader, + num_training_steps: int, valid_split: Optional[DataLoader] = None, - verbose: bool = True, weight_loss: bool = False, + grad_clip: float = 10, + validation_interval: Optional[int] = None, + early_stopping_pat: int = np.inf, + early_stopping: bool = False, + verbose: bool = True, wandb_run: Optional[WandBRun] = None, + **training_kwargs ): """ - Fit the model to training data. + Fit the model to training data. This is a slightly modified function compared to the Model class to accommodate + ensemble training. Parameters ---------- train_split: DataLoader Dataset the model is being trained on. + num_training_steps: int + Number of training steps until completion. valid_split: Optional[DataLoader] Validation set the model is being evaluated on if given. verbose: bool Whether to display information about current loss. weight_loss: bool Weight classes in loss function. Default is False. + grad_clip: float + Parameter grad norm value before it will be clipped. Default is 10. + validation_interval: Optional[int] + Interval of training steps between validations on the validation set. If None, the model is evaluated after + each pass through the training data. + early_stopping_pat: int + Patience in number of training steps before early stopping kicks in. Default is np.inf. + early_stopping: bool + Whether early stopping should be used. Default is False. wandb_run: Optional[WandBRun] Weights and Biases run to track training statistics. Training and validation loss (if applicable) are tracked by default, everything else is defined in _epoch_iter() and _finetune() depending on the model. """ - num_training_steps = self.model_params["num_training_steps"] + if validation_interval is None: + validation_interval = len(train_split) + best_val_loss = np.inf - grad_clip = self.model_params.get("grad_clip", np.inf) - validation_interval = self.model_params["validation_interval"] - early_stopping_pat = self.model_params.get("early_stopping_pat", np.inf) - early_stopping = self.model_params.get("early_stopping", True) num_no_improvements = 0 progress_bar = tqdm(total=num_training_steps) if verbose else None best_model = dict(self.__dict__) diff --git a/nlp_uncertainty_zoo/models/model.py b/nlp_uncertainty_zoo/models/model.py index af79e4f..aeb3949 100644 --- a/nlp_uncertainty_zoo/models/model.py +++ b/nlp_uncertainty_zoo/models/model.py @@ -11,7 +11,7 @@ from collections import Counter from datetime import datetime import dill -from typing import Dict, Any, Optional, Generator +from typing import Dict, Optional, Generator, Callable import os # EX @@ -229,6 +229,16 @@ def get_num_learnable_parameters(self) -> int: return num_parameters + @property + def available_uncertainty_metrics(self) -> Dict[str, Callable]: + """ + Return a dictionary of all available uncertainty metrics of the current model. + """ + return { + **self.single_prediction_uncertainty_metrics, + **self.multi_prediction_uncertainty_metrics + } + class MultiPredictionMixin: """ @@ -256,9 +266,9 @@ def __init__( self, model_name: str, module_class: type, - model_params: Dict[str, Any], model_dir: Optional[str] = None, device: Device = "cpu", + **model_params, ): """ Initialize a module. @@ -269,10 +279,10 @@ def __init__( Name of the model. module_class: type Class of the model that is being wrapped. - model_params: Dict[str, Any] - Parameters to initialize the model. device: Device The device the model is located on. + model_params: Dict[str, Any] + Parameters to initialize the model. """ self.model_name = model_name self.module_class = module_class @@ -283,6 +293,10 @@ def __init__( self.loss_weights = None self.to(device) + # Prepare for ** operator even when empty + if self.model_params["scheduler_kwargs"] is None: + self.model_params["scheduler_kwargs"] = {} + # Initialize optimizer and scheduler optimizer_class = self.model_params.get("optimizer_class", optim.Adam) self.optimizer = optimizer_class( @@ -292,7 +306,11 @@ def __init__( ) self.scheduler = None - if "scheduler_class" in self.model_params: + + if ( + self.model_params.get("scheduler_class", None) is not None and + self.model_params.get("scheduler_kwargs", None) is not None + ): scheduler_class = self.model_params["scheduler_class"] self.scheduler = scheduler_class( self.optimizer, **self.model_params["scheduler_kwargs"] @@ -308,10 +326,16 @@ def __init__( def fit( self, train_split: DataLoader, + num_training_steps: int, valid_split: Optional[DataLoader] = None, - verbose: bool = True, weight_loss: bool = False, + grad_clip: float = 10, + validation_interval: Optional[int] = None, + early_stopping_pat: int = np.inf, + early_stopping: bool = False, + verbose: bool = True, wandb_run: Optional[WandBRun] = None, + **training_kwargs ): """ Fit the model to training data. @@ -320,22 +344,31 @@ def fit( ---------- train_split: DataLoader Dataset the model is being trained on. + num_training_steps: int + Number of training steps until completion. valid_split: Optional[DataLoader] Validation set the model is being evaluated on if given. verbose: bool Whether to display information about current loss. weight_loss: bool Weight classes in loss function. Default is False. + grad_clip: float + Parameter grad norm value before it will be clipped. Default is 10. + validation_interval: Optional[int] + Interval of training steps between validations on the validation set. If None, the model is evaluated after + each pass through the training data. + early_stopping_pat: int + Patience in number of training steps before early stopping kicks in. Default is np.inf. + early_stopping: bool + Whether early stopping should be used. Default is False. wandb_run: Optional[WandBRun] Weights and Biases run to track training statistics. Training and validation loss (if applicable) are tracked by default, everything else is defined in _epoch_iter() and _finetune() depending on the model. """ - num_training_steps = self.model_params["num_training_steps"] + if validation_interval is None: + validation_interval = len(train_split) + best_val_loss = np.inf - grad_clip = self.model_params.get("grad_clip", np.inf) - validation_interval = self.model_params["validation_interval"] - early_stopping_pat = self.model_params.get("early_stopping_pat", np.inf) - early_stopping = self.model_params.get("early_stopping", True) num_no_improvements = 0 progress_bar = tqdm(total=num_training_steps) if verbose else None best_model = dict(self.__dict__) diff --git a/nlp_uncertainty_zoo/models/sngp_transformer.py b/nlp_uncertainty_zoo/models/sngp_transformer.py index 7c1ae45..7445023 100644 --- a/nlp_uncertainty_zoo/models/sngp_transformer.py +++ b/nlp_uncertainty_zoo/models/sngp_transformer.py @@ -5,7 +5,7 @@ # STD import math -from typing import Tuple, Optional, Dict, Any +from typing import Tuple, Optional, Dict, Any, Type import warnings # EXT @@ -14,6 +14,8 @@ from torch import nn as nn from torch.nn import functional as F from torch.utils.data import DataLoader +import torch.optim as optim +import torch.optim.lr_scheduler as scheduler # PROJECT from nlp_uncertainty_zoo.models.spectral import ( @@ -435,16 +437,56 @@ def predict(self, input_: torch.LongTensor, *args, **kwargs) -> torch.FloatTenso class SNGPTransformer(Model): def __init__( self, - model_params: Dict[str, Any], + vocab_size: int, + output_size: int, + num_layers: int, + input_size: int, + hidden_size: int, + input_dropout: float, + dropout: float, + num_heads: int, + sequence_length: int, + spectral_norm_upper_bound: float, + ridge_factor: float, + scaling_coefficient: float, + beta_length_scale: float, + kernel_amplitude: float, + num_predictions: int, + is_sequence_classifier: bool = True, + lr: float = 0.4931, + weight_decay: float = 0.001357, + optimizer_class: Type[optim.Optimizer] = optim.Adam, + scheduler_class: Optional[Type[scheduler._LRScheduler]] = None, + scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", ): super().__init__( "sngp_transformer", SNGPTransformerModule, - model_params, - model_dir, - device, + vocab_size=vocab_size, + output_size=output_size, + num_layers=num_layers, + input_size=input_size, + hidden_size=hidden_size, + input_dropout=input_dropout, + dropout=dropout, + num_heads=num_heads, + sequence_length=sequence_length, + spectral_norm_upper_bound=spectral_norm_upper_bound, + ridge_factor=ridge_factor, + scaling_coefficient=scaling_coefficient, + beta_length_scale=beta_length_scale, + kernel_amplitude=kernel_amplitude, + num_predictions=num_predictions, + is_sequence_classifier=is_sequence_classifier, + lr=lr, + weight_decay=weight_decay, + optimizer_class=optimizer_class, + scheduler_class=scheduler_class, + scheduler_kwargs=scheduler_kwargs, + model_dir=model_dir, + device=device, ) def _finetune( @@ -598,19 +640,46 @@ def predict(self, input_: torch.LongTensor, *args, **kwargs) -> torch.FloatTenso class SNGPBert(Model): def __init__( self, - model_params: Dict[str, Any], + bert_name: str, + output_size: int, + spectral_norm_upper_bound: float, + ridge_factor: float, + scaling_coefficient: float, + beta_length_scale: float, + kernel_amplitude: float, + num_predictions: int, + is_sequence_classifier: bool = True, + lr: float = 0.4931, + weight_decay: float = 0.001357, + weight_decay_beta = 0.01, + optimizer_class: Type[optim.Optimizer] = optim.Adam, + scheduler_class: Optional[Type[scheduler._LRScheduler]] = None, + scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", ): - bert_name = model_params["bert_name"] super().__init__( f"sngp-{bert_name}", SNGPBertModule, - model_params, - model_dir, - device, + bert_name=bert_name, + output_size=output_size, + spectral_norm_upper_bound=spectral_norm_upper_bound, + ridge_factor=ridge_factor, + scaling_coefficient=scaling_coefficient, + beta_length_scale=beta_length_scale, + kernel_amplitude=kernel_amplitude, + num_predictions=num_predictions, + is_sequence_classifier=is_sequence_classifier, + lr=lr, + weight_decay=weight_decay, + weight_decay_beta=weight_decay_beta, + optimizer_class=optimizer_class, + scheduler_class=scheduler_class, + scheduler_kwargs=scheduler_kwargs, + model_dir=model_dir, + device=device, ) - self.weight_decay_beta = model_params["weight_decay_beta"] + self.weight_decay_beta = weight_decay_beta def _finetune( self, diff --git a/nlp_uncertainty_zoo/models/st_tau_lstm.py b/nlp_uncertainty_zoo/models/st_tau_lstm.py index 22ba985..5ef9f0d 100644 --- a/nlp_uncertainty_zoo/models/st_tau_lstm.py +++ b/nlp_uncertainty_zoo/models/st_tau_lstm.py @@ -3,12 +3,14 @@ """ # STD -from typing import Optional, Tuple, Dict, Any +from typing import Optional, Tuple, Dict, Any, Type # EXT import torch from torch import nn as nn from torch.nn import functional as F +import torch.optim as optim +import torch.optim.lr_scheduler as scheduler # PROJECT from nlp_uncertainty_zoo.models.lstm import CellWiseLSTM, LSTMModule @@ -194,14 +196,40 @@ def predict(self, input_: torch.LongTensor, *args, **kwargs) -> torch.FloatTenso class STTauLSTM(Model): def __init__( self, - model_params: Dict[str, Any], + vocab_size: int, + output_size: int, + input_size: int, + hidden_size: int, + num_layers: int, + dropout: float, + num_centroids: int, + num_predictions: int, + is_sequence_classifier: bool = True, + lr: float = 0.4931, + weight_decay: float = 0.001357, + optimizer_class: Type[optim.Optimizer] = optim.Adam, + scheduler_class: Optional[Type[scheduler._LRScheduler]] = None, + scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", ): super().__init__( "st_tau_lstm", STTauLSTMModule, - model_params, - model_dir, - device, + vocab_size=vocab_size, + output_size=output_size, + input_size=input_size, + hidden_size=hidden_size, + num_layers=num_layers, + dropout=dropout, + num_centroids=num_centroids, + num_predictions=num_predictions, + is_sequence_classifier=is_sequence_classifier, + lr=lr, + weight_decay=weight_decay, + optimizer_class=optimizer_class, + scheduler_class=scheduler_class, + scheduler_kwargs=scheduler_kwargs, + model_dir=model_dir, + device=device, ) diff --git a/nlp_uncertainty_zoo/models/transformer.py b/nlp_uncertainty_zoo/models/transformer.py index 5c5fb09..ac50bca 100644 --- a/nlp_uncertainty_zoo/models/transformer.py +++ b/nlp_uncertainty_zoo/models/transformer.py @@ -4,11 +4,13 @@ # STD import math -from typing import Optional, Dict, Any +from typing import Optional, Dict, Any, Type # EXT import torch import torch.nn as nn +import torch.optim as optim +import torch.optim.lr_scheduler as scheduler # PROJECT from nlp_uncertainty_zoo.models.model import Model, Module @@ -165,16 +167,44 @@ def get_sequence_representation( class Transformer(Model): def __init__( self, - model_params: Dict[str, Any], + vocab_size: int, + output_size: int, + input_size: int, + hidden_size: int, + num_layers: int, + input_dropout: float, + dropout: float, + num_heads: int, + sequence_length: int, + is_sequence_classifier: bool = True, + lr: float = 0.4931, + weight_decay: float = 0.001357, + optimizer_class: Type[optim.Optimizer] = optim.Adam, + scheduler_class: Optional[Type[scheduler._LRScheduler]] = None, + scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", ): super().__init__( "transformer", TransformerModule, - model_params, - model_dir, - device, + vocab_size=vocab_size, + output_size=output_size, + input_size=input_size, + hidden_size=hidden_size, + num_layers=num_layers, + input_dropout=input_dropout, + dropout=dropout, + num_heads=num_heads, + sequence_length=sequence_length, + is_sequence_classifier=is_sequence_classifier, + lr=lr, + weight_decay=weight_decay, + optimizer_class=optimizer_class, + scheduler_class=scheduler_class, + scheduler_kwargs=scheduler_kwargs, + model_dir=model_dir, + device=device, ) diff --git a/nlp_uncertainty_zoo/models/variational_lstm.py b/nlp_uncertainty_zoo/models/variational_lstm.py index 98f1135..9ec0d8c 100644 --- a/nlp_uncertainty_zoo/models/variational_lstm.py +++ b/nlp_uncertainty_zoo/models/variational_lstm.py @@ -4,12 +4,14 @@ """ # STD -from typing import Optional, Dict, Any +from typing import Optional, Dict, Any, Type # EXT import torch from torch import nn as nn from torch.nn import functional as F +import torch.optim as optim +import torch.optim.lr_scheduler as scheduler # PROJECT from nlp_uncertainty_zoo.models.model import Module, MultiPredictionMixin, Model @@ -361,21 +363,50 @@ class VariationalLSTM(Model): def __init__( self, - model_params: Dict[str, Any], + vocab_size: int, + output_size: int, + input_size: int, + hidden_size: int, + num_layers: int, + embedding_dropout: float, + layer_dropout: float, + time_dropout: float, + num_predictions: int, + init_weight: Optional[float] = 0.5848, + is_sequence_classifier: bool = True, + lr: float = 0.4931, + weight_decay: float = 0.001357, + optimizer_class: Type[optim.Optimizer] = optim.Adam, + scheduler_class: Optional[Type[scheduler._LRScheduler]] = None, + scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", ): super().__init__( "variational_lstm", VariationalLSTMModule, - model_params, - model_dir, - device, + vocab_size=vocab_size, + output_size=output_size, + input_size=input_size, + hidden_size=hidden_size, + num_layers=num_layers, + embedding_dropout=embedding_dropout, + layer_dropout=layer_dropout, + time_dropout=time_dropout, + num_predictions=num_predictions, + init_weight=init_weight, + is_sequence_classifier=is_sequence_classifier, + lr=lr, + weight_decay=weight_decay, + optimizer_class=optimizer_class, + scheduler_class=scheduler_class, + scheduler_kwargs=scheduler_kwargs, + model_dir=model_dir, + device=device, ) # Only for Gal & Ghahramani replication, I know this isn't pretty - if "init_weight" in model_params: - init_weight = model_params["init_weight"] + if init_weight is not None: for cell in self.module.lstm_layers: cell.weight_hh.data.uniform_(-init_weight, init_weight) diff --git a/nlp_uncertainty_zoo/models/variational_transformer.py b/nlp_uncertainty_zoo/models/variational_transformer.py index a19737c..7f60e65 100644 --- a/nlp_uncertainty_zoo/models/variational_transformer.py +++ b/nlp_uncertainty_zoo/models/variational_transformer.py @@ -3,14 +3,18 @@ """ # STD -from typing import Dict, Any, Optional +from typing import Dict, Any, Optional, Type # EXT import torch import torch.nn.functional as F +import torch.optim as optim +import torch.optim.lr_scheduler as scheduler +import transformers +from transformers import BertModel as HFBertModel # Rename to avoid collision # PROJECT -from nlp_uncertainty_zoo.models.bert import BertModule +from nlp_uncertainty_zoo.models.bert import BertModule, BertModel from nlp_uncertainty_zoo.models.model import Model, MultiPredictionMixin from nlp_uncertainty_zoo.models.transformer import TransformerModule from nlp_uncertainty_zoo.utils.custom_types import Device @@ -151,7 +155,7 @@ def __init__( **build_params, ): """ - Initialize a transformer. + Initialize a variational BERT module. Parameters ---------- @@ -254,22 +258,68 @@ def __init__( ) -class VariationalBert(Model): +class VariationalBert(BertModel): """ Variational version of BERT. """ def __init__( self, - model_params: Dict[str, Any], + bert_name: str, + output_size: int, + dropout: float = 0.4362, + num_predictions: int = 10, + is_sequence_classifier: bool = True, + lr: float = 0.00009742, + weight_decay: float = 0.02731, + optimizer_class: Type[optim.Optimizer] = optim.Adam, + scheduler_class: Optional[Type[scheduler._LRScheduler]] = transformers.get_linear_schedule_with_warmup, + scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, + bert_class: Type[HFBertModel] = HFBertModel, device: Device = "cpu", ): - bert_name = model_params["bert_name"] + """ + Initialize a variational BERT. + + Parameters + ---------- + bert_name: str + Name of the BERT to be used. + dropout: float + Dropout probability. + num_predictions: int + Number of predictions with different dropout masks. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. + lr: float + Learning rate. Default is 0.4931. + weight_decay: float + Weight decay term for optimizer. Default is 0.001357. + optimizer_class: Type[optim.Optimizer] + Optimizer class. Default is Adam. + scheduler_class: Optional[Type[scheduler._LRScheduler]] + Learning rate scheduler class. Default is None. + scheduler_kwargs: Optional[Dict[str, Any]] + Keyword arguments for learning rate scheduler. Default is None. + device: Device + Device the model is located on. + """ super().__init__( - f"variational-{bert_name}", - VariationalBertModule, - model_params, - model_dir, - device, + model_name=f"variational-{bert_name}", + bert_name=bert_name, + bert_module=VariationalBertModule, + output_size=output_size, + dropout=dropout, + num_predictions=num_predictions, + is_sequence_classifier=is_sequence_classifier, + lr=lr, + weight_decay=weight_decay, + optimizer_class=optimizer_class, + scheduler_class=scheduler_class, + scheduler_kwargs=scheduler_kwargs, + model_dir=model_dir, + bert_class=bert_class, + device=device, ) diff --git a/nlp_uncertainty_zoo/utils/custom_types.py b/nlp_uncertainty_zoo/utils/custom_types.py index 0d199ad..4c9f667 100644 --- a/nlp_uncertainty_zoo/utils/custom_types.py +++ b/nlp_uncertainty_zoo/utils/custom_types.py @@ -3,7 +3,7 @@ """ # STD -from typing import List, Union, Dict, Tuple +from typing import List, Union, Dict, Tuple, Any # EXT import torch From 7990f0c9c4074684eee9b52e1dd5410359292121 Mon Sep 17 00:00:00 2001 From: Kaleidophon Date: Tue, 10 Jan 2023 17:23:57 +0100 Subject: [PATCH 03/23] :recycle::books: Reorder input arguments and add missing docstrings --- nlp_uncertainty_zoo/models/bayesian_lstm.py | 26 ++-- nlp_uncertainty_zoo/models/bert.py | 64 ++++++++- nlp_uncertainty_zoo/models/ddu_transformer.py | 74 ++++++---- nlp_uncertainty_zoo/models/dpp_transformer.py | 94 ++++++++++-- nlp_uncertainty_zoo/models/lstm.py | 12 +- nlp_uncertainty_zoo/models/lstm_ensemble.py | 12 +- nlp_uncertainty_zoo/models/model.py | 4 +- .../models/sngp_transformer.py | 134 +++++++++++++++--- nlp_uncertainty_zoo/models/spectral.py | 12 +- nlp_uncertainty_zoo/models/st_tau_lstm.py | 57 ++++++-- nlp_uncertainty_zoo/models/transformer.py | 59 ++++++-- .../models/variational_lstm.py | 59 ++++++-- .../models/variational_transformer.py | 102 +++++++++++-- 13 files changed, 587 insertions(+), 122 deletions(-) diff --git a/nlp_uncertainty_zoo/models/bayesian_lstm.py b/nlp_uncertainty_zoo/models/bayesian_lstm.py index 601ed11..281882b 100644 --- a/nlp_uncertainty_zoo/models/bayesian_lstm.py +++ b/nlp_uncertainty_zoo/models/bayesian_lstm.py @@ -26,9 +26,9 @@ def __init__( self, vocab_size: int, output_size: int, - num_layers: int, input_size: int, hidden_size: int, + num_layers: int, dropout: float, prior_sigma_1: float, prior_sigma_2: float, @@ -49,12 +49,12 @@ def __init__( Number of input vocabulary. output_size: int Number of classes. - num_layers: int - Number of layers. input_size: int Dimensionality of input to the first layer (embedding size). hidden_size: int Size of hidden units. + num_layers: int + Number of layers. dropout: float Dropout probability. posterior_rho_init: float @@ -76,11 +76,11 @@ def __init__( Device the model should be moved to. """ super().__init__( - num_layers, vocab_size, + output_size, input_size, hidden_size, - output_size, + num_layers, dropout, is_sequence_classifier, device, @@ -153,9 +153,9 @@ def __init__( self, vocab_size: int, output_size: int, - num_layers: int = 2, input_size: int = 650, hidden_size: int = 650, + num_layers: int = 2, dropout: float = 0.3868, prior_sigma_1: float = 0.7664, prior_sigma_2: float = 0.851, @@ -179,12 +179,12 @@ def __init__( Number of input vocabulary. output_size: int Number of classes. - num_layers: int - Number of layers. Default is 2. input_size: int Dimensionality of input to the first layer (embedding size). Default is 650. hidden_size: int Size of hidden units. Default is 650. + num_layers: int + Number of layers. Default is 2. dropout: float Dropout probability. Default is 0.3868. prior_sigma_1: float @@ -208,6 +208,8 @@ def __init__( Weight decay term for optimizer. Default is 0.003016. optimizer_class: optim.Optimizer Optimizer class. Default is Adam. + model_dir: Optional[str] + Directory that model should be saved to. device: Device Device the model should be moved to. """ @@ -215,13 +217,11 @@ def __init__( super().__init__( "bayesian_lstm", BayesianLSTMModule, - model_dir, - device, vocab_size=vocab_size, output_size=output_size, - num_layers=num_layers, input_size=input_size, hidden_size=hidden_size, + num_layers=num_layers, dropout=dropout, prior_sigma_1=prior_sigma_1, prior_sigma_2=prior_sigma_2, @@ -232,5 +232,7 @@ def __init__( is_sequence_classifier=is_sequence_classifier, lr=lr, weight_decay=weight_decay, - optimizer_class=optimizer_class + optimizer_class=optimizer_class, + device=device, + model_dir=model_dir ) diff --git a/nlp_uncertainty_zoo/models/bert.py b/nlp_uncertainty_zoo/models/bert.py index 6b0216d..f0cb686 100644 --- a/nlp_uncertainty_zoo/models/bert.py +++ b/nlp_uncertainty_zoo/models/bert.py @@ -188,7 +188,6 @@ def __init__( self, model_name: str, bert_name: str, - bert_module: Type[BertModule], output_size: int, is_sequence_classifier: bool, lr: float, @@ -201,10 +200,41 @@ def __init__( device: Device = "cpu", **model_params, ): + """ + Initialize a BERT model. + + Parameters + ---------- + model_name: str + Name of the model. + bert_name: str + Name of the underlying BERT, as specified in HuggingFace transformers. + output_size: int + Number of classes. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. + lr: float + Learning rate. Default is 0.4931. + weight_decay: float + Weight decay term for optimizer. Default is 0.001357. + optimizer_class: Type[optim.Optimizer] + Optimizer class. Default is Adam. + scheduler_class: Optional[Type[scheduler._LRScheduler]] + Learning rate scheduler class. Default is None. + scheduler_kwargs: Optional[Dict[str, Any]] + Keyword arguments for learning rate scheduler. Default is None. + model_dir: Optional[str] + Directory that model should be saved to. + bert_class: Type[HFBertModel] + Type of BERT to be used. Default is BertModel from the Huggingface transformers package. + device: Device + Device the model is located on. + """ + super().__init__( model_name=model_name, bert_name=bert_name, - module_class=bert_module, output_size=output_size, is_sequence_classifier=is_sequence_classifier, lr=lr, @@ -233,6 +263,36 @@ def fit( wandb_run: Optional[WandBRun] = None, **training_kwargs ): + """ + Fit the model to training data. + + Parameters + ---------- + train_split: DataLoader + Dataset the model is being trained on. + num_training_steps: int + Number of training steps until completion. + warmup_proportion: float + Percentage of warmup steps for triangular learning rate schedule. Default is 0.1. + valid_split: Optional[DataLoader] + Validation set the model is being evaluated on if given. + verbose: bool + Whether to display information about current loss. + weight_loss: bool + Weight classes in loss function. Default is False. + grad_clip: float + Parameter grad norm value before it will be clipped. Default is 10. + validation_interval: Optional[int] + Interval of training steps between validations on the validation set. If None, the model is evaluated after + each pass through the training data. + early_stopping_pat: int + Patience in number of training steps before early stopping kicks in. Default is np.inf. + early_stopping: bool + Whether early stopping should be used. Default is False. + wandb_run: Optional[WandBRun] + Weights and Biases run to track training statistics. Training and validation loss (if applicable) are + tracked by default, everything else is defined in _epoch_iter() and _finetune() depending on the model. + """ assert 0 <= warmup_proportion <= 1, f"warmup_proportion should be in [0, 1], {warmup_proportion} found." if self.model_params.get("scheduler_class", None) is not None: diff --git a/nlp_uncertainty_zoo/models/ddu_transformer.py b/nlp_uncertainty_zoo/models/ddu_transformer.py index 14b9955..5e528fa 100644 --- a/nlp_uncertainty_zoo/models/ddu_transformer.py +++ b/nlp_uncertainty_zoo/models/ddu_transformer.py @@ -188,11 +188,11 @@ class DDUTransformerModule(SpectralTransformerModule, DDUMixin): def __init__( self, - num_layers: int, vocab_size: int, + output_size: int, input_size: int, hidden_size: int, - output_size: int, + num_layers: int, input_dropout: float, dropout: float, num_heads: int, @@ -209,16 +209,16 @@ def __init__( Parameters ---------- - num_layers: int - Number of model layers. vocab_size: int Vocabulary size. + output_size: int + Size of output of model. input_size: int Dimensionality of input to model. hidden_size: int Size of hidden representations. - output_size: int - Size of output of model. + num_layers: int + Number of model layers. input_dropout: float Input dropout added to embeddings. dropout: float @@ -262,14 +262,14 @@ def __init__( vocab_size: int, output_size: int, input_size: int = 512, - num_layers: int = 6, hidden_size: int = 512, + projection_size: int = 64, + num_layers: int = 6, input_dropout: float = 0.4362, dropout: float = 0.4362, num_heads: int = 16, sequence_length: int = 128, spectral_norm_upper_bound: float = 0.9211, - projection_size: int = 64, ignore_indices: List[int] = tuple(), is_sequence_classifier: bool = True, lr: float = 0.4931, @@ -291,10 +291,12 @@ def __init__( Size of output of model. input_size: int Dimensionality of input to model. Default is 512. - num_layers: int - Number of model layers. Default is 6. hidden_size: int Size of hidden representations. Default is 512. + projection_size: int + Size hidden dimensions are projected to using PCA to save memory if given. Default is 64. + num_layers: int + Number of model layers. Default is 6. input_dropout: float Dropout rate. Default is 0.4362. dropout: float @@ -303,13 +305,25 @@ def __init__( Number of self-attention heads per layer. Default is 16. sequence_length: int Maximum sequence length in dataset. Used to initialize positional embeddings. Default is 128. - projection_size: int - Size hidden dimensions are projected to using PCA to save memory if given. Default is 64. + spectral_norm_upper_bound: float + Set a limit when weight matrices will be spectrally normalized if their eigenvalue surpasses it. + ignore_indices: List[int] + Token indices to ignore when fitting the Gaussian Discriminant Analysis. Is empty by default. is_sequence_classifier: bool Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to made at every time step. Default is True. - ignore_indices: List[int] - Token indices to ignore when fitting the Gaussian Discriminant Analysis. Is empty by default. + lr: float + Learning rate. Default is 0.4931. + weight_decay: float + Weight decay term for optimizer. Default is 0.001357. + optimizer_class: Type[optim.Optimizer] + Optimizer class. Default is Adam. + scheduler_class: Optional[Type[scheduler._LRScheduler]] + Learning rate scheduler class. Default is None. + scheduler_kwargs: Optional[Dict[str, Any]] + Keyword arguments for learning rate scheduler. Default is None. + model_dir: Optional[str] + Directory that model should be saved to. device: Device Device the model is located on. """ @@ -374,8 +388,8 @@ def __init__( self, bert_name: str, output_size: int, - spectral_norm_upper_bound: float, projection_size: int, + spectral_norm_upper_bound: float, is_sequence_classifier: bool, ignore_indices: List[int], device: Device, @@ -390,10 +404,10 @@ def __init__( Name of the underlying BERT, as specified in HuggingFace transformers. output_size: int Number of classes. - spectral_norm_upper_bound: float - Set a limit when weight matrices will be spectrally normalized if their eigenvalue surpasses it. projection_size: int Size hidden dimensions are projected to using PCA to save memory if given. + spectral_norm_upper_bound: float + Set a limit when weight matrices will be spectrally normalized if their eigenvalue surpasses it. is_sequence_classifier: bool Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to made at every time step. @@ -450,8 +464,8 @@ def __init__( self, bert_name: str, output_size: int, - spectral_norm_upper_bound: float = 0.9211, projection_size: int = 64, + spectral_norm_upper_bound: float = 0.9211, ignore_indices: List[int] = tuple(), is_sequence_classifier: bool = True, lr: float = 0.4931, @@ -471,17 +485,29 @@ def __init__( Name of the underlying BERT, as specified in HuggingFace transformers. output_size: int Number of classes. - spectral_norm_upper_bound: float - Set a limit when weight matrices will be spectrally normalized if their eigenvalue surpasses it. projection_size: int Size hidden dimensions are projected to using PCA to save memory if given. - is_sequence_classifier: bool - Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to - made at every time step. + spectral_norm_upper_bound: float + Set a limit when weight matrices will be spectrally normalized if their eigenvalue surpasses it. ignore_indices: List[int] Token indices to ignore when fitting the Gaussian Discriminant Analysis. Is empty by default. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. Default is True. + lr: float + Learning rate. Default is 0.4931. + weight_decay: float + Weight decay term for optimizer. Default is 0.001357. + optimizer_class: Type[optim.Optimizer] + Optimizer class. Default is Adam. + scheduler_class: Optional[Type[scheduler._LRScheduler]] + Learning rate scheduler class. Default is None. + scheduler_kwargs: Optional[Dict[str, Any]] + Keyword arguments for learning rate scheduler. Default is None. + model_dir: Optional[str] + Directory that model should be saved to. device: Device - Device the model should be moved to. + Device the model is located on. """ super().__init__( f"ddu-{bert_name}", diff --git a/nlp_uncertainty_zoo/models/dpp_transformer.py b/nlp_uncertainty_zoo/models/dpp_transformer.py index 325e2b7..612d340 100644 --- a/nlp_uncertainty_zoo/models/dpp_transformer.py +++ b/nlp_uncertainty_zoo/models/dpp_transformer.py @@ -145,11 +145,11 @@ def calc_non_zero_neurons(sum_mask) -> float: class DPPTransformerModule(VariationalTransformerModule): def __init__( self, - num_layers: int, vocab_size: int, + output_size: int, input_size: int, hidden_size: int, - output_size: int, + num_layers: int, input_dropout: float, dropout: float, num_heads: int, @@ -164,16 +164,16 @@ def __init__( Parameters ---------- - num_layers: int - Number of model layers. vocab_size: int Vocabulary size. + output_size: int + Size of output of model. input_size: int Dimensionality of input to model. hidden_size: int Size of hidden representations. - output_size: int - Size of output of model. + num_layers: int + Number of model layers. input_dropout: float Dropout on word embeddings. dropout: float @@ -191,11 +191,11 @@ def __init__( Device the model is located on. """ super().__init__( - num_layers, vocab_size, + output_size, input_size, hidden_size, - output_size, + num_layers, input_dropout, dropout, num_heads, @@ -224,8 +224,8 @@ def __init__( vocab_size: int, output_size: int, input_size: int, - num_layers: int, hidden_size: int, + num_layers: int, input_dropout: float, dropout: float, num_heads: int, @@ -240,14 +240,57 @@ def __init__( model_dir: Optional[str] = None, device: Device = "cpu", ): + """ + Initialize a DPP transformer model. + + Parameters + ---------- + vocab_size: int + Vocabulary size. + output_size: int + Size of output of model. + input_size: int + Dimensionality of input to model. + hidden_size: int + Size of hidden representations. + num_layers: int + Number of model layers. + input_dropout: float + Dropout on word embeddings. + dropout: float + Dropout rate. + num_heads: int + Number of self-attention heads per layer. + sequence_length: int + Maximum sequence length in dataset. Used to initialize positional embeddings. + num_predictions: int + Number of predictions with different dropout masks. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. + lr: float + Learning rate. Default is 0.4931. + weight_decay: float + Weight decay term for optimizer. Default is 0.001357. + optimizer_class: Type[optim.Optimizer] + Optimizer class. Default is Adam. + scheduler_class: Optional[Type[scheduler._LRScheduler]] + Learning rate scheduler class. Default is None. + scheduler_kwargs: Optional[Dict[str, Any]] + Keyword arguments for learning rate scheduler. Default is None. + model_dir: Optional[str] + Directory that model should be saved to. + device: Device + Device the model is located on. + """ super().__init__( f"dpp-transformer", DPPTransformerModule, vocab_size=vocab_size, output_size=output_size, input_size=input_size, - num_layers=num_layers, hidden_size=hidden_size, + num_layers=num_layers, input_dropout=input_dropout, dropout=dropout, num_heads=num_heads, @@ -348,6 +391,37 @@ def __init__( model_dir: Optional[str] = None, device: Device = "cpu", ): + """ + Initialize a DPP Bert. + + Parameters + ---------- + bert_name: str + Name of the underlying BERT, as specified in HuggingFace transformers. + output_size: int + Number of classes. + dropout: float + Dropout rate. + num_predictions: int + Number of predictions with different dropout masks. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. Default is True. + lr: float + Learning rate. Default is 0.4931. + weight_decay: float + Weight decay term for optimizer. Default is 0.001357. + optimizer_class: Type[optim.Optimizer] + Optimizer class. Default is Adam. + scheduler_class: Optional[Type[scheduler._LRScheduler]] + Learning rate scheduler class. Default is None. + scheduler_kwargs: Optional[Dict[str, Any]] + Keyword arguments for learning rate scheduler. Default is None. + model_dir: Optional[str] + Directory that model should be saved to. + device: Device + Device the model is located on. + """ super().__init__( f"dpp-{bert_name}", DPPBertModule, diff --git a/nlp_uncertainty_zoo/models/lstm.py b/nlp_uncertainty_zoo/models/lstm.py index a3ca5f7..f7b0561 100644 --- a/nlp_uncertainty_zoo/models/lstm.py +++ b/nlp_uncertainty_zoo/models/lstm.py @@ -195,9 +195,9 @@ def __init__( self, vocab_size: int, output_size: int, - num_layers: int = 2, input_size: int = 650, hidden_size: int = 650, + num_layers: int = 2, dropout: float = 0.223, init_weight: Optional[float] = 0.5848, is_sequence_classifier: bool = True, @@ -218,12 +218,12 @@ def __init__( Number of input vocabulary. output_size: int Number of classes. - num_layers: int - Number of layers. input_size: int Dimensionality of input to the first layer (embedding size). hidden_size: int Size of hidden units. + num_layers: int + Number of layers. dropout: float Dropout probability. is_sequence_classifier: bool @@ -239,17 +239,19 @@ def __init__( Learning rate scheduler class. Default is None. scheduler_kwargs: Optional[Dict[str, Any]] Keyword arguments for learning rate scheduler. Default is None. + model_dir: Optional[str] + Directory that model should be saved to. device: Device Device the model should be moved to. """ super().__init__( "lstm", LSTMModule, - num_layers=num_layers, vocab_size=vocab_size, + output_size=output_size, input_size=input_size, hidden_size=hidden_size, - output_size=output_size, + num_layers=num_layers, dropout=dropout, is_sequence_classifier=is_sequence_classifier, lr=lr, diff --git a/nlp_uncertainty_zoo/models/lstm_ensemble.py b/nlp_uncertainty_zoo/models/lstm_ensemble.py index 5e608f0..0c92fd0 100644 --- a/nlp_uncertainty_zoo/models/lstm_ensemble.py +++ b/nlp_uncertainty_zoo/models/lstm_ensemble.py @@ -164,9 +164,9 @@ def __init__( self, vocab_size: int, output_size: int, - num_layers: int = 2, input_size: int = 650, hidden_size: int = 650, + num_layers: int = 2, dropout: float = 0.223, ensemble_size: int = 10, init_weight: Optional[float] = 0.5848, @@ -188,12 +188,12 @@ def __init__( Number of input vocabulary. output_size: int Number of classes. - num_layers: int - Number of layers. input_size: int Dimensionality of input to the first layer (embedding size). hidden_size: int Size of hidden units. + num_layers: int + Number of layers. dropout: float Dropout probability. ensemble_size: int @@ -211,17 +211,19 @@ def __init__( Learning rate scheduler class. Default is None. scheduler_kwargs: Optional[Dict[str, Any]] Keyword arguments for learning rate scheduler. Default is None. + model_dir: Optional[str] + Directory that model should be saved to. device: Device Device the model should be moved to. """ super().__init__( "lstm_ensemble", LSTMEnsembleModule, - num_layers=num_layers, vocab_size=vocab_size, + output_size=output_size, input_size=input_size, hidden_size=hidden_size, - output_size=output_size, + num_layers=num_layers, dropout=dropout, ensemble_size=ensemble_size, is_sequence_classifier=is_sequence_classifier, diff --git a/nlp_uncertainty_zoo/models/model.py b/nlp_uncertainty_zoo/models/model.py index aeb3949..b231ea9 100644 --- a/nlp_uncertainty_zoo/models/model.py +++ b/nlp_uncertainty_zoo/models/model.py @@ -279,10 +279,10 @@ def __init__( Name of the model. module_class: type Class of the model that is being wrapped. + model_dir: Optional[str] + Directory that model should be saved to. device: Device The device the model is located on. - model_params: Dict[str, Any] - Parameters to initialize the model. """ self.model_name = model_name self.module_class = module_class diff --git a/nlp_uncertainty_zoo/models/sngp_transformer.py b/nlp_uncertainty_zoo/models/sngp_transformer.py index 7445023..833d295 100644 --- a/nlp_uncertainty_zoo/models/sngp_transformer.py +++ b/nlp_uncertainty_zoo/models/sngp_transformer.py @@ -284,11 +284,11 @@ class SNGPTransformerModule(SpectralTransformerModule, MultiPredictionMixin): def __init__( self, - num_layers: int, vocab_size: int, + output_size: int, input_size: int, hidden_size: int, - output_size: int, + num_layers: int, input_dropout: float, dropout: float, num_heads: int, @@ -308,16 +308,16 @@ def __init__( Parameters ---------- - num_layers: int - Number of model layers. vocab_size: int Vocabulary size. + output_size: int + Size of output of model. input_size: int Dimensionality of input to model. hidden_size: int Size of hidden representations. - output_size: int - Size of output of model. + num_layers: int + Number of model layers. input_dropout: float Input dropout added to embeddings. dropout: float @@ -347,11 +347,11 @@ def __init__( Device the model is located on. """ super().__init__( - num_layers, vocab_size, + output_size, input_size, hidden_size, - output_size, + num_layers, input_dropout, dropout, num_heads, @@ -363,14 +363,14 @@ def __init__( MultiPredictionMixin.__init__(self, num_predictions) self.sngp_layer = SNGPModule( - input_size, - output_size, - ridge_factor, - scaling_coefficient, - beta_length_scale, - kernel_amplitude, - num_predictions, - device, + input_size=input_size, + output_size=output_size, + ridge_factor=ridge_factor, + scaling_coefficient=scaling_coefficient, + beta_length_scale=beta_length_scale, + kernel_amplitude=kernel_amplitude, + num_predictions=num_predictions, + device=device, ) self.layer_norm = nn.LayerNorm([input_size]) @@ -439,9 +439,9 @@ def __init__( self, vocab_size: int, output_size: int, - num_layers: int, input_size: int, hidden_size: int, + num_layers: int, input_dropout: float, dropout: float, num_heads: int, @@ -461,14 +461,69 @@ def __init__( model_dir: Optional[str] = None, device: Device = "cpu", ): + """ + Initialize a SNGP transformer model. + + Parameters + ---------- + vocab_size: int + Vocabulary size. + output_size: int + Size of output of model. + input_size: int + Dimensionality of input to model. + hidden_size: int + Size of hidden representations. + num_layers: int + Number of model layers. + input_dropout: float + Input dropout added to embeddings. + dropout: float + Dropout rate. + num_heads: int + Number of self-attention heads per layer. + sequence_length: int + Maximum sequence length in dataset. Used to initialize positional embeddings. + spectral_norm_upper_bound: float + Set a limit when weight matrices will be spectrally normalized if their eigenvalue surpasses it. + ridge_factor: float + Factor that identity sigma hat matrices of the SNGP layer are multiplied by. + scaling_coefficient: float + Momentum factor that is used when updating the sigma hat matrix of the SNGP layer during the last training + epoch. + beta_length_scale: float + Factor for the variance parameter of the normal distribution all beta parameters of the SNGP layer are + initialized from. + kernel_amplitude: float + Kernel amplitude used when computing GP features. + num_predictions: int + Number of predictions sampled from the GP in the SNGP layer to come to the final prediction. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. + lr: float + Learning rate. Default is 0.4931. + weight_decay: float + Weight decay term for optimizer. Default is 0.001357. + optimizer_class: Type[optim.Optimizer] + Optimizer class. Default is Adam. + scheduler_class: Optional[Type[scheduler._LRScheduler]] + Learning rate scheduler class. Default is None. + scheduler_kwargs: Optional[Dict[str, Any]] + Keyword arguments for learning rate scheduler. Default is None. + model_dir: Optional[str] + Directory that model should be saved to. + device: Device + Device the model is located on. + """ super().__init__( "sngp_transformer", SNGPTransformerModule, vocab_size=vocab_size, output_size=output_size, - num_layers=num_layers, input_size=input_size, hidden_size=hidden_size, + num_layers=num_layers, input_dropout=input_dropout, dropout=dropout, num_heads=num_heads, @@ -658,6 +713,49 @@ def __init__( model_dir: Optional[str] = None, device: Device = "cpu", ): + """ + Initialize a BERT model with spectrally-normalized Gaussian Process output layer. + + Parameters + ---------- + bert_name: str + Name of the underlying BERT, as specified in HuggingFace transformers. + output_size: int + Number of classes. + spectral_norm_upper_bound: float + Set a limit when weight matrices will be spectrally normalized if their eigenvalue surpasses it. + ridge_factor: float + Factor that identity sigma hat matrices of the SNGP layer are multiplied by. + scaling_coefficient: float + Momentum factor that is used when updating the sigma hat matrix of the SNGP layer during the last training + epoch. + beta_length_scale: float + Factor for the variance parameter of the normal distribution all beta parameters of the SNGP layer are + initialized from. + kernel_amplitude: float + Kernel amplitude used when computing GP features. + num_predictions: int + Number of predictions sampled from the GP in the SNGP layer to come to the final prediction. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. + lr: float + Learning rate. Default is 0.4931. + weight_decay: float + Weight decay term for optimizer. Default is 0.001357. + weight_decay: float + Separate weight decay term for the Beta matrix. Default is 0.01. + optimizer_class: Type[optim.Optimizer] + Optimizer class. Default is Adam. + scheduler_class: Optional[Type[scheduler._LRScheduler]] + Learning rate scheduler class. Default is None. + scheduler_kwargs: Optional[Dict[str, Any]] + Keyword arguments for learning rate scheduler. Default is None. + model_dir: Optional[str] + Directory that model should be saved to. + device: Device + Device the model is located on. + """ super().__init__( f"sngp-{bert_name}", SNGPBertModule, diff --git a/nlp_uncertainty_zoo/models/spectral.py b/nlp_uncertainty_zoo/models/spectral.py index 3b69047..3eee656 100644 --- a/nlp_uncertainty_zoo/models/spectral.py +++ b/nlp_uncertainty_zoo/models/spectral.py @@ -156,11 +156,11 @@ class SpectralTransformerModule(TransformerModule): def __init__( self, - num_layers: int, vocab_size: int, + output_size: int, input_size: int, hidden_size: int, - output_size: int, + num_layers: int, input_dropout: float, dropout: float, num_heads: int, @@ -176,16 +176,16 @@ def __init__( Parameters ---------- - num_layers: int - Number of model layers. vocab_size: int Vocabulary size. + output_size: int + Size of output of model. input_size: int Dimensionality of input to model. hidden_size: int Size of hidden representations. - output_size: int - Size of output of model. + num_layers: int + Number of model layers. input_dropout: float Dropout on word embeddings. dropout: float diff --git a/nlp_uncertainty_zoo/models/st_tau_lstm.py b/nlp_uncertainty_zoo/models/st_tau_lstm.py index 5ef9f0d..b346f03 100644 --- a/nlp_uncertainty_zoo/models/st_tau_lstm.py +++ b/nlp_uncertainty_zoo/models/st_tau_lstm.py @@ -76,11 +76,11 @@ class STTauLSTMModule(LSTMModule, MultiPredictionMixin): def __init__( self, - num_layers: int, vocab_size: int, + output_size: int, input_size: int, hidden_size: int, - output_size: int, + num_layers: int, dropout: float, num_centroids: int, num_predictions: int, @@ -93,16 +93,16 @@ def __init__( Parameters ---------- - num_layers: int - Number of layers. vocab_size: int Number of input vocabulary. + output_size: int + Number of classes. input_size: int Dimensionality of input to the first layer (embedding size). hidden_size: int Size of hidden units. - output_size: int - Number of classes. + num_layers: int + Number of layers. dropout: float Dropout probability. num_centroids: int @@ -116,11 +116,11 @@ def __init__( Device the model should be moved to. """ super().__init__( - num_layers, vocab_size, + output_size, input_size, hidden_size, - output_size, + num_layers, dropout, is_sequence_classifier, device, @@ -213,6 +213,47 @@ def __init__( model_dir: Optional[str] = None, device: Device = "cpu", ): + """ + Initialize a ST-tau LSTM model. + + Parameters + ---------- + vocab_size: int + Number of input vocabulary. + output_size: int + Number of classes. + input_size: int + Dimensionality of input to the first layer (embedding size). + hidden_size: int + Size of hidden units. + num_layers: int + Number of layers. + dropout: float + Dropout probability. + num_centroids: int + Number of states in the underlying finite-state automaton. + num_predictions: int + Number of predictions (forward passes) used to make predictions. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. + lr: float + Learning rate. Default is 0.4931. + weight_decay: float + Weight decay term for optimizer. Default is 0.001357. + weight_decay: float + Separate weight decay term for the Beta matrix. Default is 0.01. + optimizer_class: Type[optim.Optimizer] + Optimizer class. Default is Adam. + scheduler_class: Optional[Type[scheduler._LRScheduler]] + Learning rate scheduler class. Default is None. + scheduler_kwargs: Optional[Dict[str, Any]] + Keyword arguments for learning rate scheduler. Default is None. + model_dir: Optional[str] + Directory that model should be saved to. + device: Device + Device the model is located on. + """ super().__init__( "st_tau_lstm", STTauLSTMModule, diff --git a/nlp_uncertainty_zoo/models/transformer.py b/nlp_uncertainty_zoo/models/transformer.py index ac50bca..087e8e5 100644 --- a/nlp_uncertainty_zoo/models/transformer.py +++ b/nlp_uncertainty_zoo/models/transformer.py @@ -24,11 +24,11 @@ class TransformerModule(Module): def __init__( self, - num_layers: int, vocab_size: int, + output_size: int, input_size: int, hidden_size: int, - output_size: int, + num_layers: int, input_dropout: float, dropout: float, num_heads: int, @@ -42,16 +42,16 @@ def __init__( Parameters ---------- - num_layers: int - Number of model layers. vocab_size: int Vocabulary size. + output_size: int + Size of output of model. input_size: int Dimensionality of input to model. hidden_size: int Size of hidden representations. - output_size: int - Size of output of model. + num_layers: int + Number of model layers. input_dropout: float Dropout on word embeddings. dropout: float @@ -68,11 +68,11 @@ def __init__( """ super().__init__( - num_layers, vocab_size, + output_size, input_size, hidden_size, - output_size, + num_layers, is_sequence_classifier, device, ) @@ -185,6 +185,49 @@ def __init__( model_dir: Optional[str] = None, device: Device = "cpu", ): + """ + Initialize a transformer module. + + Parameters + ---------- + vocab_size: int + Vocabulary size. + output_size: int + Size of output of model. + input_size: int + Dimensionality of input to model. + hidden_size: int + Size of hidden representations. + num_layers: int + Number of model layers. + input_dropout: float + Dropout on word embeddings. + dropout: float + Dropout rate. + num_heads: int + Number of self-attention heads per layer. + sequence_length: int + Maximum sequence length in dataset. Used to initialize positional embeddings. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. + lr: float + Learning rate. Default is 0.4931. + weight_decay: float + Weight decay term for optimizer. Default is 0.001357. + weight_decay: float + Separate weight decay term for the Beta matrix. Default is 0.01. + optimizer_class: Type[optim.Optimizer] + Optimizer class. Default is Adam. + scheduler_class: Optional[Type[scheduler._LRScheduler]] + Learning rate scheduler class. Default is None. + scheduler_kwargs: Optional[Dict[str, Any]] + Keyword arguments for learning rate scheduler. Default is None. + model_dir: Optional[str] + Directory that model should be saved to. + device: Device + Device the model is located on. + """ super().__init__( "transformer", TransformerModule, diff --git a/nlp_uncertainty_zoo/models/variational_lstm.py b/nlp_uncertainty_zoo/models/variational_lstm.py index 9ec0d8c..bf14de1 100644 --- a/nlp_uncertainty_zoo/models/variational_lstm.py +++ b/nlp_uncertainty_zoo/models/variational_lstm.py @@ -64,11 +64,11 @@ class VariationalLSTMModule(Module, MultiPredictionMixin): def __init__( self, - num_layers: int, vocab_size: int, + output_size: int, input_size: int, hidden_size: int, - output_size: int, + num_layers: int, embedding_dropout: float, layer_dropout: float, time_dropout: float, @@ -82,16 +82,16 @@ def __init__( Parameters ---------- - num_layers: int - Number of layers. vocab_size: int Number of input vocabulary. + output_size: int + Number of classes. input_size: int Dimensionality of input to the first layer (embedding size). hidden_size: int Size of hidden units. - output_size: int - Number of classes. + num_layers: int + Number of layers. embedding_dropout: float Dropout probability for the input embeddings. layer_dropout: float @@ -107,11 +107,11 @@ def __init__( Device the model should be moved to. """ super().__init__( - num_layers, vocab_size, + output_size, input_size, hidden_size, - output_size, + num_layers, is_sequence_classifier, device, ) @@ -382,6 +382,49 @@ def __init__( model_dir: Optional[str] = None, device: Device = "cpu", ): + """ + Initialize a variational LSTM model. + + Parameters + ---------- + vocab_size: int + Number of input vocabulary. + output_size: int + Number of classes. + input_size: int + Dimensionality of input to the first layer (embedding size). + hidden_size: int + Size of hidden units. + num_layers: int + Number of layers. + embedding_dropout: float + Dropout probability for the input embeddings. + layer_dropout: float + Dropout probability for hidden states between layers. + time_dropout: float + Dropout probability for hidden states between time steps. + num_predictions: int + Number of predictions (forward passes) used to make predictions. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. + lr: float + Learning rate. Default is 0.4931. + weight_decay: float + Weight decay term for optimizer. Default is 0.001357. + weight_decay: float + Separate weight decay term for the Beta matrix. Default is 0.01. + optimizer_class: Type[optim.Optimizer] + Optimizer class. Default is Adam. + scheduler_class: Optional[Type[scheduler._LRScheduler]] + Learning rate scheduler class. Default is None. + scheduler_kwargs: Optional[Dict[str, Any]] + Keyword arguments for learning rate scheduler. Default is None. + model_dir: Optional[str] + Directory that model should be saved to. + device: Device + Device the model is located on. + """ super().__init__( "variational_lstm", VariationalLSTMModule, diff --git a/nlp_uncertainty_zoo/models/variational_transformer.py b/nlp_uncertainty_zoo/models/variational_transformer.py index 7f60e65..2e4b109 100644 --- a/nlp_uncertainty_zoo/models/variational_transformer.py +++ b/nlp_uncertainty_zoo/models/variational_transformer.py @@ -27,11 +27,11 @@ class VariationalTransformerModule(TransformerModule, MultiPredictionMixin): def __init__( self, - num_layers: int, vocab_size: int, + output_size: int, input_size: int, hidden_size: int, - output_size: int, + num_layers: int, input_dropout: float, dropout: float, num_heads: int, @@ -42,20 +42,20 @@ def __init__( **build_params, ): """ - Initialize a transformer. + Initialize a variational transformer. Parameters ---------- - num_layers: int - Number of model layers. vocab_size: int Vocabulary size. + output_size: int + Size of output of model. input_size: int Dimensionality of input to model. hidden_size: int Size of hidden representations. - output_size: int - Size of output of model. + num_layers: int + Number of model layers. input_dropout: float Dropout on word embeddings. dropout: float @@ -74,11 +74,11 @@ def __init__( """ super().__init__( - num_layers, vocab_size, + output_size, input_size, hidden_size, - output_size, + num_layers, input_dropout, dropout, num_heads, @@ -245,16 +245,89 @@ class VariationalTransformer(Model): def __init__( self, - model_params: Dict[str, Any], + vocab_size: int, + output_size: int, + input_size: int, + hidden_size: int, + num_layers: int, + input_dropout: float, + dropout: float, + num_heads: int, + sequence_length: int, + num_predictions: int, + is_sequence_classifier: bool, + lr: float = 0.4931, + weight_decay: float = 0.001357, + optimizer_class: Type[optim.Optimizer] = optim.Adam, + scheduler_class: Optional[Type[scheduler._LRScheduler]] = None, + scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", ): + """ + Initialize a variational transformer model. + + Parameters + ---------- + vocab_size: int + Vocabulary size. + output_size: int + Size of output of model. + input_size: int + Dimensionality of input to model. + hidden_size: int + Size of hidden representations. + num_layers: int + Number of model layers. + input_dropout: float + Dropout on word embeddings. + dropout: float + Dropout rate. + num_heads: int + Number of self-attention heads per layer. + sequence_length: int + Maximum sequence length in dataset. Used to initialize positional embeddings. + num_predictions: int + Number of predictions with different dropout masks. + is_sequence_classifier: bool + Indicate whether model is going to be used as a sequence classifier. Otherwise, predictions are going to + made at every time step. + lr: float + Learning rate. Default is 0.4931. + weight_decay: float + Weight decay term for optimizer. Default is 0.001357. + optimizer_class: Type[optim.Optimizer] + Optimizer class. Default is Adam. + scheduler_class: Optional[Type[scheduler._LRScheduler]] + Learning rate scheduler class. Default is None. + scheduler_kwargs: Optional[Dict[str, Any]] + Keyword arguments for learning rate scheduler. Default is None. + model_dir: Optional[str] + Directory that model should be saved to. + device: Device + Device the model is located on. + """ super().__init__( "variational_transformer", VariationalTransformerModule, - model_params, - model_dir, - device, + vocab_size=vocab_size, + output_size=output_size, + input_size=input_size, + hidden_size=hidden_size, + num_layers=num_layers, + input_dropout=input_dropout, + dropout=dropout, + num_heads=num_heads, + sequence_length=sequence_length, + num_predictions=num_predictions, + is_sequence_classifier=is_sequence_classifier, + lr=lr, + weight_decay=weight_decay, + optimizer_class=optimizer_class, + scheduler_class=scheduler_class, + scheduler_kwargs=scheduler_kwargs, + model_dir=model_dir, + device=device, ) @@ -276,7 +349,6 @@ def __init__( scheduler_class: Optional[Type[scheduler._LRScheduler]] = transformers.get_linear_schedule_with_warmup, scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, - bert_class: Type[HFBertModel] = HFBertModel, device: Device = "cpu", ): """ @@ -303,6 +375,8 @@ def __init__( Learning rate scheduler class. Default is None. scheduler_kwargs: Optional[Dict[str, Any]] Keyword arguments for learning rate scheduler. Default is None. + model_dir: Optional[str] + Directory that model should be saved to. device: Device Device the model is located on. """ From 434c078006dbf7dd07f6bb4945d62323f3805627 Mon Sep 17 00:00:00 2001 From: Kaleidophon Date: Wed, 11 Jan 2023 12:24:53 +0100 Subject: [PATCH 04/23] :bug: Fix bugs through unit tests --- nlp_uncertainty_zoo/models/bayesian_lstm.py | 20 +++--- nlp_uncertainty_zoo/models/bert.py | 4 ++ nlp_uncertainty_zoo/models/ddu_transformer.py | 30 +++++---- nlp_uncertainty_zoo/models/dpp_transformer.py | 6 +- nlp_uncertainty_zoo/models/lstm.py | 3 +- nlp_uncertainty_zoo/models/lstm_ensemble.py | 1 + .../models/sngp_transformer.py | 62 ++++++++++--------- nlp_uncertainty_zoo/models/spectral.py | 22 +++---- nlp_uncertainty_zoo/models/st_tau_lstm.py | 18 +++--- nlp_uncertainty_zoo/models/transformer.py | 25 ++++---- .../models/variational_lstm.py | 2 + .../models/variational_transformer.py | 7 ++- .../tests/test_module_functions.py | 15 ++--- 13 files changed, 124 insertions(+), 91 deletions(-) diff --git a/nlp_uncertainty_zoo/models/bayesian_lstm.py b/nlp_uncertainty_zoo/models/bayesian_lstm.py index 281882b..204f366 100644 --- a/nlp_uncertainty_zoo/models/bayesian_lstm.py +++ b/nlp_uncertainty_zoo/models/bayesian_lstm.py @@ -76,14 +76,14 @@ def __init__( Device the model should be moved to. """ super().__init__( - vocab_size, - output_size, - input_size, - hidden_size, - num_layers, - dropout, - is_sequence_classifier, - device, + vocab_size=vocab_size, + output_size=output_size, + input_size=input_size, + hidden_size=hidden_size, + num_layers=num_layers, + dropout=dropout, + is_sequence_classifier=is_sequence_classifier, + device=device, ) MultiPredictionMixin.__init__(self, num_predictions) self.lstm = LayerWiseLSTM( @@ -169,6 +169,7 @@ def __init__( optimizer_class: optim.Optimizer = optim.Adam, model_dir: Optional[str] = None, device: Device = "cpu", + **model_params ): """ Initialize a Bayesian LSTM. @@ -234,5 +235,6 @@ def __init__( weight_decay=weight_decay, optimizer_class=optimizer_class, device=device, - model_dir=model_dir + model_dir=model_dir, + **model_params ) diff --git a/nlp_uncertainty_zoo/models/bert.py b/nlp_uncertainty_zoo/models/bert.py index f0cb686..08a472b 100644 --- a/nlp_uncertainty_zoo/models/bert.py +++ b/nlp_uncertainty_zoo/models/bert.py @@ -187,6 +187,7 @@ class BertModel(Model): def __init__( self, model_name: str, + module_class: type, bert_name: str, output_size: int, is_sequence_classifier: bool, @@ -207,6 +208,8 @@ def __init__( ---------- model_name: str Name of the model. + module_class: type + Class of the model that is being wrapped. bert_name: str Name of the underlying BERT, as specified in HuggingFace transformers. output_size: int @@ -234,6 +237,7 @@ def __init__( super().__init__( model_name=model_name, + module_class=module_class, bert_name=bert_name, output_size=output_size, is_sequence_classifier=is_sequence_classifier, diff --git a/nlp_uncertainty_zoo/models/ddu_transformer.py b/nlp_uncertainty_zoo/models/ddu_transformer.py index 5e528fa..23c5495 100644 --- a/nlp_uncertainty_zoo/models/ddu_transformer.py +++ b/nlp_uncertainty_zoo/models/ddu_transformer.py @@ -240,18 +240,18 @@ def __init__( Device the model is located on. """ super().__init__( - num_layers, - vocab_size, - input_size, - hidden_size, - output_size, - input_dropout, - dropout, - num_heads, - sequence_length, - spectral_norm_upper_bound, - is_sequence_classifier, - device, + vocab_size=vocab_size, + output_size=output_size, + input_size=input_size, + hidden_size=hidden_size, + num_layers=num_layers, + input_dropout=input_dropout, + dropout=dropout, + num_heads=num_heads, + sequence_length=sequence_length, + spectral_norm_upper_bound=spectral_norm_upper_bound, + is_sequence_classifier=is_sequence_classifier, + device=device, ) DDUMixin.__init__(self, input_size, output_size, ignore_indices, projection_size) @@ -279,6 +279,7 @@ def __init__( scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", + **model_params ): """ Initialize a DDU transformer. @@ -350,6 +351,7 @@ def __init__( scheduler_kwargs=scheduler_kwargs, model_dir=model_dir, device=device, + **model_params ) def _finetune( @@ -475,6 +477,7 @@ def __init__( scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", + **model_params ): """ Initialize a DDU Bert. @@ -511,7 +514,7 @@ def __init__( """ super().__init__( f"ddu-{bert_name}", - DDUBertModule, + module_class=DDUBertModule, bert_name=bert_name, output_size=output_size, spectral_norm_upper_bound=spectral_norm_upper_bound, @@ -525,6 +528,7 @@ def __init__( scheduler_kwargs=scheduler_kwargs, model_dir=model_dir, device=device, + **model_params ) def _finetune( diff --git a/nlp_uncertainty_zoo/models/dpp_transformer.py b/nlp_uncertainty_zoo/models/dpp_transformer.py index 612d340..7b9d2b7 100644 --- a/nlp_uncertainty_zoo/models/dpp_transformer.py +++ b/nlp_uncertainty_zoo/models/dpp_transformer.py @@ -239,6 +239,7 @@ def __init__( scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", + **model_params ): """ Initialize a DPP transformer model. @@ -304,6 +305,7 @@ def __init__( scheduler_kwargs=scheduler_kwargs, model_dir=model_dir, device=device, + **model_params ) @@ -390,6 +392,7 @@ def __init__( scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", + **model_params ): """ Initialize a DPP Bert. @@ -424,7 +427,7 @@ def __init__( """ super().__init__( f"dpp-{bert_name}", - DPPBertModule, + module_class=DPPBertModule, bert_name=bert_name, output_size=output_size, dropout=dropout, @@ -437,4 +440,5 @@ def __init__( scheduler_kwargs=scheduler_kwargs, model_dir=model_dir, device=device, + **model_params ) diff --git a/nlp_uncertainty_zoo/models/lstm.py b/nlp_uncertainty_zoo/models/lstm.py index f7b0561..178920c 100644 --- a/nlp_uncertainty_zoo/models/lstm.py +++ b/nlp_uncertainty_zoo/models/lstm.py @@ -208,6 +208,7 @@ def __init__( scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", + **model_params ): """ Initialize a LSTM. @@ -264,7 +265,7 @@ def __init__( ) # Only for Zaremba et al. / Gal & Ghahramani replication, I know this isn't pretty - if "init_weight" is not None: + if init_weight is not None: for layer_weights in self.module.lstm.all_weights: for param in layer_weights: diff --git a/nlp_uncertainty_zoo/models/lstm_ensemble.py b/nlp_uncertainty_zoo/models/lstm_ensemble.py index 0c92fd0..d164c6d 100644 --- a/nlp_uncertainty_zoo/models/lstm_ensemble.py +++ b/nlp_uncertainty_zoo/models/lstm_ensemble.py @@ -178,6 +178,7 @@ def __init__( scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", + **model_params ): """ Initialize a LSTM ensemble. diff --git a/nlp_uncertainty_zoo/models/sngp_transformer.py b/nlp_uncertainty_zoo/models/sngp_transformer.py index 833d295..3bcee1d 100644 --- a/nlp_uncertainty_zoo/models/sngp_transformer.py +++ b/nlp_uncertainty_zoo/models/sngp_transformer.py @@ -347,24 +347,25 @@ def __init__( Device the model is located on. """ super().__init__( - vocab_size, - output_size, - input_size, - hidden_size, - num_layers, - input_dropout, - dropout, - num_heads, - sequence_length, - spectral_norm_upper_bound, - is_sequence_classifier, - device, + vocab_size=vocab_size, + output_size=output_size, + input_size=input_size, + hidden_size=hidden_size, + num_layers=num_layers, + input_dropout=input_dropout, + dropout=dropout, + num_heads=num_heads, + sequence_length=sequence_length, + spectral_norm_upper_bound=spectral_norm_upper_bound, + is_sequence_classifier=is_sequence_classifier, + device=device, ) MultiPredictionMixin.__init__(self, num_predictions) self.sngp_layer = SNGPModule( input_size=input_size, output_size=output_size, + hidden_size=hidden_size, ridge_factor=ridge_factor, scaling_coefficient=scaling_coefficient, beta_length_scale=beta_length_scale, @@ -372,7 +373,7 @@ def __init__( num_predictions=num_predictions, device=device, ) - self.layer_norm = nn.LayerNorm([input_size]) + self.layer_norm = nn.LayerNorm([hidden_size]) def forward(self, input_: torch.LongTensor, **kwargs) -> torch.FloatTensor: out = self.get_hidden(input_) @@ -386,6 +387,7 @@ def get_hidden(self, input_: torch.LongTensor, **kwargs) -> torch.FloatTensor: embeddings = self.input_dropout(embeddings) out = self.encoder(embeddings) + out = self.projection(out) if self.is_sequence_classifier: out = self.get_sequence_representation(out) @@ -460,6 +462,7 @@ def __init__( scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", + **model_params ): """ Initialize a SNGP transformer model. @@ -518,7 +521,7 @@ def __init__( """ super().__init__( "sngp_transformer", - SNGPTransformerModule, + module_class=SNGPTransformerModule, vocab_size=vocab_size, output_size=output_size, input_size=input_size, @@ -542,6 +545,7 @@ def __init__( scheduler_kwargs=scheduler_kwargs, model_dir=model_dir, device=device, + **model_params ) def _finetune( @@ -602,24 +606,24 @@ def __init__( Device the model is located on. """ super().__init__( - bert_name, - output_size, - spectral_norm_upper_bound, - is_sequence_classifier, - device, + bert_name=bert_name, + output_size=output_size, + spectral_norm_upper_bound=spectral_norm_upper_bound, + is_sequence_classifier=is_sequence_classifier, + device=device, ) MultiPredictionMixin.__init__(self, num_predictions) hidden_size = self.bert.config.hidden_size self.sngp_layer = SNGPModule( - hidden_size, - output_size, - ridge_factor, - scaling_coefficient, - beta_length_scale, - kernel_amplitude, - num_predictions, - device, + hidden_size=hidden_size, + output_size=output_size, + ridge_factor=ridge_factor, + scaling_coefficient=scaling_coefficient, + beta_length_scale=beta_length_scale, + kernel_amplitude=kernel_amplitude, + num_predictions=num_predictions, + device=device, ) self.layer_norm = nn.LayerNorm([hidden_size]) @@ -712,6 +716,7 @@ def __init__( scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", + **model_params ): """ Initialize a BERT model with spectrally-normalized Gaussian Process output layer. @@ -758,7 +763,7 @@ def __init__( """ super().__init__( f"sngp-{bert_name}", - SNGPBertModule, + module_class=SNGPBertModule, bert_name=bert_name, output_size=output_size, spectral_norm_upper_bound=spectral_norm_upper_bound, @@ -776,6 +781,7 @@ def __init__( scheduler_kwargs=scheduler_kwargs, model_dir=model_dir, device=device, + **model_params ) self.weight_decay_beta = weight_decay_beta diff --git a/nlp_uncertainty_zoo/models/spectral.py b/nlp_uncertainty_zoo/models/spectral.py index 3eee656..6ca6e20 100644 --- a/nlp_uncertainty_zoo/models/spectral.py +++ b/nlp_uncertainty_zoo/models/spectral.py @@ -203,17 +203,17 @@ def __init__( Device the model is located on. """ super().__init__( - num_layers, - vocab_size, - input_size, - hidden_size, - output_size, - input_dropout, - dropout, - num_heads, - sequence_length, - is_sequence_classifier, - device, + vocab_size=vocab_size, + output_size=output_size, + input_size=input_size, + hidden_size=hidden_size, + num_layers=num_layers, + input_dropout=input_dropout, + dropout=dropout, + num_heads=num_heads, + sequence_length=sequence_length, + is_sequence_classifier=is_sequence_classifier, + device=device, ) # Add spectral normalization diff --git a/nlp_uncertainty_zoo/models/st_tau_lstm.py b/nlp_uncertainty_zoo/models/st_tau_lstm.py index b346f03..5ca3203 100644 --- a/nlp_uncertainty_zoo/models/st_tau_lstm.py +++ b/nlp_uncertainty_zoo/models/st_tau_lstm.py @@ -116,14 +116,14 @@ def __init__( Device the model should be moved to. """ super().__init__( - vocab_size, - output_size, - input_size, - hidden_size, - num_layers, - dropout, - is_sequence_classifier, - device, + vocab_size=vocab_size, + output_size=output_size, + input_size=input_size, + hidden_size=hidden_size, + num_layers=num_layers, + dropout=dropout, + is_sequence_classifier=is_sequence_classifier, + device=device, ) MultiPredictionMixin.__init__(self, num_predictions) layer_sizes = [input_size] + [hidden_size] * num_layers @@ -212,6 +212,7 @@ def __init__( scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", + **model_params ): """ Initialize a ST-tau LSTM model. @@ -273,4 +274,5 @@ def __init__( scheduler_kwargs=scheduler_kwargs, model_dir=model_dir, device=device, + **model_params ) diff --git a/nlp_uncertainty_zoo/models/transformer.py b/nlp_uncertainty_zoo/models/transformer.py index 087e8e5..e3822cc 100644 --- a/nlp_uncertainty_zoo/models/transformer.py +++ b/nlp_uncertainty_zoo/models/transformer.py @@ -68,25 +68,25 @@ def __init__( """ super().__init__( - vocab_size, - output_size, - input_size, - hidden_size, - num_layers, - is_sequence_classifier, - device, + vocab_size=vocab_size, + output_size=output_size, + input_size=input_size, + hidden_size=hidden_size, + num_layers=num_layers, + is_sequence_classifier=is_sequence_classifier, + device=device, ) self.dropout = dropout self.input_dropout = nn.Dropout(input_dropout) - self.output_dropout = nn.Dropout(self.dropout) + self.output_dropout = nn.Dropout(dropout) self.num_heads = num_heads self.sequence_length = sequence_length self.word_embeddings = nn.Embedding(vocab_size, input_size) self.pos_embeddings = PositionalEmbedding(sequence_length, input_size) - self.pooler = nn.Linear(input_size, input_size) - self.output = nn.Linear(input_size, output_size) + self.projection = nn.Linear(input_size, hidden_size) + self.output = nn.Linear(hidden_size, output_size) encoder_layer = nn.TransformerEncoderLayer( d_model=input_size, @@ -117,6 +117,7 @@ def get_hidden( embeddings = self.input_dropout(embeddings) hidden = self.encoder(embeddings) + hidden = self.projection(hidden) return hidden @@ -159,7 +160,7 @@ def get_sequence_representation( Representation for the current sequence. """ hidden = hidden[:, 0, :].unsqueeze(1) - hidden = torch.tanh(self.pooler(hidden)) + hidden = torch.tanh(hidden) return hidden @@ -184,6 +185,7 @@ def __init__( scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", + **model_params ): """ Initialize a transformer module. @@ -248,6 +250,7 @@ def __init__( scheduler_kwargs=scheduler_kwargs, model_dir=model_dir, device=device, + **model_params ) diff --git a/nlp_uncertainty_zoo/models/variational_lstm.py b/nlp_uncertainty_zoo/models/variational_lstm.py index bf14de1..7552aa7 100644 --- a/nlp_uncertainty_zoo/models/variational_lstm.py +++ b/nlp_uncertainty_zoo/models/variational_lstm.py @@ -381,6 +381,7 @@ def __init__( scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", + **model_params ): """ Initialize a variational LSTM model. @@ -446,6 +447,7 @@ def __init__( scheduler_kwargs=scheduler_kwargs, model_dir=model_dir, device=device, + **model_params ) # Only for Gal & Ghahramani replication, I know this isn't pretty diff --git a/nlp_uncertainty_zoo/models/variational_transformer.py b/nlp_uncertainty_zoo/models/variational_transformer.py index 2e4b109..99449eb 100644 --- a/nlp_uncertainty_zoo/models/variational_transformer.py +++ b/nlp_uncertainty_zoo/models/variational_transformer.py @@ -263,6 +263,7 @@ def __init__( scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", + **model_params ): """ Initialize a variational transformer model. @@ -328,6 +329,7 @@ def __init__( scheduler_kwargs=scheduler_kwargs, model_dir=model_dir, device=device, + **model_params ) @@ -350,6 +352,7 @@ def __init__( scheduler_kwargs: Optional[Dict[str, Any]] = None, model_dir: Optional[str] = None, device: Device = "cpu", + **model_params ): """ Initialize a variational BERT. @@ -383,7 +386,7 @@ def __init__( super().__init__( model_name=f"variational-{bert_name}", bert_name=bert_name, - bert_module=VariationalBertModule, + module_class=VariationalBertModule, output_size=output_size, dropout=dropout, num_predictions=num_predictions, @@ -394,6 +397,6 @@ def __init__( scheduler_class=scheduler_class, scheduler_kwargs=scheduler_kwargs, model_dir=model_dir, - bert_class=bert_class, device=device, + **model_params ) diff --git a/nlp_uncertainty_zoo/tests/test_module_functions.py b/nlp_uncertainty_zoo/tests/test_module_functions.py index 95ca531..6cf8fb3 100644 --- a/nlp_uncertainty_zoo/tests/test_module_functions.py +++ b/nlp_uncertainty_zoo/tests/test_module_functions.py @@ -120,8 +120,7 @@ class AbstractFunctionTests(unittest.TestCase, ABC): logit_multi_shape = None uncertainty_scores_shape = None - @property - def trained_models(self) -> Generator[Tuple[str, Model], None, None]: + def trained_models(self, progress_bar: tqdm) -> Generator[Tuple[str, Model], None, None]: """ Returns a generator of trained models to avoid having to hold all trained models in memory. @@ -151,8 +150,10 @@ def _init_and_train_model(model_name: str) -> Tuple[str, Model]: ] = self.mock_dataset_builder.sequence_length # Init and fit model - model = AVAILABLE_MODELS[model_name](model_params) - model.fit(train_split=mock_dataset["train"], verbose=False) + progress_bar.set_description(f'Testing model "{model_name}"') + + model = AVAILABLE_MODELS[model_name](**model_params) + model.fit(train_split=mock_dataset["train"], verbose=False, **model_params) return model_name, model @@ -169,13 +170,13 @@ def test_all(self): return with tqdm(total=len(AVAILABLE_MODELS)) as progress_bar: - for model_name, trained_model in self.trained_models: - progress_bar.set_description(f'Testing model "{model_name}"') - progress_bar.update(1) + for model_name, trained_model in self.trained_models(progress_bar): self._test_module_functions(trained_model) self._test_uncertainty_metrics(trained_model) + progress_bar.update(1) + del trained_model # Free up memory def _test_module_functions(self, model: Model): From cf7fe45858c5fe7b8c712e6914ed2a9bd2bae4d4 Mon Sep 17 00:00:00 2001 From: Kaleidophon Date: Wed, 11 Jan 2023 15:57:27 +0100 Subject: [PATCH 05/23] :sparkles::books: Set default parameters and update docstrings --- docs/_build/doctrees/environment.pickle | Bin 211008 -> 213554 bytes ...certainty_zoo.models.bayesian_lstm.doctree | Bin 47944 -> 48873 bytes .../nlp_uncertainty_zoo.models.bert.doctree | Bin 45636 -> 77117 bytes ...rtainty_zoo.models.ddu_transformer.doctree | Bin 85956 -> 89093 bytes ...rtainty_zoo.models.dpp_transformer.doctree | Bin 88060 -> 89996 bytes .../nlp_uncertainty_zoo.models.lstm.doctree | Bin 92133 -> 92923 bytes ...certainty_zoo.models.lstm_ensemble.doctree | Bin 82870 -> 94822 bytes .../nlp_uncertainty_zoo.models.model.doctree | Bin 142120 -> 154761 bytes ...tainty_zoo.models.sngp_transformer.doctree | Bin 150760 -> 156126 bytes ...lp_uncertainty_zoo.models.spectral.doctree | Bin 78557 -> 78557 bytes ...uncertainty_zoo.models.st_tau_lstm.doctree | Bin 66678 -> 67765 bytes ...uncertainty_zoo.models.transformer.doctree | Bin 57282 -> 58699 bytes ...tainty_zoo.models.variational_lstm.doctree | Bin 91182 -> 93086 bytes ...zoo.models.variational_transformer.doctree | Bin 102401 -> 104344 bytes docs/genindex.html | 8 +- docs/index.html | 5 ++ ..._uncertainty_zoo.models.bayesian_lstm.html | 4 +- docs/nlp_uncertainty_zoo.models.bert.html | 50 ++++++++++- ...ncertainty_zoo.models.ddu_transformer.html | 8 +- ...ncertainty_zoo.models.dpp_transformer.html | 6 +- docs/nlp_uncertainty_zoo.models.lstm.html | 4 +- ..._uncertainty_zoo.models.lstm_ensemble.html | 20 ++++- docs/nlp_uncertainty_zoo.models.model.html | 22 ++++- ...certainty_zoo.models.sngp_transformer.html | 6 +- docs/nlp_uncertainty_zoo.models.spectral.html | 2 +- ...lp_uncertainty_zoo.models.st_tau_lstm.html | 4 +- ...lp_uncertainty_zoo.models.transformer.html | 4 +- ...certainty_zoo.models.variational_lstm.html | 4 +- ...ty_zoo.models.variational_transformer.html | 8 +- docs/searchindex.js | 2 +- nlp_uncertainty_zoo/defaults.py | 15 +++- nlp_uncertainty_zoo/models/bayesian_lstm.py | 28 +++--- nlp_uncertainty_zoo/models/ddu_transformer.py | 51 ++++++----- nlp_uncertainty_zoo/models/dpp_transformer.py | 72 +++++++-------- nlp_uncertainty_zoo/models/lstm.py | 46 +++++----- nlp_uncertainty_zoo/models/lstm_ensemble.py | 62 ++++++------- nlp_uncertainty_zoo/models/model.py | 7 +- .../models/sngp_transformer.py | 83 ++++++++++-------- nlp_uncertainty_zoo/models/st_tau_lstm.py | 34 ++++--- nlp_uncertainty_zoo/models/transformer.py | 28 +++--- .../models/variational_lstm.py | 40 ++++----- .../models/variational_transformer.py | 75 ++++++++-------- 42 files changed, 407 insertions(+), 291 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index a3da7f099ed264340291a64b22f9e55dcbe46a54..3101d0c7b84d27be0054a56bc6741627f1e84c92 100644 GIT binary patch literal 213554 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�kEf1fpF z$)vxVkcb_XeJ=oPI_e+ME-ubiVdObrEn`jKS!)5AVq~W#6AUq;@2doqZ`gBd2$Zi` zQ=WF9EIisB^#v(djthn}qhbS)=tuZ3`CfR7O?9#{ou6W;U>%bnu-2Y6LkO(0rabKs zIDZ6ZD3cAvo!KF=&ssXBhT=98NN74LL1ec*tA-HSVNH43A+o;Ea^VCWQc`Z`$6AeA zzF01FBKhLU>;P$7%f=KS+f4wX?xq|{HtpFo1V_!9^0b3vWzB7kyMPM!QG$x-c_(ko z4vRNfOT`oxy7w$XR}$@@42aj;GiV5iU$Uk=?SNQIToEi}=LI0cDl#Ucd>ztD94)E1f+jKG;r1AAf9 zb0J_}cC~H5tVSdDCaKc27}~OntbNt9O2&e;B$(dj5)!dFZR$$Xg`t3xOHJ2Imejqi z$)zTE!~H}acfXg1eJ-tdnTEDf@y6AfV&&fVTEar?Vi&@{NVqp*Eqfn@thjWKwU`VC z4IJwdpCX2OBimnM&twH2w&%>yZXd9wEZOb-X-Tk!ffQXSjBa%Nry$|m?MtTCZZGE- z21@4pX%MMh6-{OEZKATp3%s9LfOsZ-%D)v(}U)Q~qa!MC>T+yEC8bbeqw|p>wXWwSAKQX95Ykh}2a7S6k^H zIwu3*$JT1{3<2=J)|96m0P~z~t5JxAa@(>aV0h9HaE%=Tpm#C^uCnLO5CU7QDNj2D z))X2i-4<*>k#D-K0v>HR9*ynu*#YsewO~w5f^ORh$t5WID#POedtMFUam^fsH)T*fY0su1D1O?S^0b3ujw^+Y@5_#acUud> z6bV*gBlJyH|2yn?GgSZEtSL{s`j^5CanY$(+xd>ujaY=QWyirkSxdwe2f9+eWD)pI z%7FL>dnOG5@psmgryUS;+LAq3wJmcRu^dQDP8wll51?cSo1ruuF?%QqwIxyur{Ii5H_6<2?-;h=I4S8nYka_kEd%?b8ci1=V7yE`CWZ$r- z>>GBOeZ#)9Z`gJA4Q0T-p)lAtlnVQX;$h!VPV5^BjD17Nv2Q5C@LShgGG1+rf+UHW z+r99Lw}QgJ#r;OYi{8RwqXw_57jctlz`J)|f&5w2YBW0e_Ld4x2)X0*X8e-@D}6?CD_5Y<<@)0d)|_~Q*YFFvtPQS-n_+ zr{m@3RJ_m@1&;3F&oLVq%s>`*ohUVmAgFyAsPN~B@sc|n9+1^1CU<9HGB~J;=kQ2y z>QFWYoem7D(Qd~DLGH=IW55now@ZQr9EFuPAQG>j14=&zVMCFgcR9UNIh6#L$Y8}A zd0AZNpEm4P4dD$0pubym{e@d{Az7ido5sqpCQ~nV;b{idq+YQWbI^#;>hp@Yi4u+E`HTlpCpqqqUj};lwmA@Oi7D)fCC6 z!;H!%-X0hsD^2kx@LCJh28~e>xFj!P7H^w@#VZ!Od7x5nk$h}<1;K^qi!Ig0j!t34$Q zUoByV(EVw7BL;?JN8t5P03|JM^(^uz-kF-qfDwVc+d!>{%BLZGH40=Se1b-GqbhPY zYLv7kaIkN@R?8>5-8foIf4V?6?&+N0xWLg}_@kM*i=)f9y4_A+L_UNol@Z(n5*%Sh zC9Te$XU7xQq9`Ykn{1ZBQcfIC3Ij0`VBL1mNn{83v1e%^Bx3ADRbts)QfIStE6t|8 zTZud)x|JhGEZmAnDaoyfcjxxdrUVS__J6bjk4QJkt%!FATqsbpAD8JS`4Sy9HtKKH zjW8VvvY=Lwkf8(75fwnJbs#z_5%dnyI>a7OAP00qlO(nS8q}I3@ov;0*Pv@bP+@yFU(h`%J&Ur>2%E_$?xh`=HJQ3c z(ZWimwp$y;nRkP!d+`b07w^CkzSpN^mN5v#zRwb3>)5bDk`mUMxmh9!(>kpn?WcjK=FKIB?L02xo6ai>d`L+ zxR2MdtuqdV38>Q5t>al!xaq^@mL_apz?a{P(C+9KHY9PTv_j@fM3Tre%_g}}U035= zeHrl=<7-oc(U)#C!@obls3!6s!>0gN!!T)XX0m=1l4;)_t>Ny&$m&1m= z4B8N6yAyxqrmNF1po;`Kj){HcniBZ9wc2o!mLPGoq|&IVs<9cN;pds9?0nmyX~`K% zUS;C0OEhuHCUr~MxCf$!Yuh1=t$rwRJ+lD!?k99BSOo!(qU+@&`jO9u6)8j z5f{ynXd2%Msk%<9PW05oW!x?tc9j(Q^Yoeh(Rncb3Bpla%Yuv!ql{uA8B+s=7z#C} z3s58$V;UAX+?CR73S8Z2it9*Y0w>!o?U%rTF_Kjl?3N&O_M?aIuvoAWr3Et3RrjN}=YrM*MeL{cEU{`3OO1_EU4b$7ao^5GY6g1)UJqIL zy=WUCpY0luMsE-0L)#RjbjZx#B#>mH+LfL!rB^yawP@g#j9Juq?F1rmzUz>gtxKTZ zA1SIV;@yF%(ptnM_IM+yb6g2@)Mf9TI508}3SGRfWJ)n0?#wVCeD*`{uFLQ>{3r*) z!E6H|%9?I{m5w#Wg9+(x*BrycH*?SMg=7vjBw;j zz-V!Jv?1WjdN6Q&(WV9NMlzTXi831wciIjIiI&o^+>b-r=ryOPzJ(8GL$ZFneNICihwl=3AciqJg|&sYt10z zX~LWAE!fc6yOQ3m&2)mB`3z_0QU6!lmm=H#b6|F~;fjA-PHsmS35ISXo|>?DLF+c+ zX{g=CtpV$Y;oY)*yUixEIq~QUO2KWRcxW4fXzp^F%_^LItB-l3z4Doj&VT7%35#JS zN7@%yI#_7bn((S~{*+rDFC_*^F}#KGrPgn$AI^y!2;A)|mTRem#gA_*P*Y*&pk0v> zx2Z44#ziK5ll-tUep$JJ{cFoS0HvNoIn#_j4=5E~GBeUjoRlgX4 z=g77qyj|RX)bE1qvdp40|8X#n+Nw)bP*QV(fbI=khMkZkq5{BlQ~Hv;BvNXdxhr@O z7VEd*g+tiDbzl%)d!$}Uw|PhKAP7!dI|~FC+#fVV<>ivCl9)5inK)Be1mkr5eM^Q6 z{3&-o51pHjj*K{6Trq6uDi|H;w61E~W_RYoMg)ND94$KuLt8~dz=N)AtK=YujS6h+ zHq0E9yo7E+>#J0cD)WNqxq9Q3sMz)=28!IL%@RrLtU z3PIBXOZ%uV&zDMixTUIhuo;HTcC4nJ2uyG;Uqz`OtL}+^_8SnV> zA)A6b6L(Ua&hDh9g*7GcVNt$|r^vECZR8hEAg+FGS`>??%vjSF#o`GlUm-BeZsMs5 z15BIU#M6j)YPW*h2->+w2tU{s8wM_tzn^!Jdyh2QWt>%Xs(WGY!D10M`!X9-97RC1 z&eU*s<`m5ds5YEEN+8LwqnkZSAfohPX7e5ilm!gw<~at{> zA+8xgg}b>6HYSpz4S>>x9Ne8bsWE|<17_immLLO@?qyFc2_=-s(hs9Dsg^cl&lE|L z$cPcAoCwk*92ylxr-VaA2{e!8+?Z7?33VDnmPa(zMJ)*;)EL$TDVuF{plwSqC^}EB zr4lhGF4@+Wxh0c@A19qwnN&5Ls-M0YEc}oj;vLkT#~4Zf&37}S7NrU{MHfg!Z_ml? z3R=6z%(57eWdm53{~HieTA3sCEZT&@U_hO*sjD{`5Xw=G1Zf@xV8V-Z7<*{On*niQ zB=5AF!{Qp?!cFX0p{s()wsymJeqK4$qxnVa#Th4LRm# zo^&(IX5=C+#3e@ru#jqdEqP{{Z-@)uVCyLQux_F`?pZ#-I&_TrGxHtMVkm?A&}G~) zPw`#^SrD{)G{Rq6@5advxYX^(Mxb# z3Ld=#Q5HR?LA&Ch+bP3QDTQvk)2QV;XPR)RlBb(aQQS|0DTkc%#3DO?*EIE8Qj`ce zw#U1yMnXVk6vy4iM{N6cOeZL0(ybFr<>BM^N$dx+%Sc64a6tDGM^W%~U2L4JHNUzE7MK#OD(tXY6Sr^E|IYN8F}^r?KU0_~vXA_5f&%O-f%L z=u=;0c7^Ud+-blerm!*#JV<|96f~mDp;Blh}yo=j2^gMsh z7>$V!ZsncH?L{~dt__QK^X-x|=C;u3>6cT|Ui!4a3|td0UjL?Cqzyq)H`Sce1eEqI zEB9;>*vkdPg(i2^x}7e}=#}d*=~W{^hkfJ9HKdWorDjAn{BXN`(uK{TI;s=iU2ULlXa7wn6 z%SY%42-(s$DDZaE(e9}Km{A}XGy(E4P)v?d7h2svf^MQO;!v)}kBB3_HG!);3N07* zdnIPEogZsKE{B_Cn2r-pG|CMoBTT6q6BybFM_-M*z=``P;e<@5m>4RK6;1pf+?9(q zBQUX-UM<(*)g!PPsTone#u1T;swv8hOAb3`mPGqD9i{lWas>W)f_d4})vEsnWsh&B$r zR&Md7ZZ-!k2~fM$={Ai+Aw}ED-Ff2LhNgtZZ*$=A34`}q)bya|$~QgKcjri3Li6wn z9_$VPX?7lV@hadMhU3N_S|JKerX9T-UcHlA7FfF@yx~;2*eRLX!)QAoB8^>)-p#lo zjS39i;!YVvp(UZ|z2LWsPPGarl{?)GlF(Q~NfLaM0yDR?r%Vpe5^dV;cDCV7Jkpc~iw;?lV?zUEU4Y}}FMt|1Zgd@vkO@xA70CS+GA9fm-5Vt_6b}go zm9Y6`iLP!bk(Ms8rd-S*@c$KTXD$>3OO2v$hLqD{zQXhkMQt7F$yc!jNqst0C>o*X z+WM#_>d;VXIyJH%(c{`!<@7*3tNzMrp2|~2!{_r=5vv_U}d$q z))H2Tet|?@7xGERA`0iFQu49}7RwsY4jzL(NP~wcVwqAAx>!f*PVg?%Hh z9LyIh#iQE|BOXIJ|9nVZ{Fln?>yjTl{v+uAMl|Vz@H}VIm4#GaviPicnxoGM5_BZSH8TwK>H*GWB2 z6eH4zCe4JW8|9wrymiRXAtCT3q_#_J=|c1fC8Zi}m6=OaL*zvwF-IeO?vSbKaOP*Xu2Qqktw&lw|gk?2#HVlzl}BmNauhZbr9qJh3YVc967Nm)p%G!bo0D+IUoMBOQu; z5yDYtJc>Iq`E)1_$OlK2@r|6qMkMR2+kdY{&MWh2T!n_`g+PNdJeO-i3-Yjkz!*>B zr;rW7W}6--g%j$5*a$aI$YRsQ792;snIfcqMkb}45hgU+xS-#y($4wA0VYoPUOpw$ z(>akSJw;89u=xs^tf}o+(b-|Ck%V~(BAefo+fdGi6XM)3MOmY4;>OjRWxB>XR1JpT zmFX#$c&PY{hR&qpzlQ`R>_jy?*dYsbI@hU zQ99vqJ_5n_O1$Y3oLHKYg(lp70Evs!8@eszVyPbz5>-O_!xG=RSJD$GM?*T&!pCIh zb+#?33E6CrRz4xOlBFY&fkK-2q}+tgXe4zcI(A4KpTahzv7>Xx%4QUb{xnh+29GW( z)KFC_`E#;tbQ5qo@-Yhjg4}{`$0A(|(g8KTks%uROSzr2f>MF#uVwPONdR3plmPl$ zq%Q$TmjWuA7?G#uh;;rQ$qOj5Rx?Lh0n>k!8qmGmp2RzCK#ACYmKCAfbjYwJ1h2Tj zf{5*3Cap2Crbin4SGlo1$WR65Z_6#+rAf04WvImUzhP4nt~cvi^S4?L+%z6jQu$9H z!})!!VGXuwKkEMjH(L=AOGy4VawZH3?SPJ_D%Ii$`5!1du8XpRt>vSKbNE({Q2mj_ zv~K!0hN6GM22c0A>p&P{q@pztQEB)mQbbP4;9Hn2w_v43?#v6G>^vkZ;VTVgJj8;h zyiiG58v?~hMR5!T-_R0eL%N(JPOs!x37+(FC24Jh8|_1^*(Z2hg$)RUNLTig_?C#P z$I@D5H?+Zj(2bzU@Vo|IJR6Yi{4vPbaC2xsvDOuwxLx-HtgJ=zvnb@x*SYNj~`Vck`fz`#!vO(2^=(S(R^a33Wr;4YN1DQb*4omj zEZEGY!0AmARjqf4r>dA3AZ*`^4TuobM*o@?A^{U2f16BR8!TwZN24S{e<#wHyqL}s z0hw@Xd><3IzkX#eP~t3+4#*q{<&O0{+5O0%01I7~oI@#(c zfFWt)uu{yrn2c{`Bu3=-NV3tH)fkFmfJ(R>k?87HA!+Fxvf`bOcZ4Aug+AlU?6<&@tj3#UE<>~BHC zFb?E6!=ST{Q9AriTmJ6k0_h5JDi{Y{5NJR>3RlvBnk;c$FmBQeeZyGjOH*z|SFSQ? zC8}N0n>My1X;&B4=$hi)I3a&hQi%?oNu)*NL>f3FHK40im^GkO`-^0S=;}R&Ey=}7 z(yJHCjUCsR5{t$XYzk@prE=>!LuS}|{30yU=*#3r`=H545Jg&gx!h8}H%#_J7Si1R zk(<*MxeTSL9Lzt9O-X}U7gzADalRoiMO)Eg|2$CTEVeG-iXq1vZnEXDFCRkw)yTA9 zwRJ1P4OnVF|m++?wu&A?%at ziw^f%t$Y9|aR&K975kJ#5%yCIZ26`5=tsmym2n<>RKF*w&k~{gaqOHhR+Mp`A!&b$ zNWOtT!UjZxs$5LXwIJ@lDTv`uBzBbxzGI0g82nS2L1k{k(Uf+@(s2A4iDTueCUfeF zE_`0@f--^P8Ue#%w2LOM$}dV?QN}~|t&r_6`If$fElES}n0~yN?hGpJSIM{hH_DbD z=u^vz-6i?P|4!MsG8RZ7WVR_J-{wCk+q^iw!@+isK9S4OIz0nKIK!4=??#^5*O8^@ ztcr5cER{mAA7r>IBTwv`Dq_l+p9nE|mqniJw^EYz!!d4i#=yQ2L4HR?R%0)NuJfBA z@@)RQik^WeiPwhR&;;iGOGWIGc%%gTuLVRdMyPxrh;UHRII`gJ_)Q4?o)Wr0MCJrX zrYv?+C5NPs>UJ&^_?`iKm5B5;YGL%l-3J9?vm|25Db)zGnr;4gNz9dqD_@g|5Rcie zk0-nU2}j4J#{Y&=koMo>sV-JgRZd<>Gc zA#9htX@##gva83~Rk92o-#=nke~n!wi}Y{-I=lKG>?&CfgUi&|)hlic+anIEj z+0|Rv)i4@hS07?mL(|KyjWspkcjT7&9RQgl zt;T7(@!k92Zf{w>>O6KPPwF~wg9}^Ym2U9n0ZrKYvfA_J+(}5|j(C+1A^96BAI4sN z1U{bXJ=q(5s^`tGL25>B1AfooDJ%3_>1^c#aN8jNptqQgnt>R)pXBJyZM#mZ01H4q z4L>T0Ejmi>7&ro3bM_=2Kf}=y7^{4d5cF0ZA)5jY2rNC->v{{FdZW%{Oa$vo_sL%6 zkKpOb9}^Pr4Vm*fgl|aMC;w!RsMwnWo66TvSFlZEy@@*W)#%$4s`AH Hqq+YF`%V!O literal 211008 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 diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.bayesian_lstm.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.bayesian_lstm.doctree index 3187617971161824bfb77ed87c15e5244e3d8ecd..1ed78a7beb04e0ea90c0d1542fe86b9ea3a13178 100644 GIT binary patch literal 48873 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 delta 7995 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 R;wM=ojs81I)ZumY{{V@6IG6wc diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.ddu_transformer.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.ddu_transformer.doctree index 7e0ef68b3ed2476bf4368171f5ea8d284da45add..1ca4f560260228ccc5addc31530de87adee7808c 100644 GIT binary patch literal 89093 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 z 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 W(KKKjmqRx&@5M0OJ;v8y3jZH{v?j6u delta 14736 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 E0p_X5sQ>@~ diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.dpp_transformer.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.dpp_transformer.doctree index 02a43269cbb40e05dcc3648ff2fd7aac6955f0fa..f451c8e7fa351a9ae5a937b6147e390adf74e09b 100644 GIT binary patch literal 89996 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

xUY$7?X;~_`cH&6hCImXs3yIXI@D1g`aTd=p zdd8X^-$z#+h+72AE#y_4id?bqA8I20k#!=Ddl@#2zaBQV1i8!D*Ivzt$&6ETmreUH z?%f1@r5QsvjtSL`Cq>?W3~3SI0_=U2Q3QEu#)oUWa-)^Z*I;Y^ z?CEiH_IaRSG`1q(Gv@W&zzw$dS03NXF3S;t#u6)Nfv*vQEYNs>$$Qydu1_hHTnde( z;4j>SLz9+=1F(3>P%oz{tC->{D^uvhC9R^Rr5Q-ujtd+O)94Ra4ybC0(s<1~E^<|s zeW%%|&*P6HZa@>{?(k#|xLk>)aAT$vvP#X2QHXi1+^v@=(*+GohuKL;^HoCXHoEzV z-o}TO}Ql&VTU zMHQnEn%;|uQY@cSyfnIvO;%jth&#M$knD&icG%i%ipYJ~ zq10fYhIx93D2&`--rLbgo>}=p)YG_V6@y@UDjsIvdEPI0D$GfFQS3N`Q}i(6Au;f) z(LL`AQ3|qRwbz{rSjPYYg|?DSMwedyNJowFXN-s-hsh-=kJJr#(9fXRQ?6PkD325 zs!|f)Rdmov-~U)Et4qSG7YgNzMzc_U8fTNqTxm z`1DRZJ>vZw`};2XOY>hlAH{rI!#N*yyIfc;z=s!RvxXb*y4-F&*^yq~k*Vyiyd9=L zK{X9+H*Wgz)*2tN6i_eJl$qRzt>UM|MQx8^)dny=h}_(gP}&w;3>sc<5Czl~xf zD22;V;sTx3CbW`VhKUIls4a1DRyF`}FPlve_oJaOjFb3ZM@P8C{{}rViO-(0Nc`mC z)p{%g1JGj`E|AdUxTC&YKmBFc+rJ8X%bo`Hc8KS9k3o{(trCRfJ;1wwl$U+#NM-Lx zxwCZd?_)V@;xT?2Ys_i=?sDxAk+{vg)-bL&$MxA)A3U_*sn#kLx1p-a_Y_56FU=#x zv%KN_g>a6tHq28ZsBoZwhGO1|+tRCUsS>tw5Y2>_q{GEB3(pE&w~l5G9=ay}>>+)7 z=6dzR|3R)-U&OQC%g0Q^E0y{mjZ`vML)H@&1TQKlbzL5-Kz{(~$gRWR0~fAIr%6${ z`G39+dtYiDpiGCo745xU)GD`8jl

P0=ft-_h5~+TTB*dl`1`Q>>DS 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 PV->XC!qD+B*yR5Mq%?u; diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.lstm.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.lstm.doctree index 763a50d3ba32c1c2ede98117f9d2bfa082477972..3ba873d7c966779652ae4e22bd1fef1a1a7e45fd 100644 GIT binary patch delta 13374 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 delta 11434 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 A5dZ)H literal 82870 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 K#Kq-&?EeE0=^d2- diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.model.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.model.doctree index 8ef6e7d9d8f3eaff629d53ca74e84a8acc078858..5cfbddcf798952e029ad5f8c8afab94329eee6ea 100644 GIT binary patch literal 154761 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

d2_eX>x)HVTGHj*0^V>;T1a?|x?-@k)Jwlu$ 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

#}m?|79RH}v9YG_|Yt8UalrlySRA6r(>Z7hsn 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 delta 20392 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 literal 150760 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 diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.spectral.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.spectral.doctree index d8c7b0e0f1664174c71119832f3fe26e77930de1..829e81a8d85f4315bb404a95ff3a6a9f8768952b 100644 GIT binary patch delta 99 zcmccnl;!SImJP4BvzFy2Cninq+oLkMc8@GqUTJQ8PGV(hQSoN$9a1bfWhYzjI5W9$ jujpju13sHC?G0d>{O5SU=KKS_?2}vf`fm0)F)<4O^n5O- delta 110 zcmccnl;!SImJP4Bi{+K(#^)qfrWO@jDP-oA=qQxsCnqLN&e@|s`OkKV%^o{=SqP|^ o?6G72#jc-_1n_df6u{9SGR$b7Eo^0JSJGSpWb4 diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.st_tau_lstm.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.st_tau_lstm.doctree index 9537e152c2a294b471def77068671ab847bc9e0e..d1144da354d1a126f57199d60ec06dc45277f06f 100644 GIT binary patch delta 8119 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 X`&BxsD+;WQws@BA%#DBXC29Wwe=Nie delta 5623 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 diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.transformer.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.transformer.doctree index 37a03e2e6db0448c3997401fd01d862c4211d079..91b66c538f4cdfd15f846cb33c8e9204d8b9ba65 100644 GIT binary patch delta 9293 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 delta 7125 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 Jg(UnX{~uPyVh{iT diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.variational_lstm.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.variational_lstm.doctree index 572a16cafc9e65ee1348661d65141244534c48cf..a788e7da788b8504c2db37589a43416169a3a986 100644 GIT binary patch delta 12512 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 Z=3+>Y;#ugV2vXmufK;ebPgg+xzX5ld>vsSE delta 9687 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 V(j7SFm6CZS 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 QijJ3Q|1Gwv+#*=`|7UC*(f|Me delta 18020 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

X+L7(krZ#m(-IYOXT7UBW!l8j)SxC~6nO* z{~*HgYIE?%S0=W<-nxKXZ@vEwHoPcRGug})PGQkkA^b#5n)ADzxW|<}muN6lZv>3e zLZCfwfm!`h4E?|16O}D*bfPU+rqVF%S7Mknm5arjw3R_VN!dy{$p*M9!_2d0l(3br znK*USf>RwclyIep9G6y7(vb~xoDTBb1im z6M5sYDRAyB|CC?yCSL~trIq|6w~|MX_oVVd_f{AcabBoOP?cx(Sr?Ne_QQK?2n5?8ddw+=$7mN)c~0T` z_eau{H1x<$Q>REMINQjw_Y+BUZ7rOCl^t&SpILXF!OJt})@2^Y)X2tsenpJ({Qc6R zJ-WRCSDfch<2KclgSAMqr$;8)Cjl6U6xz*IN2K0;Dw#Jy;FZ~TT4_P)gf!TE z;?lTYV2eD`np3r5ko;PDr6owQ_y_pnslbqG&ci?4!IiaRBK@Py(tCg$0ke@B!#oPgy*-39%cv&1Jy zoAkjdCr@M2Eki|d%b=wElfo^s4_(ru_3@{$lrORdX_j&rBF$j&#V8w2UwSwt^l_U~G34gM5c%Hw#)9H~ zf?`7T+89zoISNr;lZq{E_*P>rMi>ddG3tiXqytx?7ej>TC5y-qj!^Mb-WHAJlOsg0 zW?aK(43JVVUI#a|lb){-U?bE6q=Oei9@G+%Ux@G(Q6a#4;EXyH0+_N)PS|eZsBl*X zJmIU#GU2nq^5P zEg3w=z$xH424@-+4P26JNHMI^wZWx z!^@QANQgLr|1kq=2UO^w$cND30tP4j`iRisBjfIAW&|zGZnalQNw@2v}a^O)G(XmiB7oH9%kwkLIFwKYX}Ucq{5wZ z$7tK9pGhWHfW`xEaYa5L(_l%+Sl(f_Bm*+JB_Y>fUkM$MiRA?3CPATfylbo|sL14} zewYR-p3qmITgx_|%GFcjh*Q6vLQ&s6VS-ke2-;vl&T9#xvRbB^3tMN- zA($o!>X!&7x869t#NM;BQ9eVlQJOSW?9o$ibdjFqa^A&*)}EcYh^BXxfGL6im?j9o zViVFR@Hd$7-)DipLEzsM#@`_DZ|f-jCk1|(CK<5ANi_0?AmEsZfR8N*I3@`ASD1if zokiJ6r!31D1QHO&vXdVK`ePyVyx^r<7WcG)ECc`P#aYn-N&t|cr!B?4VhXRkhnmOsEr%5RiK7BlIt~HNHu*~ zpgwFu{f-6d!xHtU0`*~m`r8hn{#9gB9+-x=u^X|MFewm zU82xusSEXv&UGo3P%)UL=QZ5f{tMjp&yT^nfjbc~Sc?mu@KwcN_-u&5GT>FlU}t57 z5Q@R{w|kIh=)*27>CjvA$qn=wm;QhGP;59*dW`C$-D0AbD3?1jzq4Rx1Q4pF-i_;lgf=q(*7XBD&Fy2{X3C6|28Fn7l#PyJca}qyYYw0Djs6cw|WsK*5qA z_~F$tkKx)xNzi(?C<(g2*C0xQ60$`}P@?|HM1KB|H9@v)zM9NzQ4?fZ4zCHipw?j0 zF92=Ciiw8xZeA1AH(PAKsG6XXY+e&IloMbo3K}A47@N(Dg8F8Qq9FL?MM2XA#i6Po zK!8<2@Bt~GR%?_eY_+cOaH}=Sqb5T^5uM8$L7}<)<#Lu-EGGzb zV~D#-EGOu}N+SB8^=f1tQ9G+yuaJsxWSa%n^&SXE3g~`oG^&cI!+3ZA@wx$z3Lpe2 zB7jgU{gkg%u|{48{+myZ;If=SI_YV1i7Y&l991Pm4&D``Mcn!T8-*mzx$GWtv?x?k z$?UHBp=vUK4CI{*io-}(z27`C02M(7EM3Bit9^kwY)WTO#+g>%9AGt3J50P%-!cd8 zV+`d)mZ%J|(OZE37dg8g=)Wp<#V)lzuu1R8?aDnJ zlopjy(tvB_ADZY5Q_0DJi*rKO@@HnY*9u6G>{7)o_aQ8=b`So9vfH-lWM}&&N|EX9 zr*lMlds_&JDhhfM86GNGlDM#B=}|x%vegU8VKFnXJ0aOH=n$WsAWJ?UMLqFjzE0IG z8HPSA;Qf!frB8Es-O}HpXgqC2BbFMSGSVn2mwt$%69=9*(RnIFrz+TybmGv5L!GK> zXS0|r^YZtF`c-aTPR2T>dr?;H)-lmuUI>s1m7Mdv(Q@ukZk~=2aAa;?(t%Y+r2tY2 z4=b3i#c{p#gCj^>iX4R{Ojmo2KDN|r^sxqD!^ALIrBE#1BscQKB$=U?lhA+Pn`6q* zFV5i^`jt@i235UkmxQ(3T*Ra{8uWjWZFa;hurlF@H{%m`#Qdp!N6f2w_31a05(<7?_F=iuks>YIn|YG4Ap@{q%&RtvhkQ}Te@ef;`G6f{w&{Z{83_k8m9 zz>U7p?*DnlpYB9RA%n0D;dr$t@h4>Xe^FV}t3Gb`=`jx9F3XyZLUl&CtVyE5)5a0N z7`FKoDicCx!!YU-K3x?z9RZaI7dIJ(y(ET7v+;ZJCe6k+K1mr+ISGrKo(i+@e-t;- z48M_Iss3nwb1Tg4X9%&9O=~^NBSM)M%wD<26U5OKX3;*CyScsE`PMe-0l|^^APqG)9rq|2E?K! zdK`KzjixARYR75;~_ogwi2DH1&7BXii2Hxu`g<=`gi@W9?JD@lB;$A!~6;~zVIQf9+H2jD9e z?FGC3(!HdY0|%_;ovWZj|KVQJhjtF=MNOpp9r)FvhMzXVX!!Fx{Da@HY51X=h93v; zF9+;F|*0D?V5R(%KS$OBd!^@v4H;ATJjP-Z-V%FK;N>C3>fkm3~Gwy|0jkrSCg%N z-h#T>mCeCI)ICA3wvQ^^4;F&ryEsbxmJ9CJ??(2OH^t4ZTnHcF zmyxDe@uB;^fbMQ4f6tVFTj9b$ZmRBXJ@Wzh5T!MMfV1_hA0YSBi*pT(>5~hLgdL)j ow48lNbTq9Y!m{<+^`xGb8Rw4=&!<2~sSaPWZw}};>ZJJp0YFo@s{jB1 diff --git a/docs/genindex.html b/docs/genindex.html index 0d449bf..be2033f 100644 --- a/docs/genindex.html +++ b/docs/genindex.html @@ -183,6 +183,8 @@

A

  • aupr() (in module nlp_uncertainty_zoo.utils.uncertainty_eval)
  • auroc() (in module nlp_uncertainty_zoo.utils.uncertainty_eval) +
  • +
  • available_uncertainty_metrics (nlp_uncertainty_zoo.models.model.Module property)
  • @@ -193,6 +195,8 @@

    B

  • BayesianLSTM (class in nlp_uncertainty_zoo.models.bayesian_lstm)
  • BayesianLSTMModule (class in nlp_uncertainty_zoo.models.bayesian_lstm) +
  • +
  • BertModel (class in nlp_uncertainty_zoo.models.bert)
  • BertModule (class in nlp_uncertainty_zoo.models.bert)
  • @@ -298,9 +302,11 @@

    E

    F

    - +
    @@ -207,10 +215,12 @@

    C

  • CellWiseLSTM (class in nlp_uncertainty_zoo.models.lstm)
  • -
  • compute_weight() (nlp_uncertainty_zoo.models.spectral.SpectralNormFC method) +
  • ClassificationDatasetBuilder (class in nlp_uncertainty_zoo.utils.data)
    • +
    • compute_weight() (nlp_uncertainty_zoo.models.spectral.SpectralNormFC method) +
    • coverage_percentage() (in module nlp_uncertainty_zoo.utils.uncertainty_eval)
    • coverage_width() (in module nlp_uncertainty_zoo.utils.uncertainty_eval) @@ -223,6 +233,8 @@

      C

      D

        +
      • DatasetBuilder (class in nlp_uncertainty_zoo.utils.data) +
      • DDUBert (class in nlp_uncertainty_zoo.models.ddu_transformer)
      • DDUBertModule (class in nlp_uncertainty_zoo.models.ddu_transformer) @@ -445,6 +457,8 @@

        K

        L

          +
        • LanguageModellingDatasetBuilder (class in nlp_uncertainty_zoo.utils.data) +
        • LanguageModellingSampler (class in nlp_uncertainty_zoo.utils.samplers)
        • LayerWiseLSTM (class in nlp_uncertainty_zoo.models.lstm) @@ -472,8 +486,14 @@

          M

        • merge_freq_dicts() (in module nlp_uncertainty_zoo.utils.samplers)
        • merge_instance_dicts() (in module nlp_uncertainty_zoo.utils.samplers) +
        • +
        • mlm (nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling attribute) +
        • +
        • mlm_probability (nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling attribute)
        • Model (class in nlp_uncertainty_zoo.models.model) +
        • +
        • ModifiedDataCollatorForLanguageModeling (class in nlp_uncertainty_zoo.utils.data)
        • module @@ -506,6 +526,8 @@

          M

        • nlp_uncertainty_zoo.models.variational_transformer
        • nlp_uncertainty_zoo.utils.custom_types +
        • +
        • nlp_uncertainty_zoo.utils.data
        • nlp_uncertainty_zoo.utils.metrics
        • @@ -632,6 +654,13 @@

          N

          +
        • + nlp_uncertainty_zoo.utils.data + +
        • @@ -668,6 +697,8 @@

          N

          P

          + + + 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 RaEKbM;J7S?Fpl`i{}03bTJHb= literal 94822 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 A5dZ)H diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.model.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.model.doctree index 2ff101a882f2104e61ad8dd38217df26f37b62ed..7b61b96c7830921a6589bce0b98a2dbce1d70a4e 100644 GIT binary patch literal 173253 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 SK>o^bnVdA`&&Yt@#QzUbPKk2> delta 26135 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 literal 156983 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 XFSiP)>`b7-+Fw8|T`08NUXc0!IJwOo diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.spectral.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.spectral.doctree index 829e81a8d85f4315bb404a95ff3a6a9f8768952b..c5522dd152c8805b878f04112a590ff7c4db8680 100644 GIT binary patch delta 10046 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 diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.st_tau_lstm.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.st_tau_lstm.doctree index d1144da354d1a126f57199d60ec06dc45277f06f..9fc0d24d1859ea6aa16b956d12247625f2d22639 100644 GIT binary patch delta 10530 zcmcgyd3@AGvbQ^vNy6lsOb*E8KFmcf2-k2WVuA?}h_Dj5VhF*>?~#KX3n)jjPl#eb zLInZ}LO@|xMaV{6QC7f%=fRbSB8V6wu5Y~%@mQ9KY*qh$znR}8LE=A;&xcHRbys!O zx4WyltAG0&bzeWG)73g}xT94!$H!1Qb=tJTnsLPo7R16r{|sY!Wsx;$UhyAGii*RQ zhE-KpwjKA`>BQ#VqOsk-&ehLX?r#ax@_{kX7w*{?-nJvu%skv3noflUK~RJbZ{d(P ze-<=EWWun>D88S=k-JC0v?#y+OPj1Nvzx5`4Qy%C%BH%eWlgbGv-Bp1x~Q=*G%}jE z%Y8RSCh!gpt()(Ij+aLAtsHK=mkeJ=ZDP()8x;&K(SB}DPIuga%r`k4iXO{-ouGB= z2#&RO(?F=LcY&~IJ$z`2g(-h?ft`1@uwjrH^D@tHf+wa1!GPHDYyuR{XXgLSXzOf{7yO;RH^)>sp) z!_b&|Rld$sT16^_OmIf>7!|CbZa&L6-%EkYO;LT&A)!5(kXctKVtYp`_2 z2~r<4MIJ&*p*3=LQ>>JVMQITJDYi!A1jgY1xYZEEI9qoJZJ$#)bH>~vYn z&W>O>+0{S3K|im&w6LVCNs6TbUCQT5)k`Xho1{3Zy3Q-EDpKljV@NvUmNI=jtQ@*l zMv%2Z*03~4%L)K%mb(jXklgaJV%R&Zf#0Kp*3@j*yHN~j1M4RL8HSE9vZ;_iETRX; zwh^;<0dn9%oT-EMXXALO4wts5(PTWVqsd@1!D-}pzD9@hutJ%G$8^xLHyK+RGt<~~ z$QxyHj=;Y7B&GR~v0oH+iY5RL09b*vdyr29b3m@HT~ za-^cW=w*VA2!Hr#%t%hv8F4HM4&QCD^YB5=8gmtvi+A}$V|obG1_!Hb(}+z}a!j{y z7jvBjrph=K_Hlf4G;bQmvfLSsy4&wEEdsa7;`!Bul@AtI<08a<&=?US8-PkSW}3k3 z{a`Mm2eZb7!UO$-Tow3q@Z|fEd>0KH%)N2@2AWjwBQvm+a$FE$SBpd6~mq z-*6Udc8@ZvjhTt$joj7MglqUd&}VJoUkE+* zIjZmGa$MAQ@;cCz8x?RLZRd~)Q|%`7i7kjGnTHe@cX859tER zMJ63G9c#Nf2_uuX=PGA?$u|pBAM?m+N|rF0rQh z*j+3~)n~c7V5mv2zhl(Q%36^g;Y8sg<8l_Xn>5?Ysey_b&yH|Em7(V zTI1o~*&F1b1Ow*W%RaQB)((H0bCvzmhT7)>wV!RMeQrk$y>)Rg9L|bGA8mvy=5Pf; z>_P~(D>k9-mt+KwA*Bxpq8~X}Xx59k9t9T)LuK@$T^-Q7MB-)iPADUFM^B~88aSXg z1ck}y4W*JmPn7zGUUU&C=)GU!11ZJ2_47vH36Jogr8fcQOV1;D3LbpxiYLC;_X((#vixR)vD7y*3kiM0uC~S5|y8dyz$kaUYcgjH1*x81*G~ z7$>uLZTP*7_;s;Q1a@a-?7p&LM+C&~S})k071+J4*n#?fB(OV-guY@ID6hNzu)Q=y zUUviB902=>q|1Q4p$ya=FqN(-pam=rg~@=$Q%L|OO1B4Wds!SC1@Dz*CJ5+<*(43O zNfIRoNpR$sAjlp%3f7nJVfk(86>Atw`fne&vM|tgG&592!WWDDvmK9r1H($o=M^s~ zm{(G1p^IGiR`t@hyt>Do4_Yf9VtFvIDh=aOVU-2Tc@2s1>jD=xsja=r%+M>RE(nH% zjfw7)Ptx1OYFn{#Xh#RoYAxdES<})+FCAa zT5c>YX8nLYYT^2R7>)-k!+)`?j711?h?abIc{Q^L@=z`L)Qa`&UO~>)lHKb3psO|m z!z9U{uWdS9_YnJ&ATQUD+g|_EM8=*J^o<%i-dWhn0qQD?a9lUyUha5LaOfV;OLx4+ zJM;1cDKGN*G%V=4I=0B!5WLF!%_Wy2wH2#lWFJU!A`M~!%=;@fsX1vJ&x+daA<9c zd{P%$iIcj}vnx1rna{_NYJ$lxT#b+jB-OY$ABCn}a8e@^z_LZdvz^8qQVK zF*=n(V*^De16(ijlf%kJ!ay9to2euMlqmHcRtBv{8S*$ZvoG=(#EoNy7b-~}8}i3P`C-o_lfFjEu70&NrZ>KO|fK8E1t z1HGux?(YwVO*7f|D9pmY#j&4_V>g8|wU!_vP$I*_UF5H@#-2%Mp|EfBdTw^7WQkyr zbA9|v158>H3rU;2p!3NDHV*b}weYd-A_bG@E-txaA@AvUULcFZCK9($h%1%FQFptz zDO(HJ1|gv zIJS@!Kdfkv?W4HSL)b~2c8QyJ6tEH4RgQK;pmBRV8!zgF+7J(MqWuF2W<%CLlffSB zA+|^si(NHhM?IU*9=D0D7h*Tt#MaAVcMGxguw_>!JK!L9`0g=$zbqH~YUF;p+sZE3 zukLo0&Z?1TQ1OabM!bzyngL=77}jo4Iv%TIg_6)}hm;0}{xz?`&F} zBrR@{glAruE21R)7=Ah+*+g;Z5EXy)y{!8^2INC@v&ZNQl8yF<3!es zomBDr=l)oR*}s>g;kCBVZke(IFUr$H_)DSUm{tIF`%Q3aTR7oPGmD8a4+n1|F88|; zyWbNuE?|E-Xf%3ZiK=SQpt2@t9K)*Oq5ncfZO}-4WgFWF?XS#qj2GL%av+TFKnS{L zcAoa?J+t$I7iD$=MP^4RB;tiovJ4|cLp(GNHNyk1c=c~0)pk+tBv{e}kBw0Fs=v@B z7H}Z-YjKUq6LLj_#~k&0fDnwn(Zx;?#YmGB9Weq&=Gup)a29FgrW{Q{SWriF8V({NBg$$@3o0s$=am#ymz0-PS;FiX zsA>Gx=fP0=#SH;9Gv2*D4&ixq2WXx+m6EQQKiOr)<9Rj3>OgiPp%j5m$o`q5)761-2RcxW5Kh`}vH=Ehzb z=OfHF)KP5g*O7wy{%VBbXBXkz?K?YUKtJTM<><$e0Qn(01P+}IfuM5+mZ?!JgT@JT zRLlbv8;y)8ITTWV2!fZ-ZNT-TRgt>n6RWGD;%G=eAL;9;A$7VgRCl{Zs+*-BX=X(Z z-|ebQ=@9LMFF2S+>Hd$2B8RF^v8Y;P)ss1~(j_C*exJlvqbX)(66(oT8@iHDzEAy1C2^k;C5QV|FOM1+-BPD#!IKxCR018$?`&iN(0ED2G+ z!!B4THNn0^2AG5QmusJGVoBJ|!sAUMqK(3e?C+64{ys+#=*$`qn?9e+W(lFcBcSD* z#D#(6D;I`4vG{f<&L~B(T9V(*LoPKz-qB>tnvr5y(J=Nu9-%nCUA-{wFu~U2gK-5A zBUUtw%5g5h4uup=sA%2a|03V-a(@^DH15wqv~Yi(I6@!XpI&xc;i(6&u%$enKWF8#naw^nhMBE{Zt$VIIfx%EimcUJl+a z!57NTB=STdU3I;2Q1_k9!zp99p^ecvoXx|1{M}4G&R2f^)bvRwUeyanV+=SSp>A?b zuL$bps%-KQ!J=$(55b~(H-$xygZCp_Z|B{3r2|amy}{H6|HdB|VpI>OXc357)Y~B_ z;#(Ze_r&(iTJ!6BGoPe9LcMfkK9paHQ5}1^++A^S%Af`^9S;2%qx!dNCgI;s_>zBf zSCBJj_qrFR7+{YLw)McTn-E(d`a5$b_jU z%_x!ww04=Iq@Quz-?6Q4To08WigF>MD^h+an(T*5+WwJ|2Uf`yA?Vi>qr`^BkBroi zq0$jqQe&75YymRLz&=1F0jwzX0oazZSasUe+a?M>h6z*rg2|TTE47VKW*b4297bq6 z^2=V%w!*@j{!TU3^I`SP)%$~4wv&DlF;zD&aAJXeRL1xCaQedTDXY76s&x`JJ>|s4 z88&=`VU7M-CqQf5=H?|jW?DhtdP(#Nm_%P;Nc3@rL@(- z^m-@Jo1R3OU5Q?WB)YCkbc>hhG%C>{RU*eMk-rvmDbYfzY4Dg|US3^RUR_*(pXF3F zEo(M7vy1Hc=5L(Y3GV5SE++Uu<%AUgx~saL9R{pU0}{GiDUkjkhdWG7PG=#lYr(;D{AV%PJNn&a5b_ ztSDGhTUlLVO)Rz4mz7xJ%{8^vh3#+nJ?X@jYTYCI=pJu|bJ2nArvj|*A;A(S-7LZN zsL*uY)V?4hgBksLXzXYUb#)PPc-K4?Zr&B5*0Oet=6g6)1sfq_QUH4iE`)|dXGSPw zM!CU(C=;A(^J8zLGz<0rkONP&qk(eWL3c$1cfQYbZPw6~}Ja2PD9_LwAvi z$gEiA4oxZP2<-~i=(pG~tc5}LV3T2}(;atMLzE~ds5m^1jY4@itXme!QINkY6*_}l zA#_M5n*%=#d5M=gLBmU-&@pr}s{lhxII9*o6JufxOC`<{?D0@IWK1`}-k3Z2YA5*O z#YC@0!_pP$<&~v%ODrwQ9AH^S7&7b>!KIvu1Roz4IM%ow4#s-2qV}V)&okC4aJ#p5@q5@|(GmF>)aY7mSy)$H)}kE24t3Tz>nI%Ztfso~oEy_g{7FnYUTZSn!u&B($e=OD^g)P&j(~lsE};e3 z*63wh_KC%1MKvwTTpE@R$5Mk5=TR}kSxjFEW~kY&6=(ewHj^!N#mWLKLXmF_bpGt@ zKcD3GW-$ml%EKVOd=RWk8(_{w$VRuyVx@M)Qv8DVQq{fGQd6SV;Xl)|kie@2lObW` zW0FetI$Rl1Nv`X4EZRVkwwmsi>)} zjyKD{g@xv^<|&mG7P!98A4X&Zu`@Q?I;CwFZMLC+Y`dn}7T+m#*64Lc^r8>)Ck{5a zYmM;P*!;+Y96yBtSAK0#^&(4cOQSb_67qqzURmj3>STW-V}!GTgP9o|s~tCkVc%W8 z5HK!W`j}9Dki)5oV{RM4M#G`ZbZv}xt{>!NsbkV$ZEm#V0CG}uv;j0pZJRBnjKWtM*wPUs#5@x(1S+s9qSe`dHa0U5=@LYzTsg#PU;{xv^VbGaZ$G>!i$g6Q8dMumr4C{i( z`fkCHZSDzd1|L{KH4O0%dm%~qO@rA^8V@$XFf z7elCGq8LKDDfp6mFPODMjg*6D&t#P_wJ^tXG1(~$Y_-u|R)ZIUxKjpH1;TiiF!nQPkc?eamG#1y)~wp1V=NmXC1W{M5{!vbe;At#hGGz` zjfbw{vAo0`@(Z)se8?#~fC6V2RC+J3cc%r1C({OHINu=ItHwXlG4p13Xc)Iv4Ob}F z&S~?}9CepfQ4#0qa88?p!hW(@F3xF2`#EiyrEHP4cD~iB9@Y*cR-?hz-qL8W_jtHP z5vRCz?4w()noYP7=aPAD)BllG}ZE=bVlFRii94X0vn@WOwQR*N0-z}2l zujA(=@t-2`zw&F6@b3lTze&Qsw-fGZ&=HPujqp#^X`r2#so0(HGbrpQ;m$-jv{?hD z%foQIp%;G3tSuV93D`%+uVw=B`;lr`x3#UElC@@Gx5jUl@U3GJQ}UZhCBd&K^~tXj z%)2!V7jj$q#5e(!YlFJi1|>=kQ0?IrE{r|gKDhExraLJ|)~Deqdv1NSPWI2G;d8Zv zYP=cmVwNTIOUtU$&1(%Sk8osDELvqs`W`PS;X}sJ(ZVM~< z)oHxQ0Jn^LVMxsb{6Pc7Qs}6O^DM%NsXML#Zq;P+Z3f!Tj`Bxq1D)648Mi&Tvf=;1 z6xXvqG_OkMzsEKGP%7RqQW}h4SRMf8WnTDqBzv7&U)8r>ULFGHmgljLsO5cqOWTUY z>Nv0}81}5nWyl=11nXLsJW#>z6w(no>AcmoY>JTP z=%kOXiG{Um%Gg5DQmkuPvUU~*Ucz3flTKQS46Mt&jZ}_TNJ7n>w|raD79tPVHYeMB@zrWl`Gg2a`bZ zIy9lIq?T5;rnCFd#El{B3!&gMy8Y43o)yPt)Z2)d_S39Iy9G z_fV@3sbQX)bYZALRfl0{9u?IvFYY{tHqYj( z&{Ryo4c(IN<#2!52o+mG_`@EzUsTr9#3gRGuUK^*p-YUrtV7PCQslGNA=s0TIx)YZUL0kVggNX$g5$LY|Y5 zM+M|nJLF{nc~mnjc26-gLdugeQS3cXq~9V@kj}9}>7FFf+SwXPf-9|A>~0jO>7E2w z7k(EXJ5VIvu$j^?INQ_v=HqEW11*xEH3AeX1lnK&MFD|AchId86q{Ah>fhhb{$vAf zm!SV8K(RugA84Sg9o~O(B3{9ChE_b4$uCGu?5<)i54CcGmvELYUSjHj&28x%%XGmV z;w8SV3+!(*Ht$a4qcD{zuD2OH)k{nnJE}-ktBml$9}9SaM4K(q$_Ne1godXIIz`Ra z&^Fo8HcB+?sLl1+4g7hD^o&IMGa+G_kWNUXX9x*=pG)SS6Vy!D`P^9kv4p~&2$iH; zGg^A2v5&_OSP)_6|CG9a6}tIAZ?WRBM%qKX#XNo`?Y%vc80E8wE)pboqlsz~EKv7o z66<;~ZUnkJG^ehX}f ztM5tTXunGDU!r5U5(8ByhVVn!WmTBWHM*N;g+> zTR`~${mZ`-Pz<=QWk5OajU}pT0foxCfO3nRo4m7ssQNj&*I+<-4SnOfm%`w0M=~8_ z$rTv+qM2VqR=Ov>zW44umi!&gy_g&}T%AAozHIWe2YP>>+l}_|(Tu)5Qy1<-nYux}Sq=M= z@R?_`8=QQ}*jpg{%G(wQOJDvYy8xcAZ0DnVY^ll8m!EW{x2p@@6e0N}AIjZvtaTlI z6^{S;EEU&Uli3z1KN$?yUQ07+XHMH0wydJI5E74CxZ)%79Sh<7(G%=lN$ z?-2{mFXRnAVo9#{Ay>t>VhsZk)@U#6@u6)=wbNZw_zOrLdW6~wiIMaL8{P5Eu4GA3 z4L&hxi%OgWLX-nO7b92k>>0N4Edo#8wB|wb;4C*!tUyX z#lr_*iygaDu6BP^boWrZe~h_$xITU;Z>tE&bE?@BddP856KkJK| zH9kjuR_GB=_jX!@O8R!2BV2_WDgf)rNH=i`zrzo!x{v>?+^0SEx=qFI6%pk11I_kUqx@S<24My;{Ze*=LeY|Y+@xiB4uD8HHYVt ze1UC{VV;D+o+)RdLdM<(k&Y6aNv0oEoLR;uz@;-Iy>d{d?LlQd#D18@HaZy9V8ah~ zG-@C!Uo8>mL+6Kw@YP;t8ny1U4b@CrEll%wG>y8Ziw47JvN=Ravkx30B@v=MHH>OR zt(ZPNm;_T%-jl+ys7=M{N|X;%qW$3H$BFDOG^J4O108ojAxcvHAmPds)0o>3h^%c_ za*?dFSH`n12_{5wFqUm`eHIaCCzwEjNuE7Fy%y)>I^USFz6zj`ZA5*kb^GT2C47Jf!ZvQQVUI3 z?+pF$;L^7<^zzp`!yfT;&TtAU>4!7)kj{`?UmzU36lhT2Bu4n7Pc*^aOP-jsJ8)@u zpk_2KqN(Z!Q=MQ~yWyKx7|Q_j)p+szdgI#{MveBD9~Juq-L{E_DLrpZ3`lD`N3f}g zln|mi&pZMOQ?lt#c&@rPXMQ)km%Z8X-3;dms1S5aQeRuBxLuW|ydxydVdwj!vb-Lr|i3bff)+qw_L}w{dMX+UFnU@HVck zXxg03Kc-1Fr+qagXNhHvP{uKF&nmj%S!)*o~j~G?VaZQ%u6E zEiehMHU*B|jN=t1;nj9N7uDDC2uEwrXBlXs>dNz|*gZ#iCkp>PcQ6P#ZUni@Yvp4m z;SDN&9w=Xew<4PER;g*kuP|D*gM0%zmF};RS~C)zhjZ4yM()FrGW+)gl?2_Q)F<6g zc*~Yr)NZw?;FgCywfMXZyv+tKN)F(dS`2MB{sKJs9QJDTvQ$@BR?oLolvI}DZ>U-t zU1rXh1jl~eY}mdN9|h^Z_MCrYJB|DkVIIMM>KY9dMdcRy8C;F{!PwqS)>)4z)Q-QO zh@_v8wOT!`)2(^R5qRgH<6W(}*09FM@K+L#ZGV~tFQ#ArDfAOT@q-zKen+FwFC7&6 zO@%@)_zJ!2EA;xT&=a*n&!P&wohp=tRwz}iQ2Icj9D_n9Vug;)3WWoOVunI1LCG-f zNMP&+ySyWcvr}x!j_aJI@Z11$d^_%OVyP^9N4*nEdstN0wRdk|cnrfZ%s}KZa1aFrMcNugQ6r&wC?cSuv}zP#bU4aG9$Jl6wDB2K zbd7mnjgpv$Np2M9nxw|4*ygHH6U}YfM4JbGZSu9%6l&`id;2wat$iMI1}4!z`bYVL zIcJ}>e(SN%{;jq5Isb0ZFE<98T0(Y@9>6+H*K-+oZ{{X*7?c+`Sz0YktE+WM6U5JO zsiv;VwRC<}b;CHRv8kc&(<;~U>Ppu*X-!jIL!~=gxkVuqh0^>KuQx9=D0nj;Fu=>k zM*o`)cuVuIM6p3|s3ZYqmn7;}mSA^Wt1^70WTzuxP1DNy>e|KG`L!$Oss2OV^n@{i z9;jh^+@bS4h!RKyPL#IAB?U|i!R7^i)CV}Q5L}tQ$JRfQYiA~cJj47zzb6QqQCZ)d zp}Cv(9n+!7Lhp<%u(-?tKPtNq&djWbuvv%L40vw?L%&u}SGz}P_h96QylkeH! zS?BqwXQ(?-u7d8_g?xbtZ1*R_)bd1D3-0oJQT>_nQdI9Lf0vh;;8e;yzR3h#FJ`hb z?}I;%WwHAZQ{Ep$|LCeiTzTu~#53Od4Q!wLNr0%g&a30UFo9)!4(md*&Rs(i=zd-8 z5R>~l`f}9U_DC9IzrklI@Y#eRmZRi&k~_%lls`ldC&oeIf-&s(;(5yBL#%$!2MmD2 z`yA{#?4Nr+fbr)mma%`3RVaDL$#0pUx5W;Z9C0iRI;)c5(*7hG%-NRC;=tw}LpMdu zlh{yv>V!$<7Ra%i;gowG9~=r@_L1~_UF`_|R})OSe<)ZNTVX?07MqIVx?dJ~2$s zL<#DO0YZL6M@9)kuJ4DuR3Nj7&{CUCX+B&lGmijm^MO7qKyiRT4{M;T4U*~~V5j?F zroyzwiTs3u+os``FDqwX2;6Hv+`kE293Wf{olPPQ?3%!J;Jq;m0+&TY>hc_vP~H8i zaW2b+-sR)?sBk?852B_RAlR8Y>?oMpoX-~Zft|+|5+vzkZq0wi#n8M^9?S4WA8s2A zhnDBFt-`=YpMj@@0URI$FX#p~3IlKUGw|QS0E(-VH+1D=>~{k5BOm6U1SSp;=GQvr zNATLJ0u}+6*35z__YMMSO(Hi%h_?Y{5pbx%<6#QlgtR&|LNgQ==sg_=!&XZ?I|51{ z9LqAHr^P{QlaG&pb%V$9%m}j0r$oTcQKM5cBSa$Z!$jz?kp{R1SoYH-czaC@n~Tov z;pK{Uz0f93YjF%*tr09+Z6L!niaAxGRVbLsg*mv?5C=sqR@N>8_O^@OU|@`7eke)9pr&{7)L7>t=VB`wKygXdt?BzE*u(r^ z5x}w&`2aI?O-SBVKAitELL++~VTS7RQL(~6Hr8~3ERV#i)(lu@PlSu*;qdDX353^M zo(^#v5At4|S0Mr*&H35{D@*{ofU|By|G*Eb)7 zZyw*yYs@smyxOcS3I3>=rkGX3$ZZ*XikBM@xX*fZ4#npG5OW$%smm;4;J8&kbTH;q&K)@RJ1Zm{cO^4sR}KPz6;WQ@F%7hjq&uj#{XWA@M|BM@QY6g4k&xl^d@rq1)o zMP``xv*}#^0>0dt$<2|l|I9s*xofngN|i>8VzZb~&#uV~Ip^u&(AFLdQE-IWpbIv! zkvKNOIwDfo%cLKtJjlDjGlgNsFYV4|vq&IprXo-R9qnoMX{s3gBo~IEktrZQu@%d{ zf*%q&$oFUosf1T6`copI_q{>(hx-9MKvH1^iqw5VWrA{(DO8e&`l*DV%^@^`g&p~9 z7<})2JIjWNPmN@I$=?JupmskkqP~f6^r;z+AL6*S?%gKpYvjq0^mGX;hMK1f*z1Jh z^ba#0O&&ot#E|g^TAqjpM|&|l(>G`f3jWF%^pQY86Wk$V(61PSZdX+NgN~q}Vf&tp z@H7f5QMRGf2bKJGBrP1fjRuuQM@@ec^u8@Y^qf#jvEhw0!}ZZl`1+;9*k}u`R?&ai z=t}foHt7C&DlNXkg9YY!i(O6g-PKi9u3Grh$ufK+O6O<5sl7?k{03KjgR9Y1+f>n1 zU03UIo2E5+Du_?^qhre2Wi?>)#=++=n5=!oVcS+GJoWNebG*SoN!L9YhWkD$28PYF z0DHV3G97(Z;%z+!U7I`L)a$`y3|dbQ2J@?%c)msO!~~1Z6U7!$3UGuR6rfX)NiY%FvU7qIXo)>pYMF*=?bQ=;d5Ucz!PbgW^1L%$=O?M(6GDd4WTt z8DA#lTuN$Rnn|?~%|t51ejDksHA|b>fqkb*sWu@|L`8$YV>&k}WvF$8h6Mk2Cc&ba z$9E{rLcEnes(4{jMRl#DyoHkgYu6|(s%wy%+%9y(q|C%I7Y4X#R!XneLzIoJU5bFisAkvVi&EWd}GYH4u zegO)U-a#Pq9?>B{i4TO zj`J3-M!#NBQVWOb1{Drx6ztfOu2l{*ihWSYy5ZD|S$6FO_r18j!jYzvEK-A3IO4v> zn3TeCo32FRxE%${=A;A>_ZJ@gQfuEHdHLro20Gt#!r?&~Jj&|Lf2EYMVPb^#&_k>m zIkPchFlUt*q;0|jG(h`%6l&Wxjm^gUVK6CU#ND)WGpwSWLse?$QmydE*HRRcW{(nX zkgT+G;c9ce!V1-gMzSr!3GxgFR874RWF3Jt_oC*GAFxBZCJv~Y*bG{ttO|W#b|ot$ zK0k+DL`jNc?wy*!b5>(B=m#YD#lIO0w`$GcsTU;Zc_kFGy(WIcDw@I~?|6$uo+w?u z*^1#(3){{V zSoKy;V1_yI)>O48-Kb${6s?+1MDy$YG7%3)jz7en43rHk3VZyrv0jU+Pc{g4tzR}C z^~;8=>#1C$x)Uj~VdR>dxWutbJr_+~szrOh#9ISBCq`JzehWnHP2)btkQ9pPrYk`) z-O&b$DS%H-{*OvCtWIbC?wAnhdZU#7T&cdDAsJ$y?bwGF7Y;|KgnMGfy%H6k8g%yO8Gh=(6l+`o%$Xs6A{Jbp-G zrTa5aZ?wid3(idBAKH*{nj^z(iX^@dHzDn9a8^-EpDv7M`Klq&0*msUv&UDVu3xLQFTLLou-D0+D7aeYg`S(rHZO5`~)EJ3JIihj{k5EBi|j!KgEgO zlmoNgeJAoNKrC$zRSEXLTD8pJ{rF|~SN--C@=m|8u0py$0bt#YV3R5@<= zrqS4ymWeFrUFmcTw$B9KO;=hgQ1q@;HA~bk`)5z@O4s@aPxWH8U+{9E;0bZDU+|U6 zof`afp=4Jph3W=XiW|`NfqtBE6-gKiMQ4mC6x#bO!WM<%rcUBSXj-8-i;*aW;v8Lx zLUAs}SSZ*MXgQr2GJjD+T@4iOEn*AQV~jY!is2OF>M2LybBrZgb+H&_@vF}11Q^(r z#WDy#*7!`@2#F{0eouV+pKCGV9OF}(TctLgRcn*x>`VKS;PB}c{5H-Co_PKp)2MuK z;-Pj?rEr8!GGgs?l0nathLrFOyQorkLGx*LQKe9i>P9dAyfeb$^GEK95p|>Vt^tee z#=7B$ghBQ_SNJ%l@43QQEz|zlR1OuE*{PLPvK{A_Q|&MzPg5Ukd^~iRM?2{5px$cL%{;===I%hwIZ!xI->{50tzl^MiN z3Vn^r4%m%UW)SO8#8fKVtK6xpxm74>T&5}!mu>N7$jD{A{<--oKyL10haKUd4C`E` znkD8jIs7BncG!ue;ftQQY@ma(r$uja1c;sxgA_3}`fvQA|4K=j%4Mn>#ARFT#;$h- ziXoX5IRu$$?~ZsU1esmcS3RvVjm)Yr6ot%ObS22l)pdgWLznQ{!Is{24vU!gOrAO-@F1m zAt@G*G^1P%4RsCk@f@y>nnF)&NORL7uj`ZF28G@tt(y)g=uYRi9I&K2iR0at?*9$n zO&@CL59VIWD>zJF+vrmqewe|3^z}wg#RC+X4p`-I+~>%&iI;n6M?+1u{4td*qDi@# pY^-v4FI~IL_>Ne7Ym(vAWm9mX+!~9VnhbyZeFone3o(Bf`~N(-ke&bl delta 6485 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 diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.utils.custom_types.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.utils.custom_types.doctree index c46644fd6dfca4c70eecdf59318f5f611c28f0c4..30f08f40d07ccd8faf55b5af4966310085188887 100644 GIT binary patch delta 20 bcmX@2c0`S-fpsI(3vTAplC;flxx?83PeBJ= delta 20 bcmX@2c0`S-fn_7p3vTAn5Vy^5xx?83Op^xu diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.utils.data.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.utils.data.doctree index f49b2d59350a098e264677e5d9c7ed6d1ad60de7..69a024a6d0861272d59afe73910f84687dcdb2f6 100644 GIT binary patch delta 15953 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 Hgu?#;MsQ8^ delta 14814 zcmcgz34D~*wdY(RnIU^7nFNwaGD#pL1QH-D39`!$nji!UhSk9Eu_a**m0ek00}^iF zlNOW!EmgsUqD4fDXe%h9;G@23#U?)md14h@-tSRg={x7#@0P0j}@7R_ETf7;whD;HH)%$`51^VsT& z@-o@5-JKB7HEuqVPLgT8(`0OqwzB^>38Jh_x_3C@O=d64?D>nzj*RHpcu&jC(4vKO zfBovebfgLQZg8YzE}S;6Vs3fWlo@lUEnHZX<`qV%^jv9@Onolz$bH305E<#$DWSQo z-DWn)O(oN#qYQI+8?V>*kaA3%Or7kM|dTN8^-p9Sgg5Z*tmFzmhN#~ zz-{Rbm38B~LKmj^bX+gQaFsrgS7PcqXX&)6SypA$B;7ZA#-d3J7ggn^4VYhDmMb@x zwxzjxu5=WPWbnoj$uLybJ{%`k4|K}El%hftlf}>wxu#FHoH{<0Wa~CGq(zIx)3xsR zv}lpNrfx-D2T!Y-BGV$1esClxBZJ0!4O;hDo#IZ?s%7Pb(jdnDQFmC((x7=^GfG&5 z^~%YKA+2~6+2KdoXxzexaAR6j>vcc21|OT8Iw4w?OiV$ZxjriuEmN^M1}kmao(c$5n^IBvfw23 z2Sffn5t+!JV8w^5l)p}#L6mPL>or{D6O%0laRg~|2WiVQ+i+l=c8IYAVGwo{*^C7k zBTxP+14@V%TzY*6h_grI()1*0YQe%3D|NnHGb(-$|OZI!C53DC%iCaXhwaN4SvZ0O}Xop|}?hx2Z1G?AR0{2IRcYh$< z5AK8K<@q_m_kn1%$?M0n;k0*1Y^a}}D5F1!g!hqcu#7%Ef~d~#&xX$}RLXvafHz4% zn;{_EPlVg$;bE>@45-LOTk0z`>GS2`GZ~_TqW3o;(kl~&$VcX%hEa0xf;XU4hF6q} zsdl}-BV>r_cD=b8T(V=EEHT+GYqzGznv6s-*DhDZ=L>C=99DTol-lL_ciPL|Rr}$= zBTZG=AlBPu$@zTQdl9zCrbW|QZMU~*u~610C&{V3BISa`p-8!O@pcdo+GTxRp6s*q zkK!1QH5^`$OBX+{Cl$aEaSn$ZT`1nh0s3W&kL~jM46fm{i7!}9>TCW(A8`|Z9bAGs ztXZEV{$iJvhw`Wk^%JM%gRS?U3w|4^~Rns9P+7;7fVWOUMziO z%&H~d=sQly2E;o&k#DLRMI@)FFKAm4q= zDeeuEFlwB*}aMih9OC!?&cgEj<<+EDya z?rB$6=gGqV*=2RwNPWRT$O&tUmzOpgdu!4qEXfGh?k93B3>%W=^@3!1@ltq5G4*F+ zf4c0vF*4y4Ry`>r0S}m8Q4tM;*WehvWDqP93&VJw{&nLsP$7T0X@l4jCeL@sjjBON zWY|Q%T-ur=bN?*?#Njac#+6L*0+ZN|D3S(QvN^+X$RMO&DI;yj`m~I%sS;-iKQBUC zMVFpc7A*$#7o%Hsja`pZBT-k za6UlalqVmrh4x64D_3o86>g{=ffO0?`qm7)p?XZXyk3)ji|&LINmMpNcU-AhF?7Gd z*7DcAHR&!_)MnY%k~&FRg*;e0tJMS)#_zmwR8Y6t6^2O3vdh|J`D*)?aV4}ceCvZY zj$QA+4bQ!U+fvgOAXZK2g6SIiE9G@s1yyYimoJ=Q)aBJ}{qdN~mDzZ$mCC^#7a@hV zj(#krACJBq-Fr|_L9uVKDpvi^x-c&Aa{ z%DP+o`tMBmKaLaH1dT}2`lNNyUmXi^^6XE0!^bR5aVv0%55xK7{(@R$@oH|MYyL0X zfJ&l&AHA!u2#+vMyI#T;LH7l0VpIg5 zfY=qYtB;uM!2Ot3TLIl*{X0>GR~6<2fO~Z0=<9;3CG6CJu9I<*uKXh=NGgHb0WJ9jGX=Mi*^yB&mycWBtK6+1NivOpo+hZgM1B4*L$V z<=i7G#CnCbR$rGjibMH;Er$xazK_cl541dMv~zbcrO1h5Q?!p_Q}l}BiEl60 zypSV?M3E)Z+eZbuih)6>Gg!_|hoVjpm*eD_;Lb_hJ zcnN7f@yI0+_p*pKLqz2)Hd34EEZPijTao|9kDR@2@wOuO_Z86`xLO7Uv+F+|zluxB z*3HV+-zZx*vmzKiqpiC&2eI`(7q&XK9SiQQV?=oEc#g=5<{3wmpGb^VA*&_m?T*|* zB3H#a+``JC;drDrceDXN$48STs-wL-DJoiR=FMh*^lKfJ4UiE|sIcwnZO3+qsA!)4 zSC|lMitmhB(aakoH`vCwU0f>C zV(FNHWO?#5=WRsiSU#SUV|fDarLhX#$+3Y)O+Zu{^rX2z_6JWI7{P;LdPYoFgN}$b z!%|TZi%W8gL4x@Z@u*3nt_?%JCs;n4A)h*DexdB+AJrT5&->A@ui=y$0rJgQ3Xts@jp%ty zdrKaACn0>LFBG{V&%N`CxP-Q@ava(F?je8#S$zH!w=A04s=ebD_Z2Q3X?SlAP(Oyt zM@C)%5F;GyzlkvpS}If}*G&v@$j0}6E}wWmSIlydaKj^pAe`a6&2-2CJLC1N0yrR6 zIQXWkcJNL269=z9tkM0tlR=?cHvOTmc-DbyVo3@qQ)8>BF5;wYooPMK6!e`BI5^}+ zZkoNt4r|CQ-X$>e0y5J*XB-@Ji;GH%GfIl9N(!uz6gQM=SVIp9!sMEZgXPpoF?6Kf zR+`W_4#iWEfqg&-mCYZs{{)?|ZRs7D`9y^QCbvL1I{zNv2J#>YE(=qmN}j?y!14K2 zX+cvv3AG{zY_Y6pDoF5~BDD(9f4QU|?gJID-5BW3iq|T|pEd^rOe-3SAH}xYD_$F? z6hC8f3xp%ZKi~#ZoZu2E=!eg+t(0Q^+bWL$bY6dNMYJRX{IpivdjPK0yV%}2VZ5z5 z84xFd(Cy2ZMt$4xM}!3vM0CIBfT`&bA=dxpT%rJf}d6l!GAx zr3#+$XD^ zT3ts`{1Xo5it;UofP{m&Dv@L+W&u>fAwE~*1cJ?p7ZfKD>{MDpw-}cK69{xIbdnv+ zJcfC9@r|aR+X-D&O2X+yOz>{A+ zKA=AG}k(l0>;Bh_9ay2UprSY~N2wiE1jfi((ZpEfDgorpslqVN8B zu{fnfe_e_Gdqs*h0{ujRVvUUOoll1A32aU3P)5L<1hmncLojVmpMl~N$q2i(ixDLoq#z$$XN=q+6Rd(1i67B1=jEz1?==f z7V59o;Fn>_^K4hxNP^g1XXDz&^ZXykTfi$md5$T0&iLfP7Lw-!mM8sKVqjDen7|17 z(f2CrK*3q?B*tfn?0NmoH}q$T-b4mO=mR1#rZhgS3nV7*z)h`1Sfe$Nk00UHY+z%G z-joThP$jO4+6ED^8Mc|eq@i93_gQ(=_rocQ$3M_O9<=zNU>5(!Ga9grhvJ2{s0}Z) z_0&=%utsXtsebw*zo<>%Ec|n+jb9KrN6x_~XKx#xoR?T4*sGT~AxMhjv==2X(IE_o zkE{@!2>9IOT5i(Zw9qKuJ6u1X2>hWQX_T*-rq?In#-weC&}5;`)Ka9R%Yu7}rIbF= zQ$MYiVk?INnQU!hkhvBRl>k{zK)Na07B7byNXfS=P`*Ylp()>Q0-)dagKqM2SfRfR zgckaFx4-Jq)Z$e=g=)S$h@pO0KQ1yz|A3bJ16m%kwy2}lSdbOeQ)Dw1quOIDnfjKm z%LaXoAHCXNKUMVp`wQuDf8_?-U$;w)z!3(c9Rv+}mrTfkld6SYB{b;Qv#{k|7Q)?- z6u5%|vLiu{v1S7J;hh2(X=HvN1mAf_7Z;PfX_9-AIZa~FQJy3LKSAP0(u?}5bciWI zMaN{iQEi5xDos*IZDurVCY}uXp?>r#O)^f=`&+jm$-IjwP2%VIs5mMMZ<4!+qkL(S zGGtIO)RJT@QPoV7P}!0u8HH6NuF9sOUz+65g302?$(Sa27#`F2bc9T?A=#HAS(ofh zk<=zrilnthqhX4q%qfd2dq--PBniUcy8`{sxtOb1hW4&<9DTYIlz@09nc_C;*cT$u zZ=p`injAwUKOY>H9i5X8PXcjc+C(qv3LlG$EY5Je3$gF0dS~!0iiPhCuHk_A&Oo@> zN5UGOMo&1416oNyZ zc%-Ko>taa;x>%CwEC~$MD|U8oHf3(!oI?@RcA7K8dq zdzFe9y`wv1q(Q><%Kp4*r{8ucTMFNDX+*7V7HlyeV{~Q=Gb!zM-OhA2y{R7_HfVhd z5M5El)KVlEmY+btWD6|iL~aY4!uME}7Zz-K%rHo$r!nR$2|qii4SfOaaTgmpCxkch zX#J^ykQ>4eB=E={2>I$^M3#iFQ{`VT#U+^b#r^ZXVRbaMdKdxQSsz*4El&S_5F9Gl zmg3##e^+`0o>4%J$sg-At4i zV^E^x1P*6Sl;Andi>YF3T!e+}L*|Fmdh2136K6cku=Kyo{dOZy@*>yF=LrXB7QLAg zgNZUF`+dgy;Y>+*sx^;fPYpEEU1UnyDG(!5Vu(OV4maW%>eq@MsVYZg^i!s!n|^pC zc;9BYQ>||^EHEidW5}~^)^y1>eZVM~)yjhc`JL4cbBX!Z zMnJyAT&GBKHTl+j$tpxt`I6OC;(Q600<#-*A6W7w<|T%(qnws}$!0I&7B3=~0uec1 za`b`w!3CmbuU`28)XP=hOos#dpNjExYe?lg=hVX(LSahQCX+)K{lFGNq zr?@QeUi&YcA$$OUH9Evv>a~;be8fluTXa__l!H^RFNM=0HjOVZq{9mgn)Gwy;Xx?U zYahZhuSXgOHNzA$x$W4prcaI!tVf!@*#rH+Ltv%)kVo*v9R<1%D^w=WhP7S>TaPqe zo67av%I&wfo(9j8ULL!_lOLj=e*`1;6_daL2NkQopMx$6RDj+W7NnA>IaVz-TybH9H`C6FZ#u8OcH;>8|H}7?< z8gAYmDq7t<{c;6Vh%z^Q4$~_up-jwj>*p$=0A`aGE;%)?gD7`bJ+Qgo2R}>wa|8W$ITfFz3Imgr5BWA7Ge)R z-sY8@LJC+NKf`A1_#q!9Eu)T;lFErWi$%S8IWEzQkKh}Pa2+#C=s2X~CUVG#c}{3c zEryqpu2*)4941M!rPHSHIBQytty)}ed4OO`*E_F-J`sL{kcSYLj$_@$QpgG6B`{k5 zcqMcV<&`ibUB@?joeJ)mH+Np$2IJf4P?Es+ZIm=IR>O;ie&jCLWn)3M^%0%fiHGS~ zH=WTvRPuQ|!l~nV0+sl9=2GBcN(&%wHQR2p z)03_tHcO06?fCyz^Qa~<|MbK z5>GOhf=;rIlRR8Mx)Cmz6aDfg*aR86d%ii*sR(0C^fB*5&)kIjY5Y&X;SB!AN_y%# z=m4Wu6XFJfSI zj!^3NPDqs3*=R-LIht?%S&wCt(;4)^Vc4c^vl;^yBuuCcavPq+_+=|<3m)>b5 z^t}a)Ut+gKbN`*ItVpdgoRc_Xm3^2&r^$V4f&CE?Eeos*&8PY#n`}&N&{M?h#07?m z`c9Fn$fQn@FQ~)|j7zs!V1L^NubB(%YYFr5PrVMWGZvVD%%g|upcgvzM1wd5`UJIHbkk4w66_{O0WpZg!%=qdH+2sz^a3vO0&*!3@F>2Et`lwdAze*mc~#Ydsww63XDoOa|Fp5L zrq#HyLymsA3ohO>XaxZ+#~+Jp?DMD1E2nqa3+YeXw6y}?T6;=2dfwWo5!I%}9yhhG z!gf!%=RwbC&neGIMn||t+exE6tI@1$xYow+g*Ty3eCTWg#R3L2{4%v;di7T7r`|E>}cimg$LJJz)HO6Jg%7+U{q>|PFcUEE=9>Ij(K=L|o} zp(x1$QT@W%5m=TG&;N%6>HG+Xl=3*i9lJ&+j^?*G9NsY={x@+LyNm2H?^nxQvkFkAlqj8k%UVA$Ts{4vwgo5v7lN29Ic2b1uYeB$LgyyMheQ9jJ zlGOUwQ?4?JSN~1w815HbQCvLJ8r3=h;Pd3b`tnD@n5S-5fPK~t_U-V6&jzT2@KhIy zg=K>&!wNG726`^4wHc<=+Jb7>BKToo97NSxG^JUjL=SaWf?-vqiC4N%(5@~t<4~8} zpZd^A2(k8oUDilQP7H^|);@f*i6!Ww0rTV+3XT*&J6XkI*Zd_^JGtc!v)@&9LaCG zKzY@0{<91CJ^cv3=K?=hr6B0ngHQ8IF82LyEE-;WA6*@?i(kZOrUcZl9(tFtVDQVf z*oV5a0PK3xjoZQ$?0#oaA@Ai1rs`Dhi!NQd*urgHZ5E}cD`af##abX~_?W0n*DhUZ z3}w?5Tw%qv%3yjl&MdB&p+49Db@)`q7C_c03nVVlE!j}Wd#s!O1wEKv!l$@`G9#50 zqc;&Wg(UDRNmv_WU;UuCpbI{=+3hvIzVqb`X zo08HEUg}mWkL|v;v>QL>3Qe}YWQS{)t%rL#GvMfG1nU>he`>`~7$fmfMElFjjrJEQ z>{l{*gd484;d0IMP&WaHT@r9}?o=qslYoQW91ed*B6Ju<1UOX!;u8VR)dS9!fKm}) ztXQCAx6~R3xA76zt_HKi0kgO)j=cwkpxz4iz4#&vKS`vxSN3Nriaw87MR|F7QlC_+wIs*lqCIyixV@bNfVY=ASX=r zurdvh9fzobWLAyO`J{_e#@D+-^!(H|OSx!%K+KakmqoUiDYdc6H@NSVf8(!WTTkSs z-uM$YrB*o$xs&2X@57m~xhdyK=M}V3E>LTWL490Vt2Ap}m9{?0#|+giN)>ILh-`*? zd;&FbSL2KO9=sP=IwKyw-2huMyLHGsY!B?39L4sES^7&=EPESFPY>V?2BIE!a>h0V zy@T_EGkg@^*0Hx6TIp!xw6|QzpKbNqrW|Lik+38iZJhQF-)0a@)NCLo^4dm-l8Kt& zYGH443&yC6MMMZ$!&4HJVKgVd(R4gYt=rTZ?r4p`*2~Ic;`ihBk33l<{5X6FG#Bk* zGvU?g-CEOYJB}c(@;4G!@lc~kh5leFNkpFFKE`_AnVyXIHNu+Z5yVwqK1PSfNl;!q zlxI@kC~v*o2!}@n{UMU#i)+5k=tW2UFmZ){GPZ`Wl6ROHi?4$sz)4;amPT{|{ zx_Q%q$6TRkp4@sUL{BmC6wR};n*_;vVw-kctjc-O?t=5ACS;Xmpx*w{c-UDcH=7DE zS%s)Bi)SSQzpNk?RWY)j+4v3~j-Do!i{RN}SoW-$$e+C?u#inrmRufB*i6b#!fFg_&=Y~vW6kW-^$RB6#f7JRq6gO{$UzD9LsPKC zPFP4iH-MGGwW@x;523ku4B{&acD4ISaiOf10%A=JP%NK6q<2|TIgXrf!LSAit{&O}S z_ADyG0>rmE&1*clA*rwda;qIws7)M3kz~|S;a4>Gf(jd{C8$ueI-$Z5i%+oC;1?3w zwsb3AlB!R{M2A;BMCo=@#7~(Q1#0Pbss4kd;S9MW|3wSD{Yj$trB=TUo>;t1!?j6$ zSh%(6BT{^})5@)l8&tU^K;23!kM-2}kXaE~2#91x;)5(KQG@EXNwDUX32hm10!05g znJ_3x_wXc2#63f}3tMq(1TG2)ccTLr1z2I>#$NNv2+3aTZvqZGRJil2X0uZQ?u%Bq z^8yY91ox8z4g~~vUk7(bz)4MbuSRZhe55Vj3)t!iQLw2i2J&Fy+k@@l^j zP#LLWeWcf*O7esd5L-V5`D@a8_V9d2wq`#FOY*rz_PqKbMs;Ni?z=zA+#&cXBy%6|#uhzl%uQ__a~tqcW$ugW z2LHXfl6?Tp8#+1A9`&XJEjxz63FhXXdW$n{qqit5$s6SE5YKjn8| zpiN6SyGlT^sC;eXPI1I-@D_#T9dA)sHV~p@)7xO(>R?kX7-UmqtJcEO&qrfZe`*Of z6|GL#GR!T=NApfWj=Z-I^nU#w@)ik*5ql%L>Q}lCm5FRf zTZGIf!r;dC@hlIGu&Tn{kOOSDtX`%{8J-1me8j?>jRGq@G#z~cd5wm_!wp=2GYi)m z+a1r=IxH6Y& zBuhqZJqaZEsv8Da5%MGtD~3cdPU z`vVxeOzVrvTrK$eS_spCRFv0tOPvRLu$Cxg4 z`a|9OG3HcFQw-{kA@?=GgadE$airV_FU4HF45Sm0O`UmU5}-A&FNyc~nl|q0Sz8U%igghEpiV}hQCo(_y_hd`6H{!jr;){R5S{ItMnGZ_)+ z#!0k9961@V;=@XQvE5wwqh7OqE>6m*0-Wc9;JzR=Z6=QCXX1c5f6g=ED`vtz#sh1r zFTXSJUwrM=9_$$&^bt1^iGEtb zNTQZV7^2m2!l?hh!y6cT9P*FJ#PFyeeEZ2&HbDp|F+7SWsuSb=C^10lKi^=pMSoMQ zh1sC_n9KnSg^cdAZGM8wRtW)?>8Nz!Xf_qF$0mprfRuwqc!kg2aTu-l6KUWB6lfJ6 zsl{U%OU@B4su2HU8H)lc|5Y0-Wu0uyg8#d~nv)JY;(v4t2@H>EDW6Yg5u%qO2!-fV zGJ*un0%dil<1sxF0u2=EFA`Y}3S6lf6$HA-U3H7z_IAT+%A zmApDsZML+riHEluG2vj$s6f7>14O>K3>sA z=Z(_G-*n>%HT02t;q^#TI$n&SgFG}q+zv~99vh&$e<6c-K1gU2AfCW9ig$8MQ2bzA zKMz6iF?x!hNGn%dGfoJ=7CjQh!;k-p2_8@DQC=(#rKX zu>b)`$DZfP0z+bzPT1z7f2Xl>G)&aUrj+a~ib8)PvQ@GfbfzY#J=w$(+nhg>O>EQW z+eBw-u7PL1O~mspLTkC=m9^&_#H`{|Hdu*6wQ^DS@3Pq&Y9y{+I<-2q)^f(m0H>Ux z(|SRIp=0K=IX-DRf~*OHsIy^a@fAvO$|9e_=Cg_HsNU5h?OmnR@S&5d1?NVyvu#}^ zwKF{opzHelFgV}K#T}yK%%L>UIpx?NHSS^R|{dcACu!vz%3fpHgUsh9UCq970H zbtuTsg@A$-Ml#4VWT+2P4iT?6rUCAfo_+ukCG%bP6_Yb5MwLQ~UZ_imPGO3K_$o&G z5DC%g%(II&p-6}Wg0V%9+L%i;_)$w0vpr#@NPA5~dx$z>P(IwOcsr z@0>E{*b7m{$_QS|nSZh$c4v;PsgB}-{?5Vy9qeoG(Upy2E7Z7Ly>xoZ1%OdKY|XOo zb7L{uSxcujQ^F;g>}D4>j{GZeY3tvc_T4CBJN5o;@5nzo9&L5}rLW{2APM|uaH z{M#!0(@q$wf21~3bZEJ?evx%axbOr0wghHn6;o zlcl}Iz(&(-r5M>r?ixaAS4)+uBXmAuA+0Z~hzF6HOp~e(9kl{N^l6fXh&0(|CJ5`k zj9pEWcbsP8vYb9OORC^>*vhew_F%omS<4zMljO({an{n-y$D)=*3z~TcI?1B<8;=V zhVjTOSx7CBB}L0AOCG?lzI!=))n4Yqg1T1Dd*;9@A9kjzTM5}bW1r>EEFsi>xzZMm zJ5!lKU(mg5OKl6W_pko!#z6X1uh4%sQRuUnLZ5UMx@J}A_En)v6mhqrP_3;{39b;y pD76Rv8Nj||oOi?-y=xG&{y!=;D%$`6 delta 10262 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 K{4Xak&;J2FbzS!W diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.utils.task_eval.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.utils.task_eval.doctree index 5a0a67175d7d5268642276e878e24074ebf6d3bc..061254772caa8b5541409786046a75f5ab8415b7 100644 GIT binary patch delta 3363 zcmb_eYitx%6z-kbVY}PMc6Zwax_wMry6tY;&8{Jq7HWCa03~2ZFhHcPyWMGLhwaXG zX9j@;ict{42EjW@VyYrhMExVFe|$w_H1U@}A;$0n4EmpkF~J``&Yeehhb?KWHre#v zbI;(6u>^V+4=mzXwt^&qz|o>t;A7n9@CUL3WrL{WUz(aq@lSM58h zKeDRau@7uWjc3Fhn23A1Oe~d@`q{(sfov)>9^Rp3)7&$uj6A{)u$?{8NTfU1&FE;*PX_kb* zxIB+UHO{v~O*-Hg98nd%OPEDvWf;|j(J#b7pCi8{l}V>ETrsNMxCkcp+`i!9H{xM! zzADL$#g()iBe#;XddqtyC7TsQ|AS65aH z*Uoe6xRMgu4XwG@%zYuYDjfAU0g*n+LE#Io0P=&N5sTh>BKV*-h=Q8nZf&FAL6wy$ ziJ~iFBUfGn$FF#OZhc$8UJaH(s9+DHoshayy%c`i9W=3@HnF>PY~dOtyHLSKi4i5- z!joRFQ>zisV+1>C0zPH{-Y*8UL2v3TLFeh4LbOxF^l{-YFtA*Ng-ZjzqrP^i&0FXk zfRL0MY{vly|K!Yqz9j=dx8kB)&<%yM1Td+Gw~tpB_{54wz@7u}pk|Q}Zs% zAi~v4zei!Pk5GASWVy8IsPau)DB!h=#_ujWhBkvjw_Dgq@chCM`PV3{p)tR_h1s=| zq~et4CR0*29Y4UPGGk(HA})g+8&8OetRaso zxg3{~*=$Z6&vBB3x7B||rD^Q)x1cOZ)hT53R0SHJYiX_J&5R-OrY+^bL6XLA`bBgc zw4+sP$gwUzsu?(5)XhOF>T7ByeVizPh=D{&2%|KfY1mDrXk6XcL z=tE0L7c>ukYe*Fk(s>>4B^v+G=EtaMFZ#MTI->HWCA#xkbW^3#5!Jcq3i0H}LZJm} zyomZvl@?f^WJ0Qli#)rKZ_P-s@b@zS7!Pg3BLjEAgI@F=+_sQ?b3U@Gfu0-1WKRt( zBJYy4%`yG&!J6mklA@Fz6kh`p{O^`)aN|+efT+%Q4Yro{-=bSD>@EaHEGs4Ton5fXlv zhwstmtu|#yxIJ1P=9KZ+$dp-D+Q&pSrd79!9FCB7@C&>3>hIKdL)v*SIbTmCWUgy| z7*HJ~%LbkXYBs>q98CNY(p8^EMAJ)|mgD1_BrG(Ow9weHyx1Ty>n zXdNcA@5#2c)P5buI@www47sQ}3F<^CCq7U*X5mDB6ek34lBl+oljQuugl=chv8P~X zrNaxVgEZdL9&ilkhVV9?Y#&9Ra%~+|PU#xK2^!3_cyKqZN5<=3?+NZNCkA!Yvy<+~f0*HGCPi xkk9l%zLJP9^bFg!G4Kk%!%WYd4qrypAqK}I0qP(Fi8kT)BOTO!249Kv{R6nODHQ+! delta 2126 zcmb_dZD?Cn816aA^(JX;nzc)9Z<^kGv}>~_ZLn(BRx6#>HD%gC#7&(cA9vo|wz=gd zt*l^YaZam2X5XuV3|xK)qEjaIk0OZpwO0SAatH{Z%)$K%@s6%?m6$r zbDsBk-*fWGQ>!WN8SATC10Qe!-aafXCTACt1qtrt2T>pVIviYc*x(!=x4%=5-Zgid zwS?;GAlVkMC~qS8qT_XMFRrVTKRTlq?TLb#PUMnvl3sMMNq}YVB{T@1xqD&0(^j1q zhc0`kuq-H13~k~W^pFuU9kezbrg(x9qn{3C9K%nd4;Q}#i*ISN(z#*r1}zGO93uHu z231r~hy_^^8J~_(npn;(W=-s$VrR6!IZ5d4QB8$UBfEVp&KjSqyIkk6{(VAHn_31!81Vs=SY( zzbk|;{*&AV;~1fqTs$T;W+|R-6ol zcGZWQ^&moKfIJgDidwGwlyN<~cL#6eDm9Y*PH@T(&u-p@>NUAS6Fo9~?GDg>u{rqd zdQvwMRemAyq%h^&&@+R;6F^j|gIqeNKu+_l}K!L)nKZBNr81tnnu z95;9Lma&N24^bPva^&Nk;z;oQbm@^Tq}WNaWWy=nVm9tU4Bz!dP#DgOVWE6)Lze9z zRHi2|#KMR7W_AG3@xKs`(ed95--{*;nA*YaBqYWOB2zns9wAYEAO^XHGS6lb5{GCo zz^)#RXEim~ibCPWXsoTQ#)y$v7K2h}i7mBaG#O%mbD-OPkZNMQTlWm4xmA*rhZRnM zCa0}+(QufWRh9HJP~49JM`OP8B&o=&DW!07Uec8k-P$rzKF#*)bJ5GV{d;O}lr&A% z5>hU$X0o{_^&P3#YCbj;vwEzgq!M>- g{osKO#7&VMCF`>Y$|3OecfzA1`|yMno*g;xH{s@!!TYW~@ zd$d{;r%VMKE9sC*F?QnEAqh~B3L)Vrz#PU<2I5K)hod+Hslq@Ykc1)xaum4oz5nR` zySJyedv?~A2`zhI+RH?7*4l3uOW+^XTVf^}85 z(wsADe(TMxJ+E)w(HaQ`8v4BFHX9YA6|6#vifK93hEZ#sz{g=q?^}*n5(V^oM#Z<> zTA1JLHT%qdq%{YEUf=Q^L-`bJx}{bz8oqAT`~~gMY29g2S|sf`W}Kl$q@=j3#T(XF z*U=2WWo`}z%3-_BwLza~?o`m@ST&HzP{NZ+G1Zw3vM;D<8`EP~!Yl-x^>{so{atok!L*r@@{9 z(5}xm^t!2X^KXxthW6T~?pWZaJEJLOXolxob2_NkDtb+uHZ*Xfa%w^IU5$!w;?tPs zS!kr@n?}RXz+A27YO}6W)f|1=a6HYiP8r&a+t754am|{sDmwMH=Ih=muQYfAzWJu^ zYYjv9+}ao(EKi$rt4+tyDsGKB8qbDrx>b*rWSr3}zJq2^!g{k&cRi!TL9jLWrJ+Ya z7I>N9c$qSH5-QD$07Y{b5PvcLe<}XI8~@(}n3VTPVBaiKJOkN+VitU&1mROIs(SDc|&V@JX6J;n?nZ*3{YS4?jihCjTx(E)n?J( z^@e+9LA&XugLvt45$BygHaO4Vf+B&uns3c4Xr?=lDjbLEA+%L3fUh>&v^-O@YU7$- zt7>l3A9rWQ=@S!6s@ba5o4%(_>z;uGwOH%DirWBqXRXr);Jbh(0ak`n8azhG!T$g` z$GROEn?Ug_V+bIuqmZgWs5FqGVjz2C+^vH-zS|hDm=L3iZ#1ZZ6>Vg)zA!lhshK

          !{K4K-oBc=-@}C**I-Q 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 diff --git a/docs/_build/html/.buildinfo b/docs/_build/html/.buildinfo index 8573e50..a22a628 100644 --- a/docs/_build/html/.buildinfo +++ b/docs/_build/html/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 2850c3f2d041ef05d056faf26ffcf3c0 +config: 18c43478377692087fcbbbfc8f44aceb tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/docs/_sources/README_DOCS.md.txt b/docs/_sources/README_DOCS.md.txt index 2445c0a..e870f33 100644 --- a/docs/_sources/README_DOCS.md.txt +++ b/docs/_sources/README_DOCS.md.txt @@ -7,18 +7,23 @@ implemented in PyTorch. You can install the repository using pip: If you are using the repository in your academic research, please cite the paper below: - @article{ulmer2022exploring, - title={Exploring Predictive Uncertainty and Calibration in NLP: A Study on the Impact of Method \& Data Scarcity}, - author={Ulmer, Dennis and Frellsen, Jes and Hardmeier, Christian}, - journal={arXiv preprint arXiv:2210.15452}, - year={2022} - } - - -Certain parts of this repository are still incomplete, but will come soon (I promise!): - -- [x] Build proper documentation -- [ ] Add demo jupyter notebook + @inproceedings{ulmer-etal-2022-exploring, + title = "Exploring Predictive Uncertainty and Calibration in {NLP}: A Study on the Impact of Method {\&} Data Scarcity", + author = "Ulmer, Dennis and + Frellsen, Jes and + Hardmeier, Christian", + booktitle = "Findings of the Association for Computational Linguistics: EMNLP 2022", + month = dec, + year = "2022", + address = "Abu Dhabi, United Arab Emirates", + publisher = "Association for Computational Linguistics", + url = "https://aclanthology.org/2022.findings-emnlp.198", + pages = "2707--2735", + } + +To learn more about the package, consult the documentation [here](http://dennisulmer.eu/nlp-uncertainty-zoo/), +check a Jupyter notebook demo [here](https://github.com/Kaleidophon/nlp-uncertainty-zoo/blob/main/demo.ipynb) or a Google +collab [here](https://colab.research.google.com/drive/1-Pl5lvcnpbGL2ZXLGDDNqvJB7Ew8uIsS?usp=sharing). ### Included models @@ -50,7 +55,7 @@ model = LSTMEnsemble(**network_params, ensemble_size=10, is_sequence_classifer=F model.fit(train_split=train_dataloader) model.get_logits(X) model.get_predictions(X) -model.get_sequence_representation(X) +model.get_sequence_representation_from_hidden(X) model.get_uncertainty(X) model.get_uncertainty(X, metric_name="mutual_information") ``` diff --git a/docs/_sources/nlp_uncertainty_zoo.utils.uncertainty_eval.rst.txt b/docs/_sources/nlp_uncertainty_zoo.utils.uncertainty_eval.rst.txt index 539009a..154043b 100644 --- a/docs/_sources/nlp_uncertainty_zoo.utils.uncertainty_eval.rst.txt +++ b/docs/_sources/nlp_uncertainty_zoo.utils.uncertainty_eval.rst.txt @@ -1,19 +1,9 @@ Uncertainty Eval -================= +================ -Calibration and the quality of uncertainty estimates can be tricky to evaluate, since there are no gold labels like for a classification tasks. +The quality of uncertainty estimates can be tricky to evaluate, since there are no gold labels like for a classification tasks. For that reason, this module contains methods for exactly this purpose. -For calibration, the module implements the expected calibration error `(Naeini et al., 2015) `_, as well as the static calibration error and -the adaptive calibration error by `Nixon et al. (2019) `_, where the former is an extension to multiple classes, and the latter uses ranges instead of bins, -making sure that every range contains the same number of points. - -.. warning:: - In `Ulmer et al. (2022) `_, we found that the SCE is not very informative for a relatively large number of classes (> 5). - -Furthermore, we implement the evaluation of prediction sets by `Kompa et al. (2020) `_: We determine the average width of prediction sets to reach 1 - alpha probability mass (:py:func:`nlp_uncertainty_zoo.utils.uncertainty_eval.coverage_width`), -and what percentage of prediction sets contain the correct class (:py:func:`nlp_uncertainty_zoo.utils.uncertainty_eval.coverage_percentage`). - To measure the quality of general uncertainty estimates, we use the common evaluation method of defining a proxy OOD detection tasks, where we quantify how well we can distinguish in- and out-of-distribution inputs based on uncertainty scores given by a model. This is realized using the area under the receiver-operator-characteristic (:py:func:`nlp_uncertainty_zoo.utils.uncertainty_eval.aupr`) and @@ -22,6 +12,8 @@ the area under precision-recall curve (:py:func:`nlp_uncertainty_zoo.utils.uncer New in `Ulmer et al. (2022) `_, it is also evaluated how indicative the uncertainty score is with the potential loss of a model. For this reason, this module also implements the Kendall's tau correlation coefficient (:py:func:`nlp_uncertainty_zoo.utils.uncertainty_eval.kendalls_tau`). +Instances of the :py:class:`nlp_uncertainty_zoo.models.model.Model` class can be evaluated in a single function using all the above metrics with :py:func:`nlp_uncertainty_zoo.uncertainty_eval.evaluate_uncertainty`. + Uncertainty Eval Module Documentation ===================================== diff --git a/docs/conf.py b/docs/conf.py index 988cc82..3545f35 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -31,7 +31,7 @@ sys.path.insert(0, os.path.abspath("../")) sys.path.insert(0, os.path.abspath("../nlp_uncertainty_zoo")) -__version__ = "0.9.0" +__version__ = "1.0.0" # -- General configuration --------------------------------------------------- diff --git a/docs/genindex.html b/docs/genindex.html index be2033f..baeb224 100644 --- a/docs/genindex.html +++ b/docs/genindex.html @@ -4,13 +4,10 @@ - Index — nlp-uncertainty-zoo 0.9.0 documentation + Index — nlp-uncertainty-zoo 1.0.0 documentation - - - @@ -37,7 +34,7 @@ nlp-uncertainty-zoo - 0.9.0 + 1.0.0

        • TokenClassificationSampler (class in nlp_uncertainty_zoo.utils.samplers) +
        • +
        • tokenizer (nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling attribute)
        • training (nlp_uncertainty_zoo.models.bayesian_lstm.BayesianLSTMModule attribute) diff --git a/docs/index.html b/docs/index.html index 43e51b9..a702cbc 100644 --- a/docs/index.html +++ b/docs/index.html @@ -5,7 +5,7 @@ - 🤖 💬 ❓ nlp-uncertainty-zoo — nlp-uncertainty-zoo 0.9.1 documentation + 🤖 💬 ❓ nlp-uncertainty-zoo — nlp-uncertainty-zoo 0.9.2 documentation @@ -36,7 +36,7 @@ nlp-uncertainty-zoo - 0.9.1 + 0.9.2
        • Custom Types
        • Custom Types Module Documentation
        • Data
        • -
        • Data Module Documentation
        • +
        • Data Module Documentation
        • Uncertainty metrics
        • Metric Module Documentation
        • Samplers
        • @@ -630,7 +630,28 @@

          ContributingCustom Types
        • Custom Types Module Documentation
        • Data
        • -
        • Data Module Documentation
        • +
        • Data Module Documentation +
        • Uncertainty metrics
        • Metric Module Documentation
        • @@ -166,7 +187,7 @@

          Data

          The contents of this module are mostly concerned with creating compatibility with the Huggingface transformers package. -Specifically, the nlp_uncertainty_zoo.utils.data.DatasetBuilder class tries to provide an easy interface to +Specifically, the nlp_uncertainty_zoo.utils.data.DatasetBuilder class tries to provide an easy interface to load local datasets and utilizing the Huggingface code. Furthermore, it supports the easy use of custom samplers defined in the nlp_uncertainty_zoo.utils.samplers module, that produce representative sub-samples of training sets for different tasks. @@ -174,17 +195,131 @@

          Data¶<

          The following dataset builder classes are included:

          Furthermore, the module constain a modified version of Huggingface’s DataCollatorForLanguageModeling <:py:class:`nlp_uncertainty_zoo.utils.data.LanguageModellingDatasetBuilder: >`_: It seemed that for the classical next token prediction, the collator wouldn’t produce the right offset between tokens and labels, i.e. the next tokens to be predicted. -The nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling provides a minimal modification of the original code to ensure this property.

          +The nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling provides a minimal modification of the original code to ensure this property.

          -
          -

          Data Module Documentation

          +
          +

          Data Module Documentation

          +

          Module to implement data reading and batching functionalities.

          +
          +
          +class nlp_uncertainty_zoo.utils.data.ClassificationDatasetBuilder(name: str, data_dir: str, splits: Dict[str, Any], type_: str, tokenizer: PreTrainedTokenizerBase, max_length: int, sampler_class: Type | None = None, sampler_kwargs: Dict[str, Any] | Dict[str, Dict[str, Any]] | None = None, num_jobs: int | None = 1)
          +

          Bases: DatasetBuilder

          +

          DatasetBuilder for classification datasets. This includes sequence classification and token classification / +sequence labelling.

          +
          +
          +build(batch_size: int, **dataloader_kwargs: Dict[str, Any]) Dict[str, DataLoader]
          +

          Build a language modelling dataset.

          +
          +
          Parameters:
          +
          +
          batch_size: int

          The desired batch size.

          +
          +
          +
          +
          Returns:
          +
          +
          Dict[str, DataLoader]

          Dictionary of DataLoaders for every given split.

          +
          +
          +
          +
          +
          + +
          + +
          +
          +class nlp_uncertainty_zoo.utils.data.DatasetBuilder(name: str, data_dir: str, splits: Dict[str, Any], type_: str, tokenizer: PreTrainedTokenizerBase, max_length: int, sampler_class: Type | None = None, sampler_kwargs: Dict[str, Any] | Dict[str, Dict[str, Any]] | None = None, num_jobs: int | None = 1)
          +

          Bases: ABC

          +

          Abstract dataset builder class used to create a variety of different dataset types, including sequence prediction, +token prediction, next-token-prediction language modelling and masked language modelling.

          +
          +
          +abstract build(batch_size: int, **dataloader_kwargs: Dict[str, Any]) Dict[str, DataLoader]
          +

          Build a dataset.

          +
          +
          Parameters:
          +
          +
          batch_size: int

          The desired batch size.

          +
          +
          +
          +
          Returns:
          +
          +
          Dict[str, DataLoader]

          Dictionary of DataLoaders for every given split.

          +
          +
          +
          +
          +
          + +
          + +
          +
          +class nlp_uncertainty_zoo.utils.data.LanguageModellingDatasetBuilder(name: str, data_dir: str, splits: Dict[str, Any], type_: str, tokenizer: PreTrainedTokenizerBase, max_length: int, sampler_class: Type | None = None, sampler_kwargs: Dict[str, Any] | Dict[str, Dict[str, Any]] | None = None, num_jobs: int | None = 1)
          +

          Bases: DatasetBuilder

          +

          DatasetBuilder for language modelling datasets. This includes “classic” language modelling (aka next token +prediction) as well as masked language modelling.

          +
          +
          +build(batch_size: int, **dataloader_kwargs: Dict[str, Any]) Dict[str, DataLoader]
          +

          Build a language modelling dataset.

          +
          +
          Parameters:
          +
          +
          batch_size: int

          The desired batch size.

          +
          +
          +
          +
          Returns:
          +
          +
          Dict[str, DataLoader]

          Dictionary of DataLoaders for every given split.

          +
          +
          +
          +
          +
          + +
          + +
          +
          +class nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling(tokenizer: PreTrainedTokenizerBase, mlm: bool = True, mlm_probability: float = 0.15, pad_to_multiple_of: int | None = None, tf_experimental_compile: bool = False, return_tensors: str = 'pt')
          +

          Bases: DataCollatorForLanguageModeling

          +

          Modified version of the DataCollatorForLanguageModelling. The only change introduced is to the __call__ function, +where an offset between input_ids and labels for next token prediction language modelling in order to be consistent +with the rest of the code base.

          +
          +
          +mlm: bool = True
          +
          + +
          +
          +mlm_probability: float = 0.15
          +
          + +
          +
          +pad_to_multiple_of: int | None = None
          +
          + +
          +
          +tokenizer: PreTrainedTokenizerBase
          +
          + +
          +
          diff --git a/docs/nlp_uncertainty_zoo.utils.html b/docs/nlp_uncertainty_zoo.utils.html index 121d095..f1c237f 100644 --- a/docs/nlp_uncertainty_zoo.utils.html +++ b/docs/nlp_uncertainty_zoo.utils.html @@ -5,7 +5,7 @@ - Utils — nlp-uncertainty-zoo 0.9.1 documentation + Utils — nlp-uncertainty-zoo 0.9.2 documentation @@ -37,7 +37,7 @@ nlp-uncertainty-zoo - 0.9.1 + 0.9.2

              nlp_uncertainty_zoo.utils.custom_types
              + nlp_uncertainty_zoo.utils.data +
              diff --git a/docs/search.html b/docs/search.html index cebe434..9a23ae2 100644 --- a/docs/search.html +++ b/docs/search.html @@ -4,7 +4,7 @@ - Search — nlp-uncertainty-zoo 0.9.1 documentation + Search — nlp-uncertainty-zoo 0.9.2 documentation @@ -41,7 +41,7 @@ nlp-uncertainty-zoo - 0.9.1 + 0.9.2 diff --git a/docs/README_DOCS.md b/docs/README_DOCS.md index 18e583f..e870f33 100644 --- a/docs/README_DOCS.md +++ b/docs/README_DOCS.md @@ -7,18 +7,23 @@ implemented in PyTorch. You can install the repository using pip: If you are using the repository in your academic research, please cite the paper below: - @article{ulmer2022exploring, - title={Exploring Predictive Uncertainty and Calibration in NLP: A Study on the Impact of Method \& Data Scarcity}, - author={Ulmer, Dennis and Frellsen, Jes and Hardmeier, Christian}, - journal={arXiv preprint arXiv:2210.15452}, - year={2022} - } - - -Certain parts of this repository are still incomplete, but will come soon (I promise!): - -- [x] Build proper documentation -- [ ] Add demo jupyter notebook + @inproceedings{ulmer-etal-2022-exploring, + title = "Exploring Predictive Uncertainty and Calibration in {NLP}: A Study on the Impact of Method {\&} Data Scarcity", + author = "Ulmer, Dennis and + Frellsen, Jes and + Hardmeier, Christian", + booktitle = "Findings of the Association for Computational Linguistics: EMNLP 2022", + month = dec, + year = "2022", + address = "Abu Dhabi, United Arab Emirates", + publisher = "Association for Computational Linguistics", + url = "https://aclanthology.org/2022.findings-emnlp.198", + pages = "2707--2735", + } + +To learn more about the package, consult the documentation [here](http://dennisulmer.eu/nlp-uncertainty-zoo/), +check a Jupyter notebook demo [here](https://github.com/Kaleidophon/nlp-uncertainty-zoo/blob/main/demo.ipynb) or a Google +collab [here](https://colab.research.google.com/drive/1-Pl5lvcnpbGL2ZXLGDDNqvJB7Ew8uIsS?usp=sharing). ### Included models diff --git a/docs/_build/doctrees/README_DOCS.doctree b/docs/_build/doctrees/README_DOCS.doctree index 7345be0cf8f7a5815c28854bc0f02ed679581daa..fa9ebd1e5edfce83fa7222836822722c20fa7e81 100644 GIT binary patch delta 5550 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 M;R%NwPX(F(06t11a{vGU delta 4777 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

          Il@%M~AZLP-)*lr$|BB_oTMH=iq={WSY(wyQ71h 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 RBA1|Ae>^u=Hr#rM{J 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 o$#sf8;J#BhJ{IkTVjnt90b%`AGUO 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 literal 214030 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 F{{v>M^pF4m delta 9397 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 delta 34 qcmX?YcG`@ofn_7pJrUl}5I0?mDLpc&MMe2VlQ)P+Y-Sa8V*>!y@e6$b diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.bayesian_lstm.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.bayesian_lstm.doctree index 1ed78a7beb04e0ea90c0d1542fe86b9ea3a13178..3ac0c5c8684ecf36b5923248b550de0d6fa0c8f3 100644 GIT binary patch delta 7558 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 delta 8184 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 Ysad3mioZ<7jY{zw5-1`dv7XNQA6i#Ce*gdg diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.bert.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.bert.doctree index 446cfabd00cfcd49e23adaea6c99062b65c563a1..950cfc3823f14d7c18fb7c718a8551572d518f37 100644 GIT binary patch literal 83289 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 J$L9;V{||^ZdkX*n delta 13467 zcmcgz3wTu3wPtVfmDCNqxmLv&pkMJ?Zxtz4rSj-nd+&4RoMckad%x@Vm7K?V z{A=&E|GoA)(|3LmzVF?zuvKB3-Mhlx7{Ko7JT}0_tkV{^Ha0iaEu0P0vXfx$RY`0P ze3qSMcy7r_!)FCKTiq*Kmo08=x}{LpS<>1v2iQPox_o|J6PlX6qP4kYzPGTx;m3{h z8}c)R%(Y$?ys%;{jnoS@m7%Sv_gbXj@0cUVVa zZ`lAvd9LYMGBJXvLS&6LI9DPIFO+Qvj}{S4Dof53SBTm(fALa}X2d2JYc z=uCq(70GN7JW^4L(#I-}@EgLw(J=s?4TQmKBiq@`&iSL>V0>*DRISZZPdA2hZ?bPD zoUf|mTfzdn#;`P4{I;9Tgqm?3P%?TipBWaYief|ftUp7>m<{%B%MD`3dobgk9zVV3 zQfzE$odb~*ys_QaC^St-M5SL&NP;)V7V#G;kcn(Jx_pKmyk~sd|E-hN{HPdB_9vJ+ zv66on24}8Mfu|b z*UiLHZM!`!>>_HxnMDO8*>$Rz9R|nEPIzu|1M{GKDoig-wPc0&>9cg6?<7<`pT$b) zG57rq>ZZ9Y%4ZfFt;uDhg+himm1RMCbrrh~?|%>*i^~4UmWBm5ZVm0eYIvf0sPbKd zuY~WcaD(q#r~243-S<+X@3kR(FBQHwYrgr?a9B}0hCLD5dGqvQ<@{0QoJj*+ngP7O zv8I9@75C5AxGhIe5XV)DoivDDJ>v)L3vqw`^ z6L=@Zv)P*Ep7W~bRL~}SF^e?^ZE7i65&<2z4`DLWJMq0fDzC%HpJuU5LgjsE`>9JC zeJQ)mD0>>B?#N+J3)ydBy*E#rf`|x1Hto6bM)ryr_yby`l*NA*YNmldAO`*;a={No zz~7p#VPE2n7{{K`ZhYY?l}KNpUCLr64cK7%56dmenT#g|AEhx=)-kQgT z30YG-2u53(^}HsMxYSY|X~?2lp<@aLXR;v|=@YTwtS+w|%U4DsQbDYO)wSHx z(Aw_ref30G)HKlQNkfBbF>9+wz89-!@pE>Tuet0w4LU1Ybept#DuXt))e~V6t4EH- zOnhH%QDY$|X`WCqO_G#dY?PI&XN8b8P13R8B!RW@M=U@hFufqf0$Q-NfVK-wF*_PC zKw!`3uugKr@g}3Xk{!gGURIDEaab1`7W;s*aDpso?qpD(33nnWt0H72{H;;=G`zIX z!>v}_`%;-{5uvoUh@8;2XdchBiiMPB4K5^JBo$3jrCG&(I+9+M;T-=@(`Y{38hR}S zNnr|_6(K2gpHR0bZz3lC6Y0$qloDTK5*N(C+oiZEDijY!_4Tb&_|r0~Cyi14Mk<=3 zdQwJpSomR2im2YZY*cS+Q7QF*NSMl-oT1v2b$sLS z(l;LeY48rh3G(3oa^|%ACPUl#!6U2b zo%Kqa{-jN|puM@UbL~d0gR+{ zVCn0ZATU@z%nZy0@2tO?#e-u*fkjPU9CQV;x(%2EP1&Nw;Hv@KwqZ5y{f-TkK;hA9 zCP^%Z)U9eFZP9qZ&FnUlB&Fl}&y6=Cu7R5dnsH5m>o;YwsYYCrLf~?tsc|M;mV1`5 z`tG<$tj>sQTqs;5rQ`Cz9K^L6vdy@D4!;2pTVuravkZ_i0i9+%j~8V`DHYWyzgrEl@ZwALjX%dTb~<&b%xzv%6N2)YK7=2mWqN_ zsN1Ti*yo|3kvSdOi3jdNXx;}4`-w}6)^xk3`Pq` zM`}gPeduLArUzbBwp_lz1Z-XiU<1+C z%_d-(53lBT^Z-V3*pmnXyEz0f64HQmR(CiUBCCC*#EcC0{Yje~ zj#9&+;&G3)ObU7W1*%fn0{(G~-dJ;b=#|{DmD(_pi^KCYo*7@*Fy-*y2$F@Y2ie@b{e!e1c8% zHg9_>FIsztqcI+yd8(3MPwysX8=sRpRwB4qIt`7VS>Xsd8;*M_zcXf6oNuquQeO)G zI~z*M&7HTjabbP!;<}c)MN3rcch>ha#&dHaV}Ano+VCWm4JW;BUT?$pa6VjmEi%S5 z8c?;unU#ryas`!OHC2M%2vG+5W}%L({eDJQbh`%2J(LjFOTBr%1vo4;75GXOe*@{# zSp5CEYZhN?g9k>Wz@P&Y_$C`PA4ujPr_df6Vcl3>be6K!j4?a2o>MNk3ya~sV1{Q4mDf{Gd%= ze)uTRoWZt${SW^|*Vx%E0_Pz=|EowUeoB9BhqeD`XMJGT?sCg{j1Y56c5`j`NcAkV zWBhqk#$$X6y@9#4DI6cvd^D96;)7m}@_WA?nMFbSEsK|x&tF)#WJ$X|#DB)- zTJ2DS9qctirBzd5D~e-IsY%7D{@Mo4BaK-0_8QF2Z$}NdOfZkwDOFt$V@w#D**azG zN%VIG*_tQLEh0_Dxg}1WPL?igC|uCoa$8+Xy*j+SVuw#(Phm9>d2~?1*A$IRo{v;u zIG^&UGWY02c0|PX@Jd%;e=hqaCP%+4`YiG)p_Q3kj-yuxmhYPEr7`RqE@5IB<0hM0?*OZGra z0V}}cUe&%-K$F_Z=K@aG_Dro(P?qWBa}J%L16e5q4i~W5EI}w2ZFj{OZ+k1vVXAJfj_uPY&=$s$pmJZD5o4)v(G4S=VTPgx zVT9L?&EQjnlvc(MjWw3>3I*xtC_aBXtFXZ^1^#}yxdrmS++4w{J`+4&EQ~sq!WMQP zL2oE@bdaexqFZS~S04%;>FDUzy@L}8C*H|6kI_SD6K*;^kZtP@!vham*+{taY!O^M9^q>DMoevOucMtPgLWdKe#zn&&c>1ienHxHI2T5KSv1Jo zSYO}Jq;_3@6gH-7)uZ5dpG0{0&?N41z=<#KC-uM$(aa5753l7z9HQHq=Lm8?uW*Pq zsi`lRhfO;CdN`S0m2td7=I3)9q1&BE`x%#E${S(8t3`11wZeObM{ z;ZGoyz{d_|OVonIRC1`$X>SOFBgax<-v}|7p-Mxq!ix_dQUR-vwJR0}8O;((|O z9zmDJ3}$~t^7%!P;_Fg zPI&WtdW1^di)Z5@_Cid8793`-M}E=v(}A>$EBhC*f_DWv)`=#MI70x|h)mg^?NhOBC$e^b?5{`hKimnJz$DHV2XZ?R5C{&Eus(n`YNWE0d}V>15P=0Ms#ZF z6wDC(sB7+LXvv8pBjOCicpih31;GWn62vI3dM8F!6DW#i$xv{77#kOGxbe%?ua3uQ zRLN!qhPv5cmK|6W&5{ByMX@}VEEKF-6(Dboy|{Q6wG*P_Tyj}>Q~gf_x^kIc=-u;a z7(9E@5m*?_ZsP?mQ4!>zq{g>=xT|MHkb@SnBA7_8%6N_|@V6K?ozKRfp@jN1!4qRtm|1B2#Fn51i1}%!Sc9#Hls%p}c0K3MxU@C^ zH&3P|dS_506#Ma)Ni|m?-+Uu(%#1jtk$vFRnSNLM?Yx7x?YPfJlddlmh5R~yJMIr zdP~zF^rjF}9C%dRC<@$98X5yC4PwB3!4WetARpv54ppYR$56qd&qI$CocNr+uOa#I zk=EdKK}a2Arnr;R8Cmbh&}fF3%tgRr&3wOCt^9PrKSKegDd@G0@c) ze|%vm{Y=gT6+VeRzatd}MrE`9k)p`^WqhDEn_EHlB#V+K>{QcMM&Ebmm{QBq0qm{OuP+V*%;83*yQjB88?GMSb@!L&&2 zUdCxzh$8#l1}0mD(Mcw2qbtE=;_BZp*&QY9E}hAKP|B+L{Rx7}wj=~zFJ&(=NnKB4 zeBG(*Nfbot`VGA*<9PSMvSdhaw)4XYq3H{MVs^RiG+M#WP%&F*=H<7!9XLtYmfnO< zzUzwa8pe{QixvG>)Hatjmev;hiiiJ)6|J!GeTp)M?`tf zgxX7-j2#Iy8L5GFWvsvKwEYt`<&1nwS7JuQRp=Sfz7)EB>I3A!VDo>xO&T9w&fLC&@?WZXX@T zeN>V9s8ID0A^V7@eKe6iOs)^`C(3+WV&IL@?0vp7kru#Uz9W&oM+Lqf!#w=)#6ZSa GR`xI0YDDA! diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.ddu_transformer.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.ddu_transformer.doctree index 4f367cce3fbad4559057329d6e85ac9c293040f5..1d5f929b6406ba3dbe774faf415dfbb3ba59b6dc 100644 GIT binary patch delta 13798 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 P!OS8I)+^K*MUeeJfyBK4 diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.doctree index e88ad1053b1ba5764cf56769aad00fc70f8f91dc..296065550d3af4ecaccabc3e0c18c01dfdd51148 100644 GIT binary patch delta 20 bcmZoDX((Z8VBN?x%b2;eByID2<3u(9O{xbj delta 20 bcmZoDX((Z8VA;qt%a}Pd#BK9@<3u(9O8f@R diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.dpp_transformer.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.dpp_transformer.doctree index 5382747bc2531402d6314eac93d6f7f9979ec926..dd4725e4f95cb131b2aa70e74bce258a8ee6e34f 100644 GIT binary patch delta 14551 zcmcIr33yaRw)PZRxtZ3`QLnaNGtI2S)`56>u44c|b-Tm8Z`+r|MSs?a%?{&3k^I>AJO?|D01* zr%wI%^3@yR_rDPywmkf9wj(U93q0JM*<~y653>^^JvVtu>*m(*Q`ryXEoi7W9zFd< zZLX)fX3?ywnj+7#hPwKy+C2G)ov>^3fv&qcgl}e-UDlP)E%ov%eG$!-T`K=mvHU>S zPR&>4-x39#`201ge0Y(a+l!+8Pq9X6Ws&YmUDmL8-mJMZ^9IdbJSA9lp4r>kr~T%p z+Q=zQwTX?PBs9+{KFr){bLy&VW>2f0RbNEbo+sT=e8CfnRmCsYMv!Kd&Zq6TB3h-Zi*{BBY z>tEu&;Hu=Vl6u(5*Oc^PFNX0QD+<|8{3*}X&z3@@?ODGfjgRomzis0AqipgE zv7^|xVmjEFF#g2Y0jxtfKaii!Bg-6C2uIhrG;CNgz8i}V7uw@f`8Wr^udF+}Je;@w zwHN=nEEalld-;6k3Fj5B=aZxzy}|CbYZ2&c;@&l zHj(Pw5Y1tq(_+94$CA z194!HrC&tAyHHB9rE}F>_KTpogvox?e*D@=17U9asK+MtGz``RDnk)CyWW$ya&aD? z!*JVeMbpxzuC?KfuF9JFhG|u^D;6v$@?4FZXVPG-7(;Pu3ipn6c8>~lP?5u2wYo`4 za%mfcHEYb)JaoP_Yos;LDr>Tg0WX=AiV0SP+YhA1g;8Bo0B*Ok9~biKsUBNLTwxT( zsT=oQWRA%X9yNaq75r&;16O)Djfs)JWb zT%=ejJ~05-XQnYA$hWp2fan7$yzKpW7=mNkS;MbRD>7Eo04aZhlAk-kPzd*pe?h@b zYMEduFkLn0t80i`pu{n(I5NEptY}{sdpVvYaxY`&Un=q$+H5#+z@P+vL*;0ATnzub zGQsjFs)xaF3;(rpAUr2v(2Z=1f5?ui0#i8G_Vcq<&a7=XyA`!rQ<}PJIat(k@lQ={ zXFTe&@&9g9nlvx>tn`iPiS@M+S^@PrLVtSEpN|kzJl@)*^-)a=Yjd~N$wRDWAD1HR%f*W|$0+&5dEs$WFC&XYA>jFJSzNo9E-XGq*)B)B+oR96p_;Si~_4 zhnmy1y8*lFE6Tykzq+mj`eT3hh8;avp@nB?f8^UfD}cxNr=MlP)zs2K+ZoB{7dotl zyUQ%R|B-yCq&B|0z|F9Nrf9SUwa?XeM?j>#&>~Gohm=@&Yn3Cb7uH;Y*E^EerMnAw zMqNsTaQZF$$~rgn;gjn+CzX(B>EJ#FO2EOz$0os@sMr_mb_@BV**bp{z$U)phE)Da zeI`7@kJh`~2r3A~<`L+{T);ueE&ZTv?`dwRO z<@S@4Y0z~id*F{guOl9+&zgZTN zqTQO&>c-YO9(U7ZxE)(_Dd!A}R*f;(xLT^P{KhcrN~u(xm9|YM=bZBdY5u;>TG{t@ z@~})uH(L1G)6>`!R5dfJx@#0)zS5H;!f3ZB+)RNm`ZXcRUH-lSO1qp7`aVxN zTh*hpzqXRI`$$I@q9p0)A}R?-i_&?H4m*T)^KxhB1kIR06|zz0{xCU#pR7uda)JHY-Zx z|M;Y)2&Ob=+~EaS#>?&;WuJnI8uPUjN8nZEF^WU!$lyl0tR#d_+=_=-bNQ_~ z{~vnySX<3UZkUJBIP*aVFI<<%%hpEYZ*QK@Rjq5ii`&-j$)R8Ncg%;dFwzJkAraj9F>xCwo4Xdc-&5;#0; zboDb6?eP>2p0w5IdojkM|NoA$Fz6co>DDFE^c?T`syWkZev@9z|5;@Or zdzM-$k9^lA>6%88ERTYBsA$kNDmW|UF_12eY7m~MGX6y$;VBaONpOM)3MA)xh6#I`78~YCW5}yb%F8X5T+M|WJ*xzLCxEIH=-qFI%zG#!1hfrM`Zpz1xz1*FZM~g+^ zix#j|7loZBV3Frs|9USp^vFxo*=-VVr5W(<5P&NM;8qE^QUdO}DBunWxY7We{+5%k zdvyZ)Sb~0N2K_n&=!XLIdjX1h;F;ZnS!7H|-aeE!?r+3*2}GWoIhiY)HffM1d2KK5Q42FD#MGW7n`LJT9r3fw0!7AxAJX9AI-Bvxz{9Aa!0 z;useQ+&VMvit};nB<@;2E>=vMGyt}=j~gHv@0YkZ#BXx@Y}Ok>pFL)M{(8PXd!# zSlF33EVR~`G09=YGwm_H=)=xD>7xu5Osjb@%-%%Y;~MSJzC-< zg|)hQ_TeW1YbAv>;?t|(FySDD1qb=;!+#1eSbX*oE08h zoIzb3B(-E>a~!S1JMQ~fa|u3{)Rk~<0bh62Bk#DLcz))))R?fEMHRD~Zj+p0ql>SP za`In43Fki@jZQjFi1M!cfdL-yGBR4MTfBT}_SUf%p$m`w+9_$RzTEd^F&iAukJYEK zq4Ai~;H^I?8(%vd`0@%?8ZY@QPrTt~{JAin)fan);IjxOl_Q_UX2kRShICdNfT|Wy z^#Uqi3x>KdnbkL*=Ppb^;yL5E&vpgrm|j9;7TMPbYXl~8S?u0;K6gPO_Gug_0fqYMZlveuX(h{qBxBpM5L3z*F}bdJ&Tk!4UEx3-s0K9R@X zk(kJ7Sqx6=Z2|oex1F4VW3`icYD0>I)70hf_Y*(LsW8Qw_SykU?};q(hu9tMnCaWY7lQ)PtotXl;1y zMkk`ZQXFEdA?;-`XfNc3zsulQp@=V&$S{9zhe3QPMKO23g0DF}o%M5wjb{sL$Ul>< zl6|#malrAoHni6`)L16_S5rwO`=S(->=W%p+kF1Wk-W>(XvQpY^iM zLZyvpu!NU?=gg|cic1Ivv4Y2z!2p@PMz`4U8Ld%~GV;E}Pk+}{GG8yFL{rRNLWnXN z%rL+e^W`vDDpimECZ!zQyR0LB==&7OQ@x9$q{sJDNqAh8&hvQKYP3Iy|58yNC8yfk zT-y%&<$mIqD@twUPHjH>&&j~PcZlm5zHY`h?C?Fg)6$9~$({PmR(O(saK{q9>zs$z z-I-%oEr=ZF6jW8?xo*tk6c@FiM)6*qXZ`n$yu;5K;=NfkNg zDyPV0@rhn0S35(l3RCjTraMKtg##$<$>T?VnZRyGS@^3hP!dG{g6p!7o_Kc**#Ll*mt)N!{-Atb#11c2BK zRzul*t9}bW7k18x9}~Fsw*anCR6ULmChEluD)kN>5Q|<%#wG;Zs?WmO;5`?cApGi0 z5Proc^6TJ)i~9A-1mRaXTrUncEHlugW%?GZZey1*pkss_U^NDyU0;QxUALk-=!@_K zJvRcnE7NcgrCxbxA?8m(>qwmKr*J`D!gdZ~b2{Pd%U%39dPt*3l|ND0w3p-X(b&tU zjg{{|+4V;wVJv$Z{k0%PkFh{McupT}fi(6!rlImAXMadAlBQ(#T7qPB2okfVPI{&l z^2}M&(+PpBNw?YIG4bimwglpIS_VZy4}ilhbsfP2@P)q42ECFGi}}U(S3$?+;RJjG zldpHQ!&3}L|A?H=&k4G(FZ60DjfOV?w&}~u!KV+41)X^k#UAgPDAoWzDGG+ACF*0N z;m`V*co@z4C(<^yr6tPUk9)kIel{K&*tkTIhK)@`I}2C|{m3*dxNm|Ju4W4o+h1Dg z!dc}sLeA}l%Cq5A8>&Kcf{ObkPmL%cR9XFE6a*aHC&ULWFAa5ys1x4gR;rOJTTz6)Y&eS~PmvvFFevQC@69qI^9$0A zEL=|shfccp^0r6E3rT_o`IsaWrO58|9=(Up#MWac&+)F@`(1+lF%)QIVb3RtJ-Y>K zE@98gJDJ?G`oPYRRxVihA8>SIl<{hRXjxfPV^p<#&p&NewYsHgKav@NSCY?@5^_&( zrJ}K?&95X?J$n54B=WfNO45?7ylthD@U|$m>+NT|z-Hy`CD||s-MHQh;wz2xWc*6w zVf|QVJ z4cFMu|H|#vX-W6wK$iPLLAFZw^#lif4}t>c=Rhw!BCsYyFS{BNlG0HrV*So%`1aSMRfrEl6U!w9K`&vsj1XCSAjHQ9mPp==y87!Y>Z^@#zXJsZ zub@cPfiC&_pL#&&BxNe@Vwd3nw7PE#ehV}d;6*Z9e6`SGYY8+zEkmC_0?r-`z2QCT z+e1aacc`~pdz*gJOJwvr zkTl!QL$=}D@;IyH>$(b#=rO50OoSW3{TVG=zg(AV(HfIyAm zojf^Oof^hyA{&%z=+v+pr$$S%eoY3%3ZYw3PIDeFF!FTCCXMO>T2=Jc1U> zgX2*uiBKj=?S`_Mg>b(LWqpcp*}Nh=L?4{Jn4)W=;c5K@#j(z7y* z{T*wAFCX|>BYia6N}?n&dmu%h)*Xhh4yhs2L~aDJ3ucPHriiNv3a3lMyX0?~jwZc` z>KFm+9V)5-w(CkLWj#Ve>Z1n0fC~oAZu)@{Xs;=B1>uO$wF}`cA#~-m30)3T=)!MU zr_HHYaGepm#^{R&LOQ0Z_YQ$q5X17b>Dpsu`_xWR$ zfkAoga)b+P%SVU8&FleTgx6;3wOI^T`P*`ojh}|8_+;w0RP?hLyKu1_W$eIOIZ6d5 zV-#hxH33Hj1t<1yu!r`B@X%Mopl@go`G(_Z(4fy8jw}7|Qjp6CO9nROv7a0ETlGof zF?)_3fyeQ8LDqgA(pnmOB*@ysLDue-qg1>x5GhMl)|#`_aeBo_n8_}8iEv|AD@QB` z9q*z3&*s#+!WVq?Ce^LU2*mxIRKA~KnH5xvW z1fu@uF>M1%wM(!Wi(KL+i%)(6ag{4{K%o!kE|d|W40Ri}m80%P_^8t7Uk%Qz(O7c{ z+d4XUTkG$YK%zk*KBC_<7Sbh$_$W#z2_3Nz(MIud{T~J`&|0D@p!LWI}UoXQ(|W9`wSIP zm6I;P?&)sCwjqYZ5NWGVpMOkdAy^iQBP`l4H-54|<| z2vnnQLpAz1N~5n1HF`0r(fdk`UY}|7R!t-BTq8zZBic1mX$ zYm~%mbogm>CTg@_v~m}L&??aOwbV?f?fi+DfporoTSS;k`#6mfEPZ7qWWz!IsY)pN E7hmd6=l}o! delta 14839 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

          ?|2972`(;+y6c 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 delta 15868 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 diff --git a/docs/_build/doctrees/nlp_uncertainty_zoo.models.lstm_ensemble.doctree b/docs/_build/doctrees/nlp_uncertainty_zoo.models.lstm_ensemble.doctree index 75e09fff47ac8edcb557fd5c00f2aaf025ac8ad8..26fa3af7e21f3f60630fcf1409f553fea2084606 100644 GIT binary patch literal 99701 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
          - +
          @@ -223,14 +224,16 @@

          C

        • CellWiseLSTM (class in nlp_uncertainty_zoo.models.lstm)
        • ClassificationDatasetBuilder (class in nlp_uncertainty_zoo.utils.data) +
        • +
        • compute_loss_weights() (nlp_uncertainty_zoo.models.model.Model method)
        • compute_weight() (nlp_uncertainty_zoo.models.spectral.SpectralNormFC method)
        • -
        • coverage_percentage() (in module nlp_uncertainty_zoo.utils.uncertainty_eval) +
        • coverage_percentage() (in module nlp_uncertainty_zoo.utils.calibration_eval)
        • -
        • coverage_width() (in module nlp_uncertainty_zoo.utils.uncertainty_eval) +
        • coverage_width() (in module nlp_uncertainty_zoo.utils.calibration_eval)
        • create_probs_from_dict() (in module nlp_uncertainty_zoo.utils.samplers)
        • @@ -276,7 +279,7 @@

          D

          E

          @@ -348,12 +355,20 @@

          F

          G

          - + + + +
          -
          • nlp_uncertainty_zoo.models.st_tau_lstm @@ -637,6 +658,8 @@

            N

          • module
          +
              nlp_uncertainty_zoo.models.variational_transformer
              + nlp_uncertainty_zoo.utils.calibration_eval +
              @@ -276,7 +278,7 @@

          Python Module Index

          © Copyright 2022, Dennis Ulmer.
          - Created using Sphinx 5.3.0.
          + Created using Sphinx 6.1.3.

          diff --git a/docs/search.html b/docs/search.html index 4a2c428..b978301 100644 --- a/docs/search.html +++ b/docs/search.html @@ -4,13 +4,10 @@ - Search — nlp-uncertainty-zoo 0.9.0 documentation + Search — nlp-uncertainty-zoo 1.0.0 documentation - - - @@ -44,7 +41,7 @@ nlp-uncertainty-zoo - 0.9.0 + 1.0.0 diff --git a/docs/searchindex.js b/docs/searchindex.js index 750e5d9..db46939 100644 --- a/docs/searchindex.js +++ b/docs/searchindex.js @@ -1 +1 @@ -Search.setIndex({"docnames": ["README_DOCS", "index", "nlp_uncertainty_zoo", "nlp_uncertainty_zoo.models", "nlp_uncertainty_zoo.models.bayesian_lstm", "nlp_uncertainty_zoo.models.bert", "nlp_uncertainty_zoo.models.ddu_transformer", "nlp_uncertainty_zoo.models.dpp_transformer", "nlp_uncertainty_zoo.models.lstm", "nlp_uncertainty_zoo.models.lstm_ensemble", "nlp_uncertainty_zoo.models.model", "nlp_uncertainty_zoo.models.sngp_transformer", "nlp_uncertainty_zoo.models.spectral", "nlp_uncertainty_zoo.models.st_tau_lstm", "nlp_uncertainty_zoo.models.transformer", "nlp_uncertainty_zoo.models.variational_lstm", "nlp_uncertainty_zoo.models.variational_transformer", "nlp_uncertainty_zoo.utils", "nlp_uncertainty_zoo.utils.custom_types", "nlp_uncertainty_zoo.utils.data", "nlp_uncertainty_zoo.utils.metrics", "nlp_uncertainty_zoo.utils.samplers", "nlp_uncertainty_zoo.utils.task_eval", "nlp_uncertainty_zoo.utils.uncertainty_eval"], "filenames": ["README_DOCS.md", "index.rst", "nlp_uncertainty_zoo.rst", "nlp_uncertainty_zoo.models.rst", "nlp_uncertainty_zoo.models.bayesian_lstm.rst", "nlp_uncertainty_zoo.models.bert.rst", "nlp_uncertainty_zoo.models.ddu_transformer.rst", "nlp_uncertainty_zoo.models.dpp_transformer.rst", "nlp_uncertainty_zoo.models.lstm.rst", "nlp_uncertainty_zoo.models.lstm_ensemble.rst", "nlp_uncertainty_zoo.models.model.rst", "nlp_uncertainty_zoo.models.sngp_transformer.rst", "nlp_uncertainty_zoo.models.spectral.rst", "nlp_uncertainty_zoo.models.st_tau_lstm.rst", "nlp_uncertainty_zoo.models.transformer.rst", "nlp_uncertainty_zoo.models.variational_lstm.rst", "nlp_uncertainty_zoo.models.variational_transformer.rst", "nlp_uncertainty_zoo.utils.rst", "nlp_uncertainty_zoo.utils.custom_types.rst", "nlp_uncertainty_zoo.utils.data.rst", "nlp_uncertainty_zoo.utils.metrics.rst", "nlp_uncertainty_zoo.utils.samplers.rst", "nlp_uncertainty_zoo.utils.task_eval.rst", "nlp_uncertainty_zoo.utils.uncertainty_eval.rst"], "titles": ["|:robot:| |:speech_balloon:| |:question:| nlp-uncertainty-zoo", "\ud83e\udd16 \ud83d\udcac \u2753 nlp-uncertainty-zoo", "nlp_uncertainty_zoo", "Model package", "Bayesian LSTM", "BERT", "DDU Transformer", "DPP Transformer", "LSTM", "LSTM Ensemble", "Models", "SNGP Transformer", "Spectral", "ST-tau LSTM", "Transformer", "Variational LSTM", "Variational Transformer", "Utils", "Custom Types", "Data", "Uncertainty metrics", "Samplers", "Task Eval", "Uncertainty Eval"], "terms": {"speech": 0, "_": [0, 7, 10, 12, 13, 19], "balloon": 0, "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23], "contain": [0, 1, 3, 11, 12, 18, 19, 21, 22, 23], "implement": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 22, 23], "sever": [0, 1, 2, 7, 16], "us": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 23], "estim": [0, 1, 7, 10, 12, 19, 21, 23], "natur": [0, 1, 2, 9], "languag": [0, 1, 2, 9, 19, 21], "process": [0, 1, 2, 3, 7, 9, 11, 12], "pytorch": [0, 1, 10, 14, 15], "you": [0, 1, 10], "can": [0, 1, 5, 9, 10, 11, 12, 13, 15, 16, 19, 23], "instal": [0, 1], "pip": [0, 1], "pip3": [0, 1], "If": [0, 1, 5, 7, 8, 9, 10, 11, 15, 21, 23], "ar": [0, 1, 5, 7, 9, 10, 12, 16, 17, 19, 20, 21, 22, 23], "your": [0, 1, 10], "academ": [0, 1], "research": [0, 1, 10, 13], "pleas": [0, 1, 2], "cite": [0, 1], "paper": [0, 1, 11, 14, 15, 20], "below": [0, 1, 3], "articl": [0, 1], "ulmer2022explor": [0, 1], "titl": [0, 1], "explor": [0, 1], "predict": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 19, 20, 22, 23], "calibr": [0, 1, 2, 17, 23], "A": [0, 1, 11], "studi": [0, 1], "impact": [0, 1], "method": [0, 1, 2, 5, 6, 10, 23], "data": [0, 1, 2, 5, 6, 8, 9, 10, 17, 21, 22], "scarciti": [0, 1], "author": [0, 1, 15], "ulmer": [0, 1, 5, 9, 11, 16, 19, 21, 23], "denni": [0, 1], "frellsen": [0, 1], "je": [0, 1], "hardmeier": [0, 1], "christian": [0, 1], "journal": [0, 1], "arxiv": [0, 1, 12, 15, 20], "preprint": [0, 1], "2210": [0, 1], "15452": [0, 1], "year": [0, 1], "2022": [0, 1, 5, 9, 11, 16, 19, 21, 23], "certain": [0, 1, 7, 10, 16, 17], "part": [0, 1, 10, 13, 19], "still": [0, 1, 12], "incomplet": [0, 1], "come": [0, 1, 2, 10, 11], "soon": [0, 1], "i": [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23], "promis": [0, 1], "x": [0, 1, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 20], "build": [0, 1, 13, 17, 19], "proper": [0, 1], "document": [0, 1, 3], "add": [0, 1], "demo": [0, 1], "jupyt": [0, 1], "notebook": [0, 1], "The": [0, 1, 4, 5, 6, 7, 8, 11, 12, 14, 15, 16, 17, 19, 21, 23], "follow": [0, 1, 10, 12, 15, 16, 17, 19], "thei": [0, 1, 7, 8, 15, 16, 20, 23], "all": [0, 1, 2, 3, 5, 6, 8, 10, 11, 13, 14, 15, 16, 20, 21], "import": [0, 1, 6, 11, 12], "from": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 21], "For": [0, 1, 2, 5, 8, 10, 15, 18, 23], "transform": [0, 1, 3, 5, 8, 10, 12, 15, 19], "base": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19, 21, 23], "furthermor": [0, 1, 19, 23], "version": [0, 1, 6, 7, 10, 11, 12, 16, 19, 23], "avail": [0, 1, 8, 10, 12, 15, 16, 19, 21], "pre": [0, 1, 6, 7, 9, 11, 12, 16], "train": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19, 21], "bert": [0, 1, 3, 6, 7, 9, 10, 11, 12, 16], "huggingfac": [0, 1, 5, 19], "name": [0, 1, 6, 10, 12, 19], "descript": [0, 1], "lstm": [0, 1, 3, 5, 10, 16], "vanilla": [0, 1, 8, 14], "hochreit": [0, 1, 8], "schmidhub": [0, 1, 8], "1997": [0, 1, 8], "ensembl": [0, 1, 3, 10, 13], "lstmensembl": [0, 1, 9], "lakshminarayanan": [0, 1, 9], "et": [0, 1, 4, 5, 6, 7, 9, 11, 12, 13, 14, 15, 16, 19, 21, 23], "al": [0, 1, 4, 5, 6, 7, 9, 11, 12, 13, 14, 15, 16, 19, 21, 23], "2017": [0, 1, 4, 9, 14], "bayesian": [0, 1, 3, 15, 16], "bay": [0, 1, 4], "backprop": [0, 1, 4], "blundel": [0, 1, 4], "2015": [0, 1, 4, 11, 23], "bayesianlstm": [0, 1, 4], "fortunato": [0, 1, 4], "st": [0, 1, 3], "tau": [0, 1, 3, 23], "transit": [0, 1, 13], "finit": [0, 1, 13], "state": [0, 1, 5, 8, 9, 10, 11, 13, 14, 15], "automaton": [0, 1, 13], "sttaulstm": [0, 1, 13], "wang": [0, 1, 13], "2021": [0, 1, 6, 7, 12, 13, 16, 23], "variat": [0, 1, 3], "mc": [0, 1, 3, 7, 10, 15, 16], "dropout": [0, 1, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "gal": [0, 1, 15, 16], "ghahramani": [0, 1, 15, 16], "2016a": [0, 1, 15, 16], "variationallstm": [0, 1, 15], "2016b": [0, 1, 15, 16], "ddu": [0, 1, 12], "gaussian": [0, 1, 3, 6, 11, 12], "mixtur": [0, 1, 6], "fit": [0, 1, 5, 6, 9, 10, 11], "hidden": [0, 1, 5, 8, 9, 10, 11, 14, 15], "ddutransform": [0, 1, 6, 20], "ddubert": [0, 1, 6, 20], "mukhoti": [0, 1, 6, 12], "variationaltransform": [0, 1, 16], "variationalbert": [0, 1, 16], "xiao": [0, 1, 16], "dpp": [0, 1], "determinant": [0, 1, 3, 7], "point": [0, 1, 3, 7, 8, 10, 23], "dpptransform": [0, 1, 7], "dppbert": [0, 1, 7], "shelmanov": [0, 1, 7], "sngp": [0, 1, 12], "spectral": [0, 1, 3, 11], "normal": [0, 1, 3, 4, 7, 11, 12, 13, 15], "output": [0, 1, 4, 5, 8, 9, 10, 11, 12, 13, 14, 15, 16], "layer": [0, 1, 5, 8, 10, 11, 14, 15, 16], "sngptransform": [0, 1, 11], "sngpbert": [0, 1, 11], "liu": [0, 1, 11, 12], "even": [0, 1, 11], "more": [0, 1, 2, 3, 6, 7, 8, 11, 12, 16, 18], "approach": [0, 1, 6, 13, 16], "much": [0, 1], "appreci": [0, 1], "each": [0, 1, 5, 9, 10, 21, 23], "two": [0, 1, 4, 6, 7, 10, 11, 12, 16, 21, 23], "instanc": [0, 1, 5, 8, 9, 10, 11, 12, 13, 14, 15, 19, 20, 21], "lstmensemblemodul": [0, 1, 9], "first": [0, 1, 5, 8, 10, 14, 15, 19, 21], "one": [0, 1, 4, 6, 8, 10, 12, 13, 14, 15, 21], "suppos": [0, 1, 5, 7, 10], "an": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 19, 20, 23], "out": [0, 1, 7, 10, 12, 15, 18, 23], "box": [0, 1, 10], "solut": [0, 1, 10], "encapsul": [0, 1, 6, 11], "logic": [0, 1, 2, 3, 10, 11, 12, 22], "conveni": [0, 1], "function": [0, 1, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 22], "These": [0, 1, 17, 19, 20, 21], "get": [0, 1, 4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16], "input": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 20, 21, 23], "batch": [0, 1, 4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20], "specif": [0, 1, 15, 19, 21], "metric": [0, 1, 2, 4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16, 17, 23], "network_param": [0, 1], "ensemble_s": [0, 1, 9], "10": [0, 1, 4, 5, 7, 9, 10, 11, 13, 15, 16, 23], "is_sequence_classif": [0, 1], "fals": [0, 1, 5, 7, 9, 10, 16], "train_split": [0, 1, 5, 9, 10], "train_dataload": [0, 1], "get_logit": [0, 1, 4, 5, 8, 9, 10, 11, 13, 14, 15, 16], "get_predict": [0, 1], "get_sequence_represent": [0, 1, 5, 8, 9, 10, 14, 15], "get_uncertainti": [0, 1, 6, 10], "metric_nam": [0, 1, 6, 10], "mutual_inform": [0, 1, 11, 20], "In": [0, 1, 4, 6, 7, 11, 12, 13, 14, 15, 16, 21, 23], "comparison": [0, 1, 7, 15, 16], "modul": [0, 1, 2, 3], "class": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 19, 21, 23], "me": [0, 1], "simpl": [0, 1, 8, 22], "bare": [0, 1, 10], "bone": [0, 1, 10], "onli": [0, 1, 5, 7, 10, 13, 15, 16, 19, 22], "core": [0, 1, 10], "It": [0, 1, 10, 19], "intend": [0, 1], "purpos": [0, 1, 5, 17, 20, 23], "who": [0, 1, 10], "would": [0, 1, 10, 11], "like": [0, 1, 10, 11, 12, 15, 21, 23], "emb": [0, 1], "own": [0, 1, 10], "code": [0, 1, 2, 6, 7, 10, 11, 19], "while": [0, 1, 8, 13, 14, 15, 19], "e": [0, 1, 7, 13, 16, 18, 19, 21, 23], "g": [0, 1, 7, 13, 16, 21], "inherit": [0, 1, 12, 19], "requir": [0, 1, 11], "ani": [0, 1, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 19, 21], "stick": [0, 1], "close": [0, 1], "torch": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 20], "nn": [0, 1, 10, 12], "To": [0, 1, 11, 19, 23], "check": [0, 1, 18], "what": [0, 1, 23], "argument": [0, 1, 5, 10, 19], "initi": [0, 1, 8, 11, 15, 19], "differ": [0, 1, 5, 7, 10, 13, 15, 16, 19, 21, 23], "here": [0, 1, 12, 20, 21], "also": [0, 1, 2, 6, 9, 10, 11, 15, 21, 23], "provid": [0, 1, 5, 10, 19], "todo": [0, 1], "creat": [0, 1, 4, 5, 8, 9, 10, 11, 13, 14, 15, 16, 19, 21], "quick": [0, 1], "ha": [0, 1, 7, 16], "test": [0, 1, 8, 15, 22], "unit": [0, 1], "so": [0, 1, 10], "far": [0, 1], "rudimentari": [0, 1], "shape": [0, 1, 10], "consist": [0, 1, 5, 11, 19], "between": [0, 1, 5, 7, 9, 10, 15, 16, 19, 21, 23], "util": [0, 1, 2, 10, 11, 12, 19, 20, 21, 22, 23], "see": [0, 1, 3, 6, 7, 11, 12, 15, 16, 20], "custom_typ": [0, 1, 17], "py": [0, 1, 7, 13, 19], "custom": [0, 1, 8, 17, 19], "type": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 21], "annot": [0, 1, 17, 18], "collat": [0, 1, 19], "builder": [0, 1, 19], "which": [0, 1, 6, 7, 10, 11, 12, 13, 15, 19, 20, 23], "dataload": [0, 1, 5, 6, 9, 10, 19, 22], "task": [0, 1, 2, 10, 11, 17, 19, 23], "dataset": [0, 1, 5, 9, 10, 17, 19, 21], "current": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 20, 22], "sequenc": [0, 1, 2, 4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16, 19, 21, 22], "label": [0, 1, 2, 9, 10, 11, 19, 21, 23], "classif": [0, 1, 2, 5, 8, 10, 14, 15, 19, 21, 22, 23], "support": [0, 1, 10, 19], "sampler": [0, 1, 17, 19], "subsampl": [0, 1, 21], "task_ev": [0, 1, 17, 22], "evalu": [0, 1, 2, 5, 7, 9, 10, 16, 17, 22, 23], "perform": [0, 1, 2, 8, 9, 13, 14, 15, 17], "uncertainty_ev": [0, 1, 17, 23], "qualiti": [0, 1, 17, 19, 21, 23], "config": [0, 1], "defin": [0, 1, 4, 5, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 23], "default": [0, 1, 5, 9, 10, 12, 15, 23], "paramet": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19, 20, 21, 22, 23], "note": [0, 1], "might": [0, 1, 11, 20], "veri": [0, 1, 7, 11, 23], "good": [0, 1], "weight": [0, 1, 5, 9, 10, 11, 12, 15, 16], "bias": [0, 1, 5, 9, 10, 11], "integr": [0, 1, 10], "track": [0, 1, 5, 9, 10, 11], "experi": [0, 1, 15], "easili": [0, 1, 10, 18], "pass": [0, 1, 4, 5, 8, 9, 10, 11, 13, 14, 15, 16, 19], "wandb_run": [0, 1, 5, 9, 10, 11], "easi": [0, 1, 19], "fine": [0, 1, 6, 7, 11, 12, 16], "tune": [0, 1, 6, 7, 11, 12, 16], "via": [0, 1, 21], "arbitrari": [0, 1], "": [0, 1, 6, 10, 19, 21, 23], "mean": [0, 1, 4, 5, 11, 23], "perfect": [0, 1], "nor": [0, 1], "complet": [0, 1, 5, 9, 10, 11, 23], "find": [0, 1], "bug": [0, 1], "report": [0, 1], "them": [0, 1, 5, 8, 13, 14, 15], "issu": [0, 1, 12], "templat": [0, 1], "happen": [0, 1], "fix": [0, 1], "pull": [0, 1], "request": [0, 1], "github": [0, 1, 7, 12, 13], "well": [0, 1, 2, 10, 15, 16, 19, 23], "make": [0, 1, 4, 5, 6, 8, 10, 13, 15, 18, 23], "new": [0, 1, 7, 15, 19, 21, 23], "addit": [0, 1, 10], "step": [0, 1, 5, 8, 9, 10, 12, 13, 15], "ad": [0, 1, 5, 8, 10, 14, 15], "directori": [0, 1], "need": [0, 1, 8, 10, 13, 14, 15], "correspond": [0, 1, 10, 12, 14, 23], "same": [0, 1, 10, 13, 15, 21, 23], "start": [0, 1], "right": [0, 1, 19, 21], "awai": [0, 1], "whil": [0, 1], "should": [0, 1, 5, 6, 8, 9, 10, 12, 13, 14, 15, 19], "most": [0, 1, 15], "basic": [0, 1, 3, 10, 14], "order": [0, 1, 6, 7, 11, 12, 15, 16, 19, 21], "codebas": [0, 1, 7], "allow": [0, 1], "tinker": [0, 1, 10], "take": [0, 1, 8, 13, 14, 15, 20], "logit": [0, 1, 4, 5, 8, 9, 10, 11, 13, 14, 15, 16, 20], "score": [0, 1, 6, 10, 22, 23], "higher": [0, 1, 20], "uncertain": [0, 1], "size": [0, 4, 5, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19, 20, 21], "length": [0, 21], "matrix": [0, 1, 11], "1": [0, 1, 4, 5, 6, 7, 10, 11, 12, 13, 14, 15, 19, 20, 21, 23], "after": [0, 1, 5, 7, 8, 9, 10, 12, 15], "finish": [0, 1], "single_prediction_uncertainty_metr": [0, 1, 10], "multi_prediction_uncertainty_metr": [0, 1, 10], "multipredictionmixin": [0, 1, 4, 9, 10, 11, 13, 15, 16], "applic": [0, 1, 2, 5, 9, 10, 15, 16, 22], "someth": [0, 1], "els": [0, 1, 5, 9, 10], "contact": [0, 1], "dot": [0, 1], "mailbox": [0, 1], "org": [0, 1, 7, 10, 12, 15, 20], "batch_siz": [1, 4, 5, 8, 9, 10, 11, 13, 14, 15, 16, 19, 20], "sequence_length": [1, 6, 7, 10, 11, 12, 14, 16], "nlp_uncertainty_zoo": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23], "packag": [1, 2, 4, 5, 10, 12, 17, 19], "bayesianlstmmodul": [1, 4], "bertmodel": [1, 5, 6, 7, 11, 16], "bertmodul": [1, 5, 12, 16], "forward": [1, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16], "get_hidden": [1, 5, 11, 14], "ddubertmodul": [1, 6], "ddumixin": [1, 6, 20], "gmm_fit": [1, 6], "gmm_predict": [1, 6, 20], "ddutransformermodul": [1, 6], "dppbertmodul": [1, 7], "eval": [1, 7, 10, 16], "dpptransformermodul": [1, 7], "dropoutdpp": [1, 7], "calc_non_zero_neuron": [1, 7], "dropout_id": [1, 7], "get_mask": [1, 7], "updat": [1, 7], "cellwiselstm": [1, 8], "lstmmodul": [1, 4, 8, 13], "init_hidden_st": [1, 8, 15], "layerwiselstm": [1, 8], "get_loss": [1, 9, 10, 11], "get_train_loss": [1, 9], "load": [1, 10, 19], "available_uncertainty_metr": [1, 10], "get_num_learnable_paramet": [1, 10], "sngpbertmodul": [1, 11], "sngpmodul": [1, 11], "invert_sigma_hat": [1, 11], "sngptransformermodul": [1, 11], "spectralbertmodul": [1, 6, 11, 12], "spectralnormfc": [1, 12], "appli": [1, 4, 6, 7, 11, 12, 15, 16], "compute_weight": [1, 12], "dim": [1, 12], "ep": [1, 12, 20, 23], "n_power_iter": [1, 12], "spectraltransformermodul": [1, 6, 11, 12], "spectral_norm_fc": [1, 12], "sttaucel": [1, 13], "bia": [1, 12, 13], "hidden_s": [1, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "input_s": [1, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "weight_hh": [1, 13], "weight_ih": [1, 13], "sttaulstmmodul": [1, 13], "positionalembed": [1, 14], "transformermodul": [1, 12, 14, 16], "variationaldropout": [1, 15], "sampl": [1, 4, 11, 13, 15, 17, 19, 21, 23], "variationallstmmodul": [1, 15], "sample_mask": [1, 15], "variationalbertmodul": [1, 7, 16], "variationaltransformermodul": [1, 7, 16], "classificationdatasetbuild": [1, 19], "datasetbuild": [1, 19, 21], "languagemodellingdatasetbuild": [1, 19], "modifieddatacollatorforlanguagemodel": [1, 19], "mlm": [1, 19], "mlm_probabl": [1, 19], "pad_to_multiple_of": [1, 19], "token": [1, 6, 10, 11, 19, 22], "dempster_shaf": [1, 20], "max_prob": [1, 20], "predictive_entropi": [1, 20], "softmax_gap": [1, 20], "varianc": [1, 4, 20], "languagemodellingsampl": [1, 21], "sequenceclassificationsampl": [1, 21], "tokenclassificationsampl": [1, 21], "create_probs_from_dict": [1, 21], "merge_freq_dict": [1, 21], "merge_instance_dict": [1, 21], "ac": [1, 23], "aupr": [1, 23], "auroc": [1, 23], "coverage_percentag": [1, 23], "coverage_width": [1, 23], "ec": [1, 23], "kendalls_tau": [1, 23], "sce": [1, 23], "repositori": [2, 3, 5, 10, 12, 17, 20], "model": [2, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23], "uncertainti": [2, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 21], "quantifi": [2, 13, 20, 23], "confid": 2, "As": [2, 10, 19], "now": [2, 21], "focus": 2, "hopefulli": 2, "nlp": [2, 7, 11], "futur": 2, "background": 2, "info": [2, 6], "inform": [2, 3, 5, 6, 7, 9, 10, 11, 12, 16, 18, 20, 23], "usag": [2, 18], "refer": [2, 10, 13], "readm": 2, "land": 2, "page": 2, "On": [2, 12], "highest": [2, 23], "level": 2, "compris": [2, 21], "multipl": [2, 10, 15, 16, 19, 21, 23], "includ": [2, 5, 6, 7, 10, 11, 17, 19, 20], "miscellan": 2, "qualitati": 2, "manag": 2, "resourc": 2, "abov": 2, "some": [3, 8, 10, 12, 15, 20, 21], "extra": 3, "individu": 3, "bayesian_lstm": [3, 4], "wrapper": [3, 10], "ddu_transform": [3, 6, 12, 20], "deep": [3, 6, 7, 11, 12, 23], "determinist": [3, 6, 12], "uncerta": 3, "dpp_transform": [3, 7], "long": [3, 8], "short": [3, 8], "term": [3, 8, 19], "memori": [3, 8], "rnn": 3, "lstm_ensembl": [3, 9], "explan": [3, 8], "abstract": [3, 10, 19, 21], "sngp_transform": [3, 11, 12], "superclass": [3, 12, 19], "st_tau_lstm": [3, 13], "variational_lstm": [3, 15, 16], "variational_transform": [3, 7, 15, 16], "concept": 4, "introduc": [4, 19], "recurr": [4, 8, 15, 16], "network": [4, 8, 12, 15, 16], "idea": [4, 7, 10, 11, 12], "instead": [4, 8, 13, 14, 15, 23], "learn": [4, 5, 11, 12, 23], "singl": [4, 9, 10, 11], "valu": [4, 5, 9, 10, 12, 20, 21], "per": [4, 6], "we": [4, 5, 6, 7, 11, 12, 13, 15, 16, 20, 23], "distribut": [4, 5, 8, 9, 10, 11, 12, 13, 15, 16, 21, 23], "over": [4, 5, 9, 10, 11, 13, 16, 21], "thu": [4, 20], "actual": [4, 10, 20], "everi": [4, 6, 8, 10, 12, 13, 14, 15, 19, 23], "dure": [4, 10, 11, 15, 16, 19], "infer": [4, 7, 15, 16], "set": [4, 5, 7, 9, 10, 13, 15, 16, 19, 22, 23], "case": [4, 5, 14], "blitz": 4, "vocab_s": [4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "int": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19, 21, 23], "output_s": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 20], "650": [4, 8, 9, 13, 15], "num_lay": [4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "2": [4, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 20, 23], "float": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19, 20, 22, 23], "0": [4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 19, 23], "3": [4, 12, 16, 20, 23], "prior_sigma_1": 4, "7": [4, 11], "prior_sigma_2": 4, "8": 4, "prior_pi": 4, "posterior_mu_init": 4, "04": 4, "posterior_rho_init": 4, "6": [4, 6, 7, 8, 9, 11, 14, 15, 16], "num_predict": [4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 20], "is_sequence_classifi": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "bool": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19], "true": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19, 23], "lr": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "weight_decai": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "001": [4, 6, 7, 8, 9, 11, 13, 14, 15, 16], "optimizer_class": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "optim": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "adam": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "model_dir": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "option": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19, 21], "str": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19, 22], "none": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19, 21], "devic": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "union": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19], "cpu": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "model_param": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "build_param": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "input_": [4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16], "longtensor": [4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16], "arg": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "kwarg": [4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16], "floattensor": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 20], "result": [4, 5, 8, 9, 10, 11, 13, 14, 15, 16], "tensor": [4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 20], "seq_len": [4, 5, 8, 9, 10, 11, 13, 14, 15, 16, 20], "depend": [4, 5, 8, 9, 10, 11, 13, 14, 15, 16], "index": [4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16], "number": [4, 5, 8, 9, 10, 11, 12, 13, 14, 15, 16, 20, 21, 23], "return": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19, 20, 21, 22, 23], "probabl": [4, 5, 6, 9, 10, 11, 13, 15, 16, 20, 23], "given": [4, 5, 7, 9, 10, 11, 13, 16, 19, 20, 21, 23], "enabl": 5, "compat": [5, 19], "devlin": 5, "2018": [5, 20], "store": [5, 8, 10, 15], "hub": 5, "work": [5, 8, 9, 13, 15, 16, 23], "wa": [5, 9, 10, 11, 15, 23], "origin": [5, 7, 12, 13, 14, 15, 19, 21], "develop": 5, "three": [5, 21], "were": [5, 11, 12, 19, 21], "english": 5, "uncas": 5, "danish": 5, "hvingelbi": 5, "2020": [5, 11, 12, 16, 23], "alexanderfalk": 5, "danbert": 5, "small": [5, 23], "finnish": 5, "virtanen": 5, "2019": [5, 9, 23], "turkunlp": 5, "v1": 5, "specifi": [5, 10, 11, 15, 16, 19, 20], "bert_nam": [5, 6, 7, 11, 12, 16], "__init__": [5, 10], "project": [5, 10, 18], "other": [5, 10, 11, 12, 19], "model_nam": [5, 10], "module_class": [5, 10], "scheduler_class": [5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "lr_schedul": [5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "_lrschedul": [5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "scheduler_kwarg": [5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "dict": [5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 19, 21, 22], "bert_class": [5, 6, 7, 11, 16], "modeling_bert": [5, 6, 7, 11, 16], "serv": 5, "warmup_proport": 5, "sinc": [5, 8, 11, 12, 13, 14, 15, 20, 23], "schedul": 5, "num_training_step": [5, 9, 10], "valid_split": [5, 9, 10], "weight_loss": [5, 9, 10], "grad_clip": [5, 9, 10], "validation_interv": [5, 9, 10], "early_stopping_pat": [5, 9, 10], "inf": [5, 9, 10], "early_stop": [5, 9, 10], "verbos": [5, 9, 10], "run": [5, 8, 9, 10, 11, 13, 14, 15], "training_kwarg": [5, 9, 10], "being": [5, 6, 7, 9, 10, 15, 22], "until": [5, 9, 10], "percentag": [5, 7, 23], "warmup": 5, "triangular": 5, "rate": 5, "valid": [5, 6, 9, 10], "whether": [5, 9, 10], "displai": [5, 9, 10], "about": [5, 9, 10, 21], "loss": [5, 9, 10, 11, 23], "grad": [5, 7, 9, 10, 16], "norm": [5, 9, 10, 12], "befor": [5, 9, 10, 21], "clip": [5, 9, 10], "interv": [5, 9, 10], "through": [5, 9, 10, 13], "patienc": [5, 9, 10], "earli": [5, 9, 10], "stop": [5, 9, 10], "kick": [5, 9, 10], "np": [5, 9, 10, 21, 23], "wandbrun": [5, 9, 10, 11], "statist": [5, 9, 10, 11, 21], "everyth": [5, 9, 10], "_epoch_it": [5, 9, 10], "_finetun": [5, 6, 9, 10], "how": [5, 6, 7, 8, 10, 11, 12, 14, 15, 16, 19, 21, 23], "represent": [5, 6, 8, 9, 10, 14, 15], "entir": [5, 8, 10, 14, 15], "extract": [5, 8, 10, 14, 15], "relev": [5, 8, 10, 14, 15], "exampl": [5, 8, 10, 12, 14, 15], "could": [5, 8, 10, 15], "last": [5, 8, 10, 11, 15], "unidirect": [5, 8, 10, 15], "pooler": [5, 8, 10, 14, 15], "involv": [6, 11], "gmm": 6, "its": [6, 9, 20], "activ": [6, 10], "comput": [6, 7, 8, 9, 10, 11, 13, 14, 15, 20, 23], "log": 6, "encod": [6, 8, 14, 15], "under": [6, 8, 10, 15, 23], "scratch": [6, 7, 11, 12, 16], "intern": 6, "call": [6, 8, 10, 13, 14, 15], "split": [6, 10, 19, 22], "avoid": [6, 11, 12, 15, 16, 23], "redund": [6, 11], "projection_s": 6, "64": 6, "spectral_norm_upper_bound": [6, 11, 12], "95": [6, 11], "ignore_indic": 6, "list": [6, 8, 9, 21, 23], "01": [6, 7, 11, 14, 16], "get_linear_schedule_with_warmup": [6, 7, 11, 14, 16], "form": [6, 8, 10, 15], "object": [6, 10], "mixin": [6, 10], "done": [6, 10, 14], "data_split": [6, 10], "featur": [6, 11], "datasplit": [6, 10, 22], "usual": [6, 10, 20], "compon": 6, "512": [6, 7, 11, 14, 16], "input_dropout": [6, 7, 11, 12, 14, 16], "num_head": [6, 7, 11, 12, 14, 16], "16": [6, 7, 11, 14, 16], "128": [6, 7, 11, 14, 16], "relat": 7, "mont": 7, "carlo": 7, "mask": [7, 15, 16, 19], "construct": 7, "correl": [7, 23], "kernel": [7, 11], "neuron": [7, 15, 16], "obtain": [7, 10], "less": 7, "overal": 7, "http": [7, 10, 12, 13, 15, 20], "aclanthologi": 7, "eacl": 7, "main": [7, 12], "157": 7, "pdf": [7, 15, 20], "modifi": [7, 9, 19], "com": [7, 12, 13], "skoltech": 7, "mode": [7, 16], "effect": [7, 16], "particular": [7, 16], "detail": [7, 11, 16], "behavior": [7, 16], "affect": [7, 16], "batchnorm": [7, 16], "etc": [7, 10, 16], "equival": [7, 16], "self": [7, 16], "local": [7, 16, 19], "disabl": [7, 15, 16], "doc": [7, 10, 16], "similar": [7, 10, 16], "mechan": [7, 16], "mai": [7, 16], "confus": [7, 16], "p": 7, "max_n": 7, "100": [7, 19, 21], "max_frac": 7, "4": 7, "blob": [7, 13], "src": 7, "ue4nlp": 7, "dropout_dpp": 7, "static": [7, 9, 10, 12, 23], "sum_mask": 7, "fraction": [7, 23], "have": [7, 10], "been": 7, "drop": [7, 10, 15], "yet": 7, "non": 7, "gener": [7, 9, 10, 17, 20, 23], "classmethod": 7, "neural": [8, 15, 16, 20], "depth": 8, "consult": 8, "excel": 8, "blog": 8, "post": 8, "christoph": 8, "olah": 8, "cell": [8, 13, 15], "lstmcell": [8, 13], "tupl": [8, 13, 21], "overridden": [8, 13, 14, 15], "subclass": [8, 9, 10, 11, 13, 14, 15], "although": [8, 13, 14, 15], "recip": [8, 13, 14, 15], "within": [8, 13, 14, 15, 17], "afterward": [8, 13, 14, 15], "former": [8, 13, 14, 15, 23], "care": [8, 13, 14, 15], "regist": [8, 13, 14, 15], "hook": [8, 12, 13, 14, 15], "latter": [8, 10, 13, 14, 15, 23], "silent": [8, 13, 14, 15], "ignor": [8, 13, 14, 15], "init_weight": [8, 9, 15], "5": [8, 9, 11, 13, 15, 23], "hidden_st": [8, 15], "hot": [8, 15], "hiddendict": [8, 15], "dictionari": [8, 10, 15, 19, 21], "time": [8, 10, 15, 23], "zero": [8, 15, 16], "vector": [8, 15], "ones": [8, 15], "last_hidden_st": [8, 15], "unnorm": [8, 15, 20], "begin": [8, 15], "switch": [8, 15], "vice": [8, 15], "versa": [8, 15], "inspir": 9, "show": [9, 19, 21], "strong": 9, "quantif": [9, 23], "due": [9, 12], "divers": 9, "confirm": 9, "ovadia": 9, "vision": 9, "where": [9, 10, 12, 15, 19, 20, 21, 22, 23], "en": 9, "par": 9, "better": 9, "than": 9, "slightli": 9, "compar": [9, 15, 21], "accommod": [9, 10], "y": [9, 10, 11, 23], "just": [9, 10, 11, 15], "cross": [9, 10, 11, 21], "entropi": [9, 10, 11, 20, 21, 23], "adjust": [9, 10, 11], "overwrit": [9, 10, 11], "move": [9, 10], "anoth": [9, 10], "signatur": 10, "mandatori": 10, "user": [10, 12], "loop": 10, "ideal": 10, "structur": 10, "direct": 10, "simpli": 10, "mirror": 10, "stabl": [10, 11], "html": 10, "By": 10, "vocabulari": 10, "embed": [10, 14, 15], "One": 10, "cuda": 10, "kind": [10, 15], "regress": 10, "pars": 10, "moment": 10, "dimens": [10, 12], "classifi": 10, "except": [10, 12], "axi": 10, "sum": 10, "up": [10, 15, 16], "top": 10, "often": 10, "cl": 10, "possess": 10, "attribut": 10, "default_uncertainty_metr": 10, "kei": [10, 21], "aim": [10, 19], "anyon": 10, "doe": 10, "want": [10, 20], "write": 10, "aspect": [10, 11], "expect": [10, 19, 20, 23], "string": 10, "keyword": 10, "path": [10, 13], "save": [10, 22], "mainli": 10, "interact": 10, "common": [10, 21, 23], "separ": [10, 19], "architectur": [10, 12, 13, 14, 16], "copi": [10, 12, 14], "adapt": [10, 14, 15, 16, 23], "necessari": 10, "practic": [10, 12], "abc": [10, 19, 21], "model_path": 10, "look": 10, "properti": [10, 19], "callabl": 10, "total": 10, "learnabl": [10, 13], "bundl": 10, "extractor": 11, "propos": [11, 15, 16], "wilson": 11, "further": 11, "explain": 11, "share": [11, 15], "alreadi": 11, "found": [11, 15, 16, 23], "quit": 11, "unstabl": 11, "when": [11, 12, 15, 19, 20], "underli": 11, "mani": 11, "approxim": [11, 12, 15, 16, 21], "appendix": 11, "abl": 11, "choos": 11, "field": 11, "posterior": [11, 15, 16], "equat": 11, "present": [11, 15, 16], "ridge_factor": 11, "scaling_coeffici": 11, "999": 11, "beta_length_scal": 11, "kernel_amplitud": 11, "35": 11, "4931": 11, "001357": 11, "weight_decay_beta": 11, "residu": [11, 12], "connect": [11, 12, 15, 16], "maintain": [11, 21], "bi": [11, 12], "lipschitz": [11, 12], "constraint": [11, 12], "id": 11, "gp": 11, "final": 11, "invert": 11, "sigma": 11, "hat": 11, "fulfil": 12, "ab": 12, "2102": 12, "11582": 12, "hand": 12, "smooth": 12, "adversari": 12, "attack": 12, "promot": 12, "robust": 12, "sensit": 12, "enough": 12, "detect": [12, 23], "insid": 12, "condit": 12, "largest": 12, "singular": 12, "matric": 12, "upper": 12, "bound": 12, "constant": 12, "chosen": 12, "verbatim": 12, "joost": 12, "van": 12, "amsterfoort": 12, "meet": 12, "amersfoort": 12, "y0ast": 12, "python": [12, 17, 18], "1e": [12, 20, 23], "12": [12, 23], "spectralnorm": 12, "coeff": 12, "do_power_iter": 12, "coeffici": [12, 23], "power": 12, "iter": 12, "calcul": [12, 23], "epsilon": 12, "numer": 12, "stabil": 12, "convtranspos": 12, "d": 12, "m": 12, "linear": 12, "20": [12, 13], "40": 12, "in_featur": 12, "out_featur": 12, "weight_u": 12, "intuit": 13, "earlier": 13, "augment": 13, "probabilist": 13, "ochast": 13, "fsa": 13, "At": 13, "discret": 13, "gumbel": 13, "softmax": [13, 20], "trick": 13, "sassafras13": 13, "io": 13, "gumbelsoftmax": 13, "temperatur": 13, "wai": 13, "do": 13, "num_centroid": 13, "contrast": 13, "peephol": 13, "nec": 13, "st_tau": 13, "master": 13, "st_stau": 13, "hx": 13, "vaswani": 14, "posit": [14, 23], "tutori": 14, "shamelessli": 14, "variant": [15, 16], "produc": [15, 16, 17, 19], "srivastava": [15, 16], "2014": [15, 16], "regul": [15, 16], "techniqu": [15, 16], "randomli": [15, 16], "co": [15, 16], "importantli": [15, 16], "naiv": 15, "made": 15, "sure": [15, 23], "across": 15, "figur": 15, "hurt": 15, "slow": 15, "down": 15, "replic": 15, "conseqeu": 15, "omit": 15, "ghrahramani": 15, "1512": 15, "05287": 15, "input_dim": 15, "chang": [15, 19], "embedding_dropout": 15, "15": [15, 19], "layer_dropout": 15, "time_dropout": 15, "describ": 15, "reus": 15, "throughout": 15, "observ": 15, "yield": 15, "minor": 15, "improv": 15, "simplifi": 15, "fulli": 16, "opt": 16, "encourag": 16, "combin": 17, "raw": 17, "file": [17, 19, 20], "repres": [17, 19, 21], "sub": [17, 19, 21], "inter": 18, "readabl": 18, "content": 19, "mostli": [19, 21], "concern": 19, "tri": [19, 21], "interfac": 19, "behav": [19, 21], "both": 19, "classic": 19, "indic": [19, 20, 21, 23], "u": 19, "either": 19, "next_token_predict": 19, "type_": 19, "suggest": 19, "problem": [19, 23], "again": 19, "sequence_classif": 19, "token_classif": 19, "csv": 19, "format": 19, "tab": 19, "column": 19, "sentenc": [19, 21], "span": [19, 21], "subword": 19, "assign": 19, "receiv": [19, 23], "constain": [19, 20], "datacollatorforlanguagemodel": 19, "seem": 19, "next": 19, "wouldn": 19, "t": 19, "offset": 19, "minim": 19, "modif": 19, "ensur": 19, "read": 19, "data_dir": 19, "pretrainedtokenizerbas": [19, 22], "max_length": 19, "sampler_class": 19, "sampler_kwarg": 19, "num_job": [19, 21], "dataloader_kwarg": 19, "desir": 19, "varieti": 19, "aka": [19, 21], "__call__": 19, "input_id": 19, "rest": 19, "becom": 20, "log_prob": 20, "discrimin": 20, "oper": [20, 23], "unless": 20, "otherwis": 20, "dempster": 20, "shafer": 20, "proceed": 20, "neurip": 20, "cc": 20, "a981f2b708044d6fb4a71a1463242520": 20, "maximum": [20, 21], "baselin": 20, "becaus": 20, "high": 20, "max": 20, "prob": 20, "1610": 20, "02136": 20, "05": [20, 23], "mutual": 20, "1803": 20, "08533": 20, "gap": 20, "1811": 20, "00908": 20, "primarili": 21, "text": 21, "block": 21, "contigu": 21, "notion": 21, "paragraph": 21, "corpu": 21, "secondli": 21, "previou": 21, "proport": 21, "global": 21, "built": 21, "ampl": 21, "data_sourc": 21, "target_s": 21, "sample_rang": 21, "seed": 21, "strategi": 21, "lesser": 21, "extent": 21, "target": 21, "ignore_label": 21, "consid": 21, "freq_dict": 21, "max_label": 21, "arrai": [21, 23], "auxiliari": 21, "numpi": 21, "categor": [21, 23], "integ": 21, "frequenc": 21, "map": 21, "minu": 21, "tyi": 21, "freqs_a": 21, "freqs_b": 21, "merg": 21, "collect": 21, "job": 21, "second": 21, "lengths_a": 21, "lengths_b": 21, "light": 21, "group": 21, "characterist": [21, 23], "accuraci": 22, "macro": 22, "f1": 22, "eval_split": 22, "tricki": 23, "gold": 23, "reason": 23, "exactli": 23, "error": 23, "naeini": 23, "nixon": 23, "extens": 23, "rang": 23, "bin": 23, "rel": 23, "larg": 23, "kompa": 23, "determin": 23, "averag": 23, "width": 23, "reach": 23, "alpha": 23, "mass": 23, "correct": 23, "measur": 23, "proxi": 23, "ood": 23, "distinguish": 23, "realiz": 23, "area": 23, "precis": 23, "recal": 23, "curv": 23, "potenti": 23, "kendal": 23, "y_true": 23, "y_pred": 23, "num_rang": 23, "pseudo": 23, "binari": 23, "differenti": 23, "benjamin": 23, "jasper": 23, "snoek": 23, "andrew": 23, "l": 23, "beam": 23, "empir": 23, "frequentist": 23, "coverag": 23, "procedur": 23, "23": 23, "1608": 23, "threshold": 23, "08": 23, "n_bin": 23, "absolut": 23, "taken": 23, "weigh": 23, "ndarrai": 23, "concord": 23, "incur": 23, "discord": 23, "num_bin": 23}, "objects": {"nlp_uncertainty_zoo.models": [[4, 0, 0, "-", "bayesian_lstm"], [5, 0, 0, "-", "bert"], [6, 0, 0, "-", "ddu_transformer"], [7, 0, 0, "-", "dpp_transformer"], [8, 0, 0, "-", "lstm"], [9, 0, 0, "-", "lstm_ensemble"], [10, 0, 0, "-", "model"], [11, 0, 0, "-", "sngp_transformer"], [12, 0, 0, "-", "spectral"], [13, 0, 0, "-", "st_tau_lstm"], [14, 0, 0, "-", "transformer"], [15, 0, 0, "-", "variational_lstm"], [16, 0, 0, "-", "variational_transformer"]], "nlp_uncertainty_zoo.models.bayesian_lstm": [[4, 1, 1, "", "BayesianLSTM"], [4, 1, 1, "", "BayesianLSTMModule"]], "nlp_uncertainty_zoo.models.bayesian_lstm.BayesianLSTMModule": [[4, 2, 1, "", "get_logits"], [4, 2, 1, "", "predict"], [4, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.bert": [[5, 1, 1, "", "BertModel"], [5, 1, 1, "", "BertModule"]], "nlp_uncertainty_zoo.models.bert.BertModel": [[5, 2, 1, "", "fit"]], "nlp_uncertainty_zoo.models.bert.BertModule": [[5, 2, 1, "", "forward"], [5, 2, 1, "", "get_hidden"], [5, 2, 1, "", "get_logits"], [5, 2, 1, "", "get_sequence_representation"], [5, 2, 1, "", "predict"], [5, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.ddu_transformer": [[6, 1, 1, "", "DDUBert"], [6, 1, 1, "", "DDUBertModule"], [6, 1, 1, "", "DDUMixin"], [6, 1, 1, "", "DDUTransformer"], [6, 1, 1, "", "DDUTransformerModule"]], "nlp_uncertainty_zoo.models.ddu_transformer.DDUBertModule": [[6, 2, 1, "", "get_uncertainty"], [6, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.ddu_transformer.DDUMixin": [[6, 2, 1, "", "gmm_fit"], [6, 2, 1, "", "gmm_predict"]], "nlp_uncertainty_zoo.models.ddu_transformer.DDUTransformerModule": [[6, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.dpp_transformer": [[7, 1, 1, "", "DPPBert"], [7, 1, 1, "", "DPPBertModule"], [7, 1, 1, "", "DPPTransformer"], [7, 1, 1, "", "DPPTransformerModule"], [7, 1, 1, "", "DropoutDPP"]], "nlp_uncertainty_zoo.models.dpp_transformer.DPPBertModule": [[7, 2, 1, "", "eval"], [7, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.dpp_transformer.DPPTransformerModule": [[7, 2, 1, "", "eval"], [7, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.dpp_transformer.DropoutDPP": [[7, 2, 1, "", "calc_non_zero_neurons"], [7, 3, 1, "", "dropout_id"], [7, 2, 1, "", "forward"], [7, 2, 1, "", "get_mask"], [7, 3, 1, "", "training"], [7, 2, 1, "", "update"]], "nlp_uncertainty_zoo.models.lstm": [[8, 1, 1, "", "CellWiseLSTM"], [8, 1, 1, "", "LSTM"], [8, 1, 1, "", "LSTMModule"], [8, 1, 1, "", "LayerWiseLSTM"]], "nlp_uncertainty_zoo.models.lstm.CellWiseLSTM": [[8, 2, 1, "", "forward"], [8, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.lstm.LSTM": [[8, 2, 1, "", "predict"]], "nlp_uncertainty_zoo.models.lstm.LSTMModule": [[8, 2, 1, "", "forward"], [8, 2, 1, "", "get_logits"], [8, 2, 1, "", "get_sequence_representation"], [8, 2, 1, "", "init_hidden_states"], [8, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.lstm.LayerWiseLSTM": [[8, 2, 1, "", "forward"], [8, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.lstm_ensemble": [[9, 1, 1, "", "LSTMEnsemble"], [9, 1, 1, "", "LSTMEnsembleModule"]], "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsemble": [[9, 2, 1, "", "fit"], [9, 2, 1, "", "get_loss"], [9, 2, 1, "", "get_train_loss"]], "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule": [[9, 2, 1, "", "forward"], [9, 2, 1, "", "get_logits"], [9, 2, 1, "", "get_sequence_representation"], [9, 2, 1, "", "predict"], [9, 2, 1, "", "to"], [9, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.model": [[10, 1, 1, "", "Model"], [10, 1, 1, "", "Module"], [10, 1, 1, "", "MultiPredictionMixin"]], "nlp_uncertainty_zoo.models.model.Model": [[10, 2, 1, "", "eval"], [10, 2, 1, "", "fit"], [10, 2, 1, "", "get_loss"], [10, 2, 1, "", "get_uncertainty"], [10, 2, 1, "", "load"], [10, 2, 1, "", "predict"], [10, 2, 1, "", "to"]], "nlp_uncertainty_zoo.models.model.Module": [[10, 4, 1, "", "available_uncertainty_metrics"], [10, 2, 1, "", "forward"], [10, 2, 1, "", "get_logits"], [10, 2, 1, "", "get_num_learnable_parameters"], [10, 2, 1, "", "get_sequence_representation"], [10, 2, 1, "", "get_uncertainty"], [10, 2, 1, "", "predict"], [10, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.sngp_transformer": [[11, 1, 1, "", "SNGPBert"], [11, 1, 1, "", "SNGPBertModule"], [11, 1, 1, "", "SNGPModule"], [11, 1, 1, "", "SNGPTransformer"], [11, 1, 1, "", "SNGPTransformerModule"]], "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBert": [[11, 2, 1, "", "get_loss"]], "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBertModule": [[11, 2, 1, "", "forward"], [11, 2, 1, "", "get_logits"], [11, 2, 1, "", "predict"], [11, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.sngp_transformer.SNGPModule": [[11, 2, 1, "", "forward"], [11, 2, 1, "", "get_logits"], [11, 2, 1, "", "invert_sigma_hat"], [11, 2, 1, "", "predict"], [11, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.sngp_transformer.SNGPTransformerModule": [[11, 2, 1, "", "forward"], [11, 2, 1, "", "get_hidden"], [11, 2, 1, "", "get_logits"], [11, 2, 1, "", "predict"], [11, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.spectral": [[12, 1, 1, "", "SpectralBertModule"], [12, 1, 1, "", "SpectralNormFC"], [12, 1, 1, "", "SpectralTransformerModule"], [12, 5, 1, "", "spectral_norm_fc"]], "nlp_uncertainty_zoo.models.spectral.SpectralBertModule": [[12, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.spectral.SpectralNormFC": [[12, 2, 1, "", "apply"], [12, 2, 1, "", "compute_weight"], [12, 3, 1, "", "dim"], [12, 3, 1, "", "eps"], [12, 3, 1, "", "n_power_iterations"], [12, 3, 1, "", "name"]], "nlp_uncertainty_zoo.models.spectral.SpectralTransformerModule": [[12, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.st_tau_lstm": [[13, 1, 1, "", "STTauCell"], [13, 1, 1, "", "STTauLSTM"], [13, 1, 1, "", "STTauLSTMModule"]], "nlp_uncertainty_zoo.models.st_tau_lstm.STTauCell": [[13, 3, 1, "", "bias"], [13, 2, 1, "", "forward"], [13, 3, 1, "", "hidden_size"], [13, 3, 1, "", "input_size"], [13, 3, 1, "", "weight_hh"], [13, 3, 1, "", "weight_ih"]], "nlp_uncertainty_zoo.models.st_tau_lstm.STTauLSTMModule": [[13, 2, 1, "", "get_logits"], [13, 2, 1, "", "predict"], [13, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.transformer": [[14, 1, 1, "", "PositionalEmbedding"], [14, 1, 1, "", "Transformer"], [14, 1, 1, "", "TransformerModule"]], "nlp_uncertainty_zoo.models.transformer.PositionalEmbedding": [[14, 2, 1, "", "forward"], [14, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.transformer.TransformerModule": [[14, 2, 1, "", "forward"], [14, 2, 1, "", "get_hidden"], [14, 2, 1, "", "get_logits"], [14, 2, 1, "", "get_sequence_representation"], [14, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.variational_lstm": [[15, 1, 1, "", "VariationalDropout"], [15, 1, 1, "", "VariationalLSTM"], [15, 1, 1, "", "VariationalLSTMModule"]], "nlp_uncertainty_zoo.models.variational_lstm.VariationalDropout": [[15, 2, 1, "", "forward"], [15, 2, 1, "", "sample"], [15, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule": [[15, 2, 1, "", "forward"], [15, 2, 1, "", "get_logits"], [15, 2, 1, "", "get_sequence_representation"], [15, 2, 1, "", "init_hidden_states"], [15, 2, 1, "", "predict"], [15, 2, 1, "", "sample_masks"], [15, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.variational_transformer": [[16, 1, 1, "", "VariationalBert"], [16, 1, 1, "", "VariationalBertModule"], [16, 1, 1, "", "VariationalTransformer"], [16, 1, 1, "", "VariationalTransformerModule"]], "nlp_uncertainty_zoo.models.variational_transformer.VariationalBertModule": [[16, 2, 1, "", "eval"], [16, 2, 1, "", "get_logits"], [16, 2, 1, "", "predict"], [16, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.variational_transformer.VariationalTransformerModule": [[16, 2, 1, "", "eval"], [16, 2, 1, "", "get_logits"], [16, 2, 1, "", "predict"], [16, 3, 1, "", "training"]], "nlp_uncertainty_zoo.utils": [[18, 0, 0, "-", "custom_types"], [19, 0, 0, "-", "data"], [20, 0, 0, "-", "metrics"], [21, 0, 0, "-", "samplers"], [22, 0, 0, "-", "task_eval"], [23, 0, 0, "-", "uncertainty_eval"]], "nlp_uncertainty_zoo.utils.data": [[19, 1, 1, "", "ClassificationDatasetBuilder"], [19, 1, 1, "", "DatasetBuilder"], [19, 1, 1, "", "LanguageModellingDatasetBuilder"], [19, 1, 1, "", "ModifiedDataCollatorForLanguageModeling"]], "nlp_uncertainty_zoo.utils.data.ClassificationDatasetBuilder": [[19, 2, 1, "", "build"]], "nlp_uncertainty_zoo.utils.data.DatasetBuilder": [[19, 2, 1, "", "build"]], "nlp_uncertainty_zoo.utils.data.LanguageModellingDatasetBuilder": [[19, 2, 1, "", "build"]], "nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling": [[19, 3, 1, "", "mlm"], [19, 3, 1, "", "mlm_probability"], [19, 3, 1, "", "pad_to_multiple_of"], [19, 3, 1, "", "tokenizer"]], "nlp_uncertainty_zoo.utils.metrics": [[20, 5, 1, "", "dempster_shafer"], [20, 5, 1, "", "max_prob"], [20, 5, 1, "", "mutual_information"], [20, 5, 1, "", "predictive_entropy"], [20, 5, 1, "", "softmax_gap"], [20, 5, 1, "", "variance"]], "nlp_uncertainty_zoo.utils.samplers": [[21, 1, 1, "", "LanguageModellingSampler"], [21, 1, 1, "", "SequenceClassificationSampler"], [21, 1, 1, "", "Subsampler"], [21, 1, 1, "", "TokenClassificationSampler"], [21, 5, 1, "", "create_probs_from_dict"], [21, 5, 1, "", "merge_freq_dicts"], [21, 5, 1, "", "merge_instance_dicts"]], "nlp_uncertainty_zoo.utils.task_eval": [[22, 5, 1, "", "evaluate"]], "nlp_uncertainty_zoo.utils.uncertainty_eval": [[23, 5, 1, "", "ace"], [23, 5, 1, "", "aupr"], [23, 5, 1, "", "auroc"], [23, 5, 1, "", "coverage_percentage"], [23, 5, 1, "", "coverage_width"], [23, 5, 1, "", "ece"], [23, 5, 1, "", "kendalls_tau"], [23, 5, 1, "", "sce"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:attribute", "4": "py:property", "5": "py:function"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "attribute", "Python attribute"], "4": ["py", "property", "Python property"], "5": ["py", "function", "Python function"]}, "titleterms": {"robot": 0, "speech_balloon": 0, "question": 0, "nlp": [0, 1], "uncertainti": [0, 1, 20, 23], "zoo": [0, 1], "includ": [0, 1], "model": [0, 1, 3, 10], "usag": [0, 1], "repositori": [0, 1], "structur": [0, 1], "other": [0, 1], "featur": [0, 1], "contribut": [0, 1], "nlp_uncertainty_zoo": 2, "packag": 3, "bayesian": 4, "lstm": [4, 8, 9, 13, 15], "modul": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23], "document": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23], "bert": 5, "ddu": 6, "transform": [6, 7, 11, 14, 16], "dpp": 7, "ensembl": 9, "The": 10, "class": 10, "sngp": 11, "spectral": 12, "st": 13, "tau": 13, "variat": [15, 16], "util": 17, "custom": 18, "type": 18, "data": 19, "metric": 20, "sampler": 21, "task": 22, "eval": [22, 23]}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 57}, "alltitles": {"|:robot:| |:speech_balloon:| |:question:| nlp-uncertainty-zoo": [[0, "robot-speech-balloon-question-nlp-uncertainty-zoo"]], "Included models": [[0, "included-models"], [1, "included-models"]], "Usage": [[0, "usage"], [1, "usage"]], "Repository structure": [[0, "repository-structure"], [1, "repository-structure"]], "Other features": [[0, "other-features"], [1, "other-features"]], "Contributing": [[0, "contributing"], [1, "contributing"]], "\ud83e\udd16 \ud83d\udcac \u2753 nlp-uncertainty-zoo": [[1, "robot-speech-balloon-question-nlp-uncertainty-zoo"]], "nlp_uncertainty_zoo": [[2, "nlp-uncertainty-zoo"]], "Model package": [[3, "model-package"]], "Bayesian LSTM": [[4, "bayesian-lstm"]], "Bayesian LSTM Module Documentation": [[4, "bayesian-lstm-module-documentation"]], "BERT": [[5, "bert"]], "BERT Module Documentation": [[5, "module-nlp_uncertainty_zoo.models.bert"]], "DDU Transformer": [[6, "ddu-transformer"]], "DDU Transformer Module Documentation": [[6, "module-nlp_uncertainty_zoo.models.ddu_transformer"]], "DPP Transformer": [[7, "dpp-transformer"]], "DPP Transformer Module Documentation": [[7, "module-nlp_uncertainty_zoo.models.dpp_transformer"]], "LSTM": [[8, "lstm"]], "LSTM Module Documentation": [[8, "module-nlp_uncertainty_zoo.models.lstm"]], "LSTM Ensemble": [[9, "lstm-ensemble"]], "LSTM Ensemble Module Documentation": [[9, "module-nlp_uncertainty_zoo.models.lstm_ensemble"]], "Models": [[10, "models"]], "The Module class": [[10, "the-module-class"]], "The Model class": [[10, "the-model-class"]], "Models Documentation": [[10, "module-nlp_uncertainty_zoo.models.model"]], "SNGP Transformer": [[11, "sngp-transformer"]], "SNGP Transformer Module Documentation": [[11, "module-nlp_uncertainty_zoo.models.sngp_transformer"]], "Spectral": [[12, "spectral"]], "Spectral Module Documentation": [[12, "module-nlp_uncertainty_zoo.models.spectral"]], "ST-tau LSTM": [[13, "st-tau-lstm"]], "ST-tau LSTM Module Documentation": [[13, "module-nlp_uncertainty_zoo.models.st_tau_lstm"]], "Transformer": [[14, "transformer"]], "Transformer Module Documentation": [[14, "module-nlp_uncertainty_zoo.models.transformer"]], "Variational LSTM": [[15, "variational-lstm"]], "Variational LSTM Module Documentation": [[15, "module-nlp_uncertainty_zoo.models.variational_lstm"]], "Variational Transformer": [[16, "variational-transformer"]], "Variational Transformer Module Documentation": [[16, "variational-transformer-module-documentation"]], "Utils": [[17, "utils"]], "Custom Types": [[18, "custom-types"]], "Custom Types Module Documentation": [[18, "module-nlp_uncertainty_zoo.utils.custom_types"]], "Data": [[19, "data"]], "Data Module Documentation": [[19, "module-nlp_uncertainty_zoo.utils.data"]], "Uncertainty metrics": [[20, "uncertainty-metrics"]], "Metric Module Documentation": [[20, "module-nlp_uncertainty_zoo.utils.metrics"]], "Samplers": [[21, "samplers"]], "Samplers Module Documentation": [[21, "module-nlp_uncertainty_zoo.utils.samplers"]], "Task Eval": [[22, "task-eval"]], "Task Eval Module Documentation": [[22, "module-nlp_uncertainty_zoo.utils.task_eval"]], "Uncertainty Eval": [[23, "uncertainty-eval"]], "Uncertainty Eval Module Documentation": [[23, "module-nlp_uncertainty_zoo.utils.uncertainty_eval"]]}, "indexentries": {"bayesianlstm (class in nlp_uncertainty_zoo.models.bayesian_lstm)": [[4, "nlp_uncertainty_zoo.models.bayesian_lstm.BayesianLSTM"]], "bayesianlstmmodule (class in nlp_uncertainty_zoo.models.bayesian_lstm)": [[4, "nlp_uncertainty_zoo.models.bayesian_lstm.BayesianLSTMModule"]], "get_logits() (nlp_uncertainty_zoo.models.bayesian_lstm.bayesianlstmmodule method)": [[4, "nlp_uncertainty_zoo.models.bayesian_lstm.BayesianLSTMModule.get_logits"]], "module": [[4, "module-nlp_uncertainty_zoo.models.bayesian_lstm"], [5, "module-nlp_uncertainty_zoo.models.bert"], [6, "module-nlp_uncertainty_zoo.models.ddu_transformer"], [7, "module-nlp_uncertainty_zoo.models.dpp_transformer"], [8, "module-nlp_uncertainty_zoo.models.lstm"], [9, "module-nlp_uncertainty_zoo.models.lstm_ensemble"], [10, "module-nlp_uncertainty_zoo.models.model"], [11, "module-nlp_uncertainty_zoo.models.sngp_transformer"], [12, "module-nlp_uncertainty_zoo.models.spectral"], [13, "module-nlp_uncertainty_zoo.models.st_tau_lstm"], [14, "module-nlp_uncertainty_zoo.models.transformer"], [15, "module-nlp_uncertainty_zoo.models.variational_lstm"], [16, "module-nlp_uncertainty_zoo.models.variational_transformer"], [18, "module-nlp_uncertainty_zoo.utils.custom_types"], [19, "module-nlp_uncertainty_zoo.utils.data"], [20, "module-nlp_uncertainty_zoo.utils.metrics"], [21, "module-nlp_uncertainty_zoo.utils.samplers"], [22, "module-nlp_uncertainty_zoo.utils.task_eval"], [23, "module-nlp_uncertainty_zoo.utils.uncertainty_eval"]], "nlp_uncertainty_zoo.models.bayesian_lstm": [[4, "module-nlp_uncertainty_zoo.models.bayesian_lstm"]], "predict() (nlp_uncertainty_zoo.models.bayesian_lstm.bayesianlstmmodule method)": [[4, "nlp_uncertainty_zoo.models.bayesian_lstm.BayesianLSTMModule.predict"]], "training (nlp_uncertainty_zoo.models.bayesian_lstm.bayesianlstmmodule attribute)": [[4, "nlp_uncertainty_zoo.models.bayesian_lstm.BayesianLSTMModule.training"]], "bertmodel (class in nlp_uncertainty_zoo.models.bert)": [[5, "nlp_uncertainty_zoo.models.bert.BertModel"]], "bertmodule (class in nlp_uncertainty_zoo.models.bert)": [[5, "nlp_uncertainty_zoo.models.bert.BertModule"]], "fit() (nlp_uncertainty_zoo.models.bert.bertmodel method)": [[5, "nlp_uncertainty_zoo.models.bert.BertModel.fit"]], "forward() (nlp_uncertainty_zoo.models.bert.bertmodule method)": [[5, "nlp_uncertainty_zoo.models.bert.BertModule.forward"]], "get_hidden() (nlp_uncertainty_zoo.models.bert.bertmodule method)": [[5, "nlp_uncertainty_zoo.models.bert.BertModule.get_hidden"]], "get_logits() (nlp_uncertainty_zoo.models.bert.bertmodule method)": [[5, "nlp_uncertainty_zoo.models.bert.BertModule.get_logits"]], "get_sequence_representation() (nlp_uncertainty_zoo.models.bert.bertmodule method)": [[5, "nlp_uncertainty_zoo.models.bert.BertModule.get_sequence_representation"]], "nlp_uncertainty_zoo.models.bert": [[5, "module-nlp_uncertainty_zoo.models.bert"]], "predict() (nlp_uncertainty_zoo.models.bert.bertmodule method)": [[5, "nlp_uncertainty_zoo.models.bert.BertModule.predict"]], "training (nlp_uncertainty_zoo.models.bert.bertmodule attribute)": [[5, "nlp_uncertainty_zoo.models.bert.BertModule.training"]], "ddubert (class in nlp_uncertainty_zoo.models.ddu_transformer)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUBert"]], "ddubertmodule (class in nlp_uncertainty_zoo.models.ddu_transformer)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUBertModule"]], "ddumixin (class in nlp_uncertainty_zoo.models.ddu_transformer)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUMixin"]], "ddutransformer (class in nlp_uncertainty_zoo.models.ddu_transformer)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUTransformer"]], "ddutransformermodule (class in nlp_uncertainty_zoo.models.ddu_transformer)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUTransformerModule"]], "get_uncertainty() (nlp_uncertainty_zoo.models.ddu_transformer.ddubertmodule method)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUBertModule.get_uncertainty"]], "gmm_fit() (nlp_uncertainty_zoo.models.ddu_transformer.ddumixin method)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUMixin.gmm_fit"]], "gmm_predict() (nlp_uncertainty_zoo.models.ddu_transformer.ddumixin method)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUMixin.gmm_predict"]], "nlp_uncertainty_zoo.models.ddu_transformer": [[6, "module-nlp_uncertainty_zoo.models.ddu_transformer"]], "training (nlp_uncertainty_zoo.models.ddu_transformer.ddubertmodule attribute)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUBertModule.training"]], "training (nlp_uncertainty_zoo.models.ddu_transformer.ddutransformermodule attribute)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUTransformerModule.training"]], "dppbert (class in nlp_uncertainty_zoo.models.dpp_transformer)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DPPBert"]], "dppbertmodule (class in nlp_uncertainty_zoo.models.dpp_transformer)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DPPBertModule"]], "dpptransformer (class in nlp_uncertainty_zoo.models.dpp_transformer)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DPPTransformer"]], "dpptransformermodule (class in nlp_uncertainty_zoo.models.dpp_transformer)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DPPTransformerModule"]], "dropoutdpp (class in nlp_uncertainty_zoo.models.dpp_transformer)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DropoutDPP"]], "calc_non_zero_neurons() (nlp_uncertainty_zoo.models.dpp_transformer.dropoutdpp static method)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DropoutDPP.calc_non_zero_neurons"]], "dropout_id (nlp_uncertainty_zoo.models.dpp_transformer.dropoutdpp attribute)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DropoutDPP.dropout_id"]], "eval() (nlp_uncertainty_zoo.models.dpp_transformer.dppbertmodule method)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DPPBertModule.eval"]], "eval() (nlp_uncertainty_zoo.models.dpp_transformer.dpptransformermodule method)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DPPTransformerModule.eval"]], "forward() (nlp_uncertainty_zoo.models.dpp_transformer.dropoutdpp method)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DropoutDPP.forward"]], "get_mask() (nlp_uncertainty_zoo.models.dpp_transformer.dropoutdpp method)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DropoutDPP.get_mask"]], "nlp_uncertainty_zoo.models.dpp_transformer": [[7, "module-nlp_uncertainty_zoo.models.dpp_transformer"]], "training (nlp_uncertainty_zoo.models.dpp_transformer.dppbertmodule attribute)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DPPBertModule.training"]], "training (nlp_uncertainty_zoo.models.dpp_transformer.dpptransformermodule attribute)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DPPTransformerModule.training"]], "training (nlp_uncertainty_zoo.models.dpp_transformer.dropoutdpp attribute)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DropoutDPP.training"]], "update() (nlp_uncertainty_zoo.models.dpp_transformer.dropoutdpp class method)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DropoutDPP.update"]], "cellwiselstm (class in nlp_uncertainty_zoo.models.lstm)": [[8, "nlp_uncertainty_zoo.models.lstm.CellWiseLSTM"]], "lstm (class in nlp_uncertainty_zoo.models.lstm)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTM"]], "lstmmodule (class in nlp_uncertainty_zoo.models.lstm)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTMModule"]], "layerwiselstm (class in nlp_uncertainty_zoo.models.lstm)": [[8, "nlp_uncertainty_zoo.models.lstm.LayerWiseLSTM"]], "forward() (nlp_uncertainty_zoo.models.lstm.cellwiselstm method)": [[8, "nlp_uncertainty_zoo.models.lstm.CellWiseLSTM.forward"]], "forward() (nlp_uncertainty_zoo.models.lstm.lstmmodule method)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTMModule.forward"]], "forward() (nlp_uncertainty_zoo.models.lstm.layerwiselstm method)": [[8, "nlp_uncertainty_zoo.models.lstm.LayerWiseLSTM.forward"]], "get_logits() (nlp_uncertainty_zoo.models.lstm.lstmmodule method)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTMModule.get_logits"]], "get_sequence_representation() (nlp_uncertainty_zoo.models.lstm.lstmmodule method)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTMModule.get_sequence_representation"]], "init_hidden_states() (nlp_uncertainty_zoo.models.lstm.lstmmodule method)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTMModule.init_hidden_states"]], "nlp_uncertainty_zoo.models.lstm": [[8, "module-nlp_uncertainty_zoo.models.lstm"]], "predict() (nlp_uncertainty_zoo.models.lstm.lstm method)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTM.predict"]], "training (nlp_uncertainty_zoo.models.lstm.cellwiselstm attribute)": [[8, "nlp_uncertainty_zoo.models.lstm.CellWiseLSTM.training"]], "training (nlp_uncertainty_zoo.models.lstm.lstmmodule attribute)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTMModule.training"]], "training (nlp_uncertainty_zoo.models.lstm.layerwiselstm attribute)": [[8, "nlp_uncertainty_zoo.models.lstm.LayerWiseLSTM.training"]], "lstmensemble (class in nlp_uncertainty_zoo.models.lstm_ensemble)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsemble"]], "lstmensemblemodule (class in nlp_uncertainty_zoo.models.lstm_ensemble)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule"]], "fit() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemble method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsemble.fit"]], "forward() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemblemodule method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule.forward"]], "get_logits() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemblemodule method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule.get_logits"]], "get_loss() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemble method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsemble.get_loss"]], "get_sequence_representation() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemblemodule static method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule.get_sequence_representation"]], "get_train_loss() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemble method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsemble.get_train_loss"]], "nlp_uncertainty_zoo.models.lstm_ensemble": [[9, "module-nlp_uncertainty_zoo.models.lstm_ensemble"]], "predict() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemblemodule method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule.predict"]], "to() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemblemodule method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule.to"]], "training (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemblemodule attribute)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule.training"]], "model (class in nlp_uncertainty_zoo.models.model)": [[10, "nlp_uncertainty_zoo.models.model.Model"]], "module (class in nlp_uncertainty_zoo.models.model)": [[10, "nlp_uncertainty_zoo.models.model.Module"]], "multipredictionmixin (class in nlp_uncertainty_zoo.models.model)": [[10, "nlp_uncertainty_zoo.models.model.MultiPredictionMixin"]], "available_uncertainty_metrics (nlp_uncertainty_zoo.models.model.module property)": [[10, "nlp_uncertainty_zoo.models.model.Module.available_uncertainty_metrics"]], "eval() (nlp_uncertainty_zoo.models.model.model method)": [[10, "nlp_uncertainty_zoo.models.model.Model.eval"]], "fit() (nlp_uncertainty_zoo.models.model.model method)": [[10, "nlp_uncertainty_zoo.models.model.Model.fit"]], "forward() (nlp_uncertainty_zoo.models.model.module method)": [[10, "nlp_uncertainty_zoo.models.model.Module.forward"]], "get_logits() (nlp_uncertainty_zoo.models.model.module method)": [[10, "nlp_uncertainty_zoo.models.model.Module.get_logits"]], "get_loss() (nlp_uncertainty_zoo.models.model.model method)": [[10, "nlp_uncertainty_zoo.models.model.Model.get_loss"]], "get_num_learnable_parameters() (nlp_uncertainty_zoo.models.model.module method)": [[10, "nlp_uncertainty_zoo.models.model.Module.get_num_learnable_parameters"]], "get_sequence_representation() (nlp_uncertainty_zoo.models.model.module method)": [[10, "nlp_uncertainty_zoo.models.model.Module.get_sequence_representation"]], "get_uncertainty() (nlp_uncertainty_zoo.models.model.model method)": [[10, "nlp_uncertainty_zoo.models.model.Model.get_uncertainty"]], "get_uncertainty() (nlp_uncertainty_zoo.models.model.module method)": [[10, "nlp_uncertainty_zoo.models.model.Module.get_uncertainty"]], "load() (nlp_uncertainty_zoo.models.model.model static method)": [[10, "nlp_uncertainty_zoo.models.model.Model.load"]], "nlp_uncertainty_zoo.models.model": [[10, "module-nlp_uncertainty_zoo.models.model"]], "predict() (nlp_uncertainty_zoo.models.model.model method)": [[10, "nlp_uncertainty_zoo.models.model.Model.predict"]], "predict() (nlp_uncertainty_zoo.models.model.module method)": [[10, "nlp_uncertainty_zoo.models.model.Module.predict"]], "to() (nlp_uncertainty_zoo.models.model.model method)": [[10, "nlp_uncertainty_zoo.models.model.Model.to"]], "training (nlp_uncertainty_zoo.models.model.module attribute)": [[10, "nlp_uncertainty_zoo.models.model.Module.training"]], "sngpbert (class in nlp_uncertainty_zoo.models.sngp_transformer)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBert"]], "sngpbertmodule (class in nlp_uncertainty_zoo.models.sngp_transformer)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBertModule"]], "sngpmodule (class in nlp_uncertainty_zoo.models.sngp_transformer)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPModule"]], "sngptransformer (class in nlp_uncertainty_zoo.models.sngp_transformer)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPTransformer"]], "sngptransformermodule (class in nlp_uncertainty_zoo.models.sngp_transformer)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPTransformerModule"]], "forward() (nlp_uncertainty_zoo.models.sngp_transformer.sngpbertmodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBertModule.forward"]], "forward() (nlp_uncertainty_zoo.models.sngp_transformer.sngpmodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPModule.forward"]], "forward() (nlp_uncertainty_zoo.models.sngp_transformer.sngptransformermodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPTransformerModule.forward"]], "get_hidden() (nlp_uncertainty_zoo.models.sngp_transformer.sngptransformermodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPTransformerModule.get_hidden"]], "get_logits() (nlp_uncertainty_zoo.models.sngp_transformer.sngpbertmodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBertModule.get_logits"]], "get_logits() (nlp_uncertainty_zoo.models.sngp_transformer.sngpmodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPModule.get_logits"]], "get_logits() (nlp_uncertainty_zoo.models.sngp_transformer.sngptransformermodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPTransformerModule.get_logits"]], "get_loss() (nlp_uncertainty_zoo.models.sngp_transformer.sngpbert method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBert.get_loss"]], "invert_sigma_hat() (nlp_uncertainty_zoo.models.sngp_transformer.sngpmodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPModule.invert_sigma_hat"]], "nlp_uncertainty_zoo.models.sngp_transformer": [[11, "module-nlp_uncertainty_zoo.models.sngp_transformer"]], "predict() (nlp_uncertainty_zoo.models.sngp_transformer.sngpbertmodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBertModule.predict"]], "predict() (nlp_uncertainty_zoo.models.sngp_transformer.sngpmodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPModule.predict"]], "predict() (nlp_uncertainty_zoo.models.sngp_transformer.sngptransformermodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPTransformerModule.predict"]], "training (nlp_uncertainty_zoo.models.sngp_transformer.sngpbertmodule attribute)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBertModule.training"]], "training (nlp_uncertainty_zoo.models.sngp_transformer.sngpmodule attribute)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPModule.training"]], "training (nlp_uncertainty_zoo.models.sngp_transformer.sngptransformermodule attribute)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPTransformerModule.training"]], "spectralbertmodule (class in nlp_uncertainty_zoo.models.spectral)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralBertModule"]], "spectralnormfc (class in nlp_uncertainty_zoo.models.spectral)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralNormFC"]], "spectraltransformermodule (class in nlp_uncertainty_zoo.models.spectral)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralTransformerModule"]], "apply() (nlp_uncertainty_zoo.models.spectral.spectralnormfc static method)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralNormFC.apply"]], "compute_weight() (nlp_uncertainty_zoo.models.spectral.spectralnormfc method)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralNormFC.compute_weight"]], "dim (nlp_uncertainty_zoo.models.spectral.spectralnormfc attribute)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralNormFC.dim"]], "eps (nlp_uncertainty_zoo.models.spectral.spectralnormfc attribute)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralNormFC.eps"]], "n_power_iterations (nlp_uncertainty_zoo.models.spectral.spectralnormfc attribute)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralNormFC.n_power_iterations"]], "name (nlp_uncertainty_zoo.models.spectral.spectralnormfc attribute)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralNormFC.name"]], "nlp_uncertainty_zoo.models.spectral": [[12, "module-nlp_uncertainty_zoo.models.spectral"]], "spectral_norm_fc() (in module nlp_uncertainty_zoo.models.spectral)": [[12, "nlp_uncertainty_zoo.models.spectral.spectral_norm_fc"]], "training (nlp_uncertainty_zoo.models.spectral.spectralbertmodule attribute)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralBertModule.training"]], "training (nlp_uncertainty_zoo.models.spectral.spectraltransformermodule attribute)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralTransformerModule.training"]], "sttaucell (class in nlp_uncertainty_zoo.models.st_tau_lstm)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauCell"]], "sttaulstm (class in nlp_uncertainty_zoo.models.st_tau_lstm)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauLSTM"]], "sttaulstmmodule (class in nlp_uncertainty_zoo.models.st_tau_lstm)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauLSTMModule"]], "bias (nlp_uncertainty_zoo.models.st_tau_lstm.sttaucell attribute)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauCell.bias"]], "forward() (nlp_uncertainty_zoo.models.st_tau_lstm.sttaucell method)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauCell.forward"]], "get_logits() (nlp_uncertainty_zoo.models.st_tau_lstm.sttaulstmmodule method)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauLSTMModule.get_logits"]], "hidden_size (nlp_uncertainty_zoo.models.st_tau_lstm.sttaucell attribute)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauCell.hidden_size"]], "input_size (nlp_uncertainty_zoo.models.st_tau_lstm.sttaucell attribute)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauCell.input_size"]], "nlp_uncertainty_zoo.models.st_tau_lstm": [[13, "module-nlp_uncertainty_zoo.models.st_tau_lstm"]], "predict() (nlp_uncertainty_zoo.models.st_tau_lstm.sttaulstmmodule method)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauLSTMModule.predict"]], "training (nlp_uncertainty_zoo.models.st_tau_lstm.sttaulstmmodule attribute)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauLSTMModule.training"]], "weight_hh (nlp_uncertainty_zoo.models.st_tau_lstm.sttaucell attribute)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauCell.weight_hh"]], "weight_ih (nlp_uncertainty_zoo.models.st_tau_lstm.sttaucell attribute)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauCell.weight_ih"]], "positionalembedding (class in nlp_uncertainty_zoo.models.transformer)": [[14, "nlp_uncertainty_zoo.models.transformer.PositionalEmbedding"]], "transformer (class in nlp_uncertainty_zoo.models.transformer)": [[14, "nlp_uncertainty_zoo.models.transformer.Transformer"]], "transformermodule (class in nlp_uncertainty_zoo.models.transformer)": [[14, "nlp_uncertainty_zoo.models.transformer.TransformerModule"]], "forward() (nlp_uncertainty_zoo.models.transformer.positionalembedding method)": [[14, "nlp_uncertainty_zoo.models.transformer.PositionalEmbedding.forward"]], "forward() (nlp_uncertainty_zoo.models.transformer.transformermodule method)": [[14, "nlp_uncertainty_zoo.models.transformer.TransformerModule.forward"]], "get_hidden() (nlp_uncertainty_zoo.models.transformer.transformermodule method)": [[14, "nlp_uncertainty_zoo.models.transformer.TransformerModule.get_hidden"]], "get_logits() (nlp_uncertainty_zoo.models.transformer.transformermodule method)": [[14, "nlp_uncertainty_zoo.models.transformer.TransformerModule.get_logits"]], "get_sequence_representation() (nlp_uncertainty_zoo.models.transformer.transformermodule method)": [[14, "nlp_uncertainty_zoo.models.transformer.TransformerModule.get_sequence_representation"]], "nlp_uncertainty_zoo.models.transformer": [[14, "module-nlp_uncertainty_zoo.models.transformer"]], "training (nlp_uncertainty_zoo.models.transformer.positionalembedding attribute)": [[14, "nlp_uncertainty_zoo.models.transformer.PositionalEmbedding.training"]], "training (nlp_uncertainty_zoo.models.transformer.transformermodule attribute)": [[14, "nlp_uncertainty_zoo.models.transformer.TransformerModule.training"]], "variationaldropout (class in nlp_uncertainty_zoo.models.variational_lstm)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalDropout"]], "variationallstm (class in nlp_uncertainty_zoo.models.variational_lstm)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTM"]], "variationallstmmodule (class in nlp_uncertainty_zoo.models.variational_lstm)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule"]], "forward() (nlp_uncertainty_zoo.models.variational_lstm.variationaldropout method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalDropout.forward"]], "forward() (nlp_uncertainty_zoo.models.variational_lstm.variationallstmmodule method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule.forward"]], "get_logits() (nlp_uncertainty_zoo.models.variational_lstm.variationallstmmodule method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule.get_logits"]], "get_sequence_representation() (nlp_uncertainty_zoo.models.variational_lstm.variationallstmmodule method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule.get_sequence_representation"]], "init_hidden_states() (nlp_uncertainty_zoo.models.variational_lstm.variationallstmmodule method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule.init_hidden_states"]], "nlp_uncertainty_zoo.models.variational_lstm": [[15, "module-nlp_uncertainty_zoo.models.variational_lstm"]], "predict() (nlp_uncertainty_zoo.models.variational_lstm.variationallstmmodule method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule.predict"]], "sample() (nlp_uncertainty_zoo.models.variational_lstm.variationaldropout method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalDropout.sample"]], "sample_masks() (nlp_uncertainty_zoo.models.variational_lstm.variationallstmmodule method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule.sample_masks"]], "training (nlp_uncertainty_zoo.models.variational_lstm.variationaldropout attribute)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalDropout.training"]], "training (nlp_uncertainty_zoo.models.variational_lstm.variationallstmmodule attribute)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule.training"]], "variationalbert (class in nlp_uncertainty_zoo.models.variational_transformer)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalBert"]], "variationalbertmodule (class in nlp_uncertainty_zoo.models.variational_transformer)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalBertModule"]], "variationaltransformer (class in nlp_uncertainty_zoo.models.variational_transformer)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalTransformer"]], "variationaltransformermodule (class in nlp_uncertainty_zoo.models.variational_transformer)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalTransformerModule"]], "eval() (nlp_uncertainty_zoo.models.variational_transformer.variationalbertmodule method)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalBertModule.eval"]], "eval() (nlp_uncertainty_zoo.models.variational_transformer.variationaltransformermodule method)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalTransformerModule.eval"]], "get_logits() (nlp_uncertainty_zoo.models.variational_transformer.variationalbertmodule method)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalBertModule.get_logits"]], "get_logits() (nlp_uncertainty_zoo.models.variational_transformer.variationaltransformermodule method)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalTransformerModule.get_logits"]], "nlp_uncertainty_zoo.models.variational_transformer": [[16, "module-nlp_uncertainty_zoo.models.variational_transformer"]], "predict() (nlp_uncertainty_zoo.models.variational_transformer.variationalbertmodule method)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalBertModule.predict"]], "predict() (nlp_uncertainty_zoo.models.variational_transformer.variationaltransformermodule method)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalTransformerModule.predict"]], "training (nlp_uncertainty_zoo.models.variational_transformer.variationalbertmodule attribute)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalBertModule.training"]], "training (nlp_uncertainty_zoo.models.variational_transformer.variationaltransformermodule attribute)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalTransformerModule.training"]], "nlp_uncertainty_zoo.utils.custom_types": [[18, "module-nlp_uncertainty_zoo.utils.custom_types"]], "classificationdatasetbuilder (class in nlp_uncertainty_zoo.utils.data)": [[19, "nlp_uncertainty_zoo.utils.data.ClassificationDatasetBuilder"]], "datasetbuilder (class in nlp_uncertainty_zoo.utils.data)": [[19, "nlp_uncertainty_zoo.utils.data.DatasetBuilder"]], "languagemodellingdatasetbuilder (class in nlp_uncertainty_zoo.utils.data)": [[19, "nlp_uncertainty_zoo.utils.data.LanguageModellingDatasetBuilder"]], "modifieddatacollatorforlanguagemodeling (class in nlp_uncertainty_zoo.utils.data)": [[19, "nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling"]], "build() (nlp_uncertainty_zoo.utils.data.classificationdatasetbuilder method)": [[19, "nlp_uncertainty_zoo.utils.data.ClassificationDatasetBuilder.build"]], "build() (nlp_uncertainty_zoo.utils.data.datasetbuilder method)": [[19, "nlp_uncertainty_zoo.utils.data.DatasetBuilder.build"]], "build() (nlp_uncertainty_zoo.utils.data.languagemodellingdatasetbuilder method)": [[19, "nlp_uncertainty_zoo.utils.data.LanguageModellingDatasetBuilder.build"]], "mlm (nlp_uncertainty_zoo.utils.data.modifieddatacollatorforlanguagemodeling attribute)": [[19, "nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling.mlm"]], "mlm_probability (nlp_uncertainty_zoo.utils.data.modifieddatacollatorforlanguagemodeling attribute)": [[19, "nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling.mlm_probability"]], "nlp_uncertainty_zoo.utils.data": [[19, "module-nlp_uncertainty_zoo.utils.data"]], "pad_to_multiple_of (nlp_uncertainty_zoo.utils.data.modifieddatacollatorforlanguagemodeling attribute)": [[19, "nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling.pad_to_multiple_of"]], "tokenizer (nlp_uncertainty_zoo.utils.data.modifieddatacollatorforlanguagemodeling attribute)": [[19, "nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling.tokenizer"]], "dempster_shafer() (in module nlp_uncertainty_zoo.utils.metrics)": [[20, "nlp_uncertainty_zoo.utils.metrics.dempster_shafer"]], "max_prob() (in module nlp_uncertainty_zoo.utils.metrics)": [[20, "nlp_uncertainty_zoo.utils.metrics.max_prob"]], "mutual_information() (in module nlp_uncertainty_zoo.utils.metrics)": [[20, "nlp_uncertainty_zoo.utils.metrics.mutual_information"]], "nlp_uncertainty_zoo.utils.metrics": [[20, "module-nlp_uncertainty_zoo.utils.metrics"]], "predictive_entropy() (in module nlp_uncertainty_zoo.utils.metrics)": [[20, "nlp_uncertainty_zoo.utils.metrics.predictive_entropy"]], "softmax_gap() (in module nlp_uncertainty_zoo.utils.metrics)": [[20, "nlp_uncertainty_zoo.utils.metrics.softmax_gap"]], "variance() (in module nlp_uncertainty_zoo.utils.metrics)": [[20, "nlp_uncertainty_zoo.utils.metrics.variance"]], "languagemodellingsampler (class in nlp_uncertainty_zoo.utils.samplers)": [[21, "nlp_uncertainty_zoo.utils.samplers.LanguageModellingSampler"]], "sequenceclassificationsampler (class in nlp_uncertainty_zoo.utils.samplers)": [[21, "nlp_uncertainty_zoo.utils.samplers.SequenceClassificationSampler"]], "subsampler (class in nlp_uncertainty_zoo.utils.samplers)": [[21, "nlp_uncertainty_zoo.utils.samplers.Subsampler"]], "tokenclassificationsampler (class in nlp_uncertainty_zoo.utils.samplers)": [[21, "nlp_uncertainty_zoo.utils.samplers.TokenClassificationSampler"]], "create_probs_from_dict() (in module nlp_uncertainty_zoo.utils.samplers)": [[21, "nlp_uncertainty_zoo.utils.samplers.create_probs_from_dict"]], "merge_freq_dicts() (in module nlp_uncertainty_zoo.utils.samplers)": [[21, "nlp_uncertainty_zoo.utils.samplers.merge_freq_dicts"]], "merge_instance_dicts() (in module nlp_uncertainty_zoo.utils.samplers)": [[21, "nlp_uncertainty_zoo.utils.samplers.merge_instance_dicts"]], "nlp_uncertainty_zoo.utils.samplers": [[21, "module-nlp_uncertainty_zoo.utils.samplers"]], "evaluate() (in module nlp_uncertainty_zoo.utils.task_eval)": [[22, "nlp_uncertainty_zoo.utils.task_eval.evaluate"]], "nlp_uncertainty_zoo.utils.task_eval": [[22, "module-nlp_uncertainty_zoo.utils.task_eval"]], "ace() (in module nlp_uncertainty_zoo.utils.uncertainty_eval)": [[23, "nlp_uncertainty_zoo.utils.uncertainty_eval.ace"]], "aupr() (in module nlp_uncertainty_zoo.utils.uncertainty_eval)": [[23, "nlp_uncertainty_zoo.utils.uncertainty_eval.aupr"]], "auroc() (in module nlp_uncertainty_zoo.utils.uncertainty_eval)": [[23, "nlp_uncertainty_zoo.utils.uncertainty_eval.auroc"]], "coverage_percentage() (in module nlp_uncertainty_zoo.utils.uncertainty_eval)": [[23, "nlp_uncertainty_zoo.utils.uncertainty_eval.coverage_percentage"]], "coverage_width() (in module nlp_uncertainty_zoo.utils.uncertainty_eval)": [[23, "nlp_uncertainty_zoo.utils.uncertainty_eval.coverage_width"]], "ece() (in module nlp_uncertainty_zoo.utils.uncertainty_eval)": [[23, "nlp_uncertainty_zoo.utils.uncertainty_eval.ece"]], "kendalls_tau() (in module nlp_uncertainty_zoo.utils.uncertainty_eval)": [[23, "nlp_uncertainty_zoo.utils.uncertainty_eval.kendalls_tau"]], "nlp_uncertainty_zoo.utils.uncertainty_eval": [[23, "module-nlp_uncertainty_zoo.utils.uncertainty_eval"]], "sce() (in module nlp_uncertainty_zoo.utils.uncertainty_eval)": [[23, "nlp_uncertainty_zoo.utils.uncertainty_eval.sce"]]}}) \ No newline at end of file +Search.setIndex({"docnames": ["README_DOCS", "index", "nlp_uncertainty_zoo", "nlp_uncertainty_zoo.models", "nlp_uncertainty_zoo.models.bayesian_lstm", "nlp_uncertainty_zoo.models.bert", "nlp_uncertainty_zoo.models.ddu_transformer", "nlp_uncertainty_zoo.models.dpp_transformer", "nlp_uncertainty_zoo.models.lstm", "nlp_uncertainty_zoo.models.lstm_ensemble", "nlp_uncertainty_zoo.models.model", "nlp_uncertainty_zoo.models.sngp_transformer", "nlp_uncertainty_zoo.models.spectral", "nlp_uncertainty_zoo.models.st_tau_lstm", "nlp_uncertainty_zoo.models.transformer", "nlp_uncertainty_zoo.models.variational_lstm", "nlp_uncertainty_zoo.models.variational_transformer", "nlp_uncertainty_zoo.utils", "nlp_uncertainty_zoo.utils.calibration_eval", "nlp_uncertainty_zoo.utils.custom_types", "nlp_uncertainty_zoo.utils.data", "nlp_uncertainty_zoo.utils.metrics", "nlp_uncertainty_zoo.utils.samplers", "nlp_uncertainty_zoo.utils.task_eval", "nlp_uncertainty_zoo.utils.uncertainty_eval"], "filenames": ["README_DOCS.md", "index.rst", "nlp_uncertainty_zoo.rst", "nlp_uncertainty_zoo.models.rst", "nlp_uncertainty_zoo.models.bayesian_lstm.rst", "nlp_uncertainty_zoo.models.bert.rst", "nlp_uncertainty_zoo.models.ddu_transformer.rst", "nlp_uncertainty_zoo.models.dpp_transformer.rst", "nlp_uncertainty_zoo.models.lstm.rst", "nlp_uncertainty_zoo.models.lstm_ensemble.rst", "nlp_uncertainty_zoo.models.model.rst", "nlp_uncertainty_zoo.models.sngp_transformer.rst", "nlp_uncertainty_zoo.models.spectral.rst", "nlp_uncertainty_zoo.models.st_tau_lstm.rst", "nlp_uncertainty_zoo.models.transformer.rst", "nlp_uncertainty_zoo.models.variational_lstm.rst", "nlp_uncertainty_zoo.models.variational_transformer.rst", "nlp_uncertainty_zoo.utils.rst", "nlp_uncertainty_zoo.utils.calibration_eval.rst", "nlp_uncertainty_zoo.utils.custom_types.rst", "nlp_uncertainty_zoo.utils.data.rst", "nlp_uncertainty_zoo.utils.metrics.rst", "nlp_uncertainty_zoo.utils.samplers.rst", "nlp_uncertainty_zoo.utils.task_eval.rst", "nlp_uncertainty_zoo.utils.uncertainty_eval.rst"], "titles": ["|:robot:| |:speech_balloon:| |:question:| nlp-uncertainty-zoo", "\ud83e\udd16 \ud83d\udcac \u2753 nlp-uncertainty-zoo", "nlp_uncertainty_zoo", "Model package", "Bayesian LSTM", "BERT", "DDU Transformer", "DPP Transformer", "LSTM", "LSTM Ensemble", "Models", "SNGP Transformer", "Spectral", "ST-tau LSTM", "Transformer", "Variational LSTM", "Variational Transformer", "Utils", "Calibration Eval", "Custom Types", "Data", "Uncertainty metrics", "Samplers", "Task Eval", "Uncertainty Eval"], "terms": {"speech": 0, "_": [0, 7, 10, 12, 13, 20], "balloon": 0, "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 24], "contain": [0, 1, 3, 10, 11, 12, 18, 19, 20, 22, 23, 24], "implement": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 23, 24], "sever": [0, 1, 2, 7, 16], "us": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 24], "estim": [0, 1, 7, 10, 12, 20, 22, 24], "natur": [0, 1, 2, 9], "languag": [0, 1, 2, 9, 20, 22], "process": [0, 1, 2, 3, 7, 9, 11, 12], "pytorch": [0, 1, 10, 14, 15], "you": [0, 1, 10], "can": [0, 1, 5, 9, 10, 11, 12, 13, 15, 16, 18, 20, 24], "instal": [0, 1], "pip": [0, 1], "pip3": [0, 1], "If": [0, 1, 5, 7, 8, 9, 10, 11, 15, 22, 24], "ar": [0, 1, 5, 7, 9, 10, 12, 16, 17, 20, 21, 22, 23, 24], "your": [0, 1, 10], "academ": [0, 1], "research": [0, 1, 10, 13], "pleas": [0, 1, 2], "cite": [0, 1], "paper": [0, 1, 11, 14, 15, 21], "below": [0, 1, 3], "inproceed": [0, 1], "ulmer": [0, 1, 5, 9, 11, 16, 18, 20, 22, 24], "etal": [0, 1], "2022": [0, 1, 5, 9, 11, 16, 18, 20, 22, 24], "explor": [0, 1], "titl": [0, 1], "predict": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 18, 20, 21, 23, 24], "calibr": [0, 1, 2, 17], "A": [0, 1, 11], "studi": [0, 1], "impact": [0, 1], "method": [0, 1, 2, 5, 6, 10, 18, 24], "data": [0, 1, 2, 5, 6, 8, 9, 10, 17, 18, 22, 23, 24], "scarciti": [0, 1], "author": [0, 1, 15], "denni": [0, 1], "frellsen": [0, 1], "je": [0, 1], "hardmeier": [0, 1], "christian": [0, 1], "booktitl": [0, 1], "find": [0, 1], "associ": [0, 1], "comput": [0, 1, 6, 7, 8, 9, 10, 11, 13, 14, 15, 21, 24], "linguist": [0, 1], "emnlp": [0, 1], "month": [0, 1], "dec": [0, 1], "year": [0, 1], "address": [0, 1], "abu": [0, 1], "dhabi": [0, 1], "unit": [0, 1], "arab": [0, 1], "emir": [0, 1], "publish": [0, 1], "url": [0, 1], "http": [0, 1, 7, 10, 12, 13, 15, 21], "aclanthologi": [0, 1, 7], "org": [0, 1, 7, 10, 12, 15, 21], "198": [0, 1], "page": [0, 1, 2], "2707": [0, 1], "2735": [0, 1], "To": [0, 1, 11, 20, 24], "learn": [0, 1, 4, 5, 11, 12, 18], "more": [0, 1, 2, 3, 6, 7, 8, 11, 12, 16, 19], "about": [0, 1, 5, 9, 10, 18, 22, 23, 24], "packag": [0, 1, 2, 4, 5, 10, 12, 17, 20], "consult": [0, 1, 8], "document": [0, 1, 3], "here": [0, 1, 12, 21, 22], "check": [0, 1, 19], "jupyt": [0, 1], "notebook": [0, 1], "demo": [0, 1], "googl": [0, 1], "collab": [0, 1], "The": [0, 1, 4, 5, 6, 7, 8, 11, 12, 14, 15, 16, 17, 18, 20, 22, 24], "follow": [0, 1, 10, 12, 15, 16, 17, 20], "thei": [0, 1, 7, 8, 15, 16, 21, 24], "all": [0, 1, 2, 3, 5, 6, 8, 10, 11, 13, 14, 15, 16, 18, 21, 22, 24], "import": [0, 1, 6, 11, 12], "from": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 22, 24], "For": [0, 1, 2, 5, 8, 10, 14, 15, 19, 24], "transform": [0, 1, 3, 5, 8, 10, 12, 15, 20], "base": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 22, 24], "furthermor": [0, 1, 18, 20], "version": [0, 1, 6, 7, 10, 11, 12, 16, 18, 20], "i": [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 24], "avail": [0, 1, 8, 10, 12, 15, 16, 20, 22], "pre": [0, 1, 6, 7, 9, 11, 12, 16], "train": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 20, 22], "bert": [0, 1, 3, 6, 7, 9, 10, 11, 12, 16], "huggingfac": [0, 1, 5, 20], "name": [0, 1, 6, 10, 12, 20], "descript": [0, 1], "lstm": [0, 1, 3, 5, 10, 14, 16], "vanilla": [0, 1, 8, 14], "hochreit": [0, 1, 8], "schmidhub": [0, 1, 8], "1997": [0, 1, 8], "ensembl": [0, 1, 3, 10, 13], "lstmensembl": [0, 1, 9], "lakshminarayanan": [0, 1, 9], "et": [0, 1, 4, 5, 6, 7, 9, 11, 12, 13, 14, 15, 16, 18, 20, 22, 24], "al": [0, 1, 4, 5, 6, 7, 9, 11, 12, 13, 14, 15, 16, 18, 20, 22, 24], "2017": [0, 1, 4, 9, 14], "bayesian": [0, 1, 3, 15, 16], "bay": [0, 1, 4], "backprop": [0, 1, 4], "blundel": [0, 1, 4], "2015": [0, 1, 4, 11, 18], "bayesianlstm": [0, 1, 4], "fortunato": [0, 1, 4], "st": [0, 1, 3], "tau": [0, 1, 3, 24], "transit": [0, 1, 13], "finit": [0, 1, 13], "state": [0, 1, 5, 8, 9, 10, 11, 13, 14, 15], "automaton": [0, 1, 13], "sttaulstm": [0, 1, 13], "wang": [0, 1, 13], "2021": [0, 1, 6, 7, 12, 13, 16, 18], "variat": [0, 1, 3], "mc": [0, 1, 3, 7, 10, 15, 16], "dropout": [0, 1, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "gal": [0, 1, 15, 16], "ghahramani": [0, 1, 15, 16], "2016a": [0, 1, 15, 16], "variationallstm": [0, 1, 15], "2016b": [0, 1, 15, 16], "ddu": [0, 1, 12], "gaussian": [0, 1, 3, 6, 11, 12], "mixtur": [0, 1, 6], "fit": [0, 1, 5, 6, 9, 10, 11], "hidden": [0, 1, 5, 8, 9, 10, 11, 14, 15], "ddutransform": [0, 1, 6, 21], "ddubert": [0, 1, 6, 21], "mukhoti": [0, 1, 6, 12], "variationaltransform": [0, 1, 16], "variationalbert": [0, 1, 16], "xiao": [0, 1, 16], "dpp": [0, 1], "determinant": [0, 1, 3, 7], "point": [0, 1, 3, 7, 8, 10, 18, 24], "dpptransform": [0, 1, 7], "dppbert": [0, 1, 7], "shelmanov": [0, 1, 7], "sngp": [0, 1, 12], "spectral": [0, 1, 3, 11], "normal": [0, 1, 3, 4, 7, 11, 12, 13, 15], "output": [0, 1, 4, 5, 8, 9, 10, 11, 12, 13, 14, 15, 16], "layer": [0, 1, 5, 8, 10, 11, 14, 15, 16], "sngptransform": [0, 1, 11], "sngpbert": [0, 1, 11], "liu": [0, 1, 11, 12], "even": [0, 1, 11], "approach": [0, 1, 6, 13, 16], "much": [0, 1], "appreci": [0, 1], "each": [0, 1, 5, 9, 10, 18, 22], "come": [0, 1, 2, 10, 11], "two": [0, 1, 4, 6, 7, 10, 11, 12, 16, 22, 24], "instanc": [0, 1, 5, 8, 9, 10, 11, 12, 13, 14, 15, 18, 20, 21, 22, 24], "lstmensemblemodul": [0, 1, 9], "first": [0, 1, 5, 8, 10, 14, 15, 20, 22], "one": [0, 1, 4, 6, 8, 10, 12, 13, 14, 15, 22], "suppos": [0, 1, 5, 7, 10], "an": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 18, 20, 21, 24], "out": [0, 1, 7, 10, 12, 15, 19, 24], "box": [0, 1, 10], "solut": [0, 1, 10], "encapsul": [0, 1, 6, 11], "logic": [0, 1, 2, 3, 10, 11, 12, 23], "conveni": [0, 1], "function": [0, 1, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 23, 24], "These": [0, 1, 17, 20, 21, 22], "get": [0, 1, 4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16], "input": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 18, 21, 22, 24], "batch": [0, 1, 4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16, 17, 20, 21], "specif": [0, 1, 15, 20, 22], "metric": [0, 1, 2, 4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 24], "network_param": [0, 1], "ensemble_s": [0, 1, 9], "10": [0, 1, 4, 5, 7, 9, 10, 11, 13, 15, 16, 18], "is_sequence_classif": [0, 1], "fals": [0, 1, 5, 7, 9, 10, 16, 20], "train_split": [0, 1, 5, 9, 10], "train_dataload": [0, 1], "get_logit": [0, 1, 4, 5, 8, 9, 10, 11, 13, 14, 15, 16], "x": [0, 1, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 21], "get_predict": [0, 1], "get_sequence_representation_from_hidden": [0, 1, 5, 8, 9, 10, 14, 15], "get_uncertainti": [0, 1, 6, 10], "metric_nam": [0, 1, 6, 10], "mutual_inform": [0, 1, 11, 21], "In": [0, 1, 4, 6, 7, 11, 12, 13, 14, 15, 16, 18, 22], "comparison": [0, 1, 7, 15, 16], "modul": [0, 1, 2, 3], "class": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 20, 22, 24], "me": [0, 1], "simpl": [0, 1, 8, 23], "bare": [0, 1, 10], "bone": [0, 1, 10], "onli": [0, 1, 5, 7, 10, 13, 15, 16, 20, 23], "core": [0, 1, 10], "It": [0, 1, 10, 20], "intend": [0, 1], "purpos": [0, 1, 5, 17, 18, 21, 24], "who": [0, 1, 10], "would": [0, 1, 10, 11], "like": [0, 1, 10, 11, 12, 15, 22, 24], "emb": [0, 1], "own": [0, 1, 10], "code": [0, 1, 2, 6, 7, 10, 11, 20], "while": [0, 1, 8, 13, 14, 15, 20], "e": [0, 1, 7, 13, 16, 19, 20, 22, 24], "g": [0, 1, 7, 13, 16, 22], "inherit": [0, 1, 12, 20], "requir": [0, 1, 11], "certain": [0, 1, 7, 10, 16, 17], "ani": [0, 1, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 18, 20, 22, 24], "stick": [0, 1], "close": [0, 1], "torch": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 21, 24], "nn": [0, 1, 10, 12], "what": [0, 1, 18], "argument": [0, 1, 5, 10, 20, 24], "initi": [0, 1, 8, 11, 15, 20], "differ": [0, 1, 5, 7, 10, 13, 15, 16, 18, 20, 22, 24], "also": [0, 1, 2, 6, 9, 10, 11, 15, 22, 24], "provid": [0, 1, 5, 10, 20], "todo": [0, 1], "creat": [0, 1, 4, 5, 8, 9, 10, 11, 13, 14, 15, 16, 20, 22], "quick": [0, 1], "ha": [0, 1, 7, 16, 24], "test": [0, 1, 8, 15, 23, 24], "so": [0, 1, 10], "far": [0, 1], "rudimentari": [0, 1], "shape": [0, 1, 10], "consist": [0, 1, 5, 11, 20], "between": [0, 1, 5, 7, 9, 10, 15, 16, 18, 20, 22, 24], "util": [0, 1, 2, 10, 11, 12, 18, 20, 21, 22, 23, 24], "see": [0, 1, 3, 6, 7, 11, 12, 15, 16, 21], "custom_typ": [0, 1, 17], "py": [0, 1, 7, 13, 20], "custom": [0, 1, 8, 17, 20], "type": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 22, 24], "annot": [0, 1, 17, 19], "collat": [0, 1, 20], "builder": [0, 1, 20], "which": [0, 1, 6, 7, 10, 11, 12, 13, 15, 20, 21, 24], "build": [0, 1, 13, 17, 20], "dataload": [0, 1, 5, 6, 9, 10, 18, 20, 23, 24], "task": [0, 1, 2, 10, 11, 17, 20, 24], "dataset": [0, 1, 5, 9, 10, 17, 20, 22, 24], "current": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 18, 21, 23, 24], "sequenc": [0, 1, 2, 4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16, 20, 22, 23], "label": [0, 1, 2, 9, 10, 11, 18, 20, 22, 24], "classif": [0, 1, 2, 5, 8, 10, 14, 15, 20, 22, 23, 24], "support": [0, 1, 10, 20], "sampler": [0, 1, 17, 20], "subsampl": [0, 1, 22], "task_ev": [0, 1, 17, 23], "evalu": [0, 1, 2, 5, 7, 9, 10, 16, 17, 18, 23, 24], "perform": [0, 1, 2, 8, 9, 13, 14, 15, 17], "uncertainty_ev": [0, 1, 17, 24], "qualiti": [0, 1, 17, 18, 20, 22, 24], "config": [0, 1], "defin": [0, 1, 4, 5, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 24], "default": [0, 1, 5, 9, 10, 12, 15, 18], "paramet": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 21, 22, 23, 24], "note": [0, 1], "might": [0, 1, 11, 21], "veri": [0, 1, 7, 11, 18], "good": [0, 1], "weight": [0, 1, 5, 9, 10, 11, 12, 15, 16], "bias": [0, 1, 5, 9, 10, 11], "integr": [0, 1, 10], "track": [0, 1, 5, 9, 10, 11], "experi": [0, 1, 15], "easili": [0, 1, 10, 19], "pass": [0, 1, 4, 5, 8, 9, 10, 11, 13, 14, 15, 16, 20], "wandb_run": [0, 1, 5, 9, 10, 11], "easi": [0, 1, 20], "fine": [0, 1, 6, 7, 11, 12, 16], "tune": [0, 1, 6, 7, 11, 12, 16], "via": [0, 1, 22], "arbitrari": [0, 1], "": [0, 1, 6, 10, 18, 20, 22, 24], "mean": [0, 1, 4, 5, 11, 18], "perfect": [0, 1], "nor": [0, 1], "complet": [0, 1, 5, 9, 10, 11, 24], "bug": [0, 1], "report": [0, 1], "them": [0, 1, 5, 8, 13, 14, 15], "issu": [0, 1, 12], "templat": [0, 1], "happen": [0, 1, 24], "fix": [0, 1], "pull": [0, 1], "request": [0, 1], "github": [0, 1, 7, 12, 13], "well": [0, 1, 2, 10, 15, 16, 18, 20, 24], "make": [0, 1, 4, 5, 6, 8, 10, 13, 15, 18, 19], "new": [0, 1, 7, 15, 20, 22, 24], "addit": [0, 1, 10], "step": [0, 1, 5, 8, 9, 10, 12, 13, 15], "ad": [0, 1, 5, 8, 10, 14, 15], "add": [0, 1], "directori": [0, 1], "need": [0, 1, 8, 10, 13, 14, 15, 24], "correspond": [0, 1, 10, 12, 14, 24], "same": [0, 1, 10, 13, 15, 18, 22], "start": [0, 1], "right": [0, 1, 20, 22], "awai": [0, 1], "whil": [0, 1], "should": [0, 1, 5, 6, 8, 9, 10, 12, 13, 14, 15, 18, 20, 23, 24], "most": [0, 1, 15], "basic": [0, 1, 3, 10, 14], "order": [0, 1, 6, 7, 11, 12, 15, 16, 20, 22], "codebas": [0, 1, 7], "allow": [0, 1], "tinker": [0, 1, 10], "take": [0, 1, 8, 13, 14, 15, 21, 24], "logit": [0, 1, 4, 5, 8, 9, 10, 11, 13, 14, 15, 16, 21], "score": [0, 1, 6, 10, 23, 24], "higher": [0, 1, 21], "uncertain": [0, 1], "size": [0, 4, 5, 8, 9, 10, 11, 12, 13, 14, 15, 16, 20, 21, 22], "length": [0, 22], "matrix": [0, 1, 11], "1": [0, 1, 4, 5, 6, 7, 10, 11, 12, 13, 14, 15, 18, 20, 21, 22, 24], "after": [0, 1, 5, 7, 8, 9, 10, 12, 15], "finish": [0, 1], "single_prediction_uncertainty_metr": [0, 1, 10], "multi_prediction_uncertainty_metr": [0, 1, 10], "multipredictionmixin": [0, 1, 4, 9, 10, 11, 13, 15, 16], "applic": [0, 1, 2, 5, 9, 10, 15, 16, 23], "someth": [0, 1], "els": [0, 1, 5, 9, 10], "contact": [0, 1], "dot": [0, 1], "mailbox": [0, 1], "batch_siz": [1, 4, 5, 8, 9, 10, 11, 13, 14, 15, 16, 20, 21], "sequence_length": [1, 6, 7, 10, 11, 12, 14, 16], "nlp_uncertainty_zoo": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24], "bayesianlstmmodul": [1, 4], "bertmodel": [1, 5, 6, 7, 11, 12, 16], "bertmodul": [1, 5, 12, 16], "forward": [1, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16], "get_hidden_represent": [1, 5, 8, 9, 10, 11, 14, 15], "ddubertmodul": [1, 6], "ddumixin": [1, 6, 21], "gmm_fit": [1, 6], "gmm_predict": [1, 6, 21], "ddutransformermodul": [1, 6], "dppbertmodul": [1, 7], "eval": [1, 7, 10, 16], "dpptransformermodul": [1, 7], "dropoutdpp": [1, 7], "calc_non_zero_neuron": [1, 7], "dropout_id": [1, 7], "get_mask": [1, 7], "updat": [1, 7], "cellwiselstm": [1, 8], "lstmmodul": [1, 4, 8, 13], "init_hidden_st": [1, 8, 15], "layerwiselstm": [1, 8], "get_loss": [1, 9, 10, 11], "get_train_loss": [1, 9], "available_uncertainty_metr": [1, 10], "compute_loss_weight": [1, 10], "load": [1, 10, 20], "get_num_learnable_paramet": [1, 10], "get_sequence_represent": [1, 10, 14], "sngpbertmodul": [1, 11], "sngpmodul": [1, 11], "invert_sigma_hat": [1, 11], "sngptransformermodul": [1, 11], "spectralbertmodul": [1, 6, 11, 12], "spectralnormfc": [1, 12], "appli": [1, 4, 6, 7, 11, 12, 15, 16, 24], "compute_weight": [1, 12], "dim": [1, 12], "ep": [1, 12, 18, 21], "n_power_iter": [1, 12], "spectraltransformermodul": [1, 6, 11, 12], "spectral_norm_fc": [1, 12], "sttaucel": [1, 13], "bia": [1, 12, 13], "hidden_s": [1, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "input_s": [1, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "weight_hh": [1, 13], "weight_ih": [1, 13], "sttaulstmmodul": [1, 13], "positionalembed": [1, 14], "transformermodul": [1, 12, 14, 16], "variationaldropout": [1, 15], "sampl": [1, 4, 11, 13, 15, 17, 20, 22, 24], "variationallstmmodul": [1, 15], "sample_mask": [1, 15], "variationalbertmodul": [1, 7, 16], "variationaltransformermodul": [1, 7, 16], "classificationdatasetbuild": [1, 20], "datasetbuild": [1, 20, 22], "languagemodellingdatasetbuild": [1, 20], "modifieddatacollatorforlanguagemodel": [1, 20], "mlm": [1, 20], "mlm_probabl": [1, 20], "pad_to_multiple_of": [1, 20], "token": [1, 6, 10, 11, 18, 20, 23, 24], "dempster_shaf": [1, 21], "max_prob": [1, 21], "predictive_entropi": [1, 21], "softmax_gap": [1, 21], "varianc": [1, 4, 21], "languagemodellingsampl": [1, 22], "sequenceclassificationsampl": [1, 22], "tokenclassificationsampl": [1, 22], "create_probs_from_dict": [1, 22], "merge_freq_dict": [1, 22], "merge_instance_dict": [1, 22], "evaluate_task": [1, 23], "aupr": [1, 24], "auroc": [1, 24], "evaluate_uncertainti": [1, 24], "kendalls_tau": [1, 24], "repositori": [2, 3, 5, 10, 12, 17, 21], "model": [2, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24], "uncertainti": [2, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 22], "quantifi": [2, 13, 21, 24], "confid": 2, "As": [2, 10, 20], "now": [2, 22], "focus": 2, "hopefulli": 2, "nlp": [2, 7, 11], "futur": 2, "background": 2, "info": [2, 6], "inform": [2, 3, 5, 6, 7, 9, 10, 11, 12, 16, 18, 19, 21, 23, 24], "usag": [2, 19], "refer": [2, 10, 13], "readm": 2, "land": 2, "On": [2, 12], "highest": [2, 24], "level": 2, "compris": [2, 22], "multipl": [2, 10, 15, 16, 18, 20, 22], "includ": [2, 5, 6, 7, 10, 11, 17, 20, 21], "miscellan": 2, "qualitati": 2, "manag": 2, "resourc": 2, "abov": [2, 18, 24], "some": [3, 8, 10, 12, 15, 21, 22], "extra": 3, "individu": 3, "bayesian_lstm": [3, 4], "wrapper": [3, 10], "ddu_transform": [3, 6, 12, 21], "deep": [3, 6, 7, 11, 12, 18], "determinist": [3, 6, 12], "uncerta": 3, "dpp_transform": [3, 7], "long": [3, 8], "short": [3, 8], "term": [3, 8, 20], "memori": [3, 8], "rnn": 3, "lstm_ensembl": [3, 9], "explan": [3, 8], "abstract": [3, 10, 20, 22], "sngp_transform": [3, 11, 12], "superclass": [3, 12, 20], "st_tau_lstm": [3, 13], "variational_lstm": [3, 15, 16], "variational_transform": [3, 7, 15, 16], "concept": 4, "introduc": [4, 20], "recurr": [4, 8, 15, 16], "network": [4, 8, 12, 15, 16], "idea": [4, 7, 10, 11, 12], "instead": [4, 8, 13, 14, 15, 18], "singl": [4, 9, 10, 11, 18, 24], "valu": [4, 5, 9, 10, 12, 21, 22], "per": [4, 6], "we": [4, 5, 6, 7, 11, 12, 13, 15, 16, 18, 21, 24], "distribut": [4, 5, 8, 9, 10, 11, 12, 13, 15, 16, 18, 22, 24], "over": [4, 5, 9, 10, 11, 13, 16, 22], "thu": [4, 21], "actual": [4, 10, 21], "everi": [4, 6, 8, 10, 12, 13, 14, 15, 18, 20], "dure": [4, 10, 11, 15, 16, 18, 20, 23, 24], "infer": [4, 7, 15, 16], "set": [4, 5, 7, 9, 10, 13, 15, 16, 18, 20, 23, 24], "case": [4, 5, 14], "blitz": 4, "vocab_s": [4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "int": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 22, 23, 24], "output_s": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 21], "650": [4, 8, 9, 13, 15], "num_lay": [4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "2": [4, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 21, 24], "float": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 21, 23, 24], "0": [4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 20, 24], "3": [4, 12, 16, 18, 21], "prior_sigma_1": 4, "7": [4, 11], "prior_sigma_2": 4, "8": 4, "prior_pi": 4, "posterior_mu_init": 4, "04": 4, "posterior_rho_init": 4, "6": [4, 6, 7, 8, 9, 11, 14, 15, 16], "num_predict": [4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 21], "is_sequence_classifi": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "bool": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 23, 24], "true": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 23, 24], "lr": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "weight_decai": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "001": [4, 6, 7, 8, 9, 11, 13, 14, 15, 16], "optimizer_class": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "optim": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "adam": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "model_dir": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "str": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 23, 24], "none": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 20, 22, 24], "devic": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "cpu": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "model_param": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "build_param": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "input_": [4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16], "longtensor": [4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16], "arg": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "kwarg": [4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16, 18], "floattensor": [4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 21], "result": [4, 5, 8, 9, 10, 11, 13, 14, 15, 16, 18, 24], "tensor": [4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 21], "seq_len": [4, 5, 8, 9, 10, 11, 13, 14, 15, 16, 21], "depend": [4, 5, 8, 9, 10, 11, 13, 14, 15, 16], "index": [4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16], "option": [4, 5, 8, 9, 10, 11, 12, 13, 15, 16, 22, 24], "number": [4, 5, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 21, 22], "return": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 21, 22, 23, 24], "probabl": [4, 5, 6, 9, 10, 11, 13, 15, 16, 18, 21], "given": [4, 5, 7, 9, 10, 11, 13, 16, 20, 21, 22, 24], "enabl": 5, "compat": [5, 20], "devlin": 5, "2018": [5, 21], "store": [5, 8, 10, 15], "hub": 5, "work": [5, 8, 9, 13, 15, 16, 18, 24], "wa": [5, 9, 10, 11, 15, 18], "origin": [5, 7, 12, 13, 14, 15, 20, 22], "develop": 5, "three": [5, 22], "were": [5, 11, 12, 20, 22], "english": 5, "uncas": 5, "danish": 5, "hvingelbi": 5, "2020": [5, 11, 12, 16, 18], "alexanderfalk": 5, "danbert": 5, "small": [5, 18], "finnish": 5, "virtanen": 5, "2019": [5, 9, 18], "turkunlp": 5, "v1": 5, "specifi": [5, 10, 11, 15, 16, 20, 21, 24], "bert_nam": [5, 6, 7, 11, 12, 16], "__init__": [5, 10], "project": [5, 10, 19], "other": [5, 10, 11, 12, 20], "model_nam": [5, 10], "module_class": [5, 10], "scheduler_class": [5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "lr_schedul": [5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "_lrschedul": [5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "scheduler_kwarg": [5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16], "dict": [5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 18, 20, 22, 23, 24], "bert_class": [5, 6, 7, 11, 12, 16], "modeling_bert": [5, 6, 7, 11, 16], "serv": 5, "warmup_proport": 5, "sinc": [5, 8, 11, 12, 13, 14, 15, 21, 24], "schedul": 5, "num_training_step": [5, 9, 10], "valid_split": [5, 9, 10], "weight_loss": [5, 9, 10], "grad_clip": [5, 9, 10], "validation_interv": [5, 9, 10], "early_stopping_pat": [5, 9, 10], "inf": [5, 9, 10], "early_stop": [5, 9, 10], "verbos": [5, 9, 10, 18, 23, 24], "run": [5, 8, 9, 10, 11, 13, 14, 15], "training_kwarg": [5, 9, 10], "being": [5, 6, 7, 9, 10, 15, 23], "until": [5, 9, 10], "percentag": [5, 7, 18], "warmup": 5, "triangular": 5, "rate": 5, "valid": [5, 6, 9, 10], "whether": [5, 9, 10, 18, 23, 24], "displai": [5, 9, 10, 18, 23, 24], "loss": [5, 9, 10, 11, 24], "grad": [5, 7, 9, 10, 16], "norm": [5, 9, 10, 12], "befor": [5, 9, 10, 22], "clip": [5, 9, 10], "interv": [5, 9, 10], "through": [5, 9, 10, 13], "patienc": [5, 9, 10], "earli": [5, 9, 10], "stop": [5, 9, 10], "kick": [5, 9, 10], "np": [5, 9, 10, 18, 22, 24], "wandbrun": [5, 9, 10, 11], "statist": [5, 9, 10, 11, 22], "everyth": [5, 9, 10], "_epoch_it": [5, 9, 10], "_finetun": [5, 6, 9, 10], "obtain": [5, 7, 8, 9, 10, 11, 14, 15], "represent": [5, 6, 8, 9, 10, 11, 14, 15], "id": [5, 8, 9, 10, 11, 14, 15, 18, 23, 24], "sentenc": [5, 8, 9, 10, 11, 14, 15, 20, 22], "how": [5, 6, 7, 8, 10, 11, 12, 14, 15, 16, 20, 22, 24], "entir": [5, 8, 10, 14, 15], "extract": [5, 8, 10, 14, 15], "relev": [5, 8, 10, 14, 15], "exampl": [5, 8, 10, 12, 14, 15], "could": [5, 8, 10, 14, 15], "last": [5, 8, 10, 11, 14, 15], "unidirect": [5, 8, 10, 14, 15], "pooler": [5, 8, 10, 14, 15], "involv": [6, 11], "gmm": 6, "its": [6, 9, 21], "activ": [6, 10], "log": 6, "encod": [6, 8, 14, 15], "under": [6, 8, 10, 15, 24], "scratch": [6, 7, 11, 12, 16], "intern": 6, "call": [6, 8, 10, 13, 14, 15], "split": [6, 10, 18, 20, 23, 24], "avoid": [6, 11, 12, 15, 16, 18], "redund": [6, 11], "projection_s": 6, "64": 6, "spectral_norm_upper_bound": [6, 11, 12], "95": [6, 11], "ignore_indic": 6, "list": [6, 8, 9, 22, 24], "01": [6, 7, 11, 14, 16], "get_linear_schedule_with_warmup": [6, 7, 11, 14, 16], "form": [6, 8, 10, 15], "object": [6, 10], "mixin": [6, 10], "done": [6, 10, 14], "data_split": [6, 10], "featur": [6, 11], "datasplit": [6, 10, 23], "usual": [6, 10, 21], "compon": 6, "512": [6, 7, 11, 14, 16], "input_dropout": [6, 7, 11, 12, 14, 16], "num_head": [6, 7, 11, 12, 14, 16], "16": [6, 7, 11, 14, 16], "128": [6, 7, 11, 14, 16], "relat": 7, "mont": 7, "carlo": 7, "mask": [7, 15, 16, 20], "construct": 7, "correl": [7, 24], "kernel": [7, 11], "neuron": [7, 15, 16], "less": 7, "overal": 7, "eacl": 7, "main": [7, 12, 24], "157": 7, "pdf": [7, 15, 21], "modifi": [7, 9, 20], "com": [7, 12, 13], "skoltech": 7, "mode": [7, 16], "effect": [7, 16], "particular": [7, 16], "detail": [7, 11, 16], "behavior": [7, 16], "affect": [7, 16], "batchnorm": [7, 16], "etc": [7, 10, 16], "equival": [7, 16], "self": [7, 16], "local": [7, 16, 20], "disabl": [7, 15, 16], "doc": [7, 10, 16], "similar": [7, 10, 16], "mechan": [7, 16], "mai": [7, 16], "confus": [7, 16], "p": 7, "max_n": 7, "100": [7, 18, 20, 22, 23, 24], "max_frac": 7, "4": 7, "blob": [7, 13], "src": 7, "ue4nlp": 7, "dropout_dpp": 7, "static": [7, 9, 10, 12, 18], "sum_mask": 7, "fraction": [7, 18], "have": [7, 10], "been": 7, "drop": [7, 10, 15], "yet": 7, "non": 7, "gener": [7, 9, 10, 17, 21, 24], "classmethod": 7, "neural": [8, 15, 16, 21], "depth": 8, "excel": 8, "blog": 8, "post": 8, "christoph": 8, "olah": 8, "cell": [8, 13, 15], "lstmcell": [8, 13], "tupl": [8, 13, 18, 22, 23, 24], "overridden": [8, 13, 14, 15], "subclass": [8, 9, 10, 11, 13, 14, 15], "although": [8, 13, 14, 15], "recip": [8, 13, 14, 15], "within": [8, 13, 14, 15, 17], "afterward": [8, 13, 14, 15], "former": [8, 13, 14, 15, 18], "care": [8, 13, 14, 15], "regist": [8, 13, 14, 15], "hook": [8, 12, 13, 14, 15], "latter": [8, 10, 13, 14, 15, 18], "silent": [8, 13, 14, 15], "ignor": [8, 13, 14, 15, 18, 23, 24], "init_weight": [8, 9, 15], "5": [8, 9, 11, 13, 15, 18], "hidden_st": [8, 15], "hot": [8, 15], "hiddendict": [8, 15], "dictionari": [8, 10, 15, 18, 20, 22, 24], "time": [8, 10, 15, 18], "zero": [8, 15, 16], "vector": [8, 15], "ones": [8, 15], "last_hidden_st": [8, 15], "unnorm": [8, 15, 21], "begin": [8, 15], "switch": [8, 15], "vice": [8, 15], "versa": [8, 15], "inspir": 9, "show": [9, 20, 22], "strong": 9, "quantif": [9, 18], "due": [9, 12], "divers": 9, "confirm": 9, "ovadia": 9, "vision": 9, "where": [9, 10, 12, 15, 18, 20, 21, 22, 23, 24], "en": 9, "par": 9, "better": 9, "than": 9, "slightli": 9, "compar": [9, 15, 22, 24], "accommod": [9, 10], "y": [9, 10, 11, 18], "just": [9, 10, 11, 15], "cross": [9, 10, 11, 22], "entropi": [9, 10, 11, 18, 21, 22], "adjust": [9, 10, 11], "overwrit": [9, 10, 11], "move": [9, 10], "anoth": [9, 10], "signatur": 10, "mandatori": 10, "user": [10, 12], "loop": 10, "ideal": 10, "structur": 10, "direct": 10, "simpli": 10, "mirror": 10, "stabl": [10, 11], "html": 10, "By": 10, "vocabulari": 10, "embed": [10, 14, 15], "One": 10, "cuda": 10, "kind": [10, 15], "regress": 10, "pars": 10, "moment": 10, "dimens": [10, 12], "classifi": 10, "except": [10, 12], "axi": 10, "sum": 10, "up": [10, 15, 16], "top": 10, "often": 10, "cl": 10, "possess": 10, "attribut": 10, "default_uncertainty_metr": 10, "kei": [10, 22], "aim": [10, 20], "anyon": 10, "doe": 10, "want": [10, 21], "write": 10, "aspect": [10, 11], "expect": [10, 18, 20, 21], "string": 10, "keyword": 10, "path": [10, 13], "save": [10, 23], "mainli": 10, "interact": 10, "common": [10, 22, 24], "separ": [10, 20], "part": [10, 13, 20], "architectur": [10, 12, 13, 14, 16], "copi": [10, 12, 14], "adapt": [10, 14, 15, 16, 18], "necessari": 10, "practic": [10, 12], "abc": [10, 20, 22], "properti": [10, 18, 20, 24], "callabl": [10, 18, 24], "unbalanc": 10, "k": 10, "model_path": 10, "look": 10, "total": 10, "learnabl": [10, 13], "bundl": 10, "extractor": 11, "propos": [11, 15, 16], "wilson": 11, "further": 11, "explain": 11, "share": [11, 15], "alreadi": 11, "found": [11, 15, 16, 18], "quit": 11, "unstabl": 11, "when": [11, 12, 15, 20, 21], "underli": 11, "mani": 11, "approxim": [11, 12, 15, 16, 22], "appendix": 11, "abl": 11, "choos": 11, "field": 11, "posterior": [11, 15, 16], "equat": 11, "present": [11, 15, 16], "ridge_factor": 11, "scaling_coeffici": 11, "999": 11, "beta_length_scal": 11, "kernel_amplitud": 11, "35": 11, "4931": 11, "001357": 11, "weight_decay_beta": 11, "residu": [11, 12], "connect": [11, 12, 15, 16], "maintain": [11, 22], "bi": [11, 12], "lipschitz": [11, 12], "constraint": [11, 12], "gp": 11, "final": 11, "invert": 11, "sigma": 11, "hat": 11, "fulfil": 12, "arxiv": [12, 15, 21], "ab": 12, "2102": 12, "11582": 12, "hand": 12, "smooth": 12, "adversari": 12, "attack": 12, "promot": 12, "robust": 12, "still": 12, "sensit": 12, "enough": 12, "detect": [12, 24], "insid": 12, "condit": 12, "largest": 12, "singular": 12, "matric": 12, "upper": 12, "bound": 12, "constant": 12, "chosen": 12, "verbatim": 12, "joost": 12, "van": 12, "amsterfoort": 12, "meet": 12, "amersfoort": 12, "y0ast": 12, "python": [12, 17, 19], "1e": [12, 18, 21], "12": [12, 18], "spectralnorm": 12, "coeff": 12, "do_power_iter": 12, "coeffici": [12, 24], "power": 12, "iter": 12, "calcul": [12, 18], "epsilon": 12, "numer": 12, "stabil": 12, "convtranspos": 12, "d": 12, "m": 12, "linear": 12, "20": [12, 13], "40": 12, "in_featur": 12, "out_featur": 12, "weight_u": 12, "intuit": 13, "earlier": 13, "augment": 13, "probabilist": 13, "ochast": 13, "fsa": 13, "At": 13, "discret": 13, "gumbel": 13, "softmax": [13, 21], "trick": 13, "sassafras13": 13, "io": 13, "gumbelsoftmax": 13, "temperatur": 13, "wai": [13, 24], "do": 13, "num_centroid": 13, "contrast": [13, 24], "peephol": 13, "nec": 13, "st_tau": 13, "master": 13, "st_stau": 13, "hx": 13, "vaswani": 14, "posit": [14, 18], "tutori": 14, "shamelessli": 14, "variant": [15, 16], "produc": [15, 16, 17, 20], "srivastava": [15, 16], "2014": [15, 16], "regul": [15, 16], "techniqu": [15, 16], "randomli": [15, 16], "co": [15, 16], "importantli": [15, 16], "naiv": 15, "made": 15, "sure": [15, 18], "across": 15, "figur": 15, "hurt": 15, "slow": 15, "down": 15, "replic": 15, "conseqeu": 15, "omit": 15, "ghrahramani": 15, "1512": 15, "05287": 15, "input_dim": 15, "chang": [15, 20], "embedding_dropout": 15, "15": [15, 20], "layer_dropout": 15, "time_dropout": 15, "describ": 15, "reus": 15, "throughout": 15, "observ": 15, "yield": 15, "minor": 15, "improv": 15, "simplifi": 15, "fulli": 16, "opt": 16, "encourag": 16, "combin": 17, "raw": 17, "file": [17, 20, 21], "repres": [17, 20, 22], "sub": [17, 20, 22], "exactli": [18, 24], "error": 18, "naeini": 18, "nixon": 18, "extens": 18, "rang": 18, "bin": 18, "sce": 18, "rel": 18, "larg": 18, "kompa": 18, "determin": 18, "averag": 18, "width": 18, "reach": 18, "alpha": 18, "mass": 18, "calibration_ev": 18, "coverage_width": 18, "correct": 18, "coverage_percentag": 18, "evaluate_calibr": 18, "ac": 18, "y_true": [18, 24], "arrai": [18, 22, 24], "y_pred": [18, 24], "num_rang": 18, "measur": [18, 24], "categor": [18, 22], "05": [18, 21], "benjamin": 18, "jasper": 18, "snoek": 18, "andrew": 18, "l": 18, "beam": 18, "empir": 18, "frequentist": 18, "coverag": 18, "procedur": 18, "23": 18, "1608": 18, "threshold": 18, "08": 18, "precis": [18, 24], "problem": [18, 20], "ec": 18, "n_bin": 18, "absolut": 18, "taken": 18, "weigh": 18, "ndarrai": 18, "eval_split": [18, 23, 24], "eval_func": [18, 24], "frozendict": [18, 24], "ignore_token_id": [18, 23, 24], "assess": 18, "progress": [18, 23, 24], "num_bin": 18, "inter": 19, "readabl": 19, "content": 20, "mostli": [20, 22], "concern": 20, "tri": [20, 22], "interfac": 20, "behav": [20, 22], "both": 20, "classic": 20, "indic": [20, 21, 22, 24], "u": 20, "either": 20, "next_token_predict": 20, "type_": 20, "suggest": 20, "again": 20, "sequence_classif": 20, "token_classif": 20, "csv": 20, "format": 20, "tab": 20, "column": 20, "span": [20, 22], "subword": 20, "assign": 20, "receiv": [20, 24], "constain": [20, 21], "datacollatorforlanguagemodel": 20, "seem": 20, "next": 20, "wouldn": 20, "t": 20, "offset": 20, "minim": 20, "modif": 20, "ensur": 20, "read": 20, "data_dir": 20, "pretrainedtokenizerbas": 20, "max_length": 20, "sampler_class": 20, "sampler_kwarg": 20, "num_job": [20, 22], "dataloader_kwarg": 20, "desir": 20, "varieti": 20, "aka": [20, 22], "tf_experimental_compil": 20, "return_tensor": 20, "pt": 20, "__call__": 20, "input_id": 20, "rest": 20, "becom": 21, "log_prob": 21, "discrimin": 21, "oper": [21, 24], "unless": 21, "otherwis": 21, "dempster": 21, "shafer": 21, "proceed": 21, "neurip": 21, "cc": 21, "a981f2b708044d6fb4a71a1463242520": 21, "maximum": [21, 22], "baselin": 21, "becaus": 21, "high": 21, "max": 21, "prob": 21, "1610": 21, "02136": 21, "mutual": 21, "1803": 21, "08533": 21, "gap": 21, "1811": 21, "00908": 21, "primarili": 22, "text": 22, "block": 22, "contigu": 22, "notion": 22, "paragraph": 22, "corpu": 22, "secondli": 22, "previou": 22, "proport": 22, "global": 22, "built": 22, "ampl": 22, "data_sourc": 22, "target_s": 22, "sample_rang": 22, "seed": 22, "strategi": 22, "lesser": 22, "extent": 22, "target": 22, "ignore_label": 22, "consid": 22, "freq_dict": 22, "max_label": 22, "auxiliari": 22, "numpi": 22, "integ": 22, "frequenc": 22, "map": 22, "minu": 22, "tyi": 22, "freqs_a": 22, "freqs_b": 22, "merg": 22, "collect": 22, "job": 22, "second": 22, "lengths_a": 22, "lengths_b": 22, "light": 22, "group": 22, "characterist": [22, 24], "accuraci": 23, "macro": 23, "f1": 23, "tricki": 24, "gold": 24, "reason": 24, "proxi": 24, "ood": 24, "distinguish": 24, "realiz": 24, "area": 24, "recal": 24, "curv": 24, "potenti": 24, "kendal": 24, "pseudo": 24, "binari": 24, "differenti": 24, "id_eval_split": 24, "ood_eval_split": 24, "kendalltau": 24, "contrastive_eval_func": 24, "anomali": 24, "evalualt": 24, "concord": 24, "incur": 24, "discord": 24}, "objects": {"nlp_uncertainty_zoo.models": [[4, 0, 0, "-", "bayesian_lstm"], [5, 0, 0, "-", "bert"], [6, 0, 0, "-", "ddu_transformer"], [7, 0, 0, "-", "dpp_transformer"], [8, 0, 0, "-", "lstm"], [9, 0, 0, "-", "lstm_ensemble"], [10, 0, 0, "-", "model"], [11, 0, 0, "-", "sngp_transformer"], [12, 0, 0, "-", "spectral"], [13, 0, 0, "-", "st_tau_lstm"], [14, 0, 0, "-", "transformer"], [15, 0, 0, "-", "variational_lstm"], [16, 0, 0, "-", "variational_transformer"]], "nlp_uncertainty_zoo.models.bayesian_lstm": [[4, 1, 1, "", "BayesianLSTM"], [4, 1, 1, "", "BayesianLSTMModule"]], "nlp_uncertainty_zoo.models.bayesian_lstm.BayesianLSTMModule": [[4, 2, 1, "", "get_logits"], [4, 2, 1, "", "predict"], [4, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.bert": [[5, 1, 1, "", "BertModel"], [5, 1, 1, "", "BertModule"]], "nlp_uncertainty_zoo.models.bert.BertModel": [[5, 2, 1, "", "fit"]], "nlp_uncertainty_zoo.models.bert.BertModule": [[5, 2, 1, "", "forward"], [5, 2, 1, "", "get_hidden_representation"], [5, 2, 1, "", "get_logits"], [5, 2, 1, "", "get_sequence_representation_from_hidden"], [5, 2, 1, "", "predict"], [5, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.ddu_transformer": [[6, 1, 1, "", "DDUBert"], [6, 1, 1, "", "DDUBertModule"], [6, 1, 1, "", "DDUMixin"], [6, 1, 1, "", "DDUTransformer"], [6, 1, 1, "", "DDUTransformerModule"]], "nlp_uncertainty_zoo.models.ddu_transformer.DDUBertModule": [[6, 2, 1, "", "get_uncertainty"], [6, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.ddu_transformer.DDUMixin": [[6, 2, 1, "", "gmm_fit"], [6, 2, 1, "", "gmm_predict"]], "nlp_uncertainty_zoo.models.ddu_transformer.DDUTransformerModule": [[6, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.dpp_transformer": [[7, 1, 1, "", "DPPBert"], [7, 1, 1, "", "DPPBertModule"], [7, 1, 1, "", "DPPTransformer"], [7, 1, 1, "", "DPPTransformerModule"], [7, 1, 1, "", "DropoutDPP"]], "nlp_uncertainty_zoo.models.dpp_transformer.DPPBertModule": [[7, 2, 1, "", "eval"], [7, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.dpp_transformer.DPPTransformerModule": [[7, 2, 1, "", "eval"], [7, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.dpp_transformer.DropoutDPP": [[7, 2, 1, "", "calc_non_zero_neurons"], [7, 3, 1, "", "dropout_id"], [7, 2, 1, "", "forward"], [7, 2, 1, "", "get_mask"], [7, 3, 1, "", "training"], [7, 2, 1, "", "update"]], "nlp_uncertainty_zoo.models.lstm": [[8, 1, 1, "", "CellWiseLSTM"], [8, 1, 1, "", "LSTM"], [8, 1, 1, "", "LSTMModule"], [8, 1, 1, "", "LayerWiseLSTM"]], "nlp_uncertainty_zoo.models.lstm.CellWiseLSTM": [[8, 2, 1, "", "forward"], [8, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.lstm.LSTM": [[8, 2, 1, "", "predict"]], "nlp_uncertainty_zoo.models.lstm.LSTMModule": [[8, 2, 1, "", "forward"], [8, 2, 1, "", "get_hidden_representation"], [8, 2, 1, "", "get_logits"], [8, 2, 1, "", "get_sequence_representation_from_hidden"], [8, 2, 1, "", "init_hidden_states"], [8, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.lstm.LayerWiseLSTM": [[8, 2, 1, "", "forward"], [8, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.lstm_ensemble": [[9, 1, 1, "", "LSTMEnsemble"], [9, 1, 1, "", "LSTMEnsembleModule"]], "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsemble": [[9, 2, 1, "", "fit"], [9, 2, 1, "", "get_loss"], [9, 2, 1, "", "get_train_loss"]], "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule": [[9, 2, 1, "", "forward"], [9, 2, 1, "", "get_hidden_representation"], [9, 2, 1, "", "get_logits"], [9, 2, 1, "", "get_sequence_representation_from_hidden"], [9, 2, 1, "", "predict"], [9, 2, 1, "", "to"], [9, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.model": [[10, 1, 1, "", "Model"], [10, 1, 1, "", "Module"], [10, 1, 1, "", "MultiPredictionMixin"]], "nlp_uncertainty_zoo.models.model.Model": [[10, 4, 1, "", "available_uncertainty_metrics"], [10, 2, 1, "", "compute_loss_weights"], [10, 2, 1, "", "eval"], [10, 2, 1, "", "fit"], [10, 2, 1, "", "get_loss"], [10, 2, 1, "", "get_uncertainty"], [10, 2, 1, "", "load"], [10, 2, 1, "", "predict"], [10, 2, 1, "", "to"]], "nlp_uncertainty_zoo.models.model.Module": [[10, 4, 1, "", "available_uncertainty_metrics"], [10, 2, 1, "", "forward"], [10, 2, 1, "", "get_hidden_representation"], [10, 2, 1, "", "get_logits"], [10, 2, 1, "", "get_num_learnable_parameters"], [10, 2, 1, "", "get_sequence_representation"], [10, 2, 1, "", "get_sequence_representation_from_hidden"], [10, 2, 1, "", "get_uncertainty"], [10, 2, 1, "", "predict"], [10, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.sngp_transformer": [[11, 1, 1, "", "SNGPBert"], [11, 1, 1, "", "SNGPBertModule"], [11, 1, 1, "", "SNGPModule"], [11, 1, 1, "", "SNGPTransformer"], [11, 1, 1, "", "SNGPTransformerModule"]], "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBert": [[11, 2, 1, "", "get_loss"]], "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBertModule": [[11, 2, 1, "", "forward"], [11, 2, 1, "", "get_logits"], [11, 2, 1, "", "predict"], [11, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.sngp_transformer.SNGPModule": [[11, 2, 1, "", "forward"], [11, 2, 1, "", "get_logits"], [11, 2, 1, "", "invert_sigma_hat"], [11, 2, 1, "", "predict"], [11, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.sngp_transformer.SNGPTransformerModule": [[11, 2, 1, "", "forward"], [11, 2, 1, "", "get_hidden_representation"], [11, 2, 1, "", "get_logits"], [11, 2, 1, "", "predict"], [11, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.spectral": [[12, 1, 1, "", "SpectralBertModule"], [12, 1, 1, "", "SpectralNormFC"], [12, 1, 1, "", "SpectralTransformerModule"], [12, 5, 1, "", "spectral_norm_fc"]], "nlp_uncertainty_zoo.models.spectral.SpectralBertModule": [[12, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.spectral.SpectralNormFC": [[12, 2, 1, "", "apply"], [12, 2, 1, "", "compute_weight"], [12, 3, 1, "", "dim"], [12, 3, 1, "", "eps"], [12, 3, 1, "", "n_power_iterations"], [12, 3, 1, "", "name"]], "nlp_uncertainty_zoo.models.spectral.SpectralTransformerModule": [[12, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.st_tau_lstm": [[13, 1, 1, "", "STTauCell"], [13, 1, 1, "", "STTauLSTM"], [13, 1, 1, "", "STTauLSTMModule"]], "nlp_uncertainty_zoo.models.st_tau_lstm.STTauCell": [[13, 3, 1, "", "bias"], [13, 2, 1, "", "forward"], [13, 3, 1, "", "hidden_size"], [13, 3, 1, "", "input_size"], [13, 3, 1, "", "weight_hh"], [13, 3, 1, "", "weight_ih"]], "nlp_uncertainty_zoo.models.st_tau_lstm.STTauLSTMModule": [[13, 2, 1, "", "get_logits"], [13, 2, 1, "", "predict"], [13, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.transformer": [[14, 1, 1, "", "PositionalEmbedding"], [14, 1, 1, "", "Transformer"], [14, 1, 1, "", "TransformerModule"]], "nlp_uncertainty_zoo.models.transformer.PositionalEmbedding": [[14, 2, 1, "", "forward"], [14, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.transformer.TransformerModule": [[14, 2, 1, "", "forward"], [14, 2, 1, "", "get_hidden_representation"], [14, 2, 1, "", "get_logits"], [14, 2, 1, "", "get_sequence_representation"], [14, 2, 1, "", "get_sequence_representation_from_hidden"], [14, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.variational_lstm": [[15, 1, 1, "", "VariationalDropout"], [15, 1, 1, "", "VariationalLSTM"], [15, 1, 1, "", "VariationalLSTMModule"]], "nlp_uncertainty_zoo.models.variational_lstm.VariationalDropout": [[15, 2, 1, "", "forward"], [15, 2, 1, "", "sample"], [15, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule": [[15, 2, 1, "", "forward"], [15, 2, 1, "", "get_hidden_representation"], [15, 2, 1, "", "get_logits"], [15, 2, 1, "", "get_sequence_representation_from_hidden"], [15, 2, 1, "", "init_hidden_states"], [15, 2, 1, "", "predict"], [15, 2, 1, "", "sample_masks"], [15, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.variational_transformer": [[16, 1, 1, "", "VariationalBert"], [16, 1, 1, "", "VariationalBertModule"], [16, 1, 1, "", "VariationalTransformer"], [16, 1, 1, "", "VariationalTransformerModule"]], "nlp_uncertainty_zoo.models.variational_transformer.VariationalBertModule": [[16, 2, 1, "", "eval"], [16, 2, 1, "", "get_logits"], [16, 2, 1, "", "predict"], [16, 3, 1, "", "training"]], "nlp_uncertainty_zoo.models.variational_transformer.VariationalTransformerModule": [[16, 2, 1, "", "eval"], [16, 2, 1, "", "get_logits"], [16, 2, 1, "", "predict"], [16, 3, 1, "", "training"]], "nlp_uncertainty_zoo.utils": [[18, 0, 0, "-", "calibration_eval"], [19, 0, 0, "-", "custom_types"], [20, 0, 0, "-", "data"], [21, 0, 0, "-", "metrics"], [22, 0, 0, "-", "samplers"], [23, 0, 0, "-", "task_eval"], [24, 0, 0, "-", "uncertainty_eval"]], "nlp_uncertainty_zoo.utils.calibration_eval": [[18, 5, 1, "", "ace"], [18, 5, 1, "", "coverage_percentage"], [18, 5, 1, "", "coverage_width"], [18, 5, 1, "", "ece"], [18, 5, 1, "", "evaluate_calibration"], [18, 5, 1, "", "sce"]], "nlp_uncertainty_zoo.utils.data": [[20, 1, 1, "", "ClassificationDatasetBuilder"], [20, 1, 1, "", "DatasetBuilder"], [20, 1, 1, "", "LanguageModellingDatasetBuilder"], [20, 1, 1, "", "ModifiedDataCollatorForLanguageModeling"]], "nlp_uncertainty_zoo.utils.data.ClassificationDatasetBuilder": [[20, 2, 1, "", "build"]], "nlp_uncertainty_zoo.utils.data.DatasetBuilder": [[20, 2, 1, "", "build"]], "nlp_uncertainty_zoo.utils.data.LanguageModellingDatasetBuilder": [[20, 2, 1, "", "build"]], "nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling": [[20, 3, 1, "", "mlm"], [20, 3, 1, "", "mlm_probability"], [20, 3, 1, "", "pad_to_multiple_of"], [20, 3, 1, "", "tokenizer"]], "nlp_uncertainty_zoo.utils.metrics": [[21, 5, 1, "", "dempster_shafer"], [21, 5, 1, "", "max_prob"], [21, 5, 1, "", "mutual_information"], [21, 5, 1, "", "predictive_entropy"], [21, 5, 1, "", "softmax_gap"], [21, 5, 1, "", "variance"]], "nlp_uncertainty_zoo.utils.samplers": [[22, 1, 1, "", "LanguageModellingSampler"], [22, 1, 1, "", "SequenceClassificationSampler"], [22, 1, 1, "", "Subsampler"], [22, 1, 1, "", "TokenClassificationSampler"], [22, 5, 1, "", "create_probs_from_dict"], [22, 5, 1, "", "merge_freq_dicts"], [22, 5, 1, "", "merge_instance_dicts"]], "nlp_uncertainty_zoo.utils.task_eval": [[23, 5, 1, "", "evaluate_task"]], "nlp_uncertainty_zoo.utils.uncertainty_eval": [[24, 5, 1, "", "aupr"], [24, 5, 1, "", "auroc"], [24, 5, 1, "", "evaluate_uncertainty"], [24, 5, 1, "", "kendalls_tau"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:attribute", "4": "py:property", "5": "py:function"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "attribute", "Python attribute"], "4": ["py", "property", "Python property"], "5": ["py", "function", "Python function"]}, "titleterms": {"robot": 0, "speech_balloon": 0, "question": 0, "nlp": [0, 1], "uncertainti": [0, 1, 21, 24], "zoo": [0, 1], "includ": [0, 1], "model": [0, 1, 3, 10], "usag": [0, 1], "repositori": [0, 1], "structur": [0, 1], "other": [0, 1], "featur": [0, 1], "contribut": [0, 1], "nlp_uncertainty_zoo": 2, "packag": 3, "bayesian": 4, "lstm": [4, 8, 9, 13, 15], "modul": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 24], "document": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 24], "bert": 5, "ddu": 6, "transform": [6, 7, 11, 14, 16], "dpp": 7, "ensembl": 9, "The": 10, "class": 10, "sngp": 11, "spectral": 12, "st": 13, "tau": 13, "variat": [15, 16], "util": 17, "calibr": 18, "eval": [18, 23, 24], "custom": 19, "type": 19, "data": 20, "metric": 21, "sampler": 22, "task": 23}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 57}, "alltitles": {"|:robot:| |:speech_balloon:| |:question:| nlp-uncertainty-zoo": [[0, "robot-speech-balloon-question-nlp-uncertainty-zoo"]], "Included models": [[0, "included-models"], [1, "included-models"]], "Usage": [[0, "usage"], [1, "usage"]], "Repository structure": [[0, "repository-structure"], [1, "repository-structure"]], "Other features": [[0, "other-features"], [1, "other-features"]], "Contributing": [[0, "contributing"], [1, "contributing"]], "\ud83e\udd16 \ud83d\udcac \u2753 nlp-uncertainty-zoo": [[1, "robot-speech-balloon-question-nlp-uncertainty-zoo"]], "nlp_uncertainty_zoo": [[2, "nlp-uncertainty-zoo"]], "Model package": [[3, "model-package"]], "Bayesian LSTM": [[4, "bayesian-lstm"]], "Bayesian LSTM Module Documentation": [[4, "bayesian-lstm-module-documentation"]], "BERT": [[5, "bert"]], "BERT Module Documentation": [[5, "module-nlp_uncertainty_zoo.models.bert"]], "DDU Transformer": [[6, "ddu-transformer"]], "DDU Transformer Module Documentation": [[6, "module-nlp_uncertainty_zoo.models.ddu_transformer"]], "DPP Transformer": [[7, "dpp-transformer"]], "DPP Transformer Module Documentation": [[7, "module-nlp_uncertainty_zoo.models.dpp_transformer"]], "LSTM": [[8, "lstm"]], "LSTM Module Documentation": [[8, "module-nlp_uncertainty_zoo.models.lstm"]], "LSTM Ensemble": [[9, "lstm-ensemble"]], "LSTM Ensemble Module Documentation": [[9, "module-nlp_uncertainty_zoo.models.lstm_ensemble"]], "Models": [[10, "models"]], "The Module class": [[10, "the-module-class"]], "The Model class": [[10, "the-model-class"]], "Models Documentation": [[10, "module-nlp_uncertainty_zoo.models.model"]], "SNGP Transformer": [[11, "sngp-transformer"]], "SNGP Transformer Module Documentation": [[11, "module-nlp_uncertainty_zoo.models.sngp_transformer"]], "Spectral": [[12, "spectral"]], "Spectral Module Documentation": [[12, "module-nlp_uncertainty_zoo.models.spectral"]], "ST-tau LSTM": [[13, "st-tau-lstm"]], "ST-tau LSTM Module Documentation": [[13, "module-nlp_uncertainty_zoo.models.st_tau_lstm"]], "Transformer": [[14, "transformer"]], "Transformer Module Documentation": [[14, "module-nlp_uncertainty_zoo.models.transformer"]], "Variational LSTM": [[15, "variational-lstm"]], "Variational LSTM Module Documentation": [[15, "module-nlp_uncertainty_zoo.models.variational_lstm"]], "Variational Transformer": [[16, "variational-transformer"]], "Variational Transformer Module Documentation": [[16, "variational-transformer-module-documentation"]], "Utils": [[17, "utils"]], "Calibration Eval": [[18, "calibration-eval"]], "Calibration Eval Module Documentation": [[18, "module-nlp_uncertainty_zoo.utils.calibration_eval"]], "Custom Types": [[19, "custom-types"]], "Custom Types Module Documentation": [[19, "module-nlp_uncertainty_zoo.utils.custom_types"]], "Data": [[20, "data"]], "Data Module Documentation": [[20, "module-nlp_uncertainty_zoo.utils.data"]], "Uncertainty metrics": [[21, "uncertainty-metrics"]], "Metric Module Documentation": [[21, "module-nlp_uncertainty_zoo.utils.metrics"]], "Samplers": [[22, "samplers"]], "Samplers Module Documentation": [[22, "module-nlp_uncertainty_zoo.utils.samplers"]], "Task Eval": [[23, "task-eval"]], "Task Eval Module Documentation": [[23, "module-nlp_uncertainty_zoo.utils.task_eval"]], "Uncertainty Eval": [[24, "uncertainty-eval"]], "Uncertainty Eval Module Documentation": [[24, "module-nlp_uncertainty_zoo.utils.uncertainty_eval"]]}, "indexentries": {"bayesianlstm (class in nlp_uncertainty_zoo.models.bayesian_lstm)": [[4, "nlp_uncertainty_zoo.models.bayesian_lstm.BayesianLSTM"]], "bayesianlstmmodule (class in nlp_uncertainty_zoo.models.bayesian_lstm)": [[4, "nlp_uncertainty_zoo.models.bayesian_lstm.BayesianLSTMModule"]], "get_logits() (nlp_uncertainty_zoo.models.bayesian_lstm.bayesianlstmmodule method)": [[4, "nlp_uncertainty_zoo.models.bayesian_lstm.BayesianLSTMModule.get_logits"]], "module": [[4, "module-nlp_uncertainty_zoo.models.bayesian_lstm"], [5, "module-nlp_uncertainty_zoo.models.bert"], [6, "module-nlp_uncertainty_zoo.models.ddu_transformer"], [7, "module-nlp_uncertainty_zoo.models.dpp_transformer"], [8, "module-nlp_uncertainty_zoo.models.lstm"], [9, "module-nlp_uncertainty_zoo.models.lstm_ensemble"], [10, "module-nlp_uncertainty_zoo.models.model"], [11, "module-nlp_uncertainty_zoo.models.sngp_transformer"], [12, "module-nlp_uncertainty_zoo.models.spectral"], [13, "module-nlp_uncertainty_zoo.models.st_tau_lstm"], [14, "module-nlp_uncertainty_zoo.models.transformer"], [15, "module-nlp_uncertainty_zoo.models.variational_lstm"], [16, "module-nlp_uncertainty_zoo.models.variational_transformer"], [18, "module-nlp_uncertainty_zoo.utils.calibration_eval"], [19, "module-nlp_uncertainty_zoo.utils.custom_types"], [20, "module-nlp_uncertainty_zoo.utils.data"], [21, "module-nlp_uncertainty_zoo.utils.metrics"], [22, "module-nlp_uncertainty_zoo.utils.samplers"], [23, "module-nlp_uncertainty_zoo.utils.task_eval"], [24, "module-nlp_uncertainty_zoo.utils.uncertainty_eval"]], "nlp_uncertainty_zoo.models.bayesian_lstm": [[4, "module-nlp_uncertainty_zoo.models.bayesian_lstm"]], "predict() (nlp_uncertainty_zoo.models.bayesian_lstm.bayesianlstmmodule method)": [[4, "nlp_uncertainty_zoo.models.bayesian_lstm.BayesianLSTMModule.predict"]], "training (nlp_uncertainty_zoo.models.bayesian_lstm.bayesianlstmmodule attribute)": [[4, "nlp_uncertainty_zoo.models.bayesian_lstm.BayesianLSTMModule.training"]], "bertmodel (class in nlp_uncertainty_zoo.models.bert)": [[5, "nlp_uncertainty_zoo.models.bert.BertModel"]], "bertmodule (class in nlp_uncertainty_zoo.models.bert)": [[5, "nlp_uncertainty_zoo.models.bert.BertModule"]], "fit() (nlp_uncertainty_zoo.models.bert.bertmodel method)": [[5, "nlp_uncertainty_zoo.models.bert.BertModel.fit"]], "forward() (nlp_uncertainty_zoo.models.bert.bertmodule method)": [[5, "nlp_uncertainty_zoo.models.bert.BertModule.forward"]], "get_hidden_representation() (nlp_uncertainty_zoo.models.bert.bertmodule method)": [[5, "nlp_uncertainty_zoo.models.bert.BertModule.get_hidden_representation"]], "get_logits() (nlp_uncertainty_zoo.models.bert.bertmodule method)": [[5, "nlp_uncertainty_zoo.models.bert.BertModule.get_logits"]], "get_sequence_representation_from_hidden() (nlp_uncertainty_zoo.models.bert.bertmodule method)": [[5, "nlp_uncertainty_zoo.models.bert.BertModule.get_sequence_representation_from_hidden"]], "nlp_uncertainty_zoo.models.bert": [[5, "module-nlp_uncertainty_zoo.models.bert"]], "predict() (nlp_uncertainty_zoo.models.bert.bertmodule method)": [[5, "nlp_uncertainty_zoo.models.bert.BertModule.predict"]], "training (nlp_uncertainty_zoo.models.bert.bertmodule attribute)": [[5, "nlp_uncertainty_zoo.models.bert.BertModule.training"]], "ddubert (class in nlp_uncertainty_zoo.models.ddu_transformer)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUBert"]], "ddubertmodule (class in nlp_uncertainty_zoo.models.ddu_transformer)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUBertModule"]], "ddumixin (class in nlp_uncertainty_zoo.models.ddu_transformer)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUMixin"]], "ddutransformer (class in nlp_uncertainty_zoo.models.ddu_transformer)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUTransformer"]], "ddutransformermodule (class in nlp_uncertainty_zoo.models.ddu_transformer)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUTransformerModule"]], "get_uncertainty() (nlp_uncertainty_zoo.models.ddu_transformer.ddubertmodule method)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUBertModule.get_uncertainty"]], "gmm_fit() (nlp_uncertainty_zoo.models.ddu_transformer.ddumixin method)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUMixin.gmm_fit"]], "gmm_predict() (nlp_uncertainty_zoo.models.ddu_transformer.ddumixin method)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUMixin.gmm_predict"]], "nlp_uncertainty_zoo.models.ddu_transformer": [[6, "module-nlp_uncertainty_zoo.models.ddu_transformer"]], "training (nlp_uncertainty_zoo.models.ddu_transformer.ddubertmodule attribute)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUBertModule.training"]], "training (nlp_uncertainty_zoo.models.ddu_transformer.ddutransformermodule attribute)": [[6, "nlp_uncertainty_zoo.models.ddu_transformer.DDUTransformerModule.training"]], "dppbert (class in nlp_uncertainty_zoo.models.dpp_transformer)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DPPBert"]], "dppbertmodule (class in nlp_uncertainty_zoo.models.dpp_transformer)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DPPBertModule"]], "dpptransformer (class in nlp_uncertainty_zoo.models.dpp_transformer)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DPPTransformer"]], "dpptransformermodule (class in nlp_uncertainty_zoo.models.dpp_transformer)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DPPTransformerModule"]], "dropoutdpp (class in nlp_uncertainty_zoo.models.dpp_transformer)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DropoutDPP"]], "calc_non_zero_neurons() (nlp_uncertainty_zoo.models.dpp_transformer.dropoutdpp static method)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DropoutDPP.calc_non_zero_neurons"]], "dropout_id (nlp_uncertainty_zoo.models.dpp_transformer.dropoutdpp attribute)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DropoutDPP.dropout_id"]], "eval() (nlp_uncertainty_zoo.models.dpp_transformer.dppbertmodule method)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DPPBertModule.eval"]], "eval() (nlp_uncertainty_zoo.models.dpp_transformer.dpptransformermodule method)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DPPTransformerModule.eval"]], "forward() (nlp_uncertainty_zoo.models.dpp_transformer.dropoutdpp method)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DropoutDPP.forward"]], "get_mask() (nlp_uncertainty_zoo.models.dpp_transformer.dropoutdpp method)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DropoutDPP.get_mask"]], "nlp_uncertainty_zoo.models.dpp_transformer": [[7, "module-nlp_uncertainty_zoo.models.dpp_transformer"]], "training (nlp_uncertainty_zoo.models.dpp_transformer.dppbertmodule attribute)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DPPBertModule.training"]], "training (nlp_uncertainty_zoo.models.dpp_transformer.dpptransformermodule attribute)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DPPTransformerModule.training"]], "training (nlp_uncertainty_zoo.models.dpp_transformer.dropoutdpp attribute)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DropoutDPP.training"]], "update() (nlp_uncertainty_zoo.models.dpp_transformer.dropoutdpp class method)": [[7, "nlp_uncertainty_zoo.models.dpp_transformer.DropoutDPP.update"]], "cellwiselstm (class in nlp_uncertainty_zoo.models.lstm)": [[8, "nlp_uncertainty_zoo.models.lstm.CellWiseLSTM"]], "lstm (class in nlp_uncertainty_zoo.models.lstm)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTM"]], "lstmmodule (class in nlp_uncertainty_zoo.models.lstm)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTMModule"]], "layerwiselstm (class in nlp_uncertainty_zoo.models.lstm)": [[8, "nlp_uncertainty_zoo.models.lstm.LayerWiseLSTM"]], "forward() (nlp_uncertainty_zoo.models.lstm.cellwiselstm method)": [[8, "nlp_uncertainty_zoo.models.lstm.CellWiseLSTM.forward"]], "forward() (nlp_uncertainty_zoo.models.lstm.lstmmodule method)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTMModule.forward"]], "forward() (nlp_uncertainty_zoo.models.lstm.layerwiselstm method)": [[8, "nlp_uncertainty_zoo.models.lstm.LayerWiseLSTM.forward"]], "get_hidden_representation() (nlp_uncertainty_zoo.models.lstm.lstmmodule method)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTMModule.get_hidden_representation"]], "get_logits() (nlp_uncertainty_zoo.models.lstm.lstmmodule method)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTMModule.get_logits"]], "get_sequence_representation_from_hidden() (nlp_uncertainty_zoo.models.lstm.lstmmodule method)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTMModule.get_sequence_representation_from_hidden"]], "init_hidden_states() (nlp_uncertainty_zoo.models.lstm.lstmmodule method)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTMModule.init_hidden_states"]], "nlp_uncertainty_zoo.models.lstm": [[8, "module-nlp_uncertainty_zoo.models.lstm"]], "predict() (nlp_uncertainty_zoo.models.lstm.lstm method)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTM.predict"]], "training (nlp_uncertainty_zoo.models.lstm.cellwiselstm attribute)": [[8, "nlp_uncertainty_zoo.models.lstm.CellWiseLSTM.training"]], "training (nlp_uncertainty_zoo.models.lstm.lstmmodule attribute)": [[8, "nlp_uncertainty_zoo.models.lstm.LSTMModule.training"]], "training (nlp_uncertainty_zoo.models.lstm.layerwiselstm attribute)": [[8, "nlp_uncertainty_zoo.models.lstm.LayerWiseLSTM.training"]], "lstmensemble (class in nlp_uncertainty_zoo.models.lstm_ensemble)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsemble"]], "lstmensemblemodule (class in nlp_uncertainty_zoo.models.lstm_ensemble)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule"]], "fit() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemble method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsemble.fit"]], "forward() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemblemodule method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule.forward"]], "get_hidden_representation() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemblemodule method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule.get_hidden_representation"]], "get_logits() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemblemodule method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule.get_logits"]], "get_loss() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemble method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsemble.get_loss"]], "get_sequence_representation_from_hidden() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemblemodule static method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule.get_sequence_representation_from_hidden"]], "get_train_loss() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemble method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsemble.get_train_loss"]], "nlp_uncertainty_zoo.models.lstm_ensemble": [[9, "module-nlp_uncertainty_zoo.models.lstm_ensemble"]], "predict() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemblemodule method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule.predict"]], "to() (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemblemodule method)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule.to"]], "training (nlp_uncertainty_zoo.models.lstm_ensemble.lstmensemblemodule attribute)": [[9, "nlp_uncertainty_zoo.models.lstm_ensemble.LSTMEnsembleModule.training"]], "model (class in nlp_uncertainty_zoo.models.model)": [[10, "nlp_uncertainty_zoo.models.model.Model"]], "module (class in nlp_uncertainty_zoo.models.model)": [[10, "nlp_uncertainty_zoo.models.model.Module"]], "multipredictionmixin (class in nlp_uncertainty_zoo.models.model)": [[10, "nlp_uncertainty_zoo.models.model.MultiPredictionMixin"]], "available_uncertainty_metrics (nlp_uncertainty_zoo.models.model.model property)": [[10, "nlp_uncertainty_zoo.models.model.Model.available_uncertainty_metrics"]], "available_uncertainty_metrics (nlp_uncertainty_zoo.models.model.module property)": [[10, "nlp_uncertainty_zoo.models.model.Module.available_uncertainty_metrics"]], "compute_loss_weights() (nlp_uncertainty_zoo.models.model.model method)": [[10, "nlp_uncertainty_zoo.models.model.Model.compute_loss_weights"]], "eval() (nlp_uncertainty_zoo.models.model.model method)": [[10, "nlp_uncertainty_zoo.models.model.Model.eval"]], "fit() (nlp_uncertainty_zoo.models.model.model method)": [[10, "nlp_uncertainty_zoo.models.model.Model.fit"]], "forward() (nlp_uncertainty_zoo.models.model.module method)": [[10, "nlp_uncertainty_zoo.models.model.Module.forward"]], "get_hidden_representation() (nlp_uncertainty_zoo.models.model.module method)": [[10, "nlp_uncertainty_zoo.models.model.Module.get_hidden_representation"]], "get_logits() (nlp_uncertainty_zoo.models.model.module method)": [[10, "nlp_uncertainty_zoo.models.model.Module.get_logits"]], "get_loss() (nlp_uncertainty_zoo.models.model.model method)": [[10, "nlp_uncertainty_zoo.models.model.Model.get_loss"]], "get_num_learnable_parameters() (nlp_uncertainty_zoo.models.model.module method)": [[10, "nlp_uncertainty_zoo.models.model.Module.get_num_learnable_parameters"]], "get_sequence_representation() (nlp_uncertainty_zoo.models.model.module method)": [[10, "nlp_uncertainty_zoo.models.model.Module.get_sequence_representation"]], "get_sequence_representation_from_hidden() (nlp_uncertainty_zoo.models.model.module method)": [[10, "nlp_uncertainty_zoo.models.model.Module.get_sequence_representation_from_hidden"]], "get_uncertainty() (nlp_uncertainty_zoo.models.model.model method)": [[10, "nlp_uncertainty_zoo.models.model.Model.get_uncertainty"]], "get_uncertainty() (nlp_uncertainty_zoo.models.model.module method)": [[10, "nlp_uncertainty_zoo.models.model.Module.get_uncertainty"]], "load() (nlp_uncertainty_zoo.models.model.model static method)": [[10, "nlp_uncertainty_zoo.models.model.Model.load"]], "nlp_uncertainty_zoo.models.model": [[10, "module-nlp_uncertainty_zoo.models.model"]], "predict() (nlp_uncertainty_zoo.models.model.model method)": [[10, "nlp_uncertainty_zoo.models.model.Model.predict"]], "predict() (nlp_uncertainty_zoo.models.model.module method)": [[10, "nlp_uncertainty_zoo.models.model.Module.predict"]], "to() (nlp_uncertainty_zoo.models.model.model method)": [[10, "nlp_uncertainty_zoo.models.model.Model.to"]], "training (nlp_uncertainty_zoo.models.model.module attribute)": [[10, "nlp_uncertainty_zoo.models.model.Module.training"]], "sngpbert (class in nlp_uncertainty_zoo.models.sngp_transformer)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBert"]], "sngpbertmodule (class in nlp_uncertainty_zoo.models.sngp_transformer)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBertModule"]], "sngpmodule (class in nlp_uncertainty_zoo.models.sngp_transformer)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPModule"]], "sngptransformer (class in nlp_uncertainty_zoo.models.sngp_transformer)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPTransformer"]], "sngptransformermodule (class in nlp_uncertainty_zoo.models.sngp_transformer)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPTransformerModule"]], "forward() (nlp_uncertainty_zoo.models.sngp_transformer.sngpbertmodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBertModule.forward"]], "forward() (nlp_uncertainty_zoo.models.sngp_transformer.sngpmodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPModule.forward"]], "forward() (nlp_uncertainty_zoo.models.sngp_transformer.sngptransformermodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPTransformerModule.forward"]], "get_hidden_representation() (nlp_uncertainty_zoo.models.sngp_transformer.sngptransformermodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPTransformerModule.get_hidden_representation"]], "get_logits() (nlp_uncertainty_zoo.models.sngp_transformer.sngpbertmodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBertModule.get_logits"]], "get_logits() (nlp_uncertainty_zoo.models.sngp_transformer.sngpmodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPModule.get_logits"]], "get_logits() (nlp_uncertainty_zoo.models.sngp_transformer.sngptransformermodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPTransformerModule.get_logits"]], "get_loss() (nlp_uncertainty_zoo.models.sngp_transformer.sngpbert method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBert.get_loss"]], "invert_sigma_hat() (nlp_uncertainty_zoo.models.sngp_transformer.sngpmodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPModule.invert_sigma_hat"]], "nlp_uncertainty_zoo.models.sngp_transformer": [[11, "module-nlp_uncertainty_zoo.models.sngp_transformer"]], "predict() (nlp_uncertainty_zoo.models.sngp_transformer.sngpbertmodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBertModule.predict"]], "predict() (nlp_uncertainty_zoo.models.sngp_transformer.sngpmodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPModule.predict"]], "predict() (nlp_uncertainty_zoo.models.sngp_transformer.sngptransformermodule method)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPTransformerModule.predict"]], "training (nlp_uncertainty_zoo.models.sngp_transformer.sngpbertmodule attribute)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPBertModule.training"]], "training (nlp_uncertainty_zoo.models.sngp_transformer.sngpmodule attribute)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPModule.training"]], "training (nlp_uncertainty_zoo.models.sngp_transformer.sngptransformermodule attribute)": [[11, "nlp_uncertainty_zoo.models.sngp_transformer.SNGPTransformerModule.training"]], "spectralbertmodule (class in nlp_uncertainty_zoo.models.spectral)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralBertModule"]], "spectralnormfc (class in nlp_uncertainty_zoo.models.spectral)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralNormFC"]], "spectraltransformermodule (class in nlp_uncertainty_zoo.models.spectral)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralTransformerModule"]], "apply() (nlp_uncertainty_zoo.models.spectral.spectralnormfc static method)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralNormFC.apply"]], "compute_weight() (nlp_uncertainty_zoo.models.spectral.spectralnormfc method)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralNormFC.compute_weight"]], "dim (nlp_uncertainty_zoo.models.spectral.spectralnormfc attribute)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralNormFC.dim"]], "eps (nlp_uncertainty_zoo.models.spectral.spectralnormfc attribute)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralNormFC.eps"]], "n_power_iterations (nlp_uncertainty_zoo.models.spectral.spectralnormfc attribute)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralNormFC.n_power_iterations"]], "name (nlp_uncertainty_zoo.models.spectral.spectralnormfc attribute)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralNormFC.name"]], "nlp_uncertainty_zoo.models.spectral": [[12, "module-nlp_uncertainty_zoo.models.spectral"]], "spectral_norm_fc() (in module nlp_uncertainty_zoo.models.spectral)": [[12, "nlp_uncertainty_zoo.models.spectral.spectral_norm_fc"]], "training (nlp_uncertainty_zoo.models.spectral.spectralbertmodule attribute)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralBertModule.training"]], "training (nlp_uncertainty_zoo.models.spectral.spectraltransformermodule attribute)": [[12, "nlp_uncertainty_zoo.models.spectral.SpectralTransformerModule.training"]], "sttaucell (class in nlp_uncertainty_zoo.models.st_tau_lstm)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauCell"]], "sttaulstm (class in nlp_uncertainty_zoo.models.st_tau_lstm)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauLSTM"]], "sttaulstmmodule (class in nlp_uncertainty_zoo.models.st_tau_lstm)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauLSTMModule"]], "bias (nlp_uncertainty_zoo.models.st_tau_lstm.sttaucell attribute)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauCell.bias"]], "forward() (nlp_uncertainty_zoo.models.st_tau_lstm.sttaucell method)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauCell.forward"]], "get_logits() (nlp_uncertainty_zoo.models.st_tau_lstm.sttaulstmmodule method)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauLSTMModule.get_logits"]], "hidden_size (nlp_uncertainty_zoo.models.st_tau_lstm.sttaucell attribute)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauCell.hidden_size"]], "input_size (nlp_uncertainty_zoo.models.st_tau_lstm.sttaucell attribute)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauCell.input_size"]], "nlp_uncertainty_zoo.models.st_tau_lstm": [[13, "module-nlp_uncertainty_zoo.models.st_tau_lstm"]], "predict() (nlp_uncertainty_zoo.models.st_tau_lstm.sttaulstmmodule method)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauLSTMModule.predict"]], "training (nlp_uncertainty_zoo.models.st_tau_lstm.sttaulstmmodule attribute)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauLSTMModule.training"]], "weight_hh (nlp_uncertainty_zoo.models.st_tau_lstm.sttaucell attribute)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauCell.weight_hh"]], "weight_ih (nlp_uncertainty_zoo.models.st_tau_lstm.sttaucell attribute)": [[13, "nlp_uncertainty_zoo.models.st_tau_lstm.STTauCell.weight_ih"]], "positionalembedding (class in nlp_uncertainty_zoo.models.transformer)": [[14, "nlp_uncertainty_zoo.models.transformer.PositionalEmbedding"]], "transformer (class in nlp_uncertainty_zoo.models.transformer)": [[14, "nlp_uncertainty_zoo.models.transformer.Transformer"]], "transformermodule (class in nlp_uncertainty_zoo.models.transformer)": [[14, "nlp_uncertainty_zoo.models.transformer.TransformerModule"]], "forward() (nlp_uncertainty_zoo.models.transformer.positionalembedding method)": [[14, "nlp_uncertainty_zoo.models.transformer.PositionalEmbedding.forward"]], "forward() (nlp_uncertainty_zoo.models.transformer.transformermodule method)": [[14, "nlp_uncertainty_zoo.models.transformer.TransformerModule.forward"]], "get_hidden_representation() (nlp_uncertainty_zoo.models.transformer.transformermodule method)": [[14, "nlp_uncertainty_zoo.models.transformer.TransformerModule.get_hidden_representation"]], "get_logits() (nlp_uncertainty_zoo.models.transformer.transformermodule method)": [[14, "nlp_uncertainty_zoo.models.transformer.TransformerModule.get_logits"]], "get_sequence_representation() (nlp_uncertainty_zoo.models.transformer.transformermodule method)": [[14, "nlp_uncertainty_zoo.models.transformer.TransformerModule.get_sequence_representation"]], "get_sequence_representation_from_hidden() (nlp_uncertainty_zoo.models.transformer.transformermodule method)": [[14, "nlp_uncertainty_zoo.models.transformer.TransformerModule.get_sequence_representation_from_hidden"]], "nlp_uncertainty_zoo.models.transformer": [[14, "module-nlp_uncertainty_zoo.models.transformer"]], "training (nlp_uncertainty_zoo.models.transformer.positionalembedding attribute)": [[14, "nlp_uncertainty_zoo.models.transformer.PositionalEmbedding.training"]], "training (nlp_uncertainty_zoo.models.transformer.transformermodule attribute)": [[14, "nlp_uncertainty_zoo.models.transformer.TransformerModule.training"]], "variationaldropout (class in nlp_uncertainty_zoo.models.variational_lstm)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalDropout"]], "variationallstm (class in nlp_uncertainty_zoo.models.variational_lstm)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTM"]], "variationallstmmodule (class in nlp_uncertainty_zoo.models.variational_lstm)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule"]], "forward() (nlp_uncertainty_zoo.models.variational_lstm.variationaldropout method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalDropout.forward"]], "forward() (nlp_uncertainty_zoo.models.variational_lstm.variationallstmmodule method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule.forward"]], "get_hidden_representation() (nlp_uncertainty_zoo.models.variational_lstm.variationallstmmodule method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule.get_hidden_representation"]], "get_logits() (nlp_uncertainty_zoo.models.variational_lstm.variationallstmmodule method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule.get_logits"]], "get_sequence_representation_from_hidden() (nlp_uncertainty_zoo.models.variational_lstm.variationallstmmodule method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule.get_sequence_representation_from_hidden"]], "init_hidden_states() (nlp_uncertainty_zoo.models.variational_lstm.variationallstmmodule method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule.init_hidden_states"]], "nlp_uncertainty_zoo.models.variational_lstm": [[15, "module-nlp_uncertainty_zoo.models.variational_lstm"]], "predict() (nlp_uncertainty_zoo.models.variational_lstm.variationallstmmodule method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule.predict"]], "sample() (nlp_uncertainty_zoo.models.variational_lstm.variationaldropout method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalDropout.sample"]], "sample_masks() (nlp_uncertainty_zoo.models.variational_lstm.variationallstmmodule method)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule.sample_masks"]], "training (nlp_uncertainty_zoo.models.variational_lstm.variationaldropout attribute)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalDropout.training"]], "training (nlp_uncertainty_zoo.models.variational_lstm.variationallstmmodule attribute)": [[15, "nlp_uncertainty_zoo.models.variational_lstm.VariationalLSTMModule.training"]], "variationalbert (class in nlp_uncertainty_zoo.models.variational_transformer)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalBert"]], "variationalbertmodule (class in nlp_uncertainty_zoo.models.variational_transformer)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalBertModule"]], "variationaltransformer (class in nlp_uncertainty_zoo.models.variational_transformer)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalTransformer"]], "variationaltransformermodule (class in nlp_uncertainty_zoo.models.variational_transformer)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalTransformerModule"]], "eval() (nlp_uncertainty_zoo.models.variational_transformer.variationalbertmodule method)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalBertModule.eval"]], "eval() (nlp_uncertainty_zoo.models.variational_transformer.variationaltransformermodule method)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalTransformerModule.eval"]], "get_logits() (nlp_uncertainty_zoo.models.variational_transformer.variationalbertmodule method)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalBertModule.get_logits"]], "get_logits() (nlp_uncertainty_zoo.models.variational_transformer.variationaltransformermodule method)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalTransformerModule.get_logits"]], "nlp_uncertainty_zoo.models.variational_transformer": [[16, "module-nlp_uncertainty_zoo.models.variational_transformer"]], "predict() (nlp_uncertainty_zoo.models.variational_transformer.variationalbertmodule method)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalBertModule.predict"]], "predict() (nlp_uncertainty_zoo.models.variational_transformer.variationaltransformermodule method)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalTransformerModule.predict"]], "training (nlp_uncertainty_zoo.models.variational_transformer.variationalbertmodule attribute)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalBertModule.training"]], "training (nlp_uncertainty_zoo.models.variational_transformer.variationaltransformermodule attribute)": [[16, "nlp_uncertainty_zoo.models.variational_transformer.VariationalTransformerModule.training"]], "ace() (in module nlp_uncertainty_zoo.utils.calibration_eval)": [[18, "nlp_uncertainty_zoo.utils.calibration_eval.ace"]], "coverage_percentage() (in module nlp_uncertainty_zoo.utils.calibration_eval)": [[18, "nlp_uncertainty_zoo.utils.calibration_eval.coverage_percentage"]], "coverage_width() (in module nlp_uncertainty_zoo.utils.calibration_eval)": [[18, "nlp_uncertainty_zoo.utils.calibration_eval.coverage_width"]], "ece() (in module nlp_uncertainty_zoo.utils.calibration_eval)": [[18, "nlp_uncertainty_zoo.utils.calibration_eval.ece"]], "evaluate_calibration() (in module nlp_uncertainty_zoo.utils.calibration_eval)": [[18, "nlp_uncertainty_zoo.utils.calibration_eval.evaluate_calibration"]], "nlp_uncertainty_zoo.utils.calibration_eval": [[18, "module-nlp_uncertainty_zoo.utils.calibration_eval"]], "sce() (in module nlp_uncertainty_zoo.utils.calibration_eval)": [[18, "nlp_uncertainty_zoo.utils.calibration_eval.sce"]], "nlp_uncertainty_zoo.utils.custom_types": [[19, "module-nlp_uncertainty_zoo.utils.custom_types"]], "classificationdatasetbuilder (class in nlp_uncertainty_zoo.utils.data)": [[20, "nlp_uncertainty_zoo.utils.data.ClassificationDatasetBuilder"]], "datasetbuilder (class in nlp_uncertainty_zoo.utils.data)": [[20, "nlp_uncertainty_zoo.utils.data.DatasetBuilder"]], "languagemodellingdatasetbuilder (class in nlp_uncertainty_zoo.utils.data)": [[20, "nlp_uncertainty_zoo.utils.data.LanguageModellingDatasetBuilder"]], "modifieddatacollatorforlanguagemodeling (class in nlp_uncertainty_zoo.utils.data)": [[20, "nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling"]], "build() (nlp_uncertainty_zoo.utils.data.classificationdatasetbuilder method)": [[20, "nlp_uncertainty_zoo.utils.data.ClassificationDatasetBuilder.build"]], "build() (nlp_uncertainty_zoo.utils.data.datasetbuilder method)": [[20, "nlp_uncertainty_zoo.utils.data.DatasetBuilder.build"]], "build() (nlp_uncertainty_zoo.utils.data.languagemodellingdatasetbuilder method)": [[20, "nlp_uncertainty_zoo.utils.data.LanguageModellingDatasetBuilder.build"]], "mlm (nlp_uncertainty_zoo.utils.data.modifieddatacollatorforlanguagemodeling attribute)": [[20, "nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling.mlm"]], "mlm_probability (nlp_uncertainty_zoo.utils.data.modifieddatacollatorforlanguagemodeling attribute)": [[20, "nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling.mlm_probability"]], "nlp_uncertainty_zoo.utils.data": [[20, "module-nlp_uncertainty_zoo.utils.data"]], "pad_to_multiple_of (nlp_uncertainty_zoo.utils.data.modifieddatacollatorforlanguagemodeling attribute)": [[20, "nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling.pad_to_multiple_of"]], "tokenizer (nlp_uncertainty_zoo.utils.data.modifieddatacollatorforlanguagemodeling attribute)": [[20, "nlp_uncertainty_zoo.utils.data.ModifiedDataCollatorForLanguageModeling.tokenizer"]], "dempster_shafer() (in module nlp_uncertainty_zoo.utils.metrics)": [[21, "nlp_uncertainty_zoo.utils.metrics.dempster_shafer"]], "max_prob() (in module nlp_uncertainty_zoo.utils.metrics)": [[21, "nlp_uncertainty_zoo.utils.metrics.max_prob"]], "mutual_information() (in module nlp_uncertainty_zoo.utils.metrics)": [[21, "nlp_uncertainty_zoo.utils.metrics.mutual_information"]], "nlp_uncertainty_zoo.utils.metrics": [[21, "module-nlp_uncertainty_zoo.utils.metrics"]], "predictive_entropy() (in module nlp_uncertainty_zoo.utils.metrics)": [[21, "nlp_uncertainty_zoo.utils.metrics.predictive_entropy"]], "softmax_gap() (in module nlp_uncertainty_zoo.utils.metrics)": [[21, "nlp_uncertainty_zoo.utils.metrics.softmax_gap"]], "variance() (in module nlp_uncertainty_zoo.utils.metrics)": [[21, "nlp_uncertainty_zoo.utils.metrics.variance"]], "languagemodellingsampler (class in nlp_uncertainty_zoo.utils.samplers)": [[22, "nlp_uncertainty_zoo.utils.samplers.LanguageModellingSampler"]], "sequenceclassificationsampler (class in nlp_uncertainty_zoo.utils.samplers)": [[22, "nlp_uncertainty_zoo.utils.samplers.SequenceClassificationSampler"]], "subsampler (class in nlp_uncertainty_zoo.utils.samplers)": [[22, "nlp_uncertainty_zoo.utils.samplers.Subsampler"]], "tokenclassificationsampler (class in nlp_uncertainty_zoo.utils.samplers)": [[22, "nlp_uncertainty_zoo.utils.samplers.TokenClassificationSampler"]], "create_probs_from_dict() (in module nlp_uncertainty_zoo.utils.samplers)": [[22, "nlp_uncertainty_zoo.utils.samplers.create_probs_from_dict"]], "merge_freq_dicts() (in module nlp_uncertainty_zoo.utils.samplers)": [[22, "nlp_uncertainty_zoo.utils.samplers.merge_freq_dicts"]], "merge_instance_dicts() (in module nlp_uncertainty_zoo.utils.samplers)": [[22, "nlp_uncertainty_zoo.utils.samplers.merge_instance_dicts"]], "nlp_uncertainty_zoo.utils.samplers": [[22, "module-nlp_uncertainty_zoo.utils.samplers"]], "evaluate_task() (in module nlp_uncertainty_zoo.utils.task_eval)": [[23, "nlp_uncertainty_zoo.utils.task_eval.evaluate_task"]], "nlp_uncertainty_zoo.utils.task_eval": [[23, "module-nlp_uncertainty_zoo.utils.task_eval"]], "aupr() (in module nlp_uncertainty_zoo.utils.uncertainty_eval)": [[24, "nlp_uncertainty_zoo.utils.uncertainty_eval.aupr"]], "auroc() (in module nlp_uncertainty_zoo.utils.uncertainty_eval)": [[24, "nlp_uncertainty_zoo.utils.uncertainty_eval.auroc"]], "evaluate_uncertainty() (in module nlp_uncertainty_zoo.utils.uncertainty_eval)": [[24, "nlp_uncertainty_zoo.utils.uncertainty_eval.evaluate_uncertainty"]], "kendalls_tau() (in module nlp_uncertainty_zoo.utils.uncertainty_eval)": [[24, "nlp_uncertainty_zoo.utils.uncertainty_eval.kendalls_tau"]], "nlp_uncertainty_zoo.utils.uncertainty_eval": [[24, "module-nlp_uncertainty_zoo.utils.uncertainty_eval"]]}}) \ No newline at end of file diff --git a/nlp_uncertainty_zoo/tests/test_module_functions.py b/nlp_uncertainty_zoo/tests/test_module_functions.py index 851235a..de4412b 100644 --- a/nlp_uncertainty_zoo/tests/test_module_functions.py +++ b/nlp_uncertainty_zoo/tests/test_module_functions.py @@ -22,7 +22,6 @@ # PROJECT from nlp_uncertainty_zoo.config import AVAILABLE_MODELS, DEFAULT_PARAMS from nlp_uncertainty_zoo.models.model import Model, MultiPredictionMixin -from nlp_uncertainty_zoo.models import TransformerModule # CONST TAKE_LANGUAGE_MODELING_HYPERPARAMS_FROM = "language_modelling" diff --git a/setup.py b/setup.py index 31c8c43..40e9ada 100644 --- a/setup.py +++ b/setup.py @@ -8,7 +8,7 @@ setup( name="nlp-uncertainty-zoo", - version="0.9.0", + version="1.0.0", author="Dennis Ulmer", description="PyTorch Implementation of Models used for Uncertainty Estimation in Natural Language Processing.", long_description=long_description,