پرش به محتویات

pos_tagger

دقت برچسب‌گذاری در نسخهٔ حاضر ۹۸.۸ درصد است.

کاربرد عملی

برای آشنایی با کاربرد این ماژول می‌توانید به بخش کاربردهای هضم مراجعه کنید.

در پروژه‌های زیر از این ماژول استفاده شده است:

کلاس(های) پایه: SequenceTagger

این کلاس‌ها شامل توابعی برای برچسب‌گذاری توکن‌هاست.

data_maker(tokens)

تابعی که لیستی از لیستی از کلمات توکنایز شده را گرفته و لیست دو بعدی از از دیکشنری‌هایی که تعیین‌کننده ویژگی‌ها هر کلمه هستند را برمی‌گرداند.

مثال‌ها:

>>> posTagger = POSTagger(model = 'pos_tagger.model')
>>> posTagger.data_maker(tokens = [['دلم', 'اینجا', 'مانده‌است', '.']])
[[{'word': 'دلم', 'is_first': True, 'is_last': False, 'prefix-1': 'د', 'prefix-2': 'دل', 'prefix-3': 'دلم', 'suffix-1': 'م', 'suffix-2': 'لم', 'suffix-3': 'دلم', 'prev_word': '', 'two_prev_word': '', 'next_word': 'اینجا', 'two_next_word': 'مانده‌است', 'is_numeric': False, 'prev_is_numeric': '', 'next_is_numeric': False, 'is_punc': False, 'prev_is_punc': '', 'next_is_punc': False}, {'word': 'اینجا', 'is_first': False, 'is_last': False, 'prefix-1': 'ا', 'prefix-2': 'ای', 'prefix-3': 'این', 'suffix-1': 'ا', 'suffix-2': 'جا', 'suffix-3': 'نجا', 'prev_word': 'دلم', 'two_prev_word': '.', 'next_word': 'مانده‌است', 'two_next_word': '.', 'is_numeric': False, 'prev_is_numeric': False, 'next_is_numeric': False, 'is_punc': False, 'prev_is_punc': False, 'next_is_punc': False}, {'word': 'مانده‌است', 'is_first': False, 'is_last': False, 'prefix-1': 'م', 'prefix-2': 'ما', 'prefix-3': 'مان', 'suffix-1': 'ت', 'suffix-2': 'ست', 'suffix-3': 'است', 'prev_word': 'اینجا', 'two_prev_word': 'دلم', 'next_word': '.', 'two_next_word': '', 'is_numeric': False, 'prev_is_numeric': False, 'next_is_numeric': False, 'is_punc': False, 'prev_is_punc': False, 'next_is_punc': True}, {'word': '.', 'is_first': False, 'is_last': True, 'prefix-1': '.', 'prefix-2': '.', 'prefix-3': '.', 'suffix-1': '.', 'suffix-2': '.', 'suffix-3': '.', 'prev_word': 'مانده‌است', 'two_prev_word': 'اینجا', 'next_word': '', 'two_next_word': '', 'is_numeric': False, 'prev_is_numeric': False, 'next_is_numeric': '', 'is_punc': True, 'prev_is_punc': False, 'next_is_punc': ''}]]

پارامترها:

نام نوع توضیحات پیش‌فرض
tokens List[List[str]]

جملاتی که نیاز به تبدیل آن به برداری از ویژگی‌ها است.

اجباری

خروجی‌ها:

Name نوع توضیحات
List List(Dict())

لیستی از لیستی از دیکشنری‌های بیان‌کننده ویژگی‌های یک کلمه.

features(sentence, index)

features.

tag(tokens)

یک جمله را در قالب لیستی از توکن‌ها دریافت می‌کند و در خروجی لیستی از (توکن، برچسب)ها برمی‌گرداند.

مثال‌ها:

>>> posTagger = POSTagger(model = 'pos_tagger.model')
>>> posTagger.tag(tokens = ['من', 'به', 'مدرسه', 'ایران', 'رفته_بودم', '.'])
[('من', 'PRON'), ('به', 'ADP'), ('مدرسه', 'NOUN,EZ'), ('ایران', 'NOUN'), ('رفته_بودم', 'VERB'), ('.', 'PUNCT')]
>>> posTagger = POSTagger(model = 'pos_tagger.model', universal_tag = True)
>>> posTagger.tag(tokens = ['من', 'به', 'مدرسه', 'ایران', 'رفته_بودم', '.'])
[('من', 'PRON'), ('به', 'ADP'), ('مدرسه', 'NOUN'), ('ایران', 'NOUN'), ('رفته_بودم', 'VERB'), ('.', 'PUNCT')]

پارامترها:

نام نوع توضیحات پیش‌فرض
tokens List[str]

لیستی از توکن‌های یک جمله که باید برچسب‌گذاری شود.

اجباری

خروجی‌ها:

نوع توضیحات
List[Tuple[str, str]]

‌لیستی از (توکن، برچسب)ها.

tag_sents(sentences)

جملات را در قالب لیستی از توکن‌ها دریافت می‌کند و در خروجی، لیستی از لیستی از (توکن، برچسب)ها برمی‌گرداند.

هر لیست از (توکن، برچسب)ها مربوط به یک جمله است.

مثال‌ها:

>>> posTagger = POSTagger(model = 'pos_tagger.model')
>>> posTagger.tag_sents(sentences = [['من', 'به', 'مدرسه', 'ایران', 'رفته_بودم', '.']])
[[('من', 'PRON'), ('به', 'ADP'), ('مدرسه', 'NOUN,EZ'), ('ایران', 'NOUN'), ('رفته_بودم', 'VERB'), ('.', 'PUNCT')]]
>>> posTagger = POSTagger(model = 'pos_tagger.model', universal_tag = True)
>>> posTagger.tag_sents(sentences = [['من', 'به', 'مدرسه', 'ایران', 'رفته_بودم', '.']])
[[('من', 'PRON'), ('به', 'ADP'), ('مدرسه', 'NOUN'), ('ایران', 'NOUN'), ('رفته_بودم', 'VERB'), ('.', 'PUNCT')]]

پارامترها:

نام نوع توضیحات پیش‌فرض
sentences List[List[str]]

لیستی از جملات که باید برچسب‌گذاری شود.

اجباری

خروجی‌ها:

نوع توضیحات
List[List[Tuple[str, str]]]

لیستی از لیستی از (توکن، برچسب)ها. هر لیست از (توکن،برچسب)ها مربوط به یک جمله است.