37
Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki Technicznej Wydzial Elektroniki

SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Przetwarzaniejęzyka naturalnego

Dariusz BanasiakKatedra Informatyki Technicznej

Wydział Elektroniki

Page 2: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 2

Przetwarzanie języka naturalnego

NLP – Natural Language Processing (przetwarzanie języka

naturalnego)

Głównym celem prac prowadzonych w tej dziedzinie jest

opracowanie modeli opisujących strukturę języka oraz

poznanie mechanizmów rozumienia i formułowania

wypowiedzi.

Zrozumienie zasad budowy i posługiwania się językiem

naturalnym możliwe jest dzięki wspólnym wysiłkom

badaczy z wielu dyscyplin naukowych:

lingwistyki, logiki, filozofii, psychologii, neurofizjologii oraz

informatyki.

Page 3: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 3

Przetwarzanie języka naturalnego

Definicja NLP

NLP to dział AI zajmujący się poszukiwaniem metod

formalnego opisu języka naturalnego oraz reprezentacji

wiedzy zawartej w tekstach.

Początki zainteresowania przetwarzaniem języka

naturalnego związane są z problemem automatycznego

tłumaczenia tekstów z jednego języka na inny.

Pierwszy projekt badawczy dotyczący automatycznego

tłumaczenia tekstów rozpoczęto w roku 1946 w Birkbeck

College w Londynie.

Page 4: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 4

Przetwarzanie języka naturalnego

Zastosowanie systemów NLP:

� rozpoznawanie i synteza mowy

� interfejsy w języku naturalnym (HCI z j. ang. human -computer interfaces)

� rozumienie i generowanie tekstów, (np. inteligentne wyszukiwania informacji, dokonywanie streszczeń, tworzenie bazy wiedzy, itd.)

� prowadzenie dialogu człowiek-komputer

� automatyczne tłumaczenie tekstów (np. system JANUS-II)

� inteligentne edytory tekstów

� nauka języków obcych

Page 5: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 5

Przetwarzanie języka naturalnego

Zalety stosowania systemów NLP:

� korzystanie z komputera przez osoby bez specjalistycznego przygotowania

� szybkość (klawiatura 0,5 słowa/s; profesjonalna maszynistka 1.5-2.5 słowa/s; spontaniczna mowa 2.5-3.6 słowa/s)

� zwolnienie rąk użytkownika (równoległe wykonywanie innych czynności)

� komunikacja z komputerem w nietypowym środowisku (pod wodą, w statku kosmicznym)

� zmniejszenie czasu reakcji (szybsza reakcja werbalna niż manualna np. wyłączenie urządzenia w przypadku awarii)

� korzystanie z komputerów przez osoby niepełnosprawne

Page 6: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 6

Przetwarzanie języka naturalnego

U podstaw procesu porozumiewania się za pomocą języka naturalnego leżą bardzo złożone mechanizmy związane z percepcją i wytwarzaniem wypowiedzi. Wyróżnia się następujące poziomy analizy języka naturalnego:

� akustyczny – rytm i intonacja języka

� fonologiczny – badanie struktury dźwiękowej języka

� morfologiczny – badanie struktury słów (rdzenie, końcówki)

� syntaktyczny – analiza gramatyczna zdania

� semantyczny – opis znaczenia wyrazów i zdań

� pragmatyczny – badanie znaczenia w zależności od kontekstu wypowiedzi

Page 7: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 7

Przetwarzanie języka naturalnego

Podstawowe problemy analizy języka naturalnego:

� złożoność problemu

(bogate słownictwo, różnorodne struktury, itd.)

� wieloznaczność syntaktyczna wyrazów

(np. wyraz "work" może oznaczać rzeczownik "praca"

lub czasownik "pracować" )

� wieloznaczność semantyczna wyrazów

(np. czasownik "order" może posiadać jedno ze

znaczeń: "rozkazać", "zamówić", "uporządkować" )

Page 8: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 8

Przetwarzanie języka naturalnego

� wieloznaczność syntaktyczna na poziomie fraz (lub

zdań)

(John) (sent) (a package) (to New York)

(John) (booked) (a flight to New York)

� problem odniesień anaforycznych

The airline bought the plane because it had already decided

to do so earlier

� problem zakresu kwantyfikatorów i negacji

Nie wszyscy chłopcy i dziewczynki poszli do kina

