Konuşma Tanıma Sistemlerini Kandırmak: Psikoakustik Maskeleme

Fatma Gumus
novaresearchlab
Published in
17 min readFeb 19, 2020

Yapay öğrenme modelini yanlış davranması amacıyla, eğitilmiş bir model için manipüle edilen test örnekleri ile yapılan manipülasyon kaçınma saldırıları olarak tanımlanır. Manipülasyon genel olarak, gerçek test örnekleri üzerine insanın fark edemeyeceği kadar küçük değişimler olarak tasarlanır. Kaçınma saldırıları, güvenlik açısından bütünlük ihlali oluşturur, modelin test başarısını düşürür. Saldırı beyaz kutu (yani eğitilmiş model ile ilgili kısmi/tam bilgi kullanılarak) yada kara kutu (yani eğitilmiş model ile ilgili herhangi bir bilgi olmaksızın) gerçekleştirilebilir. Hedefli saldırılar girdi ile belirli bir çıktıyı amaçlarken, ayrım gözetmeyen saldırılar modelin herhangi hatalı bir çıktı vermesi ile ilgilenir.

Söz konusu kaçınma saldırıları ile ilgili daha önce yazılı/sözlü sunumlarda aşağıdaki ördek şekline benzer örneklerini görmüş olabilirsiniz. Sınıflandırma sonucunu değiştirdiği için, gerçek örneğe gürültü eklenmesi ile örnek “zararlı” hale gelmiştir. Sonuç görüntüde, eklenen gürültünün göz ile fark edilmeyecek kadar küçük olduğuna dikkatinizi çekerim. Zararlı görüntü örneklerinin fiziksel ortamda aktarılabilirliği hakkında çeşitli çalışmalar yapılmış, örneklerin basıldıktan sonra da sınıflandırıcıları kandırabildikleri görülmüştür (Kurakin ve ark.,2016). Zararlı görüntü üretme algoritmalarının ödünç alınarak üretilen bir konuşma örneğini yine şekilde görebilirsiniz. Zararlı konuşma örneklerinin fiziksel ortamda iletimi konusu ise, yakın zamana kadar çok başarılı olarak gerçekleştirilmiş bir konu değil. Ses dalgaları havada iletim sırasında küçük zararlı değişikleri, mikrofona ulaşana kadar kaybetmektedir.

Kaynak: Figure 3 “Gong, Y., & Poellabauer, C. (2018, July). Protecting voice controlled systems using sound source identification based on acoustic cues. In 2018 27th International Conference on Computer Communication and Networks (ICCCN) (pp. 1–9). IEEE.”

Konuşma sinyali için fark edilmeyecek değişiklikler ile zararlı örnek üretmek, görüntüde olduğundan daha karmaşık olabilmektedir. Bunun nedenlerinin en büyüğü doğrusal olmayan özniteliklerin oluşturduğu ek karmaşıklıktır. Ancak bu yazının asıl konusu olan “psikoakustik maskeleme”den çok sapmamak için bu detayları atlıyorum.

Bu yazıda anlatılacak olan psikoakustik gizleme yöntemi Qin ve ark.’ın (2019), Chan ve ark.’ın (2016) konuşma tanıma modelini temel alan bir sisteme düzenledikleri hedefli, beyaz kutu bir kaçınma saldırısıdır. “Otomatik Konuşma Tanıma için Algılanamaz, Gürbüz ve Hedefli Zararlı Örnekler” çeviri başlıklı kaynak makalede (Qin ve ark.,2019), konuşma sinyalinin, fiziksel özellikleri nedeniyle, iletim ortamında saldırı etkinliğini yitirmesinin önüne geçmek amaçlanmıştır. Konuşma örneğine insan işitsel sisteminin algılayamayacağı mesajlar saklanarak, zararlı örneğin havada iletilirken yanıltıcı etkisini yitirmeden, otomatik konuşma tanıma sisteminin yanıltılması için psikoakustik biliminden yararlanmıştır.

Zararlı örnek için belirlenen dört özellik.

Konuşma tanıma sistemlerinin kandırılması, “güvenilir yapay zeka” başlığı altında listelenen “yapay öğrenme gürbüzlüğü”nün bir konusudur ve görüntü yada metin işleme kadar bilgisayar mühendisliği lisans düzeyinde yaygınlaşmamış olan ses işleme medyumunu konu almaktadır. Kaynak makalenin, yapay öğrenmenin böyle çok özel bir alt dalına ait olmasının yanı sıra, dijital sinyal işleme ve sinirbilim alanlarından yoğun olarak faydalanmaktadır. Okuyucunun, bu farklı disiplinlerin hepsi ile ilgili yeterli bilgiye sahip olduğunu varsaymak yerine, konuyu sezgisel bir yolculuk olarak ele aldım. Amacım her konu hakkında ayrıntılı bilgi vermek değil, problemin tüm bileşenlerine genel bakış sağlamaktır. Asıl konumuz olan “psikoakustik maskeme” ile direkt ilgili olmayan hesaplama ve formülleri atlayarak ilerleyeceğim.

