Главная · Интересное · Экономические исследования и нейронные сети. Московский государственный университет печати

Экономические исследования и нейронные сети. Московский государственный университет печати


Введение 3

Применение Data mining 5

Заключение 7

Литература 9

Введение

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

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

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

Data Mining переводится как «добыча» или «раскопка данных». Нередко рядом с Data Mining встречаются слова «обнаружение знаний в базах данных» и «интеллектуальный анализ данных». Их можно считать синонимами Data Mining. Возникновение всех указанных терминов связано с новым витком в развитии средств и методов обработки данных.

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

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

Важное положение Data Mining - нетривиальность разыскиваемых шаблонов. Это означает, что найденные шаблоны должны отражать неочевидные, неожиданные регулярности в данных, составляющие так называемые скрытые знания. К обществу пришло понимание, что сырые данные (raw data) содержат глубинный пласт знаний, при грамотной раскопке которого могут быть обнаружены настоящие самородки.

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

Применение Data mining


Сфера применения Data Mining ничем не ограничена - она везде, где имеются какие-либо данные. Но в первую очередь методы Data Mining сегодня, мягко говоря, заинтриговали коммерческие предприятия, развертывающие проекты на основе информационных хранилищ данных. Опыт многих таких предприятий показывает, что отдача от использования Data Mining может достигать 1000%. Например, известны сообщения об экономическом эффекте, в 10-70 раз превысившем первоначальные затраты от 350 до 750 тыс.$ Известны сведения о проекте в 20 млн. $, который окупился всего за 4 месяца. Другой пример - годовая экономия 700 тыс.$ за счет внедрения Data Mining в сети универсамов в Великобритании.

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

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


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

  • исследование временных шаблонов помогает торговым предприятиям принимать решения о создании товарных запасов. Оно дает ответы на вопросы типа «Если сегодня покупатель приобрел видеокамеру, то через какое время он вероятнее всего купит новые батарейки и пленку?»

  • создание прогнозирующих моделей дает возможность торговым предприятиям узнавать характер потребностей различных категорий клиентов с определенным поведением, например, покупающих товары известных дизайнеров или посещающих распродажи. Эти знания нужны для разработки точно направленных, экономичных мероприятий по продвижению товаров.
^ Банковское дело. Достижения технологии Data Mining используются в банковском деле для решения следующих распространенных задач:

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

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

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

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

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

Заключение

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

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

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

Литература


  1. Айвазян С. А., Бухштабер В. М., Юнюков И. С., Мешалкин Л. Д . Прикладная статистика: Классификация и снижение размерности. - М.: Финансы и статистика, 1989.

  2. Knowledge Discovery Through Data Mining : What Is Knowledge Discovery? - Tandem Computers Inc., 1996.

  3. Кречетов Н.. Продукты для интеллектуального анализа данных. - Рынок программных средств, N14-15_97, c. 32-39.

  4. Boulding K. E. General Systems Theory - The Skeleton of Science//Management Science, 2, 1956.

  5. Гик Дж., ван. Прикладная общая теория систем. - М.: Мир, 1981.

  6. Киселев М., Соломатин Е.. Средства добычи знаний в бизнесе и финансах. - Открытые системы, № 4, 1997, с. 41-44.

  7. Дюк В.А. Обработка данных на ПК в примерах. - СПб: Питер, 1997.

МИНИСТЕРСТВО СЕЛЬСКОГО ХОЗЯЙСТВА

РОССИЙСКОЙ ФЕДЕРАЦИИ

ФГБОУ ВПО «ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ

АГРАРНЫЙ УНИВЕРСИТЕТ ИМ. ИМПЕРАТОРА ПЕТРА I»

КАФЕДРА ИНФОРМАЦИОННОГО ОБЕСПЕЧЕНИЯ

И МОДЕЛИРОВАНИЯ АГРОЭКОНОМИЧЕСКИХ СИСТЕМ

Курсовой проект

