Mam zestaw danych i chcę znaleźć parametr taki, aby minimalizował sumę
Mam zestaw danych i chcę znaleźć parametr taki, aby minimalizował sumę
Odpowiedzi:
Prawdopodobnie poprosisz o dowód, że mediana rozwiązuje problem? Cóż, można to zrobić w następujący sposób:
Celem jest odcinkowo liniowy i tym samym różniczkowalną wyjątkiem punktów . Jakie nachylenie celu ma jakiś punkt m ≠ x i ? Cóż, nachylenie jest sumą nachyleń odwzorowań m ↦ | m - x j | i jest to + 1 (dla m > x j ) lub - 1 (dla m < x j ). Stąd nachylenie wskazuje, ile x i jest mniejsze niż m. Widzisz, że nachylenie wynosi zero, jeśli istnieje równie wiele mniejszych i większych niż m (dla i parzystej liczby x i ). Jeśli jest nieparzysta liczba x i , to nachylenie wynosi - 1 na lewo od „środkowego” i + 1 na prawo od niego, stąd środkowa jest minimalna.
Uogólnienie tego problemu na wiele wymiarów nazywa się problemem geometrycznej mediany . Jak zauważa David, mediana jest rozwiązaniem dla przypadku 1-D; tam można użyć algorytmów wyboru wyszukiwania mediany , które są bardziej wydajne niż sortowanie. Sortowanie to podczas gdy algorytmy wyboru to O ( n ) ; sortowanie jest bardziej wydajne tylko wtedy, gdy potrzebnych jest wiele selekcji, w którym to przypadku można sortować (kosztownie) jeden raz, a następnie wielokrotnie wybierać z posortowanej listy.
Link do problemu geometrycznej mediany wspomina o rozwiązaniach dla przypadków wielowymiarowych.
Wyraźne rozwiązanie w zakresie mediany jest poprawne, ale w odpowiedzi na komentarz Mayenew oto inne podejście.
Powszechnie wiadomo, że problemów minimalizacji ogólnie, a pisał problemem w szczególności, może być rozwiązany przez programowania liniowego.
Poniższe sformułowanie LP wykona dla danego ćwiczenia z niewiadomymi :
takie, że: z i ≥ m - x i z i ≥ x i - m
Wyraźnie musi równać | x i - m | co najmniej, więc wymaga to zminimalizowania sumy bezwzględnych wartości błędów.