روش هاي ارزيابي خلاصه ساز ها - بخش دوم


 
ارزيابي بيروني (جعبه سياه) [2] 
برخلاف ارزيابي دروني ، در ارزيابي بيروني توجه برروي کاربر نهايي معطوف مي شود .درنتيجه در اين روش ميزان مؤثر بودن و قابليت پذيرش خلاصه هاي توليد شده با بعضي روشها ، مثل ارزيابي رابطه اي يا قابليت فهم در خواندن ، سنجيده مي شود. همچنين اگر خلاصه به نوعي شامل مجموعه دستوراتي باشد يک روش ممکن براي ارزيابي آن ، بررسي قابليت رسيدن به نتيجه با پيروي از دستورات خواهد بود. ساير روشهاي ممکن براي سنجش ، جمع آوري اطلاعات در يک مجموعه بزرگ از اسناد است ، ميزان تلاش و زمان موردنياز براي پس_ويرايش خلاصه توليد شده توسط ماشين براي بعضي مقاصد خاص ، يا تاثير سيستم خلاصه ساز برروي سيستمي که جزئي از آن است ، براي مثال بازخورد مرتبط در يک موتور جستجو و يا يک سيستم پرسش_پاسخ ، مي باشد. 
چندين سناريوي بازي مانند به عنوان روشهاي سطحي براي ارزيابي خلاصه ، پيشنهاد داده شده که ترتيب هاي مختلفي دارند. در ميان آنها بازي Shannon (تئوري اطلاعات) ، بازي سوال (کارايي عمل ) ، بازي دسته بندي و کلمات کليدي انجمني (بازيابي اطلاعات) مي توان نام برد. [1] 
بازي Shannon 
بازي Shannon که نوعي از معيارهاي سنجش Shannon در تئوري اطلاعات است ، تلاشي براي تعيين کيفيت محتوي اطلاعات بوسيله حدس لغت بعدي (حرف يا کلمه) مي باشد ، و به اين ترتيب متن اصلي را مجددا ايجاد مي کند. اين ايده از معيارهاي Shannon از تئوري اطلاعات اقتباس شده است ، که در آنجا از سه گروه مخبر خواسته مي شود قطعات مهم از مقاله منبع را (با مشاهده متن کامل ، يک خلاصه توليد شده و يا حتي هيچ متني) به صورت حرف به حرف يا کلمه به کلمه مجددا توليد کنند. سپس معيار حفظ اطلاعات با تعداد ضربه هاي کليدي که براي ايجاد مجدد قطعه اصلي طول مي کشد ، . سنجيده مي شود. Hovey و Marcu نشان دادند که اختلاف زيادي در اين سه سطح (در حدود فاکتور 10 در بين هر گروه) وجود دارد. مشکل روش Shannon اين است که به فردي که عمل حدس زدن را انجام مي دهد وابسته است و درنتيجه بطورضمني مشروط به دانش خواننده است. معيار اطلاعات با دانش بيشتر از زبان و حوزه و ... کاهش مي يابد. 
بازي سوال 
هدف از بازي سوال ، آزمايش ميزان فهم خواننده از خلاصه و توانايي آن براي نقل وقايع کليدي مقاله منبع است . اين عمل ارزيابي در دو مرحله انجام مي شود . ابتدا آزمايشگر مقاله هاي اصلي را مي خواند و بخشهاي مرکزي آن را علامت گذاري مي کند. سپس از عبارات مهم بخشهاي مرکزي متن ، سوالاتي طرح مي کند. و در مرحله بعد ، ارزياب سوالات را سه مرتبه پاسخ مي دهد ؛ يکبار بدون مشاهده هيچ متني (baseline 1) ، پس از مشاهده يک خلاصه ساخته شده توسط سيستم ، و درانتها پس از مشاهده متن اصلي (baseline 2) . خلاصه ايي که به خوبي وقايع کليدي مقاله را نقل کرده باشد ، بايد قادر به پاسخگويي به بيشتر سوالات (با نزديکتر بودن به baseline2 نسبت به baseline1 ) باشد . اين طرح ارزيابي براي مثال در ارزيابي خلاصه متن Q&A و TIPSTER SUMMAC هنگاميکه نرخ اطلاع رساني صحيح را براي فشردگي 1.5 يافت ، مورد استفاده قرار گرفته است. 
بازي دسته بندي 
بازي دسته بندي با دسته بندي اسناد منبع (آزمايشگرها) و متون خلاصه (اطلاع دهنده ها ) ، سعي درمقايسه قابليت دسته بندي آنها به يکي از N دسته دارد. سپس مطابقت دسته بندي خلاصه ها به متون اصلي سنجيده مي شود. يک خلاصه کاربردي بايد در همان دسته ي سند منبع اش قرارگيرد . دو نسخه از اين آزمايش در SUMMAC اجرا شد. اگر هر دسته با يک يا چند کلمه کليدي تعريف شود ، بازي دسته بندي به سناريوي تداعي کلمات کليدي ، عموميت پيدا مي کند. 
تداعي کلمات کليدي 
تداعي کلمات کليدي ، يک رويه ساده اما تاحدودي سطحي تر است که به کلمات کليدي وابسته ، (دستي يا اتوماتيک) براي اسناد در حال خلاصه شدن اکتفا مي کند. 
براي مثال خلاصه هاي توليد شده توسط سيستم هاي خلاصه سازي را به همراه پنج ليست از کلمات کليدي چاپ شده در مجلات، به قاضي هاي انسان ارائه مي دهند. سپس اين قاضي ها هرخلاصه را با ليست صحيحي از کلمات کليدي مرتبط مي کنند . از آنجا که کلمات کليدي تعيين شده توسط ناشر مرتبط با محتوي مقاله است ، اگر موفقيت آميز بود ، خلاصه پوشش دهنده جنبه هاي مرکزي متن موردنظر مي باشد. مزيت اصلي اين روش آن است که هيچ زحمتي از بابت حاشيه نويسي تحميل نمي کند. 

ابزارهاي ارزيابي 
به منظور استفاده از يک رويه سخت تر و قابل تکرار ، براي خودکارکردن نسبي عمل مقايسه خلاصه ها ، ساخت يک پيکره دقيق که شامل منابع و خلاصه هاي استخراج شده آنها باشد ، سودمند است. 
هر استخراج ، چه توسط يک مخبر انساني تهيه شده باشد يا يک ماشين ، به عنوان يک خلاصه صحيح از متن اصلي درنظر گرفته مي شود؛ يعني براي حفظ معني در بالاترين درجه ممکن .از آنجا که واحدهاي جمله اي از متن اصلي و خلاصه هاي مختلف به صورت موجوديت شناخته شده اند پايه و بناي يک پيکره استخراج شده ، مي تواند کاملا به برنامه هاي کامپيوتري واگذار شود. تعدادي از ابزارها براي اين منظور گسترش يافته اند. 
محيط ارزيابي خلاصه ها 
محيط ارزيابي SEE ، محيطي است که در آن ارزيابها مي توانند کيفيت يک خلاصه را در مقايسه با يک خلاصه مرجع مورد سنجش قرار دهند. متوني که درگير ارزيابي هستند ، با شکسته شدن به ليستي از قطعات (عبارات ، جملات و..) مورد پيش پردازش قرار مي گيرند .براي مثال هنگامي که يک سيستم مستخرج با سايز قطعه جمله را ارزيابي مي کنيم ، ابتدا متون با شکسته شدن به جملات آماده سازي مي شوند. 
در طول فاز ارزيابي ، هر دو خلاصه در دو صفحه مجزا نشان داده مي شوند و واسطه ايي براي ارزيابي درنظرگرفته شده تا برروي محتوا و کيفيت خلاصه ها قضاوت کنند. براي سنجش محتوي ، ارزياب از ميان خلاصه مورد ارزيابي ، قطعه به قطعه حرکت مي کند و برروي يک يا چند واحد مرتبط در خلاصه مدل کليک مي کند. 
براي هر کليک، ارزياب مي تواند تعيين کند آيا واحدهاي علامت دار تمام ، بيشتر ، بعضي و يا کمي از محتوي مدل کليک شده را بيان مي کنند .براي سنجش کيفيت ارزياب وضعيت گرامري ، پيوستگي و همبستگي را در سطح مختلف ارزيابي مي کند؛ تمام ، اکثريت ، بعضي ، کمي ، هيچ . کيفيت هم براي هر قطعه از خلاصه همتا و هم براي کيفيت کلي خلاصه همتا (پيوستگي ، طول ، پوشش محتوي گرامري و سازمان متن همتا به صورت کلي) ارزيابي مي شود. البته نتايج مي تواند هر زمان ذخيره و بارگذاري مجدد شود. نسخه خاصي از SEE در مسابقات دوره هاي 2001-2004 براي ارزيابي دروني متون خلاصه اخبارمورد استفاده قرارگرفت. 
MEADeval 
MEADeval ابزاري براي ارزيابي خلاصه هاي استخراج شده با فرمت DUC و MEAD است که با مقايسه خلاصه با يک خلاصه مرجع (يا خلاصه ايده آل) اين سنجش را انجام مي دهد. MEADeval اساسا روي فايلهاي استخراجي عمل مي کند که جملاتي را که در خلاصه استخراجي هستند را توصيف مي کند. 
ISI ROUGH بسته ي ارزيابي خودکار خلاصه 
بسته ي ISI ROUGH لين که بعدها با نام ROUGH معروف شد، تلاشي براي خودکار کردن ارزيابي خلاصه ها است که هم رخدادي هاي کلمه _n موقعيتي در بين سه تايي هاي خلاصه را موردسنجش قرار مي دهد. اين سه تايي ها معمولا شامل يک يا چند خلاصه توليد شده توسط سيستم است به همراه يک يا چند خلاصه مرجع ساخت انسان که به عنوان استاندارد طلايي براي مقايسه عمل مي کند. 
ROUGH مخفف Recall-Oriented Understudy for Gisting Evaluation است. ROUGH در مقايسه با BLEU که دقت مدار است ، فراخواني مدار است ؛ و جداگانه کلمات _nموقعيتي مختلفي را ارزيابي مي کند. همچنين ROUGH هيچ جريمه اي براي طول اعمال نمي کند که با توجه به ذات خلاصه سازي متن که در آن هدف فشرده سازي متن است ، همخواني دارد. در نسخه هاي اوليه ROUGH از دقت در F_measure استفاده مي شد که در رابطه آن دقت هم دخالت داشت .نسخه ROUGH 1/5/5 به صورت زير امتيازدهي انجام مي داد : 
ROUGE-1. . . n : هم پوشاني _nموقعيتي _n) نگاشتي) بين خلاصه سيستم و خلاصه ها ي مرجع. 
ROUGE-L : مانند ROUGE-W است با اين تفاوت که به منظور توسعه کلمات متوالي، از سيستم وزن دهي استفاده مي کند. 
ROUGE-Sn : از هم_وقوعي آماري دونگاشتي ، بدون محدوديت در طول فاصله، و با حداکثر فاصله n کلمه عبور مي کند . 
ROUGE-Sun : مانند ROUGE-Sn ، با اين تفاوت که تک نگاشت ها درنظر گرفته نمي شوند. 
Rough همچنين امکان ريشه يابي (با الگوريتم Porter) و حذف کلمات توقف را پيش از محاسبه معيار مي دهد. اين امکانات متاسفانه تنها براي زبان انگليسي طراحي شده است. 
 

Comments (1) Posted to ابزار ارزیابی خلاصه ها 05/24/2011 Edit

روش هاي ارزيابي خلاصه ساز ها - بخش اول

 
 
  

يک مرحله تعيين کننده در هر سيستم ، روش ارزيابي و اعتبارسنجي ادعاي بيان شده است . سيستم ها ي پردازش زبان طبيعي نيز از اين قاعده مستثني نيستند. بلکه با توجه به بي قاعدگي هاي زبان انساني ، اثبات منطقي اين پيکره ي بي قاعده ، يک ريسک است. يک رويه متداول براي برقراري ارتباط با اين حقيقت ، استفاده از اعتبارسنجي به کمک استقرا است. بنابراين آزمايش با يک بدنه داده ، به صورت زيرمجموعه اي از يک مجموعه کامل تقريبا نامحدود از سخنان درنظر گرفته مي شود .در نتيجه نمود رويه اي خاص ، مي تواند در قالب يک آزمايش، اعتبارسنجي شود. 
امروزه اکثر سيستم هاي خودکار خلاصه سازي متن ، مبتني بر استخراج هستند . گرچه کارهايي براي پس_ويرايش قطعات استخراج شده (يعني جملات، به صورت کاهش و ترکيب عبارات) به منظور نزديکي هرچه بيشتر خلاصه استخراجي ، به چکيده انجام مي شود. اين مسئله موجب پيدايش شرايطي شد که ضرورت وجود معياري براي مقايسه خلاصه ها چه از نظر کلمات بکاررفته در آنها و چه از لحاظ خاص بودن و باياس، احساس شد. بعلاوه در خلاصه سازي خودکار متن ، ممکن است چندين خلاصه خوب براي يک متن منبع خاص وجود داشته باشد که به اين ترتيب عمل ارزيابي اين خلاصه ها در مقايسه با يک خلاصه مرجع ثابت و تغييرناپذير ، رضايت بخش نيست. همچنين با توجه به اينکه نرخهاي فشردگي مختلف براي انواع مختلفي از متون مناسب است ، روشهاي ارزيابي که امکان ارزيابي براي نرخهاي مختلف مي دهند را بايد مورد توجه قرار داد. 
روشهاي ارزيابي خودکار که در اين گزارش ارائه شده اند عموما با مشابهت هاي محتوا بين خلاصه ها و سند اصلي سروکار دارند. امروزه هيچ روش ارزيابي واحدي که براي تمام اين جنبه هاي ارزيابي ارائه شده باشد، وجود ندارد. بلکه يک ترکيبي از روشها که در ادامه توضيح داده مي شود ، بايد براي پوشش هرچه بيشتر اين جنبه ها (قابليت مقايسه نتايج با سيستم هاي ديگر ، کوتاه کردن چرخه توسعه و حمايت از مقايسه به موقع در ميان روشهاي خلاصه سازي متفاوت) بکارگرفته شود. 
واضح است که به منظور اطمينان از پاسخ دهي نتايج و انجام يک مقايسه قابل اطمينان در ميان سيستم هاي خلاصه سازي ، چند نوع محيط استاندارد شده براي ارزيابي شديدا مورد نياز مي باشد. نخستين تفکيک که در روشهاي ارزيابي سيستم ها ي خلاصه انجام مي شود ، روشهاي ارزيابي دروني و بروني است. 

