• No results found

Machine-Learning in Natural Language Processing

N/A
N/A
Protected

Academic year: 2021

Share "Machine-Learning in Natural Language Processing"

Copied!
40
0
0

Loading.... (view fulltext now)

Full text

(1)

VYSOK ´

E U ˇ

CEN´I TECHNICK ´

E V BRN ˇ

E

BRNO UNIVERSITY OF TECHNOLOGY

FAKULTA INFORMA ˇ

CN´ICH TECHNOLOGI´I

´

USTAV PO ˇ

C´ITA ˇ

COV ´

E GRAFIKY A MULTIM ´

EDI´I

FACULTY OF INFORMATION TECHNOLOGY

DEPARTMENT OF COMPUTER GRAPHICS AND MULTIMEDIA

STROJOV ´

E U ˇ

CEN´I V P ˇ

RIROZEN ´

EM JAZYCE

BAKAL ´

A ˇ

RSK ´

A PR ´

ACE

BACHELOR’S THESIS

AUTOR PR ´

ACE

LUBOM´IR OTRUSINA

AUTHOR

(2)

VYSOK ´

E U ˇ

CEN´I TECHNICK ´

E V BRN ˇ

E

BRNO UNIVERSITY OF TECHNOLOGY

FAKULTA INFORMA ˇ

CN´ICH TECHNOLOGI´I

´

USTAV PO ˇ

C´ITA ˇ

COV ´

E GRAFIKY A MULTIM ´

EDI´I

FACULTY OF INFORMATION TECHNOLOGY

DEPARTMENT OF COMPUTER GRAPHICS AND MULTIMEDIA

STROJOV ´

E U ˇ

CEN´I V P ˇ

RIROZEN ´

EM JAZYCE

MACHINE-LEARNING IN NATURAL LANGUAGE PROCESSING

BAKAL ´

A ˇ

RSK ´

A PR ´

ACE

BACHELOR’S THESIS

AUTOR PR ´

ACE

LUBOM´IR OTRUSINA

AUTHOR

VEDOUC´I PR ´

ACE

doc. RNDr. PAVEL SMR ˇ

Z, Ph.D.

SUPERVISOR

(3)

Zad´

an´ı

Strojov´e uˇcen´ı v pˇrirozen´em jazyce

1. Seznamte se s pokroˇcil´ymi metodami strojov´eho uˇcen´ı pouˇz´ıvan´ymi v oblasti zpra-cov´an´ı pˇrirozen´eho jazyka.

2. Na z´akladˇe z´ıskan´ych znalost´ı realizujte syst´em pro ”uˇcen´ı” z textu.

3. Vytvoˇrte testovac´ı sadu pro vyhodnocen´ı syst´emu.

4. Vyhodnot’te vytvoˇren´y syst´em pomoc´ı standardn´ıch metrik.

(4)

Licenˇcn´ı smlouva

Licenˇcn´ı smlouva je uloˇzena v arch´ıvu Fakulty informaˇcn´ıch technologi´ı Vysok´eho uˇcen´ı technick´eho v Brnˇe.

(5)

Abstrakt

Tato pr´ace se zab´yv´a zjednoznaˇcˇnov´an´ım slovn´ıch v´yznam˚u pomoc´ı metod strojov´eho uˇcen´ı. ˇ

Cten´aˇr je kr´atce sezn´amen s danou problematikou a jej´ım historick´ym v´yvojem. Jsou zde pops´any nejpouˇz´ıvanˇejˇs´ı metody a pˇr´ıstupy, speci´alnˇe pak naivn´ı Bayes˚uv klasifik´ator, kter´y je implementov´an v syst´emu. Je zde uveden i n´azorn´y pˇr´ıklad pro tento klasifik´ator. V prak-tick´e ˇc´asti je pops´an n´avrh syst´emu vyuˇz´ıvaj´ıc´ı tohoto klasifik´atoru vˇcetnˇe popisu r˚uzn´ych algoritm˚u pouˇzit´ych v syst´emu. Na z´avˇer je uvedeno vyhodnocen´ı v´ysledk˚u syst´emu a je-jich anal´yza. Implementovan´y syst´em se z´uˇcastnil soutˇeˇze v r´amci mezin´arodn´ı konfernce s´emantick´eho vyhodnocov´an´ı SemEval-2007.

Kl´ıˇcov´

a slova

strojov´e uˇcen´ı, uˇcen´ı s uˇcitelem, zpracov´an´ı pˇrirozen´eho jazyka, zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u, naivn´ı Bayes˚uv klasifik´ator, Senseval, Semeval

Abstract

This beachelor’s thesis deals with word sense disambiguation problem using the machine learning techniques. There are shortly presented problems of word sense disambiguation and its timeline. There are described methods and approaches, especially the naive Bayes clas-sifier that is implemented in the system. There’s illustrated a simple example of using this classifier. In a practical section is described project of system based on naive Bayes classifier including description of various algorithms used in the system. Finally there are described evaluation and analysis of the system. This created system took part in an international competition on semantic evaluation workshop SemEval-2007.

Keywords

machine learning, supervised learning, natural language processing, word sense disambigua-tion, naive Bayes classifier, Senseval, Semeval

Citace

Lubom´ır Otrusina: Strojov´e uˇcen´ı v pˇrirozen´em jazyce, bakal´aˇrsk´a pr´ace, Brno, FIT VUT v Brnˇe, 2007

(6)

Strojov´e uˇcen´ı v pˇrirozen´em jazyce

Prohl´

aˇsen´ı

Prohlaˇsuji, ˇze jsem tuto bakal´aˇrskou pr´aci vypracoval samostatnˇe pod veden´ım pana doc. RNDr. Pavla Smrˇze, Ph.D.

. . . . Lubom´ır Otrusina

11. kvˇetna 2007

Podˇekov´

an´ı

Dˇekuji doc. RNDr. Pavlu Smrˇzovi, Ph.D. za hodnotn´e rady a odborn´e veden´ı bˇehem m´e pr´ace.

c

Lubom´ır Otrusina, 2007.

Tato pr´ace vznikla jako ˇskoln´ı d´ılo na Vysok´em uˇcen´ı technick´em v Brnˇe, Fakultˇe in-formaˇcn´ıch technologi´ı. Pr´ace je chr´anˇena autorsk´ym z´akonem a jej´ı uˇzit´ı bez udˇelen´ı opr´avnˇen´ı autorem je nez´akonn´e, s v´yjimkou z´akonem definovan´ych pˇr´ıpad˚u.

(7)

Obsah

1 Uvod´ 3

2 Zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u 4

2.1 Vymezen´ı z´akladn´ıch pojm˚u . . . 4

2.2 Historick´y pˇrehled metod zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u . . . 5

2.2.1 Metody zaloˇzen´e na b´az´ıch znalost´ı. . . 6

2.2.2 Metody zaloˇzen´e na korpusech . . . 6

2.2.3 Hybridn´ı syst´emy. . . 7

2.3 WordNet. . . 7

2.3.1 Struktura WordNetu . . . 7

2.3.2 Znaˇcen´ı synset˚u ve WordNetu. . . 8

3 Strojov´e uˇcen´ı ve zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u 9 3.1 Metody uˇcen´ı s uˇcitelem . . . 9

3.2 Metody uˇcen´ı bez uˇcitele. . . 9

3.3 Naivn´ı Bayes˚uv klasifik´ator . . . 10

3.3.1 Pravdˇepodobnostn´ı model . . . 10

3.3.2 Praktick´e vyuˇzit´ı . . . 11

3.3.3 Pr´azdn´e nebo chybˇej´ıc´ı atributy. . . 11

3.3.4 Pˇr´ıklad urˇcov´an´ı v´yznamu naivn´ım Bayesov´ym klasifik´atorem . . . . 11

4 N´avrh syst´emu pro zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u 15 4.1 Pouˇz´ıvan´e datov´e sady . . . 15

4.1.1 Senseval-3 . . . 15

4.1.2 Semeval-1 . . . 16

4.2 Vyuˇzit´ı WordNetu v syst´emu . . . 16

4.3 Jednoduch´y algoritmus uˇcen´ı s uˇcitelem . . . 16

4.4 Princip pr´ace s naivn´ım Bayesov´ym klasifik´atorem . . . 17

4.4.1 Naˇcten´ı datov´ych vstup˚u . . . 17

4.4.2 Anal´yza tr´enovac´ıch dat . . . 17

4.4.3 Urˇcen´ı spr´avn´eho v´yznamu slova . . . 18

4.5 Od slov k vektoru pˇr´ıznak˚u . . . 18

4.6 Nastavov´an´ı parametr˚u syst´emu. . . 19

5 Vyhodnocen´ı a v´ysledky syst´emu 23 5.1 Zp˚usoby vyhodnocov´an´ı zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u . . . 23

5.1.1 Vyhodnocov´an´ı zaloˇzen´e na poˇctu spr´avnˇe urˇcen´ych v´yznam˚u . . . . 23

(8)

5.1.3 Granularita rozliˇsov´an´ı v´yznam˚u . . . 25

5.1.4 Konference Senseval (Semeval) . . . 26

5.2 Diskuze v´ysledk˚u . . . 26

5.2.1 V´ysledky syst´emu . . . 26

5.2.2 Srovn´an´ı obou implementovan´ych algoritm˚u . . . 27

5.2.3 Pˇr´ıklad ˇspatn´eho urˇcen´ı v´yznamu syst´emem . . . 28

5.2.4 N´avrh odstranˇen´ı nˇekter´ych nedostatk˚u . . . 30

5.3 Technick´e parametry syst´emu . . . 31

6 Z´avˇer 32

(9)

Kapitola 1

´

Uvod

Pˇrirozen´y jazyk je jazyk pouˇz´ıvan´y lidmi k bˇeˇzn´e komunikaci a sdˇelov´an´ı informac´ı. Narozd´ıl od poˇc´ıtaˇcov´ych programovac´ıch jazyk˚u se liˇs´ı svou v´agnost´ı. Ve sv´e bakal´aˇrsk´e pr´aci se zab´yv´am zjednoznaˇcˇnov´an´ım slovn´ıch v´yznam˚u, coˇz je jedn´ım z mnoha probl´em˚u, kter´ymi se zab´yv´a obor zpracov´an´ı pˇrirozen´eho jazyka. Tento obor zasahuje jednak do oblasti umˇel´e inteligence, ale tak´e do lingvistiky. Jeho ´ukolem je urˇcit´a konverze mezi v´agn´ım pˇrirozen´ym jazykem a nˇejakou form´aln´ı reprezentac´ı, kter´e dok´aˇze porozumˇet poˇc´ıtaˇc.

Zpracov´an´ım pˇrirozen´eho jazyka se odborn´ıci zab´yvaj´ı jiˇz nˇekolik des´ıtek let. Mezi hlavn´ı probl´emy, kter´e se snaˇz´ı vyˇreˇsit, patˇr´ı napˇr. z´ısk´av´an´ı a extrakce informac´ı z text˚u, strojov´y pˇreklad mezi r˚uzn´ymi jazyky, rozpozn´av´an´ı mluven´e ˇreˇci, korekce gramatick´ych chyb nebo automatick´e odpov´ıd´an´ı na ot´azky.

Pro ´upln´e ˇreˇsen´ı vˇsech tˇechto probl´em˚u je nezbytn´e, aby poˇc´ıtaˇc porozumˇel, nebo se ale-spoˇn pokusil analyzovat pˇr´ısluˇsn´y pˇrirozen´y jazyk. Prostˇredkem pro porozumˇen´ı pˇ riroze-n´emu jazyku m˚uˇze b´yt nˇejak´a b´aze znalost´ı (napˇr. ve formˇe s´emantick´e s´ıtˇe), kter´a ob-sahuje vazby mezi slovy konkr´etn´ıho pˇrirozen´eho jazyka. Tyto b´aze znalost´ı b´yvaj´ı zpravidla vytvoˇreny ruˇcnˇe. Pˇri anal´yze pˇrirozen´eho jazyka se pak setk´av´ame s r˚uzn´ymi d´ılˇc´ımi pod-probl´emy, jako je v´ıcev´yznamovost slov nebo kontextov´e z´avislosti. Tyto podprobl´emy n´am pom´ahaj´ı ˇreˇsit napˇr. metody prov´adˇej´ıc´ı rozpozn´av´an´ı slovn´ıch druh˚u (part-of-speech tag-ging) nebo zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u (word sense disambiguation).

Pˇri ˇreˇsen´ı probl´em˚u z kategorie zpracov´an´ı pˇrirozen´eho jazyka se ˇcasto vyuˇz´ıv´a algoritm˚u strojov´eho uˇcen´ı. Podle konkr´etn´ıch pˇr´ıpad˚u pak m˚uˇze j´ıt o algoritmy uˇcen´ı s uˇcitelem, uˇcen´ı bez uˇcitele nebo r˚uzn´e kombinace. J´a jsem pro svou pr´aci zvolil naivn´ı Bayes˚uv klasifik´ator, coˇz je algoritmus uˇcen´ı s uˇcitelem. Tento klasifik´ator je relativnˇe jednoduch´y a m´a velkou ´

uspˇeˇsnost v mnoh´ych odvˇetv´ıch zpracov´an´ı pˇrirozen´eho jazyka.

