Нейронные сети: практическое применение. Московский государственный университет печати Следует также отобразить управление прокруткой и меню основных действий

Windows 7

Добрый день, меня зовут Наталия Ефремова, и я research scientist в компании NtechLab. Сегодня я буду рассказывать про виды нейронных сетей и их применение.

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

Первая часть моего доклада будет направлена тем, кто незнаком с нейронными сетями. Я занимаюсь непосредственно deep learning. В этой области я работаю более 10 лет. Хотя она появилась чуть меньше, чем десятилетие назад, раньше были некие зачатки нейронных сетей, которые были похожи на систему deep learning.

В последние 10 лет deep learning и компьютерное зрение развивались неимоверными темпами. Все, что сделано значимого в этой области, произошло в последние лет 6.

Я расскажу о практических аспектах: где, когда, что применять в плане deep learning для обработки изображений и видео, для распознавания образов и лиц, поскольку я работаю в компании, которая этим занимается. Немножко расскажу про распознавание эмоций, какие подходы используются в играх и робототехнике. Также я расскажу про нестандартное применение deep learning, то, что только выходит из научных институтов и пока что еще мало применяется на практике, как это может применяться, и почему это сложно применить.

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

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

Итак, первая часть доклада будет посвящена сверточным нейронным сетям. Я расскажу, как работают convolutional neural network (CNN), распознавание изображений на примере из распознавания лиц. Немного расскажу про рекуррентные нейронные сети recurrent neural network (RNN) и обучение с подкреплением на примере систем deep learning.

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

Что такое нейронные сети

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

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

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

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

В далекие 60-е годы прошлого века, когда только начиналось изучение зрительных зон мозга, первые эксперименты проводились на животных, потому что не было fMRI. Исследовали мозг с помощью электродов, вживлённых в различные зрительные зоны.

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

Таким же способом были открыты еще многие важные свойства зрительных зон, которые мы используем в deep learning сейчас. Одно из важнейших свойств - это увеличение рецептивных полей наших клеток по мере продвижения от первичных зрительных зон к височным долям, то есть более поздним зрительным зонам. Рецептивное поле - это та часть изображения, которую обрабатывает каждая клеточка нашего мозга. У каждой клетки своё рецептивное поле. Это же свойство сохраняется и в нейронных сетях, как вы, наверное, все знаете.

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

Здесь вы видите примеры сложности стимулов, различных двухмерных форм, которые распознаются в зонах V2, V4 и различных частях височных полей у макак. Также проводятся некоторое количество экспериментов на МРТ.

Здесь вы видите, как проводятся такие эксперименты. Это 1 нанометровая часть зон IT cortex"a мартышки при распознавании различных объектов. Подсвечено то, где распознается.

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

Компьютерное зрение

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

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

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

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

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

Итак, что происходит при распознавании изображения, я расскажу на примере лиц.

Для нас посмотреть на эту картинку и сказать, что на ней изображено именно лицо статуи, достаточно просто. Однако до 2010 года для компьютерного зрения это было невероятно сложной задачей. Те, кто занимался этим вопросом до этого времени, наверное, знают насколько тяжело было описать объект, который мы хотим найти на картинке без слов.

Нам нужно это было сделать каким-то геометрическим способом, описать объект, описать взаимосвязи объекта, как могут эти части относиться к друг другу, потом найти это изображение на объекте, сравнить их и получить, что мы распознали плохо. Обычно это было чуть лучше, чем подбрасывание монетки. Чуть лучше, чем chance level.

Сейчас это происходит не так. Мы разбиваем наше изображение либо на пиксели, либо на некие патчи: 2х2, 3х3, 5х5, 11х11 пикселей - как удобно создателям системы, в которой они служат входным слоем в нейронную сеть.

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

Условно все эти части можно разделить на три класса, мы их обозначим X, W и Y, где Х - это наше входное изображение, Y - это набор лейблов, и нам нужно получить наши веса. Как мы вычислим W?

При наличии нашего Х и Y это, кажется, просто. Однако то, что обозначено звездочкой, очень сложная нелинейная операция, которая, к сожалению, не имеет обратной. Даже имея 2 заданных компоненты уравнения, очень сложно ее вычислить. Поэтому нам нужно постепенно, методом проб и ошибок, подбором веса W сделать так, чтобы ошибка максимально уменьшилась, желательно, чтобы стала равной нулю.

Этот процесс происходит итеративно, мы постоянно уменьшаем, пока не находим то значение веса W, которое нас достаточно устроит.

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

Перед вами первая сеть, которая победила на международном соревновании ImageNet в 2012 году. Это так называемый AlexNet. Это сеть, которая впервые заявила о себе, о том, что существует convolutional neural networks и с тех самых пор на всех международных состязаниях уже convolutional neural nets не сдавали своих позиций никогда.

