Участник:LuarSoll/Песочница

Материал из MachineLearning.

< Участник:LuarSoll(Различия между версиями)
Перейти к: навигация, поиск
Текущая версия (15:00, 28 декабря 2009) (править) (отменить)
 
(1 промежуточная версия не показана)
Строка 1: Строка 1:
-
''Алгоритм СТОЛП'' (STOLP) - алгоритм отбора эталонных объектов для [[Метрический классификатор|метрического классификатора]]; алгоритм минимизации набора эталонов.
+
'''Алгоритм СТОЛП''' (STOLP) - алгоритм отбора эталонных объектов для [[Метрический классификатор|метрического классификатора]]; алгоритм минимизации набора эталонов.
==Задача==
==Задача==
Строка 6: Строка 6:
==Эталоны==
==Эталоны==
*Эталонами для i-го класса могут служить такие объекты этого класса, что расстояние от любого принадлежащего ему объекта из обучающей выборки расстояние до ближайшего "своего" эталона больше, чем расстояние до ближайшего "чужого" эталона, то есть все объекты обучающей выборки классифицируются правильно по набору эталонов.
*Эталонами для i-го класса могут служить такие объекты этого класса, что расстояние от любого принадлежащего ему объекта из обучающей выборки расстояние до ближайшего "своего" эталона больше, чем расстояние до ближайшего "чужого" эталона, то есть все объекты обучающей выборки классифицируются правильно по набору эталонов.
-
*Иначе эталон можно определить как объект с большим положительным [[Отступ|отступом]].
+
*Кроме того, эталон можно определить как объект с большим положительным [[Отступ|отступом]].
Простой перебор для отбора эталонов не подходит, так как число способов выбора по t эталонов для каждого класса (число классов k) составляет <tex>\prod_{j=1}^k C_{m_j}^t</tex>. Но перебор вариантов можно сократить при помощи алгоритма STOLP
Простой перебор для отбора эталонов не подходит, так как число способов выбора по t эталонов для каждого класса (число классов k) составляет <tex>\prod_{j=1}^k C_{m_j}^t</tex>. Но перебор вариантов можно сократить при помощи алгоритма STOLP
-
==Суть алгоритма STOLP==
+
==Алгоритм STOLP==
-
*Первый шаг: отбросить выбросы (то есть элементы выборки с [[Отступ|отступом]], меньшим некоторой константы δ)
+
===Вход===
-
*Второй шаг: сформировать начальное приближение
+
*Выборка <tex>X^l</tex>
-
*Третий шаг: "жадное" наращивание множества эталонов, пока число ошибок станет не меньше некоторой константы l<sub>0</sub>
+
*Допустимая доля ошибок <tex>l_0</tex>
 +
*Порог отсечения выбросов δ
 +
Кроме того, известны алгоритм классификации и формула вычисления величины риска (W) для объекта быть распознанным как объект чужого класса.
 +
 
 +
===Выход===
 +
Построить множество эталонов Ω∈X<sup>l</sup>
 +
 
 +
===Описание алгоритма===
 +
* отбросить выбросы (объекты <tex>X^l</tex> с W, большей некоторой константы δ)
 +
* сформировать начальное приближение Ω - выбрать из каждого класса по объекту, обладающему
 +
