Язык математики
Как читать формулу
Типы, размерности и соглашения о буквах — минимум, после которого формула перестаёт быть шифром
Программист, впервые открывший статью по машинному обучению, обычно спотыкается не о математику. Он спотыкается о нотацию. Формула выглядит как шифр, потому что в ней не подписаны типы: непонятно, что здесь число, что вектор, а что функция от двух аргументов.
Хорошая новость: в статьях по ML нотация почти стандартизирована. Достаточно выучить соглашения — и половина формул начнёт читаться с листа.
Первое правило: у каждого символа есть тип и форма
Возьмём самую известную формулу в машинном обучении — предсказание линейной модели.
Наведите курсор на любую часть формулы — или на выделенные слова в тексте.
Здесь
Как только вы выписали для каждого символа его тип и форму, формула перестаёт быть шифром. Это буквально механическая процедура, и она работает всегда.
Соглашения о буквах
В статьях по ML почти всегда придерживаются такой системы:
| Написание | Что обозначает | Примеры |
|---|---|---|
| строчная латинская | скаляр или вектор | , , |
| жирная строчная | вектор | , |
| ЗАГЛАВНАЯ | матрица | , , |
| строчная греческая | параметр, гиперпараметр | , , |
| каллиграфическая | множество или распределение | , , |
Соглашение не закон: авторы его нарушают, и жирное начертание часто опускают. Но если вы видите и рядом — почти наверняка первое матрица, второе вектор, и запись означает умножение матрицы на вектор.
Проверка размерностей
Главный практический навык — shape-исчисление. Перед тем как понимать смысл формулы, проверьте, что размерности сходятся. Если имеет форму , а — форму , то имеет форму . Внутренние размерности обязаны совпасть; они «схлопываются».
Если размерности не сходятся — вы неправильно прочитали формулу, а не автор ошибся. В девяти случаях из десяти это так.
Что делать дальше
Заведите файл-глоссарий нотации. Каждый раз, встречая незнакомый символ, выписывайте его вместе с типом и формой. К концу курса это будет ваша персональная шпаргалка, и она окажется полезнее любой чужой.
Источники
- Deisenroth, Faisal, Ong — Mathematics for Machine Learning — Раздел «Foreword» и введение к главе 2 — про нотацию и соглашения
- Hammack — Book of Proof — Главы 1–2, язык множеств и кванторов
Проверки
0 из 2Согласование размерностей
Матрица имеет форму , вектор — форму . Какую форму имеет ?
Скалярное произведение
Реализуйте функцию
dot(a, b), которая вычисляет скалярное произведение двух векторов одинаковой длины:Никаких библиотек — только цикл. Смысл упражнения в том, чтобы формула и код стояли рядом.
Для векторов разной длины бросьте исключение (
ValueErrorв Python,Errorв JS/TS).Загрузка редактора…
Ctrl/⌘ + Enter