Опубликован: 25.12.2006 | Доступ: свободный | Студентов: 1816 / 336 | Оценка: 4.43 / 4.13 | Длительность: 15:29:00
Специальности: Программист, Экономист
Лекция 7:

Предобработка данных

Понижение размерности входов

Сильной стороной нейроанализа является возможность получения предсказаний при минимуме априорных знаний. Поскольку заранее обычно неизвестно насколько полезны те или иные входные переменные для предсказания значений выходов, возникает соблазн увеличивать число входных параметров, в надежде на то, что сеть сама определит какие из них наиболее значимы. Однако, как это уже обсуждалось в "Обучение с учителем: Распознавание образов" , сложность обучения персептронов быстро возрастает с ростом числа входов (а именно - как куб размерности входных данных C\infty d^3 ). Еще важнее, что с увеличением числа входов страдает и точность предсказаний, т.к. увеличение числа весов в сети снижает предсказательную способность последней (согласно предыдущим оценкам: \varepsilon \geq \sqrt{d/P} ).

Таким образом, количество входов приходится довольно жестко лимитировать, и выбор наиболее информативных входных переменных представляет важный этап подготовки данных для обучения нейросетей. Лекция 4 специально посвящена использованию для этой цели самих нейросетей, обучаемых без учителя. Не стоит, однако, пренебрегать и традиционными, более простыми и зачастую весьма эффективными методами линейной алгебры.

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

Понижение размерности входов методом главных компонент

Собственные числа матрицы ковариаций \lambda_i, фигурировавшие в предыдущем разделе, являются квадратами дисперсий вдоль ее главных осей. Если между входами существует линейная зависимость, некоторые из этих собственных чисел стремятся к нулю. Таким образом, наличие малых \lambda_i свидетельствует о том, что реальная размерность входных данных объективно ниже, чем число входов. Можно задаться некоторым пороговым значением \varepsilon и ограничиться лишь теми главными компонентами, которые имеют \lambda\geq \varepsilon\lambda_{max}. Тем самым, достигается понижение размерности входов, при минимальных потерях точности представления входной информации.

Понижение размерности входов методом главных компонент

Рис. 7.5. Понижение размерности входов методом главных компонент

Восстановление пропущенных компонент данных

Главные компоненты оказываются удобным инструментом и для восстановления пропусков во входных данных. Действительно, метод главных компонент дает наилучшее линейное приближение входных данных меньшим числом компонент: \mbox{\~{x}=wx} (Здесь мы, как и прежде, для учета постоянного члена включаем фиктивную нулевую компоненту входов, всегда равную единице - см. рисунок 7.5, где справа показана нейросетевая интерпретация метода главных компонент. Таким образом, - это матрица размерности N\times(d+1) ). Восстановленные по главным компонентам данные из обучающей выборки x^{\prime\alpha}=w^{T}\mbox{\~{x}}=w^Twx^{\alpha} имеют наименьшее среднеквадратичное отклонение от своих прототипов x^\alpha. Иными словами, при отсутствии у входного вектора k компонент, наиболее вероятное положение этого вектора - на гиперплоскости первых N=(d-k) главных компонент. Таким образом, для восстановленного вектора имеем: x^{\prime\alpha}=w^{T}\mbox{\~{x}}=w^Twx^{\prime\alpha}, причем для известных компонент x^{\prime\alpha}=x^{\alpha}.

Пусть, например, у вектора x^\alpha неизвестна всего одна, k -я координата. Ее значение находится из оставшихся по формуле:

x^{\prime\alpha}_k=[w^Tw]_{ki}x^\alpha_i/(1-[w^Tw]_kk),
где в числителе учитываются лишь известные компоненты входного вектора x^\alpha.

В общем случае восстановить неизвестные компоненты (с индексами из множества K ) можно с помощью следующей итеративной процедуры (см. рисунок 7.6):

x_i^{n+1}=x_i^{\alpha},  i\notin K
x_i^{n+1}\rightarrow w_{ki}w_{kj}x_j^n, i \in K,
Восстановление пропущенных значения с помощью главных компонент. Пунктир - возможные значения   исходного вектора с   неизвестными координатами. Наиболее вероятное его значение - на пересечении с   первыми главными компонентами

Рис. 7.6. Восстановление пропущенных значения с помощью главных компонент. Пунктир - возможные значения исходного вектора с неизвестными координатами. Наиболее вероятное его значение - на пересечении с первыми главными компонентами