Главная > Искусственные нейронные сети. Теория и практика
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

5.8. Нейропакет Excel Neural Package

5.8.1. Общая характеристика

Пакет Excel Neural Package разработан фирмой «НейрОК» (119899, Москва, Воробьевы горы, Научный Парк МГУ, 5 - 529, e-mail: info@neurok.ru, адрес в Интернет, www neurok ru, демонстрационную версию программы можно получить на сервере www.download.ru в разделе «Образование, наука, техника - Научно-технические программы») и расширяет функциональные возможности Excel, предоставляя в распоряжение пользователя алгоритмы обработки данных на основе теории нейронных сетей Технически семейство продуктов реализовано как набор надстроек

(add-ins) над Microsoft Excel и не предъявляет особых требований к оборудованию.

Excel Neural Package состоит из двух независимых компонентов: Winnet и Kohonen Мар.

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

Таблица 5.2 (см. скан) Основные характеристики Winnet 3.0

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

• отображение в процессе обучения графиков ошибок обучения и обобщения;

• отображение диаграмм рассеяния «реальное значение - предсказанное нейронной сетью» для каждого выхода сети;

• выбор тестового множества;

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

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

может представить весь массив данных в виде двумерной цветной карты и визуализировать на ней интересующие его характеристики. Характеристики Kohonen Мар 1.0 приведены в табл. 5.3.

Таблица 5.3 (см. скан) Основные характеристики Kohonen Мар 1.0

5.8.2. Установка нейропакета

Установка пакета требует выполнения следующих действий.

1) Создать директорию для файлов пакета. Например: C:\Program Files\Microsoft Office\ENP.

2) Скопировать в эту директорию все файлы из директории ...\Neural tools package.

3) Запустить Excel.

4) Выбрать Меню/Сервис/Надстройки. В всплывающем окне Надстройки нажать кнопку Обзор. Далее в открывшемся окне выбрать в созданной папке файл NPackage.xIa и нажать кнопку ОК.

5) В списке окна Надстройки появится новый пункт Neural tools Package. Выбрать его и нажать кнопку ОК.

6) В открывшемся далее окне Authorization checker в поле ввода ввести персональный код (который содержится, например, в файле pwd) и нажать кнопку ОК.

7) В левом верхнем углу экрана появится панель инструментов Neural Analysis, на которой расположены кнопки доступных в данной версии Excel Neural Package нейроинструментов.

5.8.3. Работа с пакетом

Winnet

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

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

• загрузить данные из книги Excel в систему;

• определить, что является входной информацией, а что -выходной;

• предобработать данные, т. е. осуществить их нормировку;

• оценить значимость входов для выходной информации и, если необходимо, изменить (удалить/добавить) входы;

• создать нейронную сеть;

• обучить нейронную сеть на заданном множестве примеров и оценить работу на тестовом множестве;

• сохранить предсказанные (обработанные) данные в книге

Exel;

• сохранить обученную нейронную сеть для дальнейшей работы.

Разберем эти действия по шагам.

1) Для работы с данными выделите область на листе книги Excel. Данные на листе располагаются следующим образом: входы и выходы - столбцы, строки - обучающие примеры.

2) Щелкните мышью по кнопке с изображением нейрона на панели инструментов Neural Analysis. Появится диалоговое окно Select data source, предлагающее уточнить параметры области данных для работы (рис. 5.75).

3) В случае согласия с параметрами ввода нажмите ОК.

4) Откроется основное окно Winnet 3.0. Оно содержит 4 табулированных листа Data, Network, Training и Output, ассоциированных с общими этапами работы (рис. 5.76).

5) Открывшийся лист Data позволяет определить и предобработать данные для последующего использования. Кроме того, с этого листа можно сохранить обученную нейронную сеть (Save Project ...) или загрузить уже сохраненный в прошлом проект (Load Project...). Первое, что нужно сделать, это определить входы, для чего следует нажать кнопку Select Inputs....

6) В открывшемся диалоговом окне Select Inputs/All Data выберете необходимые входы и с помощью кнопки » переведите

их в окно списка Inputs. Корректировку выбранных входов можно провести, используя кнопку <.

Рис. 5.75 Окно определения данных

Рис. 5.76 Основное окно Winnet 3.0

7) Так как конкретные значения входов могут быть любыми, то рекомендуется их нормализовать Для большинства случаев подходит нормировка входных значений Mean/Variance. При этом данные переводятся в безразмерную форму вычитанием среднего и нормированием на их дисперсию. Другие способы: линейное преобразование, приведение к диапазону (-1, +1) ([-1, +1]

normalization) и нелинейное преобразование гиперболическим тангенсом (than-normalization). Нажмите кнопку Normalization... и выберите в открывшемся окне Inputs normalization соответствующую позицию переключателя. Подтвердите выбор нажатием кнопки ОК. Вернувшись в окно Select Inputs также подтвердите выбор нажатием кнопки ОК

