Presentation is loading. Please wait.

Presentation is loading. Please wait.

Natural language Understanding James Allen

Similar presentations


Presentation on theme: "Natural language Understanding James Allen"— Presentation transcript:

1 Natural language Understanding James Allen
In The Name Of God Natural language Understanding James Allen Chapter 3 : Grammers and Parsing 3-4 : A Bottom - Up Chart Parser NLP -A Bottom-Up Chart Parser Created by S.Ghouth

2 NLP -A Bottom-Up Chart Parser
برای تجزیه و تحلیل و محاسباتی نمودن ساختار جمله به دو مورد زیر باید توجه کرد: گرامر پارس NLP -A Bottom-Up Chart Parser Created by S.Ghouth

3 NLP -A Bottom-Up Chart Parser
گرامر:یک تعریف قاعده مند برای یک ساختار مجاز در زبان. پارس:روش تحلیل یک جمله نمونه برای تعیین ساختار آن براساس گرامر. - پارس فرآیندی برای کنترل صحت ساختار جمله بر اساس گرامر آن است. NLP -A Bottom-Up Chart Parser Created by S.Ghouth

4 NLP -A Bottom-Up Chart Parser
الگوریتم پارس: الگوریتم پارس روالی را برای تولید درخت از جمله ورودی براساس گرامر آن مشخص میکند. الگوریتم پارس موجب تایید یا عدم تایید صحت جمله ورودی در رابطه با گرامر آن میشود. NLP -A Bottom-Up Chart Parser Created by S.Ghouth

5 NLP -A Bottom-Up Chart Parser
روش های پارس: بالا به پایین(Top Down) پایین به بالا(Buttom Up) NLP -A Bottom-Up Chart Parser Created by S.Ghouth

6 بالا به پایین : (Top-Down)
در این روش از نشانه S عملیات پارس را شروع میکنیم تا به ترمینال هایی برسیم که جمله ورودی را تشکیل داده اند . از S شروع می کنیم تا به ترمینال (symbol)برسیم. NLP -A Bottom-Up Chart Parser Created by S.Ghouth

7 پایین به بالا: (Buttom-Up)
در این روش از ترمینالهایی که در جمله ورودی هستند عملیات پارس را شروع می کنیم و این ترمینالها را با طرف چپ قوانین گرامری (غیر ترمینال) جایگزین می کنیم تا به نشانه s برسیم. از ترمینال شروع می کنیم تا به نشانه s برسیم. S VP NP NP N V ART N ali eats an apple NLP -A Bottom-Up Chart Parser Created by S.Ghouth

8 NLP -A Bottom-Up Chart Parser
تعریف: Symbol List: در هر مرحله از الگوریتم پارسر ، حالت فعلی با لیستی از سمبل ها نشان داده میشود. S→NP VP با استفاده از قانون بالا حالت پارسر NPVP است. Lexicon : شامل اطلاعاتی در مورد کلمات (ترمینال ها) می باشد. The:ART Can:N,V,AUX State Of Parser : موقعیت پارسر با یک عدد نمایش داده میشود. 1 The Large can can hold the water 2 3 4 5 6 7 8 NLP -A Bottom-Up Chart Parser Created by S.Ghouth

9 NLP -A Bottom-Up Chart Parser
استراتژی پارس: استراتژي اول – عمق(depth-first strategy) در اين استراتژي حالات ممکنه (possibilities list) در داخل پشته (Stack) قرار مي‌گيرد و به صورت LIFO (Last In First Out) عمل خواهد کرد. استراتژي اول - سطح (breath first strategy) در اين استراتژي حالات ممکنه (possibilities list) در داخل صف (queue) قرار مي‌گيرد و به صورت FIFO (First In First Out) عمل خواهد کرد. NLP -A Bottom-Up Chart Parser Created by S.Ghouth

10 NLP -A Bottom-Up Chart Parser
اختلاف استراتژی پارس: در استراتژي اول عمق (depth-first) : يک مسير ممکن براي جستجو تا زماني که به بن بست يا موفقيت برسد ادامه مي‌يابد. در صورت بن بست، مسير ديگر انتخاب مي‌شود. این استراتژی اغلب سريع به جواب مي‌رسد اما در بعضي مواقع با جستجوي مسير‌هاي بيهوده، زمان زيادي طول مي‌کشد تا به جواب برسد. در استراتژي اول – سطح (breath-first) : تمام مسير‌هاي ممکن در هر مرحله بسط داده مي‌شود. در این استراتژی تمام حالات ممکنه قبل از اينکه وارد عمق پايينتر شود،‌ بررسي مي‌گردد. در هر دو استراتژي به جواب مي‌رسيد اما ترتيب جستجوي آنها با هم متفاوت است. NLP -A Bottom-Up Chart Parser Created by S.Ghouth

11 مشکلات روش بالا به پایین:
ممکن است به حالت پايان نرسند. ممکن است پس از طي مراحل زيادي (نمايي) به جواب برسد و متوقف شود. محاسبات تکراري زياد داريم. NLP -A Bottom-Up Chart Parser Created by S.Ghouth

