Herhangi Bir Metnin Hangi Dilden Olduğunu Hızlıca Anlama

0
FZ
Yapay zekâ dersim için Prolog ile boğuşurken ve comp.lang.prolog haberleşme/tartışma grubunu mesaja boğarken oraya katkıda bulunan bir hocanın, Gertrand Van Noord'un enteresan bir çalışması dikkatimi çekti.

Perl ile yazılmış bir tür dil kategorizasyon programı. Yani bir GİRDİ'ye bakıp, "hmm bu Türkçe" diyor, başka bir girdiye bakıp "hmm, bu da Portekizce" diyor ve bunu kısa sürede, yüksek başarım oranı ile, 69 farklı dil için yapıyor. Açık kodlu, özgür yazılım kategorisinde alan TextCat'in bir de web demosu var.

Van Noord, TextCat'in ticari ve ticari olmayan rakiplerini de sıralamış. Kendi yazılımına dil sayısı olarak en çok yaklaşan yazılım XEROX Language Identifier ticari bir yazılım ve 40 civarı dil ayırt edebiliyor.

Hep birlikte tekrarlıyoruz: Özgür Yazılımı Seviyoruz! :)

Görüşler

0
abakana
Türkçe' ye özgü ışğ karakterlerinin bulunmadğı metinleri unknown olarak gösteriyor. Bu arada ışğ olmaması kesinlikle kullanılmaması anlamında algılanmalıdır. ı -> i ğ -> g gibi bir dönüşüm yapılmadı.
0
roktas
Hmm... Bu denemeyi hangi ortamda yaptınız? (Tarayıcı + OS) Burada böyle bir sorun yok (Firefox + Debian 3.1 Sarge). Ayrıca ı (idotless) gibi Türkçeye çok özgü karakterleri içeren girişler programa kopya vermek gibi olmuyor mu? :-) Xerox'taki ile kıyaslandığında başarım oranını daha düşük bulsam da programı beğendim. Stallman'in sözlerini unutmamak lazım, özgürlük teknolojiden evladır. ;-)
0
abakana
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0

Slackware GNU/Linux 9.1
0
redline99
bende turkce karakterleri kullanmadan bir iki cumle denedim, bazilarini bildi bazilarini bilemedi. Ama bencede basarili bir program.
0
FZ
Türk diline özgü düşük seviyeli doğal dil işleme (morfoloji, deASCIIfying, dil tanıma (Türkçe mi değil mi), imla kontrolü,vs.) konuları ile uğraşan arkadaşlara hararetle tavsiye olunur:

http://tspell.dev.java.net/

Daha önce FM'de haberini geçmiştik:

http://www.fazlamesai.net/modules.php?name=News&file=article&sid=2337

Az zamanda, epey kısıtlı kaynakla çok iş çıkarmış sağlam bir ekibin sırtlandığı bu açık kodlu proje herkesin her türlü desteğine açık, bilginize. Türkçe için yapılan çalışmalar neden bu kadar az ve kısır diye şikayet edeceğinize siz de karınca kararınca (ya da belki aslan payını hedefleyebilecek iddialı bir programcı olarak, belli mi olur ;-) katkıda bulunabilirsiniz.
0
The_Patch_Mode
Az önce web sürümünü denedik arkadaşımla. Fakat programı başarılı bulmadık. Mesela program Türkçe'ye özgü karakterleri içeren kelimeleri hemen tanıyabiliyor. ı, ğ ,ş gibi. Ama bu harfleri içermeyen başka Türkçe kelimeleri yazdığımızda tanıyamıyor. Daha doğrusu yazdığım hiçbir Tütkçe kelimeyi tanımadı diyebilirim.
0
FZ
Kelimeler?

Burada sanırım bir yanlış anlama söz konusu. Program istatistiksel yöntemle çalışıyor gördüğüm kadarı ile, dolayısı ile dillere dair açık bir semantik bilgi içermiyor ve dolayısı ile verdiğiniz metin ne kadar uzun olursa o kadar iyi tahmin yapabiliyor. Mesela aşağıdaki paragrafı "Turkish" olarak kategorize ediyor:

--------------------------------------------------------------------------
Merhaba, bu basit bir deneme. Anadilime ait herhangi bir harf kullanmazsam acaba anlayabilecek misin benim anadilim nedir, hatta noktalama da kullanmazsam olur herhalde. Madem o kadar yetenekliyim diyorsun de bana marifetini.

