Научная статья на тему 'Проектирование нейронной сети в табличном процессоре MS Excel'

Проектирование нейронной сети в табличном процессоре MS Excel Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
5754
539
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Денисов Д. П., Касымова О. К.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Проектирование нейронной сети в табличном процессоре MS Excel»

УДК 51-77

Д. П. Денисов, О. К. Касымова Омская гуманитарная академия

ПРОЕКТИРОВАНИЕ НЕЙРОННОЙ СЕТИ В ТАБЛИЧНОМ ПРОЦЕССОРЕ MS EXCEL

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

Ключевые слова: нейронная сеть, алгоритм распознавания чисел.

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

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

Нейронная сеть проектируется для решения узкоспециализированных задач в различных сферах [3]. Наиболее популярные и доступные приложения, позволяющие создавать нейронную сеть и управлять ее структурой - «Deductor Studio Akademic», «NeuroEmulator», «NeuroView» и др., алгоритм обработки данных установлен разработчиками.

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

Системе предлагается распознать образы знаков десятичной системы (0, 1, 2, ..., 9), построенные с помощью горизонтальных, вертикальных и наклонных штрихов (коротких линий):

Внешний вид рабочего листа задания

выглядят табло индикаторных устройств, шаблоны почтовых

индексов.

0

выполнен при помощи двух горизонтальных и

Например, образ знака «О» четырех вертикальных штрихов.

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

хц - количество вертикальных штрихов; Х12 - количество горизонтальных штрихов;

Х13 - количество наклонных штрихов нижних;

х;4 - количество наклонных штрихов верхних.

Таблица эталонов располагается на листе MS Excel в виде матрицы (массив B5:E14).

Рассмотрим, как работает система.

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

Рецептор (ячейка "B18") воспринимает (пропускает) числа по модулю < 10000 или сообщает о превышении допустимой разрядности.

В ячейку "B18" введено выражение:

=ABS(ЕСЛЩЦЕЛОЕ(B18)<=10000;ЦЕЛОЕ(B18);"Не более 4-х разрядов"))

Знак и дробная часть числа игнорируются.

«Чувствительность» рецепторов второго уровня определяет матрица "B27:E30". Обработка выполняется последовательно в ячейках "B31:E31"; "B32:E32":

=МУМНОЖ(В26:Е26;В27:Е30);

=ОКРВНИЗ(C32;1), автозаполнение вправо.

На следующем уровне число (Xi') разносится по j разрядам в отдельные ячейки "B36:E36": из содержимого ячейки вычитается результат соседнего (старшего) разряда, умноженный на (-10):

=МУМНОЖ(В32:Е32;032:135).

Для наглядности массив повторяется в ячейках "G6:J6", верхняя часть листа: содержимое ячеек соотносится с эталонами; суммарная ошибка (Функция Fi = X(Xij' - Xij)) определяет степень адекватности регистрируемого события каждому из образов:

=ABS(B$37-B6); автозаполнение вправо и вниз.

В качестве индикатора (*) используется логическое выражение:

=ЕСЛИ(Ь5<=К5;"*";" "), автозаполнение вниз.

На рабочем листе столбец "M5:M14" транспонирован в ячейки "H18:Q18" посредством "ТРАНСП".

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

В нашем примере сигнал "3201", полученный с виртуального сканера, система относит либо к "5-ти", либо к "6-ти": в первом случае образ имеет лишний наклонный штрих, во втором - лишний вертикальный, суммарная ошибка равна "1".

Несмотря на то, что эталоны идентифицированы (соответствуют различным векторам Xi), некоторые ошибки выходят за рамки «осмысления» нейронной системой.

В частности, образ «безошибочно» распознается, как "9", в то время как

вероятнее принять его как "6" (с неправильным положением наклонного штриха): алгоритм не учитывает положение горизонтальных и вертикальных штрихов, как и то, что они встречаются чаще наклонных.

«Аналитические» способности нашей системы, несомненно, возрастут, если функция F будет выражаться не в абсолютных величинах, а в частях; распознавание индексов улучшится при увеличении количества «нейронов» в слое. Отметим: при средней скорости восприятия информации, сопоставимой с человеческим зрением (30 кадров/с), система поддержит распознавание соответственно пяти-шестиразрядных индексов в секунду.

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

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

В правой части рабочего листа представлен вариант конвертирования произвольного теста в последовательность чисел. Если в ячейку G25 помещено (импортируется, связывается) текстовое выражение "лето", разложение и перекодировка текста по ячейкам осуществляется командами =ЛЕВСИМВ^25;1); =ПРАВСИМВ^27;1); =КОДСИМВ^28)-200 т. д.

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

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

Библиографический список

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

2. Денисов, Д. П. Рациональная организация расчетно-прикладных заданий в электронных таблицах MS Excel / Д. П. Денисов // Проблемы содержания и качества учебного процесса в высшей школе : сб. науч. ст. / под ред. А. Э. Еремеева, Г. В. Косякова. - Омск : Изд-во ОГИ, 2005. - С. 54-60.

3. Нейронные сети в MS Excel : методич. указания к практич. занят. и лаб. работам / сост. В. Х. Федотов ; Чуваш. ун-т. - Чебоксары, 2004. - 72 с.

© Денисов Д. П., Касымова О. К., 2010

Авторы статьи: Дмитрий Павлович Денисов, доцент кафедры ИМиЕНД, кандидат сельскохозяйственных наук (НОУ ВПО «ОмГА»);

Ольга Камалиеновна Касымова, специалист отдела дистанционного обучения (НОУ ВПО «ОмГА»).

Рецензент - Н. И. Ермолина, кандидат медицинских наук, доцент кафедры социальной работы и специальной психологии НОУ ВПО «ОмГА».

i Надоели баннеры? Вы всегда можете отключить рекламу.