12 مشکلات روش پایین به بالا:
تمام حالات ممکنه براي زير رشته (substring) توليد شده و ممکن است يک سري از اين حالات اصلا به S ختم نشود و يا اينکه با طرف راست خود نتواند تطبيق پيدا کند. محاسبات تکراري داريم NLP -A Bottom-Up Chart Parser Created by S.Ghouth

13 A Buttom Up Chart Parser:
اختلاف اصلی در روش پارس بالا به پایین و پایین به بالا در نحوه استفاده از قوانین گرامر است. در روش پایین به بالا ، از طرف راست قوانین گرامری به سمت چپ حرکت می کنیم تا به S برسیم در روش پایین به بالا با توجه به عبارت ورودی ، ترتیبی از نشانه ها را در کنار هم قرار می دهیم تا با طرف راست قانون گرامر مطابقت داشته باشد و سپس آن را با طرف چپ قانون جایگزین می کنیم . NP → ART ADJ N در این مثال ، نشانه ها (symbol) را در کنار هم قرار می دهیم تا به ترتیب ART ADJ N برسیم و سپس آن را با NP جایگزین می کنیم. NLP -A Bottom-Up Chart Parser Created by S.Ghouth

14 NP → ART ADJ N پارسر بالا به پایین پارسر پایین به بالا
NLP -A Bottom-Up Chart Parser Created by S.Ghouth

15 NLP -A Bottom-Up Chart Parser
پارسر پایین به بالا را می توان با فرموله کردن فرایند مطابقت بعنوان یک فرایند جستجو در نظر گرفت. حالت(state) شامل لیستی از نشانه ها (symbol list) است. حالات پایانی یا موفقیت ( successor state ) با تشریح همه حالات ممکن تولید می شوند. در این روش ابتدا کلمات (word) را با توجه به طبقه (category)آنها در فرهنگ لغات (Lexicon) بازنویسی میکنیم جایگزین کردن یک رشته از نشانه هایی که طرف راست قوانین گرامری را با طرف چپ مطابقت می دهند. NLP -A Bottom-Up Chart Parser Created by S.Ghouth

16 NLP -A Bottom-Up Chart Parser
Created by S.Ghouth

17 NLP -A Bottom-Up Chart Parser
Key: کلید : جز اصلی در یک گرامر است. The: ART NP → ART N NLP -A Bottom-Up Chart Parser Created by S.Ghouth

18 NLP -A Bottom-Up Chart Parser
برای پیدا کردن قوانینی که با رشته ای که شامل کلید است مطابقت داشته باشد ، باید به دنبال قوانینی باشیم که یا با کلید شروع می شوند یا کلمه کلیدی نزدیک به ابتدای جمله باشد. NLP -A Bottom-Up Chart Parser Created by S.Ghouth

19 NLP -A Bottom-Up Chart Parser
A Simple Grammar 1. S → NP VP 2. NP → ART ADJ N 3. NP → ART N 4. NP → ADJ N 5. VP → AUX VP 6. VP → V NP NLP -A Bottom-Up Chart Parser Created by S.Ghouth

20 NLP -A Bottom-Up Chart Parser
G: 1. S → NP VP 2. NP → ART ADJ N 3. NP → ART N 4. NP → ADJ N 5. VP → AUX VP 6. VP → V NP فرض کنید جمله ای با ART شروع میشود. The large can can hold the water 2. NP → ART ADJ N 3. NP → ART N 4. NP → ADJ N 2'. NP → ART ◦ ADJ N 3'. NP → ART ◦ N 4'. NP → ADJ ◦ N 2''. NP → ART ADJ ◦ N NLP -A Bottom-Up Chart Parser Created by S.Ghouth

21 NLP -A Bottom-Up Chart Parser
Active Arcs: Active Arcs سابقه ی قوانینی را که به صورت جزئی مطابقت داده شده اند ولی کامل نیستند نگهداری می کند. NLP -A Bottom-Up Chart Parser Created by S.Ghouth

22 NLP -A Bottom-Up Chart Parser
G: 1. S → NP VP 2. NP → ART ADJ N 3. NP → ART N 4. NP → ADJ N 5. VP → AUX VP 6. VP → V NP The large 1 2 3 ART1 ADJ1 1 2 3 NP → ART ◦ ADJ N NP → ART ◦ N NP → ADJ ◦ N NP → ART ADJ ◦ N NLP -A Bottom-Up Chart Parser Created by S.Ghouth

23 NLP -A Bottom-Up Chart Parser
:Agenda عمل اصلی یک پارسر chart-basedشامل ترکیب یک active arc با یک عضو کامل می باشد و نتیجه آن ایجاد یک عضو کامل جدید یا یک active arc جدید است. اعضای کامل جدید در یک لیست بنام agenda نگهداری میشوند تا زمانی که خودشان به chart اضافه شوند NLP -A Bottom-Up Chart Parser Created by S.Ghouth

