Спуск в ML: линейная регрессия

Давно известно, что сверчки (вид насекомых) чаще стрекочут в жаркие дни, чем в прохладные. На протяжении десятилетий профессиональные ученые и ученые-любители каталогизировали данные о количестве чириков в минуту и ​​температуре. В качестве подарка на день рождения ваша тетя Рут дарит вам свою базу данных по крикету и просит изучить модель для предсказания этих отношений. Используя эти данные, вы хотите исследовать эту связь.

Сначала изучите свои данные, нанеся их на график:

Необработанные данные количества щебетов в минуту (ось X) в зависимости от температуры (ось Y).

Рисунок 1. Число щебетов в минуту в зависимости от температуры в градусах Цельсия.

Как и ожидалось, график показывает рост температуры с увеличением количества щебетов. Является ли эта зависимость между щебетом и температурой линейной? Да, вы можете нарисовать одну прямую линию, как показано ниже, чтобы аппроксимировать это отношение:

Наилучшая линия, устанавливающая соотношение числа щебетов в минуту (ось X) и температуры (ось Y).

Рисунок 2. Линейная зависимость.

Правда, линия не проходит через каждую точку, но линия четко показывает связь между щебетом и температурой. Используя уравнение для линии, вы можете записать это отношение следующим образом:

$$ y = mx + b $$

куда:

  • \(y\) — это температура в градусах Цельсия — значение, которое мы пытаемся предсказать.
  • \(m\) — наклон линии.
  • \(x\) — это количество щебетов в минуту — значение нашей входной функции.
  • \(b\) — точка пересечения по оси y.

По соглашению в машинном обучении вы будете писать уравнение для модели немного по-другому:

$$ y' = b + w_1x_1 $$

куда:

  • \(y'\) — прогнозируемая метка (желаемый результат).
  • \(b\) — это смещение (пересечение по оси y), иногда называемое \(w_0\).
  • \(w_1\) — это вес признака 1. Вес — это то же понятие, что и «наклон» \(m\) в традиционном уравнении прямой.
  • \(x_1\) — это функция (известный ввод).

Чтобы вывести (предсказать) температуру \(y'\) для нового значения количества чириков в минуту \(x_1\), просто подставьте значение \(x_1\) в эту модель.

Хотя в этой модели используется только одна функция, более сложная модель может полагаться на несколько функций, каждая из которых имеет отдельный вес (\(w_1\), \(w_2\)и т. д.). Например, модель, основанная на трех функциях, может выглядеть следующим образом:

$$y' = b + w_1x_1 + w_2x_2 + w_3x_3$$