Sizi WaveNet'e götürecek bir makale: Google Assistant'ın ses sentezleyicisi

Bu makale, orijinal başlığı olan AI Araştırma Enstitüsü tarafından derlenen teknik bir blogdur:

WaveNet: Google Assistantın Ses Sentezleyicisi

Yazar | Janvijay Singh

Tercüme | Sos Tavası Armut, Wang Liyu, Mo Qingyou, Hayal Kırıklığı

Düzeltme ve bitirme | ananas kız

Orijinal bağlantı:

https://towardsdatascience.com/wavenet-google-assistants-voice-synthesizer-a168e9af13b1

Sizi WaveNet'e götürecek bir makale: Google Assistant'ın ses sentezleyicisi

İnsan sesini neredeyse insan sesi kadar doğal bir makine ile sentezlemenin mümkün olduğunu hiç düşündünüz mü? WaveNet bunu mümkün kılar.

Konuşma sentezi, Boeing dikiş sentezi, Parametre sentezi, Derin öğrenme.

Antropomorfik konuşmanın (metinden konuşmaya) makine sentezi fikri uzun süredir ortalıkta dolaşıyor. Derin öğrenmenin ortaya çıkmasından önce, bir konuşma sentez sistemi kurmanın iki ana yolu vardı, yani Boeing ekleme sentezi ve parametre sentezi.

Boeing'in splicing ve sentezinin metinden sese dönüşümünde, fikri bir kişinin uzun bir cümle listesinin ses kayıtlarını toplamak, bu kayıtları ses birimlerine kesmek ve yakın zamanda sağlanan metinle eşleşen ses birimlerini gerçekleştirmeye çalışmaktır. Metne karşılık gelen sesli konuşmayı oluşturmak için dikin ve dikin. Boeing'in splaysing ve sentezleme tarafından üretilen konuşma, metnin ilk koleksiyon için kullanılan kayıtlarda zaten var olan bölümleri için, metinden sese dönüştürme sonrası konuşma daha doğal geliyor, ancak ilk kez karşılaşılan metinler biraz garip gelecek. Ek olarak, sesi değiştirmek, tüm yeni kayıt setini değiştirmemizi gerektirir. Aksine, parametre sentezinin metinden sese dönüşümünde, fikri, insanın ses yolunu parametrik bir fiziksel model (esasen bir işlev) aracılığıyla simüle etmek ve parametreleri ayarlamak için kaydedilen sesi kullanmaktır. Parametre sentezi metinden sese dönüştürme ile üretilen ses, ses dalgasının oluşturduğu ses ve metinden sese dönüştürme ile birleştirilmiş ses kadar doğal değildir, ancak bu yöntem, bazı modellerde parametreleri ayarlayarak sesi değiştirmek daha kolaydır.

Son günlerde, WavNet'in gelişiyle birlikte, sesi basitçe değiştirebilen ve daha da önemlisi mevcut konuşma işleme ile uçtan uca (ses kaydının kendisinden) işlenmemiş ses örnekleri üretmemiz mümkün. Yöntemle karşılaştırıldığında, elde edilen ses açıkça daha doğaldır. Hepsi derin öğrenmenin ortaya çıkması sayesinde.

WaveNet neden bu kadar heyecan verici?

WaveNet ile mevcut konuşma sentez yöntemleri arasındaki farkı açıklayabilmek için, istatistik için öznel bir 5 puanlık ortalama görüş puanı (MOS) testi kullanılır. Ortalama görüş puanı testinde, deneğe (kişiye) çeşitli ses sentez sistemlerinden sentezlenen ses örnekleri verilir ve örneklerin doğallığını 5 puanlık bir ölçekte (1: çok zayıf 2: zayıf 3: normal 4) değerlendirmesi istenir. : İyi 5: Mükemmel).

