Thread overview
Yapay Öğrenme Gaussian Mixture Modeli(ve hayaller rüyalar)
Jul 05, 2015
kerdemdemir
Jul 08, 2015
zafer
Jul 11, 2015
Salih Dinçer
Jul 13, 2015
kerdemdemir
July 06, 2015

Merhaba Arkadaşlar,

Benim böyle bir ihtiyaçım var. Gaussian Mixture Model iyi sonuçlar yeren bir sınıflandırma algoritması. İnsanları sesinden tanımaya çalışan projemde böyle bir ihtiyaçım var.
Şimdiye kadar C++'da şu linkdeki kütüphaneyi kullanıyordum:
http://www.mlpack.org/doxygen.php?doc=classmlpack_1_1gmm_1_1GMM.html

Bu kütüphaneyi ve gereksinimlerini(BLAS, LAPACK, ARMODİLLO, ZLİB vs...) derlemekten sıkıldım ve benim projem için çok yavaş kalıyordu.

Şimdiki amacım GMM algoritmasını C++'dan çalıştırabilecek şekilde D ile yazmak. Hayallerim ve rüyalarım :) ise bunu CUDA kullanarak GPU 'ya yaptırmak.

Kafamdaki aşamalar:

1 - https://github.com/dsimcha/dstats kütüphanesi incelemek
2 - Eğer naive bayes implementasyonu yoksa naive bayes algoritması ile başlamak
3 - Multivarite bayes algoritmasını yazmak.
4 - Birden fazla Bayesden oluşan GMM'i yazdırmak.
5 - CUDA'yı D ile nasıl kullanırım araştırması (opsiyonel)
6 - Matrix çarpımlarını CUDA'ya nasıl yaptırırım araştırması (opsiyonel)

Benim aşamalarda pek bir tecrübem yok GMM 'i belirttiğim kütüphanelerden kullanmıştım. Naive Bayes 'ide 2-3 sene önce okulda ödev olarak yapmıştım. Eğer aşamaların herhangi birinde bir fikri olan varsa iletişime geçersek ben çok sevinirim. Umarım fazla hayal kurmuyorumdur.

Saygılarımla Erdem

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

July 07, 2015

SIMD'nin ne kadar ilgili olduğunu bilmeden hatırlatıyorum: Acaba core.simd modülü işine yarar mı?

http://dlang.org/phobos/core_simd.html

Manu Evans'ın DConf 2013 konuşmalarından birisi bu konu ile ilgiliydi.

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

July 08, 2015

Merhaba Erdem,

Ses tanıma ve ses sentezleme sistemleri her daim gönlümde yatan bir rüya olmuştur. Ancak hayat bizi alıp başka bir tarafa attı ve genel tecrübem veritabanı sistemleri ve son kullanıcı uygulamarı tarafında şekillendi. Ses tanıma sistemleri ise her zaman gönlümde yatan bir aslan olarak kaldı :)

Böyle alt düzey konularda bilgi ve tecrübem yok malesef, ancak seni büyük bir hevesle takip ediyorum. Umuyorum güzel şeyler ortaya çıkacak, şimdilik yapabildiğim sadece sana kolaylıklar dilemek.

Bu arada geçenlerde Deep Learning ile ilgili güzel bir sunuma denk gelmiştim, belki sende biliyorsundur, bakmak istersen adresi şöyle https://www.youtube.com/watch?v=37ecsMezvwM

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

July 11, 2015

Bunlar rüyalardan öte ihtiyaç duyulan mümkün konular. Geniş bir sektör, ses tanımada kullanıldığını bilmiyordum. Yardımımız ancak D tarafında olacaktır. Olmalıdır da çünkü ilginç bir konu, başarılar...

Dip Not: Bazen düşünürüm, biyoloji dünyasındaki akılsız moleküllerin nasıl olurda içinde gezdikleri sıvıda diğer molekülleri algılar (inference) ve 3 boyutlu uzayda mükemmel bir temas noktası (clustering) geliştirebilir. Peşinden hayret de ederim :)

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

July 13, 2015

Merhaba Arkadaşlar ,

Zafer hocam , Ali Hocam , Salih hocam ilgi gösterdiğiniz için teşekkür ederim.

Ben bu dediğim aslında basit olan işleri "http://sourceforge.net/projects/sharpear/" ve "http://sourceforge.net/projects/speakerfinder/" projelerimde kullandım. Ama hep kütüphane kullanıyordum. İstediğim bir matematikci kadar iyi olmasada iş görücek şekilde GMM algoritmasını D ile uygulayabilmek.
Benim yapacağım iş çok kaliteli olmayacaktır fakat bakarsınız sonradan geliştiririz.

Şu anda evimi taşıdığım için iyice buraya da yazamaz oldum. Ama geceleri çalışıp ilerleme kadetmeye çalışıyorum.

GMM (Gaussian Mixture Model ) birden fazla Gauss Modelinin ile oluşturulan bir model . Diyelimki öğrencileri A-B-C gibi notlarla sınıflandırmaya çalışıyoruz. Doğada çok görülen "Çan Eğrisi" gibi bir Gauss eğrisi yaklaşım okullarda çok kullanılır. Fakat bazen model çok karışıkdır basit bir eğrinin çizeceği karar verme sınırları(decision boundary) çok keskin olabilir. Daha hassas karar verebilmek için N tane "Çan Eğrisi" kullanılabilir. GMM insanların sesini ayırmada çok iyi sonuçlar verir .

Kullanılan featurelarda temel frekans(f0) , 1000 - 2000 Hz bandında olan rezonans frekansı f1, 2000 - 3000 bandında olan rezonans frekansı f2 olabilir. İnsan beyni harfleri linkte görebilecek şekilde çözüyor: http://home.cc.umanitoba.ca/~krussll/phonetics/acoustic/formants.html

Konuya yabancı kişilere biraz karışık gelebilir ama en temel özellikler bunlar. Eğer toplanmayı başarabilirsek ve ilginizi çekiyorsa biraz daha bahsedebilirim. Belki hoşunuza gidebilir ve D'ye katkı sağlayabiliriz . Bende hobi olarak yapıyorum. İş hayatımda QT ile arayüz yazıyorum :( .

Ben şu anda başarılı bulduğum "https://onlinecourses.science.psu.edu/stat557/book/export/html/35" linkindeki Bayes anlatımını okudum, anladım. Bundan sonra GMM ile ilgili matematiksel yazılar okuyup anlayacağım. Yani hala 1. adımdayım. Sonra C++ açık kaynaklı kütüphanesi olan MLPack 'ide örnek alarak kod yazmaya başlayacağım. Eğer GPU'yu işin içine katabilirsem çok sevineceğim.

Ev taşıyorum bir yandan da istekliyim fakat iyice yavaşladım.

Cevaplarınız için hepinize teşekkür ederim fikirleriniz benim için önemli
Saygılarımla
Erdem

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]