Psikoakustik maskelemeye ulaşmak için çıkacağımız sezgisel yolculuğumuza, lineer cebir ve stokastik süreçler, dijital sinyal işleme ve yapay sinir ağları temel kavram ve yöntemlerine aşina olduğumuzu varsayarak başlayacağız. Bu yolculukta önce insan işitme algısı ve psikoakustik hakkında konuşmamız gerekecektir. Konuşma sinyali ve bunun algılanmasındaki temel prensip nedir ki maskeleme yapıp insan algısını kandırdığımız halde makineye gizli mesaj işletebiliyoruz? Bu noktada karşımıza bir konu daha çıkıyor: konuşmanın işlenmesi ve otomatik konuşma tanıma sistemlerinin çalışma prensibi.
Bu yazıda psikoakustik maskelemeyi, bilgisayar mühendisliği son sınıfta okuyan bir öğrencinin de temel kavrayışa sahip olabileceği bir düzende anlatmaya çalıştım. Bu nedenle konuşma sesinden başlayıp insan ve makine tarafından algılanması safhaları üzerinden geçtikten sonra psikoakustik maskeleme ile ilgili kaynak yayının üst seviye bir yorumunu sizlerle paylaşıyorum.

Temel yapı taşlarını inşa ederek ilerlemek üzere yazımı 1+4 seviyeye ayırdım:

  • Seviye Sıfır: Bilindiği takdirde konuyu anlamanın çok daha kolaylaşağı kavramlar listelenmiştir. Her ne kadar konuya sezgisel yaklaşacak olsam da, okuyucunun bu kavramlara yabancı olmadığını varsayarak bir başlangıç noktası oluşturmak gerekti.
  • Seviye 1: İnsan dinleyicinin algısını yanıltma ile ilgili konuşma sinyali üzerinde yapılan işlemlerin anlaşılması için, insan işitsel sisteminin nasıl çalıştığını, konuşmanın algılanması ve sesin iletimi ile ilgili özelliklere dair bilgi sahibi olmak gerekir.
  • Seviye 2: “Konuşma sinyali nedir, nasıl işlenir? Öznitelikler nasıl çıkarılır, neyi ifade eder?” sorularını cevaplayalım.
  • Seviye 3: Kaynak makalede, kandırılmak için seçilen “listen, attend, and spell” yani “dinle, dikkat et, ve hecele” konuşma tanıma modelinin nasıl çalıştığına bakalım.
  • Seviye 4: Kaynak makalede yazarlar psikoakustik maskeleme ile zararlı örnek üretmek için hangi adımları izlemişler?

Seviye-Sıfır: Ön Koşul

Dijital sinyal işleme (frekans, genlik, periyot, örnekleme gibi dijital sinyal işlemenin temellerinin yanısıra, FFT, DFT, otokorelasyon ve PSD kavramları ile ilgili genel kavrayış), yapay öğrenme (Cross-entropy loss, Hinge loss, MLP, RNN, LSTM, Attention kavramlarının en az sezgisel olarak anlaşılmış olması), lineer cebir ve stokastik süreçler temel kavram ve yöntemleri hakkında bilgi.

Seviye-1: İşitme Algısı ve Psikoakustik

Bu bölümde şu sorulara sezgisel bir kavrayış geliştireceğiz:

  • İnsan işitme algısı nasıl çalışır?
  • Ses iletimi nasıl modellenir?
  • Konuşma uyartısı ve konuşma algılama nasıl gerçekleşir?

İşitme Algısı
En basit şekli ile, görme duyusu için çevresel uyarıcı, gözlemcinin görüş sahasına giren varlıktan gözlerine yansıyan ışıktır. Işık ile varlık hakkında oluşan bilgi, görsel algılayıcılar üzerinde bir temsil oluşturur. Çevresel ses uyartıları, yine en basit anlatımla, havadaki basınç değişikliklerinden oluşur*. Bu hava basıncı değişiklikleri bir sesin duyulup duyulmayacağı, düşük veya yüksek perdeli olma durumu gibi çeşitli özellikler içerir. İşitme algısı, bu uyarıcının işitsel algılayıcı sistemden geçmesi ile oluşur.

*Bu arada, ses yalnız hava ortamında oluşmaz :) , ancak bu yazı boyunca hava ortamında ses iletimi ile ilgili anlatım yapılacaktır.

Hava basıncı değişiklikleri kaynaktan dışarı doğru hareket eder. Yani, hava molekülleri ileri geri hareket eder, ancak moleküller yaklaşık aynı yerde kalır, basınç artışlarının ve azalışlarının örüntüsü dinleyicin kulağına iletilir.

Koklea (salyangoz), kulağın işitsel kısmıdır. Ses basıncı değişikliklerini işitme sinirleri vasıtasıyla beyne iletir. Beyinde bu sinyaller elektrokimsayal sinyallere dönüşür. Kulak, fizyolojisi nedeniyle basınç dalgalarına doğrusal olarak tepki vermez. Böylelikle, ses kaynaklarını algılama, yerelleştirme veya işitsel sistemi koruma işlevleri görülür. Şekilde görüldüğü üzere, kolea üzerinde frekans alanları bulunur. Bu alan tahsisi kulağa düşük frekanslardaki değişiklikleri yüksek frekanslardan daha iyi ayırt etme yeteneği verir. Bu doğrusal olmayan işitsel algının bizim ilgilendiğimiz kısmı, yoğunluk, perde ve tını algısını etkilemesidir. Sesin “perde”si, frekansla ölçülen algısal bir ses özelliğidir. Perde, tamamen objektif bir fiziksel özellik değildir; psikoakustik ile ilgilidir. Psikoakustik, ses algısı ve insan işitsel sistemini içeren psikofizik dalıdır.

