موتورهاي پاسخ دهي؛ تاريخچه، ويژگي ها، چالش ها
موتورهاي پاسخ دهي؛ تاريخچه، ويژگي ها، چالش ها
موتورهاي پاسخ دهي؛ تاريخچه، ويژگي ها، چالش ها
نويسنده: سيد مصطفي ناطق الاسلام
با نگاهي به شيوه استفاده روزمره خود از اينترنت و مقايسه آن با ايده هاي دهه هاي 70 و 80 سده پيش، متوجه تفاوت بسيار مهمي مي شويم: پيش بيني (يا دست کم اميدواري) دانش پيشگان کامپيوتر و هوش مصنوعي در آن زمان، ظهور موتورهاي پاسخ دهي بود، نه موتورهاي جست و جو. جست و جوي متن ها و نوشته ها از همان روزهاي نخستين پيدايش کامپيوتر (و بلکه پيش از آن) اهميت بسيار داشت و يکي از مسائل ثابت به شمار مي رفت، اما هنوز وب وجود نداشت و چشم انداز پيدايش آن نيز چنان نمايان نبود که انديشه ها را معطوف خود کند. از اين ديدگاه، به احتمال بايد از خود بپرسيم چرا موتورهاي پاسخ دهي اين قدر کند رشد کرده اند؟
پاسخ کلي شايد اين باشد که با ظهور وب و موتورهاي جست و جو، يادمان رفت که به اندازه کافي روي موتورهاي پاسخ دهي کار کنيم. شايد به اندازه کافي متوجه اهميت و پتانسيل هاي آن ها نبوده ايم.
جست و جوي وب به تنهايي چنان سودمند و البته دشوار و پيچيده بوده و هست که ذهن ها را از توجه کافي به مسئله موتورهاي پاسخ دهي منحرف کرده است. اما نه؛ شايد لازم بود موتورهاي پاسخ دهي به درجه اي مشخص از رشد برسند تا زمينه را براي ظهور موتورهاي پاسخ دهي فراهم آورند.
از سوي ديگر، شاهد دگرديسي آهسته و پيوسته موتورهاي جست و جو نيز هستيم. به عنوان مثال، مي توانيد از گوگل به زبان محاوره اي بپرسيد: الان در برلين ساعت چند است؟ (البته به انگليسي) و پاسخ خود را نه در قالب لينکي به يک صفحه وب، بلکه به طور مستقيم از خود گوگل بگيريد. مثال ديگر، ماشين حساب گوگل است که محاسبات معمولي و تبديل واحدها را از همان کادر جست و جوي ساده گوگل قبول مي کند.
با وجود تمام اين ها، ايده موتور پاسخ دهي به کل متفاوت از موتور جست و جو است. موتور جست و جو قرار است به شما کمک کند تا اطلاعات يا پاسخ مورد نظرتان را بيابيد، در حالي که موتور پاسخ دهي تلاش مي کند به طور مستقيم به شما پاسخ دهد.
در برابر، موتورهاي Open Domain به پرسش هايي درباره «همه چيز» پاسخ مي دهند. طبيعي است که چنين موتورهايي نيازمند طراحي پيچيده تر و منابع گسترده تري هستند. سابقه تاريخي موتورهاي پاسخ دهي Open Domain کمتر از همتايان Closed-Domain خود است و دليل آن تا حد زيادي به نياز بالاتر اين ماشين ها به منابع اطلاعاتي باز مي گردد. موتورهاي Open Domain را مي توان اساساً فرزندان وب دانست، زيرا بيشتر آن ها يا به منابع آنلاين اتکا دارند يا از مجموعه بسته اي از اسناد استفاده مي کنند که گردآوري آن بدون وجود وب تقريباً ناممکن مي بود. ماشين هاي پاسخ دهي Open Domain و Closed-Domain هر دو ممکن است از مجموعه بسته اي از منابع استفاده کنند يا تمام مجموعه وب را براي توليد پاسخ مورد استفاده قرار دهند.
اما تاريخ موتورهاي پاسخ دهي از همان ابتدا با رخدادهاي عرصه هوش مصنوعي پيوند داشته است. برخي از نخستين سيستم هاي هوش مصنوعي، موتورهاي پاسخ دهي بودند: BASEBALL که پرسش هايي درباره ليگ بيس بال آمريکا پاسخ مي داد و LUNAR که به پرسش هايي درباره تحليل هاي زمين شناختي سنگ هاي کره ما پاسخ مي داد. اين سنگ ها در ماموريت آپولو از سطح ماه آورده شده بودند. هر دوي اين سيستم ها در دهه 60 ميلادي ساخته شدند.
برخي ديگر از سيستم هاي نخستين هوش مصنوعي، موتورهاي پاسخ دهي را به عنوان يکي از اجزاي خود داشتند. دو نمونه از اين سيستم ها، ELIZA و SHRDLU بودند. ELIZA مي توانست گفت و گويي با يک روان شناس را شبيه سازي کند و به قوانين بسيار ساده اي براي تشخيص دادن کلمات ساده در گفته هاي طرف مقابلش متکي بود. SHRDLU شبيه ساز حرکت يک روبات در يک جهان اسباب بازي بلوکي ساده بود و يک سيستم پاسخ دهي داشت که مي توانست به پرسش هايي درباره وضعيت اين روبات در آن جهان مجازي پاسخ دهد.
هرچند اين سيستم هاي نخستين تلاش هاي به نسبت موفقي بودند و ساز و کارهاي دروني پيچيده اي نيز داشتند، اما تکاپوي اصلي در اين زمينه در دهه هاي 70 و 80 با توسعه نظريه هاي زبان شناسي محاسباتي آغاز شد. يکي از سيستم هايي که در آن زمان و در پي آن جريان ساخته شد، UC (سر نام Unix Consultant) نام داشت که متکي بر مجموعه گسترده اي از متون مربوط به سيستم عامل يونيکس بود و به پرسش هايي درباره آن پاسخ مي داد.
طبيعتاً از اوائل دهه 1990، چرخش عمده اي در موتورهاي پاسخ دهي به سمت استفاده از وب به عنوان منبع اطلاعاتي ايجاد شد. اما هنوز هم موتورهاي پاسخ دهي آنلايني وجود دارند که از مجموعه بسته اي از اطلاعات به عنوان منبع استفاده مي کنند. استفاده از مجموعه بسته و محدودي از منابع در مقايسه با وب، ممکن است موجب بالا رفتن اطمينان پذيري منابع و پاسخ هاي حاصل از آن ها شود، اما استفاده از مزيت هاي شيوه هاي آماري و افزونگي اطلاعات را هم دشوار يا ناممکن مي سازد. بنابراين، انتخاب نوع منابع (وب يا منابع اختصاصي)، ناگزير انتخاب شيوه هاي پردازش پرسش ها و توليد پاسخ ها را نيز در پي دارد. استفاده از گنجينه اي وسيع تر، احتمال رخ دادن پاسخ مورد نظر در شکل هاي زباني و محتوايي مختلف را نيز افزايش مي دهد و کار پردازش زبان طبيعي (NLP) را براي ماشين ساده تر مي کند.
همچنين با فرض اين که پاسخ صحيح يک پرسش، رخدادهاي بيشتري دارد تا پاسخ هاي نادرست آن، احتمال بروز خطا در پاسخ دهي هم با استفاده از مجموعه بزرگ تري از منابع (مانند وب) کاهش مي يابد. با در نظر گرفتن تمام اين مسائل، نقش وب در تحول و گسترش موتورهاي پاسخ دهي بسيار کليدي است. کمترين نقش وب براي موتورهايي که هنوز از منابع بسته استفاده مي کنند، امکان دسترسي آسان و همگاني به آن ها است که در دوران ماقبل وب به اين سادگي موجود نبود.
کنفرانس بازيابي متن (TREC) که از سال 1992 تاکنون سالانه برگزار مي شود، از اواخر دهه 1990 مسابقه اي براي موتورهاي پاسخ دهي ايجاد کرد. سيستم هايي که در اين مسابقه شرکت مي کنند در معرض پرسش هايي در هر زمينه دلخواه قرار مي گيرند (يعني سيستم هايي Open-Domain) و بايد با استفاده از مجموعه اي از متون منبع که هر سال تغيير مي کند، به آن پرسش ها پاسخ گويند. از سال 2007، منابع «مغشوش» (از نظر زباني) نيز به مجموعه منابع اين مسابقه افزوده شده اند تا نزديکي بيشتري با زبان و تبادل اطلاعات روزمره در جامعه انساني پيدا کند.
در حقيقت در موتورهاي پاسخ دهي، نخستين قدم براي رسيدن به پاسخ، طبقه بندي پرسش است، نه تلاش مستقيم براي درک کردن آن. قرار دادن پرسش در دسته درست (مانند پرسش توصيفي، استفهامي و ...) نوع پاسخ را نيز مشخص مي کند. وقتي به جاي استفاده از موتور جست و جو براي يافتن منابعي که به پاسخ منتهي شوند، به طور مستقيم پرسش خود را به موتور پاسخ دهي ارائه مي کنيم، کلمه هايي که اضافه بر کليدواژه ها در متن پرسش مورد استفاده قرار مي دهيم (مانند کلمه هاي پرسشي) به موتور پاسخ دهي کمک مي کنند تا نوع پرسش را مشخص کند. سپس تکنيک هاي پردازش زبان طبيعي (NLP) مرحله به مرحله بر متن پرسش اعمال مي شوند و تلاش بر اين است که تا حد ممکن بيان ساده و کوتاه تري از پرسش (از منظر ماشين) به دست آيد.
تحليل پرسش و يافتن پاسخ به طور کلي ممکن است به يکي از دو شيوه سطحي يا عميق انجام شود. روش هاي سطحي بر کليدواژه ها و منابع گسترده اطلاعاتي تکيه بيشتري دارند و تلاش مي کنند ميان پرسش ارائه شده و پرسش ديگري که در منابع اطلاعاتي موجود است، تناظري برقرار کنند. با برقرار شدن چنين تناظري، پاسخ آماده اي براي آن وجود خواهد داشت.
روش هاي سطحي براي پرسش هاي ساده و آسان مناسب هستند. براي پاسخ گفتن به پرسش هاي پيچيده تر، روش هاي تحليلي عميق تري بايد مورد استفاده قرار گيرند که ممکن است شامل بازشناسي اسامي خاص، تشخيص دادن رابطه ها، تميز دادن کلمه هايي که ديکته يکسان و معناهاي متفاوت دارند، استنتاج منطقي و شيوه هاي ديگر شود. چنين سيستم هايي معمولاً از مجموعه آنتولوژي هايي مانند WordNet يا SUMO براي تکميل ارتباط ها و تعريف هاي معنايي استفاده مي کنند.
در مرحله پاياني، ارجاع به منابع اطلاعاتي صورت مي پذيرد و ممکن است حتي از موتورهاي جست و جو براي يافتن پاسخ استفاده شود. پاسخي که يک موتور پاسخ دهي مي دهد، بسته به نوع و کاربرد آن موتور ممکن است شامل متن، تصوير و حتي منابع صوتي و ويديويي باشد. معمولاً از لينک هايي به صفحه هاي مرتبط هم در کنار پاسخ ها استفاده مي شود (مانند شيوه موتور ask.com).
1- ارائه پاسخ ها به صورت بي درنگ: اين ماشين ها بايد بتوانند پاسخ را به شکل بي درنگ ارائه کنند، حتي هنگامي که تعداد کاربران زياد است. همچنين منابع اطلاعاتي جديد بايد فوراً به اين سيستم ها افزوده شوند تا پرسش هايي که مربوط به وقايع تازه هستند نيز پاسخ درست دريافت کنند.
2- دقت پاسخ ها: درست بودن پاسخ ها در يک ماشين پاسخ دهي اهميت بسيار زيادي دارد. وقتي با استفاده از واژه هاي کليدي در موتورهاي جست و جوي عادي مانند گوگل به دنبال منابع اطلاعاتي مي گرديد، همواره اين ذهنيت با شما است که موتور جست و جو يک ابزار کمکي (هرچند ابزاري بسيار توان مند) براي يافتن اطلاعات است و تلاش مي کند آدرس هايي را به شما نشان دهد که بيشترين تناظر را با کليدواژه هايي که وارد کرده ايد، داشته باشند.
اما ماشين پاسخ دهي در واقع هويتي مستقل دارد و با او به گفت و گو مي نشينيد. شما به زباني نزديک به زبان محاوره اي از اين موجود پرسشي را مي پرسيد و او هم بر مبناي فهم پرسش شما پاسخ مي دهد. بنابراين در مقام پاسخ گو، اين ماشين ها بايد مهم ترين پاسخ را نيز بلد باشند و در موقع ضرورت به کار برند: نمي دانم.
3- سودمندي: دانسته هاي موجود در يک ماشين پاسخ دهي بايد در راستاي نيازهاي ويژه کاربر جهت دهي شوند. آنتولوژي ها و دانش مربوط به حيطه هاي خاص بايد در اين سيستم ها موجود باشند. نمونه برداري سريع از دانش حيطه هاي تخصصي و همراه ساختن آن با آنتولوژي هاي باز، اهميت ويژه اي دارد.
4- کامل بودن پاسخ ها: در بسياري از موارد، پاسخ کامل يک پرسش در چندين منبع اطلاعاتي مختلف موجود است و ماشين پاسخ دهي ايده آل بايد بتواند اين اطلاعات را جمع آوري کرده و به شکل منسجمي در قالب پاسخ ارائه کند.
5- مرتبط بودن پاسخ به مفاد (context) خاص مورد نظر پرسش گر: براي رسيدن به چنين هدفي، ممکن است لازم باشد نوعي پرسش و پاسخ متقابل (کم و بيش به شکل يک گفت و گو) ميان ماشين و پرسش گر برقرار شود.
اگر کلمه هايي را در يک موتور جست و جو وارد کنيد و انبوهي از منابع غير سودمند به شما برگرداند، به احتمال زياد يکي از اين دو پندار به ذهن شما مي آيد: اين که با ماشين ناکارايي سر و کار داريد يا اين که شيوه درست کار کردن با آن را نمي دانيد.
اما اگر از يک موتور پاسخ گو بپرسيد: ماست چه رنگي است، به شما در درجه نخست آدرس و منبع نشان نمي دهد، بلکه خودش با استفاده از آن منابع جواب را به دست مي آورد و ارائه مي دهد. حال اگر جواب اين باشد که ماست سياه است، نتيجه گيري منطقي شما اين نيست که اين ماشين ناکارا است، بلکه احتمالاً خواهيد گفت، اين ماشين غير قابل اعتماد است. جايگاه ماشين هاي پاسخ دهي بسيار خطيرتر از موتورهاي جست و جو است.
راستي، شما مي دانيد چرا آسمان در طول روز آبي است و مثلاً زرد نيست؟
بياييد يک مثال ذهني را با هم مرور کنيم. با اين مثال مي خواهم نشان دهم که شمار زيادي از ما کاربران وب، ذهنيت کودکانه اي درباره موتورهاي پاسخ دهي داريم. مثال اين است: کودکي که آشنايي بسيار کمي با جامعه انساني و صنعتي دارد (يعني بسيار کمتر از متوسط کودکان اطراف شما)، نزد شما مي آيد و مي پرسد: خودرو چيست؟ شما اگر بخواهيد تنها با استفاده از کلمات مفهوم خودرو را براي او شرح دهيد، لابد آن را با ويژگي هاي آن و مهم تر از همه با کاربرد اصلي آن براي کودک خيالي مان شرح خواهيد داد. در ضمن اين توصيف ها، ناگزير به مفاهيم و پديده هايي اشاره خواهيد کرد که آن کودک با آن ها هم ناآشنا است و او از شما درباره آن ها نيز خواهد پرسيد. اگر دقت و حوصله کافي داشته باشيد، احتمالاً تلاش خواهيد کرد که مسير توصيف تان را پرسش هاي پياپي آن کودک تعيين نکند و سعي خواهيد کرد يک موضوع (مثلاً همان خودرو) را تاحدي در ذهن مخاطب خردسال تان روشن کنيد و سپس سراغ پرسش بعدي او برويد. در ضمن اين کار، البته در حال آموختن شيوه يادگرفتن و تفکيک مفاهيم از يکديگر نيز هستيد. اما به تدريج که پرسش هاي بيشتري را پاسخ مي دهيد، ذهن پرسش گر مخاطب شما شروع به برقرار کردن ارتباط هايي ميان پديده هاي تازه آموخته اش مي کند که به دليل اطلاعات ناقصش و تک کاناله بودن مجراي اطلاعاتش (گفته هاي شما و نه حتي تعداد محدودي عکس و فيلم و صدا)، بيشتر اين ارتباط ها نادرستند. به عنوان مثال، ممکن است درباره قله هاي مرتفع جهان برايش بگوييد، مثلاً از قله دماوند، و بعد درباره کوه نوردي و صعود به قله ها بگوييد.
حالا کودک داستان ما يادش مي آيد که به او گفته ايد خودرو وسيله اي است که آدم ها سوارش مي شوند و به جاهاي مختلف مي روند. ممکن است از شما بپرسد: چرا براي بالا رفتن از قله دماوند از خودرو استفاده نمي کنند؟ کار راحتي بايد باشد. سوار ماشينتان شويد و برانيد تا نوک قله دماوند. اگر بگوييد تا آنجا جاده نيست، ممکن است با ذهن کودکانه اش بگويد: خوب چرا روي کوه دماوند جاده نمي کشند؟
اشتباه هاي زباني که به قياس هاي نادرست منطقي منجر مي شوند، از ديگر خطاهاي شناختي کودک مورد نظر هستند. مثال: در باز است، باز پرنده است، پس در پرنده است. در زبان علوم کامپيوتر (و فلسفه) اين مسئله به حوزه آنتولوژي مورد استفاده مربوط مي شود، متفاوت (و شايد متعامد) ظاهر مي شود و براي استنتاج درست بايد بتوان هر واژه را از درون يک جمله به آنتولوژي مناسب آن مربوط کرد.
متناظر دانستن موتورهاي پاسخ دهي با کودک خيالي مان، شايد روشن گر بسياري از دشواري هاي ساختن چنين سازه هايي باشد. اما هدف من در اينجا استفاده اي انعکاسي از اين مثال است. آن کودک شايد خود ما هستيم، در ارتباط با پندار ساده مان درباره موتورهاي پاسخ دهي. موتور پاسخ دهي چيست؟ چيزي است که به پرسش ها پاسخ مي دهد. واقعاً؟ چه خوب، پس برويم و تمام پرسش ها را از او بپرسيم: جهان کي به پايان مي رسد؟راه سريع و آسان و قانوني پولدار شدن چيست؟ چنين پرسش هايي البته کاريکاتوري هستند از چيزهايي که ممکن است واقعاً از چنين موتورهايي بپرسيم، اما شايد نمايانگر درستي باشند از هيجان و نگراني اي که درباره اين ساختارها و به طور کلي درباره هوش ماشيني داريم: آيا مي توان ماشين هايي ساخت که به توليد آگاهي (Knowledge) بپردازند؟ جنبه مهيب اين پرسش آن است که اين ماشين ها توانايي بسيار بالايي در پردازش و ذخيره سازي دارند و اگر قدرت توليد آگاهي را هم پيدا کنند، در آن صورت، ارزش انديشه انساني در مقام قياس چه خواهد بود؟
ماشين هايي که تاکنون با آن ها سر و کار داشته ايم، در مسير توليد آگاهي به ما کمک کرده اند، اما کارشان عمدتاً توليد، ذخيره سازي، پردازش و استخراج داده ها بوده، نه آگاهي. گوياترين داده ها و نمودارها هم تا وقتي يک چشم انساني بر آن ها ننگرد و ذهني انساني درباره شان نيانديشد، آگاهي به شمار نمي روند (هنوز نه!). موتورهاي پاسخ دهي شايد نخستين مثال هاي ملموس براي عموم کاربران وب باشند که اين پرسش نهفته را به سطح هوشياري مي آورند: آيا بايد سرانجام تسليم ماشين شويم؟ با وضعيت فعلي اين عرصه، شايد زياد هم لازم نباشد نگران شويم. اما پيوسته لازم است جايگاه اين ماشين ها را زير نظر بگيريم و شناخت مان را از آن ها با واقعيت تطبيق دهيم. آيا روزي خواهيم توانست سوار بر آن ها از قله ها بالا رويم، بي آن که خودمان از کوه نوردي ناتوان شده باشيم؟
منبع: نشريه شبکه- ش 102
پاسخ کلي شايد اين باشد که با ظهور وب و موتورهاي جست و جو، يادمان رفت که به اندازه کافي روي موتورهاي پاسخ دهي کار کنيم. شايد به اندازه کافي متوجه اهميت و پتانسيل هاي آن ها نبوده ايم.
جست و جوي وب به تنهايي چنان سودمند و البته دشوار و پيچيده بوده و هست که ذهن ها را از توجه کافي به مسئله موتورهاي پاسخ دهي منحرف کرده است. اما نه؛ شايد لازم بود موتورهاي پاسخ دهي به درجه اي مشخص از رشد برسند تا زمينه را براي ظهور موتورهاي پاسخ دهي فراهم آورند.
از سوي ديگر، شاهد دگرديسي آهسته و پيوسته موتورهاي جست و جو نيز هستيم. به عنوان مثال، مي توانيد از گوگل به زبان محاوره اي بپرسيد: الان در برلين ساعت چند است؟ (البته به انگليسي) و پاسخ خود را نه در قالب لينکي به يک صفحه وب، بلکه به طور مستقيم از خود گوگل بگيريد. مثال ديگر، ماشين حساب گوگل است که محاسبات معمولي و تبديل واحدها را از همان کادر جست و جوي ساده گوگل قبول مي کند.
با وجود تمام اين ها، ايده موتور پاسخ دهي به کل متفاوت از موتور جست و جو است. موتور جست و جو قرار است به شما کمک کند تا اطلاعات يا پاسخ مورد نظرتان را بيابيد، در حالي که موتور پاسخ دهي تلاش مي کند به طور مستقيم به شما پاسخ دهد.
طبقه بندي کلي
در برابر، موتورهاي Open Domain به پرسش هايي درباره «همه چيز» پاسخ مي دهند. طبيعي است که چنين موتورهايي نيازمند طراحي پيچيده تر و منابع گسترده تري هستند. سابقه تاريخي موتورهاي پاسخ دهي Open Domain کمتر از همتايان Closed-Domain خود است و دليل آن تا حد زيادي به نياز بالاتر اين ماشين ها به منابع اطلاعاتي باز مي گردد. موتورهاي Open Domain را مي توان اساساً فرزندان وب دانست، زيرا بيشتر آن ها يا به منابع آنلاين اتکا دارند يا از مجموعه بسته اي از اسناد استفاده مي کنند که گردآوري آن بدون وجود وب تقريباً ناممکن مي بود. ماشين هاي پاسخ دهي Open Domain و Closed-Domain هر دو ممکن است از مجموعه بسته اي از منابع استفاده کنند يا تمام مجموعه وب را براي توليد پاسخ مورد استفاده قرار دهند.
کمي تاريخ
اما تاريخ موتورهاي پاسخ دهي از همان ابتدا با رخدادهاي عرصه هوش مصنوعي پيوند داشته است. برخي از نخستين سيستم هاي هوش مصنوعي، موتورهاي پاسخ دهي بودند: BASEBALL که پرسش هايي درباره ليگ بيس بال آمريکا پاسخ مي داد و LUNAR که به پرسش هايي درباره تحليل هاي زمين شناختي سنگ هاي کره ما پاسخ مي داد. اين سنگ ها در ماموريت آپولو از سطح ماه آورده شده بودند. هر دوي اين سيستم ها در دهه 60 ميلادي ساخته شدند.
برخي ديگر از سيستم هاي نخستين هوش مصنوعي، موتورهاي پاسخ دهي را به عنوان يکي از اجزاي خود داشتند. دو نمونه از اين سيستم ها، ELIZA و SHRDLU بودند. ELIZA مي توانست گفت و گويي با يک روان شناس را شبيه سازي کند و به قوانين بسيار ساده اي براي تشخيص دادن کلمات ساده در گفته هاي طرف مقابلش متکي بود. SHRDLU شبيه ساز حرکت يک روبات در يک جهان اسباب بازي بلوکي ساده بود و يک سيستم پاسخ دهي داشت که مي توانست به پرسش هايي درباره وضعيت اين روبات در آن جهان مجازي پاسخ دهد.
هرچند اين سيستم هاي نخستين تلاش هاي به نسبت موفقي بودند و ساز و کارهاي دروني پيچيده اي نيز داشتند، اما تکاپوي اصلي در اين زمينه در دهه هاي 70 و 80 با توسعه نظريه هاي زبان شناسي محاسباتي آغاز شد. يکي از سيستم هايي که در آن زمان و در پي آن جريان ساخته شد، UC (سر نام Unix Consultant) نام داشت که متکي بر مجموعه گسترده اي از متون مربوط به سيستم عامل يونيکس بود و به پرسش هايي درباره آن پاسخ مي داد.
طبيعتاً از اوائل دهه 1990، چرخش عمده اي در موتورهاي پاسخ دهي به سمت استفاده از وب به عنوان منبع اطلاعاتي ايجاد شد. اما هنوز هم موتورهاي پاسخ دهي آنلايني وجود دارند که از مجموعه بسته اي از اطلاعات به عنوان منبع استفاده مي کنند. استفاده از مجموعه بسته و محدودي از منابع در مقايسه با وب، ممکن است موجب بالا رفتن اطمينان پذيري منابع و پاسخ هاي حاصل از آن ها شود، اما استفاده از مزيت هاي شيوه هاي آماري و افزونگي اطلاعات را هم دشوار يا ناممکن مي سازد. بنابراين، انتخاب نوع منابع (وب يا منابع اختصاصي)، ناگزير انتخاب شيوه هاي پردازش پرسش ها و توليد پاسخ ها را نيز در پي دارد. استفاده از گنجينه اي وسيع تر، احتمال رخ دادن پاسخ مورد نظر در شکل هاي زباني و محتوايي مختلف را نيز افزايش مي دهد و کار پردازش زبان طبيعي (NLP) را براي ماشين ساده تر مي کند.
همچنين با فرض اين که پاسخ صحيح يک پرسش، رخدادهاي بيشتري دارد تا پاسخ هاي نادرست آن، احتمال بروز خطا در پاسخ دهي هم با استفاده از مجموعه بزرگ تري از منابع (مانند وب) کاهش مي يابد. با در نظر گرفتن تمام اين مسائل، نقش وب در تحول و گسترش موتورهاي پاسخ دهي بسيار کليدي است. کمترين نقش وب براي موتورهايي که هنوز از منابع بسته استفاده مي کنند، امکان دسترسي آسان و همگاني به آن ها است که در دوران ماقبل وب به اين سادگي موجود نبود.
کنفرانس بازيابي متن (TREC) که از سال 1992 تاکنون سالانه برگزار مي شود، از اواخر دهه 1990 مسابقه اي براي موتورهاي پاسخ دهي ايجاد کرد. سيستم هايي که در اين مسابقه شرکت مي کنند در معرض پرسش هايي در هر زمينه دلخواه قرار مي گيرند (يعني سيستم هايي Open-Domain) و بايد با استفاده از مجموعه اي از متون منبع که هر سال تغيير مي کند، به آن پرسش ها پاسخ گويند. از سال 2007، منابع «مغشوش» (از نظر زباني) نيز به مجموعه منابع اين مسابقه افزوده شده اند تا نزديکي بيشتري با زبان و تبادل اطلاعات روزمره در جامعه انساني پيدا کند.
ساز و کار دروني و شيوه ها
در حقيقت در موتورهاي پاسخ دهي، نخستين قدم براي رسيدن به پاسخ، طبقه بندي پرسش است، نه تلاش مستقيم براي درک کردن آن. قرار دادن پرسش در دسته درست (مانند پرسش توصيفي، استفهامي و ...) نوع پاسخ را نيز مشخص مي کند. وقتي به جاي استفاده از موتور جست و جو براي يافتن منابعي که به پاسخ منتهي شوند، به طور مستقيم پرسش خود را به موتور پاسخ دهي ارائه مي کنيم، کلمه هايي که اضافه بر کليدواژه ها در متن پرسش مورد استفاده قرار مي دهيم (مانند کلمه هاي پرسشي) به موتور پاسخ دهي کمک مي کنند تا نوع پرسش را مشخص کند. سپس تکنيک هاي پردازش زبان طبيعي (NLP) مرحله به مرحله بر متن پرسش اعمال مي شوند و تلاش بر اين است که تا حد ممکن بيان ساده و کوتاه تري از پرسش (از منظر ماشين) به دست آيد.
تحليل پرسش و يافتن پاسخ به طور کلي ممکن است به يکي از دو شيوه سطحي يا عميق انجام شود. روش هاي سطحي بر کليدواژه ها و منابع گسترده اطلاعاتي تکيه بيشتري دارند و تلاش مي کنند ميان پرسش ارائه شده و پرسش ديگري که در منابع اطلاعاتي موجود است، تناظري برقرار کنند. با برقرار شدن چنين تناظري، پاسخ آماده اي براي آن وجود خواهد داشت.
روش هاي سطحي براي پرسش هاي ساده و آسان مناسب هستند. براي پاسخ گفتن به پرسش هاي پيچيده تر، روش هاي تحليلي عميق تري بايد مورد استفاده قرار گيرند که ممکن است شامل بازشناسي اسامي خاص، تشخيص دادن رابطه ها، تميز دادن کلمه هايي که ديکته يکسان و معناهاي متفاوت دارند، استنتاج منطقي و شيوه هاي ديگر شود. چنين سيستم هايي معمولاً از مجموعه آنتولوژي هايي مانند WordNet يا SUMO براي تکميل ارتباط ها و تعريف هاي معنايي استفاده مي کنند.
در مرحله پاياني، ارجاع به منابع اطلاعاتي صورت مي پذيرد و ممکن است حتي از موتورهاي جست و جو براي يافتن پاسخ استفاده شود. پاسخي که يک موتور پاسخ دهي مي دهد، بسته به نوع و کاربرد آن موتور ممکن است شامل متن، تصوير و حتي منابع صوتي و ويديويي باشد. معمولاً از لينک هايي به صفحه هاي مرتبط هم در کنار پاسخ ها استفاده مي شود (مانند شيوه موتور ask.com).
چالش ها
1- ارائه پاسخ ها به صورت بي درنگ: اين ماشين ها بايد بتوانند پاسخ را به شکل بي درنگ ارائه کنند، حتي هنگامي که تعداد کاربران زياد است. همچنين منابع اطلاعاتي جديد بايد فوراً به اين سيستم ها افزوده شوند تا پرسش هايي که مربوط به وقايع تازه هستند نيز پاسخ درست دريافت کنند.
2- دقت پاسخ ها: درست بودن پاسخ ها در يک ماشين پاسخ دهي اهميت بسيار زيادي دارد. وقتي با استفاده از واژه هاي کليدي در موتورهاي جست و جوي عادي مانند گوگل به دنبال منابع اطلاعاتي مي گرديد، همواره اين ذهنيت با شما است که موتور جست و جو يک ابزار کمکي (هرچند ابزاري بسيار توان مند) براي يافتن اطلاعات است و تلاش مي کند آدرس هايي را به شما نشان دهد که بيشترين تناظر را با کليدواژه هايي که وارد کرده ايد، داشته باشند.
اما ماشين پاسخ دهي در واقع هويتي مستقل دارد و با او به گفت و گو مي نشينيد. شما به زباني نزديک به زبان محاوره اي از اين موجود پرسشي را مي پرسيد و او هم بر مبناي فهم پرسش شما پاسخ مي دهد. بنابراين در مقام پاسخ گو، اين ماشين ها بايد مهم ترين پاسخ را نيز بلد باشند و در موقع ضرورت به کار برند: نمي دانم.
3- سودمندي: دانسته هاي موجود در يک ماشين پاسخ دهي بايد در راستاي نيازهاي ويژه کاربر جهت دهي شوند. آنتولوژي ها و دانش مربوط به حيطه هاي خاص بايد در اين سيستم ها موجود باشند. نمونه برداري سريع از دانش حيطه هاي تخصصي و همراه ساختن آن با آنتولوژي هاي باز، اهميت ويژه اي دارد.
4- کامل بودن پاسخ ها: در بسياري از موارد، پاسخ کامل يک پرسش در چندين منبع اطلاعاتي مختلف موجود است و ماشين پاسخ دهي ايده آل بايد بتواند اين اطلاعات را جمع آوري کرده و به شکل منسجمي در قالب پاسخ ارائه کند.
5- مرتبط بودن پاسخ به مفاد (context) خاص مورد نظر پرسش گر: براي رسيدن به چنين هدفي، ممکن است لازم باشد نوعي پرسش و پاسخ متقابل (کم و بيش به شکل يک گفت و گو) ميان ماشين و پرسش گر برقرار شود.
اگر کلمه هايي را در يک موتور جست و جو وارد کنيد و انبوهي از منابع غير سودمند به شما برگرداند، به احتمال زياد يکي از اين دو پندار به ذهن شما مي آيد: اين که با ماشين ناکارايي سر و کار داريد يا اين که شيوه درست کار کردن با آن را نمي دانيد.
اما اگر از يک موتور پاسخ گو بپرسيد: ماست چه رنگي است، به شما در درجه نخست آدرس و منبع نشان نمي دهد، بلکه خودش با استفاده از آن منابع جواب را به دست مي آورد و ارائه مي دهد. حال اگر جواب اين باشد که ماست سياه است، نتيجه گيري منطقي شما اين نيست که اين ماشين ناکارا است، بلکه احتمالاً خواهيد گفت، اين ماشين غير قابل اعتماد است. جايگاه ماشين هاي پاسخ دهي بسيار خطيرتر از موتورهاي جست و جو است.
تهديد؟
راستي، شما مي دانيد چرا آسمان در طول روز آبي است و مثلاً زرد نيست؟
بياييد يک مثال ذهني را با هم مرور کنيم. با اين مثال مي خواهم نشان دهم که شمار زيادي از ما کاربران وب، ذهنيت کودکانه اي درباره موتورهاي پاسخ دهي داريم. مثال اين است: کودکي که آشنايي بسيار کمي با جامعه انساني و صنعتي دارد (يعني بسيار کمتر از متوسط کودکان اطراف شما)، نزد شما مي آيد و مي پرسد: خودرو چيست؟ شما اگر بخواهيد تنها با استفاده از کلمات مفهوم خودرو را براي او شرح دهيد، لابد آن را با ويژگي هاي آن و مهم تر از همه با کاربرد اصلي آن براي کودک خيالي مان شرح خواهيد داد. در ضمن اين توصيف ها، ناگزير به مفاهيم و پديده هايي اشاره خواهيد کرد که آن کودک با آن ها هم ناآشنا است و او از شما درباره آن ها نيز خواهد پرسيد. اگر دقت و حوصله کافي داشته باشيد، احتمالاً تلاش خواهيد کرد که مسير توصيف تان را پرسش هاي پياپي آن کودک تعيين نکند و سعي خواهيد کرد يک موضوع (مثلاً همان خودرو) را تاحدي در ذهن مخاطب خردسال تان روشن کنيد و سپس سراغ پرسش بعدي او برويد. در ضمن اين کار، البته در حال آموختن شيوه يادگرفتن و تفکيک مفاهيم از يکديگر نيز هستيد. اما به تدريج که پرسش هاي بيشتري را پاسخ مي دهيد، ذهن پرسش گر مخاطب شما شروع به برقرار کردن ارتباط هايي ميان پديده هاي تازه آموخته اش مي کند که به دليل اطلاعات ناقصش و تک کاناله بودن مجراي اطلاعاتش (گفته هاي شما و نه حتي تعداد محدودي عکس و فيلم و صدا)، بيشتر اين ارتباط ها نادرستند. به عنوان مثال، ممکن است درباره قله هاي مرتفع جهان برايش بگوييد، مثلاً از قله دماوند، و بعد درباره کوه نوردي و صعود به قله ها بگوييد.
حالا کودک داستان ما يادش مي آيد که به او گفته ايد خودرو وسيله اي است که آدم ها سوارش مي شوند و به جاهاي مختلف مي روند. ممکن است از شما بپرسد: چرا براي بالا رفتن از قله دماوند از خودرو استفاده نمي کنند؟ کار راحتي بايد باشد. سوار ماشينتان شويد و برانيد تا نوک قله دماوند. اگر بگوييد تا آنجا جاده نيست، ممکن است با ذهن کودکانه اش بگويد: خوب چرا روي کوه دماوند جاده نمي کشند؟
اشتباه هاي زباني که به قياس هاي نادرست منطقي منجر مي شوند، از ديگر خطاهاي شناختي کودک مورد نظر هستند. مثال: در باز است، باز پرنده است، پس در پرنده است. در زبان علوم کامپيوتر (و فلسفه) اين مسئله به حوزه آنتولوژي مورد استفاده مربوط مي شود، متفاوت (و شايد متعامد) ظاهر مي شود و براي استنتاج درست بايد بتوان هر واژه را از درون يک جمله به آنتولوژي مناسب آن مربوط کرد.
متناظر دانستن موتورهاي پاسخ دهي با کودک خيالي مان، شايد روشن گر بسياري از دشواري هاي ساختن چنين سازه هايي باشد. اما هدف من در اينجا استفاده اي انعکاسي از اين مثال است. آن کودک شايد خود ما هستيم، در ارتباط با پندار ساده مان درباره موتورهاي پاسخ دهي. موتور پاسخ دهي چيست؟ چيزي است که به پرسش ها پاسخ مي دهد. واقعاً؟ چه خوب، پس برويم و تمام پرسش ها را از او بپرسيم: جهان کي به پايان مي رسد؟راه سريع و آسان و قانوني پولدار شدن چيست؟ چنين پرسش هايي البته کاريکاتوري هستند از چيزهايي که ممکن است واقعاً از چنين موتورهايي بپرسيم، اما شايد نمايانگر درستي باشند از هيجان و نگراني اي که درباره اين ساختارها و به طور کلي درباره هوش ماشيني داريم: آيا مي توان ماشين هايي ساخت که به توليد آگاهي (Knowledge) بپردازند؟ جنبه مهيب اين پرسش آن است که اين ماشين ها توانايي بسيار بالايي در پردازش و ذخيره سازي دارند و اگر قدرت توليد آگاهي را هم پيدا کنند، در آن صورت، ارزش انديشه انساني در مقام قياس چه خواهد بود؟
ماشين هايي که تاکنون با آن ها سر و کار داشته ايم، در مسير توليد آگاهي به ما کمک کرده اند، اما کارشان عمدتاً توليد، ذخيره سازي، پردازش و استخراج داده ها بوده، نه آگاهي. گوياترين داده ها و نمودارها هم تا وقتي يک چشم انساني بر آن ها ننگرد و ذهني انساني درباره شان نيانديشد، آگاهي به شمار نمي روند (هنوز نه!). موتورهاي پاسخ دهي شايد نخستين مثال هاي ملموس براي عموم کاربران وب باشند که اين پرسش نهفته را به سطح هوشياري مي آورند: آيا بايد سرانجام تسليم ماشين شويم؟ با وضعيت فعلي اين عرصه، شايد زياد هم لازم نباشد نگران شويم. اما پيوسته لازم است جايگاه اين ماشين ها را زير نظر بگيريم و شناخت مان را از آن ها با واقعيت تطبيق دهيم. آيا روزي خواهيم توانست سوار بر آن ها از قله ها بالا رويم، بي آن که خودمان از کوه نوردي ناتوان شده باشيم؟
نمونه هايي از موتورهاي پاسخ دهي
Brainboost
TeL QAS
True Knowledge
WolframAlpha
منبع: نشريه شبکه- ش 102
/ج
مقالات مرتبط
تازه های مقالات
ارسال نظر
در ارسال نظر شما خطایی رخ داده است
کاربر گرامی، ضمن تشکر از شما نظر شما با موفقیت ثبت گردید. و پس از تائید در فهرست نظرات نمایش داده می شود
نام :
ایمیل :
نظرات کاربران
{{Fullname}} {{Creationdate}}
{{Body}}