Повышение эффективности обучения нейронной сети с помощью аугментации

Cover Page
  • Authors: 1
  • Affiliations:
    1. Поволжский государственный университет телекоммуникаций и информатики
  • Issue: Vol 1 (2024)
  • Pages: 384-385
  • Section: ЧАСТЬ I. Цифровые технологии: настоящее и будущее
  • URL: https://vietnamjournal.ru/osnk-sr2024/article/view/632260
  • ID: 632260

Cite item

Full Text

Abstract

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

Цель — разработка программы, реализующей автоматизированный процесс аугментации изображений.

Методы. Для реализации программы был использован инструментарий Image Processing Toolbox в среде MATLAB. В нем для выполнения преобразований применялись следующие функции: randomAffine2d для геометрических преобразований, jitterColorHSV для цветовых преобразований, imnoise для добавления синтетического шума и imgaussfilt для выполнения синтетического размытия [2]. Для каждой функции указывается изображение, которое необходимо преобразовать, а также значения параметров преобразования.

Результаты. Была разработана программа, выполняющая аугментацию выбранного загруженного изображения с последующим внесением в него различных преобразований. На рис. 1 приведено исходное изображение (слева), а также несколько сформированных из него изображений с внесенными изменениями: зеркальное отражение, изменение цвета, шум Гаусса, размытие.

 

Рис. 1. Набор изображений, сформированный с помощью аугментации

 

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

 

Рис. 2. Интерфейс программы (слева) и результат ее выполнения (справа)

 

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

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

Full Text

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

Цель — разработка программы, реализующей автоматизированный процесс аугментации изображений.

Методы. Для реализации программы был использован инструментарий Image Processing Toolbox в среде MATLAB. В нем для выполнения преобразований применялись следующие функции: randomAffine2d для геометрических преобразований, jitterColorHSV для цветовых преобразований, imnoise для добавления синтетического шума и imgaussfilt для выполнения синтетического размытия [2]. Для каждой функции указывается изображение, которое необходимо преобразовать, а также значения параметров преобразования.

Результаты. Была разработана программа, выполняющая аугментацию выбранного загруженного изображения с последующим внесением в него различных преобразований. На рис. 1 приведено исходное изображение (слева), а также несколько сформированных из него изображений с внесенными изменениями: зеркальное отражение, изменение цвета, шум Гаусса, размытие.

 

Рис. 1. Набор изображений, сформированный с помощью аугментации

 

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

 

Рис. 2. Интерфейс программы (слева) и результат ее выполнения (справа)

 

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

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

×

About the authors

Поволжский государственный университет телекоммуникаций и информатики

Author for correspondence.
Email: 19starostina99@mail.ru

студентка

Russian Federation, Самара

References

  1. Куляс О.Л., Старостина А.В. Подготовка данных для обучения нейронной сети в условиях малого количества образов. В кн.: Материалы XXXI Российской научно-технической конференции: «Актуальные проблемы информатики, радиотехники и связи». Самара: ПГУТИ, 2024. С. 238–240.
  2. www.mathworks.com [Электронный ресурс]. Augment images for deep learning workflows [дата обращения: 30.01.2024]. Режим доступа: https://www.mathworks.com/help/deeplearning/ug/image-augmentation-using-image-processing-toolbox.html

Supplementary files

Supplementary Files
Action
1. JATS XML
2. Рис. 1. Набор изображений, сформированный с помощью аугментации

Download (164KB)
3. Рис. 2. Интерфейс программы (слева) и результат ее выполнения (справа)

Download (1MB)

Copyright (c) 2024 Старостина А.В.

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.