Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Математические методы принятия решений

..pdf
Скачиваний:
3
Добавлен:
13.11.2023
Размер:
22.94 Mб
Скачать

Тогда вектор а находится из условия минимума целевой функ­

ции по а:

п

 

 

Js(a) = \\Y a - b\\2 = £ ( а тУг - b if,

 

i=1

откуда a = (УТУ )_ 1УТ6 = Y +b. Если матрица УТУ размером d x d невырождена, то решение единственно. Если матрица Y TY вырож­ дена, то решение не единственно. Тогда решение находится из об­ щего определения операции псевдообращения У + = (УТУ )- | УТ в виде У + = Н т(У тУ + е /)- 1Ут при е —►0.

Решение с наименьшей квадратичной ошибкой зависит от век­ тора допуска Ь, и различные способы выбора b приводят к различ­ ным свойствам полученного решения. Если вектор b задан про­ извольно, то нет гарантии того, что указанный вектор о будет разделяющим в случае разделяемых множеств.

Автоматизируем процедуру выбора вектора Ь, используя метод градиентного спуска. Градиент функции J3(a), вычисленный по а,

записывается в виде

VaJ s = 2УТ(Уа - Ь),

а градиент, вычисленный по Ь, задается в виде

Vf,Л = —2(Уа - Ь).

При любом b всегда можно считать, что а = Y +b, получая тем самым равенство VaJ s = 0 и минимизируя Js(a) по а за один шаг. Необходимо учитывать условие b > 0 (не допуская равенства b = 0). Можно положить вначале b > 0 и не уменьшать значения коорди­ нат вектора Ъ. Этого можно достичь при сохранении отрицательных координат градиента УьЛ, если вначале все положительные коор­ динаты вектора V&JS положить равными нулю. Приходим к про­ цедуре спуска (по алгоритму Хо—Кашьяпа) — минимизации функ­

ции Js(a, b) [18]:

bi > 0, h+i =bk +2peTk,

где е*: — вектор ошибки, ek — Yak — bk, eTk положительная состав­ ляющая вектора ошибки:

ejk = у tek +

|efe| —вектор, координаты которого суть абсолютные величины со­ ответствующих координат вектора е^, а* = Y rbk, k = 1 ,2 ,...

Рассматриваются значения коэффициента р е (0,1).

Алгоритм образует последовательность векторов допуска Ь и определяет разделяющий вектор для случая разделяемых мно­ жеств или явно обнаруживает неразделяемость для случая нераз­ деляемых множеств. Вектор erk должен стать нулевым, чтобы пре­ кратилось дальнейшее изменение о^, 6^, е*. Если выборки линейно неразделимы, то из этого больше не следует, что при е\, равном ну­ лю, вектор е*; тоже равен нулю. Для задачи с неразделяемым множе­ ством можно получить нулевой вектор ошибки с положительными координатами. Если это происходит, то выборки неразделимы.

Известны другие варианты этого алгоритма, когда оптимизиру­ ется выбор шага и исключаются процедуры обращения (псевдооб­ ращения) матрицы Y и вычисления У"г.

Решение по методу наименьшей квадратичной ошибки в преде­ ле при п —> оо приближается в смысле минимума средней квадра­ тической ошибки к разделяющей функции Байеса

9о(х) = Р(ь>11х ) - Р(ы2 |ж).

Это следует из того, что если предположить, что выборки взяты независимо в соответствии с вероятностным законом

Р(ж) = р (ж I Cùi)P(Wi) + р (ж I <02)Р(<02),

то решение по методу наименьшей квадратичной ошибки с исполь­ зованием расширенного вектора у дает разложение в ряд функции

д(х) = аТу,

где у = у(х) функция от х.

Если определить среднюю квадратическую ошибку аппрокси­ мации выражением

е2 = J[ату - д0(х)]2р(х) dx,

то можно доказать, что величина е2 минимизируется, если вектором решения является а = Y +b.

При аппроксимации QQ(X ) разделяющая функция ату позволяет получить непосредственную информацию относительно апостери­ орных вероятностей

P(wi I х) = у (1 + до(х)), Р(со2 1х) = у (1 - до(х)).

Качество аппроксимации зависит от функций Уг(х) и числа чле­ нов в разложении ату. Критерий средней квадратической ошибки в основном распространяется не на точки, близкие к поверхно­ сти решения до(х) = 0, а на точки, для которых Р(я) > 0,5. Таким образом, разделяющая функция, которая наилучшим образом ап­ проксимирует разделяющую функции Байеса, не обязательно ми­ нимизирует вероятность ошибки.

Для построения разделяющих функций используется потенци­ альная функция К (х, Х{) с текущей точкой х и выборкой я*. Вид потенциальной функции определяется видом выборки и существен­ но влияет на результаты. В общем виде можно указать, что К(х, xî) обратно пропорциональна ||я —æ;||2, например

о2

К (х, xî) = о2+ ||я —я, ||2

Разделяющая функция д(х) получается итерационным методом, когда выборки х\, х 2, ... рассматриваются последовательно:

gk+i(x) = gk(x) + rk(x, x k)K(x, x k),

где rk — некоторая функция ошибки.

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

Например, можно разделяющую функцию д(х) определить по

следующему алгоритму:

 

 

 

 

gk(x) + К{х, хк),

если

х к ~ и \

и

д(хк) ^ 0,

дк+ i(x) = ^ дк(х) - К(х, х к),

если

х к ~ о 2

и

д(хк) ^ 0,

дк{х)

в остальных случаях.

§ 9.3. Оценка разделяющего вектора с помощью методов математического программирования

Чтобы оценить вектор а для обобщенной линейной разделя­ ющей функции аТу = 0, применяют методы математического про­ граммирования. Пусть имеется множество из п выборок векто­ ров yi,y2, ■■-,Уп и требуется найти вектор а, удовлетворяющий

неравенству aTyi ^

bi > 0 при всех г.

Введем искусственную переменную t ^ 0, чтобы выполнялось

условие агуг +

bj.

Получим следующую задачу линейного программирования: ми­ нимизировать переменную t при условиях

aTyi + t^ b i, i = l , 2 , . .. ,n , t^ O .

В традиционной задаче линейного программирования полагают, что а ^ 0. В нашем случае это условие неприемлемо, так как вектор решения может иметь как положительные, так и отрицательные ко­ ординаты.

Представим компоненты вектора а в виде комбинации двух неотрицательных компонент а] и ао (см. § 2.1):

Qij = dj ÛO,

j = 1, 2, . . . , d,

а] ^ 0,