Несмотря на то, что эта сеть достаточно мелкая (в ней всего 7 скрытых слоёв), она содержит 650 тысяч нейронов с 60 миллионами параметров. Для того, чтобы итеративно научиться находить нужные веса, нам нужно очень много примеров.

Нейронная сеть учится на примере картинки и лейбла. Как нас в детстве учат «это кошка, а это собака», так же нейронные сети обучаются на большом количестве картинок. Но дело в том, что до 2010 не существовало достаточно большого data set’a, который способен был бы научить такое количество параметров распознавать изображения.

Самые большие базы данных, которые существовали до этого времени: PASCAL VOC, в который было всего 20 категорий объектов, и Caltech 101, который был разработан в California Institute of Technology. В последнем была 101 категория, и это было много. Тем же, кто не сумел найти свои объекты ни в одной из этих баз данных, приходилось стоить свои базы данных, что, я скажу, страшно мучительно.

Однако, в 2010 году появилась база ImageNet, в которой было 15 миллионов изображений, разделённые на 22 тысячи категорий. Это решило нашу проблему обучения нейронных сетей. Сейчас все желающие, у кого есть какой-либо академический адрес, могут спокойно зайти на сайт базы, запросить доступ и получить эту базу для тренировки своих нейронных сетей. Они отвечают достаточно быстро, по-моему, на следующий день.

По сравнению с предыдущими data set’ами, это очень большая база данных.

На примере видно, насколько было незначительно все то, что было до неё. Одновременно с базой ImageNet появилось соревнование ImageNet, международный challenge, в котором все команды, желающие посоревноваться, могут принять участие.

В этом году победила сеть, созданная в Китае, в ней было 269 слоёв. Не знаю, сколько параметров, подозреваю, тоже много.

Архитектура глубинной нейронной сети

Условно ее можно разделить на 2 части: те, которые учатся, и те, которые не учатся.

Чёрным обозначены те части, которые не учатся, все остальные слои способны обучаться. Существует множество определений того, что находится внутри каждого сверточного слоя. Одно из принятых обозначений - один слой с тремя компонентами разделяют на convolution stage, detector stage и pooling stage.

Не буду вдаваться в детали, еще будет много докладов, в которых подробно рассмотрено, как это работает. Расскажу на примере.

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

Итак, входное изображение попадает в сеть слоёв, которые можно назвать фильтрами разного размера и разной сложности элементов, которые они распознают. Эти фильтры составляют некий свой индекс или набор признаков, который потом попадает в классификатор. Обычно это либо SVM, либо MLP - многослойный перцептрон, кому что удобно.

По образу и подобию с биологической нейронной сетью объекты распознаются разной сложности. По мере увеличения количества слоёв это все потеряло связь с cortex’ом, поскольку там ограничено количество зон в нейронной сети. 269 или много-много зон абстракции, поэтому сохраняется только увеличение сложности, количества элементов и рецептивных полей.

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

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

Есть люди, которые утверждают, что человек всегда распознаёт лучше, чем сеть. Так ли это?

В 2014 году ученые решили проверить, насколько мы хорошо распознаем в сравнении с нейронными сетями. Они взяли 2 самые лучшие на данный момент сети - это AlexNet и сеть Мэттью Зиллера и Фергюса, и сравнили с откликом разных зон мозга макаки, которая тоже была научена распознавать какие-то объекты. Объекты были из животного мира, чтобы обезьяна не запуталась, и были проведены эксперименты, кто же распознаёт лучше.

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

Оказалось, что в нормальных условиях клетки мозга реагировали так же хорошо, как и state of the art model на тот момент, то есть сеть Мэттью Зиллера.

Однако при увеличении скорости показа объектов, увеличении количества шумов и объектов на изображении скорость распознавания и его качество нашего мозга и мозга приматов сильно падают. Даже самая простая сверточная нейронная сеть распознаёт объекты лучше. То есть официально нейронные сети работают лучше, чем наш мозг.

Классические задачи сверточных нейронных сетей

Их на самом деле не так много, они относятся к трём классам. Среди них - такие задачи, как идентификация объекта, семантическая сегментация, распознавание лиц, распознавание частей тела человека, семантическое определение границ, выделение объектов внимания на изображении и выделение нормалей к поверхности. Их условно можно разделить на 3 уровня: от самых низкоуровневых задач до самых высокоуровневых задач.

На примере этого изображения рассмотрим, что делает каждая из задач.

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

Распознавание лиц

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

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

Именно таким образом работает наш продукт FindFace - это бесплатный сервис, который помогает искать профили людей в базе «ВКонтакте».

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

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

