Автоэнкодер: подход к понижению размерности векторного пространства с контролируемой потерей информации

ИНФОРМАТИКА, ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА, ОБРАБОТКА И ЗАЩИТА ИНФОРМАЦИИ

УДК 004.852; 004.855.5

АВТОЭНКОДЕР: ПОДХОД К ПОНИЖЕНИЮ РАЗМЕРНОСТИ ВЕКТОРНОГО ПРОСТРАНСТВА С КОНТРОЛИРУЕМОЙ ПОТЕРЕЙ ИНФОРМАЦИИ

Н.В. Акинина, М.В. Акинин, А.В. Соколова, М.Б. Никифоров, А.И. Таганов

Рассмотрены различные способы описания характеристик изображений, а также применение автоэнкодера для классификации изображений. Приведены результаты эксперимента, показывающие эффективность использования автоэнкодера для решения задач классификации образов.

Ключевые слова: нейронная сеть, анализ главных компонент, анализ независимых компонент, автоэнкодер.

Введение

Задача классификации - формализованная задача, в которой имеется множество объектов, разделенных некоторым образом на классы. Задано конечное множество объектов, для которых известно, к каким классам они относятся, т.е. задана выборка. Классовая принадлежность элементов выборки неизвестна. Следовательно, задача классификации сводится к построению алгоритма, способного отнести произвольный элемент выборки к одному из заранее определенных классов. Для решения поставленной задачи применяются искусственные нейронные сети, обученные с учителем [1, 2].

Распознавание образов - это отнесение исходных данных к определенному классу с помощью выделения существенных признаков, характеризующих эти данные из общей массы несущественных данных. Таким образом, задача распознавания образов сводится к их классификации [3]. Чтобы было возможно произвести классификацию исследуемая выборка образов должна быть описана одним из известных способов.

Проблема

Существенный интерес представляет описание пикселей изображения (описание образа) посредством описания покрывающих их текстур (текстурные признаки), поскольку такие признаки учитывают не только спектральные яркости пикселя в каждом из каналов, но также спектральные яркости пикселей в окрестностях рассматриваемого пикселя и взаимосвязь между данными спектральными яркостями.

Существуют следующие способы описания текстур:

- описание текстур с помощью признаков, рассчитываемых по гистограмме изображения;

- спектральные текстурные характеристики;

- энергетические характеристики Лавса;

- текстурные признаки Харалика;

- прочие способы.

Описание текстур посредством использования энергетических характеристик Лавса обладает следующими достоинствами:

- возможно компактно описывать большинство характерных паттернов структуры текстуры (периодическое повторение элементов текстуры, множество несвязанных мелких элементов, отдельные относительные большие пятна и др.);

- возможно компактно описывать уровень яркости текстуры, масштабированного к одинаковому уровню освещения по всему снимку;

Недостатком такого подхода являются существенные временные затраты на расчет описания текстуры.

По сравнению с характеристиками Лавса достоинством признаков Харалика является их большая информативность и большая гибкость характера описания, а недостатком — их меньшая компактность, что можно объяснить необходимостью расчета одних и тех же характеристик для нескольких матриц вхождений;

Из перечисленных подходов к описанию текстур наиболее эффективны в задачах обработки изображений энергетические характеристики Лавса и текстурные признаки Харалика [4, 5].

Следующим после описания обрабатываемого изображения шагом является классификация пикселей изображения.

Пусть имеется некоторая выборка образов Т известного размера

К(1).

Т = [ТъТ2,...,Тк}.

Классификация сводится к отнесению каждого из образов Т к одному из классов множества С [6]. Классификация выполняется при помощи классификатора с

С = [ст] = с[Т];ст = с[Т,т];ст е С;т = .1,М

В (2) множество C = (cq}; q = 1, Q - множество индексов q классов,

к которым может быть отнесен образ. Каждый из индексов маркирует отдельный класс.

Классификация образов Т происходит посредством применения классификатора da^sM0^^ который по своей сути есть функция classification(description(T)) где description(T) - функция описания образа Т. Так как каждый из образов Т описывается при помощи некоторого набора признаков, то функция описания образов принимает вид (3).

