Wrocław University of Technology SPOTKANIE 2: Wprowadzenie cz. I Piotr Klukowski Studenckie Koło Naukowe Estymator piotr.klukowski@pwr.edu.pl 17.10.2016
UCZENIE MASZYNOWE 2/27
UCZENIE MASZYNOWE = Konstruowanie algorytmów, które uczą się i wnioskują na podstawie danych 2/27
1. Uczenie z nadzorem (ang. supervised learning) Regresja (ang. regression) Klasyfikacja (ang. classification) 2. Uczenie bez nadzoru (ang. unsupervised learning) Klasteryzacja (ang. clustering) Redukcja wymiarów (ang. dimensionality reduction) Uzupełnianie wartości (ang. matrix completion) 3. Uczenie ze wzmocnieniem (ang. reinforcement learning) 3/27
Uczenie z nadzorem: Regresja Regresja (ang. Regression): Dysponujemy obserwacjami z odpowiadającymi im wartościami ciągłymi. Celem uczenia jest skonstruowanie modelu regresji na podstawie danych. 4/27
Uczenie z nadzorem: Regresja Regresja (ang. Regression): Dysponujemy obserwacjami z odpowiadającymi im wartościami ciągłymi. Celem uczenia jest skonstruowanie modelu regresji na podstawie danych. 4/27
Uczenie z nadzorem: Regresja Regresja (ang. Regression): Dysponujemy obserwacjami z odpowiadającymi im wartościami ciągłymi. Celem uczenia jest skonstruowanie modelu regresji na podstawie danych. 4/27
Uczenie z nadzorem: Regresja Regresja (ang. Regression): Dysponujemy obserwacjami z odpowiadającymi im wartościami ciągłymi. Celem uczenia jest skonstruowanie modelu regresji na podstawie danych. 4/27
Regresja: Śledzenie ruchu Cel: Dane: Wyznaczenie następnego położenia obiektu. Sekwencja obrazów z poruszającymi się obiektami. 5/27
Regresja: Predykcja notowań giełdowych Cel: Dane: Wycena akcji. Notowania akcji z poprzednich okresów oraz inne czynniki wpływające na cenę akcji. Model aktualizowany jest z wykorzystaniem bieżących notowań. 6/27
Uczenie z nadzorem: Klasyfikacja Klasyfikacja (ang. Classification): Dysponujemy obserwacjami z etykietami (klasami) o wartościach dyskretnych. Celem uczenia jest skonstruowanie klasyfikatora separującego obiekty należące do różnych klas. 7/27
Uczenie z nadzorem: Klasyfikacja Klasyfikacja (ang. Classification): Dysponujemy obserwacjami z etykietami (klasami) o wartościach dyskretnych. Celem uczenia jest skonstruowanie klasyfikatora separującego obiekty należące do różnych klas. 7/27
Uczenie z nadzorem: Klasyfikacja Klasyfikacja (ang. Classification): Dysponujemy obserwacjami z etykietami (klasami) o wartościach dyskretnych. Celem uczenia jest skonstruowanie klasyfikatora separującego obiekty należące do różnych klas. 7/27
Uczenie z nadzorem: Klasyfikacja Klasyfikacja (ang. Classification): Dysponujemy obserwacjami z etykietami (klasami) o wartościach dyskretnych. Celem uczenia jest skonstruowanie klasyfikatora separującego obiekty należące do różnych klas. 7/27
Klasyfikacja: Detekcja obiektów Cel: Dane: Wykrycie obiektu na obrazie. Zestaw obrazów treningowych przedstawiających dany obiekt. Do analizy obrazu wykorzystuje się okno przesuwne. W każdym kroku obraz z okna przesuwnego klasyfikowany jest jako obiekt poszukiwany lub nie. 8/27
Klasyfikacja: Detekcja SPAMU Cel: Dane: Zbadać, czy dana wiadomość jest SPAMEM. Zestaw zawierający zaetykietowane wiadomości mailowe. Wydobywane są cechy (występowanie słów) różnicujące SPAM od zwykłej poczty. 9/27
Klasyfikacja: Rozpoznawanie mowy Cel: Dane: Interpretacja wybranych słów na podstawie wypowiedzi. Próbki dźwięków wraz z ich znaczeniem. Wydobywane są cechy dźwięku charakterystyczne dla danego słowa, głoski, bądź zestawu słów. 10/27
Uczenie bez nadzoru: Klasteryzacja Klasteryzacja (ang. Clustering): Dysponujemy obserwacjami bez etykiet. Celem uczenia jest znalezienie grup (klastrów), w których skupione są dane. Inne nazwy: grupowanie, analiza skupień. 11/27
Uczenie bez nadzoru: Klasteryzacja Klasteryzacja (ang. Clustering): Dysponujemy obserwacjami bez etykiet. Celem uczenia jest znalezienie grup (klastrów), w których skupione są dane. Inne nazwy: grupowanie, analiza skupień. 11/27
Klateryzacja: Kompresja obrazu Cel: Dane: Kodowanie pikseli wartościami z mniejszego zakresu. Obraz. Zakłada się, że każdy piksel może przyjąć K wartości. Podobne piksele trafiają do tego samego klastra. Piksel kodowany jest poprzez numer klastra. 12/27
Klateryzacja: Grupowanie słów Cel: Dane: Wyodrębnienie grup słów w tytułach artykułów. Artykuły prasowe. Grupowaniu podlegają słowa, które pojawiły się w tytule artykułu. Słowa z jednej grupy zazwyczaj opisują to samo zdarzenie. 13/27
Uczenie bez nadzoru: Redukcja wymiarów Redukcja wymiarów (ang. Dimensionality Reduction): Dysponujemy obserwacjami bez etykiet. Celem uczenia jest znalezienie niskowymiarowej podprzestrzeni (rozmaitości), na której leżą dane. 14/27
Uczenie bez nadzoru: Redukcja wymiarów Redukcja wymiarów (ang. Dimensionality Reduction): Dysponujemy obserwacjami bez etykiet. Celem uczenia jest znalezienie niskowymiarowej podprzestrzeni (rozmaitości), na której leżą dane. 14/27
Redukcja wymiarów: Kodowanie i kompresja zdjęć Cel: Dane: Znalezienie twarzy bazowych rozpinających niskowymiarową przestrzeń. Zdjęcia twarzy. Wyróżnione M twarzy bazowych rozpina M-wymiarową podprzestrzeń w przestrzeni twarzy. Twarze mogą być kodowane poprzez położenie na niskowymiarowej przestrzeni. 15/27
Redukcja wymiarów: Wizualizacja danych Cel: Dane: Wizualizacja 2D lub 3D wysokowymiarowych danych. Dowolne dane, np. zdjęcia. Redukcja wymiarów pozwala na wizualizację struktury wysokowymiarowych danych. Podobne obserwacje znajdują się blisko siebie w niskowymiarowej przestrzeni. 16/27
Uczenie bez nadzoru: Uzupełnianie wartości Uzupełnianie wartości (ang. Matrix completion): Dysponujemy obserwacjami bez etykiet. Celem uczenia jest znalezienie brakujących wartości dla niekompletnych obserwacji. 17/27
Uczenie bez nadzoru: Uzupełnianie wartości Uzupełnianie wartości (ang. Matrix completion): Dysponujemy obserwacjami bez etykiet. Celem uczenia jest znalezienie brakujących wartości dla niekompletnych obserwacji. 17/27
Uczenie bez nadzoru: Uzupełnianie wartości Uzupełnianie wartości (ang. Matrix completion): Dysponujemy obserwacjami bez etykiet. Celem uczenia jest znalezienie brakujących wartości dla niekompletnych obserwacji. 17/27
Uzupełnianie wartości: Rekonstrukcja obrazu Cel: Dane: Odtworzyć zakłócony obraz. Zestaw niezakłóconych zdjęć, oraz zakłócony obraz do rekonstrukcji. W oparciu o niezakłócone zdjęcia wyuczany jest model. Na podstawie modelu uzupełniane są brakujące wartości pikseli. 18/27
Uzupełnianie wartości: Rekomendacja produktów Cel: Dane: Zaproponować klientowi produkty, które skłonny jest kupić. Produkty do tej pory kupione przez klienta i transakcje zrealizowane przez innych klientów. W oparciu o zakupiony koszyk produktów nabytych przez klienta i zestaw transakcji uczony jest model. Na podstawie modelu wybierane są produkty do rekomendacji. 19/27
Uczenie ze wzmocnieniem Uczenie ze wzocnieniem (ang. Reinforcement Learning): Maszyna (agent) wchodzi w interakcje z otoczeniem (środowiskiem), w którym chce osiągnąć określony cel. Maszyna podejmuje akcje aby osiągnąć cel, które są ocenianie przez otoczenie (nagradzane lub karane). 20/27
Uczenie ze wzmocnieniem Uczenie ze wzocnieniem (ang. Reinforcement Learning): Maszyna (agent) wchodzi w interakcje z otoczeniem (środowiskiem), w którym chce osiągnąć określony cel. Maszyna podejmuje akcje aby osiągnąć cel, które są ocenianie przez otoczenie (nagradzane lub karane). 20/27
Uczenie ze wzmocnieniem Uczenie ze wzocnieniem (ang. Reinforcement Learning): Maszyna (agent) wchodzi w interakcje z otoczeniem (środowiskiem), w którym chce osiągnąć określony cel. Maszyna podejmuje akcje aby osiągnąć cel, które są ocenianie przez otoczenie (nagradzane lub karane). 20/27
Uczenie ze wzmocnieniem Uczenie ze wzocnieniem (ang. Reinforcement Learning): Maszyna (agent) wchodzi w interakcje z otoczeniem (środowiskiem), w którym chce osiągnąć określony cel. Maszyna podejmuje akcje aby osiągnąć cel, które są ocenianie przez otoczenie (nagradzane lub karane). 20/27
Uczenie ze wzmocnieniem Uczenie ze wzocnieniem (ang. Reinforcement Learning): Maszyna (agent) wchodzi w interakcje z otoczeniem (środowiskiem), w którym chce osiągnąć określony cel. Maszyna podejmuje akcje aby osiągnąć cel, które są ocenianie przez otoczenie (nagradzane lub karane). 20/27
Uczenie ze wzmocnieniem: Sterowanie helikopterem Cel: Dane: Wyuczyć algorytm sterowania helikopterem. Sterowanie helikopterem przez pilota (operatora). Dynamika helikoptera została użyta do określenia funkcji nagrody. Uczenie ze wzocnieniem użyto do nauki sterowania helikopterem. Projekt wykonano na Stanford University (http://heli.stanford.edu/). 21/27
Elementy zadania uczenia maszynowego 1. Ekstrakcja cech (ang. feature extraction) 2. Modelowanie (ang. modeling) 3. Wnioskowanie (ang. inference) 4. Uczenie (ang. learning) 5. Selekcja modelu (ang. model selection) 6. Predykcja (ang. prediction) 7. Ocena jakości (ang. evaluation) 22/27
Elementy zadania uczenia maszynowego 1. Ekstrakcja cech (ang. feature extraction) 2. Modelowanie (ang. modeling) 3. Wnioskowanie (ang. inference) 4. Uczenie (ang. learning) 5. Selekcja modelu (ang. model selection) 6. Predykcja (ang. prediction) 7. Ocena jakości (ang. evaluation) 22/27
Ekstrakcja cech Dane wejściowe Model? Obraz Średnia pikseli Predykcja 23/27
Ekstrakcja cech Dane wejściowe Ekstrakcja cech Model Obraz Cechy (filtry) Predykcja 24/27
Ekstrakcja cech z obrazu Z prezentacji Honglaka Lee 25/27
Ekstrakcja cech audio Z prezentacji Ruslana Salakhutdinova 26/27
Ekstrakcja cech z tekstu To be or not to be... to: 1 be: 1 or: 1 not: 1 this: 0 Bag-of-words tf-idf = tf x idf TF-IDF to: 2 be: 2 or: 1 not: 1 Term frequency (TF) to: 0 to: be: 0 to: 2 1 be: or: 0 be: 2 0 or: not: 1 or: 1 1 not: 1 not: 1 to: log(1+3/2) be: log(1+3/3) or: log(1+3/2) not: log(1+3/3) Inverse document frequency (IDF) 27/27