27
Automatic Sentence Generation Using Common Sense Databases Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi 1 YTÜ Bilgisayar Mühendisliği Bölümü Canberk Berkin ÖZDEMİR Danışman : Yrd.Doç.Dr. M. Fatih AMASYALI

Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

  • Upload
    keene

  • View
    74

  • Download
    2

Embed Size (px)

DESCRIPTION

Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi. Automatic Sentence Generation Using Common Sense Databases. Canberk Berkin ÖZDEMİR Danışman : Yrd. Doç.Dr . M. Fatih AMASYALI. Sunum İçeriği. Neden Otomatik Cümle Üretimi? Hayat Bilgisi Veritabanı Neden Kullanıldı? - PowerPoint PPT Presentation

Citation preview

Page 1: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

1YTÜ Bilgisayar Mühendisliği Bölümü

Automatic Sentence Generation Using Common Sense Databases

Hayat Bilgisi Veritabanı Kullanarak Otomatik

Cümle Üretimi

Canberk Berkin ÖZDEMİRDanışman : Yrd.Doç.Dr. M. Fatih AMASYALI

Page 2: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

2YTÜ Bilgisayar Mühendisliği Bölümü

Neden Otomatik Cümle Üretimi?Hayat Bilgisi Veritabanı Neden Kullanıldı?Projeyi Kapsayan Disiplin ve AlanlarSistemin Etkileşimli Olduğu SistemlerÇalışma MantığıDeğerlendirmeSonuç ve Öneriler

Sunum İçeriği

Page 3: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

3YTÜ Bilgisayar Mühendisliği Bölümü

Elimizdeki cümleden yeni bilgi çıkarımı yapabilmek…

Bir bilgiden yola çıkarak bu bilgi ile bağlantılı bilgileri elde etmek ve makinelerin bu bilgileri işleyebilmesine olanak sağlayabilmek…

İnternet üzerinde yapılan aramalardaki girilen cümle ya da cümlelerin türetilip kullanıcılara aramalarla ilgili istenildiğinde daha detaylı sonuçları döndürebilmek…

…için “Otomatik Cümle Üretimi”ne ihtiyaç duyabiliriz.

Neden Otomatik Cümle Üretimi?

Page 4: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

4YTÜ Bilgisayar Mühendisliği Bölümü

Cümle üretimi gerçekleyebilmek için cümlenin barındırdığı kelime ya da kelime öbeklerinin sahip olduğu çeşitli ilişkili kelime ya da kelime öbeklerini bulmak gerekir. Elimizde bize bunu sağlayabilen bir “Hayat Bilgisi Veritabanı” (CSdb) bulunduğundan, bu veritabanının kullanımı projenin iş akışının gerçeklenmesinde büyük rol oynamıştır.

Not: Sunumun devamında Hayat Bilgisi Veritabanı ayrıntılı olarak açıklanacaktır.

Hayat Bilgisi Veritabanı Neden Kullanıldı?

Page 5: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

5YTÜ Bilgisayar Mühendisliği Bölümü

Doğal Dil İşleme

Semantik

Makine Öğrenmesi

Projeyi Kapsayan Disiplin ve Alanlar

Page 6: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

6YTÜ Bilgisayar Mühendisliği Bölümü

ZemberekZemberek, açık kaynak kodlu Türkçe doğal dil işleme kütüphanesi Yazım denetimi, hatalı kelimeler için öneri, heceleme, deascifier gibi sentaktik işlevlere sahip

CSdb(Common Sense Database) Hayat bilgisi veri tabanları, kelimeler arasında yaşamdaki gerçeklikleri basit ilişki yapıları ile birbirlerine bağlar Bu sayede bilgisayarların bu gerçeklikleri yorumlayabilmesini kolaylaştırır

Sistemin Etkileşimli Olduğu Sistemler

Page 7: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

7YTÜ Bilgisayar Mühendisliği Bölümü

Sistemin Etkileşimli Olduğu Sistemler-1

Zemberek

