Model Pipeline - Custom transformers
This pipeline shows how custom transformers help prepare data before training a model. Custom transformers let us add special steps to clean or change data in ways built-in tools don’t offer.
Jump into concepts and practice - no test required
This pipeline shows how custom transformers help prepare data before training a model. Custom transformers let us add special steps to clean or change data in ways built-in tools don’t offer.
Loss
0.7 |****
0.6 |***
0.5 |**
0.4 |*
0.3 |*
1 2 3 4 5 Epochs| Epoch | Loss ↓ | Accuracy ↑ | Observation |
|---|---|---|---|
| 1 | 0.65 | 0.60 | Model starts learning, loss is high, accuracy low |
| 2 | 0.50 | 0.72 | Loss decreases, accuracy improves |
| 3 | 0.40 | 0.80 | Model learns important patterns |
| 4 | 0.35 | 0.85 | Training converges, accuracy rising |
| 5 | 0.30 | 0.88 | Loss low, accuracy high, good fit |
custom transformer in machine learning pipelines?print(transformed_data) output?
from sklearn.base import BaseEstimator, TransformerMixin
import numpy as np
class AddConstant(BaseEstimator, TransformerMixin):
def __init__(self, constant=1):
self.constant = constant
def fit(self, X, y=None):
return self
def transform(self, X):
return X + self.constant
X = np.array([[1, 2], [3, 4]])
transformer = AddConstant(constant=5)
transformed_data = transformer.fit_transform(X)
print(transformed_data)from sklearn.base import BaseEstimator, TransformerMixin
class MultiplyTransformer(BaseEstimator, TransformerMixin):
def __init__(self, factor=2):
self.factor = factor
def fit(self, X, y=None):
return self
def transform(self, X):
return X * self.factor
transformer = MultiplyTransformer(factor=3)
result = transformer.transform([1, 2, 3])
print(result)