Druh´a kapitola (2) zahrnuje ´uvod do problematiky zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u, struˇcn´y popis v´yvoje a pouˇz´ıvan´e metody a pˇr´ıstupy. Ve tˇret´ı kapitole (3) jsou struˇcnˇe pops´any typy metod strojov´eho uˇcen´ı, kter´e jsou pouˇz´ıv´any pro ˇreˇsen´ı tohoto probl´emu. Zbytek kapitoly je pak vˇenov´an popisu naivn´ıho Bayesova klasifik´atoru. ˇCtvrt´a kapitola (4) se vˇenuje praktick´e ˇc´asti bakal´aˇrsk´e pr´ace. Je zde vysvˇetlena implementace a probl´emy vyskytuj´ıc´ı se pˇri n´avrhu programu. Pˇredposledn´ı kapitola (5) obsahuje prezentaci a zhod-nocen´ı v´ysledk˚u programu. Jsou zde tak´e uvedeny zp˚usoby vyhodnocov´an´ı. V z´avˇeru (6) jsou pak struˇcnˇe shrnuty dosaˇzen´e v´ysledky a je zde uveden n´astin dalˇs´ıho v´yvoje v oblasti zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u.

(10)

Kapitola 2

Zjednoznaˇ

nov´

an´ı slovn´ıch

yznam˚

u

Zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u se snaˇz´ı urˇcit spr´avn´y v´yznam v´ıcev´yznamov´ych slov v urˇcit´em kontextu. Tento probl´em ˇreˇs´ı rodil´y mluvˇc´ı ˇcasto intuitivnˇe a obyˇcejnˇe mu neˇcin´ı ˇz´adn´e probl´emy. Jin´a situace vˇsak nast´av´a u poˇc´ıtaˇce. Poˇc´ıtaˇc pˇrirozen´emu jazyku nerozum´ı, a proto je pro nˇej obt´ıˇzn´e urˇcit spr´avn´y v´yznam slova. Je nutn´e naj´ıt vhodn´e metody a vlastnosti, podle kter´ych by byl poˇc´ıtaˇc s urˇcitou ´uspˇeˇsnost´ı schopen spr´avn´y v´yznam identifikovat.

2.1

Vymezen´ı z´

akladn´ıch pojm˚

u

Pro uveden´ı do probl´emu je nutn´e sezn´amit se nejdˇr´ıve s nˇekter´ymi z´akladn´ımi pojmy. Jedn´a se zejm´ena o definov´an´ı pojm˚u t´ykaj´ıc´ıch se v´yznamu slova. N´asleduj´ıc´ı informace poch´azej´ı z [4].

Pojem “v´yznam slova nebo souslov´ı” (d´ale jen slovo) m˚uˇzeme definovat jako informaˇcn´ı obsah slova. Kaˇzd´e slovo m˚uˇze m´ıt dva v´yznamy:

• slovn´ı (lexik´aln´ı) – oznaˇcuje urˇcit´y jev skuteˇcnosti; je to v´yznam, kter´y m´a slovo samo o sobˇe

• mluvnick´y (gramatick´y) – tento v´yznam slovo nab´yv´a aˇz ve spojen´ı s jin´ymi slovy ve vˇetˇe; vyjadˇruje r˚uzn´e mluvnick´e kategorie (napˇr. rod, ˇc´ıslo, p´ad ap.)

Ve sv´e bakal´aˇrsk´e pr´aci se zab´yv´am pouze urˇcov´an´ım lexik´aln´ıho v´yznamu slova. Mlu-vnick´ym v´yznamem se zde zab´yvat nebudu. Pokud se pokouˇs´ıme definovat lexik´aln´ı v´yznam (d´ale jen v´yznam) nˇejak´eho slova, dˇel´ame to vˇetˇsinou pouˇzit´ım urˇcit´eho jazyka. V´yznam slova m˚uˇze b´yt definov´an pomoc´ı

• pˇrirozen´eho jazyka (vˇcetnˇe jazyka, v nˇemˇz je slovo, jehoˇz v´yznam definujeme)

• form´aln´ıho jazyka (napˇr. vhodn´y matematick´y nebo logick´y kalkul)

Z toho se vymyk´a tzv. ostenz´ıvn´ı zp˚usob definov´an´ı v´yznam˚u slov pˇrirozen´eho jazyka (napˇr. toto je st˚ul, toto je zv´ıˇre,. . . ). Na tomto zp˚usobu je zaloˇzeno uˇcen´ı se jazyku u ˇclovˇeka. Pokud m´a nˇekter´e slovo v´ıce neˇz jeden v´yznam, pak mluv´ıme o v´ıcev´yznamov´em slovu. V´yznamy v´ıcev´yznamov´ych slov m˚uˇzeme rozdˇelit na:

(11)

• z´akladn´ı (prim´arn´ı, p˚uvodn´ı) napˇr. oko – org´an zraku

• druhotn´y (sekund´arn´ı, odvoze´y) napˇr. oko na punˇcoˇse

Pro kaˇzd´y pˇrirozen´y jazyk je procento v´ıcev´yznamov´ych slov odliˇsn´e. S v´ıcev´yznamovost´ı slov ´uzce souvis´ı pojmy polys´emie a homonymie. I pˇresto, ˇze se jedn´a o dva odliˇsn´e pojmy, jsou ˇcasto zamˇeˇnov´any. Polys´emie neboli mnohoznaˇcnost je existence v´ıce v´yznam˚u pro jednu formu, kde v´yznamy slova maj´ı jistou genetickou podobnost (napˇr. jazyk – org´an nebo jazyk u boty). Na druh´e stranˇe homonymie je existence v´ıce v´yznam˚u pro jednu formu, ale mezi v´yznamy nen´ı ˇz´adn´a spojitost – hl´askov´a shoda je ˇcistˇe n´ahodn´a (napˇr. role – divadeln´ı hra, pole, svitek). Homonymii m˚uˇzeme d´ale dˇelit na:

• lexik´aln´ı (napˇr. vinn´y – od slova v´ıno nebo vina)

• morfologick´a (napˇr. bratra – vyjadˇruje 2. i 4. p. sg.)

• slovnˇe druhov´a (napˇr. veˇcer – podst. jm., pˇr´ıslovce)

Morfologickou a slovnˇe druhovou homonymi´ı se ve sv´e bakal´aˇrsk´e pr´aci nebudu zab´yvat. Proces v´ybˇeru spr´avn´eho v´yznamu slova v dan´em kontextu se naz´yv´a zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u.

2.2

Historick´

y pˇ

rehled metod zjednoznaˇ

nov´

an´ı slovn´ıch v´

yz-nam˚

u

Nejen ve zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u, ale v cel´e oblasti zpracov´an´ı pˇrirozen´eho jazyka existuj´ı dva smˇery ˇreˇsen´ı probl´em˚u. Oba jsou zaloˇzeny na jin´ych principech a vyuˇz´ıvaj´ı odliˇsn´e techniky.

Prvn´ı pˇr´ıstup se snaˇz´ı co nejv´ıce porozumˇet zpracov´avan´emu textu. K tomu se nejˇcastˇeji vyuˇz´ıv´a r˚uzn´ych, vˇetˇsinou ruˇcnˇe vytvoˇren´ych, b´az´ı znalost´ı. Mezi nejrozˇs´ıˇrenˇejˇs´ı b´aze patˇr´ı Machine Readable format (Oxford English Dictionary, Collins), thesaury (Roget˚uv the-saurus) nebo s´emantick´e lexikony (WordNet, EuroWordNet). Z hlediska zjednoznaˇcˇnov´an´ı v´yznam˚u tyto b´aze typicky obsahuj´ı informace jako v´yˇcet v´yznam˚u, jejich definice, pˇr´ıklady pouˇzit´ı, synonyma a r˚uzn´e vazby mezi nimi. Tyto metody se souhrnnˇe oznaˇcuj´ı jako metody zaloˇzen´e na b´az´ıch znalost´ı.

Druh´y pˇr´ıstup se nesnaˇz´ı porozumˇet textu, pouze vyuˇz´ıv´a obrovsk´e mnoˇzstv´ı dat, na z´akladˇe jejichˇz anal´yzy hled´a r˚uzn´e podobnosti, ze kter´ych pak vytv´aˇr´ı pravidla pro zjed-noznaˇcˇnov´an´ı. Zde se ve velk´e m´ıˇre vyuˇz´ıv´a r˚uzn´ych algoritm˚u strojov´eho uˇcen´ı. M˚uˇze se jednat o algoritmy uˇcen´ı s uˇcitelem, bez uˇcitele nebo r˚uzn´e kombinace. Urˇcov´an´ı v´yznam˚u prob´ıh´a na z´akladˇe pravidel, kter´a syst´em automaticky generuje ze vstupn´ıch dat. Tato pravidla jsou tvoˇrena bˇehem anal´yzy slov v kontextu. Mezi pouˇz´ıvan´e metody strojov´eho uˇcen´ı patˇr´ı napˇr. shlukov´an´ı a klasifikace. Tyto metody m˚uˇzeme souhrnnˇe nazvat jako metody zaloˇzen´e na korpusech.

V t´eto kapitole jsou pops´any pouze nˇekter´e v´yznamn´e kroky a smˇery ve zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u. Informace o historick´em v´yvoji poch´azej´ı z [1], kde m˚uˇze ˇcten´aˇr v pˇr´ıpadˇe z´ajmu naj´ıt vyˇcerp´avaj´ıc´ı informace.

(12)

2.2.1 Metody zaloˇzen´e na b´az´ıch znalost´ı

Koncem 50. let probl´em zjednoznaˇcˇnov´an´ı v´yznam˚u ´uzce souvisel se strojov´ym pˇrekladem. Nˇekolik vˇedc˚u uvedlo, ˇze pro ´uspˇeˇsn´y strojov´y pˇreklad z jednoho jazyka do jin´eho, je urˇcen´ı spr´avn´eho v´yznamu slova nezbytn´e. Tento probl´em se t´yk´a slov, kter´a maj´ı po pˇreloˇzen´ı do c´ılov´eho jazyka v´ıce moˇzn´ych alternativ. Napˇr´ıklad anglick´e slovo “bed” se m˚uˇze do fran-couzˇstiny pˇreloˇzit jako “le lit” (postel) nebo “le parterre” (z´ahon).

Nˇekolik vˇedc˚u zkoumalo vliv velikosti kontextu v´ıcev´yznamov´eho slova na spr´avn´e urˇcen´ı jeho v´yznamu. Pokusem bylo zjiˇstˇeno, ˇze ´uspˇeˇsnost pˇrekladu nebyla u kontextu tvoˇren´ym ˇ

ctyˇrmi slovy nijak v´yznamnˇe odliˇsn´a od pˇr´ıpadu, kdy byl poskytnut cel´y kontext. T´eto vlastnosti se vyuˇz´ıv´a dodnes.

V 60. letech byl ve zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u poprv´e pouˇzit Bayes˚uv teor´em. Skupina vˇedc˚u se snaˇzila odhadnout ˇcetnosti v´yskyt˚u v´yznam˚u slov pro odliˇsn´a odvˇetv´ı text˚u, na z´akladˇe kter´ych pak urˇcili pravdˇepodobnost kaˇzd´eho v´yznamu pro urˇcit´y kontext. Tento pˇr´ıstup dosahoval tehdy ´uspˇeˇsnosti asi 90 %.

V 60. a 70. letech nastal velk´y r˚ust v´yzkum˚u v oblasti umˇel´e inteligence. N´asledkem toho je vˇetˇsina metod zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u z tohoto obdob´ı zaloˇzena na umˇel´e inteligenci. Tyto metody se snaˇzily detailnˇe porozumˇet pˇrirozen´emu jazyku a pokouˇsely se r˚uzn´ym zp˚usobem modelovat znalosti z lingvistick´e teorie. K tomu vˇetˇsinou vyuˇz´ıvaly ruˇcnˇe vytvoˇren´e s´emantick´e s´ıtˇe.

Aˇckoliv byly nˇekter´e metody zaloˇzen´e na umˇel´e inteligenci velmi zaj´ımav´e, jejich pou-ˇ

zitelnost byla znaˇcnˇe omezena. Zejm´ena proto, ˇze pouˇz´ıvaly ruˇcnˇe vytvoˇren´e b´aze znalost´ı, kter´e pokr´yvaly pouze specifickou oblast pˇrirozen´eho jazyka.

Postupem ˇcasu se zaˇcalo objevovat ˇc´ım d´al v´ıce pouˇziteln´ych b´az´ı znalost´ı. Takov´ymi b´azemi byly slovn´ıky, thesaury nebo lexikony. Aˇckoliv se zde objevila snaha o automatickou extrakci informac´ı z dat, byly tyto rozs´ahl´e b´aze vˇetˇsinou vytv´aˇreny ruˇcnˇe.

Pˇri tvorbˇe lexikon˚u byl v´yznamn´y ´uspˇech zaznamen´an v roce 1990, kdy byl na Prince-tonsk´e univerzitˇe vytvoˇren profesorem Millerem a jeho kolektivem lexikon anglick´eho jazyka nazvan´y WordNet. WordNet patˇr´ı k tzv. v´yˇctov´ym lexikon˚um, kde jsou uzly tvoˇreny zn´ a-m´ymi v´yznamy pro slova. Opakem v´yˇctov´eho lexikonu je generativn´ı lexikon, v nˇemˇz jsou v´yznamov´e kategorie generov´any na z´akladˇe urˇcit´ych pravidel. V´yvoj WordNetu neust´ale prob´ıh´a, jeho souˇcasn´a verze je 3.0.

