pretab.transformers.LanguageEmbeddingTransformer
- class pretab.transformers.LanguageEmbeddingTransformer(model_name='paraphrase-MiniLM-L3-v2', model=None)[source]
Bases:
TransformerMixin,BaseEstimatorEncode categorical text features into embeddings using a pre-trained language model.
Each text value is mapped to a dense embedding vector produced by a SentenceTransformer model, allowing free-text categorical columns to be used by downstream numerical models.
- Parameters:
model_name (str, default="paraphrase-MiniLM-L3-v2") – Name of the SentenceTransformer model to load when
modelis None.model (object, optional) – A preloaded SentenceTransformer model instance. When provided,
model_nameis ignored.
- Variables:
model (object) – The SentenceTransformer model used to compute embeddings, resolved during
fitfrommodelor by loadingmodel_name.n_features_in (int) – Number of input features seen during
fit.
Notes
Requires the optional
sentence-transformersdependency. Install it withpip install sentence-transformersor pass a preloadedmodel.Examples
>>> from pretab.transformers import LanguageEmbeddingTransformer >>> transformer = LanguageEmbeddingTransformer() >>> embeddings = transformer.fit_transform([["red"], ["blue"], ["green"]]) >>> embeddings.shape[0] 3- __init__(model_name='paraphrase-MiniLM-L3-v2', model=None)[source]
Store parameters only; the embedding model is loaded lazily in
fit.
Methods
__init__([model_name, model])Store parameters only; the embedding model is loaded lazily in
fit.fit(X[, y])Load the embedding model and record the number of input features.
fit_transform(X[, y])Fit to data, then transform it.
get_metadata_routing()Get metadata routing of this object.
get_params([deep])Get parameters for this estimator.
set_output(*[, transform])Set output container.
set_params(**params)Set the parameters of this estimator.
transform(X)Transform text features into numerical embeddings.
- fit(X, y=None)[source]
Load the embedding model and record the number of input features.
- Parameters:
X (array-like) – Input categorical text features.
y (Ignored) – Not used, present for API consistency by convention.
- Returns:
self (object) – Fitted transformer.
- transform(X)[source]
Transform text features into numerical embeddings.
Each column is encoded independently and the resulting embeddings are concatenated horizontally, so the output always has one row per input sample regardless of the number of text columns.
- Parameters:
X (array-like) – A 1D or 2D array-like of categorical text features.
- Returns:
embeddings (ndarray of shape (n_samples, n_features * embedding_dim)) – The concatenated embeddings for each text input.