Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

BİL 4112 YAPAY ZEKA Hafta 9. Uzman Sistemler (Expert Systems) Bölüm 2.

Benzer bir sunumlar


... konulu sunumlar: "BİL 4112 YAPAY ZEKA Hafta 9. Uzman Sistemler (Expert Systems) Bölüm 2."— Sunum transkripti:

1 BİL 4112 YAPAY ZEKA Hafta 9

2 Uzman Sistemler (Expert Systems) Bölüm 2

3 Uzman Sistemlerin Geliştirilmesinde Roller

4 Uzman (Alan Uzmanı – Domain Expert) Belirli bir alanda çokça bilgisi (gerçekler ve kurallar) ve deneyimi olan. Bu sayede, o belirli bir alanda sıradan insanların yapamadığı şeyleri yapabilen.

5 Uzmandan Bilgi Alırken... İlk notlar: Karşınızdaki bir insan İşbirliğine hazır olmalı ve siz bunu bozmamalısınız Uzmanlığını hissetmeli ve siz bunu bozmamalısınız

6 Yöntemler Görüşme (çok daha öğretici) Anket/form doldurma (çok sayıda uzmanın bilgisini almanız gerekiyorsa)

7 Bilginin medyası Uzmanın bilgileri nasıl ifade edilebiliyor? Metin Şekil / Resim Ses

8 Bilginin Türleri Prosedürler Kurallar Kavramlar Kavramlar arası ilişkiler İlişkilerin türleri İlişkiler arası ilişkiler Listeler (seçenekler) Durumlar (case), normal ve uç durumlar Kararlar

9 Karar Verirken Karar türleri Bilgi toplama yolları / kaynakları Karara etki eden faktörler ve önemleri Karar verme mekanizması

10 Karar verdikten sonra Kararının doğru / yanlış olduğunu nasıl anlıyor? Bu bilgi ile ne yapıyor?

11 Görüşme türleri Önceden hazırlanmış sorular listesi kullanmak Bilgi türlerini, karar mekanizmasını serbest yolla öğrenmek Case study: Bir durum oluşturup karar vermesini istemek, karar verirken yüksek sesle düşünmesini istemek Geri anlatmak: Bir durum oluşturup sizin karar verişinizi izlemesini / yönlendirmesini / düzeltmesini sağlamak

12 İşler kötü giderse...? Bazı Yardımcı Yöntemler Kararını nasıl verdiğini ifade edemezse (sadece içimden geliyor) : Durumu bir miktar değiştirip kararında değişim olup olmadığını sorun. (kararı değişene kadar) Birbiriyle çelişen bilgiler verirse: Çelişen kararların durumlarının aynı olup olmadığından emin olun. Eğer gerçekten çelişki varsa bunu, ona uzmanlığını geliştirmesi için bir fırsat olarak sunun.

13 Uzman Sistemlerde Bilgi Gösterimi (Knowledge Representation)

14 Bilgi (Knowledge) Nedir? Bilinen her şey. Bilmek nedir? Bir şeyi bildiğimizi nasıl biliriz?

15 Bilmenin farklı seviyedeki göstergeleri Farkında olma Anımsama / Çağrıştırma / Hatırlama Tanıma Yorumlama Açıklayabilir olma Kanıtlayabilir olma Hakkında konuşabilme Yerine getirebilir/yapabilir olma

16 İşleme / Yorumlama Miktarı Kişiye özel oluş Veri’den Bilgiye

17 Pikseller Bölgesel etiketler Tek bir etiket 2, A İki yaşlı insan Bir kadın bir erkek İkisininde şapkaları var Birbirlerine sarılmışlar İkisi de gülümsüyorlar Mutluluk

18 Veri’den Bilgiye Pikseller Bölgesel etiketler Tek bir etiket Yaşlı bir kadın Fakir bir kadın Bir çorba tenceresi tutuyor Gülümsüyor Mutluluk, şükran, ? İki kilit Bir anahtar Bir eğik çizgi Gülen bir yüz