Немного статистики. При идентификации, при поиске по 10 тысячам фото у нас точность около 95% в зависимости от качества базы, 99% точность верификации. И помимо этого данный алгоритм очень устойчив к изменениям - нам необязательно смотреть в камеру, у нас могут быть некие загораживающие предметы: очки, солнечные очки, борода, медицинская маска. В некоторых случаях мы можем победить даже такие невероятные сложности для компьютерного зрения, как и очки, и маска.

Очень быстрый поиск, затрачивается 0,5 секунд на обработку 1 миллиарда фотографий. Нами разработан уникальный индекс быстрого поиска. Также мы можем работать с изображениями низкого качества, полученных с CCTV-камер. Мы можем обрабатывать это все в режиме реального времени. Можно загружать фото через веб-интерфейс, через Android, iOS и производить поиск по 100 миллионам пользователей и их 250 миллионам фотографий.

Как я уже говорила мы заняли первое место на MegaFace competition - аналог для ImageNet, но для распознавания лиц. Он проводится уже несколько лет, в прошлом году мы были лучшими среди 100 команд со всего мира, включая Google.

Рекуррентные нейронные сети

Recurrent neural networks мы используем тогда, когда нам недостаточно распознавать только изображение. В тех случаях, когда нам важно соблюдать последовательность, нам нужен порядок того, что у нас происходит, мы используем обычные рекуррентные нейронные сети.

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

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

Что такое рекуррентные нейронные сети? Это примерно то же самое, что и обычные нейронные сети, но с обратной связью. Обратная связь нам нужна, чтобы передавать на вход нейронной сети или на какой-то из ее слоев предыдущее состояние системы.

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

В 2005 году на состязании Emotion Recognition in the Wild специально для распознавания эмоций команда из Монреаля представила рекуррентную систему, которая выглядела очень просто. У нее было всего несколько свёрточных слоев, и она работала исключительно с видео. В этом году они добавили также распознавание аудио и cагрегировали покадровые данные, которые получаются из convolutional neural networks, данные аудиосигнала с работой рекуррентной нейронной сети (с возвратом состояния) и получили первое место на состязании.

Обучение с подкреплением

Следующий тип нейронных сетей, который очень часто используется в последнее время, но не получил такой широкой огласки, как предыдущие 2 типа - это deep reinforcement learning, обучение с подкреплением.

Дело в том, что в предыдущих двух случаях мы используем базы данных. У нас есть либо данные с лиц, либо данные с картинок, либо данные с эмоциями с видеороликов. Если у нас этого нет, если мы не можем это отснять, как научить робота брать объекты? Это мы делаем автоматически - мы не знаем, как это работает. Другой пример: составлять большие базы данных в компьютерных играх сложно, да и не нужно, можно сделать гораздо проще.

Все, наверное, слышали про успехи deep reinforcement learning в Atari и в го.

Кто слышал про Atari? Ну кто-то слышал, хорошо. Про AlphaGo думаю слышали все, поэтому я даже не буду рассказывать, что конкретно там происходит.

Что происходит в Atari? Слева как раз изображена архитектура этой нейронной сети. Она обучается, играя сама с собой для того, чтобы получить максимальное вознаграждение. Максимальное вознаграждение - это максимально быстрый исход игры с максимально большим счетом.

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

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

Дело в том, что ни одна нейронная сеть, даже deep learning на данный момент, не может справится с этой задачей достаточно эффективно, поэтому deep learning только исключительно кусочки того, что нужно сделать роботам. Например, недавно Сергей Левин предоставил систему, которая учит робота хватать объекты.

Вот здесь показаны опыты, которые он проводил на своих 14 роботах-манипуляторах.

Что здесь происходит? В этих тазиках, которые вы перед собой видите, различные объекты: ручки, ластики, кружки поменьше и побольше, тряпочки, разные текстуры, разной жесткости. Неясно, как научить робота захватывать их. В течение многих часов, а даже, вроде, недель, роботы тренировались, чтобы уметь захватывать эти предметы, составлялись по этому поводу базы данных.

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

Нестандартные применения нейронных сетей

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

Итак, ученые Стэнфорда недавно придумали очень необычное применение нейронной сети CNN для предсказания бедности. Что они сделали?

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

Учёные собирали дневные и ночные карты со спутников и скармливали их нейронной сети в течение некоторого времени.

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

Здесь вы видите результаты прогноза, построенного нейронной сетью. Прогноз был сделан с различным разрешением. И вы видите - самый последний кадр - реальные данные, собранные правительством Уганды в 2005 году.

Можно заметить, что нейронная сеть составила достаточно точный прогноз, даже с небольшим сдвигом с 2005 года.

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

