نمایش دانش

Preview:

Citation preview

نمایش دانش

(Knowledge Representation)

شاهین اکبرپور

دانشگاه آزاد اسالمی واحد شبستر

برای درس سیستم های خبره

اصول و مبانی سیستم های خبره: منبع

مهدی غنضفری و زهره کاظمی، مرکز انتشارات دانشگاه علم صنعت ایران: تالیف

1

مفهوم دانش

کلمه دانش همانند عشق، هر کس معنای آن را می داند ولی با این حال هنوز•.تعریف آن دشوار است

این علم با . نامیده می شود(Epistemology)علم مطالعه دانش، معرفت شناسی •. ساختار و اصول دانش سرو کار دارد

:شناسیمعرفت مقوله های •

تئوریهای فلسفی

پیشین دانش(A prior)A priorپیشین از قبل وجود دارد و همیشه دانش . به معنای چیزی که مقدم و جلوتر است

اضی قواعد ری. درست فرض می شود مگر اینکه با یک دانش درست دیگر در تناقض باشد. است180مجموع زوایای همه مثلثها : مانند. و دانشی که کودکان دارند از این نوع است

دانش پسین(A posterior)ت درستی آن با استفاده از آزمایشهای حسی بدس. این دانش از طریق حواس بدست می آید

.چراغ راهنما سبز است: مثال. می آید

مفهوم دانش

.دانش بیشترین اهمیت را در سیستمهای خبره دارد•

این عبارات برای برنامه های متدوال کامپیوتری و •

:مطرح می شوندسیستمهای خبره

الگوریتم+ ساختار داده ها = کامپیوتری برنامه های

دانش+ استنتاج = خبره سیستمهای

سلسله مراتب دانش اغتشاش(Noise) : داده های

ا مبهمی که هیچ استفاده ای از آنه.نمی شود کرد

داده ها(Data) : بطور بالقوه می.توان از آنها استفاده کرد

اطالعات(Information) : دادهد های پردازش شده هستند که مفی

.هستند

دانش(Knowledge) : نشان دهندهاطالعات بسیار تخصص است که بصورت قواعد تعریف می

ی به عبارت دیگر،اطالعات. شوند.کردکه می توان به آن عمل

خرد یا فوق دانش(Wisdom) :درباره دانش و تجربه دانشی

اقداماتی که منجر به . است.تصمیم گیری و بهبود می گردد

خرد

دانش

اطالعات

داده ها

اغتشاش

سلسله مراتب دانش

اگر هیچ دانشی در مورد داده ها نداشته باشیم ممکن است در •م ولی اگر معنای آنها را دریابی. نگاه اول یک اغتشاش باشد

. پذیرفتمی توان به عنوان داده

تبدیل داده به اطالعات ممکن است با یک دانش قطعی •.بگیردومشخص مانند الگوریتم صورت

د که یک سیستم خبره ممکن است به گونه ای طراحی شده باش•اه درباره چند حوزه، دانش داشته باشد که برای هر کدام پایگ

(Meta-knowledge)در این جا فوق دانش . دانشی موجود باشد.مشخص می کند که کدام پایگاه دانش باید استفاده شود

دانشروشهای نمایش

قواعد •

(Semantic Nets)شبکه های معانی •

فریم ها•

(Scripts)نوشتار •

زبانهای نمایش دانش•

معانیشبکه های

یکی از روش های قدیم نمایش هوش مصنوعی است که برای اطالعات گزاره ای بکار می •.رود

. به بیان ریاضی یک شبکه معانی، یک گراف برچسب دار و جهتدار است•

.نامیده می شود(Atomic)یک گزاره درست یا نادرست است و به همین دلیل یک عبارت اتمی •

معانیشبکه های

یا بین اشیاءدر شبکه، گره ها نشان دهنده اشیاء یا موجودیتها هستند و کمانها یا ارتباطات رابطه •. هستندموجودیتها

:مرسومانواع ارتباطات •

ISA (IS A)

Example: Cats ISA mammal.

AKO (A KIND OF)

Example: Chairs AKO furniture.

HAS-A (HAS A)

Example: Car has a engine.

•ISA همچنین گفت که . اشاره می کند( گروه از اشیا)به یک عضو خاص از یک کالسISA را ارزشیک.مرتبط می سازدویژه گیبه یک

•AKOبرای ایجاد ارتباط بین یک کالس با یک کالس دیگر بکار می رود.

•HAS-Aخشی با بشیءاغلب برای تعریف ارتباط یک . یک کالس را به یک زیرکالس مربوط می سازد.استAKOآن نقطه مقابل همچنین، . بکار می رودشیءاز آن

و شبکه معانی(PROLOG)پرولوگ

.آسان استPROLOGتبدیل شبکه های معانی به یک برنامه •

is_a (red, color).has_a (John, father).has_a (John, mother).has_a (John, parents).

. هر یک از جمالت فوق یک گزاره هستند•

تشکیل شده is_aدر پرولوگ عبارت گزاره ای از نام گزاره، نظیر •

.دبه دنبال آن ممکن است چند آرگومان در داخل پرانتز باشن. است