description

где vT - вектор признаков образа Т. В свою очередь совокупность векторов

t — T

признаков всех образов составляет множество v^ е V;i = 1,I,v^ е [-1,1], где I - размерность пространства признаков.

При использовании текстурных признаков для решения прикладных задач возникает проблема катастрофически больших размерностей векторных пространств, образуемых текстурными характеристиками [7]. Следовательно, необходимо предусмотреть способ понижения размерности пространства признаков, то есть способ преобразования V->V*,

где будет выполняться условие I * < I

Понижение размерности пространства признаков влечет за собой проблему потери практически важной информации при выполнении преобразования. Чтобы контролировать данный процесс, необходимо определить некоторую функцию inf o(V ,V *) как инструмент для оценки потери информации при преобразовании. Такая функция позволяет контролировать процесс предварительной обработки информации перед проведением непосредственно классификации образов, так как классифицировать разумней уже уменьшенные по размеру вектора признаков образов, и при необходимости корректировать процесс понижения размерности, чтобы избежать потери важной для решаемой прикладной задачи информации. Конкретный вариант функции зависит от способа понижения размерности.

Алгоритм

Анализ главных компонент

5

Х =

Х11 х\2

х2\ х22

х1п х2 п

ХП ХЬ2  х1п

где хк соответствует /с-ому входному образу, I — общее количество образов.

X 1

X ,

Нейронная

сеть

Рис. 1. Модель РСА сети.

± Ух

н* У 2

н* У

Пусть матрица X— центрированная, то есть вектор математических ожиданий \х = 0. Этого можно добиться при помощи преобразований

I хИ

Ху — Ху М7, М- у X ?=1

Матрица ковариаций (6) входных данных X определяется следующим образом

К =

а21 а22

<*2п

<*П - °1п

где <5у — ковариация между ¿-той и ]-той компонентой входных образов. Элементы матрицы коварнаций вычисляются по формуле

ь к=1

РСА состоит в нахождении линейных комбинаций таких исходных переменных

У1= 1*1 + ^21х2 + ••• + ™п\хп

У 2 = ^12 х1 + ^22 х2 + ••• + ™п 2 хп

...

Ур = рх1 + ^2 рх2 + ••• + ™прхп что справедливы следующие выражения

ЯУг, У]) = 0; г = 1, п,] = 1, п,

I,

I Ягг = I я( УгУ

Я У1) >Я У2) > ••• >Я( Ур),

п п

По представленным выше выражениям видно, что переменные у; некоррелированы, упорядочены по возрастанию дисперсии и сумма дисперсий входных образов остается без изменений• Следовательно, подмножество первых р переменных у характеризует большую часть общей дисперсии В результате получается представление входной информации •

Переменные Уг, г = 1, р называются главными компонентами • В матричной форме преобразование главных компонент представляется в виде

¥ = ЖгХ,

жгж] = 1, "г = ],

Т (11) ЖгЖ] = 0, "г Ф ],

Жг =

Для определения главных компонент необходимо определить весовые коэффициенты Ж] = 1, ..., р•

Другой, более инновационный, способ понижения размерности анализируемого векторного пространства — это применение автоэнкодера^

Автоэнкодер (автоассоциатор) [9]— специальная архитектура нейронных сетей, позволяющая применять обучение без учителя при использовании метода обратного распространения ошибки Простейшая архитектура автоэнкодера приведена на рис 2 — сеть прямого распространения, без обратных связей, наиболее схожая с перцептроном и содержащая входной слой, промежуточный слой и выходной слой

7

Layer 1

Рис. 2. Архитектура автоэнкодера

Главная цель обучения автоэнкодера — добиться того, чтобы входной вектор признаков вызывал отклик сети, равный входному вектору. То есть задача функционирования автоэнкодера сводится к нахождению аппроксимации такой функции, чтобы отклик нейронной сети равнялся значению входных признаков с точностью до заданного значения ошибки. Чтобы решение поставленной задачи было нетривиальным, топология нейронной сети должна удовлетворять одному из следующих условий [10]:

