Difference between revisions of "Kickapoo/Transducer"
(→Hi) |
(→Final Evaluation For Morphological Generation) |
||
| (37 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
| + | Our code is listed here: https://github.swarthmore.edu/Ling073-sp26/ling073-kic | ||
| − | == | + | == Evaluations == |
| − | + | ||
| − | + | === Transducer size === | |
| − | + | ||
| − | + | Using <code>lexd -x apertium-kic.kic.lexd > /dev/null</code>, the current transducer contains: | |
| + | |||
| + | {| class="wikitable" | ||
| + | ! Category | ||
| + | ! Count | ||
| + | |- | ||
| + | | Lexicons | ||
| + | | 28 | ||
| + | |- | ||
| + | | Lexicon entries | ||
| + | | 105 | ||
| + | |- | ||
| + | | Patterns | ||
| + | | 14 | ||
| + | |- | ||
| + | | Pattern entries | ||
| + | | 26 | ||
| + | |} | ||
| + | |||
| + | === Total number of stems in the transducer === | ||
| + | |||
| + | We counted only open-class lexical stem lexicons and excluded punctuation, affixes, person markers, tense/mode markers, and other closed-class/function-word lexicons. | ||
| + | |||
| + | {| class="wikitable" | ||
| + | ! Stem lexicon | ||
| + | ! Count | ||
| + | |- | ||
| + | | A-Stems | ||
| + | | 8 | ||
| + | |- | ||
| + | | I-Stems | ||
| + | | 5 | ||
| + | |- | ||
| + | | L-Stems | ||
| + | | 1 | ||
| + | |- | ||
| + | | Verbstem | ||
| + | | 2 | ||
| + | |- | ||
| + | | VStem_AA | ||
| + | | 4 | ||
| + | |- | ||
| + | ! Total | ||
| + | ! 20 | ||
| + | |} | ||
| + | |||
| + | === Current coverage over the combined corpus === | ||
| + | |||
| + | Coverage before adding common words: | ||
| + | * <code>83 / 584 = 14.21%</code> | ||
| + | |||
| + | Current coverage: | ||
| + | * <code>133 / 584 = 22.77%</code> | ||
| + | |||
| + | Improvement in coverage: | ||
| + | * <code>+50</code> analysed tokens | ||
| + | * <code>+8.56 percentage points</code> | ||
| + | |||
| + | Additional corpus statistics: | ||
| + | * Remaining unknown forms: <code>451</code> | ||
| + | * Ambiguity: <code>847 / 584 = 1.45</code> | ||
| + | |||
| + | === Current top unknown words === | ||
| + | |||
| + | {| class="wikitable" | ||
| + | ! Rank | ||
| + | ! Unknown word | ||
| + | ! Frequency | ||
| + | |- | ||
| + | | 1 | ||
| + | | <code>kwiyatheeha</code> | ||
| + | | 4 | ||
| + | |- | ||
| + | | 2 | ||
| + | | <code>awiyeehi</code> | ||
| + | | 4 | ||
| + | |- | ||
| + | | 3 | ||
| + | | <code>yoóh</code> | ||
| + | | 3 | ||
| + | |- | ||
| + | | 4 | ||
| + | | <code>yaaha</code> | ||
| + | | 3 | ||
| + | |- | ||
| + | | 5 | ||
| + | | <code>sehe</code> | ||
| + | | 3 | ||
| + | |- | ||
| + | | 6 | ||
| + | | <code>iskweetheehani</code> | ||
| + | | 3 | ||
| + | |- | ||
| + | | 7 | ||
| + | | <code>epapakethomehaki</code> | ||
| + | | 3 | ||
| + | |- | ||
| + | | 8 | ||
| + | | <code>aia</code> | ||
| + | | 3 | ||
| + | |- | ||
| + | | 9 | ||
| + | | <code>yoohi</code> | ||
| + | | 2 | ||
| + | |- | ||
| + | | 10 | ||
| + | | <code>yeetoke</code> | ||
| + | | 2 | ||
| + | |- | ||
| + | | 11 | ||
| + | | <code>witheniikaani</code> | ||
| + | | 2 | ||
| + | |- | ||
| + | | 12 | ||
| + | | <code>weepenaanwi</code> | ||
| + | | 2 | ||
| + | |- | ||
| + | | 13 | ||
| + | | <code>tahkiai</code> | ||
| + | | 2 | ||
| + | |- | ||
| + | | 14 | ||
| + | | <code>seeski</code> | ||
| + | | 2 | ||
| + | |- | ||
| + | | 15 | ||
| + | | <code>see</code> | ||
| + | | 2 | ||
| + | |- | ||
| + | | 16 | ||
| + | | <code>poohkamáaki</code> | ||
| + | | 2 | ||
| + | |- | ||
| + | | 17 | ||
| + | | <code>papakethohahi</code> | ||
| + | | 2 | ||
| + | |- | ||
| + | | 18 | ||
| + | | <code>nootha</code> | ||
| + | | 2 | ||
| + | |- | ||
| + | | 19 | ||
| + | | <code>niihpya</code> | ||
| + | | 2 | ||
| + | |- | ||
| + | | 20 | ||
| + | | <code>nekoti</code> | ||
| + | | 2 | ||
| + | |} | ||
| + | |||
| + | |||
| + | ===Unimplemented=== | ||
| + | |||
| + | # Vaux in Aspect not yet added; we haven't figured out a way to correctly analyze it; | ||
| + | # Negation also not yet added due to the same reason; | ||
| + | # Mode not yet added, may require further discussion; | ||
| + | |||
| + | |||
| + | === Regtest results === | ||
| − | == | + | The following table shows the number of tests that pass in each corpus. |
| + | |||
| + | {| class="wikitable" | ||
| + | ! Corpus | ||
| + | ! Tests passed | ||
| + | ! Match gold | ||
| + | |- | ||
| + | | analysis | ||
| + | | 2 / 2 | ||
| + | | 0 / 2 | ||
| + | |- | ||
| + | | generation | ||
| + | | 1 / 1 | ||
| + | | 0 / 1 | ||
| + | |- | ||
| + | | Animate Nouns-morph | ||
| + | | 2 / 2 | ||
| + | | 2 / 2 | ||
| + | |- | ||
| + | | Animate Nouns-gen | ||
| + | | 2 / 2 | ||
| + | | 1 / 2 | ||
| + | |- | ||
| + | | Inanimate Nouns-morph | ||
| + | | 2 / 2 | ||
| + | | 1 / 2 | ||
| + | |- | ||
| + | | Inanimate Nouns-gen | ||
| + | | 2 / 2 | ||
| + | | 1 / 2 | ||
| + | |- | ||
| + | | Noun Inflection (Posession)-morph | ||
| + | | 5 / 5 | ||
| + | | 5 / 5 | ||
| + | |- | ||
| + | | Noun Inflection (Posession)-gen | ||
| + | | 5 / 5 | ||
| + | | 1 / 5 | ||
| + | |- | ||
| + | | Person-morph | ||
| + | | 10 / 10 | ||
| + | | 9 / 10 | ||
| + | |- | ||
| + | | Person-gen | ||
| + | | 10 / 10 | ||
| + | | 0 / 10 | ||
| + | |- | ||
| + | | Future Tense-morph | ||
| + | | 2 / 2 | ||
| + | | 0 / 2 | ||
| + | |- | ||
| + | | Future Tense-gen | ||
| + | | 2 / 2 | ||
| + | | 0 / 2 | ||
| + | |- | ||
| + | | First Aorist-morph | ||
| + | | 1 / 1 | ||
| + | | 0 / 1 | ||
| + | |- | ||
| + | | First Aorist-gen | ||
| + | | 1 / 1 | ||
| + | | 0 / 1 | ||
| + | |- | ||
| + | | Second Aorist-morph | ||
| + | | 1 / 1 | ||
| + | | 0 / 1 | ||
| + | |- | ||
| + | | Second Aorist-gen | ||
| + | | 1 / 1 | ||
| + | | 0 / 1 | ||
| + | |- | ||
| + | | Third Aorist-morph | ||
| + | | 1 / 1 | ||
| + | | 0 / 1 | ||
| + | |- | ||
| + | | Third Aorist-gen | ||
| + | | 1 / 1 | ||
| + | | 0 / 1 | ||
| + | |- | ||
| + | | Aspect-morph | ||
| + | | 1 / 1 | ||
| + | | 0 / 1 | ||
| + | |- | ||
| + | | Aspect-gen | ||
| + | | 1 / 1 | ||
| + | | 0 / 1 | ||
| + | |- | ||
| + | | Mode-morph | ||
| + | | 6 / 6 | ||
| + | | 0 / 6 | ||
| + | |- | ||
| + | | Mode-gen | ||
| + | | 6 / 6 | ||
| + | | 0 / 6 | ||
| + | |- | ||
| + | | Negation-morph | ||
| + | | 6 / 6 | ||
| + | | 0 / 6 | ||
| + | |- | ||
| + | | Negation-gen | ||
| + | | 7 / 7 | ||
| + | | 0 / 7 | ||
| + | |- | ||
| + | | Locative-morph | ||
| + | | 1 / 1 | ||
| + | | 1 / 1 | ||
| + | |- | ||
| + | | Locative-gen | ||
| + | | 1 / 1 | ||
| + | | 1 / 1 | ||
| + | |- | ||
| + | | commonwords-morph | ||
| + | | 4 / 4 | ||
| + | | 4 / 4 | ||
| + | |} | ||
| + | |||
| + | === Test status summary === | ||
| + | |||
| + | All 27 corpora currently pass all tests: | ||
| + | * '''79 / 79 tests pass (100%)''' | ||
| + | |||
| + | === Commonwords evaluation === | ||
| + | |||
| + | We added a new <code>commonwords-morph</code> test file for frequent unknown words from the corpus. | ||
| + | {| class="wikitable" | ||
| + | ! Corpus | ||
| + | ! Tests passed | ||
| + | ! Match gold | ||
| + | |- | ||
| + | | commonwords-morph | ||
| + | | 4 / 4 | ||
| + | | 4 / 4 | ||
| + | |} | ||
== Notes == | == Notes == | ||
| + | ===Unresolved Tests=== | ||
| + | |||
| + | |||
| + | == Analyser Evaluation == | ||
| + | |||
| + | ===Twol Rules=== | ||
| + | |||
| + | No Twol rules are added; No verification has been noticed in Kickapoo grammar in the new script. | ||
| + | |||
| + | ===Updated Stem Counts=== | ||
| + | |||
| + | Lexicons: 29 | ||
| + | Lexicon entries: 106 | ||
| + | Patterns: 13 | ||
| + | Pattern entries: 26 | ||
| + | |||
| + | Counts for individual lexicons: | ||
| + | |||
| + | Punctuation: 22 | ||
| + | |||
| + | Demonstrative: 2 | ||
| + | |||
| + | Particle: 1 | ||
| + | |||
| + | A-Stems: 8 | ||
| + | |||
| + | A-Number: 2 | ||
| + | |||
| + | A-Poss: 5 | ||
| + | |||
| + | I-Stems: 5 | ||
| + | |||
| + | I-Number: 2 | ||
| + | |||
| + | I-Poss: 5 | ||
| + | |||
| + | L-Stems: 1 | ||
| + | |||
| + | Loc: 1 | ||
| + | |||
| + | Adverb: 1 | ||
| + | |||
| + | Conj: 1 | ||
| + | |||
| + | PrefPerson: 2 | ||
| + | |||
| + | Vaux: 15 | ||
| + | |||
| + | Verbstem: 2 | ||
| + | |||
| + | VerbAnimacy: 2 | ||
| + | |||
| + | SuffPerson: 8 | ||
| + | |||
| + | Tense: 3 | ||
| + | |||
| + | VStem_AA: 4 | ||
| + | |||
| + | V-Mode: 5 | ||
| + | |||
| + | Numeral: 3 | ||
| + | |||
| + | All anonymous lexicons: 6 | ||
| + | |||
| + | ===Generator Evaluation=== | ||
| + | |||
| + | Corpus 1 of 12: Animate Nouns-morph | ||
| + | 2/2 (100.0%) tests pass (2/2 (100.0%) match gold) | ||
| + | |||
| + | Corpus 2 of 12: Inanimate Nouns-morph | ||
| + | 2/2 (100.0%) tests pass (1/2 (50.0%) match gold) | ||
| + | |||
| + | Corpus 3 of 12: Noun Inflection (Posession)-morph | ||
| + | 5/5 (100.0%) tests pass (5/5 (100.0%) match gold) | ||
| + | |||
| + | Corpus 4 of 12: Person-morph | ||
| + | 10/10 (100.0%) tests pass (3/10 (30.0%) match gold) | ||
| + | |||
| + | Corpus 5 of 12: Future Tense-morph | ||
| + | 2/2 (100.0%) tests pass (0/2 (0.0%) match gold) | ||
| + | |||
| + | Corpus 6 of 12: First Aorist-morph | ||
| + | 1/1 (100.0%) tests pass (0/1 (0.0%) match gold) | ||
| + | |||
| + | Corpus 7 of 12: Second Aorist-morph | ||
| + | 1/1 (100.0%) tests pass (0/1 (0.0%) match gold) | ||
| + | |||
| + | Corpus 8 of 12: Third Aorist-morph | ||
| + | 1/1 (100.0%) tests pass (0/1 (0.0%) match gold) | ||
| + | |||
| + | Corpus 9 of 12: Aspect-morph | ||
| + | 1/1 (100.0%) tests pass (0/1 (0.0%) match gold) | ||
| + | |||
| + | Corpus 10 of 12: Mode-morph | ||
| + | 6/6 (100.0%) tests pass (0/6 (0.0%) match gold) | ||
| + | |||
| + | Corpus 11 of 12: Negation-morph | ||
| + | 6/6 (100.0%) tests pass (0/6 (0.0%) match gold) | ||
| + | |||
| + | Corpus 12 of 12: Locative-morph | ||
| + | 1/1 (100.0%) tests pass (1/1 (100.0%) match gold) | ||
| + | |||
| + | All tests pass. | ||
| + | |||
| + | |||
| + | == Final Evaluation For Morphological Generation == | ||
| + | The morphological generation component now passes '''95 out of 95 tests''', with '''0 failing tests'''. | ||
| + | Overall, the system achieves a '''match gold rate of 72/95 = 75.8%'''. | ||
| + | For this part of the assignment, we added '''2''' new twol rules. | ||
| + | When we reran the coverage test on the largest corpus, the new coverage was '''24.01%'''. | ||
[[Category:Sp26_Transducers]] | [[Category:Sp26_Transducers]] | ||
[[Category: Kickapoo]] | [[Category: Kickapoo]] | ||
Latest revision as of 21:01, 29 March 2026
Our code is listed here: https://github.swarthmore.edu/Ling073-sp26/ling073-kic
Contents
Evaluations
Transducer size
Using lexd -x apertium-kic.kic.lexd > /dev/null, the current transducer contains:
| Category | Count |
|---|---|
| Lexicons | 28 |
| Lexicon entries | 105 |
| Patterns | 14 |
| Pattern entries | 26 |
Total number of stems in the transducer
We counted only open-class lexical stem lexicons and excluded punctuation, affixes, person markers, tense/mode markers, and other closed-class/function-word lexicons.
| Stem lexicon | Count |
|---|---|
| A-Stems | 8 |
| I-Stems | 5 |
| L-Stems | 1 |
| Verbstem | 2 |
| VStem_AA | 4 |
| Total | 20 |
Current coverage over the combined corpus
Coverage before adding common words:
-
83 / 584 = 14.21%
Current coverage:
-
133 / 584 = 22.77%
Improvement in coverage:
-
+50analysed tokens -
+8.56 percentage points
Additional corpus statistics:
- Remaining unknown forms:
451 - Ambiguity:
847 / 584 = 1.45
Current top unknown words
| Rank | Unknown word | Frequency |
|---|---|---|
| 1 | kwiyatheeha
|
4 |
| 2 | awiyeehi
|
4 |
| 3 | yoóh
|
3 |
| 4 | yaaha
|
3 |
| 5 | sehe
|
3 |
| 6 | iskweetheehani
|
3 |
| 7 | epapakethomehaki
|
3 |
| 8 | aia
|
3 |
| 9 | yoohi
|
2 |
| 10 | yeetoke
|
2 |
| 11 | witheniikaani
|
2 |
| 12 | weepenaanwi
|
2 |
| 13 | tahkiai
|
2 |
| 14 | seeski
|
2 |
| 15 | see
|
2 |
| 16 | poohkamáaki
|
2 |
| 17 | papakethohahi
|
2 |
| 18 | nootha
|
2 |
| 19 | niihpya
|
2 |
| 20 | nekoti
|
2 |
Unimplemented
- Vaux in Aspect not yet added; we haven't figured out a way to correctly analyze it;
- Negation also not yet added due to the same reason;
- Mode not yet added, may require further discussion;
Regtest results
The following table shows the number of tests that pass in each corpus.
| Corpus | Tests passed | Match gold |
|---|---|---|
| analysis | 2 / 2 | 0 / 2 |
| generation | 1 / 1 | 0 / 1 |
| Animate Nouns-morph | 2 / 2 | 2 / 2 |
| Animate Nouns-gen | 2 / 2 | 1 / 2 |
| Inanimate Nouns-morph | 2 / 2 | 1 / 2 |
| Inanimate Nouns-gen | 2 / 2 | 1 / 2 |
| Noun Inflection (Posession)-morph | 5 / 5 | 5 / 5 |
| Noun Inflection (Posession)-gen | 5 / 5 | 1 / 5 |
| Person-morph | 10 / 10 | 9 / 10 |
| Person-gen | 10 / 10 | 0 / 10 |
| Future Tense-morph | 2 / 2 | 0 / 2 |
| Future Tense-gen | 2 / 2 | 0 / 2 |
| First Aorist-morph | 1 / 1 | 0 / 1 |
| First Aorist-gen | 1 / 1 | 0 / 1 |
| Second Aorist-morph | 1 / 1 | 0 / 1 |
| Second Aorist-gen | 1 / 1 | 0 / 1 |
| Third Aorist-morph | 1 / 1 | 0 / 1 |
| Third Aorist-gen | 1 / 1 | 0 / 1 |
| Aspect-morph | 1 / 1 | 0 / 1 |
| Aspect-gen | 1 / 1 | 0 / 1 |
| Mode-morph | 6 / 6 | 0 / 6 |
| Mode-gen | 6 / 6 | 0 / 6 |
| Negation-morph | 6 / 6 | 0 / 6 |
| Negation-gen | 7 / 7 | 0 / 7 |
| Locative-morph | 1 / 1 | 1 / 1 |
| Locative-gen | 1 / 1 | 1 / 1 |
| commonwords-morph | 4 / 4 | 4 / 4 |
Test status summary
All 27 corpora currently pass all tests:
- 79 / 79 tests pass (100%)
Commonwords evaluation
We added a new commonwords-morph test file for frequent unknown words from the corpus.
| Corpus | Tests passed | Match gold |
|---|---|---|
| commonwords-morph | 4 / 4 | 4 / 4 |
Notes
Unresolved Tests
Analyser Evaluation
Twol Rules
No Twol rules are added; No verification has been noticed in Kickapoo grammar in the new script.
Updated Stem Counts
Lexicons: 29 Lexicon entries: 106 Patterns: 13 Pattern entries: 26
Counts for individual lexicons:
Punctuation: 22
Demonstrative: 2
Particle: 1
A-Stems: 8
A-Number: 2
A-Poss: 5
I-Stems: 5
I-Number: 2
I-Poss: 5
L-Stems: 1
Loc: 1
Adverb: 1
Conj: 1
PrefPerson: 2
Vaux: 15
Verbstem: 2
VerbAnimacy: 2
SuffPerson: 8
Tense: 3
VStem_AA: 4
V-Mode: 5
Numeral: 3
All anonymous lexicons: 6
Generator Evaluation
Corpus 1 of 12: Animate Nouns-morph
2/2 (100.0%) tests pass (2/2 (100.0%) match gold)
Corpus 2 of 12: Inanimate Nouns-morph
2/2 (100.0%) tests pass (1/2 (50.0%) match gold)
Corpus 3 of 12: Noun Inflection (Posession)-morph
5/5 (100.0%) tests pass (5/5 (100.0%) match gold)
Corpus 4 of 12: Person-morph
10/10 (100.0%) tests pass (3/10 (30.0%) match gold)
Corpus 5 of 12: Future Tense-morph
2/2 (100.0%) tests pass (0/2 (0.0%) match gold)
Corpus 6 of 12: First Aorist-morph
1/1 (100.0%) tests pass (0/1 (0.0%) match gold)
Corpus 7 of 12: Second Aorist-morph
1/1 (100.0%) tests pass (0/1 (0.0%) match gold)
Corpus 8 of 12: Third Aorist-morph
1/1 (100.0%) tests pass (0/1 (0.0%) match gold)
Corpus 9 of 12: Aspect-morph
1/1 (100.0%) tests pass (0/1 (0.0%) match gold)
Corpus 10 of 12: Mode-morph
6/6 (100.0%) tests pass (0/6 (0.0%) match gold)
Corpus 11 of 12: Negation-morph
6/6 (100.0%) tests pass (0/6 (0.0%) match gold)
Corpus 12 of 12: Locative-morph
1/1 (100.0%) tests pass (1/1 (100.0%) match gold)
All tests pass.
Final Evaluation For Morphological Generation
The morphological generation component now passes 95 out of 95 tests, with 0 failing tests.
Overall, the system achieves a match gold rate of 72/95 = 75.8%.
For this part of the assignment, we added 2 new twol rules.
When we reran the coverage test on the largest corpus, the new coverage was 24.01%.