19 Bilginin Özellikleri (meta bilgi) Alan (özel - genel) Doğruluk (doğru - yanlış) Kesinlik (kesin - belirsiz) Doğrulanabilirlik / yanlışlanabilirlik (bilimsel bilgi - metafizik) Güncellik (güncel - eski) Tamlık (tam - eksik) Ekonomiklik (elde edilmesi, ondan beklenenden pahalı - değersiz) Yaygınlık (çokça bilinen – hiç bilinmeyen)

20 Bilgi Gösterim Türleri Kurallar (Rules) Anlamsal Ağlar (Semantic net) Yüklem mantığı (Predicate Logic) Çerçeveler (Frames) Sahneler (Scripts)

21 Kurallar -Genel format IF condition THEN conclusion (action) -Genelde sonlu sayıda birçok kuralımız olur. IF condition is Ai THEN conclusion is Bi -Genelde kurallarımız çok değişkenlidir. IF condition 1 and condition 2 or …. and condition n THEN conclusion

22 Kurallar; ilişkileri, önerileri, direktifleri ifade edebilir: n İlişki IFthe ‘fuel tank’ is empty THENthe car is dead n Öneri IFthe season is autumn ANDthe sky is cloudy ANDthe forecast is drizzle THENthe advice is ‘take an umbrella’ n Direktif IFthe car is dead ANDthe ‘fuel tank’ is empty THENthe action is ‘refuel the car’

23 Kurallarla Çıkarım if A and C then E. if D and C then F. if B and E then F. if B than C if F then G. A. B. Geriye doğru zincirleme: G doğru mudur? İleri doğru zincirleme: Ne doğrudur?

24 İleri Doğru Zincirleme (Forward chaining) n data-driven reasoning n Bilinen bir bilgi ile başlar. n Uygun kurallardan en üstte olan uygulanır (ateşlenir). n Kural uygulandığında, database’e bir gerçek ekler. n Tüm kurallar sadece bir kez uygulanır. n Çıkarım uygulanabilecek (ateşlenebilecek) kural kalmayıncaya kadar devam eder.

25 İleri Doğru Zincirleme

26 Geriye Doğru Zincirleme (Backward chaining) n goal-driven reasoning. n Sistemin doğruluğunu aradığı bir hedefi vardır. n Hedefler, alt hedeflere bölünerek kanıtlanmaya çalışılır. n Tüm alt hedefler kanıtlandığında hedefte kanıtlanmış olur.

27 Geriye Doğru Zincirleme

28 n Eğer alanın uzmanı; n Önce bilgi toplayıp sonra olası sonuçları arıyorsa ileri doğru zincirleme n Önce hipotezler üretip, sonra bunların doğruluğunu araştırıyorsa geriye doğru zincirleme Bu konuyla ilgili size verilen İngilizce kitap kısmını ve oradaki örneği (bölüm 2.6 ve 2.7) inceleyiniz. Ne zaman, hangisi kullanılmalı?

29 Bilgi tabanında aşağıdaki 3 kuralın yer aldığını düşünelim: n Kural 1: IFthe ‘traffic light’ is green THENthe action is go n Kural 2: IFthe ‘traffic light’ is red THENthe action is stop n Kural 3: IFthe ‘traffic light’ is red THENthe action is go Görüleceği üzere, kural 2 ve 3 çelişmektedir. Çelişkilerin çözümü (Conflict resolution)

30 n Veri tabanındaki bilgilere göre ateşlenebilecek kuralların oluşturduğu kümeye çelişki / anlaşmazlık kümesi denir. n Anlaşmazlık kümesi içinden hangi kuralın uygulanacağının/ateşleneceğinin seçimine anlaşmazlık / çelişki çözümü denir. Çelişkilerin çözümü (Conflict resolution)

31 Çelişkilerin Çözüm Yöntemleri Sıralama: Kurallar önceliklerine / önemlerine göre sıralanır. Kümedekilerden en yukarıda yer alan ateşlenir. Durumla eşleşme: Duruma en çok uyan kural ateşlenir. A. B. if A or B or C then X if A then Y Yukarıdaki durumda X gerçekleştirilir. Güncellik: Kurallardan en günceli (bilgi tabanına en son ekleneni) ateşlenir. Meta Kurallar (kurallar hakkında kurallar): Kuralın kaynağı (uzmanlık dereceleri) kuralın önceliğini belirler İnsan hayatı ile ilgili kurallar, diğer kurallardan yüksek önceliklidir.