2.2.2 Metody zaloˇzen´e na korpusech

V posledn´ıch letech se st´avaj´ı st´ale v´ıce dostupn´e obrovsk´e, vˇetˇsinou ruˇcnˇe anotovan´e zdroje dat, kter´e se daj´ı vyuˇz´ıt pro empirick´e metody v mnoh´ych odvˇetv´ıch zpracov´an´ı pˇrirozen´eho jazyka. Tyto zdroje dat naz´yv´ame korpusy.

Korpusem rozum´ıme vnitˇrnˇe strukturovan´y a ucelen´y soubor text˚u dan´eho jazyka v elektronick´e podobˇe. Korpusy jsou organizov´any se zˇretelem na ´uˇcel jejich pouˇzit´ı, kter´e m˚uˇze b´yt vˇseobecn´eho charakteru nebo specificky zamˇeˇren´e na urˇcitou oblast zpracov´an´ı pˇrirozen´eho jazyka. Mohou b´yt sloˇzeny pouze z hol´eho textu nebo mohou obsahovat meta-data, kter´a poskytuj´ı r˚uzn´e informace vzhledem k pouˇzit´ı korpusu. Tato metadata mohou b´yt do korpusu pˇrid´av´ana ruˇcnˇe nebo automaticky (strojovˇe). Ruˇcn´ı anotov´an´ı korpus˚u je vzhledem k jejich velikosti znaˇcnˇe n´akladn´e. Na druhou stranu automatick´e anotov´an´ı m˚uˇze znamenat jist´e zanesen´ı chyby bˇehem anotov´an´ı.

Prvn´ım korpusem byl korpus anglick´eho jazyka vytvoˇren´y na Brownovˇe univerzitˇe v roce 1964. Tento korpus pomohl odhalit statistick´e charakteristiky slov (napˇr. ˇcetnosti slov

(13)

a slovn´ıch druh˚u) v angliˇctinˇe. V dneˇsn´ı dobˇe m´a jiˇz mnoho st´at˚u vytvoˇren´y sv˚uj vlastn´ı n´arodn´ı korpus, kter´y je jist´ym zp˚usobem reprezentativn´ım vzorkem jazyka dan´eho st´atu.

Hlavn´ım probl´emem u metod zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u zaloˇzen´ych na kor-pusech je nerovnomˇernost dat. Tento probl´em se sice net´yk´a pouze zjednoznaˇcov´an´ı, ale pr´avˇe tady vynik´a mnohem v´ıce neˇz jinde. Pot´ıˇz je v tom, ˇze nikdo nem˚uˇze zaruˇcit, aby se v korpusu vyskytovaly vˇsechny v´yznamy v´ıcev´yznamov´ych slov, a uˇz v˚ubec nem˚uˇze b´yt zaruˇceno, aby se vyskytovaly ve stejn´e m´ıˇre. Napˇr´ıklad v Brownovˇe korpusu, kter´y obsahuje milion slov, se slovoashvyskytuje pouze 8kr´at a z toho pouze jednou ve smyslu “jasan”.

2.2.3 Hybridn´ı syst´emy

Postupem ˇcastu se uk´azalo, ˇze lepˇs´ıch v´ysledk˚u lze dos´ahnout metodami vyuˇz´ıvaj´ıc´ımi obou dvou pˇr´ıstup˚u. Tam, kde metody zaloˇzen´e na b´azech znalost´ı selh´avaj´ı kv˚uli sv´e nedokon-alosti nebo nedostupnosti pro dan´y jazyk, m˚uˇzeme tyto nedostatky vhodnˇe doplnit meto-dami zaloˇzen´ymi na korpusech. V posledn´ı dobˇe tak vznikaj´ı hybridn´ı syst´emy vyuˇz´ıvaj´ıc´ı obou dvou pˇr´ıstup˚u.

Patˇr´ı sem napˇr. algoritmus bootstrapping. Algoritmus k funkci vyuˇz´ıv´a mal´eho mnoˇzstv´ı anotovan´ych dat pro tr´enov´an´ı, poch´azej´ıc´ıch z nˇejak´e b´aze znalost´ı, a mnohem vˇetˇs´ıho mnoˇzstv´ı neanotovan´ych dat k testov´an´ı. Algoritmus pracuje v cyklech, kdy v kaˇzd´em cyklu identifikuje vzory v tr´enovac´ı mnoˇzinˇe, urˇc´ı v´yznamy slov v testovac´ıch datech a vybere nˇekolik nejv´ıce reprezentativn´ıch instanc´ı, kter´e pak pˇrid´a do tr´enovac´ı mnoˇziny. Na takto novˇe vznikl´e tr´enovac´ı sadˇe se provede nov´e tr´enov´an´ı algoritmu a cel´y proces se opakuje.

Jistou modifikac´ı bootstrappingu je Yarowsk´eho algoritmus, kter´y nav´ıc obsahuje nˇekter´e heuristick´e metody, mezi nˇeˇz patˇr´ı pˇredpoklad nemˇennosti v´yznamu slova pro vˇsechny v´yskyty v jedn´e diskuzi, nebo pˇredpoklad nemˇennosti v´yznamu slova ve spojen´ı s jin´ym slovem.

2.3

WordNet

WordNet [5] je s´emantick´y lexikon anglick´eho jazyka vyv´ıjen´y profesorem Georgem A. Millerem a kol. na Princetonsk´e univerzitˇe od roku 1990. Je tvoˇren tzv. synsety, kter´e reprezentuj´ı podstatn´a jm´ena, pˇr´ıdavn´a jm´ena, slovesa a pˇr´ıslovce. Tyto synsety jsou spo-jov´any r˚uzn´ymi s´emantick´ymi vazbami. WordNet kombinuje v´yhody slovn´ık˚u i thesaur˚u a snaˇz´ı se tak vytvoˇrit lexikon mnohem pouˇzitelnˇejˇs´ım.

Od roku 2006 datab´aze WordNetu obsahuje asi 150 000 slov organizovan´ych do v´ıce neˇz 115 000 synset˚u. To vˇsechno je komprimov´ano do necel´ych 12 MB dat.

2.3.1 Struktura WordNetu

Kaˇzd´y synset obsahuje mnoˇzinu slov nebo slovn´ıch spojen´ı maj´ıc´ı stejn´y v´yznam. Odliˇsn´e v´yznamy t´ehoˇz slova jsou um´ıstˇeny v odliˇsn´ych synsetech. V´yznam kaˇzd´eho synsetu je charakterizov´an kr´atkou glosou. Synsety jsou navz´ajem propojeny ˇradou s´emantick´ych vazeb. Pˇr´ıkladem nˇekter´ych vazeb v z´avislosti na typu synsetu m˚uˇze b´yt:

• Podstatn´a jm´ena

– hypernym– Y je hypernym X, kdyˇz kaˇzd´e X je (druh) Y (napˇr. slovo “zv´ıˇre” je hypernym slova “pes”)

(14)

– hyponym – Y je hyponym X, kdyˇz kaˇzd´e Y je (druh) X (napˇr. slovo “st˚ul” je hyponym slova “n´abytek”)

– holonym – Y je holonym X, kdyˇz X je ˇc´ast Y (napˇr. slovo “strom” je holonym slova “vˇetev”)

– meronym– Y je meronym X, kdyˇz Y je ˇc´ast X (napˇr. slovo “klika” je meronym slova “dveˇre”)

• Slovesa

– hypernym – sloveso Y je hypernym slovesa X, kdyˇz aktivita X je (druhem) Y (napˇr. sloveso “sportovat” je hypernym slovesa “bˇehat”)

– troponym – sloveso Y je troponym slovesa X, kdyˇz aktivita Y prov´ad´ı nˇejak´ym zp˚usobem X (napˇr. sloveso “kr´aˇcet” je troponym slovesa “j´ıt”)

– d˚usledek – sloveso Y je d˚usledek X, kdyˇz dˇel´an´ım X mus´ı b´yt udˇel´ano Y (napˇr. sloveso “sp´at” je d˚usledek slova “chr´apat”)

Liter´aly mohou b´yt tak´e spojov´any r˚uzn´ymi lexik´aln´ımi vztahy jako napˇr. vztah ozna-ˇ

cuj´ıc´ı antonymum.

2.3.2 Znaˇcen´ı synset˚u ve WordNetu

Je patrn´e, ˇze z WordNetu lze z´ıskat mnoho informac´ı. Mezi nejz´akladnˇejˇs´ı moˇzn´e informace vˇsak patˇr´ı v´ypis v´yznam˚u urˇcit´eho slova. Tyto v´yznamy jsou ve WordNetu pˇresnˇe oznaˇceny a n´aleˇz´ı jim specifick´y k´od. Tento k´od se pouˇz´ıv´a pro oznaˇcov´an´ı v´yznam˚u i v datech, kter´e pouˇz´ıv´am. K´od m´a n´asledujic´ı tvar z´apisu:

lemma%ss-type:lex-filenum:lex-id:head-word:head-id,

kdelemmaznaˇc´ı z´akladn´ı tvar slova,ss-typeznaˇc´ı typ synsetu,lex-filenum reprezen-tuje lexikografick´y soubor obsahuj´ıc´ı synset, lex-id znaˇc´ı konkr´etn´ı v´yznam v dan´em souboru. Zbyl´e ˇc´asti oznaˇcen´ı se pouˇz´ıvaj´ı ve zvl´aˇstn´ıch pˇr´ıpadech. Pˇr´ıkladem takov´eho znaˇcen´ı m˚uˇze b´ytbank%1:17:01::.

(15)

Kapitola 3

Strojov´

e uˇ

cen´ı ve zjednoznaˇ

nov´

an´ı

slovn´ıch v´

yznam˚

u

Pro zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u m˚uˇzeme s v´yhodou pouˇz´ıt metod strojov´eho uˇcen´ı. Metody strojov´eho uˇcen´ı m˚uˇzeme rozdˇelit do dvou z´akladn´ıch skupin. Prvn´ı skupinu tvoˇr´ı metody uˇcen´ı s uˇcitelem, vyˇzaduj´ıc´ı jist´a tr´enovac´ı data, na kter´ych se “nauˇc´ı” rozpozn´avat v´yznamy. Druhou skupinou jsou metody uˇcen´ı bez uˇcitele, kter´e ˇz´adn´a takov´a data nemaj´ı, a mus´ı prov´est pˇriˇrazen´ı spr´avn´eho v´yznamu pouze na z´akladˇe anal´yzy vstupn´ıch dat. Informace z t´eto kapitoly poch´azej´ı z [5] a [3].

3.1

Metody uˇ

cen´ı s uˇ

citelem

Tyto metody tvoˇr´ı algoritmy vyuˇz´ıvaj´ıc´ı mnoˇzinu tr´enovac´ıch dat. Algoritmy identifikuj´ı vzory v pˇr´ıkladech dan´ych pro jednotliv´e tˇr´ıdy v´yznamu v´ıcev´yznamov´eho slova. Tyto vzory jsou zobecnˇeny do pravidel. Pravidla se pak n´aslednˇe pouˇzij´ı pˇri klasifikaci nov´ych pˇr´ıpad˚u. Typicky se jedn´a o r˚uzn´e klasifik´atory a klasifikaˇcn´ı algoritmy. Tˇechto algoritm˚u je mnoho a vˇetˇsina z nich vykazuje na poli zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u dobr´e v´ysledky. Mezi nejpouˇz´ıvanˇejˇs´ı metody uˇcen´ı s uˇcitelem patˇr´ı algoritmy podp˚urn´ych vektor˚u, rozho-dovac´ı stromy a seznamy, naivn´ı Bayes˚uv klasifik´ator nebo neuronov´e s´ıtˇe.

3.2

Metody uˇ

cen´ı bez uˇ

citele

Uˇcen´ı bez uˇcitele zahrnuje metody, kter´e se snaˇz´ı ve velk´e mnoˇzinˇe dat identifikovat vzory. Nemaj´ı pˇritom k dispozici ˇz´adn´a anotovan´a data, ani jin´e extern´ı znalosti. Vzory jsou pouˇz´ıv´any pro rozdˇelen´ı mnoˇziny dat do shluk˚u. Tyto metody nemaj´ı ˇz´adn´e ponˇet´ı o sku-teˇcn´em rozdˇelen´ı slov do v´yznam˚u. Je proto moˇzn´e, ˇze mohou naj´ıt odliˇsn´y poˇcet shluk˚u, neˇz jak´y je ve skuteˇcnosti poˇcet v´yznam˚u.

Zde se s v´yhodou pouˇz´ıvaj´ı r˚uzn´e druhy aglomerativn´ıho shlukov´an´ı, kter´e na zaˇc´atku vytvoˇr´ı tolik shluk˚u, kolik instanc´ı maj´ı vstupn´ı data. N´aslednˇe je stanoven zp˚usob mˇeˇren´ı podobnosti instanc´ı a je nastavena prahov´a hranice. Pokud jsou dva shluky bl´ıˇze neˇz je minim´aln´ı vzd´alenost urˇcen´a prahovou hranic´ı, dojde k jejich slouˇcen´ı. Tento cyklus se opakuje do t´e doby, neˇz obdrˇz´ıme poˇzadovan´y poˇcet shluk˚u.

