Краткие итоги главы
• Тензоры образуют основу современных систем машинного обучения. Они бывают разных видов в зависимости от типа (dtype), ранга (rank) и формы (shape).
• Числовыми тензорами можно манипулировать с помощью тензорных операций (таких как сложение, тензорное произведение или поэлементное умножение), каждая из которых имеет геометрическую интерпретацию. Вообще, все в глубоком обучении имеет геометрическую интерпретацию.
• Модели глубокого обучения состоят из цепочек простых тензорных операций, параметризованных весами, которые сами являются тензорами. Веса модели — это место, где хранятся накопленные «знания».
• Обучение означает поиск комбинации параметров модели, минимизирующих функцию потерь для данного набора обучающих данных и соответствующих им целей.
• Обучение происходит путем извлечения пакетов случайных образцов данных и их целей и вычисления градиента параметров модели с учетом потерь в пакете. Затем параметры модели немного смещаются (величина смещения определяется скоростью обучения) в направлении, противоположном направлению градиента. Это называется стохастическим градиентным спуском на небольших пакетах.
• Процесс обучения становится возможным благодаря тому, что все тензорные операции в нейронных сетях являются дифференцируемыми и, следовательно, позволяют применять цепное правило для вывода функции градиента, отображающей текущие параметры и текущий пакет данных в значение градиента. Это называется обратным распространением ошибки.
• В последующих главах вам часто будут встречаться два ключевых понятия — функции потерь и оптимизаторы. Они должны быть определены до передачи данных в модель.
• Функция потерь — это величина, которую требуется свести к минимуму в ходе обучения, поэтому она должна представлять собой меру успеха для решаемой вами задачи.
• Оптимизатор определяет точный способ использования градиента потерь для изменения параметров: например, это может быть оптимизатор RMSProp, реализующий градиентный спуск с импульсом, и др.