Morfa для разработчиков
Здесь начинается документация для того, чтобы заставить инструменты Morfa работать на новые языки. Цель состоит в том, чтобы сделать демонстрационную версию Morfa-C с 2-3 шаблонами задачи и заглавными словами от Leksa. Здесь Вы видите, как Северный саами Morfa-S и Morfa-C работают. Выберите язык инструкции в правом краю, прежде чем Вы выберете программу
Задачи для Morfa-C
Теперь начинается забавная часть работы. Используя семантические классы в словаре Вы можете сделать упражнении для студентов. Они получают заглавное слово в основной форме, и их задача состоит в том, чтобы склонять его. Какие задачи? -- это зависит от языка. Ваши инструменты - семантические классы FAMILY (ЧЛЕН СЕМЬИ) и PEOPLE (ЧЕЛОВЕК) существительные, прилагательные HUMAN_A (ТАКИЕ КАТОРЫЕ ОПРЕДЕЛЯЮТ ЧЕЛОВЕКА), существительные PLACE (МЕСТА), глаголы MOVEMENT_V (ДВИЖЕНИЯ), глаголы ACTIVITY (ДЕЯТЕЛЬНОСТИ), существительные FOOD (ЕДА:) and DRINK (ПИТЬЁ:) и прилагательные FOOD_A (ОПРЕДЕЛЯЮЩИЕ ЕДУ).
Семантические классы в словаре позволяют сделать, например, эти шаблоны:
- - Где живёт твой FAMILY ? Мой FAMILY живёт в ______ (PLACE).
- - Что PEOPLE пьёт? PEOPLE пьёт ______ (DRINK).
- - Что PEOPLE ест? PEOPLE ест ______ (FOOD).
- - Кто в PLACE? ______ (PEOPLE Pl) -- в PLACE.
- - Что делает твой FAMILY сегодня? Сегодня мой FAMILY _______ (ACTIVITY-гл).
- - Что делал ADJ PEOPLE вчера? Вчера PEOPLE _______ (ACTIVITY-гл).
- - Какие PEOPLE PL? PEOPLE PL -- ______ (HUMAN-прил).
- - Куда PEOPLE MOVEMENT-глогол? PEOPLE MOVEMENT-гл _______ (->> PLACE).
Конечно, Вы можете использовать местоименное наречие вместо существительного, обозначающего место.
Шаблоны пары ответа вопроса в xml-формате
Шаблон содержит и переменные и константы. Это - пример шаблона пары ответ-вопрос в Северном саами. Первый текст, "Что SUBJ вчера делала?", следующий - "Вчера SUBJ MAINV". Линия с игрой game="morfa" подразумевает, что задача для студента состоит в том, чтобы написать правильную словоформу MAINV.
<q id="prtSg"> <qtype>PRT</qtype> <question> <text>Maid ADJ SUBJ barggai ikte</text> <element id="ADJ"> <sem class="HUMAN_A"/> <grammar tag="A+Attr"/> </element> <element id="SUBJ"> <sem class="PEOPLE"/> <grammar tag="N+Sg+Nom"/> </element> </question> <answer> <text>Ikte SUBJ MAINV</text> <element game='morfa' id="MAINV" task="yes"> <grammar tag="V+Ind+Prt+Sg3"/> <sem class="ACTIVITY"/> </element> </answer> </q>
Этот первый шаблон производит задачи как, "Что старый учитель вчера сделал?" "испечь" "Вчера учитель ____". Как Вы видите, переменное ADJ только для предоставления изменения. qtype - PRT: склонять глаголы в прошедшем времени. Будет полезно, когда Вы сделали столько шаблонов, что Вы сортируете их как возможности для студента. Но мы не будем использовать его в демонстрационной версии. У каждого шаблона есть id (идентификация), чтобы облегчить их удаление при необходимости.
Один пример со склонением прилагательных во множественном числе:
<q id="AdjPred"> <qtype>PRED</qtype> <question> <text>Makkárat SUBJ leat</text> <element id="SUBJ"> <sem class="PEOPLE"/> <grammar tag="N+Pl+Nom"/> </element> </question> <answer> <text>Sii leat ADJ</text> <element game='morfa' id="ADJ" task="yes"> <grammar tag="A+Pl+Nom"/> <sem class="HUMAN_A"/> </element> </answer> </q>
Первый текст, "Какые SUBJ?", следующий, "Они - ADJ". Линия с игрой game="morfa" подразумевает, что задача для студента состоит в том, чтобы написать правильную словоформу ADJ. Этот шаблон произведет такие задачи как, "Какие девочки?" "умный" "Они - ______ (множественная форма в Северном саами)".
Один пример со склонением существительных в иллативе:
<q id="nill"> <qtype>N-ILL</qtype> <question> <text>Gosa du SUBJ MAINV</text> <element id="SUBJ"> <grammar pos="N+Sg+Nom"/> <sem class="FAMILY"/> </element> <element id="MAINV"> <grammar tag="V+Ind+Prs+Sg3"/> <sem class="MOVEMENT_V"/> </element> </question> <answer> <text>SUBJ MAINV N-ILL</text> <element game='morfa' id="N-ILL" task="yes"> <grammar tag="N+Sg+Ill"/> <sem class="PLACE"/> </element> </answer> </q>
Первый текст "Куда SUBJ MAINV?", следующий - "SUBJ MAINV N-ILL". Линия с игрой game="morfa" подразумевает, что задача для студента состоит в том, чтобы написать правильную словоформу N-ILL. Этот шаблон произведет задачи как "Куда Ваша сестра бежит?" "школа" "Сестра бежит ______ (иллативный подеж в саами)".
Для демонстрационной версии мы делаем это просто. Например, мы не используем местоимения в ответе, что в принципе легко, но тогда мы должны взять в расчет, что в некоторых языках есть пол. У нас есть также функция согласования, например, между SUBJ и MAINV, который можно использовать.
Сохраните шаблоны в файле с языковым кодом, например questions.sme.xml
Словоформы
Словарь содержит заглавные слова. Задачи Morfa-C нуждаются в словоформах, которые произведены с FST (конечный трансдуктор). Для этого Вы нуждаетесь в файлах, как v_paradigm.txt, где данны какие формы произвести.
V+Inf V+Ind+Prs+Sg1 V+Ind+Prs+Sg2 V+Ind+Prs+Sg3 V+Ind+Prs+Pl1 ..
Читайте больше о поколении словоформ.
Morfa-S
Morfa-S основана на произведенных словоформах. Вы должны решить, каковы варианты там должны быть, смотреть на Северный Saami Morfa-S.
Morfa-S предлагает помощь, если студент хочет знать, как сделать словоформу. Информация помощи произведена основанная на комбинации морфологических тэгов и самой задачи. Это будет объяснено здесь здесь.
Paper
Antonsen, Lene, Ryan Johnson, Trond Trosterud, Heli Uibo 2013: Generating modular grammar exercises with finite-state transducers. Proceedings of the second workshop on NLP for computer-assisted language learning at NODALIDA 2013, May 22-24, Oslo, Norway. NEALT Proceedings Series 17: 27-38. Presentation held 22.5.13