Cümle üretimini sağlayabilmek için hayat bilgisi veritabanına, cümlenin kelime ve kelime öbekleri gönderilmektedir.

Bu yüzden çalışmada Java programlama dili ile kodlanmış Türkçe doğal dil işleme kütüphanesi olan Zemberek uygulaması kullanılmıştır.

Page 8: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

8YTÜ Bilgisayar Mühendisliği Bölümü

Zemberek

Cümlenin kelime ve kelime öbeklerine ayrılması işlemi gerçeklendikten sonra da kelimenin veritabanına gönderilirken kök haline getirilmiş şekli, ekleri ve hayat bilgisi veritabanında sorguları gönderirken isim ya da fiil türünde olduğuna göre sorgu oluşturacağımızdan dolayı morfolojik bir kelime çözümleyicisine ihtiyaç duyulmuştur.

Sistemin Etkileşimli Olduğu Sistemler-1

Page 9: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

9YTÜ Bilgisayar Mühendisliği Bölümü

Zemberek

Zemberek sisteme kelimelerin kök, ek ve türlerini sorunsuz bir şekilde döndürmektedir.

Sistemde Zembereğin birden fazla çözümlemesi olan kelimeler için ürettiği sonuçlardan ilki kullanılmıştır.

Sistemin Etkileşimli Olduğu Sistemler-1

Page 10: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

10YTÜ Bilgisayar Mühendisliği Bölümü

CSdb(Common Sense Database) Nesnelerin farklı ilişki kalıplarıyla bağlantılı

olduğu nesnelerle ilişkilendiren bir Türkçe veritabanıdır.

Veritabanı "bu nerede bulunur, bunun üst kavramı nedir, bu ne gerektirir, bu neyden yapılmıştır, bunun özellikleri nelerdir" gibi 40 adet ilişki ve bunların tersi ilişkilere sahiptir ve nesneler bu ilişkilerle birbirine bağlanmaktadır.

Sistemin Etkileşimli Olduğu Sistemler-2

Page 11: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

11YTÜ Bilgisayar Mühendisliği Bölümü

CSdb(Common Sense Database)

Nesneleri birbirine bağlayan bu ilişkileri ve doğruluklarını, kişiler Kemik Oyun adı verilen oyunla veritabanına gönderirler.

İlk Türkçe hayat bilgisi veritabanı olan CSdb veritabanında ayrıca her ilişkinin doğruluk oranı 0-5 arasında bir değerle tutulmaktadır.

Sistemin Etkileşimli Olduğu Sistemler-2

Page 12: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

12YTÜ Bilgisayar Mühendisliği Bölümü

CSdb(Common Sense Database)

Nesnelerin ilişkilerini belirleyen kullanıcılar, ilişkilerin ilgili nesneler arasındaki tutarlılıklarını 0-5 puan arasında puanları seçerek göndermektedirler.

Birçok kişinin verdiği puanların ortalaması alınarak nesneler arası ilişkilerin doğruluk oranları arttırılmaktadır.

Sistemin Etkileşimli Olduğu Sistemler-2

Page 13: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

13YTÜ Bilgisayar Mühendisliği Bölümü

CSdb(Common Sense Database)

İlk Türkçe hayat bilgisi veritabanının henüz istenilen olgunluğa erişmemiş olması buradan alacağımız sonuçların tutarlılık oranını düşürebilmektedir, bu dezavantaj çalışma sürecinde göz önünde tutulmuştur.

Ancak oyun oynandıkça veritabanın içerdiği ilişkilerin doğruluğu artacağından bu tür uygulamalarda kullanımı artacak ve Türkçe semantik alanındaki çalışmalara büyük katkı sağlayacaktır.

Sistemin Etkileşimli Olduğu Sistemler-2

Page 14: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

14YTÜ Bilgisayar Mühendisliği Bölümü

1. Sisteme üretilecek cümle girilmesi2. Cümlelerimiz Zemberek’e morfolojik olarak incelenmek

