УДК 681.3.068
С. М. Аванский, С. В. Щербакова
ПОСТРОЕНИЕ ИНТЕЛЛЕКТУАЛЬНОЙ КОМПЬЮТЕРНОЙ ОБУЧАЮЩЕЙ СИСТЕМЫ С ПРИМЕНЕНИЕМ НЕЙРОННЫХ СЕТЕЙ
Аннотация. Показано, что обучение человека может быть представлено как процесс подстраивания весов синапсов. При этом некоторые алгоритмы изменяют структуру сети, т.е. количество нейронов и их взаимосвязи. По аналогии с известными принципами самоорганизации нервных клеток построены алгоритмы обучения Хебба.
Ключевые слова: искусственный интеллект, обучающие системы, нейронные сети.
Abstract. It is shown, that training of the person can be presented, as process подстраивания scales синапсов. Thus some algorithms change network structure, that is quantity нейронов and their interrelations. By analogy to known principles of self-organising of nervous cages, algorithms of training Хебба are constructed. Keywords: an artificial intellect, training systems, neural networks.
Введение
Термин «интеллект» (intelligence) происходит от латинского intellectus -ум, рассудок, разум, мыслительные способности человека. Соответственно, искусственный интеллект (ИИ) (artificial intelligence) обычно толкуется как свойство автоматических систем брать на себя отдельные функции интеллекта человека, например выбирать и принимать оптимальные решения на основе ранее полученного опыта и рационального анализа внешних воздействий.
Интеллектом называется способность мозга решать задачи (интеллектуальные) путем приобретения, запоминания, целенаправленного преобразования знаний в процессе обучения и адаптации к разнообразным обстоятельствам.
1 Психофизиологические особенности человека
Деятельность мозга (обладающего интеллектом), направленную на решение интеллектуальных задач, мы будем называть мышлением, или интеллектуальной деятельностью. Интеллект и мышление органически связаны с решением таких задач, как доказательство теорем, логический анализ, распознавание ситуаций, планирование поведения, игры и управление в условиях неопределенности. Характерными чертами интеллекта, проявляющимися в процессе решения задач, являются способность к обучению, обобщению, накоплению опыта (знаний и навыков) и адаптации к изменяющимся условиям в процессе решения задач. Благодаря этим качествам интеллекта мозг может решать разнообразные задачи, а также легко перестраиваться с решения одной задачи на другую. Таким образом, мозг, наделенный интеллектом, является универсальным средством решения широкого круга задач (в том числе неформализованных), для которых нет заранее известных стандартных методов решения.
Следует иметь в виду, что существуют и другие, чисто поведенческие (функциональные), определения. Так, по А. Н. Колмогорову, любая матери-
альная система, с которой можно достаточно долго обсуждать проблемы науки, литературы и искусства, обладает интеллектом. Другим примером поведенческой трактовки интеллекта может служить известное определение А Тьюринга. Его смысл заключается в следующем. В разных комнатах находятся люди и машина. Они не могут видеть друг друга, но имеют возможность обмениваться информацией (например, с помощью электронной почты). Если в процессе диалога между участниками игры людям не удается установить, что один из участников - машина, то такую машину можно считать обладающей интеллектом.
Кстати, интересен план имитации мышления, предложенный А. Тьюрингом. «Пытаясь имитировать интеллект взрослого человека, - пишет Тьюринг, - мы вынуждены много размышлять о том процессе, в результате которого человеческий мозг достиг своего настоящего состояния... Почему бы нам вместо того, чтобы пытаться создать программу, имитирующую интеллект взрослого человека, не попытаться создать программу, которая имитировала бы интеллект ребенка? Ведь если интеллект ребенка получает соответствующее воспитание, он становится интеллектом взрослого человека. Наш расчет состоит в том, что устройство, ему подобное, может быть легко запрограммировано.». Таким образом, создание интеллектуальной компьютерной обучающей системы (ИКОС) разделяется на две части: построение «программы-ребенка» и «воспитание» этой программы. Причем «воспитание» происходит как при заполнении программы данными, так и непосредственно в процессе работы с программой ИКОС обучаемого.
Забегая вперед, можно сказать, что именно этот путь используют практически все системы ИИ. Ведь понятно, что практически невозможно заложить все знания в достаточно сложную систему. Кроме того, только при использовании этого пути проявятся перечисленные выше признаки интеллектуальной деятельности (накопление опыта, адаптация и т.д.).
Так как создание искусственного интеллекта движется по пути копирования природных прообразов, ученые не прекращают спор на тему, можно ли считать алгоритмы обучения с учителем натуральными или же они полностью искусственны. Например, обучение человеческого мозга, на первый взгляд, происходит без учителя: на зрительные, слуховые, тактильные и прочие рецепторы поступает информация извне, внутри нервной системы происходит некая самоорганизация. Однако нельзя отрицать и того, что в жизни человека не мало учителей (и в буквальном, и в переносном смысле), которые координируют внешние воздействия. Вместе с тем, чем бы ни закончился спор приверженцев этих двух концепций обучения, они обе имеют право на существование.
2 Особенности компьютеризации обучения
Для высшего образования актуальной становится задача использования возможностей информационных технологий в моделировании исследовательской и профессиональной деятельности. Реформирование процесса обучения рассматривается в контексте создания таких педагогических технологий, которые бы обеспечивали переход от формально-дисциплинарного к проблемно-активному типу обучения. Эта задача напрямую связана с концептуальным обоснованием системной целостности учебно-предметной деятельности, сохраняющей в условиях информационной технологии обучения основные
этапы формирования умственных действий с использованием конструктивного анализа и моделирования предметных сред. В основе системного подхода к реформированию содержания и методов обучения лежит использование в образовательном процессе обучающей среды.
Общепринятый смысл обучения состоит в следующем: методом проб и ошибок или экспериментов с одной и той же исходной совокупностью данных происходит модификация системы, которая при этом демонстрирует на каждом следующем этапе экспериментов лучшие результаты, чем на предыдущем.
Центральной проблемой компьютерного обучения является проблема создания машинных обучающих программ, способных обеспечить эффективную организацию учебного курса, стратегий усвоения и режимов активного взаимодействия ученика с машиной.
Проблема обучения в дальнейшем рассматривается с нескольких точек зрения - с точки зрения самой функции обучения, анализа свойств окружающей среды и, наконец, взаимодействия обучающегося и среды.
При обучении ставятся, по крайней мере, две цели: извлечение информации из среды; повышение уровня данной информации и структурирование. С повышением уровня данных возрастает их универсальность в плане применения.
Помимо функций обучающегося, связанных с получением информации об объекте и повышением ее уровня, необходимы также функции управления процессом обучения.
Главное в обучении - повышение уровня обученности или достижение определенных навыков и даже развитие интеллекта или формирование личности. Основное - это научить человека мыслить самостоятельно.
Интеллектуальная обучающая среда должна быть основана на следующих эвристических правилах: констатация правильности ответа, подробная диагностика ошибок, обсуждение родственных задач, переход к новой теме. Более общие принципы должны быть выделены на уровне метаправил, определяющих возможность и порядок применения эвристических правил обучения. Блок обучения должен быть построен по принципу блока решения задач, причем база знаний его содержит правила, действующие на двух уровнях, а также включает в качестве аргументов правил данные, представленные в модели пользователя.
Разработка «правил обучения», не зависящих от семантики предметной области, в совокупности с инструментальными средствами проектирования систем решения задач на основе модели предметной области позволяет снизить трудозатраты на создание интеллектуальных обучающих систем.
Сегодня вопросам информатизации образования уделяется большое внимание на государственном уровне: выполняется приоритетный национальный проект «Образование», действуют различные федеральные целевые программы, привлекаются международные инвестиции. Благодаря этой поддержке в образовательные учреждения поставляется современная компьютерная техника, обеспечивается доступ к образовательным информационным ресурсам, предоставляется выход в Интернет, осуществляются научноисследовательские работы.
Развитие компьютерных технологий в образовании привело к появлению множества педагогических программных средств различного назначе-
ния: компьютерных обучающих систем, электронных учебных пособий, электронных средств контроля знаний, вычислительных экспериментов, моделирующих компьютерных программ, компьютерных деловых игр и т.д.
Как известно, подготовка разных специалистов требует усвоения знаний в предметной среде учебных дисциплин на различных уровнях. В связи с этим необходимо четко представлять, на каких уровнях усвоения знаний возможно использование программных средств различного назначения.
3 Применение сигнального метода обучения Хебба
Главная черта, делающая обучение без учителя привлекательным, - это его «самостоятельность». Процесс обучения, как и в случае обучения с учителем, заключается в подстраивании весов синапсов. Некоторые алгоритмы, правда, изменяют и структуру сети, т.е. количество нейронов и их взаимосвязи, но такие преобразования правильнее назвать более широким термином «самоорганизация», в рамках данной работы они рассматриваться не будут. Очевидно, что подстройка синапсов может проводиться только на основании информации, доступной в нейроне, т.е. его состояния и уже имеющихся весовых коэффициентов. Исходя из этого соображения и, что более важно, по аналогии с известными принципами самоорганизации нервных клеток построены алгоритмы обучения Хебба.
Сигнальный метод обучения Хебба заключается в изменении весов по следующему правилу:
^ (0 = (Г-1) + ау(п-1)у(^), (1)
где у(п 1) - выходное значение нейрона i слоя (п - 1); у(;и) - выходное зна-
1 У
чение нейрона ] слоя п; м>у (^) и м>у (^ -1) - весовой коэффициент синапса,
соединяющего эти нейроны, на итерациях ^ и ^ - 1 соответственно; а - коэффициент скорости обучения. Здесь и далее для общности под п подразумевается произвольный слой сети. При обучении по данному методу усиливаются связи между возбужденными нейронами.
Существует также и дифференциальный метод обучения Хебба:
(*) = М!ч (* _1)+ а
у<п-»(,)-у<п-»(,- 1)
)-/?(1 -1)'
(2)
где у(п 1)(ґ) и у(п 1)(ґ -1) - выходное значение нейрона і слоя (п - 1) соответственно на итерациях ґ и ґ - 1; у(п) (ґ) и у(п) (ґ -1) - то же самое для нейрона jслоя п.
Как видно из формулы (2), сильнее всего обучаются синапсы, соединяющие те нейроны, выходы которых наиболее динамично изменились в сторону увеличения.
Полный алгоритм обучения с применением вышеприведенных формул будет выглядеть так:
1. На стадии инициализации всем весовым коэффициентам присваиваются небольшие случайные значения.
2. На входы сети подается входной образ, и сигналы возбуждения распространяются по всем слоям согласно принципам классических прямопо-
точных (feedforward) сетей [1], т.е. для каждого нейрона рассчитывается взвешенная сумма его входов, к которой затем применяется активационная (передаточная) функция нейрона, в результате чего получается его выходное
а N - число слоев в сети.
3. На основании полученных выходных значений нейронов по формуле (1) или (2) производится изменение весовых коэффициентов.
4. Повторяется цикл с шага 2, пока выходные значения сети не стабилизируются с заданной точностью. Применение этого нового способа определения завершения обучения, отличного от использовавшегося для сети обратного распространения, обусловлено тем, что подстраиваемые значения синапсов фактически не ограничены.
На втором шаге цикла попеременно предъявляются все образы из входного набора.
Следует отметить, что вид откликов на каждый класс входных образов не известен заранее и будет представлять собой произвольное сочетание состояний нейронов выходного слоя, обусловленное случайным распределением весов на стадии инициализации. Вместе с тем, сеть способна обобщать схожие образы, относя их к одному классу. Тестирование обученной сети позволяет определить топологию классов в выходном слое. Для приведения откликов обученной сети к удобному представлению можно дополнить сеть одним слоем, который, например, по алгоритму обучения однослойного пер-цептрона необходимо заставить отображать выходные реакции сети в требуемые образы.
Другой алгоритм обучения без учителя - алгоритм Кохонена. Он предусматривает подстройку синапсов на основании их значений от предыдущей итерации:
Из вышеприведенной формулы видно, что обучение сводится к минимизации разницы между входными сигналами нейрона, поступающими с вы-
Полный алгоритм обучения имеет примерно такую же структуру, как в методах Хебба, но на шаге 3 из всего слоя выбирается нейрон, значения синапсов которого максимально приближаются к входному образу, и подстройка весов по формуле (3) проводится только для него. Эта так называемая аккредитация может сопровождаться затормаживанием всех остальных нейронов слоя и введением выбранного нейрона в насыщение. Выбор такого нейрона может осуществляться, например, расчетом скалярного произведения вектора весовых коэффициентов с вектором входных значений. Максимальное произведение дает выигравший нейрон. Другой вариант - расчет расстояния между этими векторами вр-мерном пространстве, гдер - размер векторов:
значение y(n), i = 0..Mi -1, где - число нейронов в слое i; n = 0...N -1,
Wj (t) = Wij (t -1) + a y(n 1) - Wj (t -1)
(З)
ходов нейронов предыдущего слоя у(п 1), и весовыми коэффициентами его синапсов.
(4)
где у - индекс нейрона в слое п; і - индекс суммирования по нейронам слоя (п - 1); Wij - вес синапса, соединяющего нейроны; выходы нейронов слоя
(п - 1) являются входными значениями для слоя п.
Корень в формуле (4) брать не обязательно, т.к. важна лишь относительная оценка различных Ву.
В данном случае «побеждает» нейрон с наименьшим расстоянием. Иногда слишком часто получающие аккредитацию нейроны принудительно исключаются из рассмотрения, чтобы «уравнять права» всех нейронов слоя. Простейший вариант такого алгоритма заключается в торможении только что выигравшего нейрона.
При использовании обучения по алгоритму Кохонена существует практика нормализации входных образов, а также (на стадии инициализации) нормализации начальных значений весовых коэффициентов:
где хI - /-я компонента вектора входного образа или вектора весовых коэффициентов; а п - его размерность.
Это позволяет сократить длительность процесса обучения.
Инициализация весовых коэффициентов случайными значениями может привести к тому, что различные классы, которым соответствуют плотно распределенные входные образы, сольются или, наоборот, раздробятся на дополнительные подклассы в случае близких образов одного и того же класса. Для избежания такой ситуации используется метод выпуклой комбинации [2]. Суть его сводится к тому, что входные нормализованные образы подвергаются преобразованию:
где х/ - /-я компонента входного образа; п - общее число его компонент; а(^) - коэффициент, изменяющийся в процессе обучения от нуля до единицы, в результате чего вначале на входы сети подаются практически одинаковые образы, а с течением времени они все больше сходятся к исходным.
Весовые коэффициенты устанавливаются на шаге инициализации равными величине
где п - размерность вектора весов для нейронов инициализируемого слоя.
На основе рассмотренного выше метода строятся нейронные сети особого типа - так называемые самоорганизующиеся структуры (self-organizing feature maps). Этот устоявшийся перевод с английского, на наш взгляд, не очень удачен, т.к. речь идет не об изменении структуры сети, а только о подстройке синапсов. Для них после выбора из слоя n нейрона j с минимальным
n -1
(5)
Xi = a(t) Xi + (1 - a(t))—p, Vn
(6)
1
w0 = ~j=, V n
(7)
Заключение
расстоянием Ву (4) обучается по формуле (3) не только этот нейрон, но и его соседи, расположенные в окрестности Я. Величина Я на первых итерациях очень большая, так что обучаются все нейроны, но с течением времени она уменьшается до нуля. Таким образом, чем ближе конец обучения, тем точнее определяется группа нейронов, отвечающих каждому классу образов.
Список литературы
1. Суровцев, И. С. Нейронные сети / И. С. Суровцев, В. И. Клюкин, Р. П. Пиво-варова. - Воронеж : ВГУ, 1994.
2. Горбань, А. Н. Нейронные сети на персональном компьютере / А. Н. Горбань, Д. А. Россиев. - Новосибирск : Наука, 1996.
Аванский Сергей Михайлович аспирант,
Пензенский государственный университет
Avanskij Sergey Mihajlovich the post-graduate student, the Penza state university
Щербакова Светлана Владимировна
доцент, кафедра русского языка как иностранного,
Институт международных отношений Пензенского государственного университета
Shcherbakova Svetlana Vladimirovna the senior lecturer,
Russian chair as foreign,
Institute of the international relations of the Penza state university
УДК 681.3.068 Аванский, С. М.
Методология формирования профессиональных навыков в интеллектуальной компьютерной системе обучения с внешним объектом изучения / С. М. Аванский, С. В. Щербакова // Известия высших учебных заведений. Поволжский регион. Технические науки. - 2009. - № 1 (9). - С. 55-61.