Читайте также:
|
|
Главная причина популярности нейронных сетей кроется в их способности моделировать нелинейные задачи, т.е. задачи классификации, которые нельзя решить, проводя гиперплоскость между классами, и задачи регрессии, которые нельзя решить, проводя гиперплоскость через данные.
При этом, однако, не следует пренебрегать и простыми линейными моделями. Часто оказывается, что задача, считавшаяся сложной и нелинейной, на самом деле может быть успешно решена линейными методами, и, во всяком случае, линейная модель является хорошей точкой отсчета для сравнения эффективности различных более сложных методов.
В пакете ST Neural Networks линейные модели строятся с помощью специального типа нейронных сетей - линейных. Линейная сеть имеет всего два слоя: входной и выходной слой, имеющий линейные PSP-функции и функции активации. Как и выходной слой RBF-сети, линейная сеть оптимизируется непосредственно с помощью метода псевдообратных.
Чтобы построить линейную модель в задаче регрессии для ирисов, воспользуемся диалоговым окном Создать сеть - Create Network: выберем тип сети Линейная - Linear. Советник - Network Advisor автоматически сконфигурирует все остальные параметры сети.
После того, как сеть построена, обучим ее, нажав кнопку Псевдообратные - Pseudo-Inverse в диалоговом окне Радиальная базисная функция -Radial Basis Function (на самом деле эта кнопка оптимизирует выходной слой любой сети в предположении, что PSP-функции и функции активации этого слоя линейны).
Посмотрев статистики регрессии (мы предполагаем, что используется тот же самый набор данных), вы обнаружите, что Отношение ст. откл. при обучении - Trainings.D. Ratio равно 0,1135, а Контрольное отношение ст. откл. - Verification S.D. Ratio равно 0,1723. Результат действительно получился того же порядка, что у нелинейных моделей, хотя вполне вероятно, что мы не выжали из нелинейных моделей все, на что они способны.
Сети Кохонена
Обсуждение
В сетях Кохонена происходит неуправляемое обучение (без учителя): сеть учится распознавать кластеры среди неразмеченных обучающих данных, содержащих только входные значения.
Кроме этого, сеть Кохонена располагает родственные кластеры поблизости друг от друга в выходном слое, формируя так называемую топологическую карту (Topological Map) (Haykin, 1994; Fausett, 1994; Patterson, 1996).
Сети Кохонена используются не так, как сети других типов, и пакет ST Neural Networks имеет специальные средства для работы с ними, в том числе:
1. Окно Частоты выигрышей - Win Frequencies, в котором показывается, где в сети формируются кластеры.
2. Окно Топологическая карта - Topological Map, которое показывает, какие наблюдения отнесены к тому или иному кластеру, и помогает пользователю правильно пометить элементы и наблюдения.
Для упражнения мы возьмем видоизмененный вариант файла Iris.sta с четырьмя входными и одной выходной переменной (как в исходном файле) и 30-ю обучающими и 30-ю контрольными наблюдениями. Обратите внимание на то, что хотя сеть Кохонена при обучении не нуждается в выходных значениях, она будет их использовать, если такие значения имеются в файле. Выход сети Кохонена в пакете ST Neural Networks всегда будет номинальной переменной (т.е. такая сеть всегда выполняет классификацию).
Построим сеть Кохонена с помощью диалогового окна Создать сеть -Create Network, задав в нем тип Сети Кохонена - Kohonen. Советник -Network Advisor автоматически определит большинство параметров пре/пост-процессирования, включая (в данном случае) номинальную выходную переменную с тремя классами-значениями (Setosa, Versicol и Virginic).
Сеть Кохонена всегда состоит из двух слоев: входного слоя и выходного - топологическойкарты. Выходной слой сети Кохонена отличается тем, что он располагается в двумерном пространстве. Чтобы задать слой, нужно указать общее число элементов в столбце Элементы - Units и ширину слоя в столбце Ширина - Width (чтобы увидеть этот столбец, прокрутите таблицу в горизонтальном направлении). Программа ST Neural Networks определит высоту слоя, поделив число элементов на ширину.
В этом примере нам будет достаточно топологической карты 4x4. Таким образом, нужно задать число элементов выходного слоя равным шестнадцати, а его ширину - четырем.
Замечание. Ширину можно задавать для любого слоя любой сети пакета ST Neural Networks. Однако только в случае сети Кохонена этот параметр будет иметь принципиальное значение. Во всех остальных случаях единственным следствием выбора ширины будет тот или иной внешний вид сети в окне Рисунок сети - Network Illustration.
Дата добавления: 2015-11-30; просмотров: 24 | Нарушение авторских прав