تصویر عنوان

بلاگ

استدلالگر Pie

  |   محصولات, دسته بندی نشده   |   بدون دیدگاه

استدلالگر مستقل از چارچوب، افزایشی و توسعه پذیر Pie

اهمیت استدلال ورزی ماشینی بر کسی پوشیده نیست؛ داشتن ساختار منسجم و سازگار، منعطف و مقاوم در برابر تغییرات، کشف نتایج منطقی جدید و … از جمله دستاوردهای یک استدلالگر ماشینی است.

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

ما در پست دیگری در مورد اهمیت استفاده از استدلالگر مطلبی را منتشر کرده ایم
در این پست میخواهیم استدلالگر پای (Pie) را معرفی کنیم، Pie یک استدلالگر مستقل از چارچوب، افزایشی و توسعه پذیر است:

  • مستقل از چارچوب (Platform – independent)

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

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

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

اگرچه Pie از هر پایگاه داده / دانشی پشتیبانی می کند ولی توصیه ما این است که از RDF و از Triple store های موجود استفاده شود و زبان پرسمان (Query)، SPARQL باشد. در مرحله بعدی پیشنهاد ما استفاده از سایر پایگاه داده های گرافی مانند Neo4j و … است. ولی در صورت نیاز Pie می‌تواند خودش را به هر پایگاه داده ای (SQL یا NoSQL) تطبیق دهد بدون آنکه تغییری در ساختار آن پایگاه داده ایجاد کند. در حقیقت Pie به سادگی می‌تواند با داده‌های موجود تجمیع (integrated) شود.

حتی این امکان نیز وجود دارد که بخشی از داده ها در ساختار SQL باشند و بخشی دیگر در ساختار NoSQL

 

  • افزایشی (Incremental)

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

به این دلایل، استفاده از استدلالگر افزایشی با استفاده از استدلالگرهای عادی قابل مقایسه نیست:

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

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

 

  • توسعه پذیر (Expandable)

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

بر پایه‌ی منطق توصیفی توسعه هایی منطقی برای سایر منطق ها عرضه شده است (The Description Logic Handbook). Pie استدلالگری است که زیرساختی دارد که می تواند استدلال چند وجهی یا ترکیبی بین این گسترش های منطق توصیفی را به خوبی مدیریت کنند. در حال حاضر استدلالگر پیش فرض اولویت دار برای استدلال های غیر یکنوا، استدلالگر پویای زمانی برای مدیریت تغییرات زمانی رخدادها، استدلالگر بهترین تبیین برای حدس بهترین تبیین و … پیاده سازی شده و در حال توسعه هستند. اما زیرساختی برای Pie وجود دارد که سایر توسعه‌های سفارشی منطقی مانند منطق احتمالاتی و … را نیز می توان به آن اضافه کرد و بر اساس پایگاه داده انتخاب شده قاعده های آن منطق نگاشته می شود. (به طور نمونه در صورتی که از RDF  استفاده شود، قواعد در منطق انتخاب شده با SPARQL (و به عبارت دقیق‌تر با SPIN) نگاشته می‌شود و اگر از Neo4j استفاده کنید با Cypher بیان می‌شوند و اگر از MongoDB استفاده کنید، MQL زبان قاعده نگاری شما در آن منطق جدید خواهد بود.)

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

همچنین در حال حاضر، در صورت استفاده از ساختار RDF میتوانید از امکانات SHACL نیز برخوردار شوید.

 

نحوه استفاده

کاربری استدلالگر Pie بسیار آسان است و تنها کافی است تغییرات را در نحو (syntax) OWL-Functional به استدلالگر Pie بگویید.

برای سفارش سرویس از Pie تنها کافی است که در خواست خود را به product@borhan-onto.ir  ارسال کنید و با سفارش داده تستی خود، عملکرد Pie  را مشاهده کنید. تیم پشتیبانی استدلالگر Pie شرکت برهان همواره در کنار شما خواهند بود.

منتظرتان هستیم

بدون دیدگاه

ارسال دیدگاه