ارزيابي دروني (جعبه شيشه اي) 
ارزيابي دروني سيستم خلاصه را بدون توجه به هدف نهايي آن مورد سنجش قرار مي دهد. در عوض ، توجه برروي فاز توليد در چرخه عمر يک خلاصه است. اکثر روشهاي ارزيابي خلاصه دروني هستند و اغلب با يک استاندارد طلايي مقايسه مي شوند. در NLP ، به يک مجوعه ايده آل از نمونه هاي مرجع ، اغلب پيکره زباني استاندارد طلايي اتلاق مي شود. معمولا يک استاندارد طبيعي به صورت يک مدل بسيارخوب درنظر گرفته مي شود و بعنوان حد بالايي از آنچه معقول است و مي خواهيم با ابزارهاي اتوماتيک به آن برسيم ، عمل مي کند. در مورد خلاصه سازي ، اين مجموعه خلاصه هاي استاندارد طلايي را مي تواند با يک سيستم مرجع خلاصه ساز يا مخبران انساني توليد کرد. ارزيابي دروني توجه اصلي اش بروي پيوستگي و اطلاع رساني خلاصه ها است و درنتيجه تنها کيفيت هاي خروجي را مورد سنجش قرار مي دهد. [1] 
پيوستگي خلاصه : 
متن خلاصه اي که از طريق روشهاي مبتني بر استخراج (عمليات کپي و درج روي عبارات ، جملات و يا پاراگرافها) توليد مي شوند، گاهي از بعضي بي ارتباطي هاي معنايي در دنباله ي جملات متوالي رنج مي برند . يک راه براي سنجش پيوستگي خلاصه ، رتبه بندي يا درجه بندي جملات برحسب ميزان پيوستگي شان و سپس درجه جملات خلاصه با امتيازات خلاصه هاي مرجع ، با امتيازات جملات منبع ، يا با امتيازات ساير سيستم هاي خلاصه ساز ، مقايسه شود. 
اطلاع رساني خلاصه : 
يک راه براي سنجش ميزان اطلاع رساني خلاصه توليد شده ، مقايسه آن با متن اصلي از نظر ميزان اطلاعات حفظ شده از منبع در خلاصه مي باشد. روش ديگر مقايسه خلاصه توليد شده با يک مرجع است که ميزان اطلاعات خلاصه مرجع را که در خلاصه توليد شده ، وجود دارد مورد سنجش قرار مي دهد . براي يک مجموعه اسناد ، پارامترهاي P&R و همچنين پارامترهاي سودمندي و مبتني بر محتوا را مي توان براي ارزيابي عملکرد بکار گرفت. 
دقت و بازخواني جمله : 
بازخواني تعداد جملات خلاصه مرجع که در خلاصه توليد شده حضور دارند را مشخص مي کند. به همين ترتيب مي توان دقت را به صورت تعداد جملات خلاصه توليد شده که در خلاصه مرجع وجود دارند ، تعريف کرد. بازخواني و دقت معيارهاي استاندارد در بازيابي اطلاعات هستند و اغلب از ترکيب آنها، تحت عنوان F_measure ياد مي شود. مشکلات اصلي که اين معيارها براي خلاصه سازي متن دارند آن است که قادر به تشخيص بين خلاصه هاي ممکن ولي يکسان از نظر کيفيت نيستند و همچنين خلاصه هايي که محتواي بسيار متفاوتي دارند ممکن است امتيازات مشابهي دريافت کنند. 
رتبه دهي به جملات : 
از آنجا که در رتبه دهي ، جملات خلاصه ، از روي شايستگي شان براي شمول در خلاصه ساخته مي شود ، يک رويه جزء نگرتري نسبت به بازخواني و دقت است و از معيارهاي همبستگي مي توان براي مقايسه بين خلاصه توليد شده با خلاصه مرجع کمک گرفت. بازخواني و دقت ، اساسا براي خلاصه ها ي مبتني بر استخراج اعمال مي شوند، حتي اگرامکان اعمال روشهاي استاندارد تنظيم جمله با چکيده ها وجود داشته باشد . گرچه اين مسئله براي انسان طبيعي نيست و ممکن است گمان شود که تقليد از يک الگوريتم کامپيوتري بهترين راه براي جمع آوري خلاصه هاي مرجع نيست. 
روش سودمند : 
روش سودمند به خلاصه هاي مرجع امکان دربرداشتن واحدهاي استخراج شده (جمله ، پاراگراف و ...) با يک تابع عضويت فازي در خلاصه مرجع را مي دهد. در UM خلاصه مرجع شامل تمام جملات اسناد منبع، به همراه مقادير اطمينان ، از 0 تا 10 ، براي احتمال شمول در خلاصه مي باشد. درمورد رتبه جملات ، اين مقادير اطمينان توسط مخبران انسان اختصاص داده مي شود. بعلاوه روشهاي سودمند قابليت توسعه براي اعمال تاثير منفي واحدهاي استخراج شده برروي يکديگر را دارند . اين ويژگي خصوصا هنگاميکه ارزيابي خلاصه هاي چند سندي موردنظر باشد ، درجايي که يک جمله ، امتياز جمله مشابه با آن را جريمه مي کند (يعني سيستمي که دو يا چند جمله معادل را استخراج مي کند ، جريمه بيشتري نسبت به سيستمي که تنها يکي از اين جملات (حتي جمله با اطلاعات کمتر(درجه اطمينان پائين تر ) را استخراج مي کند ، دريافت مي کند) مفيد است. درمقابل معيارهاي بازخواني و دقت و درصد توافق ، که به صورت تعداد توافقات براي کل توافقات ممکن تعريف مي شود، روش سودمند امکان ارزيابي خلاصه ها را در نرخ هاي فشردگي متفاوت مي دهد .روش سودمند هم مانند بسياري از معيارهاي ارزيابي مشابه ، بيشتر براي خلاصه هاي مبتني بر استخراج مفيد است. آزمايشات جديدتر ارزيابي ، موجب توسعه معيار سود نسبي شده است. 
مشابهت محتوا : 

معيارهاي شباهت محتوا مي تواند براي ارزيابي محتواي معنايي ، هم در خلاصه هاي مبتني بر استخراج و هم چکيده ها اعمال شود. يکي از اين معيارها آزمون تست مجموعه لغات يک زبان است که در آن روشهاي بازيابي اطلاعات استاندارد ، براي مقايسه بردارهاي تکرار کلمه ، که پس از محاسبه ريشه ها در خلاصه موضوع بندي و استفاده مي شود. فرهنگ لغت کنترل شده و مجموعه هاي هم معني که با تحليل معاني پنهان يا شاخص تصادفي ايجاد مي شود ، را مي توان با ترکيب فرکانس عبارات هم معني ، براي کاهش عبارتها در بردارها بکار برد ، که موجب تغييرات بيشتري در بين خلاصه ها مي شود که اين مسئله در هنگام ارزيابي چکيده ها بسيار مفيد است. 
يکي از معايب اين روشها آن است که تا حدي نسبت به نفي و تغيير در ترتيب کلماتي که برروي تفسير محتوا تاثير گذارند ، حساس است. يک رويکرد ممکن براي غلبه بر اين مسئله استفاده از فرکانس بروي دنباله هايي از کلمات (يعني _n موقعيتي) بجاي يک کلمه واحد است. همچنين با تحليل معنايي پنهان يا شاخص گذاري تصادفي ، بايد براين حقيقت واقف باشيم که اين روشها لزوما مجموعه هاي هم معني درستي توليد نمي کنند ، عموما اين مجموعه ها همچنين کلمات متضاد و شمول و کلمات ديگري که در زمينه هاي معنايي مشابه روي مي دهد ، (در سطح کلمه يا سند براي RI و در سطح سند براي LSA ) ، را نيز شامل مي شوند.  
 

Comments (3) Posted to ابزار ارزیابی خلاصه ها 05/19/2011 Edit

تعریف نهایی پروژه درس اصول طراحی کامپایلر


 
 
 صورت نهایی پروژه به صورت زیر تعریف گردید که دانشجویان عزیز می بایست طی چندین مرحله، بخش های مختلف پروژه را انجام داده و تحویل دهند و نمره ی هر بخش به صورت مجزا بوده و فقط در تاریخ های مقرر شده تحویل گرفته خواهد شد.
 
فازهای  تعیین شده برای پروژه به قرار زیر می باشد:
 
1. تحویل یک فایل شامل عبارات منظم (Regular Expression) قابل تولید توسط گرامر با توجه به کلمات کیدی و توکن های موجود.
تحویل: تا 4 خرداد 1390 
 
2. برنامه ی تبدیل فایل شامل عبارات منظم به درخت (برنامه ی درخت ساز) که ممکن است به همان صورت قبلی و به صورت تبدیل عبارات منظم به DFA  تبدیل گردد...
تحویل: ( موعد تحویل تکالیف و پروژه ها متعاقبا اعلام خواهد گردید...)
  
3. تبدیل خروجی مرحله ی قبل به DFA (برنامه ی تبدیل درخت به DFA )
تحویل: ( موعد تحویل تکالیف و پروژه ها متعاقبا اعلام خواهد گردید...)
 
 4. خروجی نهایی پروژه که یک برنامه ی ورودی را به عنوان ورودی دریافت نموده و توکن های آن را شناسایی می نماید.
تحویل: تا 5 تیر 1390 
 
 
 
هر گونه ابهامی در مورد پروژه را میتوانید از طریق ایمیل با بنده در جریان بگذارید. 
پیروز باشید 
 

Comments (1) Posted to حل تمرین درس کامپایلر 05/16/2011 Edit

ابزار ارزیابی خلاصه سازهای ماشینی برای زبان فارسی ROUGE

 

 

سلام

مدتیه که کار بر روی ابزار ارزیابی خلاصه سازهای ماشینی برای زبان فارسی یا همون Rouge رو شروع کردیم و تقریبا مراحل پایانی پیاده سازی این نرم افزار رو داریم انجام میدیم.

به زودی توضیحات لازم در مورد روند عملکرد نرم افزار ، الگوریتم های بکار رفته و جزئیات پیاده سازی رو توی وبلاگ قرار می دم.

پیروز باشید

 

 

Comments (0) Posted to ابزار ارزیابی خلاصه ها 05/14/2011 Edit

Ontology Evaluation یا ارزیابی آنتولوژی ها بخش چهارم

 

 

در بخش پایانی این مبحث هم بد نیست یک نتیجه گیری کلی از این مبحث داشته باشیم:

در مجموع باید گفت:
•    در حال حاضر هیچ روش استانداردی برای ارزیابی آنتولوژی موجود نمی باشد.
•    در انتخاب روش ارزیابی یک آنتولوژی، باید به اینکه هدف ارزیابی چه می باشد و همچنین به اینکه آن آنتولوژی قرار است در چه کاربردی مورد استفاه واقع شود، توجه نمود.
•    خودکارسازی ارزیابی آنتولوژی از اهمیت بالایی برخوردار است چون با توجه به دورنمایی که از نقش و اهمیت آنتولوژی ها در وب معنایی وجود دارد، نیازمند روشهایی هستیم که با حداقل دخالت نیروی انسانی، قادر به ارزیابی یک آنتولوژی باشند.
•    توجه به ویژگی های وب معنایی برای ارائه یک روش ارزیابی آنتولوژی که با نیازهای وب معنایی سازگار باشد مهم است. بدین ترتیب باید context آنتولوژی را نیز در روش ارزیابی دخیل نماییم.

 

در این قسمت هم فایل پاور پوئینت ارائه را قرار می دهم تا دوستانی که تمایل دارند بتونند فایل رو دانلود کنند.

فایل  Power Point  ارائه ی ارزیابی آنتولوژی ها

 

شاید اگه فرصت شد و بیشتر روی این موضوع کار کردم مطالب بیشتری رو روی وبلاگ گذاشتم...

خوشحال میشم با نظرات و انتقاداتتون منو یاری کنید. 

پیروز باشید و سربلند...

Comments (2) Posted to ارزیابی آنتولوژی ها 05/03/2011 Edit

متن کامل مقاله در مورد ترجمه ی ماشینی

 نام مقاله:     انسان مترجم و ترجمة ماشيني: بررسي موردي مشكلات ماشين ترجمة انگليسي به فارسي «پديده»    
نام نشريه:     فصلنامه كتابداري و اطلاع رساني

شماره نشريه:     26 _ شماره دوم، جلد 7
پديدآور:     محمدرضا فلاحتي، آزاده نعمتي
    

  چكيده
هدف از نگارش اين مقاله آن بود تا دست‌كم بخشي از مشكلات ترجمه ماشيني، مشخص و ريشه‌يابي گردد. يافته‌ها حاكي از آن بود كه «پديده» در حال حاضر داراي مشكلات فراواني است كه ريشة آن‌ها را در سه چيز مي‌توان جستجو كرد: 1) نبود زبانشناسان مجرب در گروه برنامه‌نويسان؛ 2) نحوـ‌ محوربودن تئوري زباني؛ 3) نبود قدرت تعقل و تفكر در ماشين‌هاي ترجمه. ضمناً مشخص گرديد كه مشكلات نوع اول را مي‌توان با به‌كارگيري نيروي متخصص رفع نمود. مشكلات نوع دوم با تجديدنظر در تئوري زباني و توجه به معنا قابل رفع است، اما- دست‌كم در شرايط كنوني- نمي‌توان قدرت تعقل و تفكر را به ماشين داد و بنابراين مشكلات مربوط به مورد 3 قابل حل نيستند. با وجود اين، نتيجه‌گيري شد كه براي ترجمة متون اينترنتي و حجم زيادي از اطلاعات، بويژه وقتي هدف درك كليات متن باشد، استفاده از ماشين به جاي انسان هم راحت‌تر است و هم سريع‌تر و معقول‌تر.
كليدواژه‌ها: ماشين ترجمه، ترجمة ماشيني، ترجمة انساني، شيوة ميان زباني در ترجمة ماشيني، شيوة انتقال در ترجمة ماشيني، ماشين ترجمة «پديده»، ترجمة انگليسي‌ـ فارسي
مقدمه
در آغاز اجازه دهيد ديدگاه‌هاي مختلفي را كه دربارة بخش آغازين عنوان اين مقاله وجود دارد، باهم مرور كنيم. در يك نگاه كلي سه ديدگاه مختلف درخصوص عنوان اين مقاله هست: 1) طرفداران نظرية نبود تفاوت بين انسان مترجم و ماشين ترجمه، 2) طرفداران تفوق انسان مترجم بر ماشين ترجمه، و 3) طرفداران تفوق ماشين ترجمه بر انسان مترجم.

برخي از صاحب‌نظران بر اين باورند كه در ترجمه، بين انسان و ماشين تفاوت چنداني وجود ندارد. آنان ضمن اقرار به مشكلات موجود در كار ماشين ترجمه و قبول عملكرد ضعيف آن نسبت به عملكرد مترجمان متخصص، اظهار مي‌دارند كه در آينده ماشين ترجمه از عملكردي بهتر برخوردار خواهد شد و در توجيه ادعاي خود مي‌گويند كه در شرايط فعلي، رايانه‌ها در انجام امور محاسباتي و رياضيات، نسبت به انسان از سرعت عمل بيشتري برخوردارند و به بيان ديگر انسان ابداً در اين زمينه‌‍‌ها قادر نيست با ماشين رقابت كند. مثلاً تصور كنيد كه بخواهيم دو عدد 12394765 و 8945630 را در هم ضرب، حاصل را از 443954 كسر و نتيجه را بر 12459 تقسيم كنيم. مسلماً حتي با استفاده از كاغذ، انجام چنين كاري براي انسان چندين دقيقه به‌طول خواهد انجاميد، درحالي كه تمام اين محاسبات را يك ماشين حساب ساده مي‌تواند با دقت لازم و تنها در چند ثانيه به انجام برساند. اين گروه از محققان، يادگيري رياضيات را دشوارتر از يادگيري زبان مي‌دانند و بر اين نكته تأكيد مي‌كنند كه در آينده‌اي نزديك، رايانة جديدي را خلق خواهند نمود كه در امر ترجمه، پردازش اطلاعات و زبان از سرعت عمل و دقتي چون انسان برخوردار باشد.

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

طرفداران تفوق ماشين ترجمه بر انسان مترجم نيز بر اين باورند كه مشكلات ماشين ترجمه سال‌ها پيش مرتفع‌شده و هم‌اكنون اين‌گونه ماشين‌ها در ترجمة متون مختلف ـ يا دست‌كم انواعي از آن ـ با مشكلي مواجه نيستند و در آينده‌اي نزديك خواهند توانست بهتر از انسان به ترجمة متون مختلف بپردازند.

در اين مقاله و با ارائة مثال‌ها و بحث‌هاي مختلف نشان خواهيم داد كه با توجه به پيشرفت‌هاي به‌دست آمدة كنوني در علوم، ماشين قادر نيست مانند انسان به ترجمه بپردازد. توجه داشته باشيد كه اين گفته بدان معنان نيست كه ماشين قادر به ترجمه نيست، بلكه بر كيفيت پايين‌تر ترجمة ماشيني در مقايسه با ترجمة انساني تأكيد دارد.

حال نگاهي گذرا به تاريخچة كارهاي انجام‌گرفته در خصوص ماشين ترجمه داشته باشيم.

نگاهي كوتاه به تاريخچة ماشين ترجمه
امروزه در كتاب‌ها و مجلات معتبر دنيا مطالب فراواني به چاپ مي‌رسد كه به موضوع ترجمه و ترجمة ماشيني مربوط است. «هاچينز» (Huchins, W.J. 1986) و «مل باي» و «تري» (Melby. Alan & Terry, Varner C., 1995) از جمله افرادي‌اند كه به بررسي تاريخچة ماشين ترجمه پرداخته‌اند. «نيرنبرگ»(Nirenburg, S. 1986) موضوعات روش‌شناختي و نظري مرتبط با ماشين ترجمه را به تفصيل شرح مي‌دهد. «كي»(kay, Martin) و «گربر» (Gerber, Laurie)مي‌كوشند راه‌هايي را ارائه كنند كه باعث بهبود كيفيت ترجمة ماشيني شود. «دور» (Dorr, B.J. 1993) نقش و مشكلات مربوط به واژگان را در ترجمة ماشيني موردبحث و بررسي قرار مي‌دهد، «دري فاس» (Dreyfus, Hubert, 1992) به ناتواني‌هاي رايانه در انجام برخي امور اشاره مي‌كند، و...

كار بر روي ماشين ترجمه همزمان با اختراع رايانه در دهة 1940 آغاز شد. ماشين‌هاي ترجمة اوليه به‌اين‌صورت طراحي شده بودند كه براي ترجمة متون مختلف، مستقماً از يك واژه‌نامة دوزبانه استفاده مي‌كردند. ترجمه نيز تنها به ترجمة واژگاني محدود مي‌شد و از ترجمة ساختار نحوي زبان مبدأ يا مقصد نيز خبري نبود. اين نوع روش ترجمه را مستقيم مي‌ناميدند. با اين همه در دهه 1980 چندين سامانة ترجمه به بازار عرضه شد كه در ترجمه از روش غيرمستقيم استفاده مي‌كردند. علت استفاده از لفظ غيرمستقيم صرفاً بدان علت است كه اين‌گونه ماشين‌ها متن را مستقيماً از زبان مبدأ به زبان مقصد ترجمه نمي‌كنند، بلكه ابتدا متن از زبان مبدأ به يك «ميان‌زبان»[3] و سپس به زبان مقصد ترجمه مي‌شود؛ بنابراين، ترجمه در دو مرحله به انجام مي‌رسد. در اين‌گونه سيستم‌ها برنامه‌هايي تعبيه شده تا به شناسايي ساختار واژه و جمله، و واژه‌ها و عبارات مبهم بپردازند.

روش غيرمستقيم داراي انواعي است كه از آن جمله مي‌توان به دو شيوة «ميان‌زباني» و «انتقال»[4] اشاره كرد. در ادامه به صورت اجمالي به معرفي اين دو روش مي‌پردازيم.

1. روش‌هاي ترجمة ميان‌زباني و انتقال
1ـ1. روش انتقال: متن مبدأ ـ ـ تجزيه ـ ـ ساختار بينابيني متن مبدأ ـ ـ انتقال ـ ـ ساختار بينابيني متن مقصد ـ ـ تركيب ـ ـ متن مقصد

1ـ2. روش ميان‌زباني: متن مبدأ ـ ـ تجزيه ـ ـ ميان‌زبان ـ ـ تركيب ـ ـ متن مقصد

در روش انتقال، ساختار بينابيني معمولاً كار تجزيه و تحليل دستوري متن را برعهده دارد و هربار مي‌تواند تنها يك جمله را بررسي كند. از سويي ديگر، روش ميان‌زباني، متن را بدون توجه به زباني خاص مورد تجزيه و تحليل قرار دهد. مزيت روش ميان‌زباني اين است كه مي‌توان با صرف هزينه‌هاي نسبتاً پايين، زبان‌هاي جديدي را نيز به ماشين ترجمه اضافه كرد. اين كار صرفاً با استفاده از قوانيني تحقق مي‌يابد كه بين زبان جديد و «ميان‌زبان» برقرار است.

اما در ديدگاه انتقال، حيطة كار اين قوانين و قواعد، زبان جديد و ديگر زبان‌هاي موجود در ماشين ترجمه مي‌باشد. در روش انتقال، تنها بين دو زبان مبدأ و مقصد مقايسه به عمل مي‌آيد. در اين مقايسه، واحدهاي واژگاني و ساختارهاي نحوي دو زبان با هم مقايسه مي‌شوند؛ سپس با استفاده از قواعد انطباقي سعي مي‌شود ساختار بينابيني زبان مبدأ به ساختاري مشابه در زبان مقصد تبديل شود (Tusjii, 1990). اين قواعد همراه با ديگر اطلاعات معنايي و ...، در لغتنامه‌ها يا پايگاه‌هاي دانش ذخيره مي‌شوند. در شيوة انتقال، عمق و ميزان تجزيه و تحليل از پيش مشخص نيست، بلكه به ميزان قرابت و نزديك‌بودن دو زبان بستگي دارد: هرچه دو زبان به هم نزديك‌تر باشند، از عمق تجزيه و تحليل نيز به همان ميزان كاسته خواهد شد.

اما براي اين كه بتوانيم به ترجمه‌اي كيفي دست يابيم، بايد پا را از تجزيه و تحليل نحوي يا تجزيه و تحليل معنايي سطحي فراتر بگذاريم. براي انجام ترجمة كيفي، سيستم بايد بتواند معناي واقعي جمله را نيز درك كند. مثلاً جملات ساده‌اي چون «دانش‌آموز امتحان داد» و «معلم امتحان گرفت» را در دو زبان فارسي و انگليسي در نظر بگيريد. معادل اين دو جمله در انگليسي بدين قرارند:

The student took the test. The teacher gave the test

ماشين ترجمه بايد بتواند اين‌گونه جملات را نيز به خوبي درك كند و براي درك آن‌ها لازم است كه درباة امتحان‌دادن و امتحان‌گرفتن در انگليسي و فارسي اطلاعاتي داشته باشد. غالباً چنين اطلاعاتي در بخشي از سيستم به نام قالب‌هاي حالت[5] ذخيره مي‌شود. در اين مرحله سيستم ترجمه براي شناسايي عناصر جمله به تجزيه و تحليل معنايي، قواعد انتقال معنايي، و قواعد ديگري نيازمند است. تجزيه‌گر معنايي با استفاده از نمودار نحوي، قالب حالت را توليد مي‌كند و مرحلة انتقال نيز «قالب حالت» استخراج شده از جمله در زبان مبدأ را به «قالب حالت» معادل در زبان مقصد تبديل مي‌كند.

اما در روش «ميان‌زباني» به تجزيه و تحليل مفصل‌تري نيازمنديم. نتيجة اين تجزيه و تحليل يك بازنمود انتزاعي است كه مستقل از زبان مبدأ است. مزيت اين استقلال آن است كه تركيب اجزا و شكل‌گيري جملة معادل در زبان مقصد مي‌تواند بدون شناخت زبان مبدأ صورت پذيرد. بنابراين در اين روش، اطلاعاتي ممكن است به جمله اضافه شود كه به صورت واضح و آشكار در جملة مبدأ وجود ندارد. البته افزودن اطلاعات بويژه اطلاعات معنايي و فرازباني، كاري بس دشوار و وقتگير است. اطلاعات معنايي غالباً در يك «پايگاه دانش» يا «واژه‌نامة مفهومي» ذخيره مي‌شود. «نيرنبرگ» و ديگران (Nirenberg, J., Garbonell, J.c., Tomita, M; &Goodman, K., 1992) بر اين باورند كه از اين نوع اطلاعات معنايي، در سيستم ترجمة «كي‌بي‌ام‌تي ـ 89»[6] و براي رسيدن به بازنمودي ميان‌زباني كه عاري از ابهام نيز باشد استفاده شده است. براي رسيدن به اين بازنمود ميان‌زباني، بايد از چند مرحله گذشت: «كي‌بي‌ام‌تي ـ 89» ابتدا و با استفاده از يك دستور نقش‌گراي واژگاني، تجزيه و تحليل نحوي را آغاز مي‌كند، سپس با استفاده از يك لغتنامة مفهومي، مدخل‌هاي واژگاني را به معادل‌هاي ميان‌زباني‌شان ترجمه مي‌كند. در مرحلة بعد، پس از اعمال تغييرات ساختاري، ساختارهاي ميان‌زباني حاصل مي‌شوند و در پايان با تركيب اجزا، بازسازي جمله در زبان مقصد محقق مي‌شود.

همان‌گونه كه پيشتر ذكر شد در روش ميان‌زباني، افزودن زبان جديد به ماشين ترجمه بسيار راحت‌تر از روش انتقال است. با اين همه، تاكنون هيچ سيستم ميان‌زباني مطلوبي به بازار عرضه نشده و تمامي سيستم‌هاي ترجمة ماشيني ميان‌زباني كه تاكنون طراحي شده‌اند، مراحل آزمايشي خود را سپري مي‌كنند و از اين رو حيطة كار آن‌ها از چند صد واژه يا چندهزار پيش‌نمونه، فراتر نمي‌رود. هرچند تحقيقات انجام گرفته در خصوص ميان‌زبان اندك نبوده، اما هنوز روش مشخصي ارائه نشده تا با استفاده از آن بتوان به يك بازنمود معنايي مستقل از زبان دست يافت. البته، درخصوص امكان دست‌يابي به چنين بازنمودي نيز شك و ترديد بسيار وجود دارد (Whorf, B.L., 1956; Nirenbuerg, S.et al., 1992; Hovy, E.H. & Nirenburg, J., 1992).

در سيستم‌هاي علمي، از روش انتقال بيشتر استفاده مي‌شود، چون هم ساده‌تر است و هم نيازي به ميان‌زبان ندارد. همين امر سبب گرديده تا اين روش در مقايسه با روش ميان‌زباني از كارآيي بيشتري برخوردار باشد. به تازگي سعي شده با تلفيق روش‌ها و ديدگاه‌هاي مختلف موجود، سيستمي واحد و چندموتوره ارائه گردد. به نظر مي‌رسد انجام اين كار بسيار ساده باشد: جملات موردنظر براي ترجمه به چندين موتور ترجمة موازي فرستاده مي‌شوند و در پايان، بروندادهاي موتورهاي مختلف با هم تركيب مي‌گردند و درنهايت، بهترين و مناسب‌ترين بخش‌ها انتخاب، و سپس در قالب جملات زبان مقصد، بازسازي و بازنويسي مي‌شوند.

