Speech recognition based on pattern comparison techniques

thumbnail.default.alt
Tarih
1996
Yazarlar
Meral, Osman
Süreli Yayın başlığı
Süreli Yayın ISSN
Cilt Başlığı
Yayınevi
Institute of Science and Technology
Özet
Bu tez çalışmasında şablon karşılaştırma (pattern comparison) metodu ile konuşmacıya bağımlı sözcük tanıma işlemi yapılmıştır. Tez 6 bölümden oluşmaktadır. Her bölüm sözcük tanıma işinin ayrı fazlarına karşılık düşer. Bölüm 1 'de konuya giriş yapılmıştır. Bölüm 2'de konuşma tanıma teknolojisindeki kavramlar nelerdir sorusuna yanıt aranmış, günümüze kadar mevcut konuşma tanıma yöntemleri özetlenmiştir. Konuşma tanımada gerçeklenmesi düşünülen sistem için birçok parametre vardır. Sözcüklerin birbirinden ayrık şekilde söylendiğinde mi tanınacağı yoksa sürekli konuşma içinden mi tanınacağı, tek bir kullanıcı için düzenlenmiş yani kullanıcı bağımlı(speaker dependent) veya bütün kullanıcılara açık kullanıcıdan bağımsız mı (speaker independent) tanınacağı en önemli parametrelerdir. Bunun yanında sözcük sayısının az sayıda (1-20 sözcük), orta sayıda (20-100) sözcük ve büyük sayıda (100' büyük) olmasına bağlı olarak yöntem değiştirmek gerekebilir. Konuşma ortamının gürültüden izole veya gürültülü olması, transmisyon ortamının santralden geçmesi, yalan konuşma gibi parametreler de konuşma tanıma başarısını etkileyen parametrelerdir. Bu tezde gerçeklenen yöntemi yukarıda bahsedilen parametrelere göre sınıflandırırsak şunları söylemek mümkün. Konuşma tanıma yöntemi kullanıcı bağımlıdır, ayrık sözcükleri tanımaktadır, orta sayıda(20-100) sözcük grubu için geçerlidir ve gürültüsüz ortamda (SNR > 20 dB) çalışmaktadır. Yine bölüm 2'de konuşma tanıma yöntemlerinden olan okustik-fonetik yaklaşım, şablon karşılaştırma yaklaşımı, ve yapay zeka yöntemi kısaca anlatılmıştır. Konuşma tanıma ile ilintisi sebebiyle konuşmacının tanınması(speaker recognition), sürekli konuşma içinden herhangi bir sözcüğü tanıma (word-spotting) kavranılan ile ilgili kısa bilgiler de bu bölümde verilmiştir. Bölüm 3 'de konuşma tanıma için analiz yöntemleri anlatılmıştır. Konuşma tanımada, konuşma işaretinin karakteristiğini ifade eden parametrelerin sayısal işaret işleme yöntemleri ile elde edilmesi en önemli aşamalardan biridir. Konuşma işaretinin bir çok parametrik gösterimi mevcuttur. İşaretin tasa zamanlı enerjisi, sıfır geçiş oranı sesli-sessiz olması vb. bilgiler ses işareti için parametrik gösterimlerdir. Bunların yanında en önemli parametrik gösterim, ses işaretinin kısa zamanlı spektral zarfıdır. Bu gösterim işaret ile ilgili en önemli bilgiyi vermektedir. Bu nedenle spekral analiz, konuşma tanıma sisteminde sayısal işaret işleme ön bloğunun çekirdeği sayılır. Süzgeç bankası spektrum analizi ve doğrusal öngörü (linear prediction) analizi, spectral analiz için en çok kullanılan iki yöntemdir. Süzgeç bankası spektral analiz yönteminde telefon şebekesi kalitesindeki işaretler 100-4000 hz arası bandla sınırlandıktan sonra Q adet band geçiren süzgeçten geçirilir. Band geçiren süzgeçlerin çıkışı ses işaretinin kısa zamanlı spectral bilgisini verir. Böyle bir analiz için blok şema aşağıda verilmiştir. vıı Süzgeç bankası analizinde en çok kullanılan süzgeç tipi eşit bandlı(uniform) süzgeç bankası yöntemidir. Bütün spektrum Q eşit banda bölünür. Genelde süzgeçlerin band genişlikleri birbirinin biraz içine girer(overlapping). Bu durum hem fiziksel gerçeklenmenin getirdiği bir sınırlamadır hem de çoğu zaman tercih edilen bir yoldur. Alternatif yöntem ise eşit bandlı olmayan (non-uniform) süzgeç bankası yöntemidir. Bu yöntemde her bir süzgecin band genişliği ve merkez frekansı bir kritere göre belirlenir. Bu çoğu zaman logaritmik frekans sıkalasına karşılık gelir. Bunun yanında insanın sesi algıladığı frekanslarla ilgili kritik band sıkalası da (mel scale) popüler spectral analiz yöntemidir. Süzgeç bankası spektral analizinde bazı işlemlerin süzgeçleme işleminden önce ve sonra yapılması gerekebilir. Süzgeçleme öncesi işlemler, işaretin vurgulanması, gürülteden arındırma, işaretin iyileştirilmesidir. Süzgeçleme işleminden sonra yapılacak işlemler ise süzgeç çıkışındaki işaretin zamanda yumuşatılması, süzgeç çıkışının normalizasyonudur. Ses işaretinin analizinde kullanılan diğer yöntem ise doğrusal öngörüdür. Bu analiz sıkça kullanılır. Bunun sebeplerine gelince:Doğrusal öngörü ses işaretinin iyi modellenmesine olanak verir. Özellikle sözcüklerin sesli bölgelerim iyi modeller, sessiz bölgelerde ise kabul edilebilir sınırlar içerisindedir. Doğrusal öngörü matematiksel olarak basit ve yazılım ve donanım olarak gerçeklenmesi kolay bir yöntemdir. Süzgeç analizinden daha az işlem gerektirir. Doğrusal öngörü, süzgeç bankası ile karşılaştırıldığında, konuşma tanıma işlemi için gayet iyi performans göstermiştir. Aşağıda konuşma tanımada kullanılan doğrusal öngörü ön işlemcisi için blok şema verilmiştir. İşaret önce konuşma bandında sınırlandırılmıştır. Konuşma bandı 100-3200 Hz olarak kabul edilmiştir. Sınırlandırılan bu işaret sabit frekansla örneklenmiştir. Bu çalışmada örnekleme frekansı 6.67 kHz seçilmiştir, örnekleme işleminden sonra işaretin gerekirse daha anlamlı hale gelmesi için işaret eğer gürültülü ise bu gürültünün yok edilmesi, işaretin iyileştirilmesi işlemleri gerekebilir. Bunlar için literatürde birçok yöntem mevcuttur. Spektral çıkartma (spectral subtraction) vıı yöntemi gürültünün olduğu frekansların tespit edilmesi ve gürültünün spektrumunun işaretin spektrumundan çıkartılması ile gürültüden arınmış işaretin elde edilmesini sağlar. Bu tezde bu işlemler gerekmemiştir,çünkü tezin amacı gürültülü ortamlarda konuşma tanımak değildir. Doğrusal öngörü yöntemi yüksek frekanslı işaretler için çok iyi modelleme yapamaz ve yüksek frekansları zayıflatır.Bundan dolayı ön vurgulama(preemphasis) bloğunda işaretin yüksek frekanslı kısımları daha belirginleştirilir ki bu bilgiler analiz sırasında kaybolmasın. Bunun için birinci dereceden süzgeç kullanılır. Vurgulanan işaret daha sonra çerçevelere ayrılır(frame blocking). Analiz çerçevesi genelde 10 ile 50 ms arası zamana karşılık gelir. Tezde analiz çerçevesi 45 ms olarak alınmıştır bu 300 örneğe karşılık düşmektedir. Her analiz çerçevesi 30 ms diğerinin içine geçmiştir (ovelapping). Bu durumda her 15 ms de bir analiz edilen bilgiler elde edilmektedir. Bir sonraki adım ise işaretin bir çerçeveden sonraki çerçeveye geçerken meydana gelebilecek kesintileri önlemek için pencereleme(windowing) işlemidir. Pencere fonksiyonu olarak Hamming penceresi seçilmiştir. Doğrusal öngörü katsayılarının elde edilmesi için otokorelosyon yöntemi kullanılmıştır. Bunun için her çerçevenin otokorelasyon değerleri hesaplanmıştır. Bu hesaplanan değerler daha sonrasında doğrusal öngörü (LPC analysis) bloğunda kullanılarak doğrusal öngörü katsayıları Levinson- Durbin rekursif metodu yardımı ile elde edilir. Elde edilen bu doğrusal öngörü katsayılarından kepstral(cepstral) katsayılar bulunur. Kepstral katsayılar konuşma tanıma amacıyla kullanıldığında doğrusal öngörü katsayılarından daha iyi sonuç verdiği görülmüştür. Bütün bu analiz sonucunda ses işaretin karakteristiğim veren özellikler(feautures) elde edilmiştir. Artık bundan sonra bu özelliklerin karşılaştırılması problemiyle uğraşılacaktır. Bölüm 4'de şablonların karşılaştırılması teknikleri anlatılmıştır. En çok kullanılan şablon karşılaştırma tekniği, analiz sırasında elde edilen özellik vektörlerinin zaman sekanslarını kullanmaktır. Test şablonu, T, konuşma süresince elde edilen spektral sekans aşağıdaki gibi ifade edilir. t={m2 ti Her t, işaretin i zamanındaki spektral vektöre karşılık düşer. Başvuru şablonlan(reference patterns) kümesi ise şöyle tanımlanır. ıx yakınındaki diğer vektörlerle de karşılaştırmayı kapsar. Böylece zamanda kayma kompanze edilmiş olur. Zamanda düzeltmeyi yapmak için zamanda dinamik eşleme yöntemi kullanılır(dynamic time warping). Aslında problem test vektörleri ile başvuru vektörlerinin karşılaştırılması sırasında en az hatalı yolu bulma (yol karşılaştırılan vektörlerin indisinin kordinatları ile belirlenir) problemidir. Zamanda dinamik eşleme yöntemi bu problemin basit ve etkin çözümüne olanak sağlar. Bölüm 5 'de gerçekleştirilen sistem anlatılmıştır. öğrenme(training) aşamasında doğrusal öngörü katsayıları ve kepstral katsayılar bulunmuştur. Tanıma fazında bulunan bu katsayılar spektral domende karşılaştırılarak ne kadar birbirine benzedikleri belirlenmiştir. Bu karşılaştırma sonucunda elde edilen hata(yada benzerlik ölçüsü) belli bir eşik değerin altında ise karşılaştırılan sözcük tanınmış olur. isimler komutlar ve rakamları içine alan 27 sözcük 5 kez tekrarlanmak suretiyle başvuru kümesi oluşturulmuştur. Itakura'nın logaritmik benzerlik ölçüsü, kepstral uzaklık ölçüsü, lifterli kepstral uzaklık ölçüsü, lifterli kepstral projeksiyon uzaklık ölçüsü spektral vektörlerin karşılaştırılması için kullanılmıştır. Karşılaştırma sonucunda en yakın 10 sözcük benzerliklerine göre sıralanmıştır. Beklenen; karşılaşanlar sözcükle sıralamada en çok benzeyen 5 sözcüğün aynı kümeden olmasıdır; çünkü aynı sözcükten 5 kez tekararlandı, en çok benzeyenler de o kümeden olması gerekir. Bu durum kullanılan uzaklık ölçüsünün dayanıklılığının bir göstergesi olarak kabul edilir. Bu anlamda en dayanıklı (robust) uzaklık ölçüsü lifterli kepstral projeksiyondur. Eğer karşılaştırma sonucunda elde edilen sıralamada, en benzer sözcük tanınan sözcük olarak kabul edildiğinde, tanıma algoritmasının başarısı %96 dir. Bahsedilen karşılaştırma şekli çok güvenilir değildir. Karşılaştırma başarınında en çok benzer 5 sözcük eğer o sözcüğün öğrenme kümesindeki sözcükler ise en başarılı tanıma yapılmış olur. Bu kritere göre başarım yüzdesi aşağıda verilmiştir. - ?- LPC - ?- Ceps - ss?- Cepsjifter - S3- Ceps_proj 2nd sim 3rd sim 4fhsim Şekilden görüleceği gibi en çok benzeyen 4 sözcüğün(kendi dışında) aynı kümeden olma yüzdesi lifterli kepstral projeksiyon ölçüsü için %85'ler civarındadır. Itakura'nın logaritmik benzerlik ölçüsünün en kötü spektral karşılaştırma ölçüsü olduğu görülmüştür. Bu çalışmalar sonucunda görülmüştür ki kepstral uzaklık ölçülerinin başarımı daha yüksektir ve kepstral uzaklık ölçüleri daha dayanıklı(robust) uzaklık ölçülerdir. XI {r\r2,...,rv}. Her başvuru şablonu, R', spektraJ vektörlerdir. R1 = j y,\, f[..... r'j] Şablon karşılaştırmanın amacı test şablonu ile başvuru şablonları arasındaki benzerliği bulmaktır. Bunun için aşağıdaki problemlerin dikkate alınıp çözülmesi gerekmektedir. - Tmd Rj genellikle eşit olmayan uzunluklardadır. Bu durum özellikler için konuşma hızının farklı olmasından kaynaklanır. - Spektral vektörleri karşılaştırmak için yerel benzerlik ölçüsüne gerek vardır. Bütün bunlar yerel(local) benzerlik ölçüsü ve tüm (global) benzerlik ölçüsünün tanımlanmasını gerektirmektedir. Yerel benzerliklerin bulunması için spektral karşılaştırma yöntemleri kullanılır. Logaritmik spektral uzaklık ölçüsü spektral vektörlerin karşılaştırılmasında en çok kullanılan ölçüdür. Karşılaştırılacak iki spektrum S((û) ve S (cû ) verilmişse, bu iki spektrumun farkı aşağıdaki gibi tanımlanır V((û)= logS((û)-logS(w) S ((O) ve S ' ((O) arasındaki uzaklık ölçüsü ise aşağida tanımlanmıştır. -% 1% Bu formüller yardımıyla kepstral uzaklık ölçüleri için formüller çıkarılmıştır. Kepstral uzaklık ölçülerinde kepstral katsayıların bazılarının ağırlığının değiştirilmesi konuşma tanıma yüzdesini artırmaktadır. Büyük indeksli kepstral katsayılar doğrusal öngörü analizinin sınırlamalarından kaynaklanan sebeplerden daha fazla etkilenirler. Düşük indeksli kepstral katsayılar ise transmisyon ortamından, sesin periyodundan, kullanıcının karakteristiklerinden daha fazla etkilenirler. Eğer karşılaştırma sırasında düşük ve yüksek indeksli kepstral katsayıların ağırlığı toplam hata üzerinde azaltılır diğer katsayıların ağırlığı artırılırsa daha sağlıklı bir karşılaştırma yapmak mümkün olacaktır. Kepstral katsayılar üzerindeki bu işleme liftermgfliftermg) denir. Kepstral katsayılarda ilk 20 katsayıyı almak yeterlidir. Yukarıda anlatılan kepstral uzaklık ölçüleri yanında gürültülü ortamda konuşma tanıma performansını artırmak için daha dayanıkh(robust) uzaklık ölçüleri kullanmak mümkündür. Aynı sözcüğün farklı hızlarda söylenmesi spektral vektörlerin zamanda kaymasına sebep olur. Test şablonu ile başvuru şablonunu karşılaştırırken zamandaki kaymanın kompanze edilerek düzeltilmesi işlemi zamanda sıraya dizme(time alignment) işlemi olarak adlandırılır.
This study describes pattern comparison method that recognizes speaker dependent isolated spoken words. Word training samples are obtained from samples male-speech. LPC coefficients are used as a features that describes speech. A low pass filter is used for antialiasing and to limit frequency of signal in voice band. Autocorrelation analysis is made to calculate LPC filter coefficients. Durbin's recursive algorithm is used to obtain coefficients by using output of autocorrelation analysis. Endpoint detection algorithm suppresses background noise and uses energy of the signal to find accurate beginning and end of the signal. In the training phase extracted parameters (LPC coefficients,cepstral coefficients ) are strored and called reference templates of speech. In the recognition phase extracted parameters of the spoken word(test pattern) are compared with the pre-stored reference patterns. Time registration of the test and reference may not be perfectly aligned, so warping process is used to find how much test and reference patterns are similar to each other. Dynamic time warping algorithm and log likelihood as a distance measure and ceptral distance measures are used together to find distances between test and reference pattern. By using a decision rule, spoken word is found by taking the reference pattern that has minimum error (error value is below than reject error threshold ) is selected as a recognized word or rejected if there is no minimum error. True recogniziation ratio of the words is nearly 95 % for the available library reference patterns.
Açıklama
Thesis (M.Sc.) -- İstanbul Technical University, Institute of Science and Technology, 1996
Anahtar kelimeler
Kelime tanıma, Word recognition
Alıntı