- количество нейронов скрытого слоя должно быть меньше, чем размерность входных данных (как показано на рис. 2). Такое ограничение позволяет получить сжатие данных при передаче входного сигнала на выход сети. В таком виде функционирование автоэнкодера напоминает метод анализа главных компонент (PCA);

- активация нейронов скрытого слоя должна быть разреженной. Данное требование позволяет получить нетривиальные результаты, даже когда количество нейронов скрытого слоя превышает размерность входных данных.

Автоэнкодер как способ понижения размерности пространства признаков может быть использован c применением архитектуры, представленной на рис. 2, функционирование автоэнкодера схоже с нейронной сетью, реализующей метод PCA. Подобный подход обладает следующими достоинствами:

- высокая точность результатов;

- уменьшение количества используемых ресурсов;

- высокий уровень параллелизма;

- высокая производительность.

8

Архитектура, представленная на рис. 2, может быть усложнена посредством добавления еще одного внутреннего слоя (рис. 3).

Добавление дополнительного внутреннего слоя в структуру автоэн-кодера позволит после проведения обучения разделить нейронную сети на две подсети (рис. 4).

Таким образом, автоэнекодер разделяется на две подсети, одна из которых (Network 1) выполняет функции шифратора, а другая (Network 2) - функции дешифратора.

Layer 1

Рис. 3. Автоэнкодер усложненной структуры

При подобном взгляде на архитектуру автоэнкодера классификация образов будет производиться между применениями шифратора и дешифратора, то есть классифицироваться будут не непосредственно наборы текстурных признаков, а их представления внутри автоэнкодера. После проведения процедуры дешифрации будут получаться наборы уже разделенных по классам образов.

Подобная архитектура автоэнкодера усложняет строение непосредственно классификатора и увеличивает временные и ресурсные затраты, но позволяет более значительно уменьшить размерность классифицируемых векторов.

Функция оценки потери информацииприменимо к автоэнкодеру принимает вид функции оценки меры несоответствия входного образа сети его выходному аналогу. Другими словами, при обучении автоэнкодера задается некоторое максимально допустимое значение отклонения реального выходного вектора от идеального, то есть от входного вектора.

9

Layer 2

Layer 1

Network 1

Layer 4

Network 2

Рис. 4. Автоэнкодер, разделенный на шифратор

Эксперимент

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

Для проведения эксперимента использовалась компьютерная система, имеющая следующие характеристики: CPU - Intel Core i5 3337U (рабочая частота CPU составляет 2,7 ГГц; 4 ядра; емкость кэш-памяти L3 составляет 3 МБ), RAM 4 ГБ DDR3, ОС GNU / Linux (версия ядра Linux:

3.8.6).

В ходе эксперимента предложенный алгоритм показал высокую временную эффективность (среднее время на понижение размерности пространства для одного кадра составило 0,002 секунд). Среднее время на выполнение дешифрации данных аэрофотосъемки составило 0,012 секунд, что является в 3,6 раза лучше, чем среднее время дешифрации без понижения размерности пространства признаков (0,043 секунд), при этом точность дешифрации составила 92 % правильно распознанных объектов при 93,4 % в случае дешифрации без понижения размерности пространства признаков.

Заключение

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

Предложенный алгоритм может быть использован для решения практических задач построения детализированных двухмерных и трехмерных карт и моделей местности.

Список литературы

1. Behnke S. Hierarchical Neural Networks for Image Interpretation. LNCS, vol. 2766. Springer, Heidelberg, 2003. P. 1 - 13.

2. Ciresan D.C., Meier U., Masci J., Gambardella L.M., Schmidhuber J.: High Performance Neural Networks for Visual Object Classification. ArXiv e-prints, arXiv:1102.0183v1 (cs.AI), 2011.