И последнее применение о котором я хотела бы поговорить - семантическая сегментация 3D изображений в медицине. Вообще medical imaging - это сложная область, с которой очень сложно работать.

Для этого есть несколько причин.

  • У нас очень мало баз данных. Не так легко найти картинку мозга, к тому же повреждённого, и взять ее тоже ниоткуда нельзя.
  • Даже если у нас есть такая картинка, нужно взять медика и заставить его вручную размещать все многослойные изображения, что очень долго и крайне неэффективно. Не все медики имеют ресурсы для того, чтобы этим заниматься.
  • Нужна очень высокая точность. Медицинская система не может ошибаться. При распознавании, например, котиков, не распознали - ничего страшного. А если мы не распознали опухоль, то это уже не очень хорошо. Здесь особо свирепые требования к надежности системы.
  • Изображения в трехмерных элементах - вокселях, не в пикселях, что доставляет дополнительные сложности разработчикам систем.
Но как обошли этот вопрос в данном случае? CNN была двупотоковая. Одна часть обрабатывала более нормальное разрешение, другая - чуть более ухудшенное разрешение для того, чтобы уменьшить количество слоёв, которые нам нужно обучать. За счёт этого немного сократилось время на тренировку сети.

Где это применяется: определение повреждений после удара, для поиска опухоли в мозгу, в кардиологии для определения того, как работает сердце.

Вот пример для определения объема плаценты.

Автоматически это работает хорошо, но не настолько, чтобы это было выпущено в производство, поэтому пока только начинается. Есть несколько стартапов для создания таких систем медицинского зрения. Вообще в deep learning очень много стартапов в ближайшее время. Говорят, что venture capitalists в последние полгода выделили больше бюджета на стартапы обрасти deep learning, чем за прошедшие 5 лет.

Эта область активно развивается, много интересных направлений. Мы с вами живем в интересное время. Если вы занимаетесь deep learning, то вам, наверное, пора открывать свой стартап.

Ну на этом я, наверное, закруглюсь. Спасибо вам большое.

Нейронные сети (НС) являются одним из самых последних научных подходов к изучению поведения рынка. Идея нейросетей заключается в моделировании (повторении) поведения различных процессов на основе исторической информации.

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

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

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

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

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

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

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

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

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

В частности имеется пакет Statistica Neural Networks. Заметным преимуществом данного пакета является то, что он естественно встроен огромный арсенал методов статистического анализа и визуализации данных, который представлен в системе Statistica.

Neuroshell DayTrader - самая известная программа для создания нейронных сетей для анализа рынка. Помимо нейронных сетей, содержит и классические инструменты и индикаторы технического анализа. Понимает формат Metastock.

Excel Neural Package - российская программа для создания нейросетей и анализа их в Microsoft Excel.

Литература: Осовский С. Нейронные сети для обработки информации. М., Финансы и статистика, 2002. Назаров А.В., Лоскутов А.И. Нейросетевые алгоритмы прогнозирования и оптимизации систем. – СПб.: Наука и Техника, 2003.

Департамент образования г. Москвы

ГБОУ гимназия №1503

«НЕЙРОННЫЕ СЕТИ. ИХ ПРИМЕНЕНИЕ, РОЛЬ И ЗНАЧИМОСТЬ

В СОВРЕМЕННОЙ И БУДУЩЕЙ ЭКОНОМИКЕ»

(исследовательская работа)
Выполнил

ученик 10 класса

Браженко Дмитрий

Руководитель:

Куприков Александр Васильевич

Москва

2013 год

Нейронные сети. Их применение, роль и значимость в современной и будущей экономике
План:


Введение……………………………………………………………………………………………

Цели и задачи………………………………………………………………………………………


  1. Понятие нейронных сетей, их смысл………………………………………………………

    1. Простейшая аналитическая технология………………………………………………

    2. Нелинейная задача………………………………………………………………………..

    3. Преимущества использования нейронных сетей………………………………………

    4. Принцип работы нейронных сетей………………………………………………………

  2. Программные реализации……………………………………………………………………

  3. Применение нейронных сетей………………………………………………………………

    1. Прогнозирование изменения котировок……………………………………………...

    2. Управление ценами и производством…………………………………………………

    3. Исследование факторов спроса………………………………………………………..

    4. Оценка недвижимости………………………………………………………………….

    5. Анализ потребительского рынка………………………………………………………

    6. Борьба с мошенничеством………………………………………………………………

    7. Распознавание текста……………………………………………………………………

  4. Эмпирическая часть…………………………………………………………………………

    1. Прогнозирование изменения курса USD/RUR…………………………………………

    2. Оценка стоимости недвижимости……………………………………………………..

  5. Недостатки использования нейронных сетей ………………………………………………
Заключение ………………………………………………………………………………………

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

Приложения……………………………………………………………………………….……...


