Compare every algorithm
One click ranks all algorithms on the same split. This is a real run on iris.
| Algorithm | Accuracy |
|---|---|
| Support Vector Machine | 0.9667 |
| Logistic Regression | 0.9333 |
| Decision Tree | 0.9333 |
| K-Nearest Neighbors | 0.9333 |
| Random Forest | 0.9000 |
A hands-on scikit-learn pipeline where every step is open: split, preprocess, train, evaluate. Break it, compare it, understand it.
k-nearest neighbours, running in your browser
accuracy 100.0%
Click the plot to add points. Red rings mark points the model would get wrong.
Run one stage at a time and read what it produced, or run the whole pipeline in a click.
Choose a built-in dataset or upload a CSV. Column types are detected as soon as it loads.
One click ranks all algorithms on the same split. This is a real run on iris.
| Algorithm | Accuracy |
|---|---|
| Support Vector Machine | 0.9667 |
| Logistic Regression | 0.9333 |
| Decision Tree | 0.9333 |
| K-Nearest Neighbors | 0.9333 |
| Random Forest | 0.9000 |
Pick any two features and see where the trained model draws its lines.
5-fold
Cross-validated, with the best parameters and score shown.
Numeric and categorical columns are detected and handled for you.
What is overfitting?
Overfitting happens when a model learns the training data too well, including its noise and quirks, rather than the underlying pattern.
The split happens first. Preprocessing is fitted on training rows and only applied to the test set.
Built-in or uploaded, each dataset gets a schema that drives preprocessing and algorithm choice.
Every algorithm trains on the same split and is scored on the same test rows.
X_train, X_test, y_train, y_test = train_test_split(
X, y, test_size=0.2, random_state=42, stratify=y
)
preprocessor = build_preprocessor(X_train)
X_train_t = preprocessor.fit_transform(X_train)
X_test_t = preprocessor.transform(X_test)The test set is only ever transformed, never fitted on.
No sign-up needed. The backend sleeps when idle, so the first load can take a few seconds.