Часть II • Введение в TensorFlow.js
совершенно не связанных со зрением или изображениями (например, при обработке
текстов на естественном языке), — еще один довод в пользу исследования возмож
ностей применения глубокого обучения в машинном зрении
1
. Но прежде, чем углу
биться в задачи машинного зрения, обсудим способы представления изображений
в глубоком обучении.
4.1. От векторов к тензорам:
представление изображений
В предыдущих двух главах мы рассмотрели задачи машинного обучения, в том чис
ле использование численных входных данных. Например, алгоритм предсказания
времени скачивания из главы 2 принимает в качестве входных данных одно число
(размер файла). Роль входных данных в задаче предсказания цен на бостонскую не
движимость играет массив из 12 чисел (число комнат, уровень преступности и т. д.).
Объединяет эти задачи тот факт, что каждый из входных примеров можно предста
вить в виде «плоского» (без дополнительных уровней вложенности) массива чисел,
соответствующего одномерному тензору в TensorFlow.js. Изображения в глубоком
обучении представляются иначе.
Для представления изображения мы будем использовать трехмерный тензор.
Первые два измерения этого тензора — обычные высота и ширина. Третье — цве
товой канал. Например, цвета часто кодируются с помощью схемы RGB. В этом
случае получается три канала, по одному для каждого из трех цветов, в результате
чего размер третьего измерения равен 3. Кодированное с помощью RGB цветное
изображение размером 224
×
224 пиксела можно представить в виде трехмерного
тензора формы
[224,
224,
3]
. В некоторых задачах машинного зрения есть возмож
ность обрабатывать не цветные (например, в оттенках серого) изображения. В по
добных случаях число каналов равно 1 — при представлении в виде трехмерного
тензора это приводит к тензору формы
[height,
width,
1]
(см. пример на рис. 4.1)
2
.
Подобный режим кодирования изображений называется
«высота — ширина —
канал»
(heightwidthchannel,
HWC
). При обработке изображений методами глу
бокого обучения наборы изображений обычно объединяются в батчи — так можно
эффективнее распараллеливать вычисления. При обработке изображений по батчам
измерение отдельных изображений — всегда первое действие, аналогично тому, как
мы объединяли одномерные тензоры в двумерный тензор батчей в главах 2 и 3. Сле
довательно, батч изображений представляет собой четырехмерный тензор с такими
1
Читателям, которых особенно интересуют вопросы применения глубокого обучения в ма
шинном зрении, рекомендуем обратиться к книге:
Elgendy M.
Grokking Deep Learning for
Computer Vision. — Manning.
2
В качестве альтернативного представления можно схлопнуть все пикселы изображения
и соответствующие им значения цветов в одномерный тензор (плоский числовой массив).
Но тогда становится сложнее извлечь пользу из связей между цветовыми каналами пи
кселов и двумерным пространственным отношением между этими пикселами.
Do'stlaringiz bilan baham: |