3. Akinin M., Nikiforov M., Sokolova A., Taganov A. Image segmentation algorithm based on self-organized Kohonen's neural maps and tree pyramidal segmenter. // 4rd Mediterranean Conference on Embedded Computing (MEC0-2015). Montenegro, Budva, 2015. P. 168 - 170.

4. Haykin S., Neural Networks: A Comprehensive Foundation, New Jersey: Prentice Hall, 1999.

5. David A. Forsyth, Jean Ponce, Computer Vision: A Modern Approach, Prentice Hall, New. Jersey, 2003.

6. Акинин М.В., Никифоров М.Б., Таганов А.И. Нейросетевые системы искусственного интеллекта в задачах обработки изображений. М.: Горячая линия-Телеком, 2015. 154 с.

7. Akinina N.V., Akinin M.V. Sokolova A.V., Nikiforov M.B., Taganov A.I. Neural network implementation of a principal component analysis tasks on board the unmanned aerial vehicle information processing in real time. // 5 Mediterranean Conference on Embedded Computing (MEC0-2016). Montenegro, Bar, 2016. P. 326 - 330.

8. Levy A., Lindenbaum M. Sequential Karhunen-Loeve basis extraction and its application to images. // IEEE Trans. Image Processing, 9, 8, August 2000. P. 1371 - 1374.

9. Акинин М.В., Акинина Н.В., Соколова А.В. Понижение размерности пространства текстурных признаков в задачах распознавания образов. // Перспективные информационные технологии - 2015. Самара: СГАУ, 2015. С. 141 - 144.

10. Акинин М.В., Акинина Н.В., Никифоров М.Б., Колесенков А.Н., Соколова А.В. Методы и алгоритмы фильтрации разнородных помех с применением систем искусственного интеллекта в задачах обработки дан-

ных дистанционного зондирования Земли. // Известия Тульского государственного университета. Вып. 9. Тула: Изд-во ТулГУ, 2015. С. 12 - 19.

Акинина Наталья Викторовна, асп., natalya.akininaagmail. com, Россия, Рязань, Рязанский государственный радиотехнический университет,

Акинин Максим Викторович, канд. техн. наук, доц., akinin.m. vagmail.com, Россия, Рязань, Рязанский государственный радиотехнический университет,

Соколова Александра Владимировна, асп., alexandra.sokolovaOOamail.ru, Россия, Рязань, Рязанский государственный радиотехнический университет,

Никифоров Михаил Борисович, канд. техн. наук, доц., nikiforov.m. baevm.rsreu.ru, Россия, Рязань, Рязанский государственный радиотехнический университет,

Таганов Александр Иванович, д-р техн. наук, проф., alxtagayandex.ru, Россия, Рязань, Рязанский государственный радиотехнический университет

A UTOENCODER: APPROACH TO THE REDUCED DIMENSION OF THE VECTOR SPACE WITH CONTROLLED LOSS OF INFORMATION

N. V. Akinina, M. V. Akinin, A. V. Sokolova, M.B. Nikiforov, A.I. Taganov

Various ways to describe the characteristics of the images are considered in the article. Autoencoder is used for image classification. We present experimental results showing the effectiveness of autoencoder to solve the problems of classification of images.

Key words: neural network, principal component analysis, independent component analysis, autoencoder, Kullback-Leibler divergence.

Akinina Natalia Victorovna, postgraduate, natalya. akininaagmail. com, Russia, Ryazan, Ryazan State Radio Engineering University,

Akinin Maxim Victorovich, candidate of technical sciences, docent, akinin. m. vagmail. com, Russia, Ryazan, Ryazan State Radio Engineering University,

Sokolova Aleksandra Vladimirovna, postgraduate, alexandra.sokolovaOOamail.ru, Russia, Ryazan, Ryazan State Radio Engineering University,

Nikiforov Michael Borisovich, candidate of technical sciences, docent, nikiforov. m. baevm.rsreu.ru, Russia, Ryazan, Ryazan State Radio Engineering University,

Taganov Alexandr Ivanovich, doctor of technical sciences, professor, alxtagayandex. ru, Russia, Ryazan, Ryazan State Radio Engineering University