بخشی از مقاله
هوشمندسازی منابع داده برای جامعیت اطلاعات
چکیده
برای ایجاد یک سیستم یکپارچه، طراح سیستم باید شمای واسط را مشخص کرده و تعاریفی از منابع را ارائه دهد. توصیف منبع حاوی شمای منبع (که محتویات منبع را نشان می دهد) و رابطه بین عناصر متناظر شمای منبع با شمای واسط است. ایجاد این روابط به صورت دستی هم کاری طاقت فرسا است و هم احتمال بوجود آمدن خطا در آن زیاد می باشد و عملاﹰ ثابت شده که استفاده از روش دستی در سیستمهایی با اطلاعات زیاد یک تنگنا در کار محسوب می شود. در این مقاله روشی جدید برای آموزش خودکار نگاشت بین شمای منبع و شمای واسط ارائه شده است. در این روش نگاشت یک به یک و برخی نگاشت های - n ١ خاص میان عناصر دو شما قابل انجام است. شمای منبع، جستجو و بررسی می شود و نگاشتها استخراج می گردد. روش ارائه شده مبتنی بر هم اندیشی اجزا تشکیل دهنده است که هرجز مسئله را به گونه ای متفاوت با جز دیگر می نگرد، سپس پیش بینی اجزا با استفاده از یک ابر یادگیر (Meta Learner) جمع می شود .
کلمات کلیدی : یکپارچه سازی اطلاعات، یادگیری ، هوشمندسازی ، نگاشت شما
١) مقدمه
رشد اطلاعات موجود به صورت برخط باعث انجام تحقیقات متعدد بر روی توسعه سیستم های جامعیت اطلاعات ]٨,٧,٦,٥,٤[شده است. یک سیستم جامعیت اطلاعات یک واسط متحدالشکل برای چندین منبع داده ایجاد می کند.
سیستم در مقابل یک درخواست فرمول بندی شده کاربر به داده ها از منابع دسترسی پیدا می کند و آنها را ترکیب کرده و پاسخ را تولید می کند.
برای ایجاد یک سیستم جامع بایستی شمای واسط و توصیفات منابع داده ای مشخص و معین شوند. منظور از توصیفات منبع توضیح محتویات منبع و بیان نحوه نگاشت (mapping) اجزای متناظر بین شمای منبع و شمای واسط است. در این مقاله به روابط یک به یک و دسته ای خاص از روابط - n ١ پرداخته شده است.
در روش ارائه شده اجزا یاد می گیرند، بطور خودکار نگاشتهای متناظر را پیدا کنند. هر جز به مساله از زاویه ای متفاوت نگاه می کند و سپس یافته های خود را با یکدیگر ترکیب می کنند. در این روش نگاشت معنایی بین شمای منابع و شمای واسط انجام می گیرد.
اساساﹰ توصیف منابع یکی از مشکلات و معضلات اصلی ایجاد سیستم های یکپارچه ای است که منابع زیادی را پرس و جو می کنند. انجام این مهم بصورت دستی کاری بسیار طاقت فرسا و همراه با خطا خواهد بود. با مشترک شدن داده های روی WWW و مطرح شدن مباحثی همچون XML، موضوع تطبیق و تلفیق شماها پیچیده تر شده است.
اصل روش ارائه شده که به تفضیل تشریح خواهد شد این است که پس از آنکه یکسری منابع بطور دستی به شمای واسط نگاشت شدند اجزا یادگیرنده باید اطلاعات معنادار و مهم را از این نگاشت استخراج و جمع آوری نموده و نگاشت هایی را برای منابع بعدی بطور هوشمندانه پیشنهاد کند.
مثال: سیستم یکپارچه سازی اطلاعاتی را در نظر بگیرید که به مشتریان برای پیدا کردن ماشین دلخواه آنان کمک می کند. در شمای واسط صفات خاصه زیر جهت فروش ماشین وجود دارد: نام ماشین، مدل، رنگ ، قیمت ، کارکرد، تلفن تماس. فر ض کنید منبع اطلاعاتی یک صفحه web و شمای واسط رابطه ای است. شمای منبع باید به شمای واسط نگاشت شود و این موضوع در شکل١ نشان داده شده است.
فرض کنید برای منبع اول بصورت دستی این نگاشت انجام گیرد. تناظر بین صفات خاصه در شمای منبع و شمای واسط مشخص شده است. از چنین نگاشتی ماشین یادگیر نکاتی را جمع آوری می کند . به عنوان مثال در منبع حاضر می تواند نمونه های زیادی را پیدا کند که نام، مدل، و … ماشین را مشخص کرده اند و می تواند از منابع دیگر بدنبال چنین مشخصاتی از ماشین ها باشد. همچنین می تواند از نام صفات خاصه مواردی را استخراج کند.مثلاﹰ agent-phone, Contact- tel دو صفت خاصه نگاشت شده به یکدیگر هستند و سیستم می تواند متوجه شود که Phone و Tel معادل هستند. ماشین یادگیر همچنین می تواند از روی ویژگی داده مطالبی را استخراج کند. مثلاﹰ اگر شماره تلفن تماس به کرات تکرار شده باشد نشانگر آن است که تلفن داده شده تلفن دفتر فروش است نه شخص فروشنده. در حالت کلی انواع اطلاعات را یک ماشین یادگیر می تواند استخراج کند. برای اینکه ماشین یادگیر بتواند اطلاعات زیادی را از این نگاشت دستی استخراج نماید باید از روشهای یادگیری مختلف استفاده نماید. چرا که هر روش یکسری اطلاعات را استخراج می نماید. پس از اینکه یادگیرها خروجی های خود را تولید نمودند این اطلاعات توسط یک یادگیر مرجع یا ابر یادگیر ترکیب میشود.
نکته قابل ذکر این است که این یادگیری در توصیف منبع با مسئله یادگیری پوشه (wrapper) تفاوت دارد. زیرا پوشه وظیفه اش تبدیل ساختار داده ای منبع به ساختار داده ای واسط است اما در اینجا هدف پیدا کردن نگاشت معنایی بین دو شما است.
کارهای انجام شده در تناظرسازی بین شماهای منبع و شمای واسط را می توان به دو دسته اصلی ایده های مبتنی بر قاعده ]١,١٠,١١[ و مبتنی بر آموزش ]٩,١٢[ تقسیم نمود. روش ] Semint ٩ [ از یادگیرهای مبتنی بر شبکه عصبی استفاده می نماید. روش ] ILA١٢[متناظرسازی شماها را مبتنی بر مقایسه عناصری که بصورت یکسان در هر دو شما شناخته می شوند قرار می دهد. در هر دو روش فوق از یک نوع یادگیر برای یادگیری استفاده می شود، بنابراین قابلیت کاربردی ندارد. ILA زمانی قابل استفاده است که منابع عناصر یکسانی داشته باشند و این عناصر قابل شناسایی باشد. شبکه های عصبی بکار گرفته شده در روش Semint نیز برای عناصر متنی کارا نیستند.
٢) متناظر نمودن (Matching) شماها
٢-١- تعریف شما
یک شما را بصورت مجموعه ای از درختها (جنگل) تعریف می کنیم. هر درخت نشان دهنده یک رابطه است. با توجه به عمومی بودن مفهوم درخت داده های ساخت یافته و مبتنی بر XML را میتوان به کمک این ساختمان داده ارائه کرد. به عنوان مثال در شکل ٢ درختهای شمای واسط و شمای منبع ارائه شده است. هر گره درخت را عنصر شما می نامیم. عنصر شما می تواند دارای فرزند باشد. اگر A و B دو عنصر شما و B فرزند A باشد معنای آن این است که مقدار B در A می تواند موجود باشد. به عنوان مثال آدرس می تواند بصورت متنی و یا می تواند بصورت تفکیک شده بصورت شهر - خیابان اصلی- خیابان فرعی و پلاک مطرح شود (شکل ٣).
٢-٢- مشکلات متناظر سازی
مشکل اصلی در متناظر نمودن شماها پیدا کردن نگاشت بین آنها است. ساده ترین نوع نگاشت ، نگاشت ١-١ بین یک گره از شمای منبع و یک گره از شمای واسط است. در شکل ١ چنین نگاشتی نشان داده شده است. نوع دیگر نگاشت که پیچیدگی بیشتری هم دارد نگاشت -n١ است. در این نوع نگاشت یک عنصر از شمای منبع به n عنصر از شمای واسط نگاشت می شود. همچنین ممکن است n عنصر از شمای منبع به یک عنصر از شمای واسط نگاشت شود. بدیهی است حالات نگاشت -n١ می تواند بسیار متعدد باشد. در این مقاله نگاشت ١-١ و از نگاشتهای -n١ تنها حالاتی را در نظر می گیریم که نگاشت می تواند از شمای منبع با پردازش های مشخص به شمای واسط انجام و اطلاع و داده اضافی برای این منظور مورد نیاز نیست. این نگاشت بین عناصر برگ درخت های دو شما انجام می شود. چنانچه نگاشت بخواهد در سطح بالاتر انجام گیرد روش ارائه شده باید توسعه داده شود. در چنین حالتی درگیر ساختمان داده نیز خواهیم شد.
٣- ایده اصلی
دو مرحله اصلی برای نگاشت مفهومی وجود دارد. مرحله آموزش و مرحله کلاس بندی. ابتدا عناصر شمای واسط کلاسه بندی می شوند و سپس به هر عنصر شمای واسط یک برچسب تعلق می گیرد. عناصر شمای منبع کلاسه بندی شده و به برچسب متناسب در شمای واسط متناظر میگردد.
مرحله آموزش:
داده اولیه مورد نیاز برای آموزش با نگاشت بین عناصر شمای منبع نمونه (مثلاﹰ (p با عناصر شمای واسط ایجاد می گردد. این نگاشت بصورت دستی انجام میشود. به عنوان مثال در فروشگاه اتومبیل معرفی شده در شکل ٤- الف این نگاشت ارائه شده است.
سپس یک مجموعه از ماشین ها از منبع p استخراج می شود(شکل ٤ - ب) . با استفاده از این داده های استخراج شده یادگیرها آموزش داده می شوند. به این ترتیب هر یادگیرها آموزش می بیند که هر گاه یک ماشین جدید وارد شد بفهمد که هر عنصر آن متناظر با کدام عناصر از شمای واسط است. بدلیل آنکه هدف تمام یادگیرها یکسان است ولی هر کدام از روی اطلاعات متفاوتی که در دسترس دارند داده های نگاشت را استخراج می کنند بنابراین هر یادگیر اطلاعات را به روش مختلفی پردازش می کند. برای مثال یادگیرنده ١L تنها برخی از نمونه ها را می بیند (شکل ٤- ج)
و بر همین اساس نگاشت را انجام می دهد. ,A>١<a نشان دهنده آن است که اگر یک منبع دارای نمونه ١a بود آن عنصر به A نگاشت می شود. این موضوع توسط ١L قابل نتیجه گیری است زیرا بین a و A متناظر ایجاد شده است.
یادگیرنده ٢L تنها با اسم عناصر سروکار دارد و تنها <a , A> را می بیند و در نتیجه می فهمد وقتی عنصری به نام a آمد با A متناظر است.