بخشی از مقاله
چکیده
مسئلهی دستهبندی موضوعی پرسوجوها یکی از مسائل چالش برانگیز و مهم در زمینه دادهکاوی است که در بسیاری از زمینهها نظیر موتورهای جستجو، سیستم پرسش و پاسخ و سیستمهای آنلاین تبلیغات کاربرد دارد. با وجود اهمیت بسیار بالای دستهبندی موضوعی پرسوجوها، هنوز پژوهشی در این زمینه برای زبان فارسی صورت نگرفته است لذا در این مقاله سعی شده است، در ابتدا راهکاری برای دستهبندی موضوعی پرسوجوهای زبان فارسی ارائه گردد و سپس بر اساس آن پرسوجوهای لاگ موتور جستجوی بومی تحلیل شود.
دو روش مبتنی بر مدل زبانی و اسناد مرتبط با پرسوجو ارائه شده است که هر دو روش از نسخهی توسعه یافتهی مجموعه دادهی همشهری به عنوان داده آموزشی استفاده مینمایند. برای ارزیابی روشهای ارائه شده از یک مجموعه داده استاندارد برای دستهبندی موضوعی پرسوجوهای فارسی شامل 7000 پرسوجو و دستهی موضوعی آنها، استفاده شده است. نتایج حاصل شده حاکی از عملکرد مناسب روشهای پیشنهادی برای دستهبندی موضوعی پرسوجوهای زبان فارسی دارند.
مقدمه
دستهبندی موضوعی پرسوجوها یک مسئلهی تعریف شده در داده کاوی است که به این صورت تعریف میشود: سیستم دستهبندی موضوعی پرسوجوها، پرسوجو کاربر را به عنوان ورودی گرفته و دستهی موضوعی مربوط به آن را از میان چند دستهی از پیش تعریف شده استخراج میکند. دستهبندی موضوعی پرسوجوها در بسیاری از کاربردها مبتنی بر اینترنت مانند موتورهای جستجو، سیستمهای پرسش و پاسخ و سرویسهای آنلاین تبلیغات 1 کاربرد دارد.
یکی از مهمترین کاربردهای سیستم دستهبندی خودکار پرسوجوها در موتورهای جستجو است. به عنوان مثال موتورهای جستجو در صورتی که دستهی موضوعی پرس-وجوی کاربر را تشخیص دهند میتوانند تبلیغات متناسب با آن دستهی موضوعی را به کاربر نمایش دهند علاوه بر این تشخیص خودکار دستهی موضوعی پرسوجو در دقت بازیابی اسناد مرتبط با پرسوجو نیز تاثیر گذار خواهد بود. اهمیت موتورهای جستجو به عنوان دروازه ورودی اینترنت بسیار مهم است زیرا این موتورهای جستجو هستند که کاربران به وسیله آنها در اینترنت گشت و گذار نموده و حتی گاهی اوقات، مخاطب را به سمت و سویی هدایت میکنند. لذا تحلیل رفتار کاربران در موتورهای جستجو از اهمیت بالایی برخوردار است.
یکی از روشهای اصلی تحلیل رفتار کاربران موتور جستجو از طریق تحلیل لاگ موتور جستجو است که همواره مورد توجه بسیاری از پژوهشگران بوده است.[4-1] اما چالش بزرگ برای تحلیل لاگ حجم بسیار بالای اطلاعات در لاگ موتور جستجو است. دستهبندی موضوعی خودکار پرسوجوها یکی از راههای کاهش حجم دادهها برای تحلیل رفتار کاربران در موتور جستجو است. اما چالش اصلی دستهبندی موضوعی پرسوجوها طول کوتاه پرسوجوها و مبهم بودن آن است .[5] آزمایشات ما نشان میدهد که میانگین طول پرسوجوهای کاربران در لاگ موتور جستجوی بومی پارسیجو برابر 2,9 کلمه بوده است همچنین در [5] نشان دادهشده است که 80 درصد از پرسوجوهای کاربران کمتر از 3 کلمه بوده است. طول کوتاه پرسوجوها باعث میشود که بردار ویژگی مربوط به پرسوجو بسیار تنک شود.
چالش دیگر مبهم بودن پرسوجوها است. بسیاری از پرسوجوها مبهم میباشند و ممکن است در چندین دستهی موضوعی قرار گیرند لذا پیدا کردن دستهی موضوعی درست دشوار خواهد بود. در این مقاله هدف ما ارائهی راهکاری برای دستهبندی موضوعی پرسوجوهای زبان فارسی است. برای این کار دو روش پیشنهاد شده است: روش اول مبتنی بر بازیابی اسناد مرتبط با پرسوجو است. به این صورت که در ابتدا لیستی از اسناد مرتبط با پرسوجو از یک مجموعه داده که شامل تعداد زیادی اسناد به همراه برچسپ موضوعی آنها است، بازیابی شده سپس بر اساس دستهی موضوعی این اسناد، موضوع پرسوجو تعیین میگردد.
روش دوم مبتنی بر مدل زبانی است به این صورت که برای دستههای موضوعی مختلف بر اساس همان مجموعه اسناد برچسپ خورده یک مدل زبانی ایجاد شده و در نهایت به کمک این مدلهای زبانی دستهی موضوعی پرسوجو تعیین میگردد. برای مجموعه اسناد برچسپ خورده از نسخهی توسعه داده شده مجموعه داده همشهری [6] استفاده شده است. ادامهی مقاله به صورت زیر سازماندهی شده است: در بخش دوم پژوهشهای صورت گرفته در حوزه دستهبندی موضوعی پرسوجوها بررسی میشود. در بخش سوم مجموعه دادهای که برای دستهبندی و بررسی عملکرد روشهای پیشنهادی استفاده شده معرفی میشود. سپس در بخش چهارم به معرفی الگوریتمهای پیشنهادی پرداخته میشود. نتایج حاصل شده و تحلیل آنها در بخش پنجم ارائه شده و در آخر به جمعبندی و کارهای آینده پرداخته میشود.
کارهای مرتبط
دستهبندی پرسوجوها از دیدگاههای مختلف مورد توجه بسیاری از محققین بوده است. به عنوان مثال، دستهبندی زمانی2 پرسوجوها در پژوهشهایی مانند [7-9] بررسی شده است درحالی که مقالاتی مانند 11]،[10 پرسوجوهای فضایی را دستهبندی میکنند. در [12] راهکاری برای دسته بندی پرسوجوهای پرسشی ارائه شده است. به صورت کلی روشهای دستهبندی پرسوجوها در یکی از دستههای زیر قرار میگیرند:
• دستهی اول روشهایی هستند که با استفاده از منابع خارجی - منابعی به غیر از خود پرسوجو - پرسوجوی کاربر را توسعه دادهاند منابع خارجی استفادهشده شامل: صفحات بازگرداننده شده برای پرسوجو توسط موتور جستجو، مجموعه داده خارجی موجود و استفاده از دستهبندیهای موجود به عنوان یک دستهبندی واسط برای دستهبندی نهایی پرسوجو 13]، .[14
• دسته دوم روشهایی هستند از یادگیری با ناظر3 استفاده کردهاند و از دادههای برچسب نخورده برای بهبود یادگیری استفاده نمودهاند5]، .[15
• دسته سوم روشهایی هستند که اقدام به توسعه دادههای آموزش4 با استفاده از دستهبندی کردن خودکار تعدادی پرس وجو به کمک داده های مانند کلیک کاربران، نموده اند.[16]
• دستهی چهارم روشهای آگاه از زمینه که در این حالت رفتار کاربر را نیز در نظر میگیرند .[17]
دستهبندی موضوعی پرسوجوها با برگزاری رقابت [18] KDDCCUP در 2005 بیشتر از قبل مورد توجه قرار گرفت. در این رقابت از شرکتکنندگان خواسته شده بود 800000 پرسوجو را به 67 دسته از پیش تعیین شده دستهبندی کنند. [19] با ارائهی یک روش دستهبندی جدید مبتنی بر ساخت پل، راهکاری ارائه کرد که از تمامی روشهای پیشنهادی در رقابت KDDCUP بهتر عمل کند. [20] با استفاده از پرسوجوها از پیش دستهبندی شده به صورت دستی، روشی برای دستهبندی موضوعی پرسوجوها ارائه داد. راهکار ارائه شده در [21] فقط از ویژگیهای کلمات موجود در پرسوجو استفاده میکند و هیچ اطلاعات بیرونی و اضافهای در روش دیده نمیشود. در یکی از پژوهشهای اخیر، [22] روشی سریع و مقیاسپذیر برای دستهبندی موضوعی پرسوجو ارائه داده که مبتنی بر بازیابی صفحات مرتبط ویکیپدیا است.
مجموعه داده
یکی از پیشنیازهای اصلی مسئلهی دستهبندی موضوعی پرسوجوها، دادههای آموزش است. در این راستا مجموعه دادهی همشهری[6] توسعه داده شده است. مجموعه داده همشهری خبرهای تا سال 1385 را شامل میشود. در این مقاله این مجموعه داده گسترش داده شده است طوری که شامل حدود 500 هزار خبر به همراه برچسب موضوعی آنها است. این مجموعه شامل خبرهای همشهری از سال 1375 تا 1395 میباشد. مجموعه اسناد همشهری با خزش - Crawl - وب سایت همشهری و چندین مرحله پیشپردازش و برچسبگذاری حاصل آمده است. در نمودار شکل 1 تعداد اسناد مربوط به هر دسته نشان داده شده است.
همان طور که مشخص است تعداد اسناد مربوط به برخی از دستهها کم میباشد که در آینده سعی خواهد شد که این مجموعه داده از طریق خزش سایتهای تخصصی مربوط به هر دستهی موضوعی، توسعه داده شود. اما برای ارزیابی روشهای پیشنهادی به یک مجموعه داده استاندارد نیاز هست. در این راستا به صورت تصادفی 7000 پرسوجو از لاگ موتور جستجوی بومی پارسیجو5 انتخاب شده است و هر پرسوجو به 3 کاربر انسانی مختلف داده شده است که هر کابر دستهی موضوعی پرسوجو را مشخص نموده است. لازم به ذکر است این مجموعه داده در آدرس - webazma.itrc.ac.ir - قابل دسترس است.
روشهای پیشنهادی
در این بخش به بررسی روشهای پیشنهادی برای دستهبندی موضوعی پرسوجوها خواهیم پرداخت. ابتدا روش مبتنی بر بازیابی اطلاعات و سپس روش مدل زبانی بررسی میگردد.
-4-1 روش مبتنی بر بازیابی اسناد مرتبط
روش پیشنهادی بر اساس روشهای مختلف بازیابی اطلاعات و همچنین تکنیک رایدهی عمل میکند . مراحل انجام روش پیشنهادی برای دسته بندی یک پرسوجو به صورت زیر است:
• نمایه کردن مجموعه داده آموزش تهیه شده، توسط نرم افزار متن باز - Terrier6یک نرم افزار متن باز برای بازیابی اطلاعات -
• بازیابی N سند مرتبط اول با پرسوجوی ورودی از مجموعه داده همشهری نمایه شده با استفاده از چهار روش مختلف بازیابی اطلاعات - BM25, BB2, LM , LemurTF_IDF -
• ترکیب اسناد بازیابی شده با استفاده از روشهای مختلف ترکیب اطلاعات و استخراج M سند خیلی مرتبط با پرس-وجوی ورودی
• دستهبندی موضوعی پرسوجوها بر اساس دستهی موضوعی
M سند مرتبط استخراج شده
یکی از مراحل کلیدی روش ارائه شده برای دستهبندی پرسوجوها انتخاب M سند مرتبط با پرسوجو از مجموعه داده آموزش است. انتخاب درست این M سند در دقت روش دستهبندی بسیار تاثیر گذار است زیرا در صورتی که یک سند مرتبط وجود داشته باشد ولی جزو این M سند نباشد و یا اینکه سند نامرتبطی باشد که به صورت نادرست جزو این M سند قرار گرفته باشد دقت روش دستهبندی پایین میآید.
لذا در این بخش سعی شده است این M سند با دقت مناسبتری بازیابی شود به صورتی که M سند خیلی مرتبط بازیابی شود. برای این کار از روشهای مختلف ترکیب اطلاعات استفاده شده است. برای این کار ابتدا N سند مرتبط با پرسوجوی کاربر را به کمک چهار روش مختلف بازیابی اطلاعات بازیابی میکنیم و سپس به هر کدام از این اسناد یک امتیاز جدید نسبت میدهیم و در نهایت این اسناد بر اساس امتیاز جدید مرتبط شده و M سند مرتبط را از میان این لیست جدید بازیابی میکنیم. روشهای زیر برای محاسبهی امتیاز جدید اسناد و ترکیب اسناد بازیابی شده توسط روشهای مختلف ارائه شده است:
روش اول : ترکیب بر اساس تعداد: امتیاز جدید در این روش بر اساس تعداد عمل میکند یعنی امتیاز یک سند برابر است با تعداد دفعاتی که یک سند توسط روشهای بازیابی اطلاعات، بازیابی شده باشد لذا بر این اساس بیشترین امتیاز یک سند برابر 4 است برای حالتی که یک سند توسط هر چهار روش بازیابی شده باشد.
روش دوم : ترکیب بر اساس تعداد و رتبه: مشابه حالت قبلی فقط در این حالت امتیاز جدید یک سند بر اساس رتبه و تعداد نسبت داده میشود. یعنی امتیاز جدید یک سند برابر است با مجموع عکس رتبهی این سند در لیست مربوط به هر کدام از روشها . در این حالت یک سند در صورتی امتیاز بالایی میگیرد که هم توسط روشهای بیشتری از چهار روش بازیابی شده باشد و هم اینکه در هر کدام از این لیستها رتبهی بهتری داشته باشد.
روش سوم: ترکیب بر اساس تعداد و امتیاز: در این حالت امتیاز جدید یک سند بر اساس امتیاز و تعداد نسبت داده میشود. یعنی امتیاز جدید یک سند برابر است با مجموع امتیاز این سند در لیست مربوط به هر کدام از روشها در تعداد دفعاتی که این سند توسط روشهای مختلف بازیابی شده باشد. در این حالت یک سند در صورتی امتیاز بالایی میگیرد که هم توسط روشهای بیشتری از چهار روش بازیابی شده باشد و هم اینکه در هر کدام از این لیستها امتیاز بیشتری کسب کرده باشد.