Algorytm K-means - z wykorzystaniem miary odległości manhatan

Algorytm K-means - z wykorzystaniem miary odległości manhatan
P Pepe
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 23
0

Hej,
mam pytanie dotyczące algorytmu k-means. Mam za pomocą niego zanalizować dane, ale muszę wykorzystać inne metody odległości: np. manhatan, czy minkowski. Jednak nie znalazłam żadnych informacji jak to zrobić. jest tylko wykorzystanie euklidesa. A muszę wykorzystać manhatan w tym algorytmie. Jak można to zrobić? i czy jest wg taka możliwość że jest to gdzieś zaimplementowane?

LukeJL
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 8487
0

manhattan to jest ze tak jak ulice na manhattanie. albo jak wieża w szachach. nie liczysz odległości z lotu ptaka, tylko jesteś ograniczony do poziomych/pionowych ruchów

czyli zamiast używać twierdzenia Pitagorasa, dodajesz po prostu odleglosc we współrzędnej x do odległości we współrzędnej y:

Kopiuj
abs(x2 - x1)+ abs (y2 - y1 )

https://en.m.wikipedia.org/wiki/Taxicab_geometry

Odległości Minkowskiego nie używałem, ale masz artykuł na Wikipedii, sa wzory https://en.m.wikipedia.org/wiki/Minkowski_distance

randomize111
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 137
1

Korzystasz ze scikit-learn czy sam implementujesz? Jeśli ta pierwsza opcja to jest tam parametr o nazwie 'metric', który właśnie tej rzeczy dotyczy.
https://scikit-learn.org/stable/modules/generated/sklearn.neighbors.KNeighborsClassifier.html

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.