sinatools.wsd.disambiguator¶
-
sinatools.wsd.disambiguator.
disambiguate
(sentence)¶ This method is a pipeline of five methods. Given a sentence as input, this method tags each word in the sentence with the following: Lemma, single-word sense, multi-word sense, and NER tag. The disambiguation of single/multi-word senses is done using our ArabGlossBERT TSV model. You can try the demo online. For more details read the article.
- Parameters
sentence (
str
) – The Arabic text to be disambiguated.
- Returns
- A list of JSON objects, with each word having a concept id if it exists or a lemma if no gloss is found.
- Return type
Note
The WSD models should be installed using (download_files -f wsd) command.
Example 1:
from sinatools.wsd.disambiguator import disambiguate #Notice that, all senses in this sentence are single-word senses (no multi-word senses or named entites are found in this sentence). disambiguate('تمشيت بين الجداول والأنهار') [{ 'concept_id': '303051631', 'word': 'تمشيت', 'lemma': 'تَمَشَّى' },{ 'concept_id': '303005470', 'word': 'بين', 'lemma': 'بَيْن' },{ 'concept_id': '303007335', 'word': 'الجداول', 'lemma': 'جَدْوَلٌ' },{ 'concept_id': '303056588', 'word': 'والأنهار', 'lemma': 'نَهْرٌ' }]
Example 2:
from sinatools.wsd.disambiguator import disambiguate #Notice that, this sentence contains multi-word sense (ضريبة الدخل) and named-entities (وزارة الدخل) as ORG and (فلسطين) as GPE. disambiguate('أعلنت وزارة المالية في فلسطين عن تخفيض ضريبة الدخل في الضفة الغربية وقطاع غزة') [{ 'concept_id': '303037486', 'word': 'أعلنت', 'lemma': 'أَعْلَنَ' },{ 'word': 'وزارة المالية', 'gloss': 'اسم مؤسسة' },{ 'concept_id': '202000985', 'word': 'في', 'lemma': 'فِي2' },{ 'word': 'فلسطين', 'gloss': 'اسم بلد، له حدود إدارية/جيوسياسية' },{ 'lemma': '303037863', 'word': 'عن', 'lemma': 'عَنْ' },{ 'concept_id': '303015224', 'word': 'تخفيض', 'lemma': 'تَخْفِيضٌ' },{ 'concept_id': '333001533', 'word': 'ضريبة الدخل', 'lemma': 'ضريبة الدخل' },{ 'concept_id': '202000985', 'word': 'في', 'lemma': 'فِي2' },{ 'word': 'الضفة الغربية', 'gloss': 'اسم بلد، له حدود إدارية/جيوسياسية' },{ 'word': 'وقطاع غزة', 'gloss': 'اسم بلد، له حدود إدارية/جيوسياسية' }]