Jinou pouˇz´ıvanou metodou je zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u pomoc´ı paraleln´ıch text˚u. Tato metoda nevyˇzaduje ˇz´adn´a anotovan´a data, nicm´enˇe data v obou jazyc´ıch mus´ı

(16)

b´yt zarovn´ana. Takov´a data se daj´ı bˇeˇznˇe naj´ıt na internetu nebo ve speci´aln´ıch kor-pusech (UN Parallel Text, Canadian Hansards). Pomoc´ı zarovnan´ych text˚u jsou n´aslednˇe objevov´any odliˇsnosti mezi v´yznamy.

3.3

Naivn´ı Bayes˚

uv klasifik´

ator

Naivn´ı Bayes˚uv klasifik´ator je jednoduch´y klasifik´ator zaloˇzen´y na Bayesovˇe teor´emu s pˇ red-pokladem nez´avislosti mezi pˇr´ıznaky. Tento klasifik´ator m˚uˇzeme s v´yhodou pouˇz´ıt tam, kde jin´e klasifik´atory (rozhodovac´ı stromy) selh´avaj´ı kv˚uli nemoˇznosti pouˇz´ıt velk´e mnoˇzstv´ı pˇr´ıznak˚u. Naivn´ı Bayes˚uv klasifik´ator m˚uˇze efektivnˇe pracovat i s nˇekolika stovkami aˇz tis´ıci pˇr´ıznaky. Tento klasifik´ator je velmi ´uspˇeˇsn´y a velmi ˇcasto se vyuˇz´ıv´a k r˚uzn´ym ´uˇcel˚um. Mezi nejˇcastˇejˇs´ı pouˇzit´ı patˇr´ı klasifikace text˚u, zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u nebo filtrov´an´ı spamu.

V praxi se klasifik´ator pouˇz´ıv´a tak, ˇze se podle vzorce stanov´ı pravdˇepodobnosti pro vˇsechny moˇzn´e v´yznamy a z nich se vybere v´yznam s nejvˇetˇs´ı pravdˇepodobnost´ı. V´yhodou naivn´ıho Bayesova klasifik´atoru je, ˇze mu staˇc´ı pouze mal´e mnoˇzstv´ı tr´enovac´ıch dat pro odhadnut´ı potˇrebn´ych pravdˇepodobnost´ı.

3.3.1 Pravdˇepodobnostn´ı model

Pravdˇepodobnostn´ı model pro klasifik´ator je modelem podm´ınˇen´ym:

p(C |F1, . . . , Fn),

kde C je z´avisl´a tˇr´ıdn´ı promˇenn´a a F1, . . . , Fn pˇr´ıznakov´e promˇenn´e. Pouˇzit´ım Bayesova

teor´emu m˚uˇzeme tento vztah zapsat jako:

p(C |F1, . . . , Fn) =

p(C)·p(F1, . . . , Fn|C)

p(F1, . . . , Fn)

V praxi n´as ˇcasto nezaj´ım´a konkr´etn´ı hodnota pravdˇepodobnosti, ale jej´ı relativn´ı pomˇer k ostatn´ım pravdˇepodobnostem. Proto m˚uˇzeme zlomek upravit odstranˇen´ım konstanty ve jmenovateli, ˇc´ımˇz se v´ypoˇcet zjednoduˇs´ı. Upraven´y vzorec pak bude vypadat n´asledovnˇe:

p(C)·p(F1, . . . , Fn|C)

Tento vztah m˚uˇzeme d´ale upravit na:

p(C, F1, . . . , Fn)

Opakovan´ym aplikov´an´ım definice podm´ınˇen´e pravdˇepodobnosti m˚uˇzeme vzorec upravit na tvar:

p(C, F1, . . . , Fn) = p(C)·p(F1, . . . , Fn|C)

p(C, F1, . . . , Fn) = p(C)·p(F1 |C)·p(F2, . . . , Fn|C, F1)

p(C, F1, . . . , Fn) = p(C)·p(F1 |C)·p(F2 |C, F1)·p(F3, . . . , Fn|C, F1, F2)

Nyn´ı uplatn´ıme pˇredpoklad nez´avislosti pˇr´ıznakov´ych promˇenn´ych, kter´y ˇr´ık´a, ˇze kaˇzd´y pˇr´ıznak Fi je podm´ınˇenˇe nez´avisl´y na kter´emkoliv jin´em pˇr´ıznaku Fj pro i 6= j. Tuto

(17)

p(Fi |C, Fj) = p(Fi |C)

Proto m˚uˇzeme pˇredch´azej´ıc´ı vzorec pˇrepsat na n´asleduj´ıc´ı tvar:

p(C, F1, . . . , Fn) = p(C)p(F1 |C)·p(F2 |C)·p(F3 |C). . . p(C, F1, . . . , Fn) = p(C) n Y i=1 ·p(Fi |C)

Celkovˇe vzato m˚uˇzeme pravdˇepodobnost toho, ˇze pˇri dan´ych pˇr´ıznac´ıch F1, F2, . . . , Fn

bude jev patˇrit do tˇr´ıdyC, urˇcit n´asleduj´ıc´ım vzorcem:

p(C, F1, . . . , Fn) = 1 Z ·P(C)· n Y i=1 ·p(Fi |C),

kde Z vyjadˇruje jistou konstantu, kter´a je z´avisl´a pouze na nepodm´ınˇen´ych pravdˇ epodob-nostech. Ve skuteˇcnosti m˚uˇzeme Z vyj´adˇrit jako:

Z = p(F1, . . . , Fn)

V´ysledn´e rozhodov´an´ı klasifik´atoru pak m˚uˇzeme zapsat vztahem:

classif y(f1, . . . , fn) = argmaxcP(C=c)· n

Y

i=1

p(Fi=fi|C =c)

3.3.2 Praktick´e vyuˇzit´ı

Jako pˇr´ıznaky se vˇetˇsinou berou v´yskyty kl´ıˇcov´ych slov v kontextu v´ıcev´yznamov´eho slova. Vˇsechny potˇrebn´e hodnoty, jako pravdˇepodobnosti v´yskyt˚u slov, podm´ınˇen´e pravdˇ epodob-nosti v´yskyt˚u slov u v´yznam˚u nebo pravdˇepodobnosti v´yskyt˚u v´yznam˚u, mohou b´yt odhad-nuty z mnoˇziny tr´enovac´ıch dat.

3.3.3 Pr´azdn´e nebo chybˇej´ıc´ı atributy

Pokud se nˇekter´e pˇr´ıznaky u jist´eho v´yznamu v˚ubec nevyskytuj´ı, je zˇrejm´e, ˇze pravdˇ epo-dobnost jejich v´yskytu bude nulov´a. To m˚uˇze ˇcinit velk´y probl´em. Ve v´ysledn´em n´asoben´ı vˇsech pravdˇepodobnost´ı by vyˇsel celkov´y v´ysledek roven nule. Probl´em se ˇreˇs´ı pˇrid´an´ım mal´e konstanty µ ke vˇsem pˇr´ıznakov´ym hodnot´am. Tento proces se naz´yv´a Laplaceovo vyhlazov´an´ı.

3.3.4 Pˇr´ıklad urˇcov´an´ı v´yznamu naivn´ım Bayesov´ym klasifik´atorem

Zde je zpracov´an jednoduch´y pˇr´ıklad pouˇzit´ı naivn´ıho Bayesova klasifik´atoru pro zjed-noznaˇcˇnov´an´ı slovn´ıch v´yznam˚u. Pravdˇepodobnosti v´yskyt˚u slov a v´yznam˚u jsou odhadnuty z datov´e sady Senseval-3. Pˇr´ıklad je proveden pro anglick´y jazyk a demonstruje urˇcov´an´ı spr´avn´eho v´yznamu podstatn´eho jm´enadisc.

(18)

Mnoˇzina tr´enovac´ıch dat obsahuje 222 instanc´ı. V pˇr´ıkladˇe budu poˇc´ıtat s hodnotami zaokrouhlen´ymi na ˇsest desetinn´ych m´ıst.

Slovodiscm´a podle s´emantick´eho lexikonu WordNet 2.1 n´asleduj´ıc´ı v´yznamy (ve Word-Netu jsou v´yznamy oznaˇceny pomoc´ı speci´aln´ıch k´od˚u, pro lepˇs´ı pˇrehlednost jsem zvolil vhodn´a anglick´a oznaˇcen´ı):

• disc%plateA thin flat circular plate.

• disc%musicSound recording consisting of a disc with continuous grooves.

• disc%computer A memory device consisting of a flat disk covered with a magnetic coating on which information is stored.

• disc%shapeSomething with a round shape like a flat circular plate.

M´ym programem byly pro tyto v´yznamy v tr´enovac´ıch datech zjiˇstˇeny n´asleduj´ıc´ıˇcetnosti.

V´yznam Cetnostˇ Pravdˇepodobnost v´yskytu v´yznamu

disc%plate 63 0,283784

disc%music 81 0,364865

disc%computer 45 0,202703

disc%shape 33 0,148649

celkem 222 1,000000

Tabulka 3.1: ˇCetnosti a pravdˇepodobnosti v´yskyt˚u v´yznam˚u.

D´ale je potˇreba vybrat vhodn´a kl´ıˇcov´a slova, podle kter´ych bude klasifik´ator rozhodovat. Princip v´ybˇeru kl´ıˇcov´ych slov je pops´an v kapitole 4.5. Tˇechto slov b´yv´a mnoho, ale pro demonstraci naˇseho pˇr´ıkladu jich bohatˇe staˇc´ı jen nˇekolik. Spokoj´ıme se tedy pouze s n´asleduj´ıc´ımi slovy:

floppy, drive, computer, sand, musical, record, year, wolfcraft.

Pro tato slova byly zjiˇstˇeny n´asleduj´ıc´ı podm´ınˇen´e pravdˇepodobnosti. Tabulka3.2ud´av´a pravdˇepodobnosti v´yskyt˚u kl´ıˇcov´ych slov pro vˇsechny tˇr´ıdy v´yznam˚u.

(19)

Tˇr´ıda v´yznamu

Slovo disc%plate disc%music disc%computer disc%shape floppy 0,000000 0,012346 0,266667 0,000000 drive 0,031746 0,000000 0,155556 0,000000 computer 0,000000 0,037037 0,422222 0,000000 musical 0,000000 0,074074 0,000000 0,000000 record 0,079365 0,617284 0,111111 0,030303 wolfcraft 0,111111 0,000000 0,000000 0,000000

Tabulka 3.2: Podm´ınˇen´e pravdˇepodobnosti v´yskyt˚u kl´ıˇcov´ych slov u dan´ych v´yznam˚u.

V tabulce3.2je vidˇet, ˇze nˇekter´e hodnoty pravdˇepodobnost´ı jsou nulov´e. To je zp˚usobeno t´ım, ˇze v tr´enovac´ıch datech nebyl pro dan´y v´yznam nalezen ˇz´adn´y v´yskyt slova.

Nyn´ı se m˚uˇzeme pomoc´ı naivn´ıho Bayesova klasifik´atoru pokusit urˇcit spr´avn´y v´yznam slovadisc v n´asleduj´ıc´ı vˇetˇe:

Operating system decided to eject a floppy disc from the drive.

V t´eto vˇetˇe se nach´azej´ı pouze nˇekter´a kl´ıˇcov´a slova a tofloppyadrive. Proto budeme ve vzorci poˇc´ıtat pouze s tˇemito dvˇema slovy.

Pravdˇepodobnost toho, ˇze pro pˇr´ıznaky F1, . . . Fn bude instance zaˇrazena do tˇr´ıdy C,

je podle zjednoduˇsen´eho vzorce d´ana:

p(C|F1, . . . Fn) = p(C)·

Y

i

p(Fi |C)

Uv´aˇz´ıme-li pak pouze vybran´a dvˇe slova, bude vzorec vypadat n´asledovnˇe:

p(C|f loppy, drive) = p(C)·p(f loppy|C)·p(drive|C)

Protoˇze poˇc´ıt´ame s pˇr´ıliˇs mal´ymi hodnotami a jejich n´asoben´ım dostaneme hodnoty jeˇstˇe menˇs´ı, je vhodn´e cel´y vzorec zlogaritmovat na tvar:

ln(p(C |f loppy, drive)) = ln(p(C)) +ln(p(f loppy |C)) +ln(p(drive|C))

Pˇri dosazov´an´ı do vzorce nesm´ıme zapomenout oˇsetˇrit nulov´e hodnoty pravdˇ epodob-nost´ı pˇriˇcten´ım vhodn´e konstanty. Tuto konstantu jsem zvolil 0,001.

(20)

ln(p(disc%plate | f loppy, drive)) = ln(p(disc%plate)) +

+ ln(p(f loppy | disc%plate)) + + ln(p(drive | disc%plate)) = = (−1,259542) +

+ (−6,907755) + + (−3,449989) = = −11,617286

ln(p(disc%music | f loppy, drive)) = ln(p(disc%music)) +

+ ln(p(f loppy | disc%music)) + + ln(p(drive | disc%music)) = = (−1,008228) +

+ (−4,394423) + + (−6,907755) = = −12,310466

ln(p(disc%computer | f loppy, drive)) = ln(p(disc%computer)) +

+ ln(p(f loppy | disc%computer)) + + ln(p(drive | disc%computer)) = = (−1,596013) +

