Многие средства глубокого обучения используют Python, но именно библиотека PyTorch по-настоящему «питоническая». Легкая в освоении для тех, кто знаком с NumPy и scikit-learn, PyTorch упрощает работу с глубоким обучением, обладая в то же время богатым набором функций. PyTorch прекрасно подходит для быстрого создания моделей и без проблем масштабируется до корпоративного проекта. PyTorch используют такие компании как Apple и JPMorgan Chase.
Навыки работы с этой библиотекой пригодятся вам для карьерного роста. Вы научитесь создавать нейронные сети и системы глубокого обучения с помощью PyTorch. Книга поможет быстро приступить к созданию реального проекта с нуля. В ней описаны лучшие практики всего конвейера работы с данными, включая PyTorch Tensor API, загрузку данных на Python, мониторинг обучения и визуализацию полученных результатов.
Говоря другими словами, речь идет о многомерных массивах. Размерность тензора соответствует числу индексов, при помощи которых можно ссылаться на скалярные значения внутри тензора
• Модель сегментации определяет принадлежность отдельных пикселей или вокселей к определенному классу. Этим сегментация отличается от классификации, которая работает на уровне всего изображения.
• Архитектура U-Net в свое время была революционной архитектурой для задач сегментации.
• Используя сегментацию с последующей классификацией, мы можем реализовать обнаружение объектов, не предъявляя слишком серьезных требований к данным и вычислениям.
• Наивные подходы к 3D-сегментации могут привести к быстрому использованию слишком большого объема оперативной памяти у ГП текущего поколения. Ограничение объема данных, передаваемых модели, может помочь снизить затраты оперативной памяти.
• Можно обучать модель сегментации на кадрированных изображениях, одновременно проверяя полноценные срезы изображения. Эта гибкость может оказаться полезна с точки зрения балансировки классов.
• Взвешивание потерь позволяет выделить значимость потерь определенных классов или подмножеств обучающих данных, чтобы отклонить поведение модели в нужную сторону. Этот механизм, вкупе с балансировкой классов, является полезным инструментом для регулировки производительности модели.
• TensorBoard может отображать 2D-изображения, созданные во время обучения, и сохранять историю изменений моделей в ходе обучения. Эту возможность используют для визуального отслеживания изменений в выходных данных модели по мере прохождения обучения.
• Параметры модели можно сохранить на диск и загрузить обратно, чтобы воссоздать ранее сохраненную модель. Точная реализация модели при этом может даже быть другой, если параметры старой и новой модели в точности соответствуют друг другу.
• Бинарные метки и пороговое значение бинарной классификации разделили исходный набор данных на четыре квадранта: истинно положительные, истинно отрицательные, ложноотрицательные и ложноположительные. Эти четыре параметра лежат в основе метрик эффективности, которые мы ввели.
• Отклик — способность модели максимизировать истинно положительные результаты. Положительная классификация каждого элемента гарантирует идеальный отклик, поскольку все правильные ответы будут отмечены, но при этом снижается точность.
• Точность — способность модели минимизировать ложные срабатывания. Если не выбрать ничего, то это гарантирует идеальную точность, поскольку неправильных ответов не было, но также свидетельствует о плохом отклике.
• Метрика F1 объединяет точность и полноту в единую метрику, которая описывает производительность модели. Мы используем метрику F1, чтобы определить, какое влияние изменения в алгоритме обучения или модели оказывают на производительность.
• Балансировка обучающего набора до равного количества положительных и отрицательных элементов во время обучения может привести к улучшению работы модели (определяемой как наличие положительной, увеличивающейся метрики F1).
• Дополнение данных — это взятие имеющихся реальных данных и такое их изменение, чтобы полученный дополненный элемент нетривиально отличался от исходного, но оставался репрезентативным для элементов того же класса. Это позволяет избежать переобучения в случаях, когда данные ограничены.
• К общим стратегиям дополнения данных относят изменение ориентации, зеркальное отражение, изменение масштаба, смещение и добавление шума. В зависимости от особенностей проекта, могут использоваться и другие, более конкретные стратегии.