8) Далее, нажав на кнопку Select Outputs..., аналогично пунктам 6 и 7 определите и нормализуйте, при необходимости, выходы системы

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

• чем выше столбец гистограммы для данного входа, тем значимее его информация;

• чем больше отношение Mean predictability/Variance отличается от 1, тем большего успеха можно достичь в предсказании выходной информации.

Рис. 5.77 Результат отбора наиболее существенных переменных

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

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

10) Следующий этап - создание нейронной сети (многослойного персептрона) Перейдите на закладку Network и нажмите на кнопку Create Net.... В открывшемся окне Network Construction (рис. 5.78) можно полностью определить структуру и топологию нейронной сети:

• количество слоев;

• тип активационной функции нейронов данного слоя;

• число нейронов в слое;

• порядок нелинейности нейронов данного слоя

Рис. 5.78 Окно конструирования нейронной сети

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

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

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

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

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

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

Рис. 5.79 Графическое представление структуры созданной нейронной сети

11) Для обучения созданной нейронной сети перейдите на следующую закладку Training Перед обучением надо задать тестовое множество примеров из общей совокупности обучающих примеров Эти примеры не будут участвовать в обучении На них будут основываться оценки предсказательных свойств обученной нейронной сети Щелкните по кнопке Edit test set... В окне (рис. 5.80) можно задать размер и характер обучающей выборки

Общие рекомендации

• число примеров в тестовой выборке должно составлять 20-30%, но не менее нескольких десятков,

• при решении задач аппроксимации наиболее естественным является случайный выбор тестового множества Отдельная опция Random + Last examples введена для задач прогнозирования временных рядов При этом последние примеры всегда исключаются из обучения и являются, по сути, прогнозом

Подтвердите выбор нажатием кнопки ОК и вернитесь в основное окно

Рис. 5.80 Окно задания параметров обучения

12) Теперь можно начинать обучение Нажав кнопку Start training, можно наблюдать за ходом обучения нейронной сети по изменению информации в области Training Info или в графическом виде в соответствующих окнах, вызываемых нажатием клавиш в области Graphs Желательно остановить процесс обучения в момент, когда ошибки обучения и обобщения начнут сильно расходиться Рост ошибки обобщения сигнализирует о начале переобучения

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

14) Пакет позволяет управлять параметрами процесса обучения Но данными возможностями рекомендуется пользоваться только подготовленным пользователям в исключительных случаях

15) Теперь осталось сохранить проект (Save Project...) и экспортировать результаты назад в книгу Excel. Для экспорта результатов перейдите на закладку Output, задайте необходимые параметры и сохраните результаты нажатием кнопки ОК.

16) Можете теперь закрыть окно программы Winnet 3.0 Дальнейший анализ полученных результатов удобнее проводит стандартными статистическими методами в Excel.

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

• загрузить данные в систему;

• загрузить ранее созданный проект;

• сохранить предсказанные данные в книге Excel.

Последовательность действий такова.

1) Выделите необходимую для работы область данных на листе книги Excel. Прежние соглашения относительно расположения данных остаются в силе.

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

2) Загрузите созданный ранее проект, нажав на кнопку Load Project... . В открывшемся окне выберите нужный файл проекта, имеющий по умолчанию расширение .wnp, и подтвердите выбор нажатием кнопки Открыть.

3) Перейдите на закладку Output, задайте необходимые раметры и сохраните результаты нажатием кнопки ОК. Работу программой можно считать завершенной.

Kohonen Мар

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

Если работа с данными выполняется впервые, то для проведения анализа необходимо сделать следующее:

• загрузить данные из книги Excel в систему;

• определить входы, которые необходимы для проведения кластеризации;

• предобработать данные - осуществить их нормировку;

• при желании выбрать нужное число главных компонентов;

• создать и обучить нейронную сеть Кохонена;

• провести анализ многомерных данных встроенными средствами Kohonen Мар;

• сохранить обработанные данные и рисунки в книге xcel;

• если необходимо, сохранить обученную нейронную сеть для дальнейшей работы.

Разберем все эти этапы по шагам.

1) Для работы выделите область данных на листе книги Exel;

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

2) Щелкните мышью по кнопке с цветной картой Кохонена на панели инструментов eural Analysis. В ответ появится диалоговое окно Select data source, предлагающее уточнить параметры области данных для работы (рис. 5.75). В случае согласия с параметрами ввода нажмите кнопку ОК.

3) Откроется основное окно программы Kohonen Мар 1.0, которое содержит два листа Project и Results (рис. 5.81).

4) Открывшийся лист Project позволяет определить и пре-добработать данные для последующего использования. Кроме того, с этого листа можно сохранить обученную нейронную сеть (Save Project ...) или загрузить уже сохраненный в прошлом проект (Load Project...), Прежде всего нужно определить входы, для чего нажмите на кнопку Create patterns ....

