Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СППР_Часть2_New.doc
Скачиваний:
68
Добавлен:
24.11.2019
Размер:
1.49 Mб
Скачать

3.3 Сокращение размерности

3.3.1 Метод главных компонент позволяет заменить большое количество информации, основанной на взаимно коррелирующих входных данных, множеством статистически независимых компонентов с учетом их важности. Имеем матрицу наблюдений независимой переменной ( переменных, наблюдений):

Согласно методу главных компонент вычисляем ковариационную матрицу для матрицы Х : размерность которой .

Затем вычисляем - собственные числа ковариационной матрицы и соответствующие им собственные вектора . Собственные векторы и собственные значения связаны зависимостью:

,

Собственные значения симметричной неотрицательной матрицы являются рациональными и неотрицательными. Упорядочим их в порядке убывания: В аналогичной последовательности расположим собственные векторы , сопряженные с . Если ограничиться максимальными собственными значениями, матрица W преобразования PCA (главных компонент) может быть определена в форме , при . Эта матрица определяет преобразование РСА как линейное преобразование

Вектор представляет собой вектор главных компонент, имеющих наибольшее влияние на реконструкцию вектора данных Х.

Реконструкция Х на основе вектора и ортогональной матрицы проводится в соответствии с выражением

Представление вектора Х наибольшими главными компонентами , составляющими вектор , равнозначно сохранению информации о наибольшей части энергии, содержащейся во множестве данных. Первый (наибольший) главный компонент, сопряженный с своим собственным вектором , определяет направление в многомерном пространстве, в котором вариация данных максимальна.

В системе MatLab вычислить собственные числа и соответствующие им собственные вектора можно с помощью функции [V,D]=eig(A), где V – матрица собственных векторов, а D – матрица, у которой на диагонали стоят собственные числа. Обычно собственные числа расположены по возрастанию, поэтому выбираем несколько последних собственных векторов и формируем из них матрицу преобразования . Вычисляем на основании этой матрицы и матрицы нормированных данных Х матрицу - строки которой – главные компоненты, а столбцы – исходные данные для обучающей и тестирующей выборок нейронной сети.

В программе Deductor метод главных компонент реализован в пункте обработки данных – «Факторный анализ».

3.3.2 Какие именно признаки брать – общий подход

Это называется feature selection и feature extraction. Простыми словами, процесс выглядит так.

1. Составляем список имеющихся признаков.

2. Добавляем в него различные функции от признаков (как упомянутый логарифм от веса), комбинации разных признаков (например, длина*ширина*высота), и т.п. Что именно комбинировать и какие преобразования использовать, должно подсказать знание задачи и здравый смысл. Этот процесс относится к feature extraction.

3. Задаём функцию ошибки, то есть определяем как будет оцениваться точность классификации. Например, это может быть отношение правильно распознанных примеров к их общему количеству.

4. Переходим на один уровень абстракции выше.

Представим эдакий чёрный ящик, внутри которого находится классификатор вместе с обучающей и тестирующей выборками. На входе ящика — двоичный вектор, указывающий, какие признаки должен использовать классификатор; на выходе — величина ошибки классификации (на тестовой выборке).

Таким образом, задача выбора признаков сводится к задаче оптимизации: нужно найти такой входной вектор, при котором выходное значение ящика (ошибка классификации) будет минимально. Можно, например, добавлять признаки по одному (начиная с тех, которые сильнее всего улучшают результат). Можно использовать что-то посерьёзнее, типа генетических алгоритмов.

Что делать если количество зерен в реальности (в обучающей выборке) относится к количеству плевел как 1/200? Портит ли это обучающую выборку? В общем случае, портит: если одних примеров гораздо меньше, чем других, существует риск, что классификатор «запомнит» примеры из обучающей выборки, и не сможет адекватно распознавать другие похожие примеры (Overfitting). К тому же, если используется простейшая функция ошибки (правильно распознанных / размер выборки), философски настроенный классификатор может всегда отвечать «плевел» — и в 99.5% случаев будет прав.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]