� wystąpienie w zdaniu nieznanych słów.

Page 9: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 9

Przetwarzanie języka naturalnego

Przykładowe realizacje systemów NLP:

� SAD-SAM (R. Lindsay, 1963) – system odpowiadający na pytania dotyczące stopnia pokrewieństwa

� BASEBALL (B. Green i inni, 1963) – system bazy danych, odpowiadający na pytania dotyczące spotkań baseballowych

� LUNAR (W. A. Woods, 1972) – system do wyszukiwania danych na temat próbek gruntu księżycowego pobranych przez Apollo 11

� LADDER (G. Hendrix, 1978) – system dialogowego dostępu do rozproszonych baz danych

� HAM-ANS (1981-86) i WISBER(1986-89) – systemy prowadzące dialog na temat rezerwacji hotelowej (w języku niemieckim)

Page 10: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 10

Przetwarzanie języka naturalnego

� ORBIS (A. Colmerauer, 1983) – system bazy danych,

odpowiadający na pytania dotyczące planet układu

słonecznego

Projekty Massachusetts Institute of Technology (MIT):

� JUPITER – system informacji o pogodzie, dostęp przez

telefon (około 500 miast)

� MERCURY – system rezerwacji lotów (dostęp przez telefon)

� PEGASUS – system informacji o lotach (odloty, przyloty)

� VOYAGER – system informacji o ruchu drogowym, pomoc

w nawigacji (dotyczy Bostonu)

Page 11: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 11

Przetwarzanie języka naturalnego

Schemat blokowy systemu dialogowego (wg MIT):

synteza

mowy

rozpoznanie

mowy

zrozumienie

wypowiedzi (języka)

kontekst

dialogu

generowanie

wypowiedzi

rama

semantyczna

układ

sterujący baza danych

Pytanie

Odpowiedź

Page 12: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 12

Przetwarzanie języka naturalnego

Przykład dialogu w systemie Merkury:

S: Welcome to the initial development version of the MIT air travelinformation system. This call is being recorded for system development. You may hang up or ask for help at any time. For enrolled users please say your first and last name. Otherwise, say ‘new user.’

U: Joe Polifroni

S: Please speak the month and day you registered as your password, as in ‘May first.’

U: I want to key in my password.

S: Okay, Please enter your four digit date password... <keyed in>

S: Welcome, Joe. You have successfully logged onto mercury. How may Ihelp you?

U: I want to fly to San Francisco the first Sunday in November and return the

following Thursday.

Page 13: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 13

Przetwarzanie języka naturalnego

S: Okay, flights from Boston to San Francisco on Sunday November 5.Can you provide the approximate departure time or airline preference?

U: Are there any flights in the morning?

S: Okay, flights from Boston to San Francisco departing between 5 a.m.and 12 p.m. on Sunday November 5. One moment please. ... Can youprovide a departure or arrival time? I have flights on American,Frontier, America West, Nordic East Airways, Northwest, and United.The earliest nonstop United flight leaves at 7 a.m. and arrives at 10:20a.m.

U: I don’t want to fly on United.

S: I have a nonstop American flight leaving at 9 a.m. arriving at 12:40p.m. Would that work?

U: Yes, I’ll take that one.

S: American flight 195 has been added to your itinerary. You departBoston at 9 a.m. and arrive in San Francisco at 12:40 p.m. Shall I helpyou with the return flight now?

U: Yes, please....

Page 14: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 14

Przetwarzanie języka naturalnego

Analiza syntaktyczna

Dla "zrozumienia" zdania języka naturalnego konieczna

jest nie tylko znajomość znaczenia użytych w nim wyrazów,

ale również informacja o ich wzajemnym układzie i

powiązaniach.

Opisem reguł budowy zdań z wyrazów zajmuje się

syntaktyka. Termin "syntaksa" wywodzi się z greckiego

wyrazu "syntaktis" (zestawienie, uszeregowanie).

Zbiór reguł syntaktycznych dla danego języka nazywamy

gramatyką tego języka.

Page 15: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 15

Przetwarzanie języka naturalnego

Proces analizy syntaktycznej nazywany jest parsowaniem,

a program realizujący ten proces parserem.

Zadaniem parsera jest transformacja liniowego zapisu

tekstu na pewną strukturę, która zawiera informację o

związkach i zależnościach pomiędzy wyrazami i częściami

zdania.

