Arabic Morphological Tagging, Diacritization, and Lemmatization Using Lexeme Models and Feature Ranking
What it is about
MADA picks, for each Arabic word, one analysis from the candidates that the BAMA dictionary proposes. It scores each candidate by summing the weights of the features on which the candidate agrees with the model's prediction. The features are 14 morphological tags, each predicted by an SVM, two checks (spelling match, and whether the analysis is the dictionary default), a unigram model of diacritized forms and of lexemes, and a 4-gram lexeme model. The authors add lemmatization as a task and run seven tasks (tagging, diacritization, lemma choice, and full choice). The weights are tuned by downhill simplex on half of ATB3-DevTest (about 26K words), with the other half (about 25K words) held out for testing. Lexeme features cut error by 36–71% on the diacritic and lemma tasks, and by 3–11% on the morphological tasks. Tuning the weights reduces error further, by 8–20% with all features.
Ideas
- I1. A lexeme n-gram as one vote: a 4-gram model over lemma sequences, which alone picks the right lexeme in 94.1% of dev-test words, is added as one more feature of the candidate score. In Mova the same role can be played by a lemma n-gram table over the segmenter's candidate analyses, built with
BTreeMapso the result is deterministic. - I2. Score candidates as a plain sum of named feature weights, and tune the weights on a split of the training data, one tuning objective per evaluation task. Measure with the two-fold
cvcheck, not the final test, so that the choice of weights is never made on the held-out set. - I3. Use the agreement-based score as an explanation. Each decision can be printed as the list of features that voted for the winner, which fits Mova's requirement that every step can say why. For unpointed Hebrew this is the diacritic decision of
tools/hbounpointed mode.
For Mova
I1 goes into the candidate choice of tools/hbo (unpointed mode), where a lexeme table would vote on the segmenter's analyses. I2 is the test design for the same choice (cv split, no peeking at the release test). I3 is the explanation output of that choice. The Arabic data itself belongs to treebanks/ar, and the spelling-match idea is relevant to languages/hbo/01-script.md.
Library summary
Written for the Research library (claude-opus-5-5) from the paper text, in our own words: the license "CC BY-NC-SA 3.0 (ACL Anthology, before 2016)" does not allow redistributing the text itself. Original — aclanthology.org/P08-2030.pdf
Summary
The paper addresses morphological disambiguation for Arabic, a language with a very large tag space and normally omitted short vowels. The authors cast tagging, diacritization, and lemmatization as choosing the right analysis from candidates proposed by the BAMA dictionary. They define seven related tasks, ranging from core POS to the full analysis (AllChoice), and introduce lemmatization (LexChoice) as a new task for Arabic. Their system, MADA, scores each candidate by summing weights of features where the candidate agrees with a prediction. Fourteen predictions come from per-feature SVMs trained on ATB3-Train. Two more checks are computed directly from the analysis. Three lexeme-oriented models are added: two unigram models and a 4-gram lexeme language model. Feature weights are tuned separately for each task with the Nelder–Mead downhill simplex method on half of ATB3-DevTest. Adding lexemic features cuts errors sharply on diacritization and lemmatization, and task-specific tuning gives further gains. The reported results were the best published on these test sets. This shows that explicit lexeme modeling and cheap weight optimization matter for morphologically rich languages.
Key points
- The training corpus has about 288K words and 3279 observed morphological tags, out of up to 100,000 possible ones. This makes tagging as plain classification impractical.
- Feature sets:
- BASE-16: 14 morphological features plus Spellmatch and Isdefault.
- FULL-19: BASE-16 plus UnigramDiac, UnigramLex, and a 4-gram Kneser-Ney lexeme model built with SRILM.
- On its own, the 4-gram lexeme model picks the correct lexeme 94.1% of the time on ATB3-DevTest.
- ATB3-DevTest is split into roughly 26K words for tuning and roughly 25K words for testing. Seven task-specific correctness labels are attached to every candidate analysis.
- Tuned FULL-19 results compared with the untuned 14-feature baseline:
- AllChoice: 83.8% vs 73.3%
- LexChoice: 96.3% vs 85.5%
- DiacFull: 86.1% vs 76.0%
- MorphAll: 85.1% vs 83.8%
- Error reduction from lexemic features is 3–11% for tagging tasks but 36–71% for diacritic and lexeme tasks. Tuning reduces error by 4–12% with BASE-16 and 8–20% with FULL-19.
Interesting ideas
- Analyzer as candidate generator, classifiers as voters: a dictionary or analyzer proposes analyses, and independent per-feature classifiers vote on them. This avoids learning a huge joint tag set directly. It could suit Ukrainian with an analyzer like pymorphy2 or VESUM.
- Tune the selector with the exact scoring rule used at test time: a derivative-free optimizer such as simplex maximizes accuracy directly. Because the tuning objective and the inference procedure are the same, no surrogate loss is needed, and this works with very small numbers of weights.
- One label per task on every candidate: each candidate carries a separate correctness label for each task. This lets one system be re-tuned for different downstream goals, such as POS only versus full analysis, without retraining the classifiers.
- Cheap rule-based sanity features: two features need no model at all. One flags candidates whose spelling does not match the input once diacritics are removed. The other penalizes the analyzer's fallback guesses. Such checks are easy to add to any pipeline built on an analyzer.
- Language model over lemmas: an n-gram model trained on lexeme sequences rather than surface forms captures lexical context with less sparsity. This is helpful for any highly inflected language.
Cite
@inproceedings{roth2008arabic,
title = {{Arabic Morphological Tagging, Diacritization, and Lemmatization Using Lexeme Models and Feature Ranking}},
author = {Roth, Ryan and Rambow, Owen and Habash, Nizar and Diab, Mona and Rudin, Cynthia},
booktitle = {Proceedings of ACL-08: HLT, Short Papers},
year = {2008},
doi = {10.3115/1557690.1557721},
url = {https://doi.org/10.3115/1557690.1557721}
}References
- Tim Buckwalter. 2004. Buckwalter Arabic morphological analyzer version 2.0. find
- Nizar Habash and Owen Rambow. 2005. Arabic tokenization, part-of-speech tagging and morphological disambiguation in one fell swoop. In ACL’05, Ann Arbor, MI, USA. find our card
- Nizar Habash and Owen Rambow. 2007. Arabic diacritization through full morphological tagging. In NAACL HLT 2007 Companion Volume, Short Papers, Rochester, NY, USA. find our card
- Jan Hajič, Otakar Smrž, Tim Buckwalter, and Hubert Jin. 2005. Feature-based tagger of approximations of functional Arabic morphology. In Proceedings of the Workshop on Treebanks and Linguistic Theories (TLT), Barcelona, Spain. find
- Jan Hajič. 2000. Morphological tagging: Data vs. dictionaries. In 1st Meeting of the North American Chapter of the Association for Computational Linguistics (NAACL’00), Seattle, WA. find
- J.A Nelder and R Mead. 1965. A simplex method for function minimization. In Computer Journal, pages 303–333. find
- Andreas Stolcke. 2002. Srilm - an extensible language toolkit. In Proceedings of the International Conference on Spoken Language Processing (ICSLP). find
- Imed Zitouni, Jeffrey S. Sorensen, and Ruhi Sarikaya. 2006. Maximum entropy based restoration of arabic diacritics. In Coling-ACL’06, pages 577–584, Sydney, Australia. find our card