. است(Interpreter)سیستم اجرا کننده عبارات پرولوگ یک مفسر •

و شبکه معانی(PROLOG)پرولوگ

پرولوگ و شبکه معانی

م واقعیات گزاره ای است که به سیستشامل قواعد و گزاره ای پایگاه داده •. وارد شده اند

.دای یک پایگاه دانش می باشپایگاه داده گزاره در طراحی سیستم خبره، •

که کاربر وارد (Query)مفسر سعی دارد تا تعیین کند آیا پرسش گزاره ای •اگر جواب موجود باشد جواب، مثبت.کرده، در پایگاه داده، وجود دارد یا نه

.در غیراینصورت منفی است

(قواعد و واقعیات)پایگاه داده گزاره ای

مفسر

کاربر

پرسشهاپاسخها

:وگشکل کلی سیستم پرول•

پرولوگ و شبکه معانی

باشد، مفسر (Rule)اگر پرسش یک قاعده •

را با جستجو در عمق ( زیرهدف)اهداف فرعی (Depth-Fist Search)منطبق می کند.

در این روش، جستجو تا حدی که ممکن است •

. گرددبرمیبه پایین می رود و سپس

جستجو از چپ به راست نیز صورت می •

.گیرد

در مقابل این روش، جستجو در عرض •(Breadth-First Search) است که در

.پرولوگ متداول نیست

در این روش، یک سطح قبل از رفتن به •

.ودسطح پایین تر بعدی، کامال جستجو می ش

مثالی از جستجوی اهداف در پرولوگ

1. ancestor (X, Y) :- parent (X, Y).2. ancestor (X, Y) :- ancestor (X, Z) , ancestor (Z, Y).3. parent (ann, mary).4. parent (ann, susan).5. parent (mary, bob).6. parent (susan, john).

Examples:? – ancestor (ann, susan).yes? – ancestor (ann, john).yes

مشکالت شبکه معانی

از . ستنداین نوع شبکه برای نمایش دانش بسیار مفید است، هرچندکه محدودیتهایی موجود ه•:جمله

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

کل زمانی این مش. افزایش انفجار آمیز ترکیبات مختلف از گره هاست که باید جستجو شوندیشتر و در اینصورت ب. خود را بیشتر بروز می کند که پاسخ یکی از جستجوها منفی شود

.یا حتی تمامی ارتباطات موجود در یک شبکه باید جستجو شود

.شبکه معانی مثالی از دانش سطحی است•

.اگر کسی تب داشت آنگاه به او یک آسپرین بدهید: مثال

هش می کارا سیستم نمی داند که مبنای بیوشیمیایی آن چیست و چرا آسپرین تب این .دهد

بات جمالت بعبارت دیگر سطحی بودن دانش سیستم خبره به دلیل متکی بودن آن به ترکی•. است نه معانی آنها

. داغلب دانش موجود در دنیای واقعی را نمی توان با ساختار یک شبکه معانی نمایش دا•

یا طرح(Schemata)شماتا .سطحی استدانش در مقابل عمقی دانش •

ی یک ساختار دانش عمقی، دارای دانش علت و معلول است که توضیح می دهد چرا بعضی وقایع روی م•.دهند

یش در آن به جای داده یک مجموعه مرتب شده از دانش، نما. ساختار دانش با ساختار داده قابل مقایسه است•. داده شده است

:می توان هر کلمه ای را جای آنها جایگزین کردYو Xدر قاعده زیر به جای •

.بدهید(Y)داشت آنگاه به او یک (x)اگر کسی یک

ر اگ. زیرا آنها دوره های زیادی گذرانده اند و تجربیات زیادی داردند. پزشکان دانش علت و معلول دارند•.روش موثر واقع نشد، می توانند در مورد آن استدالل کنند و روش دیگری جایگزین کنند

عانی در هوش مصنوعی اصطالح شماتا یا طرح برای تشریح ساختار دانشی بکار می رود که از شبکه م•.پیچیده تر است

:انواع طرح•

طرحهای حسی وحرکتی

طرح مفهومی

یا طرح(Schemata)شماتا

انسان درباره دانش ضمنی این کارها مجبور به فکر: طرحهای حسی وحرکتی•

.کردن نیستند

ان یک انتزاع است که در آن اشیا مشخص، بوسیله خواص کلی ش: طرح مفهومی•

.طبقه بندی می شوند

اره آنها وقتی بر خواص عمومی یک شی متمرکز می شویم به راحتی می توانیم درب•

.استدالل کنیم بدون اینکه جزئیات نامربوط آنها ما را گیج کند

رد در اگر مردم بخواهند توضیح دهند که حیوان چیست، بسته به اینکه آن ف: مثال•

مزرعه بزرگ شده یا در شهر، یا در نزدیکی رودخانه و غیره، مفهوم حیوان

.به هر حال، افراد کلیشه هایی از مفاهیم در ذهن خود دارند. متفاوت است

تجو همان است که در آٰن، کلید جسساختار داده در علم کامپیوتر، شبکه معانی مانند •

که یک طرح شیبه به یک ساختار داده است. داده های ذخیره شده در گره ها هستند

