You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/getting_started/overview.md
+27-39Lines changed: 27 additions & 39 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# Overview
2
2
3
-
DeepTab brings modern deep learning to tabular data with a clean scikit-learn interface. No boilerplate PyTorch code, no manual data loaders, just `fit`, `predict`, and `evaluate`.
3
+
DeepTab is a library for deep learning on tabular data with a scikit-learn compatible interface. It handles feature preprocessing, batching, and the training loop, so the workflow stays `fit`, `predict`, and `evaluate` instead of hand-written PyTorch code and data loaders. Every architecture supports three tasks: classification, regression, and distributional regression for uncertainty quantification.
With no configuration, DeepTab detects feature types, encodes and scales them, and imputes missing values during preprocessing. Training runs on a GPU when one is available, with early stopping and checkpointing enabled.
76
67
77
-
- Feature type detection (numerical/categorical)
78
-
- Missing value handling
79
-
- Scaling and encoding
80
-
- GPU utilization
81
-
- Early stopping with checkpointing
82
-
```
83
-
84
-
**Configure when needed:**
68
+
Each layer is configurable when you need it. Architecture, preprocessing, and training settings live in separate config objects, so you can change one without touching the others:
85
69
86
70
```python
87
71
from deeptab.configs import ResNetConfig, PreprocessingConfig, TrainerConfig
DeepTab targets the data encountered in practice, not only clean benchmarks:
83
+
Beyond the defaults above, DeepTab handles details that come up with real data:
99
84
100
-
- Mixed numerical, categorical, and precomputed embedding features
85
+
- Mixed numerical, categorical, and precomputed embedding features in a single model
101
86
- Automatic stratified splits for classification, preserving class proportions
102
-
- Built-in imputation of missing values during preprocessing
103
-
- Mini-batch training that scales to large datasets
104
-
- Single-device GPU acceleration by default, with other Lightning strategies (including multi-device training) available by forwarding trainer arguments to `fit()`
87
+
- Mini-batch training that scales to datasets larger than a single batch
88
+
- Multi-device and other Lightning training strategies, enabled by forwarding trainer arguments to `fit()`
105
89
106
90
## When to Use DeepTab
107
91
108
-
DeepTab is well suited to:
109
-
110
-
- Tabular data with a mix of numerical and categorical features
111
-
- Datasets large enough for neural networks to be competitive, typically from a few thousand samples upward
112
-
- Problems with complex feature interactions
113
-
- Applications that require calibrated uncertainty through distributional regression
114
-
- Workflows that integrate with the scikit-learn ecosystem
92
+
DeepTab and gradient-boosted trees (XGBoost, LightGBM, CatBoost) are complementary tools. The table below shows where each tends to be the stronger starting point.
115
93
116
-
Gradient-boosted trees (XGBoost, LightGBM, CatBoost) remain a strong baseline and are often preferable for:
| Classification, regression, and distributional models behind one interface | DeepTab |
101
+
| Integration with scikit-learn pipelines and `GridSearchCV`| DeepTab or gradient-boosted trees |
102
+
| Small datasets where overfitting is a risk | Gradient-boosted trees |
103
+
| Data that does not fit in memory | Gradient-boosted trees |
104
+
| Latency-critical inference | Gradient-boosted trees |
117
105
118
-
- Small datasets, where neural networks are prone to overfitting
119
-
- Data that does not fit in memory
120
-
- Latency-critical inference, where tree ensembles are typically faster
106
+
```{note}
107
+
These are general guidelines, not strict rules. Results depend on the dataset, so when performance matters it is worth benchmarking DeepTab against a gradient-boosted baseline.
0 commit comments