[ 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

Next revision
Previous revision
user:zeman:ukoly:nerizena-morfologicka-analyza [2007/11/08 00:01]
zeman vytvořeno
user:zeman:ukoly:nerizena-morfologicka-analyza [2013/10/08 08:12] (current)
zeman quest
Line 1: Line 1:
-====== Neřízená morfologická analýza ======+====== Segmentace slov na morfémy ====== 
 +{{template>spolecne}}
  
-Napište program v Perlu, který rozpozná různé tvary stejných slov v textu v libovolném jazyce, aniž by měl k dispozici morfologický slovník. Výraz "morfologická analýza" v nadpisu není úplně v souladu s definicí z přednášky, lepší by bylo třeba "morfematická segmentace". Cílem totiž není poznat lemma, slovní druh a morfologické kategorie. Cílem je rozsekat slovo na morfémy (předpona, kmen, přípona, koncovka...) takaby šlo poznat různé tvary téhož slova.+Napište program v Perlu, který rozpozná různé tvary stejných slov v textu v libovolném jazyce, aniž by měl k dispozici morfologický slovník. Přesněji: máte každé slovo rozsekat na morfémy. Příkladem morfému je předpona, kmen, přípona. Slovo může mít několik předpon (např. //před+při+pravit//)několik přípon (např//chladn+ějš+ímu//), několik kmenů (např//chlor+o+vodík//) apodNěkteré morfémy jsou derivační (jejich prostřednictvím se z jednoho slova odvozuje jiné), jiné jsou ohýbací (jejich prostřednictvím se tvoří různé tvary (pád, číslo, stupeň, čas apod.) téhož slova. Hledejte oba druhy morfémů, rozlišovat je nemusíte. Pro jedno slovo může být správně i několik čtení, a tudíž několik segmentací (např. //proud+it// vs. //pro+uď+it//).
  
-Nápověda: získejte "vzory" - seznamy koncovek, které se vyskytly se stejnými kmeny, a kmenů, které se vyskytly s těmito koncovkami.+K dispozici máte seznam slov daného jazyka nalezených v korpusu, včetně jejich četností. Seznam čtěte ze standardního vstupu. Na každém řádku je vždy nejdříve počet výskytů slova, pak mezera a za ní slovo. Předpokládejte, že vstup je kódovaný v UTF-8. Všechna slova dostanete převedená na malá písmena. 
 + 
 +Výstupem vašeho programu (pošlete ho na STDOUT) by měly být morfematické segmentace všech slov, která byla na vstupu, opět v UTF-8. Každé slovo má svůj řádek, na něm je uvedeno jako první položka (četnost slova už se na výstupu neobjeví). Následuje tabulátor ("\t") a za ním jedna nebo více segmentací (analýz). Jednotlivé segmentace jsou oddělené čárkami, jednotlivé morfémy v rámci jedné segmentace jsou oddělené mezerami. 
 + 
 +Nápověda: jeden z možných přístupů k tomuto problému je přes "vzory"získejte seznamy přípon, které se vyskytly se stejnými kmeny, a kmenů, které se vyskytly s těmito příponami. Obdobně lze postupovat pro předpony. 
 + 
 +===== Jazyky ===== 
 + 
 +K ladění dostanete česká data, abyste měli šanci poznat, zda výstup programu vypadá rozumně. Váš program ale musí fungovat nezávisle na jazyku vstupních dat. Je tedy nežádoucí, aby obsahoval např. seznam českých předpon. Se vstupem zacházejte, jako by to byl jazyk, o kterém nic nevíte. Váš program bude nakonec testován na některém z těchto jazyků: 
 + 
 +  * angličtina 
 +  * němčina 
 +  * finština 
 +  * turečtina 
 +  * arabština 
 + 
 +{{user:zeman:ukoly:cs-konc.txt.gz|Česká data}} 
 + 
 +===== Další informace ===== 
 + 
 +Tento úkol (včetně zadání konkrétního jazyka) si můžete zarezervovat vyplněním formuláře na http://quest.ms.mff.cuni.cz/cgi-bin/zeman/zapoctaky/rezervace_ukolu.pl (pokud ještě není rozebrán). 
 + 
 +Pokud se individuálně nedohodneme jinak, termín odevzdání je konec listopadu. Při některé prosincové přednášce program předvedete ostatním.
  

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