Subjektif 5 puanlık ortalama görüş bölme yöntemi için kullanılan ses örnekleri, uzun kısa süreli bellek tekrarlayan sinir ağına (LSTM-RNN), gizli Markov modeline (HMM) dayalı konuşma birimi setlerinin Boeing ekleme sentezine dayanan parametrelerden sentezlendi ve WaveNet konuşma sentezine dayanmaktadır.

WaveNet'in 5 puanlık ölçekte yaklaşık 4.0 puan aldığı histogramdan açıkça görülebilmektedir, bu açıkça diğer sistem taban hatlarından daha iyi ve gerçek insan sesine çok yakındır. DeepMindin bloguna danıştıktan sonra, sentezlenmiş konuşmanın doğallığında bu yöntemler arasındaki farkı anlayabilirsiniz. Sentezlenmiş konuşma örneklerinin çıktısını almanın yanı sıra WaveNet, ihtiyaçlarımızı karşılayan sesler üretmek için metin, hoparlör özellikleri vb. Gibi çeşitli konuşma özelliklerine kolayca uyum sağlayabilir. Bu onu daha da heyecanlı hale getiriyor.

WaveNet Üretken model.

Üretken model. Ne anlama geliyor? Genel etiketlenmemiş veri noktaları göz önüne alındığında, üretken bir model bu veri noktalarını hangi olasılık dağılımının üretebileceğini öğrenmeye çalışacaktır, amaç öğrenme dağılımını kullanarak yeni veri noktaları oluşturmaktır (girdi veri noktalarına benzer) . Üretken model, olasılık dağılımını farklı şekillerde, örtük (yönetilebilir veya yaklaşık yoğunluklu) veya açık olarak modelleyebilir. Üretken bir modelin açık bir modelleme modeli olduğunu söylediğimizde, olasılık dağılımını açıkça tanımladığımız ve her bir girişin etiketlenmemiş veri noktasına uydurmaya çalıştığımız anlamına gelir. Bunun aksine, örtük bir üretici model bir olasılık dağılımını öğrenir ve açık tanımlar olmadan yeni veri noktalarını doğrudan örnekleyebilir. Derin öğrenme alanındaki kutsal kâse olan GAN'lar (Generative Adversarial Networks), dolaylı olarak üretken modellerdir. Bununla birlikte, WaveNet ve kuzeni Pixel CNN'leri / RNN'leri (piksel evrişimli sinir ağı modeli / tekrarlayan sinir ağı modeli) her ikisi de ekran üretken modellerdir.

WaveNet bir olasılık dağılım modelini nasıl net bir şekilde kurar? WaveNet, X veri akışının birleşik olasılık dağılımının bir modelini oluşturmaya ve X veri akışındaki her Xt öğesinin koşullu olasılığını çarpmaya çalışır. Bu nedenle, işlenmemiş ses dalgası X = {X1, X2, X3 XT} 'nin bir bölümü için inşa edilen ortak olasılık fonksiyonu aşağıdaki gibidir:

Bu nedenle her numune Xt, önceki zaman adımının tüm numuneleriyle sınırlıdır. Bir zaman adımındaki gözlemler, önceki zaman adımının gözlemlerine bağlıdır (bu, her koşullu dağılım terimini kullanarak oluşturmaya çalıştığımız modeldir) Bu bir zaman serisi tahmin modeline benzemiyor mu? Aslında, WaveNet otomatik bir regresyon modelidir.