üzere gönderilmesi3. XML olarak kelime çözümlemeleri sisteme geri

döndürülmesi4. Zemberek'ten dönen bu verileri hayat bilgisi veritabanına,

sorgulanması sistem tarafında belirli olan ve en az ortalama puanın kullanıcı tarafından belirlenmiş olduğu sorgular gönderilmesi

5. Hayat bilgisi veritabanının döndürdüğü ilişkili kelimeler, ilişki türü ve ortalama puanları kullanıcıya aktarılmak üzere sistem tarafından alınması

6. Üretilen cümlelerin tekrar üretilebilmesini sağlayacak şekilde çıktıların verilmesi

Çalışma Mantığı

Page 15: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

15YTÜ Bilgisayar Mühendisliği Bölümü

Çalışma Mantığı

Page 16: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

16YTÜ Bilgisayar Mühendisliği Bölümü

Sistem kelime öbeklerindeki her bir kelime için verilen kelimenin ilişkili olduğu kelime sayısının bir fazlasının çarpımları sonucu kadar cümle üretmektedir. Bu cümlelerin hiçbiri bir diğeriyle aynı olmayacak şekilde arayüzde kullanıcıya aktarılmıştır. Bu ifadeyi şu şekilde formüle edebiliriz:

Çalışma Mantığı

n

kkisücs

