Программное обеспечение для моделирования нейрокомпьютерных сетей

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

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

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

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

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

Содержание

Введение

1. Описание работы ПО Deductor

2. Условия распространения программы

Список используемых материалов

Введение

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

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

1. Описание ПО Deductor

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

Deductor предоставляет аналитикам инструментальные средства, необходимые для решения самых разнообразных аналитических задач: корпоративная отчетность, прогнозирование, сегментация, поиск закономерностей - эти и другие задачи, где применяются такие методики анализа, как OLAP, Knowledge Discovery in Databases и Data Mining. Deductor является идеальной платформой для создания систем поддержки принятия решений.

Применение ПО Deductor для моделирования нейронной сети.

Запускаем ПО Deductor, при запуске программы открывается стартовое окно (рис. 1).

Рис. 1

Нажимаем правой клавишей мыши на строке Сценарий, открывается контекстное меню (рис. 2), в котором мы выбираем Мастер импорта.

Рис.2

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

Рис. 3

В окне Параметры импорта файла с разделителями, указываем символ-разделитель столбцов, если таковой имеется. И нажимаем Далее.

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

Рис. 4

В следующем окне Запуск процесса импорта необходимо нажать кнопку Пуск. После завершения импорта нажать кнопку Далее. В следующем окне выбираем Таблица и нажимаем Далее. Закрываем мастер импорта нажатием кнопки Готово.

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

Рис. 5

Нажав правой клавишей мыши, на Текстовой файл запустим Мастер обработки. В меню Мастера обработки выбираем Нейросеть.

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

Рис. 6

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

Нормализатор может преобразовать дискретные данные к набору уникальных индексов или значения, лежащие в произвольном диапазоне к диапазону[0..1]. Для нейросети доступны следующие виды нормализации полей.

1. Линейная нормализация. Используется только для непрерывных числовых полей. Позволяет привести числа к диапазону[min..max], то есть минимальному числу из исходного диапазона будет соответствовать min, а максимальному- max. Остальные значения распределяются между min и max.

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

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

Рис. 7:

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

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

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

Рис. 8

Далее задаются параметры, определяющие структуру нейронной сети- количество скрытых слоев и нейронов в них, а также активационная функция нейронов (рис. 8). нейронный сеть deductor нормализация

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

Доступно три вида Активационной функции:

1. Сигмоида.

2. Гипертангенс.

3. Арктангенс.

Рис. 9

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

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

· Скорость обучения - определяет величину шага при итерационной коррекции весов в нейронной сети(рекомендуется в интервале0…1). При большой величине шага сходимость будет более быстрой, но имеется опасность«перепрыгнуть» через решение. С другой стороны, при малой величине шага обучение потребует слишком многих итераций. На практике величина шага берется пропорциональной крутизне склона так, что алгоритм замедляется вблизи минимума. Правильный выбор скорости обучения зависит от конкретной задачи и обычно делается опытным путем.

· Момент- задается в интервале0…1. Рекомендуемое значение0,9 ±0,1

· Метод Resilent Propogation (Rprop)- эластичное распространение. Алгоритм использует так называемое «обучение по эпохам», когда коррекция весов происходит после предъявления сети всех примеров из обучающей выборки. Преимущество данного метода заключается в том, что он обеспечивает сходимость, а, следовательно, и обучение сети в 4-5 раз быстрее, чем алгоритм обратного распространения.

Для алгоритма Resilient Propagation указываются параметры:

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

· Шаг подъема- коэффициент уменьшения скорости обучения. Задается шаг уменьшения скорости обучения в случае пропуска алгоритмом оптимального результата

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

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

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

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

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

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

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

Для запуска обучения необходимо нажать кнопку Пуск, (рис 10).

Рис. 10

На последнем этапе, в окне Определение способов отображения, необходимо выбрать Граф нейросети и Что-если.

Рис. 11

В результате мы получим главное окно программы содержащее нейросеть (рис. 11). В примере доступны два способа отображения нейросети: Граф нейросети и Что-если.

Во вкладке Что-если (рис. 12), можно проверить работу полученной нейронной сети. Нейронная сеть в примере, обучена выборкой, содержащей сложению двух чисел (напр. 2х2), в той же выборке дано выходной значение (результат сложения). В данной нейронной сети, указав числа во входных значениях s1 и s2, в res мы получим результат их сложения. В примере мы видимо, что при сложении 2 и 4, сеть выдает результат 5,6. Изменяя значения Активационной функции, кол-ва слоев, кол-ва нейронов и прочих параметров мы можем добиться более точного результата.

2. Условия распространения программы

Существует 3 варианта поставки Deductor: Academic, Professional и Enterprise.

· Deductor Enterprise. Корпоративная версия, включающая механизмы для пакетной обработки больших объемов данных и другие инструменты, необходимые для применения платформы в корпоративной среде.

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

· Deductor Academic. Бесплатная образовательная версия системы для использования в учебных целях. Она включает в себя приложение Studio и многомерное хранилище данных Warehouse. Вы можете скачать образовательную версию Deductor бесплатно с сервера или приобрести ее на CD по цене носителя. Консультации, поддержка и обновления для пользователей Academic версии не предусмотрены.

Для подготовки данной контрольной работы использовалась версия Deductor Academic.

Список используемых материалов

1. Руководство аналитика Deductor Academic

2. Веб сайт http://www.basegroup.ru/

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

...

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

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