امروزه تقريباً تمام ماشين‌هاي ترجمه از يكي از سه روش گفته شده ـ مستقيم، غيرمستقيم (ميان‌زباني) يا انتقال ـ استفاده مي‌كنند. مثلاً در ماشين‌هاي ترجمه «آريان»[7] و «يوروترا»[8] كه توسط كميسيون مجامع اروپايي» طراحي شده‌اند از روش انتقال استفاده شده است. در اواخر دهه 1980 در ژاپن براي زبان‌هاي آسيايي ماشين ترجمه‌اي ساخته شد كه از روش ميان‌زباني استفاده مي‌كرد، اما اين پروژه با شكست مواجه شد و شايد دليل عمدة اين شكست را بتوان ساختار خاص و پيچيدگي‌هاي نوشتاري زبان‌هايي چون ژاپني، چيني، و... دانست.

تا دهه 1990 چنين تصور مي‌شد كه ماشين‌هاي ترجمه بايد در نهايت جايگزين انسان مترجم شوند و ترجمه‌هايي را توليد كنند كه از قابليت چاپ برخوردار باشند، اما چنين تصوري هم‌اكنون دچار تغيير و تحول شده است. امروزه ديگر هدف اصلي از ساخت ماشين‌هاي ترجمه، جايگزيني آن‌ها به‌جاي انسان مترجم نيست، بلكه رسيدن به ترجمه‌هاي ارزان‌تر و سريعتر (آن‌هم در حجم بسيار زياد)، هدف نهايي اين‌گونه ماشين‌ها است.

در بخش بعدي به بررسي يكي از ماشين‌هاي ترجمة انگليسي به فارسي خواهيم پرداخت كه مدعي است در ترجمه، واحد «جمله» را مدنظر قرار مي‌دهد و بنابراين از بسياري از مشكلات ترجمة واژه‌به‌واژه به‌دور است.

ماشين ترجمه «پديده»
ماشين‌هاي ترجمه‌اي كه در بخش پيشين اين مقاله دربارة آن‌ها صحبت كرديم، قادر نبودند متون انگليسي را به فارسي ترجمه كنند، اما ماشين ترجمه «پديده» از چنين قابليتي برخوردار است. اين ماشين ترجمه مدعي است كه قادر است جملات را به‌گونه‌اي مطلوب ترجمه نمايد. علاوه بر تايپ جملات يا متون موردنظر، مي‌توان فايلي را كه به فرمت «پي‌دي‌اف» يا متن[9] باشد به ماشين داد و منتظر پاسخ ماند. اين ماشين ترجمه ضمن بهره‌گيري از آخرين دستاوردهاي هوش مصنوعي، قادر است 400 صفحه را تنها در يك دقيقه ترجمه كند.

«پديده» در بانك اطلاعاتي خود براي واژه‌ها و عبارات، 000,500,1 مدخل دارد. هر مدخل معناي فارسي واژه، مفاهيم دستوري و چند عنصر ديگر را شامل مي‌گردد. براي ترجمة يك جمله، اين ماشين نخست آن را به واژه‌هاي تشكيل‌دهنده، عبارات و نمادها تقسيم و سپس نتايج به‌دست آمده را به واحدهاي دستوري، واژگاني و واژه‌سازي ارسال مي‌كند؛ سپس نتايج حاصله به يك موتور برونداد فرستاده مي‌شوند. اين موتور نهايي، مسئول توليد و ارائة ترجمة فارسي است.

سازندگان اين ماشين مي‌گويند در آينده‌اي نزديك «پديده» خواهد توانست متون مختلف را از فارسي به انگليسي يا از زبان‌هاي ديگر به فارسي برگرداند.

عملكرد ماشين ترجمه «پديده»
براي پي‌بردن به چگونگي عملكرد اين ماشين ترجمه، محققان 18 نوع مختلف از جملات انگليسي را به عنوان نمونه وارد ماشين كردند و سپس به بررسي ترجمه‌هاي فارسي توليدشده پرداختند.

در ادامه به بررسي گروه‌هاي هجده‌گانة جملات انگليسي و ترجمه‌هاي حاصله مي‌پردازيم.

گروه 1. جملات ساده: جملات 1 تا 5 همگي جملات ساده‌اند. اين جملات را ساده مي‌ناميم چون در ساختارشان، اصطلاح ضرب‌المثل، استعاره، و ... وجود ندارد و در ضمن داراي ساختار دستوري پيچيده‌اي نيستند، تنها داراي يك فعل‌اند، و...

من به سينما اين آخر هفته خواهم‌رفت.
1. I will go to the cinema this weekend.

او چه مژه‌هاي بلندي را دارد!
2. What long eyelashes she has!

من به خدا ايمان دارم.
3. I believe in God.

او روي ميز رفت.
4. He went on the table.

پدرش چه سني است؟
5. How old is his father


با نگاهي به جملات انگليسي 1 تا 5 و ترجمه‌هاي فارسي توليدشده به نتايج زير مي‌رسيم: ترجمة جمله 1 كاملاً قابل‌فهم است، با اين همه ترتيب اجزاي جمله درست نيست. معمولاً در زبان فارسي قيد زمان را در آغاز جمله مي‌آورند و بنابراين بيشتر سخنوران فارسي به‌جاي «من به سينما اين آخر هفته خواهم رفت» مي‌گويند «من اين آخر هفته به سينما خواهم رفت» يا در گونه‌هاي محاوره‌اي «اين آخر هفته مي‌رم سينما». ترجمة ارائه‌شده براي جمله 2 نيز كاملاً قابل درك است. اشكال اين ترجمه وجود حرف «را» پس از واژه «بلندي» است كه بايد آن را حذف نمود (او چه مژه‌هاي بلندي دارد!). جملات 3و4 از نظر معنايي و دستوري كاملاً درست‌اند و نياز به هيچ تغيير يا اصلاحي نيست. جمله 5 نيز كاملاً قابل درك و دستوري است؛ با اين همه، ساختار به‌كار گرفته‌شده در ترجمه، ساختاري كاملاً رايج به شمار نمي‌رود. معمولاً به‌جاي «پدرش چه سني است؟» مي‌گوييم «پدرش چند ساله است» يا درگونه‌هاي محاوره‌اي «پدرش چند سالشه؟».

نگاهي دوباره به ترجمه‌هاي ارائه‌شده براي جملات 1 تا 5 نشان مي‌دهد كه اين ماشين قادر است جملات ساده را با موفقيت ترجمه كند و اشكالات موجود، بيشتر اشكالاتي ساختاري‌اند و نه معنايي و بنابراين در امر ارتباط خللي ايجاد نمي‌كنند.

گروه 2. اصطلاحات، ضرب‌المثل‌ها، و...: هريك از جملات 6 تا 13 در ساختار خود داراي نوعي اصطلاح، ضرب‌المثل، يا ساختاري مشابه‌اند. براي رسيدن به معناي درست اين‌گونه جملات، انسان مترجم بايد از پيش با چگونگي كاربرد آن‌ها آشنايي داشته باشد، چون معناي چنين جملاتي را نمي‌توان از جمع عددي معاني واژه‌هاي تشكيل‌دهندة آن‌ها مشخص كرد. مثلاً در جمله 12 منظور نويسنده اين نبوده كه فردي دماغ بزرگ دارد، چرا كه در آن صورت بايست از فعل has استفاده مي‌كرد، بلكه منظور او اين بوده كه بگويد «او فرد بسيار مهمي است» يا «از آن كله‌گنده‌ها است».

من به ستون فقرات را خسته بودم.
6. I was tired to the backbone.

پهناي اجازه دادن به پاهايمان.
7. Let’s stretch our legs.

او يك پتوي خيس است.
8. He is wet blanket.

او اين روزهاي بدهكار است.
9. He is in the red These days.

او به سطل لگد زد.
10. He kicked the bucket.

در حال بازي tennis فنجان چايي‌ام است.
11. Playing tennis is my cup of tea.

او يك دماغ بزرگ است.
12. He is a big nose.

او جيم شد.
13. He took French leave.


در اين گروه، ترجمه‌هاي ارائه‌شده براي جملات 6، 7 و 11 كاملاً بي‌معنا و غيردستوري‌اند. ترجمه درست و البته پيشنهادي اين سه جمله به ترتيب عبارت‌اند از:

6. كاملا ًخسته بودم.

7. بياييد كمي خستگي در كنيم يا كمي راه برويم.

11. تنيس ورزش مورد علاقه‌ام است.

«پديده» در ترجمه‌اي كه براي جمله 11 ارائه داده واژه tennis را ترجمه نكرده (كه دليل آن مي‌تواند نبود معادل فارسي براي اين واژه در واژگان ماشين ترجمه باشد). ضمناً نتوانسته اسم مصدر بودن playing را تشخيص دهد. از اين‌رو، آن را به اشتباه فعل استمراري درنظر گرفته. علت بروز چنين اشكالي را بايد در نقص برنامه‌هاي دستوري تعريف شده براي ماشين جستجو كرد.

جملات8 ، 10 و 12 همگي دستوري‌اند، اما منظور اصلي گوينده يا نويسنده را نمي‌رسانند. جملات كاملاً تحت‌اللفظي ترجمه شده‌اند. به بيان ديگر، «پديده» به معناي اصطلاحي اين‌گونه جملات توجهي نكرده است. ترجمة پيشنهادي سه جملة بالا به قرار زير هستند:

8 . هميشه آية يأس مي‌خواند/ هميشه ضدحال مي‌زند.

10. او به درك واصل شد/ سقط شده.

12. او فرد مهمي است/ از آن كله‌گنده‌ها است.

جملات 9 و 13 به درستي ترجمه شده‌اند، هرچند در جملة 9 «ي» بايد از آخر «روزها» حذف گردد (او اين روزها بدهكار است).

بررسي ترجمه‌هاي ارائه‌شده در گروه 2 نشان مي‌دهد كه «پديده» در ترجمة تركيبات اصطلاحي داري اشكال است، چرا كه به‌جاي معناي اصطلاحي، جز در جملة 13 به معناي تحت‌اللفظي واژه‌ها توجه مي‌كند.

گروه 3. one: مي‌دانيم كه ضمير جانشين اسم مي‌شود. معمولاً در نوشتار يا گفتار براي جلوگيري از تكرار يك اسم، مي‌توان از ضمير مناسب استفاده كرد. در انگليسي، يكي از موارد كاربرد one آن است كه جلوي تكرار اسم را مي‌گيرد، مانند جملة 14. ضمناً one مي‌تواند نقش ضمير نامشخص را نيز بازي كند. مثلاً در جملة 15، one را مي‌توان «آدم» ترجمه كرد (كه ممكن است به هر فردي اشاره داشته باشد). ترجمه‌هاي ارائه‌شده توسط ماشين براي اين دو جمله عبارت‌اند از:

قدم اول مشكل‌ترين يك است.
14. The first step is the most difficult one.

يك با دقت هميشه بايد باشد.
15. One should always be careful


در اين مورد نيز مي‌بينيم كه «پديده»،one را به‌صورت تحت‌اللفظي ترجمه كرده و نتوانسته كاربرد اين واژه را در دو جمله تميز دهد. براي اين دو جمله ترجمه‌هاي زير پيشنهاد مي‌شوند:

14. قدم اول مشكل‌ترين قدم است.

15. آدم هميشه بايد مواظب باشد.

One در جملة 14 به «قدم» و در جملة 15 به «تمام انسان‌ها» اشاره دارد.

گروه 4. علائم اختصاري و اختصارات: جملات 16 و17 هر دو داراي علائم اختصاري‌اند (U.S. در جملة 16 و US در جملة 17). «پديده» توانسته جملة 16 را به درستي ترجمه كند، ولي در ترجمة جملة 17 ناموفق بوده.

حكومت آمريكا
16. The U.S. government

محرك غيرشرطي حكومت
17. The US government


در اينجا املاي كلمات نقش مهمي را ايفا مي‌كند. از نظر «پديده» «.U.S»، وقتي پس از هر حرف بزرگ نقطه‌اي وجود داشته باشد، به معناي آمريكا است، ولي «US» بدون نقطه به معناي «محرك غيرشرطي» (Unstimulated) است كه به حوزة روانشناسي مربوط مي‌شود. بنابراين در واردكردن اطلاعات به ماشين و رعايت املاي درست كلمات بايد دقت كنيم، چرا كه برخلاف انسان، ماشين قادر نيست خطاهاي املايي كلمات را تشخيص دهد. ضمناً ماشين به بافت و متن حساس نيست و از اين‌رو متوجه نمي‌شود كه «محرك غيرشرطي»، آن هم در جمله‌اي كه به اخبار يا سياست مربوط مي‌شود، ترجمة درستي براي «US» نيست. ضمناً ماشين بين «US» كه با حروف بزرگ نوشته شده و «us» (ضمير مفعولي «We»;) تمايز قائل‌شده، و به همين دليل به‌جاي «محرك غيرشرطي» از ضمير «ما» استفاده نكرده است.

گروه 5. اسم مصدر و مصدر با to از فعل: دو جملة 18 و 19 هر دو دستوري‌اند، اما از نظر معنايي تنها جملة 18 درست است.

او به ياد آورد در را قفل كند.
18. He remembered to lock the door.

او در قفل‌شدني را به ياد آورد.
19. He remembered locking the door


جمله 18 بدين معنا است كه فرد، قبلاً در را قفل نكرده بوده، پس رفت ودر را قفل كرد. اما معناي جملة 19 آن است كه او قبلاً در را قفل كرده بوده و قفل‌كردن در را به‌خاطر آورده است. در جملة 19 ماشين نتوانسته تحليل نحوي درستي از جمله ارائه دهد. ماشين عبارت «locking the door» را با «the locking door» كه يك گروه اسمي است يكي فرض كرده و چون اين گروه اسمي پس از فعل آمده، آن را مفعول مستقيم دانسته. پس، از نظر ماشين «locking» صفت است و نه صورت «ing»دار فعل «lock». ترجمة درست جملة 19 از اين قرار است:

او به ياد آورد كه در را قفل كرده بود.

گروه 6. ضماير: جملات 20 و 21، هر دو دستوري و بامعنايند. اين بدان معنا است كه «پديده» مي‌تواند بدرستي بين انواع مختلف ضماير، از جمله ضماير مفعولي و انعكاسي تمايز قائل شود.

او او را شست.
20. He washed him.

او خودش را شست.
.21. He washed himself


هرچند ترجمة ارائه‌شده توسط «پديده» براي جملة 20 درست است، با ترجمة ارائه‌شده توسط انسان مترجم يكي نيست؛ به‌اين معنا كه مترجمان غالباً به جاي آن‌كه ضمير «او» را دوبار پشت سرهم بياورند، به جاي يكي از ضميرها از طريق جستجوي در متن، اسم مناسب را جايگزين مي‌كنند ـ مثلاً «علي او را شست» يا «او علي را شست». بنابراين مي‌توان گفت كه ماشين ترجمه قادر نيست از امكانات متن استفاده كند، يا به بيان ديگر، از حد جمله فراتر رود.

گروه 7. واژه‌هاي هم‌آوا ـ هم‌نوشت: واژه‌هاي هم‌آوا ـ هم‌نوشت واژه‌هايي‌اند كه داراي تلفظ و صورت نوشتاري يكساني مي‌باشند، مثل «شانه» كه به وسيله‌اي براي مرتب‌كردن مو، عضوي از بدن، شانة تخم‌مرغ، قسمت خاكي جاده، و... اشاره مي‌كند. بديهي است بين معاني مختلف واژة هم‌آوا ـ هم‌نوشت ارتباطي وجود ندارد.

بانك يك رودخانه.
22. The Bank of a river.


براي پي‌بردن به معناي موردنظر از واژة هم‌آوا ـ هم‌نوشت، توجه به متن و بافت ضروري است. ترجمة ارائه‌شده براي جملة 22 نادرست است، چون «پديده» قادر نيست از حد جمله فراتر رود. همين امر سبب شده تا به جاي «حاشية يك رودخانه»، «بانك يك رودخانه» را به عنوان معادل فارسي جملة 22 ارائه دهد.

گروه 8 . املا و فاصلة بين كلمات: ترجمة جملة 23 و 24 غيردستوري است. ترجمة 24 بي‌معنا، و ترجمة جملة 23 معنادار است، هرچند نياز به اصلاحات ساختاري و واژگاني نيز دارد.

آيا رقص فرانسوي نشاط‌آور مي‌توانيد؟
23. Can you cancan?

آيا مي‌توانيد كنسرو بكنيد كنسرو بكنيد؟
24. Can you can can?


ماشين ترجمه براي اين‌كه بتواند براي جملات فوق ترجمة درستي ارائه دهد بايد بتواند بين معاني مختلف «can» تمايز قائل شود. در جملة 23 «can» در آغاز جمله فعل كمكي است، در حالي كه «cancan» در آخر جمله به نوعي رقص اشاره دارد و فعل است. (توجه داشته باشيد كه در اين مورد «cancan» بدون فاصله نوشته مي‌شود. البته مي‌توان به جاي آن از «can the can» نيز استفاده كرد). نكتة جالب آن است كه وقتي «cancan» را با فاصله و به صورت «can can» بنويسيم، ديگر ماشين ترجمه قادر نيست اين عبارت را به صورت «رقص فرانسوي نشاط‌آور» ترجمه كند، بلكه هر يك از دو can موجود پس از you را جدا فرض مي‌نمايد و به كنسرو ترجمه مي‌كند. بنابراين نگارش درست جملات در هنگام ورود اطلاعات به ماشين از اهميت بسياري برخوردار است. انسان‌هاي مترجم مي‌توانند از طريق بررسي متن و بافت، اشكالات تايپي و املايي احتمالي را تشخيص دهند، منظور اصلي نويسنده را درك و ترجمه كنند، ولي ماشين از چنين قابليتي برخوردار نيست.

گروه 9. مقولة دستوري: در زبان، واژه‌هاي بسياري وجود دارند كه بسته به بافت و جايگاه، به مقوله‌هاي دستوري مختلفي تعلق دارند.

25. Like you I don’t like him.

به شما علاقه‌ داشته باشيد من تي ـ را مي‌پوشانم به او علاقه داشته باشد.

در اين جمله «like» قبل از you به معناي «مثل و مانند» است، درحالي‌كه «like» پيش از him فعل است و به‌معناي «دوست‌داشتن». مشخص است كه «پديده» در تشخيص مقولة دستوري واژه‌هايي كه به بيش از يك مقوله تعلق دارند، موفق نيست.

گروه 10. اسامي ساده و مركب: در انگليسي به شيوه‌هاي مختلف مي‌توان اسم مركب ساخت. يكي از اين شيوه‌ها آن است كه اسم را با فعل تركيب كنيم، يا دو اسم را به‌هم بپيونديم.

ميوه علاقه داشتن را هلو پرواز مي‌كند.
26. Fruit flies like peach.


در جملة 26، «fruit flies» اسم مركب است و به «مگس ميوه» يا «حشرات ميوه» اشاره دارد، بنابراين بايد آن را اسم به حساب آوريم. از سويي ديگر، بدون نگاه‌كردن به بخش دوم يعني «like peach» و محدوديت‌هاي معنايي در كاربرد يك واژه‌، ممكن است تصور كنيم كه «fruit» فاعل است و مفرد، و «flies» فعل سوم‌شخص مفرد. اما وقتي بخش دوم جمله را نيز مدنظر قرار دهيم به اين نتيجه مي‌رسيم كه فعل اصلي جمله «like» است و نه «flies» و درواقع آنچه پيش از «like» آمده اسم مركب است و نه فاعل و فعل. «پديده» به جاي آن‌كه «fruit flies» را اسم مركب درنظر بگيرد، «fruit» را فاعل و «flies» را فعل اصلي درنظر گرفته است، از اين‌رو «like» را كه پس از «flies» آمده مفعول مستقيم و «peach» را متمم فرض كرده. بنابراين «پديده» در زمينة اسامي مركب نيز عاري از خطا نيست. ترجمة پيشنهادي جمله 26 از اين قرار است: مگس‌هاي ميوه هلو را دوست دارند.

گروه 11. جملات سببي: جمله‌هاي 27 و 28 هردو دستوري‌اند، با وجود اين مي‌توان معناي جمله و منظور اصلي گوينده را فهميد.

من ماشينم را داشتم شسته شده.
27. I had my car washed.

ديروز من كوتاه‌كردن مويم را داشتم.
28. I had my hair cut yesterday.