+ (−1,321755) + + (−1,860749) = = −4,778517

ln(p(disc%shape | f loppy, drive)) = ln(p(disc%shape)) +

+ ln(p(f loppy | disc%shape)) + + ln(p(drive | disc%shape)) = = (−1,906167) +

+ (−6,907755) + + (−6,907755) = = −15,721677

Spr´avn´y v´yznam slovadiscje reprezentov´an nejvyˇsˇs´ı z tˇechto hodnot, coˇz je−4,778517, kter´a pˇr´ısluˇs´ı v´yznamudisc%computer.

(21)

Kapitola 4

avrh syst´

emu pro

zjednoznaˇ

nov´

an´ı slovn´ıch

yznam˚

u

Z kapitoly 3 je zˇrejm´e, jak se naivn´ı Bayes˚uv klasifik´ator pouˇz´ıv´a k ˇreˇsen´ı probl´emu zjed-noznaˇcˇnov´an´ı slovn´ıch v´yznam˚u. V t´eto kapitole se pokus´ım vysvˇetlit postup pouˇzit´ı to-hoto klasifik´atoru v m´em syst´emu wsd s d˚urazem na jist´e odliˇsnosti proti standardn´ım postup˚um. Je zde pops´an cel´y proces od anal´yzy dat pˇres v´ybˇer kl´ıˇcov´ych slov, ladˇen´ı pro-gramu aˇz po koneˇcn´e urˇcen´ı v´yznam˚u. Nejprve vˇsak ˇcten´aˇre sezn´am´ım s vlastn´ı strukturou pouˇz´ıvan´ych dat. Struˇcnˇe zde tak´e pop´ıˇsu dalˇs´ı metodu uˇcen´ı s uˇcitelem, kter´a je rovnˇeˇz implementov´ana do syst´emu.

4.1

Pouˇ

z´ıvan´

e datov´

e sady

Pˇri ˇreˇsen´ı probl´emu je nutn´e si nejprve obstarat vhodn´a data, na kter´ych se bude vlastn´ı zjednoznaˇcˇnov´an´ı prov´adˇet. Takov´ych dat se d´a sehnat relativnˇe mnoho, a to v r˚uzn´ych form´atech. Jist´y probl´em vˇsak nast´av´a ve chv´ıli, kdy si pro pr´aci zvol´ıme konkr´etn´ı pˇrirozen´y jazyk. Vˇetˇsina dat je totiˇz v anglick´em jazyce. Pro ˇceˇstinu je velmi obt´ıˇzn´e sehnat vhod-nou datovou sadu. Proto jsem se rozhodl pouˇz´ıt anglick´y jazyk. Ze vˇsech moˇzn´ych da-tov´ych sad jsem vybral ty, kter´e byly vytvoˇreny v r´amci konferenc´ı Senseval-3 a Semeval-1. Vzhledem k dlouholet´e tradici tˇechto konferenc´ı lze pˇredpokl´adat dobrou ´uroveˇn tˇechto datov´ych sad. Obˇe sady jsou tvoˇreny pro ˇreˇsen´ı probl´emu zjednoznaˇcˇnov´an´ı pouze vy-bran´ych v´ıcev´yznamov´ych slov a obsahuj´ı tyto slovn´ı druhy: podstatn´a jm´ena, pˇr´ıdavn´a jm´ena a slovesa. V obou datov´ych sad´ach jsou rozliˇsena data pro tr´enov´an´ı a testov´an´ı. Data jsou ve form´atu XML, jejich zpracov´an´ı je tedy velmi snadn´e.

4.1.1 Senseval-3

Data z konference Senseval-3 poch´azej´ı z roku 2004 a byla poˇr´ızena pˇres syst´em Open Mind Word Expert.1Pro zv´yˇsen´ı spolehlivosti dat byla kaˇzd´a instance kontrolov´ana alespoˇn dvˇema nez´avisl´ymi zdroji. Tato datov´a sada obsahuje pˇribliˇznˇe 60 podstatn´ych a pˇr´ıdavn´ych jmen a sloves. Podstatn´a a pˇr´ıdavn´a jm´ena jsou anotov´ana pomoc´ı v´yznam˚u poch´azej´ıc´ıch

1

Open Mind Word Expert je syst´em vyuˇz´ıvaj´ıc´ı lidsk´e schopnosti zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u a d´av´a tak poˇc´ıtaˇc˚um v´yhody lidsk´ych znalost´ı. V´ıce informac´ı lze z´ıskat na [6].

(22)

z WordNetu 1.7.1. Slovesa jsou anotov´ana pomoc´ı definic v´yznam˚u z thesauru Wordsmyth. Vˇsechna data poch´azej´ı z Britsk´eho n´arodn´ıho korpusu. Z datov´e sady jsou vyjmuty in-stance obsahuj´ıc´ı slovn´ı spojen´ı s rozpozn´avan´ymi slovy. S daty je rovnˇeˇz dod´av´ana mapa v´yznam˚u, kter´a zmenˇsuje mnoˇzinu podobn´ych v´yznam˚u na jeden. T´eto mapy se vyuˇz´ıv´a pˇri vyhodnocov´an´ı ´uspˇeˇsnosti. D´ıky t´eto mapˇe m˚uˇzeme r˚uznˇe zohledˇnovat pˇr´ıpady, kdy syst´em urˇc´ı v´yznam, kter´y sice nen´ı ´uplnˇe spr´avn´y, ale patˇr´ı do podobn´e v´yznamov´e skupiny jako spr´avn´y v´yznam slova.

4.1.2 Semeval-1

Data poch´azej´ıc´ı z konference Semeval-1 jsou velmi podobn´a dat˚um ze Sensevalu-3. Opˇet jsou zde obsaˇzeny tˇri z´akladn´ı slovn´ı druhy a to podstatn´a a pˇr´ıdavn´a jm´ena a slovesa. Data tentokr´at poch´azej´ı z tisku Wall Street Journal a Brownova korpusu. Z´asadn´ı zmˇena oproti dat˚um Senseval-3 je ta, ˇze tv˚urci se tentokr´at rozhodli neponechat moˇznost zp˚usobu urˇcov´an´ı v´yznam˚u zaloˇzen´eho na jemn´e granularitˇe. M´ısto klasicky definovan´ych slovn´ıch v´yznam˚u zde nalezneme pouze jak´esi v´yznamov´e mnoˇziny, kter´e vznikly slouˇcen´ım nˇekolika skuteˇcn´ych v´yznam˚u. Kaˇzd´emu v´ıcev´yznamov´emu slovu pak pˇr´ısluˇs´ı nˇekolik v´yznamov´ych skupin, kter´e jsou tvoˇreny v´yznamy z WordNetu.

4.2

Vyuˇ

zit´ı WordNetu v syst´

emu

Ve vstupn´ı mnoˇzinˇe dat se vyskytuje znaˇcn´e mnoˇzstv´ı slov. Tato slova ovˇsem nemus´ı b´yt ve sv´em z´akladn´ım tvaru (lemma). Proto program pracuje napˇr. s anglick´ymi slovy has

a have jako se zcela odliˇsn´ymi slovy. To by mohlo negativnˇe ovlivnit vlastn´ı proces zjed-noznaˇcˇnov´an´ı, protoˇze by mohlo doj´ıt k v´ybˇeru jin´ych kl´ıˇcov´ych slov. Pokud bychom napˇr. vyˇsetˇrovali slovo computerjako jednoho z moˇzn´ych kandid´at˚u na kl´ıˇcov´e slovo, mohlo by doj´ıt k situaci, kdy by pravdˇepodobnost v´ybˇeru tohoto slova byla oslabena v´yskyty slova

computers, coˇz jistˇe nechceme.

Proto jsem se rozhodl pˇred vlastn´ı anal´yzou dat nejprve vˇsechna slova pˇrev´est na je-jich z´akladn´ı tvar. Lemma je pro kaˇzd´e slovo z´ısk´av´ano z WordNetu. Pro jeho z´ısk´an´ı je ovˇsem potˇreba zn´at slovn´ı druh slova. Nˇekter´a slova totiˇz mohou nab´yvat podle situ-ace v´ıce slovn´ıch druh˚u. Kaˇzd´y slovn´ı druh pak m˚uˇze m´ıt jin´e lemmma. Napˇr´ıklad slovo

starting m´a ve WordNetu pro podstatn´e jm´eno lemma starting a pro sloveso lemma

start. Ve vstupn´ıch datech ovˇsem nen´ı uveden slovn´ı druh pro kaˇzd´e slovo. Nem˚uˇzeme tedy jednoznaˇcnˇe urˇcit jeho lemma. Bylo by moˇzn´e pouˇz´ıt speci´aln´ıch n´astroj˚u pro do-plnˇen´ı slovn´ıho druhu ke kaˇzd´emu slovu. Tento zp˚usob je vˇsak vzhledem k povaze probl´emu znaˇcnˇe sloˇzit´y. Rozhodl jsem se zvolit jednoduˇsˇs´ı zp˚usob. Z WordNetu se zjist´ı vˇsechna lemmata pro dan´e slovo a vybere se to, kter´e se vyskytuje nejˇcastˇeji. Ve WordNetu jsou uvedeny ˇcetnosti nejˇcastˇeji se vyskytuj´ıc´ıch v´yznam˚u slov. Je pravdˇepodobn´e, ˇze chybnˇe urˇcen´a lemmata nebudou m´ıt na funkˇcnost syst´emu nijak velk´y vliv. Lemmata jsou gen-erov´ana mnou vytvoˇren´ym programemlemmatizer.2

4.3

Jednoduch´

y algoritmus uˇ

cen´ı s uˇ

citelem

Kromˇe naivn´ıho Bayesova klasifik´atoru, kter´y bude pops´an d´ale, je v syst´emu implemen-tov´an jednoduch´y algoritmus zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u zaloˇzen´y na metodˇe uˇcen´ı

2

(23)

s uˇcitelem. Tento algoritmus je implementov´an z d˚uvodu moˇznosti urˇcit´eho srovn´an´ı s nai-vn´ım Bayesov´ym klasifik´atorem. Algoritmus je pˇrevzat z [3], kde je moˇzn´e tak´e naj´ıt bliˇzˇs´ı informace.

Algoritmus je zaloˇzen na principu tvorby urˇcit´ych skupin slov pro kaˇzd´y v´yznam. Na zaˇc´atku algoritmus vytvoˇr´ı tolik skupin, kolik m´a v´ıcev´yznamov´e slovo v´yznam˚u. N´ a-slednˇe proch´az´ı vˇsechny instance tr´enovac´ıch dat. Nejprve se pro kaˇzdou instanci zjist´ı skuteˇcn´y v´yznam slova. N´aslednˇe se vloˇz´ı do skupiny slov s pˇr´ısluˇsn´ym v´yznamem vˇsechna slova vyskytuj´ıc´ı se v kontextu v´ıcev´yznamov´eho slova. Tento postup se opakuje pro vˇsechny instance tr´enovac´ıch dat. Ve skupinˇe slov je pˇritom kaˇzd´e slovo pouze jednou. Algoritmus pak dostane testovac´ı data, u kter´ych m´a urˇcit spr´avn´y v´yznam. Proch´az´ı postupnˇe vˇsechna slova v kontextu testovac´ı instance. Kaˇzd´e skupinˇe slov pak zv´yˇs´ı sk´ore o jedniˇcku, pokud se pr´avˇe zpracov´avan´e slovo ve skupinˇe nach´az´ı. Po zpracov´an´ı vˇsech slov v kontextu al-goritmus vybere spr´avn´y v´yznam na z´akladˇe nejvyˇsˇs´ıho dosaˇzen´eho sk´ore. V pseudo-k´odu m˚uˇzeme algoritmus zapsat n´asleduj´ıc´ım zp˚usobem:

For each word Wi in C

For each sense Si in S

If Wi is in SENSE_i_BAG then Si = Si + 1;

correct_sense = max(Si);

kdeC znaˇc´ı kontext, W slovo a S v´yznam slova.

4.4

Princip pr´

ace s naivn´ım Bayesov´

ym klasifik´

atorem

Cel´y syst´em pro zjednoznaˇcˇnov´an´ı je implementov´an objektovˇe. Bˇeh algoritmu je ˇr´ızen vhodn´ym vol´an´ım metod r˚uzn´ych objekt˚u. Tento proces m´a urˇcit´y ˇr´ad, kter´y je potˇreba dodrˇzet.

4.4.1 Naˇcten´ı datov´ych vstup˚u

Po spuˇstˇen´ı programu je vytvoˇren hlavn´ı objektChief, kter´y zahrnuje veˇsker´e dalˇs´ı objekty a datov´e struktury. N´asleduje naˇcten´ı vˇsech potˇrebn´ych soubor˚u s daty. Tˇechto soubor˚u je nˇekolik a mohou b´yt ve form´atu Semeval-1 nebo Senseval-3. Prvn´ım ze soubor˚u je tr´enovac´ı datov´a sada. Tento soubor je tvoˇren stovkami aˇz tis´ıci instancemi tr´enovac´ıch dat. Kaˇzd´a instance obsahuje v´ıcev´yznamov´e slovo s cel´ym jeho kontextem, vˇcetnˇe urˇcen´eho spr´avn´eho v´yznamu. Podobn´y form´at m´a testovac´ı datov´a sada. Ta se liˇs´ı pouze v tom, ˇze neob-sahuje spr´avnˇe doplnˇen´e v´yznamy. Dalˇs´ım souborem je soubor s lemmaty vˇsech slov, kter´a se vyskytuj´ı v tr´enovac´ıch nebo testovac´ıch datech. Tento soubor je moˇzno vygenerovat pomoc´ı programu lemmatizer. Posledn´ım souborem je soubor se spr´avn´ymi odpovˇed’mi pro testovac´ı data. Soubor s lemmaty ani soubor se spr´avn´ymi odpovˇed’mi nen´ı nezbytn´y ke spr´avn´e funkˇcnosti programu.