Wprowadzenie przez Chomskiego w latach pięćdziesiątych

naszego wieku pojęcia gramatyki generatywnej stanowiło

przełom w lingwistyce, i uważane jest za jedno z ważniej-

szych wydarzeń w tej dziedzinie.

Page 16: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 16

Przetwarzanie języka naturalnego

Podstawowe pojęcia dotyczące gramatyk

Alfabetem nazywamy skończony zbiór symboli

występujących w danym języku. Dla języka naturalnego

są to wyrazy.

Słowem nazywamy skończony ciąg symboli należących do

alfabetu. Dla języka naturalnego są to zdania.

Językiem nazywamy zbiór słów nad pewnym alfabetem.

Język naturalny jest więc zbiorem zdań.

Page 17: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 17

Przetwarzanie języka naturalnego

Gramatykę definiuje się jako "czwórkę" <T, V, P, S>:

� T – zbiór terminali (symbole końcowe np. słowa języka

naturalnego)

� V – zbiór nieterminali (kategorie syntaktyczne np.

<zdanie>, <fraza rzeczownikowa>, itd.)

� P – zbiór produkcji (reguły tworzenia zdań np.

S → NP VP )

� S – wyróżniony symbol początkowy

Page 18: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 18

Przetwarzanie języka naturalnego

Postać reguł produkcji stanowi podstawę klasyfikacji

gramatyk na cztery typy (wg Chomskiego):

� typ 0 – gramatyki rekurencyjnie przeliczalne (bez ograniczeń – dowolny ciąg symboli terminalnych i nieterminalnych można zastąpić innym ciągiem tych symboli):

α → β, α, β - dowolne (α ≠ ε)

� typ 1 – gramatyki kontekstowe (ciąg symboli po lewej stronie można zastąpić innym ciągiem co najmniej o tej samej długości):

α A β → α γ β, A – symbol nieterminalny

α, β, γ - dowolne (γ ≠ ε)

Page 19: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 19

Przetwarzanie języka naturalnego

� typ 2 – gramatyki bezkontekstowe (po lewej stronie

reguły może wystąpić wyłącznie jeden symbol

nieterminalny, prawa strona jest dowolna):

A → α, A – symbol nieterminalny,

α - dowolne

� typ 3 – gramatyki regularne (jeden symbol nieterminalny

można zastąpić jednym symbolem terminalnym lub

połączeniem symbolu nieterminalnego i terminalnego):

A → a lub A → a B, A, B – symbole nieterminalne,

a – symbol terminalny

Page 20: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 20

Przetwarzanie języka naturalnego

Postać reguł produkcji decyduje o mocy danej gramatyki.

Przez moc gramatyki rozumie się liczbę typów konstrukcji

językowych przez nią generowanych. Najmniejszą moc ma

gramatyka regularna, największą gramatyka rekurencyjnie

policzalna.

Chomsky pokazał, że do opisu języka angielskiego

(i wielu innych języków naturalnych) niezbędna jest

gramatyka kontekstowa.

W praktyce, w wielu zastosowaniach używana jest

gramatyka bezkontekstowa (nie można opisać wszystkich

konstrukcji, ale istnieją efektywne algorytmy).

Page 21: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 21

Przetwarzanie języka naturalnego

Gramatyka bezkontekstowa dla języka angielskiego (fragment):

S → NP VP

VP → vi (vi – czasownik nieprzechodni np. „spać”)

