Machine Learning Visualizer NEW

Click on the plot to place your own data points, then run the algorithm and watch it converge step by step, with mathematical formulas, pseudocode, and production Scikit-learn references.

Private by architecture: All processing is 100% client-side memory. Your data never leaves this browser tab.
Regression

Linear Regression

Click the plot to add points
Click the plot to add points, then press Run.
Step 0 / 0
Mathematical Formula
ŷ = wx + b
Predict y as a linear function of x. Fit w and b by minimizing mean squared error.
Execution Algorithm
    Scikit-Learn Reference
    from sklearn.linear_model import LinearRegression
    model = LinearRegression()
    model.fit(X, y)
    Production equivalent in Python scikit-learn.

    About This Tool

    Machine learning algorithms are usually taught through static equations and pre-rendered textbook plots. This visualizer lets you plot your own 2D data by clicking, then watch decision boundaries form, margins optimize, swarms converge, and neural networks train, step by step.

    Spans the spectrum of modern intelligent systems: classic regression, classification trees, maximum-margin SVMs, backpropagation in deep neural networks, unsupervised clustering and fuzzy memberships, swarm and evolutionary optimization, and tabular reinforcement learning.

    Key Features

    • Click-to-Plot Data: Place your own points directly on the 2D canvas instead of relying on fixed presets.
    • 13 Fundamental ML & AI Topics: Spans Regression, Classification, Deep Learning, Clustering, Fuzzy Logic, Evolutionary Optimization, and RL.
    • Scikit-Learn Python References: Every algorithm includes production-ready Python code snippets matching official scikit-learn conventions.
    • Formulas & Step Breakdown: Real mathematical notation (Gini, Margin, Bellman, Softmax, Sigmoid) with plain-language step explanations.
    • 100% In-Browser Memory: Zero tracking, zero server dependencies, and immediate client execution.

    Frequently Asked Questions

    How do Decision Trees choose axis-aligned split points?
    The tree evaluates candidate thresholds along feature axes and selects the split that maximizes Gini reduction (or Information Gain), minimizing class impurity in child nodes.
    What are Support Vectors in an SVM?
    Support vectors are the critical data points that lie directly on or inside the margin gutters. They dictate the orientation and width of the maximum-margin hyperplane.
    How does Fuzzy C-Means differ from crisp k-Means?
    In standard k-Means, points are assigned strictly to 1 cluster. In Fuzzy C-Means, each point possesses a continuous degree of membership across all clusters, showing overlap and uncertainty.
    How does Particle Swarm Optimization avoid local minima?
    Particles balance inertia with two gravitational pulls: cognitive memory (personal best position) and social cooperation (global swarm best position), exploring the landscape collaboratively.
    How does Q-learning discover an optimal policy?
    Using the Bellman optimality backup equation, the agent updates expected state-action values Q(s, a) from environmental step rewards and discounted future value estimates.