Pekala, tek bir paragrafla olmuyor demek ki. Bir de bunu dene.

Gene mi bulmak kolay olmayacak emin misin. Belki bu sana daha kolay gelebilir, bir ihtimal, hadi kolay gelsin.
--------------------------------------------------------------------

Yukarıdaki metne aşağıdaki cümleleri ekleyip denediğimde yine aynı sonucu alıyorum:

--------------------------------------------------------
Peki ya bir iki laf daha eklersem o zaman da problem olmadan bana kabul edilebilir bilgi verebilecek misin
------------------------------------------------------

Tabii Türkçeye özgü harf kullanmadan yazacağım diye göbeğim çatladı o ayrı :) Ama programın performansını göstermesi açısından fena değil gibi görünüyor.

Not: Noktalama kullanmayacağım derken, doğru kullanmayacağım manasında, yani mesela soru işareti gereken yere yazmamak gibi ancak tabii bunun programı etkileyeceğini düşünmüyorum çünkü noktalama dağılımının konu ile alakası yok.
Görüş belirtmek için giriş yapın...

İlgili Yazılar

`Hacker´lar ve Ressamlar

FZ

LISP hacker´ı Paul Graham, bilgece makaleleri ile yazılım camiasında büyük spekülasyona yol açmaya devam ediyor.

Üniversitenin bilgisayar bilimi bölümünden mezun olduktan sonra bir sanat okuluna gidip ressamlık üzerine eğitim alan ve büyük ressamlar ile büyük `hacker´ların benzer mantalite ile çalıştıklarını iddia eden Graham, Hackers and Painters başlıklı son makalesinde bu benzerliğe değinmenin yanı sıra iş dünyasından ve açık kaynak kodlu programlama paradigmasının sessiz sedasız yol açtığı devrimden dem vuruyor çok detaylı ve eğlenceli bir şekilde.

Neden frameworklerden nefret ediyorum!

anonim

Bir baharat rafı yapmak için tahta, biraz çivi, çekiç, testere vb. birkaç alet mi edinmeliyim, yoksa "yüksek kaliteli", "endüstriyel üretim" bir baharat rafı için bir "general-purpose tool-building factory factory factory"ye mi ihtiyacım var?

Frameworkler, libraryler, middleware platformlar üzerine eğlencelibir yazı : Why I Hate Frameworks

Rakun XML Uygulama Platformu projesi 0.3.1 sürümünü çıkardı

evolution

İTÜ Yazılım Geliştirme Merkezi'nde 4 kişilik bir ekip tarafından yürütülen proje 0.3.1 sürümüne ulaştı. Web üzerinden uygulama tasarımı için tamamıyla XML kuralları kullanan platform arayüzler konusunda da kurumsal ihtiyaçları karşılayabilmek için AJAX yöntemini benimsemiştir.

Emacs mı VI mı?

vst

Uzun zamandır Vi(m) kullanıyorum. Ancak Emacs'in sunduğu çalışma ortamını kıskandığım için birkaç defa Emacs öğrenme girişiminde bulundum, bir tanesi de bugüne rastgeldi. Netice: olmuyor! Üşeniyor muyum, algısal sorunlarım mı var diye merak edip bir google araması yaptım: vim emacs cognition (kavrama). Sonuçlardan birisi çok faydalı bir literatür taramasına işaret ediyor.

Bu taramanın kaynağı "Benim editörüm senin editörünü döver!" argumanına alternatif bilimsel araştırmalar. Genelde bilişsel test uygulamalarına dayanan çalışmaların özetlerinin ve bazılarının tam metin bağlantılarının verildiği çalışmadan çıkardığım sonuç:

EnderUNIX'den 11. yerli yazılım

honal

EnderUNIX VoIPong, bağlı olduğu ağda, bütün trafiği görebilen bir noktaya yerleştirildiğinde, o anda aktif olan bütün VoIP çağrılarını tespit edebilmekte ve G711 algoritması ile sıkıştırılmış olanları (örneğin Microsoft Netmeeting görüşmeleri) PC'lerin "de facto" ses dosyalama standardı WAVE dosya formatında (.wav) diske kaydedebilmektedir. Sonradan, bu görüşmeler standart bir ses ortam yürütücüsü (örneğin Linux play, Windows Media Player) ile açılıp dinlenebilmektedir.