Вопрос проверяет понимание двух основных парадигм машинного обучения: supervised и unsupervised learning.
Обучение с учителем (supervised learning) и обучение без учителя (unsupervised learning) — это два фундаментальных подхода в машинном обучении, которые различаются наличием целевой переменной в данных.
В этом подходе модель обучается на размеченных данных, где каждый пример имеет пару "признаки — правильный ответ". Цель — научиться предсказывать ответ для новых, невиданных ранее данных. Применяется для задач классификации (например, определение спама в письмах) и регрессии (прогнозирование цены дома).
from sklearn.linear_model import LinearRegression
import numpy as np
# Пример: предсказание цены по площади
X = np.array([[50], [80], [120]]) # площадь
Y = np.array([5, 8, 12]) # цена
model = LinearRegression()
model.fit(X, Y)
print(model.predict([[100]])) # предсказание для 100 кв.мЗдесь данные не имеют меток. Модель самостоятельно ищет закономерности, структуры или зависимости. Основные задачи — кластеризация (группировка похожих объектов) и снижение размерности. Пример: сегментация клиентов по поведению.
from sklearn.cluster import KMeans
import numpy as np
# Пример: группировка точек
X = np.array([[1, 2], [1, 4], [10, 12], [15, 18]])
kmeans = KMeans(n_clusters=2)
kmeans.fit(X)
print(kmeans.labels_) # метки кластеров для каждой точкиВывод: обучение с учителем применяется, когда есть исторические данные с известными ответами и нужно автоматизировать предсказания. Обучение без учителя полезно для исследования данных, поиска скрытых паттернов или когда разметка данных слишком дорога.