Свежий номер №20 (445) / Персональный интеллект Дата публикации: 24.05.2002 VAN, volov@uni-scope.com
Кто есть ху в нейронных сетях Искусственный нейрон - нелинейный пороговый сумматор, имеющий один выход и множество входов. Функция активации нейрона - задает нелинейность преобразования результата суммирования в искусственном нейроне. Искусственная нейронная сеть - совокупность искусственных нейронов, связанных между собой в определенном порядке. Связи между нейронами имеют не меньшее (если не большее) значение, нежели сами нейроны. Весовой коэффициент - величина, выражающая силу связи между искусственными нейронами и уникальная для каждой связи. Иными словами, весовые коэффициенты представляют собой содержимое памяти НС. Весовой коэффициент специальной входной связи с единичным (эталонным) воздействием становится порогом, уникальным для каждого нейрона и влияющим на его «срабатывание». Топология искусственной нейронной сети - порядок и структура связей в НС. Многослойный персептрон (Multi Layer Perceptron, далее MLP) - искусственная нейронная сеть слоистой топологии. Между слоями входов и выходов находятся промежуточные слои нейронов, называемые спрятанными (hidden). Количество спрятанных слоев (обычно не больше пяти) выбирается эмпирически исходя из задачи, которую должна выполнять НС. В классическом MLP связи одного слоя не замыкаются на связи предыдущего слоя и не перескакивают через слой. Подробнее об истории MLP можно прочитать на сайте www.computerra.ru/offline/2000/333/2897. Обучение НС (learning) - процесс предъявления образов и желаемого отклика, а также адаптивной модификации весовых коэффициентов, в течение которого минимизируется ошибка обучения. Ошибка обучения (error) - разность между реальным выходом НС и предъявляемым в этот момент желаемым откликом. Для графического отображения используют среднеквадратичную ошибку, то есть текущую ошибку обучения возводят в квадрат и усредняют на выбранном интервале времени. Желаемый отклик НС (desired) - значения, к которым должны стремиться выходы обучаемой сети при соответствующем предъявленном образе. Образ (pattern) - массив входных данных, характеризующий один объект, например фото в профиль царя Ивана Васильевича в момент смены профессии. В зависимости от назначения НС (фильтрация, распознавание и т. п.) образы должны относится к одному или к разным классам. При обучении НС-распознавателя должны предъявляться образы по крайней мере из двух классов, дабы научить сеть отличать, скажем, Ивана Васильевича от Василия Ивановича. Правило обучения (training algorithm) - определяет алгоритм (в идеале полностью автоматический) адаптивной модификации весовых коэффициентов. Например, самое популярное, ставшее классическим, правило обучения многослойного персептрона - так называемое обратное распространение ошибки.
Следует подчеркнуть важность использования при обучении стандартной НС не первых попавшихся, а именно характерных образов. Иногда удается хорошо обучить нейросеть для распознавания образов, ограничившись только корректной разбивкой всех имеющихся образов на отдельные классы, не отсортировывая неудачные («ни рыба ни мясо») образы в пределах одного класса. Не факт, что такой подход даст наилучшие результаты при распознавании, но то, что при обучении потребуется больше повторов, - сомнений не вызывает. У «предсказывающей» нейросети существует своя специфика. Прежде всего отмечу, что для русского уха термин «предсказание» (prediction) носит налет мистики, другое дело - прогноз, но давайте уж придерживаться международной научной терминологии… Так вот: если предсказывать временную последовательность (например, курс доллара) по ее предыстории, то абсолютно необходимо уточнить, какой, собственно, прогноз требуется - краткосрочный или долгосрочный, поскольку обучение для разных вариантов прогнозов следует проводить по-разному. Тот же курс доллара по одной лишь его предыстории не предскажешь, особенно в странах дикого капитализма, ведь если такой фактор, как количество вчерашних и сегодняшних чихов главного банкира, влияет на завтрашний курс, то этот фактор вместе со своей предысторией очень даже пригодится для предсказания. Об учении самообучающихся систем Существует иной принцип самоадаптации весовых коэффициентов. Он используется в самообучающихся (unsupervised, или, проще говоря, «без учителя») нейросетях, ярким представителем которых являются самоорганизующиеся карты Кохонена (Kohonen Self-organizing Feature Maps). Суть в том, что модификации подвергаются весовые коэффициенты, соответствующие определенным, получившим приоритет нейронам. Сначала по выбранному критерию определяется выигравший нейрон и нейроны из его окружения. На следующем этапе обучения область вокруг выигравшего нейрона сжимается, а степень (шаг) адаптации уменьшается. Обучение прекращается опять-таки после многократных повторов, когда выигрывать начнет один и тот же нейрон. Чтобы получить наилучшие результаты от применения такой НС для предварительной классификации, например, амплитудно-частотных спектров вибросигналов, необходимо изначально знать, сколько классов присутствует в обрабатываемых данных. Если количество нейронов окажется недостаточным, то самообучающаяся НС отнесет спектры «смежных» классов к более представительным классам. Если задать другое число нейронов, то «смежные» спектры НС отнесет к несуществующим. На практике количество классов становится известным после выявления особенностей каждого класса в отдельности, тогда как автоматически выявить эти особенности, по идее, и должна была самообучающаяся сеть, причем в скрытом виде, то есть внутри самой себя. Круг замкнулся! Получается, что для нейросети без учителя некий «суперучитель» должен указать оптимальное число классов (выходных нейронов). Но вернемся к нашей нейросети. Любая палка - о двух концах: с одной стороны, получаем выигрыш в автоматизации, с другой - проигрыш из-за целого ряда ограничений. Сжимать область вокруг выигравшего нейрона и уменьшать шаг адаптации приходится на основе личного опыта в зависимости от специфики задачи или входных данных. Итак, самообучающиеся НС применимы для решения лишь узкого круга задач, например для предварительной классификации (кластеризации).
|