1

)1(

n : cümledeki toplam kelime (öbeği) sayısı isk : k. kelime (öbeği)nin ilişki sayısıücs : üretilen cümle sayısı

Page 17: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

17YTÜ Bilgisayar Mühendisliği Bölümü

Kullanıcıya döndürülen sonuçlarda oluşturulan her bir cümle için tutarlılık yüzdesi hesaplanmaktadır. Bu üretilen bir cümlenin, kullanıcı tarafından girilen cümleye göre ne kadar tutarlı olabildiğini hesaplayıp bilgilendirme amacıyla yapılmıştır. Bu tutarlılık hesaplanırken bir cümlenin içindeki hayat bilgisi veritabanından gelen her bir ilişkili kelimenin ortalama puanı ve o kelimenin ilişkisinin ilişki yüzdesi çarpılarak kullanılmaktadır.

Çalışma Mantığı

n

k

kk iopitycyt1 5

)*(

n : cümledeki toplam kelime(öbeği) sayısıcyt : cümlenin yüzde tutarlılığıiopk : k. kelime (öbeği)nin sahip olduğu ilişkinin doğruluk puanı ityk : k. kelime (öbeği)nin sahip olduğu ilişki türünün tutarlılık yüzdesi

Page 18: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

18YTÜ Bilgisayar Mühendisliği Bölümü

Cehalet tanrının laneti olduğuna göre, bilgi göklere uçabileceğimiz kanatlardır.

William Shakespeare

Page 19: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

19YTÜ Bilgisayar Mühendisliği Bölümü

Çalışma Mantığı - ÖrnekGiriş

CümlesiÜretilen Cümle

Üretimde Kullanılan ilişkiler

Ali odada uyur.

Ali binada yatar.

1.ilişki: Oda - Bütünün Bölümü - bina

2.ilişki: uyumak - Bu hangi olayın parçasıdır? –yatmak

“Ali odada uyur” cümlesini sisteme girdiğimizde neler olacağını inceleyelim:

Page 20: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

20YTÜ Bilgisayar Mühendisliği Bölümü

Ürettiğimiz cümle sayısını hesaplayacak olursak :

ücs = (1+1)*(1+1) = 4 olacaktır.

Bu üretilen cümlelerin ayrı ayrı tutarlılık yüzdeleri hesaplanırsa :

cyt1 = (1*5/5)*(1*5/5) = 1 cyt2 = (0,8*5/5)*(1*5/5) = 0,8 cyt3 = (0,8*5/5)*(0,7*5/5) = 0,56 cyt4 = (1*5/5)*(0,7*5/5) = 0,7

Çalışma Mantığı - Örnek

Page 21: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

21YTÜ Bilgisayar Mühendisliği Bölümü

Sunulan çalışmada, ilk Türkçe hayat bilgisi veritabanı (CSdb) kullanılarak bir bilgisayar sisteminin girilen bir cümleden çıkarım yaparak girilenle benzer/aynı anlamda yeni cümleler ve doğruluk oranları üretmesi sağlanmıştır. Çalışmanın olası uygulama alanları olarak, otomatik hikâye/metin üretimi sistemleri, anlamsal metin özetleme uygulamaları, anlamsal metin sınıflandırma / kümeleme çalışmaları ve anlamsal bilgiye erişim sistemleri sayılabilir.

Değerlendirme

Page 22: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

22YTÜ Bilgisayar Mühendisliği Bölümü

Bu çalışmada,Hayat bilgisi veritabanlarının ve doğal dil

işleme kütüphane ve uygulamalarının; gelecekteki akıllı bilgisayar sistemlerini ve interneti yönlendireceği,

Bilgisayarların gündelik hayatımızı semantik çalışmalar sayesinde daha fazla kolaylaştıracağı,

aşikârdır.

Değerlendirme

Page 23: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

23YTÜ Bilgisayar Mühendisliği Bölümü

Sistemin performansı kullandığı CSdb'ye çok bağımlıdır. Bu nedenle CSdb’nin içeriğinin zenginleştirilmesi ve kalitesinin arttırılması otomatik olarak uygulamamıza yansıyacaktır.

Zemberek çözümlemelerinden sadece ilkinin kullanımından doğan hatalar, bir kelime anlamı durulaştırma işlemiyle çözümlenebilir.

Sonuç ve Öneriler

Page 24: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

24YTÜ Bilgisayar Mühendisliği Bölümü

Kök ek ayrımından sonra üretilen yeni kelime köklerini tekrar eklerle birleştirecek bir sınıfın yazılması sistemin daha kullanıcı dostu olmasını sağlayacaktır.

CSdb’de bir şeyin nerelerde bulunduğu, nerelerde yapıldığı gibi ilişkiler mevcut olduğundan kullanıcının girdiği cümlede yer almasa bile üretilen cümlelerde bu bilgiler yer alabilir. Örneğin “Ali futbol oynadı.” cümlesinden “Ali stadyumda topla futbol oynadı.” cümlesi üretilebilir.

Sonuç ve Öneriler

Page 25: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

25YTÜ Bilgisayar Mühendisliği Bölümü

Yeni cümle üretilirken, değişim yapılan öğe türüne göre bu işlem gerçekleştirilebilir. Örneğin yüklemi sonuç ile bağlı olduğu bir kavramla değiştirirken üretilen yeni cümlenin yükleminin kipine olasılık eklenebilir. Bu sayede “Ali top oynayacak.” cümlesinden “Ali yorulacak.” cümlesi yerine “Ali yorulabilir.” cümlesini üretmek mümkün olabilecektir.

Üretilen cümlelerin tutarlılığını kullanıcıdan geri besleme alarak arttırabilmesi mümkündür.

Sonuç ve Öneriler

Page 26: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

26YTÜ Bilgisayar Mühendisliği Bölümü

Projenin çatısını oluşturan CSdb Hayat Bilgisi Veritabanına katkıda bulunmak isterseniz Kemik Oyun’u oynayabilirsiniz. Veritabanı oynandıkça gelişmekte ve güvenilirlik kazanmaktadır.

Oyunun bağlantısı :http://www.kemikoyun.yildiz.edu.tr/commonsense

Not: Türkçe Hayat Bilgisi Veritabanı CSdb; yapay zeka, makine öğrenmesi projelerinde kullanılabilmesi için 6 ay içerisinde herkese açık hale getirilecektir. Bu yüzden Kemik Doğal Dil İşleme Grubu veritabanını çok önemsemektedir.

Son olarak…

Page 27: Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

27YTÜ Bilgisayar Mühendisliği Bölümü

Teşekkürler…