به نظر مي‌رسد ساختار جملات سببي به خوبي براي «پديده» تعريف نشده و فعل have و نقش آن در جملة سببي به درستي درك نشده است. از اين‌رو به جاي ترجمه‌هايي چون «ماشينم را دادم بشويند» و «ديروز رفتم سلماني» يا «ديروز مويم را كوتاه كردم»، ترجمه‌هاي فوق توليدشده است.

گروه 12. توالي صفات: در گروه‌هاي اسمي مي‌توان چندين صفت را پيش از اسم قرار داد كه البته در مورد ترتيب قرار گرفتن آن‌ها قواعد خاصي وجود دارد. ضمناً در انگليسي، فعل و فاعل از نظر عدد و شخص با هم مطابقت دارند.

دو بطري‌هاي چوبي قرمز بزرگ
29. Two large red wooden bottles.


ترجمة جملة 29 غيردستوري، اما قابل درك است. به راستي ترتيب واقعي صفات در زبان فارسي چگونه است؟ «پديده» ترتيب صفات را از انگليسي به فارسي كاملاً برعكس كرده، يعني «large red wooden» را به «چوبي قرمز بزرگ» تبديل نموده. نكتة ديگر اين‌كه «پديده» مطابقت عدد با اسم را بدون تغيير، از انگليسي وارد فارسي كرده است: برخلاف انگليسي كه در آن عدد با اسم مطابقت دارد، در فارسي اسم همواره مفرد است (يك سيب، دو سيب، سه سيب، و ...)، و به نظر مي‌رسد در اين زمينه برنامة دستوري مناسب به ماشين داده نشده.

گروه13. جملات امري: ترجمة جملة 30، دستوري است، اما معناي موردنظر گوينده يا نويسنده را منتقل نمي‌كند.

همانجا به من كتاب را بدهيد.
30. Give me the book over there!


«پديده» در ترجمة عبارت پايان (يعني «over there»;) دچار اشتباه شده و آن را به جاي «كه آنجاست» به «همان‌جا» ترجمه كرده. ترجمة پيشنهادي اين جمله از اين قرار است: «كتابي را كه آنجا است به من بدهيد». ضمناً در فارسي معمولاً مفعول مستقيم پيش از متمم يا مفعول غيرمستقيم مي‌آيد. «پديده» مفعول غيرمستقيم را پيش از مفعول مستقيم آورده است. با اين همه، ماشين در ترجمة جملة امري ساده‌اي مثل: «Give me the book» با مشكل چنداني مواجه نبوده و آن‌را به صورت «به من كتاب را بدهيد» ترجمه مي‌كند، هرچند در اين مورد هم بايد جاي «كتاب را» و «به من» عوض شود.

گروه 14. Nor در آغاز جملات، علامت تخفيف: احتمالاً به اين برنامه، اطلاعات دستوري مناسب دربارة «nor» داده نشده است. ضمناً بايد كلمات را به صورت كامل تايپ كرد و از تخفيف[10] پرهيز نمود.

31. I don’t like him, nor do I know him.

من تي ـ را مي‌پوشانم به او علاقه داشته باشد، همچنين من او را حتماً بشناسم.

«پديده» «don’t» را دو واژه به شمار مي‌آورد؛ «don» را فعل و «t» را مفعول مي‌داند و از اين‌رو در ترجمه‌اش عبارت «تي ـ را» مشاهده مي‌شود. ضمناً نتوانسته درك كند كه علت وارونه‌شدن توالي فاعل و فعل كمكي در «do I» تأكيد نيست، بلكه به خاطر وجود «nor» است. براي جملة 31 ترجمة زير پيشنهاد مي‌شود:

نه از او خوشم مي‌آيد و نه او را مي‌شناسم.

گروه 15. حروف تعريف معين و نامعين: يكي از كاربردهاي حرف تعريف نامعين (a يا an) عام[11]‌بودن آن‌ است، يعني به تمامي اعضاي يك طبقه يا گروه دلالت مي‌كنند.

يك بچه بايد با ادب باشد.
32. A child should be polite.

مجبوربودن كهنه بزرگ است.
33. The old should be honored.


جملة 32 دستوري است، اما كاربرد «يك» در آغاز جمله، غيرعادي است؛ يعني ماشين ترجمه اين نكته را ناديده گرفته كه «a child» يعني «تمام بچه‌ها» و نه «يك بچه». در جملة 33 نيز مي‌بينيم كه ترجمه ارائه‌شده كاملاً اشتباه، غيردستوري و بي‌معنا است. شايد عامل اين خطا، نبود اسم پس از صفت «old» باشد. درحقيقت «the old» يعني «the old people»، ولي ماشين نتوانسته اين قسمت حذف شده را ترميم كند.

گروه 16. نقل‌قول غيرمستقيم: جملة 35 در انگليسي نقل‌قول غيرمستقيم اخباري ناميده مي‌شود. ترجمة ارائه‌شده توسط «پديده» براي اين جمله، غيردستوري و بي‌معنا است.

32. He said that he had gone to the cinema the day before.

او گفت او به سينما روز رفته بود قبلاً.

به نظر مي‌رسد عامل اصلي بروز چنين مشكلي وجود عبارت «the day before» باشد. مي‌دانيم كه در تبديل جملة خبري از مستقيم به غيرمستقيم واژة «yesterday» به «the day before» تبديل مي‌شود، ولي «پديده» نتوانسته بين اين دو ساختار متفاوت، رابطه‌اي برقرار كند و درنتيجه ترجمة نادرستي را توليد كرده است.

گروه 17. جملات شرطي بدون if : مي‌دانيم كه در جملات شرطي انگليسي مي‌توان if را حذف كرد. در اين حالت جاي فعل كمكي و فاعل عوض مي‌شود. مثلاً
«if I were you» به «were I you» تبديل مي‌شود و...

من ثروتمند بودم، من يك ماشين مي‌خرم.
36. Were I rich, I would buy a car.


ترجمة «پديده» براي جملة فوق، غيردستوري و بي‌معنا است. به نظر مي‌رسد عامل بخشي از اين اشكال، حذف if و جابه‌جايي فاعل (I) و فعل كمكي (were) باشد. ضمناً پديده «would buy» را «مي‌خرم» ترجمه كرده كه نادرست است. درواقع جملة فوق جملة شرطي نوع دوم است و دربارة چيزي خلاف واقعيت صحبت مي‌كند. مثلاً در جملة فوق، فرد ثروتمند نيست و بنابراين نمي‌تواند ماشين بخرد. براي جملة 36 ترجمة زير پيشنهاد مي‌گردد: اگر ثروتمند بودم ماشين مي‌خريدم.

گروه 18. مالكيت: همان‌گونه كه در گروه 14 و مثال 31 مشاهده گرديد، «پديده» don’t را دو واژه فرض كرد و بنابراين آن را به صورت فعل «don» و مفعول مستقيم «t» درنظر گرفت. در جملة 37 نيز پديده چنين اشتباهي را تكرار كرده است.

من به علي رفتم؟
37. I went to Ali’s.


مشاهده مي‌شود كه «پديده» نتوانسته بين «Ali’s» و «Ali’s house» رابطه‌اي برقرار كند و بنابراين «to Ali» را عبارت «حرف اضافه‌اي» فرض كرده و نتوانسته هويت «s» را مشخص سازد. براي جملة 37 معادل زير پيشنهاد مي‌گردد: من به خانة علي رفتم.

مشكلات ماشين ترجمة «پديده»
از جمله مهم‌ترين دلايل بروز مشكلات ذكرشده براي «پديده»، مي‌توان به موارد زير اشاره كرد:

1. اين ماشين ترجمه نسبت به مخاطبان حساس نيست. گاهي مخاطبان يك متن را افراد عادي تشكيل مي‌دهند و گاه افرادي متخصص و حرفه‌اي. پديده براي هر دو گروه به يك شكل ترجمه مي‌كند؛

2. «پديده» در ترجمة متون تخصصي و محدود كه موضوع و سبك خاصي را داشته باشند، موفق است، ولي در ترجمة متون عام‌تر دچار مشكل مي‌باشد؛

3. با گذشت زمان معناي واژه‌ها تغيير مي‌كند. به همين خاطر اصلاح مداوم برنامه و واژگان ماشين ترجمه ضروري است كه البته نيازمند صرف هزينه‌هاي بسيار مي‌باشد؛

4. ماشين ترجمة «پديده»، سخنگوي بومي يك زبان خاص نيست، از اين‌رو در برخورد با موقعيت‌هاي جديد موفق نيست؛

5 . تقسيم‌بندي و تحول واژه‌ها در زبان‌هاي مختلف يكسان نيست. مثلاً ممكن است دو مفهوم در يك زبان با يك واژه بيان شوند و در زبان ديگر با دو واژه. مثلاً واژة bank در زبان فارسي به معناي «حاشية رودخانه» و «يك مركز مالي» است، ولي در انگليسي هر دو مفهوم توسط bank نشان داده مي‌شود. يا در فارسي «ماهي» هم به معناي «موجودي زنده در آب» است و هم «نام يك غذا، مثل ماهي با پلو» و... ولي اين دو مفهوم در اسپانيايي با دو واژة pez (ماهي زنده) و pescado (خوراك ماهي) نشان داده مي‌شود.

ماشين ترجمة «پديده» در تفكيك و تشخيص معاني مختلف يك واژه، بويژه واژه‌هاي هم‌آوا ـ هم‌نگاشت[12] مشكل دارد.

سه اشكال عمده كه اكثر ماشين‌هاي ترجمه از جمله «پديده» با آن مواجه‌اند عبارت‌اند از:

الف) ناتواني اين‌گونه ماشين‌ها در تميز بين كاربردهاي عام و تخصصي يك واژه. مثلاً bus در متون عام به معناي «اتوبوس» است، ولي در متون تخصصي مربوط به رايانه، به «بخشي از رايانه» اشاره دارد.

ب) ناتواني در تميز بين كاربردها و مفاهيم مختلف واژه‌هاي عام. مثلاً جملة «The pen is in the box» و «The box is in the pen» را درنظر بگيريد. Pen در جملة اول هم به معناي «وسيله‌اي براي نوشتن» (قلم داخل جعبه است) و هم به معناي «تخت بازي بچه كه دور آن حصار چوبي يا ... نيز كشيده مي‌شود» (تخت بچه در جعبه است/ داخل بسته‌بندي مي‌باشد). اما در جملة دوم يكي از اين دو معنا نامربوط است. يعني نمي‌توانيم بگوييم «جعبه در خودكار است»، بلكه فقط مي‌توانيم بگوييم «جعبه روي تخت بچه است». ماشين ترجمه تنها در صورتي مي‌تواند چنين جملاتي را درست ترجمه كندكه از اندازة نسبي اشيا نيز باخبر باشد.

ج) حساس‌نبودن به بافت و مخاطب.

اما ريشة اين‌گونه مشكلات در چيست؟ آيا به تئوري زباني اشكالي وارد است؟

تئوري زباني
تئوري زباني غالب، بر روابط دستوري در جمله و نحو تأكيد مي‌كند. حتي در دستور جهاني، «چامسكي» نحو را خودكفا و مستقل از معنا مي‌داند و بحث دربارة معنا را در حاشيه قرار مي‌دهد. به نظر مي‌رسد اين نوع تئوري مبتني بر نحو، عامل بخشي از مشكلات ماشين‌هاي ترجمه باشد.

تئوري زباني به بافت توجهي نمي‌كند و جملة منفرد را كه توسط گوينده در محيط زبان آرماني توليد مي‌گردد و توسط شنونده درك مي‌شود مبناي مطالعه قرار مي‌دهد. بايد اذعان كرد كه دستور و نحو به تنهايي نمي‌توانند رايانه را به توليد ترجمه‌اي چون انسان مترجم وادارند. درواقع، به برنامه‌اي نياز است كه همزمان به نحو و معنا بپردازد. ماشين ترجمه بايد نسبت به معنا حساس باشد.

اما چگونه مي‌توان در ماشين ترجمه، نسبت به معنا حساسيت ايجاد كرد؟ براي انجام اين كار لازم است در تئوري‌هاي زباني موجود و برنامة تعريف‌شده براي ماشين‌‌هاي ترجمه، قدرت تعقل و تفكر را وارد كنيم. قدرت انتخاب و تعقل همان موهبتي است كه انسان از آن برخوردار است. رايانه در انتخاب كاري كه انجام مي‌دهد آزاد نيست. اين برنامه است كه به ماشين مي‌گويد چه كاري را انجام دهد و چه كاري را انجام ندهد. مهم‌تر از همه آ‌ن‌كه ماشين از درك كاري كه انجام مي‌دهد عاجز است. ويژگي مهم ديگر تعقل و تفكر آن است كه همزمان مي‌تواند در بيش از يك حوزه كار كند و فرد داراي قدرت تعقل بر اين نكته واقف است كه در مورد يك پديده يا واقعيت، بيش از يك تفسير ممكن است وجود داشته باشد.

نتيجه‌گيري
تعقل و تفكر اساس كار زبان انسان را تشكيل مي‌دهد و ماشين فاقد آن است.

ريشة مشكلات امروزي ماشين‌هاي ترجمه را بايد در سه چيز جستجو كرد:

1. برنامه‌هاي نادرست كه به ماشين داده مي‌شود و بيشتر آن‌ها ناشي از كم‌اطلاعي يا بي‌اطلاعي برنامه‌نويسان مي‌باشد. ضمناً ضروري است براي داشتن برنامه‌هاي مناسب، در گروه برنامه‌نويسان، زبانشناسي مجرب نيز گنجانده شود تا با تحليل ساختارهاي مختلف زبان، الگوهاي مناسب را براي تهية برنامه در اختيار برنامه‌نويسان قرار دهد.

2. با ضعف موجود در تئوري زباني، طبيعي است كه نمي‌توان زبان را جداي از معنا بررسي كرد. حتي وقتي دربارة آواهاي زباني صحبت مي‌كنيم، به معنا نيازمنديم (مثلاً جفت‌هاي كمينه را براي تعيين واج‌هاي زبان به‌كار مي‌بريم). بنابراين چنانچه تئوري زباني به گونه‌اي اصلاح گردد كه معنا را نيز لحاظ كند مي‌توان بخش ديگري از مشكلات ماشين‌هاي ترجمه را حل كرد. البته انجام چنين كاري بسيار دشوار، اما شدني است.

3. اگر بتوانيم به شكلي فقدان چنين قدرتي را ـ يعني همان نعمتي را كه خدا به ما عطا كرده ـ در اختيار ماشين قرار دهيم، (كه البته دستيابي به اين هدف بسيار بعيد به نظر مي‌رسد) مشكلات ماشين‌هاي ترجمه را مي‌توان رفع نمود. بنابراين بايد انتظار داشته باشيم كه با توجه به دانش كنوني بشر، حتي در صورتي كه مشكلات دستة اول و دوم رفع گردند، مشكلات دستة سوم به قوت خود باقي بمانند.

سؤالي كه در اينجا مي‌توان مطرح كرد آن است كه اگر به فرض بتوانيم چنين قدرتي را به ماشين بدهيم آيا خواهيم توانست هروقت كه بخواهيم آن را از ماشين بازپس بگيريم؟ يا از ماشين بخواهيم كه برخلاف ميل و ارادة خود (كه به خاطر داشتن قدرت تعقل، پيدا نموده) هر كاري را كه ما بخواهيم، به انجام برساند؟ چنين وضعيتي را «رابينسون» (Robinson, Douglas, 1992) به خوبي به تصوير كشيده است. او مي‌نويسد: اگر ماشين ترجمه بتواند مثل انسان ترجمه كند و از قدرت تعقل و تفكر برخوردار باشد، آيا ترجيح نخواهد داد صبح كه از خواب برمي‌خيزد، به جاي ترجمة متن تجاري يا ... پاي تلويزيون بنشيند و فيلم چارلي را تماشا كند؟!».

منابع 


Borr, B. J. (1993). Machine Translation: a View from the Lexicon. Cambridge, Mass: MIT Press.

Dorr, B. J. (1994). "Machine Translation Divergences: A Formal Descriptipn and Proposed Solution". Computational Linguistics 20 (4). PP 597-634.

Dreyfus, Hubert L. (1992). What Computers Still Can’t Do. Cambridge, MA: MIT Press.

Gerber, Laurie. Working toward Success in Machine Translation. http://www.elsnet.org/mt2010/gerber.pdf.

Hovy, E. H. and Nirenburg (1992). "Approximating an Interlingua in a principle Way". Proceedings of the DARPA Speech and Natural Language Workshop. Arden House , NY.

Huchins, W.J. (1986). Machine Translation: past, Present, Future. Chichester: Ellis Horwood Publishing.

Kay, Martin. Machine Translation

http://www.isadc.org/kay.html.

Melby, Alan and C. Terry warner (1995). The possibility of Language: a discussion of the Nature of Language, with Implications for Human and Machine Translation. (in Press) Ams

Comments (4) Posted to ترجمه ماشینی 05/01/2011 Edit

نمونه سوالات امتحانی درس اصول طراحی کامپایلر

 

 

نمونه سوالات امتحانی درس اصول طراحی کامپایلر از دانشگاه های مختلف گرد آوری شده توسط جناب آقای نام آور در فایل ضمیمه موجود می باشد.

دانشجویان عزیز می توانید فایل مربوطه را دانلود نمایید.

نمونه سوالات امتحانی درس اصول طراحی کامپایلر

پیروز باشید و سربلند

Comments (9) Posted to حل تمرین درس کامپایلر 04/29/2011 Edit

Ontology Evaluation یا ارزیابی آنتولوژی ها بخش سوم

 

 


نکته ای که در اینجا نیاز به توضیح دارد آن است که ممکن است این سوال پیش آید که اگر در یک زمینه، آنتولوژی مناسب و استانداردی وجود داشته باشد که دیگر نیاز به ایجاد آنتولوژی در آن حوزه نمی باشد، در نتیجه موضوع مقایسه یک آنتولوژی با یک آنتولوژی مرجع، به چه معناست و آیا اصلا مضوعیت دارد یا خیر.
در جواب باید اشاره کرد که گاهی اوقات، بحث ارزیابی یک آنتولوژی خودش یک بحث جنبی است و بعنوان یک ابزار برای ارزیابی موضوع دیگری مورد استفاده قرار می گیرد و در اینصورت اشکال فوق مطرح نمی باشد.
بعنوان مثال، در زمینه تولید آنتولوژی به روش خودکار، کارهایی در زمینه ontology learning انجام شده است و این موضوع نیز هنوز بعنوان یک موضوع مستعد برای کار و تحقیق، جای فعالیت دارد. فرض کنیم الگوریتمی برای تولید خودکار آنتولوژی با استفاده از یکسری متون تخصصی، ارائه شده است. برای اینکه بتوانیم این الگوریتم را ارزیابی کنیم. یک راه این است که آنتولوژی تولید شده توسط آن الگوریتم را ارزیابی کنیم. در چنین حالتی ممکن است حوزه X که یک آنتولوژی مرجع برای آن وجود دارد را انتخاب کنیم و الگوریتم خود را در آن حوزه اجرا کنیم و بخواهیم از یکسری متون تحصصی، آنتولوژی آن حوزه را استخراج نماید. سپس برای ارزیابی کیفیت الگوریتم خود، آنتولوژی تولید شده را با آنتولوژی مرجع، مقایسه می نماییم. طبیعتا در اینجا اشکال فوق وارد نیست. یعنی علیرغم اینکه در حوزه X آنتولوژی مناسب و حتی استانداردی وجود دارد، بحث ما نیز منطقی خواهد بود. بدین ترتیب با استفاده از آن آنتولوژی مرجع، در واقع به ارزیابی الگوریتم ontology learning خود پرداخته ایم.


2. روش مبتنی بر application
در این روش، آنتولوژی ای که می خواهیم ان را ارزیابی نماییم، را در یک برنامه کاربردی مورد استفاده قرار می دهیم و سپس بر اساس میزان تاثیر مثبتی که استفاده از آن آنتولوژی در برنامه کاربردی مذکور دارد، به سنجش کیفیت آنتولوژی مورد نظر می پردازیم.
مشکلاتی که در این روش مطرح هستند از این قرار می باشند: اولا باید ابتدا یک برنامه کاربردی مناسب برای حوزه مربوط به آن آنتولوژی، در دسترس باشد و بتوانیم آن برنامه کاربردی را برای استفاده از آن آنتولوژی، customize کنیم و آنتولوژی را با آن integrate نماییم. این موارد کارهای ساده ای نیستند و همیشه امکان چنین کاری وجود ندارد.