Kaynak: Siemens, Critical Bands in Human Hearing, URL: https://community.sw.siemens.com/s/article/critical-bands-in-human-hearing, Erişim: Şubat 2020

İşitsel sistemimiz, basınç dalgasının frekansını, kulak zarındaki dalganın neden olduğu maksimum genliğin konumu üzerinden tespit edebilir. İnsan kulağı 20 ila 20.000 Hertz aralığını işitebilir, ancak bireysel tonları ayırt etme yeteneği frekansın fonksiyonu olarak değişir. Kulak 200 Hz’in altında çok hassas değildir, ve 30 Hz’nin altındaki perdelerin algılanmasında sorun yaşıyoruz. Kulağımız 300 ila 8000 Hz arasındaki frekanslara çok duyarlıdır. Şekilde işitme sınırı (threshold of hearing) ve acı sınırı (threshold of pain) arasında kalan bölgede, konuşma ve müzik algısı ile ilgili yaklaşık bölge görülmektedir.

Belirli seslerin algılanmasını/algılanmamasını etkileyen en önemli özelliklerinden birkaçı:

  • Ortamdaki diğer seslerin türü ve miktarı
  • Sesteki gürültü miktarı
  • İçerdiği frekanslar (çok düşük/yüksek perde)
Kaynak: Figure 3–2 “Kaplanis, N. (2011). Quality Metering for High Definition Audio. Towards objective metrics.

İnsan kulağı ses yoğunluğuna logaritmik olarak yanıt verir:

  • Loudness (ses yüksekliği) = Sound Intensity Level (SIL)
  • Ses Yüksekliği / Ses Yoğunluğu Seviyesi birimi deciBel'dir (dB).
  • I: sesin şiddeti (RMS, Root Mean Square — Ses sinyalinin ortalama gücü),
  • I0: duyma eşiği
  • SIL = 10 log10 (I/I0) dB

“Kritik bantlar”, insan kulağının bireysel frekans tonlarını ayırt etme yeteneğini ölçmek için kullanılır. Kritik bant filtrelerin tasarımı için Mel ölçütü ve Bark ölçütü kullanılır. Mel ve Bark ölçekleri insan işitsel sisteminin doğrusal olmayan doğasına dayanan doğrusal olmayan ölçeklerdir. Mel ölçütü perde (pitch), Bark ölçütü ses yüksekliği (loudness) algısını temel alır.

Sesin esasen hava basıncı değişikliklerine dayalı bir sinyal olduğunu ve bu yazıda sesin iletim ortamını hava olarak ele alacağımızı bölüm başında belirtmiştim. Ses sinyalinin iletimi moleküler ortama göre değiştiği gibi, fiziksel ortamda basınç dalgalarının duvar ve nesnelere çarpması da sesin algısında etkilidir.

Oda Akustiği
“Oda Akustiği”, sesin kapalı veya yarı kapalı bir alanda nasıl yayıldığını açıklayan akustik alanıdır. Her mekanın, sesin kalitesini etkileyen kendi “kimliği” vardır. İlk önce ses kaynağı ve ses alıcısı arasında doğrudan, yani oda ve nesnelerde yansıma olmadan, iletim olur. Ardından öncül ve geç yansımalar ile sinyal iletimi gerçekleşir. Kopya kaynak yöntemi (Image Source Method), bir kaynak ve bir alıcı arasındaki yansıma yollarını modellemek için kullanılan basitleştirilmiş matematiksel bir yöntemdir. Sesin yalnızca düz çizgiler veya ışınlar boyunca yayıldığı varsayımı yapılır. Kaynaklar, alıcılar, yansımaların hesaplanacağı oda geometrisi ve oda dürtü yanıtı özellikleri kullanılarak ham sesin üzerine oda akustik özellikleri uygulanır.

Oda akustiğinin modellenmesi: Kopya Kaynak Yöntemi.

Doğrudan ses, kaynak ile alıcı arasında en kısa yol ile iletilen sinyaldir. Sesin en önemli karakteristikleri buradan çıkarılır. Nesne ve oda duvarlarından yansıyan ses ilk yansımaları oluşturacak, bu yansımaların yansımaları ise ikincil yansımaları oluşturacaktır. Her yansımada, sesin bir kısmı duvardan emilir ve enerji kaybeder. Bu şekilde yansımalar, sinyal sönümlenme sürecine girene kadar devam eder. Öncül yansımalar (ilk ve ikincil) alıcı etrafındaki duvar ve nesneler gibi yansıtıcıların gerçek konumu hakkında bilgi içerdiği için önemlidir. Geç yansımalar, tekrar ederek sönümlenmeye giden yansımalar olduğu için daha çok odanın hacmi hakkında bilgi taşır.

Bu tekrarlayan enerji kaybı, kaynaktan gelen ilk ses duvarlarda tamamen emilene kadar yansımaları zamanla zayıflatır. Herhangi bir enerjiyi emmeyen ideal bir duvara sert duvar, tüm enerjiyi emen ideal bir duvara yumuşak duvar denir. Gerçek hayatta bu aşırılıklar mevcut değildir, bu yüzden hiçbir yansıma sonsuza kadar sürdürülemez ve ilk duvarda tamamen emilemez.

