From 679e1d4a6ab6c5a093e298cf4aa08d7f0736734f Mon Sep 17 00:00:00 2001 From: Eduardo Carvalho Date: Tue, 12 Jan 2021 19:16:49 +0100 Subject: [PATCH] chore: release v3.1.0 --- CHANGELOG.md | 14 +++++ .../pytorch_tabnet/abstract_model.html | 21 +++++-- docs/_modules/pytorch_tabnet/callbacks.html | 6 +- docs/_modules/pytorch_tabnet/metrics.html | 8 +-- .../pytorch_tabnet/multiclass_utils.html | 13 +++- docs/_modules/pytorch_tabnet/multitask.html | 4 +- docs/_modules/pytorch_tabnet/pretraining.html | 2 +- .../pytorch_tabnet/pretraining_utils.html | 2 +- docs/_modules/pytorch_tabnet/sparsemax.html | 2 +- docs/_modules/pytorch_tabnet/tab_model.html | 7 ++- docs/_modules/pytorch_tabnet/tab_network.html | 38 ++++++------ docs/_modules/pytorch_tabnet/utils.html | 11 +++- docs/_sources/generated_docs/README.md.txt | 6 +- docs/generated_docs/README.html | 5 +- docs/generated_docs/pytorch_tabnet.html | 61 +++++++++++++++---- docs/genindex.html | 10 ++- docs/searchindex.js | 2 +- pyproject.toml | 2 +- 18 files changed, 155 insertions(+), 59 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6702ccce..08c0de67 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,18 @@ +# [3.1.0](https://github.com/dreamquark-ai/tabnet/compare/v3.0.0...v3.1.0) (2021-01-12) + + +### Bug Fixes + +* n_a not being used ([7ae20c9](https://github.com/dreamquark-ai/tabnet/commit/7ae20c98a601da95040b9ecf79eac19f1d3e4a7b)) + + +### Features + +* save and load preds_mapper ([cab643b](https://github.com/dreamquark-ai/tabnet/commit/cab643b156fdecfded51d70d29072fc43f397bbb)) + + + # [3.0.0](https://github.com/dreamquark-ai/tabnet/compare/v2.0.1...v3.0.0) (2020-12-15) diff --git a/docs/_modules/pytorch_tabnet/abstract_model.html b/docs/_modules/pytorch_tabnet/abstract_model.html index 03e82c1e..21b10933 100644 --- a/docs/_modules/pytorch_tabnet/abstract_model.html +++ b/docs/_modules/pytorch_tabnet/abstract_model.html @@ -170,6 +170,7 @@

Source code for pytorch_tabnet.abstract_model

validate_eval_set, create_dataloaders, define_device, + ComplexEncoder, ) from pytorch_tabnet.callbacks import ( CallbackContainer, @@ -491,6 +492,10 @@

Source code for pytorch_tabnet.abstract_model

self.network.load_state_dict(update_state_dict)
+
[docs] def load_class_attrs(self, class_attrs): + for attr_name, attr_value in class_attrs.items(): + setattr(self, attr_name, attr_value)
+
[docs] def save_model(self, path): """Saving TabNet model in two distinct files. @@ -506,19 +511,26 @@

Source code for pytorch_tabnet.abstract_model

""" saved_params = {} + init_params = {} for key, val in self.get_params().items(): if isinstance(val, type): # Don't save torch specific params continue else: - saved_params[key] = val + init_params[key] = val + saved_params["init_params"] = init_params + + class_attrs = { + "preds_mapper": self.preds_mapper + } + saved_params["class_attrs"] = class_attrs # Create folder Path(path).mkdir(parents=True, exist_ok=True) # Save models params with open(Path(path).joinpath("model_params.json"), "w", encoding="utf8") as f: - json.dump(saved_params, f) + json.dump(saved_params, f, cls=ComplexEncoder) # Save state_dict torch.save(self.network.state_dict(), Path(path).joinpath("network.pt")) @@ -539,7 +551,7 @@

Source code for pytorch_tabnet.abstract_model

with zipfile.ZipFile(filepath) as z: with z.open("model_params.json") as f: loaded_params = json.load(f) - loaded_params["device_name"] = self.device_name + loaded_params["init_params"]["device_name"] = self.device_name with z.open("network.pt") as f: try: saved_state_dict = torch.load(f, map_location=self.device) @@ -554,11 +566,12 @@

Source code for pytorch_tabnet.abstract_model

except KeyError: raise KeyError("Your zip file is missing at least one component") - self.__init__(**loaded_params) + self.__init__(**loaded_params["init_params"]) self._set_network() self.network.load_state_dict(saved_state_dict) self.network.eval() + self.load_class_attrs(loaded_params["class_attrs"]) return
diff --git a/docs/_modules/pytorch_tabnet/callbacks.html b/docs/_modules/pytorch_tabnet/callbacks.html index 2ccd6e86..a59b2516 100644 --- a/docs/_modules/pytorch_tabnet/callbacks.html +++ b/docs/_modules/pytorch_tabnet/callbacks.html @@ -265,8 +265,8 @@

Source code for pytorch_tabnet.callbacks

         minimum change in monitored value to qualify as improvement.
         This number should be positive.
     patience : integer
-        number of epochs to wait for improvment before terminating.
-        the counter be reset after each improvment
+        number of epochs to wait for improvement before terminating.
+        the counter be reset after each improvement
 
     """
 
@@ -312,7 +312,7 @@ 

Source code for pytorch_tabnet.callbacks

             self.trainer.network.load_state_dict(self.best_weights)
 
         if self.stopped_epoch > 0:
-            msg = f"\nEarly stopping occured at epoch {self.stopped_epoch}"
+            msg = f"\nEarly stopping occurred at epoch {self.stopped_epoch}"
             msg += (
                 f" with best_epoch = {self.best_epoch} and "
                 + f"best_{self.early_stopping_metric} = {round(self.best_loss, 5)}"
diff --git a/docs/_modules/pytorch_tabnet/metrics.html b/docs/_modules/pytorch_tabnet/metrics.html
index e0a0db78..d807616e 100644
--- a/docs/_modules/pytorch_tabnet/metrics.html
+++ b/docs/_modules/pytorch_tabnet/metrics.html
@@ -182,7 +182,7 @@ 

Source code for pytorch_tabnet.metrics

     y_pred : torch.Tensor or np.array
         Reconstructed prediction (with embeddings)
     embedded_x : torch.Tensor
-        Orginal input embedded by network
+        Original input embedded by network
     obf_vars : torch.Tensor
         Binary mask for obfuscated variables.
         1 means the variable was obfuscated so reconstruction is based on this.
@@ -217,7 +217,7 @@ 

Source code for pytorch_tabnet.metrics

     y_pred : torch.Tensor or np.array
         Reconstructed prediction (with embeddings)
     embedded_x : torch.Tensor
-        Orginal input embedded by network
+        Original input embedded by network
     obf_vars : torch.Tensor
         Binary mask for obfuscated variables.
         1 means the variables was obfuscated so reconstruction is based on this.
@@ -509,7 +509,7 @@ 

Source code for pytorch_tabnet.metrics

 
[docs]class RMSLE(Metric): """ Mean squared logarithmic error regression loss. - Scikit-imeplementation: + Scikit-implementation: https://scikit-learn.org/stable/modules/generated/sklearn.metrics.mean_squared_log_error.html Note: In order to avoid error, negative predictions are clipped to 0. This means that you should clip negative predictions manually after calling predict. @@ -557,7 +557,7 @@

Source code for pytorch_tabnet.metrics

         y_pred : torch.Tensor or np.array
             Reconstructed prediction (with embeddings)
         embedded_x : torch.Tensor
-            Orginal input embedded by network
+            Original input embedded by network
         obf_vars : torch.Tensor
             Binary mask for obfuscated variables.
             1 means the variables was obfuscated so reconstruction is based on this.
diff --git a/docs/_modules/pytorch_tabnet/multiclass_utils.html b/docs/_modules/pytorch_tabnet/multiclass_utils.html
index 6b7501f5..e579c068 100644
--- a/docs/_modules/pytorch_tabnet/multiclass_utils.html
+++ b/docs/_modules/pytorch_tabnet/multiclass_utils.html
@@ -174,6 +174,7 @@ 

Source code for pytorch_tabnet.multiclass_utils

< import scipy.sparse as sp import numpy as np +import pandas as pd def _assert_all_finite(X, allow_nan=False): @@ -502,6 +503,14 @@

Source code for pytorch_tabnet.multiclass_utils

< return "binary" # [1, 2] or [["a"], ["b"]]
+
[docs]def check_unique_type(y): + target_types = pd.Series(y).map(type).unique() + if len(target_types) != 1: + raise TypeError( + f"Values on the target must have the same type. Target has types {target_types}" + )
+ +
[docs]def infer_output_dim(y_train): """ Infer output_dim from targets @@ -518,6 +527,7 @@

Source code for pytorch_tabnet.multiclass_utils

< train_labels : list Sorted list of initial classes """ + check_unique_type(y_train) train_labels = unique_labels(y_train) output_dim = len(train_labels) @@ -526,6 +536,7 @@

Source code for pytorch_tabnet.multiclass_utils

<
[docs]def check_output_dim(labels, y): if y is not None: + check_unique_type(y) valid_labels = unique_labels(y) if not set(valid_labels).issubset(set(labels)): raise ValueError( @@ -556,7 +567,7 @@

Source code for pytorch_tabnet.multiclass_utils

< if len(y_train.shape) < 2: raise ValueError( - "y_train shoud be of shape (n_examples, n_tasks)" + "y_train should be of shape (n_examples, n_tasks)" + f"but got {y_train.shape}" ) nb_tasks = y_train.shape[1] diff --git a/docs/_modules/pytorch_tabnet/multitask.html b/docs/_modules/pytorch_tabnet/multitask.html index 8279b9df..067feb01 100644 --- a/docs/_modules/pytorch_tabnet/multitask.html +++ b/docs/_modules/pytorch_tabnet/multitask.html @@ -233,7 +233,7 @@

Source code for pytorch_tabnet.multitask

             for classes in self.classes_
         ]
         self.preds_mapper = [
-            {index: class_label for index, class_label in enumerate(classes)}
+            {str(index): str(class_label) for index, class_label in enumerate(classes)}
             for classes in self.classes_
         ]
         self.updated_weights = weights
@@ -279,7 +279,7 @@ 

Source code for pytorch_tabnet.multitask

         results = [np.hstack(task_res) for task_res in results.values()]
         # map all task individually
         results = [
-            np.vectorize(self.preds_mapper[task_idx].get)(task_res)
+            np.vectorize(self.preds_mapper[task_idx].get)(task_res.astype(str))
             for task_idx, task_res in enumerate(results)
         ]
         return results
diff --git a/docs/_modules/pytorch_tabnet/pretraining.html b/docs/_modules/pytorch_tabnet/pretraining.html index ccb1f8e8..c15c3eed 100644 --- a/docs/_modules/pytorch_tabnet/pretraining.html +++ b/docs/_modules/pytorch_tabnet/pretraining.html @@ -236,7 +236,7 @@

Source code for pytorch_tabnet.pretraining

             a PyTorch loss function
             should be left to None for self supervised and non experts
         pretraining_ratio : float
-            Between 0 and 1, percentage of featue to mask for reconstruction
+            Between 0 and 1, percentage of feature to mask for reconstruction
         weights : np.array
             Sampling weights for each example.
         max_epochs : int
diff --git a/docs/_modules/pytorch_tabnet/pretraining_utils.html b/docs/_modules/pytorch_tabnet/pretraining_utils.html
index 276bbcda..43c1af09 100644
--- a/docs/_modules/pytorch_tabnet/pretraining_utils.html
+++ b/docs/_modules/pytorch_tabnet/pretraining_utils.html
@@ -168,7 +168,7 @@ 

Source code for pytorch_tabnet.pretraining_utils

X_train, eval_set, weights, batch_size, num_workers, drop_last, pin_memory ): """ - Create dataloaders with or wihtout subsampling depending on weights and balanced. + Create dataloaders with or without subsampling depending on weights and balanced. Parameters ---------- diff --git a/docs/_modules/pytorch_tabnet/sparsemax.html b/docs/_modules/pytorch_tabnet/sparsemax.html index 177f420c..0595e900 100644 --- a/docs/_modules/pytorch_tabnet/sparsemax.html +++ b/docs/_modules/pytorch_tabnet/sparsemax.html @@ -319,7 +319,7 @@

Source code for pytorch_tabnet.sparsemax

 
 
 
[docs]class Entmoid15(Function): - """ A highly optimized equivalent of labda x: Entmax15([x, 0]) """ + """ A highly optimized equivalent of lambda x: Entmax15([x, 0]) """
[docs] @staticmethod def forward(ctx, input): diff --git a/docs/_modules/pytorch_tabnet/tab_model.html b/docs/_modules/pytorch_tabnet/tab_model.html index da4bfd54..4c926370 100644 --- a/docs/_modules/pytorch_tabnet/tab_model.html +++ b/docs/_modules/pytorch_tabnet/tab_model.html @@ -174,7 +174,7 @@

Source code for pytorch_tabnet.tab_model

 
 
[docs] def weight_updater(self, weights): """ - Updates weights dictionnary according to target_mapper. + Updates weights dictionary according to target_mapper. Parameters ---------- @@ -217,7 +217,7 @@