از طرف دیگر، اینکه کارایی برنامه کاربردی را به چه میزان و بر اساس چه قاعده ای به کارایی آنتولوژی مورد استفاده مرتبط نماییم، خودش جای بحث دارد. یعنی بالفرض که یک آنتولوژی را در یک برنامه کاربردی بکار بردیم و کارآیی آن را اندازه گرفتیم، حال آیا نباید فاکتورهای دیگری را نیز در این افزایش یا کاهش کارایی دخیل بدانیم؟ آیا می توانیم تمام این تغییر کارایی را به آنتولوژی مورد استفاده مربوط بدانیم؟ برنامه کاربردی باید چه ویژگی هایی داشته باشد تا کیفیت آنتولوژی را بخوبی منعکس نماید؟
همچنین اینکه بخواهیم یک آنتولوژی را قبل از ارزیابی، در یک برنامه کاربردی بطور کامل مورد استفاده قرار دهیم و آن برنامه کاربردی را هم به مدت کافی مورد تست و ارزیابی قرار دهیم تا بتوانیم کارایی آن را بسنجیم، ممکن است هزینه این تصمیمات زیاد باشد. همچنین اگر بخواهیم چند آنتولوژی را با هم مقایسه نماییم باید همه انها را در آن برنامه کاربردی مورد استفاده قرار دهیم، که این امر هزینه ها را بشدت افزایش می دهد.

3. روشهای چند معیاره
در این روشها، ابتدا معیارهایی تعریف می شود و پس از توجیه این معیارها و بیان نقش و اهمیت این معیارها، با استفاده از آنها، به ارزیابی آنتولوژی مورد نظر پرداخته می شود. یعنی کمیت هر یک از آن معیارها را برای آنتولوژی مورد نظر حساب می نماییم و سپس بر اساس یک فرمول از پیش طراحی شده، با یکپارچه کردن این کمیت ها، یک کمیت نهایی که مبین میزان کیفیت آنتولوژی می باشد بدست می آوریم. در کارهای مختلفی که با استفاده از این روش انجام شده است، معیارهای مختلفی ارائه شده است. در برخی موارد، تعداد این معیارها در حد 10-12 معیار می باشد و در برخی کارها نیز تعداد معیارها بسیار زیاد است و مثلا در حد 120 معیار می باشد.

4. روش مبتنی بر افراد خبره
در این روش که در واقع بیش از آنکه بحث فنی داشته باد، مباحث فلسفی و انسانی در آن مطرح است، یک فرد خبره که در حوزه مذکور بعنوان یک فرد متخصص شناخته می شود، آنتولوژی را بصورت دستی و با روشهای نظری و بطور غیرخودکار مورد ارزیابی و سنجش قرار می دهد.

5. روش مبتنی بر علایم مشکلات
در این روش، بررسی می کنیم که آیا یکسری مشکلات رایج و متداول که در توسعه آنتولوژی ها پیش می آید، در آنتولوژی مورد نظر وجود دارد یا نه. بدین ترتیب هر چه آن آنتولوژی تعداد کمتری از آن علایم را داشته باشد، بهتر است. بعنوان مثال، بررسی تناقضات منطقی در آنتولوژی یکی از این موارد است که با استفاده از موتورهای استنتاج موجود می توانیم این کار را انجام دهیم.

در این قسمت هم به تشریح مقاله ای با عنوان: "Metrics for Ranking Ontologies"  که در EON2006 ارائه شده است می پردازیم.


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

در نتیجه مشابه همان موضوعی که در مورد توسعه سیستم های نرم افزاری مطرح است، یعنی بحث استفاده مجدد، در اینجا هم مطرح است و استفاده مجدد از آنتولوژی های موجود، مطلوب است.
تمایل به سمت به اشتراک گذاری و استفاده مجدد از آنتولوژی های موجود، موجب شده است که مراجعی برای این کار بوجود آیند. بعنوان مثال،

دو نمونه خوب از این مراجع عبارتند از:
•    مخازن آنتولوژی (ontology repositories) نظیر protege ontologies
•    موتورهای جستجوی آنتولوژی نظیر  SWOOGLE و OntoSearch

در این مقاله، موتورهای جستجوی آنتولوژی، و بطور خاص، SWOOGLE مورد نظر بوده است. این موتورجستجو واسطی را فراهم می کند که از طریق آن می توان آنتولوژی های موجود در مخزن آن را بر حسب کلمه کلیدی مورد جستجو قرار دارد. اما مساله اصلی که در واقع این مقاله بر روی آن تمرکز کرده و سعی در بهبود آن دارد، آن است که SWOOGLE عمل جستجو را فقط بر حسب کلمه کلیدی کاربر انجام می دهد و نه بر حسب معیارهای معنایی. در واقع می توان اینگونه بیان کرد که SWOOGLE مانند Google، دارای یک crawler است که بر روی web به جستجوی آنتولوژی ها می پردازد و آنها را index می کند.

سپس به هر یک از این آنتولوژی ها یک rank می دهد. همانند کاری که google با استفاده از الگوریتم pageRank خود انجام می دهد. سپس وقتی کاربر کلمه کلیدی را در SWOOGLE جستجو می کند، این موتور جستجو، در بین آنتولوژی های index شده، جستجو کرده و آنهایی را که شامل کلمه کلیدی کاربر می باشند بعنوان نتایج جستجو باز می گرداند. نکته مهم آن است که این نتایج، بر حسب رتبه آنتولوژی ها که از قبل تعیین شده و بطور مشخص به کلمه کلیدی کاربروابسته نیست، مرتب می شوند. بعنوان مثال، فرض کنیم کاربر کلمه کلیدی Student را جستجو می کند و دو آنتولوژی O1 و O2 هر دو این کلمه را در خود دارند (مثلا بعنوان نام یک کلاس).

اما بسته به اینکه رتبه این آنتولوژی ها چه باشد، ترتیب آنها در لیست نتایج مشخص می شود. SWOOGLE برای رتبه بندی آنتولوژی ها از الگوریتمی شبیه PageRank استفاده می کند و آنتولوژی هایی را که در آنتولوژی های بیشتری import شده باشند را در اولویت قرار می دهد. در نتیجه اگر آنتولوژی O2 نسبت به O1، در آنتولوژی های بیشتری import شده باشد، O2 در لیست نتایج در اولویت قرار می گیرد. در حالیکه این ترتیب لزوما مناسب نیست و ترتیب نتایج باید بر حسب میزان نزدیکی معنایی آنتولوژی ها با کلمه کلیدی کاربر تعیین شود. یعنی آنتولوژی ای در اولویت قرار گیرد که از نظر معنایی به کلمه یا کلمات کلیدی کاربر نزدیک تر باشد. بدین ترتیب، مشکل اصلی آن است که جستجو SWOOGLE در واقع یک جستجوی keyword-based و بدون توجه به معنا، می باشد.

