نمایش دانش

30
یش دانش نما(Knowledge Representation) هین اکبرپور شامی واحد شبستره آزاد اسنشگا داای خبره سیستم ه برای درس منبع: ای خبره سیستم هصول و مبانی ا تالیف: عت ایراننشگاه علم صنرات دانتشاظمی، مرکز اره کادی غنضفری و زه مه1

Upload: farhad-norouzi

Post on 21-Jul-2015

104 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: نمایش دانش

نمایش دانش

(Knowledge Representation)

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

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

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

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

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

1

Page 2: نمایش دانش

مفهوم دانش

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

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

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

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

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

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

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

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

Page 3: نمایش دانش

مفهوم دانش

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

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

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

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

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

Page 4: نمایش دانش

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

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

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

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

.هستند

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

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

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

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

خرد

دانش

اطالعات

داده ها

اغتشاش

Page 5: نمایش دانش

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

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

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

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

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

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

Page 6: نمایش دانش

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

قواعد •

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

فریم ها•

(Scripts)نوشتار •

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

Page 7: نمایش دانش

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

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

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

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

Page 8: نمایش دانش

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

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

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

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آن نقطه مقابل همچنین، . بکار می رودشیءاز آن

Page 9: نمایش دانش

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

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

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

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

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

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

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

Page 10: نمایش دانش

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

Page 11: نمایش دانش

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

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

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

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

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

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

مفسر

کاربر

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

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

Page 12: نمایش دانش

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

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

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

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

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

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

.گیرد

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

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

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

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

Page 13: نمایش دانش

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

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

Page 14: نمایش دانش

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

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

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

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

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

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

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

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

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

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

Page 15: نمایش دانش

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

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

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

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

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

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

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

:انواع طرح•

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

طرح مفهومی

Page 16: نمایش دانش

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

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

.کردن نیستند

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

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

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

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

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

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

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

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

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

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

Page 17: نمایش دانش

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

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

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

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

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

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

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

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

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

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

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

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

1979 سال

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

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

4 تایرها

آبی رنگ

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

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

Page 18: نمایش دانش

یا چهارچوب ها(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)

Page 19: نمایش دانش

منطق

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

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

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

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

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

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

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

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

سورها•

Page 20: نمایش دانش

استنتاج

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

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

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

پیشرو(Forward)

پسرو(Backward)

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

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

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

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

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

.کنند

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

Page 21: نمایش دانش

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.

Page 22: نمایش دانش

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.

Page 23: نمایش دانش

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.

Page 24: نمایش دانش

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.

Page 25: نمایش دانش

25

Binary Decision Tree

Page 26: نمایش دانش

26

Decision Tree

with Multiple Branches

Page 27: نمایش دانش

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.

Page 28: نمایش دانش

28

Animal Identification

Decision Tree

Page 29: نمایش دانش

29

Animal Identification

Decision Tree After Learning Bird

Page 30: نمایش دانش

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.