Входные метки для семантической сегментации с U-Net как один слой - PullRequest
0 голосов
/ 25 февраля 2019

Например, при выполнении семантической сегментации с U-Net представляется обычной практикой предоставлять данные метки в виде тензоров с горячим кодированием. В другом вопросе SO пользователь указал, что это связано с метками, обычно представляющими категориальные значения.Подача их в сеть в виде меток классов только в одном слое (в виде значений интенсивности оттенков серого) создаст трудности.

В другом сообщении в блоге однако автор объясняет, что ярлыки

"[...] иногда [получают] упаковывают как изображения в оттенках серого, гдеИнтенсивность пикселей представляет идентификатор класса [...]. С этим методом проще всего работать. Он позволяет использовать файл небольшого размера для распространения и представления [...] одного горячего вектора [используют] больше памяти, чем [формат кодировки оттенков серого]. "

Мое оборудование очень ограничено, и я надеюсь, что кодирование меток в виде однослойных тензоров серого, а не n-слоев (n - это число классов длясегмент), приведет к снижению использования памяти.Однако автор блога затем заявляет:

«Даже если используемая вами среда глубокого обучения принимает данные меток в качестве идентификаторов классов, как в [формате серой шкалы], они преобразуют эти данныек горячему кодированию за кулисами. "

Означает ли это, что не было бы никакой экономии памяти в конце концов?

Если это того стоит, как бы яперейти к реализации этого в читателе наборов данных?Я также не сталкивался с какой-либо реализацией, где фактически применялась маркировка в оттенках серого.Поэтому я также был бы благодарен за любые ссылки на реализации, которые использовали метки серого для семантической сегментации!

Я работаю с PyTorch, и мой код основан на этой реализации , сРазница в том, что у меня есть 3 класса для сегментирования.

Любые предложения / ссылки приветствуются!

1 Ответ

0 голосов
/ 27 февраля 2019

Это может помочь вам сэкономить дисковую память, поскольку вы сможете хранить метки, основную правду, как изображение в оттенках серого (ширина, высота, 1), а не как больший трехмерный тензор формы (ширина, высота, n).Но в процессе обучения вам нужно будет преобразовать изображения с истинным оттенком серого в трехмерный тензор, чтобы иметь возможность обучать вашу сеть.Таким образом, это не поможет вам снизить стоимость ОЗУ процесса.

Если вам действительно нужно уменьшить использование ОЗУ, вы можете уменьшить размер пакета обучения или размер изображения.

...