در این مقاله سعی در حل این مشکل دارند. بدین منظور، یک چارچوب با عنوان AKTiveRank معرفی شده است که ایده اصلی در طراحی آن این است که یک موتور جستجو، باید آنتولوژی ها را بر حسب نزدیکی ساختاری و معنایی آنها با کلمه کلیدی کاربر، رتبه بندی نماید.
روال کار این چارچوب بدین ترتیب است که کاربر با استفاده از واسطی که AKTiveRank فراهم می کند کلمه کلیدی خود (مثلا نام کلاسهایی که می خواهد آنتولوژی های جواب، آن کلاسها را داشته باشند، را وارد کرده و به جستجو می پردازد. سپس AKTiveRank این کلمات کلیدی را برای SWOOGLE ارسال کرده و در واقع به جستجوی این کلمات در موتور جستجوی SWOOGLE می پردازد.

AKTiveRank، پس از دریافت نتایج SWOOGLE آنتولوژی های بازیابی شده را دانلود می کند و به ارزیابی و رتبه بندی آنها می پردازد. سپس آنتولوژی های جواب را بر حسب رتبه بندی خود، به کاربر ارائه می کند. در واقع AKTiveRank در پشت صحنه، از SWOOGLE استفاده می کند و در واقع SWOOGLE عمل جستجو را انجام می دهد و AKTiveRank عمل رتبه بندی و ارائه نتایج نهایی به کاربر را بر عهده دارد.
  AKTiveRank برای رتبه بندی آنتولوژی های نتایج، از 4 معیار استفاده می کند و برای هر یک از آنتولوژی ها، مقدار این 4 معیار را محاسبه کرده و سپس با ترکیب این 4 مقدار، یک مقدار نهایی برای هر آنتولوژی بدست می آورد و سپس آنتولوژی ها را بر حسب این مقدار نهایی، رتبه بندی می نماید.
 این 4 معیار عبارتند از:
 
1. معیار CMM: Class Match Measure
مفهوم این معیار آن است که در آنتولوژی مورد ارزیابی، چه تعداد از کلمات کلیدی کاربر بعنوان نام کلاسها، استفاده شده اند. فرض کنید کاربر 4 کلمه کلیدی را وارد کرده است و در آنتولوژی O1، 4 کلاس وجود دارد که نام هر یک از آنها با یکی از این کلمات کلیدی برابر است. و همچنین در آنتولوژیO2، 2 کلاس وجود دارد که نام آنها با دو تا از کلمات کلیدی کاربر مطابقت دارد و یک کلاس وجود دارد که نام آن با یکی از کلمات کلیدی کاربر مطابقت تقریبی دارد (partial match). در نتیجه مقدار معیار CMM برای آنتولوژی O1 از آنتولوژی O2 بیشتر است. بدین ترتیب هرچه مقدار معیار CMM برای یک آنتولوژی بیشتر باشد این بدان معناست که آن آنتولوژی به میزان بیشتری مفاهیم مربوط به کلمات کلیدی مورد نظر کاربر را پوشش می دهد و آن کلمات کلیدی در آن آنتولوژی از جایگاه مهمی برخوردار می باشند.

2. معیار DEM: Density Measure
این معیار مشخص کننده آن است که آنتولوژی مورد ارزیابی، کلمات کلیدی مورد نظر کاربر را تا چه حد و تا چه عمقی مورد پوشش قرار می دهد و به چه میزان جزئیات آن مفهوم و آن کلمه کلیدی را در بر می گیرد. هر چه مقدار این معیار برای یک آنتولوژی بیشتر باشد این بدان معناست که آن آنتولوژی، کلمه کلیدی مورد نظر را  با جزئیات بیشتری مورد تعریف و پوشش قرار میدهد. بعنوان مثال، فرض کنیم کلمه کلیدی مورد جستجوی کاربر، در دو آنتولوژی O1 و O2 بعنوان نام یک کلاس استفاده شده است. اما کلاس مذکور در آنتولوژی O1 دارای 10 خصیصه و 5 زیرکلاس می باشد اما کلاس مورد نظر در آنتولوژی O2 دارای 4 خصیصه و 2 زیرکلاس می باشد. در اینصورت می توان نتیجه گرفت که آنتولوژی O1 مفهوم مورد نظر کاربر (کلمه کلیدی کاربر) را به شکل دقیقتر و کاملتری بیان و توصیف می نماید. برای محاسبه مقدار DEM، تعداد زیرکلاسها، superclass ها، روابط و sibling ها مورد توجه بوده است.

3. معیار  SSM: Semantic Similarity Measure
این معیار مشخص می کند که کلاسهای موجود در آنتولوژی، که نامشان با کلمات کلیدی کاربر مطابقت دارد (مطابقت جزئی یا کامل) تا چه حد به هم نزدیکی معنایی دارند. هر چه آن کلاسها، با هم، رابطه و نزدیکی معنایی بیشتری داشت باشند این بدان معناست که مفاهیم مستتر در کلمات کلیدی مذکور به شکل کاملتری (بهمراه مفاهیم نزدیک و مرتبط بیشتری) بیان شده اند. برای اندازه گیری میزان نزدیکی این کلاسها با هم، از معیار نزدیکترین مسیر استفاده شده است. ایده اصلی آن است که هر چه دو مفهوم A و B از نظر معنایی ارتباط بیشتری با هم داشته باشند، کلاسهای معادل این دو مفهوم در آنتولوژی نیز به هم نزدیکتر می باشند. در نتیجه هر چه فاصله این دو کلاس در یک آنتولوژی بیشتر باشد، ارتباط این دو مفهوم در آن آنتولوژی به شکل ضعیفتری توصیف شده است. هر چه تعداد لینکهایی که برای برقراری اتصال بین دو مفهوم در آنتولوژی، کمتر باشد یعنی آن دو مفهوم فاصله معنایی کمتری با یکدیگر دارند و به هم نزدیکتر می باشند  و در نتیجه مقدار معیار SMM بیشتر می گردد.

4. معیار BEM: Betweenness Measure
ایده اصلی این معیار آن است که اگر کوتاهترین مسیر بین هر دو زوج مفهوم موجود در آنتولوژی را مشخص نماییم، آنگاه اگر برای یک مفهوم، تعداد کوتاهترین مسیرهایی که از این دو مفهوم می گذرند را محاسبه نماییم، هر چه این مقدار بزرگتر باشد، این بدان معناست که آن مفهوم، در آن آنتولوژی، نقش مهمتر و کلیدی تری داشته است و از محوریت و مرکزیت بیشتری برخوردار است.  بعنوان مثال فرض کنید برای تمام زوج مفاهیم موجود در آنتولوژی، کوتاهتری مسیر بین آن دو مفهوم را پیدا کرده ایم و در مورد مفهوم X مشاهده کرده ایم که 10 تا از کوتاهترین مسیرها از X می گذرند و برای مفهوم Y مشاهده کرده ایم که تنها 5 تا از کوتاهترین مسیرها از Y می گذرند. نتیجه می گیریم که نقش مفهوم X در آن انتولوژی از نقش مفهوم Y مهمتر می باشد.
در پاراگراف بالا مفهوم BEM را توضیح دادیم. اما اینکه چگونه از این معیار برای ارزیابی آنتولوژی ها استفاده می شود بدین ترتب است که: هرچه کلمات کلیدی مورد نظر کاربر، در یک آنتولوژی از جایگاه مهمتر و مرکزی تری برخوردار باشند، آن آنتولوژی، به مفاهیم مورد نظر کاربر توجه بیشتری داشته است و مبه آن مفاهیم نزدیکتر می باشد. در نتیجه آن آنتولوژی از کیفیت و اولویت بیشتری برخوردار است.
همانطور که پیشتر گفته شد، پس از محاسبه مقدار این 4 کمیت برای هر آنتولوژی، یک مقدار نهایی برای آن آنتولوژی محاسبه می شود (ترکیب وزندار 4 کمیت مذکور) که میزان ارزش و قرابت معنایی آن آنتولوژی با کلماتن کلیدی مود نظر کاربر را مشخص می کند. سپس بر اساس این مقادیر نهایی، آنتولوژی ها رتبه بندی می شوند.
 
نتیجه گیری
نویسندگان مقاله، با پیاده سازی یک نسخه اولیه از این چارچوب به ارزیای عملی آن پرداخته اند. بدین ترتیب که تعدادی کلمه کلیدی را در SWOOGLE جستجو کرده و نتایج را ذخیره کرده اند. سپس همان کلمات کلیدی را در چارچوب خود جستجو کرده و نتایج را ذخیره کرده اند. سپس از تعدادی کاربر خواسته اند تا  با توجه به کلمات کلیدی مذکور، آنتولوژی بازگردانده شده از  SWOOGLE را رتبه بندی نمایند. سپس نتایجرتبه بندی کاربران با نتیجه رتبه بندی AKTiveRank مقایسه شده است. نویسندگان مقاله ضمن اینکه اذعان می کنند که این روش ارزیابی چندان قبل دفاع نیست و آنها فقط از 4 نفر کاربر برای انجام آزمایشات خود استفاده کرده اند، اما گفته اند که نتایج آزمایشات مناسب و امیدوارکننده بوده است. اگر چه در آینده باید آزمایشها و ارزیابی های بهتری انجام دهند.
 
 در واقع پیاده سازی ساختار کلی چارچوب پیشنهادی کار چندان سخت و زمانبری نیست و می توان ا پیاده سازی آن، به مرور با تعریف و افزودن معیارهای جدید، سیستم را بهبود داد.
از نظر ضرورت کار هم به نظرم خیلی کار جدی و لازمی می باشد. چرا که اگر دقت کنیم می بینیم که در واقع مشکل اصلی موتورهای جستجوی keyword-based معمولی (نظیر Google) این است که semantic-enabled نیستند و نتایجی که می آورند بعضا، از نظر مفهومی مطابقتی با مفهوم مورد نظر کاربر نداشته است و صرفا از نظر کلامی و syntax مشابهت داشته است.

خوب این یک مشکل است که همه هم به آن واقف اند و البته طبیعی هم هست چرا که Google یک موتور جستجو برای Web می باشد و از آنجا که در Web فعلی، semantic اسناد بیان نشده است طبیعی است که موتورهای جستجو چنین مشکلی داشته باشند و برای مقابله با این مشکل، خودشان باید semantic منابع موجود در وب را استخراج و اکتشاف کنند که کار سختی است.
اما نکته ای که در برخورد با SWOOGLE به نظر می رسد این است که  علیرغم اینکه SWOOGLE دارد با مستندات آنتولوژی کار می کند و این مستندات به اندازه کافی semantic-rich هستند، باز هم این موتور جستجو، بر اساس روش قدیمی keyword-based معمولی بدون توجه به semantic، استفاده می کند. دراینجا دیگر، این ضعف قابل چشمپوشی نیست. چرا که در اینجا، منابع به اندازه کافی machine-understandable هستند و می توان به روش بهتری عمل کرد. صرف اینکه یک آنتولوژی در تعداد زیادی آنتولوژی import شده باشد، نمی تواند موجب شود که آن آنتولوژی در اولویت باشد.
چارچوب ارائه شده، مدل قابل توجهی است. فکر می کنم می توان با تعریف تعدادی معیار دیگر کارآیی آن را بهبود دارد.
 

 

 

 

Comments (1) Posted to ارزیابی آنتولوژی ها 04/25/2011 Edit

صورت پروژه درس اصول طراحی کامپایلر

 

  چهارشنبه ی این هفته 31 فروردین ماه

کلیه ی دانشجویان بایستی تکالیف خود را تحویل دهند.
 
تحویل پروژه درساعات 11 الی 12 و همچنین 13 الی 14 می باشد.
 
مکان تحویل تکالیف : سایت گروه کامپیوتر
 
 
 
 

 طراحی Lexical Analyzer و Parser

1.  تحیقق در مورد نحوه ی عملکرد اسکنر و پارسر 

2. نحوه ی کار با LEX

3. نحوه ی کار با YACC

 صورت پروژه:

- گرامری را به عنوان گرامر یک زبان فرضی در نظر می گیریم .

. برای هر توکن ، یک کد انتخاب نمایید.

 یک  Lexical Analyzer بنویسید که :

    - Commentها را حذف نماید.

    - بتواند بوسیله ی پارسر صدا زده شود و هر بار پس از شناسایی، یک جفت "token value" , "token type"  را برگرداند.

    - در صورت برخورد با خطا ، با صدا زدن یک روتین Error Handling مناسب، پیغام مناسب را چاپ نماید.

    - خطوط را برای چاپ پیغام مناسب، شماره گذاری نماید.

================================================================

 برنامه ی پارسر را بنویسید.

این برنامه با صدا زدن Lexical Analyzer و روتین های Error Handling ، ساختمان جملات را تشخیص داده و

در خروجی، درخت پارسر را ایجاد و چاپ نماید.

 

نکات مهم پروژه :

- تشخیص توکن ها به صورت یک جدول و در قالب یک فایل ذخیره گردد.

- Error Handler برای اسکنر و پارسر جدا طراحی گردیده و با رسیدن به هر خطا ، پیغام مناسب با خطای مورد نظر را چاپ نماید.

- مراحل تست برنامه به طور کامل و مستند باشد.

- گرامر C مورد نظر را میتوانید از لینک زیر دانلود نمایید. 

 

دانلود گرامر ساده زبان C

 

- مراحل طراحی اسکنر بدین صورت هست که شما بایدابتدا روی کاغذ توکن ها رو تبدیل به عبارت منظم کنید.

اون ها رو تبدیل به  NFA کنید و سپس اون ها رو تبدیل به  DFA کنید. و سپس از اون در طراحی اسکنرتون استفاده کنید. البته با توجه به وجود الگوریتم تبدیل عبارات منظم به  NFA بایستی همین روند رو کدنویسی کرده و برنامتون به طور خودکار این روند رو نیز انجام بده...

 

کلیه ی مراحل انجام پروژه بایستی مستندسازی شده و در قالب یک فایل  WORD یا بر روی کاغذ تحویل داده بشه... در ضمن کلیه ی فایل ها، نرم افزارها و هر اون چیزی رو که در طی انجام پروژه ازش استفاده می کنید به علاوه ی پروژه نهایی خوتون که بایستی همراه با نمونه های ورودی و خروجی برنامه تستش کنید رو باید در قالب یک سی دی به من تحویل بدید.

 

  چهارشنبه ی این هفته 31 فروردین ماه کلاس حل تمرین برگزار خواهد گردید.

کلیه ی دانشجویان بایستی پروژه های خود را تحویل دهند. 
 

موعد اول تحویل پروژه که اسکنر هستش: نیمه ی اردیبهشت ماه

موعد دوم تحویل پروژه که پارسر هستش: آخر ترم

پیروز باشید و سربلند

استیری

 

Comments (1) Posted to حل تمرین درس کامپایلر 04/20/2011 Edit

Ontology Evaluation یا ارزیابی آنتولوژی ها بخش دوم

 

 


برمیگردیم سراغ مبحث اصلی خودمان!
همان طور که گفتیم روش اول برای ارزیابی یک آنتولوژی، روش مقایسه ی آنتولوژی با آنتولوژی بود که به طور مفصل مورد بحث و بررسی قرار گرفت.

در حالت دوم که مدل مرجع مجموعه ای از مستندات رسمی و دقیق علمی می باشد، باز هم به مقایسه اجزای آنتولوژی با اجزای آن مجموعه مستندات می پردازیم و هرچه تشابه بیشتری بین انها وجود داشته باشد، کیفیت آنتولوژی بالاتر است چون دانش نمایش داده شده در آن آنتولوژی با دانش بیان شده در آن مجموعه مستندات تشابه بیشتری دارد. اما نکته مهم در اینجا آن است که برخلاف حالت قبل (مقایسه آنتولوژی با آنتولوژی)، در این حالت در مورد اجزای مورد مقایسه محدودیت داریم. روش ساده آن است که منطور از اجزا، را فقط اجزای متنی بدانیم یعنی فقط لغات، عبارات و کلمات کلیدی موجود در مستندات مرجع را با نام کلاسها، روابط، و خصیصه های آنتولوژی مقایسه نماییم. به بیان دیگر در این حالت به نوعی مقایسه ما صرفا یک مقایسه در سطح syntax است و نه یک مقایسه در سطح semantic. یعنی مثلا بررسی می کنیم که چنددرصد از کلمات کلیدی مستندات مرجع، در نام عناصر آنتولوژی استفاده شده است. اما نمی توانیم (یا خیلی سخت است که) بررسی کنیم چه میزان از ساختارها و روابط موجود در مستندات مرجع، در ساختار آنتولوژی ذخیره شده است.
دو معیار مهم که در اینجا مطرح می شوند و می توان از آنها برای کمی کردن کیفیت آنتولوژی استفاده کرد عبارتند از معیارهای precision و recall.
precision: نسبت تعداد مفاهیمی از آنتولوژی که در مرجع مورد استفاده نیز ذکر شده اند به تعداد کل مفاهیمی که در آنتولوژی موجود می باشند.
recall: نسبت تعداد مفاهیم و کلمات کلیدی موجود در مرجع مورد استفاده که در آنتولوژی هم موجود می باشند به تعداد کل مفاهیم موجود در مرجع مذکور.


در این قسمت برای روشن تر شدن مفاهیم precision و recall ، بخش دیگری را برایتان تشریح می نمایم که البته ممکن است با برخی از مفاهیم و مطالب گفته شده ی قبلی همپوشانی داشته باشد. ولی به هر حال خواندن آن لازم به نظر می رسد.
همان طور که گفتیم برای ارزیابی آنتولوژی روشهای متفاوتی وجود دارد كه ما در اینجا از معیار كاربرد آنتولوژی و روش مبتنی بر پردازش زبان طبیعی استفاده كرده ایم.
 هدف ما تعیین میزان كارایی آنتولوژی در كاربرد بازیابی صفحات متنی از وب و میزان صحت آنها میباشد. بنابراین ما از یک خزشگر تاكیدی استفاده كردیم كه وظیفه آن یافتن و جمع آوری صفحات وب بر اساس شبه آنتولوژی بدست آمده است. رفتار این خزشگر در حالت کلی مشابه خزشگر ها ی معمولی است با این تفاوت که پس از بررسی صفحات ، فقط در صورت مطلوب بودن آنها اقدام به ذخیره سازی و شاخص گذاری میکند و در غیر اینصورت از آنها و لینک هایشا ن صرفنظر میکند.

خزشگر تاکیدی با استفاده از یک فیلتر (میزان مطلوبیت صفحه که معمولا بر حسب شباهت محتوای صفحه به حوزه موردنظر محاسبه می شود) بعضی از مسیرها را هرس میکند. در روش ، ابتد ا میزان شبا هت هر صفحه جدید ر ا نسبت به شبه آنتولوژ ی تولید شده محاسبه می نماییم. ابتدا کلمات موجود در صفحه جدید را استخراج کرده و یک بردار برای آن میسازیم . آنگاه با استفاده از مدل فضای برداری شباهت صفحه جدید و شبه آنتولوژی را محاسبه می کنیم و در صورتی که از مقدار آستانه بیشتر باشد آن صفحه را ذخیره نموده و پس از استخراج لینک هایش عملیات را روی آن تکرار میکنیم. با توجه به اینکه در اینجا مساله نگهداری یا حذف صفحات جدید یک مساله دوحالته است، برای تسهیل عملیات از برای بازیابی استفاده کرده ایم. در واقع نسبت ترم های مدل بولی مشترک بین شبه آنتولوژی و صفحات جدید به کل ترم های موجود در شبه آنتولوژی را به عنوان معیار رد یا قبول صفحات به کار گرفته ایم.

اما این معیار به تنهایی منجر به بروز یک مشکل مهم میشود. هنگامیكه به یک صفحه بسیار بزرگ (مثلا یک وبلاگ) برخورد می کنیم ، اگر بخش کوچکی از آن به علوم کامپیوتر اختصاص داده شده باشد، با توجه به این نکته که میزان اشتراک کلمات صفحه و آنتولوژی به کل کلمات آنتولوژی مقدار قابل توجهی است، این صفحه به عنوان یک صفحه مرتبط شناخته خواهد شد در حالی که چنین نیست . برای رفع این معضل ، راه حل پیشنهادی ما در نظرگرفتن دو حد آستانه است:

1.    حد آستانه دقت كه به صورت نسبت اشتراک کلمات شبه آنتولوژی و صفحه به اندازه شبه آنتولوژی تعریف می شود. لذا فقط صفحاتی از این فیلتر رد خو اهند شد که حداقلی از ترم های حوزه علوم کامپیوتر (اینجا ۲۰ کلمه)  را در خود داشته باشند.

2.     حد آستانه یاد آوری  كه عبارتست از نسبت اند ازه مجموعه اشتراک صفحه و شبه آنتولوژی به اندازه صفحه . این معیار باعث حذف صفحاتی می شود كه فقط درصد کمی از حجم خود را به حوزه مورد نظر اختصاص داده اند.

از نکات مهم در مبحث خزش تاکیدی اولویت دهی به لینک های خروجی است و روش های متعددی برای آن وجود د ارد . روش ما به این صورت است كه در صورت برخورد با یک لینك نامربوط (که براسا س محتوا مشخص می شود) از پردازش لینک های خروجی آن خودداری میکنیم. اما برای دو نوع صفحه دیگر (مربوط و مربوط با حجم بالا)  لینک ها ی خروجی را نیز پردازش میکنیم. برای انجام عملیات خزش، با توجه به اینکه درصد بسیار ناچیزی از مجموعه کل صفحات به حوزه مورد نظر مربو ط هستند، در صورتی که مانند خزشگرهای معمولی از دایرکتوری های همه منظوره (مانند  Dmoz یا Yahoo) شروع کنیم مشکل عمده ، محدودیت تعداد لینک های آنهاست .

برای رفع حل این مشکل صفحاتی را پیدا کردیم که در زمینه پژوهش علوم کامپیوتر اصطلاحا Hub  ها ی خوبی باشند . مفهوم Hub اولین بار توسط آقای Kleinberg و در قالب الگوریتم HITS  معرفی شد. صفحات Hub صفحاتی هستند که حاوی تعداد زیادی لینک به صفحات مورد نظر کاربر باشند .  به عنوان مثال می توان به موتور جستجوی Teoma اشاره کرد که پس از دریافت یک عنوان سعی میکند Hub های مناسب را برای آن پیدا کند. ما با استفاده از این موتور تعدادیHub  مناسب برای حوزه پژوهش در علوم کامپیوتر پیدا نمودیم:

1.     لیست دانشگاههای دارای دپارتمان علوم كامپیوتر
2.     لیست علوم كامپیوتر
3.     افراد و سازمانهای مرتبط با علوم كامپیوتر

از میان این صفحات ، اولین مورد به دلیل گستردگی و تنوع نمونه ها گزینه بسیار مناسبی میباشد. با شروع از این سایت و با استفاده از خزشگر تاكیدی در مدت حدود ۲۴ ساعت موفق به گرد آوری بیش از ۲۲۰۰۰ صفحه شدیم. سپس با استفاده از میزان شباهت واژگان هر صفحه به شبه آنتولوژی مرحله قبل و با کمک حدود آستانه تنظیم شده، از این تعداد حدود ۸۰۰۰ صفحه مرتبط تشخیص داده شدند. بررسی تصادفی صفحات نشان داد كه با دقت بسیار خوبی (حدود۷۰ % ) صفحات مرتبط با موضوع شناسایی شده اند. بنابراین میتوان نتیجه گرفت آنتولوژی تولید شده با درصد مناسبی می تواند برای شناسایی و استخراج صفحات وب مورد استفاده قرار گیرد.

Comments (0) Posted to ارزیابی آنتولوژی ها 04/15/2011 Edit

Ontology Evaluation یا ارزیابی آنتولوژی ها بخش اول

 

 

در مطالب قبلی به اندازه ی کافی در مورد آنتولوژی صحبت کردیم....

خوب گمونم حالا دیگه وقتش باشه که بریم سراغ اصل مطلب:

 Ontology Evaluation یا ارزیابی آنتولوژی ها

البته لازمه اول بگم که بیشتر مطالب این قسمت قبلا توسط آقای پایدار که موضوع تحقیقشون همین موضوع بوده گردآوری شده ...

 با توجه به نقش مهم آنتولوژی در سیستم های مبتنی بر دانش، موضوع ارزیابی و نحوه بررسی کیفیت آنتولوژی از اهمیت بالایی برخوردار می باشد. طبیعتا اگر قرار است آنتولوژی ها بعنوان عناصر اصلی وب معنایی استفاده شوند، باید بتوان به روشی اعتبار آنها را از نظر کیفی مورد سنجش قرار داد.
در حال حاضر هیچ روش استانداردی برای ارزیابی آنتولوژی وجود ندارد و این زمینه بعنوان یک زمینه مناسب جهت کار و پژوهش مطرح می باشد.
در اینجا به بررسی کارهایی که در این زمینه انجام شده است و روشهای اصلی که برای ارزیابی آنتولوژی ارائه شده است، می پردازیم.
روشهای موجود:

1. روشهای مبتنی بر مقایسه با یک مدل مرجع (golden standard)
در این روش برای ارزیابی یک آنتولوژی، آن را با یک آنتولوژی یا یک منبع اطلاعاتی دیگر که بعنوان مرجع و منبع اصلی در حوزه مورد بحث شناخته شده است، مقایسه می نماییم. بعنوان مثال می خواهیم یک آنتولوژی مربوط به حوزه تست نرم افزار می باشد را مورد ارزیابی قرار دهیم. در این روش، اگر آنتولوژی شناخته شده و مرجعی وجود داشته باشد آن را بعنوان مرجع مقایسه انتخاب می کنیم اگر هم چنین آنتولوژی ای موجود نباشد منابع دیگر را مورد استفاده قرار می دهیم. مثلا یکسری مستندات رسمی و دقیق را که دانش مربوط به حوزه تست نرم افزار را بخوبی در بر گرفته است، انتخاب کرده و آنتولوژی را با آن مقایسه می نماییم.


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


خلاصه سازی آنتولوژی (Ontology Summarization)
منظور از خلاصه سازی یک آنتولوژی، آن است که مهمترین قسمت های یک آنتولوژی را استخراج کنیم و در قالب یک آنتولوژی جدید ذخیره نماییم. بدین ترتیب با حذف جزئیات غیر ضروری، می توانیم فهم و درک آنتولوژی را ساده تر کنیم. بعنوان مثال فرض کنید می خواهید برای یک کاربرد خاص، از آنتولوژی استفاده کنید، خوب یک ایده خوب این است که اول در موتورهای جستجوی مخصوص، نظیر SWOOGLE، جستجو کنید و ببینید آیا در حال حاضر در زمینه مورد نظر شما، آنتولوژی آماده ای وجود دارد یا خیر. اگر چنین جستجویی تعداد زیادی جواب داشته باشد، باید به نوعی،  آنتولوژی های جواب را بررسی کنید و تصمیم گیری کنید که کدامیک برای کار شما مناسب تر است. در چنین مواردی، خیلی از جزئیات آنتولوژی مورد توجه شما نیست و می خواهید یک نگاه کلی به آن داشته باشید. اگر بجای خود آنتولوژی، یک نسخه سبک و خلاصه شده از آن در اختیار شما باشد، طبیعی است که این کار ساده تر است.
البته اگر Visualizer مناسبی در اختیار داشته باشید، ممکن است این امکان را داشته باشد که آنتولوژی را در سطوح مختلفی از جزئیات نمایش دهد و شما بتوانید آن را در سطوح مختلف ببینید و ارزیابی کنید. خوب این هم یک راه حل است. اما همواره نمی توان به امکانات Visualizer ها تکیه کرد. بعنوان مثال در برخی کاربردها، لازم است که یک عامل نرم افزاری، یک آنتولوژی را بررسی کند (مثلا در بحث ارزیابی و انتخاب آنتولوژی توسط عامل نرم افزاری، این مساله پیش می آید)، خوب این عامل نرم افزاری (که بحث مشاهده بصری در مورد ان صدق نمی کند)، اگر بجای بررسی کل آنتولوژی، یک نسخه خلاصه شده آن را مورد پردازش قرار دهد، قاعدتا کارایی بهتری حاصل خواهد شد.
بنابراین، انگیزه اصلی برای بحث خلاصه سازی آنتولوژی، همان درک و پردازش ساده تر آن، چه توسط انسان و چه توسط ماشین، می باشد.
اما در این زمینه کارهای بسیاری کمی انجام شده است. اولین کسی که این موضوع را مطرح کرد و نمونه کاری هم در این زمینه ارائه داد، Zhang است. مقاله های اصلی Zhang در این زمینه عبارتند از:


1)   X. Zhang, H. Li, Y. Qu, "Finding Important Vocabulary within Ontology", 1st Asian Semantic Web Conference (ASWC), 2006.
2)   X. Zhang, G. Cheng, Y. Qu, "Ontology Summarizatoin Based on RDF Sentence Graph", 16th International World Wide Web Conference, 2007.


 یک نمونه دیگر از کارهایی که در این زمینه انجام شده است:

 
 S. Dasgupta and Y. Lee, "Relation Oriented Ontology Summerization". 2007,University of Missouri - KC.


یک نکته مهم و قابل ذکر آن است که در زمینه خلاصه سازی متن (Text Summarizatioin) کارهای خیلی زیادی انجام شده است و می توان از ایده هایی که در آنجا مطرح است در زمینه خلاصه سازی آنتولوژی نیز استفاده نمود. اما بهرحال موضوع خلاصه سازی آنتولوژی، موضوع جدیدی است و هنوز جای کار زیادی دارد. به نظرم زمینه خوبی است برای دوستانی که به کارهای الگوریتمی علاقه دارند و می خواهند در زمینه آنتولوژی کار کنند.

Comments (1) Posted to ارزیابی آنتولوژی ها 04/10/2011 Edit

اولین کلاس در سال 1390

 

 

سلام به همه ی دانشجویان عزیز

امیدوارم سال نو برای همتون فرخنده و میمون باشه و امسال، سال آغاز آرزوهایی باشه که مدت هاست در فکر رسیدن به اونها هستید و خلاصه براتون آرزو میکنم امسال بهترین سال و سال برآورده شدن بهترین آزوهاتون باشه ... همون سالی که مذت هاست منتظر رسیدن اون هستید...

 بگذریم....

چهارشنبه 17 فروردین اولین جلسه ی کلاس حل تمرین درس کامپایلرمون برگزار میشه و شما که میدونم تمام تعطیلات عیدتون رو وقت گذاشتید!!! و همه ی فکر و ذکرتون درس و مشقتون بوده!!! باید تکلیفی که براتون مشخص کردم رو به صورت حضوری سر کلاس تحویل بدید....

تشریح نحوه ی عملکرد LEX  و YACC  به طور کامل و عملی همراه با مثال ورودی به هر یک و دریافت خروجی ...

دوستانی که هنوز کاری نکردند لااقل LEX رو باید به طور کامل تحویل بدن...

در ضمن تحویل این قسمت از پروژه حضوریه و باید توسط خودتون انجام بشه. لذا اگه با ساعت کلاس مشکل دارید حتما من رو در جریان بذارید تا در ساعت دیگه ای ازتون تحویل بگیرم.

در ضمن توضیحات بیشتر در مورد پروژه رو میتونید توی همین وبلاگ پیدا کنید....

پس کلاسمون شد: چهارشنبه 17 فروردین ساعت 14   کلاس 312

به امید دیدار

پیروز و سربلند باشید

Comments (1) Posted to حل تمرین درس کامپایلر 04/05/2011 Edit

2. آنتولوژی در علم کامپیوتر

 

 

در معنی عام کلمه، آنتولوژی به شاخه‌ای از علم فلسفه اتلاق می‌گردد که به دنبال پاسخ به سؤالاتی از قبیل «هستی چیست؟» و «چه ویژگی‌های مشترکی در بین تمام موجودات وجود دارد؟» می‌باشد. در فلسفه، آنتولوژی سیستمی از دسته‌های مختلف است که از دیدگاه خاصی نسبت به دنیا ایجاد شده‌اند.

در سال 1980، مجمع هوش مصنوعی از لغت آنتولوژی برای دو منظور استفاده کرد: نظریه‌ای در مورد جهان مدل شده و مؤلفه‌ای از سیستم‌های دانش. این مجمع از این وسیله برای اثبات خودکار بهره گرفت. آنتولوژی در هوش مصنوعی و همچنین علوم کامپیوتر به مجموعه‌ای از لغات و فرضیات (عموماً در منطق مرتبه‌ی اول) گفته می‌شود که با توجه به معنی آن لغات ایجاد شده‌اند و به منظور توصیف یک واقعیت خاص طراحی شده‌اند. استفاده از این مفهوم در سال‌های اخیر بسیار رواج یافته است و دلیل این امر را می‌توان افزایش ارتباطات و اطلاعات دانست. 

تولید اتوماتیك شبه-آنتولوژی به روش استخراج مفاهیم از وب توسعه و رشد وب معنایی مشوق اصلی تولید آنتولوژی در دامنه های متفاوت میباشد. تولید آنتولوژی معمولا وقت گیر، خسته كننده، خطادار و وابسته به دانش مهندس دامنه است . یكی از مشكلات اصلی در این زمینه ، دسترسی به مجموعه واژگان معتبر و كامل برای تولید آنتولوژی است . در این تحقیق با استفاد ه از یك روش نمونه برداری صفحات اولیه در مقیاس بزر گ و استفاده از الگوریتمهای پردازش زبان طبیعی، تحلیلهای آماری و تکنیک های بازیابی اطلاعات، یك روش اتوماتیك برای تولید شبه-آنتولوژی برای دامنه پژوهش در علوم كامپیوتر پیشنهاد شده است. هدف اصلی ما تهیه اتوماتیك مجموعه بزرگی از واژگان و مفاهیم اصلی دامنه است كه كار تولید آنتولوژی را سریعتر و راحتتر كند. بدین منظور صفحا ت مرتبط در این دامنه با استفاده از یک خزشگر تاکید ی مبتنی بر واژگان مورد استفاده قرار گرفته و با استفاده از تكنیكهای مذكور لیست كاملی از واژگان دامنه استخراج شده است. برای استفاده مجدد این روش در دامنههای دیگر، فرآیند ساخت آنتولوژی نیز تا حد ودی مستقل از دامنه پیاده سازی شده است.

مقدمه

اطلاعات و منابع موجود در وب بصورت فزآیندهایی رو به رشد هستند و استفاده كنندگان وب نیازمند یك درك مشترك از آنها دارند. آنتولوژی نقش اصلی را در مبادله اطلاعات و توسعه وب لغوی بسمت وب معنایی دارد. آنتولوژی یك مدل مفهومی است که موجودیتهای واقعی در یک دامنه خاص و روابط بین آنها را به صورت صریح و رسمی مدلسازی می کند. مشكل اساسی كار ، تهیه دستی آنتولوژی استكه وقت گیر، خسته كننده و دارای خطا می باشد و به دانش كافی در زمینه دامنه كاربرد و زبان توصیف آنتولوژی نیاز دارد. در اینجا یك روش تركیبی از روشهای موجود برای تولید شبه آنتولوژی بعنوان مبنای تولید آنتولوژی برای دامنه "حوزه پژوهش در علوم كامپیوتر" بكار گرفته شده كه قسمت زیادی از كار را بدون از دست دادن كیفیت و مستقل از دامنه بطور اتوماتیك انجام میدهد.

 

