بخشی از مقاله
خلاصه
در این مقاله، به طرح آزمایشهایی برای مقایسهی مدلهای unigram، bigram، trigram و quadrigram میپردازیم. بدین منظور، در ابتدا فرضیهای راجع به کارایی مدلهای n-gram مطرح کرده و سپس، به منظور بررسی آن فرضیه، آزمایشهایی را طرح میکنیم. همچنین پس از بررسی فرضیه، سوالی را در مورد یکی از کاربردهای مدلهای n-gram - پیشبینی کلمهی بعدی در یک جمله - مطرح کرده و به منظور پاسخ به آن، آزمایشی را طرح خواهیم کرد.
.1 مقدمه
مدلهای n-gram، به منظور تخمین احتمال یک توالی از کلمات در یک متن به کار میروند که این تخمین، با فرض ویژگی مارکوف1 انجام میشود. فرض کنید که بخشی از یک متن - w - را که شامل توالی از کلمات w1، w2، ... ، wm میباشد، در اختیار داریم. احتمال این توالی از کلمات، میتواند توسط قاعدهی زنجیری2 به صورت ضرب احتمالاتی زیر محاسبه شود :[1] یک فرایند مارکوف، یک فرایند تصادفی میباشد که در آن، احتمال حالت بعدی سیستم تنها به حالت فعلی سیستم بستگی دارد و به لحاظ آماری، به حالات قبلی سیستم وابسته نیست.
در بحث مربوط به توالی کلمات، اگر فرض مارکوف را در نظر بگیریم، به این نتیجه خواهیم رسید که احتمال یک کلمه، تنها به تعداد ثابتی از کلمات ماقبل آن بستگی دارد. بنابراین، مدلهای n-gram با تخمین احتمالات ذکر شده در رابطهی - 1 - به احتمالاتی که در آنها، کلمات تنها به n-1 کلمهی قبلی در توالی بستگی دارند، تعریف میشوند. نخستین شخصی که مباحث اساسی ریاضی مربوط به مدلهای n-gram را ارائه داد، مارکوف بود .[2] همچنین شانون1، از مدلهای n-gram به منظور تخمین توالی کلمات انگلیسی استفاده کرد .[3] بر مبنای کار شانون بود که در دههی 50 میلادی، مدلهای مارکوف به منظور مدلسازی توالی کلمات مورد استفاده قرار گرفتند .[4]
استفاده از مدلهای n-gram، کاربردهای متنوع و وسیعی، به خصوص در تحقیقات مربوط به حوزهی پردازش زبان طبیعی2 دارد، که میتوان از حدس کلمه3 و تصحیح غلط املایی4 در یک متن، به عنوان نمونههایی از این کاربردها اشاره کرد .[4] در سالهای اخیر، تحقیقات زیادی در زمینهی استفاده از مدلهای n-gram در حوزهی پردازش زبان طبیعی انجام گرفته است که در ادامه، به ذکر چند نمونه از این تحقیقات پرداخته میشود:
· دستهبندی5 نظرات کاربران نسبت به یک فیلم - به دستههای مثبت، منفی و بیطرف - با تحلیل نقدهای آنها نسبت به آن فیلم، با بهکارگیری مدلهای n-gram در الگوریتمهای یادگیری ماشینی [5]
· تشخیص حملهی 6HTTP با استفاده از تحلیل مدلهای [6] n-gram
· استفاده از مدلهای n-gram به منظور تشخیص صحت یک جمله[7] 7
· دستهبندی خودکار ژانر8 با استفاده از مدلهای n-gram برچسبهای اجزای سخن[8] 9
· ترکیب شبکه عصبی مصنوعی و n-gram به منظور شناسایی خودکار موضوع10 جدید [9]
· تحلیل مدلهای n-gram نحوی به منظور پاسخ به این پرسش که آیا این مدلها ویژگیهای ساختاری متن را انعکاس میدهند یا خیر [10] در این مقاله، به طرح آزمایشهایی برای مقایسهی مدلهای unigram، bigram، trigram و quadrigram می-پردازیم. بدین منظور، در ابتدا فرضیهای راجع به کارایی مدلهای n-gram مطرح کرده و سپس، به منظور بررسی آن فرضیه، آزمایشهایی را طرح میکنیم. همچنین پس از بررسی فرضیه، سوالی را در مورد یکی از کاربردهای مدلهای n-gram مطرح کرده و به منظور پاسخ به آن، آزمایشی را طرح خواهیم کرد.
بدیهی است که قبل از انجام آزمایشها، بایستی مدلهای چهارگانهی مذکور بر روی یک پیکره1 محاسبه شوند train - شوند - . این پیکره، بایستی یک پیکرهی عمومی - مثلا یک روزنامه - باشد و در حدود 500000 کلمه را شامل شود یا اینکه این پیکره، مثلا از 10 سند حدودا 50000 کلمهای تشکیل شده باشد که هر یک از این اسناد در موضوعات خاصی - مثلا یکی در موضوع ورزشی، یکی دینی، یکی علمی و .... - بوده و در کل، پیکره شامل حدود 500000 کلمه باشد. برای محاسبهی مدلهای چهارگانهی ذکر شده، حالات زیر درنظر گرفته میشوند:
الف - برای محاسبهی unigram، تعداد تکرار هر کلمهی یکتا از مجموعه کلمات متمایز2 موجود در پیکره، در نظر گرفته میشود. بنابراین، مدل unigram وابستگی بین کلمات و در نتیجه ترتیب قرار گرفتن کلمات در پیکره را در نظر نخواهد گرفت.
ب - برای محاسبهی bigram، توالی از هر دو کلمه پشت سر هم موجود در پیکره، در نظر گرفته میشود. بنابراین، مدل bigram وابستگی بین هر دو کلمه پشت سر هم در یک پیکره را در نظر خواهد گرفت - احتمال رخداد یک کلمه، وابسته به کلمهی قبل آن در نظر گرفته میشود - .
پ - برای محاسبهی trigram، توالی از هر سه کلمه پشت سر هم موجود در یک پیکره در نظر گرفته میشود. بنابراین، مدل trigram وابستگی بین هر سه کلمهی پشت سر هم در پیکره را در نظر خواهد گرفت - احتمال رخداد یک کلمه، وابسته به دو کلمهی قبل آن در نظر گرفته میشود - .
ت - برای محاسبهی quadrigram، توالی از هر چهار کلمه پشت سر هم موجود در پیکره درنظر گرفته میشود. بنابراین، مدل quadrigram وابستگی بین هر چهار کلمهی پشت سر هم در پیکره را در نظر خواهد گرفت - احتمال رخداد یک کلمه، وابسته به سه کلمهی قبل آن در نظر گرفته میشود - . در واقع میتوان گفت که در مدلهای bigram، trigram و quadrigram، ترتیب قرار گرفتن کلمات موجود در پیکره در نظر گرفته میشود.
در قسمت اول این مقاله، به طرح آزمایشها به منظور مقایسهی کارایی و قدرت پیشبینی مدلهای مختلف n-gram میپردازیم. بدین منظور، در بخش 2 ,1، آزمایشهای مربوط به مقایسهی کارایی مدلهای n-gram مطرح می-شوند. همچنین، در مورد آزمایشهای مرتبط با مقایسهی قدرت پیشبینی مدلهای n-gram در بخش 2,2 بحث خواهد شد. در نهایت در قسمت انتهایی مقاله، نتایج حاصل از پژوهش حاضر، بیان میشوند.
.2 طرح آزمایشها
.2,1 مقایسهی کارایی مدلهای n-gram
فرضیه: "در مدلهای n-gram، هرچقدر که n بالاتر برود، وابستگی بین کلمات بهتر نشان داده شده و زنجیرهی لغوی پیکره، بهتر مدل میشود.