Введение и обозначения:
Вот новая и простая версия моего алгоритма, которая, кажется, заканчивается (согласно моим экспериментам), и теперь я хотел бы доказать это.
Пусть обозначение относится к p- мерной точке данных (вектору). У меня есть три набора A, B и C, так что | A | = n , | Б | = м , | C | = l :
A = { x i | я = 1 , . , , n } B = { x j | j = n + 1xi∈Rpp|A|=n|B|=m|C|=l
A={xi|i=1,..,n}
C = { x u | у = п + т + 1 , . , , n + m + l }B={xj|j=n+1,..,n+m}
C={xu|u=n+m+1,..,n+m+l}
Для пусть d A x i обозначает среднее евклидово расстояние от x i до k ближайших точек в A ; и д С й я обозначаю среднее евклидово расстояния от й я ее к ближайшей точке в C .k∈N∗dAxixikAdCxixikC
Алгоритм:
ABBCACB
- A′={xi∈A∣dAxi>dCxi}
- A=A∖A′B=B∪A′
- B′={xi∈B∣dAxi<dCxi
- B=B∖B′A=A∪B′
- ABBA|A|≤k|B|≤k
Алгоритм заканчивается в двух случаях:
- |A||B|k
- A′=B′=∅
Вопрос:
∑x∈AdCx+∑x∈BdAx∑x∈AdAx+∑x∈BdCx∑x∈AdAx+∑x∈BdBx∑x∈AdBx+∑x∈BdAx
Ноты:
- kxSkxSxk=1
- A,B,C∀xi∈B,xj∈Axb∈Cxixa∈Cxjdistance(xi,xb)<distance(xj,xa)BCA
- ABABA′B