Hayat Bilgisi Veritabanı Kullanarak Otomatik Cümle Üretimi

Preview:

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

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

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

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?

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ı?

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

Doğal Dil İşleme

Semantik

Makine Öğrenmesi

Projeyi Kapsayan Disiplin ve Alanlar

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

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.

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

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

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

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

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

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

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ığı

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

Çalışma Mantığı

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ı

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

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

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:

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

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

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

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

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

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

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…

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

Teşekkürler…