بخشی از مقاله
چکیده
امروزه اکثر افراد از گوشیهای تلفن همراه جهت انجام بسیاری از کارهای خود استفاده میکنند. از این رو، نیاز به برنامه کاربردی بر روی گوشی همراه که قادر باشد در زمینههای درمانی و پزشکی، به افراد سرویس دهد، میباشد تا افراد با استفاده از دستگاه گوشی خود و وای فای از امکانات پزشکی بهره مند شوند. در این مقاله به ارائه مدلی برای کشف و دستهبندی وبسرویسها و سرویسهای داده گرای1 پزشکی در محیط های فراگیر و محاسبات ابری، مناسب برای گوشیهای هوشمند پرداخته شده است.
روشی که برای دستهبندی سرویسها ارائه شده است از دو مرحله پردازش متنی و دستهبندی تشکیل شده است. مرحله پردازش متنی با به کارگیری پایگاه داده wordnet و در مرحله دستهبندی از الگوریتم مبتنی بر کیفیت2 استفاده شده است. برای ارزیابی دقت روش پیشنهای، از روش دقت و فراخوانی3 استفاده شده و نتایج حاصل با روشی دیگری که برای دستهبندی سرویسها ارائه شده و مبتنی بر 4NGD است، مقایسه شده است مه نتایج نشان میدهد روش پیشنهادی با دقت بهتری دستهبندی را انجام میدهد.
برنامه کاربردی تعریف شده، سه نوع سرویس اورژانسی، مشاورهای و نوبتدهی را در اختیار کاربران خود قرار میدهد به اینصورت که کاربر درخواست خود را که شامل نوع بیماری، نوع سرویس و موقعیت خود میباشد را به سرویس محاسبات ابری پزشکی ارسال کرده و سرویسهای مناسب برای کاربر برگردانده میشود.
مقدمه
با ظهور و تکامل استفاده از شبکههای رایانهای و اینترنت بر روی گوشیهای هوشمند، دامنه استفاده از گوشیهای هوشمند از کاربردهایی که درون گوشی هوشمند تعبیه شدهاند، فراتر رفته و می توان کارکردهایی در سطح شبکههای رایانهای و اینترنت را برای گوشی هوشمند در نظر گرفت. گوشیهای هوشمند برای اینکه بتوانند کارکردهایی در سطح شبکههای رایانهای و اینترنت داشته باشند، این نیازمندی وجود دارند که بتوانند از سرویسهایی که در اینترنت و شبکههای رایانهای وجود دارد استفاده نماید.
پیشرفتهای اخیری که در دستگاههای موبایل و فناوری شبکههای بیسیم رخ داده ، فناوری را به سمت محاسبات فراگیر و دسترسی مداوم و بدون وقفه به دادهها و اطلاعات، میبرد. بنابراین محیطهای محاسبات ابری5 و برنامه کاربردی باید تولید شود که قادر باشد امکانات درمانی،مشاورهای، اورژانسی و نظارت6 بیمار را انجام دهد. ازاینرو نیاز به سیستمهای درمانی دستگاههای سیار7 است. سیستمهای درمانی دستگاههای سیار، نرمافزارهای کاربردیای هستند که خدمات درمانی را برای افراد در هر کجا و هر زمان فراهم کرده و از تکنولوژیهای پهنای باند، گوشیهای هوشمند بیسیم8 و شبکه های حسگر بدن9 استفاده میکنند.[1]
گوشیهای هوشمند از نظر منابع پردازشی و میزان حافظه با محدودیتهایی مواجه میباشند، که در روشهایی که برای کشف و دستهبندی سرویسها به کار گرفته میشوند بسیار محدودکننده است. از این رو در این مقاله به مطالعه این مسئله پرداخته شده و روشی برای کشف و دستهبندی سرویسها ارائه داده شده است، تا با وجود محدودیتهای گوشیهای همراه، کشف و دستهبندی سرویسها را روی سرویسهای ابری انجام دهد و متناسب با درخواست کاربر سرویسهای مورد نظر روی گوشی فرد قرار گیرد.
در این مطالعه هدف ارائه یک محیط محاسبات ابری پزشکی است که قادر باشد با جمعآوری اطلاعات از ارائه دهندگان سرویس، امکانات پزشکی در سه نوع سرویس مشاورهای، اورژانسی و نوبتدهی را برای افراد فراهم آورد. به دلیل وجود تعداد زیاد سرویسها، نیاز به استفاده از کشف و دستهبندی سرویس ها میباشد. در واقع استفاده از یک روش مبتنی بر یادگیری ماشین برای دستهبندی سرویسها، سبب میشود که سرویسها به صورت اتوماتیک بر روی سرویس ابری دسته بندی شده و همچنین فرایند کشف سریعتر انجام گیرد.[2]
مطالعات پیشین
در این بخش به طور خلاصه در رابطه با کارهای انجام شده در این زمینه پرداخته شده است. با استفاده از روشهای خوشهبندی، میتوان سرویسهای مرتبطتری را کشف کرد.[3] امروزه با توسعه محاسبات خدمات10، جستجوی سرویسها مطابق با نیاز کاربر صورت میگیرد. در سالهای اخیر، روشهای بسیاری برای کشف وب سرویسها پیشنهاد شده است[8-4] که در زیر چند مورد بررسی شده است. دانگ و دوستانش [5]، با استفاده از ساختار وب سرویسها - شامل نام، محتوی، عملکرد و اطلاعات مربوط به ورودی/خروجی - شباهت بین وبسرویسها را محاسبه کردند. آنها موتور جستجوی 11woogleرا پیشنهاد دادند که از جستجوی شباهت برای وب سرویسها، پشتیبانی میکرد.
در مرجع [9] یک روش برای خوشهبندی سرویسهای وب بر اساس شبکههای شباهت سرویسهای وب ارائه شدهاست. برای ایجاد این شبکههای شباهت، WSDLسرویسهای وب مورد بررسی قرار میگیرد و ویژگیهای لازم از آن استخراج میشود و با محاسبه شباهت معنایی یک شبکه، شباهت معنایی ساخته میشود. فانگ فانگ و دوستانش [7]، تلاش کردند تا با استفاده از محتوی کامل درون فایل WSDL، معنای وب سرویس را بازتاب دهند. آنها به اینصورت عمل کردند که ابتدا اطلاعات را استخراج کرده و سپس با استفاده از آن، فاصله بین دو سرویس را مقایسه کرده و میزان شباهت بین آن دو را بدست آوردند.
در تحقیقات انجام شده در سالهای اخیر 10] و[11، ثابت شده است که خوشهبندی وب سرویسها یک راه حل موثر جهت افزایش عملکرد کشف وبسرویس میباشد. روشهای استفاده شده برای محاسبه شباهت، به دو دسته معنایی و غیرمعنایی تقسیم میشود. جهت محاسبه شباهت معنایی بین وب سرویسها در بسیاری از مطالعات [14-12]، از آنتولوژی استفاده شده است.
به دلیل گسترده تر بودن وب سرویسهای غیر معنایی نسبت به وب سرویسهای معنایی، در این مقاله بر روی وب سرویسهای غیر معنایی تمرکز شده است. برای محاسبه شباهت غیرمعنایی بین وب سرویسها از روشهای مبنتی بر WSDL استفاده میشود15]و.[16 لایو و دوستانش [17]، برای خوشهبندی وب سرویسها، چهار ویژگی Content - ، Context، Host Name و - Service Name را از فایلهای WSDL استخراج کردند. آنها انتظار داشتند که با انجام اینکار، به موتورهای جستجو در خزیدن12 و خوشهبندی وب سرویسها، کمک کنند.
در [18]، جهت خوشهبندی وب سرویسها، پیشنهاد داده است که از ویژگیهای موجود در فایل WSDL استفاده شود. در این مورد متفاوت از کار انجام شده در [17]، پنج ویژگی Content - ، Types، Messages، Ports و - Service Name استخراج شده است. در این مقاله، جهت محاسبه میزان شباهت و اعمال خوشهبندی، علاوه بر استخراج پنج ویژگی از فایلهای WSDL، از اطلاعات مربوط به برچسب، نیز استفاده شده است تا خوشهبندی بهتری انجام گیرد. جهت پشتیبانی از قابلیت همکاری و تطبیقپذیری، علاوه بر در نظر گرفتن سرویسهای وب، سرویسهای دادهگرا نیز مورد بررسی قرار گرفته است. همچنین جهت محاسبه میزان شباهت بین دو کلمه، دو روش معنایی و غیرمعنایی به کار رفته است که در بخشهای آخر، این دو روش با هم مقایسه میشوند.
روش پیشنهادی
در این بخش ابتدا چهارچوب پیشنهاد شده برای کشف وب سرویس در شکل 1 نمایش داده شده است. همانطور که در شکل نشان داده شده است، مراحل کار به دو بخش اصلی پیشپردازش دادهها و دستهبندی وبسرویسها، تقسیم میشود. مانند کار انجام شده در [19]، پنج ویژگی مهم Content - ، Types، Messages، Ports و - Service Name از فایلهای WSDL استخراج شده است.
در این مقاله، علاوه بر اطلاعات مربوط به فایلها، اطلاعات مربوط به برچسبها نیز مورد بررسی قرار گرفته است. همچنین ارائهدهندگان سرویس های دادهگرا نیز اطلاعات مهمی که تعریف شده است را ثبت کرده و بعد از جمعآوری اطلاعات مربوطه از سرویسها و محاسبه شباهت بین آنها، با استفاده از الگوریتم خوشهبندی بر اساس کیفیت[20]، وب سرویسها دستهبندی میشوند. برای محاسبه شباهت، روش WordNet پیشنهاد شده است که قادر است ارتباط معنایی بین کلمات را بیابد و خوشههایی با سرویسهای مشابه، ایجاد نماید.
نحوه استخراج ویژگی، محاسبه شباهت و یکپارچه سازی شباهت بین دو وب سرویس، استخراج ویژگی و فراخوانی سرویسهای دادهگرا 2 و الگوریتم دستهبندی پیشنهادی در بخشهای زیرین قرار گرفته است. استخراج ویژگی، محاسبه شباهت و یکپارچه سازی شباهت بین دو وب سرویس همانطور که در بالا شرح داده شد، پنج ویژگی و اطلاعات مربوط به برچسب، جهت محاسبه شباهت بین وب سرویسها استخراج، و با استفاده از آن، دسته بندی صورت میگیرد. در [19] جزئیات روند استخراج اطلاعات و محاسبه شباهت مورد بررسی قرار گرفته است در زیر فرمولهای استفاده شده جهت محاسبه شباهت آورده شده است.
.Content فایلهای WSDL که توصیفی از وب سرویسها میباشد، دارای ساختارXML هستند. برای استخراج کلمات و تشکیل بردار محتوا13 باید چهار مرحلهی ساخت بردار اولیه، حذف پسوند، هرس کلمات بیمحتوا14 و پالایش15 انجام گیرد. با انجام مراحل ذکر شده، بردار محتوا نهایی بدست آمده و با استفاده از فرمول 1، شباهت دو وب سرویس بر اساس محتوا محاسبه میشود:[19] و ، به ترتیب تعداد کلمات موجود در بردار محتوا مربوط به وب سرویس یک و دو را نشان میدهد .
شباهت بین دو کلمه i و j را نشان میدهد که در این مقاله دو روش برای محاسبه آن مورد بررسی قرار گرفته که در زیر آورده شدهاست: .16 NGD .1 در این روش، با استفاده از تعداد تکرار کلمات در صفحات گوگل، شباهت بین کلمات را با روش غیرمعنایی محاسبه میکند. [18] برای محاسبه شباهت با این روش از فرمولهای 2 و 3 استفاده میشود:[19] و به ترتیب تعداد دفعاتی است که کلمه i و j در صفحات گوگل دیده شدهاند و تعداد دفعاتی است که کلمه i و کلمه j در کنار هم در صفحات گوگل دیده شدهاند. N تعداد کل صفحات گوگل میباشد.
.WordNet .2 یک پایگاه داده لغوی برای زبان انگلیسی میباشد. در این پایگاه داده، اسمها، فعلها، صفتها و قیدها در گروههای مختلف تقسیمبندی شدهاند و نیز برای کلمات مختلف، ارتباط معنایی آنها مشخص شده است.[21] برای محاسبه شباهت بین دو کلمه از پایگاه داده WordNet استفاده شده است که قادر است میزان شباهت بین دو کلمه را با عددی بین صفر و یک، به صورت معنایی محاسبه کند. واضح است که هر چه عدد بدست آمده به یک نزدیکتر باشد، آن دو کلمه شباهت بیشتری دارند. جزییات پیادهسازی این روش در بخش پیاده سازی توضیح داده شدهاست.
.Type نوعها را از فایل WSDL بیرون کشیده و بردار Type ایجاد میشود و بردار Type مربوط به وب سرویس دوم را هم تشکیل داده و با استفاده از فرمول زیر، شباهت بین دو وب سرویس از نظر نوع محاسبه میشود:[20] .Message هر پیام شامل یک یا بیشتر پارامتر میباشد که هر پارامتر شامل نام و نوع است. برای هر فایل WSDL، نام مربوط به پیام را استخراج کرده و برداری از کلمات را تشکیل داده برای محاسبه شباهت مربوط به پیام، از فرمول 4 استفاده میشود. .Port یکی از مهمترین ویژگی در فایل WSDL محسوب میشود. در WSDL 1,1، چهار نوع زیر را برای تبادل پیام پشتیبانی میکند:
.1 یک طرفه
.2 درخواست-پاسخ
.3 تقاضا -پاسخ
.4 آگاهسازی برای هر وب سرویس، برداری از کلمات شامل نوع پورت هر فایل WSDL را تشکیل داده و با استفاده از فرمول 4، شباهت دو وب سرویس بر اساس پورت محاسبه میشود. .Service Name همانطور که در شکل 2 نشان داده شده است، نام مربوط به تگ سرویس را برداشته و اگر نام شامل چند کلمه باشد با استفاده از مراحل شرح داده شده در قسمت Content، برداری از کلمات بدست میآید. برای محاسبه میزان شباهت بین دو وب سرویس بر اساس نامService از فرمولهای تعریف شده در قسمت Content استفاده میشود.
.Tag برچسب داده مربوط به فایلهای WSDL، اطلاعات معنایی و متنی بیشتری را ارائه میدهد . در این مقاله برای بهبود عملکرد دستهبندی، علاوه بر استخراج ویژگیها، از اطلاعات مربوط به تگها نیز استفاده شده است. برای محاسبه شباهت بین وب سرویسها براساس اطلاعات مربوط به تگ، از روش ضریب جاکارد[22] 17، ستفاده شده است که در زیر آورده شده است: نشان دهنده تعداد تگهای مشترک در سرویس i و j میباشد و شامل تعداد کل تگهای غیر تکراری در هر دو سرویس میباشد.