Настройка одноэлементных систем для решения задач
Даже системы из одного адаптивного сумматора находят очень широкое применение. Вычисление линейных функций необходимо во многих задачах. Вот неполный перечень "специальностей" адаптивного сумматора:
- Линейная регрессия и восстановление простейших закономерностей [2.13, 2.14];
- Линейная фильтрация и адаптивная обработка сигналов [2.15];
- Линейное разделение классов и простейшие задачи распознавания образов [2.16, 2.17, 2.18].
Задача линейной регрессии состоит в поиске наилучшего линейного приближения функции, заданной конечным набором значений: дана выборка значений вектора аргументов x1, ..., xm, заданы значения функции F в этих точках: F(xi)=fi, требуется найти линейную (неоднородную) функцию


![]() |
(1) |
Необходимо особенно подчеркнуть, что метод наименьших квадратов не является ни единственным, ни наилучшим во всех отношениях способом доопределения задачи регрессии. Его главное достоинство - квадратичность минимизируемого критерия и линейность получаемых уравнений на коэффициенты

Явные формулы линейной регрессии легко получить, минимизируя квадратичный критерий качества регрессии. Обозначим

Найдем производные минимизируемой функции H по настраиваемым параметрам:

где xij - j-я координата вектора xi.
Приравнивая частные производные H нулю, получаем уравнения, из которых легко найти все




Обозначим p n +1-мерный вектор с координатами



В новых обозначениях решение задачи линейной регрессии имеет вид:
![]() |
(2) |
Пересчитывая по приведенным формулам p, Q, Q-1 и



Вновь обратимся к формуле (2) и будем рассматривать n +1-мерные векторы данных и коэффициентов. Обозначим

![]() | (5) |



Если при каждом поступлении нового вектора данных x изменять


Задача четкого разделения двух классов по обучающей выборке ставится так: имеется два набора векторов x1, ..., xm и y1,...,ym. Заранее известно, что xi относится к первому классу, а yi - ко второму. Требуется построить решающее правило, то есть определить такую функцию f(x), что при f(x)>0 вектор x относится к первому классу, а при f(x)<0 - ко второму.
Координаты классифицируемых векторов представляют собой значения некоторых признаков (свойств) исследуемых объектов.
Эта задача возникает во многих случаях: при диагностике болезней и определении неисправностей машин по косвенным признакам, при распознавании изображений и сигналов и т.п.
Строго говоря, классифицируются не векторы свойств, а объекты, которые обладают этими свойствами. Это замечание становится важным в тех случаях, когда возникают затруднения с построением решающего правила - например тогда, когда встречаются принадлежащие к разным классам объекты, имеющие одинаковые признаки. В этих случаях возможно несколько решений:
- искать дополнительные признаки, позволяющие разделить классы;
- примириться с неизбежностью ошибок, назначить за каждый тип ошибок свой штраф (c12 - штраф за то, что объект первого класса отнесен ко второму, c21 - за то, что объект второго класса отнесен к первому) и строить разделяющее правило так, чтобы минимизировать математическое ожидание штрафа;
- перейти к нечеткому разделению классов - строить так называемые "функции принадлежности" f1(x) и f2(x) - fi(x) оценивает степень уверенности при отнесении объекта к i-му классу (i=1,2), для одного и того же x может быть так, что и f1(x)>0, и f2(x)>0.
Линейное разделение классов состоит в построении линейного решающего правила - то есть такого вектора




Поиск такого решающего правила можно рассматривать как разделение классов в проекции на прямую. Вектор


Простейший и подчас очень удобный выбор состоит в проектировании на прямую, соединяющую центры масс выборок. Центр масс вычисляется в предположении, что массы всех точек одинаковы и равны 1. Это соответствует заданию


Во многих случаях удобнее иметь дело с векторами единичной длины.
Нормируя


Выбор




Более тонкие способы построения границы раздела классов

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






где p1, p2 - априорные вероятности принадлежности объекта соответствующему классу,



Приравняв нулю производную вероятности ошибки по


![]() | (7) |
Если принять гипотезу о нормальности распределений:

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



Если это уравнение имеет два корня







Таким образом, разделяющее правило с единственной разделяющей точкой

Если сразу ставить задачу об оптимальном разделении многомерных нормальных распределений, то получим, что наилучшей разделяющей поверхностью является квадрика (на прямой типичная "квадрика" - две точки). Предполагая, что ковариационные матрицы классов совпадают (в одномерном случае это предположение о том, что ?1=?2), получаем линейную разделяющую поверхность. Она ортогональна прямой, соединяющей центры выборок не в обычном скалярном произведении, а в специальном:

Важная возможность усовершенствовать разделяющее правило состоит с использовании оценки не просто вероятности ошибки, а среднего риска: каждой ошибке приписывается "цена" ci и минимизируется сумма

Требование безошибочности разделяющего правила на обучающей выборке принципиально отличается от обсуждавшихся критериев оптимальности. На основе этого требования строится персептрон Розенблатта - "дедушка" современных нейронных сетей [2.1].
Возьмем за основу при построении гиперплоскости, разделяющей классы, отсутствие ошибок на обучающей выборке. Чтобы удовлетворить этому условию, придется решать систему линейных неравенств:


Здесь xi (i=1,..,n) - векторы из обучающей выборки, относящиеся к первому классу, а yi (j=1,..,m) - ко второму.
Удобно переформулировать задачу. Увеличим размерности всех векторов на единицу, добавив еще одну координату -


Наконец, положим zi = xi (i=1,...,n), zj = -yj (j=1,...,m).
Тогда получим систему n +m неравенств

которую будем решать относительно


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





