Селекция признаков
10.5. Оптимальная селекция признаков
Существуют две формы использования критериев (мер отделимости классов): "пассивная" и "активная". Пассивная селекция – это работа с уже полученными признаками. Активная селекция аналогична процессу генерации признаков: она позволяет построить из исходного набора признаков новый набор меньшего размера, в котором состав признаков, вообще говоря, не является подмножеством исходного набора признаков. Все типы селекции, рассмотренные в предыдущих разделах – пассивные.
Пусть и
.
Рассмотрим конструирование критериев с использованием активной селекции:
или y=F(x).
Пусть
-
и
– вектора столбцы, тогда
– строки,
-
– исходное пространство признаков,
-
– результирующее пространство признаков,
-
– матрица преобразования исходного пространства в результирующее,
-
– число классов.
Тогда
![y=A^T x](/sites/default/files/tex_cache/0b78b7f56de1bae00160d867f3c0f66a.png)
![y_{l\times 1}=A^T x_{m\times 1},](/sites/default/files/tex_cache/ef01fb599985b66f63a5b1a5401ab92e.png)
![A_{l\times m}^T](/sites/default/files/tex_cache/8f2932bdf13f1354247c41a65a318adf.png)
![l\times m](/sites/default/files/tex_cache/9dbdfdeb9247624209d08771cf2223f3.png)
Рассмотрим критерий .
Будем максимизировать критерий
путем
выбора матрицы
. Для вектора признаков
имеем матрицы
и
. Для
вектора признаков
имеем матрицы
и
.
![S_{xW}=\sum_i P_i S_{yi}](/sites/default/files/tex_cache/f9e95479d9d98fede11ce442aa740486.png)
Проведем несколько преобразований.
![\begin{gathered}
S_{yi}=E\left\lfloor(y-\mu_i)(y-\mu_i)^T\right\rfloor= \\
=E\left\lfloor A^T(x-\mu_{xi})(x-\mu_{xi})^T A\right\rfloor= \\
=A^T E\left\lfloor(x-\mu_{xi})(x-\mu_{xi})^T\right\rfloor A= \\
=A^T S_{xi}A \\
S_{yW}=\sum_i P_i A^T S_{xi}A=A^T\left(\sum_i P_i S_{xi}\right)A=A^T S_{sW} A
\end{gathered}](/sites/default/files/tex_cache/ebfec7375b1c50c6e6c3a91d409519ea.png)
Аналогично: . Тогда
– критерий разделимости вектора признаков.
Теперь необходимо преобразовать из соображений
.
Будем искать решение из условия максисума
![\frac{dJ_3(A)}{dA}=0](/sites/default/files/tex_cache/639da28a9039c8d70eab05ae11ecc438.png)
Утверждение о вычислении производной. Пусть и
- некоторые квадратные матрицы размера
. Тогда
![\begin{gathered}
\frac{d}{dA}trace\left\{(A^TS_1A)^{-1}(A^TS_2A)\right\}= \\
=-2S_1A(A^TS_1A)^{-1}(A^TS_2A)(A^AS_1A)^{-1}+2S_2A(A^TS_1A)^{-1}.
\end{gathered}](/sites/default/files/tex_cache/2a26e5bce6328a51119adfae6e3ad80c.png)
Для получения максимума по критерию, необходимо, чтобы
![-2S_{xW}A(A^TS_{xW}A)^{-1}(A^TS_{sb}A)(A^TS_{xW}A)^{-1}+2S_{xb}A(A^TS_{xW}A)^{-1}=0](/sites/default/files/tex_cache/753f45477e55ea4ccb4b3caeac05c6a3.png)
![-S_{xW}AS_{yW}^{-1}S_{yb}S_{yW}^{-1}+S_{xb}AS_{yW}=0](/sites/default/files/tex_cache/c81e4b6079ecfea4e3789ae70be09145.png)
![A(S_{yW}^{-1}S_{yb})=(S_{yW}^{-1}S_{yb})A](/sites/default/files/tex_cache/aa99182d34ba574840a3c28fa3f894e3.png)
![\frac{dJ_3(A)}{dA}=0](/sites/default/files/tex_cache/639da28a9039c8d70eab05ae11ecc438.png)
Утверждение. Пусть и
– симметрические, положительно
определенные матрицы. Тогда существует преобразование, приводящее одну
из них к единичной, а другую к диагональной.
Доказательство. Приведем эти преобразования
![B^TS_{yW}B=I,\\
B^TS_{yb}B=D,](/sites/default/files/tex_cache/14b84bd0241968507ebe5b9b5ec5d481.png)
![B,I,D](/sites/default/files/tex_cache/19fde635f0b9c0ef44c05e62171bf051.png)
![l\times l](/sites/default/files/tex_cache/27771e2208849288b9fe644ee103c902.png)
Утверждение. инвариантно
относительно преобразований вектора
в
.
Доказательство. Рассмотрим
![\widetilde{y}=B^T y=B^TA_x.](/sites/default/files/tex_cache/34fd437e4cb2f29563ea5a0a47b055df.png)
![J_3(\widetilde{y})=trace\left\{S_{\widetilde{y}W}^{-1}S_{\widetilde{y}b}\right\}
=trace\left\{(B^TS_{yW}B)^{-1}(B^TS_{yb}B)\right\}=\\
=trace\left\{B^{-1}S_{yW}^{-1}(B^T)^{-1}B^{-1}S_{yb}B\right\}
=trace\left\{B^{-1}(S_{yW}^{-1}S_{yb}B)\right\}=\\
=trace\left\{(S_{uW}^{-1}S_{yb})BB^{-1}\right\}=trace\left\{S_{yW}^{-1}S_{yb}\right\}=J_3(y).](/sites/default/files/tex_cache/23fd0e8ac4e10d4e70d102c1fcde699b.png)
Т.к. – условие того,
что производная равна нулю, то
![(S_{xW}^{-1}S_{xb})AB=A(S_{yW}^{-1}S_{yb}(B^T)^{-1}B^T)B= \\
=AB(B^{-1}S_{yW}^{-1}(B^T)^{-1})(B^T S_{yb}B)=AB(B^T S_{yW}B)^{-1}(B^T S_{yb}B)=ABD](/sites/default/files/tex_cache/b2d38209d524a990926a10749ec0c6af.png)
Используя предыдущее утверждение, подбираем матрицу и получаем:
![(S_{xW}^{-1}S_{xb})AB=ABD.](/sites/default/files/tex_cache/09c2c9ed0a056c2585b2c4b96a4a253a.png)
![AB=C](/sites/default/files/tex_cache/092f8f64a9f22aecebf06f80be05df3b.png)
![m\times l](/sites/default/files/tex_cache/cad77f97882f7dc6124413262db5cb5a.png)
Утверждение. Если матрица положительно определенная (положительно полуопределенная), то
-
все собственные значения
положительны,
-
если
симметричная, то все собственные вектора, соответствующие разным собственным значениям, ортогональны,
-
для симметричной матрицы
существует преобразование
, где
состоит из собственных векторов этой матрицы или столбцы
– собственные вектора, причем
– диагональная матрица, на диагоналях которой стоят собственные значения.
Т.к. случайные величины ортогональны, то .
Теперь рассмотрим алгоритм оптимальной селекции признаков:
Поиск собственных значений и выбор наилучших (наибольших).
Формирование матрицы из собственных векторов, соответствующих этим собственным значениям
10.6. Оптимальная селекция признаков с помощь нейронной сети
Пусть задано признаков,
– вектор
признаков. Для применения теории нейронных сетей к задаче селекции
признаков немного изменим обычное представление о нейронной сети.
Теперь будем рассматривать нейронную сеть с линейными функциями
активации. Таким образом, теперь вектор признаков, попавший на вход
нейронной сети, просто суммируется и подается на выход, т.е. выход
нейрона превращается в обычную сумму.
Рассмотрим так называемую автоассоциативную сеть. Сеть имеет входных и
выходных узлов и единственный
скрытый слой с
узлами и линейными функциями активации.
В процессе обучения выходы сети те же, что и входы. Такая сеть имеет
единственный максимум и выходы скрытого слоя определяют проекцию
-мерного пространства на
-мерное
подпространство.
Интерес представляет выходной слой из нейронов. Если
восстанавливать исходный вектор с целью максимального правдоподобия,
то получим задачу квадратичного программирования с одним
экстремумом.