Oto jeden z powodów, dla których podwójne sformułowanie jest atrakcyjne z punktu widzenia optymalizacji numerycznej. Szczegóły można znaleźć w następującym artykule :
Hsieh, C.-J., Chang, K.-W., Lin, C.-J., Keerthi, SS i Sundararajan, S., „Metoda zejścia z podwójną współrzędną dla SVM o dużej skali” 25. międzynarodowa konferencja nt. Uczenia maszynowego, Helsinki, 2008.
Podwójne sformułowanie obejmuje jedno ograniczenie równości afinicznej i n ograniczenia.
1. Ograniczenie równości afinicznej można „wyeliminować” z podwójnego sformułowania.
Można to zrobić po prostu patrząc na swoje dane w R ^ (d + 1) poprzez osadzenie R ^ d w R ^ (d + 1), rezygnując z dodania pojedynczej współrzędnej „1” do każdego punktu danych, tj. R ^ d ----> R ^ (d + 1): (a1, ..., reklama) | ---> (a1, ..., reklama, 1).
Wykonanie tego dla wszystkich punktów w zestawie treningowym przekształca problem liniowej separowalności w R ^ (d + 1) i eliminuje stały składnik w0 z twojego klasyfikatora, co z kolei eliminuje ograniczenie równości afinicznej z podwójnego.
2. W punkcie 1, dual można łatwo rzutować jako wypukły kwadratowy problem optymalizacji, którego ograniczenia są tylko ograniczeniami związanymi.
3. Podwójny problem można teraz skutecznie rozwiązać, tj. Za pomocą algorytmu podwójnego współrzędnego opadania, który daje optymalne dla epsilonu rozwiązanie w O (log (1 / epsilon)).
Odbywa się to poprzez zauważenie, że naprawienie wszystkich alf z wyjątkiem jednego daje rozwiązanie w formie zamkniętej. Następnie możesz kolejno przełączać wszystkie alfy (np. Wybierając jedną losowo, naprawiając wszystkie pozostałe alfy, obliczając rozwiązanie formy zamkniętej). Można pokazać, że w ten sposób uzyskasz prawie optymalne rozwiązanie „dość szybko” (patrz Twierdzenie 1 we wspomnianym artykule).
Istnieje wiele innych powodów, dla których podwójny problem jest atrakcyjny z punktu widzenia optymalizacji, niektóre z nich wykorzystują fakt, że ma tylko jedno ograniczenie równości afinicznej (wszystkie pozostałe ograniczenia są ograniczeniami związanymi), podczas gdy inne wykorzystują obserwację, że w rozwiązaniu podwójnego problemu „często większość alf” ma wartość zero (niezerowe alfy odpowiadające wektorom wspierającym).
Dobry przegląd zagadnień optymalizacji numerycznej dla maszyn SVM można znaleźć w prezentacji Stephena Wrighta w Computational Learning Workshop (2009).
PS: Jestem tu nowy. Przepraszamy za niedostateczne wykorzystanie notacji matematycznej na tej stronie.