🧪 Feature Engineering and Data Preprocessing
A 3D scatter of a non-linearly-separable dataset that you reshape live with scaling, outlier clipping and an engineered polynomial feature until a flat plane can separate the two classes.
A 3D scatter of two rings of data that cannot be separated by any flat line in their raw 2D form — reshape them live with scaling, outlier clipping and an engineered polynomial feature until a single plane cleanly separates the classes.
🔬 What It Demonstrates
Engineering a new feature (x² + y²) lifts the outer ring above the inner cluster, turning a non-linear problem into a linearly separable one — the same idea behind polynomial features and kernel tricks. Scaling and outlier handling reshape the same cloud the way a real preprocessing pipeline would.
🎮 How to Use
Drag the polynomial-feature slider to lift the outer ring, pick a scaling method, inject outliers and toggle clipping, then watch the live "linear separability" stat and the translucent separating plane respond.
💡 Did You Know?
Unscaled outliers can single-handedly dominate a min-max range, squashing 95% of "normal" values into a tiny sliver near zero — which is exactly why robust clipping or scaling is a standard first step in most preprocessing pipelines.
A 3D scatter of a non-linearly-separable dataset that you reshape live with scaling, outlier clipping and an engineered polynomial feature until a flat plane can separate the two classes.
3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install