Bu koşullu dağıtım terimlerini nasıl modelliyoruz? RN'ler (tekrarlayan sinir ağı modelleri) veya LSTM'ler (uzun ve kısa bellek ağı modelleri), güçlü doğrusal olmayan zaman serisi modelleri olarak en bariz seçimlerdir. Aslında, piksel yinelenen sinir ağı, giriş görüntüsüne benzer bir kompozit görüntü oluşturmak için aynı fikri kullanır. Bu fikri sentetik konuşma oluşturmak için kullanabilir miyiz? Konuşma, en az 16KHZ'lik bir frekanstan örneklenir; bu, saniyede en az 16.000 ses örneği olduğu anlamına gelir. RNN'ler (Tekrarlayan Sinir Ağları) veya LSTM'ler (Uzun Kısa Bellek Ağları) bu kadar uzun bir zaman bağımlılığı modellememiştir (yaklaşık 10.000 zaman adımlı sıra). Şu anda modelleyebilecekleri en uzun zaman bağımlılığı 100 zaman adımıdır. Sıra, bu nedenle bu iki model konuşma sentezi için çok uygun değildir. Bununla başa çıkmak için CNN (Convolutional Neural Network) kullanabilir miyiz? Bekle, CNN'ler (evrişimli sinir ağı modelleri)? Nasıl yapılır? Piksel evrişimli sinir ağı modelinde de benzer fikirler kullanılmıştır.

Evrişimsel sinir ağı modeli, nedensel evrişim, genişlemiş evrişim.

Neden CNN'leri (evrişimli sinir ağı modelleri) kullanmaya çalışmalıyız? CNN'lerin (evrişimli sinir ağı modelleri) eğitim hızı, özellikle uzun tek boyutlu dizilere uygulandığında, tipik olarak RNN'lerden (tekrarlayan sinir ağı modelleri) veya LSTM'lerden (uzun ve kısa bellek ağı modelleri) daha hızlıdır çünkü her maskeyle birlikte Veya filtrenin evrişim konumu ile ilgili işlemler paralel, bağımsız bir şekilde gerçekleştirilebilir. Daha hızlı eğitim hızı. Harika geliyor! Otoregresif özelliğin performansı nedir (bir zaman adımının çıktısı yalnızca önceki zaman adımının çıktısına bağlıdır ve gelecekteki zaman adımının çıktısıyla ilgisi yoktur)? Nedensel evrişim burada eyleme dönüştürülür. Tek boyutlu nedensel evrişim, girdinin tek boyutlu dizisinin sol doldurulmasıyla kolayca gerçekleştirilebilir; burada kullanılabilir bir evrişim, uygun miktarda 0'ın evrişime eklenmesiyle elde edilir. RNN'ler (tekrarlayan sinir ağı modelleri) ve LSTM'ler (uzun kısa bellek ağı modelleri) ile karşılaştırıldığında, nedensel evrişim, çok daha uzun zaman bağımlılıklarını modellememize izin verir (ve ayrıca yeniden incelemenin uzunluğunu belirlememize izin verir).

Nedensel evrişim, modelin veriler üzerine kurduğumuz modelin kurallarını ihlal etmemesini sağlar.

iyi! Otoregresif ihlaller sorunuyla kolayca başa çıkabiliriz. Peki ya binlerce örnek dizisinin inceleme uzunluğunu yönetme sorunu (örneğin, modelimiz geçerli zaman adımında çıktıyla ilgili bir makara çizmeden önce en az bir saniyelik sese bakar)? Düşünebileceğiniz en basit yol, filtrenin boyutunu doğru uzunlukta geriye bakacak kadar artırmaktır, ancak bu gerçekten etkili mi? Bence bu yaklaşım modelin doğrusal olmayışını azaltacak ve bu da modelin karmaşık geçici bağımlılıkları öğrenmesini zorlaştıracak ve böylece modelin performansını sınırlayacaktır. Aklınıza gelen bir sonraki fikir, sinir ağının katman sayısını artırmak olabilir. Bu yöntem etkili olabilir. Bununla birlikte, hesaplamak imkansızdır, çünkü çıktıdaki bir zaman adımı içindeki alıcı alanın boyutu veya yeniden incelemenin uzunluğu, modeldeki gizli katmanların sayısı ile doğrusal olarak artar ve hesaplamalarımızda, birkaç tane olmasını istemiyoruz. Binlerce gizli katman modeli. Şimdi göz önünde bulundurmamız gereken şey, gizli katmanların sayısını, filtrenin boyutunu sınırlamak ve yeniden incelemenin uzunluğunu artırmak mı? Nasıl yapacağız? Genişletilmiş evrişim bize yardımcı olacaktır.