Konuşma Uyartısı ve Konuşma Algısı
Konuşmayı frekanslar olarak tanımlayabiliriz. Konuşma sesleri, ses aparatı içinde, akustik uyaran veya akustik sinyal olarak adlandırılan havada basınç değişiklikleri modelleri üreten yapıların konumu ve hareketi ile üretilir. Konuşmacılar sözcükleri telaffuz ederken ani başlangıçlar ve duruşlar, sessizlikler ve sesler ile oluşturur. Konuşma, konuşmacıların sözcükleri sıralayıp, cümleler oluşturduğunda anlam kazanır.

Algıladığımız şey sadece fiziksel ses uyaranına değil aynı zamanda duyduğumuz şeyi yorumlamamıza yardımcı olan bilişsel süreçlere de bağlıdır. Örneğin, dinlediğimiz kalitesi düşük bir konuşma kaydında harf yada kelime eksiklikleri olduğunda bağlama göre bilişsel olarak tamamlayabiliriz. Ya da yarım bir cümleyi tamamlarken, önceki cümleleri, cümlenin ön kısmını ve dil bağlamını düşünürüz. Otomatik konuşma sistemlerinin temelinde de bu mantık taklit edilmiştir. Seviye 3’te kaynak makalede anlatılan otomatik konuşma sistemi kısaca anlatılmıştır. Bu bölümde, daha küçük ses parçalarının algılanması mantığını ele alarak otomatik konuşma tanıma için gerçekleştirilen ön işleme aşamalarının sezgisel dayanağını oluşturacağız.
Konuşma algısını, konuşmayı yönetilebilir birimlere bölerek inceleriz. Anlamlı konuşmanın elemanlarını düşündüğünüzde aklınıza ilk gelen birimler muhtemelen şunlar olacaktır: cümle, kelime, harf. Cümle, çok büyük bir birimdir. Harflere bakacak olursak, her dil için harf tek başına ses birimi olarak fazla bilgi taşımayabilir. Araştırmacıların büyük bölümü, konuşma algısını “fonem”ler (phonem) üzerinde incelemektedir. “Fon” (phon), kelimelerin anlamları için kritik olup olmadığına bakılmaksızın, farklı bir konuşma sesidir. Fonem, belirli bir dilde, başka bir fonemle değiştirildiğinde, kelimenin anlamını değiştirecek en kısa konuşma segmentidir. Türkçe için, genel olarak, her harfin bir foneme karşılık geldiğini söyleyebiliriz.

Özetle, konuşma anlamını algılarken, kelimeler oluşturmak için birleşen heceler, fonemler adı verilen bir dizi sesi algılıyoruz (Fonemler->Heceler->Kelime). Fonemler birbirinden ayrık değil, çoğunlukla önceki ve/veya sonraki fonemlere ses geçişleri ile bağlıdır. Bu ses geçişleri, konuşmacının ses yolunun fiziksel özellikleri, yaşı, aksanı, konuşma hızı gibi özelliklere bağlı olarak büyük ölçüde değişebilir. Konuşma algısında koartikülasyon, beynin ünlüler ve ünsüzler dizilerini, komşu konuşma segmentlerine bağlı olarak mevcut konuşma segmentini tek bir bütün halinde birleştirmesidir. Akustik sinyal, koartikülasyon ile değiştirilse bile, bir fonem sesini aynı şekilde algılamamız, algısal sabitliğin bir örneğidir.

Bu yazıda konuşma algısının ayrıntılarından ziyade, konuşma sinyalinin parçalarından bahsettim. Parçaların fonemler olduğunu ve fonemlerin kategorik algılanmasında ses geçişlerinin de payı olduğunu bilmek sonraki bölümleri anlamak için önemli. Seviye 2’de, konuşma sinyalini örtüşen segmentlere bölerek fonemlerin frekans bantlarında gösterimini inceleyerek başlayacağız.

Seviye-2: Konuşma İşleme Bileşenleri

Bu bölümde otomatik konuşma tanıma sistemlerinin girdisi ve konuşma sinyalinin ön işleme aşamaları ile ilgili temel kavrayış oluşturmak hedeflenmektedir. “Girdi” terimi ile dijitalleştirilmiş (sayısallaştırılmış) konuşma sinyalinden bahsediyor olacağım. Okuyucunun temel sinyal işleme kavramlarını biliyor olması gerektiğini (Seviye Sıfır) yeniden hatırlatırım.

Dalga Biçimi (Waveform)
Konuşma sinyalleri, havada dolaşan basınç değişimleri olarak tanımlanan ses sinyalleridir. Basınçtaki bu varyasyonlar dalgalar olarak tanımlanabilir. Öncelikle dijital sistemlerde bu dalga formlarının analizi ve işlenmesi ile ilgileniyoruz. Bu nedenle her zaman akustik konuşma sinyallerinin bir mikrofon tarafından yakalandığını ve dijital forma dönüştürüldüğünü varsayacağız.

