2. Предварительные знания
Чтобы учиться глубокому обучению, сначала нужно освоить некоторые базовые навыки. Все методы машинного обучения так или иначе извлекают информацию из данных. Поэтому сначала мы изучим практические навыки работы с данными: их хранение, обработку и предварительную подготовку.
Машинное обучение обычно работает с большими наборами данных. Некоторые наборы данных можно представлять как таблицу, в которой строки соответствуют примерам, а столбцы — признакам. Линейная алгебра даёт методы для работы с табличными данными. Мы не будем вдаваться в детали, а сосредоточимся на основных принципах матричных операций и на их реализации.
Глубокое обучение — это обучение через оптимизацию.
Для модели с параметрами мы хотим найти такие значения параметров, при которых модель лучше всего приближает данные.
На каждом шаге алгоритма, чтобы понять, как именно менять параметры, нужны некоторые знания математического анализа.
В этой главе мы кратко их изложим.
К счастью, пакет autograd вычисляет производные автоматически, и о нём тоже пойдёт речь в этой главе.
Машинное обучение также связано с предсказаниями: зная наблюдаемую информацию, каким может быть значение некоторого неизвестного свойства? Чтобы строго делать выводы в условиях неопределённости, нужен язык теории вероятностей.
Наконец, официальная документация содержит множество описаний и примеров, которые выходят за рамки этой книги. В конце главы мы покажем, как найти нужную информацию в официальной документации.
Книга не предъявляет к математической подготовке читателя чрезмерных требований: достаточно правильно понимать математику, необходимую для глубокого обучения. Это не означает, что математики в книге нет: в этой главе кратко изложены базовые и часто используемые математические сведения, чтобы читатель мог понять бо́льшую часть математики, встречающейся в тексте. Если же читатель хочет глубоко разобраться во всей математике, он может дополнительно изучить материал из математического приложения к книге.