Source code for pytorch_tabnet.tab_model

             class_label: index for index, class_label in enumerate(self.classes_)
         }
         self.preds_mapper = {
-            index: class_label for index, class_label in enumerate(self.classes_)
+            str(index): class_label for index, class_label in enumerate(self.classes_)
         }
         self.updated_weights = self.weight_updater(weights)
@@ -229,7 +229,7 @@

Source code for pytorch_tabnet.tab_model

 
 
[docs] def predict_func(self, outputs): outputs = np.argmax(outputs, axis=1) - return np.vectorize(self.preds_mapper.get)(outputs)
+ return np.vectorize(self.preds_mapper.get)(outputs.astype(str))
[docs] def predict_proba(self, X): """ @@ -290,6 +290,7 @@

Source code for pytorch_tabnet.tab_model

                   "Use reshape(-1, 1) for single regression."
             raise ValueError(msg)
         self.output_dim = y_train.shape[1]
+        self.preds_mapper = None
 
         self.updated_weights = weights
         filter_weights(self.updated_weights)
diff --git a/docs/_modules/pytorch_tabnet/tab_network.html b/docs/_modules/pytorch_tabnet/tab_network.html index 4c3064e7..81f9d77e 100644 --- a/docs/_modules/pytorch_tabnet/tab_network.html +++ b/docs/_modules/pytorch_tabnet/tab_network.html @@ -227,9 +227,9 @@

Source code for pytorch_tabnet.tab_network

         n_a : int
             Dimension of the attention  layer (usually between 4 and 64)
         n_steps : int
-            Number of sucessive steps in the newtork (usually betwenn 3 and 10)
+            Number of successive steps in the network (usually between 3 and 10)
         gamma : float
-            Float above 1, scaling factor for attention updates (usually betwenn 1.0 to 2.0)
+            Float above 1, scaling factor for attention updates (usually between 1.0 to 2.0)
         n_independent : int
             Number of independent GLU layer in each GLU block (default 2)
         n_shared : int
@@ -382,9 +382,9 @@ 

Source code for pytorch_tabnet.tab_network

         n_d : int
             Dimension of the prediction  layer (usually between 4 and 64)
         n_steps : int
-            Number of sucessive steps in the newtork (usually betwenn 3 and 10)
+            Number of successive steps in the network (usually between 3 and 10)
         gamma : float
-            Float above 1, scaling factor for attention updates (usually betwenn 1.0 to 2.0)
+            Float above 1, scaling factor for attention updates (usually between 1.0 to 2.0)
         n_independent : int
             Number of independent GLU layer in each GLU block (default 2)
         n_shared : int
@@ -478,7 +478,7 @@ 

Source code for pytorch_tabnet.tab_network

         if self.n_steps <= 0:
             raise ValueError("n_steps should be a positive integer.")
         if self.n_independent == 0 and self.n_shared == 0:
-            raise ValueError("n_shared and n_independant can't be both zero.")
+            raise ValueError("n_shared and n_independent can't be both zero.")
 
         self.virtual_batch_size = virtual_batch_size
         self.embedder = EmbeddingGenerator(input_dim, cat_dims, cat_idxs, cat_emb_dim)
@@ -489,7 +489,7 @@ 

Source code for pytorch_tabnet.tab_network

             input_dim=self.post_embed_dim,
             output_dim=self.post_embed_dim,
             n_d=n_d,
-            n_a=n_d,
+            n_a=n_a,
             n_steps=n_steps,
             gamma=gamma,
             n_independent=n_independent,
@@ -565,9 +565,9 @@ 

Source code for pytorch_tabnet.tab_network

         n_a : int
             Dimension of the attention  layer (usually between 4 and 64)
         n_steps : int
-            Number of sucessive steps in the newtork (usually betwenn 3 and 10)
+            Number of successive steps in the network (usually between 3 and 10)
         gamma : float
-            Float above 1, scaling factor for attention updates (usually betwenn 1.0 to 2.0)
+            Float above 1, scaling factor for attention updates (usually between 1.0 to 2.0)
         n_independent : int
             Number of independent GLU layer in each GLU block (default 2)
         n_shared : int
@@ -600,7 +600,7 @@ 

Source code for pytorch_tabnet.tab_network

             input_dim=input_dim,
             output_dim=output_dim,
             n_d=n_d,
-            n_a=n_d,
+            n_a=n_a,
             n_steps=n_steps,
             gamma=gamma,
             n_independent=n_independent,
@@ -673,9 +673,9 @@ 

Source code for pytorch_tabnet.tab_network

         n_a : int
             Dimension of the attention  layer (usually between 4 and 64)
         n_steps : int
-            Number of sucessive steps in the newtork (usually betwenn 3 and 10)
+            Number of successive steps in the network (usually between 3 and 10)
         gamma : float
-            Float above 1, scaling factor for attention updates (usually betwenn 1.0 to 2.0)
+            Float above 1, scaling factor for attention updates (usually between 1.0 to 2.0)
         cat_idxs : list of int
             Index of each categorical column in the dataset
         cat_dims : list of int
@@ -716,7 +716,7 @@ 

Source code for pytorch_tabnet.tab_network

         if self.n_steps <= 0:
             raise ValueError("n_steps should be a positive integer.")
         if self.n_independent == 0 and self.n_shared == 0:
-            raise ValueError("n_shared and n_independant can't be both zero.")
+            raise ValueError("n_shared and n_independent can't be both zero.")
 
         self.virtual_batch_size = virtual_batch_size
         self.embedder = EmbeddingGenerator(input_dim, cat_dims, cat_idxs, cat_emb_dim)
@@ -762,7 +762,7 @@ 

Source code for pytorch_tabnet.tab_network

         input_dim : int
             Input size
         output_dim : int
-            Outpu_size
+            Output_size
         virtual_batch_size : int
             Batch size for Ghost Batch Normalization
         momentum : float
@@ -815,10 +815,10 @@ 

Source code for pytorch_tabnet.tab_network

         input_dim : int
             Input size
         output_dim : int
-            Outpu_size
+            Output_size
         shared_layers : torch.nn.ModuleList
             The shared block that should be common to every step
-        n_glu_independant : int
+        n_glu_independent : int
             Number of independent GLU layers
         virtual_batch_size : int
             Batch size for Ghost Batch Normalization within GLU block(s)
@@ -865,7 +865,7 @@ 

Source code for pytorch_tabnet.tab_network

 
 
[docs]class GLU_Block(torch.nn.Module): """ - Independant GLU block, specific to each step + Independent GLU block, specific to each step """ def __init__( @@ -936,7 +936,7 @@

Source code for pytorch_tabnet.tab_network

     """
 
     def __init__(self, input_dim, cat_dims, cat_idxs, cat_emb_dim):
-        """This is an embedding module for an entier set of features
+        """This is an embedding module for an entire set of features
 
         Parameters
         ----------
@@ -949,7 +949,7 @@ 

Source code for pytorch_tabnet.tab_network

             Positional index for each categorical features in inputs
         cat_emb_dim : int or list of int
             Embedding dimension for each categorical features
