воздействий. Институциональные управляющие воздействия - это целенаправленное ограничение множества возможных действий обучающегося. Вероятно, что первыми управляющими воздействиями, формирующими поведение ребенка, являются институциональные. Они ликвидируют неправильные действия, не позволяя ребенку совершать действия, которые могут нанести ему вред. Решение об этих управляющих воздействиях принимают родители, с этой целью они должны постоянно наблюдать за поведением ребенка и незамедлительно отменять или ликвидировать его неверные действия. По мере взросления ребенка подобного рода управления применяются к нему все реже и реже, уступая место информационному воздействию. Однако в ситуациях, когда действия обучающегося угрожают его здоровью, подобного рода институциональные управления могут применяться. Например, инструктор по вождению автомобиля или самолета, наблюдая за обучающимся, оказывает мягкие информационные воздействия, давая ему возможность совершать действия, не вмешиваясь в них. Как только обучающийся начинает совершать действия, которые могут привести к роковым последствиям, инструктор немедленно отменяет или ликвидирует эти неправильные действия.
Каждое действие обучающегося фиксируется системой управления и записывается в специальный протокол. По достижении цели или исчерпании ресурсов система вычисляет долю успешных 2.
действий: К, = у-, строится кривая научения. Для
запуска процесса научения в первом периоде работ ресурс У1=Ъ1, а ресурс времени Т1 определяется по факту завершения работы. Для второго и последующих периодов работы ресурсы вычисляются рекуррентным образом:
. Z.
Yi+1 = Zi+1 + Y,(l-z-) ,
(3)
T.*
T = Y —
Ti+1 Yi+! Y* ,
(4)
где - фактическое количество успешных действий; Т* - фактически затраченное время. Предельный переход ^ Ъх означает, что количество фактически совершенных правильных действий меньше, чем необходимо для решения задач. Полное решение задачи может не состояться из-за нехватки временного ресурса Т1. Если временного ресурса достаточно, то, используя институциональное управление, система принудит обучающегося использовать ресурс У! так, что он обязательно придет в целевое состояние. Поэтому, если фактическое количество правильных действий будет меньше необходимого, связано это будет с нехваткой временного ресурса Т1. В то же время из рекуррентной формулы (4) следует, что временной ресурс регулируется темпом выполнения действий обучающимся. Если обучающийся «медленный», то временной ресурс будет больше, если «быстрый», то ресурс будет, соответственно, меньше. То есть временной ресурс будет определяться темпом деятельности обучающегося, что является важной характеристикой его поведения. По мере научения ошибочные действия будут совершаться все реже и реже. Когда У! будет равным 2 в течение нескольких периодов подряд, можно сделать вывод о том, что обучающийся научился решать поставленные задачи в условиях оптимальных ресурсов. В предлагаемых компьютерных системах управления из-за наличия дополнительных петель обратной связи деятельность обучающихся является саморегулируемой и взаимосвязанной с проблемной средой и личностью обучающегося.
Литература
Рассел С., Норвиг П. Искусственный интеллект: современный подход. 2-е изд.; пер. с англ. М.: Издат. дом «Виль-ямс», 2006. 1408 с.
СИСТЕМА КОМПЬЮТЕРНОГО КОНТРОЛЯ ЗНАНИЙ С ИСПОЛЬЗОВАНИЕМ НЕЙРОННЫХ СЕТЕЙ
А.М. Титов (Московский государственный институт радиотехники, электроники и автоматики (технический университет), [email protected])
Рассматриваются алгоритмы обучения и интерпретации нейронной сети, предназначенной для компьютерного контроля знаний. Нейросетевая технология может быть применена не только при моделировании отношения «обу-чаемый-педагог» при компьютерном контроле знаний, но и при рассмотрении других отношений «человек-человек». Рассмотрены вопросы программной реализации созданных алгоритмов.
Ключевые слова: Java, нейронные сети, генетические алгоритмы, контроль знаний.
В статье рассматриваются вопросы реализации нейросетевых технологий компьютерного контроля знаний (ККЗ). Нейросетевой алгоритм
ККЗ предполагает использование нейронных сетей (НС) для определения качества подготовки обучаемого (выставления оценки) [1].
Несмотря на свой большой потенциал, нейро-сетевая технология ККЗ имеет ряд недостатков, в частности, отсутствие четкой методики формирования обучающей последовательности и неясность правил, по которым НС принимает решение (НС как черный ящик).
Для решения этих проблем были предложены алгоритм генерации обучающей последовательности для НС, предназначенной для ККЗ, и алгоритм формирования объяснения вывода, сделанного НС при ККЗ.
Алгоритм генерации обучающей выборки основан на применении генетического алгоритма (ГА). Формирование обучающей выборки (набора последовательностей ответов на вопросы или решений задач) рассматривается при этом как задача оптимизации.
Для анализа НС строится набор нечетких высказываний, каждое из которых содержит два типа лингвистических переменных: контекстная значимость и контекстная утилитарность. Приведенный алгоритм объяснения решений НС основан на алгоритме, предложенном в [2].
Созданные алгоритмы были реализованы в разработанной диалоговой системе анализа и синтеза стандартизированных и нейросетевых алгоритмов ККЗ «ДИАНИС».
В качестве языка программирования был выбран язык Java. Для реализации НС использована библиотека JOONE (Java Object Oriented Neural Engine - объектно-ориентированная технология работы с НС). Это свободная библиотека, позволяющая создавать, обучать и тестировать НС. Библиотека JOONE имеет следующие преимущества:
• поддержка широкого спектра НС;
• наличие различных алгоритмов обучения НС с поощрением;
• поддержка НС Кохонена и анализа главных компонент;
• создание модульных НС;
• наличие механизма сериализации, позволяющего передавать НС на другие компьютеры;
• подключаемые модули ввода-вывода, позволяющие работать с различными источниками данных (в том числе удаленно), в частности, с текстовыми файлами, таблицами Excel, изображениями, базами данных и др.
• подключаемые модули для предобработки входных данных (нормализации, скользящего среднего и т.д.) и динамического изменения параметров обучения (имитация отжига);
• механизм событий и извещений.
Для работы с ГА была использована библиотека JGAP (Java-библиотека ГА и программ). Она предназначена для моделирования основных генетических механизмов и может использоваться для решения задач эволюционными методами.
Ключевым звеном ГА в JGAP является понятие «хромосома» (тип «Chromosome»). Хромосома кодирует возможное решение и состоит из множества генов (тип «Gene»). В библиотеке JGAP различные аспекты решения задачи представляются как единое целое (приблизительно так же, как человеческие гены представляют различные признаки человека, такие как цвет волос или глаз). В процессе эволюции, эмулируемом в JGAP, хромосомы подвергаются воздействию генетических операторов (скрещиванию, мутации и т.д.), а затем отбираются для создания следующего поколения согласно значениям их ФП. Процесс эволюции в библиотеке JGAP был смоделирован так, чтобы максимально подражать процессам, происходящим в живой природе, с целью получения наилучшего решения задачи.
Для решения задачи при помощи JGAP необходимо выполнить ряд шагов.
Шаг 1. Определить, как будет представляться решение при помощи последовательности генов, а также задать тип значения, которое могут принимать объекты «Gene», то есть выбрать соответствующий тип гена. Допускается использование различных типов генов в рамках одной хромосомы.
Шаг 2. Реализовать ФП в виде программного кода. Значение ФП должно быть тем выше, чем выше качество решения задачи. Для этого необходимо реализовать подкласс класса «FitnessFunc-tion». В подклассе необходимо переопределить метод «evaluate», принимающий в качестве аргумента хромосому и возвращающий в качестве результата число с плавающей точкой (тип «double»).
Шаг 3. Создать, сконфигурировать и инициализировать объекты библиотеки JGAP, а именно:
- объект класса Configuration - содержит основные настройки ГА; базовая реализация, содержащая настройки по умолчанию, предоставляется классом DefaultConfiguration;
- объект, реализующий ФП (подкласс класса «FitnessFunction»);
- образец хромосомы (он должен содержать гены нужных типов в правильном порядке).
Необходимо установить и размер популяции.
Шаг 4. Создать начальную популяцию из хромосом, инициализированных случайным образом. Для большинства задач это оптимальный вариант создания начальной популяции.
Шаг 5. Запустить процесс эволюции. На каждой итерации процесса можно контролировать, найдено ли оптимальное решение.
Особенностью библиотеки JGAP является возможность расширения ее функциональности. Существуют следующие возможности для расширения: определение собственных типов генов и генетических операторов, реализация пользовательского механизма отбора и пр.
Важная особенность библиотек ЮОИЕ и ЮАР состоит в том, что они являются свободными и могут использоваться без лицензионных отчислений. Их исходный код открыт, что позволяет лучше понять работу библиотек.
При разработке данной системы использовалась трехзвенная архитектура (рис. 1). В этой архитектуре, кроме клиентской части системы и сервера базы данных, вводится промежуточный сервер приложений. На стороне клиента выполняются только интерфейсные действия, а вся логика обработки информации поддерживается в сервере приложений.
В системе «ДИАНИС» контроль знаний осуществляется по некоторому курсу (учебной дисциплине) и основан на результатах контроля знаний отдельных положений (тем), входящих в этот курс. Контроль знаний, в свою очередь, основан на контроле степени истинности ответов на вопросы теста. Таким образом, задача контроля знаний разбивается на три подзадачи:
1) контроль истинности ответа на вопрос;
2) определение уровня знания положений по ответам на вопросы;
3) определение уровня знания (категории подготовки) обучаемым курса исходя из уровня знаний отдельных положений.
В системе «ДИАНИС» все подзадачи могут решаться с применением НС.
На рисунке 2 показаны основные объекты, которыми оперирует программа.
Курс Состоит из Положение
Контролирует
Контролирует знания
Содержит
Вопрос
Содержит
Контроль курса Использует ^ Контроль положения
Использует
Рис. 2. Взаимосвязь основных объектов системы «ДИАНИС»
Программа выполнена в виде меЪ-приложе-ния. Для доступа к ней необходим меЪ-браузер. В адресной строке нужно набрать адрес приложения (определяется при установке).
Основным визуальным элементом программы является страница. Переход между страницами осуществляется при помощи гиперссылок. Программа состоит из двух частей: системы тестирования и системы управления тестированием.
Разработанная система имеет следующие ключевые особенности:
• трехуровневый контроль знаний (контроль уровня знаний вопроса, темы и курса);
• инструменты синтеза и анализа нейросете-вых и стандартизированных алгоритмов ККЗ;
• адаптивный выбор вопросов - экономия времени при тестировании без потери качества;
• возможность применения нейросетевого и стандартизированного алгоритмов контроля на уровне курса и темы;
• ГА формирования обучающей последовательности при обучении НС;
• наличие механизма объяснения выводов
НС.
Система «ДИАНИС» использовалась для проведения ККЗ. При помощи разработанных алгоритмов посредством системы «ДИАНИС» создан курс, заполнена база вопросов и создана обучающая последовательность из образов, классифицированных преподавателем. По сформированной обучающей последовательности была обучена НС. Топология сети оптимизировалась при помощи ГА. Среди студентов 5-го курса Московского института радиотехники, электроники и автоматики (технического университета) был проведен ККЗ. Выполнено сравнение процента оценок, корректно выставленных нейросетевым алгоритмом, в котором НС обучалась по последовательности, созданной при помощи разработанного алгоритма, и стандартизированным алгоритмом. Также сравнивался процент оценок, корректно выставленных нейросетевым алгоритмом, в котором НС обучалась по последовательности, созданной при помощи разработанного алгоритма, и нейросетевым алгоритмом, в котором НС обучалась по последовательности, созданной без применения разработанного алгоритма (созданной преподавателем или сформированной случайно). Результаты сравнения успешно распознанных образов:
• стандартизированный алгоритм - 74 %;
• нейросетевые алгоритмы: выборка преподавателя - 89 %, случайная выборка (среднее значение) - 83 %, разработанный алгоритм - 94 %.
Анализ полученных результатов показал, что предлагаемые алгоритмы увеличивают процент совпадений оценок, выставленных преподавателем и НС, и в то же время минимизируют число образов, оцениваемых преподавателем для настройки НС.
Система ККЗ «ДИАНИС» зарегистрирована в Отраслевом фонде алгоритмов и программ (свидетельство № 11321).
Литература
1. Свиридов А.П. Основы статистической теории обучения и контроля знаний. М.: Высш. шк., 1981. 262 с.
2. Kary Framling. Explaining Results of Neural Networks by Contextual Importance and Utility.: Proceedings of the AISB'96 conference - UK, Brighton. 1-2 April, 1996.
3. Рутковская Д., Пилиньский М., Рутковский Л. Нейронные сети, генетические алгоритмы и нечеткие системы; пер. с польск. И.Д. Рудинского. М.: Горячая линия - Телеком, 2007. 452 с.
АВТОМАТИЗАЦИЯ ПРОЕКТИРОВАНИЯ НЕИРОСЕТЕВЫХ ТЕХНОЛОГИИ ПАРАЛЛЕЛЬНЫМИ ГЕНЕТИЧЕСКИМИ АЛГОРИТМАМИ
С.Н. Ефимов, к.т.н.; Е.С. Семенкин, д.т.н.; В.В. Тынченко, к.т.н.; В.С. Тынченко, к.т.н. (Сибирский государственный аэрокосмический университет им. академика М.Ф. Решетнева,
г. Красноярск, [email protected])
Обсуждается применение эволюционного подхода для построения нейросетевых моделей. Формулируется постановка задачи многокритериальной оптимизации структуры нейронной сети. Предлагается новый параллельный генетический алгоритм для решения многокритериальной задачи оптимизации нейросетевых моделей. Описывается разработанная программная система автоматизированного проектирования нейросетевых технологий.
Ключевые слова: нейросеть, структурно-параметрический синтез, параллельный генетический алгоритм, автоматизированное проектирование.
Искусственные нейронные сети (ИНС) успешно применяются для решения разнообразных научно-технических задач, таких как автоматизация процессов распознавания образов, адаптивное управление, аппроксимация функционалов, прогнозирование, создание экспертных систем, организация ассоциативной памяти и др. Однако эффективное применение на практике данного подхода широким кругом специалистов не всегда возможно из-за отсутствия формализованных процедур, полностью охватывающих весь процесс построения нейросетевых моделей.
Разработанная программная система предназначена для автоматизации структурно-параметрического синтеза нейросетевой модели с произвольными связями между нейронами. Формализация процесса нейросетевого моделирования требует решения сложных многопараметрических оптимизационных задач выбора эффективной структуры нейросети и настройки ее весовых коэффициентов. При решении подобного рода задач оптимизации хорошо зарекомендовали себя генетические алгоритмы (ГА), которые не требуют информации о свойствах оптимизируемой функции и позволяют вести глобальный поиск в пространстве решений [1].
Выполнение расчетов по ГА требует значительных вычислительных ресурсов, однако указанные алгоритмы потенциально обладают свойством массового параллелизма при обработке информации, допуская их эффективную параллельную реализацию. Распараллеливание ГА на базе распределенной вычислительной системы позволяет существенно сократить время, затрачиваемое на решение задачи, за счет как параллельного выполнения вычислений, так и применения более эффективных, чем в последовательном случае, способов реализации алгоритмов [2].
Предлагаемая система автоматизации проектирования ИНС основана на комплексном применении разработанных авторами постановки многокритериальной задачи оптимизации структуры нейросетевой модели с учетом критерия минимизации вычислительной сложности этой структуры, а также нового многокритериального многопопу-ляционного параллельного ГА (ПГА).
Формализованная постановка задачи многокритериальной оптимизации структуры ИНС выглядит следующим образом:
Ê(0UTk(C,W,af)- yk )
-4 min '
C,W,af
NCB (C)+min
где C - матрица связей ИНС размерности NHxNH; W - матрица весов связей ИНС размерности NHxNH; af - вектор активационных функций на нейронах в ИНС размерности NH; NH - количество нейронов в ИНС; OUTk(C,W,af) - реальное значение k-го выхода ИНС, имеющей структуру (C, W,af), при подаче на ее входы j-го образа; yk - идеальное (желаемое) выходное состояние k-го нейрона; n - количество нейронов на выходе сети; m - размер обучающей выборки; NCB - количество
связей ИНС; Ki =
Т^кт Тсв
- коэффициент относи-
тельной сложности вычисления активационной функции на 1-м нейроне; Т1акг - время вычисления активационной функции на 1-м нейроне; Тсв -время обработки одной связи ИНС.
Для структурно-параметрического синтеза нейросетевых моделей в программной системе используется разработанный авторами многокри-
2
n
m
N