Послідо́вна мініма́льна оптиміза́ція (ПМО, англ. sequential minimal optimization, SMO) — це алгоритм розв'язання задачі квадратичного програмування (КП), яка постає при тренуванні опорно-векторних машин (ОВМ, англ. support vector machines, SVM). Його було винайдено [en] 1998 року в Microsoft Research. ПМО широко використовується для тренування опорно-векторних машин, і втілюється популярним інструментом LIBSVM. Публікація алгоритму ПМО 1998 року викликала велике збудження в спільноті ОВМ, оскільки доступні раніше методи тренування опорно-векторних машин були набагато складнішими, й вимагали дорогих сторонніх інструментів розв'язання задач КП.
Клас | Алгоритм оптимізації для тренування опорно-векторних машин |
---|---|
Найгірша швидкодія | O(n³) |
Задача оптимізації
Розгляньмо задачу бінарної класифікації з набором даних (x1, y1), …, (xn, yn), де xi є вхідним вектором, а yi ∈ {-1, +1} є відповідною бінарною міткою. Опорно-векторна машина з м'яким проміжком тренується розв'язанням задачі квадратичного програмування, яка виражається в двоїстому вигляді наступним чином:
- за умов
- для
де C є гіперпараметром ОВМ, а K(xi, xj) є [en], обидва надані користувачем; а змінні є множниками Лагранжа.
Алгоритм
ПМО є ітеративним алгоритмом розв'язання описаної вище задачі оптимізації. ПМО розбиває цю задачу на ряд найменших можливих підзадач, які потім розв'язуються аналітично. Через лінійну рівність в обмеженнях, яка включає лагранжеві множники , найменша можлива задача включає два такі множники. Тоді для будь-яких двох множників і обмеження зводяться до
і цю звужену задачу можливо розв'язувати аналітично: потрібно знаходити мінімум одновимірної квадратичної функції. є сумою решти членів у обмеженні-рівнянні з протилежним знаком, яка є незмінною на кожній ітерації.
Алгоритм діє наступним чином:
- Знайти лагранжів множник , який порушує умови Каруша — Куна — Такера (ККТ) для задачі оптимізації.
- Вибрати другий множник , й оптимізувати пару .
- Повторювати кроки 1 та 2 до збігання.
Коли всі лагранжеві множники задовольняють умови ККТ (в межах визначеного користувачем допуску), задачу розв'язано. Хоч цей алгоритм і збігається гарантовано, для вибору пар множників застосовується евристика, щоби прискорити темп збігання. Це є критичним для великих наборів даних, оскільки існує n(n − 1) можливих варіантів вибору та .
Пов'язані праці
Перший підхід до розділення великих задач навчання ОВМ на ряд менших оптимізаційних завдань було запропоновано , та Володимиром Вапником. Він відомий як «кусеневий алгоритм» (англ. "chunking algorithm"). Цей алгоритм починається з випадкового піднабору даних, розв'язує цю задачу, й ітеративно додає зразки, які порушують умови оптимальності. Одним із недоліків цього алгоритму є необхідність розв'язання задач КП, які масштабуються з числом опорних векторів. На реальних розріджених наборах даних ПМО може бути швидшою за кусеневий алгоритм в понад 1000 разів.
1997 року , та довели теорему, яка пропонує цілий ряд нових алгоритмів КП для ОВМ. В силу цієї теореми велику задачу КП може бути розбито на ряд менших підзадач КП. Послідовність підзадач КП, яка завжди додає щонайменше одного порушника умов Каруша — Куна — Такера (ККТ), гарантовано збігається. Кусеневий алгоритм задовольняє умови цієї теореми і, отже, збігатиметься. Алгоритм ПМО можна розглядати як окремий випадок алгоритму Осуни, де розміром оптимізації є два, й обидва лагранжеві множники замінюються на кожному кроці новими множниками, які обираються за допомогою доброї евристики.
Алгоритм ПМО тісно пов'язаний із сімейством алгоритмів оптимізації, що зветься [en], або рядково-активаційними методами. Ці методи розв'язують задачі опуклого програмування з лінійними обмеженнями. Вони є ітеративними методами, де кожен крок робить проєкцію поточної прямої точки на кожне з обмежень.
Див. також
- [en]
Примітки
- Platt, John (1998), (PDF), (CiteSeerX): 10.1.1.43.4376, архів оригіналу (PDF) за 13 листопада 2016, процитовано 23 жовтня 2016 (англ.)
- Chang, Chih-Chung; Lin, Chih-Jen (2011). LIBSVM: A library for support vector machines. ACM Transactions on Intelligent Systems and Technology. 2 (3). (англ.)
- Luca Zanni (2006). Parallel Software for Training Large Scale Support Vector Machines on Multiprocessor Systems [ 18 липня 2011 у Wayback Machine.]. (англ.)
- Rifkin, Ryan (2002), , Ph.D. thesis: 18, архів оригіналу за 14 березня 2012, процитовано 23 жовтня 2016 (англ.)
- Boser, B. E.; Guyon, I. M.; Vapnik, V. N. (1992). A training algorithm for optimal margin classifiers. Proceedings of the fifth annual workshop on Computational learning theory - COLT '92. с. 144. doi:10.1145/130385.130401. ISBN . (англ.)
- Osuna, E.; Freund, R.; Girosi, F. (1997). An improved training algorithm for support vector machines. Neural Networks for Signal Processing [1997] VII. Proceedings of the 1997 IEEE Workshop. с. 276—285. doi:10.1109/NNSP.1997.622408. ISBN . (англ.)
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Poslido vna minima lna optimiza ciya PMO angl sequential minimal optimization SMO ce algoritm rozv yazannya zadachi kvadratichnogo programuvannya KP yaka postaye pri trenuvanni oporno vektornih mashin OVM angl support vector machines SVM Jogo bulo vinajdeno en 1998 roku v Microsoft Research PMO shiroko vikoristovuyetsya dlya trenuvannya oporno vektornih mashin i vtilyuyetsya populyarnim instrumentom LIBSVM Publikaciya algoritmu PMO 1998 roku viklikala velike zbudzhennya v spilnoti OVM oskilki dostupni ranishe metodi trenuvannya oporno vektornih mashin buli nabagato skladnishimi j vimagali dorogih storonnih instrumentiv rozv yazannya zadach KP Poslidovna minimalna optimizaciyaKlasAlgoritm optimizaciyi dlya trenuvannya oporno vektornih mashinNajgirsha shvidkodiyaO n Zadacha optimizaciyiDokladnishe Metod opornih vektoriv Rozglyanmo zadachu binarnoyi klasifikaciyi z naborom danih x1 y1 xn yn de xi ye vhidnim vektorom a yi 1 1 ye vidpovidnoyu binarnoyu mitkoyu Oporno vektorna mashina z m yakim promizhkom trenuyetsya rozv yazannyam zadachi kvadratichnogo programuvannya yaka virazhayetsya v dvoyistomu viglyadi nastupnim chinom maxa i 1nai 12 i 1n j 1nyiyjK xi xj aiaj displaystyle max alpha sum i 1 n alpha i frac 1 2 sum i 1 n sum j 1 n y i y j K x i x j alpha i alpha j za umov 0 ai C displaystyle 0 leq alpha i leq C quad dlya i 1 2 n displaystyle i 1 2 ldots n i 1nyiai 0 displaystyle sum i 1 n y i alpha i 0 de C ye giperparametrom OVM a K xi xj ye en obidva nadani koristuvachem a zminni ai displaystyle alpha i ye mnozhnikami Lagranzha AlgoritmPMO ye iterativnim algoritmom rozv yazannya opisanoyi vishe zadachi optimizaciyi PMO rozbivaye cyu zadachu na ryad najmenshih mozhlivih pidzadach yaki potim rozv yazuyutsya analitichno Cherez linijnu rivnist v obmezhennyah yaka vklyuchaye lagranzhevi mnozhniki ai displaystyle alpha i najmensha mozhliva zadacha vklyuchaye dva taki mnozhniki Todi dlya bud yakih dvoh mnozhnikiv a1 displaystyle alpha 1 i a2 displaystyle alpha 2 obmezhennya zvodyatsya do 0 a1 a2 C displaystyle 0 leq alpha 1 alpha 2 leq C y1a1 y2a2 k displaystyle y 1 alpha 1 y 2 alpha 2 k i cyu zvuzhenu zadachu mozhlivo rozv yazuvati analitichno potribno znahoditi minimum odnovimirnoyi kvadratichnoyi funkciyi k displaystyle k ye sumoyu reshti chleniv u obmezhenni rivnyanni z protilezhnim znakom yaka ye nezminnoyu na kozhnij iteraciyi Algoritm diye nastupnim chinom Znajti lagranzhiv mnozhnik a1 displaystyle alpha 1 yakij porushuye umovi Karusha Kuna Takera KKT dlya zadachi optimizaciyi Vibrati drugij mnozhnik a2 displaystyle alpha 2 j optimizuvati paru a1 a2 displaystyle alpha 1 alpha 2 Povtoryuvati kroki 1 ta 2 do zbigannya Koli vsi lagranzhevi mnozhniki zadovolnyayut umovi KKT v mezhah viznachenogo koristuvachem dopusku zadachu rozv yazano Hoch cej algoritm i zbigayetsya garantovano dlya viboru par mnozhnikiv zastosovuyetsya evristika shobi priskoriti temp zbigannya Ce ye kritichnim dlya velikih naboriv danih oskilki isnuye n n 1 mozhlivih variantiv viboru ai displaystyle alpha i ta aj displaystyle alpha j Pov yazani praciPershij pidhid do rozdilennya velikih zadach navchannya OVM na ryad menshih optimizacijnih zavdan bulo zaproponovano ta Volodimirom Vapnikom Vin vidomij yak kusenevij algoritm angl chunking algorithm Cej algoritm pochinayetsya z vipadkovogo pidnaboru danih rozv yazuye cyu zadachu j iterativno dodaye zrazki yaki porushuyut umovi optimalnosti Odnim iz nedolikiv cogo algoritmu ye neobhidnist rozv yazannya zadach KP yaki masshtabuyutsya z chislom opornih vektoriv Na realnih rozridzhenih naborah danih PMO mozhe buti shvidshoyu za kusenevij algoritm v ponad 1000 raziv 1997 roku ta doveli teoremu yaka proponuye cilij ryad novih algoritmiv KP dlya OVM V silu ciyeyi teoremi veliku zadachu KP mozhe buti rozbito na ryad menshih pidzadach KP Poslidovnist pidzadach KP yaka zavzhdi dodaye shonajmenshe odnogo porushnika umov Karusha Kuna Takera KKT garantovano zbigayetsya Kusenevij algoritm zadovolnyaye umovi ciyeyi teoremi i otzhe zbigatimetsya Algoritm PMO mozhna rozglyadati yak okremij vipadok algoritmu Osuni de rozmirom optimizaciyi ye dva j obidva lagranzhevi mnozhniki zaminyuyutsya na kozhnomu kroci novimi mnozhnikami yaki obirayutsya za dopomogoyu dobroyi evristiki Algoritm PMO tisno pov yazanij iz simejstvom algoritmiv optimizaciyi sho zvetsya en abo ryadkovo aktivacijnimi metodami Ci metodi rozv yazuyut zadachi opuklogo programuvannya z linijnimi obmezhennyami Voni ye iterativnimi metodami de kozhen krok robit proyekciyu potochnoyi pryamoyi tochki na kozhne z obmezhen Div takozh en PrimitkiPlatt John 1998 PDF CiteSeerX 10 1 1 43 4376 arhiv originalu PDF za 13 listopada 2016 procitovano 23 zhovtnya 2016 angl Chang Chih Chung Lin Chih Jen 2011 LIBSVM A library for support vector machines ACM Transactions on Intelligent Systems and Technology 2 3 angl Luca Zanni 2006 Parallel Software for Training Large Scale Support Vector Machines on Multiprocessor Systems 18 lipnya 2011 u Wayback Machine angl Rifkin Ryan 2002 Ph D thesis 18 arhiv originalu za 14 bereznya 2012 procitovano 23 zhovtnya 2016 angl Boser B E Guyon I M Vapnik V N 1992 A training algorithm for optimal margin classifiers Proceedings of the fifth annual workshop on Computational learning theory COLT 92 s 144 doi 10 1145 130385 130401 ISBN 089791497X angl Osuna E Freund R Girosi F 1997 An improved training algorithm for support vector machines Neural Networks for Signal Processing 1997 VII Proceedings of the 1997 IEEE Workshop s 276 285 doi 10 1109 NNSP 1997 622408 ISBN 0 7803 4256 9 angl