3

Опасность не в том, что компьютер однажды начнет мыслить, как человек, а в том, что человек однажды начнет мыслить, как компьютер.

(Сидни Дж. Харрис)

Введение

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

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

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

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

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

Благотворное влияние на развитие нейросетевых технологий оказало создание методов параллельной обработки информации.

Гипотеза состоит в том, что нейронные сети считаются инструментом, способным выявить сложнейшие зависимости. В своей работе я хочу проверить это.

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

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

Цель написания работы:


  • Выявить необходимость использования нейронных сетей в экономике
Задачи:

  1. Разобраться в системе нейронных сетей, понять, что они из себя представляют

  2. Определить экономические задачи, которые можно решать при помощи нейронных сетей

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

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

1. Понятие нейронных сетей, их смысл.

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

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

1.1. Простейшая аналитическая технология

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

с 2 =а 2 +b 2 .

Зная параметры a и b, вычислить c [гипотенузу] отнюдь не сложно.

1.2. «Нелинейная задача»

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

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

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

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

Применение нейронных сетей целесообразно, если:

Накоплены достаточные объемы данных о предыдущем поведении системы

Отсутствуют традиционные методы или алгоритмы, удовлетворительно решающие проблему

Данные частично искажены, не полны или противоречивы, вследствие чего традиционные методы выдают неудовлетворительный результат

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

1.3. Преимущества использования нейронных сетей

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

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

1.4. Принцип работы нейронных сетей

Быстродействие современных компьютеров составляет около 100 Mflops (10^8 flops) (flops – единица, обозначающая быстродействие компьютера, с плавающей запятой) В мозгу содержится примерно 10^11 нейронов. Время прохождения одного нервного импульса - 1 мс, принято считать, что производительность одного нейрона порядка 10 flops. Эквивалентное быстродействие мозга составит 10^11 * 10 = 10^12 flops. Если рассмотреть задачи, решаемые мозгом, и подсчитать требуемое количество операций для их решения на обычных ЭВМ, то получим оценку быстродействия до 10^12 flops. Разница в производительности между обычным компьютером и мозгом - 4 порядка! Во многом этот выигрыш обусловлен параллельностью обработки информации в мозге. Следовательно, для повышения производительности ЭВМ необходимо перейти от принципов фон-Неймана к параллельной обработке информации. Тем не менее, параллельные компьютеры пока не получили распространения по нескольким причинам, которые обусловлены техническими сложностями реализации.

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


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

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

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

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

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

Математическая модель нейрона строится следующим образом:

Рис. 1. Модель искусственного нейрона


  • Вход модели нейрона X – это вектор, состоящий из большого числа (N) компонент. Каждая из компонент входного вектора Xi – это один из импульсов, получаемых нейроном.

  • Выход модели нейрона – это одно число X*. Это означает, что внутри модели, входной вектор должен быть преобразован и агрегирован в скаляр. В дальнейшем этот импульс будет передан другим нейронам.

  • Известно, что при получении импульса синапс нейрона изменяет его. Математически этот процесс изменения можно описать следующим образом: для каждой из компонент входа Xi задают вес. Импульс, прошедший через синапс, принимает вид WiXi. Заметим, что веса могут быть назначены при инициализации модели, а могут быть переменными и измеряться в ходе расчетов. Веса – это внутренние параметры сети, о которых шла речь выше. Говоря об обучении сети, имеют в виду нахождение весов синапса.

  • Сложение полученных импульсов. Агрегирование полученных импульсов – это вычисление их суммы ∑WiXi.

Рис. 2. Пример нейронной сети с одним скрытым уровнем.

Обычно нейроны располагаются в сети по уровням. На иллюстрации приведен пример трехуровневой нейронной сети:


  1. На первом уровне – входные нейроны (отмеченные синим), которые получают данные извне и передающие импульсы нейронам на следующем уровне через синапсы.

  2. Нейроны на скрытом (втором, красном) уровне обрабатывают полученные импульсы и передают их нейронам на выходном (третьем, зеленом) уровне.

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

  • Вид связи между уровнями нейронов в сети

  • Вид передаточной функции;

  • Используемый алгоритм обучения сети
Далее важнейшим этапом является обучение нейронной сети. После того как сеть будет обучена, можно считать, что она готова к использованию

Рис. 3. Процесс обучения нейросети

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

Что такое нейронные сети?

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

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

По словам старшего научного сотрудника университета Иннополис Станислава Протасова, наиболее близким аналогом человеческого мозга являются сверточные нейронные сети, придуманные математиком Яном Лекуном. «Они лежат в основе многих приложений, претендующих на звание искусственного интеллекта, - например, в FindFace или Prisma», - отмечает он.

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

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