برنامه های خاص

دراین تحقیق دونوع برنامه خاص منظوره نوشته شده است: خزشگر و سازنده آنتولوژی.  وظیفه "خزشگر " جمع آوری صفحات وب می باشد و شامل دو قسمت است: خرشگر معمولی که با شروع از یک آدرس URL به جمع آوری صفحات می پردازد و "خزشگر تاکیدی " که با استفاده از یك آنتولوژی به جمع آوری صفحات مربوط به یک حوزه خاص میپردازد. یکی از ماجولهای مهم آنHTML2TEXT  میباشد که وظیفه آن تبدیل فایل HTML  ورودی به محتوای متنی متناظر میباشد. برنامه "سازنده آنتولوژی " با استفاده از صفحات جمع آوری شده توسط خزشگر معمولی به استخراج واژگانی که با فرکانس بالا تکرار میشوند میپردازد. در اینجا از ماجول آمادهPorter Stemmer  استفاده شده است که با دریافت هر کلمه، ریشه آنرا به عنوان خروجی برمی گرداند. با استفاده از این ماجول کلمات هم خانواده به یک ریشه یکسان تبدیل میشوند که حجم واژگان استخراج شده از صفحات را به طور چشمگیری کاهش میدهد.

 

ابزار توسعه آنتولوژی

یكی از تصمیمات مهم در فرآیند ساخت آنتولوژی، انتخاب ابزار ویرایش و زبان نمایش آنتولوژی است . این دو پارامتر روی چرخه حیات آنتولوژی، كیفیت و استاندارد سازی آن تاثیر مستقیم دارند . از نرم افزار Protégé 3.1.1 میتوان بعنوان محیط ویرایش و توسعه آنتولوژی استفاده نمود.  محیط Protégé با تعیین كلاسها، سلسله مراتب آنها و نمونه های عضو هر یك، آنتولوژی را بهتر توصیف میكند . این محیط امکان توسعه آنتولوژی یک حوزه را از طریق ابزارهای متعدد مدلسازی بسهولت فراهم میكند و میتوان به شیوه کاملا بصری و بدون نیاز به درگیری با جزئیات قالبهای فوق الذکر، به ساخت، دستکاری اجزاء و پشتیبانی آنتولوژی پرداخت.  از OWL میتوان بعنوان زبان نمایش و توصیف رسمی مفاهیم در آنتولوژی استفاده نمود. این زبان علاوه بر نمایش سمبلیك معانی، روشهای رسمی را برای بكارگیری و پردازش آنها تعریف میكند. در این زبان جستجو و كشف روابط بین مفاهیم، یافتن ناسازگاریها در آنتولوژی، پردازش اطلاعات داخل مستندات بسادگی انجام می شوند. از این زبان می توان برای نمایش صریح معنی واژه ها در لغت نامه و ارتباط بین آنها استفاده نمو د.

 

روش انجام كار

راه حل پیشنهادی، یک روش نیمه اتوماتیک است. ابتدا یك لیست اولیه از واژگان مربوط به دامنه مورد نظر توسط مهندس دانش تهیه میگردد. این لیست بعنوان "دانه" در تهیه شبه آنتولوژی مورد استفاده قرار می گیرد. سپس با کمک موتورهای جستجوگر، نمونه هایی از صفحات اولیه از دامنه را جمع آوری می نماییم . سپس با استفاده از خزشگر تاكیدی یك انباره از صفحات آموزشی را استخر اج می كنیم و با استفاده از تکنیک های پردازش آماری، بازیابی اطلاعات و پردازش متن از مجموعه این صفحات، یک سری واژه  استخراج می نماییم . این مجموعه کلمات تشکیل یک شبه آنتولوژی می دهند. در توسعه های آتی میتوان این شبه آنتولوژی را اصلاح نموده و با درج روابط بین مفاهیم و تعیین ویژگیها، آنرا را به یك آنتولوژی کامل تبدیل نمود. در قسمت های زیر جزئیات عملیات انجام شده جهت ساخت شبه -آنتولوژی را توضیح میدهیم.

 

تهیه صفحات نمونه

در این مرحله نمونه های جامعی از حوزه مورد نظر پید ا نمودیم . این نمونه ها باید تا حد امکا ن نماینده صفحات موجود در این دامنه باشند .

نکته مهمی که در مساله نمونه برداری باید ملاحظه شود تنوع نمونه ها است. در واقع نمونه هایی که از لحا ظ ساختار و معنا شبا هت زیادی به

هم دارند، از لحاظ اطلاعاتی چندان حائز اهمیت نیستند. مجموعه این صفحات میتواند دو کاربرد متفاوت در عملیات خزش تاکیدی داشته باشد. کاربرد اول آشنایی با ادبیات دامنه (مجمو عه واژگان) است كه ما با استفاده از این کاربرد، یک بردار (شبه آنتولوژی) برای کل صفحات مرتبط ساختیم. کاربرد دوم اولویت دهی و کشف الگوهایی برای آدرس های صفحات مرتبط است. در این تحقیق فقط از کاربرد اول استفاده نمودیم و قصد داریم در توسعه های آتی از کاربرد دوم نیز استفاده كنیم . برای نیل به این هدف، صفحاتی را پیدا کردیم که حاوی تعداد زیادی لینک به صفحات مطلوب در حوزه مورد نظر باشند.

 

تولید اتوماتیك شبه-آنتولوژی

با استفاده از صفحات نمونه مرحله قبل ، یک مجمو عه از عبارتهایی که در حوزه مورد نظر اهمیت دارند استخرا ج میکنیم. به این عبارتها در حالت کلی ادبیا ت حوزه می گویند. ادبیات حوزه در واقع یک حالت بسیار ساده از آنتولوژی است كه شبه آنتولوژ ی نامیده می شوند .همانطور گه گفته شد آنتولوژی توصیف رسمی یک دامنه است . این توصیف دو بخش اصلی دارد . کلمات و روابط میان آنها . کلمات در واقع همان ادبیات حوزه هستند و روابط میان کلمات بخش رفتاری آنتولوژی را می سازد. ما این شبه آنتولوژی را به صورت یک بردار از ترم ها در نظر میگیریم. نحوه ساخت این بردار به این صورت است که ابتدا تمام کلمات استفاده شده در مجموعه صفحات را همراه با تعداد تکرار هر کدام استخراج می کنیم و پس از مرتب کردن آنها بر حسب میز ان تکرار، آنهایی که خاصیت تمیز دهندگی ندارند ر ا حذف میکنیم. کلماتی که حذف میشوند را میتوان به سه دسته تقسیم کرد:

1-     کلمات ایست معمولی : این کلمات که تعداد آنها تقریبا ۲۰۰ تا است در زمینه بازیابی اطلاعات بسیار شناخته شده هستند به عنوان مثال میتوان به . . .,am, is, a, as اشاره کرد.

2-      عبارتهایی که تکرار خیلی پایینی دارند، پس از حذ ف کلمات ایست حدودا ۵۷۰۰۰ کلمه باقی ماند . از این کلمات حدود ۸۰ درصد آنها تکراری کمتر از ۱۰ بار داشتند. در واقع این کلمات فرکانس قابل اعتنایی ندارند و در فرآیند جستجو و طبقه بندی چندان مفید نیستند. به همین دلیل و نیز به دلیل کاهش سرباره ا ی محاسبات، کلماتی که کمتر از ۹۰ بار تکرار شده بودند حذف نمودیم .

3-     کلماتی که تکرار بالایی دارند اما خاص این حوزه نیستند: در واقع کلمات عمومی هستند که در همه حوزه ها وجود دارند ما این کلمات را NewStopword می نامیم . روش مورد استفاده ما در حذف این گونه کلمات ، استفاده از مثالهای منفی  است . در واقع ما از یک شبه آنتولوژی عام استفاده می کنیم تا کلمات غیر توصیف کننده را در حوزه مورد نظر خود کشف و حذف کنیم.  ما پس از ساخت این شبه آنتولوژی عام، کلماتی که در اشتراک این شبه آنتولوژی عام و آنتولوژی ساخته شده برای حوزه علوم کامپیوتر موجود بودند را از لیست اولیه حذف کردیم.

 

عملیا ت ریشه یابی

شبه آنتولوژی بدست آمده تا این مرحله دارای عبارتهای تكراری زیادی است و لذا در این مرحله عملیات ریشه یابی  را انجام دادیم تا در حالت کلی جنبه یاد آوری و دقت ر ا افزایش دهیم . دقت و یادآوری دو معیار مهم در ارزیابی سیستمهای بازیابی اطلاعات براساس آنتولوژی هستند. در این عملیات، برای هر کلمه ریشه لغوی آن را پیدا نموده و موارد تكراری را حذف نمودیم. به عنوان مثال ریشه همه کلمات  Computing  و Computer, Computation کلمه Compute است . الگوریتمهای متنوعی برای انجام عملیات ریشه یابی  در زبان انگلیسی وجود دارند که مهمترین آنها الگوریتم كد باز Porter  میباشد. عملیات ریشه یابی در این حوزه باعث کاهش تعداد  شاخصها به میزان ۲۰ درصد شده است. خروجی این قسمت یک بردار توصیف حوزه علوم کامپیوتر (شبه آنتولوژی)  است که دارای حدود ۸۰۰ کلمه ویژه میباشد .

 

 

ارزیابی آنتولوژی

برای ارزیابی آنتولوژی روشهای متفاوتی وجود دارد كه ما در اینجا از معیار كاربرد آنتولوژی و روش مبتنی بر پردازش زبان طبیعی استفاده كرده ایم. هدف ما تعیین میزان كارایی آنتولوژی در كاربرد بازیابی صفحات متنی از وب و میزان صحت آنها میباشد. بنابراین ما از یک خزشگر تاكیدی استفاده كردیم كه وظیفه آن یافتن و جمع آوری صفحات وب بر اساس شبه آنتولوژی بدست آمده است. رفتار این خزشگر در حالت کلی مشابه خزشگر ها ی معمولی است با این تفاوت که پس از بررسی صفحات ، فقط در صورت مطلوب بودن آنها اقدام به ذخیره سازی و شاخص گذاری میکند و در غیر اینصورت از آنها و لینک هایشا ن صرفنظر میکند.  خزشگر تاکیدی با استفاده از یک فیلتر (میزان مطلوبیت صفحه که معمولا بر حسب شباهت محتوای صفحه به حوزه موردنظر محاسبه می شود) بعضی از مسیرها را هرس میکند. در روش ، ابتد ا میزان شبا هت هر صفحه جدید ر ا نسبت به شبه آنتولوژ ی تولید شده محاسبه می نماییم. ابتدا کلمات موجود در صفحه جدید را استخراج کرده و یک بردار برای آن میسازیم . آنگاه با استفاده از مدل فضای برداری شباهت صفحه جدید و شبه آنتولوژی را محاسبه می کنیم و در صورتی که از مقدار آستانه بیشتر باشد آن صفحه را ذخیره نموده و پس از استخراج لینک هایش عملیات را روی آن تکرار میکنیم. با توجه به اینکه در اینجا مساله نگهداری یا حذف صفحات جدید یک مساله دوحالته است، برای تسهیل عملیات از برای بازیابی استفاده کرده ایم. در واقع نسبت ترم های مدل بولی مشترک بین شبه آنتولوژی و صفحات جدید به کل ترم های موجود در شبه آنتولوژی را به عنوان معیار رد یا قبول صفحات به کار گرفته ایم.  اما این معیار به تنهایی منجر به بروز یک مشکل مهم میشود. هنگامیكه به یک صفحه بسیار بزرگ (مثلا یک وبلاگ) برخورد می کنیم ، اگر بخش کوچکی از آن به علوم کامپیوتر اختصاص داده شده باشد، با توجه به این نکته که میزان اشتراک کلمات صفحه و آنتولوژی به کل کلمات آنتولوژی مقدار قابل توجهی است، این صفحه به عنوان یک صفحه مرتبط شناخته خواهد شد در حالی که چنین نیست . برای رفع این معضل ، راه حل پیشنهادی ما در نظرگرفتن دو حد آستانه است:

1-     حد آستانه دقت كه به صورت نسبت اشتراک کلمات شبه آنتولوژی و صفحه به اندازه شبه آنتولوژی تعریف می شود. لذا فقط صفحاتی از این فیلتر رد خو اهند شد که حداقلی از ترم های حوزه علوم کامپیوتر (اینجا ۲۰ کلمه)  را در خود داشته باشند.

2-     حد آستانه یاد آوری  كه عبارتست از نسبت اند ازه مجموعه اشتراک صفحه و شبه آنتولوژی به اندازه صفحه . این معیار باعث حذف صفحاتی می شود كه فقط درصد کمی از حجم خود را به حوزه مورد نظر اختصاص داده اند.

از نکات مهم در مبحث خزش تاکیدی اولویت دهی به لینک های خروجی است و روش های متعددی برای آن وجود د ارد . روش ما به این صورت است كه در صورت برخورد با یک لینك نامربوط (که براسا س محتوا مشخص می شود) از پردازش لینک های خروجی آن خودداری میکنیم. اما برای دو نوع صفحه دیگر (مربوط و مربوط با حجم بالا)  لینک ها ی خروجی را نیز پردازش میکنیم. برای انجام عملیات خزش، با توجه به اینکه درصد بسیار ناچیزی از مجموعه کل صفحات به حوزه مورد نظر مربو ط هستند، در صورتی که مانند خزشگرهای معمولی از دایرکتوری های همه منظوره (مانند  Dmoz یا Yahoo) شروع کنیم مشکل عمده ، محدودیت تعداد لینک های آنهاست . برای رفع حل این مشکل صفحاتی را پیدا کردیم که در زمینه پژوهش علوم کامپیوتر اصطلاحا Hub  ها ی خوبی باشند . مفهوم Hub اولین بار توسط آقای Kleinberg و در قالب الگوریتم HITS  معرفی شد. صفحات Hub صفحاتی هستند که حاوی تعداد زیادی لینک به صفحات مورد نظر کاربر باشند .  به عنوان مثال می توان به موتور جستجوی Teoma اشاره کرد که پس از دریافت یک عنوان سعی میکند Hub های مناسب را برای آن پیدا کند. ما با استفاده از این موتور تعدادیHub  مناسب برای حوزه پژوهش در علوم کامپیوتر پیدا نمودیم:

1-     لیست دانشگاههای دارای دپارتمان علوم كامپیوتر

2-     لیست علوم كامپیوتر

3-     افراد و سازمانهای مرتبط با علوم كامپیوتر

از میان این صفحات ، اولین مورد به دلیل گستردگی و تنوع نمونه ها گزینه بسیار مناسبی میباشد. با شروع از این سایت و با استفاده از خزشگر تاكیدی در مدت حدود ۲۴ ساعت موفق به گرد آوری بیش از ۲۲۰۰۰ صفحه شدیم. سپس با استفاده از میزان شباهت واژگان هر

صفحه به شبه آنتولوژی مرحله قبل و با کمک حدود آستانه تنظیم شده، از این تعداد حدود ۸۰۰۰ صفحه مرتبط تشخیص داده شدند. بررسی تصادفی صفحات نشان داد كه با دقت بسیار خوبی (حدود۷۰ % ) صفحات مرتبط با موضوع شناسایی شده اند. بنابراین میتوان نتیجه گرفت آنتولوژی تولید شده با درصد مناسبی می تواند برای شناسایی و استخراج صفحات وب مورد استفاده قرار گیرد.

 

نتیجه گیری

در این مقاله، ما یك روش تولید اتوماتیك شبه-آنتولوژی را برای دامنه پژوهش در علوم كامپیوتر توضیح دادیم. مبنای اصلی تولید آنتولوژی كامل دامنه، تهیه یك لیست كامل و مرتبط از واژگان می باشد كه در روشهای دستی توسط مهندس دامنه تعیین میگردند و معمولآ سخت ،

وقت گیر و ناكامل است. ما در این تحقیق یك روش اتوماتیك را برای استخراج آنها از صفحات وب پیشنهاد نمودیم. روش ما تركیبی از بكارگیری تكنیكهای تحلیل آماری، پردازش زبان طبیعی و خزشگر تاكیدی بود . مزیت های عمده روش ما ، استقلال از دانش ذهنی متخصص دامنه و اتوماتیك سازی فرآیند تهیه مجموعه واژگان اولیه از مجموعه بزرگی از صفحات متن در وب بود. اندك نمودن فعالیتهای دستی، سادگی فرآیند، اتوماتیك سازی فرآیند تست شبه-آنتولوژی، و قابلیت استفاده مجدد این روش در سایر دامنه ها از مزیتهای جانبی این روش می باشد. نهایتآ اینكه شبه آنتولوژی تولید شده می تواند با دقت مناسبی برای شناسایی و استخراج صفحات متن آزاد و شبه -ساختیافته در وب مورد استفاده قرار گیرد.

ادامه دارد ...

 

Comments (3) Posted to ارزیابی آنتولوژی ها 03/21/2011 Edit

1 . مقدمه ای بر مفهوم آنتولوژی

 

 

1-1- آنتولوژی در فلسفه

آنتولوژی شاخه­ای از علم فلسفه است که به مطالعه ماهیت هستی وساختار واقعیت می پردازد. آنتولوژی ها طی  سالیان متمادی به اشکال گوناگونی همچون طرح های­رده بندی،طبقه بندی وسلسله مراتبی،تزاروس ها،واژگان های کنترل شده،اصطلاح شناسی ها، وحتی واژه نامه ها معنا شده اند. کلمه  آنتولوژی در فلسفه به معنای هستی­شناسی ویا علم موجودیت است.در واقع  علمی است که درباره‌ی آن‌چه هست، درباره انواع و ساختار شی‌ها، خواص، رخدادها، فرایندها و روابط هر تکه از پهنای واقعیت. فلاسفه غالبا آنتولوژی را به عنوان معادلی برای "متافیزیک" به کار می‌برند و متافیزیک خود اصطلاحی است که شاگردانِ نخستین ارسطو برای اشاره بدان‌چه وی فلسفه‌ی اولی می‌نامید، وضع کرده‌اند.

 آنتولوژی به دنبال ایجاد طبقه‌بندی‌هایی قطعی و انحصاری از موجودیت‌ها در تمام حوزه‌های هستی است. آنتولوژی فلسفی به دنبال طبقه‌بندی است: طبقه بندی تمام عالم در ساختاری مفهومی به طوری که هیچ موجودی بیرون از آن قرار نگیرد. آنتولوژی فلسفی مرزهای عالمِ امکان را مشخص می‌سازد: چه چیزهایی در عالم وجود دارد و چه چیزهایی امکان ندارد وجود داشته باشند. آنتولوژی فلسفی همچنین روابط میان موجودیت‌ها را نیز طبقه‌بندی و مرزبندی می‌کند: روابط ممکن میان موجودات چیست و موجودات در قالب چه مقولاتی با یکدیگر ارتباط می‌یابند.

آنتولوژی با کواین (1953) معنای دومی را نیز به خود جذب نمود، که بر طبق آن آنتولوژی با علم رقابت نمی‌کند بلکه خود نظریات علمی را بررسی می‌نماید. به عبارتی دقیق‌تر، فلسفه نظریات علوم طبیعی را بررسی می‌کند، علومی که به زعم کواین بهترین منبع دانش ما درباره‌ی چیستی واقعیت هستند. هدف کواین یافتن آنتولوژی "در" علم است. آنتولوژی برای او، مطالعه تعهدهای آنتولوژیک یا پیش‌فرض‌های مستتر در نظریات علوم طبیعی است: تئوری‌های علوم طبیعی وجود چه موجوداتی را در قالب چه نظام‌های مفهومی‌ای پیش‌فرض گرفته‌اند. مساله تعهد آنتولوژیک در خارج از فلسفه و علوم طبیعی نیز رواج یافته است: دانشمندان انسان‌شناس سیر تحول تعهدات آنتولوژیک قوم‌های مختلف را در فرهنگ‌های متفاوت دنبال نمودند و روان‌شناسان تعهدات افراد و آسیب‌های وارد آمده بر آن را.

1-2- آنتولوژی در ربات­ها، وب معنایی و محیط وب

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

یکی از اصولی که هوش‌مصنوعیِ کلاسیک بر آن بنا شد عبارتست از:آن‌چیزی در دنیای هوش‌مصنوعی وجود دارد که بتوان آن را بازنمود". پس آنتولوژی سیستمی است برای طبقه‌بندی بازنمایی‌ها و قوانین بازنمایی. برای مثال برای طراحی روباتی که قرار است منزل شما را تمیز ‌کند، ابتدا باید آنتولوژی دنیای اتاق را برای وی تهیه کنیم. یعنی نوع اشیائی را که با آن‌ها برخورد خواهد نمود، روابط آن اشیاء بایکدیگر و خواص هر یک را به نحوی صوری و در قالب یک "زبان" مشخص سازیم. این آنتولوژی می‌تواند مشتق شده از یک آنتولوژی سطح بالاتر باشد (یک آنتولوژی در همان سطحی که فلاسفه ادعای تهیه‌ی آن را دارند) و یا مختص به همان اتاق.