Genişleme evrişimi, kendi uzunluğunu aşan bir alana bir filtre uygulayarak ve belirli adımlarda girdi değerlerini atlayarak yeniden inceleme uzunluğunu veya kabul alanının boyutunu artırmaya çalışır. Bu, daha büyük bir filtre elde etmek için orijinal filtreyi genişletmek için 0 kullanan bir evrişime eşdeğerdir, ancak açıkçası bu yöntem daha etkilidir. WaveNet'te, çok sayıda genişletilmiş evrişimli katman, çok az sayıda katman aracılığıyla geniş bir alıcı alan elde etmek için tek tek istiflenir.

Genişleme nedensel evrişimli katman yığını: Her katmanın genişleme faktörünün iki katına çıkarılması, alıcı alanı O (2 ^ n) artıracaktır.

Softmax (esnek maksimum transfer fonksiyonu) dağılımı Mu-law sıkıştırma.

Koşullu olasılığı karşılamak için, WaveNet diğer hibrit modellerin yerine softmax dağılımını (sınıflandırma dağılımı) kullanır.Sınıflandırma dağıtımı şekli hakkında varsayımlar yapmaz, bu nedenle daha esnek ve keyfi dağılımları modellemek daha kolaydır. İşlenmemiş ses, 16 bitlik tam sayı değerleri olarak saklanır (-32,768 ... 32,767) Olasılık dağılımını çıkarmak için bir softmax katmanı kullanmak, modelimizin bir zaman adımında 65.5535 değer üretmesini gerektirir. Bu, model performansını yavaşlatacak mı? Bu gerçekten olacak. İyileştirmek için ne yapabiliriz? Bit derinliğini azaltmak yardımcı olacaktır. Doğrusal bit derinliği azaltma kullanırsak (256'ya bölünür), düşük genlikli örnekler üzerindeki etki, yüksek genlikli örneklerden daha büyük olacaktır. Alınabilecek en büyük pozitif değer olan 32767 başlangıç değerine sahip 16 bitlik bir örnek düşünün. 8 bite dönüştürüldüğünde, örnek değer 127 (32767/256 = 127 artı 255) olur ve yuvarlama hatası 255/32768 olur. Bu,% 1'den az bir niceleme hatasıdır. Ancak bu hatayı, 0 ile 255 arasındaki en küçük 16 bitlik örneklerle elde edilen niceleme hatasıyla karşılaştırın. En küçük 16 bitlik örnek 8 bite düşürüldüğünde, dönüştürülen değer 0'a yakın olur ve hata% 100 olur. Bu nedenle, doğrusal bit derinliği azaltma yöntemini kullanan yuvarlama, düşük genlikli örnekler üzerinde yüksek genlikli örneklerden daha büyük bir etkiye sahip olacaktır. Örnek değerlerini yeniden dağıtabilirsek, daha fazla niceleme seviyesi daha düşük genliklerde ve az sayıda niceleme seviyesi daha yüksek genliklerde olur ve bu da niceleme hatalarını azaltabilir. WaveNet'te basit doğrusal nicemleme yerine Mu-yasası dağılımının (doğrusal olmayan nicemleme) kullanılmasının nedeni budur.

Mu-law sıkıştırmasını gerçekleştiren ifade, doğrusal nicemlemeden daha iyi yeniden yapılandırılmış bir çıktı (orijinal sese daha yakın) bekleyebilir.

Yukarıdaki ifadede, 1

Geçit aktivasyon fonksiyonu, atlama bağlantısı ve artık bağlantı.

Doğrusal olmayan aktivasyon işlevi, çıktı ve girdi arasındaki karmaşık ilişkiyi öğrenen herhangi bir derin öğrenme modelinin unsurlarından biridir. RELU (doğrusal birim) başlangıçta WaveNet'te kullanıldı, ancak deneyler yaptıktan sonra, WaveNet için, sigmoid (S tipi) işlevinin aktivasyon işlevini kapatmak için doğrusal olmayan bir tan-hiperbolik (tanh) işlevinin kullanılmasının daha iyi olduğu bulundu. .

WaveNet'te kullanılan geçit etkinleştirme işlevi ifadesi

Yukarıdaki ifadede, W izin verilen Assi filtresini, * evrişim operatörünü ve aynı veya matematiksel operatörü temsil eder. Artık bağlantı, alt katmanın ve üst katmanının çıktısını sürekli olarak üst üste bindiren, bağlantıyı atlayan, alt çıktıyı doğrudan çıktı katmanına bindiren, her ikisinin de sinir ağlarının yakınsama süresini azaltmada ve derin ağları eğitmede etkili olduğu kanıtlanmıştır. Bu nedenle, aşağıdaki şekilde gösterildiği gibi, artık bağlantı WaveNet mimarisinde kullanılmıştır.

WaveNet mimarisi: geçit aktivasyon fonksiyonu, atlama bağlantısı, artık bağlantı

Yönetmelik. Yerel. Küresel.

Konuşmacının kimliği ve ilgili metin gibi çeşitli işlevlere göre çıkış sesini nasıl ayarlayabileceğimizden bahsetmedik. WaveNet'in çıkış konuşması iki şekilde ayarlanabilir: (1) global ayarlama, (2) tek bir özellik önyargısı, aslında farklı zamanlarda, birden çok özellik ile hoparlör kimliği veya yerel ayarlama gibi tüm zaman adımlarında çıktı Temel konuşma metni gibi çıktıyı farklı zaman adımlarında önyargılı yapan sıra özellikleri. Bunu daha resmi bir şekilde ifade edersek, bu, gerçek modelde koşullu dağılım terimlerinde (yerel koşullarda Ht ve küresel düzenlemede H) yeni parametrelerin tanıtılması anlamına gelir.

Koşullu girdi ekledikten sonra koşullu dağıtım öğelerini değiştirin

Lokal ayarlamada, ayarlama girişinin zaman dizisi sesten daha kısa bir uzunluğa sahip olabilir ve lokal ayarlama için, iki zaman dizisinin aynı uzunluğa sahip olması gerekir. Uzunluğu eşleştirmek için, ayar girişinin uzunluğunu artırmak için transpoze CNN (öğrenilebilir bir örnekleme şeması) veya diğer örnekleme şemalarını kullanabiliriz.

Sapma terimi h tanıtıldıktan sonraki ifade

Yukarıdaki ifadede, V, temelde boyutu düzeltmek ve önyargı çıktısının doğru ağırlığını öğrenmek için h'yi dönüştürmek için iki amaç için kullanılan öğrenilebilir bir doğrusal projeksiyondur.

Harika model. Hızlı eğitim. Yavaş çıkarım mı?

WaveNet mimarisi, şimdiye kadar tartıştığımız şey ne olursa olsun, karmaşık zaman bağımlılıklarını ve koşulları iyi bir şekilde yakalar. Ek olarak, yüksek derecede paralellik eğitimi çok hızlı hale getirir. Peki ya akıl yürütme? Zaman adımının çıktısı önceki zaman adımının çıktısına bağlı olduğundan, yeni sesin örneklenmesi esasen süreklidir. 1 saniyelik çıktı üretmek yaklaşık 1 dakikalık GPU süresi alır. Google bu modeli asistanına dağıtırsa, "Hey Google! Hava nasıl?" Gibi basit sorular üzerinde düşünmek birkaç saat sürecektir. Peki muhakeme süresini nasıl kısalttılar? Cevap IAF.

Standartlaştırılmış süreç IAF

Standartlaştırılmış süreç nedir? Normalleştirme süreci, eşlemeyi (eşleştirme) basit olasılık yoğunluğundan (Gauss gibi) zengin karmaşık dağıtıma kadar öğrenebilen bir dizi dönüştürme işlemidir. Olasılık dağılımı q (z) ve olasılık dağılımı q (x) örneklemesinden yeterli puan aldığınızı düşünün, o zaman bu normalleştirme süreci dönüştürme sürecini, yani q (x) örneklemesinden nokta haritalamayı öğrenmek için kullanılabilir. Q dağılımındaki karşılık gelen eşlemesine (Z). Bu süreç nasıl gerçekleştirilir? Önce, f'nin tersine çevrilebilir ve düzgün bir haritalama olduğu bir f dönüşümü olduğunu düşünelim. Bu eşlemeyi rastgele bir z değişkenini q (z) dağılımına dönüştürmek için kullanırsak, q (z ') dağılımına sahip rastgele bir z' = f (z) değişkeni elde ederiz:

Sizi daha sezgisel olarak tanıtmak için, dönüştürülmüş rastgele değişkenlerin dağıtımı için bu ifadeyi nasıl elde ettiğimizi, lütfen Eric Jang tarafından yazılan bu blog gönderisine bakın. Bir dönüşüm yeterli mi? Aslında, birkaç basit dönüşümü birleştirerek ve yukarıdaki ifadeleri sürekli olarak uygulayarak rastgele karmaşık yoğunluklar oluşturabiliriz. Q0 dağılımının rasgele değişkeni z0'ın K dönüşüm zinciri fk üzerinden sürekli olarak dönüştürülmesiyle elde edilen qK (z) yoğunluğu:

Bu dönüşümlerin her biri, matris çarpımı (öğrenilebilir değerlerle) ve ardından ReLU gibi doğrusal olmayan unsurlar kullanılarak kolayca modellenebilir. Ardından, dönüştürülmüş olasılık dağılımı qK (z) altında q (x) 'den örneklenen noktaların olasılığını (günlük olasılığını) optimize ederek, dönüştürülebilir öğrenilebilir parametreleri güncellemek için istediğiniz herhangi bir optimizasyon algoritmasını kullanın. Bu, qK (z) dağılımını q (x) 'e çok benzer hale getirecek, böylece q (z)' den q (x) 'e uygun eşlemeyi öğrenecektir.