ао ^ 0.

Получим следующую классическую задачу линейного програм­ мирования для переменных t, a j, a^, ..., a ld, ао, результатом решения которой будет решающий вектор а: минимизировать t при условиях

d

 

2 Vijifl) - ûo) + * ^ bi,

г = 1,2, ...,п ,

j =1

 

t^ O , ao ^O , a j^ O ,

j = \,2 ,...,d .

Методы решения подобных задач хорошо изучены и рассмотре­ ны в гл. 7 (см. также [18, 61]).

Можно сформулировать и другую задачу линейного програм­ мирования: сведем задачу минимизации персептронной функции критерия к задаче линейного программирования. Напомним, что

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

Персептронная функция критерия задается в виде

J p ( a ) = 2 ( - a Ty),

уеУ

где У — множество выборок, классифицируемых с ошибкой посред­ ством вектора о.

Чтобы исключить тривиальное решение о = 0, введем положи­ тельный вектор допуска b и запишем функцию критерия в виде

Jp(a) = £ (bi-a^Vi),

ViCY'

где Y ' — множество выборок уи удовлетворяющих условию

аТУг ^ Ьг.

Функция Jp(o) является кусочно линейной, поэтому следует ввести п искусственных переменных и соответствующих им огра­ ничений и построить некоторую эквивалентную линейную целевую функцию. Рассмотрим задачу нахождения векторов a n t , миними­ зирующих линейную функцию

П

г=1

при ограничениях ^ 0,U ^ b i — aTyi, i = 1, 2, ... , п.

С учетом неотрицательности переменных получим следующую

задачу линейного программирования для нахождения вектора а: ми-

п

нимизировать функцию Z = J] U при условиях г=1

d

2 yiAaj ~ °0) + U ^ b*’ U ^O , ао^О , а] ^ 0, j = l,2 ,...,d .

