‌‌برچسب‌گذاری ادات سخن متون فارسی به کمک مدل مخفی مارکوف

سه شنبه, 31 خرداد 1390 ساعت 14:58
    نویسنده: محمدحسین الهی‌منش؛ دانشجوی‌ کارشناسی‌ ارشد هوش مصنوعی دانشکده‌ مهندسی کامپیوتر دانشگاه آزاد اسلامی قزوین/ کارشناس گروه پژوهشی متن‌کاوی نور این آدرس ایمیل توسط spambots حفاظت می شود. برای دیدن شما نیاز به جاوا اسکریپت دارید ، دکتر بهروز مینایی؛ عضو هیأت علمی دانشگاه علم وصنعت ایران/ دبیر هیأت علمی مرکز تحقیقات کامپیوتری علوم اسلامی این آدرس ایمیل توسط spambots حفاظت می شود. برای دیدن شما نیاز به جاوا اسکریپت دارید
این مورد را ارزیابی کنید
(1 رای)

چکیده

در این مستند، به یکی از دغدغه‏ های بزرگ در زمینه زبان‏شناسی محاسباتی(1) با نام برچسب‏گذاری ادات سخن (part of speech tagging) پرداخته شده است. برچسب‏گذاری ادات سخن که یکی از پایه‏ای‏ترین نیازهای پردازش هوشمند متن به شمار می‏آید، وابسته به زبان متن مورد پردازش است. از این رو، فراهم شدن برچسب‏گذاری قوی برای زبان فارسی، جزو اولویت‌های کار ما قرار گرفت. تکنیک مورد کاربرد ما برای حل این مسأله، استفاده ازمدل مخفی مارکوف(2) بوده است. این تکنیک در بسیاری از شیوه‏ های برچسب‏گذاری به کاربرده می‏شود؛ برای نمونه، در برچسب‏گذار TNT[2] که یکی از قوی‌ترین برچسب‏گذارها در زبان‏های مختلف است[4, 5, 8]. طبق آزمایش‌های انجام شده ما، با استفاده از این برچسب‏گذار می‏توان با دقت 94.3% برچسب گونه صرفی کلمات فارسی را مشخص نمود.

مقدمه

در سال‌های اخیر، مسأله زبان‏شناسی محاسباتی، یکی از دغدغه‏ های محققان حوزه‌ کامپیوتر و زبان‏شناسی شده است. استفاده از کامپیوتر و ابزارهای هوشمند باعث شده‏اند که بتوان بسیاری از کارهای مرتبط با متن را با سرعت و دقتی قابل توجه انجام داد. علاوه ‏بر ‏این، قدرت وارد شدن به عرصه‏ هایی را که تصور آنها نیز مشکل بوده، فراهم کرده است؛ برای نمونه، ترجمه هوشمند، جستجوگرهای معنایی و بسیاری از کارهای دیگر در این زمینه را می‏توان نام برد. همچنین هر یک از زبان‏های موجود در دنیا به‌تنهایی می‏توانند مخاطب تمامی پردازش‏های زبانی قرار گیرند. در این راستا و در این مقاله، یکی از این پردازش‏ها با نام «برچسب‏گذاری ادا062A سخن»(3) موضوع کار قرار گرفته است. روش مد نظر ما الگو‌ی گرفته از روشElhadj[1] برای برچسب‌گذاری متون عر است. ادامه‌ این مقاله، از سه بخش تشکیل شده است که در بخش اول، توصیفی از برچسب‏گذاری ادات سخن ارائه شده است. بخش دوم، روش پیشنهادی ما را برای فرآیند برچسب‏گذاری توصیف می‏کند. در انتها و در بخش سوم، آمارها و نتایج به دست‌آمده فهرست شده است.

برچسب‏گذاری ادات سخن متن (Text Part-Of-Speech Tagging)

برچسب‌گذاری ادات سخن، به معنای به دست آوردن گونه ‌صرفی کلمات یک متن است. برای نمونه به جدول 1 توجه کنید.

جدول 1: یک نمونه‌ ساده از مجموعه برچسب‌های گونه‌‌ صرفی کلمه

 برچسب‌های معادل کلمات در عبارت «اولین سیاره خارج از منظومه شمسی دیده شد » به صورت ذیل خواهد بود:

کارهای گذشته