Konuşma sinyali, n hava basıncı değişiklikleri ve n∈N olmak üzere, nispi hava basıncını temsil eden xn dizisi ile temsil edilir. İki faktör önemlidir: örnekleme frekansı (n ve n + 1 arasındaki zaman adımı) ve xn genlikleri.
Örnekleme, sinyal işlemenin klasik bir konusudur. Ayrıntıları, yazı kapsamı dışındadır. Konuşma sinyallerindeki bilgi, ses parçasının özelliğine göre farklı frekans bantlarından elde edilebilir. Örneğin, bazı ünsüzler, özellikle /s/ gibi sesler, 4 kHz’in üzerinde önemli enerji içerir. Konuşma sinyali için çoğu enerji 8kHz’in altında kalır, yani 16 kHz’lik bir örnekleme oranı genellikle yeterlidir. Daha yüksek oranlar, müzik ve genel ses gibi konuşma dışı sinyaller de dikkate alındığında daha faydalıdır.

xn genlikleri y-ekseninde, ayrık zaman adımları x-ekseninde olmak üzere yapılan görselleştirme dalga biçimi görünümünü oluşturur.

Pencereleme
Sözlü cümle, bir dizi fonemdir. Konuşma sinyalleri bu nedenle karakter bakımından zamanla değişir. Bir sinyalden bilgi çıkarmak için, her bölüm sadece bir fonem içerecek şekilde, yeterince kısa bölümlere ayırmalıyız.
Pencereleme, sinyal işlemede klasik bir yöntemdir ve giriş sinyalinin zaman ekseninde bölümlere ayrılmasını ifade eder. Bölümlendirmenin sinyalin istatistiksel özellikleri üzerindeki etkisini azaltmak için, üst üste gelen ardışık bölümler olarak pencereleme uygularız. Pencereleme fonksiyonu, sınırlarda sıfıra giden düz işlevlerdir. Giriş sinyalininin bir segmenti bir pencere fonksiyonu ile çarpıldığında sınırdaki süreksizlik görünmez olur. Pencereleme böylece sinyali değiştirir, ancak değişiklik sinyal istatistikleri üzerindeki etkisi en aza indirilecek şekilde tasarlanmıştır. Pencereleme için yaygın olarak Hann fonksiyonu kullanılır. Aşağıdaki şekillerde pencereleme işlemi ve örnek pencereleme fonksiyon çizimi görülmektedir.

Ses sinyalini pencereleme işlemi. Kaynak: Aalto Univeristy Wiki, Windowing, URL: https://wiki.aalto.fi/display/ITSP/Windowing, Erişim: Şubat 2020.
Pencereleme fonksiyonu. Kaynak: Aalto Univeristy Wiki, Windowing, URL: https://wiki.aalto.fi/display/ITSP/Windowing, Erişim: Şubat 2020.

STFT ve Spectrogram
Seviye 1’de yüksek veya düşük perdenin ne anlama geldiğine dair sezgisel bir fikrimiz edindik. Hatırlayacak olursak, perde, tonal bir sesin frekansını algılamamız anlamına gelir. Bir sinyalin Fourier spektrumu bu frekans içeriğini ortaya çıkarır. Bu, spektrumun grafiğini çizerek sinyalleri görsel olarak inceleyebiliriz. Fourier dönüşümlerini dijital sinyal işleme temellerindendir (Seviye Sıfır).

Otomatik konuşma sistemlerinde zaman-frekans dönüşümü ayrık Fourier dönüşümü olacak şekilde ayrık zamanlı sinyallerle çalışırız (DFT, Seviye Sıfır). DFT, xn sinyalini, N katsayılarının karmaşık değerli bir frekans alanı gösterimi olan Xk ya dönüştürür. Pencereleme ve her pencerenin ayrık Fourier dönüşümünü (DFT) alarak sinyalin kısa süreli Fourier dönüşümünü (STFT) elde edilir. STFT, konuşma analizi ve işlemede en sık kullanılan araçlardan biridir. Frekans bileşenlerinin zaman içindeki değişimini hakkında bilgi verir. Spektrumlar karmaşık değerli vektörler olduğu için bunları görselleştirmek zordur. Log spektrumu 20log10|Xk| spektrumların en yaygın görselleştirilmesidir. Spektrumu dB cinsinden verir. Seslerin kolayca yorumlanabileceği bir görselleştirme sağlar. Logaritma, kulağın hassasiyetine kabaca yaklaşır, böylece logaritmik spektrumlar spektral özelliklerin işitsel önemini değerlendirmek için kullanılabilir.

2-boyutlu log-spektrumlar, spektrogram adı verilen ısı haritası biçiminde görselleştirilirler. Aşağıdaki şekilde spektrogram, konuşma içerik metni ve konuşma dalga biçimi gösterimi verilmiştir.

Specktrogram ve Dalga Biçimi.

Mel-frekans cepstrum
Logaritmik spektrum, spektral içeriği, değerlerin büyüklüğü spektrum boyunca yaklaşık olarak aynı olacak şekilde görselleştirir. |Xk|^2 güç spektrumunu (power spectrum) ifade eder. Bir sinyalin enerjisinin frekans alanında nasıl dağıtıldığını karakterize eder. Sinyalin güç spektral yoğunluğu (PSD), sinyalde mevcut gücü, birim frekans başına, frekansın bir fonksiyonu olarak tanımlar. Bir konuşma sinyalinin güç spektrumu, tüm sinyal için her bir frekanstaki bir sinyalin enerjisinin nispi yoğunluğunu gösterebilir. Mel-frekans cepstrum (MFC), bir sesin kısa süreli güç spektrumunun, Mel ölçütüne (bkz.Seviye 1) dayanan filtreler ile bir temsilidir. Otomatik konuşma tanıma sistemlerinde öznitelik çıkarım yöntemlerinden biridir. Sırasıyla şu aşamalar ile sinyalin MFC elde edilir: sinyal->pencereleme->DFT->Mel frekans bükümleri (Mel frequency warping)->Log->IDFT (ters DFT). MFC katsayıları (MFCC) sinyalin tipik olarak en bilgilendirici olan kısmına odaklanır, konuşma anlama için daha az önemli bilgi içeren ayrıntıyı kaldırır. Hesaplaması basit, performansları iyi test edilmiştir. Gürültüye karşı gürbüz olmaması ve MFCC test dönüşümlerinde yüksek kayıp olması gibi dezavantajları bulunmaktadır.

