preprocessing-pipeline
En sekvens af automatiserede datatransformationer, der anvendes på rådata før en maskinlæringsmodel trænes eller anvendes.
Kort fortalt
En forberedelseskæde, der renser og omformer data, så en AI-model kan forstå dem bedre.
- Kategori
- teknik
- Niveau
- begynder
Betydninger
1- 1
En sekvens af forbehandlingstrin, der automatisk anvendes på data i en fastlagt rækkefølge, ofte implementeret som en samlet enhed i ML-biblioteker som scikit-learn.
- Vi opbyggede en preprocessing-pipeline med imputering, skalering og one-hot-kodning, før vi trænede klassifikatoren.
- Preprocessing-pipeline i scikit-learn gør det muligt at sammensætte transformationer og en estimator i ét objekt. — scikit-learn dokumentation
Hvornår bruges det
Preprocessing-pipelines bruges i alle ML-projekter for at standardisere, normalisere, imputere manglende værdier, kode kategoriske variable og udtrække features. De sikrer, at de samme transformationer anvendes konsistent på trænings- og testdata, hvilket forhindrer data leakage og gør modellen reproducerbar.
Kodeeksempel
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler, OneHotEncoder
from sklearn.impute import SimpleImputer
from sklearn.compose import ColumnTransformer
# Define numeric and categorical pipelines
numeric_pipeline = Pipeline([
('imputer', SimpleImputer(strategy='mean')),
('scaler', StandardScaler())
])
categorical_pipeline = Pipeline([
('imputer', SimpleImputer(strategy='most_frequent')),
('encoder', OneHotEncoder(handle_unknown='ignore'))
])
# Combine into ColumnTransformer
preprocessor = ColumnTransformer([
('num', numeric_pipeline, ['age', 'income']),
('cat', categorical_pipeline, ['gender', 'city'])
])
# Full pipeline with classifier
pipeline = Pipeline([
('preprocessor', preprocessor),
('classifier', LogisticRegression())
])Eksempel på en preprocessing-pipeline i scikit-learn, der kombinerer imputering, skalering, kodning og en logistisk regressionsklassifikator.
Oprindelse
Sammensat af 'preprocessing' (forberedelse/dataforbehandling) og 'pipeline' (rørledning/sekvens af trin), lånt fra datalogi og ingeniørvidenskab.