51 lines
8.4 KiB
TeX
51 lines
8.4 KiB
TeX
\chapter{Porównania modeli w literaturze}
|
|
|
|
\section{Wstęp}
|
|
\subsection{Cele porównania}
|
|
Wraz z~rozwojem uczenia maszynowego jako praktykowanej technologii znacznie wzrosło zapotrzebowanie na badania sprawdzające skuteczność rozwiązań w tej dziedzinie. Wybór odpowiednich algorytmów do konkretnych zadań jest kluczowy dla osiągania jak najlepszych wyników (zdolności do szybkiego uczenia się i dokładnego przewidywania).
|
|
|
|
Celem tej pracy jest porównanie dwóch trybów uczenia się: wsadowego i~strumieniowego. Z tego powodu należy wpierw przeanalizować inne badania i~źródła naukowe, aby odnaleźć czy znajdują się w nich błędy, które mogłyby na przykład podważyć skuteczność badań. Część oficjalnych opracowań korzysta z nieodpowiednich metodyk, źle klasyfikuje algorytmy, bądź po prostu niewystarczająco dokładnie je analizuje (brak różnych typów danych, zbyt mała liczba algorytmów, porównywanie algorytmów różnego typu). Z tego powodu poniżej zostaną przedstawione opracowania znalezione w~naukowej literaturze, zawierające błędy, których uniknięcie w~tej pracy, pozwoli na uzyskanie bardziej wiarygodnych wyników.
|
|
|
|
Warto zwrócić uwagę, że przedstawione błędy nie podważają prawdziwości prac czy ich istotności przy badaniu algorytmów. Znalezione problemy mają na celu stworzenie takiego badania, które sumplementując pozostałe, stworzy szerszy i~bardziej wiarygodny obraz na porównanie trybów strumieniowych i~wsadowych.
|
|
|
|
\subsection{Concept drift}
|
|
Część z opracowań przy swoich badaniach stara się uwzględnić tzw. \emph{concept drift} i~sprawdzić pewną odporność algorytmów na jego obecność. Analiza takiej metodyki znajdzie się przy sprawdzaniu konkretnych badań, tutaj jednak zostanie opisane, czym \emph{concept drift} jest.
|
|
|
|
Tworzenie modelu można określić jako zmapowanie funkcji $f$ przy pomocy danych wejściowych $X$, aby przewidzieć wynik wyjściowych $Y$.
|
|
|
|
\[Y = f(X)\]
|
|
|
|
Często zakładane jest, że takie mapowanie jest statyczne. Znaczy to, że raz wyuczone z pewnych danych jest prawdziwe (i~skuteczne) dla danych, które pojawią się w~przyszłości, a~związek pomiędzy danymi wejściowymi i~wyjściowymi nie będzie się zmieniał.
|
|
|
|
W niektórych przypadkach może następować wyraźna (mniej lub bardziej) wyraźna zmiana w relacji danych wejściowych i~wejściowych. Zmiany takie należy wykrywać i~w odpowiedni sposób aktualizować model, aby ciągle był w stanie poprawnie dokonywać predykcji.
|
|
|
|
Przykładowo: model przewidujący pogodę może reagować w nieodpowiedni sposób, niezależnie od tego, jak dobrze nauczył się mapować pogodę przy pomocy prądów powietrza, poprzedniej temperatury i~innych właściwości. Po kilku latach może być on zupełnie bezużyteczny, bo nie uwzględni on zmian klimatycznych, istotnie wpływających na pogodę, które mogą sprawić, że ciepły prąd wcześniej oznaczał letni deszcz, a za parę lat może oznaczać suszę.
|
|
|
|
\section{Analiza literatury}
|
|
|
|
\subsection{Badanie skuteczność algorytmów przy wystąpowaniu \emph{concept driftu}}
|
|
|
|
Artykuły dotyczące inkrementalnych metod uczenia maszynowego czesto zwracają szczególną uwagę na zalety nauki w takim trybie, natomiast artykuły oparte na wsadowych metodach opisują możliwość przystosowania sie do danych napływających w trybie strumieniowym. Nie ma jednak wystarczającej ilości opracowań, porównujących te metody. Do tego problemu nawiązuje praca ,,Batch-Incremental versus Instance-Incremental Learning in Dynamic and Evolving Data'' \cite{inproceedings}.
|
|
|
|
Autorzy tej pracy porównują skuteczność i~czas nauki kilku klasyfikatorów --- między innymi wykorzystując klasyfikator Bayesa, drzewa Hoeffdinga, regresję logistyczną, maszyny wektorów nośnych czy algorytm k-najbliższych sąsiadów. Dbając o~wiarygodność wyników i uniwersalność w różnych poddziedzinach uczenia maszynowego, dokonują oni treningów na kilku różnych zbiorach: rzeczywistych i syntetycznych. Wśród zbiorów danych brak jednak zadań z przetwarzania języka naturalnego (NLP -- ang. \emph{Natural Language Processing}).
|
|
|
|
W artykule przy tworzeniu metodyki do porównania algorytmów poświęcono dużą uwagę do \emph{concept driftu} w~danych. Algorytmy wsadowe uczone są na pewnym oknie danych (określonej ilości próbek). Rozmiar okna dobierany jest na podstawie precyzji, czasie nauki i~kosztu obliczeniowego -- dla różnych danych może mieć inny rozmiar. Warto jednak zwrócić uwagę, że dobór okna może być w~istotny sposób zależny od używanego sprzętu badawczego. Duże rozmiary okna mogą być odrzucane ze względu na duży nakład czasowy pomimo osiągania znacznie lepszych wyników jakościowych. Wraz z~polepszaniem się technologii dopuszczalny rozmiar okna może się zmieniać, z czasem stawiając algorytmy inkrementalne w znacznie gorszej sytuacji --- nieskończenie szybki procesor może znacznie szybciej retrenować wsadowe całe modele od nowa, zamiast douczać je inkrementalnie.
|
|
|
|
Autorzy w~podsumowaniu, wnioskują, że algorytmy inkrementalne osiągają podobne wyniki do swoich wsadowych odpowiedników; robiąc to jednak szybciej i~z mniejszą ilością zasobów. Wcześniej szczegółowo opisane jest porówananie wsadowych drzew decyzyjnych i drzew Hoeffdinga --- zależnie od typu danych, jedne lub drugie działają znacznie oszczędniej zużywając zasoby. Brak jednak takich bezpośrednich porównań dla innych algorytmów: nie wiadomo z jakim klasyfikatorem używany jest Stochastyczny Spadek Gradientu, nie można więc go porównać z wsadową regresją logistyczną czy maszyną wektorów nośnych.
|
|
|
|
|
|
\subsection{Porównania algorytmów niezależnie od concept driftu}
|
|
Dobrą metodologię porównania algorytmów obu trybów przedstawiono w ,,An Investigation on Online versus Batch
|
|
Learning in Predicting User Behaviour``\cite{comparision}
|
|
|
|
Porównano tutaj 5 wsadowych algorytmów i 3 najpopularniejsze strumieniowe algorytmy, sprawdzając ich złożoność czasową i zdolność predykcji. Treningu i predykcji dokonano na dwa sposoby: powszechnie używany algorytm k-fold (używając 5 ,,złożeń``) oraz używając nowego podejścia przypominającego działanie w trybie strumieniowym (podobna metoda pomiaru podziału nauka/predykcja zostanie użyta w późniejszych eksperymentach).
|
|
|
|
W tej pracy wykazano, że algorytmy strumieniowe uczą się znacznie szybciej i często osiągają podobne rezultaty w przypadku predykcji (w tej dziedzinie przoduje głęboka sieć przekonań (ang. \emph{deep belief network}), jednocześnie bedąc zdecydowanie najwolniejszym ze wszystkich badanych algorytmów). Badania zostały jednak przeprowadzone tylko na jednym zbiorze danych, ciężko więc o wnioskowanie, czy takie wyniki będą prawdziwe dla innych typów danych.
|
|
|
|
Inną pracą, w której porównywano algorytmy wsadowe i strumieniowe jest \emph{,,Single-Pass Online Learning: Performance, Voting Schemes and Online Feature Selection''}\cite{comp}. Poruszono tutaj istotną kwestię \emph{simple-pass}, występującą często podczas nauki w trybie inkrementalnym -- każda próbka wykorzystywana jest tylko raz (nie przechowujemy jej do późniejszej nauki).
|
|
|
|
Skupiono się głównie na dostosowaniu algorytmu ,,Winnow'' tak, aby wykazać, że nawet działając w trybie \emph{single pass}, może on przewyższyć wynikami algorytmy wsadowe. Dla zbiorów związanych z przetwarzaniem języka naturalnego odnosił on zdecydowanie najlepsze wyniki sposród wszystkich badanych algorytmów; jednak dla zbiorów spoza tej dziedziny osiągał znacznie słabsze wyniki. Jest to szczególnie istotne i zwraca uwagę na użycie różnych zbiorów danych przed wyciągnięciem wniosków na temat działania algorytmu.
|
|
|
|
Obrębne porównanie różnych algorytmów uczenia maszynowego zostało dokonane w "A Comparison of Prediction Accuracy, Complexity, and Training Time of Thirty-three Old and New Classification Algorithms"\cite{Lim2004ACO}.
|
|
|
|
Zostało tutaj wykorzystane trzydzieści trzy algorytmów do nauki na trzydziestu dwóch zbiorach danych. Nie zostały jednak przebadane algorytmy strumieniowe (praca ich nie dotyczy). Podczas analizy wyników zauważono, że często róznice w trafności predykcji są statystycznie nieistotne. O wiele większą uwagę należałoby w takich przypadkach przyłożyć do czasu nauki poszczególnych modeli. Z~powodu takiego podejścia praca ta przytaczana jest w tym miejscu -- szczególne zwracanie uwagi na czas treningu zostanie wykorzystane podczas kolejnych eksperymentów. |