[ Skip to the content ]

Institute of Formal and Applied Linguistics Wiki


[ Back to the navigation ]

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
user:zeman:ukoly:hackovani [2007/10/17 22:57]
zeman Další informace.
user:zeman:ukoly:hackovani [2009/10/01 10:17]
zeman Varianta pro arabštinu.
Line 1: Line 1:
 ====== Háčkování ====== ====== Háčkování ======
-//(úloha z počítačového zpracování přirozeného jazyka)// +{{template>spolecne}}
- +
-//Upozornění: Specifikace je detailnější (a tudíž více svazující) než bývá u zápočtových úloh zvykem. Ideálně by díky tomu měla tři řešení téže úlohy od tří různých lidí být zaměnitelná; šetří vám to také práci s dokumentací, která už je součástí zadání. Samozřejmě nelze vyloučit, že najdete dobrý důvod, aby něco bylo jinak než ve specifikaci; takové případy se mnou prosím [[zeman@ufal.mff.cuni.cz|konzultujte]]. Bez posvěcení se raději od specifikace zbytečně neodchylujte. Kdo bude místo na STDOUT čmárat do souboru, jehož cesta je zadrátována ve zdrojáku jako "C:\Documents and Settings\PanVopička\Dokumenty\tisícdalšíchadresářů\mujchytrysoubor.dat" apod., nejenže nedostane zápočet, ale bude podroben veřejnému zostuzení.//+
  
 Napište program, který doplní do textu chybějící diakritiku. K testování dostanete data v konkrétním jazyku, váš program by však měl být v maximální možné míře jazykově nezávislý. Můžete předpokládat, že jazyk, se kterým program pracuje, píše abecedou na bázi latinky. Vše ostatní, co potřebuje o konkrétním jazyku vědět, by měl být schopen se naučit z dat. (Z toho plyne, že vy daný jazyk ovládat nemusíte.) Napište program, který doplní do textu chybějící diakritiku. K testování dostanete data v konkrétním jazyku, váš program by však měl být v maximální možné míře jazykově nezávislý. Můžete předpokládat, že jazyk, se kterým program pracuje, píše abecedou na bázi latinky. Vše ostatní, co potřebuje o konkrétním jazyku vědět, by měl být schopen se naučit z dat. (Z toho plyne, že vy daný jazyk ovládat nemusíte.)
Line 16: Line 14:
     - Zjistěte, jaká je průměrná míra nejednoznačnosti (tj. průměrný počet možných odpovědí) na jeden slovní výskyt.     - Zjistěte, jaká je průměrná míra nejednoznačnosti (tj. průměrný počet možných odpovědí) na jeden slovní výskyt.
     - Data, která dostáváte, jsou stažená z Wikipedie a obsahují šum. Odhadněte (statisticky, nikoliv na základě znalosti jazyka), která háčkování se do dat dostala jen jako překlep a jak se změní odpovědi na předcházející otázky, pokud překlepy nebudeme brát v úvahu.     - Data, která dostáváte, jsou stažená z Wikipedie a obsahují šum. Odhadněte (statisticky, nikoliv na základě znalosti jazyka), která háčkování se do dat dostala jen jako překlep a jak se změní odpovědi na předcházející otázky, pokud překlepy nebudeme brát v úvahu.
- 
-Programy pište v Perlu a snažte se vyvarovat obratů, které by omezily přenositelnost mezi platformami (např. nevolejte externí programy, které se vyskytují pouze v Unixu, resp. pouze ve Windows). 
  
 ===== Trénování ===== ===== Trénování =====
Line 28: Line 24:
  
 Program píše na standardní výstup. Posílá tam tentýž text obohacený o diakritiku. Pozor, nesmíte změnit počet mezer, zalomení řádku apod.! Na výstupu má být přesně stejný počet znaků jako na vstupu, akorát místo znaků bez diakritiky se mohou objevit znaky s diakritikou, a to ještě jen takové, ze kterých ty bez diakritiky lze vytvořit. Výstup je v UTF-8. Program píše na standardní výstup. Posílá tam tentýž text obohacený o diakritiku. Pozor, nesmíte změnit počet mezer, zalomení řádku apod.! Na výstupu má být přesně stejný počet znaků jako na vstupu, akorát místo znaků bez diakritiky se mohou objevit znaky s diakritikou, a to ještě jen takové, ze kterých ty bez diakritiky lze vytvořit. Výstup je v UTF-8.
 +
 +===== Varianta pro arabštinu =====
 +
 +V arabštině (a také v hebrejštině) se diakritická znaménka používají pro zápis krátkých samohlásek, zdvojování souhlásek a další jevy. V běžném textu se vynechávají (na rozdíl od češtiny ne jenom tam, kde to vyžadují omezené technické prostředky, ale všude; mluvčí arabštiny je většinou dokáže doplnit z kontextu). Pro počítačové zpracování je potřeba krátké samohlásky rekonstruovat (např. kvůli převedení textu na řeč nebo kvůli rozlišení mluvnických tvarů).
 +
 +Spisovná arabština má pouze 3 krátké samohlásky: //a, i// a //u//. Diakritická znaménka, kterými se tyto samohlásky zapisují, se objevují nad nebo pod předcházející souhláskou, mají však svůj vlastní kód v Unicode. Na rozdíl od češtiny, kde lze jedním znakem zapsat //c// a jiným znakem //č,// pro arabštinu nejsou definovány znaky //ba, bi// a //bu//. Místo toho se dotyčné slabiky reprezentují dvojicemi znaků, např. //b//+//a//. Odháčkování je tím pádem jednodušší, stačí z textu odstranit všechny výskyty znaků pro arabská diakritická znaménka.
 +
 +Následuje přehled diakritických znamének v arabštině. V příkladech je použita souhláska //b//:
 +
 +| Kód | Název | Význam | Příklad | Přepis |
 +| 064E | fatha | a | بَ | ba |
 +| 064F | damma | u | بُ | bu |
 +| 0650 | kasra | i | بِ | bi |
 +| 0651 | shadda | zdvojení souhlásky | بّ | bb |
 +| 0652 | sukun | žádná samohláska | بْ | b |
 +
 +Pro učení budete mít k dispozici vokalizované (= opatřené samohláskami) texty z Pražského arabského závislostního korpusu (PADT).
  
 ===== Další informace ===== ===== Další informace =====

[ Back to the navigation ] [ Back to the content ]