در سال‏های اخیر، کارهای زیادی در زمینه برچسب‏گذاری متون فارسی انجام شده است. در سال 2000، عاصی و عبدالحسینی [6] یکی از اولین برچسب‏گذارهای ادات سخن برای زبان فارسی را تولید کردند. این برچسب‏گذار که بر اساس سیستم عامل Dos نوشته است، قادر است برچسب‌های مختلفی از عدد، فعل و اسم را با دقتی بین 69 تا 83 درصد به‌درستی مشخص نماید. در سری کارهای انجام شده در این زمینه، در سال 2004، بی‏ جن‏ خان[3]پیکره‏ای با بیش از 2.6 میلیون کلمه‏ برچسب خورده را برای این کار فراهم نمود. این پیکره دارای 40 برچسب متفاوت است و برچسب‌گذارهای مختلفی نیز بر روی آن ارائه شده است. یکی از برچسب‏گذارهای شکل گرفته بر اساس این پیکره، توسط امیری و همکارانش در سال 2007 ارائه شده است. نتایج آزمایش‌های این مقاله در بهترین حالت، دقت 93.16% را نشان داده است[7].

برچسب‌گذار مبتنی بر مدل مخفی مارکوف (Hidden Markov Model)

استفاده از مدل مخفی مارکوف جهت برچسب‌گذاری گونه‌های کلام را می‌توان به عنوان یک برداشت از تیوری‌های احتمالی دانست. این فرآیند به شرحی که در ادامه می‌آید، اجراء می‏گردد:

سؤال این است که برای یک رشته از کلمات‌ گرفته شده، چه ترتیب برچسبی بهترین ترتیب برچسب برای آن رشته کلمات است؟ اگر ما متن ورودی را (ترتیبی از واحدهای صرفی در کار ما) به صورت  نمایش دهیم و یک ترتیب از برچسب‌های مجموعه برچسب را با  مشخص کنیم، هدف ما این است که محتمل‌ترین دنباله برچسب‌ها را به ازای متن ورودی محاسبه کنیم. این فرایند، به معنای یافتن Tای است که P(T|W) را بیشینه نماید (رابطه1):

رابطه 1

احتمال رخداد ترتیب برچسب‌ها و احتمال‌های مربوط به رخداد کلمه‌ها نشان‌دهنده پارامترهای مدل مخفی مارکوف هستند؛ یعنی احتمال‌های انتقال و صدور (مشاهده) در این مدل. برای یک بار تمامی پارامترها (احتمال‌های یک گرمی، دو گرمی و سه گرمی) مقدار می‌گیرند و سپس به کمک مدل مخفی مارکوف می‌توان بهترین ترتیب برچسب‌ها را برای ترتیب کلمات‌گرفته شده محاسبه کرد.

معیارهای ارزیابی برچسب‌زننده‌های ادات سخن

پس از اعمال برچسب‌گذاری، کلمات به چند دسته تقسیم می‌شوند: اول، کلماتی که دارای جواب بوده و جواب آنها یکتا است. دوم، کلماتی که دارای جواب بوده، ولی تعداد جواب‌ها به ‌ازای هر کلمه از یک بیشتر است و سوم، کلماتی که بدون جواب هستند. معیارهای ارزیابی برچسب‌زن‌ها، بر پایه این تقسیم‌بندی شکل می‌گیرد. همچنین،‌ اینکه میزان ابهام در کلمات دسته دوم چه مقدار است، به عنوان معیاری برای مقایسه استفاده می‌شود.

در طی فرآیند برچسب‏گذاری، پس از طی مرحله برچسب‌زنی اولیه، مرحله دومی که مرحله ابهام‌زدایی از خروجی‌های مرحله اول است، صورت می‌گیرد. این نکته قابل توجه است که در کلماتی که بدون جواب هستند، باز هم نوعی ابهام، اما در حداکثر حالت خود وجود دارد که نیاز به مرحله ابهام‌زدایی را بیش از پیش مشخص می‌کند.

معیار استاندارد برای مقایسه میزان دقت برچسب‌زننده‌ها، معیار F است که به کمک دو مقدار «دقت»(4) و «بازخوانی»(5) محاسبه می‌شود. این دو مقدار با توجه به نتایج برچسب‌گذاری محاسبه می‏شوند.