Seviye-3: Konuşma Tanıma Sistemleri

Otomatik konuşma tanıma, akıllı cihazların insan seslerini tanımasını ve anlamasını sağlayan bir tekniktir. Bu amaçla, ham ses filtrelenir ve sayısallaştırılır. Akustik özelliklerin, sözlüğün, dil modelinin çıkarılması gerekir. Her biri için ayrı model eğitilebilir yada uçtan uca bir model uygulanabilir.

“Listen, Attend, and Spell” konuşma tanıma modeli (Dinle, İlgilen, ve Hecele), karakter tabanlı, uçtan uca bir derin öğrenme modelidir. Konuşma parçası dizisi x = (x1,x2...xT ) ile gösterilen “mel-filter bank spectra” özniteliklerini girdi olarak alır. Karakter tabanlı bir modeldir. Ses birimlerine karşılık gelen karakterleri çıktı olarak verir. Model iki ana parçadan oluşur:

  1. Listener (Dinleyici): Encoder parçadır. pBiLSTM (Pyramidial BiLSTM) hücrelerden oluşur. Ardışık pBiLSTM hücrelerinin ikili birleşmesiyle(concat) katmanlar oluşur. Birleşim frekans boyutunda gerçekleşir. Yani, spektrogramı hayalinizde canlandırdığınızda, zaman düzleminde ikiye bölünüp frekansta üst üste bindirilmesi olarak düşünebilirsiniz. Yöntemin açıklandığı makalede (Chan ve ark.,2016) 3 katman kullanılmıştır. Böylece zaman çözünürlüğü 23 = 8 kat azalmış olur, girdinin üst seviye temsilleri (h = (h1,h2,...,hU), U<=T) attention (ilgi) katmanına beslenir. Çözünürlüğü azaltmanın yanı sıra, derin mimarinin, verinin doğrusal olmayan öznitelik temsillerini öğrenmesini sağlar. pBiLSTM yerine normal BiLSTM kullanılması yakınsamayı önemli oranda geciktirir (Chan ve ark., 2016).
  2. Attention and Speller (İlgi ve Heceleyici): Heceleyici decoder parçadır. Dil modelidir, gelen girdi dizisine göre bir sonraki karakter için olasılıkları verir. Cross-entropy ile eğitilmiştir. Temel olarak, bir “attention-based LSTM transducer”dır (ilgi tabanlı LSTM dönüştürücü). Her çıktı adımında dönüştürücü, daha önce görülen tüm karakterlere koşullandırılmış bir sonraki karakter üzerinde bir olasılık dağılımı üretir. Bu olasılık dağılımını üreten mekanizma temel olarak bir MLP’dir. Kaynak makaledeki uygulamada cross-entropy loss kullanılmıştır.

Kısaca, iki katmanlı bir RNN dil modeli olan speller decoder’ın her i adımı için, dinleyici parçada üretilen üst seviye vektörler h, ve heceleyici güncel durumu si ilgi katmanında işleme girecektir (dot product, MLP v.b. ilgi hesaplama yöntemlerinden biri+softmax). Hesaplanan bu içerik vektörü ci ve decoder durumu si karakter olasılıklarının hesaplanması üzere bir MLP+softmax sistemine girer. Mimari şekilde görülmektedir.

Kaynak: Figure 1 “Chan, W., Jaitly, N., Le, Q., & Vinyals, O. (2016, March). Listen, attend and spell: A neural network for large vocabulary conversational speech recognition. In 2016 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) (pp. 4960–4964). IEEE. ”

Seviye-4: Konuşma Tanıma Sistemlerini Psikoakustik Maskeleme ile Kandırmak

Kaynak makalede (Qin ve ark.,2019) algılanamaz, gürbüz ve hedefli zararlı örneklerin üretilmesi amaçlanmaktadır. Bunu üç aşama olarak incelediğimizde, her aşama için yararlanılan araç şunlardır:

  • Algılanamaz: işitsel maskeleme
  • Gürbüz: oda akustiği simülasyonu
  • Hedefli Zararlı Örnekler: optimizasyon tabanlı zararlı örnek üretimi

Yazının ilerleyen bölümlerinde kaynak makalede izlenen adımları açıklayacağım. Eşitlikler makalede bulunmaktadır, hesapsal optimizasyon ile ilgili bazı bölümleri, yazıyı daha sade bir dil ile anlatmak için atlıyorum.