Bir dizi tersinir dönüşümden sonra dağıtılmış akış

Standartlaştırılmış bir süreç fikri hızlı bir şekilde akıl yürütmemize nasıl yardımcı olabilir? WaveNet'in üretken bir model olduğunu unutmayın, eğitim verilerini üretebilecek olasılık dağılımını öğrenmeye çalışmak dışında hiçbir şey yapmaz. İyi tanımlanmış bir üretken model olduğu için (yönetilebilir bir yoğunluğa sahip), Gaussian gibi bir dağıtımdan basit noktaları WaveNet tarafından öğrenilen karmaşık bir sınıflandırma dağılımına eşleştirebilen bir dönüşümü kolayca öğrenebiliriz. Hızlı bir muhakeme şeması ile standartlaştırılmış bir süreç öğrenirsek, WaveNet'teki yavaş muhakeme sorunlarını kolayca sıralayabiliriz. IAF (Inverse Autoregressive Flow) bu fikre çok iyi uyabilir. IAF'ta fikrimiz, önce z ~ Logistic (0, I) 'den rastgele bir örnek almak ve ardından aşağıdaki dönüşümü çizilen örneğe uygulamaktır.

Ölçekleme faktör (ler) i ve kaydırma faktörünün () öğrenilebilir parametre () ve önceki zaman adımından z girdi örneğindeki değer kullanılarak hesaplandığı zt üzerinde basit ölçekleme ve kaydırma dönüşümü

Xt zaman adımının doğru dağılımını çıkarmak için, ters otoregresif akış, zımni olarak çıkarılmadan önce gürültü girdisi zl ila zt-1'in dizisine ve zaman aşaması x1 ila xt-1 dizisine dayanır. Gürültü girdi dizisi, belirli bir zt ile paralel olarak tüm xt çıktılarını verebilir. Aşağıdaki resim her şeyi daha net hale getirecektir (gösterimi değiştirmeye dikkat edin).

