technologie mowy modele semantyczne i ontologiedydaktyka:tmosemantyczne.pdf · technologie mowy...
TRANSCRIPT
365 365
Technologie Mowy
Modele semantyczne i ontologie
Bartosz Ziółko
www.dsp.agh.edu.pl http://rozpoznawaniemowy.blogspot.com/
Wykorzystano materiały MIT, Li Fei-Fei, Aleksandra Pohla,
Jana Wicijowskiego, Mariusza Mąsiora i Wikipedię
Rule-to-rule
Bag-of-words
Latent Semantic Analysis
Wordnet
CYC
366
Rule-to-Rule
Semantic interpretation [aka “syntax directed translation”]: pair syntax, semantic rules.
Generalised Phrase Structure Grammars (GPSG): pair each context free rule with semantic ‘action’; as in compiler theory – due to Knuth, 1968
367
Meanings by compositionality
368
Robert Berwick (MIT)
But there are exceptions
369
Exceptions - Business class
• Airlines – Business class is luxury, not much to do with making a good business;
• Hotels - business class is a hotel, where you rent a room if you go in business. It is clean and has all useful things but small and nothing to do with luxury.
370 Copyright Singapore Airlines
Human-like and computer-like analysis of expressions
• Kirk: Spock, are there any Romulans in Sector 6471?
• Spock: None, captain.
• Kirk: Are you certain, Spock?
• Spock: A 100% probability, Captain
• [camera rolls] Kirk: Damn your Vulcan ears, Spock, I thought you said there were no Romulans in sector 6471 !
• Spock: But there is no sector 6471…Logic dictates…
371
Bag-of-words
Semantics of NL sentences and phrases can be composed from the semantics of their subparts (for example words) – Principle of Compositionality.
372
Bag-of-words
373 by Li Fei-Fei (Princeton)
Bag-of-words
374 by Li Fei-Fei (Princeton)
Bag-of-words
375 by Li Fei-Fei (Princeton)
Bag-of-words
376 by Li Fei-Fei (Princeton)
Bag-of-words
377 by Li Fei-Fei (Princeton)
Bag-of-words
378 by Li Fei-Fei (Princeton)
379
380 380
Vector space model
.xml
Jan Wicijowski
381 381
Applying Semantic Model to Recognition
word-topic matrix
words
topic
s
hypothesis
vector
similarities
vector
Języki torricelli 1.85172
Język vanimo 0.64407
Język sahu 0.56976
Język wiaki 0.56976
Język yapunda 0.56976
Chesterfield F.C. 0.24345
Andrew Latimer 0.21302
Parnassius hunza 0.21115
Tom Smith 0.17938
Mononukleotyd 0.17189
flawinowy
Jan Wicijowski
382
Latent Semantic Analysis (LSA)
A row in this matrix will be a vector
corresponding to a term, giving its
relation to each document, a column
in this matrix will be a vector
corresponding to a document, giving
its relation to each term.
The dot product between two term vectors gives the correlation between the terms over the documents.
383
Latent Semantic Analysis (LSA)
384
Latent Semantic Analysis (LSA)
385
Big John has a house. Big John has a black, aggressive cat. The black
aggressive cat has a small mouse. The small mouse is a mammal.
Bag-of-words with graphs
386
TFIDF (Term Frequency - Inverse Document Frequency)
• TFIDFi,j = ( Ni,j / N*,j ) * log( D / Di ) where
• Ni,j = the number of times word i appears in
document j (the original cell count).
• N*,j = the number of total words in document j (just
add the counts in column j).
• D = the number of documents (the number of
columns).
• Di = the number of documents in which word i
appears (the number of non-zero columns in row i).
387
http://www.puffinwarellc.com/index.php/ne
ws-and-articles/articles/33.html?start=1
LSA tutorial
Semantyczne zasoby dla języka polskiego
388
Słowosieć
http://plwordnet.pwr.wroc.pl/browser/
◮ Wikipedia and DBPedia
http://dbpedia.org/
◮ Synonims in OpenOffice
http://synonimy.ux.pl/
◮ Wielki Słownik Języka Polskiego
http://www.wsjp.pl/
◮ Słownik Języka Polskiego
http://sjp.pl/
389
Słowosieć
Elektronika jest
typem sprzętu
Elektronika jest typem nauki
matematyczno-
przyrodniczej i nauki ścisłej
390
Słowosieć
Automatyka
Informatyka
Mechanika
Inżynieria
391
Konstruowanie Słowosieci
Ontologie
392
Slajdy Aleksandra Pohla
Po co nam to wszystko ?
393
394
Ontologie
RDFS – Resource Description Framework Schema
395
Ontologie
396
Ontologie
397
Ontologie
398
Ontologie
399
Ontologie
Definicje ontologii w filozofii i informatyce
Ontologia (filozofia):
Termin wywodzący się z greckiego słowa oznaczającego byt, ale ukuty w XVII w. na oznaczenie gałęzi metafizyki zajmującej się tym co istnieje.
Oksfordzki Słownik Filozoficzny
Ontologia (informatyka):
Formalna specyfikacja konceptualizacji wybranej dziedziny wiedzy.
Tom Gruber
Ogólna charakterystyka ontologii
Elementy definicyjne:
• formalna specyfikacja: CycL, FLogic, KIF, LOOM, OCML,OWL, RDF...
• ...konceptualizacji: indywidua, pojęcia, własności, relacje, funkcje, procesy...
• ...wybranej dziedziny wiedzy:
– ontologie ogólne
– ontologie dziedzinowe
Cyc jako przykład ontologii ogólnej
Cyc – produkt Cycorp®
• Rozpoczęcie prac: 1984
• www.cyc.com
• Największa znana ontologia:
– 300 tyś. pojęć
– 26 tyś. predykatów
– 3 miliony asercji
• 3 wersje: komercyjna, rozwojowa, otwarta
• Zaawansowany silnik inferencyjny
• Leksykon dla języka angielskiego
CycL – język ontologii
• CycL:
– nadbudowany nad rachunkiem predykatów 2-rzędu
– teoria mnogości ZF
– asercje na meta-poziomie
– operatory modalne
• 2 poziomy języka
– epistemologiczny
– heurystyczny (SubL – dialekt Lispa)
Struktura wiedzy 1.
Pojęcia podstawowe
• #$Thing – korzeń ontologii
• #$Collection – kolekcja wszystkich kolekcji
• #$Individual – kolekcja wszystkich indywiduów
• #$genls – relacja generalizacji
• #$isa – relacja należenia do kolekcji
Struktura wiedzy 2.
Kolekcje i indywidua
• Kolekcje 1-ego rzędu: #$Intangible,#$PartiallyTangilbe, #$TemporalThing, #$SpatialThing
• Kolekcje 2-ego rzędu: #$TemporalStuffType, #$TemporalObjectType, #$ExistingStuffType, #$ExistingObjectType
Struktura wiedzy 3.
• Predykaty
– arność
– typ argumentów
– format argumentów
– relacja genlPreds
przykład (#$colorOfType, #$conceptuallyRelated)
• Funkcje
– pozwalają unikać reifikacji
przykład (#$CapitalFn COUNTRY)
Mikroteorie
• 3 miliony asercji!
• Trudność spełnienia wymogu globalnej niesprzeczności
• Podział wiedzy na mniejsze jednostki – mikroteorie
• predykat #$genlMt
• #$BaseKB – korzeń drzewa mikroteorii
• #$EverythingPSC – suma wszystkich mikroteorii
Leksykon
• Mapowanie pomiędzy pojęciami (#$Dog) a słowami języków naturalnych („dog”)
• Symboliczna reprezentacja słów (X-TheWord)
• Predykat denotacji (#$denotation WORD POS N DENOTATION)
• Bank(1) (#$denotation #$Bank-TheWord #$CountNoun 0 #$Bank-Topographical)
• Bank(2) (#$denotation #$Bank-TheWord #$CountNoun 1 #$BankOrganization)
Architektura Cyc
© Cycorp
Architektura Cyc
• Baza wiedzy
• „Świat”
• Wyciąg operacji, serwer operacji
• Partycje wiedzy
• Silnik inferencyjny
• Interfejs użytkownika
• API
• Narzędzie integracji źródeł wiedzy
Organizacja danych
• „Świat” - obraz pamięci działającej ontologii zapisany w formacie CFASL – może być załadowany z powrotem bez sprawdzania integralności danych
• Wyciąg operacji – zestaw operacji wykonywanych przez użytkownika w czasie pracy z systemem
• Serwer operacji – pośredniczy w wymianie informacji pomiędzy sesjami różnych użytkowników
• Partycja wiedzy – fragment „Świata”
Interfejs użytkownika
Interfejs użytkownika
• Interfejs webowy – pozwala przeglądać ontologią, wprowadzać nowe fakty, zadawać pytania, etc. (HTML + CGI)
• Edytor faktów (Fact Editor) – pozwala wprowadzać fakty osobom, które nie są zaznajomione ze strukturą ontologii (Java)
• Biblioteka zapytań (Query Library) – pozwala tworzyć zapytania i je wykonywać. Wykorzystuje mechanizmy NLP (Java).
Komunikacja ze światem zewnętrznym
• API:
– SubL: protokoły ASCII oraz CFASL przez TCP/IP, brak wsparcia dla wywołań zwrotnych
– Java: nadbudowany nad SubL, zapewnia łatwą integrację z systemami napisanymi w Javie, wspiera wywołania zwrotne
• Wspierane języki RW: CycML, DAML, OWL
• SKSI: narzędzie pozwalające na integrację z bazami danych i stronami internetowymi
Zastosowania Cyc
Zastosowania Cyc - aktualne
• Integracja baz danych
• Integracja baz wiedzy
• Inteligentne wyszukiwanie informacji:
– na podstawie krótkich opisów (np. zdjęcia)
– na stronach WWW
• Rozproszona AI
• Przetwarzanie języka naturalnego
Zastosowania Cyc - potencjalne
• Automatyczne pośrednictwo w sprzedaży dóbr
• Tworzenie inteligentnych interfejsów
• Tłumaczenie maszynowe wysokiej jakości
• Rozpoznawanie mowy wspomagane wiedzą
• Zaawansowane modelowania zachowań użytkowników
• Semantyczny data-mining
• Wsparcie dla e-biznesu
Bazy danych
Wymagania: zmapowanie tabel i ich atrybutów na pojęcia występujące w Cyc.
Rezultat:
• Możliwość wykrycia anomalnych danych poprzez ich analizę z wykorzystaniem wiedzy zdroworozsądkowej.
• Integracja wiedzy występującej w wielu bazach danych:
– wykrycie danych sprzecznych
– generowanie zapytań obejmujących wiele baz danych
CYC
419
CYC
420
Przykład CYC
421
Wyszukiwanie informacji 1.
Założenia: baza danych/wiedzy obejmująca tysiące lub setki tysięcy danych niepodlegających analizie tekstowej, zawierających krótkie opisy (np. zdjęcia, filmy, abstrakty)
Rezultat: możliwość inteligentnego wyszukiwania informacji znacznie wykraczającego poza zwykłe mechanizmy dopasowania/zastępowania synonimami.
Wyszukiwanie informacji 2.
Założenie: dziedzinowe bazy wiedzy dostępne przez WWW, implementujące protokół komunikacyjny Cyc
Rezultat: możliwość zaawansowanego wyszukiwania wszelkich informacji dostępnych w dziedzinowych bazach wiedzy (dla użytkownika końcowego wygląda to tak, jakby cała wiedza znajdowała się w Cyc).
Problemy ze stosowaniem ontologii
• Ogromne koszty
• Wiedza zmienia się z czasem
• Ontologie zawierają ograniczoną wiedzę
• Mogą być błędy wynikające z automatycznej ekstrakcji faktów z tekstów
• Ale Watson wygrał w Va Banque z mistrzami
424
Watson gra z mistrzami w Va Banque
425
Przetwarzanie języka naturalnego
Precyzyjne przetwarzanie języka naturalnego wymaga często posiadania wiedzy zdroworozsądkowej:
I saw clouds flying over Zurich.
Widziałem chmury lecące nad Zurychem.
I saw buildings flying over Zurich.
Widziałem domy lecąc nad Zurychem.
Linked Data
427
Podsumowanie
• Zasada kompozycyjności (fioletowa krowa)
• Koncepcja modelu bag-of-words
• Podstawy LSA
• Orientacja w zagadnieniach związanych z korpusami mowy i tekstów (jak się je robi, ocenia ich jakość, wielkość itp.)
• Implementacje słowników (tekst, SQL, FSA)
• Słowosieć (koniecznie sprawdzić stronę)
• Czym jest ontologia, czyli jak dodać Mruczka do Facebooka
428