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

treebank_reader

این ماژول شامل کلاس‌ها و توابعی برای خواندن پیکرهٔ تری‌بانک است.

پیکرهٔ تری‌بانک حاوی هزاران جملهٔ برچسب‌خورده با اطلاعات نحوی و ساخت‌واژی است.

TreebankReader

این کلاس شامل توابعی برای خواندن پیکرهٔ تری‌بانک است.

پارامترها:

نام نوع توضیحات پیش‌فرض
root str

مسیر فولدر حاوی فایل‌های پیکره

اجباری
pos_map str

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

coarse_pos_e
join_clitics bool

اگر True‍ باشد واژه‌بست‌ها را به کلمهٔ مادر می‌چسباند.

False
join_verb_parts bool

اگر True باشد افعال چندبخشی را با _ به هم می‌چسباند.

False

docs()

اسناد موجود در پیکره را برمی‌گرداند.

خروجی تدریجی:

نوع توضیحات
Any

سند بعدی.

trees()

ساختارهای درختی موجود در پیکره را برمی‌گرداند.

مثال‌ها:

>>> treebank = TreebankReader(root='treebank')
>>> print(next(treebank.trees()))
(S
  (VPS
    (NPC (N دنیای/Ne) (MN (N آدولف/N) (N بورن/N)))
    (VPC
      (NPC (N دنیای/Ne) (NPA (N اتفاقات/Ne) (ADJ رویایی/AJ)))
      (V است/V)))
  (PUNC ./PUNC))

خروجی تدریجی:

نوع توضیحات
str

ساختار درختی بعدی.

sents()

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

مثال‌ها:

>>> treebank = TreebankReader(root='treebank')
>>> next(treebank.sents())
[('دنیای', 'Ne'), ('آدولف', 'N'), ('بورن', 'N'), ('دنیای', 'Ne'), ('اتفاقات', 'Ne'), ('رویایی', 'AJ'), ('است', 'V'), ('.', 'PUNC')]

خروجی تدریجی:

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

جملهٔ بعدی.

chunked_trees()

ساختار درختی را به شکل تقطیع شده برمی‌گرداند.

مثال‌ها:

>>> from hazm.chunker import tree2brackets
>>> treebank = TreebankReader(root='treebank')
>>> tree2brackets(next(treebank.chunked_trees()))
'[دنیای آدولف بورن NP] [دنیای اتفاقات رویایی NP] [است VP] .'

خروجی تدریجی:

نوع توضیحات
str

درخت تقطیع شدهٔ بعدی.

coarse_pos_e(tags)

برچسب‌های ریز را به برچسب‌های درشت (coarse-grained pos tags) تبدیل می‌کند.

مثال‌ها:

>>> coarse_pos_e(['Nasp---', 'pers', 'prop'])
'N'

پارامترها:

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

لیست برچسب‌های ریز.

اجباری

خروجی‌ها:

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

لیست برچسب‌های درشت.