ایده اصلی آنتولوژی این است که واقعیت وجود دارد اما تصور ما از واقعیت تاحد زیادی تحت کنترل نقشه برداری ذهن ماست که به منظور درک واقعیت صورت می­گیرد.مادامی که این نظریه درست باشد می­توان گفت که اگر قادر باشیم الگویی از این چارچوب های مفهومی(نقشه های ذهنی) ارائه کنیم،سپس می­توانیم آن را مورد پرسش قرار دهیم. از این رو،هوش مصنوعی از آنتولوژی استفاده می­کند تا آنجه را که واقعی است برای رایانه نعریف کند.

 

اصطلاح آنتولوژی اغلب به درک معنایی ویا چارچوب مفهومی دانشی که میان اعضای یک حوزه معین مشترک است،اطلاق شده است.این چارچوب مفهومی ویا آنتولوژی مفهومی می تواند به صورت ساختار مفهومی غیر رسمی یی از آن حوزه با انواع مفاهیم و روابطشان باشد. درحالت دوم روابط به طور نظام مند در زبانی منطقی تعریف شده اند وبیشتر بر اساس  رابطه های جنس  ونوع  یا کل جزء منظم می شوند.

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

تعریفی از آنتولوژی که بیشتر استناد می شود،تعریف تام گرویر است.با توجه به مفهوم  آنتولوژی در نقش ساز وکاری برای تشخیص ،گروبر آنتولوژی را،تشخیص روشنی از یک مفهوم سازی را توصیف می کند.این تعریف خوشایند،اما ناکامل است به علاوه اینکه خارج از بافت اصلی موضوع قرار گرفته است .گروبر سعی کرده است استفاده خود از مفهوم سازی را یا این تعریف«منظری خلاصه وساده از جهان که ما برای بعضی اهداف می خواهیم ارائه کنیم»محدود کند.نگاهی محدود وجزئی به دنیا که فقط از اشیاء،مفاهیم، موجودیت ­هایی تشکیل شده که پنداشته وفرض می شوند بنا به تعریف گروبر، آنتولوژی می تواند به مثابه مفهوم سازی ساده وجزئی از جهان تعریف شود که آنگونه که جامعه استفاده کننده می پندارد،مفهوم سازی که برای هدفی واضح ایجاد می شود وبه زبانی رسمی و ماشین پرداز تعریف می­شود.

برای درک عملکرد آنتولوژی ها در وب معنایی،تعریف جان سوا مناسب به نظر می رسد.سوا می گوید آنتولوژی دسته بندی از موضوعات یا عناصر موجود در یک حوزه خاص را بررسی می کند وبر اساس آن بررسی، فهرسیت از موضوعات را  ارائه می دهد.این فهرست که به تفضظیل،انواع موضوعات وروابط میان آنها را در حوزه مورد بررسی بیان می­کند، آنتولوژی نامیده می شود.

1-3-آنتولوژی در  هوش مصنوعی

تحقیق در زمینه آنتولوژی از اوایل دهه 1990،در میان محققان هوش مصنوعی شایع شد و بعدها به حوزه­های دیگر از جمله بازیابی اطلاعات،استانداردهای وب،وپایگاه های اطلاعاتی پیوسته نیز  راه یافت.

تئوری­های مطرح شده در هوش مصنوعی را به دو بخش عمده می توان تقسیم کرد: تئوری­های مکانیزم و تئوری­های محتوی. آنتولوژی­ها تئوری­های محتوایی در بارۀ ترتیب اشیاء و روابط ممکن میان اشیاء در یک دامنۀ خاص از دانش هستند.

اگر بخواهیم بطور غیر رسمی راجع به مفهوم آنتولوژی و بخصوص با توجه به نقشی که امروزه در سیستم­هایKnowledge base ایفا می­کند توضیح دهیم، می­توان گفت آنتولوژی یک بیان صوری از مفاهیم دانشی یک دامنۀ خاص است که برای سهولت استفاده مجدد و اشتراک بکار گرفته می­شود.در مراجع نیز تعاریف مختلفی از آنتولوژی ارانه شده است که در زیر برخی از آنها را می­آوریم:

یک آنتولوژی یک فهم مشترک از برخی زمینه­های مورد نظر است[Uschold,Gruninger,93]

یک آنتولوژی یک تئوری درباره موجودیت­هایی است که می­تواند در ذهن یک عامل باهوش وجود داشته باشد[Wielinga and Schreiber 1993]

یک آنتولوژی برای بدنه دانشی که مربوط به یک وظیفه یا دامنۀ خاص است یک طبقه­بندی  از مفاهیم برای آن وظیفه یا دامنه را توصیف می­کند که تفسیر معنایی آن دانش را تعریف می­کند[Alberts 1993].

آنتولوژی­ها توافق­­هایی در مورد تصورات مشترک هستند[Chandrasekaran 99].تصورات مشترک شامل چارچوب مفهومی برای مدل­سازی دانش دامنه؛ پروتکل­های ویژه دامنه برای ارتباط میان عامل­های همکار؛ وتوافق درباره بیان تئوری­های یک دامنه خاص است. در زمینه اشتراک  دانش،آنتولوژی­ها در قالب تعاریفی از واژگان توصیفی مشخص شده­اند.یک مورد خیلی ساده می­تواند یک سلسله مراتب گونه باشد که کلاس­ها وروابط رده­بندی آنها را مشخص می­کندوشماهای پایگاه دادۀ رابطه­ای نیز می­توانند به صورت آنتولوژی بکار گرفته شوند؛ برای توصیف روابطی که می­توانند در برخی پایگاه­داده­های مشترک وجود داشته باشند ونیز محدودیت­های جامعیتی که باید برای آنها حفظ شود[Tom Gruber,1994,SRKB Mailing list].

یک آنتولوژی یک توصیف صریح جزئی از یک تصور است که قابل بین یه صورت یک نقطه نظر meta-leve بر روی یک مجموعه از تئوری­های ممکن دامنه به منظور طراحی پیمانه­ای وطراحی مجدد از اجزاء سیستم دانش  است[Schreiber et al.1995].

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

1-   تنها موجودیت‌هایی وجود دارند که در سیستم اطلاعاتی بازنمایی شده باشند.

2-   آن موجودیت‌ها، تنها صفاتی را خواهند داشت که در آن سیستم بازنمایی گشته باشند.

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

این کاربرد جدید و باب روز از "آنتولوژی"، دیری است که جای خود را در بسیاری از چرخه‌های سیستم‌های اطلاعاتی مستحکم گردانده است. در این معنا، آنتولوژی چارچوبی است برای مفهوم‌سازی: دیدگاهی انتزاعی و ساده‌شده‌ای از جهان که ما به کمک آن، جهان را به منظور خاصی بازمی‌نماییم.

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

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

 

 

1-4- آنتولوژی در سیستم­های اطلاعاتی

آنتولوژی جزء لاینفک سیستم‌های اطلاعاتی است. هر تلاشی در اتوماسیون دنیای جدی بزرگسالان، شبیه‌سازی فرایندها، خلق‌ جهان‌های مجازی، صنعت روباتیک و سایبرنتیک و سیستم‌های اطلاعاتی، مبتنی بر یک آنتولوژی است. در هر یک، فرایندی از این دست صورت خواهد گرفت:

1-   آنتولوژی بازنمایی‌های سیستم، بر اساس مفهوم‌سازی‌های کاربران و طراحان آن ایجاد می‌گردد؛ یعنی موجودیت‌های سیستم، خواص هریک و روابط میان آنان تعیین می‌گردند و هر موجودیت در سلسله‌مراتبی از طبقات قرار می‌گیرد.

2-   موتور استنتاجی برای کار با آن آنتولوژی ساخته می‌شود.

3-   و سرآخر زبانی برای کار با آن آنتولوژی وضع و پیاده‌سازی می‌شود. این زبان می‌تواند سلسله‌ای از کلیک‌های موس و یا مجموعه‌ای از APIها باشد. این زبان، رابط خارجی (interface) آنتولوژی با دیگر سیستم‌هاست.

برای مثال در طراحی عاملی (Agent) که صفحات وب را طبقه‌بندی و جستجو می‌کند، در قدم اول باید موجودیت‌های دنیای وب را مشخص سازیم (مانند سایت، صفحه، عنوان، متن، لینک،  کلمات کلیدی) و سپس خصوصیات ممکن هر یک (مانند موضوع، زبان، تاریخ ایجاد) و روابط میان آنان را (مانند مشابهت، عضو یک سایت بودن، لینک گرفتن از) تعیین کنیم. در این مرحله در واقع تعهدات آنتولوژیک عامل را مشخص ساخته‌ایم. در قدم دوم باید قوانین جستجو و حرکت در این آنتولوژی را در قالب یک موتور استنتاج طراحی نماییم و سرآخر رابطی را برای ارتباط با دنیای خارج در اختیار گذاریم (تا فرضا یک موجودیت خارجی بتواند وظیفه‌ای را برای عامل تعریف کند). 

ادامه دارد ...

Comments (4) Posted to ارزیابی آنتولوژی ها 03/17/2011 Edit

تشريح نحوه عملکرد کامپايلرها - قسمت چهارم

 

 


توضيحات تکميلی درباره تحليل‌گر نحوی :

تحلیل‌نحوی، Syntax Analyzer یا پارسر (Parser) فازم دوم عمل کامپایل می‌باشد.
گرامر مورد استفاده در این مرحله گرامر مستقل از متن یا Context Free می‌باشد.
در حین این مرحله از کامپایل می‌باشد که خطاهای نحوی تشخیص داده می‌شوند.
- تحلیل واژه‌ای ( Lexical Analysis) نخستین مرحلۀ کامپایل تحلیل واژه‌ای میباشد. به واحدی از کامپایلر که کار تحلیل واژه‌ای را انجام می‌دهد، اسکنر (scanner) میگویند. اسکنر بین رشتۀ ورودی و تحلیلگر نحوی (یا پارسر-parser) واقع است. وظیفۀ اصلی اسکنر این است که با خواندن کاراکترهای ورودی، توکن‌ها را تشخیص داده و برای parser ارسال نماید. رابطۀ scanner و parser بصورت زیر است:
به عنوان مثال در صورتیکه رشتۀ ورودی A:=B+C باشد، توکن‌های زیر تشخیص داده خواهند شد: (آدرسid,C) و (add .op.) و (آدرسid , B) و (ass .op.) و (آدرس id , A) بنابراین اسکنر علاوه بر اینکه تشخیص می‌دهد که توکن یک شناسه‌است، وآدرس آن در جدول نشانه‌ها را نیز برای پارسر میفرستد. علاوه بر این اسکنر میتواند محلهای خالی و توضیحات(comments) موجود در برنامه اصلی را ضمن خواندن برنامه حذف نماید. به آخرین توکنی که اسکنر یافته‌است، علامت پیش بینی(look a head symbol) و یا توکن جاری گفته می‌شود.
1-    الگو (pattern) و واژۀ(Lexem) توکنها:
به فرم کلی که یک توکن میتواند داشته الگوی آن توکن میگویند. به عبارتی دیگر در ورودی، رشته‌هایی وجود دارند که توکنِ یکسانی برای آنها تشخیص داده می‌شود. فرم کلی این رشته‌ها توسط الگوی آن توکن توصیف می‌شود. به دنباله‌ای از نویسه‌ها که تشکیل یک توکن میدهند، واژه(Lexem) آن توکن میگویند.

الگو واژه توکن با حروف الفبا شروع و بدنبال آن حرف ورقم قرار میگیرد A1 id هرثابت عددی 3.14 num هر رشتۀ کاراکتری که بین دو علامت " " قرار گیرد "book" literal < < relation >= >= relation if if if
در بعضی وضعیتها اسکنر قبل از اینکه تصمیم بگیرد که چه توکنی را به پارسر بفرستد، نیاز دارد که چند کاراکتر دیگر را نیز، از ورودی بخواند. مثلاً اسکنر با دیدن علامت < در ورودی نیاز دارد که کاراکتر ورودی بعدی را نیز بخواند. در صورتیکه این کاراکتر = باشد، در نتیجه توکن '<=' و در غیر اینصورت توکن ' < ' تشخیص داده می‌شود. در این مورد باید کاراکتر اضافی خوانده شده مجدداً به ورودی برگردد. یکی دیگر از مشکلاتی که اسکنر با آن روبروست این است که در زبانهایی نظیر فرترن مثلاَ محل خالی یا (space) بجز در رشته‌های کاراکتری ، نادیده گرفته می‌شود. به عنوان مثال کلمۀ Do در زبان فرترن را در دستور زیر در نظر بگیرید: do bi =1.25 تا زمانیکه به نقطۀ اعشار در 1.25 نرسیده باشیم نمیتوان گفت که do در این دستور کلمه کلیدی نیست، بلکه بخشی از متغیری است که نام آن do bi است. به همین ترتیب در دستور do bi=1,25 تا زمانیکه علامت کاما دیده نشود، نمیتوان گفت که این دستور یک حلقۀ do میباشد.
در زبانهایی که کلمات کلیدی آن جزو کلمات رزرو شده نیستند، اسکنر نمیتواند کلمات کلیدی را از شناسه‌های همنام آنها تشخیص دهد. به عنوان مثال در دستور زیر: IF Then THEN then=else;ELSE Else=Then;
جدا کردن کلمۀ کلیدی THEN از متغیری که نام آن Then است بسیار مشکل است. در این موارد معمولاً پارسر تشخیص نهایی را خواهد داد.
2-    خطاهای واژه ای(Lexical Errors):
بطور کلی خطاهای محدودی را اسکنر میتواند بیابد، زیرا اسکنر تمام برنامۀ ورودی را یکجا نمیبیند بلکه هر بار قسمت کوچکی از برنامۀ منبع را. به‌عنوان مثال هرگاه رشتۀ fi در یک برنامۀ C برای بار اول مشاهده شود، اسکنر قادر نیست تشخیص دهد که آیا fi یک املای غلط از کلمۀ کلیدی if است یا نام یک متغیر است: fi (x==3) از آنجایی که fi میتواند نام یک متغیر مجاز باشد، اسکنر این توکن را به‌عنوان یک شناسه به پارسر میفرستد تا اینکه پارسر در اینمورد تصمیم بگیرد. اما ممکن است خطاهایی پیش بیاید که اسکنر قادر به انجام هیچ عملی نباشد. در این مورد، برنامۀ خطا پرداز (error handler) فرا خوانده می‌شودتاآن خطا را به نحوی برطرف کند. روشهای مختلفی برای این کار وجود دارد که ساده ترین آنها روشی است بنام panic mode (وضعیت هراس) . در این روش آنقدر از رشتۀ ورودی حذف می‌شود تا اینکه یک توکن درست، تشخیص داده شود. سایر روشهای تصحیح خطا(error recovery) عبارت‌اند از : a) حذف یک کاراکتر غیر مجاز (تبدیل:$= به  := ) b) وارد کردن یک کاراکتر گم شده (مثلاً تبدیل : به  := ) c) تعویض کردن یک کاراکتر غلط با یک کاراکتر درست ( مثلاً تبدیل  :: به  := ) d) جابجایی دو کاراکتر مجاز ( مانند =: به := )
 3- روشهايی جهت بهبود کار اسکنر :
الف ) استفاده از بافر: در بسیاری از زبانها اسکنر برای تشخیص نهایی توکنها و مطابقت دادن آن با الگوهای موجود، نیاز دارد که چند کاراکتر جلوتر را نیز مورد بررسی قرار دهد. از آنجایی که مقدار زیادی از زمان در جابجایی کاراکترها سپری می‌شود، از تکنیکهای بافرینگ ، برای پردازش کاراکترهای ورودی استفاده میگردد. در یکی از این تکنیکها از یک بافر که به دو نیمۀ n کاراکتری تقسیم شده‌است، استفاده می‌کنند (که در آن n تعداد کاراکترهایی است که در روی یک بلوک از دیسک جای میگیرند). به این ترتیب با یک فرمان read به جای خواندن یک کاراکتر ، میتوان n کاراکتر ورودی را در هر نیمۀ بافر وارد کرد. در صورتیکه ورودی شامل تعداد کاراکترهای کمتر از n باشد، بعد از خواندن این کاراکترها یک کاراکتر خاصِ eof نیز وارد بافر میگردد. کاراکتر eof بیانگر پایان فایل منبع بوده و با سایر کاراکترهای ورودی به نوعی تفاوت دارد.


      C * * 2 eof E = M *
              forward
Lexam –beginning   ابتدای واژه


در بافر ورودی از دو نشانه رو استفاده می‌شود. رشتۀ کاراکتری بین این دو نشانه رو، معرف Lexem (واژه)جاری میباشد. در ابتدا هر دو نشانه رو به اولین کاراکتر Lexem بعدی که باید پیدا شود اشاره می‌کنند. نشانه رویِ forward پیش میرود تا اینکه یک توکن تشخیص داده شود . این نحو استفاده از بافر در بیشتر موارد کاملاً خوب عمل می‌کند . با این وجود در مواردی که جهت تشخیص یک توکن، نشانه روِ forward ناچار است بیشتر از طول بافر جلو برود، این روش درست کار نمیکند. به‌عنوان مثال دستور declare (arg1,arg2, … ,arn n) را در یک برنامۀ pl/1 در نظر بگیرید. در این دستور تا زمانیکه کاراکتر بعد از پرانتز سمت راست را بررسی نکنیم، نمیتوان گفت که declare یک کلمۀ کلیدی است و یا اسم یک آرایه‌است. برای کنترل حرکت نشانه رویِ forward و همچنین کنترل بافر میتوان بصورت زیر عمل کرد:

 


If forward is at end of first half then Begin reload second-half;
                 Forward:=forward+1
End Else
    If  forward is at end of second-half  then
     Begin      reload   first half;
                  Move   forward to begin of first half
     End
   Else       forward:= forward+1;


ب)استفاده از نگهبانها(sentinels):
در حالت قبل با جلو رفتن نشانه رو forward باید چک میشد که آیا این نشانه رو به انتهای یک نیمه از بافر رسیده‌است یا خیر؟ در صورتیکه به انتهای یک نیمه از بافر رسیده باشد، باید نیمۀ دیگر را دوباره بار می‌کردیم. در الگوریتم فوق همان طوریکه مشاهده شد برای هر جلورویِ نشانه رویِ forward ، دو بار عمل مقایسه انجام مشود. میتوان این دو را به یک بار تست، تبدیل کرد. برای این کار باید در انتهای هر نیمۀ بافر، یک کاراکتر نگهبان قرار دهیم( نگهبان به عنوان قسمتی از برنامۀ منبع نخواهد بود). به این ترتیب برای کنترل حرکت نشانه روِ forward میتوانیم از الگوریتم زیر استفاده کنیم:


forward:=forward + 1 ; if (forward = eof) then begin
         if   (forward  is  at   end  of  first   half)     then
         begin
                 reload   second  half;
                 forward := forward+1 ;
        end
        else
             if        (forward at end of second half)   then
             begin
                     reload  first  half;
                     move  forward  to beginning   of  first  half
             end
             else      /*   eof  within  a  buffer  signifying end of input */
            terminate  lexical  analysis       (آنالیز واژه‌ای به پایان برسد)



 

Comments (1) Posted to حل تمرین درس کامپایلر 03/15/2011 Edit

«قبلي   1 2 3 4 5 6 7 8 9 10  بعدي»

درباره من

احمد استیری

احمد استیری هستم. بنده فارغ التحصیل مقطع کارشناسی ارشد رشته مهندسی کامپیوتر - گرایش نرم افزار از دانشگاه فردوسی مشهد می باشم. دوره کارشناسی ارشد را زیر نظر جناب دکتر کاهانی در آزمایشگاه فناوری وب دانشگاه فردوسی گذرانده ام. در این مدت در حوزه های مرتبط با پردازش متن از جمله وب معنایی و به طور ویژه متن کاوی بر روی متون زبان فارسی فعالیت داشتم. طراحی و پیاده سازی ابزارهای پایه ای پردازش زبان فارسی و به خصوص طراحی نخستین ابزار پارسر زبان فارسی و ابزار ارزیابی خودکار خلاصه سازهای فارسی و همچنین تولید پیکره قرآنی فرقان از جمله کارهای من در دوره کارشناسی ارشد می باشد.
در صورت نیاز به توضیحات تکمیلی و یا هر گرونه سوال و ابهام در مورد موضوعات مطرح شده در وبلاگ با ایمیل زیر مکاتبه نمایید.

پست الکترونیکی من:
UniversityDataInfo{@}yahoo.com

آخرين مطالب بروز شده

موضوعات

پيوندها

کلی

Feeds