Please enter banners and links.
متن کاوی = استخراج اطلاعات: در این تعریف متن کاوی متناظر با استخراج اطلاعات در نظر گرفته میشود (استخراج واقعیتها از متن).
متن کاوی = کشف داده متنی: متن کاوی را میتوان به عنوان متدها و الگوریتمهایی از فیلدهای یادگیری ماشین و آماری برای متنها با هدف پیدا کردن الگوهای مفید در نظر گرفت. برای این هدف پیش پردازش کردن متون ضروری است. در بسیاری از روشها، متدهای استخراج اطلاعات، پردازش کردن زبان طبیعی یا برخی پیش پردازشهای ساده برای استخراج داده از متون استفاده میشود، سپس میتوان الگوریتمهای داده کاوی را بر روی دادههای استخراج شده اعمال کرد.
متن کاوی = فرایند استخراج دانش: که در بخش قبلی به طور کامل توضیح داده شده است و در اینجا دیگر بیان نمیشود. در این تحقیق ما بیشتر متن کاوی را به عنوان کشف داده متنی در نظر میگیریم و بیشتر بر روی روشهای استخراج الگوهای مفید از متن برای دستهبندی مجموعه های متنی یا استخراج اطلاعات مفید، تمرکز میکنیم.
در دنياي کنوني مشکل کمبود اطلاعات نيست، بلکه مشکل کمبود دانشي است که از اين اطلاعات مي توان بدست آورد. ميليونها صفحه ي وب، ميليونها کلمه در کتابخانههاي ديجيتال و هزاران صفحه اطلاعات در هر شرکت، تنها چند دست از اين منابع اطلاعاتي هستند. اما نميتوان به طور مشخص منبعي از دانش را در اين بين معرفي کرد. دانش خلاصهي اطلاعات است و نيز نتيجه گيري و حاصل فکر و تحليل بر روي اطلاعات.
داده کاوي، يک روش بسيار کارا براي کشف اطلاعات از دادههاي ساختيافتهاي که در جداول نگهداري ميشوند، است. داده کاوي، الگوها را از تراکنشها، استخراج ميکند، داده را گروهبندي ميکند و نيز آنرا دستهبندي ميکند. بوسيلهي داده کاوي ميتوانيم به روابط ميان اقلام دادهاي که پایگاه داده را پر کردهاند، پي ببريم. در عين حال ما با داده کاوي مشکلي داريم و آن عدم وجود عاميت در کاربرد آن است. بيشتر دانش ما اگر به صورت غير ديجيتال نباشند، کاملاً غير ساختيافته اند. کتابخانههاي ديجيتال، اخبار، کتابهاي الکترونيکي، بسياري از مدارک مالي، مقالات علمي و تقريباً هر چيزي که شما ميتوانيد در داخل وب بيابيد، ساختيافته نيستند. در نتيجه ما نميتوانيم آموزههاي داده کاوي را در مورد آنها به طور مستقيم استفاده کنيم. با اين حال، سه روش اساسي در مواجهه با اين حجم وسيع از اطلاعات غير ساختيافته وجود دارد که عبارتند از: بازيابي اطلاعات، استخراج اطلاعات و پردازش زبان طبیعی.
بازیابی اطلاعات: اصولاً مرتبط است با بازيابي مستندات و مدارک. کار معمول دربازیابی اطلاعات اين است که با توجه به نياز مطرح شده از سوي کاربر، مرتبط ترين متون و مستندات و يا در واقع بقچهي کلمه را ازميان ديگر مستندات يک مجموعه بيرون بکشد. اين يافتن دانش نيست بلکه تنها آن بقچهاي از کلمات را که به نظرش مرتبطتر به نياز اطلاعاتي جستجوگر است را به او تحويل ميدهد. اين روش به واقع دانش و حتي اطلاعاتي را برايمان به ارمغان نميآورد.
پردازش زبان طبیعی: هدف کلی پردازش زبان طبیعی رسیدن به یک درک بهتر از زبان طبیعی توسط کامپیوترهاست. تکنیکهای مستحکم و سادهای برای پردازش کردن سریع متن به کار میروند. همچنین از تکنیکهای آنالیز زبان شناسی نیز برای پردازش کردن متن استفاده میشود.
استخراج اطلاعات: هدف روشهای استخراج اطلاعات، استخراج اطلاعات خاص از سندهای متنی است. استخراج اطلاعات ميتواند به عنوان يک فاز پيش پردازش در متنکاوی بکار برود. استخراج اطلاعات عبارتند از نگاشت کردن متنهای زبان طبیعی (مثلا گزارشها، مقالات journal، روزنامهها، ایمیلها، صفحات وب، هر پایگاه داده متنی و…..) به یک نمایش ساختیافته و از پیش تعریف شده یا قالبهایی که وقتی پر میشوند، منتخبی از اطلاعات کلیدی از متن اصلی را نشان میدهند. یکبار اطلاعات استخراج شده و سپس اطلاعات میتوانند در پایگاه داده برای استفادههای آینده، ذخیره شوند.
کاربردهای متن کاوی
در این قسمت تعدادی از کاربردهای متنکاوری را بیان خواهیم کرد. امروزه با وجود حجم زیادی از اطلاعات متنی، متنکاوی از جمله روش های تحقیقی-تجاری میباشد که از اهمیت ویژهای برخوردار است. همه شرکتهای تجاری، تولید کنندگان کالاها، ارائه کنندگان خدمات و سیاستمداران قادرند با بهرهگیری از فرایند متنکاوی دانش مفیدی را به عنوان بازخورد از کالا، خدمات و عملکرد خود دریافت کنند. از جمله کاربردهای متن کاوی میتوان به موارد زیر اشاره نمود:
1.شناساییspam: آنالیز کردن عنوان و محتوای یک ایمیل دریافتی، برای تشخیص اینکه آیا ایمیل میتواند spam باشد یاخیر.
2 .نظارت :یعنی نظارت کردن رفتار شخص یا گروهی از انسانها به صورت پنهان. پروژهای به نام ENCODA تلفن، اینترنت و دیگر وسایل ارتباطی را برای شناسایی تروریسم نظارت میکند.
3. شناسایی نامهای مستعار: نامهای مستعار در مراقبتهای پزشکی برای شناسایی تقلبها آنالیز میشوند. برای مثال یک صورت حساب ممکن هست با نام John Smith، J. Smith و Smith, John ارائه شود. از این طریق یا با استفاده از روشهای دیگری مطالبه کنندگان امکان سوءاستفاده را خواهند یافت و مطالبات حق بیمه زیادی تحت نامهای مستعار مختلف دریافت میکنند. استفاده از متنکاوی برای تشخیص این نامهای مستعار میتواند در یافتن تقلب به شرکتهای بیمه کمک فراوانی کند.
4.خلاصه سازی: منظور از خلاصه سازي، روند استخراج و ارائه مجموعهاي مفاهيم پايهاي از متن، تنها در چند خط است. اين کار ميتواند بررسي محتويات مستندات را براي کاربران سادهتر کند و آنها را در مسير رسيدن به آنچه نياز دارند، سرعت بخشد.
5. روابط میان مفاهیم: از جمله واقعيتهايي که مي توان از يک مجموعه متون دريافت، ارتباط و وابستگي برخی مفاهيم با مفاهيم ديگراست. اين واقعيات به طور مثال ميتواند بگويد که پديدار شدن بعضي کلمات ممکن است که وابسته باشد به ظاهر شدن بعضي ديگر از کلمات. منظور اين است که هرگاه مجموعه ي اول کلمات را ببينيم، ميتوانيم انتظار داشته باشيم که مجموعهي دوم لغات را نيز در ادامه مشاهده خواهیم کرد. اين مفهوم نيز از داده کاوي در ديتابيس به امانت گرفته شده است.
6. یافتن وتحلیل رفتارها: برای شرح این کاربرد فرض کنيد که مدير يک کمپاني تجاري هستيد. مشخصاً شما بايد همواره بر فعاليتهاي رقيبانتان نظارت داشته باشيد. اين ميتواند هر نوع اطلاعاتي باشد که شما از اخبار، معاملات بورس و يا از مستندات توليد شده توسط همان کمپاني رقيب گرفتهايد. امروزه اطلاعات به طور فزآيندهاي در حال افزايش است، مديريت تمامي اين منابع دادهاي قطعاً تنها به کمک چشمان ممکن نيست. متنکاوی اين امکان را ميدهد که به طور اتوماتيک رفتارها و تغييرات جديد را بيابيد. در واقع آنچه اصولاً بايد از متنکاوي انتظار برود اين است که به شما بگويد چه اخباري در ميان گسترهاي از اخبار به آنچه مي خواهيد مرتبط است و در اين ميان کدام خبر جديداست، چه پيشرفتهايي در زمينهي کاري شما صورت مي گيرد و علايق و رفتارهای فعلي چگونه است و با چه روندي تغيير ميکند. با استفاده از اين اطلاعات، مديران قادرند از اطلاعات کشف شده براي بررسي وضعيت رقيب سود جويند.
7. تحلیل احساس : در این کاربرد هدف از متن کاوی تشخیص احساس نویسنده متن است. درجه رضایت یا خوشحالی و ناراحتی نویسنده تشخیص داده میشود. این رساله به بررسی متن کاوی به منظور تحلیل احساس موجود در متون خواهد پرداخت، لذا در ادامه با جزئیات بیشتری تحلیل احساس در متون را بررسی خواهیم کرد.
همه اطلاعات متنی را میتوان به دو دسته:حقایق و عقاید دسته بندی کرد. حقایق عبارات علمی و عملی درباره موجودیتها، رویدادها و ویژگیهای آنها هستند که بصورت عینی و واقعی در دنیای بیرون وجود دارند یا به وقوع پیوستهاند. عقاید عبارات غیر عینی و ذهنی هستند که نظرات، ارزیابیها یا احساسات افراد را درباره یک موجودیت، رویداد و ویژگیهای آنها بیان میکنند [23]. شکل 1-1 مثالی را برای هر کدام بیان میکند. در این رساله تنها به یک جنبه از این مفهوم یعنی احساسات خواهیم پرداخت.
[Sentimental ][ Factual ]
[Sentimental ]The movie
was fabulous!
The movie
stars Mr. X
The movie
was horrible!
شکل 1-1 دسته بندی متون : متون به دو دسته حقایق و عقاید تقسیم میشوند. حقایق یک واقعیت که بصورت علمیو عملی در دنیای خارج وجود دارد را بیان میکنند(Factual). عقاید نظر، احساس یا عقیده کاربر را درباره موجودیت بیان میکنند(Sentimental).
قبل از سال 2000 به دلیل کمبود منابع دادهای و کمبود متون حاوی نظرات و عقاید در تارنمای گسترده جهانی تحقیقات اندکی در این زمینه به انجام رسیده است. امروزه با گسترش اینترنت و همهگیر شدن شبکههای اجتماعی، کاربران میتوانند نظرات خود درباره محصولات یا خدمات را در سایتهای تجاری، شبکههای اجتماعی، وبلاگها بیان کنند؛ صفحات وب متون زیادی را در بر دارند که مشتمل بر نظرات، عقاید، ارزیابی کاربران پیرامون یک کالا یا خدمات خاص هستند. اطلاعاتی که از این نوع دادهها قابل دستیابی است، برای شرکتهای سازنده و همچنین سازمانهای ارائه کننده خدمات بسیار مفید و گاهی ضروری خواهند بود. همچنین برای کاربرانی که قصد انتخاب خدمات یا یک نوع کالا را دارند راهنمایی مفیدی را ارائه میدهند. شخصی را در نظر بگیرید که قصد دارد موبایل یا دوربین دیجیتالی بخرد، برای آگاهی از کیفیت دوربین و مطلوبیت خدمات شرکت سازنده بدون شک به پرسش و جمعآوری اطلاعات از اطرافیان روی خواهد آورد، ولی امروزه با رشد اینترنت میتوان بصورت آنلاین نظرات و تجربیات صدها نفر را درباره یک کالای خاص مطالعه کرد و برای تصمیم گیری از آنها مدد گرفت.
امروزه تعدد و گوناگونی منابع اینترنتی حاوی نظرات و احساسات کاربران به حدی زیاد شده است که یافتن و ارزیابی آنها کار بسیار پیچدهای است. در بسیاری موارد نظرات و عقاید کاربر در یک پست طولانی پنهان شده است. برای استخراج نظرات و عقاید درباره یک موجودیت باید در ابتدا منابع اینترنتی مرتبط با آن را یافت سپس متن مورد نظر خوانده شود، جملات بیان کننده نظرات و عقاید کاربر از متن استخراج شوند، خلاصه سازی شوند و به فرم قابل استفاده تبدیل شوند. از جمله مشکلاتی که در این زمینه وجود دارد حجم زیاد داده میباشد. در صفحه توییتر شخصی جاستین بیبر روزانه 300000 نظر ثبت میشود [22]. این حجم از دادهها میتوانند اطلاعات مفیدی را برای شرکتها و همچنین مشتریها به همراه داشته باشند؛ ولی پردازش آنها بصورت دستی و انسانی غیر ممکن میباشد، لذا طراحی یک روش اتوماتیک برای تحلیل متن و استخراج نظرات و عقاید موجود در متن ضروری است. در همین راستا تلاشهای فراوانی صورت گرفته است، مثلا در کشور آمریکا 20 تا 30 شرکت به ارائه خدمات تخصصی تحلیل احساس میپردازند [17].
در این رساله روشی برای تحلیل احساس ارائه میشود. روش پیشنهادی سعی در ارائه مجموعه مناسبی از خصیصهها را دارد به نحوی که بتوان به دقت بهتری در ارزیابی اتوماتیک متون دست یافت، همچنین تعداد خصیصهها در حد متناسبی حفظ شود. برای انتخاب خصیصهها از الگوریتمهای ساده و با حداقل پیچیدگی زمانی بهره میبریم و نیاز به استفاده از الگوریتم انتخاب خصیصه با پیچیدگی زمانی بالا مرتفع شده است.
تحلیل احساس در متنتحلیل احساس در واقع مطالعه محاسباتی نظرات عقاید و احساسات بیان شده در متن است. متن زیر نظر یک کاربر درباره iphone است.
“(1) I bought an iphone a few days ago. (2) It was such a nice phone. (3) The touch screen was really cool. (4) The voice quality was clear. (5) Although the battery life was not long, that is ok for me. (6) However my mother was mad with me as I did not tell her before I bough it. (7) She also thought the phone was too expensive, and wanted me to return it to shop……”
چه اطلاعاتی میتوان از متن استخراج کرد ؟ ابتدا باید توجه کنیم چند نظر در این متن وجود دارد، جملات (2)، (3) و (4) نظرات مثبتی را بیان میکنند. جملات (5)، (6) و (7) نظرات منفی را بیان میکنند. آیا نظرات بیان شده درباره یک موجودیت بیان شدهاند؟ این موجودیت کدام است؟ جمله (2) بصورت کلی نظری را درباره iphone بیان کرده است. جملات (3)، (4) و (5) نظراتی درباره صفحه لمسی، وضوح صدا و طول عمر باتری بیان میکنند. جمله (7) عقیده مشتری نسبت به قیمت موبایل را بیان میکند. ولی نظرات بیان شده در جمله (6) درباره شخص میباشد نه درباره موبایل iphone. این نکته بسیار مهم است باید توجه داشت متنی که حاوی نظرات کابران میباشد لزوما درباره یک موجودیت خاص نیست، ممکن است در طول متن نظرات مثبت و منفی درباره موجودیتهای متفاوت بیان شده باشد.
تحلیلگر احساس و عقاید معمولا ورودیهای خود(جملات، اسناد) را به دو گروه نظرات و عقاید مثبت و نظرات و عقاید منفی دستهبندی میکند. برخی از تحقیقات نیز ضعیف یا قوی بودن نظرات در نظر گرفتهاند و متون در 4 گروه دسته بندی میشوند. گروه اول نظرات کاملا منفی، دوم نظرات کمیمنفی، سوم نظرات کمیمثبت، چهارم نظرات کاملا مثبت.
فرایند تحلیل احساس در سه سطح انجام میشود:
در سطح کلمات
در سطح جمله
در سطح سند.
برای هر سطح پیش فرضها و وظایفی برشمرده میشود که باید در تحلیلگر لحاظ شوند. در ادامه به تشریح تحلیلگر احساس در سطوح متفاوت خواهیم پرداخت.
تحلیلگر احساس در سطح کلمه یک سند یا مجموعه ای از جملات را به عنوان ورودی دریافت میکند. ابتدا کلمات متفاوت که ویژگیهای یک موجودیت را بیان میکنند را از متن استخراج میکند. سپس نظرات بیان شده در متن پیرامون ویژگیهای موجودیت را تشخیص میدهد. شکل1-2 یک مثال از عملکرد تحلیلگر احساس در سطح کلمه را بیان میکند.
شکل 1-2 تحلیلگر احساس در سطح کلمه: ورودی تحلیلگر احساس در سطح متن یک سری جملات هستند. خروجی آن ویژگی های موجودیت مورد بحث(در این مثال موبایل) و نمره مثبت یا منفی که بر اساس متن به هر کدام از ویژگی ها داده شده است.
همانطور که در شکل 1-2 قابل مشاهده است، تحلیلگر احساس در سطح کلمه یک سند را به عنوان ورودی دریافت میکند، ویژگی های شئ مورد بحث در سند را استخراج میکند(شئ مورد بحث:موبایل، ویژگی های شئ مورد بحث:کیفیت صدا و عمر باطری) و در پایان بر اساس نظرات بیان شده در سند به ویژگیهای استخراج شده در مرحله قبل، نمره مثبت یا منفی میدهد.
تحلیل احساس در سطح جمله مانند تحلیلگر احساس در سطح کلمه یک سند یا مجموعهای از جملات را به عنوان ورودی دریافت میکند. جملات متن را تشخیص داده و بر اساس محتوای متن آنها را دستهبندی میکند؛ دسته اول جملات حاوی نظرات مثبت و دسته دوم جملات حاوی نظرات منفی. شکل 1-3 مثال تحلیلگر احساس در سطح جمله را بیان میکند.
شکل 1-3 تحلیلگر احساس در سطح جمله : ورودی تحلیلگر احساس در سطح جمله یک سری جملات هستند. خروجی آن، جملات طبقهبندی شده در دو دسته مثبت و منفی هستند.
تحلیلگر احساس در سطح سند(شکل 1-4) که هدف از این رساله نیز میباشد، تعدادی اسناد را دریافت میکند و آنها را در دو دسته اسناد حاوی نظر مثبت و اسناد حاوی نظر منفی طبقهبندی میکند. در این روش تحلیل احساس فرض بر آن است که هر سند درباره یک موجودیت واحد بحث میکند و همه نظرات مثبت و منفی درون سند درباره یک موجودیت واحد میباشد. با این کار طراحی تحلیلگر ساده میشود.
با این فرض که در هر سند فقط درباره یک موجودیت بحث میشود دیگر نیازی نیست با بسیاری از پیچیدگیهایی که در پردازش زبان طبیعی با آن مواجه هستیم دست و پنجه نرم کنیم. پس از سال 2000 تا کنون تحقیقات فراوانی در این زمینه به انجام رسیده است؛ با این وجود بسیاری از مشکلات در این زمینه هنوز حل نشده باقی ماندهاند. در این رساله به برخی از این مشکلات پرداخته و روشهایی را برای غالب آمدن بر این مشکلات بیان خواهیم کرد.
شکل 1-4 تحلیلگر احساس در سطح سند: مجموعهای از اسناد را دریافت میکند با تحلیل محتوای هر سند و با استفاده از روشهای یادگیری ماشین، اسناد را در دو دسته اسناد حاوی نظرات مثبت و اسناد حاوی نظرات منفی تقسیم بندی میکند.
اهداف رسالههدف از این رساله ارائه روشی برای تحلیل احساس در مجموعهای از اسناد میباشد، به گونه ای که اسناد در دو گروه نظرات مثبت و نظرات منفی طبقه شوند. از جمله مشکلاتی که برای تحلیل احساس وجود دارد حجم زیاد متون است، برای مثال تعداد خصیصههای استخراج شده از مجموعه داده فیلمها بالغ بر پنجاه هزار خصیصه بود [4]. همچنین خصیصههای زبان شناختی فراوانی وجود دارد که باید از این میان بهترین خصیصههای را بیابیم و برای مدلسازی متون از آنها استفاده کنیم. در این رساله تلاش بر آن بوده تا بتوانیم مجموعه مناسبی از خصیصهها را انتخاب کنیم و با داشتن حداقل خصیصهها از یک الگوریتم انتخاب خصیصه با پیچیدگی زمان کم استفاده شود. در این رساله دو مجموعه داده فارسی و انگلیسی بررسی خواهند شد. ابتدا سعی میکنیم روش مناسبی برای تحلیل احساس در متون انگلیسی ارائه دهیم سپس روش ارائه شده را به زبان فارسی تعمیم خواهیم داد.
روش کاربرای انجام پایان نامه در مرحله اول مبانی نظری و راهکارهای موجود، در ارتباط با تحلیل احساس موجود درمتن و تشکیل بردار خصیصهها با استفاده از خصیصههای زبان شناختی مورد مطالعه قرار گرفتهاند. سپس با تحلیل و بررسی روشهای موجود نقات ضعف و قوت این روشها را مورد توجه قرار داده تا بتوانیم با ترکیب یا بهبود آنها به روش بهتری دست یابیم. در ادامه روش پیشنهادی را با استفاده از دادههای موجود مورد تست و ارزیابی قرار دادهایم. به دنبال آن، با تحلیلهای انجام شده بر روش پیشنهادی، مشکلات موجود را تا حدی برطرف کرده و روشی جامعتر را با دقت عملکرد بهتر ارائه دادیم. در این رساله از ترکیب جدیدی از خصیصههای زبان شناختی استفاده شده است. همچنین برای اولین بار در تحلیل احساس از مفاهیم مبتنی بر Wordnet بهره بردهایم.
ساختار پایاننامهفصل دوم به طبقهبندی و بررسی شیوههای موجود در تحلیل احساس وعقاید و بررسی روشهای نوین ارائه شده در این زمینه پرداخته است، همچنین کارهای مرتبط و شیوههای مورد استفاده در آنها را بیان کردهایم. در فصل سوم روشهای پیشنهادی برای تحلیل احساسات و عقاید در راستای افزایش دقت و کاهش زمان طبقهبندی ارائه شده است. فصل چهارم عملکردِ روشهای پیشنهادی ارزیابی شده و با روشهای موجود در این زمینه مقایسه میشوند. در پایان فصل چهار نیز برخی از کارهایی که در آینده باید انجام شوند را بیان کردهایم.
فصل دوم کارهای انجام شده
مقدمهدر این فصل ابتدا به بررسی کارهای که پیشتر انجام شده است خواهیم پرداخت و نقاط ضعف و قوّت هر کدام را بصورت کوتاه بیان میکنیم. هر چند تعداد آثار موجود در زمینه تحلیل احساس در متن، فراوان است ولی در این بخش ما تعدادی از تحقیقات مهم را بصورت منتخب بیان خواهیم کرد.
برای مدلسازی اسناد باید مجموعه خصیصههای مفیدی از متن استخراج کنیم. مجموعه خصیصههای مفید خصیصههای هستند که به الگوریتم یادگیری ماشین برای طبقهبندی دادهها کمک کنند. این خصیصهها باید به نحوی انتخاب شوند که بهترین مدل ممکن از اسناد را ارائه دهند و باید توجه کنیم هدف این مدل تحلیل احساس است لذا باید بیشترین اطلاعات ممکن به منظور تحلیل احساس را در اختیار نرمافزار طبقهبندی قرار دهند. با توجه به حجم متن اسناد و تعداد این اسناد، بردار خصیصهی حاصل بزرگ خواهد بود، که این امر مشکلاتی را به همراه دارد. از جملهی این مشکلات کاهش کارایی و دقت طبقهبندی را میتوان نام برد، لذا باید از روش انتخاب خصیصه استفاده کرد تا بتوان سودمندترین خصیصهها را از میان هزاران خصیصه استخراج کرد. در ابتدا تاریخچه تحقیق در زمینه تحلیل احساس در متن را بیان خواهیم کرد، سپس مجموعه خصیصههای N-gram مورد استفاده و کارهایی که از آنها استفاده کردهاند را بیان میکنیم، پس از آن روشهای انتخاب خصیصه معروف و تحقیقاتی که از آنها استفاده کردهاند را بیان خواهیم کرد.
تعریف مسئلهبرای حل کردن هر مسئله، ابتدا باید یک تعریف مناسب از مسئله را ارائه دهیم. در فصل قبل هدف از این رساله را تحلیل احساسات و عقاید در سطح سند معرفی کردیم.
چنانچه D مجموعه ای از اسناد باشد، سیستم ارائه شده باید تشخیص دهد D d∈ نظر مثبت یا نظر منفی را درباره یک شی O بیان میکند.
تحلیلگر احساس یک مجموعه از اسناد D را که حاوی نظرات کاربران پیرامون یک شئ خاص O است را دریافت میکند و جهت گیری آنها را نسبت به آن شئ خاص تشخیص میدهد، به نحوی که هر سند D بطور قطعی نظر مثبت یا منفی را درباره شئ O بیان می کند.
بسیاری از تکنیکهای تحلیل احساس در سطح سند بر پایه الگوریتم های یادگیری نظارت شده هستند؛ تعداد از روش های یادگیری بدون نظارت نیز وجود دارد [23]. در این رساله تمرکز بر روشهای یادگیرندهی مبتنی بر ناظر است.
گام اول تحلیل احساس در متنسال 2002 pang و همکارانش تحقیقی را انجام دادند که سر آغاز این راه نامیده میشود. هر چند قبل از آن نیز کارهایی انجام شدهاند که بطور ضمنی از تحلیل احساسات و عقاید سخن به میان آوردهاند ولی pang و همکارانش اولین بار بطور صریح در سال 2002 به تحلیل احساس در متن پرداختهاند [4].
pang و همکارانش از مجموعه خصیصههای unigram، bigram، صفات و ترکیبی از این سه نوع مجموعه خصیصهها استفاده کردند. همچنین برای طبقهبندی از الگوریتمهای SVM، بیز ساده و حداکثر آنتروپی بهره گرفتهاند. روشهای متفاوتی برای نمایش بردار خصیصهها وجود دارد pang و همکارانش از دو روش فرکانس خصیصه و حضور خصیصه برای نمایش بردار خصیصهها استفاده کردهاند. نتایج نشان داد روش حضور خصیصه نسبت به سایر روشهای مورد استفاده نتایج بهتری به همراه خواهد داشت. روشهای که آنها برای نمایش بردار خصیصههای بکار بردهاند، تاکنون در تحقیقات متفاوت به کار گرفته شده است. نتایج تحقیق نشان داد خصیصههای unigram نسبت به سایر خصیصههای زبان شناختی عملکرد بهتری دارند و باعث بهبود طبقهبندی میشوند. خصیصههای bigram نسبت به خصیصههای unigram دقت کمتری در طبقهبندی از خود نشان دادند. در این تحقیق برای طبقهبندی اسناد از روشهای بیز ساده SVM و حداکثر آنتروپی استفاده شده است. نتایج طبقهبند SVM نسبت به سایر الگوریتمهای طبقهبندی دقت بهتری از خود نشان داد. علاوه بر مطالب ذکر شده آنها مجموعه دادههای بازبینی فیلمها را ارائه دادند. این مجموعه دادهها از سایت IMDB جمعآوری شده است، مجموعه داده بازبینی فیلمها داده متشکل از 2000 فایل بازبینی فیلم بود، 1000 فایل آن حاوی نظرات مثبتی پیرامون فیلمها و 1000 فایل دیگر نیز حاوی نظرات منفی پیرامون فیلمها بودند. بهترین دقت بدست آمده توسط pang و همکارانش با استفاده از 16165 خصیصه unigram و در الگوریتم طبقهبندی SVM حاصل شده بود[4].
مهمترین ویژگی این تحقیق ارائه زمینه تحقیقی جدید برای طبقهبندی متون بودهاست. همچنین نمایش بردار خصیصه ارائه شده در این تحقیق، تا کنون به عنوان یکی از بهترین روشها نمایش بردار خصیصه مورد استفاد قرار میگیرد. pang و همکارانش در این تحقیق بر غیر مفید بودن خصیصههای bigram و خصیصههای N-gram n>1 تاکید داشتند.
روشهای مبتنی بر خصیصههای N-gramیکی از مهمترین فازهای فرایند تحلیل احساسات و عقاید، مدلسازی متون با استفاده از خصیصههایی است که قادرند بخوبی بیان کننده صفات اسناد باشند. این رساله بر روی خصیصههایN-gram تاکید دارد.
خصیصههای N-gram به دو دسته تقسیم میشوند:
N-gram ثابت؛ یک توالی دقیق در سطح کاراکتر یا توکن میباشد. مانند unigram یا biram.
N-gram متغیر؛ الگوهایی برای استخراج اطلاعات از متن هستند. مانند <subj> Pass VP یا <subj> dealt bow.
خصیصههای N-gram متغیر قادرند مفاهیم پیچیدهتر زبان شناختی را بیان کنند [1]. در این رساله هدف اصلی خصیصههای N-gram مانند، بسته کلمات همچنین N-gram با درجات بالاتر مانند bigram و trigram می باشند. N-pos ترکیب n تایی از ادات سخن میباشد. همچنین n-posword ترکیب n تای از کلمات به همراه برچسب ادات سخن آنها میباشد. در ادامه مثالهایی برای هر یک از انواع خصیصههای N-gram بیان خواهیم کرد(جدول 2-1).
همانطور که در بخش قبلی بیان شد، pang و همکارانش نشان دادهاند استفاده از خصیصههای bigram برای تحلیل احساسات و عقاید عملکردی بدتری نسبت به خصیصههای unigram در پی خواهند داشت. تحقیقی که وینسنت و همکارانش سال 2006 انجام دادهاند خصیصههای unigram، bigram و trigram را برای مدلسازی اسناد به کار بردند [25]. اسناد متنی به دو دسته حقایق و عقاید دستهبندی میشوند و مثال بخش 1-2 نشان میدهد اغلب متون حاوی ترکیبی از حقایق و عقاید هستند، بنابراین بیشتر اسناد متنی ترکیبی از متون جهتدار (عقاید و نظرات) با متون عینی و واقعی (حقایق) هستند. متون عینی و واقعی درون اسناد در واقع همان خصیصههای غیر مرتبط با تحلیل احساس هستند چون اطلاعات مفیدی برای الگوریتم یادگیری ماشین در جهت تحلیل احساس موجود در متون را فراهم نمیکنند. تعداد زیاد خصیصهها و غیر مرتبط بودن بسیاری از این خصیصهها به تحلیل احساس، مشکلات زیادی را موجب می شود، از جمله این مشکلات میتوان کاهش دقت طبقهبندی وکاهش سرعت عملیات طبقهبندی را نام برد. بهتر است قسمتی از متن که حاوی حقایق است در فاز اول از متون حاوی نظرات و عقاید مجزا شود. وینسنت و همکارانش در ابتدا، بخشهایی از اسناد که عقاید و نظرات را بیان میکردند را تشخیص داده، از متن جدا کردهاند. آنها با فیلتر کردن متون حاوی حقایق از متون احساسی توانستند برای خصیصهها unigram و bigram نتایج بهتری را نسبت به pang و همکارانش بدست آورند. همچنین آنها نشان دادن خصیصههای N-gram n>1 قادرند وابستگی کلمات موجود در متن، را در مدلسازی وارد کنند بنابراین به دقت عملکرد الگوریتم یادگیری ماشین در جهت طبقهبندی متون کمک میکنند. در این تحقیق دقت حاصله از طبقهبندی اسناد با استفاده از خصیصههای unigram به میزان 87.1 درصد گزارش شده است. این میزان نسبت به نتیجه بهترین روش ارائه شده توسط pang و همکارانش 5 درصد بهبود یافته است. همچنین با استفاده از خصیصههای unigram+bigram+trigram (ترکیب هر سه نوع خصیصه) فرایند طبقهبندی اسناد را با دقت 89.2 درصد انجام دادهاند. در این تحقیق به بررسی اثر گذاری خصیصههای N-gram پرداخته شده است وینسنت و همکارانش نشان دادند استفاده از خصیصههای bigram به همراه unigram باعث بهبود عملکرد طبقهبندی میشود. همچنین به این نتیجه دست یافتند که خصیصههای bigram به تنهایی بهبودی در طبقهبندی ایجاد نمیکنند، دلیل این موضوع نیز پراکندگی خصیصههای bigram است؛ برخلاف آنچه در [4] اعلام شده، که خصیصههای bigram ذاتا به بهبود طبقهبندی کمک نمیکنند. بنابراین چنانچه بتوانیم پراکندگی موجود در خصیصههای bigram را کاهش دهیم میتوانیم دقت عملکرد این نوع خصیصهها را بهبود دهیم.
در برخی از تحقیقات برای مدلسازی اسناد از خصیصههای N-POS استفاده شدهاست. فی و همکارانش در سال 2004 از خصیصههای 1-pos و 2-pos استفاده کردهاند و بهترین دقت حاصل از طبقهبندی در این تحقیق 86% بوده است [26]. آنها الگوهایی نحوی را ارائه دادند که اغلب متون جهتدار در این الگوها قرار میگیرند، مثلا یکی از الگوهای ارائه شده n+adj بوده است. ابتدا متن را برچسب گذاری کردهاند و الگوهای مورد نظر را از متن استخراج کردهاند. مدلی که در این روش ارائه شده همانند روش وینسنت و همکارانش سعی دارد در ابتدا متن را فیلتر کند و فقط متن جهتدار(متن حاوی نظرات مثبت یا منفی کاربران درباره یک موجودیت مشخص) را برای مرحله طبقهبندی و مدلسازی استفاده کند. اما مشکل این روش آن است که نمیتوان برای همه حالت های متن جهتدار الگویی ارائه داد و همواره ممکن است متن خاصی با الگوهای ارائه شده سازگار نباشد. مدلسازی متن با استفاده از الگوهای N-POS حتی نسبت به مدل unigram دقت کمتری را برای طبقهبندی به همراه داشت. لذا روش مناسبی برای مدلسازی اسناد نیست.
گامن سال 2004 4 گروه خصیصه را مورد بررسی قرار داد. گروه اول خصیصههای N-gram از ترکیب خصیصههای unigram، bigram و trigram تشکیل شدهاند. گروه دوم خصیصههای متشکل از ترکیب N-gram و 3-POS بودهاند. گروه سوم، خصیصههای مانند طول جمله، طول عبارات، تعداد کلمات بودهاند و گروه چهارم ترکیب سه گروه خصیصه ذکر شده بودهاند. تعداد خصیصهها در این روش از 1000 تا 40000 خصیصه بودهاند. بهترین دقت حاصله برای طبقهبندی متون با استفاده از خصیصههای گروه چهارم بدست آمده است که نشان میدهد ترکیب خصیصهها مدل بهتری از اسناد به منظور تحلیل احساس در متن را ارائه میدهد. در بهترین حالت دقت طبقهبندی 89 درصد گزارش شده است. در این تحقیق ترکیبهای متفاوت از خصیصهها مورد بررسی قرار گرفت و میزان اثر گذاری آنها بحث شدهاست [20].
مدل N-gram کاراکترها(N-char) توسط عباسی و همکارانش مورد استفاده قرار گرفت. مثلا مدل Bigram عبارت Like بصورت “li ik ke” خواهد بود [2]. در این مدل تعداد بسیار زیاد خصیصهها مشکلساز خواهد بود و استفاده از الگوریتمهای انتخاب خصیصه به دلیل تعداد بسیار زیاد خصیصهها ما را با مشکل پیچیدگی زمانی روبرو خواهد کرد. استفاده از خصیصهها N-char همواره باعث افزونگی و افزایش تعداد خصیصههای غیر مفید میشود، به این دلیل که همپوشانی بسیاری زیادی در خصیصههای n-char وجود دارد.
تحقیقات اندکی از مدل POSWORD (برچسب نقش کلمه در سخن به همراه خود کلمه) استفاده کردهاند. ویب و همکارانش در سال 2004 . به منظور کاهش ابهام کلمات در فرایند تحلیل احساس از 3-POSWORD استفاده کردهاند. با توجه به اینکه خصیصههای POS-Tag به همراه خود کلمه میتواند باعث کاهش ابهام کلمات شود در نتیجه باعث بهبود دقت ارزیابی و طبقهبندی اسناد میشود [12]. مهمترین دلیل استفاده از 3-POSWORD وارد کردن وابستگی به متن در مدل مورد استفاده میباشد. لذا اگر بتوان مشکلات ناشی از پراکندگی و افزونگی را مدیریت کرد به نظر میرسد استفاده از خصیصههای N-gram n>1 به بهبود نتایج کمک زیادی کند.
جدول 2-1 مثالی برای هر یک از خصیصههای N-gram مطرح شده را نشان میدهد.
عباسی و همکارانش در سال 2011 مجموعه کاملی از خصیصههای N-gram که در کارهای پیشین استفاده شده بود را جمع آوری کرده و برای مدلسازی اسناد از آنها استفاده کردند [1]. این مجموعه خصیصهها در جدول 2-2 بیان شدهاند. آنها در این تحقیق با استفاده از طبقه بند SVM به دقت 90 درصد برای طبقهبندی مجموعه دادههای بازبینی فیلمها دست یافتند. مدل ارائه شده که در جدول 2-2 قابل مشاهده است، بسیاری از خصیصهها همدیگر را پوشش میدهند لذا باعث تشدید افزونگی در مدل حاصله میشوند. هر گروه از این خصیصهها دارای تعداد زیادی خصیصههای غیرمرتبط با تحلیل احساس موجود در متن هستند، استفاده همزمان از همه این خصیصهها باعث افزایش چشمگیر خصیصههای غیر مرتبط در نتیجه کاهش اثر گذاری خصیصههای مرتبط با تحلیل احساس و در نهایت کاهش دقت طبقهبندی میشود. آنها برای حل این مشکل یک روش انتخاب خصیصه شبکه ارتباطی خصیصه را ارائه دادند، که پیچیدگی زمانی بالایی دارد. میتوان با بهره گیری از خصیصههای مطلوبتر خصیصههای افزونه و خصیصههای غیر مرتبط را کاهش داد و برای تعیین سودمندی خصیصهها از الگوریتم انتخاب خصیصه سادهتر با پیچیدگی زمانی کمتر بهره برد.
جدول 2-1 مجموعه خصیصهها N-gram و مثال برای هر خصیصه
جمله مثال I go home.
خصیصههای N-gram Unigram I, go, home
Bigram I go, go home
Trigram I go home
خصیصههای N-POS 1-pos FW, VBP,NN
2-pos FW VBP,VBP NN
3-pos FW VBP NN
خصیصههای 3-POSWORD 3-POSWORD I/FW go/VBP home/NN
آگراوال و میتال سال 2013 تحقیقی را انجام دادهاند [5] که در این تحقیق از روشهای انتخاب خصیصه سودمندی اطلاعات و حداقل افزونگی – حداکثر وابستگی استفاده شده است، همچنین از خصیصههای Unigram و Bigram و گزیدهای از کلمه-POS در جهت مدلسازی متن بهرهگرفتند. طبقهبندی در این تحقیق بر روی مجموعه داده بازبینی فیلمها دقت بالاتری نسبت به روش ارائه شده توسط عباسی و همکارانش داشت. آنها نشان دادند که روش انتخاب خصیصه حداقل افزونگی – حداکثر وابستگی عملکرد بهتری نسبت به سودمندی اطلاعات دارد. از جمله مشکلات روش ارائه شده توسط آگراوال و میتال مجموعه خصیصههای مورد استفاده آنها میباشد که در این رساله مجموعه خصیصههای مناسبتری برای تحلیل احساس موجود در متن ارائه میشود.
جدول 2-2 مجموعه کاملی از خصیصه ها N-gram
همانطور که در جدول 2-2 میبینید مجموعه خصیصههایی N-gram که برای مدلسازی اسناد میتوان از آنها بهره گرفت بسیار زیاد هستند؛ هر کدام از این مجموعه خصیصهها خود با یک بردار با هزاران خصیصه اسناد را مدلسازی میکنند، بسیاری از این خصیصهها افزونه و یا با تحلیل احساس غیر مرتبط هستند. برای دستیابی به دقت و سرعت بالاتر در عملیات طبقهبندی بهتر است از یک الگوریتم انتخاب خصیصه بهره بگیریم تا بتوانیم سودمندترین خصیصهها را از میان هزاران خصیصه استخراج کنیم و عملیات طبقهبندی و تحلیل احساس را با سرعت و دقت بیشتری انجام دهیم.
سی و گوپتا در سال 2013 مقالهای را ارائه کردهاند، آنها بجای استفاده از روشهای انتخاب خصیصه پیچیده تلاش کردهاند ترکیب مناسبی از خصیصهها را جهت دستیابی به دقت بالاتر در عملیات طبقهبندی، بیابند. همچنین برای کاهش دادن اندازه بردار خصیصه و حذف خصیصههای غیر مرتبط از sentiwordnet استفاده کردهاند. مجموعه داده این تحقیق اندازه کوچکتری نسبت به مجموعه داده مورد بررسی در سایر تحقیقات ذکر شده داشته است[7]. در تحقیق مذکور با فیلتر کردن خصیصههایی که وزن مثبت یا منفی آنها (وزن هر کلمه همان مقداری بین 0 و 1 است که از Sentiwordnetاستخراج شده است) کمتر از 0.5 بود، تعداد خصیصهها را کاهش دادهاند. ویژگی این روش استفاده از ترکیب های ساده و متفاوت، همچنین کاهش تعداد خصیصهها با استفاده از Sentiwordnet است. مشکل اصلی این روش مجموعه داده مورد استفاده در آن است؛ این مجموعه داده قابلیت نشان دادن پایداری روش را ندارد.
فاز اول تحلیل احساس ارائه مدل مناسبی برای اسناد است. در رساله جاری از سه کار [1]، [7] و [5] برای مدلسازی اسناد الهام گرفته شده است. تحقیق [1] مدلی جامع از خصیصههای N-gram ارائه داده است، ولی تعداد مجموعه خصیصههای آن زیاد است، افزایش خصیصهها در بردار خصیصهها، باعث افزایش خصیصههای افزونه و غیر مفید خواهد شد. وجود خصیصهی غیر مفید یا افزونه در بردار خصیصههای حاصل از مدلسازی اسناد باعث میشود، اثرگذاری سایر خصیصههای سودمند و مرتبط با تحلیل احساس کاهش یابد لذا به همان نسبت دقت طبقهبندی نیز کاهش مییابد، همچنین باعث افزایش حجم بردار خصیصه خواهد شد در نتیجه ما را با مشکل حافظه مواجه خواهد کرد و سرعت طبقهبندی را به شدت کاهش میدهد. تعداد زیاد خصیصهها، ما را در استفاده از الگوریتم انتخاب خصیصه محدود میکند. در این رساله تلاش بر آن بوده مجموعه کاهش یافتهای از خصیصهها را برای مدلسازی اسناد برگزینیم، به گونهای که مدل مناسبی از اسناد را برای تحلیل احساس ارائه دهند. تحقیق [5] مدلی ترکیبی از خصیصهها n-gram را را ارائه داده است و این مدل را روی 4 مجموعه داده تست کرده تا پایداری روش پیشنهادی خود را بررسی کنند. مجموعه خصیصههای مورد استفاده در تحقیق مذکور عبارت بودند از: 1- خصیصههای unigram 2- خصیصههای bigram 3- ترکیب این دو مجموعه خصیصهها.
الف- خصیصههای unigram: در ابتدا بردار خصیصههای unigram را از متن استخراج کردهاند سپس مدل حاصل را با استفاده از الگوریتمهای یادگیری ماشین طبقهبندی کردهاند؛ در این روش آنها به دقت طبقهبندی 82.7% در مجموعه داده بازبینی فیلم ها دست یافتند. حالت دوم با الگوریتم انتخاب خصیصه حداقل افزونگی – حداکثر وابستگی خصیصههای غیرسودمند را از مدل حاصل در مرحله قبل فیلتر کردهاند؛ در این حالت به حداکثر دقت 89.2% دست یافتند.
ب- خصیصههای bigram: این مجموعه خصیصه بدون اعمال الگوریتم انتخاب خصیصهای از متن استخراج شدهاند و دقت بدست آمده از طبقهبندی 79.2% برای مجموعه داده بازبینی فیلمها بوده است. در حالت دوم با اعمال الگوریتم انتخاب حداقل افزونگی – حداکثر وابستگی به حداکثر دقت 81.1% دست یافتند.
ج- ترکیب خصیصههای unigram و bigram: این مجموعه خصیصه بدون هیچ گونه انتخاب خصیصهای از متن استخراج شدهاند در این روش آنها توانستند مجموعه داده بازبینی فیلمها را با دقت 87.0% طبقهبندی کنند. در روش دوم با الگوریتم انتخاب خصیصه حداقل افزونگی – حداکثر وابستگی به حداکثر دقت 91.1% دست یافتند و با اعمال الگوریتم انتخاب خصیصه سودمندی اطلاعات به دقت طبقهبندی 90.1% دست یافتند.
نتایج بالا نشان از عملکرد مطلوب خصیصههای unigram و سودمند نبودن خصیصههای bigram دارد، و تصدیق کننده نتایجی است که سال 2002 pang و همکارانش به آن دست یافتند، به این دلیل که آگراوال و میتال به پراکندگی و نرمالسازی خصیصههای bigram هیچ توجهی نکردهاند. آنها تلاش کردهاند تعداد خصیصهها را کاهش دهند در صورتی که میتوان تعداد خصیصهها را با حفظ تعادل تعداد بین خصیصههای unigram، bigram و trigram تا حدی افزایش داد، تا بتوانیم به نتایج بهتر دست یابیم.
در رساله جاری برای تست پایداری روش پیشنهادی، 4 مجموعه داده را برای تست و ارزیابی در نظر گرفتهایم، مدلی که در این رساله ارائه شده است دقت طبقهبندی را نسبت به [1] و [5] افزایش داده است. محققین در [7] با بررسی انواع خصیصههای متفاوت ترکیب مناسبی از خصیصهها را ارئه دادهاند. ما نیز برای یافتن خصیصههای مطلوب در جهت مدلسازی اسناد ترکیب خصیصههای متفاوت را مورد بررسی قرار دادهایم.
الگوریتمهای انتخاب خصیصهدر عصر فناوری اطلاعات با حجم زیادی از دادهها روبرو هستیم. میتوان دانش مفیدی از این حجم زیاد داده استخراج کرد. بهتر است بگوییم به دلیل مشکلاتی که برای نگهداری، ذخیره سازی و پردازش این حجم دادهها مطرح میشود، اگر اطلاعاتی از داده استخراج نکنیم یک فقدان است. حجم زیاد دادهها به رسانههای ذخیره سازی و همچنین حافظه اصلی زیادی برای پردازش نیاز دارند. باید توجه داشته باشیم حجم قابل توجهی از این دادهها، غیر مفید، افزونه و یا غیر مرتبط هستند. لذا ضرورتی در نگهداری و یا پردازش همه این داده ها وجود ندارد. بهتر است فکری اندیشیده شود تا این دادههای غیر ضروری حذف شوند و در فرایندهای مهم و پرهزینه وارد نشوند. الگوریتمهای انتخاب خصیصه نیز همین هدف را دنبال میکنند. چنانچه مدلی ارائه شود این مدل متشکل از دهها هزار خصیصه باشد، بسیاری از این خصیصهها برای فرایند تحلیل احساس مفید نخواهند بود پس بهتر است این خصیصهها به اشغال کردن حافظه و گرفتن سرعت عملیات منجر نشوند. ضمن اینکه از طرفی دقت عملیات را نیز کاهش خواهند داد.
الگوریتمهای انتخاب خصیصه متعددی وجود دارد و در تحقیقات از اغلب آنها استفاده شده است.
بطور کلی دو نوع روش انتخاب خصیصه وجود دارد:
تک متغیره.
چند متغیره.
روش تک متغیره هر خصیصه را به تنهایی در نظر میگیرد، خصیصه را ارزیابی کرده و یک رتبه به آن میدهد. مانند الگوریتمهای مربع کای ، درست نمایی لگاریتمی و سودمندی اطلاعات . هر چند این روشها سریع هستند ولی چون هر خصیصه را به تنهایی ارزیابی میکنند و به ارتباط بین آن خصیصه با سایر خصیصهها توجهی ندارند، دقت کمتری دارند. این نوع الگوریتمها به دلیل پیچیدگی زمانی کمتری که دارند، برای مجموعه دادههایی که بردار خصیصههای بزرگتری دارند مناسباند [1].
انتخاب سودمندترین خصیصهها از میان تعداد بسیار زیاد خصیصهها میتواند باعث افزایش دقت عملکرد الگوریتم طبقهبندی شود [26]. شکل 2-1 مهمترین الگوریتمهای انتخاب خصیصه تک متغیره را نشان میدهد.
شکل 2-1 مهمترین الگوریتم های انتخاب خصیصه تک متغیره
روشهای انتخاب خصیصهی تک متغیره نسبت به روشهای چند متغیره پیچیدگی زمانی کمتری دارند به همین دلیل در بسیاری از تحقیقها از روشهای تک متغیره استفاده شده است.
[8] و [15] برای طبقهبندی متن از سودمندی اطلاعات استفاده کردهاند. تحقیق [3] با اتکا به نتایج [8] و [15] روش سودمندی اطلاعات را برای انتخاب سودمندترین خصیصهها برگزید. عباسی و همکارانش با استفاده از سودمندی اطلاعات و انتخاب سودمندترین خصیصهها به دقت 92.5% در تحلیل احساسات و عقاید موجود در متن مجموعه داده بازبینی فیلم دست یافتند. آنها در این تحقیق برای طبقهبندی از روش SVM بهره بردهاند.
در [16] برای انتخاب خصیصه از روش مربع کای استفاده شده است. آنها بهترین نتیجه خود را با بکارگیری طبقه بند SVM و حداکثر آنتروپی به صورت ترکیبی بدست آوردند. باید توجه کنیم برای بهبود طبقهبندی بهتر است، بتوانیم مدل درستی از اسناد را ارائه دهیم، تا به دقت بالاتری دست یابیم. استفاده همزمان و ترکیبی از چند الگوریتم طبقهبندی باعث افزایش پیچیدگی زمانی خواهد شد و نهایتا برای مجموعه دادهای متفاوت لزوما باعث افزایش دقت طبقهبندی نخواهد شد. استفاده ترکیبی از چند الگوریتم طبقهبند برای یک مجموعه داده نمیتواند راه حلی برای بهبود سرعت و دقت طبقهبندی متون باشد. در عوض استفاده از چند طبقهبند میتواند از چند فیلتر انتخاب خصیصه استفاده کرد، یا به دنبال مدل مناسبتری برای مدلسازی اسناد باشیم.
[20], [25],[14] از روش درست نمایی لگاریتمی استفاده کردند. در بین سه مقاله ذکر شده مقاله [20] به حداکثر دقت 90% دست یافت.
روشهای چند متغیره پر استفادهای نیز وجود دارد که استفاده از آنها باعث کاهش معقول تعداد خصیصهها و افزایش نامعقول پیچیدگی زمانی خواهد شد
شکل 2-2 تعدادی از روشهای چند متغیره انتخاب خصیصه که در سالهای اخیر ارائه شدهاند را نشان میدهد. در این قسمت بحث زیادی نخواهیم کرد، فقط کارهایی که از این روشها استفاده کردهاند را بیان میکنیم. مهمترین مشکل این روشها پیچیدگی زمانی آنها است. اگر اسناد بزرگ باشند و تعداد خصیصهها زیاد باشد این روشها عملا ناکارآمد خواهند بود. چنانچه اسناد کوچک باشند و تعداد خصیصهها نیز کم باشد میتوان از روشهای چند متغیره استفاده کرد، ولی امروزه در عصر اطلاعات با حجم فراوانی از دادهها مواجه هستیم بهتر است راه حلهایی برای مدیریت داده ها ارائه شود.
عباسی و همکارانش در سال 2007 با ترکیب کردن الگوریتم ژنتیک با الگوریتم سودمندی اطلاعات روش انتخاب خصیصه EWGA را ارائه دادند با استفاده از این روش توانستند به دقت طبقهبندی 95% دست یابند[3] . این الگوریتم انتخاب خصیصه به خوبی کار میکند، ولی پیچیدگی زمانی این روش قابل توجه است. عباسی و همکارانش مقایسهای که در مقاله سال 2013 خود انجام دادهاند زمان لازم برای انتخاب سودمندترین خصیصهها برای الگوریتم ژنتیک/سودمندی اطلاعات را بالغ بر 6000 دقیقه بیان کردهاند. لذا برای تحلیل داده ها با حجم زیاد نمیتوان به این روش ها متکی بود.
ما برای حذف خصیصههای غیر مفید همانطور که پیش از این نیز به آن اشاره کردهایم از روشهای تک متغیره استفاده خواهیم کرد.
فصل بعد به ارائه روش پیشنهادی خواهیم پرداخت. در این رساله سه روش با کاربردهای متفاوت ارائه شده است. سپس روش های مورد نظر برای زبان فارسی نیز تعمیم داده شدهاند و بر مجموعه داده زبان فارسی نیز اعمال شده اند.
شکل 2-2 مهمترین روش های انتخاب خصیصه چند متغیره
فصل سوم روش پیشنهادی
پیش گفتار
هدف اصلی این نوشتار ارائه مدلی جامع برای اسناد میباشد. قصد داریم مجموعهای از خصیصهها را ارائه دهیم و با استفاده از آنها به مدلی از اسناد دست یابیم. با داشتن مدل مناسب از اسناد دیگر نیازی به استفاده کردن از روشهای پیچیده انتخاب خصیصه نخواهد بود.
در این فصل به توضیح و تشریح روش ارائه شده خواهیم پرداخت. با مطالعه و بررسی مقالات و تحقیقات ارائه شده به این نتیجه دست یافتیم که بهتر است برای تحلیل احساس در متن، از مجموعه خصیصههایی استفاده کنیم که قادر باشند بیشترین اطلاعات لازم برای تحلیل احساس را در اختیار الگوریتم طبقهبندی اسناد قرار دهند، به این ترتیب میتوان دقت طبقهبندی اسناد را افزایش داد.
هدف این رساله ارائه روشی برای تحلیل احساسات و عقاید موجود در متن میباشد. به گونهای که این تحلیلگر اسناد موجود در مجموعه دادهها را در دو طبقه، اسناد حاوی نظرات مثبت و اسناد حاوی نظرات منفی دسته بندی کند. اولین مشکلی که برای تحلیل احساس وجود دارد ارائه مدلی کامل و مفید برای اسناد متنی میباشد. برای حل این مشکل مجموعه خصیصههای متفاوتی مورد بررسی قرار گرفتهاند و از این میان تلاش شده مناسبترین خصیصهها را انتخاب کنیم.
مشکل دوم در تحلیل احساسات و عقاید تعداد زیاد خصیصهها میباشد. این مسئله باعث بروز مشکلاتی دیگری مانند خصیصههای افزونه و خصیصههای غیر مرتبط میشود. لذا باید برای انتخاب کردن خصیصههای سودمند از میان هزاران خصیصه راهی اندیشیده شود. روشی که اینجا ارائه شده است فیلتر کردن خصیصهها در چند مرحله است. در ابتدا با استفاده از Wordnet و Sentiwordnet خصیصهها را فیلتر میکنیم، به این ترتیب تعداد خصیصهها کاهش مییابد. در مرحله بعد از الگوریتم انتخاب خصیصه ساده و با حداقل پیچیدگی زمانی استفاده میکنیم.
یکی از ویژگیهای ذاتی خصیصههای N-gram پراکندگی آنها است. پراکندگی باعث افزایش تعداد خصیصهها همچنین کاهش اثرگذاری خصیصههای bigram و trigram میشود.
منابع مورد نیازبرای پیاده سازی روش پیشنهادی به منابع دادهای و نرم افزاری نیاز خواهیم داشت. در این رساله برای آزمودن پایداری روش پیشنهادی از چهار مجموعه داده استفاده شده است.
مجموعه داده بازبینی فیلمها یکی از معروفترین مجموعه دادهها است که در سال 2002 توسط pang و همکارانش ارائه شده است [4]. این مجموعه حاوی 2000 سند بازبینی استخراج شده از سایت IMDB است. این اسناد در دو گروه نظرات مثبت و نظرات منفی دسته بندی شدهاند. 1000سند حاوی نظرات مثبت درباره فیلمها میباشد و 1000 سند نیز حاوی نظرات منفی کاربران میباشند، لذا میتوان برای طبقهبندی اسناد، مبتنی بر ناظر از آنها استفاده کرد.
مجموعه دادههایی از بازبینیهای کاربران در سایت آمازون جمع آوری شده است[13]. این مجموعه داده حاوی نظرات کاربران درباره کالاهای متفاوت آمازون است. از این دادهها، سه مجموعه داده بازبینی کالاهای الکترونیکی،dvd و کتاب را برای تست و ارزیابی عملکرد روش پیشنهادی انتخاب کردهایم. این مجموعه دادهها هر کدام شامل 2000 سند بازبینی میباشد. این اسناد مانند مجموعه داده بازبینی فیلمها در دو گروه اسناد مثبت و منفی دسته بندی شدهاند.
در خلال پیادهسازی نیاز خواهیم داشت نقش ادات سخن هر کلمه را در جمله داشته باشیم لذا برای دست یافتن به این هدف از کتابخانه جاوا دانشگاه استنفورد که توسط تیم پردازش زبان طبیعی این دانشگاه تهیه شده است استفاده کردیم.
برای یافتن معادلهای معنایی کلمات به Wordnet و کتابخانه ای جاوا JWNL نیاز خواهیم داشت. در این رساله از Sentiwordnet نیز استفادده میکنیم. Sentiwordnet نسخه ای از wordnet است، که در آن علاوه بر اطلاعات Wordnet، به هر کلمه یک وزن مثبت و یک وزن منفی داده میشود. مجموع وزن مثبت و وزن منفی یک کلمه را پلاریته کلمه گویند(شکل 3-1) [9].
برای طبقهبندی اسناد از نرم افزار weka 3.6 استفاده میکنیم.
شکل 3-1 Sentiwordnet برای هر کلمه یک وزن مثبت و منفی تخصیص میدهد. مجموع این وزن را پلاریته کلمه گویند.
در ادامه روشهای پیشنهادی و مراحل هر کدام از آنها را بیان خواهیم کرد. روش پیشنهادی اول دارای مشکلاتی است که با حل کردن آنها به روشهای دوم و سوم دست مییابیم که دقت عملکرد بهتری نسبت به روش اول را دارند. در پایان نیز روش پیشنهادی اول را به مجموعه داده زبان فارسی اعمال می کنیم.
روش پیشنهادی اولدر روش پیشنهادی اول قصد داریم مجموعه مفیدی از خصیصه را ارائه دهیم. کارهای و تحقیقات قبلی که به منظور تحلیل احساس در متن به انجام رسیدهاند نشان دادهاند که بکار گرفتن ترکیبی از خصیصهها همواره با بهبود دقت طبقهبندی همراه خواهد بود. مدلسازی اسناد با استفاده از ترکیب خصیصه ها باعث افزایش قابل توجه تعداد خصیصهها خواهد شد این خود مشکلی بر سر راه ترکیب خصیصهها است. در این رساله پیشنهاد شده است با استفاده از فیلترینگ چند مرحله از این مشکل رها شویم.
شکل 3-2 نمای کلی روش پیشنهادی اول را نشان میدهد.
در ابتدا مجموعهای از اسناد را درون یک پایگاه داده داریم. اسناد خوانده شده و پیش پردازشهایی بر روی آنها انجام میشود. پیش پردازش، متن را برای مراحل بعدی آماده خواهد کرد. پس از آن برچسب گذاری ادات سخن با بکارگیری کتابخانه جاوا استنفورد انجام میشود. حال نقش هر کلمه مشخص شده است و میتوان پلاریته آن را از Setniwordnet استخراج کرد. مرحله بعد خصیصههای مورد نیاز را استخراج میکنیم. فیلترهای اولیه را بر روی بردار خصیصهها اعمال میکنیم، و در پایان فایل ساختار یافته از بردار خصیصهها را با استفاده از WEKA طبقهبندی میکنیم.
شکل 3-2 شمای کلی روش پیشنهادی اول
پیش پردازش اسنادهر سند حاوی متون بازبینی، نظرات، احساسات و عقاید کاربران است. همه متن این اسناد در تحلیل احساس مفید واقع نخواهد شد. همچنین قالب و فرمت متن باید به گونهای تغییر یابد تا علاوه براینکه بتواند مدل مناسبی از اسناد را ارائه دهد، به قالب ساده و مناسب برای پردازش در مراحل بعدی تبدیل شود. شکل 3-3 شمای کلی پیش پردازش را نشان میدهد.
شکل 3-3 شمای پیش پردازش اسناد
ورودی این مرحله، مجموعهای از اسناد متنی، حاوی نظرات، احساسات و عقاید کاربران است. در مرحله اول از فرایند پیش پردازش کلمات Stopword حذف میشوند. Stopword کلمات و عباراتی هستند که هیچ کمکی به فرایند طبقهبندی اسناد، در جهت تحلیل احساس موجود در متون نمیکنند. در جدول زیر مجموعهای از Stopword مورد استفاده در این رساله را تدارک دیدهایم. مجموعه ثابت و یکسانی برای Stopword ها وجود ندارد بلکه برای حوزههای متفاوت در پردازش زبان طبیعی از Stopword های متفاوتی استفاده شده است. مجموعه Stopword های مورد استفاده در این تحقیق را در جدول 3-1 میبینیم. در این مرحله از فرایند پیش پردازش ابتدا هر سند خوانده شده و پس از حذف Stopword ها سایر کلمات باقی مانده به مرحله بعدی هدایت میشوند.
در مرحله دوم از فرایند پیشپردازش مدیریت کلمات منفی ساز انجام میشود. کلمات منفی سازی که در این تحقیق مورد توجه قرار گرفتهاند، عبارتاند از not، never و no.
جدول 3-1 لیست Stopwords
werewhatwhenwherewhichwhilewhowhomwhywithwouldyouyouryoursyourselfyourselves
nonornotofoffononceonlyother ourselvesoutoverownsamesheshouldsosomesuchthanthatthetheirtheirsthemthemselvesthentherethesetheythisthosethroughtotoounderuntilupverywaswe
does
or downduringeachfewforfromfurtherhadhashavehavingheherherehersherselfhimhimselfhishowiifinintoisititselfmemoremostmymyselfoughtourours aaboutaboveafteragainagainstallamanandanyareasatbebecausebeenbeforebeingbelowbetweenbothbutbycannotcoulddiddo
جملاتی که حاوی کلمات منفی ساز هستند به این طریق اصلاح میشوند، که دو کلمه قبل از کلمه منفیساز و دوکلمه بعد از آن را با افزودن NOT به فرم منفی قراردادی تبدیل میکنیم، در هر صورت اگر به علامت نقطهگذاری رسیدیم منفیسازی را متوقف میکنیم و در نهایت کلمه منفیساز را از جمله حذف میکنیم. مثلا جمله “I like hamid, but I don’t like javad.” پس از حذف Stopwordها به فرم “Like hamid, do not like javad” تبدیل میشود. در مرحله بعد دو کلمه قبل و دو کلمه بعد از کلمه منفیساز به فرم “Like hamid, do_NOT not Like_NOT javad_NOT.” تبدیل میشود. در گام آخر نیز کلمه منفی ساز از جمله حذف میشود، بنابراین جمله مذکور به شکل “Like hamid, do_NOT Like_NOT javad_NOT“ تبدیل میشود، قبل از کلمه منفیساز Not کلمه do و یک کاما وجود دارد. لذا با رسیدن به اولین علامت نقطهگذاری(کاما در این مثال) منفیسازی را متوقف میکنیم، و تنها یک کلمهی do قبل از not به فرمت منفی قراردادی تبدیل میشوند، ولی بعد از not دو کلمه به فرمت منفی قراردادی تبدیل میشوند. اصلاح جملات حاوی کلمات منفی ساز به این دلیل انجام میشود که در مدل Unigram اسناد بتوانیم معنای منفی جمله را وارد کنیم. خروجی این مرحله جملات اصلاح شده متن هستند؛ جملاتی که برخی کلمات غیرمفید آنها حذف شده است و ساختار جملات حاوی کلمات منفی ساز نیز با ساختار قرار دادی جایگزین شده است. اسناد برای پردازش به مرحله بعدی هدایت میشود.
در ادامه فرایند پیشپردازش نیز همه اسناد به توکنهای تشکیل دهنده خود تجزیه میشوند. در ادامه بیشتر با توکنهای هر سند کار خواهیم کرد و دیگر کمتر به متن خام و بدون پیش پردازش نیاز خواهیم داشت.
برچسب گذاری ادات سخندر این مرحله با استفاده از کتابخانه پردازش زبان طبیعی استنفورد، برچسب ادات سخن هر کلمه را مشخص میکنیم. استفاده از برچسب ادات سخن برای رفع ابهام کلمات با چند معنای متفاوت بسیار مفید خواهد بود و تا حدی قادر است این ابهام را رفع کند. شکل 3-4 مثالی از عملکرد برچسب گذار استنفورد را مشخص میکند. همانطور که در شکل 3-4 دیده میشود کلمه Like در متن با دو معنای متفاوتش به کار رفته است. معنای اول “علاقمند بودن” که میتواند به فرایند تحلیل احساس کمک کند، معنای دوم “مانند”، که بیشتر نقش یک Stopword را دارد و کمکی به فرایند تحلیل احساس نمیکند. در این مرحله متون پیش پردازش شده با استفاده از کتابخانه استنفورد برچسب گذاری میشوند و سپس هر سند به مجموعه توکن/نقش سخن توکن تبدیل میشود.
POS Tagger
I/PRP like/VBP you/PRP ./. You/PRP are/VBP like/IN my/PRP$ mother/NN ./.