مقدمه
در سالهای اخیر، مسأله زبانشناسی محاسباتی، یکی از دغدغه های محققان حوزه کامپیوتر و زبانشناسی شده است. استفاده از کامپیوتر و ابزارهای هوشمند باعث شدهاند که بتوان بسیاری از کارهای مرتبط با متن را با سرعت و دقتی قابل توجه انجام داد. علاوه بر این، قدرت وارد شدن به عرصه هایی را که تصور آنها نیز مشکل بوده، فراهم کرده است؛ برای نمونه، ترجمه هوشمند، جستجوگرهای معنایی و بسیاری از کارهای دیگر در این زمینه را میتوان نام برد. همچنین هر یک از زبانهای موجود در دنیا بهتنهایی میتوانند مخاطب تمامی پردازشهای زبانی قرار گیرند. در این راستا و در این مقاله، یکی از این پردازشها با نام «برچسبگذاری ادا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) که ما را در انجام این پروژه یاری رساندهاند، تشکر نماییم.
ضمیمه
مجموعه برچسب پیکره بیجنخان
پینوشتها:
1.Computational linguistic.2. Hidden Markov Model.3. Part Of Speech Tagging.4. Precision.5. Recall.6. Accuracy.7. www.noornet.net.8. www.qiau.ac.ir.منابع:
[1]. Elhadj, Y., 2009, "Statistical Part-of-Speech Tagger for Traditional Arabic Texts", proceeding of Journal of Computer Science 5 (11): 794-800, 2009.[2].Brants, T., 2000. "TnT: A statistical part of speechtagger". Proceedings of the 6th Conference onApplied Natural Language Processing, Apr. 29-May 04, Association for Computational LinguisticsMorristown, New Jersey, USA.,pp: 224-231.http://portal.acm.org/citation.cfm?id=974178[3]. BijanKhan, M. "The Role of the Corpus in Writing a Grammar: An Introduction to a Software", 2004, Iranian Journal of Linguistics, 19(2).[4].Aleahmad, A., Ramezani, Y., Oroumchian, F., 2006, "Using OWA for Persian Part of Speech Tagging".[5]. Raja, F., Amiri, H., Tasharofi, S., Sarmadi, M., Hojjat, H., Oroumchian, F., "Evaluation of Part of Speech Tagging on Persian Text", 2007, Proceedings of the Second Workshop on Computational Approaches to Arabic Script-based Languages, Stanford, California, 21-22.[6]. Assi, S. M., Abdolhosseini, A., H., 2000, "Grammatical Tagging of a Persian Corpus ",proceeding of International journal of corpus linguistics, ISSN 1384-6655, Vol. 5, Nº 1, 2000 , pags. 69-82.[7]. Amiri, H., Hojjat, H., Oroumchian, H., 2007, " Investigation on a Feasible Corpus for Persian POS Tagging" 12th international CSI computer conference, Iran, 2007.[8]. Halteren, H.,Zavrel, J., Daelemans, W., 2001," Improving Accuracy in NLP Through Combination of Machine Learning Systems",Computational Linguistics, 27(2): 199–229.[9]. F. Oroumchian, E. Darrudi& M.R. Hejazi, 2004," Assessmentof a modern Farsi corpus", Proceedings of The 2nd Workshopon Information Technology & its Disciplines (WITID), ITRC, Iran.