Algılanamaz Zararlı Örnekler: İşitsel Maskeleme
İşitsel maskeleme, insan işitsel sisteminin algısal bir özelliğidir, burada güçlü bir tonal öğrenin varlığı, zamansal veya spektral çevresinde daha zayıf bir tonun duyulmasını engeller. Frekans maskelemesi, insan kulağının daha yüksek enerjilerdeki (frekans) tonal öğelerin yakınında daha düşük enerjilerde tonal öğeleri algılayamadığı gözlemine dayanır.

Konuşma sinyaline insan işitsel sistemini kandıran, duyulamayacak, mesajların kodlanması/gömülmesi için önce maskeleme eşiğinin bulunması gerekir. Bir konuşma ifadesi için, maskeyicinin frekansları ve güç seviyeleri sinyal segmenti için hesaplanır. Segment için küresel bir maskeleme işitsel eşiği belirlenir. Ayrıca, insan işitsel sisteminin duyamadığı “sessizlik eşiği” hesaplanır.

Bu “psikoakustik algısal açıklar” istenen frekans aralıklarında tespit edilir. Algısal açıkların oluştuğu bölgede güç spektral yoğunluğu (PSD) değerleri, sinyal mesaj (duyulan) kalitesini etkilemeden gömülecek bilgilerle değiştirilebilir. Sesin içine veri gömmek için bu çalışmada kullanılan yöntem bu temele dayanır. Şekilde bir örnek üzerinde açıklama verilmiştir.

İşitsel maskeleme örneği.

Öncelikle, sinyalin ve maskeleyicinin güç spektral yoğunluğunu (PSD) hesaplamak gerekir. İlgili eşitlikler ve açıklama aşağıdaki şekilde verilmiştir.

Güç spektrum hesaplaması.

Sinyal ve ekleyeceğimiz bozulmanın (gürültü) işitsel maskelerin bulunması için üç aşamada gerçekleşir.

  1. Maskeleyicilerin Tanımlanması: Bir k frekansı için normalize edilmiş PSD tahmini lokal maxima olmalı, sessizlik eşiğinden yüksek olmalı ve 0.5 Bark (Seviye 1) etrafında en yüksek genliğe sahip olmalıdır.
  2. Bireysel Maskeleme Eşiklerinin Bulunması: İşlenecek her frekans bandı için maskeleme eşitlerinin ayrı ayrı hesaplanmasını ifade eder.
  3. Global Maskeleme Eşiğinin Bulunması: Bireysel eşikler ve sessizlik eşiğinin toplamını ifade eder.

Maskeler bulunduktan sonra bu eşikle zararlı örnekleri nasıl üreteceğimiz kısmına gelmemiz gerekiyor. Zararlı örnekler, bir miktar bozulmanın (gürültü) temiz sinyale eklenmesi ile oluşur. Oluşturulan zararlı örneğin modeli kandırmada başarı olup olmadığını görmek için, bunu modele girdi olarak verip sonucu inceleyebiliriz. Modeli kandırabilirsek, tamam, ancak kandıramadı isek ne yapmamız gerekir? Eklediğimiz bozulmayı değiştirmemiz gerekir, ama bunu nasıl yapalım? Rastgele işlem yaparsak başarılı bir saldırı yapmamız şansa kalmış demektir. O halde daha bilgi değişiklik yapmam gerekir. bilgiyi nerden almamız gerekir?

Saldırıyı beyaz kutu ortamda yaptığımız için, yapacağımız değişiklik ile ilgili bilgiyi modelin kendisinden edineceğiz. Zararlı örnek ile ilgili sonucu aldığımızda geriye yayılım (back prop.) ile türevlerin oluştuğu yolu takip edeceğiz. Böylece daha fazla/az hata oluşan nöronlar, geriye doğru izlerken girdi katmanına kadar hesaplanabilir. Sonuçta modelin karar verirken daha önemli gördüğü özellikler ortaya çıkacaktır. Böylece yeni zararlı örnek üretir, yine test eder ve başarılı olana kadar iterasyonlar boyu zararlı örneği, hedeflediğimiz çıktıyı verecek şekilde optimize ederiz. Bu yazı sezgisel bir yolculuk olduğu için, matematiksel ayrıntıyı sözlü seminer sunumuna bırakıyorum :)

Model üzerinde tüm zararlı örneği optimize etme işlemini için son katmanı kullanıyoruz. Hedef modelde (Seviye 3) “cross-entropy loss” kullanıldığını hatırlayın. O halde, orjinal örneğe bozulma ekleyerek ürettiğim zararlı örneği ve hedeflediğim çıktıyı modeldeki cross-entropy katmanı üzerinde inceleyip, iterasyonları oluşturmam gerekir. Zararlı örnek oluştururken, olabildiğince küçük bozulmalar eklemek isteriz. Bu nedenle optimizasyon adımında bozulmayı da minimum tutmam gerekir.

Peki bulduğum işitsel maskeleme eşiği ile optimizasyonu nasıl gerçekleştireceğiz? Ek bir optimizasyon gerçekleştirmemiz gerekiyor. Bu sefer temiz sinyal ve eklenecek bozulmanın hesaplanan maskeleme eşiği ile optimize edilmesi gerekir. Maskeleme eşiği ile eklenecek bozulmayı optimize etmek için Hinge loss kullanılmıştır. Böylece eşiği geçmeyece maksimum bozulma ile sınır belirlenmiş olur. Zararlı örneği algılanamaz yaptıkça “zararlı” özelliğinin azalabileceği için kaynak makalede “algılanamama” derecesi bir parametre ile kontrol edilmiştir. Böylece parametre düşürülerek zararlı örneklerin etkisi artılırken, “algılananamama” azaltılmış olur. Bu işlemler sonucu oluşan toplam kayıp (loss) fonksiyonu ve parametre açıklamaları aşağıdaki şekilde verilmiştir.

