Wstęp do przetwarzania języka naturalnego Wykład 13
Transkrypt
Wstęp do przetwarzania języka naturalnego Wykład 13
WPJN Wstęp do przetwarzania języka naturalnego Wykład 13 Podsumowanie i spojrzenie w przyszłość Wojciech Czarnecki 22 stycznia 2014 Wojciech Czarnecki WPJN - Wykład 13 WPJN Section 1 WPJN Wojciech Czarnecki WPJN - Wykład 13 WPJN Zarys kursu Wyrażenia regularne Wojciech Czarnecki WPJN - Wykład 13 WPJN Zarys kursu Wyrażenia regularne Podstawowy processing tekstu, tokenizacja, stemming, lematyzacja Wojciech Czarnecki WPJN - Wykład 13 WPJN Zarys kursu Wyrażenia regularne Podstawowy processing tekstu, tokenizacja, stemming, lematyzacja Reprezentacja Bag of Words i Naive Bayes Wojciech Czarnecki WPJN - Wykład 13 WPJN Zarys kursu Wyrażenia regularne Podstawowy processing tekstu, tokenizacja, stemming, lematyzacja Reprezentacja Bag of Words i Naive Bayes Statystyczne modele języka, n-gramy Wojciech Czarnecki WPJN - Wykład 13 WPJN Zarys kursu Wyrażenia regularne Podstawowy processing tekstu, tokenizacja, stemming, lematyzacja Reprezentacja Bag of Words i Naive Bayes Statystyczne modele języka, n-gramy Tagowanie sekwencji (POS, NER) Wojciech Czarnecki WPJN - Wykład 13 WPJN Zarys kursu Wyrażenia regularne Podstawowy processing tekstu, tokenizacja, stemming, lematyzacja Reprezentacja Bag of Words i Naive Bayes Statystyczne modele języka, n-gramy Tagowanie sekwencji (POS, NER) Modele sekwencyjne: HMM, MEMM, CRF Wojciech Czarnecki WPJN - Wykład 13 WPJN Zarys kursu Wyrażenia regularne Podstawowy processing tekstu, tokenizacja, stemming, lematyzacja Reprezentacja Bag of Words i Naive Bayes Statystyczne modele języka, n-gramy Tagowanie sekwencji (POS, NER) Modele sekwencyjne: HMM, MEMM, CRF Różnice pomiędzy generatywnością a dyskryminatywnością Wojciech Czarnecki WPJN - Wykład 13 WPJN Zarys kursu Wyrażenia regularne Podstawowy processing tekstu, tokenizacja, stemming, lematyzacja Reprezentacja Bag of Words i Naive Bayes Statystyczne modele języka, n-gramy Tagowanie sekwencji (POS, NER) Modele sekwencyjne: HMM, MEMM, CRF Różnice pomiędzy generatywnością a dyskryminatywnością Skuteczne, liniowe modele dyskryminatywne: MaxEnt, SVM Wojciech Czarnecki WPJN - Wykład 13 WPJN Zarys kursu Wyrażenia regularne Podstawowy processing tekstu, tokenizacja, stemming, lematyzacja Reprezentacja Bag of Words i Naive Bayes Statystyczne modele języka, n-gramy Tagowanie sekwencji (POS, NER) Modele sekwencyjne: HMM, MEMM, CRF Różnice pomiędzy generatywnością a dyskryminatywnością Skuteczne, liniowe modele dyskryminatywne: MaxEnt, SVM Konceptualizacja dokumentów Wojciech Czarnecki WPJN - Wykład 13 WPJN Zarys kursu Wyrażenia regularne Podstawowy processing tekstu, tokenizacja, stemming, lematyzacja Reprezentacja Bag of Words i Naive Bayes Statystyczne modele języka, n-gramy Tagowanie sekwencji (POS, NER) Modele sekwencyjne: HMM, MEMM, CRF Różnice pomiędzy generatywnością a dyskryminatywnością Skuteczne, liniowe modele dyskryminatywne: MaxEnt, SVM Konceptualizacja dokumentów LSA, WordNet, algorytm Lesk Wojciech Czarnecki WPJN - Wykład 13 WPJN Zarys kursu Wyrażenia regularne Podstawowy processing tekstu, tokenizacja, stemming, lematyzacja Reprezentacja Bag of Words i Naive Bayes Statystyczne modele języka, n-gramy Tagowanie sekwencji (POS, NER) Modele sekwencyjne: HMM, MEMM, CRF Różnice pomiędzy generatywnością a dyskryminatywnością Skuteczne, liniowe modele dyskryminatywne: MaxEnt, SVM Konceptualizacja dokumentów LSA, WordNet, algorytm Lesk Wektoryzacja dokumentów, schematy SoW, BoW, TfIdf Wojciech Czarnecki WPJN - Wykład 13 WPJN Zarys kursu Wyrażenia regularne Podstawowy processing tekstu, tokenizacja, stemming, lematyzacja Reprezentacja Bag of Words i Naive Bayes Statystyczne modele języka, n-gramy Tagowanie sekwencji (POS, NER) Modele sekwencyjne: HMM, MEMM, CRF Różnice pomiędzy generatywnością a dyskryminatywnością Skuteczne, liniowe modele dyskryminatywne: MaxEnt, SVM Konceptualizacja dokumentów LSA, WordNet, algorytm Lesk Wektoryzacja dokumentów, schematy SoW, BoW, TfIdf Zaawansowane funkcje jądra, pozwalające na pracę z dokumentami Wojciech Czarnecki WPJN - Wykład 13 WPJN NLP Zaczęło się na Turingu Wojciech Czarnecki WPJN - Wykład 13 WPJN NLP I na nim się kończy Wojciech Czarnecki WPJN - Wykład 13 WPJN ogólna perspektywa Udało się rozwiązać niektóre problemy POS Sentiment analysis Dla części stworzono zadowalające rozwiązania Machine translation Speech recognition Ale wiele wciąż jest otwartych Language representation Language Understanding Wojciech Czarnecki WPJN - Wykład 13 WPJN dotąd Przez większość kursu, Państwa zadania można było podsumować w nastepujacy sposób: Zapoznać się z problemem Znaleźć dobre przekształcenie φ przenoszące dokumenty w bardziej zrozumiały dla komputera format Dobrać odpowiedni model i nauczyć go na dostepnych danych Wojciech Czarnecki WPJN - Wykład 13 WPJN dotąd Przez większość kursu, Państwa zadania można było podsumować w nastepujacy sposób: Zapoznać się z problemem Znaleźć dobre przekształcenie φ przenoszące dokumenty w bardziej zrozumiały dla komputera format Dobrać odpowiedni model i nauczyć go na dostepnych danych Wojciech Czarnecki WPJN - Wykład 13 WPJN Dobra reprezentacja danych Ten problem jest kluczowy w całym NLP i stanowi olbrzymią bolączkę. Mamy ogromne ilości informacji, a mimo to praca z nimi wymaga ręcznego dobierania często złożonych obiektów na ”chybił trafił”. W dodatku jak tylko dostaniemy nowe zadanie stare podejście możemy wyrzucić do kosza (nie liczac jakieś podstawowej formy i naszego doświadczenia). Wojciech Czarnecki WPJN - Wykład 13 WPJN Co się teraz dzieje w NLP Google Microsoft Stanford Wojciech Czarnecki WPJN - Wykład 13 WPJN NLP dziś Większość obecnych rozwiązań ML działa dobrze ze względu na ”inżynieryjną” pracą wielu ludzi (dobre zaprojektowanie cech). Cały proces uczenia to jedynie dobieranie wag do tych cech. Wojciech Czarnecki WPJN - Wykład 13 WPJN NLP dziś - słowo klucz Representation Learning Wojciech Czarnecki WPJN - Wykład 13 WPJN NLP dziś - representation learning Zamiast ograniczyć uczenie do etapu ”podjęcia decyzji”, uczmy się również spojrzenia na problem. Spojrzenia na świat.Tak jak ludzie. Gdy człowiek ma nauczyć się np. odróżniać pozytywne recenzje od negatywnych: Dostaje nieznany, tajemniczy zbiór symboli si , oraz równie tajemnicze pojęcia Jo i No i ma zbudować sobie jak najlepszy zbiór zasad które z si podejmuje decyzję o Jo i No? Uczy się przez wiele lat tego czym jest język, jak się nim posługiwać, czym są ”sentymenty”, i bazując na tej bazowej wiedzy ”dostraja się” do rozwiązywania konkretnego zadania. Wojciech Czarnecki WPJN - Wykład 13 WPJN NLP dziś - representation learning Dlaczego? Tworzenie reprezentacji jest bardzo czasochłonne (kosztowne) Dla każdego zadania trzeba cały proces powtarzać Zasady stworzone przez człowieka są bardzo wrażliwe na wszelkie zmiany, dynamikę języka i specyfikę konkretnych grup/problemów Wojciech Czarnecki WPJN - Wykład 13 WPJN NLP dziś - representation learning Zamiast ”atomicznej” reprezentacji w psotaci Bag of Words, czy drzew parsingu - bardziej rozproszone, rozmyte reprezentacje. np. reprezentowanie słowa jako konceptu (tzn. Brown clustering, exchange clustering) Redukcja błędu (dependency parsing) o 15% Redukcja błędu (NER) o 23.7% Wojciech Czarnecki WPJN - Wykład 13 WPJN NLP dziś - representation learning Ogrom informacji dostepnych dla NLP to dane niepoetykietowane. O ile niektóre algorytmy potrafią je zaadoptować (HMM), o tyle w ogólności systemy NLP bazują w zasadzie wyłącznie na poetykietowanych danych. Wojciech Czarnecki WPJN - Wykład 13 WPJN NLP dziś - reprezentacja wielopoziomowa Kiedy przyjrzymy się temu jak uczy się człowiek, nie znajdziemy jednego, homogenicznego systemu uczenia, jednego obszaru mózgu pt.”składnica wiedzy”. Nasz proces uczenia jest wielopoziomowy. Budujemy reprezentację na wielu poziomach abstrakcji. Dla NLP, np.: Pojedyncze kleksy na papierze tworzą linie Linie tworzą znaki (litery) Litery (już jako abstrakcyjne obiekty) tworzą słowa Słowa tworzą zdania Zdania tworzą wypowiedzi Wypowiedzi przenoszą sens, informację, wiedzę, poglądy, ... Wojciech Czarnecki WPJN - Wykład 13 WPJN deep representation Wojciech Czarnecki WPJN - Wykład 13 WPJN deep representation Idea ”Kompozycyjność” Rekurencja Ta sama ”operacja” aplikowana na coraz wyższych poziomach abstrakcji Wojciech Czarnecki WPJN - Wykład 13 WPJN deep representation Wojciech Czarnecki WPJN - Wykład 13 WPJN deep representation - Dlaczego teraz? Mamy o wiele potężniejsze komputery (Postęp technologiczny) Lepiej zrozumieliśmy naturę regularyzacji (Machine Learning Theory) Powstały nowe metody uczenia nienadzorowanego (przede wszystkim prace G.Hinton’a 2006) Wojciech Czarnecki WPJN - Wykład 13 WPJN Typowa reprezentacja Set (Bag) of words representation φ(hotel) = [00000...01000] φ(motel) = [00100...00000] sim(φ(hotel), φ(motel)) = 0 Wojciech Czarnecki WPJN - Wykład 13 WPJN Idea: kontekst Słowa są reprezentowane przez ich kontekst Wojciech Czarnecki WPJN - Wykład 13 WPJN Statystyczny model języka P(w ) = P(wn |w1 , ..., wn−1 ) Dotąd: model ngramowy Obecnie: uczone modele Wojciech Czarnecki WPJN - Wykład 13 WPJN Statystyczny model języka Mając duży zbiór tekstu możemy zbudować model tego języka, zdolny do wymodelowania P(w ) = P(wn |w1 , ..., wn−1 ) używając ustalonej liczby M stanów ukrytych podobna koncepcja do Ukrytych Modeli Markowa można wykorzystac tzw. rekurencyjne sieci neuronowe (ciekawostka: mają moc obliczeniową maszyny turinga) Wojciech Czarnecki WPJN - Wykład 13 WPJN Neuronowy model języka W szczególności: Neural Language Model ( Tomas Mikolov - 2010/2012 ) Wojciech Czarnecki WPJN - Wykład 13 WPJN NLP dziś - słowo klucz Deep Learning Wojciech Czarnecki WPJN - Wykład 13 WPJN deep learning Wojciech Czarnecki WPJN - Wykład 13 WPJN deep learning Czym są pojedyncze elementy składowe? sieciami neuronowymi (perceptrony) ograniczonymi maszynami Boltzmanna Modelami Markowa Wojciech Czarnecki WPJN - Wykład 13 WPJN deep learning Wojciech Czarnecki WPJN - Wykład 13 WPJN deep learning Wojciech Czarnecki WPJN - Wykład 13 WPJN Co sie dzieje w Microsofcie http://www.youtube.com/watch?v=Nu-nlQqFCKg Wojciech Czarnecki WPJN - Wykład 13 WPJN Przyszłość? Deep learning jest wykorzystywany teraz w: Wojciech Czarnecki WPJN - Wykład 13 WPJN Przyszłość? Deep learning jest wykorzystywany teraz w: Google Translate Wyszukiwaniu głosowym androida Rozpoznawaniu obrazów wykorzystywanym w Google Wojciech Czarnecki WPJN - Wykład 13 WPJN Czy na pewno test Turinga to dobry test? Wojciech Czarnecki WPJN - Wykład 13 WPJN Co dalej? dr Igor Podolak - Sieci Neuronowe Podstawowe architektury neuronowe Podstawowe modele i uczenie nienadzorowane Deep learning Wojciech Czarnecki WPJN - Wykład 13 WPJN Dziękuję Liczę na szczere komentarze w systemie ankietowym USOS Wojciech Czarnecki WPJN - Wykład 13 WPJN Egzamin Termin: 4 lutego 2014, godz. 15:00 sala: 0094 Co można mieć ze sobą: długopis i głowę pełną wiedzy Forma egzaminu: Dwa proste zadania otwarte (obliczeniowe) 20 pytań testowych (wielokrotnego wyboru) +1/-1pkt 90 minut (acz można go napisac w połowie tego czasu) Ocena z przedmiotu to średnia (arytmetyczna) oceny z egzaminu i ćwiczeń Trzeba zaliczyć obie części (egzamin i ćwiczenia) Wojciech Czarnecki WPJN - Wykład 13