Александр Крайнов

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

В каком состоянии сейчас находится отрасль?

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

Сергей Негодяев

управляющий портфелем Фонда развития интернет-инициатив

Хотя ученые занимаются формализацией и разработкой нейросетей уже 70 лет, можно выделить два переломных момента в развитии этой технологии. Первый - 2007 год, когда в Университете Торонто создали алгоритмы глубокого обучения многослойных нейронных сетей. Второй момент, спровоцировавший сегодняшний бум, - это 2012 год, когда исследователи из того же университета применили глубинные нейросети и выиграли конкурс ImageNet, научившись распознавать объекты на фото и видео с минимумом ошибок.

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

Андрей Калинин

руководитель «Поиска Mail.Ru»

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

Александр Крайнов

глава службы компьютерного зрения «Яндекса»

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

Перспективные сферы для внедрения нейросетей

Транспорт

Робототехника

Биотехнологии

Сельское хозяйство

Интернет вещей

Медиа и развлечения

Лингвистика

Безопасность

Влад Шершульский

директор программ технологического сотрудничества Microsoft в России

Сегодня уже случилась нейронная революция. Иногда даже трудно отличить фантастику от реальности. Представьте себе автоматизированный комбайн со множеством камер. Он делает по 5 тысяч снимков в минуту и через нейросеть анализирует, сорняк перед ним или зараженное вредителями растение, после чего решает, как поступить дальше. Фантастика? Уже не совсем.

Борис Вольфсон

директор по развитию HeadHunter

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

Чему учат нейронные сети в России?

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

Наука и медицина

Школа анализа данных «Яндекса» участвует в эксперименте CRAYFIS совместно с представителями «Сколково», МФТИ, ВШЭ и американских университетов UCI и NYU. Его суть состоит в поиске космических частиц сверхвысокой энергии с помощью смартфонов. Данные с камер передаются ускоренным нейросетям , способным зафиксировать следы слабо взаимодействующих частиц на снимках.

Это не единственный международный эксперимент, в котором задействованы российские специалисты. Ученые университета Иннополис Мануэль Маццара и Леонард Йохард участвуют в проекте BioDynaMo . Заручившись поддержкой Intel и ЦЕРН, они хотят создать опытный образец, способный воспроизвести полномасштабную симуляцию мозговой коры. С его помощью планируется повысить эффективность и экономичность экспериментов, в которых требуется наличие живого человеческого мозга.

Профессор Иннополиса Ярослав Холодов участвовал в разработке компьютерной модели, способной в десятки раз быстрее предсказать образование белковых связей. С помощью этого алгоритма можно ускорить разработку вакцин и лекарств. В этой же сфере отметились разработчики из Mail.Ru Group, Insilico Medicine и МФТИ. Они использовали генеративные состязательные сети , обученные придумывать молекулярные структуры, для поиска веществ, которые могут оказаться полезными при различных болезнях - от онкологии до сердечно-сосудистых заболеваний.

Красота и здоровье

В 2015 году российская компания Youth Laboratories запустила первый международный конкурс красоты Beauty.AI . Фотографии участников в нем оценивались нейросетями. При определении победителей они учитывали пол, возраст, национальность, цвет кожи, симметричность лица и наличие или отсутствие у пользователей морщин. Последний фактор также подтолкнул организаторов к созданию сервиса RYNKL , позволяющего отследить, как старение влияет на кожу и как с ним борются различные препараты.

Также нейросети применяются в телемедицине. Российская компания «Мобильные медицинские технологии », управляющая проектами «Онлайн Доктор » и «Педиатр 24/7 », тестирует бота-диагноста, который будет полезен как пациентам, так и врачам. Первым он подскажет, к какому специалисту обратиться при тех или иных симптомах, а вторым поможет определить, чем именно болен пришедший.

Оптимизация бизнес-процессов и рекламы

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

Команда GuaranaCam задействовала технологии машинного обучения для оценки эффективности размещения товаров и рекламных материалов в офлайне. Система работает на базе облака Microsoft Azure и анализирует покупательское поведение по камерам видеонаблюдения. Владельцы бизнеса получают отчет о состоянии торговли в режиме реального времени. Проект уже применяется в торговом центре «Мега Белая Дача».

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

Холдинг «Белфингрупп » пошел еще дальше. Его «дочка» BFG-soft создала облачную платформу BFG-IS, позволяющую управлять предприятием с помощью его виртуальной модели. Последняя строится автоматически на основании собранных системой данных о производстве и не только показывает, как лучше организовать процессы с учетом заданных целей, но и прогнозирует последствия любых изменений - от замены оборудования до введения дополнительных смен. В конце 2016 года Фонд развития интернет-инициатив решил вложить в компанию 125 миллионов рублей.