7=1

Выбор а = О, U = Ьи г = 1,2,..., п, обеспечивает получение до­ пустимого базисного решения, с которого начинается традицион­ ный алгоритм симплекс-метода. Сходимость методов линейного программирования гарантирована как в случае линейной разделяемости, так и в случае, когда исходные выборки неразделяемы.

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

71

Л = 2 (аТУг-*>г)2

при условиях

d

о0 ^ 0, a j^ O , j = l,2 ,...,d .

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

§ 9.4. Разделяющие функции для случая многих классов

Процедуры получения разделяющих функций для случая двух классов (образов) стремятся распространить на случай многих классов. Универсального метода такого распространения не суще­ ствует, но при использовании различных приемов решения раз­ ных задачах это удается сделать. Так, в случае линейной машины для с классов вместо множества разделяющих функций gi(x) = а\у, г = 1, 2, . . . , с, вводится разделяющая функция вида атт)ÿ, где

ос

(аь 0 2 J• • • >а с)

,

Т)12 =

(у, - у , 0 , . . . , 0

) т ,

Т)13 = (У, о, - у , ... ,0 )т,

Т)1с = (у, о, 0 , ..., -у)т,

т. е. в строке rjÿ на месте г-го элемента находится у, на месте j- го элемента находится —у, остальные элементы равны нулю.

Если aTT)ÿ > 0 для всех г Ф j, то линейная машина, соответству­ ющая компонентам вектора а, будет правильно классифицировать у.

Вэтой процедуре размерность исходных данных увеличивается

вс раз, число выборок — в с —1 раз, что делает трудоемким приме­ нение данного алгоритма. Однако такое сведение с-мерной задачи к двумерной полезно для доказательства сходимости.

При распространении метода наименьших квадратов на случай многих классов наиболее часто используют прием, при котором ис­ ходная задача сводится к рассмотрению множества с задач для двух классов. Если сразу решать задачу минимизации квадрата ошибки

вслучае многих классов аналогично случаю двух классов, то вводят матрицу Y размером п х d, которую разбивают на блоки следую­

щим образом:

