Confluence — open-source платформа для изучения машинного обучения через эксперименты. Интерактивные визуализации, 38 алгоритмов, 25 датасетов. Попробуйте прямо сейчас!
Когда я только начинал изучать машинное обучение, я заметил одну закономерность. Я читал главу об алгоритме, смотрел видео на YouTube, открывал Jupyter notebook, читал документацию scikit-learn, искал на Stack Overflow, когда что-то не работало, а затем пытался собрать всё воедино. Даже после всего этого я всё равно задавался вопросами: почему изменение одного гиперпараметра полностью меняет границу решения? Почему один алгоритм работает лучше другого на одном и том же датасете? Что на самом деле происходит во время обучения модели? Почему модель сделала именно этот прогноз? Было много отличных ресурсов, но они были разрознены. Некоторые сайты имели красивые визуализации, но поддерживали лишь несколько алгоритмов. Другие фокусировались на математике, но не были интерактивными. Большинство демо были статичными, и очень немногие позволяли экспериментировать с реальными датасетами, видя влияние каждого изменения. Поэтому я решил создать инструмент, который сам хотел бы иметь во время обучения.
Confluence — это open-source платформа для изучения машинного обучения через эксперименты. Вместо того чтобы только читать об алгоритме, вы можете взаимодействовать с ним. Выберите датасет, настройте гиперпараметры, сравните алгоритмы бок о бок, изучите прогнозы и наблюдайте, как модели обучаются в реальном времени. Всё работает на бэкенде FastAPI с использованием реальных моделей scikit-learn, а не упрощённых браузерных реализаций.
В настоящее время проект включает:
Цель не в том, чтобы заменить ноутбуки или продакшн-библиотеки. Она в том, чтобы сделать процесс обучения более наглядным и интуитивным.
Допустим, вы хотите сравнить Logistic Regression и SVM на датасете Iris. В Confluence вы выбираете датасет, выбираете два алгоритма, настраиваете гиперпараметры через слайдеры и сразу видите, как меняются границы решений и метрики. Вот как выглядит код, который генерируется для Logistic Regression:
from sklearn.linear_model import LogisticRegression
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
# Загружаем датасет Iris
data = load_iris()
X, y = data.data[:, :2], data.target # используем только первые два признака для визуализации
# Разделяем на обучающую и тестовую выборки
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# Создаём модель Logistic Regression
model = LogisticRegression(C=1.0, solver='lbfgs', multi_class='auto')
# Обучаем модель
model.fit(X_train, y_train)
# Делаем прогнозы
y_pred = model.predict(X_test)
# Оцениваем точность
accuracy = accuracy_score(y_test, y_pred)
print(f'Точность: {accuracy:.2f}')Вы можете менять значение C прямо в интерфейсе и видеть, как меняется точность и граница решения.
Создание Confluence научило меня гораздо большему, чем просто машинное обучение. Мне пришлось думать об архитектуре приложения, производительности фронтенда, дизайне API бэкенда, пайплайнах визуализации, управлении состоянием, кэшировании, деплое и создании опыта, который чувствуется отзывчивым даже при выполнении реальных ML-вычислений. Это напомнило мне, что создание проектов — один из самых быстрых способов учиться.
Если вы изучаете машинное обучение, преподаёте его или используете профессионально, попробуйте Confluence. Перейдите на сайт, выберите датасет и алгоритм, поиграйте с гиперпараметрами. Вы увидите, как интерактивное взаимодействие углубляет понимание. Проект открыт для ваших идей и вклада — каждый отзыв, сообщение об ошибке и пул-реквест делают его лучше.
Сайт: confluence.website
GitHub: github.com/mahirmlk/Confluence
Хочешь закрепить знания на практике?
Решай задачи на Algolit — интерактивная платформа для обучения
Начать бесплатно →