**قاب** (به انگلیسی: Frame) یا **فریم** نوعی ساختمان داده در هوش مصنوعی است، که از آن برای تقسیم دانش به زیرساختارها از طریق نمایش «وضعیت تفکر قالبی (stereotype)» استفاده می‌شود.

اهمیت قاب
---------

* قاب، «ساختمان داده» ی اساسی است که در هوش مصنوعی در «زبان قاب» استفاده می‌شود.
* قاب‌ها یک بخش قابل گسترش از طرح‌های نمایش و استدلال دانش هستند.
* قاب‌ها در اساس از شبکه‌های معنایی گرفته شده‌است، و بنابراین بخشی از نمایش‌های دانش مبتنی بر ساختار هستند. نمایش‌های ساخت‌یافته «اتصال واقعیت‌ها دربارهٔ شیی خاص و نوع رویداد هستند و انواع را به یک سلسله‌مراتب طبقه‌بندی بزرگ مرتب‌سازی می‌کنند، که مشابه طبقه‌بندی‌های زیستی است».

تاریخچه
-------

مفهوم قاب اولین بار در مقاله «یک چهارچوب برای نمایش دانش» توسط ماروین مینسکی در سال ۱۹۷۴ مطرح شد.

ارجاع به نوام چامسکی و دستور زایشی او که در سال ۱۹۵۰ مطرح شد، در نشریات مینسکی وجود ندارد، اما قدرت معنایی «فریم» براساس مفهوم دستور زایشی است.

ساختار قاب
----------

یک فریم شامل اطلاعاتی دربارهٔ «چگونگی استفاده از قاب»، «در آینده چه مورد انتظار است»، «اگر این انتظارها برآورده نشود باید چه کرد» هستند.

بخشی از اطلاعات در قاب معمولاً تغییر نمی‌کنند در حالیکه اطلاعات دیگر که در «پایانه» (terminal) ذخیره شده‌اند، معمولاً تغییر می‌کنند. ترمینال‌ها را می‌توان به صورت متغیر درنظر گرفت.

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

هر قطعه اطلاعات دربارهٔ یک قاب بخصوص در یک شکاف (به انگلیسی: slot) نگهداری می‌شود. اطلاعات می‌تواند شامل:

* واقعیت‌ها یا داده‌ها
	+ مقادیر (که شکل (به انگلیسی: facet) نامیده می‌شوند.
* رویه‌ها (به انگلیسی: Procedure) (که پیوست‌های رویه‌ای هم نامیده می‌شوند)
	+ IF-NEEDED: ارزیابی به تأخیر افتاده
	+ IF-ADDED: به روزرسانی اطلاعات پیوندشده
* مقادیر پیش‌فرض
	+ برای داده
	+ برای رویه‌ها
* دیگر قاب‌ها و زیرقاب‌ها

ویژگی‌ها و مزیت‌ها
------------------

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

### مزیت اول: وجود استثنا

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

مشابه شبکه‌های معنایی، قاب‌ها می‌توانند توسط فعال‌سازی گسترش(spreading activation)، پرسمان (query) گردند. با پیروی از قواعد ارث‌بری، هر مقداری که به یک شکاف داده شود، که آن مقدار توسط زیرقاب‌ها به ارث برده می‌شود به شکاف متناظر در زیرقاب روزرسانی می‌گردد (IF-ADDED) و هر نمونه جدید از یک قاب خاص، به آن مقدار جدید به صورت پیش فرض نگاه می‌کند.

### مزیت دوم: ساخت ساده‌تر شبکه معنایی

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

### مزیت سوم: اسنتاج ساده

ساختار ساده‌شده قاب‌ها امکان استنتاج مقایسه‌ای ساده را می‌دهد که یک ویژگی بسیار باارزش در هر عامل هوشمند است.

### مزیت چهارم: انعطاف‌پذیری از طریق رویه

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

مثال
----

آنچه در ادامه می‌آید، استنتاج قیاسی ساده (مقایسه) است، که می‌توان بین یک پسر و یک میمون، فقط با داشتن شکاف‌های دارای نام مشابه انجام داد.

توجه کنید که آلکس (Alex)، یک نمونه از پسر، مقادیر پیش‌فرض مثل «جنس» را از شیی والد عمومی‌تر Boy به ارث می‌برد، اما boy می‌تواند مقادیر نمونه‌ای متقاوتی در شکل استثنا داشته باشد (مثل تعداد پا).

| Slot | Value | Type |
| --- | --- | --- |
| ALEX | \_ | (This Frame) |
| NAME | Alex | (key value) |
| ISA | Boy | (parent frame) |
| SEX | Male | (inheritance value) |
| AGE | IF-NEEDED: Subtract(current,BIRTHDATE); | (procedural attachment) |
| HOME | 100 Main St. | (instance value) |
| BIRTHDATE | 8/4/2000 | (instance value) |
| FAVORITE\_FOOD | Spaghetti | (instance value) |
| CLIMBS | Trees | (instance value) |
| BODY\_TYPE | Wiry | (instance value) |
| NUM\_LEGS | 1 | (exception) |

| Slot | Value | Type |
| --- | --- | --- |
| BOY | \_ | (This Frame) |
| ISA | Person | (parent frame) |
| SEX | Male | (instance value) |
| AGE | Under 12 yrs. | (procedural attachment - sets constraint) |
| HOME | A Place | (frame) |
| NUM\_LEGS | Default = 2 | (default, inherited from Person frame) |

| Slot | Value | Type |
| --- | --- | --- |
| MONKEY | \_ | (This Frame) |
| ISA | Primate | (parent frame) |
| SEX | OneOf(Male,Female) | (procedural attachment) |
| AGE | an integer | (procedural attachment - sets constraint) |
| HABITAT | Default = Jungle | (default) |
| FAVORITE\_FOOD | Default = Bananas | (default) |
| CLIMBS | Trees | \_ |
| BODY\_TYPE | Default = Wiry | (default) |
| NUM\_LEGS | Default = 2 | (default) |

منابع
-----

1. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17  "Frame (artificial intelligence)". *Wikipedia* (به انگلیسی). 2020-03-20.