4.4.2 Anal´yza tr´enovac´ıch dat

Po naˇcten´ı vˇsech soubor˚u program zah´aj´ı anal´yzu tr´enovac´ıch dat. Nejprve je v hlavn´ım ob-jektuChiefvytvoˇrena kolekce objekt˚uLexelt, kter´a reprezentuje jednotliv´a rozpozn´avan´a lemmata. Kaˇzd´y objektLexeltobsahuje mnoho dalˇs´ıch kolekc´ı. Mezi nejv´yznamnˇejˇs´ı patˇr´ı

(24)

kolekce objekt˚uSenseItemreprezentuj´ıc´ı v´yznam slova, kolekce objekt˚uLexeltItem reprezen-tuj´ıc´ı konkr´etn´ı v´ıcev´yznamov´a slova, vˇcetnˇe jejich kontextu. Dalˇs´ım objektem je Answer, kter´y slouˇz´ı pro pr´aci s v´ysledky. Po vytvoˇren´ı vˇsech potˇrebn´ych objekt˚u je pro vˇsechny ob-jektyLexeltzavol´ana metodacreateWordsTable(). Tato metoda vypoˇc´ıt´a ˇcetnosti vˇsech slov pro nalezen´e v´yznamy. N´asleduje vol´an´ı metodycreateDeviationTable(), kter´a pro vˇsechna slova kaˇzd´eho objektu Lexelt vypoˇc´ıt´a potˇrebn´e statistick´e ´udaje. Tyto ´udaje jsou n´aslednˇe poskytnuty metodˇesortSignificantWords(), kter´a podle tˇechto vlastnost´ı vybere mezi vˇsemi slovy nejvhodnˇejˇs´ı kandid´aty na kl´ıˇcov´a slova. Metoda selectSigni-ficantWords() n´aslednˇe pro kaˇzd´y objekt LexeltItem, patˇr´ıc´ı do mnoˇziny testovac´ıch dat vybere N kl´ıˇcov´ych slov ze seznamu vˇsech moˇzn´ych kandid´at˚u. Pro tato kl´ıˇcov´a slova jsou pak metodou computeWordsProbability() vypoˇc´ıt´any potˇrebn´e pravdˇepodobnosti pro naivn´ı Bayes˚uv klasifik´ator.

4.4.3 Urˇcen´ı spr´avn´eho v´yznamu slova

Jsou-li provedeny vˇsechny potˇrebn´e anal´yzy tr´enovac´ıch dat, pˇrijde na ˇradu vlastn´ı klasi-fikace. Klasifikaci prov´ad´ı metoda makeBayes(), kter´a vypoˇc´ıt´a ohodnocen´ı kaˇzd´eho v´ y-znamu pro vˇsechny instance testovac´ıch dat. Ohodnocen´ı je poˇc´ıt´ano podle v´yˇse uveden´eho vzorce z vektoru pˇr´ıznak˚u tvoˇren´eho slovy vybran´ymi metodouselectSignificantWords(). Po v´ypoˇctu ohodnocen´ı pro vˇsechny instance je zavol´ana metodamakeResult(), kter´a pro kaˇzdou instanci vybere na z´akladˇe nejlepˇs´ıho ohodnocen´ı pˇredpokl´adan´y spr´avn´y v´yznam. Pokud je programu dod´an soubor se spr´avn´ymi v´ysledky, vyp´ıˇse metodaprintHitRate()

´

uspˇeˇsnost pro vˇsechna zpracov´avan´a lemmata. Vyps´ana je tak´e pr˚umˇern´a, minim´aln´ı a ma-xim´aln´ı ´uspˇeˇsnost. ˇReˇsen´ı je uloˇzeno do souboru metodou saveResult(), kter´a umoˇzˇnuje uloˇzit v´ysledky jako prost´y text nebo ve form´atu XML.

4.5

Od slov k vektoru pˇ

r´ıznak˚

u

Naivn´ı Bayes˚uv klasifik´ator je pevnˇe dan´y algoritmus, kter´y d´av´a pro urˇcit´y vstupn´ı vektor pˇr´ıznak˚u vˇzdy stejn´e v´ysledky. Pˇriˇrazen´ı spr´avn´eho v´yznamu slova je tedy velmi z´avisl´e na vektoru pˇr´ıznak˚u. ˇSpatn´a volba pˇr´ıznak˚u m˚uˇze m´ıt z´asadn´ı dopad na funkˇcnost cel´eho syst´emu. Je tedy nutn´e vˇenovat tvorbˇe tohoto vektoru velkou pozornost.

V podobn´ych syst´emech zaloˇzen´ych na naivn´ım Bayesovˇe klasifik´atoru je vˇetˇsinou vektor pˇr´ıznak˚u tvoˇren nˇekolika tis´ıci poloˇzkami. Kaˇzd´a poloˇzka reprezentuje jedno kl´ıˇcov´e slovo. Hodnota poloˇzky vektoru pak znaˇc´ı, jestli se kl´ıˇcov´e slovo nach´az´ı v kontextu v´ıcev´ yznamo-v´eho slova ˇci nikoliv. Je zˇrejm´e, ˇze poˇcet pˇr´ıznak˚u reprezentuj´ıc´ıch slova, kter´a se v kontextu vyskytuj´ı, nebude nijak velk´y. V pˇr´ıpadˇe tohoto zp˚usobu pouˇzit´ı se stanov´ı vektor pˇr´ıznak˚u pro kaˇzd´e urˇcovan´e lemma pouze jednou. Tento vektor je opakovanˇe pouˇz´ıv´an na vˇsechny instance testovac´ıch dat pro dan´e lemma.

J´a jsem zvolil ponˇekud odliˇsn´y zp˚usob tvorby vektoru pˇr´ıznak˚u. M˚uj vektor pˇr´ıznak˚u ob-sahuje jen velmi m´alo poloˇzek (nˇeco okolo 10-ti). Vektor nen´ı tvoˇren glob´alnˇe pro vˇsechny instance stejn´eho lemmatu, ale je tvoˇren lok´alnˇe pro kaˇzdou instanci individu´alnˇe. Slova jsou do vektoru pˇr´ıznak˚u vyb´ır´ana tak, aby se v kontextu v´ıcev´yznamov´eho slova vˇzdy vyskytovala. Tento zp˚usob zaruˇc´ı to, ˇze kaˇzd´a instance bude charakterizov´ana pˇresnˇe speci-fikovan´ym vektoremN poloˇzek. Nem˚uˇze tedy nastat pˇr´ıpad, kdy kontext v´ıcev´yznamov´eho slova nebude zrovna reprezentativn´ı a dojde k situaci, kdy z nˇekolikatis´ıcov´eho vektoru bude v kontextu obsaˇzeno pouze velmi m´alo slov nebo dokonce ˇz´adn´e. V pˇr´ıpadˇe, ˇze by v kon-textu nebylo obsaˇzeno ˇz´adn´e kl´ıˇcov´e slovo, klasifik´ator by rozhodoval pouze na z´akladˇe

(25)

pravdˇepodobnost´ı v´yskyt˚u v´yznam˚u.

Z˚ust´av´a tedy ot´azka, jak vybrat spr´avnˇe N kl´ıˇcov´ych slov pro kaˇzdou instanci tr´ enova-c´ıch dat. Tento v´ybˇer je ˇreˇsen ve v´ıce kroc´ıch a tvoˇr´ı kl´ıˇcovou ˇc´ast programu. Obecnˇe ˇreˇceno, program provede ohodnocen´ı vˇsech slov v tr´enovac´ıch datech a pro kaˇzd´e v´ıcev´yznamov´e slovo pak vybere nejvhodnˇejˇs´ı slova z jeho kontextu na z´akladˇe tohoto ohodnocen´ı.

Nejprve jsou vypoˇc´ıt´any podm´ınˇen´e pravdˇepodobosti v´yskyt˚u slov pro vˇsechny uvaˇzovan´e v´yznamy slova. N´aslednˇe je z tˇechto pravdˇepodobnost´ı urˇceno nˇekolik hodnot, podle kter´ych se poˇc´ıt´a v´ysledn´e ohodnocen´ı slova. Prvn´ı z hodnotdev, je smˇerodatn´a odchylka pravdˇ epo-dobnost´ı v´yskyt˚u vydˇelen´a jejich pr˚umˇernou hodnotou. Smˇerodatn´e odchylky pravdˇ epodob-nost´ı v´yskyt˚u mohou nab´yvat pro r˚uzn´a slova znaˇcnˇe odliˇsn´ych hodnot. Pokud je vydˇel´ıme pr˚umˇernou hodnotou, dojde tak k urˇcit´e normalizaci a hodnoty lze l´epe porovn´avat. Dalˇs´ımi hodnotami jsou maxim´aln´ı pravdˇepodobnost v´yskytu slova pro pˇr´ısluˇsn´e v´yznamymaxa j´ı odpov´ıdaj´ıc´ı ˇcetnost count.

Z tˇechto hodnot se vypoˇc´ıt´a ohodnocen´ı vˇsech slov obsaˇzen´ych v tr´enovac´ıch datech. Ohodnocen´ı se vypoˇc´ıt´av´a podle n´asleduj´ıc´ıho vzorce:

ohodnocen´ı = X· dev

Dev+Y · max M ax,

kde dev, max jsou hodnoty uveden´e v´yˇse a Dev, M ax jsou jejich maxim´aln´ı hodnoty v r´amci vˇsech slov pro dan´e lemma. Dˇelen´ı maxim´aln´ı hodnotou je prov´adˇeno opˇet kv˚uli normalizaci. X aY jsou vhodnˇe zvolen´e konstanty. Jejich nastaven´ı se vˇenuje kapitola 4.6. Teoreticky by ohodnocen´ı mˇelo b´yt poˇc´ıtano pro ´uplnˇe vˇsechna slova. Zvolil jsem ale jist´a omezen´ı, kter´a vyb´ıraj´ı pouze urˇcit´a vhodn´a slova, pro kter´a bude poˇc´ıt´ano ohod-nocen´ı. Toto omezen´ı je zaloˇzeno na hodnot´ach dev a count, kde jsem zvolil minim´aln´ı hodnoty, pˇri kter´ych bude pro dan´e slovo ohodnocen´ı poˇc´ıt´ano. Tyto hodnoty jsou opˇet vhodnˇe nastaveny. T´ımto zjednoduˇsen´ım jsem se vyhnul v´ypoˇct˚um ohodnocen´ı u vˇetˇsiny slov. Vynechan´a slova by mˇela ohodnocen´ı velmi mal´e a jen stˇeˇz´ı by byla vybr´ana jako kl´ıˇcov´a.

4.6

Nastavov´

an´ı parametr˚

u syst´

emu

Pro spr´avn´y bˇeh programu je tˇreba nejprve program vyladit na pouˇz´ıvanou datovou sadu. Ladˇen´ı program˚u prob´ıh´a ve formˇe nastavov´an´ı nˇekolika jeho parametr˚u. Jedn´a se zejm´ena o d´elku pouˇzit´eho vektoru pˇr´ıznak˚uN, d´ale parametrµvyjadˇruj´ıc´ı konstantu potˇrebnou pro oˇsetˇren´ı nulov´ych hodnot nˇekter´ych pravdˇepodobnost´ı pˇri rozhodov´an´ı naivn´ıho Bayesova klasifik´atoru, parametryXa Ypotˇrebn´e pro v´ypoˇcet ohodnocen´ı slov a parametry urˇcuj´ıc´ı zam´ıtnut´ı slova, kdy nedojde k poˇc´ıt´an´ı ohodnocen´ı. Tyto parametry jsem nazvalmin_dev

amin_count. Nastavov´an´ı vhodn´ych hodnot je prov´adˇeno empiricky na z´akladˇe ´uspˇeˇsnosti programu pro r˚uzn´e hodnoty parametr˚u. Hodnoty tˇechto parametr˚u m˚uˇzou ovlivnit v´ykon i ´uspˇeˇsnost programu. Je proto vhodn´e jim vˇenovat patˇriˇcnou pozornost.

Pˇri nastavov´an´ı d´elky vektoru pˇr´ıznak˚u se uk´azalo, ˇze nejvhodnˇejˇs´ı d´elka je 8 poloˇzek. Pˇri menˇs´ı d´elce doch´azelo jiˇz k poklesu ´uspˇeˇsnosti, coˇz je zp˚usobeno t´ım, ˇze poˇcet slov charakterizuj´ıc´ı dan´y v´yznam je nedostateˇcn´y. Pˇri zvyˇsov´an´ı d´elky vektoru ´uspˇeˇsnost nejdˇ r´ı-ve chv´ıli stagnovala, a pak zaˇcala rovnˇeˇz klesat. Tento jev je zp˚usoben t´ım, ˇze se do vektoru pˇr´ıznak˚u zaˇc´ınaj´ı dost´avat m´enˇe v´yznamn´a slova. Zprvu jeˇstˇe tato slova nemaj´ı takov´y vliv na klasifikaci, ale s jejich vzr˚ustaj´ıc´ım poˇctem zaˇc´ınaj´ı negativnˇe ovlivˇnovat v´ysledek.