Y = (Yh Y2,...,Y cy,

где выборки, помеченные символом a>i, включают в себя строки У*. Затем вводят матрицу весовых векторов А размером d х с:

А= (fli, 02>• • • >ûc) ,

иматрицу В размером п х с:

В= (В и В 2, .. . , В с)т,

где все элементы В* являются нулевыми, за исключением элементов г-го столбца, равных 1. Тогда след квадратичной матрицы ошибок (Y A — B )T(Y A — B) будет минимален, если А = Y +B, где Y + — псевдообращение матрицы Y

Полученный результат может быть обобщен. Пусть Xÿ — потери для случая, когда принимается решение о выборе вместо истин­ ного (ùj, и предположим, что j подматрица матрицы В задается выражением

 

f^\j^2j

• • •

 

 

B j = -

^\j^2j

••• ^cj

j

1 j 2, ... , c,

 

 

 

\XijX2j

... Xcj /

 

 

где число строк равно rijyj = 1 , 2 , . . . , с.

Тогда если число выборок стремится к бесконечности, то ре­ шение А = Y +B дает разделяющие функции а]у, которые обеспе­ чивают оптимальное (в смысле минимума средней квадратической ошибки) приближение байесовской разделяющей функции

с

90i(x) = ~ Y ,

P ( WJ I ХУ

7= 1

§ 9.5. Учет погрешностей наблюдений при оценке значений параметров классификаторов

В §9.1-9.4 рассмотрены основные традиционные методы оцен­ ки значений параметров классификаторов по выборке. В основном они сводятся к получению разделяющих функций между класса­ ми (образами), в частности к линейным разделяющим функциям или к обобщенным линейным разделяющим функциям. Однако все рассмотренные алгоритмы не учитывают погрешности измерений наблюдаемых признаков, на основе которых принимаются решения, что при очень богатой статистике может быть как-то компенсиро­ вано. При небольшом числе наблюдений мы получим смещенные оценки разделяющих (решающих) функций, интервальные оцен­ ки разделяющих (решающих) функций будут значительными и зо­ ны неопределенности в принятии решения будут большими. Таким образом, для принятия надежного решения необходимо учитывать погрешности измерений наблюдаемых признаков, что позволит пра­ вильно определить интервальные оценки разделяющих функций, а тем самым и зоны неопределенности принимаемых решений.

Зона неопределенности классификатора по минимуму расстояния

Рассмотрим квадрат евклидова расстояния между измеренным вектором признаков х и эталонным вектором признаков |i одного из объектов (образов):

г2 = ( * - р ) т# _ 1( ж - р ) ,

где К ковариационная (дисперсионная) матрица наблюдений при­ знаков X И [1.

Например, на плоскости R2 в предположении, что

 

 

D(x - р) = D(x) + D(p),

 

К = /D(xi) + D(pO

О

 

V

0

D(x2) + D(p2)

 

квадрат расстояния г вычисляется по формуле

 

г2 =

(xi —рО2

(х2 - р 2)2

 

D(x,) + D(p,) +'

D(x2) + D(p2) ‘

(9Л)

Все величины, входящие в выражение (9.1), получены в резуль­ тате эксперимента и имеют погрешности.

Введем общий вектор 0 размерности п, координатами которо­ го являются все входящие в формулу (9.1) величины; дисперсию ошибки г-го параметра обозначим D(0j). Тогда за счет погрешно­ стей наблюдаемых величин дисперсия ошибки в определении г2 может быть вычислена по формуле

г= 1

г=1 j - 2

 

j>i

где D(0i, Qj) корреляционный момент оценок координат вектора 0 В предположении некоррелированности оценок 0 формула упроща-

Р Т Р Я *

 

^ 2> = Ê ( Ë ) W

(9.3)

 

i=l

 

Для приведенного примера (формула (9.1)) имеем

г=1

г=1

 

+ 1

( щ Ь ) 2* * * .» + 1

( з д й » )2^ » -

2=1

2=1

 

Дисперсия D(r2)

определяет величину

неопределенности

\/D (r2) квадрата расстояния между измеренным вектором призна­ ков и эталонным, учет которой обязателен в процессе принятия решения.

Если вводятся другие определения расстояния между векторами измеренных признаков и эталонов, то величина неопределенности вычисляется аналогичным образом по формулам (9.2) и (9.3).

Зона неопределенности линейных разделяющих функций

Будем считать, что найдено уравнение линейной разделяющей функции, т. е. определен решающий вектор а, или, другими сло­ вами, оценки свободных параметров оьйг, . . . , а т этой линейной функции.

Впроцессе определения оценок щ, I = 1,2,..., т, должны быть найдены как минимум дисперсии этих оценок. Они могут быть по­ лучены:

а) аналитическим путем (этот случай будет рассмотрен ниже); б) методом статистических испытаний.

Вслучае б), зная погрешности наблюдаемых значений призна­ ков эталонов, с помощью датчиков случайных чисел проведем необ­ ходимую серию статистических испытаний. Каждое наблюдение даст серию точек, для которых получают оценки параметров щ, 1= 1,2,..., т. Для I-го параметра будет получен вариационный ряд,

по которому можно определить наиболее вероятное значение сц и дисперсию этого значения D(2/). При необходимости может быть проведен и более строгий анализ вариационного ряда.

Пусть а — m -мерный вектор, координатами которого будут оцен­

ки щ,

1 = 1,2,

D(a) — ковариационная матрица оценок щ,

1= 1

, 2

Тогда дисперсия D(y) оценки разделяющей линей­

ной функции у(а) для любого значения у находится по формуле

D(y) = yTD(2)y,

где у — вектор с координатами yi,y i, ■■■, ут- Эта формула является частным случаем формулы (9.2). Если матрица D(â) диагональная, то получим аналог формулы (9.3).

Пример. По результатам наблюдений найти интервальную оцен­ ку обобщенной линейной разделяющей функции

у(а) = а\у\ + 02У2 + азУз-

Р е ш е н и е . Положим, что в процессе наблюдений определены оценки щ и их дисперсии D(S;)> ^ = 1. 2,3. Считаем, что корреля­ цией оценок щ, 1= 1,2,3, можно пренебречь, т. е. матрица D(o)

Соседние файлы в папке книги