Ters otoregresif akışta, farklı zaman adımlarının çıktısı paralel olarak hesaplanabilir, çünkü zaman adımının çıktısı önceki zaman adımının çıktısına bağlı değildir.

harika! IAF'ın hızlı çıkarım şemaları vardır (koşullu olasılıklar bile paralel olarak hesaplanabilir), ancak eğitilmeleri yavaştır. Neden daha yavaş? Çünkü bize yeni bir veri noktası verirseniz ve yoğunluğu değerlendirmemizi isterseniz, u'yu geri yüklememiz gerekir, bu sürecin doğal sırası çok yavaştır. Paralel WaveNet bu olgudan yararlanır ve IAF'yi (Öğrenci WaveNet) eğitmek için basit bir WaveNet (Teacher WaveNet) kullanma konseptini önerir.

Paralel. Daha Hızlı. WaveNet.

WaveNet'e benzer şekilde, bizim fikrimiz IAF'ın hızlı muhakeme şemalarının özelliklerinden yararlanmaktır. Bu nedenle, ilk aşamada basit bir WaveNet modeli eğittik (buna öğretmen eğitimi diyoruz). İkinci aşamada, WaveNet öğretmenin ağırlığını donduruyoruz ve bunu IAF'yi (Student Distillation) eğitmek için kullanıyoruz. Bizim fikrimiz, önce z ~ Logistic (0, I) 'den rastgele bir örnek çizmek ve sonra bunu paralel olarak IAF'a iletmektir. Bu bize geçiş dağılımının ve ilgili koşullu olasılıkların özünü sağlayacaktır. Bizim fikrimiz, bunu eğitimli öğretmen WaveNet ile ilgili koşullu bir olasılık oluşturacak basit bir öğretmen WaveNet aracılığıyla dönüştürülmüş bir dağıtıma dönüştürmektir. Daha sonra her iki modelden de alınan koşullu olasılıklar arasındaki KL farkını en aza indirmeye çalışıyoruz. Bu, IAF'nin (Student WaveNet) öğretmenine neredeyse benzer bir olasılık dağılımını öğrenmesine olanak tanıyacak ve sonuçlar bu gerçeği doğruluyor çünkü öğretmen ve öğrenci WaveNet'ten alınan çıktı arasındaki 5 seviyeli MOS puanı neredeyse ihmal edilebilir.

Paralel WaveNet eğitim programı

Dağıtım hızı yeterince hızlı mı? Evet. Aslında, konuşma örneklerini gerçek zamandan 20 kat daha hızlı oluşturabilir. Ancak yine de bir sorun var: Modelimizi yeniden eğitmemiz gerektiğinde, önce WaveNet öğretmenlerini eğitiyoruz ve sonra öğrencileri WaveNet'i eğitiyoruz. Ek olarak, öğrencinin WaveNet performansı büyük ölçüde öğretmenin WaveNet eğitimine bağlıdır. Ancak genel olarak dağıtım iyi bir şeydir.

"Teori ucuz, lütfen bana kodu verin. (Pratik bana gerçek bilgi verir)"

İnternette kullanılabilecek birçok basit WaveNet uygulaması vardır, ancak paralel uygulamalar henüz bulunamamıştır.

1.Keras uygulaması

2. PyTorch uygulaması

3. TensorFlow uygulaması (bu, şu anda İnternette bulunan uygulamalar arasında en çok alıntı yapılan uygulamadır)

