Yapay Zeka ve Uzman Sistemler Aslı Eyecioğlu Özmutlu aozmutlu@bartin.edu.tr Hedefler • Bilginin sunulması yöntemleri (devam) 1. 2. 3. 4. 5. 6. Üretim modelleri (Production Models) Bilgi Çerçeveleri (Frame) Anlamsal Ağlar (Semantic net) Sahneler (Scene) Mantıksal Modeller (Logical Models) Bulanık Bilgiler (Fuzzy net) Sahneler (Scene) Bilgilerin modellenmesinde gerçek dünyanın standart durumlarını ifade eden kalıplsal bilgilerin önemli bir yeri vardır. Duruma bağlı tahmini olarak beklenen sonuçları üretmek veya karar vermek, durum içeriğine göre yapılabilmektedir. Bu türden olan kalıpsal bilgilerin ifadelendirilmesi için farklı modeller kullanılmaktadır. Bunlardan en yaygın kullanılanı sahne modelidir. Sahneler (Scene) İnsanların farkında olmadan bildiği birçok şey vardır. Büyüklük-küçüklük, uzunluk-kısalık, azlıkçokluk… • Akıl yürütmeler, • Çok karmaşık fikir veya olayları basite indirgeyerek anlayabilme, • sezgilerini kullanma, Böyle durumlarda bilgisayarlar nasıl öğrenir? Sahneler (Scene) • Roger Schank ve meslektaşları (1980) bir yapay zeka projesinde insanlardaki bu tip yeteneği taklit edebilen zihin modellerini ve kavram sahnelerini bilgisayarlara programlamışlardır. • Bilgisayarlara kelime, kavram ve olaylara ilişkin arka plan bilgisi verilmelidir. • Her sahne modeli, slotlar ve sahnlerin amaç, sebep ve ardışıklığını ifade eden değerlerden oluşmaktadır. Sahneler (Scene) • Örnek: Mustafa çorba ısmarladı, içtikten sonra gitti. Sahneler (Scene) • Doğal Dil Gelişimi (Natural Language Processing) alanında çok kullanılmaktadır. • Sahne Modeli, metin özetleme, metinden sonuç çıkarma, metin yorumlama gibi ileri yapay zeka sistemlerinin temelini oluşturmaktadır. MANTIKSAL MODELLER Mantık Nedir? • Önerme ve kabullerin tutarlılığını, inandırıcılığını, doğruluk ve yanlışlığını; çıkarımların gerçekliğini belirleyen ölçütler ve kurallarını; karşılaştırma, tümdengelim, tümevarım gibi düşünme süreçlerinin temel ilkelerini araştıran disiplin dalıdır. MANTIKSAL MODELLER Mantık Nedir? • Her insan zihninde herhangi bir konu ile ilgili çeşitli yargılar (önermeler) vardır. Ancak insan, daha geçerli bir doğru bilgi aradığı için, elindeki bilgilerden yeni bilgilere ulaşmaya çalışır. • Mantık içerisinde, düşünme faaliyeti bir “akıl yürütme” olarak adlandırılır. Akıl yürütme ise verilen yargılardan (öncüllerden) doğru ya da yanlış olabilecek yeni bir yargı çıkarma işlemidir. • Önermelerin doğru veya yanlış olabilmesine doğruluk değerleri denir. https://pratikdersler.blogspot.com.tr/2013/03/mantik-tum-notlar.html MANTIKSAL MODELLER Mantık Nedir? Mantığın temelini oluşturan çıkarımlar önermelerden, önermeler ise kavramlardan oluşur. https://pratikdersler.blogspot.com.tr/2013/03/mantik-tum-notlar.html MANTIKSAL MODELLER Yüklem Mantığı (Predicate Logic) • Önermeler Mantığı • Niceleme Mantığı • Önermeler mantığı ,önermeleri sadece nitelik yönünde ele alır, oysa önermelerin nicelikleri de vardır. Önermeler mantığı önermeleri nicelik yönünde ele almada yetersiz kalır. • Niceleme mantığı , önermeler mantığının bu eksiğini ortadan kaldırır, önermelerin daha ayrıntılı sembolleştirmesini yapar. MANTIKSAL MODELLER Yüklem Mantığı (Predicate Logic) • Önermeler Mantığı • VE, VEYA, DEĞİL, İSE, ANCAK ve ANCAK … • EĞER Hayvanın kanatları varsa (önerme) • VE Yumurtluyorsa (önerme) • O HALDE Bu hayvan bir kuştur (Söylem) MANTIKSAL MODELLER Yüklem Mantığı (Predicate Logic) • Niceleme Mantığı • HER ve BAZI niceleyicileri MANTIKSAL MODELLER Silojizm (Syllogism) nedir ? • İki önermeden üçüncü yeni bir önermenin elde edilmesi için gerekli mantıksal çıkarım türüne silojizm denir. 1. Önerme : Bütün bitkiler canlıdır. 2. Önerme : Marul bitkidir. Sonuç : O halde marul da canlıdır. GRAFLAR • Kategorisel Silojizm yüklem mantığından farklı olarak 4 tip hükümle gösterilir. • • • • A – Yaygın (tüm X’ler Y’dir) E – Olumsuz (Tüm X’ler Y değildir ) I – Özel olumlu (bazı X’ler Y’dir) O – Özel olumsuz (bazı X’ler Y değildir) GRAFLAR • Örnekler GRAFLAR • Örnek: sever (x,y) yüklemini ele alalım. Burada x ve y insanları ifade etsin. Toplam 4 farklı durum oluşur. • • • • (∀𝑥) (∀𝑦) sever (x,y) (∃𝑥) (∀𝑦) sever (x,y) (∀𝑥) (∃𝑦) sever (x,y) (∃𝑥) (∃ 𝑦) sever (x,y) BULANIK BİLGİLER • Bulanık Bilgiler (Fuzzy Net) - Bulanık Mantık (Fuzzy Logic) • Herhangi bir önermenin sonucunun 0 veya 1 (evet/hayır vb.) olmayıp , 0 ile 1 arasında bir değer olduğu durumdur. BULANIK BİLGİLER • "İsveçlilerin çoğu uzundur" denildiğinde “çoğu”, "bir kısmı" veya "çok azı" gibi algısal niceleyici kavramları birer bulanık niceleyicidir. • Her mantıksal sistem bulanık olarak ifade edilebilir. • Bulanık Sistemler eğitilebilirler. US’in genel yapısı • Bilginin elde edilmesi • Bilgi Tabanı o Kurallar Tabanı o Veri Tabanı (İşçi Bellek) • Çıkarım Mekanizması o Kullanıcı Arayüzü • Kullanıcı o Açıklama Sistemi US’in genel yapısının şeması • Şemanın Çizimi US’in genel yapısı Kurallar Tabanı • Eger-O halde şeklinde veya diğer şekilde olan kurallar topluluğunu depolamak için kullanılan birimdir. • Her bir kural belirli bir nitelik (attribute) ve değere (value) sahiptir. • Örnek: Filin rengi gridir. • Fil nesne, renk nitelik, gri değerdir. US’in yapısı Kurallar Tabanı • Üretim modellerinin birçoğunda nesne sabit kalırken, nitelik ve değer farklılaşır. • Nitelik-Nesne-Değer ilişkisi MYCIN örneği: US’in yapısı Veri Tabanı (İşçi Bellek) • Bu bellekte o anki durumu tasvir eden gerçekler (facts) topluluğu ve belirli bir ana kadar elde edilmiş nitelik-değer çiftleri depolanmaktadır. • Dinamik US’ler mevcut gerçeklere yeni gerçeklerin İşçi Bellek’e eklenmesiyle oluşur. US’in yapısı Çıkarım Mekanizması (İnference Engine) Elde olan bilgilerden yeni bir bilgi elde etmek için kullanılan yöntemlerden oluşur. US’in yapısı Çıkarım Mekanizması (İnference Engine) Çıkarım mekanizmasının kullandığı yöntemlerden bazıları: Tümdengelim (Deduction) Tümevarım (İnduction) Sezgisel (Intuition) Bulgusallık (Heuristic) Sezgisellik & Bulgusallık Sezgisellik gerçeğin deneye veya akla vurmadan doğrudan doğruya kavranması; bulgusallık ise öğretilmek istenen şeyin deneye dayalı bulmasını sağlayan öğretim yöntemi. Yapay Zeka problemlerinin çözümünde genellikle sezgisel yöntemler kullanılmaktadır. US’in yapısı Çıkarım Mekanizması (İnference Engine) Çıkarım mekanizmasının foksiyonları: 1. İşçi bellekteki mevcut gerçeklerin gözden geçirilmesi, bilgi tabanından kuralların gözden geçirilmesi ve işçi belleğe yeni verilerin eklenmesi 2. Gözden geçirme sırasının ve kuralların kabul edilmesinin belirlenmesi US’in yapısı Açıklama Sistemi Bilgi sisteminin, sonuca nasıl vardığına ait kullanıcının sorusuna cevaplar verdiği kısımdır. Kullanıcı uzmanlar, bilgi sistemi tarafından çıkarım sonuçlarının nasıl alındığını bilmemektedir. Örnek: http://expertise2go.com/e2g3g/loan/ CLIPS • Aşağıdaki blogta CLIPS programının indirilmesi ve örneklerin nasıl yükleneceği anlatılmaktadır: • https://mycs231.wordpress.com/2010/02/26/a-i-clips-rule-baseexpert-system/ PROLOG PROgrammig in LOGic o Semboller üzerinde çalışma o Problemlerin çözümünü tanımlama yerine çıkarım yapma o Doğal dille düşünülen şeylerin kodlanması kolay o Gerçekler ve kurallardan oluşur. o Büyük küçük harfe duyarlıdır. • Sabitler için Küçük harfler • Değişkenler için Büyük harfler o Program çıktıları çok sade o Prolog’da olmayanlar • • • • • • For döngüleri Repeat While döngüleri IF..THEN yapısı Goto komutu Diziler Yukarıdakiler öz yinelemeli fonksiyonlarla sağlanır Ödev • Bu formu kendi özgün cümlelerinizle doldurun. • Uzun bir paragraf yerine kısa ve anlaşılır olmasına özen gösterin. • https://goo.gl/forms/FXNPuiSayNFHbpxR2 • 21 Ekim 2017 10:00- form kapanacaktır. Proje Çalışması • 5-6 kişilik gruplar oluşturup problem belirleyin. o Gruplar belirlendi mi? o Problem bulundu mu? Yararlanılan Kaynaklar • Aybars Uğur, Yapay Zeka Ders Notları. • Novruz Allahverdi, Uzman Sistemler bir yapay zeka uygulaması, Nobel Akademik Yayıncılık, 2002 • Vasif Nabiyev, Yapay Zeka, Seçkin Yayıncılık, 2016, 5. Baskı Teşekkürler Aslı Eyecioğlu Özmutlu aozmutlu@bartin.edu.tr