-            If int, the same embdeding dimension will be used for all categorical features
+            If int, the same embedding dimension will be used for all categorical features
         """
         super(EmbeddingGenerator, self).__init__()
         if cat_dims == [] or cat_idxs == []:
@@ -988,7 +988,7 @@ 

Source code for pytorch_tabnet.tab_network

 
 
[docs] def forward(self, x): """ - Apply embdeddings to inputs + Apply embeddings to inputs Inputs should be (batch_size, input_dim) Outputs will be of size (batch_size, self.post_embed_dim) """ diff --git a/docs/_modules/pytorch_tabnet/utils.html b/docs/_modules/pytorch_tabnet/utils.html index 8d5c29af..a9c18e4f 100644 --- a/docs/_modules/pytorch_tabnet/utils.html +++ b/docs/_modules/pytorch_tabnet/utils.html @@ -161,6 +161,7 @@

Source code for pytorch_tabnet.utils

 import torch
 import numpy as np
 import scipy
+import json
 from sklearn.utils import check_array
 
 
@@ -262,7 +263,7 @@ 

Source code for pytorch_tabnet.utils

     X_train, y_train, eval_set, weights, batch_size, num_workers, drop_last, pin_memory
 ):
     """
-    Create dataloaders with or wihtout subsampling depending on weights and balanced.
+    Create dataloaders with or without subsampling depending on weights and balanced.
 
     Parameters
     ----------
@@ -486,6 +487,14 @@ 

Source code for pytorch_tabnet.utils

         return "cpu"
     else:
         return device_name
+ + +
[docs]class ComplexEncoder(json.JSONEncoder): +
[docs] def default(self, obj): + if isinstance(obj, np.int64): + return int(obj) + # Let the base class default method raise the TypeError + return json.JSONEncoder.default(self, obj)
diff --git a/docs/_sources/generated_docs/README.md.txt b/docs/_sources/generated_docs/README.md.txt index f5c7ef1c..049c9c49 100644 --- a/docs/_sources/generated_docs/README.md.txt +++ b/docs/_sources/generated_docs/README.md.txt @@ -70,6 +70,8 @@ clf.fit( preds = clf.predict(X_test) ``` +The targets on `y_train/y_valid` should contain a unique type (i.e. they must all be strings or integers). + ### Default eval_metric A few classical evaluation metrics are implemented (see bellow section for custom ones): @@ -146,7 +148,7 @@ clf.fit( ) ``` -The loss function has been normalized to be independant of `pretraining_ratio`, `batch_size` and number of features in the problem. +The loss function has been normalized to be independent of `pretraining_ratio`, `batch_size` and number of features in the problem. A self supervised loss greater than 1 means that your model is reconstructing worse than predicting the mean for each feature, a loss bellow 1 means that the model is doing better than predicting the mean. A complete example can be found within the notebook `pretraining_example.ipynb`. @@ -302,7 +304,7 @@ A complete example can be found within the notebook `pretraining_example.ipynb`. /!\ Only for TabNetClassifier Sampling parameter 0 : no sampling - 1 : automated sampling with inverse class occurences + 1 : automated sampling with inverse class occurrences dict : keys are classes, values are weights for each class - `loss_fn` : torch.loss or list of torch.loss diff --git a/docs/generated_docs/README.html b/docs/generated_docs/README.html index 5e787d5d..329f3a77 100644 --- a/docs/generated_docs/README.html +++ b/docs/generated_docs/README.html @@ -251,6 +251,7 @@

How to use it?preds = clf.predict(X_test)

+

The targets on y_train/y_valid should contain a unique type (i.e. they must all be strings or integers).

Default eval_metric

A few classical evaluation metrics are implemented (see bellow section for custom ones):

@@ -322,7 +323,7 @@

Semi-supervised pre-training)

-

The loss function has been normalized to be independant of pretraining_ratio, batch_size and number of features in the problem. +

The loss function has been normalized to be independent of pretraining_ratio, batch_size and number of features in the problem. A self supervised loss greater than 1 means that your model is reconstructing worse than predicting the mean for each feature, a loss bellow 1 means that the model is doing better than predicting the mean.

A complete example can be found within the notebook pretraining_example.ipynb.

/!\ : current implementation is trying to reconstruct the original inputs, but Batch Normalization applies a random transformation that can’t be deduced by a single line, making the reconstruction harder. Lowering the batch_size might make the pretraining easier.

@@ -443,7 +444,7 @@

Fit parametersloss_fn : torch.loss or list of torch.loss

diff --git a/docs/generated_docs/pytorch_tabnet.html b/docs/generated_docs/pytorch_tabnet.html index 5379b129..5583b3b0 100644 --- a/docs/generated_docs/pytorch_tabnet.html +++ b/docs/generated_docs/pytorch_tabnet.html @@ -178,6 +178,33 @@

pytorch_tabnet package

pytorch_tabnet.utils module

+
+
+class pytorch_tabnet.utils.ComplexEncoder(*, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, default=None)[source]
+

Bases: json.encoder.JSONEncoder

+
+
+default(obj)[source]
+

Implement this method in a subclass such that it returns +a serializable object for o, or calls the base implementation +(to raise a TypeError).

+

For example, to support arbitrary iterators, you could +implement default like this:

+
def default(self, o):
+    try:
+        iterable = iter(o)
+    except TypeError:
+        pass
+    else:
+        return list(iterable)
+    # Let the base class default method raise the TypeError
+    return JSONEncoder.default(self, o)
+
+
+
+ +
+
class pytorch_tabnet.utils.PredictDataset(x)[source]
@@ -208,7 +235,7 @@

pytorch_tabnet package
pytorch_tabnet.utils.create_dataloaders(X_train, y_train, eval_set, weights, batch_size, num_workers, drop_last, pin_memory)[source]
-

Create dataloaders with or wihtout subsampling depending on weights and balanced.

+

Create dataloaders with or without subsampling depending on weights and balanced.

