Алгоритм, основанный на понятии порогового расстояния.
Пороговый алгоритм – один из самых несложных алгоритмов, базирующихся на понятии меры близости. Критерием отнесения объекта к классу здесь является пороговое расстояние Т: если объект находится в пределах порогового расстояния от точки-прототипа некоторого класса, то такой объект будет отнесен к данному классу. Если исследуемый объект находится на расстоянии, превышающем Т, он становится прототипом нового класса. Самая первая точка-прототип может выбираться произвольно. Результатом работы такого алгоритма будет разбиение объектов выборки Алгоритм пороговый 1. Выбрать точку-прототип первого класса (например, объект Х1 из обучающей выборки). Количество классов K положить равным 1. Обозначить точку-прототип Z1. 2. Определить наиболее удаленный от Z1 объект Хf по условию: где 3. Определить пороговое расстояние Построить 4. Выбрать 5. Вычислить расстояние от Xj до всех точек-прототипов: 6. Определить ближайшую к рассматриваемому объекту точку-прототип Zp по условию 7. Если 8. Если
К достоинствам рассмотренного алгоритма следует отнести простоту реализации и небольшой объем вычислений. Очевидны также его недостатки: не предусмотрено уточнение разбиения. В результате расстояние от объекта до точки-прототипа класса может оказаться больше, чем расстояние от этого объекта до точки-прототипа другого класса. Результат, кроме того, сильно зависит от порядка рассмотрения объектов
Алгоритм MAXMIN. Рассмотрим более эффективный по сравнению с предыдущим алгоритм, являющийся улучшением порогового алгоритма. Исходными данными для работы алгоритма будет, как и раньше, выборка На первом этапе алгоритма все объекты разделяются по классам на основе критерия минимального расстояния от точек-прототипов этих классов (перваяточка-прототип может выбираться произвольно). Затем в каждом классе выбирается объект, наиболее удаленный от своего прототипа. Если он удален от своего прототипа на расстояние, превышающее пороговое, такой объект становится прототипом нового класса. Отметим, что в этом алгоритме пороговое расстояние не является фиксированным, а определяется на основе среднего расстояния между всеми точками-прототипами, то есть корректируется в процессе работы алгоритма. Если в ходе распределения объектов выборки
Для вычисления Т - порогового расстояния между К точками-прототипами воспользуемся следующей формулой. Для произвольного числа классов К пороговое расстояние считается как половина среднего расстояния между точками-прототипами, то есть
Алгоритм MAXMIN. 1. Выбирается первоначальная точка-прототип (например, Х1); она становится точкой-прототипом первого класса и обозначается далее Z1. Количество классов полагаем равным 1: К=1. 2. Определяется Xf – наиболее удаленный от Z1 объект. Xf становится точкой-прототипом нового класса и обозначается далее Zf. К=К+1. 3. Находим Т – пороговое расстояние. 4. Для всех объектов обучающего множества строится матрица расстояний до каждого из имеющихся прототипов: 5. Каждый объект относится к классу по критерию наибольшей близости к точке-прототипу: Xi отнесен к классу р, если 6. В каждом классе k определяется объект Xlk, наиболее удаленный от точки-прототипа: 7. Для всех найденных объектов проверяется условие: Если для некоторого 8. Если новых классов не создано, то КОНЕЦ. Иначе – перейти к шагу 9. 9. Вычисляется новое значение Т как среднее расстояние между прототипами. 10. Перейти к шагу 4.
Алгоритм позволяет получить лучшее разбиение точек на классы, поскольку разбиение многократно уточняется. Это снижает чувствительность алгоритма к ошибкам в обучающем множестве, а также к выбору порядка рассмотрения объектов. Недостатком является необходимость многократно рассчитывать расстояния между точками. Алгоритм К средних. Рассмотрим алгоритм, решающий задачу обучения «без учителя» при одном дополнительном условии: количество классов, к которым могут принадлежать элементы обучающей выборки, заранее известно (классов – К). В такой ситуации первоначально выбираются К точек-прототипов (например, первые К объектов обучающей выборки
1. Обозначим номер итерации s=0. Выбираются К начальных точек-прототипов:
2. Выполняется итерация s=s+1. 3. Строится матрица расстояний. Каждый объект 4. Для каждого из сформированных классов вычисляется новая точка-прототип. Для этого значение каждого признака для точки-прототипа класса k определяется как среднее арифметическое значений этого признака по всем объектам k-го класса, сформированного на текущей итерации s:
где 5. Если для всех иначе – переход к шагу 2.
Заметим, что в качестве точек-прототипов полезно брать не первые К объектов из Алгоритмы, рассмотренные в этой главе, обладают одним общим свойством: с их помощью решается задача классификации для обучающей выборки
Воспользуйтесь поиском по сайту: ![]() ©2015 - 2025 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|