Рекрутинг и управление персоналом

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

Транспорт

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

Кроме того, нейронные сети могут использоваться в сфере транспорта и другим образом. Летом 2016 года «Яндекс» добавил в принадлежащую ему доску объявлений «Авто.ру » функцию автоматического определения модели машины по ее фото. На тот момент система знала 100 марок.

Психология и безопасность

Российский стартап NTechLab , обошедший Google в международном конкурсе алгоритмов распознавания лиц The MegaFace Benchmark , использовал технологии машинного обучения в приложении FindFace . Оно позволяет найти человека в социальных сетях по фотографии. Зачастую пользователи обращаются к сервису для выявления фейков, но он может быть полезен и правоохранителям. С его помощью уже установили личность нескольких преступников, в том числе захватчика Ситибанка в Москве. Бизнес-версия FindFace.Pro предоставляется компаниям, заинтересованным в идентификации клиентов. Сейчас систему доучивают определять пол, возраст и эмоции окружающих, что может быть полезно не только при общении с клиентами, но и при управлении персоналом.

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

В схожем направлении работает стартап «Эмотиан ». Он дорабатывает систему определения эмоционального состояния городов. Пока нейросеть вычисляет наиболее счастливые районы по публикациям в социальных сетях, однако в дальнейшем компания собирается учитывать и биометрические данные с камер.

Медиа и творчество

Одним из основных игроков на российском рынке нейронных сетей является «Яндекс». Компания использует машинное обучение не только в своих поисковых сервисах, но и в других продуктах. В 2015 году она запустила рекомендательную систему «Дзен », которая формирует ленту из новостей, статей, фотографий и видео, основываясь на интересах конкретного пользователя. Чем чаще он обращается к отобранным алгоритмом материалам, тем точнее нейросеть определяет, что еще ему может понравиться.

Кроме того, «Яндекс» экспериментирует и с творчеством. Сотрудники компании уже успели применить нейросетевой подход к поэзии , а затем и

УДК 004.38.032.26

О. В. КОНЮХОВА, К. С. ЛАПОЧКИНА

O. V. KONUKHOVA, K. S. LAPOCHKINA

ПРИМЕНЕНИЕ НЕЙРОННЫХ СЕТЕЙ В ЭКОНОМИКЕ И АКТУАЛЬНОСТЬ ИХ ИСПОЛЬЗОВАНИЯ ПРИ СОСТАВЛЕНИИ КРАТКОСРОЧНОГО ПРОГНОЗА БЮДЖЕТА

APPLICATION OF NEURAL NETWORKS IN ECONOMY AND AN URGENCY OF THEIR USE BY DRAWING UP OF A SHORT-TERM FORECAST OF THE BUDGET

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

Ключевые слова: экономика, бюджет Российской Федерации, прогнозирование бюджета, нейронные сети, генетические алгоритмы.

In this article application of neural networks in economy is described. Process of forecasting of the budget of the Russian Federation and an urgency of application of neural networks for drawing up of the short-term budget is considered.

Keywords: economy, budget of the Russian Federation, budget forecasting, neural networks, genetic algorithms.

4) автоматическая группировка объектов.

Одна из интересных попыток создания механизма рационального управления депрессивной экономикой принадлежит английскому кибернетику Стаффорду Биру . Им были предложены ставшие широко известными принципы управления, в основе которых лежат нейрофизиологические механизмы. Модели производственных систем рассматривались им как очень сложные отношения между входами (потоками ресурсов) внутренними, невидимыми элементами и выходами (результатами). Входами моделей служили достаточно обобщенные индексы, основные из которых оперативно отражали объем выработки конкретного производства, испытываемую потребность в ресурсах и производительность. Решения, предлагаемые для эффективного функционирования такого рода систем, принимались после, как были найдены и обсуждены все возможные в данной ситуации варианты. Наилучшее решение принималось большинством голосов, участвующих в обсуждении менеджеров и экспертов. С этой целью в системе была предусмотрена ситуационная комната, оснащенная соответствующими техническими средствами. Предложенный С. Биром подход к созданию системы управления оказался эффективным для управления не только крупными производственными объединениями, такими, как сталелитейная корпорация, но и экономикой Чили 70-х годов.

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

Предложенный метод группового учёта аргументов основывается на принципе самоорганизации моделей сложных, в частности экономических систем, и позволяет определять сложные скрытые зависимости в данных, которые не обнаруживаются стандартными статистическими методами. Этот метод успешно использовался А. И Ивахненко для оценки состояния экономики и прогнозирования ее развития в таких странах, как США, Великобритания, Болгария и Германия. использовал большое количество независимых переменных (от пятидесяти до двухсот), описывающих состояние экономики и влияющих на валовой доход в исследуемых странах. На основе анализа этих переменных с использованием метода группового учета аргументов выявлялись главные, значимые факторы, с большой степенью точности определяющие значение выходной переменной (валовой доход).

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

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

