Что такое машинное обучение: задачи, признаки и ответы
Машинное обучение — это способ строить правила по примерам, когда все условия трудно или дорого записать вручную. Разработчик задаёт данные, ожидаемый результат и способ измерения ошибки, а алгоритм подбирает параметры модели, которые помогают делать прогнозы для новых объектов.
Чем модель отличается от обычной программы
В обычной программе человек формулирует правила: если температура ниже нуля, показать предупреждение. В ML-системе правило получается из наблюдений. Например, для оценки стоимости квартиры модель сопоставляет площадь, район, этаж и состояние с известными ценами, а затем ищет зависимость между признаками и ответом.
Обученная модель не «понимает» квартиру так, как человек. Она вычисляет функцию, параметры которой были настроены на примерах. Поэтому качество результата зависит не только от выбранного алгоритма, но и от того, насколько данные соответствуют будущей ситуации.
Четыре части учебной задачи
- Объект — то, для чего нужен прогноз: квартира, письмо, фотография или клиент.
- Признаки — измеримые свойства объекта, доступные к моменту предсказания.
- Целевая переменная — правильный ответ в исторических данных.
- Метрика — число, по которому сравнивают варианты решения.
Если ответом является число, например цена или время доставки, обычно решают задачу регрессии. Если нужен один из классов — «спам» или «не спам» — это классификация. Когда готовых ответов нет, можно искать структуру самих данных: группы похожих объектов или компактное представление признаков.
Первый пример на готовом датасете
В scikit-learn модель имеет методы fit для обучения и predict для прогноза. Следующий фрагмент намеренно мал: его цель — показать границу между данными и моделью.
from sklearn.datasets import load_diabetes
from sklearn.linear_model import LinearRegression
X, y = load_diabetes(return_X_y=True)
model = LinearRegression()
model.fit(X, y)
predictions = model.predict(X[:3])
print(predictions.round(1))Проверять качество на тех же строках нельзя: модель уже видела их при обучении. Здесь код иллюстрирует интерфейс, а корректное разделение данных появится в отдельном уроке.
Где чаще всего ошибаются в начале
Новичок иногда начинает с названия алгоритма: «хочу применить нейросеть». Полезнее сначала сформулировать решение, которое будет принято по прогнозу, доступные в этот момент признаки и цену разных ошибок. Без этого высокая абстрактная точность может оказаться бесполезной для продукта.
Другая ошибка — считать найденную зависимость причинной. Если продажи зонтов связаны с числом пробок, это ещё не значит, что зонты создают заторы: обе величины может менять дождь. Предсказательная модель обнаруживает закономерность, но сама по себе не доказывает причину.
Практика: сформулируйте задачу
Выберите один бытовой прогноз: время поездки, необходимость полива растения или категорию сообщения. Запишите объект, три допустимых признака, целевую переменную и действие после прогноза. Затем найдите признак, который был бы известен только после события: его нельзя использовать при реальном предсказании.
Что важно запомнить
- ML-модель получает правило из примеров, а не из готового списка условий.
- Постановка состоит из объектов, признаков, целевого ответа и метрики.
- Классификация предсказывает класс, регрессия — числовую величину.
- Закономерность в прогнозе не является автоматическим доказательством причины.