(26)

Vhodn´e nastaven´ı parametru µ je pro bˇeh syst´emu kl´ıˇcov´e. Pokud by byl nastaven na pˇr´ıliˇs vysokou hodnotu, byly by klasifik´atorem zv´yhodˇnov´any v´yznamy, pro nˇeˇz maj´ı nˇekter´a slova nulov´e pravdˇepodobnosti v´yskyt˚u. Pokud bychom tento parametr nastavili na pˇr´ıliˇs n´ızkou hodnotu, doch´azelo by k opaˇcn´emu jevu a klasifik´ator by znev´yhodˇnoval v´yznamy, pro kter´e maj´ı nˇekter´a slova nulovou pravdˇepodobnost v´yskytu. Tento parametr byl nastaven na hodnotu 0,001.

ParametryXaYjiˇz nemaj´ı takov´y vliv na ´uspˇeˇsnost programu. Bˇehem experimentov´an´ı s jejich nastaven´ım bylo zjiˇstˇeno, ˇze hodnota devm´a na ´uspˇeˇsnost programu vˇetˇs´ı vliv neˇz hodnota max. Parametr X, kter´y vyjadˇruje v´ahovou hodnotu promˇenn´e dev, by mˇel b´yt proto nastaven na vyˇsˇs´ı hodnotu neˇz parametr Y vyjadˇruj´ıc´ı v´ahovou hodnotu promˇenn´e

max. ParametrXbyl nastaven na hodnotu 20 a parametr Yna hodnotu 12.

Posledn´ımi parametry, kter´e zb´yv´a nastavit jsou hodnoty min_dev a min_count. Tyto hodnoty rozhoduj´ı o zam´ıtnut´ı kandid´atn´ıch slov. Pˇri nastavov´an´ı bylo zjiˇstˇeno, ˇze ´uspˇeˇsnost programu je na parametr min_dev nejm´enˇe citliv´a. Je to zp˚usobeno t´ım, ˇze pokud nen´ı nastaven do extr´emn´ıch hodnot, tak jen zp˚usobuje v´ypoˇcty ohodnocen´ı u v´ıce kandid´atn´ıch slov. Pokud program dok´aˇze vybrat z urˇcit´eho mnoˇzstv´ı kandid´atn´ıch slov N kl´ıˇcov´ych slov, tak v pˇr´ıpadˇe zv´yˇsen´ı mnoˇzstv´ı kandid´atn´ıch slov vybere program pravdˇepodobnˇe stejn´a kl´ıˇcov´a slova. Tento parametr m˚uˇze v´yraznˇeji ovlivˇnovat ´uspˇeˇsnost, jen pokud je nastavena d´elka vektoru pˇr´ıznak˚u na velkou hodnotu a poˇcet kandid´atn´ıch slov tak nestaˇc´ı k jeho naplnˇen´ı. Parametr min_dev byl nastaven na hodnotu 0,800. Zb´yvaj´ıc´ı parametr

min_count m´a na celkovou ´uspˇeˇsnost programu mnohem vˇetˇs´ı vliv neˇz parametr min_dev. Hodnotadev totiˇz m˚uˇze za jist´ych okolnost´ı nab´yvat vysok´e hodnoty, i kdyˇz je dan´e slovo nev´yznamn´e. Tento pˇr´ıpad nast´av´a u slov, kter´a se vyskytuj´ı pouze u jednoho v´yznamu a to v mal´em poˇctu. Pokud se napˇr. slovo planetpˇri urˇcov´an´ı v´yznamu slova bank bude vyskytovat pouze jednou, a to jenom u jednoho v´yznamu, vyjde hodnota devvysok´a, coˇz zp˚usob´ı velk´e ohodnocen´ı slova. Je zˇrejm´e, ˇze toto slovo nem´a m´ıt na klasifikaci ˇz´adn´y vliv. Parametr min_count byl nastaven na hodnotu 1,500, coˇz znamen´a, ˇze jsou odfiltrov´ana vˇsechna slova, kter´a se vyskytuj´ı v kontextu pouze jednou.

Nyn´ı uvedu nˇekolik tabulek zn´azorˇnuj´ıc´ıch z´avislost ´uspˇeˇsnosti programu na nastavov´an´ı r˚uzn´ych parametr˚u.

(27)

Hodnota parametru N Uspˇ´ eˇsnost 1 78,4787 % 2 79,7361 % 3 81,0761 % 4 81,5914 % 5 81,7151 % 6 81,7357 % 7 81,8594 % 8 82,1892 % 9 81,9419 % 10 81,9419 % 15 81,7976 % 30 81,7770 %

Tabulka 4.1: ´Uspˇeˇsnost syst´emu pro r˚uzn´e hodnoty parametru N, pˇri konstantn´ıch zbyl´ych parametrech. Mˇeˇreno na datov´e sadˇe Semeval-1.

µ Uspˇ´ eˇsnost

0,1 18,9402 % 0,01 62,8296 % 0,001 64,5030 % 0,0001 64,1734 % 0,00001 63,8945 %

Tabulka 4.2: ´Uspˇeˇsnost syst´emu pro r˚uzn´e hodnoty parametru µ, pˇri konstantn´ıch zbyl´ych parametrech. Mˇeˇreno na datov´e sadˇe Senseval-3.

(28)

Pomˇer parametr˚u X:Y Uspˇ´ eˇsnost 1:2 63,4888 % 1:1 64,0467 % 2:1 64,2748 % 3:1 64,3763 % 5:1 64,3256 % 10:1 64,2495 %

Tabulka 4.3: ´Uspˇeˇsnost syst´emu pro r˚uzn´e hodnoty pomˇeru parametr˚u X:Y, pˇri kon-stantn´ıch zbyl´ych parametrech. Mˇeˇreno na datov´e sadˇe Senseval-3.

Hodnota parametru min_dev Uspˇ´ eˇsnost

0,500 64,1481 % 0,800 64,5030 % 0,900 64,1734 % 1,000 64,1227 % 1,200 64,1481 % 1,500 63,2860 % 2,000 59,8631 %

Tabulka 4.4: ´Uspˇeˇsnost syst´emu pro r˚uzn´e hodnoty parametru min dev, pˇri konstantn´ıch zbyl´ych parametrech. Mˇeˇreno na datov´e sadˇe Senseval-3.

Hodnota parametru min_count Uspˇ´ eˇsnost

0,5 59,6349 % 1,5 64,5030 % 2,5 63,3874 % 3,5 62,5761 % 4,5 60,7759 %

Tabulka 4.5: ´Uspˇeˇsnost syst´emu pro r˚uzn´e hodnoty parametru min count, pˇri konstantn´ıch zbyl´ych parametrech. Mˇeˇreno na datov´e sadˇe Senseval-3.

Ze vˇsech uveden´ych tabulek je vidˇet, ˇze vhodn´ym nastaven´ım parametr˚u lze doc´ılit zv´yˇsen´ı ´uspˇeˇsnosti programu. Nejz´asadnˇejˇs´ı vliv na ´uspˇeˇsnost programu m´a parametr µ

(29)

Kapitola 5

Vyhodnocen´ı a v´

ysledky syst´

emu

V t´eto kapitole budou uvedeny nejpouˇz´ıvanˇejˇs´ı metody vyhodnocov´an´ı syst´em˚u pro zjed-noznaˇcˇnov´an´ı slovn´ıch v´yznam˚u. Bude provedeno vyhodnocen´ı m´eho syst´emu podle stan-dardn´ıch metrik na konferenc´ıch Senseval-3 a Semeval-1. Je zde uveden pˇr´ıklad selh´an´ı naivn´ıho Bayesova klasifik´atoru na konkr´etn´ı instanci datov´e sady Senseval-3. V pˇr´ıkladˇe se pokus´ım zjistit pˇr´ıˇciny selh´an´ı tohoto klasifik´atoru. Na z´avˇer n´asleduje kr´atk´y popis syst´emu po technick´e str´ance. Informace o metod´ach vyhodnocov´an´ı jsou pˇrevzaty z [2].

5.1

Zp˚

usoby vyhodnocov´

an´ı zjednoznaˇ

nov´

an´ı slovn´ıch v´

y-znam˚

u

Pro vyhodnocov´an´ı syst´em˚u vykon´avaj´ıc´ıch zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u se pouˇz´ıv´a nˇekolik metod. Narozd´ıl od jin´ych probl´em˚u z oblasti zpracov´an´ı pˇrirozen´eho jazyka zde prozat´ım jeˇstˇe nebyla stanovana ˇz´adn´a pˇresn´a pravidla, podle kter´ych by se mˇelo vyhod-nocov´an´ı ˇr´ıdit. Mnoz´ı v´yzkumn´ıci nebo skupiny pracuj´ıc´ı v tomto odvˇetv´ı maj´ı stanoveny vlastn´ı zp˚usoby vyhodnocov´an´ı, kter´e se od zp˚usob˚u jin´ych skupin liˇs´ı.

5.1.1 Vyhodnocov´an´ı zaloˇzen´e na poˇctu spr´avnˇe urˇcen´ych v´yznam˚u

Mezi nejjednoduˇsˇs´ı a z´aroveˇn nejpouˇz´ıvanˇejˇs´ı zp˚usoby vyhodnocov´an´ı patˇr´ı metoda vych´ a-zej´ıc´ı z n´asleduj´ıc´ıho vzorce:

´

uspˇeˇsnost = poˇcet spr´avnˇe urˇcen´ych v´yznam˚u celkov´y poˇcet urˇcovan´ych slov

Tato metoda ovˇsem pˇrin´aˇs´ı do vyhodnocov´an´ı jist´e nev´yhody. Uvaˇzujme napˇr. n´asleduj´ıc´ı text:

. . . bought an interest in Lydak Corp. . . .

Pˇredstavme si nyn´ı n´asleduj´ıc´ı pˇriˇrazen´ı pravdˇepodobnost´ı vˇsem v´yznam˚um pomoc´ı ˇctyˇr hypotetick´ych syst´em˚u, kter´e zobrazuje tabulka5.1.

(30)

Syst´em V´yznam 1 2 3 4 (1) monetary 0,47 0,85 0,28 1,00 (2) stake of share 0,42 0,05 0,24 0,00 (3) benefit/advantage/sake 0,06 0,05 0,24 0,00 (4) intellectual curiosity 0,05 0,05 0,24 0,00

Tabulka 5.1: ´Uspˇeˇsnosti hypotetick´ych syst´em˚u.

Je patrn´e, ˇze ani jeden ze zvaˇzovan´ych hypotetick´ych syst´em˚u neurˇcil v´yznam slova v uveden´e vˇetˇe spr´avnˇe. Spr´avn´y v´yznam ve vˇetˇe je v´yznam s ˇc´ıslem 2. Vid´ıme, ˇze vˇsechny syst´emy zvolily v´yznam ˇc. 1. Podle v´yˇse uveden´eho krit´eria vyhodnocov´an´ı tedy maj´ı v uve-den´em pˇr´ıpadˇe vˇsechny syst´emy ´uspˇeˇsnost 0 %. Pod´ıv´ame-li se bl´ıˇze na pravdˇepodobnosti pˇriˇrazen´e jednotliv´ym v´yznam˚um syst´emy, vid´ıme, ˇze syst´em ˇc. 1 pˇriˇradil spr´avn´emu v´ y-znamu nejvˇetˇs´ı pravdˇepodobnost ze vˇsech syst´em˚u. Od urˇcen´ı spr´avn´eho v´yznamu slova ho nav´ıc dˇelil pouze mal´y krok. Ostatn´ı syst´emy vˇzdy silnˇe preferovaly pouze jeden v´yznam, nebo urˇcily velmi podobn´e pravdˇepodobnosti pro vˇsechny moˇzn´e v´yznamy. Je velmi vhodn´e, aby syst´em urˇcit´ym zp˚usobem vyjadˇroval d˚uvˇeru, kterou jednotliv´ym v´yznam˚um pˇrikl´ad´a. Tato vlastnost je d˚uleˇzit´a, pokud bychom chtˇeli v´ystupy tˇechto syst´em˚u pouˇz´ıt jako vstupy nˇejak´eho jin´eho syst´emu pracuj´ıc´ıho s pravdˇepodobnostmi. V takov´em pˇr´ıpadˇe by syst´em ˇ

c. 1 vyhovoval nejv´ıce.

5.1.2 Vyhodnocov´an´ı zaloˇzen´e na kˇr´ıˇzov´e entropii

Tento probl´em ˇreˇs´ı zp˚usob vyhodnocov´an´ı zaloˇzen´y na kˇr´ıˇzov´e entropii. ´Uspˇeˇsnost syst´emu je zde poˇc´ıt´ana podle n´asleduj´ıc´ıho vzorce:

−1 N N X i=1 log2Ps(csi |wi, contexti),

kdeN je poˇcet testovac´ıch instanc´ı,Psje pravdˇepodobnost pˇriˇrazen´a spr´avn´emu v´yznamu