5) В открывшемся диалоговом окне Select relevant columns выберете в окне левого списка All columns необходимые входы и с помощью кнопок > или » перейдите в окно списка Selected. Корректировку выбранных входов можно провести, используя кнопки < или «. Отметим, что в отличие от Winnet 3.0 теперь все Данные являются входными и участвуют в обучении.

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

большинства случаев подходит нормировка входных значений Mean/Variance. Нажмите кнопку Normalize... и выберите в открывшемся окне Inputs normalization соответствующую позицию переключателя. Подтвердите выбор нажатием кнопки ОК и вернитесь в окно Select relevant columns.

Рис. 5.81 Основное окно программы Kohonen Мар 1.0

7) Очень часто при анализе используется много входов, имеющих существенную линейную зависимость друг от друга. В этих случаях реализованный в пакете Kohonen Мар 1.0 метод главных компонентов (РСА) позволяет автоматически существенно понизить размерность пространства входных векторов Для этого переключатель Extract principal components должен быть включен. Подтвердите выбор нажатием кнопки ОК.

8) В открывшемся графическом окне PC Analyzer (рис. 5.82) можно контролируемо понизить размерность входов за счет уменьшения числа учитываемых при обучении главных компонентов без существенной потери информативности. С помощью соответствующего графика можно оценить потери информации. Обычно они не должны превышать 10% Подтвердите выбор нажатием кнопки ОК и вернитесь в основное окно программы.

9) Следующий этап - создание карты Кохонена. Нажатием кнопки Create Network... перейдите в диалоговое окно Dialog

задайте параметры сети (число кластеров) число ячеек по горизонтали и вертикали (рис. 5.83).

Рис. 5.82. Диалоговое окно для задания числа главных компонентов

Рис. 5.83 Окно задания числа кластеров

10) При создании нейронной сети следует руководствоваться следующими простыми правилами:

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

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

11) Подтвердите выбранную конфигурацию сети нажатием кнопки ОК. Далее автоматически стартует процесс обучения.

12) По завершении процесса обучения для анализа результатов перейдите на закладку Results (рис. 5.84).

Рис. 5.84 Диалоговое окно формы вывода результатов

Здесь доступны следующие функции.

• Create New Map... - цветовая раскраска карты Кохонена по любому параметру с выбранной степенью градации,

• Cell Description... - определение усредненных значений входных параметров для данного кластера (ячейки) и принадлежащих ему примеров,

• Find Cell... - поиск кластера, которому принадлежит данный пример;

• Output - сохранение результатов в книге Excel

13) Кроме того, программа позволяет управлять параметрами процесса обучения и изменения цветовой палитры раскраски карты Кохонена Для этого выберите пункт меню Program, пункт Preferences и далее Set Custom... В открывшемся окне Program Preferences на закладке Colors можно установить другие цвета градационной раскраски карты, а на странице Training parameters

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

14) Создаваемая при нажатии кнопки Create New Мар... карта (рис. 5.85) является активной, при двойном щелчке мыши на

какой-либо ячейке открывается окно Cell description, в котором удобно проводить анализ усредненных значений параметров (рис. 5.86) Дополнительно предусмотрена возможность сохранения изображения карты раскраски в формате bmp для последующего экспорта через буфер обмена в любые документы MS Office. Для этого в окне карты выберите Actions/Copy to Bitmap Далее вернитесь в документ MS Office и произведите вставку рисунка командой Paste меню Edit.

Рис. 5.85 Условный графический вид выявленных кластеров

Рис. 5.86 Характеристики центра выбранного кластера

15) Осталось сохранить результаты работы В программе предусмотрены функции сохранения проекта (кнопка Save Project...) и экспорта результатов назад в книгу Excel. Для экспорта

результатов перейдите на закладку Project, задайте необходимые параметры и сохраните результаты нажатием кнопки ОК.

16) Можете закрыть окно программы Kohonen Мар 1.0. Дальнейший анализ полученных результатов удобнее проводить стандартными статистическими методами в Excel.

Для использования при анализе новых данных ранее сохраненного проекта необходимо проделать следующие операции:

• загрузить данные в систему;

• загрузить созданный ранее проект;

• провести анализ результатов встроенными средствами Kohonen Мар 1.0;

• сохранить данные в книге Excel.

Последовательность действий такова.

1) Выделите необходимую для работы область данных на листе книги Excel. Прежние соглашения относительно расположения данных остаются в силе.

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

2) Загрузите созданный ранее проект, нажав на кнопку Load Project... . В открывшемся окне выберите нужный файл проекта, имеющий по умолчанию расширение .kmp, и подтвердите выбор нажатием кнопки Открыть.

3) Перейдите на закладку Results и проведите анализ результатов встроенными средствами Kohonen Мар 1.0. Затем, задайте необходимые параметры и сохраните результаты нажатием кнопки Output. Работу с программой можно считать завершенной.

5.8.4. Впечатления от работы с пакетом

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

<< Предыдущий параграф Следующий параграф >>
Оглавление