Yapay zekadan makale özeti
- Kısa
- Ayrıntılı
- Bu video, Boğaziçi Üniversitesi Elektrik-Elektronik Mühendisliği Bölümü'nden Murat Saraçlar tarafından sunulan, konuşma tanıma ve yapay öğrenme konularını içeren teknik bir akademik ders formatındadır. Saraçlar, Bilkent Üniversitesi ve Johns Hopkins Üniversitesi mezunu olup, Google ve IBM TJ Watson Research Center'da da çalışmış bir akademisyendir.
- Ders, konuşma tanıma teknolojisinin tarihçesinden başlayarak istatistiksel modeller (dil modeli, kanal modeli, saklı Markov modelleri), kestirim yöntemleri ve modern derin öğrenme tekniklerine (yinelemeli sinir ağları, LSTM, evrişimsel sinir ağları) kadar uzanan kapsamlı bir anlatım sunmaktadır. Video, matematiksel formüller ve teorik açıklamalar içermekte ve son bölümde soru-cevap oturumu ile tamamlanmaktadır.
- Ders içeriğinde konuşmaların yazıya dökülmesi, ses içeriğine erişim, akıllı asistanlar ve sesli çeviri gibi uygulamalar ele alınırken, akustik modelleme, dil modelleme ve farklı kestirim yöntemleri detaylı olarak açıklanmaktadır. Ayrıca, kelime altı modeller, karakter bazlı modeller ve modern teknolojilerin geliştirilmesinde kullanılan veri miktarı hakkında bilgiler de sunulmaktadır.
- 00:02Konuşmacının Tanıtımı
- Murat Saraçlar, Boğaziçi Üniversitesi Elektrik-Elektronik Mühendisliği Bölümü'nden konuşmacı.
- 1994 yılında Bilkent Üniversitesi Elektrik-Elektronik'ten mezun olmuş, Johns Hopkins Üniversitesi'nde doktorasını tamamlamış.
- 2000-2005 yılları arasında AT&T Labs Research'te çalışmış, 2005'ten beri Boğaziçi Üniversitesi'nde görev yapmaktadır.
- 01:51Konuşma Tanıma Hakkında Giriş
- Konuşma tanıma, konuşma sinyallerini kelime dizisine çevirme işlemidir.
- Konuşma tanıma alanında 30 yıllık bir geçmişi vardır ve hala geliştirilmesi gereken alanlar bulunmaktadır.
- Konuşma tanıma sisteminde girdi olarak sayısal olarak temsil edilen konuşma sinyalleri, çıktı olarak ise kelime dizisi elde edilir.
- 06:28Konuşma Tanıma Sisteminin Yapısı
- Konuşma tanıma sisteminde önce sinyal işleme uygulanarak öznitelik listesi oluşturulur.
- Daha sonra yapay öğrenme yöntemleri kullanılarak örüntü tanıma yapılır.
- Sistemlerin tarihçesinde önce zaman bükmesi algoritmaları, sonra istatistiksel yöntemler ve son olarak derin öğrenme yaklaşımları kullanılmıştır.
- 08:43Konuşma Tanıma Uygulamaları
- Konuşma tanıma en basit uygulaması dikte olarak bilgisayarlar ve cep telefonlarında kullanılmaktadır.
- Telefon üzerinden müşteri hizmetleri, bilgisayar-makine arayüzü ve robotlarla iletişim gibi alanlarda da kullanılmaktadır.
- Ses içeriğine erişim ve akıllı asistanlar gibi alanlarda da konuşma tanıma teknolojisi kullanılmaktadır.
- 10:55Matematiksel Temeller
- Konuşma tanıma sisteminde girdi olarak t uzunluğunda, d boyutlu akustik vektör dizisi (A) kullanılır.
- Çıktı olarak n uzunluğunda sözcük dizisi (W) elde edilir.
- Sözcüklerin çeşitli şekillerde etrafından dolaşılması mümkün olup, bu konu yarınki konuşmalarda detaylandırılacaktır.
- 11:33Konuşma Tanımının Temel Kavramları
- İstatistiksel konuşma tanıma, en olası sözcük dizisini bulmak temelinde kurulmuştur ve haberleşme teorisinden esinlenmiştir.
- Konuşma tanıma denklemi üç temel bileşenden oluşur: dil modeli (önsel olasılık), akustik model ve argmax fonksiyonu.
- Dil modeli, tüm kelime dizilerine olasılık atamayı amaçlar ve geçmişe koşullama yaparak sonraki kelimeyi tahmin etmeye çalışır.
- 14:22Akustik Model ve Sesçikler
- Akustik model, bir akustik öznitelik vektör dizisinin bir sözcük dizisine karşılık gelme koşullu olasılığını verir.
- Sözcüklerden küçük birimlere (Türkçe için harfler, genel olarak sesçikler) geçmek gerekir çünkü her sözcük için ayrı model oluşturmak mümkün değildir.
- Konuşma üretirken, bir önceki ve bir sonraki sesler birbirini etkiler ve bu durum konuşmayı optimize eder.
- 17:01Söyleniş ve Arama Uzayı
- Karşılıklı konuşmada kelimeler yazıldığı gibi okunmaz, konuşan kişi karşı tarafın anladığı sürece konuşmayı optimize eder.
- Arama uzayı dildeki tüm sözcük dizilerini içerir ve sonsuz olduğundan uygun bir şekilde organize edilmelidir.
- Dinamik programlama gibi yöntemler, arama işlemini verimli hale getirmek için sonlu durum içeren bir çizgi halinde düzenleme yapılmasını sağlar.
- 19:17Markov Modelleri
- Markov varsayımı, gelecek sadece şimdiki duruma bağlı olduğunu, geçmişten bağımsız olduğunu belirtir.
- Dil modelinde uzak geçmişi unutarak (angrem) ve yakın geçmişi kısıtlamak için gruplama yapılır.
- Unigram, bigram ve trigram olarak adlandırılan birli, ikili ve üçlü modeller kullanılır; trigram modeller hala oldukça başarılıdır.
- 21:27Görünür Markov Modelleri
- Görünür Markov modellerinde durumlar arası geçiş olasılıkları vardır ve bu model ağırlıklı sonlu durum makinesi ile gerçeklenebilir.
- Bu model aramayı ve kestirimi kolaylaştırır çünkü tüm cümlelerle değil, kelime çiftleri veya üçlüleriyle ilgilenmek yeterlidir.
- 22:40Saklı Markov Modelleri ve Konuşma Tanıma
- Konuşma tanıma için saklı Markov modelleri kullanılır ve bu modellerde konuşmacı sinyali ve kelime dizisi arasındaki ilişki saklıdır.
- Her bir sesçik için soldan sağa bir saklı Markov modeli oluşturulur ve bu modeller arka arkaya eklenerek tüm cümle için bir model oluşturulabilir.
- Sesçik modelleri bağlama dayalı olup, bir önceki ve bir sonraki sesin etkilerini içerir.
- 25:05Saklı Markov Modellerinde Parametreler ve Olasılıklar
- Sözcük dizisinden durum dizisine geçiş yapılarak, koşullu olasılık hesaplanabilir.
- Saklı Markov modellerinde durumlar arasında geçiş olasılıkları ve her durumda bir çıktı olasılığı bulunur.
- Tarihsel olarak vektör nicemlemesi kullanılmış, ancak daha sonra sürekli dağılımlar (Gauss dağılım modelleri) tercih edilmiştir.
- 29:36Konuşma Tanıma Sisteminin Yapısı
- Konuşma tanıma sisteminde dil modeli, söyleniş sözlüğü, bağlam modeli ve saklı Markov modeli (akustik model) sonlu durum makineleri olarak modellenir.
- Bu modeller birleştirilerek arama uzayı oluşturulur ve determinize etme işlemi ile arama verimlendirilir.
- Viterbi algoritması kullanılarak en olası durum dizisi bulunur.
- 32:58Viterbi Algoritması
- Viterbi algoritması, gözlemler ve durumlar arasındaki en iyi eşleşmeyi bulmak için kullanılır.
- Bu algoritma, başlangıç durumundan son duruma giden en olası yolunu bulur.
- Tüm durum eşleştirmelerini incelemek üstel bir fonksiyon oluşturacağından, Viterbi algoritması verimli bir çözüm sunar.
- 34:45Konuşma Tanıma ve Saklı Markov Modelleri
- Konuşma tanıma sürecinde akustik vektörler üretmek ve durum dizileri oluşturmak amaçlanmaktadır.
- Saklı Markov modellerinde, t anındaki durum S_t, önceki durumdan geçiş olasılığı ve akustik vektör üretme olasılığı ile hesaplanır.
- Soldan sağa modelde, her bir gözlem için n tane durum üzerinden maksimum olasılık hesaplanarak en olası durum dizisi bulunur.
- 37:26Algoritma Adımları
- Yineleme adımı, t-1 anına kadar devam eder ve en son aşamada tüm durumlar üzerinden en olası nokta bulunur.
- En son noktadaki argmax ile en olası durum dizisinin olasılığı hesaplanır ve önceki adımlarda kaydedilen durumlar geri izlenerek tam dizisi elde edilir.
- Bu algoritmanın karmaşıklığı O(n²t) seviyesindedir ve son durum dönüştürücüsünden çıkan durum dizisinin karşılık geldiği sözcük dizisi en iyi sözcük dizisi olarak kabul edilir.
- 41:31Model Parametrelerinin Kestirimi
- Model parametrelerinin kestirimi için en yüksek olabilirlik kestirimi (maximum likelihood estimation) yöntemi kullanılır.
- Bu yöntemde, büyük bir metin kümesinden kelimeler sayılır ve olasılıklar hesaplanır, ancak görmediğimiz çiftler sıfır olasılık alır.
- Görmediğimiz kelimelere olasılık vermek için yumuşatma yöntemleri kullanılır; Laplace yumuşatması, her kelimeye bir ekleyerek sıfır olasılıkları çözer.
- 45:40Yumuşatma Yöntemleri
- Sabit azaltma yöntemi (absolute discounting), zenginden alıp fakire verme prensibine dayanır.
- Good-Turing yöntemi, sıfır olasılıklardan kurtulmak için daha iyi bir çözüm sunar.
- 47:04Tür Sayısı Tahmini ve Dil Modellemesi
- Dünyadaki biyolojik tür sayısını tahmin etme yöntemi, dil modellemesine de uygulanmıştır.
- Nezanai yönteminde, bir kelimeden diğerine geçiş olasılıkları hesaplanır ve bu bağlam bilgisi kestirimleri iyileştirir.
- Yumuşatma yöntemi, dil modellemesinde sıkça kullanılan bir tekniktir.
- 48:37Düşük Derece Modeller ve Kestirim Yöntemleri
- Ara değerleme yönteminde, en yüksek olasılık yerine bir lambda parametresi kullanılarak olasılık kestirimi yapılır.
- Back-off yönteminde, çifti görmediğimiz durumlarda bir alt derece model kullanılır ve bu model alfa parametresi ile çarparak hesaplanır.
- En yüksek entropi yöntemi, görülen verileri belli kısıtlarla ifade eder ve bilinmeyenleri yansıtan bir model bulmaya çalışır.
- 51:45Diğer Dil Modelleme Yöntemleri
- Ayrıcı dil modelleri, sadece doğru söz dizileri değil, yanlış olanlar da dikkate alınarak modeli iyileştirir.
- Akustik modellerde en yüksek olabilirlik kestirimi, koşullu olasılıkları hesaplayarak modeli iyileştirir.
- En yüksek ortak bilgi kestirimi, akustik ve sözcük dizileri arasındaki ortak bilgiyi maksimize etmeye çalışır.
- 53:45Beklenti Büyütme Algoritması
- Saklı Markov modelleri için BAM (Baum-Welch) algoritması, beklenti büyütme veya maksimization olarak da bilinir.
- Beklenti büyütme algoritması, iki adımlı döngüsel bir yöntemdir: beklenti adımı ve büyütme adımı.
- Beklenti adımı, logaritmik olabilirlik fonksiyonunun beklenen değerini hesaplar, bu değer asıl fonksiyonun alt sınırıdır.
- 55:13Beklenti Büyütme Algoritmasının Uygulaması
- Algoritma, gözlenen verilerin olasılığını maksimize eden bir model bulmayı amaçlar.
- Saklı değişkenler nedeniyle doğrudan hesaplama yapılamadığı için beklenti fonksiyonu kullanılır.
- Q fonksiyonunu yükseltmek, log olabilirlik fonksiyonunu da yükseltir ve bu da daha iyi modellere doğru ilerleme sağlar.
- 57:55HMM Algoritmaları
- HMM (Hidden Markov Model) algoritmalarında, her adımda önceki zamandaki durumlar için hesaplanmış alfa değerlerini kullanarak geçişleri yapma, toplam alma ve bir sonraki zamana taşımak gerekiyor.
- İleri algoritması ile çıktı olasılıkları hesaplanırken, geri algoritması ile son zamandan başlayıp başa doğru gidilerek aynı denklemler kullanılarak beklenen değerler hesaplanabilir.
- Beklenen durum geçiş sayıları hesaplanırken, ileri olasılığı (alfa), geçiş olasılığı ve çıktı olasılığı çarpılarak normalize edilir.
- 1:00:03Beklenen Değerler ve En Büyütme Adımı
- Beklenen durum geçiş sayıları kullanılarak yeni geçiş olasılıkları hesaplanabilir.
- Beklenen durum bulunma sayıları, ileri olasılık (alfa) ile geri olasılık (beta) çarpılarak hesaplanır.
- En büyütme adımı, en yüksek olabilirlik kestiriminden ibaret olup, saklı değişkenlerin olasılıkları kullanılarak yumuşak bir sayma yöntemi uygulanır.
- 1:03:16Derin Öğrenme ve Zaman Serileri
- Konuşma tanıma için derin öğrenme yöntemleri günümüzde yaygın kullanılmaktadır.
- Derin öğrenme, yapay sinir ağlarının mimarisiyle ilgilidir ve zaman serilerinde yinelemeli modeller önemlidir.
- Derin yapay sinir ağları, sadece sınıflandırma değil, öznitelik çıkarma ve veri gösterimi konusunda da etkilidir.
- 1:04:48Konuşma Tanıma ve Veri Ön İşleme
- Konuşma tanımasında, daha önce kullanılan frekans cepstral katsayıları yerini mel cepstral katsayılarına bırakmıştır.
- Kulağımızın içindeki logaritmik ölçek, düşük frekansları doğrusal olarak, yüksek frekansları daha geniş bantlarda ayırır ve bu yapı konuşma tanımasında daha iyi işler.
- Yeni yöntemlerde mel cepstral özniteliklerinin yeterli olduğu, geri kalan cepstral kısmın gerekli olmadığı ortaya çıkmıştır.
- 1:07:15Dil Modelleme ve Yapay Sinir Ağları
- Dil modelleme için yapay sinir ağları doğrudan kullanılabilir.
- Giriş katmanında geçmiş sözcükler kullanılır ve her sözcük için bir vektör oluşturulur.
- Çıkış katmanında tahmin edilen sözcükler bulunur ve uygun amaç işlevleri kullanılarak koşullu olasılık dağılımı elde edilir.
- 1:09:34Dil Modellemede Yapay Sinir Ağları
- İleri beslemeli sinir ağlarında her kelime için bir giriş vardır ve izdüşüm katmanı tüm kelimeler için sabittir.
- Derin sinir ağıyla dil modelleme yaparken gizli katmanlar matrislerle çarpılıp doğrusal olmayan fonksiyonlar (sigmoid) geçirilerek çıktıda bir dağılım elde edilir.
- Zaman dizileriyle ilgili çalışmalarda özyineli (recurrent) yöntemler öne çıkar, burada gizli katman tekrar eden bir yapıya sahiptir.
- 1:11:15Özyineli Sinir Ağlarının Sorunları ve Çözümleri
- Özyineli sinir ağları teorik olarak geçmişi hatırlamalı ancak pratikte en fazla üç-dört kelime hatırlayabilmektedir.
- Uzun-kısa süreli bellek (LSTM) adı verilen özyineli sinir ağı türü, üç kapıyı içerir ve daha uzun etkileşimleri modelleyebilmektedir.
- Çift yönlü iğnelemeli sinir ağlarında hem ileri hem de geri doğru giden yinelemeli sinir ağları kullanılarak daha iyi tahminler elde edilebilir.
- 1:13:55Akustik Modellemede Yapay Sinir Ağları
- Akustik modellemede çıktılar Markov model durumlarıdır ve yapay sinir ağı bu durumların olasılıklarını tahmin eder.
- Saklı Markov modeli kullanmak istenirse, yapay sinir ağı çıkışı tekrar olasılık dağılımına dönüştürülür.
- 1989 yılında önerilmiş ileri beslemeli sinir ağları, 2015 yılında hemen hemen aynı yöntemle çok başarılı sonuçlar vermiştir.
- 1:16:35Evrişimsel ve Özyineli Sinir Ağları
- Evrişimsel sinir ağları, zaman frekans dağılımını imge gibi düşünerek iki boyutta evrişim yapabilir.
- Google'nın 2014'teki çalışması, LTM yapısının çok başarılı olduğunu göstermiştir.
- Konuşma tanıma için özel olarak çapraz entropi gibi farklı değerlendirme fonksiyonları kullanılır.
- 1:19:25Uçtan Uca Konuşma Tanıma Sistemleri
- Son yıllarda alt dize özniteliklerinden hatta konuşma sinyalinin kendisinden doğrudan çıktı üretebilen sistemler önerilmiştir.
- Bu sistemler diziden diziye modeller kullanır ve girdi bir encoder tarafından gömülü bir gösterime çevrilir.
- Bu yaklaşım daha çok veri ve teknik bilgi gerektirir ve çeşitli varyasyonları bulunmaktadır.
- 1:23:12Konuşma Tanıma Sisteminde Hata Oranı
- Konuşma tanıma sisteminde hata oranı, kelimeleri karıştırmak, bir kelimeyi atlamak veya yeni bir kelime eklemek şeklinde üç farklı hata çeşidi üzerinden hesaplanır.
- Sistem en olası sözcük dizisini bulmaya çalışır ve bir noktada verilen karar bir sonrakini etkilemez, en baştan sona en olası diziyi bulmaya odaklanır.
- Zamansal duraklamalar konuşma tanımayı kolaylaştırır, ancak doğal konuşmayı tanıma (geniş dağarcıklı sürekli konuşma tanıma) daha zor bir problem olarak görülür.
- 1:25:42Komut Kontrolünde Yapay Sinir Ağları
- Komut kontrolünde engram yerine second gram kullanmak gerekli olmayabilir, ancak komut sayısı (örneğin 250 kelime) çok büyük olduğunda yapay sinir ağları daha etkili olabilir.
- Yapay sinir ağları ile her komut için ayrı bir model oluşturulabilir veya çok büyük veri setleriyle (örneğin Google gibi) komutlar doğrudan ağın çıktısı olarak alınabilir.
- Diziden diziye modeller ve uygun şekilde uygulanan hata geri yayma algoritmaları, konuşma tanıma için yapay sinir ağları açısından önemli bir ilerleme sağlar.
- 1:28:36Konuşmacı Tanıma ve Diğer Uygulamalar
- Konuşmacı tanıma alanında derin öğrenme tam olarak ele geçirmemiş, bazı klasik yöntemler hala daha iyi sonuç vermektedir.
- Kalma filtre ve sanma filtre gibi yöntemler konuşmacı tanıma için kullanılabilir, ancak yapay sinir ağları daha güçlü bir kapasiteye sahiptir.
- Yüz bin birimlik çıktı katmanı optimizasyonu için, küçük bir kısım bilinirken diğer kısmı başka bir modelle ifade etmek veya hiyerarşik gruplama gibi yöntemler kullanılabilir.
- 1:31:42Türkçede Sözcük Altı Birimler
- Türkçe için sözcük altı birimler kullanılarak daha kısıtlı bir dağarcıkla daha büyük bir sözlük ifade edilebilir.
- Türkçenin sondan eklemeli bir dil olması nedeniyle bu yöntem zorunlu hale gelmektedir.
- 1:32:12Şarkı Tanıma ve Diğer Uygulamalar
- Şarkı tanıma için de benzer yöntemler kullanılabilir, ancak bu alanın üzerinde çok çalışılmamıştır.
- Kitap sayfasına odaklanma gibi bir uygulama için çok büyük bir veritabanı gerekebilir ve bu problem internet arama problemi gibi zorluklarla karşı karşıyadır.
- Konuşma ile kitaptaki bilgiyi bulma problemi, kısıtlı olmayan konuşmalar ve bağlamın zorluğundan dolayı oldukça zordur.
- 1:34:46Kelime Altı Modeller ve Karakter Bazlı Modeller
- Kelime altı modeller, dili ifade etme gücünü ve genelleştirme kapasitesini artırıyor.
- Daha derin modeller ve daha fazla detayla tamamen karakter bazlı modellere gidiliyor.
- Diziden diziye modellerde çıktı yazılı harf olarak ifade ediliyor, sesli olarak değil.
- 1:35:41Veri Miktarı ve Performans
- Performans birebir aynı değil, çok bilginin eklendiği yöntemler biraz daha iyi.
- Çalışmada kullanılan veri miktarı 125 bin saat, bu veriyi toplamak için yaklaşık 15 yıl gerekiyor.
- Makine yaklaşık 40 yaşında biri kadar konuşmayı duyduktan sonra bu işi yapabiliyor, insanlar ise bunu bir veya iki senede yapıyor.