Algılanamaz Zararlı Örnekler için Optimizasyon.

Gürbüz Örnekler: Oda akustiği simülasyonu
Seviye 1’de oda akustiği ve yansımaların modellenmesi için kullanılan yöntemi hatırlayın. Gürbüz, yani bir oda içinde hava ortamında aktarılabilen, zararlı örnek üretmek için oda akustiğinin de hesaba katılması gerekir. “Hesaba katma” işlemi sinyal üzerinde konvolüsyon (Seviye Sıfır) ile gerçekleştirilir. Nasıl bir ortamda zararlı örneğin iletileceği bilinmemektedir. bu bilinmeyeni simüle etmek için kaynak makale yazarları bir T oda konfigürasyon dağılımını kullanmışlardır. Bu dağılımdan gelen rastgele M adet oda konfigürasyonu ile hesaplanan yansımaların sinyale işlenmesiyle model kandırılırsa, saldırı başarılı sayılmıştır.

  • Kabul: Odanın çizileceği dağılımı T bilinmektedir.
  • Hedef: Bu dağılımdan türetilen herhangi bir odada gürbüz zararlı örnekler üretilmelidir.
  • r: oda dürtü yanıtı, * convolution işlemi
  • Dönüşüm fonksiyonu t(x) = x * r farklı oda konfigürasyonları üzerinden seçilen bir T dağılımını izler.

Gürbüz zararlı örnek üretimini optimize etmek için kullanılan eşitlik ve parametre açıklamaları aşağıdaki şekilde verilmiştir.

Gürbüz Zararlı Örnekler için Optimizasyon.

Algılanamaz, Gürbüz Hedefli Örnekler
Tüm optimizasyon işlemleri algılanamaz, gürbüz hedefli örnekler üretmek üzere birleştirilir. “Algılanamazlık” ve “gürbüzlük” ters orantılı olduğu deney sonuçlarında görülmüştür. “Algılanamazlık” parametresi dinamik olarak algoritma içinde ayarlanarak, yeterince algılanamaz ve gürbüz zararlı örneklerin elde edilmesi amaçlanmıştır. Özelliklerin birlikte optimizasyonunun yapıldığı eşitlik ve parametre açıklaması aşağıdaki şekilde verilmiştir.

Algılanamaz ve Gürbüz Zararlı Örnekler için Optimizasyon.

Sonuç

Deney sonuçlarında kandırma başarısı (cümle bazında) ve kelime hata oranı (WER, word error rate) değerleri incelenmiştir. Modelin cümle bazlı orijinal başarısı %58.6 olarak bildirilmiş,ve yine temiz örnekler üzerinde WER 4.47 olarak bildirilmiştir.

Performans Kriterleri ve Cümle Seviyesinde Sonuçlar.

Algılanamazlık insan dinleyiciler ile değerlendirilmiştir. İki dinlenen örnekler için şu sorular sorulmuştur:

  • Temiz mi, gürültülü mü? (Clean or Noisy)
  • Daha doğal olanı hangisi? (Identify the original)
  • Aynı mı değil mi? (Identical or not)

Çalışma gerçek anlamıyla gürbüz (yani havada taşınırken etkisini yitirmeyen) zararlı örnek üretmede başarılı olamamıştır. Gerçek gürbüz zararlı örneklerin üretimi için diğer araştırmacılara bir basamak olabileceği ifade edilmiştir. Yazarlar sonuçlarını Carlini ve Wagner (2018) çalışması ile karşılaştırmalı sonuçlar aşağıdaki şekilde verilmiştir.

Subjektif Dinleme Sonuçları.

Bu yazıda Qin ve ark.’nın (2019), bir otomatik konuşma tanıma sistemine algılanamaz ve havada etkisini yitirmeden aktarılabilen hedefli beyaz kutu saldırısını, konunun (ve komşu konuların :)) temellerinden başlayarak anlatmaya çalıştım. Kullanılan parametre değerleri, matematiksel çıkarım ve sonuçların ayrıntıları için kaynak makaleyi incelemenizi tavsiye ederim.

Referanslar

Qin, Y., Carlini, N., Goodfellow, I., Cottrell, G., & Raffel, C. (2019). Imperceptible, robust, and targeted adversarial examples for automatic speech recognition. arXiv preprint arXiv:1903.10346.

Chan, W., Jaitly, N., Le, Q., & Vinyals, O. (2016, March). Listen, attend and spell: A neural network for large vocabulary conversational speech recognition. In 2016 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) (pp. 4960–4964). IEEE.

Kurakin, A., Goodfellow, I., & Bengio, S. (2016). Adversarial examples in the physical world. arXiv preprint arXiv:1607.02533.

Carlini, N., & Wagner, D. (2018, May). Audio adversarial examples: Targeted attacks on speech-to-text. In 2018 IEEE Security and Privacy Workshops (SPW) (pp. 1–7). IEEE.

--

--

Fatma Gumus
novaresearchlab

PhD candidate, early career machine learning researcher. Speech and language processing, behavioral biometrics, trustworthy machine learning.