csi v´ıcev´yznamov´eho slova wi v kontextu contexti syst´emem s. T´ımto zp˚usobem bude

syst´emu ˇc. 1 pˇriˇrazeno vˇetˇs´ı ohodnocen´ı, protoˇze spr´avn´emu v´yznamu pˇriˇradil velkou prav-dˇepodobnost na rozd´ıl od ostatn´ıch syst´em˚u. N´asleduje tabulka5.2s vyhodnocen´ım ´uspˇeˇ s-nost´ı pomoc´ı tohoto krit´eria.

Syst´em Metoda kˇr´ıˇzov´e entropie 1 2 3 4

ohodnocen´ı 1,25 4,32 2,05 ∞

Tabulka 5.2: Ohodnocen´ı hypotetick´ych syst´em˚u pomoc´ı kˇr´ıˇzov´e entropie.

Pro interpretaci ohodnocen´ı je potˇreba si uvˇedomit, ˇze nejlepˇs´ı ohodnocen´ı zde pˇ redsta-vuje nejmenˇs´ı z hodnot. Vid´ıme, ˇze se zde uk´azal podle oˇcek´av´an´ı nej´uspˇeˇsnˇejˇs´ı syst´em ˇc. 1. Syst´em ˇc. 4, kter´y dal spr´avn´emu v´yznamu pravdˇepodobnost rovnu nule, m´a pˇri tomto zp˚usobu vyhodnocov´an´ı nejmenˇs´ı ohodnocen´ı.

(31)

Je tˇreba si uvˇedomit, ˇze mnoho syst´em˚u nen´ı schopno urˇcit pravdˇepodobnost pro kaˇzd´y v´yznam. V takov´em pˇr´ıpadˇe je nutn´e pouˇz´ıt nˇejak´ych alternativn´ıch zp˚usob˚u, kter´e jsou uvedeny napˇr´ıklad v [2].

5.1.3 Granularita rozliˇsov´an´ı v´yznam˚u

Dalˇs´ım probl´emem vyskytuj´ıc´ım se pˇri vyhodnocov´an´ı syst´em˚u je existence r˚uzn´ych s´ e-mantick´ych nebo komunikativn´ıch vazeb mezi jednotliv´ymi v´yznamy. Je zˇrejm´e, ˇze r˚uzn´a v´ıcev´yznamov´a slova maj´ı nˇekter´e v´yznamy podobn´e. Je proto vhodn´e v´yznamy uspoˇr´adat do jist´e hierarchick´e struktury. Uk´azkou takov´e struktury m˚uˇze b´yt napˇr. tabulka 5.3

v´yznam˚u pro anglick´e slovobank.

I Bank -REPOSITORY I.1 Financial Bank

I.1a - the institution I.1b - the building II Bank -GEOGRAPHICAL

II.1 Shoreline

II.2 Ridge/Embankment III Bank -ARRAY/GROUP/ROW

Tabulka 5.3: Hierarchick´a struktura v´yznam˚u slova bank.

Je vhodn´e pˇri vyhodnocov´an´ı br´at ohled na tento fakt a zav´est urˇcit´y zp˚usob penalizace reflektuj´ıc´ı toto hierarchick´e uspoˇr´ad´an´ı. Pokud syst´em urˇc´ı v´yznam, kter´y patˇr´ı do stejn´e kategorie nebo podkategorie, mˇela by b´yt penalizace menˇs´ı, neˇz pokud syst´em urˇc´ı ne-spr´avn´y v´yznam patˇr´ıc´ı do ´uplnˇe jin´e kategorie. Penalizaci pak m˚uˇzeme prov´adˇet napˇr. na z´akladˇe penalizaˇcn´ı matice, kterou urˇc´ıme pro kaˇzd´e v´ıcev´yznamov´e slovo. Matice pro slovo bankm˚uˇze vypadat n´asledovnˇe:

I.1a I.1b I.2 II.1 II.2 III

I.1a 0 1 2 4 4 4 I.1b 1 0 2 4 4 4 I.2 2 2 0 4 4 4 II.1 4 4 4 0 1 4 II.2 4 4 4 1 0 4 III 4 4 4 4 4 0

Tabulka 5.4: Penalizaˇcn´ı matice pro v´yznamy slova bank.

Rozliˇsov´an´ı v´yznam˚u na ´urovni jemn´e granularity nijak nezohledˇnuje hierarchickou strukturu vˇsech v´yznam˚u. Pro spr´avn´e urˇcen´ı v´yznamu je nutn´e urˇcit i jeho konkr´etn´ı podskupinu. To vede k v´yrazn´emu sn´ıˇzen´ı ´uspˇeˇsnosti syst´emu. Obzvl´aˇstˇe pak pokud nej-sou pouˇzity dalˇs´ı metody zohledˇnuj´ıc´ı pravdˇepodobnosti, kter´e syst´em pˇridˇelil jednotliv´ym v´yznam˚um. Na druh´e stranˇe stoj´ı rozliˇsov´an´ı v´yznam˚u na ´urovni hrub´e granularity snaˇz´ıc´ı se urˇcit´ym zp˚usobem zv´yhodnit podobnosti nˇekter´ych v´yznam˚u. ˇCasto se to prov´ad´ı tak, ˇ

ze se ze skuteˇcn´ych existuj´ıc´ıch v´yznamov´ych skupin vytvoˇr´ı nov´e skupiny, kter´e vznikaj´ı slouˇcen´ım nˇekolika skupin p˚uvodn´ıch a reflektuj´ı tak podobnosti nˇekter´ych v´yznam˚u. Pˇritom

(32)

nen´ı nikde uvedeno do kolika v´yznamov´ych skupin se maj´ı p˚uvodn´ı v´yznamy slouˇcit. Tento zp˚usob nen´ı tak dokonal´y jako napˇr. u penalizaˇcn´ı matice, ale je to urˇcit´y krok kupˇredu. S t´ımto zp˚usobem vyhodnocov´an´ı se m˚uˇzeme setkat i pˇri vyhodnocov´an´ı v´ysledk˚u soutˇeˇz´ı v r´amci konferenc´ı Senseval-3 a Semeval-1. R˚uzn´a ´uroveˇn granularity pˇri rozliˇsov´an´ı v´yznam˚u m´a velk´y vliv na vyhodnocov´an´ı.

5.1.4 Konference Senseval (Semeval)

Senseval je mezin´arodn´ı konference poˇr´adan´a organizac´ı ACL-SIGLEX zab´yvaj´ıc´ı se probl´ e-my zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u. Jej´ım ´uˇcelem je zkoum´an´ı siln´ych a slab´ych str´anek syst´em˚u zab´yvaj´ıc´ıch se touto problematikou. Senseval-3 je otevˇren´a konference a m˚uˇze se j´ı z´uˇcastnit kdokoliv. Poskytuje jednotn´a data a zp˚usoby jejich vyhodnocov´an´ı. Letos se v Praze kon´a jiˇz 4. roˇcn´ık t´eto konference, kter´a nese n´azev Senseval-4/Semeval-1 a jiˇz nen´ı zamˇeˇrena pouze na zjednoznaˇcˇnov´an´ı slovn´ıch v´yznam˚u. Snaˇz´ı se ˇreˇsit i jin´e probl´emy s´emantick´eho zpracov´an´ı pˇrirozen´eho jazyka. Mezi nˇekter´e zaj´ımav´e probl´emy patˇr´ı napˇr. klasifikace s´emantick´ych rol´ı, v´ıce´urovˇnov´a s´emantick´a anotace katal´anˇstiny a ˇspanˇelˇstiny, rozliˇsov´an´ı metonymi´ı nebo extrakce s´emantick´ych struktur. Do soutˇeˇze v r´amci t´eto konfer-ence jsem se zapojil i j´a se sv´ym syst´emem pˇri ˇreˇsen´ı probl´emu zjednoznaˇcˇnov´an´ı vybran´ych v´ıcev´yznamov´ych slov pro angliˇctinu.

5.2

Diskuze v´

ysledk˚

u

V t´eto podkapitole se pokus´ım prov´est zhodnocen´ı syst´emu pro pouˇzit´e datov´e sady. Jsou zde uvedeny ´uspˇeˇsnosti i pro jin´e syst´emy na datov´e sadˇe Semeval-1.

5.2.1 V´ysledky syst´emu

Syst´em byl testov´an na dvou datov´y sad´ach poch´azej´ıc´ıch z konferenc´ı Senseval-3 a Semeval-1.

Datov´a sada pro Senseval-3 poskytuje dodateˇcn´e informace umoˇzˇnuj´ıc´ı vyhodnocov´an´ı na r˚uzn´e ´urovni granularity. Protoˇze m˚uj syst´em tyto informace nevyuˇz´ıv´a, je prov´adˇeno pouze vyhodnocov´an´ı pro jemnou granularitu. U tohoto zp˚usobu bylo dosaˇzeno nejlepˇs´ı ´

uspˇeˇsnosti 64,5030%. Bohuˇzel mi nejsou zn´amy v´ysledky jin´ych syst´em˚u pro tuto datovou sadu, takˇze nen´ı moˇzn´e prov´est nˇejak´e objektivn´ı srovn´an´ı. Uv´aˇz´ıme-li, ˇze vyhodnocov´an´ı je prov´adˇeno tou nejjednoduˇsˇs´ı moˇznou metodou, kdy se pˇri zpracov´an´ıˇreˇsen´ı neberou v potaz ˇ

z´adn´e pravdˇepodobnosti ani hierarchie v´yznam˚u, je takov´y v´ysledek docela oˇcek´avan´y. Datov´a sada pro Semeval-1 se od Senseval-3 liˇs´ı t´ım, ˇze umoˇzˇnuje pouze vyhodnocov´an´ı zaloˇzen´e na hrub´e granularitˇe v´yznam˚u. Syst´em zde rozhoduje mezi pseudo-skupinami, kter´e jsou vytvoˇreny slouˇcen´ım nˇekolika podobn´ych v´yznam˚u pˇrevzat´ych ze s´emantick´eho lexikonu WordNet. Vyhodnocov´an´ı zde nen´ı, stejnˇe jako u Senseval-3, zaloˇzeno na zohledˇ no-v´an´ı pˇriˇrazen´e pravdˇepodobnosti spr´avn´emu v´yznamu, ale pouze na pˇriˇrazen´em v´yznamu. Pro tuto datovou sadu bylo dosaˇzeno pr˚umˇern´e ´uspˇeˇsnosti 82,1892%. Podle oˇcek´av´an´ı je ´

uspˇeˇsnost syst´emu v´yraznˇe lepˇs´ı neˇz u pˇredeˇsl´e datov´e sady. Na t´eto datov´e sadˇe byla zaloˇzena i soutˇeˇz v r´amci letoˇsn´ı konference Semeval-1, kter´e se syst´em z´uˇcastnil. Protoˇze vyhodnocov´an´ı konference prob´ıhalo v dobˇe, kdy syst´em jeˇstˇe nebyl zcela hotov, nebyla tehdy ´uspˇeˇsnost tak velk´a. Na soutˇeˇzi obsadil 8. m´ısto z 13 syst´em˚u s ´uspˇeˇsnost´ı 80,3%. N´asleduje tabulka5.5 srovn´an´ı ´uspˇeˇsnost´ı syst´emu v soutˇeˇzi na konferenci Semeval-1.

(33)

Poˇrad´ı Uspˇ´ eˇsnost 1. 88,7 % 2. 86,9 % 3. 86,4 % 4. 85,7 % 5. 85,1 % 6. 85,1 % 7. 83,8 % 8. 80,3 % 9. 79,9 % 10. 79,6 % 11. 74,3 % 12. 53,8 % 13. 52,1 %

Tabulka 5.5: ´Uspˇeˇsnosti syst´em˚u pro zjednoznaˇcˇnov´an´ı vybran´ych v´ıcev´yznamov´ych slov pro angliˇctinu na soutˇeˇzi v r´amci konference Semeval-1.

5.2.2 Srovn´an´ı obou implementovan´ych algoritm˚u

Nejprve se zamˇeˇr´ım na srovn´an´ı ´uspˇeˇsnost´ı dvou implementovan´ych metod. Je to

References

Related documents

6 Minta daftar persediaan yang mencakup nama barang, kualitas, dan harga per tanggal neraca serta cocokkan dengan buku besar.. 7 Lakukan penelaah analitis (analytical review)

To facilitate course and program submissions universities, colleges, and career-technical institutions we will be using program accreditations or state board approvals as proof

or information about their expertise, which is repeated mainly with Negation feedback. Social: we mean context information related to a user’s role at work, and

In Section 2.3, we then cover topics related to our work on the field of data-driven software development: methods for collecting user related data, its analysis, and

事前テストと事後テストはそれぞれリーディング Part5 から Part7 に分かれており、TOEIC テストの出題形式と同じ形式で Part 5 短文穴埋め問題 13 問、Part 6 長文穴埋め問題 3

To capture CNVs within CDH candidate regions, we developed and tested a targeted array comparative genomic hybridization platform to identify CNVs within 140 regions in 196 patients

Furthermore, traditional livestock farming directly fosters the usage of groundwater and dug wells (Oshikweyo) and indirectly reduces the water supply security by, for in-

The wavelength ranges that were observed contain a number of spectral lines of other elements. In the process of comput- ing the synthetic spectra, estimates of the abundances of