Dependency Parsing - مرجع دادگان زبان فارسی

Download Report

Transcript Dependency Parsing - مرجع دادگان زبان فارسی

‫بسم رب الشهداء و الصدیقین‬
‫محمدصادق رسولی‬
‫‪rasooli.ms{#a#t#}gmail.com‬‬
‫پیش‌بینی ساخت‌های زبانی‬
‫‪1‬‬
 Sandra Kübler, Ryan McDonald, and Joakim Nivre, “Dependency
Parsing,” Synthesis Lectures on Human Language Technologies, 1 (1),
Morgan and Claypool Publishers, 2009.
2
:‫منابع مطالعاتی دیگر‬

‫ مرکز تحقیقات کامپیوتری‬،»‫ «تجزیۀ نحوی با استفاده از دستور وابستگی‬،‫ محمدصادق رسولی‬
.1389 ،‫علوم اسالمی‬
 Joakim Nivre, “Inductive Dependency Parsing,” Springer Verlag, 2006.
 Jinho D. Choi, “Dependency Parsing,” Tech. Report, University of
Colorado at Boulder, 2009.
 Ryan McDonald and Joakim Nivre, “Introduction to Data-Driven
Dependency Parsing,” European Summer School in Logic Language
and Information 2007, 2007.
3
‫در حین ارائۀ مطالب نیز منابع مرتبط معرفی خواهند شد‪.‬‬
‫‪4‬‬
‫‪‬‬
‫دستور وابستگی نخستین بار توسط تنی‌یر مطرح شد‪.‬‬
‫‪‬‬
‫این دستور بر مبنای نظریۀ ظرفیت واژگانی شکل گرفته است‪.‬‬
‫‪5‬‬
‫‪‬‬
‫واژه‌ها نیز مانند عناصر دارای ظرفیت هستند‪.‬‬
‫‪ ‬هر واژه‌ای دارای ظرفیت ترکیب نحوی‌‪/‬معنایی خاص ی است‪.‬‬
‫‪6‬‬
‫پرسیدن‬
‫چیزی‌ را‪...‬‬
‫از‬
‫َ‬
‫کس ی‪..‬‬
‫‪7‬‬
‫‪‬‬
‫با دانستن ظرفیت واژه‌ها می‌توان تولید زبان انجام داد‪.‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫ترجمۀ خودکار (‪)Machine Translation‬‬
‫تحلیل نحوی (‪)Syntactic Analysis‬‬
‫تولید زبان (‪)Language Generation‬‬
‫‪...‬‬
‫امید طبیب‌زاده‪« ،‬ظرفیت فعل در زبان فارس ی»‪ ،‬نشر مرکز‪.1385 ،‬‬
‫‪8‬‬
‫‪‬‬
‫ی‪/‬معنایی بین واژه‌های درون‬
‫در دستور وابستگی مبنا روابط نحو ‌‬
‫جمله است‪.‬‬
‫‪‬‬
‫در این دستور مفهوم گروه معنا ندارد‪.‬‬
‫‪‬‬
‫واژه‌ها بر اساس ظرفیتشان و نوع قرار گرفتن در جمله وابسته‌هایی‬
‫می‌گیرند‪.‬‬
‫‪9‬‬
‫وابستۀ پیشین‬
‫مفعول‌‬
‫فعل مرکزی‌‬
‫حرف اضافۀ اسم‬
‫صحبت‬
‫با‬
‫وابستۀ پسین‬
‫او‬
‫فعل‌یار‬
‫را‬
‫دوست‬
‫دارم‬
‫”‪Richard Hudson, “An introduction to word grammar,‬‬
‫‪Cambridge University Press, 2010.‬‬
‫‪10‬‬
‫‪‬‬
‫در دستور زایش ی (‪ ،)Generative‬با گروه‌ها سر و کار داریم‪.‬‬
‫‪ ‬دستور مستقل از متن (‪)CFG‬‬
‫‪ ‬دستور مبتنی بر عبارات‬
‫‪ ‬امکان وجود بی‌ترتیبی در جمالت وجود ندارد‬
‫‪‬‬
‫در دستور وابستگی با واژه‌ها سر و کار داریم‪.‬‬
‫‪ ‬امکان بی‌ترتیبی در جمالت وجود دارد‪.‬‬
‫‪11‬‬
12
‫‪‬‬
‫فرض‌های زبانی متفاوتی در مورد درخت‌های وابستگی می‌شود‪.‬‬
‫‪‬‬
‫فرض‌های ما (ر‪.‬ک‪ .‬فصل ‪ 2‬کتاب مرجع)‬
‫‪ ‬درخت وابستگی بدون دور است‪.‬‬
‫‪ ‬هر جمله دارای یک واژۀ فرض ی به عنوان ریشۀ جمله است‪.‬‬
‫‪ ‬هر واژه (غیر از ریشۀ جمله) تنها یک هسته دارد‪.‬‬
‫‪13‬‬
‫‪‬‬
‫درخت‌های وابستگی دو نوع هستند‬
‫‪ ‬افکنش ی (‪)Projective‬‬
‫▪ هیچ کمانی دیگری را در صورت رسم کمان‌ها از یک سمت بر روی کاغذ قطع‬
‫نمی‌کند‪.‬‬
‫‪ ‬غیرافکنش ی (‪)Non-projective‬‬
‫▪ ممکن است کمانی باشد که برخی دیگر از کمان‌ها را قطع کرده باشد‪.‬‬
‫▪ در جمالت بی‌ترتیب زبانی دیده می‌شود‪.‬‬
‫‪14‬‬
‫ریشه‬
‫ریشه‬
‫از‬
‫آگاه‬
‫آگاه‬
‫هستم‬
‫آمدنت‬
‫که‬
‫هستم‬
‫می‌آیی‬
‫افکنش ی‬
‫غیرافکنش ی‬
‫‪15‬‬
‫‪‬‬
‫روش‌های تجزیۀ وابستگی‬
‫‪ ‬مبتنی بر داده‬
‫▪ باناظر (‪)Supervised‬‬
‫▪ مبتنی بر گراف (‪)Graph based‬‬
‫▪ مبتنی بر گذار (‪)Transition based‬‬
‫▪ بی‌ناظر (‪)Unsupervised‬‬
‫▪ نیمه‌ناظر (‪)Semi-supervised‬‬
‫‪ ‬مبتنی بر دستور زبان‬
‫‪16‬‬
‫‪‬‬
‫پرداخته‬
‫در این درس تنها به روش‌های تجزیۀ باناظر مبتنی بر داده ‌‬
‫می‌شود‪.‬‬
‫‪17‬‬
‫ تجزیۀ بی‌ناظر‬
:‫ مقالۀ اصلی‬
▪ D. Klein and C. D. Manning, "Corpus-based induction of syntactic structure:
Models of dependency and constituency," ACL 2004.
‫ پایان‌نامه‌های مرتبط‬
▪ Dan Klein, "The Unsupervised Learning of Natural Language Structure," Phd
Thesis, Stanford University, 2005.
▪ Noah Smith, "Novel estimation methods for unsupervised discovery of latent
structure in natural language text," PhD Thesis, Johns Hopkins University,
2006.
▪ Shay B. Cohen, "Computational Learning of Probabilistic Grammars in the
Unsupervised Setting.," PhD Thesis, Carnegie Mellon University, 2011.
...‫ و‬
▪ Mohammad Sadegh Rasooli and Heshaam Faili, "Fast Unsupervised
Dependency Parsing with Arc-Standard Transitions," in EACL Workshop on
ROBUS-UNSUP, 2012.
18
‫تجزیۀ نیمه‌ناظر‬

▪ T. Koo, X. Carrecas and M. Collins, "Simple Semisupervised Dependency Parsing," in ACL-HLT 2008.
▪ G. Druck, G. Mann and A. McCallum, "Semi-supervised
Learning of Dependency Parsers using Generalized
Expectation Criteria," in ACL 2009.
‌‫تجزیۀ مبتنی بر دستور‬
‫ فصل چهارم کتاب مرجع‬
19

‫‪‬‬
‫در مجموع در نوع روش مطرح در تجزیۀ وابستگی وجود دارد‪:‬‬
‫‪ ‬مبتنی بر گراف‬
‫‪ ‬مبتنی بر گذار‬
‫‪20‬‬
‫‪‬‬
‫هدف پیدا کردن بهترین درخت وابستگی با استفاده از الگوریتم‌های‬
‫گرافی است‪.‬‬
‫‪ ‬این روش به طور کلی به دو نوع روش تقسیم می‌شود‪:‬‬
‫‪ ‬تجزیۀ افکنش ی‬
‫‪ ‬تجزیۀ غیرافکنش ی‬
‫‪ ‬مطالعۀ بیشتر‬
‫‪R. McDonald, "Discriminative Training and Spanning Tree Algorithms‬‬
‫‪‬‬
‫‪for Dependency Parsing," PhD Thesis, University of Pennsylvania, 2006.‬‬
‫‪21‬‬
‫‪‬‬
‫الگوی تجزیه )‪𝑀 = (ℾ,λ,h‬‬
‫‪ℾ ‬مجموعه‌ای از محدودیت‌ها روی ساختارهای قابل قبول‌‬
‫‪ λ ‬مجموعه‌ای از مؤلفه‌ها‬
‫‪ h ‬الگوریتم ثابت تجزیه‬
‫‪‬‬
‫در نتیجه امتیاز یک گراف ‪ G‬به صورت زیر می‌شود‬
‫‪Score G = Score V, A ∈ ℝ‬‬
‫‪22‬‬
‫‪‬‬
‫برای زیرگراف‌های 𝜓 و مجموعۀ زیرگراف‌های 𝐺𝛹 مربوط به گراف‬
‫𝐺 تابع 𝑓 تعریف می‌شود‬
‫𝐺𝛹 ∈ 𝑖𝜓 ; 𝑞𝜓 ‪𝑆𝑐𝑜𝑟𝑒 𝐺 = 𝑓 𝜓1 , 𝜓2 , … ,‬‬
‫‪‬‬
‫ً‬
‫معموال فرض می‌شود که این تابع برابر با جمع مؤلفه‌‌های‬
‫زیرگراف‌هاست‪𝜆𝜓 :‬‬
‫𝐺𝛹∈𝜓‬
‫= 𝑔 𝑒𝑟𝑜𝑐𝑆‬
‫‪23‬‬
‫‪‬‬
‫تعریف چهار مسأله الزامی به نظر می‌رسد‪:‬‬
‫‪ ΨG -1‬برای گراف 𝐺‪.‬‬
‫‪λ = {𝜆𝜓 |𝑓𝑜𝑟 𝑎𝑙𝑙 𝜓 ∈ ΨG ,𝑓𝑜𝑟 𝑎𝑙𝑙 𝐺 -2‬‬
‫}𝑆 𝑙𝑙𝑎 𝑟𝑜𝑓‪.∈ 𝒢𝑠 ,‬‬
‫‪ -3‬تابع برای یادگیری ‪ λ‬از روی داده‌های برچسب‌دار‪.‬‬
‫‪ -4‬الگوریتم تجزیۀ )‪. ℎ ℾ,λ,h = argmaxG∈𝒢𝑠 Score (G‬‬
‫‪24‬‬
‫‪‬‬
‫این الگوریتم با عامل در نظر گرفتن وزن یال‌ها سعی در پیدا کردن‬
‫بهترین درخت را دارد (‪.)Arc-factored‬‬
‫‪ ‬بر این اساس الگوریتم‌های تجزیۀ افکنش ی و غیرافکنش ی نیز تعریف می‌شود‪.‬‬
‫= 𝑔 𝑒𝑟𝑜𝑐𝑆‬
‫) 𝑗𝑤‪𝜆(𝑤𝑖 ,𝑟,‬‬
‫𝐴∈) 𝑗𝑤‪(𝑤𝑖 ,𝑟,‬‬
‫𝑗𝑤‪𝑤𝑖 ,𝑟,‬‬
‫𝑠𝒢∈𝐺𝑥𝑎𝑚𝑔𝑟𝑎 = 𝐺 𝑒𝑟𝑜𝑐𝑆 𝑠𝒢∈𝐺𝑥𝑎𝑚𝑔𝑟𝑎 = )‪(ℾ, 𝜆, ℎ‬‬
‫𝜆‬
‫𝐴∈ 𝑗𝑤‪𝑤𝑖 ,𝑟,‬‬
‫‪25‬‬
‫‪‬‬
‫هدف پیدا کردن درخت جهت‌دار پوشای بهینه است‬
‫‪Chu-Liu-Edmonds ‬‬
‫▪ در این الگوریتم به صورت حریصانه بهترین یال‌های واردشده به هر گره انتخاب‬
‫می‌شود‪.‬‬
‫▪ در صورت وجود دور‪ ،‬یکی از دورها را با پیدا کردن بهترین یال واردشده به یکی از‬
‫یال‌های آن دور رفع می‌کند‪.‬‬
‫▪ الگوریتم به صورت بازگشتی اجرا می‌شود‪.‬‬
‫▪ در بدترین حالت با ) ‪ O(n3‬حل می‌شود‪.‬‬
‫‪26‬‬
27
28
29
30
31
‫‪‬‬
‫الگوریتم ‪ CKY‬برای تجزیۀ بهینه با استفاده از برنامه‌نویس ی پویا‬
‫مناسب است‪.‬‬
‫𝑖 > 𝑗 𝑓𝑖 ) 𝑗𝑤‪𝐶 𝑠 𝑞 𝑖 + 𝐶 𝑞 + 1 𝑡 𝑗 + 𝜆(𝑤𝑖,‬‬
‫𝑗 > 𝑖 𝑓𝑖‬
‫‪‬‬
‫𝑗𝑤‪𝑤𝑖 ,‬‬
‫𝜆‪𝐶 𝑠 𝑞 𝑗 +𝐶 𝑞+1 𝑡 𝑖 +‬‬
‫𝑥𝑎𝑚‬
‫𝑡≤𝑗≤𝑠‪𝑠≤𝑞<𝑡,‬‬
‫= 𝑖 𝑡 𝑠𝐶‬
‫پیچیدگی محاسباتی الگوریتم ) ‪ 𝑂(𝑛5‬است‪.‬‬
‫‪32‬‬
‫‪‬‬
‫نحوۀ ترکیب و تجزیۀ زیردرخت‌ها با برنامه‌نویس ی پویا‬
‫‪33‬‬
‫‪‬‬
‫نحوۀ کار الگوریتم ‪CYK‬‬
‫‪34‬‬
‫الگوریتم آیزنر‬

Jason M. Eisner, "Three new probabilistic models for dependency
parsing: An exploration," in COLING 1996.
35
36
‫‪‬‬
‫در این الگوریتم با در نظر داشتن وابسته‌ها چپ و راست به صورت‬
‫جداگانه و مستقل از هم سرعت الگوریتم باال می‌رود () ‪.)𝑂(𝑛3‬‬
‫‪‬‬
‫این الگوریتم در عمدۀ روش‌های بی‌ناظر تجزیۀ وابستگی به کار رفته‬
‫است‪.‬‬
‫‪ D. Klein and C. D. Manning, "Corpus-based induction of‬‬
‫"‪syntactic structure: Models of dependency and constituency,‬‬
‫‪ACL 2004.‬‬
‫‪37‬‬
‫) 𝑗𝑤 ‪𝝀(𝑤𝑖 ,𝑟,𝑤𝑗 ) = 𝒘. 𝒇(𝑤𝑖 , 𝑟,‬‬
‫‪‬‬
‫‪ f‬نشان‌دهندۀ تابع ویژگی است‪:‬‬
‫‪ ‬برچسب اجزای سخن (‪)POS‬‬
‫‪ ‬واژه‬
‫‪... ‬‬
‫‪‬‬
‫‪ w‬وزن مورد نظر برای هر نوع ویژگی است‬
‫‪‬‬
‫این وزن‌ها با الگوریتم‌هایی مانند شبکۀ عصبی پرسپترون یاد گرفته‬
‫می‌شود‪.‬‬
‫‪38‬‬
ℎ 𝑆, ℾ, 𝝀 =
𝑎𝑟𝑔𝑚𝑎𝑥𝐺=
𝜆
𝑉,𝐴 ∈𝒢𝑠
𝑤𝑖 ,𝑟,𝑤𝑗 ∈𝐴
39
𝑤𝑖 ,𝑟,𝑤𝑗
= 𝑎𝑟𝑔𝑚𝑎𝑥𝐺= 𝑉,𝐴
𝒘. 𝒇 𝑤𝑖 , 𝑟, 𝑤𝑗
∈𝒢𝑠
𝑤𝑖 ,𝑟,𝑤𝑗 ∈𝐴
‫‪‬‬
‫چیزی که تاکنون گفته شد‪ ،‬مربوط به وابستگی مرتبۀ ‪ 1‬بوده است‪.‬‬
‫‪ ‬یال‌ها از هم مستقل تشکیل می‌شوند‪.‬‬
‫‪ ‬وابسته بودن یال‌ها باعث پیچیدگی الگوریتم می‌شود‪.‬‬
‫‪ ‬تجزیۀ مرتبۀ دوم‬
‫‪ ‬تجزیۀ مرتبۀ سوم‬
‫‪▪ T. Koo and M. Collins, "Efficient third-order dependency‬‬
‫‪parsers," in ACL 2010.‬‬
‫‪40‬‬
41
2 ‫ و‬1 ‫مرتبۀ‬

 http://www.ryanmcd.com/MSTParser/MSTParser.html
 https://github.com/rasoolims/MSTParserCSharp/
3 ‫ مرتبۀ‬
 http://groups.csail.mit.edu/nlp/dpo3/
42
‫‪‬‬
‫سامانۀ گذار یک دستگاه انتزاعی ‪ ،‬شامل تعدادی پیکربندی‬
‫(حالت ) و گذار (انتقال) بین این پیکربندی‌هاست‪.‬‬
‫‪‬‬
‫یکی از راه‌های مرسوم برای نمایش پیکربندی استفاده از پشته و‬
‫حافظۀ ورودی است‪.‬‬
‫‪43‬‬
.‫روش‌های مختلفی برای تجزیۀ مبتنی بر گذار وجود دارد‬

.‫) برای درخت‌های افکنش ی است‬arc-standard( ‫معیار‬-‫تجزیۀ یال‬

‫ در این الگوریتم تضمینی بر درست شدن درخت وجود ندارد و جنگلی از‬
.‫درخت‌ها ممکن است تشکیل شود‬

Joakim Nivre. 2004. Incrementality in deterministic dependency parsing. In
Workshop on Incremental Parsing: Bringing Engineering and Cognition Together,
pages 50–57.
44

S: Stack of processed words

I: Buffer of unprocessed words

A: Set of arcs created until now
: : An empty arcset

45
Stack
Buffer
You
are
very
good
Arc-sets
You are very good
46
Fast Unsupervised Dependency Parsing with Arc-Standard Transitions
Stack
Buffer
You
are
very
good
Arc-sets
Action
Shift
You are very good
47
Fast Unsupervised Dependency Parsing with Arc-Standard Transitions
Stack
Buffer
You
are
very
good
Arc-sets
Action
Shift
You are very good
48
Fast Unsupervised Dependency Parsing with Arc-Standard Transitions
Stack
You
Buffer
are
very
good
Arc-sets
Action
Left-Reduce
Rel(are, You)
You are very good
49
Fast Unsupervised Dependency Parsing with Arc-Standard Transitions
Stack
Buffer
are
very
good
Arc-sets
Action
Shift
Rel(are, You)
You are very good
50
Fast Unsupervised Dependency Parsing with Arc-Standard Transitions
Stack
are
Buffer
very
good
Arc-sets
Action
Shift
Rel(are, You)
You are very good
51
Fast Unsupervised Dependency Parsing with Arc-Standard Transitions
Stack
are
very
Buffer
good
Arc-sets
Left-Reduce
Action
Rel(are, You)
`
Rel(good, very)
You are very good
52
Fast Unsupervised Dependency Parsing with Arc-Standard Transitions
Stack
are
Buffer
good
Arc-sets
Action
Right-Reduce
Rel(are, You)
Rel(are, good)
53
`
Rel(good, very)
You are very good
Fast Unsupervised Dependency Parsing with Arc-Standard Transitions
Stack
Buffer
are
Arc-sets
Action
Right-Reduce
Rel(are, You)
Rel(are, good)
Rel(root, are)
54
`
Rel(good, very)
You are very good
Fast Unsupervised Dependency Parsing with Arc-Standard Transitions
‫مطالعۀ بیشتر در‬


Joakim Nivre, “Algorithms for deterministic incremental dependency
parsing,” Computational Linguistics, 34(4), PP. 513—553, 2008.
‫استفاده از برنامه‌نویس ی پویا‬


L. Huang and K. Sagae, "Dynamic programming for linear-time
incremental parsing," in ACL, 2010.

S.B. Cohen, C. Gomez-Rodrigez and G. Satta, "Exact inference for
generative probabilistic non-projective dependency parsing," in EMNLP,
PP. 1234—1245, 2011.
55
‫‪‬‬
‫دادۀ آموزش ی تبدیل به گذارها می‌شود‪.‬‬
‫‪‬‬
‫با استفاده از یادگیرنده‌ها (مانند ‪ )SVM‬الگوی تجزیه یاد گرفته‬
‫می‌شود‪.‬‬
‫‪‬‬
‫نرم‌افزار متن‌باز موجود‪:‬‬
‫‪http://www.maltparser.org/‬‬
‫‪56‬‬

R. McDonald and J. Nivre, "Analyzing and integrating dependency
parsers," Computational Linguistics, 37(1), PP. 197--230, 2011.

B. Bohnet and J. Kuhn, "The Best of Both Worlds – A Graph-based
Completion Model for Transition-based Parsers," in EACL 2012.
57
‫‪‬‬
‫دادۀ آموزش ی جملۀ «آگاه هستم که می‌آیی» را با روش مقالۀ زیر‬
‫بسازید‪:‬‬
‫‪J. Nivre, "Non-projective dependency parsing in expected linear‬‬
‫‪‬‬
‫‪time," in ACL 2009.‬‬
‫‪‬‬
‫دادۀ آموزش ی جملۀ «صحبت با تو را دوست دارم» را با روش‬
‫مشتاق به یال (‪ )arc-eager‬بسازید (ر‪.‬ک‪ .‬فصل ‪ 3‬کتاب‬
‫مرجع)‪.‬‬
‫‪58‬‬
‫با تشکر از توجه شما‬
‫‪59‬‬