Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
user:hladka:vladimir-rovensky [2008/03/16 12:05] hladka |
user:hladka:vladimir-rovensky [2009/02/06 20:55] (current) hladka |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== | + | ====== |
+ | [[external: | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ====== Bakalářská práce ====== | ||
+ | * Použití SVN serveru na ÚFAL | ||
+ | * [[http:// | ||
+ | * ''/ | ||
+ | * vlastní účet v síti ÚFAL nepotřebujete, | ||
+ | * Co se týče subverse, tak ani na ni nepotřebujete mít přístup na síť ÚFAL. Potřebujete mít nějakého klienta (standardní svn na linuxu, nebo třeba SVN Tortoise na windows). A rovnou můžete začít se subversí, asi nějaký '' | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ====== Dokumentace, | ||
+ | | ||
+ | * Specifikace [[http:// | ||
+ | * Dokumentace pilotní verze [[http:// | ||
+ | * **Co vše má obsahovat pilotní verze?** | ||
+ | * **Rešerše** - provést rešerši, jestli se podobným problémem již někdo zabýval; pokud ano, tak pro jaké jazyky a jakou metodologií. Rešerši zpracovat písemně v samostatném souboru. | ||
+ | * **Kód** S dostatečným počtem komentářů. | ||
+ | * **Dokumentace** | ||
+ | * **Uživatelská** - specifikace softwarových a hardwarových požadavků; | ||
+ | * **Programátorská** - popis struktury programu, implementační platformy (MS Windows, Linux, ...), použitých technologií, | ||
+ | * **Testovací data** Věty z Českého akademického korpusu 2.0 | ||
+ | * Smysluplné věty [[http:// | ||
+ | * Nesmysluplné věty [[http:// | ||
Line 5: | Line 43: | ||
====== Schůzky ====== | ====== Schůzky ====== | ||
* 3/3/2008 | * 3/3/2008 | ||
+ | * **navrhuji schuzku 15/5/2008 nekdy dopoledne (je mi to jedno)** | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
====== Vzkazy ====== | ====== Vzkazy ====== | ||
* 16/3/2008 U mě v kaslíku na sekretariátu ÚFAL (MS, místnost č. 408) máte nachystané CD-ROM (píše se o něm v zadání) a popis morfologických značek. | * 16/3/2008 U mě v kaslíku na sekretariátu ÚFAL (MS, místnost č. 408) máte nachystané CD-ROM (píše se o něm v zadání) a popis morfologických značek. | ||
+ | * 27/5/2008 Nová verze morfologické analýzy, jakožto součást skriptu '' | ||
+ | * **9/ | ||
+ | - Do 5. ledna 2009 mi pošlete balíček s tímto obsahem: | ||
+ | * zdrojový kód klasifikátoru | ||
+ | * binární soubory pro MS Windows a Linux | ||
+ | * uživatelskou dokumentaci ve formátu pdf. Součástí uživatelské dokumentace musí být vyhodnocení klasifikátoru na datech od Seznamu a na datech z ČAK 1.0. | ||
+ | * programátorskou dokumentaci ve formátu pdf | ||
+ | * soubor README.txt, který bude svým obsahem odpovídat linuxové manuálové stránce. Měly by tam být tyto údaje: Name, synopsis, description, | ||
+ | - Jakmile balíček obdržím, přešlu ho bez zdrojových kódů Vincentu Křížovi, který řeší stejnou úlohu. Obráceně Vy obdržíte jeho balíček. | ||
+ | - Do 11. ledna nastudujete/ | ||
+ | - Jakmile obdržím Vaši zprávu, přešlu ji Vincentovi. | ||
+ | - 19. ledna bychom se sešli všichni tři dohromady na, řekněme, prezentační hodince. Vy budete mít připravenou prezentaci, ve které byste měl reagovat i na připomínky oponenta Vincenta. Totéž bude dělat i Vincent. Ten den Vám zapíšu do indexu to, co mám. Navrhuji se sejít hned po ránu, tj. v 9h. **DOPLNĚNO: | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ====== Postup ====== | ||
+ | == Nejasnosti == | ||
+ | * Smim ve vystupu tool-chainu pouzivat tagy <g> a <r> ? __Ne. To jsou informace pro syntax.__ (// | ||
+ | * Je nekde k dispozici cesky preklad tahaku ke znackam tagu <t>, pripadne vysvetlivky k nim ? __Ano - [[http:// | ||
+ | * Pri uvodni schuzce se hovorilo o sade vet urcenych k testovani programu, da se nekde stahnout? __Ano, vety budou k dispozici. Budou to vety z Ceskeho akademickeho korpusu 2.0. Prace na tomto korpusu finisuje. Az se dodelaji vsechny kontroly, tak pripravim dva soubory ve formatu csts: jeden se smysluplnymi vetami a druhy s nesmysluplnymi vetami. Soubory budou k dispozici nejpozdeji pristi tyden ve stredu.__ | ||
+ | * Co by mela splnovat specifikace programu(delka, | ||
+ | | ||
+ | * pri testovani ruznych vstupu jsem narazil na nektere hodnoty na pozici 2 morfologickeho tagu, ktere jsem nenasel v dokumentaci (konkretne hodnota 2), da se nekde sehnat aktualizovany popis znacek? | ||
+ | * tool_chain spravne nerozeznava tvary sloves koncici na -li (budu-li, chcete-li) | ||
+ | |||
+ | == Prvni naznak algoritmu == | ||
+ | - Rozparsovat vstup z tool-chainu - pravdepodobne staci chytat tagy <f> a v nich <t>, mozna by se hodily i <r> a <g> (id tokenu + ukazatel na nadrazeny token) ale asi to nespada do morfologie. __tool_chain na vystupu nevydava <t>, pokud je v datech <t>, tak obsahuje znacku doplnenou rucne, tedy lidmi. tool_chain dava na vystupu < | ||
+ | Oprava: Ve vystupu tool_chainu najit tag <s> pro vetu a nasledne vybirat tagy <f>, resp <d> pro tokeny, v nich z <MDl> vybrat lemma, z <MDt> tagy. __Ano, pochopil jste strukturu vystupu spravne.__ --- // | ||
+ | - Pokud je veta souvetim, rozdelit na hole vety, cele souveti je smysluplne, pokud jsou smysluplne vsechny hole vety v nem obsazene. Rozdelovani realizovat napr. vyhledanim interpunkce/ | ||
+ | - Dale analyza pouze jednoduche vety. Napadly me dve veci ovlivnujici smysluplnost, | ||
+ | * korektni vztahy mezi slovy - bylo by mozne definovat pro kazdou dvojici slovnich druhu podminky(=hodnoty v tagu <t>), ktere musi byt splneny, aby tato dvojice davala smysl. Napr. pro podstatna a pridavna jmena nejak takhle: | ||
+ | |||
+ | ^ tag ^ podst.jm | ||
+ | | 2 | N | A,U,non(C) | podstatne jmeno vedle pridavneho | | ||
+ | | 3 | = | = | rod musi byt stejny | | ||
+ | | 4 | = | = | cislo musi byt stejne | | ||
+ | | 5 | = | = | pad musi byt stejny | | ||
+ | |6-15 |* | ||
+ | |||
+ | Pokud mame takoveto vztahy, je mozne pro kazde slovo hledat mozne kandidaty, se kterymi by mohlo tvorit smysluplnou dvojici, temto kandidatum pak priradit prioritu napr. podle vzdalenosti techto slov ve vete. Veta je potom smysluplna, pokud kazde slovo je nejak zapojeno (mimo interpunkce atp), jinymi slovy pokud budou slova vrcholy grafu, smysluplne dvojice budou tvorit hrany grafu, pak bude veta smysluplna, pokud bude tento graf souvisly. To ze kandidatu pro kazde slovo muze byt vice vede k moznemu nastavovani " | ||
+ | * slovosled - jednak ve vyse zminenych prioritach podle vzdalenosti slov, dale napr. kontrolovanim, | ||
+ | == Priklad == | ||
+ | Mame vetu "Pokud si chcete něco pouze vyzkoušet, použijte | ||
+ | pískoviště." | ||
+ | |||
+ | == Hotovo == | ||
+ | * zaklad algoritmu | ||
+ | * konecne se mi povedlo nainstalovat linux, tool_chain i vsechno ostatni potrebne, takze uz vim co parsovat - prislusna sekce postupu(vyse) upravena. Za odmenu jsem si zahral miny. | ||
+ | * dodelal jsem zakladni sadu pravidel pro vztahy mezi slovnimi druhy, ta bude prubezne doplnovana. | ||
+ | * definovan format souboru pro ukladani techto vztahu(txt soubor pro jednoduchou editaci) - pri startu programu se z tohoto souboru nactou podminky pro vznik smysluplnych vztahu. | ||
+ | * Kod : zakladni chodici verze | ||
+ | * Kod : zakladni chodici a odvsivena verze, rozchozeno na Linuxu (aspon myslim :o) | ||
+ | * rozsiren soubor s podminkami(aktualizovan i odkaz) | ||
+ | * par vystupu programu v jeho soucasne podobe je k nahlednuti [[http:// | ||
+ | = 2008/2009 = | ||
+ | * neustale rozsirovan soubor s podminkami | ||
+ | * pridana podpora davkoveho zpracovani | ||
+ | * pridany parametry pro spusteni programu - ignorovani nerozpoznanych tokenu, vyzadovani slovesa, minimalni delka vety atp. | ||
+ | * pridana utilita na editaci souboru s podminkami (java) | ||
+ | * pridana moznost vytvaret skupiny podminek, ktere jsou ve smysluplne vete vyzadovany | ||
+ | * pridan treshold na pocet iteraci procedury kontrolujici podminky typu (3) - zajisteni polynomialni slozitosti | ||
+ | * pridana moznost vypisovat kolize, program dostane coby parametr procentualni pocet klauzuli, ktere musi byt v ramci jedne podminky splneny, aby byl zbytek chapan jako kolize a vypsan (za predpokladu ze v podmince jsou nejake neuspesne klauzule). Taky je mozne specifikovat soubor, kam se budou kolize vypisovat. | ||
+ | * zjednoduseni konfigurace aplikace - pridana moznost sepsani voleb programu do .ini souboru (kazdy z optionu, ktere program prijima, ma svou alternativu v nejake klauzuli .ini souboru), parametry predavane primo na prikazovou radku prekryvaji parametry v .ini souboru (command line optiony maji prednost pred .ini). Soubor .ini s default hodnotami se automaticky vytvori, pokud neexistuje. | ||
+ | |||
+ | == Dale == | ||
+ | **22/9/08** | ||
+ | * vypisovani kolizi | ||
+ | * SENSE jako webova aplikace | ||
+ | * PREZENTACE | ||
+ | * slides | ||
+ | * formulace ulohy | ||
+ | * smysluplnost vzhledem | ||
+ | * vstupni data - tool_chain (CAK 2.0) | ||
+ | * algoritmus - vyvojovy diagram | ||
+ | * vypocetni slozitost | ||
+ | * evaluace - data od Seznamu, ' | ||
+ | * ukazka | ||
+ | * 13. rijna nanecisto | ||
+ | |||
+ | ====== Otázky ====== | ||
+ | - Jak moc bolestné bylo rozchodit a spustit '' | ||
+ | * tool_chain nebyl tak hrozny, spis me trvalo nainstalovat linux a btred, jsem z windowsu zvykly vsechno instalovat na dve kliknuti a najednou to po me chce kompilator cecka a cosi linkovat a konfigurovat a vubec. To je jako kdybych si chtel koupit grafickou kartu a dosal pul kila kremiku a pajku. Ale aspon jsem se naucil neco noveho. | ||
+ | - Můžete prosím na wiki zveřejnit tu sadu pravidel, kterou jste sestavil? | ||
+ | * mam to napsane na papire, prepisu to rovnou do toho formatu a uploadnu to sem hned jak to budu mit. Predbezna verze souboru je [[http:// |