Характерный пример успешного применения нейронных вычислений в финансовой сфере управление кредитными рисками. Как известно, до выдачи кредита банки проводят сложные статистические расчеты по финансовой надежности заемщика, чтобы оценить вероятность собственных убытков от несвоевременного возврата финансовых средств. Такие расчеты обычно базируются на оценке кредитной истории, динамике развития компании, стабильности ее основных финансовых показателей и многих других факторов. Один широко известный банк США опробовал метод нейронных вычислений и пришел к выводу, что та же задача по уже проделанным расчетам подобного рода решается быстрее и точнее. Например, в одном из случаев оценки 100 тыс. банковских счетов новая система, построенная на базе нейронных вычислений, определила свыше 90% потенциальных неплательщиков.

Другая очень важная область применения нейронных вычислений в финансовой сфере предсказание ситуации на фондовом рынке. Стандартный подход к этой задаче базируется на жестко фиксированном наборе "правил игры", которые со временем теряют свою эффективность из-за изменения условий торгов на фондовой бирже. Кроме того, системы, построенные на основе такого подхода, оказываются слишком медленными для ситуаций, требующих мгновенного принятия решений. Именно поэтому основные японские компании, оперирующие на рынке ценных бумаг , решили применить метод нейронных вычислений. В типичную систему на базе нейронной сети ввели информацию общим объемом в 33 года деловой активности нескольких организаций, включая оборот, предыдущую стоимость акций, уровни дохода и т. д. Самообучаясь на реальных примерах, система нейронной сети показала большую точность предсказания и лучшее быстродействие: по сравнению со статистическим подходом дала улучшение результативности в целом на 19%.

Одна из наиболее передовых методик нейронных вычислений - генетические алгоритмы, имитирующие эволюцию живых организмов. Поэтому они могут быть использованы как оптимизатор параметров нейронной сети. Подобная система для прогнозирования результатов контрактов по долгосрочным ценным бумагам повышенной надежности была разработана и инсталлирована на рабочей станции Sun в компании Hill Samuel Investment Management. При моделировании нескольких стратегий торгов она достигла точности 57 % в предсказании направления движения рынка. В страховой фирме TSB General Insurance (Ньюпорт) используется сходная методика для прогноза уровня риска при страховании частных кредитов. Данная нейронная сеть самообучается на статистических данных о состоянии безработицы в стране.

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

В частности, в России уже успешно функционирует один из первых мощных нейрокомпьютеров для финансового применения - CNAPS PC/128 на базе 4-х нейроБИС фирмы Alaptive Solutions. По данным фирмы «Тора-центр» в число организаций, использующих нейронные сети для решения своих задач, уже вошли - Центробанк, МЧС, Налоговая Инспекция, более 30 банков и более 60 финансовых компаний. Некоторые из этих организаций уже опубликовали результаты своей деятельности в области использования нейрокомпьютинга .

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

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

СПИСОК ЛИТЕРАТУРЫ

1. Федеральный закон РФ от 01.01.2001 (с изм. от 01.01.2001) «О государственном прогнозировании и программах социально – экономического развития Российской Федерации» [Текст]

2. Бир С. Мозг фирмы [Текст] / С. Бир. – М.: Радио и связь, 1993. – 524 с.

3. Галушкин, нейрокомпьютеров в финансовой деятельности [Текст] / . – Новосибирск: Наука, 2002. – 215с.

4. , Мюллер прогнозирующих моделей [Текст] / , – Киев: Техника, 1985. – 225 с.

5. Клещинский, методов прогнозирования в бюджетном процессе [Текст] / // Электронный журнал Корпоративные финансы, 2011. – № 3 (19) – С. 71 – 78.

6. Рутковская М., Плинский Л. Нейронные сети, генетические алгоритмы и нечеткие системы: Пер. с польск. [Текст] / М. Рутковская, Л. Плинский - :Горячая линия - Телеком, 20с.

7. , Костюнин решений на нейронных сетях оптимальной сложности [Текст] / , // Автоматизация и современные технологии, 1998. – № 4. – С. 38-43.

Федеральное государственное образовательное учреждение высшего профессионального образования «Государственный университет – учебно-научно-производственный комплекс», г. Орел

Кандидат технических наук, доцент, доцент кафедры «Информационные системы»

E-mail: *****@***ru

Лапочкина Кристина Сергеевна

Федеральное государственное образовательное учреждение высшего профессионального образования «Государственный университет – учебно-научно-производственный комплекс», г. Орел

Студентка группы 11-ПИ(м)