Uczenie się online czy offline?

38

Jaka jest różnica między nauką offline i online ? Czy to tylko kwestia uczenia się w całym zestawie danych (offline) czy uczenia się przyrostowo (jedna instancja na raz)? Jakie są przykłady algorytmów używanych w obu?

nowicjusz
źródło

Odpowiedzi:

26

Uczenie się w trybie online oznacza, że ​​robisz to, gdy nadchodzą dane. Offline oznacza, że ​​masz statyczny zestaw danych.

Tak więc do nauki online masz (zwykle) więcej danych, ale masz ograniczenia czasowe. Kolejnym zmarszczeniem, które może wpływać na naukę online, jest to, że twoje koncepcje mogą się zmieniać z czasem.

Powiedzmy, że chcesz zbudować klasyfikator do rozpoznawania spamu. Możesz zdobyć duży zbiór wiadomości e-mail, oznaczyć je etykietą i wyszkolić na nim klasyfikatora. To byłaby nauka offline. Lub możesz wziąć wszystkie wiadomości e-mail przychodzące do systemu i stale aktualizować klasyfikator (etykiety mogą być nieco trudne). To byłaby nauka online.

użytkownik549
źródło
7
Tak, i drobnym wyjaśnieniem jest to, że algorytmy uczenia się online, przynajmniej tak jak studiowano w uczeniu maszynowym, w większości przyjmują założenie, że twoja zdolność do przechowywania przykładów jest bardzo ograniczona w porównaniu do wielkości zbioru danych. W najbardziej ograniczającym przypadku widzisz tylko jeden przykład na raz, a następnie musisz go zapomnieć po użyciu go do aktualizacji klasyfikatora.
Harlan
8

Termin „online” jest przeciążony i dlatego powoduje zamieszanie w dziedzinie uczenia maszynowego.

Przeciwieństwem „online” jest nauka partii. W uczeniu wsadowym algorytm uczący się aktualizuje parametry po zużyciu całej partii, podczas gdy w uczeniu online algorytm aktualizuje swoje parametry po uczeniu się z 1 instancji szkoleniowej. Uczenie się w trybie wsadowym to punkt pośredni między uczeniem się w trybie wsadowym z jednej strony a uczeniem się w trybie online z drugiej strony.

Również „kiedy” dane przychodzą lub czy można je przechowywać, czy nie, jest ortogonalne dla uczenia się online lub okresowego.

Uczenie się przez Internet uważa się za wolniejsze w osiągnięciu minimów, w porównaniu do uczenia się partiami. Jednak w przypadkach, gdy cały zestaw danych nie mieści się w pamięci, uczenie się online jest akceptowalnym kompromisem.

shark8me
źródło
Nie sądzę, że to prawda. Opisujesz algorytm optymalizacji stochastycznego (lub online) opadania gradientu, którego można używać zarówno w ustawieniach problemów online, jak i offline.
danijar
Uważam, że „w miarę przychodzenia danych” odnosi się do algorytmów online i offline en.wikipedia.org/wiki/Online_alnodm. Wydaje mi się, że OP definiujące kształcenie online wyraźnie czyni to rozróżnienie. Algos online -> proces w miarę pojawiania się danych. Uczenie się online -> stopniowo aktualizuj podstawowy model podczas szkolenia.
gokul_uf
4

Uczenie się online (zwane także uczeniem przyrostowym ): rozważamy jedną prezentację przykładów. W takim przypadku każdy przykład jest używany kolejno w sposób zgodny z algorytmem uczenia się, a następnie wyrzucany. Zmiany ciężaru dokonane na danym etapie zależą konkretnie tylko od (obecnego) prezentowanego przykładu i być może od aktualnego stanu modelu. Jest to naturalna procedura dla różnych reguł czasowych, w których przykłady mogą nie być w ogóle dostępne od razu.

Uczenie się offline : zmiany masy zależą od całego zestawu danych (szkolenia), definiując globalną funkcję kosztów. Przykłady stosuje się wielokrotnie, aż do osiągnięcia minimalizacji tej funkcji kosztów.

FrankyBravo
źródło