Сверточные нейронные сети в задаче генерации изображений

Сверточная нейронная сеть как тип искусственной нейронной сети с прямой связью. Знакомство с историей и концепцией развития сверточных нейронных сетей. Характеристика результатов программного эксперимента в виде графиков и сгенерированных изображений.

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

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

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

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

Сверточные нейронные сети в задаче генерации изображений

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

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

Сверточная нейронная сеть (convolutional neural network, CNN, или ConvNet) представляет собой тип искусственной нейронной сети с прямой связью, в которой модель взаимодействия между нейронами представляет собой аналогию функционирования зрительной коры животных. Такие сети представляют собой эффективный метод машинного обучения, изначально направленный в первую очередь на распознавание и классификацию изображений. Их успешное использование для обработки изображений привело к многочисленным попыткам его использования в самых разнообразных задачах: анализ видео, нейролингвистическое программирование, исследование лекарств, классификация объектов, обнаружение, выравнивание лица и проверка лица, анализ и прогнозирование временных рядов, медицинская диагностика.

Идеи, положенные в основу сверточных сетей, разработаны Хьюбелом (Hubel D. H.) и Визелом (Wiesel T. N.) в 1950-х и 1960-х [1]. Но на сегодняшний день существует большое количество интересных работ с использованием таких сетей, а самые известные: семиуровневая сверточная сеть LeNet-5сеть Яна ЛеКуна [2], инвариантная сдвигу нейронная сеть для распознавания образов Wei Zhang. В начале 1990-х годов в течение следующих 20 лет практически ничего не менялось. Скачок произошел в начале 2010 года, когда появились очень большие обучающие базы данных (база ImageNet с 15 миллионами изображений, из 22 тысячи категорий). В связи с этим появилось международное соревнование, где в 2016 году победителем стал Китай, создавший сеть с 269 слоями, а инженерная группа из Торонто натренировала первую большую сверточную нейросеть, которая во многом превосходила сети Яна ЛеКуна. Из года в год развитие во многом происходит за счет того, что нейронная сеть становится все глубже, то есть содержит все больше слоев.

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

Понятие Generative Adversarial Networks - генеративных состязательных сетей - было введено в работе 2014 г. Ian Goodfellow с соавторами [3].

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

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

Программа была написана на Python с использованием графического инструмента Matplotlib, библиотек Tensorflow (для машинного обучения), Keras (библиотека глубокого обучения), NumPy (для научных вычислений), Pandas (для анализа данных). Также была использована база данных MNIST (образцы рукописного написания цифр). Она содержит 60000 изображений для обучения и 10000 изображений для тестирования размером 28х28 пикселей черно-белого цвета.

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

После разработки, сеть была запущена на обучение и тестирование. Результаты работы программы представлены ниже.

Вывод на графике генеративных и дискриминативных потерь и сгенерированные изображения выполнялись каждые 500 эпох. В начальной итерации выполнялось 6000 эпох. На Рисунке 1 изображен график потерь первых 500 эпох, а на Рисунке 3 уже показан конечный график потерь после всех эпох обучений. Вывод сгенерированных изображений рандомных цифр с 0 по 500 эпоху на Рисунке 2, конечный вариант сгенерированных изображений после всех эпох обучений -- Рисунок 4.

программный нейронный сеть

Рис.1

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

Использованные источники

1.Hubel D. H., Wiesel T. N. Receptive fields and functional architecture of monkey striate cortex // The Journal of physiology. - 1968. - Vol. 195, no. 1. - Pp. 215-243. Hubel D. H., Wiesel T. N. Receptive fields, binocular interaction and functional architecture in the cat's visual cortex // The Journal of physiology. - 1962. - Vol. 160, no. 1. - P. 106.

2.Yann LeCun Leon Bottou, Y. B. Gradient-based learning applied to document recognition / Yoshua Bengio Yann LeCun, Leon Bottou, Patrick Haffner // IEEE. -- 1998

3.Generative Adversarial Nets / Ian Goodfellow, Jean Pouget-Abadie, Mehdi Mirza et

al. // Advances in Neural Information Processing Systems 27 / Ed. by Z. Ghahramani, M. Welling, C. Cortes et al. -- Curran Associates, Inc., 2014. -- P. 2672-2680. -- URL: http://papers.nips.cc/paper/5423-generative-adversarial-

nets.pdf.

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

...

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

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

    презентация [98,6 K], добавлен 16.10.2013

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

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

  • Базовые архитектуры компьютеров: последовательная обработка символов по заданной программе и параллельное распознавание образов по обучающим примерам. Искусственные нейронные сети. Прототип для создания нейрона. Поведение искусственной нейронной сети.

    контрольная работа [229,5 K], добавлен 28.05.2010

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

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

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

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

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

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

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

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

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

    реферат [162,9 K], добавлен 30.09.2013

  • Преимущества и недостатки нейронных сетей с радиальными базисными функциями (РБФ). Функции newrbe и newrb для построения РБФ общего вида и автоматической настройки весов и смещений. Пример построения нейронной сети с РБФ в математической среде Matlab.

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

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

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

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

    реферат [158,2 K], добавлен 16.03.2011

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

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

  • Характеристика моделей обучения. Общие сведения о нейроне. Искусственные нейронные сети, персептрон. Проблема XOR и пути ее решения. Нейронные сети обратного распространения. Подготовка входных и выходных данных. Нейронные сети Хопфилда и Хэмминга.

    контрольная работа [1,4 M], добавлен 28.01.2011

  • Преимущества нейронных сетей. Модели нейронов, представляющих собой единицу обработки информации в нейронной сети. Ее представление с помощью направленных графов. Понятие обратной связи (feedback). Основная задача и значение искусственного интеллекта.

    реферат [1,2 M], добавлен 24.05.2015

  • Изучение архитектуры искусственных нейронных сетей, способов их графического изображения в виде функциональных и структурных схем и программного представления в виде объектов специального класса network. Неокогнитрон и инвариантное распознавание образов.

    курсовая работа [602,6 K], добавлен 12.05.2015

  • Искусственные нейронные сети как вид математических моделей, построенных по принципу организации и функционирования сетей нервных клеток мозга. Виды сетей: полносвязные, многослойные. Классификация и аппроксимация. Алгоритм обратного распространения.

    реферат [270,4 K], добавлен 07.03.2009

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

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

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

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

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

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

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

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

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