Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Нелинейное понижение размерности

Читайте также:
  1. Байт – машинное слово минимальной размерности, адресуемое в процессе обработки данных.
  2. Нелинейное сжатие информации - карты Кохонена
  3. Отбор переменных и понижение размерности
  4. Понижение размерности входов: признаки
  5. Сквернословие, как зараза пространства, несет понижение всего интеллекта.

Один из недостатков метода главных компонент состоит в том, что это преобразование является линейным и может улавливать только линейные направления максимальной вариации (метод будет хоро­шо работать на данных, изображенных на левом рисунке, но не на правом).

 

Поэтому предлагается другой подход к проблеме: нелинейный вариант АГК, основанный на применении автоассоциативных сетей (Fausett, 1994; Bishop, 1995).

Автоассоциативная сеть - это сеть, предназначенная для воспроизведения на выходе своих же входных данных. У такой сети число выходов совпа­дает с числом входов, и все переменные имеют тип входная/выходная. Число же скрытых элементов делается меньше числа входов-выходов, и это заставляет сеть «сжимать» информацию, представляя ее в меньшей размерности.

Трехслойная автоассоциативная сеть сначала линейно преобразует вход­ные данные в меньшую размерность промежуточного слоя, а затем снова линейно разворачивает их в выходном слое. Можно показать, что такая сеть на самом деле реализует стандартный алгоритм анализа главных компонент (Bourland and Kamp, 1988). Для того чтобы выполнить нели­нейное понижение размерности, нужно использовать пятислойную сеть (Kramer, 1991). Ее средний слой служит для уменьшения размерности, а соседние с ним слои, отделяющие его от входного и выходного слоев, выполняют нелинейные преобразования.

Чтобы осуществить нелинейное понижение размерности с помощью авто­ассоциативной сети в пакете ST Neural Networks, нужно действовать так:

1. Сформировать обучающий набор данных для автоассоциативной се­ти. Выходные переменные нужно объявить неучитываемыми, а вход­ным переменным присвоить тип Входная/выходная - Input/Output.

2.Построить автоассоциативную MLP-сеть с пятью слоями. В среднем скрытом слое должно быть меньше элементов, чем во входном и вы­ходном слоях. В двух оставшихся промежуточных слоях должно быть достаточно большое (и одинаковое) число элементов.

3. Обучить автоассоциативную сеть на подготовленном обучающем множестве. Здесь годится любой итеративный алгоритм обучения (например, спуск по сопряженным градиентам).

4. Удалить два последних слоя автоассоциативной сети (кнопкой Удалить - Delete в окне Редактор сети - Network Editor). В результате получится сеть для пре-процессирования, понижающая размерность.

5. С помощью пре-процессирующей сети получить версию входных данных в уменьшенной размерности. Скопировать эти данные из окна Прогнать набор данных - Run Data Set в окно Редактор данных -Data Set Editor, заменив ими первоначальные входные, но оставив ис­ходные выходные переменные. Таким образом, будет построено обу­чающее множество для понижения размерности.

6. Построить другую (обрабатывающую) сеть и обучить ее на построен­ном на предыдущем шаге обучающем множестве.

7. С помощью команды Сеть (добавить) - Network (Append)... меню Файл -Открыть – File -Open добавить обрабатывающую сеть к пре-процессирующей сети. При этом будет построена единая сеть, кото­рая одновременно пре-процессирует и обрабатывает данные.

 


Дата добавления: 2015-11-30; просмотров: 37 | Нарушение авторских прав



mybiblioteka.su - 2015-2024 год. (0.006 сек.)