Giter Club home page Giter Club logo

vowel_restoration_hidden_markov_model's Introduction

Vowel_Restoration_Hidden_Markov_Model

DERLEM

Projede, Yıldız Teknik Üniversitesi Bilgisayar Mühendisliği bölümündeki akademisyenler tarafından kurulmuş Kemik Doğal Dil İşleme Grubu tarafından toplanmış gazete köşe yazıları kullanılmıştır. Toplam 2500 köşe yazısı bulunmaktadır ve bu köşe yazılarının konuları çeşitlilik göstermektedir.

ÖN İŞLEME

Ayrık halde bulunan köşe yazıları tek bir dosyada birleştirilmiştir. Birleştirilen dosya içinde bulunan bütün büyük harfli kelimeler küçük harfe çevrilmiş, içerisinde rakam ve yabancı karakter (İngilizce de bulunan x w gibi) bulunan kelimeler çıkarılmıştır. Ayrıca bütün noktalama işaretleri elimine edilmiş ve şapkalı ünlüler şapkasız hale dönüştürülmüştür.

İŞLEM ADIMLARI

Türkçede 29 harf bulunmaktadır. Bu harflerin 8'i seslidir. Sesli Harf Tamamlama projesinde Türkçe harflerin dışında ‘<’, ‘>’ ve ‘w’ karakterleri kullanılmıştır. ‘<’ karakteri kelimenin başlangıcını, ‘>’ karakteri kelimenin bitişini, ‘w’ karakteri ise boşluğu (hiçbir karakterin gelmeyeceğini) ifade eder. ‘<’ ve ‘>’ karakterler sessiz harf kategorisine, w ise sesli harf kategorisine koyulmuştur.

  • Hazırlanmış derlem içerisindeki kelimeler okunmuştur.
  • Kelimelerin başlangıç ve bitişlerinin belirlenebilmesi için her bir kelimenin başına ve sonuna başlangıç ve bitişi belirtecek karakterler eklenmiştir.

elma --> <elma> armut --> <armut>

  • Kullanıcı tarafından girilmiş sessiz harflerden sonra gelecek sesli harflerin bulunması gerekmektedir. Bu işlemin belirlenmesinde karakter bigramları kullanılmıştır. Karakter bigramlarının içerisinde bulunan karakterlerin birlikte geçme sayıları belirlenmiştir.

<kaya> --> <k, ka, ay, ya, a>

  • Bigramların oluşma durumu şu şekildedir. ‘Sesli harf – sessiz harf’, ‘sesli harf – sesli harf’, ‘sessiz harf – sesli harf’ ve ‘sessiz harf – sessiz harf’. Hidden Markov Model oluşturulurken her sessiz harf sonrasında bir sesli harfin geleceği varsayılmıştır. Ancak Türkçe’de iki sessiz harf yan yana gelebilmektedir. Bu durumu oluşturmuş modele uyarlayabilmek için boşluk karakterini (w) kullanılmıştır.

<gömlek> --> <g, , öm, mw, wl, le, ek, k>

  • Karakterlerin birbiri ile geçme sayıları bulunduktan sonra olasılıkları hesaplanmıştır.
  • Kullanıcıdan sessiz harf girişi alınmış ve girilen sessiz harf dizgesinin başına ve sonuna ‘<’ ve ‘>’ karakterleri eklenmiştir.

Hidden Markov Model

  • Hidden Markov Model (HMM) için başlangıç durum olasılığı 1 olarak belirlenmiştir. Kullanıcı hangi sessiz harfi yazarsa yazsın ilk karakter her zaman ‘<’ olarak atanacaktır. Bu sebeple başlangıç durum 1 olarak seçilmiştir.
  • HMM’de sessiz harfler durumları, sesli harfler gözlemlenebilir değişkenleri ifade etmektedir.
  • HMM formülünde, durumların birbiri ardına gelme olasılıkları hesaplanmaktadır. Ancak bütün oluşturulabilecek sesli harf kombinasyonlarında sessiz harflerin birbiri ardında bulunma olasılıklarının aynı olması sebebiyle olasılık hesabında bu değer göz ardı edilmiştir.
  • Türkçe’de 3 sessiz harfin art arda gelme olasılığı çok düşüktür. Oluşturulan yapıda art arda 3 sessiz harfin gelebilmesi için art arda 2 ‘w’ boşluk karakteri gelmelidir. Art arda 2 boşluk karakterinin gelme olasılığını düşürebilmek için hesaplanan olasılık belirli bir kat sayıya bölünmüştür.
  • Türkçe’de ‘ğ’ ile başlayan bir kelime bulunmamaktadır. Bu durum ayrıyeten kontrol edilmiştir. Başlangıç karakterinden sonra ğ karakteri gelmesi durumunda (kullanıcının ilk olarak ğ girmesi) boşluk karakterinin gelmesi engellenmiştir.
  • Her bir adımda en yüksek olasılığa sahip olan sesli harf dizgesi ve olasılığı üzerinden işlem yapılmıştır.

PROGRAM ÇALIŞTIRIlMASI

  • Projeyi indirdiğiniz dizine gidiniz.
  • Konsol ekranını açınız ve “python main.py” komutunu çalıştırınız.

OUTPUT

Örnek sonuçlar için tıklayınız.

vowel_restoration_hidden_markov_model's People

Contributors

metinmertakcay avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.