**минимальной величиной риска<ref>{{книга |автор = Воронцов К.В. |заглавие = Лекции по метрическим алгоритмам классификации | ссылка = http://www.machinelearning.ru/wiki/images/9/9d/Voron-ML-Metric.pdf}}</ref>
 +
**либо максимальной величиной риска<ref>{{книга |автор= Загоруйко Н. Г. |заглавие = Прикладные методы анализа данных и знаний. |место = Новосибирск |издательство = ИМ СО РАН |год = 1999}}</ref>
 +
* наращивание множества эталонов (пока число объектов, распознанных неправильно, не станет меньше <tex>l_0</tex>):
 +
** классифицировать объекты <tex>X^l</tex>, используя в качестве обучающей выборки Ω
 +
** пересчитать величины риска
 +
** среди объектов каждого класса, распознанных неправильно, выбрать объекты с максимальным W, добавляемые к Ω
 +
 
 +
===Примечания===
 +
* возможен вариант, при котором в обучающей выборки все объекты выборки имеют W, большую порога отсечения выбросов. Тогда они окажутся отброшены на первом шаге алгоритма. В таком случае имеет смысл сначала сформировать начальное приближение Ω, а потом отбросить объекты с W, большей δ, кроме объектов, входящих в Ω
 +
* если для классификации объектов <tex>X^l</tex> при построении множества эталонов используется метод ближайшего соседа, то W можно вычислять как отношение расстояния от данного объекта до ближайшего объекта "своего" класса к расстоянию до ближайшего объекта "чужого" класса
 +
* независимо от алгоритма, используемого для классификации <tex>X^l</tex>, в качестве W можно взять <tex>-M(x_i, \Omega)</tex>, где <tex>M(x_i, \Omega)</tex> - [[Отступ|отступ]] на объекте <tex>x_i</tex> при текущем наборе эталонов Ω
 +
 
 +
 
 +
==Литература==
 +
<references/>
 +
 
 +
==См. также==
 +
[[Метрический классификатор]]
 +
[[Отступ]]
 +
[[алгоритм FRiS-СТОЛП]]

Текущая версия

Алгоритм СТОЛП (STOLP) - алгоритм отбора эталонных объектов для метрического классификатора; алгоритм минимизации набора эталонов.

Содержание

Задача

Дана выборка X^l. Необходимо оставить в качестве обучающей выборки только ее часть, то есть построить множество эталонов, не менее чем по одному эталону на класс.

Эталоны

  • Эталонами для i-го класса могут служить такие объекты этого класса, что расстояние от любого принадлежащего ему объекта из обучающей выборки расстояние до ближайшего "своего" эталона больше, чем расстояние до ближайшего "чужого" эталона, то есть все объекты обучающей выборки классифицируются правильно по набору эталонов.
  • Кроме того, эталон можно определить как объект с большим положительным отступом.

Простой перебор для отбора эталонов не подходит, так как число способов выбора по t эталонов для каждого класса (число классов k) составляет \prod_{j=1}^k C_{m_j}^t. Но перебор вариантов можно сократить при помощи алгоритма STOLP

Алгоритм STOLP

Вход

  • Выборка X^l
  • Допустимая доля ошибок l_0
  • Порог отсечения выбросов δ

Кроме того, известны алгоритм классификации и формула вычисления величины риска (W) для объекта быть распознанным как объект чужого класса.

Выход

Построить множество эталонов Ω∈Xl

Описание алгоритма

  • отбросить выбросы (объекты X^l с W, большей некоторой константы δ)
  • сформировать начальное приближение Ω - выбрать из каждого класса по объекту, обладающему
    • минимальной величиной риска[1]
    • либо максимальной величиной риска[2]
  • наращивание множества эталонов (пока число объектов, распознанных неправильно, не станет меньше l_0):
    • классифицировать объекты X^l, используя в качестве обучающей выборки Ω
    • пересчитать величины риска
    • среди объектов каждого класса, распознанных неправильно, выбрать объекты с максимальным W, добавляемые к Ω

Примечания

  • возможен вариант, при котором в обучающей выборки все объекты выборки имеют W, большую порога отсечения выбросов. Тогда они окажутся отброшены на первом шаге алгоритма. В таком случае имеет смысл сначала сформировать начальное приближение Ω, а потом отбросить объекты с W, большей δ, кроме объектов, входящих в Ω
  • если для классификации объектов X^l при построении множества эталонов используется метод ближайшего соседа, то W можно вычислять как отношение расстояния от данного объекта до ближайшего объекта "своего" класса к расстоянию до ближайшего объекта "чужого" класса
  • независимо от алгоритма, используемого для классификации X^l, в качестве W можно взять -M(x_i, \Omega), где M(x_i, \Omega) - отступ на объекте x_i при текущем наборе эталонов Ω


Литература

  1. Воронцов К.В. Лекции по метрическим алгоритмам классификации.
  2. Загоруйко Н. Г. Прикладные методы анализа данных и знаний.. — Новосибирск: ИМ СО РАН, 1999.

См. также

Метрический классификатор Отступ алгоритм FRiS-СТОЛП

Личные инструменты