32 Çerçeve Tabanlı Uzman Sistemler (Frame-based expert systems)

33 Çerçeveler (Frames) Çerçeve: Nesneye yönelik programlamadaki object kavramının AI’daki kullanımı class  sınıf çevçeve, object  nesne çerçeve Bir çerçeve, öznitelikleri (slot) olan bir kavramı belirtir. Bir öznitelik ait olduğu çerçeveye ait çeşitli türdeki bilgileri tutar. Ör: çokluk kısıtları, varsayılan değer, çeşitli prosedürler Ref: Marvin Minsky, 1975

34 34 slotlar

35 Hatırlatma Bir önceki yansıdaki örnekte, nesne tabanlı programlamaya (object-oriented programming) benzer mantıkta; Hayvanlar: sınıf çerçeve Kuşlar, Memeliler: alt sınıf çerçeve (bir üst sınıf çerçeveden türetilmiş) Penguenler, Kediler, Yarasalar: alt sınıf çerçeve (bir üst ait olduğu sınıf çerçeveden türetilmiş) Opus, Bill, Pat: nesne çerçeve Yani, nesne tabanlı programlamadaki class, derived subclass, instance / object gibi.

36 Çerçeve / Öznitelik / Yuva Bir çerçevenin çeşitli öznitelikleri (slot) vardır. Bir özniteliğin çeşitli yuvaları (facets) olabilir.

37 Öznitelik / Yuva (Slot / Facet) Yuva türleri Değer: tek / çok kavram / sayı / metin Varsayılan değer Değer aralığı: alabileceği değerin alt / üst sınırı, alabileceği değerler kümesi Değerin türü Prosedür: (if-needed, if-added, if- removed) (değerin doldurulması istenirse, bir değer girilirse, bir değer silinirse çağrılacak prosedür) Önem katsayısı: Slot’un ait olduğu çerçeve için önemi Çerçeve: Bazı sistemlerde yuva bir başka çerçeveyi gösterebilir. Örnek: İnsan çerçevesinin ayak sayısı özniteliğinin (slot) yuvaları (Facets): –Değer: 2 –Varsayılan değer: 2 –Değer aralığı: [0,1,2] –Değerin türü: sayı –if-added: değer Є değer aralığı –if-removed: değer = varsayılan değer

38 Araba çerçeveleri, öznitelikleri ve yuvaları Araba çerçevelerinin ilişkileri

39

40 Çerçevelerde kalıtım (inheritance) Tek Ebeveynli kalıtım (Single parent inheritance) Not: Nesne tabanlı programlama dillerindeki kalıtımla aynı mantıktadır

41 Çerçevelerde kalıtım (inheritance) Çoklu Ebeveynle kalıtım (Multiple inheritance) Not: Nesne tabanlı programlama dillerindeki kalıtımla aynı mantıktadır

42 Yöntemler ve Programcıklar (Methods and Demons) Çerçeve tabanlı uzman sistemlerde, bir eylem isteği olduğunda bir çerçevenin değişken / özelliğine ilişkin çalıştırılan kısımlara method denir (nesne tabanlı programlardaki method kavramının hemen hemen aynısı). Genelde iki tip yöntem (method) vardır: WHEN CHANGED (değiştiği zaman) WHEN NEEDED (gerektiği zaman) Demon ise, IF-THEN yapısında olan ve demon’ın IF kısmında mevcut herhangi bir çerçevede değişkeninin değeri değiştiğinde çalışan program parçalarıdır. Bu konuyla ilgili size verilen İngilizce kitap kısmını ve oradaki örneği (bölüm 5.4, 5.5 ve 5.6) inceleyiniz.


"BİL 4112 YAPAY ZEKA Hafta 9. Uzman Sistemler (Expert Systems) Bölüm 2." indir ppt

Benzer bir sunumlar


Google Reklamları