Курсовая работа: Искусственные нейронные сети
Второй вариант
модификации основан на следующей идее. Любая оценка, выдаваемая сетью,
основывается на зашумленных данных и неизбежно будет приводить к отдельным
ошибкам классификации (например, у некоторых больных результаты анализов могут
быть вполне нормальными). Иногда бывает целесообразно считать, что некоторые
виды ошибок обходятся "дороже" других (например, если здоровый
человек будет диагностирован как больной, то это вызовет лишние затраты на его
обследование, но не создаст угрозы для жизни; если же не будет выявлен
действительный больной, то это может привести к смертельному исходу). В такой
ситуации те вероятности, которые выдает сеть, следует домножить на коэффициенты
потерь, отражающие относительную цену ошибок классификации.
Вероятностная нейронная
сеть имеет единственный управляющий параметр обучения, значение которого должно
выбираться пользователем, - степень сглаживания (или отклонение гауссовой
функции). Как и в случае RBF-сетей, этот параметр выбирается из тех
соображений, чтобы шапки " определенное число раз перекрывались":
выбор слишком маленьких отклонений приведет к "острым"
аппроксимирующим функциям и неспособности сети к обобщению, а при слишком
больших отклонениях будут теряться детали. Требуемое значение несложно найти
опытным путем, подбирая его так, чтобы контрольная ошибка была как можно
меньше. К счастью, PNN-сети не очень чувствительны к выбору параметра сглаживания.
Наиболее важные
преимущества PNN-сетей состоят в том, что выходное значение имеет вероятностный
смысл (и поэтому его легче интерпретировать), и в том, что сеть быстро
обучается. При обучения такой сети время тратится практически только на то, чтобы
подавать ей на вход обучающие наблюдения, и сеть работает настолько быстро,
насколько это вообще возможно.
Существенным
недостатком таких сетей является их объем. PNN-сеть фактически вмещает в себя
все обучающие данные, поэтому она требует много памяти и может медленно
работать.
PNN-сети особенно
полезны при пробных экспериментах (например, когда нужно решить, какие из
входных переменных использовать), так как благодаря короткому времени обучения
можно быстро проделать большое количество пробных тестов.
5.
Обобщенно-регрессионная нейронная сеть
Обобщенно-регрессионная
нейронная сеть (GRNN) устроена аналогично вероятностной нейронной сети (PNN),
но она предназначена для решения задач регрессии, а не классификации. Как и в
случае PNN-сети, в точку расположения каждого обучающего наблюдения помещается
гауссова ядерная функция. Мы считаем, что каждое наблюдение свидетельствует о
некоторой нашей уверенности в том, что поверхность отклика в данной точке имеет
определенную высоту, и эта уверенность убывает при отходе в сторону от точки.
GRNN-сеть копирует внутрь себя все обучающие наблюдения и использует их для
оценки отклика в произвольной точке. Окончательная выходная оценка сети
получается как взвешенное среднее выходов по всем обучающим наблюдениям, где величины
весов отражают расстояние от этих наблюдений до той точки, в которой
производится оценивание (и, таким образом, более близкие точки вносят больший
вклад в оценку).
Первый промежуточный
слой сети GRNN состоит из радиальных элементов. Второй промежуточный слой
содержит элементы, которые помогают оценить взвешенное среднее. Для этого
используется специальная процедура. Каждый выход имеет в этом слое свой
элемент, формирующий для него взвешенную сумму. Чтобы получить из взвешенной
суммы взвешенное среднее, эту сумму нужно поделить на сумму весовых
коэффициентов. Последнюю сумму вычисляет специальный элемент второго слоя.
После этого в выходном слое производится собственно деление (с помощью
специальных элементов "деления"). Таким образом, число элементов во
втором промежуточном слое на единицу больше, чем в выходном слое. Как правило,
в задачах регрессии требуется оценить одно выходное значение, и,
соответственно, второй промежуточный слой содержит два элемента.
Можно модифицировать
GRNN-сеть таким образом, чтобы радиальные элементы соответствовали не отдельным
обучающим случаям, а их кластерам. Это уменьшает размеры сети и увеличивает
скорость обучения. Центры для таких элементов можно выбирать с помощью любого
предназначенного для этой цели алгоритма (выборки из выборки, K-средних или
Кохонена), и программа ST Neural Networks соответствующим образом корректирует
внутренние веса.
Достоинства и
недостатки у сетей GRNN в основном такие же, как и у сетей PNN - единственное
различие в том, что GRNN используются в задачах регрессии, а PNN - в задачах
классификации. GRNN-сеть обучается почти мгновенно, но может получиться большой
и медленной (хотя здесь, в отличие от PNN, не обязательно иметь по одному
радиальному элементу на каждый обучающий пример, их число все равно будет
большим). Как и сеть RBF, сеть GRNN не обладает способностью экстраполировать
данные.
6.
Линейная сеть
Согласно общепринятому
в науке принципу, если более сложная модель не дает лучших результатов, чем
более простая, то из них следует предпочесть вторую. В терминах аппроксимации
отображений самой простой моделью будет линейная, в которой подгоночная функция
определяется гиперплоскостью. В задаче классификации гиперплоскость размещается
таким образом, чтобы она разделяла собой два класа (линейная дискриминантная
функция); в задаче регрессии гиперплоскость должна проходить через заданные
точки. Линейная модель обычно записывается с помощью матрицы NxN и вектора
смещения размера N.
На языке нейронных
сетей линейная модель представляется сетью без промежуточных слоев, которая в
выходном слое содержит только линейные элементы (то есть элементы с линейной
функцией активации). Веса соответствуют элементам матрицы, а пороги -
компонентам вектора смещения. Во время работы сеть фактически умножает вектор
входов на матрицу весов, а затем к полученному вектору прибавляет вектор
смещения.
Линейная сеть является
хорошей точкой отсчета для оценки качества построенных Вами нейронных сетей.
Может оказаться так, что задачу, считавшуюся очень сложной, можно успешно не
только нейронной сетью, но и простым линейным методом. Если же в задаче не так
много обучающих данных, то, вероятно, просто нет оснований использовать более
сложные модели. В начало
7.
Сеть Кохонена
Сети Кохонена
принципиально отличаются от всех других типов сетей, в то время как все
остальные сети предназначены для задач с управляемым обучением, сети Кохонена
главным образом рассчитана на неуправляемое обучение.
При управляемом
обучении наблюдения, составляющие обучающие данные, вместе с входными переменными
содержат также и соответствующие им выходные значения, и сеть должна
восстановить отображение, переводящее первые во вторые. В случае же
неуправляемого обучения обучающие данные содержат только значения входных
переменных.
На первый взгляд это может
показаться странным. Как сеть сможет чему-то научиться, не имея выходных
значений? Ответ заключается в том, что сеть Кохонена учится понимать саму
структуру данных.
Одно из возможных
применений таких сетей - разведочный анализ данных. Сеть Кохонена может
распознавать кластеры в данных, а также устанавливать близость классов. Таким
образом пользователь может улучшить свое понимание структуры данных, чтобы
затем уточнить нейросетевую модель. Если в данных распознаны классы, то их
можно обозначить, после чего сеть сможет решать задачи классификации. Сети
Кохонена можно использовать и в тех задачах классификации, где классы уже
заданы, - тогда преимущество будет в том, что сеть сможет выявить сходство
между различными классами.
Другая возможная
область применения - обнаружение новых явлений. Сеть Кохонена распознает
кластеры в обучающих данных и относит все данные к тем или иным кластерам. Если
после этого сеть встретится с набором данных, непохожим ни на один из известных
образцов, то она не сможет классифицировать такой набор и тем самым выявит его
новизну.
Сеть Кохонена имеет
всего два слоя: входной и выходной, составленный из радиальных элементов
(выходной слой называют также слоем топологической карты). Элементы
топологической карты располагаются в некотором пространстве - как правило
двумерном (в пакете ST Neural Networks реализованы также одномерные сети
Кохонена).
Обучается сеть Кохонена
методом последовательных приближений. Начиная со случайным образом выбранного
исходного расположения центров, алгоритм постепенно улучшает его так, чтобы
улавливать кластеризацию обучающих данных. В некотором отношении эти действия
похожи на алгоритмы выборки из выборки и K-средних, которые используются для
размещения центров в сетях RBF и GRNN, и действительно, алгоритм Кохонена можно
использовать для размещения центров в сетях этих типов. Однако, данный алгоритм
работает и на другом уровне.
Помимо того, что уже
сказано, в результате итеративной процедуры обучения сеть организуется таким
образом, что элементы, соответствующие центрам, расположенным близко друг от
друга в пространстве входов, будут располагаться близко друг от друга и на
топологической карте. Топологический слой сети можно представлять себе как
двумерную решетку, которую нужно так отобразить в N-мерное пространство входов,
чтобы по возможности сохранить исходную структуру данных. Конечно же, при любой
попытке представить N-мерное пространство на плоскости будут потеряны многие
детали; однако, такой прием иногда полезен, так как он позволяет пользователю визуализировать
данные, которые никаким иным способом понять невозможно.
Основной итерационный
алгоритм Кохонена последовательно проходит одну за другой ряд эпох, при этом на
каждой эпохе он обрабатывает каждый из обучающих примеров, и затем применяет
следующий алгоритм:
Страницы: 1, 2, 3, 4, 5, 6, 7 |