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

list

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': 'اسم بلد، له حدود إدارية/جيوسياسية'
}]