на тему : «Проектирование автоматизированной информационной системы для анализа эффективности работы предприятий (на примере: предприятий Калачеевского района Воронежской области и предприятия

«ООО СП "ПЛЕМЕННОЕ ПТИЦЕВОДЧЕСКОЕ ХОЗЯЙСТВО "ЗАБРОДЕНСКОЕ"»)»

Выполнила: студентка БФ-2-7(БЭ)

Максимова А.И.

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

Мистюкова С.В.

ВОРОНЕЖ

ВВЕДЕНИЕ.. 3

1 НЕЙРОННЫЕ СЕТИ В ЭКОНОМИКЕ.. 4

1.1 Понятия и основы нейронных искусственных сетей.. 4

1.2 Свойства и классификация нейронных сетей.. 6

1.3 Типы архитектур нейронных сетей. 8

1.4 Использование нейронных сетей в экономических задачах.. 11

2 ПРОЕКТИРОВАНИЕ АВТОМАТИЗИРОВАННОЙ ИНФОРМАЦИОННОЙ СИСТЕМЫ ДЛЯ АНАЛИЗА ЭФФЕКТИВНОСТИ РАБОТЫ ПРЕДПРИЯТИЙ (НА ПРИМЕРЕ ПРЕДПРИЯТИЙ КАЛАЧЕЕВСКОГО РАЙОНА ВОРОНЕЖСКОЙ ОБЛАСТИ И ПРЕДПРИЯТИЯ ООО СП "ПЛЕМЕННОЕ ПТИЦЕВОДЧЕСКОЕ ХОЗЯЙСТВО "ЗАБРОДЕНСКОЕ". 17

2.1 Пояснительная записка.. 17

2.2 Проектирование форм документов. 18

2.3 Информационно-логическая модель. 22

2.4 Алгоритм функционирования информационной системы.. 25

2.5 Инструкция для пользователя. 26

Выводы и предложения.. 30

Список использованной литературы... 32

ПРИЛОЖЕНИЯ.. 33


ВВЕДЕНИЕ

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

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

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

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



1. Рассмотреть понятие, свойства, классификацию, типы и экономическое применение нейронных сетей.

2. Изучить состав и функции автоматизированных информационных систем; изучить теоретические основы проектирования АИС;

3. Освоить работу с основными видами прикладного программного обеспечения, использующегося для реализации АИС;

4. Спроектировать формы входных, промежуточных и выходных документов;

5. Построить информационно-логическую модель;

6. Разработать алгоритм функционирования;

7. Составить инструкцию для пользователя.

В процессе выполнения курсового проекта использованы такие научные методы как моделирование, описание, анализ, синтез, расчётно-конструктивный метод.

Технические средства, которые использовались для реализации поставленной цели – персональный компьютер с операционной системой Windows XP, клавиатурой и мышью.

АИС разрабатывалась в табличном процессоре MS Excel. Описание проделанной работы проводилось в текстовом процессоре MS Word.

НЕЙРОННЫЕ СЕТИ В ЭКОНОМИКЕ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • Введение
  • Заключение
  • Введение
  • Благотворное влияние на развитие нейросетевых технологий оказало создание методов параллельной обработки информации.
  • Необходимо выразить признательность замечательному хирургу, философу и кибернетику Н.М. Амосову, вместе с учениками систематизировавшему подход к созданию средств искусственного интеллекта (ИИ). Этот подход заключается в следующем.
  • В основе стратегий ИИ лежит понятие парадигмы -- взгляда (концептуального представления) на суть проблемы или задачи и принцип ее решения. Рассматривают две парадигмы искусственного интеллекта.
  • 1. Парадигма эксперта предполагает следующие объекты, а также этапы разработки и функционирования системы ИИ:
  • * форматизация знаний -- преобразование экспертом проблемного знания в форму, предписанную выбранной моделью представления знаний;
  • * формирование базы знаний <БЗ) - вложение формализованных знаний в программную систему;
  • * дедукция -- решение задачи логического вывода на основе БЗ.
  • Эта парадигма лежит в основе применения экспертных систем, систем логического вывода, в том числе на языке логического программирования ПРОЛОГ. Считается, что системы на основе этой парадигмы более изучены.
  • 2. Парадигма ученика, включающая следующие положения и последовательность действий:
  • * обработка наблюдений, изучение опыта частных примеров -- формирование базы данных <БД> системы ИИ;
  • * индуктивное обучение -- превращение БД в БЗ на основе обобщения знаний, накопленных в БД. и обоснование процедуры извлечения знаний из БЗ. Это означает, что на основе данных делается вывод об общности той зависимости между объектами, которую мы наблюдаем. Основное внимание здесь уделяется изучению аппроксимирующих, вероятностных и логических механизмов получения общих выводов из частных утверждений. Затем мы можем обосновать, например, достаточность процедуры обобщенной интерполяции (экстраполяции), или процедуры ассоциативного поиска, с помощью которой будем удовлетворять запросы к БЗ;
  • * дедукция -- по обоснованной или предполагаемой процедуре мы выбираем информацию из БЗ по запросу (например, оптимальную стратегию управления по вектору, характеризующему сложившуюся ситуацию).
  • Исследования в рамках этой парадигмы и ее разработка проведены пока слабо, хотя они лежат в основе построения самообучающихся систем управления (ниже будет приведен замечательный пример самообучающейся системы управления -- правила стрельбы в артиллерии).
  • Чем база знаний, общий и обязательный элемент системы ИИ, отличается от базы данных? Возможностью логического вывода!
  • Теперь обратимся к «естественному» интеллекту. Природа не создала ничего лучшего, чем человеческий мозг. Значит, мозг является и носителем базы знаний, и средством логического вывода на ее основе независимо оттого, по какой парадигме мы организовали свое мышление, т. е. каким способом заполняем базу знаний. -- учимся!
  • Д.А. Поспелов в замечательной, единственной в своем роде, работе освещает высшие сферы искусственного интеллекта -- логику мышления. Цель данной книги -- хотя бы частично препарировать нейросеть как средство мышления, тем самым привлекая внимание к низшему, начальному звену всей цепи методов искусственного интеллекта.
  • Отбросив мистику, мы признаем, что мозг представляет собой нейронную сеть, нейросеть, - нейроны, соединенные между собой, со многими входами и единственным выходом каждый. Нейрон реализует достаточно простую передаточную функцию, позволяющую преобразовать возбуждения на входах, с учетом весов входов, в значение возбуждения на выходе нейрона. Функционально законченный фрагмент мозга имеет входной слой нейронов -- рецепторов, возбуждаемых извне, и выходной слой, нейроны которого возбуждаются в зависимости от конфигурации и величины возбуждения нейронов входного слоя. Предполагается, что нейросеть. имитирующая работу мозга, обрабатывает не сами данные, а их достоверность, или, в общепринятом смысле, вес, оценку этих данных. Для большинства непрерывных или дискретных данных их задание сводится к указанию вероятности диапазонов, которым принадлежат их значения. Для большого класса дискретных данных -- элементов множеств -- целесообразно жесткое закрепление нейронов входного слоя.

1. Опыт применения нейронных сетей в экономических задачах

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

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

Рассмотрим задачу выбора искомой модели подробнее. Предположим, что имеется некоторое множество объектов М, деятельность которых направлена на достижение некоторой цели. Функционирование каждого объекта характеризуется значениями n признаков, то есть существует отображение ф: М -> Rn. Следовательно, наш исходный пункт - вектор состояния экономического объекта: x = . Показатели качества функционирования экономического объекта: f0(x), f1(x),…,fm(x). Эти показатели должны находиться в определенных пределах, а некоторые из них мы стремимся сделать либо минимальными, либо максимальными.

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

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

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

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

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

Так, например, комитет системы неравенств - это такой набор элементов, что каждому неравенству удовлетворяет большинство злементов этого набора. Комитетные конструкции - некоторый класс обобщений понятия решения для задач, которые могут быть как совместными, так и несовместными. Это класс дискретных аппроксимаций для противоречивых задач, их можно также соотнести с размытыми решениями. Метод комитетов в настоящее время определяет одно из направлений анализа и решения задач эффективного выбора вариантов, оптимизации, диагностики и классификации. Приведём для примера определение одной из основных комитетных конструкций, а именно: для 0 < p < 1: p - комитетом системы включений называется такой набор элементов, что каждому включению удовлетворяет более чем р - я часть этого набора.

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

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

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

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

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

2. Табличный метод - основа искусственного интеллекта

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

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

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

Сформулируем теперь достаточный, сегодняшний принцип построения нейросети, как элемента ИИ:

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

2. Таблицы заполняются или по известным алгоритмам вычислений, или экспериментально, или экспертами.

3. Нейросеть обеспечивает высокую скорость обработки таблиц за счет возможности лавинообразного распараллеливания.

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

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

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

3. Мониторинг банковской системы

В приводится пример блистательного применения самоорганизующихся карт Кохонена (SOM -- Self-Organizing Map) для исследования банковской системы России в 1999 -- 2000 гг.

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

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

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

В представлены следующие показатели:

* собственный капитал;

* сальдированные активы;

* ликвидные активы;

* обязательства до востребования;

* вклады населения;

* коэффициент ликвидности;

* бюджетные средства.

Можно расширить систему показателей:

* объем инвестиций в эпоху бурно развивающейся экономики;

* объем прибыли;

* прошлый рейтинг и значение миграции;

* отчисления в фонд поддержки науки и образования;

* налоговые отчисления;

* отчисления в пенсионный фонд;

* отчисления в благотворительный и культурный фонд;

* участие в программах ЮНЕСКО и т.д.

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

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

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

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

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

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

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

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

Здесь следует сделать очень Важное Замечание (ОВЗ), касательно всего материала книги и предназначенное очень внимательному читателю.

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

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

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

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

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

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

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

В окне прокрутки указаны показатели и их оценочные значения в диапазоне для соответствующих рецепторов. Это вероятностные значения, основанные на достоверности, интуиции, экспертных оценках. Оценки предполагают охват нескольких рецепторов. Например, оценка того, что собственный капитал составляет не то 24, не то 34, не то 42 тыс. у. е., но скорее всетаки 24, может привести к приблизительной оценке задаваемых величин возбуждения 0.6,0.2 и 0.2 рецепторов, соответствующих диапазонам (20 - 25], (30 - 35], (40 - 45]. На экране отображены статически задаваемые показатели, такие, как рейтинг в результате прошлых измерений, выборочные ранее найденные показатели, а также показатели политической, социальной и экономической конъюнктуры. (Их обилие и развитие могут все-таки потребовать прокрутки.)

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

* переход на экран выходного слоя;

* статистическая обработка результатов (предполагает переход к выходному экрану);

* введение новой связи;

* введение нового рецептора;

* введение нового нейрона выходного слоя (предполагает переключение экранов);

* введение нового показателя и т.д.

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

Рис. - 8.3. Экран выходного слоя

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

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

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

Для проведения подобной работы экспертами предварительно формируется таблица (табл. 1).

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

Методика мониторинга. Обученная система, которая поступает в распоряжение пользователя после высококвалифицированной экспертизы экономистов и политиков, готова к использованию в рамках CASE-технологии CASE -- Computer Aided Software Engineering .

Таблица 1 - Экспертные оценки для обучения нейросети

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

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

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

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

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

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

- Вы хотите изменить рейтинг -- Да.

- Новое значение рейтинга --...

- Сохранить!

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

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

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

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

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

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

К построению совершенной нейросети можно свести задачу настоящего раздела, подразд. 6.2, а также, например, задачу оценки странового риска и др.

Заключение

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

Отсюда следует, что сеть работает в двух режимах: в режиме обучения и в режиме распознавания (рабочем режиме).

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

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

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

Итак, мы сосредоточиваем внимание на «(прямом» использовании нейросетей в задачах искусственного интеллекта. Однако их применение распространяется на решение и других задач. Для этого строят нейросетевые модели со структурой, ориентированной на данную задач), используют специальную систему связей нейроподобных элементов, определенный вил передаточной функции (часто используют так называемые сигмоилные связи, основанные на участии экспоненты при формировании передаточной функции), специально подобранные и динамически уточняемые веса. При этом используют свойства сходимости величин возбуждения нейронов, самооптимизации. При подаче входного вектора возбуждений через определенное число тактов работы нейросети значения возбуждения нейронов выходного слоя (в некоторых моделях все нейроны входного слоя являются нейронами выходного слоя и других нет) сходятся к неким величинам. Они могут указывать, например, на то, какой эталон в большей степени похож на «зашумленный». недостоверный входной образ, или на то. как найти решение некоторой задачи. Например, известная сеть Хопфилда . хоть и с ограничениями, может решать задачу коммивояжера - задачу экспоненциальной сложности. Сеть Хемминга успешно реализует ассоциативную память. Сети Кохонена (карты Кохонена) , добавлен 27.06.2011

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

дипломная работа , добавлен 06.11.2011

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

курсовая работа , добавлен 15.10.2012

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

контрольная работа , добавлен 30.11.2015

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

презентация , добавлен 28.05.2015

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

курсовая работа , добавлен 14.12.2014

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

реферат , добавлен 16.03.2011

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

презентация , добавлен 14.10.2013

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

курсовая работа , добавлен 28.05.2009

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

Добрый день, меня зовут Наталия Ефремова, и я 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, то вам, наверное, пора открывать свой стартап.

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