MÜZİKAL ENSTRÜMAN SESLERİNİN TANINMASI Mustafa Budak 1, Bülent Bolat Multimedya Sinyal Analiz Laboratuarı, Elektronik ve Haberleşme Mühendisliği Bölümü, Elektrik Elektronik Fakültesi Yıldız Teknik Üniversitesi 1 f051008@std.yildiz.edu.tr, bbolat@yildiz.edu.tr ÖZET Bu çalışmada çeşitli enstrümanlara ait ses verileri yapay sinir ağları ve en yakın k komşuluğu algoritması ile ayırt edilmeye çalışılmıştır. Öznitelik çıkarım yöntemi olarak Mel Frekans Kepstral Katsayıları (MFKK) seçilmiştir. Elde edilen katsayıların ortalamaları ve standart sapmaları birlikte kullanılmıştır. Sınıflayıcı olarak Elman geri yayılımlı sinir ağı, olasılıksal sinir ağı ve k-en yakın komşuluk algoritması seçilmiştir. Olasılıksal sinir ağı ve en yakın k komşuluğu ile başarı oranı olarak iyi sonuçlar elde edilmiştir. Anahtar Kelimeler: Müzikal enstrümanların ayırt edilmesi, Mel Frekans Kepstral Katsayıları, Elman geri yayılımlı ağ, Olasılıksal sinir ağı, k en yakın komşuluğu algoritması 1. GİRİŞ Ses verisinin hangi enstrümana ait olduğunun belirlenmesi, son yıllarda sayısı ve büyüklüğü hızla artan medya veri bankaları ve medya kütüphaneleri için önemli uygulama alanlarından birisidir. Enstrüman tanıma uygulamaları monofonik sesler üzerinde yapılabileceği gibi, son yıllarda polifonik sesler üzerinde yapılmış çalışmalar da mevcuttur. Essid ve diğerleri [1] temporal, kepstral, spektral, AM modülasyon indeksi gibi geleneksel yöntemlerin yanı sıra oktav bant sinyal yoğunluğu adını verdikleri yeni bir özniteliğin de aralarında bulunduğu bir grup öznitelikten hangilerinin başarıma en fazla katkıyı verdiğini tespit etmek için yaptıkları çalışmada Destek Vektör Makinaları (DVM) ile 10 farklı enstrümanı %93 ortalama başarım ile sınıflandırabilmiştir. Bolat a ait bir çalışmada [], 3 farklı enstrüman aktif öğrenmeli bir olasılıksal sinir ağı ile %81,4 başarımla sınıflandırılmıştır. Bu çalışmada öznitelik olarak 6. derece Mel Frekans Kepstral Katsayıları (MFKK) kullanılmıştır. Barbedo ve Tzanetakis [3], 011 tarihli bir çalışmalarında %99 başarıma ulaşmışlardır. 010 [4] tarihli bir başka çalışmada ise bu çalışmada ise 7 farklı enstrüman %81,57 (± 3.16) oranında doğru sınıflandırılmıştır. Bu çalışmada OverCs ve SparCs adı verilen, MFKK lardan türetilmiş öznitelikler kullanılmıştır. Bu çalışmada, Mel Frekans Kepstral Katsayıları kullanılarak bir grup enstrümana ait ses sinyallerinin tanınması üzerinde durulmuştur. Çalışmanın ilk aşamasında ses işaretlerine ait öznitelikler çıkarılmış ve ikinci aşamada bu öznitelikler yardımıyla ses işaretleri tanınmaya çalışılmıştır. Öznitelik çıkarımı [5] sese ait akustik bilgiyi indirgeyerek, sayısal formda ifade etmek olarak nitelendirilebilir. Sınıflandırma işlemi ise bilinen öznitelik gruplarından yararlanarak bilinmeyen bir örneğe ait öznitelikler yardımıyla bu örneğin sınıfının tespit edilmesidir. Çalışmada kullanılan özniteliklerin nasıl hesaplandığı. Bölümde, kullanılan sınıflandırıcılar 3. Bölümde, uygulama detayları ise 4. Bölümde anlatılmıştır. Çalışmada elde edilen sonuçlar 5. Bölümde değerlendirilmiştir.. MEL FREKANS KEPSTRAL KATSAYILARI Mel Frekans Kepstral Katsayıları (MFKK) ses tanıma işlemlerinde sıkılıkla kullanılan özniteliklerdir. MFKK, temel olarak ses işaretinin log-spektrumunun ters Fourier dönüşümü alınarak hesaplanabilen homomorfik bir dönüşümdür. MFKK ların hesaplanmasına ilişkin işlem basamakları aşağıda özetlenmiştir..1. Pencereleme Ses sinyalinin istatistiksel özellikleri yeteri kadar küçük bir zaman aralığında kararlığını korumaktadır [6]. Ses sinyalleri, genellikle 10 ile 0 ms arasında durağan kabul edilebilirler. Bu nedenle MFKK lar özgün sinyal kısa süreli çerçevelere bölündükten sonra her bir çerçeve için ayrı ayrı hesaplanır. Birbirini takip eden çerçevelerin örtüşmesi, yani (n). çerçevenin (n-1). çerçeveyi, (n+1). çerçevenin de (n). çerçeveyi kısmen kapsaması sağlanır. Böylelikle hesaplanan özniteliklerdeki değişimlerin daha yumuşak olması sağlanır. Matematiksel olarak çerçeveleme işlemi özgün sinyali bir dikdörtgen pencere ile çarpmaya denktir. Bu işlem pencereleme olarak adlandırılır. Sinyalin dikdörtgen pencereler ile çerçevelere bölünmesi pencerelenmiş sinyalin spektrumunda istenmeyen bozulmalara neden olmaktadır. Bu nedenle pencereleme için Hamming, Bartlett, Hann, Blackman, Gauss ve Kaiser pencereleri gibi pencereler tercih edilir [7, 8, 9]. Bu çalışmada Hamming penceresi kullanılmıştır. Hamming penceresi (1) eşitliği ile hesaplanır [10]: p( n) { ( π ) 0,54+ 0,46cos n N N / n N / 0 diğer = (1) Burada N pencere süresidir. Örtüşmeli çerçeveleme işlemi sayesinde pencereleme birbiri ardınca değil, kaydırılarak gerçekleştirilmektedir. Bu sayede çerçeveden çerçeveye geçişlerdeki süreksizlikler önlenmektedir... Hızlı Fourier Dönüşümü Hızlı Fourier dönüşümü Ayrık Fourier dönüşümünün özel bir şeklidir. Pencerelemeden sonra elde edilen işaretin Hızlı Fourier dönüşümü alınarak zaman domeninden frekans domenine geçilir. Burada hızlı dönüşüm algoritmaları kullanılmasındaki amaç işlemsel karmaşayı olabildiğince azaltmaktır [10]. 115
Elektrik-Elektronik ve Bilgisayar Sempozyumu 011.3. Filtre Bankası Literatürde, frekans boyutunda insanın duyma yapısının lineer olmadığı belirtilmiştir. Mel Frekans filtre bankası [11, 1] insanın duyma yapısını simüle etmek amacıyla kullanılmakta olup 1 khz e kadar lineer, 1 khz den sonra logaritmik örtüşen bant-geçiren üçgen filtrelerden oluşmaktadır. Hertz birimindeki frekans skalası ile Mel skalası [13] arasındaki dönüşüm çifti aşağıda verilmiştir. f m = 595. log 1 + 700 () m 595 f = 700. 10 1 (3) F1 ( x) L1P > (5) F ( x) L P 1 eşitsizliği doğru ise 1. sınıfa, değilse. sınıfa aittir. Burada F i (x) x in i. sınıfa ait olma olasılığı, P i i. sınıfın görülme olasılığı, L i ise i. sınıfın önem derecesini belirten bir maliyet katsayısıdır. Olasılık yoğunluk fonksiyonları ise (6) eşitliği ile bulunur: T n 1 ( x xi ) ( x x ) i F ( x) = exp m m (6) ( π ) σ n i= 1 σ Burada x i i. eğitim verisi, n eğitim verisi sayısı, m giriş uzayının boyutu, i örüntü numarası ve σ ise açıklık adı verilen ayarlanabilir bir yumuşatma terimidir [15]. 3.. Elman Geri Yayılımlı Ağ Elman ağı çok katmanlı ağ yapısına sahip olup giriş, gizli ve çıkış katmanları ile gizli katmanla bağlantısı olan içerik elemanlarından oluşur [16]. Gizli katman ile içerik elemanları arasındaki ağırlıklar 1 değerine sahiptir ve sabitlenmiştir. İçerik elemanları gizli katmandaki nöronların bir önceki iterasyon adımına ait çıkışlarını bir sonraki iterasyon adımına girdi olarak iletir (Şekil ). Şekil 1: Mel filtresi bankası.4. Log-Enerji ve Ayrık Kosinüs Dönüşümü Mel filtre bankası uygulaması sonrası elde edilen spektrumun genliğinin logaritması alınır. Daha sonra Ayrık Kosinüs dönüşümü ile frekans domeninden tekrar zaman domenine geçilerek Mel Frekans Kepstral Katsayıları hesaplanır. Ayrık Kosinüs dönüşümü [14] kompleks işlemler gerektirmediğinden işlemsel açıdan daha hızlıdır ve bu nedenle gerçek zamanlı uygulamalarda tercih edilen bir yöntemdir. K π n 1 M FCC ( n) = Y ( i) cos i i = 1 K (4) Y(i) = logx(i) şeklindedir. X(i) i. filtrenin çıktısını, Y(i) i. filtrenin log-enerji çıktısını göstermektedir. K, MFKK sayısını ifade etmektedir. (4) ifadesi Ayrık Kosinüs dönüşümünü gerçekleştirerek MFKK ları hesaplamaktadır. 3.1. Olasılıksal Sinir Ağı 3. SINIFLAYICILAR Olasılıksal Sinir Ağı (PNN, Probabilistic Neural Network) ilk kez D. F. Specht tarafından önerilmiştir. PNN, Bayes karar kuralını kullandığı ve sınıfların olasılıklarını Parzen Penceresi ile kestirdiği için Bayes-Parzen kestirici olarak da adlandırılmaktadır. Bayes kuralına göre bir x vektörü Şekil : Elman geri yayılımlı sinir ağı 3.3. k-en Yakın Komşuluk Algoritması k-en Yakın Komşuluk algoritmasında (k-nn) çeşitli sınıflara ait öznitelikleri çıkarılmış n adet veri kümelenir. Bu n değerinden küçük bir k değeri seçilir. Hangi sınıfa ait olduğu bilinmeyen yeni bir veri ile karşılaşıldığında bu veriye herhangi bir uzaklık ölçütüne göre en yakın k komşusu bulunur ve komşuların sınıflarına bakılır. Komşular arasında en çok hangi sınıf gözlenmişse verinin bu sınıfa ait olduğuna karar verilir [17]. Uzaklık ölçütü olarak en sık kullanılan ölçütler Öklid uzaklığı, kosinüs uzaklığı, korelasyon uzaklığı olarak sayılabilir. 4. UYGULAMALAR Bu çalışmada piyano, trompet, obua, korno, flüt, bas klarnet, alto saksafon, soprano saksafon, kemana ait ses örnekleri kullanılmıştır. Eğitim ve test için kullanılan ses örnekleri Iowa Üniversitesi veri setinden alınmıştır (http://theremin.music.uiowa.edu/mis.html). Yayla çalınan ve parmakla çalınan keman sesleri farklı enstrümanlara ait sesler olarak değerlendirilmiştir. 116
Ses örnekleri 44100 Hz örnekleme frekansında ve 16 bit- PCM şeklinde sayısallaştırılarak wav uzantısı ile kaydedilmiştir. Her bir ses örneği 0 ms lik çerçevelere bölünmüş ve çerçeveler arasında %40 lık örtüşme sağlanmıştır. Pencereleme fonksiyonu olarak Hamming penceresi seçilmiştir. N. derece MFKK lar N-1. derece katsayıları da içerdiğinden en uygun MFKK derecesinin belirlenebilmesi amacıyla her bir pencere için 5. dereceden MFKK lar hesaplanarak bu katsayıların ortalaması ve standart sapması alınmış ve öznitelikler elde edilmiştir. Veri kümesi eğitme ve test olarak ikiye ayrılmıştır. Eğitme kümesinde 354 ses örneği, test kümesinde ise 144 ses örneği kullanılmıştır. Her bir enstrümana ait toplam örnek sayısının yaklaşık %70 i eğitim kümesine ayrılmıştır (Tablo 1). Tablo 1: Sınıflandırmada kullanılan enstrümanlara ait verilerin dağılımı Enstrüman Adı Eğitim Kümesindeki Veri Sayısı Test Kümesindeki Veri Sayısı Piyano 35 15 Trompet 5 10 Obua 5 10 Korno 3 9 Flüt 7 11 Bas Klarnet 33 13 Alto 3 9 Soprano 3 9 60 5 80 33 Elman geri yayılımlı ağı oluşturulurken gizli katmandaki nöron sayısı 0 olarak belirlenmiştir. Transfer fonksiyonu olarak hiperbolik tanjant fonksiyonu, performans fonksiyonu olarak ise normalize karesel beklendik hata seçilmiştir. Tasarlanan ağ çeşitli eğitme yöntemleri için denenmiş ve en başarılı eğitme yöntemi belirlenmeye çalışılmıştır. Elman geriye yayılımlı ağı rastgele ağırlıklarla başlamakta, bu nedenle de eğitme işlemi her denemede farklı bir noktada bitebilmektedir. Bu nedenle her eğitim yöntemi için 3 deneme gerçekleştirilmiş ve gerçekleştirilen 3 denemenin ortalaması alınarak başarı yüzdesi hesaplanmıştır. Uygulama sonucunda en yüksek başarımın Bayescil Düzenleme (trainbr) yöntemi ile elde edildiği gözlenmiştir. Başarımın MFKK derecesine bağlı değişimi Tablo de gösterilmiştir. En yüksek başarımın 15. derece MFKK larla elde edildiği gözlenmiştir. Olasılıksal sinir ağı ve k-en yakın komşuluk algoritması rastgele başlangıç ağırlıkları içermediği gibi, yinelemeli bir eğitme aşaması da içermez. Bu nedenle, bu iki sınıflandırıcı yapısı sabit bir eğitme kümesi için her seferinde aynı sonucu üretirler, yani bu yapılar için ortalama başarım hesaplamak gerekli değildir. Olasılıksal sinir ağının kullanıcı tarafından belirlenen tek parametresi, açıklık değeri σ dır. σ nın en uygun değerinin bulunması için literatürde çeşitli yöntemler tanımlanmış olmakla birlikte, bu yöntemler genellikle işlemsel açıdan son derece karmaşıktır. Bu çalışmada en uygun σ değeri denemeyanılma ile 0.9 olarak bulunmuştur. MFKK derecesinin olasılıksal sinir ağının başarımına etkisi de araştırılmış ve elde edilen sonuçlar Tablo 3 te özetlenmiştir. Elde edilen sonuçlara göre en yüksek genel başarım 10. derece MFKK lar ile %90.3 olarak elde edilmiştir. Tablo : Elman geri yayılımlı ağının başarımının MFKK derecesine göre değişimi (%) MFKK 10 13 14 15 17 0 Piyano 55.6 44.4 44.4 66.7 6. 60 Trompet 86.7 100 86.7 93.3 93.3 90 Obua 60 76.7 66.7 83.3 73.3 66.7 Korno 96.3 85. 85. 81.5 9.6 88.9 Flüt 7.3 39.4 4.4 4.4 4.4 36.4 Bas 51.3 51.3 56.4 59 59 51.3 Klarnet Alto 63 44.4 51.9 51.9 48.1 48. Soprano 66.7. 40.7 63 33.3. 6.7 76 89.3 81.3 74.7 73.3 66.7 60.6 61.6 5.5 56.6 41.4 Genel Ort. 63 61.1 64.4 66. 63.4 56.7 Tablo 3: Olasılıksal sinir ağının başarımının MFKK derecesine göre değişimi (%) MFKK 10 1 13 15 17 0 Piyano 93.3 93.3 86.7 86.9 86.7 86.7 Trompet 100 100 90 90 90 70 Obua 90 90 90 90 80 70 Korno 100 100 100 100 100 100 Flüt 100 90.9 90.9 81.8 90.9 7.7 Bas Klarnet 53.9 61.5 61.5 69. 81.8 69. Alto Soprano Genel Başarım 88.9 66.7 66.7 66.7 88.9 55.6 77.8 77.8 77.8 77.8 77.8 77.8 96 96 96 96 96 88 93.9 100 97 100 100 100 90.3 90.3 88. 88.9 90.3 83.3 117
Elektrik-Elektronik ve Bilgisayar Sempozyumu 011 Çalışmanın son aşamasında k-en yakın komşuluk algoritması değerlendirilmiştir. En uygun komşuluk değeri, k tek sayı olacak şekilde farklı değerler verilerek denemeyanılma yöntemi ile tespit edilmeye çalışılmıştır. Uzaklık ölçütü olarak Öklid uzaklığı kullanılmıştır. Farklı MFKK dereceleri için yapılan denemeler sonucunda k = 3 için en yüksek başarım sağlandığı gözlenmiştir. 1. derece MFKK ların ortalamaları ve standart sapmaları kullanıldığında genel başarım %93.05 olarak elde edilmiştir. k en yakın komşuluk algoritması ile yapılan denemelerde elde edilen sonuçlar Tablo 4 te özet olarak verilmiştir. Tablo 4: k=3 ve Öklid uzaklığı için k-en yakın komşuluk algoritmasının MFKK derecesine bağlı başarımı MFKK 10 1. 13 15 17 0 Piyano 93.3 93.3 93.3 86.7 86.7 86.7 Trompet 100 100 100 90 90 70 Obua 80 90 90 80 80 70 Korno 100 100 100 100 77.8 66.7 Flüt 100 100 90.9 7.7 63.6 81.8 Bas Klarnet 84.6 76.9 76.9 76.9 76.9 69. Alto Soprano Genel Başarım 77.8 66.7 66.7 66.7 77.8 44.4 77.8 77.8 77.8 77.8 77.8 66.7 100 100 100 100 88 9 93.9 100 100 100 100 100 9.4 93.1 9.4 88.9 85.4 81. 5. DEĞERLENDİRMELER Bu çalışmada çeşitli enstrümanlara ait ses verileri yapay sinir ağları ve en yakın k komşuluğu algoritması ile ayırt edilmeye çalışılmıştır. Seslerin ayırt edilebilmesi için ses sinyalleri çerçevelere bölünerek her çerçevenin MFKK ları hesaplanmıştır. Hesaplanan MFKK ların ortalamaları ve standart sapmaları öznitelik olarak kullanılmıştır. Hesaplanan öznitelikler yardımıyla 3 farklı sınıflandırıcı eğitilmiş ve daha önceden ayrılmış olan test verileri ile test edilerek sınıflandırıcıların başarımları ölçülmüştür. Elde edilen sonuçlara göre en yüksek başarım 1. derece MFKK lar kullanılarak k = 3 için k-en yakın komşuluk algoritması ile %93.1 olarak elde edilmiştir. Olasılıksal sinir ağı kullanıldığında en yüksek başarım 10. Derece MFKK lar ile %90.3 olarak gerçekleşmiştir. Genel olarak, sınıflandırıcı yapıların başarımları veri kümesindeki sınıf sayısı arttıkça azalma eğilimindedir. Bu çalışmada ele alınan problem için de bu durum geçerliliğini korumaktadır. Çalışma kapsamında kullanılan enstrüman sayısının artımı ile başarımın düşmesi beklenmektedir. Bu nedenle gelecekteki çalışmalarda öznitelik çıkarımında diğer yöntemlerin kullanımı ya da MFKK ile birlikte başka öznitelik gruplarının da değerlendirilmesi düşünülmektedir. Önerilen yöntemde kullanılan MFKK ların hesaplanmasında işlem karmaşasının yüksekliği gelecekteki çalışmalarda ele alınması planlanan konulardan biridir. MFKK derecesinin azaltılması, ya da daha düşük dereceli MFKK lar ile daha yüksek başarım sunabilen farklı sınıflandırıcıların tespit edilmesi ileride gerçekleştirilmesi planlanan çalışmalar arasındadır. 6. KAYNAKLAR [1] Essid, S., Richard, G. ve David, B., Musical Instrument Recognition by Pairwise Classification Strategies, IEEE Transactions on Audio, Speech, and Language Processing, vol. 14 (4), pp. 1401 141, 006. [] Bolat, B., Enstrüman Seslerinin Tanınması ve Sınıflandırılması, Doktora Tezi, Yıldız Teknik Üniversitesi FBE, 006. [3] Barbedo, J.G.A. ve Tzanetakis, G., Musical Instrument Classification using Individual Partials, IEEE Transactions on Audio, Speech, and Language Processing, Vol. 19 (1), PP. 111 1, 011. [4] Morvidone, M., Sturm, B. L., ve Daudet, L., Incorporating Scale Information with Cepstral Features: Experiments on Musical Instrument Recognition, Pattern Recognition Letters, Vol. 31, Issue 1, pp. 1489-1497, 010. [5] Gish, H. ve Schmit, M., Text-Independent Speaker Identification, IEEE Signal Processing Magazine, vol. 11, pp. 18-3, 1994. [6] Schroeder, M. R. ve Atal, B. S., Generalised Short-time Power Spectra and Autocorrelation Functions, J. Acoust. Soc. Amer., vol. 34, pp. 1679-1683, 196. [7] Davis, S. ve Mermelstein, P., "Comparison of Parametric Representations for Monosyllabic word Recognition in Continuously Spoken Sentences," IEEE Acoustics, Speech, and Signal Processing, vol. 8, no. 4, pp. 357-366, 1980. [8] Fan, N. ve Rosca, J. P., "Enhanced VQ-Based Algorithms for Speech Independent Speaker Identification," Audio and Video based Biometric Person Authentication, pp. 470-477, 003. [9] Molau, S. et al., "Computing Mel-frequency Cepstral Coefficients on the Power spectrum," IEEE Int. Conf. Acoustics, Speech, and Signal Processing,vol. 1, pp. 73-76, 001. [10] Cooley, J.W., ve Tukey, J.W., An Algorithm for the Machine Computation of Complex Fourier Series, Mathematics of Computation, Vol. 19, pp. 97-301, April 1965. [11] Rabiner, L. ve Juang, B. H., Fundamentals of Speech Recognition, Prentice Hall, 1993. [1] Davis, S. B. ve Mermelstein, P., Comparison of Parametric Representations for Monosyllabic Word Recognition in Continuously Spoken Sentences, IEEE Trans. Acoustics, Speech Signal Process. 8, pp. 357 366, 1980. 118
[13] Quatieri, T. F., Discrete-Time Speech Signal Processing: Principles and Practice, Prentice Hall, 00. [14] Gonzalez, R. C. ve Woods R.E., Digital Image Processing, nd Ed., Prentice Hall, NJ, 00. [15] Specht, D. F., "Probabilistic Neural Networks", Neural Networks, Vol. 3 (1), pp 109-118, 1990. [16] Cruse, H., Neural Networks as Cybernetic Systems nd edition, 006. [17] Grother, P. J., Candela, G. T. ve Blue, J. L., "Fast Implementation of Nearest Neighbor Classifiers," Pattern Recognition, vol. 30 pp. 459-465, 1997. 119