VP → vt NP (vt – czasownik przechodni np. "widzieć„)

VP → vt NP PP

NP → n

NP → det n

NP → pron (pron – zaimek)

NP → det adj n

PP → prep NP (PP – grupa przyimkowa)

Page 22: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 22

Przetwarzanie języka naturalnego

Analiza zdania:

They visit friends in Egypt

pron vt n prep n

Drzewo struktury frazowej:

S

NP VP

pron NP PPvt

n NPprep

invisitthey friendst Egypt

n

Page 23: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 23

Przetwarzanie języka naturalnego

Każda gramatyka powinna spełniać dwa kryteria:

� generować wszystkie poprawne zdania danego języka

� generować wyłącznie zdania tego języka (nie może

generować zdań niepoprawnych).

Przykład

1. Chłopiec czyta książkę.

2. Chłopiec je ciastko.

3. Chłopiec czytają książkę.

4. Chłopiec czyta książka.

5. Chłopiec czyta ciastko.

6. Chłopiec je książkę.

Page 24: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 24

Przetwarzanie języka naturalnego

Gramatyka powinna w swoich regułach uwzględniać

również konieczność uzgadniania form fleksyjnych

wyrazów (istotne dla języków fleksyjnych np. j. polskiego).

Problem ten można rozwiązać przez przypisanie symbolom

gramatyki dodatkowych atrybutów (np. osoby, liczby,

rodzaju, przypadku itd.):

S → NP(case, gender, nb, person) VP(gender, nb, person)

NP(case,gender,number) → Noun(case,gender,number)

Warunkiem zastosowania danej reguły jest wówczas

dodatkowo zgodność wartości odpowiadających sobie

atrybutów.

Page 25: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 25

Przetwarzanie języka naturalnego

Problemy występujące podczas analizy syntaktycznej:

� wieloznaczność syntaktyczna

(Poszedłem) (po proszek) (do sklepu)

(Poszedłem) (po proszek do prania)

� nieciągłość fraz

Dziewczynki będą dziś wieczorem rysowały

� swobodny szyk wyrazów

Ewa dała jabłko Adamowi (możliwe 24 permutacje)

� konstrukcje współrzędnie złożone

� elipsy i konstrukcje z elementami domyślnymi

John wants [John] to dance

Page 26: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 26

Przetwarzanie języka naturalnego

Rodzaje gramatyk spotykane w literaturze:

� gramatyki transformacyjne

� gramatyki Montague

� gramatyki struktur frazowych

� gramatyki funkcyjne

� gramatyki logiczne

� gramatyki składania drzew

� gramatyki unifikacyjne

� ...

Page 27: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 27

Przetwarzanie języka naturalnego

Gramatyka dla języka polskiego (wg Szpakowicza):

� jednostki elementarne (klasy wyrazów) - 20

� wyrazy funkcyjne (spójniki i zaimki) - około 100

� jednostki składniowe (nieterminale) - około 100

� reguły - około 270

Przykładowa reguła:

ZDANIEELEM (1, r, l, o, tr, cz, neg)

= [SZFRZ(r, l, o) SZFCZ(OSOB, r, l, o, tr, cz, neg)] .

Page 28: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 28

Przetwarzanie języka naturalnego

Analiza semantyczna

Semantyka zajmuje się opisem znaczenia. Wyróżnia się trzy poziomy analizy semantycznej: opis znaczenia wyrazów, zdań oraz tekstów.

Cele analizy semantycznej:

� sprawdzenie poprawności zdania pod względem zrozumiałości i sensowności (np. odrzucenie zdań nielogicznych)

� usunięcie niejednoznaczności w strukturze zdania (np. właściwa interpretacja wyrazów, wybór właściwego rozbioru gramatycznego zdania),

� określenie reprezentacji znaczenia zdania (np. opis znaczenia zdania w celu dalszej analizy).

Page 29: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 29

Przetwarzanie języka naturalnego

Zagadnienie semantyki pojawiło się stosunkowo późno w polu zainteresowania lingwistów (lata 60-te XX wieku).

Dwa podejścia stosowane do opisu semantyki:

� strukturalne (relacyjne)

� składnikowe.

Podejście strukturalne:

jednostkom języka (głoskom, wyrazom itp.), wyróżnionym w toku analizy zdania, można przypisać znaczenie na podstawie ich relacji w stosunku do innych jednostek danego systemu językowego.

Znaczenie wyrazu definiują relacje z wyrazami sąsiednimi (bliskoznacznymi) i opozycyjnymi (np. WORDNET).

Page 30: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 30

Przetwarzanie języka naturalnego

Podejście składnikowe:

znaczenie może być zdefiniowane przez rozkład na

prostsze (elementarne) komponenty semantyczne.

mężczyzna = człowiek + męski + dorosły

kobieta = człowiek + żeński + dorosły

chłopiec = człowiek + męski + młodociany

Znaczenie czasownika "dać" można zdefiniować za

pomocą czasowników elementarnych "powodować" i

"mieć":

X daje Y-owi Z = X powoduje, Y ma Z

Page 31: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 31

Przetwarzanie języka naturalnego

Kazimierz Polański – „Słownik syntaktyczno-generatywny czasowników polskich”:

[+ Abstr] – abstrakcyjność [- Abstr] – konkretność

[+ Anim] – żywotność [- Anim] – nieżywotność

[+ Hum] – osobowość [- Hum] – nieosobowość,

[Coll] – zbiorowość [Elm] – żywioł

[Fl] – roślina [Instit] – instytucja

[Instr] – narzędzie [Liqu] – płyn,

[Mach] – maszyna [Mat] – materiał

[Pers] – część

Cechy te mogą tworzyć różne kombinacje np.: [- Abstr, - Anim] – obiekt materialny nieożywiony np. kamień, szkło

[+ Hum, Pars] – część ciała ludzkiego np. ręka, głowa, ząb

Page 32: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 32

Przetwarzanie języka naturalnego

Podstawowe teorie semantyczne w systemach NLP:

� gramatyki semantyczne (ang. semantic grammars)

� teoria zależności pojęciowych Schanka

(ang. Conceptual Dependancy Theory)

� gramatyka przypadków głębokich Fillmore'a

(ang. case grammar)

Gramatyki semantyczne łączą opis składniowy zdania z informacją semantyczną zawartą w zdaniu (np. gramatyka bezkontekstowa, w której symbole nieterminalne repre-zentują pewne pojęcia semantyczne).

Podstawowe zastosowanie: systemy umożliwiające dostęp do baz danych w języku naturalnym.

Page 33: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 33

Przetwarzanie języka naturalnego

Reguły analizy pytań w systemie LADDER:

S → QUERY the SHIP_PROP of SHIP ?

QUERY → what is | [can you] tell me

SHIP_PROP → speed | length | beam | type | class

SHIP → the SHIP_NAME | SHIP_NAME | the fastest SHIP2 | SHIP2

SHIP_NAME → Kennedy | Enterprise | Lafayette | ...

SHIP2 → COUNTRY SHIP3 | SHIP3

SHIP3 → SHIP_TYPE LOC | SHIP_TYPE

SHIP_TYPE → carrier | submarine

COUNTRYS → American | British

LOC → in the Pacific | in the Atlantic

Page 34: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 34

Przetwarzanie języka naturalnego

Teoria zależności pojęciowych Schanka (teoria CD)

Teoria CD Schanka wykorzystuje zjawisko "pojęciowego"

podobieństwa czasowników. Podstawą reprezentacji

informacji zawartych w zdaniu jest struktura, która przed-

stawia wzajemne relacje między pojęciami stanowiącymi

główne elementy danego zdarzenia, takimi jak:

� czynność,

� sprawca czynności,

� obiekt podlegający czynności,

� cel czynności

� ...

Struktura ta nazywana jest formułą CD.

Page 35: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 35

Przetwarzanie języka naturalnego

W zapisie formuł zastosowano uproszczenia dotyczące

nazywania czynności. W tym celu zostały wprowadzone

tzw. akcje elementarne, które w formułach pełnią funkcję

czasowników.

Schank zaproponował jedenaście akcji elementarnych:

� MTRANS

� ATRANS

� PTRANS

� PROPEL

� INGEST

� MBUILT

� ATTEND

� SPEAK

� MOVE

� GRASP

� EXPEL.

Page 36: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 36

Przetwarzanie języka naturalnego

Przykład

Janek dał Marii jabłko.

Maria wzięła od Janka jabłko.

Zdania te będą miały następującą reprezentację w postaci

formuł CD:

akcja - ATRANS akcja - ATRANS

aktor - Janek aktor - Maria

obiekt - jabłko obiekt - jabłko

kierunek DO - Maria kierunek DO - Maria

OD - Janek OD - Janek

Page 37: SI-wykład12 [tryb zgodności]staff.iiar.pwr.wroc.pl/dariusz.banasiak/si/SI_wyklad12.pdf · 2017. 6. 7. · Przetwarzanie języka naturalnego Dariusz Banasiak Katedra Informatyki

Autor: Dariusz Banasiak – Katedra Informatyki Technicznej 37

Przetwarzanie języka naturalnego

Nagroda Loebnera (od 1990 roku)

Nagroda ufundowana dla programisty, który zdoła napisać

program, który skutecznie przejdzie test Turinga.

Nagroda ta obejmuje przyznanie złotego medalu oraz

100 000 USD dla programu prowadzącego konwersację,

który zdoła skutecznie zmylić wszystkich sędziów.

http://www.loebner.net/Prizef/loebner-prize.html