چنانچه فرض کنیم که متن ورودی جهت برچسب‌گذاری، دارای T کلمه و بالطبع دارای T برچسب مورد نیاز باشد، اگر پس از گرفتن خروجی برچسب‌گذار، تعداد خروجی‌های با جواب برابر با M مورد باشد، و تعداد خروجی‌های درست دسته‌بندی شده از میان این M مورد، برابر با C مورد باشد، خواهیم داشت:

رابطه 1

رابطه 2

رابطه 3

نتایج و آزمایش‌ها

در این پروژه برای انجام آزمایش‌ها از پیکره بی‌جن‏ خان[3] که یک پیکره‌ ‌متنی استاندارد است، استفاده کرده‌ایم. این پیکره تقریباً شامل 2.6 ملیون (2,597,937) کلمه‏ برچسب خورده از پیکره همشهری [9] است. مجموعه برچسب به کار رفته در این پیکره متنی، از 40 برچسب تشکیل یافته که هر یک از آنها بیان‌کننده یک گونه صرفی ‌است.

برای آزمایش، از این پیکره، دو میلیون کلمه را به عنوان داده آموزشی و مابقی را به عنوان داده مورد آزمایش انتخاب کرده‏ایم. در  میان دو میلیون کلمه ابتدایی، از 40 برچسب موجود، 39 برچسب آن دیده شد که مجموعه برچسب مطابق با آن تغییر یافت.

نکته قابل تأمل این است که برای این نوع برچسب‌زنی، نمی‏توان احتمال بیشینه را برای تمامی متن ورودی محاسبه نمود. به همین دلیل، برای برچسب‌زنی هر کلمه، 4 کلمه قبل از آن و 5 کلمه بعد از آن، مورد تحلیل قرار می‏گیرند.

میزان صحت(6) کلی محاسبه شده در این پروژه، حدود 94.3% است که این دقت برای کلمات موجود در بانک آموزشی، بیشتر از 96% و برای کلمات ناشناخته، 58% است. سرعت اجرای این پروژه، در حدود برچسب‏زدن 500 کلمه برثانیه است.

در جدول 2 مقادیر دقت، بازخوانی و معیار F به ازای هر یک از برچسب‏ها محاسبه شده است.

جدول 2: مقادیر دقت، بازخوانی و معیار F به ازای هر یک از برچسب‏ها

توصیف فارسی هر یک از برچسب‌ها، در بخش ضمیمه این نوشتار آمده است. همچنین مقادیر دقت، بازخوانی و معیار F به ازای کل پروژه مطابق با جدول 3 است.

جدول 3: میزان دقت، بازخوانی و معیار F به‌ازای کل پروژه

علت برابر شدن سه مقدار فوق، برچسب‏ خوردن تمامی کلمات خروجی و نبود کلمه بدون جواب است.

نتیجه‌گیری و چشم ‏انداز

این تحقیقات و آزمایش‌ها به ما نشان داد که روش برچسب‏گذار مبتنی بر مدل مخفی مارکوف، برای زبان فارسی بسیار خوب عمل می‏کند. همچنین سرعت بالای به دست آمده در این روش، باعث این شده که بتوان در کاربردهای دیگر و بدون تحمل کردن هزینه زمانی زیاد عمل برچسب‌گذاری را به عنوان پیش‏پردازش انجام داد. با توجه به اینکه غالب خطاهای این برچسب‌گذار را کلمات ناشناخته تشکیل داده‏اند، می‏توان گفت که توسعه روش‏هایی برای برخورد با این گونه کلمات می‏تواند به عنوان بهبودی برای این روش مطرح شود.

سپاس‌گزاری

در پایان، لازم می‌دانیم که از مرکز تحقیقات کامپیوتری علوم اسلامی نور(7) و دانشگاه آزاد اسلامی قزوین(8) که ما را در انجام این پروژه یاری رسانده‌اند، تشکر نماییم.

ضمیمه

مجموعه برچسب پیکره بی‌جن‌خان

 پی‌نوشت‌ها:

منابع:

اطلاعات تکميلي

  • تاریخ انتشار نسخه چاپی: پنج شنبه, 26 خرداد 1390
  • صفحه در فصلنامه: صفحه 102
  • شماره فصلنامه: فصلنامه شماره 34
بازدید 14260 بار
شما اينجا هستيد:خانه سایر مقالات فصلنامه شماره 34 (بهار 1390) ‌‌برچسب‌گذاری ادات سخن متون فارسی به کمک مدل مخفی مارکوف