Parameters
    @@ -353,7 +380,7 @@

    pytorch_tabnet package
    pytorch_tabnet.pretraining_utils.create_dataloaders(X_train, eval_set, weights, batch_size, num_workers, drop_last, pin_memory)[source]
    -

    Create dataloaders with or wihtout subsampling depending on weights and balanced.

    +

    Create dataloaders with or without subsampling depending on weights and balanced.

    Parameters
      @@ -437,7 +464,7 @@

      pytorch_tabnet package
      forward(x)[source]
      -

      Apply embdeddings to inputs +

      Apply embeddings to inputs Inputs should be (batch_size, input_dim) Outputs will be of size (batch_size, self.post_embed_dim)

    @@ -490,7 +517,7 @@

    pytorch_tabnet package class pytorch_tabnet.tab_network.GLU_Block(input_dim, output_dim, n_glu=2, first=False, shared_layers=None, virtual_batch_size=128, momentum=0.02)[source]

    Bases: torch.nn.modules.module.Module

    -

    Independant GLU block, specific to each step

    +

    Independent GLU block, specific to each step

    forward(x)[source]
    @@ -837,6 +864,11 @@

    Multi-class / multi-label utility functionpytorch_tabnet.multiclass_utils.check_output_dim(labels, y)[source]

    +
    +
    +pytorch_tabnet.multiclass_utils.check_unique_type(y)[source]
    +
    +
    pytorch_tabnet.multiclass_utils.infer_multitask_output(y_train)[source]
    @@ -1129,7 +1161,7 @@

    Multi-class / multi-label utility function
    weight_updater(weights)[source]
    -

    Updates weights dictionnary according to target_mapper.

    +

    Updates weights dictionary according to target_mapper.

    Parameters

    weights (bool or dict) – Given weights for balancing training.

    @@ -1360,6 +1392,11 @@

    Multi-class / multi-label utility functionlambda_sparse: float = 0.001

    +
    +
    +load_class_attrs(class_attrs)[source]
    +
    +
    load_model(filepath)[source]
    @@ -1638,8 +1675,8 @@

    Multi-class / multi-label utility function class pytorch_tabnet.sparsemax.Entmoid15[source]

    Bases: torch.autograd.function.Function

    -

    A highly optimized equivalent of labda x: Entmax15([x, 0])

    +

    A highly optimized equivalent of lambda x: Entmax15([x, 0])

    static backward(ctx, grad_output)[source]
    @@ -2200,7 +2237,7 @@

    Multi-class / multi-label utility functionclass pytorch_tabnet.metrics.RMSLE[source]

    Bases: pytorch_tabnet.metrics.Metric

    Mean squared logarithmic error regression loss. -Scikit-imeplementation: +Scikit-implementation: https://scikit-learn.org/stable/modules/generated/sklearn.metrics.mean_squared_log_error.html Note: In order to avoid error, negative predictions are clipped to 0. This means that you should clip negative predictions manually after calling predict.

    @@ -2215,7 +2252,7 @@

    Multi-class / multi-label utility functionParameters
    • y_pred (torch.Tensor or np.array) – Reconstructed prediction (with embeddings)

    • -
    • embedded_x (torch.Tensor) – Orginal input embedded by network

    • +
    • embedded_x (torch.Tensor) – Original input embedded by network

    • obf_vars (torch.Tensor) – Binary mask for obfuscated variables. 1 means the variables was obfuscated so reconstruction is based on this.

    @@ -2243,7 +2280,7 @@

    Multi-class / multi-label utility functionParameters
    • y_pred (torch.Tensor or np.array) – Reconstructed prediction (with embeddings)

    • -
    • embedded_x (torch.Tensor) – Orginal input embedded by network

    • +
    • embedded_x (torch.Tensor) – Original input embedded by network

    • obf_vars (torch.Tensor) – Binary mask for obfuscated variables. 1 means the variable was obfuscated so reconstruction is based on this.

    • eps (float) – A small floating point to avoid ZeroDivisionError diff --git a/docs/genindex.html b/docs/genindex.html index 1d21afba..c8dd5366 100644 --- a/docs/genindex.html +++ b/docs/genindex.html @@ -260,8 +260,12 @@

      C

    • check_metrics() (in module pytorch_tabnet.metrics)
    • check_output_dim() (in module pytorch_tabnet.multiclass_utils) +
    • +
    • check_unique_type() (in module pytorch_tabnet.multiclass_utils)
    • clip_value (pytorch_tabnet.abstract_model.TabModel attribute) +
    • +
    • ComplexEncoder (class in pytorch_tabnet.utils)
    • compute_loss() (pytorch_tabnet.abstract_model.TabModel method) @@ -291,10 +295,12 @@

      C

      D

      @@ -450,6 +456,8 @@

      L

      • lambda_sparse (pytorch_tabnet.abstract_model.TabModel attribute) +
      • +
      • load_class_attrs() (pytorch_tabnet.abstract_model.TabModel method)
      • load_model() (pytorch_tabnet.abstract_model.TabModel method)
      • diff --git a/docs/searchindex.js b/docs/searchindex.js index e0a0a50c..4d732e3f 100644 --- a/docs/searchindex.js +++ b/docs/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["generated_docs/README","generated_docs/pytorch_tabnet","index"],envversion:{"sphinx.domains.c":1,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":1,"sphinx.domains.index":1,"sphinx.domains.javascript":1,"sphinx.domains.math":2,"sphinx.domains.python":1,"sphinx.domains.rst":1,"sphinx.domains.std":1,"sphinx.ext.viewcode":1,sphinx:56},filenames:["generated_docs/README.md","generated_docs/pytorch_tabnet.rst","index.rst"],objects:{"pytorch_tabnet.abstract_model":{TabModel:[1,1,1,""]},"pytorch_tabnet.abstract_model.TabModel":{cat_dims:[1,2,1,""],cat_emb_dim:[1,2,1,""],cat_idxs:[1,2,1,""],clip_value:[1,2,1,""],compute_loss:[1,3,1,""],device_name:[1,2,1,""],epsilon:[1,2,1,""],explain:[1,3,1,""],fit:[1,3,1,""],gamma:[1,2,1,""],input_dim:[1,2,1,""],lambda_sparse:[1,2,1,""],load_model:[1,3,1,""],load_weights_from_unsupervised:[1,3,1,""],mask_type:[1,2,1,""],momentum:[1,2,1,""],n_a:[1,2,1,""],n_d:[1,2,1,""],n_independent:[1,2,1,""],n_shared:[1,2,1,""],n_steps:[1,2,1,""],optimizer_fn:[1,2,1,""],optimizer_params:[1,2,1,""],output_dim:[1,2,1,""],predict:[1,3,1,""],prepare_target:[1,3,1,""],save_model:[1,3,1,""],scheduler_fn:[1,2,1,""],scheduler_params:[1,2,1,""],seed:[1,2,1,""],update_fit_params:[1,3,1,""],verbose:[1,2,1,""]},"pytorch_tabnet.callbacks":{Callback:[1,1,1,""],CallbackContainer:[1,1,1,""],EarlyStopping:[1,1,1,""],History:[1,1,1,""],LRSchedulerCallback:[1,1,1,""]},"pytorch_tabnet.callbacks.Callback":{on_batch_begin:[1,3,1,""],on_batch_end:[1,3,1,""],on_epoch_begin:[1,3,1,""],on_epoch_end:[1,3,1,""],on_train_begin:[1,3,1,""],on_train_end:[1,3,1,""],set_params:[1,3,1,""],set_trainer:[1,3,1,""]},"pytorch_tabnet.callbacks.CallbackContainer":{append:[1,3,1,""],callbacks:[1,2,1,""],on_batch_begin:[1,3,1,""],on_batch_end:[1,3,1,""],on_epoch_begin:[1,3,1,""],on_epoch_end:[1,3,1,""],on_train_begin:[1,3,1,""],on_train_end:[1,3,1,""],set_params:[1,3,1,""],set_trainer:[1,3,1,""]},"pytorch_tabnet.callbacks.EarlyStopping":{early_stopping_metric:[1,2,1,""],is_maximize:[1,2,1,""],on_epoch_end:[1,3,1,""],on_train_end:[1,3,1,""],patience:[1,2,1,""],tol:[1,2,1,""]},"pytorch_tabnet.callbacks.History":{on_batch_end:[1,3,1,""],on_epoch_begin:[1,3,1,""],on_epoch_end:[1,3,1,""],on_train_begin:[1,3,1,""],trainer:[1,2,1,""],verbose:[1,2,1,""]},"pytorch_tabnet.callbacks.LRSchedulerCallback":{early_stopping_metric:[1,2,1,""],is_batch_level:[1,2,1,""],on_batch_end:[1,3,1,""],on_epoch_end:[1,3,1,""],optimizer:[1,2,1,""],scheduler_fn:[1,2,1,""],scheduler_params:[1,2,1,""]},"pytorch_tabnet.metrics":{AUC:[1,1,1,""],Accuracy:[1,1,1,""],BalancedAccuracy:[1,1,1,""],LogLoss:[1,1,1,""],MAE:[1,1,1,""],MSE:[1,1,1,""],Metric:[1,1,1,""],MetricContainer:[1,1,1,""],RMSE:[1,1,1,""],RMSLE:[1,1,1,""],UnsupMetricContainer:[1,1,1,""],UnsupervisedLoss:[1,4,1,""],UnsupervisedMetric:[1,1,1,""],check_metrics:[1,4,1,""]},"pytorch_tabnet.metrics.Metric":{get_metrics_by_names:[1,3,1,""]},"pytorch_tabnet.metrics.MetricContainer":{metric_names:[1,2,1,""],prefix:[1,2,1,""]},"pytorch_tabnet.metrics.UnsupMetricContainer":{metric_names:[1,2,1,""],prefix:[1,2,1,""]},"pytorch_tabnet.multiclass_utils":{assert_all_finite:[1,4,1,""],check_classification_targets:[1,4,1,""],check_output_dim:[1,4,1,""],infer_multitask_output:[1,4,1,""],infer_output_dim:[1,4,1,""],is_multilabel:[1,4,1,""],type_of_target:[1,4,1,""],unique_labels:[1,4,1,""]},"pytorch_tabnet.multitask":{TabNetMultiTaskClassifier:[1,1,1,""]},"pytorch_tabnet.multitask.TabNetMultiTaskClassifier":{cat_dims:[1,2,1,""],cat_idxs:[1,2,1,""],compute_loss:[1,3,1,""],optimizer_params:[1,2,1,""],predict:[1,3,1,""],predict_proba:[1,3,1,""],prepare_target:[1,3,1,""],scheduler_params:[1,2,1,""],stack_batches:[1,3,1,""],update_fit_params:[1,3,1,""]},"pytorch_tabnet.pretraining":{TabNetPretrainer:[1,1,1,""]},"pytorch_tabnet.pretraining.TabNetPretrainer":{cat_dims:[1,2,1,""],cat_idxs:[1,2,1,""],compute_loss:[1,3,1,""],fit:[1,3,1,""],optimizer_params:[1,2,1,""],predict:[1,3,1,""],prepare_target:[1,3,1,""],scheduler_params:[1,2,1,""],stack_batches:[1,3,1,""],update_fit_params:[1,3,1,""]},"pytorch_tabnet.pretraining_utils":{create_dataloaders:[1,4,1,""],validate_eval_set:[1,4,1,""]},"pytorch_tabnet.sparsemax":{Entmax15:[1,1,1,""],Entmax15Function:[1,1,1,""],Entmoid15:[1,1,1,""],Sparsemax:[1,1,1,""],SparsemaxFunction:[1,1,1,""],entmax15:[1,4,1,""],entmoid15:[1,4,1,""],sparsemax:[1,4,1,""]},"pytorch_tabnet.sparsemax.Entmax15":{forward:[1,3,1,""]},"pytorch_tabnet.sparsemax.Entmax15Function":{backward:[1,3,1,""],forward:[1,3,1,""]},"pytorch_tabnet.sparsemax.Entmoid15":{backward:[1,3,1,""],forward:[1,3,1,""]},"pytorch_tabnet.sparsemax.Sparsemax":{forward:[1,3,1,""]},"pytorch_tabnet.sparsemax.SparsemaxFunction":{backward:[1,3,1,""],forward:[1,3,1,""]},"pytorch_tabnet.tab_model":{TabNetClassifier:[1,1,1,""],TabNetRegressor:[1,1,1,""]},"pytorch_tabnet.tab_model.TabNetClassifier":{cat_dims:[1,2,1,""],cat_idxs:[1,2,1,""],compute_loss:[1,3,1,""],optimizer_params:[1,2,1,""],predict_func:[1,3,1,""],predict_proba:[1,3,1,""],prepare_target:[1,3,1,""],scheduler_params:[1,2,1,""],stack_batches:[1,3,1,""],update_fit_params:[1,3,1,""],weight_updater:[1,3,1,""]},"pytorch_tabnet.tab_model.TabNetRegressor":{cat_dims:[1,2,1,""],cat_idxs:[1,2,1,""],compute_loss:[1,3,1,""],optimizer_params:[1,2,1,""],predict_func:[1,3,1,""],prepare_target:[1,3,1,""],scheduler_params:[1,2,1,""],stack_batches:[1,3,1,""],update_fit_params:[1,3,1,""]},"pytorch_tabnet.tab_network":{AttentiveTransformer:[1,1,1,""],EmbeddingGenerator:[1,1,1,""],FeatTransformer:[1,1,1,""],GBN:[1,1,1,""],GLU_Block:[1,1,1,""],GLU_Layer:[1,1,1,""],RandomObfuscator:[1,1,1,""],TabNet:[1,1,1,""],TabNetDecoder:[1,1,1,""],TabNetEncoder:[1,1,1,""],TabNetNoEmbeddings:[1,1,1,""],TabNetPretraining:[1,1,1,""],initialize_glu:[1,4,1,""],initialize_non_glu:[1,4,1,""]},"pytorch_tabnet.tab_network.AttentiveTransformer":{forward:[1,3,1,""]},"pytorch_tabnet.tab_network.EmbeddingGenerator":{forward:[1,3,1,""]},"pytorch_tabnet.tab_network.FeatTransformer":{forward:[1,3,1,""]},"pytorch_tabnet.tab_network.GBN":{forward:[1,3,1,""]},"pytorch_tabnet.tab_network.GLU_Block":{forward:[1,3,1,""]},"pytorch_tabnet.tab_network.GLU_Layer":{forward:[1,3,1,""]},"pytorch_tabnet.tab_network.RandomObfuscator":{forward:[1,3,1,""]},"pytorch_tabnet.tab_network.TabNet":{forward:[1,3,1,""],forward_masks:[1,3,1,""]},"pytorch_tabnet.tab_network.TabNetDecoder":{forward:[1,3,1,""]},"pytorch_tabnet.tab_network.TabNetEncoder":{forward:[1,3,1,""],forward_masks:[1,3,1,""]},"pytorch_tabnet.tab_network.TabNetNoEmbeddings":{forward:[1,3,1,""],forward_masks:[1,3,1,""]},"pytorch_tabnet.tab_network.TabNetPretraining":{forward:[1,3,1,""],forward_masks:[1,3,1,""]},"pytorch_tabnet.utils":{PredictDataset:[1,1,1,""],TorchDataset:[1,1,1,""],create_dataloaders:[1,4,1,""],create_explain_matrix:[1,4,1,""],create_sampler:[1,4,1,""],define_device:[1,4,1,""],filter_weights:[1,4,1,""],validate_eval_set:[1,4,1,""]},pytorch_tabnet:{abstract_model:[1,0,0,"-"],callbacks:[1,0,0,"-"],metrics:[1,0,0,"-"],multiclass_utils:[1,0,0,"-"],multitask:[1,0,0,"-"],pretraining:[1,0,0,"-"],pretraining_utils:[1,0,0,"-"],sparsemax:[1,0,0,"-"],tab_model:[1,0,0,"-"],tab_network:[1,0,0,"-"],utils:[1,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","class","Python class"],"2":["py","attribute","Python attribute"],"3":["py","method","Python method"],"4":["py","function","Python function"]},objtypes:{"0":"py:module","1":"py:class","2":"py:attribute","3":"py:method","4":"py:function"},terms:{"1st":0,"abstract":1,"boolean":1,"case":1,"class":0,"default":[1,2],"float":[0,1],"function":0,"import":[0,1],"int":[0,1],"new":[0,1],"return":[0,1],"static":1,"throw":1,"true":[0,1],"try":0,"while":1,Added:0,For:1,One:1,The:[0,1],Use:1,Useful:2,Using:1,__call__:0,__init__:0,_contextmethodmixin:1,_maxim:0,_name:0,a_max:0,a_min:0,abov:1,abs:1,absolut:1,abstract_model:2,accept:1,accord:[0,1],accuraci:[0,1],adam:[0,1],after:1,afterward:1,alia:1,all:[0,1],allow:1,allow_nan:1,along:1,alpha:1,also:1,although:1,amount:1,ani:[0,1],anyth:1,append:1,appli:[0,1],architectur:0,argument:1,arik:0,arrai:[0,1],arxiv:[0,1],assert_all_finit:1,assign:0,astudillo:1,attent:[1,2],attentivetransform:1,attribut:1,auc:[0,1],auto:[0,1],autograd:1,autom:[0,1],automat:[0,1],avail:0,averag:1,avoid:1,backward:1,balanc:[0,1],balancedaccuraci:1,base:1,baseestim:1,batch:[0,1],batch_out:[],batch_siz:[0,1],becaus:[0,1],been:0,befor:[0,1],bellow:0,ben:1,best:0,better:0,between:[0,1],bigger:0,binari:[0,1],blob:0,block:1,bool:[0,1],both:1,build:[0,1],built:1,call:1,callabl:1,callback:[0,2],callbackcontain:1,can:[0,1],capac:0,care:1,cat:[],cat_dim:[0,1],cat_emb_dim:[0,1],cat_idx:[0,1],categor:[0,1],censu:[],certain:1,chang:[0,1],check:1,check_classification_target:1,check_metr:1,check_nan:[],check_output_dim:1,choic:0,cite:1,classic:[0,1],classif:[0,1],classmethod:1,clf:0,clip:[0,1],clip_valu:[0,1],clone:0,close:0,cls:1,code:2,coeffici:0,column:1,com:[0,1],compat:[0,1],complet:0,comput:1,compute_loss:1,consecut:[0,1],contain:[0,1],content:2,context:1,continu:1,contribut:0,convert:1,corr:1,correct:1,correl:0,correspond:1,could:0,counter:1,cpu:1,creat:[0,1],create_dataload:1,create_explain_matrix:1,create_sampl:1,cross:0,ctx:1,cuda:1,current:0,custom:[1,2],data:[0,1],dataload:[0,1],dataset:1,dblp:1,decai:0,decis:0,deduc:0,deep:1,deeprecomodel:1,def:0,defin:[0,1],define_devic:1,degener:1,depend:[0,1],descript:1,detail:1,detect:[0,1],determin:1,develop:0,devic:1,device_nam:[0,1],dict:[0,1],dictionnari:[0,1],did:1,differ:1,differenti:1,difficulti:0,dim:1,dimens:1,discret:1,disk:0,distinct:1,divid:0,divis:1,docker:0,doe:[1,2],doing:0,don:1,dreamquark:0,dreamquarktabnet:0,drop:[0,1],drop_last:[0,1],dure:[0,1],each:[0,1],earli:[0,1],early_stopping_metr:1,earlystop:1,easi:2,easier:0,easili:0,either:[0,1],element:1,els:1,emb:[],embded:1,embed:[0,1],embedded_x:1,embeddinggener:1,enabl:0,encod:1,end:0,ensur:1,entmax15:1,entmax15funct:1,entmax:[0,1],entmoid15:1,entropi:0,epoch:[0,1],eps:1,epsilon:[0,1],equal:1,equival:1,error:1,eval:[0,1,2],eval_metr:1,eval_nam:[0,1],eval_set:[0,1],evalu:[1,2],event:1,everi:[0,1],exact:1,exampl:[0,1],exit:1,expert:1,explain:1,explan:1,explanatori:0,explicit:1,extra:0,extract:1,factori:1,fals:[0,1],feattransform:1,featu:1,featur:[0,1],few:0,file:1,filepath:1,filter_weight:1,first:1,fit:[1,2],follow:[0,1],forest:[],format:1,former:1,formula:1,forward:1,forward_mask:1,found:0,frequenc:1,from:[0,1],from_unsupervis:[0,1],gamma:[0,1],gate:0,gbn:1,gener:1,get:[0,1],get_metrics_by_nam:1,ghost:[0,1],gini:0,git:0,github:[0,1],give:0,given:[0,1],glu:1,glu_block:1,glu_lay:1,good:0,gpu:1,grad_output:1,gradient:[0,1],greater:0,handl:2,happen:1,harder:0,has:[0,1],have:[0,1],help:0,here:0,highli:1,histori:1,hold:1,hook:1,hot:1,how:[1,2],html:1,http:[0,1],idx:[],ignor:1,imeplement:1,implement:[0,1],improv:[0,1],includ:0,incomplet:1,independ:[0,1],index:[1,2],indic:[0,1],infer:1,infer_multitask_output:1,infer_output_dim:1,infin:1,initi:[0,1],initialize_glu:1,initialize_non_glu:1,input:[0,1],input_dim:1,insid:0,instal:2,instanc:1,instead:1,integ:1,interpret:2,invers:[0,1],ipynb:0,is_batch_level:1,is_maxim:1,is_multilabel:1,iter:1,its:0,join:0,journal:1,jupyt:0,kaggl:0,kei:[0,1],labda:1,lambda:[],lambda_spars:[0,1],larg:0,last:[0,1],later:0,latter:1,layer:0,learn:[1,2],least:[0,1],left:[0,1],length:[0,1],like:1,line:0,linear:0,link:2,list:[0,1],list_embedded_x:1,list_obfusc:1,list_output:1,list_y_scor:1,list_y_tru:1,load:[0,1],load_model:1,load_weights_from_unsupervis:1,local:[0,1],log:1,logarithm:1,logloss:[0,1],longtensor:1,loop:1,loss:[0,1],loss_fn:[0,1],lower:0,lr_schedul:[0,1],lrschedulercallback:1,m_explain:1,mae:[0,1],main:1,make:[0,1],mandatori:0,mani:1,manual:1,map:1,martin:1,martinsa16:1,mask:[0,1],mask_typ:[0,1],match:0,matric:1,matrix:1,max:0,max_epoch:[0,1],maxim:[0,1],maximum:[0,1],mean:[0,1],mean_squared_log_error:1,memori:1,mention:0,metric:2,metric_nam:1,metriccontain:1,might:0,mini:0,minimum:1,mix:1,moa:0,modal:0,model:[1,2],model_nam:0,modul:2,moment:1,momentum:[0,1],monitor:1,more:[0,1],most:1,mse:[0,1],multi:0,multiclass:[0,1],multiclass_util:2,multilabel:1,multioutput:1,multipl:1,multitask:[0,2],must:1,n_a:[0,1],n_d:[0,1],n_glu:1,n_glu_independ:1,n_independ:[0,1],n_sampl:1,n_share:[0,1],n_step:[0,1],n_unique_label:1,name:[0,1],nan:1,ndarrai:1,need:[0,1],needs_input_grad:1,neg:[0,1],network:1,neural:1,nicula:1,non:1,none:[0,1],normal:[0,1],note:[0,1],notebook:0,now:0,num:[],num_work:[0,1],number:[0,1],numpi:1,obf_var:1,obfusc:1,object:1,occur:0,on_batch_begin:1,on_batch_end:1,on_epoch_begin:1,on_epoch_end:1,on_train_begin:1,on_train_end:1,one:[0,1],onecyclelr:1,ones:0,onli:1,oper:1,optim:[0,1],optimizer_fn:[0,1],optimizer_param:[0,1],optimo:[],option:0,order:[0,1],org:[0,1],orgin:1,origin:0,other:1,otherwis:1,our:0,out:1,output:1,output_dim:1,over:1,overfit:0,overridden:1,overwritten:0,own:[0,1],packag:2,page:2,paper:[0,1],param:1,paramet:[1,2],pass:1,path:[0,1],patienc:[0,1],pdf:0,per:[0,1],percentag:[0,1],perform:[0,1],peter:1,pfister:0,pin:1,pin_memori:1,pip:0,place:0,plot:0,poetri:0,point:1,posit:1,post:1,post_embed_dim:1,pre:2,pred:0,predict:[0,1],predict_func:1,predict_proba:1,predictdataset:1,prefix:1,prepar:1,prepare_target:1,preprint:0,pretrain:[0,2],pretraining_exampl:0,pretraining_ratio:[0,1],pretraining_util:2,previous:1,print:1,prior:1,probabl:1,problem:[1,2],process:1,processed_feat:1,product:1,propos:0,provid:1,pytorch:[1,2],pytorch_tabnet:0,qualifi:1,question:0,random:[0,1],randomobfusc:1,rang:0,rapidli:1,rate:0,readm:2,realli:0,recip:1,recommend:0,reconstruct:[0,1],record:1,reduc:[0,1],reducing_matrix:1,regist:1,regress:[0,1],rel:1,repositori:0,repres:1,reproduc:0,res:1,reset:1,result:1,retriev:[0,1],reus:0,reusag:0,risk:0,rmse:[0,1],rmsle:[0,1],roc_auc_scor:0,root:1,run:[0,1],same:[0,1],sampl:[0,1],sampler:1,save:[0,1],save_model:1,saving_path:0,scale:1,schedul:[0,1],scheduler_fn:[0,1],scheduler_param:[0,1],scikit:[0,1],score:[0,1],search:2,section:0,see:[0,1],seed:[0,1],select:0,self:[0,1],semi:2,sequenc:1,set:[0,1],set_param:1,set_train:1,shape:1,share:0,shared_lay:1,should:[0,1],show:1,silent:1,simpl:0,sinc:[0,1],singl:[0,1],size:[0,1],sklearn:[0,1],slack:0,small:1,smaller:1,softmax:1,solut:0,sort:1,sourc:[1,2],spars:1,sparsemax:[0,2],sparsemaxfunct:1,sparser:0,sparsiti:0,specif:[0,1],specifii:0,spin:1,squar:1,stabl:1,stack_batch:1,start:[0,1],step:[0,1],step_siz:0,steplr:0,steps_output:1,stop:[0,1],store:1,str:[0,1],string:1,subclass:1,subprocess:1,subsampl:1,sum:1,supermodul:1,supervis:[1,2],sure:1,tab_model:[0,2],tab_network:2,tabmodel:1,tabnet:[1,2],tabnetclassifi:[0,1],tabnetdecod:1,tabnetencod:1,tabnetmultitaskclassifi:[0,1],tabnetnoembed:1,tabnetpretrain:[0,1],tabnetregressor:[0,1],tabular:2,take:1,talk:0,target:[0,1],target_mapp:1,target_typ:1,task:[0,1],tasks_dim:1,tasks_label:1,tensor:1,term:0,termin:[0,1],than:[0,1],them:1,thi:[0,1],tol:1,torch:[0,1],torchdataset:1,train:[1,2],train_dataload:1,train_label:1,trainer:1,trainng:0,transform:[0,1],trick:1,tupl:[0,1],two:1,type:1,type_of_target:1,typic:0,uniqu:[0,1],unique_label:1,unit:0,unknown:1,unsupervis:1,unsupervised_model:[0,1],unsupervisedloss:1,unsupervisedmetr:1,unsupmetriccontain:1,untouch:0,updat:1,update_fit_param:1,use:[1,2],used:[0,1],user:1,using:0,usual:0,util:[0,2],val_metr:1,valid:[0,1],valid_dataload:1,validate_eval_set:1,valu:[0,1],valueerror:1,variabl:1,vector:1,verbos:[0,1],via:0,video:0,virtual:[],virtual_batch_s:[0,1],vlad:1,wait:1,wan:0,want:0,weight:[0,1],weight_updat:1,were:1,what:2,when:[0,1],where:[0,1],whether:[0,1],which:1,width:0,wihtout:1,within:[0,1],without:0,worker:[0,1],wors:0,wrapper:1,wrong:1,www:[],x_predict:0,x_test:0,x_train:[0,1],x_valid:0,y_pred:1,y_score:[0,1],y_train:[0,1],y_true:[0,1],y_valid:0,you:[0,1],your:0,youtu:[],ysbazo8ymx8:[],zerodivisionerror:1,zip:1},titles:["README","pytorch_tabnet package","Welcome to pytorch_tabnet\u2019s documentation!"],titleterms:{"class":1,"default":0,"function":1,Useful:0,abstract_model:1,attent:0,callback:1,code:0,cpu:0,custom:0,doc:[],document:2,doe:0,early_stopping_metr:[],easi:0,eval_metr:0,evalu:0,fit:0,gpu:0,handl:0,how:0,indic:2,instal:0,interpret:0,label:1,learn:0,link:0,metric:[0,1],model:0,modul:1,multi:1,multiclass_util:1,multitask:1,onli:0,packag:1,paramet:0,pre:0,pretrain:1,pretraining_util:1,problem:0,pytorch:0,pytorch_tabnet:[1,2],readm:0,script:[],semi:0,sourc:0,sparsemax:1,supervis:0,tab_model:1,tab_network:1,tabl:2,tabnet:0,tabular:0,train:0,use:0,util:1,welcom:2,what:0}}) \ No newline at end of file +Search.setIndex({docnames:["generated_docs/README","generated_docs/pytorch_tabnet","index"],envversion:{"sphinx.domains.c":1,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":1,"sphinx.domains.index":1,"sphinx.domains.javascript":1,"sphinx.domains.math":2,"sphinx.domains.python":1,"sphinx.domains.rst":1,"sphinx.domains.std":1,"sphinx.ext.viewcode":1,sphinx:56},filenames:["generated_docs/README.md","generated_docs/pytorch_tabnet.rst","index.rst"],objects:{"pytorch_tabnet.abstract_model":{TabModel:[1,1,1,""]},"pytorch_tabnet.abstract_model.TabModel":{cat_dims:[1,2,1,""],cat_emb_dim:[1,2,1,""],cat_idxs:[1,2,1,""],clip_value:[1,2,1,""],compute_loss:[1,3,1,""],device_name:[1,2,1,""],epsilon:[1,2,1,""],explain:[1,3,1,""],fit:[1,3,1,""],gamma:[1,2,1,""],input_dim:[1,2,1,""],lambda_sparse:[1,2,1,""],load_class_attrs:[1,3,1,""],load_model:[1,3,1,""],load_weights_from_unsupervised:[1,3,1,""],mask_type:[1,2,1,""],momentum:[1,2,1,""],n_a:[1,2,1,""],n_d:[1,2,1,""],n_independent:[1,2,1,""],n_shared:[1,2,1,""],n_steps:[1,2,1,""],optimizer_fn:[1,2,1,""],optimizer_params:[1,2,1,""],output_dim:[1,2,1,""],predict:[1,3,1,""],prepare_target:[1,3,1,""],save_model:[1,3,1,""],scheduler_fn:[1,2,1,""],scheduler_params:[1,2,1,""],seed:[1,2,1,""],update_fit_params:[1,3,1,""],verbose:[1,2,1,""]},"pytorch_tabnet.callbacks":{Callback:[1,1,1,""],CallbackContainer:[1,1,1,""],EarlyStopping:[1,1,1,""],History:[1,1,1,""],LRSchedulerCallback:[1,1,1,""]},"pytorch_tabnet.callbacks.Callback":{on_batch_begin:[1,3,1,""],on_batch_end:[1,3,1,""],on_epoch_begin:[1,3,1,""],on_epoch_end:[1,3,1,""],on_train_begin:[1,3,1,""],on_train_end:[1,3,1,""],set_params:[1,3,1,""],set_trainer:[1,3,1,""]},"pytorch_tabnet.callbacks.CallbackContainer":{append:[1,3,1,""],callbacks:[1,2,1,""],on_batch_begin:[1,3,1,""],on_batch_end:[1,3,1,""],on_epoch_begin:[1,3,1,""],on_epoch_end:[1,3,1,""],on_train_begin:[1,3,1,""],on_train_end:[1,3,1,""],set_params:[1,3,1,""],set_trainer:[1,3,1,""]},"pytorch_tabnet.callbacks.EarlyStopping":{early_stopping_metric:[1,2,1,""],is_maximize:[1,2,1,""],on_epoch_end:[1,3,1,""],on_train_end:[1,3,1,""],patience:[1,2,1,""],tol:[1,2,1,""]},"pytorch_tabnet.callbacks.History":{on_batch_end:[1,3,1,""],on_epoch_begin:[1,3,1,""],on_epoch_end:[1,3,1,""],on_train_begin:[1,3,1,""],trainer:[1,2,1,""],verbose:[1,2,1,""]},"pytorch_tabnet.callbacks.LRSchedulerCallback":{early_stopping_metric:[1,2,1,""],is_batch_level:[1,2,1,""],on_batch_end:[1,3,1,""],on_epoch_end:[1,3,1,""],optimizer:[1,2,1,""],scheduler_fn:[1,2,1,""],scheduler_params:[1,2,1,""]},"pytorch_tabnet.metrics":{AUC:[1,1,1,""],Accuracy:[1,1,1,""],BalancedAccuracy:[1,1,1,""],LogLoss:[1,1,1,""],MAE:[1,1,1,""],MSE:[1,1,1,""],Metric:[1,1,1,""],MetricContainer:[1,1,1,""],RMSE:[1,1,1,""],RMSLE:[1,1,1,""],UnsupMetricContainer:[1,1,1,""],UnsupervisedLoss:[1,4,1,""],UnsupervisedMetric:[1,1,1,""],check_metrics:[1,4,1,""]},"pytorch_tabnet.metrics.Metric":{get_metrics_by_names:[1,3,1,""]},"pytorch_tabnet.metrics.MetricContainer":{metric_names:[1,2,1,""],prefix:[1,2,1,""]},"pytorch_tabnet.metrics.UnsupMetricContainer":{metric_names:[1,2,1,""],prefix:[1,2,1,""]},"pytorch_tabnet.multiclass_utils":{assert_all_finite:[1,4,1,""],check_classification_targets:[1,4,1,""],check_output_dim:[1,4,1,""],check_unique_type:[1,4,1,""],infer_multitask_output:[1,4,1,""],infer_output_dim:[1,4,1,""],is_multilabel:[1,4,1,""],type_of_target:[1,4,1,""],unique_labels:[1,4,1,""]},"pytorch_tabnet.multitask":{TabNetMultiTaskClassifier:[1,1,1,""]},"pytorch_tabnet.multitask.TabNetMultiTaskClassifier":{cat_dims:[1,2,1,""],cat_idxs:[1,2,1,""],compute_loss:[1,3,1,""],optimizer_params:[1,2,1,""],predict:[1,3,1,""],predict_proba:[1,3,1,""],prepare_target:[1,3,1,""],scheduler_params:[1,2,1,""],stack_batches:[1,3,1,""],update_fit_params:[1,3,1,""]},"pytorch_tabnet.pretraining":{TabNetPretrainer:[1,1,1,""]},"pytorch_tabnet.pretraining.TabNetPretrainer":{cat_dims:[1,2,1,""],cat_idxs:[1,2,1,""],compute_loss:[1,3,1,""],fit:[1,3,1,""],optimizer_params:[1,2,1,""],predict:[1,3,1,""],prepare_target:[1,3,1,""],scheduler_params:[1,2,1,""],stack_batches:[1,3,1,""],update_fit_params:[1,3,1,""]},"pytorch_tabnet.pretraining_utils":{create_dataloaders:[1,4,1,""],validate_eval_set:[1,4,1,""]},"pytorch_tabnet.sparsemax":{Entmax15:[1,1,1,""],Entmax15Function:[1,1,1,""],Entmoid15:[1,1,1,""],Sparsemax:[1,1,1,""],SparsemaxFunction:[1,1,1,""],entmax15:[1,4,1,""],entmoid15:[1,4,1,""],sparsemax:[1,4,1,""]},"pytorch_tabnet.sparsemax.Entmax15":{forward:[1,3,1,""]},"pytorch_tabnet.sparsemax.Entmax15Function":{backward:[1,3,1,""],forward:[1,3,1,""]},"pytorch_tabnet.sparsemax.Entmoid15":{backward:[1,3,1,""],forward:[1,3,1,""]},"pytorch_tabnet.sparsemax.Sparsemax":{forward:[1,3,1,""]},"pytorch_tabnet.sparsemax.SparsemaxFunction":{backward:[1,3,1,""],forward:[1,3,1,""]},"pytorch_tabnet.tab_model":{TabNetClassifier:[1,1,1,""],TabNetRegressor:[1,1,1,""]},"pytorch_tabnet.tab_model.TabNetClassifier":{cat_dims:[1,2,1,""],cat_idxs:[1,2,1,""],compute_loss:[1,3,1,""],optimizer_params:[1,2,1,""],predict_func:[1,3,1,""],predict_proba:[1,3,1,""],prepare_target:[1,3,1,""],scheduler_params:[1,2,1,""],stack_batches:[1,3,1,""],update_fit_params:[1,3,1,""],weight_updater:[1,3,1,""]},"pytorch_tabnet.tab_model.TabNetRegressor":{cat_dims:[1,2,1,""],cat_idxs:[1,2,1,""],compute_loss:[1,3,1,""],optimizer_params:[1,2,1,""],predict_func:[1,3,1,""],prepare_target:[1,3,1,""],scheduler_params:[1,2,1,""],stack_batches:[1,3,1,""],update_fit_params:[1,3,1,""]},"pytorch_tabnet.tab_network":{AttentiveTransformer:[1,1,1,""],EmbeddingGenerator:[1,1,1,""],FeatTransformer:[1,1,1,""],GBN:[1,1,1,""],GLU_Block:[1,1,1,""],GLU_Layer:[1,1,1,""],RandomObfuscator:[1,1,1,""],TabNet:[1,1,1,""],TabNetDecoder:[1,1,1,""],TabNetEncoder:[1,1,1,""],TabNetNoEmbeddings:[1,1,1,""],TabNetPretraining:[1,1,1,""],initialize_glu:[1,4,1,""],initialize_non_glu:[1,4,1,""]},"pytorch_tabnet.tab_network.AttentiveTransformer":{forward:[1,3,1,""]},"pytorch_tabnet.tab_network.EmbeddingGenerator":{forward:[1,3,1,""]},"pytorch_tabnet.tab_network.FeatTransformer":{forward:[1,3,1,""]},"pytorch_tabnet.tab_network.GBN":{forward:[1,3,1,""]},"pytorch_tabnet.tab_network.GLU_Block":{forward:[1,3,1,""]},"pytorch_tabnet.tab_network.GLU_Layer":{forward:[1,3,1,""]},"pytorch_tabnet.tab_network.RandomObfuscator":{forward:[1,3,1,""]},"pytorch_tabnet.tab_network.TabNet":{forward:[1,3,1,""],forward_masks:[1,3,1,""]},"pytorch_tabnet.tab_network.TabNetDecoder":{forward:[1,3,1,""]},"pytorch_tabnet.tab_network.TabNetEncoder":{forward:[1,3,1,""],forward_masks:[1,3,1,""]},"pytorch_tabnet.tab_network.TabNetNoEmbeddings":{forward:[1,3,1,""],forward_masks:[1,3,1,""]},"pytorch_tabnet.tab_network.TabNetPretraining":{forward:[1,3,1,""],forward_masks:[1,3,1,""]},"pytorch_tabnet.utils":{ComplexEncoder:[1,1,1,""],PredictDataset:[1,1,1,""],TorchDataset:[1,1,1,""],create_dataloaders:[1,4,1,""],create_explain_matrix:[1,4,1,""],create_sampler:[1,4,1,""],define_device:[1,4,1,""],filter_weights:[1,4,1,""],validate_eval_set:[1,4,1,""]},"pytorch_tabnet.utils.ComplexEncoder":{"default":[1,3,1,""]},pytorch_tabnet:{abstract_model:[1,0,0,"-"],callbacks:[1,0,0,"-"],metrics:[1,0,0,"-"],multiclass_utils:[1,0,0,"-"],multitask:[1,0,0,"-"],pretraining:[1,0,0,"-"],pretraining_utils:[1,0,0,"-"],sparsemax:[1,0,0,"-"],tab_model:[1,0,0,"-"],tab_network:[1,0,0,"-"],utils:[1,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","class","Python class"],"2":["py","attribute","Python attribute"],"3":["py","method","Python method"],"4":["py","function","Python function"]},objtypes:{"0":"py:module","1":"py:class","2":"py:attribute","3":"py:method","4":"py:function"},terms:{"1st":0,"abstract":1,"boolean":1,"case":1,"class":0,"default":[1,2],"float":[0,1],"function":0,"import":[0,1],"int":[0,1],"new":[0,1],"return":[0,1],"static":1,"throw":1,"true":[0,1],"try":[0,1],"while":1,Added:0,For:1,One:1,The:[0,1],Use:1,Useful:2,Using:1,__call__:0,__init__:0,_contextmethodmixin:1,_maxim:0,_name:0,a_max:0,a_min:0,abov:1,abs:1,absolut:1,abstract_model:2,accept:1,accord:[0,1],accuraci:[0,1],adam:[0,1],after:1,afterward:1,alia:1,all:[0,1],allow:1,allow_nan:1,along:1,alpha:1,also:1,although:1,amount:1,ani:[0,1],anyth:1,append:1,appli:[0,1],arbitrari:1,architectur:0,argument:1,arik:0,arrai:[0,1],arxiv:[0,1],assert_all_finit:1,assign:0,astudillo:1,attent:[1,2],attentivetransform:1,attribut:1,auc:[0,1],auto:[0,1],autograd:1,autom:[0,1],automat:[0,1],avail:0,averag:1,avoid:1,backward:1,balanc:[0,1],balancedaccuraci:1,base:1,baseestim:1,batch:[0,1],batch_out:[],batch_siz:[0,1],becaus:[0,1],been:0,befor:[0,1],bellow:0,ben:1,best:0,better:0,between:[0,1],bigger:0,binari:[0,1],blob:0,block:1,bool:[0,1],both:1,build:[0,1],built:1,call:1,callabl:1,callback:[0,2],callbackcontain:1,can:[0,1],capac:0,care:1,cat:[],cat_dim:[0,1],cat_emb_dim:[0,1],cat_idx:[0,1],categor:[0,1],censu:[],certain:1,chang:[0,1],check:1,check_circular:1,check_classification_target:1,check_metr:1,check_nan:[],check_output_dim:1,check_unique_typ:1,choic:0,cite:1,class_attr:1,classic:[0,1],classif:[0,1],classmethod:1,clf:0,clip:[0,1],clip_valu:[0,1],clone:0,close:0,cls:1,code:2,coeffici:0,column:1,com:[0,1],compat:[0,1],complet:0,complexencod:1,comput:1,compute_loss:1,consecut:[0,1],contain:[0,1],content:2,context:1,continu:1,contribut:0,convert:1,corr:1,correct:1,correl:0,correspond:1,could:[0,1],counter:1,cpu:1,creat:[0,1],create_dataload:1,create_explain_matrix:1,create_sampl:1,cross:0,ctx:1,cuda:1,current:0,custom:[1,2],data:[0,1],dataload:[0,1],dataset:1,dblp:1,decai:0,decis:0,deduc:0,deep:1,deeprecomodel:1,def:[0,1],defin:[0,1],define_devic:1,degener:1,depend:[0,1],descript:1,detail:1,detect:[0,1],determin:1,develop:0,devic:1,device_nam:[0,1],dict:[0,1],dictionari:1,dictionnari:[0,1],did:1,differ:1,differenti:1,difficulti:0,dim:1,dimens:1,discret:1,disk:0,distinct:1,divid:0,divis:1,docker:0,doe:[1,2],doing:0,don:1,dreamquark:0,dreamquarktabnet:0,drop:[0,1],drop_last:[0,1],dure:[0,1],each:[0,1],earli:[0,1],early_stopping_metr:1,earlystop:1,easi:2,easier:0,easili:0,either:[0,1],element:1,els:1,emb:[],embded:[],embed:[0,1],embedded_x:1,embeddinggener:1,enabl:0,encod:1,end:0,ensur:1,ensure_ascii:1,entmax15:1,entmax15funct:1,entmax:[0,1],entmoid15:1,entropi:0,epoch:[0,1],eps:1,epsilon:[0,1],equal:1,equival:1,error:1,eval:[0,1,2],eval_metr:1,eval_nam:[0,1],eval_set:[0,1],evalu:[1,2],event:1,everi:[0,1],exact:1,exampl:[0,1],except:1,exit:1,expert:1,explain:1,explan:1,explanatori:0,explicit:1,extra:0,extract:1,factori:1,fals:[0,1],feattransform:1,featu:[],featur:[0,1],few:0,file:1,filepath:1,filter_weight:1,first:1,fit:[1,2],follow:[0,1],forest:[],format:1,former:1,formula:1,forward:1,forward_mask:1,found:0,frequenc:1,from:[0,1],from_unsupervis:[0,1],gamma:[0,1],gate:0,gbn:1,gener:1,get:[0,1],get_metrics_by_nam:1,ghost:[0,1],gini:0,git:0,github:[0,1],give:0,given:[0,1],glu:1,glu_block:1,glu_lay:1,good:0,gpu:1,grad_output:1,gradient:[0,1],greater:0,handl:2,happen:1,harder:0,has:[0,1],have:[0,1],help:0,here:0,highli:1,histori:1,hold:1,hook:1,hot:1,how:[1,2],html:1,http:[0,1],idx:[],ignor:1,imeplement:[],implement:[0,1],improv:[0,1],includ:0,incomplet:1,indent:1,independ:[0,1],index:[1,2],indic:[0,1],infer:1,infer_multitask_output:1,infer_output_dim:1,infin:1,initi:[0,1],initialize_glu:1,initialize_non_glu:1,input:[0,1],input_dim:1,insid:0,instal:2,instanc:1,instead:1,integ:[0,1],interpret:2,invers:[0,1],ipynb:0,is_batch_level:1,is_maxim:1,is_multilabel:1,iter:1,its:0,join:0,journal:1,json:1,jsonencod:1,jupyt:0,kaggl:0,kei:[0,1],labda:[],lambda:1,lambda_spars:[0,1],larg:0,last:[0,1],later:0,latter:1,layer:0,learn:[1,2],least:[0,1],left:[0,1],length:[0,1],let:1,like:1,line:0,linear:0,link:2,list:[0,1],list_embedded_x:1,list_obfusc:1,list_output:1,list_y_scor:1,list_y_tru:1,load:[0,1],load_class_attr:1,load_model:1,load_weights_from_unsupervis:1,local:[0,1],log:1,logarithm:1,logloss:[0,1],longtensor:1,loop:1,loss:[0,1],loss_fn:[0,1],lower:0,lr_schedul:[0,1],lrschedulercallback:1,m_explain:1,mae:[0,1],main:1,make:[0,1],mandatori:0,mani:1,manual:1,map:1,martin:1,martinsa16:1,mask:[0,1],mask_typ:[0,1],match:0,matric:1,matrix:1,max:0,max_epoch:[0,1],maxim:[0,1],maximum:[0,1],mean:[0,1],mean_squared_log_error:1,memori:1,mention:0,method:1,metric:2,metric_nam:1,metriccontain:1,might:0,mini:0,minimum:1,mix:1,moa:0,modal:0,model:[1,2],model_nam:0,modul:2,moment:1,momentum:[0,1],monitor:1,more:[0,1],most:1,mse:[0,1],multi:0,multiclass:[0,1],multiclass_util:2,multilabel:1,multioutput:1,multipl:1,multitask:[0,2],must:[0,1],n_a:[0,1],n_d:[0,1],n_glu:1,n_glu_independ:1,n_independ:[0,1],n_sampl:1,n_share:[0,1],n_step:[0,1],n_unique_label:1,name:[0,1],nan:1,ndarrai:1,need:[0,1],needs_input_grad:1,neg:[0,1],network:1,neural:1,nicula:1,non:1,none:[0,1],normal:[0,1],note:[0,1],notebook:0,now:0,num:[],num_work:[0,1],number:[0,1],numpi:1,obf_var:1,obfusc:1,obj:1,object:1,occur:[],occurr:0,on_batch_begin:1,on_batch_end:1,on_epoch_begin:1,on_epoch_end:1,on_train_begin:1,on_train_end:1,one:[0,1],onecyclelr:1,ones:0,onli:1,oper:1,optim:[0,1],optimizer_fn:[0,1],optimizer_param:[0,1],optimo:[],option:0,order:[0,1],org:[0,1],orgin:1,origin:[0,1],other:1,otherwis:1,our:0,out:1,output:1,output_dim:1,over:1,overfit:0,overridden:1,overwritten:0,own:[0,1],packag:2,page:2,paper:[0,1],param:1,paramet:[1,2],pass:1,path:[0,1],patienc:[0,1],pdf:0,per:[0,1],percentag:[0,1],perform:[0,1],peter:1,pfister:0,pin:1,pin_memori:1,pip:0,place:0,plot:0,poetri:0,point:1,posit:1,post:1,post_embed_dim:1,pre:2,pred:0,predict:[0,1],predict_func:1,predict_proba:1,predictdataset:1,prefix:1,prepar:1,prepare_target:1,preprint:0,pretrain:[0,2],pretraining_exampl:0,pretraining_ratio:[0,1],pretraining_util:2,previous:1,print:1,prior:1,probabl:1,problem:[1,2],process:1,processed_feat:1,product:1,propos:0,provid:1,pytorch:[1,2],pytorch_tabnet:0,qualifi:1,question:0,rais:1,random:[0,1],randomobfusc:1,rang:0,rapidli:1,rate:0,readm:2,realli:0,recip:1,recommend:0,reconstruct:[0,1],record:1,reduc:[0,1],reducing_matrix:1,regist:1,regress:[0,1],rel:1,repositori:0,repres:1,reproduc:0,res:1,reset:1,result:1,retriev:[0,1],reus:0,reusag:0,risk:0,rmse:[0,1],rmsle:[0,1],roc_auc_scor:0,root:1,run:[0,1],same:[0,1],sampl:[0,1],sampler:1,save:[0,1],save_model:1,saving_path:0,scale:1,schedul:[0,1],scheduler_fn:[0,1],scheduler_param:[0,1],scikit:[0,1],score:[0,1],search:2,section:0,see:[0,1],seed:[0,1],select:0,self:[0,1],semi:2,separ:1,sequenc:1,serializ:1,set:[0,1],set_param:1,set_train:1,shape:1,share:0,shared_lay:1,should:[0,1],show:1,silent:1,simpl:0,sinc:[0,1],singl:[0,1],size:[0,1],skipkei:1,sklearn:[0,1],slack:0,small:1,smaller:1,softmax:1,solut:0,sort:1,sort_kei:1,sourc:[1,2],spars:1,sparsemax:[0,2],sparsemaxfunct:1,sparser:0,sparsiti:0,specif:[0,1],specifii:0,spin:1,squar:1,stabl:1,stack_batch:1,start:[0,1],step:[0,1],step_siz:0,steplr:0,steps_output:1,stop:[0,1],store:1,str:[0,1],string:[0,1],subclass:1,subprocess:1,subsampl:1,sum:1,supermodul:1,supervis:[1,2],support:1,sure:1,tab_model:[0,2],tab_network:2,tabmodel:1,tabnet:[1,2],tabnetclassifi:[0,1],tabnetdecod:1,tabnetencod:1,tabnetmultitaskclassifi:[0,1],tabnetnoembed:1,tabnetpretrain:[0,1],tabnetregressor:[0,1],tabular:2,take:1,talk:0,target:[0,1],target_mapp:1,target_typ:1,task:[0,1],tasks_dim:1,tasks_label:1,tensor:1,term:0,termin:[0,1],than:[0,1],thei:0,them:1,thi:[0,1],tol:1,torch:[0,1],torchdataset:1,train:[1,2],train_dataload:1,train_label:1,trainer:1,trainng:0,transform:[0,1],trick:1,tupl:[0,1],two:1,type:[0,1],type_of_target:1,typeerror:1,typic:0,uniqu:[0,1],unique_label:1,unit:0,unknown:1,unsupervis:1,unsupervised_model:[0,1],unsupervisedloss:1,unsupervisedmetr:1,unsupmetriccontain:1,untouch:0,updat:1,update_fit_param:1,use:[1,2],used:[0,1],user:1,using:0,usual:0,util:[0,2],val_metr:1,valid:[0,1],valid_dataload:1,validate_eval_set:1,valu:[0,1],valueerror:1,variabl:1,vector:1,verbos:[0,1],via:0,video:0,virtual:[],virtual_batch_s:[0,1],vlad:1,wait:1,wan:0,want:0,weight:[0,1],weight_updat:1,were:1,what:2,when:[0,1],where:[0,1],whether:[0,1],which:1,width:0,wihtout:[],within:[0,1],without:[0,1],worker:[0,1],wors:0,wrapper:1,wrong:1,www:[],x_predict:0,x_test:0,x_train:[0,1],x_valid:0,y_pred:1,y_score:[0,1],y_train:[0,1],y_true:[0,1],y_valid:0,you:[0,1],your:0,youtu:[],ysbazo8ymx8:[],zerodivisionerror:1,zip:1},titles:["README","pytorch_tabnet package","Welcome to pytorch_tabnet\u2019s documentation!"],titleterms:{"class":1,"default":0,"function":1,Useful:0,abstract_model:1,attent:0,callback:1,code:0,cpu:0,custom:0,doc:[],document:2,doe:0,early_stopping_metr:[],easi:0,eval_metr:0,evalu:0,fit:0,gpu:0,handl:0,how:0,indic:2,instal:0,interpret:0,label:1,learn:0,link:0,metric:[0,1],model:0,modul:1,multi:1,multiclass_util:1,multitask:1,onli:0,packag:1,paramet:0,pre:0,pretrain:1,pretraining_util:1,problem:0,pytorch:0,pytorch_tabnet:[1,2],readm:0,script:[],semi:0,sourc:0,sparsemax:1,supervis:0,tab_model:1,tab_network:1,tabl:2,tabnet:0,tabular:0,train:0,use:0,util:1,welcom:2,what:0}}) \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 19e28921..b9950554 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "pytorch_tabnet" -version = "3.0.0" +version = "3.1.0" description = "PyTorch implementation of TabNet" homepage = "https://github.com/dreamquark-ai/tabnet" repository = "https://github.com/dreamquark-ai/tabnet"