Optymalizacja algorytmów optymalizacyjnych
Dzienniki ruchu internetowego i transakcje finansowe to dwa przykłady ogromnych zbiorów danych, pojawiających się coraz częściej w różnych zastosowaniach. Konieczność analizy i zarządzania takimi zbiorami zmusza naukowców do zrewidowania metod opracowywania skutecznych algorytmów optymalizacyjnych. Algorytmy optymalizacyjne służą do oceny kosztów i korzyści podczas projektowania oraz do znajdowania wzorców w zbiorach danych. Algorytmy uczenia maszynowego często stosowane są do identyfikacji cech pomagających w klasyfikacji. Jednym z problemów optymalizacyjnych jest znalezienie najmniejszego zbioru cech o największej wartości predykcyjnej. W ramach projektu SUBLINEAROPTML (Sublinear optimization for machine learning), finansowanego ze środków UE, naukowcy opracowali algorytmy, które uruchamiane są w czasie subliniowym i umożliwiają rozwiązywanie takich problemów optymalizacyjnych. Są one oparte na kombinacji zaawansowanych technik próbkowania i randomizowanej implementacji algorytmów uczenia online. Algorytmy uczenia online dokonują przewidywania dla każdego elementu w strumieniu danych, a dzięki otrzymywanym informacjom zwrotnym ich dokładność zwiększa się przy kolejnych przewidywaniach. W przeciwieństwie do statystycznego uczenia maszynowego nie dokonują one założeń dotyczących danych wejściowych. Nowe algorytmy wykorzystują randomizację do skracania danych oraz uzyskiwania prawidłowych rozwiązań, pomimo że ich czas uruchamiania jest krótszy niż reprezentacja danych (tzw. czas subliniowy). Uczestnicy w projekcie naukowcy wykazali, że czasy uruchamiania większości tych algorytmów są najlepszymi z możliwych w modelach maszyn RAM. Opracowane w ramach projektu algorytmy mogą też być rozszerzane do poddanych kernelizacji wersji tych problemów, w tym problemów dotyczących optymalizacji maszyn wektorów nośnych, dla których brak było solwerów czasu subliniowego. Omawiane postępy w dziedzinie uczenia maszynowego prezentowano na kilku konferencjach międzynarodowych. Dzięki projektowi SUBLINEAROPTML powstała metoda, które potencjalnie może pomóc komputerom w rozwiązywaniu niektórych z najtrudniejszych problemów, z jakimi muszą sobie radzić. Nowe algorytmy mogą zostać zastosowane na przykład w routerze, który obliczałby najszybszą trasę w przeciążonej sieci.
Słowa kluczowe
Algorytmy optymalizacyjne, uczenie maszynowe, ogromne zbiory danych, optymalizacja problemów, algorytmy uczenia