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

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

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 02.04.2019
Размер файла 3,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

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

А.А. Толстых, А.Н. Голубинский

1Федеральное государственное казенное образовательное учреждение высшего образования «Воронежский институт Министерства внутренних дел Российской Федерации» (Воронежский Институт МВД России), Воронеж, Россия

2 Акционерное общество «Концерн «Созвездие» (АО "Концерн "Созвездие"), Воронеж, Россия

Аннотация. Предложен формальный алгоритм построения полносвязной части нейросетевого классификатора.

Ключевые слова: сверточные нейронные сети, искусственные нейронные сети, классификация телевизионных изображений.

Algorithm for the selection of architecture of a fully-connected network in the problems of image recognition on the basis of convolution neural networks. A.A. Tolstykh, A.N. Golubinskiy

Abstract. A formal algorithm for constructing a fully connected part of a neural network classifier is proposed.

Keywords: convolutional neural networks, artificial neural networks, television image classification.

В настоящее время решение задачи классификации объектов на основе изображений представляют практический интерес в различных областях техники. Например, с помощью классификаторов объектов на телевизионных изображениях решаются задачи биометрического разграничения контроля доступа [1], автоматического анализа данных получаемых с радаров [2]. На сегодняшний день наиболее перспективными классификаторами изображений являются сверточные нейронные сети. Однако, не существует формального алгоритма построения наиболее эффективной архитектуры подобных классификаторов, а лишь свод эмпирических правил, некоторые из которых плохо формализованы (например, понятие «элегантности») [3]. Целью работы является проведение разработка формального алгоритма выбора квазиоптимальной архитектуры полносвязной части сверточного нейроклассификатора.

Обзор подходов к выбору архитектуры полносвязной части нейроклассификатора. Для построения эффективного нейросетевого классификатора необходимо подобрать соответствующие гиперпараметры модели сверточной нейронной сети (СНС). Под гиперпараметрами понимаются свободные параметры модели, такие как количество слоев, количество нейронов в слое, функции активации и т.д. Существуют различные методы определения гиперпараметров СНС. В литературе описаны следующие подходы к подбору гиперпараметров:

1. Поиск по матрице [4]. Суть данного метода заключается в создании матрицы из значений гиперпараметров, на каждой итерации происходит обучение СНС с данными гиперпараметрами и оценка ее эффективности по заданному критерию. Эффективность данного метода достаточно низкая (слепой полный перебор). Вычислительная сложность - высокая (приблизительно - время обучения одной СНС умноженное на количество значений матрицы).

2. Пошаговое изменение архитектуры [4]. Выбирается начальная архитектура СНС и границы изменений в ней. На каждой итерации происходит переобучение СНС с данной архитектурой и ее эффективности по заданному критерию. Эффективность данного метода достаточно низкая (слепой полный перебор). Вычислительная сложность - высокая (приблизительно - время обучения одной СНС умноженное на количество значений матрицы).

3. Случайный поиск [5]. Создается матрица из значений гиперпараметров, на каждой итерации случайно выбирается значения из данной матрицы и происходит обучение СНС с последующей оценкой ее эффективности по заданному критерию. Эффективность данного метода - средняя (сильно зависит от начальных условий). Вычислительная сложность - средняя (приблизительно - время обучения одной СНС умноженное на количество итераций случайного поиска).

4. Метод, основанный на использовании Гауссовского процесса с ожидаемым улучшением [6]. Каждому гиперпараметру ставиться в соответствие гауссовское распределение, затем происходят итерации поиска по заданным распределениям. Эффективность метода - средняя (вычисляются направления в пространстве гиперпараметров). Вычислительная сложность - средняя (приблизительно - время обучения одной СНС умноженное на количество итераций метода).

5. Метод, основанный на использовании древовидных оценочных функций Парзена [5]. Начальный этап алгоритма повторяет метод гауссовского процесса с ожидаемым улучшением. Затем строится дерево решений и происходит поиск по нему. Эффективность метода - высокая (вычисляются направления в пространстве гиперпараметров). Вычислительная сложность - средняя (использование поиска по дереву значительно сокращает поиск).

6. Выбор гиперпараметров с помощью нейронной сети [7]. Данный метод реализуется следующим образом, специализированная сеть - учитель (critic) производит оценку данных и выбранной архитектуры, затем вносит соответствующие изменения. Эффективность метода - в настоящее время ведутся исследования применимости данного метода. Вычислительная сложность - низкая (одна итерация работы сети-учителя).Для каждого из методов необходимо определить пространство гиперпараметров и базовою модель (baseline). В качестве базовой модели использовалась модель, приведенная на рис. 1.

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

Алгоритм построения полносвязной части сверточного нейроклассификатора

Предложен следующий алгоритм выявления неиспользуемых нейронов в полносвязном слое:

1. Осуществляется разделение архитектуры искусственной нейронной сети на параметризатор (сверточная часть нейронной сети) и классификатор (полносвязная часть нейронной сети).

Рис. 1. Базовая архитектура СНС

Так как проводится анализ полносвязной структуры нейронной сети, для упрощения вычислений полносвязная сеть получает вектор, сформированный последним плоским слоем сверточной части. Таким образом, для вычислений требуется на несколько порядков меньше вычислительных мощностей (нет необходимости производить все вычисления в СНС). Данный шаг технически реализуется как создание псевдо-обучающей выборки (i - количество объектов в обучающей выборке; ti - объект из псевдо-обучающей выборки; - псевдо-обучающая выборка), которая состоит из 120 векторов, размерностью , соответствующих набору вторичных параметров, выделенных с помощью параметризатора для каждого объекта обучающей выборки.

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

3. Нейроны, активация которых равна нулю записываются в отдельный массив .

4. Производится проверка, существуют ли такой набор нейронов, что

Если количество таких нейронов в каком-либо слое a больше нуля, то на следующей итерации поиска гиперпараметров, слой a будет содержать на da меньше нейронов.

5. В массивах происходит поиск нейронов, удовлетворяющих условию

Значение ограничения 10-6 было выбрано в результате проведения серии экспериментов.

6. Оценивается отклик выходного слоя полносвязной сети, вычисляется ошибка распознавания и количество выходных нейронов , которые при корректной классификации демонстрируют отклик более 0.9.

7. Если на шаге 6 ошибка классификации равна нулю и все выходные нейроны проходят проверку, то на следующей итерации поиска гиперпараметров, слой a будет содержать на меньше нейронов.

Таким образом, предложен алгоритм, позволяющий формализовать подбор гиперпараметров полносвязной части СНС. На рисунках 2 - 4 приведены графики обучения полносвязной части при выборе гиперпараметров.

Рис. 2. Кривая обучения для базовой архитектуры сети.

Рис. 3. Кривая обучения для архитектуры с эффектом «паралича сети»

На рисунке 3, приведена архитектура сети, на которой наблюдается эффект «паралича сети». В процессе обучения сети, значения весов могут в результате коррекции стать очень большими величинами. Это может привести к тому, что все или большинство нейронов будут выдавать на выходе сети большие значения, где производная функции активации от них будет очень мала. Так как посылаемая обратно в процессе обучения ошибка пропорциональна этой производной, то процесс обучения может практически замереть. Данная архитектура является не эффективной, так как сеть нельзя эффективно обучить.

Архитектура СНС, представленная на рисунке 4, является наиболее эффективной и подходящей, в виду того, что за малое количество эпох, мы получаем полностью обученную сеть. Данная сеть обучилась за 50 эпох. Критерием останова являлся порог ошибки обучения (представленный на графике пунктиром), определяемый как , где Q - количество объектов в обучающей выборке; p - количество классов нейроклассификатора.

Рис. 4. Кривая обучения для найденной квазиоптимальной архитектуры сети

Проанализировав рисунки 2 - 4, можно сделать вывод, что была подобрана квазиэффективная архитектура сети, которая позволила за 50 эпох обучить СНС на замкнутой обучающей выборке. Данная сеть обеспечивает нулевую ошибку классификации. Архитектуры, кривые обучения которых приведены на рис. 2 и 3 являются не эффективными, ввиду медленной сходимости и наличия эффекта «паралича сети». Архитектура квазиоптимальной полносвязной нейронной сети представлена на рис. 5.

Рис. 5. Архитектура найденной квазиоптимальной полносвязанной сети

Сверточная часть подбиралась поиском по матрице, количество протестированных образцов параметризатора составило 16 моделей.

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

ЛИТЕРАТУРА

алгоритм архитектура полносвязный сеть

1. Ma L. Resting State EEG-based biometrics for individual identification using convolutional neural networks / Ma L., Minett J. W., Blu T., Wang W. S-Y. // 37th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC), 2015, Vol. 3 - pp. 6-15.

2. Jun W. Study on deep learning in radar / Jun W., Tong Z., Peng L., Shaoming W. // JOURNAL OF RADARS, 2018, №7(4). - pp. 395-411.

3. Ranzato М.A. What is the best multi-stage architecture for object recognition? / Ranzato М. A., Jarrett K., Kavukcuoglu K., LeCu Y. // IEEE Computer Society. 2009. - pp. 2146-2153.

4. Matuszyk P. A Comparative Study on Hyperparameter Optimization for Recommender Systems / Matuszyk P., Castillo R. T., Kottke D., Spiliopoulou M. // Workshop on Recommender Systems and Big Data Analytics (RS-BDA'16). 2016. С. 13-21.

5. Bergstra J. Random Search for Hyper-Parameter Optimization / Bergstra J., Yoshua B. // Journal of Machine Learning Research (JMLR), 2012. - С. 281-305.

6. Snoek J., Larochelle H., Adams R.P. [1206.2944] Practical Bayesian Optimization of Machine Learning Algorithms 2012. URL: https://arxiv.org/abs/1206.2944 (дата обращения: 10.01.2019).

7. Xu C. An Actor-Critic Algorithm For Learning Rate / Xu C., Qin T., Wang G., Liu T.Y. // 5th International Conference on Learning Representations (ICLR 2017). 2017. - pp. 1-12.

REFERENCES

1. Ma L. Resting State EEG-based biometrics for individual identification using convolutional neural networks / Ma L., Minett J. W., Blu T., Wang W. S-Y. // 37th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC), 2015, Vol. 3 - pp. 6-15.

2. Jun W. Study on deep learning in radar / Jun W., Tong Z., Peng L., Shaoming W. // JOURNAL OF RADARS, 2018, №7(4). - pp. 395-411.

3. Ranzato М.A. What is the best multi-stage architecture for object recognition? / Ranzato М. A., Jarrett K., Kavukcuoglu K., LeCu Y. // IEEE Computer Society. 2009. - pp. 2146-2153.

4. Matuszyk P. A Comparative Study on Hyperparameter Optimization for Recommender Systems / Matuszyk P., Castillo R. T., Kottke D., Spiliopoulou M. // Workshop on Recommender Systems and Big Data Analytics (RS-BDA'16). 2016. С. 13-21.

5. Bergstra J. Random Search for Hyper-Parameter Optimization / Bergstra J., Yoshua B. // Journal of Machine Learning Research (JMLR), 2012. - С. 281-305.

6. Snoek J., Larochelle H., Adams R.P. [1206.2944] Practical Bayesian Optimization of Machine Learning Algorithms 2012. URL: https://arxiv.org/abs/1206.2944 (дата обращения: 10.01.2019).

7. Xu C. An Actor-Critic Algorithm For Learning Rate / Xu C., Qin T., Wang G., Liu T.Y. // 5th International Conference on Learning Representations (ICLR 2017). 2017. - pp. 1-12.

Размещено на Allbest.ru

...

Подобные документы

  • Способы организации беспроводных сетей по стандартам IEEE 802.16. WiMAX как телекоммуникационная технология, разработанная с целью предоставления универсальной беспроводной связи на больших расстояниях. Этапы построения полносвязной городской Wi-Fi сети.

    курсовая работа [1,6 M], добавлен 31.08.2013

  • Разработка алгоритма и программы для распознавания пола по фотографии с использованием искусственной нейронной сети. Создание алгоритмов: математического, работы с приложением, установки весов, реализации функции активации и обучения нейронной сети.

    курсовая работа [1,0 M], добавлен 05.01.2013

  • Построение векторной модели нейронной сети. Проектирование и разработка поискового механизма, реализующего поиск в полнотекстовой базе данных средствами нейронных сетей Кохонена с применением модифицированного алгоритма расширяющегося нейронного газа.

    курсовая работа [949,0 K], добавлен 18.07.2014

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

    дипломная работа [1,8 M], добавлен 08.02.2017

  • Общие сведения о принципах построения нейронных сетей. Искусственные нейронные системы. Математическая модель нейрона. Классификация нейронных сетей. Правила обучения Хэбба, Розенблатта и Видроу-Хоффа. Алгоритм обратного распространения ошибки.

    дипломная работа [814,6 K], добавлен 29.09.2014

  • Возможности программ моделирования нейронных сетей. Виды нейросетей: персептроны, сети Кохонена, сети радиальных базисных функций. Генетический алгоритм, его применение для оптимизации нейросетей. Система моделирования нейронных сетей Trajan 2.0.

    дипломная работа [2,3 M], добавлен 13.10.2015

  • Математическая модель нейронной сети. Однослойный и многослойный персептрон, рекуррентные сети. Обучение нейронных сетей с учителем и без него. Алгоритм обратного распространения ошибки. Подготовка данных, схема системы сети с динамическим объектом.

    дипломная работа [2,6 M], добавлен 23.09.2013

  • Понятие искусственного нейрона и искусственных нейронных сетей. Сущность процесса обучения нейронной сети и аппроксимации функции. Смысл алгоритма обучения с учителем. Построение и обучение нейронной сети для аппроксимации функции в среде Matlab.

    лабораторная работа [1,1 M], добавлен 05.10.2010

  • Математическая модель искусственной нейронной сети. Структура многослойного персептрона. Обучение без учителя, методом соревнования. Правило коррекции по ошибке. Метод Хэбба. Генетический алгоритм. Применение нейронных сетей для синтеза регуляторов.

    дипломная работа [1,5 M], добавлен 17.09.2013

  • Разработка нейронной сети, ее применение в алгоритме выбора оружия ботом в трехмерном шутере от первого лица, тестирование алгоритма и выявление достоинств и недостатков данного подхода. Обучение с подкреплением. Описание проекта в Unreal Engine 4.

    контрольная работа [611,0 K], добавлен 30.11.2016

  • Математические модели, построенные по принципу организации и функционирования биологических нейронных сетей, их программные или аппаратные реализации. Разработка нейронной сети типа "многослойный персептрон" для прогнозирования выбора токарного станка.

    курсовая работа [549,7 K], добавлен 03.03.2015

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

    презентация [387,5 K], добавлен 11.12.2015

  • Обучение простейшей и многослойной искусственной нейронной сети. Метод обучения перцептрона по принципу градиентного спуска по поверхности ошибки. Реализация в программном продукте NeuroPro 0.25. Использование алгоритма обратного распространения ошибки.

    курсовая работа [1019,5 K], добавлен 05.05.2015

  • Рост активности в области теории и технической реализации искусственных нейронных сетей. Основные архитектуры нейронных сетей, их общие и функциональные свойства и наиболее распространенные алгоритмы обучения. Решение проблемы мертвых нейронов.

    реферат [347,6 K], добавлен 17.12.2011

  • Обзор программных продуктов для анализа изображений: ABBYY FineReader и OCR CuneiForm. Понятие и виды нейронных сетей. Алгоритм обучения персептрона. Результаты исследований и описание интерфейса программы. Расчет себестоимости программного обеспечения.

    дипломная работа [590,7 K], добавлен 17.08.2011

  • Исследование нечеткой модели управления. Создание нейронной сети, выполняющей различные функции. Исследование генетического алгоритма поиска экстремума целевой функции. Сравнительный анализ нечеткой логики и нейронной сети на примере печи кипящего слоя.

    лабораторная работа [2,3 M], добавлен 25.03.2014

  • Сущность, структура, алгоритм функционирования самообучающихся карт. Начальная инициализация и обучение карты. Сущность и задачи кластеризации. Создание нейронной сети со слоем Кохонена при помощи встроенной в среды Matlab. Отличия сети Кохонена от SOM.

    лабораторная работа [36,1 K], добавлен 05.10.2010

  • Принципы и система распознавание образов. Программное средство и пользовательский интерфейс. Теория нейронных сетей. Тривиальный алгоритм распознавания. Нейронные сети высокого порядка. Подготовка и нормализация данных. Самоорганизующиеся сети Кохонена.

    курсовая работа [2,6 M], добавлен 29.04.2009

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

    дипломная работа [1,0 M], добавлен 28.12.2015

  • Общее понятие графа, его виды и сущность вершинного покрытия. Написание точного алгоритма решения задачи о надежности сети, нахождение минимального покрытия. Реализация данного алгоритма на языке TurboC++. Код программы, решающий поставленную задачу.

    курсовая работа [1,3 M], добавлен 27.06.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.