Referanslar:

  • Ses Genişletme.

  • NLP görevlerinde Evrişimli Katmanlar.

  • Dilate Evrişimler.

  • Akışları Normalleştirme: Eğitim, Eric Jang-Bölüm 1, Bölüm 2., Normalleştiren Akışlarla Varyasyonel Çıkarım (Kağıt).

  • Derin Ses: Gerçek Zamanlı Nöral Metinden Konuşmaya (Kağıt): Ek, WaveNet'i anlamak için oldukça kullanışlıdır.

  • WaveNet: Ham ses için üretken bir model (Kağıt).

  • Parallel WaveNet: Fast High-Fidelity Konuşma Sentezi (Kağıt).

  • PixelCNN, Wavenet ve Varyasyonel Otomatik Kodlayıcılar - Santiago Pascual - UPC 2017.

  • Bu makalenin ilgili bağlantılarını ve referanslarını görüntülemeye devam etmek ister misiniz?

    Bağlantıya uzun basın ve açmak için tıklayın veya tıklayın [Bu makale, WaveNet: Google Assistant'ın ses sentezleyicisini anlamanızı sağlar]:

    https://ai.yanxishe.com/page/TextTranslation/1228

    AI Araştırma Enstitüsü heyecan verici içerikleri günlük olarak güncelliyor ve daha heyecan verici içerikler izliyor: Lei Feng Wang Lei Feng Wang Lei Feng Wang

    Hedef tespiti gerçekleştirmek için Raspberry Pi ve Python kullanın

    Olağanüstü bir veri bilimcinin temel becerileri nelerdir?

    Yeni başlayanlar için transfer öğrenimi için Keras nasıl kullanılır

    Veri bilimini öğrenmek istiyorsanız, bu 7 kaynağı kaçırmamak gerekir

    Çevirmenizi bekliyorum:

    Derin Öğrenme Hedef Tespit Algoritmalarına Genel Bakış

    Bir makale size PyTorch ile daha hızlı RCNN'yi nasıl oluşturacağınızı öğretiyor

    Gelişmiş DQN'ler: Derin Pekiştirmeli Öğrenme ile Pac-Man Oynamak

    Derin güçlendirme öğrenimi için yapılandırılmış kontrol ağı (ICML belgesinde açıklama)

    "Tavuk yeme" oyunları, "mobil oyun" ve "terminal oyunu" gibi garip çember, iki buz ve ateş cenneti gösteriyor
    önceki
    "Made in China" hakkında ne düşünüyorsunuz? Feng Chen Wang'ın yeni "Made in China" serisi önyargıyı kırıyor!
    Sonraki
    Apple'ın yeni kablosuz şarj patenti: MacBook iPhone'u şarj etsin
    "Pacific Rim: Rising Thunder": Beklenti ne kadar büyükse, hayal kırıklığı da o kadar büyük olur!
    Tarihten geleceğe mühendislik eğitimi yeniden başlıyor
    JD.com bir IPv6 yürüyüşü yapmak istiyor
    Yinglang, Haziran ayında otomobil satışlarında birinci sırada yer aldı ve TOP10'da bağımsız bir marka yok
    Akıntıya karşı soruşturma: 16 yaşındaki Gansu "gelini" 24 yaşındaki kuzeniyle evlendi
    BAPE City Serisi Hava Saldırılarını Not Etmeyin! İngiliz unsurları ile beyin sinirlerinizi istila edin!
    [Film izleme için işe alma] Yüksek üne sahip yerli korku filmi "Zhongxie" biletleri almaya başlıyor!
    Liu Xiang son zamanlarda ne yapıyor, pantolonunu gösteriyor ve yiyecekleri kurutuyor? Gelin ve en iyi arkadaşı "Usta Mantou" nun söyleyeceklerini dinleyin
    Luoyang Ortaokulunda bir öğretmenin ölümü Kaç öğretmen hala baskı altında mücadele ediyor?
    Samsung S10 + incelemesi: "makine kralı" böyle olmalı, amiral gemisi sadece konuşmaktan daha fazlası
    Xiaomi Youpin Rice Noodle Festival kör randevu etkinliği resmen sona eriyor, sekiz yeni ürünün kendine has özellikleri var
    To Top