بخشی از پاورپوینت
--- پاورپوینت شامل تصاویر میباشد ----
اسلاید 1 :
مقدمه
امروزه با گسترش کاربرد زبان در سیستم های رایانه ای، نیاز به پردازش متون در این سیستم ها، بیش از پیش احساس می شود.
ریشه یابی لغات نه به معنای زبان شناسی آن بلکه به معنای دسته بندی کلمات در گروه های معنایی یکسان، امری است که در بسیاری از زمینه های پردازش زبان طبیعی مدنظر می باشد.
فعالیت بر روی زبان فارسی به دلیل حجم کم تلاشها بر روی ریشه یابی کلمات فارسی، کامل بودن گرامر زبان فارسی و همچنین قابلیت بسط الگوریتم های به دست آمده به خانواده ی زبانهای هند و اروپایی به دلیل قرابت ساختاری آنها بسیار قابل توجه می باشد.
به جز مشکلاتی که در زمینه ی رسم الخط فارسی برای سامانه های رایانه ای وجود دارد (کوشا،1381)، مشکلات دیگری نیز در دل دستور زبان فارسی هست که ماهیتاً پردازش آن را برای یک نرم افزار پیچیده می کند.
اسلاید 2 :
انواع الگوریتم های ریشه یابی
الگوریتم های مبتنی بر دیکشنری : کاملترین الگوریتمهای ریشه یابی هستند. مشکلاتی نظیر :
.1قابلیت گسترش پایین (no scalability)
.2ناتوانی در دسته بندی کلمات در گروه های معنایی همسان
.3درجه زمانی و مکانی بسیار بالا
الگوریتم های مبتنی بر قانون : این الگوریتمها، بر روی به دست آوردن ریشه ی کلمات از طریق تعدادی قوانین از پیش تعیین شده کار می کنند.
.1قوانین موجود ساختارهای زبانشناسی نیستند.
.2مشکلات روش قبل را ندارند.
.3از لحاظ مؤفقیت از درصد پایینی برخوردار هستند.
.4از این دسته الگوریتمها می توان به الگوریتمهای معروف Porter و Lovins و Krovetz... بر روی زبان انگلیسی و الگوریتم ریشه یابی کاظم تقوی و ... بر روی زبان فارسی اشاره کرد.
اسلاید 3 :
بررسی الگوریتم porter :
در هر برنامه جداسازي پسوند در سيستم هاي IR دو مورد بايستي مد نظر باشد.
اول آنكه در سيستم هاي IR پسوندها به هدف افزايش كارائي سيستم حذف مي شوند و نه به لحاظ عمليات زبانشناسي. اين بدان معني است كه لزومي ندارد تا بفهميم تحت چه شرايطي يك پسوند بايستي حذف گردد.
نكته دوم آن است كه با استفاده از روشي كه توضيح داده خواهد شد؛ يعني با استفاده از ليست پسوندها با قوانين اِعمال متعدد، ضريب موفقيت در حذف پسوندها جدا از آنكه اين پردازش چگونه ارزيابي شود، مطمئناً كمتر از 100 درصد خواهد بود.
ريشه ياب پورتر ريشه ياب كاهش دهندة ادغامي براي زبان انگليسي است كه توسط مارتين پورتر در دانشگاه كمبريج در سال 1980 ارائه شد.
اين ريشه ياب بصورت مرحله اي(5 مرحله كه در هر مرحله قوانين خاصي اِعمال مي شود) و خطي می باشد که در ادامه به این مراحل اشاره می کنیم. در هر مرحله عملیات کاهش یا افزایش روی کلمات صورت می گیرد.
اسلاید 4 :
بررسی الگوریتم porter :
در زبان انگليسي يك حرف بي صدا(Consonant) در يك كلمه حرفي غير از A,E,I,O,U و Y بعد از يك حرف صدادار است.(واقعيت آن است كه تعريف حرف بي صدا بصورت بازگشتي در اينجا باعث مبهم شدن تعريف حرف بي صدا نمي شود). بنابراين در TOY حروف بي صدا T و Y هستند و در SYZYGY حروف بي صدا S و Z و Gميباشند.
CVCV ... C
CVCV ... V
VCVC ... C
VCVC ... V
[C]VCVC ... [V]
قوانين براي حذف پسوند در فرم زير نمايش داده مي شود:
(condition) S1-> S2كه به معناي آن است كه اگر كلمه اي با پسوندِ S1 پايان بگيرد و ريشة ماقبل S1 شرطِ(condition) داده شده را ارضا كند، S1 با S2 جايگزين مي شود.
*S: ريشه با حرفِ S پايان مي گيرد(همچنين براي ساير حروف).
*v*: ريشه شامل حرف صدادار است.
*d: ريشه با دو حرف صدادار يكسان پايان مي گيرد(مثل TT وSSو...).
*o: ريشه با cvc پايان مي گيرد بطوريكه دومين c ،حروفِ W،X ياY نيست.(مثل-HOP,-WIL).
اسلاید 5 :
بررسی الگوریتم porter – مراحل روش
در مرحله اول بیشتر با قسمت سوم افعال و صورت جمع کلمات سروکار داریم مثل:
SSES à SS caresses à caress
IES à I ponies à poni
SS à SS caress à caress
...
در مراحل 2 و3 و 4 هم به صورت مشابه قوانین مختلفی استفاده می شود تا به ریشه مورد نظر نزدیک تر شویم مثل :
2 : (m>0) ATIONAL à ATE relational à relate
(m>0) TIONAL à TION conditional à condition
3: (m>0) ATIVE à formative à form
(m>0) ALIZE à AL formalize à formal
4 : (m>1) IBLE à defensible à defens
(m>1) ATE à activate à activ
…
تا اينجا تمامي پسوندها حذف شده است و آنچه كه مانده كمي از مراحله تصفيه (مرحله 5) است. در این مرحله هم عملیاتی نظیر قوانین زیر صورت می گیرد.
(m>1) E -> probate -> probat
…
اسلاید 6 :
در الگوریتم porter هیچ توجه ای به پیش وند ها نمی شود : باعث می شود که نتایج کمی نادرست باشد ولی در عمل اين مسئلة چنداني نيست چونكه وجود پيشوند احتمال كاهشها و ادغامهاي نادرست را كاهش مي دهد.
مزایای عمده این روش :
.1این الگوریتم کوتاه ( كمتر از 400 خط كد به صورت BCPL) و سریع می باشد. (واژگان با 10000 كلمة مختلف را در 8.1 ثانيه بر روي IBM 370/165 در دانشگاه كمبريج پردازش كرده است).
.2ساده و کارا می باشد.
.3قابلیت انعطاف دارد.
اسلاید 7 :
بررسی الگوریتم porter – نتایج اجرای این روش
- در واژگاني با 10000 كلمه كاهش در اندازة ريشه بصورت مراحل زير صورت مي گيرد:
- Suffix stripping of a vocabulary of 10,000 words
- حدودا 3650تا کاهش انجام شده ، كه سرانجام واژگان ريشة حاصل شامل 6370 كلمة يكتاست . بنابراين اين متد جداسازي پسوند، سايز واژگان را به يك سوم كاهش مي دهد.
اسلاید 8 :
الگوریتم کاظم تقوی برای زبان فارسی
این الگوریتم شباهت زيادي به الگوريتم پورتر در انگليسي دارد. الگوريتم بر مبناي ريخت شناسي هستند.
هر دو ريشه ياب به دنبال پسوندهاي خاصي جستجو مي كنند و مراحل مختلفي را بر طبق ليست قوانين پسوندي پشته گذاري شده طي ميكنند. . با اين حال تفاوتهاي مهمي بين اين دو الگوريتم وجود دارد.
براي مثال الگوريتم ريشه ياب پورتر به منظور تخمين محتواي اطلاعات، الگوي حروف صدادار و بي صدا را تشخيص مي دهد؛ اما در فارسي بسياري از حروف صدادار نوشته نمي شوند، بنابراين ريشه ياب فارسي از طول رشته براي تعريف كران پائين محتواي ريشه استفاده مي كند.( در حال حاضر مينيمم طول ريشه 3 است).اين محدوديت در بعضي موارد باعث خطا ميگردد بخصوص زمانيكه يك زيررشته كه قسمتي از يك كلمه كوتاه است ، به اشتباه به عنوان يك پسوند در نظر گرفته شود. تفاوت ديگر اين دو الگوريتم ان است كه اين الگوريتم بر خلاف الگوريتم پورتر ، پيشوندها را هم شناسايي مي كند.
اسلاید 9 :
الگوریتم کاظم تقوی برای زبان فارسی
DFA به صورت يك آرايه دوبعدي كُد مي شود. رديف ها نمايانگر حالات و ستون ها نمايانگر حروف ورودي هستند.
DFA از پايان ورودي ريشه ياب شروع مي كند و تا به سومين حرف از ورودي از ابتدا ادامه مي دهد. DFA هرگز دو حرف ابتداي كلمه ( از سمت راست) را چك نمي كند. در هر دور درايورِ DFA با مشاهدة داده در رديف s وستون l ، حالت بعدي را مشخص مي كند.( s حالت فعلي و l كاراكتر ورودي است) هنگاميكه ماشين DFA به يك حالت نهايي مي رسد، كلمه و شماره حالت به پَس پردازشگر براي حذف پسوند فرستاده مي شود.
اسلاید 10 :
الگوریتم کاظم تقوی برای زبان فارسی
اگر پسوند تشخيص داده شده ، پسوند مالكيت يا پسوند جمع باشد، پس پردازشگر كلمة جداسازي شده را به DFA ميدهد تا بقية پسوندها شناسايي شوند. اگرپسوندهاي پشت سرهم پيدا شوند، در صورتيكه اين پسوندها به كلاسهاي اسمي درستي متعلق باشند، پس پردازشگر آنها را حذف مي كند. هنگاميكه پس پردازشگر يك حالت پسوند فعلي را يافت (همانند حالت 10 در شكلDFA) آنگاه كلمة جداسازي شده را به اتوماتاي پيشوندي مي فرستدكه اين اتوماتا شبيه اتوماتاي پسوندي است.