.در آن گره ها شامل رکوردها هستند که شامل داده ها هستند

یا چهارچوب ها(Frames)فریم ها

و سایر فریم ها روشی برای فهم بینایی، زبانهای طبیعی•.زمینه های هوش مصنوعی بکار می رود

برای شبیه سازی دانش عمومی یا بدیهی فریم ها •(Commences Knowledge)آن دانشی را . مناسب است

نشان می دهد که مربوط به موضوعی است که قسمت (Default)زیادی از آن دانش به صورت پیش فرض

.برای آن موضوع است

وان با جزئیات بیشتر در مورد اجزا یک سیستم را می ت•.فریم ها توصیف کرد

بتنی همانند شبکه های معانی استانداردی برای تعریف م•.بر فریم ها وجود ندارد

فریم را می توان با یک ساختار رکوردی در زبان •. پاسکال مقایسه کرد

ها فیلدها و مقادیر یک رکورد را می توان نظیر شکاف•(Slots) و پرکننده شکاف(Fillers) در فریم ها در نظر.گرفت

پرکننده ها شکافها

موتورجنرال سازنده

کاپریسشورلت مدل

1979 سال

اتوماتیک انتقال نیرو

گاروئیلی موتور

4 تایرها

آبی رنگ

:لنمونه ای از فریم یک اتومبی

ی و شیء، نام شکاف ویژه گاتومبیل.پرکننده مقدار هستند

یا چهارچوب ها(Frames)فریم ها Slots Fillers

Name Property

Specialization of

A kind of object

Type Car, Borat, houseIf added: Procedure ADD_PROPERTY

Owner Default: governmentIf needed:Procedure FIND_OWNER

Location (home, work, mobile)

Status (missing, poor, good)

Under warranty

(yes, no)

منطق

عالوه بر قواعد، شبکه های معانی و فریم ها، دانش را می توان بوسیله•

.نمادهای منطق نشان داد

بطور خالصه منطق عبارت است از مطالعه قواعد و استالل دقیق•

و ایجاد استفاده از کامپیوتر در انجام استدالل، منجر به برنامه نویسی منطق•.شده استPROLOGزبانهای مبتنی بر منطق مانند

. یک بخش مهم از استدالل، استنتاج نتایج از مقدمات است•

الل کرده و در سیستمهای خبره که موتور استنتاج با استفاده از واقعیات استد•

.به نتیجه می رسد، منطق از اهمیت زیادی برخوردار است

منطق گزاره ها•

سورها•

استنتاج

ی رشته ای از استنتاجات مختلف که یک مساله را به راه حل آن مرتبط م•

. سازد، یک زنجیره نامیده می شود

:دو نوع زنجیره موجود هستند•

پیشرو(Forward)

پسرو(Backward)

: پیشروزنجیره •

از مساله شروع شده و به راه حل منتهی می شودزنجیره.

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

: پسروزنجیره •

شتیبانی می به عقب برمی گردد تا به واقعیاتی برسد که فرضیات را پشده و زنجیره که از فرضیات شروع

.کنند

یک هدف اصلی با ارضاء شدن اهداف فرعی خود ارضاء می شود.

21

Decision Trees

1. Decision trees provide a useful paradigm for

solving certain types of classification problems.

2. Decision trees derive solutions by reducing the

set of possible solutions with a series of

decisions or questions that prune their search

space.

3. Problems suitable for decision trees are those

that provide the answer to a problem from a

predetermined set of possible answers.

22

Decision Trees

4. Decision trees consist of nodes and branches,

connecting parent nodes to child from the top to

bottom. The top node (root) has no parent.

Every other node has only one parent. Nodes

with no children are leaves.

5. Leaf nodes represent all possible solutions that

can be derived from the tree – answer nodes.

All other nodes are decision nodes.

23

Decision Trees

6. In general, a decision node may use any criteria to select which branch to follow as long as it yields only one branch. The branch selected may be a set or range of values, etc.

7. The procedure to traverse a tree to reach an answer is simple – begin at root, if the current node is decision, answer the question – YES, move left, NO, move right. When answer node is current location value is derived from the decision tree.

24

Decision Trees with

Multiple Branches

• A binary decision tree may prove inefficient – not

allowing for a set of responses or a series of

cases.

• A modified decision tree allows for multiple

branches – giving a series of possible decisions.

25

Binary Decision Tree

26

Decision Tree

with Multiple Branches

27

Decision Trees

That Learn

• Sometimes it is useful to add new knowledge to a

decision tree.

• Learning can result in the decision tree becoming

unbalanced – efficient decision trees are

balanced.

28

Animal Identification

Decision Tree

29

Animal Identification

Decision Tree After Learning Bird

30

A Rule-Based

Decision Tree Program

• The first step implementing the learning process in a decision tree is to decide how knowledge should be represented.

• Since the tree should learn, the tree should be represented as facts instead of rules – facts are easily added / deleted from a tree.

• Each node of the tree should be represented by a fact.

• From one run to the next, information about what has been learned will be stored in a file.

• The rules for traversal of the tree must be determined.