24 :The Arc Extension Algorithm
NLP -A Bottom-Up Chart Parser Created by S.Ghouth

25 A Bottom-up chart parsing algoritm:
Do until there is no input left: 1.If the agenda is empty, look up the interpretations for the next word in the input and add them to the agenda. 2.Select a constituent from the agenda(lets call it constituent C from position P1 to P2). 3.For each rule in the grammar of form X → C X1 … Xn, add an active arc of from X → C ◦ C ◦ X1 … Xn from position p1 to p2. 4.Add C to the chart using the arc extention algorim above. Created by S.Ghouth NLP -A Bottom-Up Chart Parser

26 NLP -A Bottom-Up Chart Parser
همانطور که در پارسرهای بالا به پایین ممکن است از استراتژی جستجوی سطحی یا عمقی استفاده کنید،agenda هم در یک پشته یا صف اجرا می شود. در اینجا یک مثال با استراتژی اول عمق دنبال می کنیم. NLP -A Bottom-Up Chart Parser Created by S.Ghouth

27 NLP -A Bottom-Up Chart Parser
A sample: Input: The large can can hold the water. Lexicon: the: ART large: ADJ can: N, AUX, V hold: N, V water: N, V NLP -A Bottom-Up Chart Parser Created by S.Ghouth

28 NLP -A Bottom-Up Chart Parser
G: 1. S → NP VP 2. NP → ART ADJ N 3. NP → ART N 4. NP → ADJ N 5. VP → AUX VP 6. VP → V NP Input: The large can can hold the water. NP (rule4) NP1(rule2) ART1 ADJ1 N1 AUX1 V1 1 The 2 large 3 can 4 NP → ART ◦ ADJ N NP → ART ◦ N NP → ADJ ◦ N NP → ART ADJ ◦ N S → NP ◦ VP S → NP ◦ VP VP → AUX ◦ VP VP → V ◦ NP NLP -A Bottom-Up Chart Parser Created by S.Ghouth

29 NLP -A Bottom-Up Chart Parser
The chart after all the NPs are found NP2(rule 4) NP1(rule 2) N1 N2 NP3(rule 3) V1 V2 V3 V4 ART1 ADJ1 AUX1 AUX2 N3 ART2 N4 6 1 The 2 large 3 can 4 can 5 hold The 7 water 8 S → NP ◦ VP S → NP ◦ VP VP → AUX ◦ VP VP → V ◦ NP VP →V◦ NP G: 1. S → NP VP 2. NP → ART ADJ N 3. NP → ART N 4. NP → ADJ N 5. VP → AUX VP 6. VP → V NP VP → AUX◦ VP VP →V◦ NP NP → ART ◦ ADJ N NP → ART ◦ N S → NP ◦ VP Input: The large can can hold the water. VP →V◦ NP Created by S.Ghouth NLP -A Bottom-Up Chart Parser

30 G: 1. S → NP VP 2. NP → ART ADJ N 3. NP → ART N 4. NP → ADJ N 5. VP → AUX VP 6. VP → V NP S1(rule 1 with NP1 and VP2) S2(rule 1 with NP2 and VP2) VP3(rule 5 with AUX1 and VP2) NP2(rule 4) VP2(rule 5) NP1(rule 2) VP1(rule 6) N1 N2 NP3(rule 3) V1 V2 V3 V4 ART1 ADJ1 AUX1 AUX2 N3 ART2 N4 6 1 The 2 large 3 can 4 can 5 hold The 7 water 8 The final chart Created by S.Ghouth NLP -A Bottom-Up Chart Parser

31 NLP -A Bottom-Up Chart Parser
پارسرهایی که براساس چارت کار می کنند بطور قابل ملاحظه ای کارآمدتر از پارسرهایی هستند که فقط بر پایه جستجو عمل می کنند زیرا در پارسرهای Chart-based اعضا بیشتر از یکبار ساخته نمی شوند. یک استراتژی جستجوی بالا به پایین یا پایین به بالا به زمانی معادل Cn ، برای پارس جمله ای به طول n نیاز دارند.(C : ثابتی است که بستگی به الگوریتم مورد استفاده دارد.) اما در پارسرهای Chart-basedدر بدترین حالت به K*n3زمان نیاز داریم.(K : ثابتی است که بستگی به الگوریتم مورد استفاده دارد.) - برای مقایسه فرض کنید K=1000 و C=10 باشد و طول جمله 12کلمه باشد پس داریم 1012 برای الگوریتم های جستجویی و123×1000 برای پارسرهای Chart-base. بااین فرضیات پارسر Chart-base بار سریعتراز الگوریتم های جستجوی می باشد. NLP -A Bottom-Up Chart Parser Created by S.Ghouth

32 NLP -A Bottom-Up Chart Parser
پایان NLP -A Bottom-Up Chart Parser Created by S.Ghouth


Download ppt "Natural language Understanding James Allen"

Similar presentations


Ads by Google