TGViewer
Интеллект в коде: Python, AI, Data Science Интеллект в коде: Python, AI, Data Science @ai_in_progress · 125 subscribers
Post #124 60
🚂 Train-test split: Как оценить качество модели машинного обучения?

Когда мы обучаем модель машинного обучения, важно понимать, насколько хорошо она справляется с задачей. Но как это сделать правильно? Ведь если оценивать модель на тех же данных, на которых она обучалась, результат может оказаться слишком оптимистичным.

Здесь на помощь приходит train-test split — метод разделения данных на две части: тренировочную и тестовую .

Как это работает?
1. Разделение данных :
Весь датасет делится на две выборки:
- Тренировочная (70-80%) : На этих данных модель учится.
- Тестовая (20-30%) : Эти данные используются для проверки качества модели.

Пример пропорций: 80/20 или 70/30. Главное — тестовая выборка должна быть достаточно большой, чтобы оценка была репрезентативной.

2. Случайный отбор :
Данные распределяются случайным образом, чтобы тестовая выборка отражала все возможные случаи из исходных данных.

3. Оценка качества :
После обучения модели на тренировочной выборке её "экзаменуют" на тестовой. Это позволяет понять, как модель справляется с данными, которые она раньше не видела.

Метрики качества
Чтобы оценить, насколько хорошо работает модель, используют различные метрики. Одна из самых простых — точность (accuracy) .

Точность (accuracy)
Это отношение правильных прогнозов к общему количеству прогнозов:

Accuracy = Количество правильных предсказаний / Общее количество предсказаний

Пример кода:
from sklearn.metrics import accuracy_score

# true_label — истинные метки, pred_label — предсказания модели
accuracy = accuracy_score(true_label, pred_label)
print(f"Точность модели: {accuracy:.2f}")


Матрица ошибок (Confusion Matrix)
Если задача классификации имеет два класса (например, 0 и 1), то оценить качество можно с помощью матрицы ошибок . Это таблица, которая показывает, сколько раз модель правильно или неправильно предсказала каждый класс.

Четыре ключевых показателя:
➖True Positive (TP) : Элементы, верно предсказанные как положительный класс (класс 1).
➖True Negative (TN) : Элементы, верно предсказанные как отрицательный класс (класс 0).
➖False Positive (FP) : Элементы, предсказанные как положительный класс, но на самом деле относящиеся к отрицательному.
➖False Negative (FN) : Элементы, предсказанные как отрицательный класс, но на самом деле относящиеся к положительному.

Пример кода:
from sklearn.metrics import confusion_matrix

# Строим матрицу ошибок
matrix = confusion_matrix(true_label, pred_label)
print("Матрица ошибок:")
print(matrix)


Почему это важно?
➖Train-test split помогает избежать переобучения модели. Переобученная модель отлично работает на тренировочных данных, но плохо обобщает новые данные.
➖Матрица ошибок позволяет глубже понять, где именно модель ошибается. Например, много ложноположительных результатов (FP) может говорить о том, что модель слишком агрессивно предсказывает положительный класс.

#MachineLearning #DataScience #TrainTestSplit #ConfusionMatrix
  • 🔥 4
  • 👍 3
  • 🫡 1
More from @ai_in_progress
  1. Mar 4, 2026Seedance 2.0 теперь стоит копейки. Официальные цены API вышли сегодня! ByteDance только чт…
  2. Mar 2, 2026🔥ГЛАВНЫЕ НОВОСТИ ИИ ЗА СЕГОДНЯ ➖Grok Imagine взорвал всех Новая фича Расширение от кадра…
  3. Mar 1, 2026Seedance 2.0 - модель, о которой сейчас говорят почти все, кто следит за развитием AI-виде…
  4. Feb 28, 2026Небольшое обновление формата канала📊 Изначально этот канал создавался исключительно для м…
  5. Feb 10, 2026Аналитический пайплайн: двигатель, который превращает данные в решения Вы слышали модное «…
  6. Feb 7, 2026С возвращением в мир данных! 🌐 Ваш канал по аналитике снова в активной фазе. Перерыв окон…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →