在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于Tacotron實現(xiàn)StoryTime模型

wpl4_DeepLearni ? 來源:工程師曾玲 ? 2018-12-30 08:59 ? 次閱讀

語音合成的目標是使得計算機能夠發(fā)出跟人一樣自然流暢且?guī)в懈星榈穆曇簦固垢5膶W者嘗試基于Tacotron實現(xiàn)了一個StoryTime模型,該模型依賴于一個編碼器、解碼器、以及注意力機制來模擬生成人類水平的頻譜,期望它可以替代成為說書的。

在谷歌發(fā)布Tacotron模型之前,wavenet也是完全用神經(jīng)網(wǎng)絡來合成語音的模型,它采用自回歸的方法生成了讓人印象深刻的音頻,不過正是由于其自回歸的方法需要依賴于過去生成的所有樣本來生成新的樣本,因此其生成的速度十分緩慢,但是它可以捕捉不同說話人的特征,并且可以在他們之間隨意切換。

后來百度研究院發(fā)布了Deep Voice語音合成系統(tǒng),不同于wavenet一體式的做法,DeepVoice的做法是將傳統(tǒng)的基于參數(shù)合成系統(tǒng)的各個組件均替換成了神經(jīng)網(wǎng)絡,并且讓每個模塊各自進行訓練,該方法的缺點就是需要對每個模塊進行精細調參,這樣會出現(xiàn)錯誤累積的問題。

而Tacotron是一個完全端對端的語音合成模型(除了最后一步神經(jīng)網(wǎng)絡沒有直接生成波形信號之外),它不需要額外的音素信息或語言模型,而是直接可以將文本轉化成語音,這也是本文StoryTime所采取的模型。

1. 預處理階段

首先要處理的就是收集音頻語料以及所對應的文本標簽,這里作者下載的是哈利波特的聽書音頻,以及對應的文本材料。接下來要做的就是對這個音頻進行分割以及賦予每個小音頻正確的文本標簽。對于文本其實比較好處理,因為章節(jié)之間的格式很明顯,很容易可以使用正則表達式來得到想要的分割。

對于音頻的分割就麻煩一些,因為目標是得到音頻與文字之間的大致對齊。由于章節(jié)與章節(jié)之間一般情況下都會出現(xiàn)大約3秒鐘的停頓,所以作者首先基于停頓大于3秒鐘進行分割,默認會得到不同的章節(jié),然后有些章節(jié)與章節(jié)之間的停頓小于3秒,所以按上面方法分割的文件中會有包含了多個章節(jié)的情況,而這個又是無法自動分割的,因為容易與句子之間的停頓混淆。無奈之下,作者最終采用了聲學軟件Audible來手動對它們進行進一步的劃分,最終將劃分后的片段

放入開源的對齊軟件Gentle中,就可以得到樣本對。整個流程如下圖所示。

2.模型細節(jié)

這里采用的就是谷歌發(fā)布的Tacotron模型,如下圖所示,總的來說由五個部分構成,分別是文本編碼器、音頻特征編碼器、注意力、解碼器、合成器。下面我將逐一介紹每個部分。

首先,對于文本編碼器部分,將詞向量作為兩個帶ReLU激活函數(shù)的全連接層的輸入,并在這里采取了50%的dropout以提高模型的泛化能力,這一部分是對輸入的預訓練,論文中稱之為prenet。prenet的輸出作為CBHG網(wǎng)絡的輸入,其中CBHG網(wǎng)絡是由Convolutional Bank+Highway Network+GRU組成。這里作者使用了16層一維卷積網(wǎng)絡,因為輸入是單詞的embedding矩陣,一維卷積縱向作用到矩陣上面,16層卷積網(wǎng)絡分別擁有大小從1到16的不同的卷積核,通過這種不同大小卷積核的方式來提高模型泛化能力,并且每一層卷積都可以認為是一個起到k-gram的作用。然后經(jīng)過池化層和highway network以得到更高維的特征,并輸入到雙向GRU網(wǎng)絡中得到序列層面特征,并將從prenet出來的輸出與這里進行連接,構成一個residual connection,最終得到的輸出就是作為注意力模型的上下文特征。

另一個模塊就是注意力和RNN解碼器,注意到對于每一幀頻譜的輸入,解碼器輸出的是r幀頻譜,這種做法可以加速執(zhí)行時間,不過給訓練和生成的實現(xiàn)方法上帶來了差異。在訓練過程中,當預測了r幀梅爾頻譜以后,第r個時間點的頻譜標簽將作為模型的輸入,模型基于這個預測下一批r幀梅爾頻譜;在生成階段,除了一開始模型使用0填充的幀作為輸入以外,后面的時刻將會使用前一時刻輸出的r幀中的最后一幀梅爾頻譜作為輸入。如下圖所示,解碼器和注意力層中所用的均為GRU,注意力層是一個帶有Bahdanau注意力機制的GRU,解碼RNN由兩個帶有residual connection的GRU層構成,解碼器自始至終都是每步產(chǎn)生r幀輸出,最終解碼器的輸出作為CBHG網(wǎng)絡的輸入。這種解碼器只需要執(zhí)行T/r步,假設T為輸入的總幀數(shù)。

對于解碼器的CBHG網(wǎng)絡,與前面編碼器CBHG唯一的不同之處在于這里使用的k是8而不是16,這是因為在這里數(shù)據(jù)的維度有所降低,經(jīng)過卷積層得到輸出維度為80,剛好就是梅爾頻譜特征的維度。最后經(jīng)過highway network和雙向GRU即可得到頻譜圖,利用griffin lim算法即可將該頻譜圖轉化成音頻。至于griffin lim算法的轉化效果,不是特別理想,因為即使是將一段清晰的音頻,提取其頻譜特征,通過griffin lim算法轉化出來的音頻相比于原始音頻還是多了一些噪音。

總結一下,這是一篇實踐性的文章,在谷歌的Tacotron論文發(fā)布以后,利用自己的數(shù)據(jù)來一步步調參優(yōu)化進而搭建一個自己的語音合成系統(tǒng)。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 編碼器
    +關注

    關注

    45

    文章

    3651

    瀏覽量

    134767
  • 谷歌
    +關注

    關注

    27

    文章

    6173

    瀏覽量

    105633

原文標題:基于Tacotron模型的語音合成實踐

文章出處:【微信號:DeepLearningDigest,微信公眾號:深度學習每日摘要】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    一個基于Tensorflow框架的開源Tacotron實現(xiàn)

    Tacotron語音合成系統(tǒng)打破了各個傳統(tǒng)組件之間的壁壘,使得可以從配對的數(shù)據(jù)集上,完全隨機從頭開始訓練。本文是來自喜馬拉雅FM音視頻工程師馬力的投稿,他手把手式的介紹了Tacotron的使用方法,幫助你快速上手。
    的頭像 發(fā)表于 04-10 08:47 ?1.3w次閱讀

    matlab的模型變換、模型簡化、模型實現(xiàn)以及模型特性命令

    matlab的模型變換、模型簡化、模型實現(xiàn)以及模型特性命令模型變換 C2d 變連續(xù)系統(tǒng)為離散系統(tǒng)
    發(fā)表于 09-22 15:58

    從Matlab_Simulink_模型到代碼實現(xiàn) matlab

    從Matlab_Simulink_模型到代碼實現(xiàn) matlab
    發(fā)表于 10-04 08:36

    使用全卷積網(wǎng)絡模型實現(xiàn)圖像分割

    OpenCv-C++-深度神經(jīng)網(wǎng)絡(DNN)模塊-使用FCN模型實現(xiàn)圖像分割
    發(fā)表于 05-28 07:33

    請問如何實現(xiàn)滑動導航模型SwipeView?

    如何實現(xiàn)滑動導航模型SwipeView
    發(fā)表于 11-23 06:56

    如何實現(xiàn)嵌入式CISI模型機系統(tǒng)的設計?

    如何實現(xiàn)嵌入式CISI模型機系統(tǒng)的設計?
    發(fā)表于 12-24 07:01

    K210是否可以將模型分層實現(xiàn)

    請問各位 是否可以將模型分層實現(xiàn)實現(xiàn)的思路大概如何。是先訓練好模型,分層轉換為kmodel,依次實現(xiàn)各層kmodel,還是導出整體kmod
    發(fā)表于 09-15 06:17

    基于模型的DDS芯片設計與實現(xiàn)

    基于模型的DDS芯片設計與實現(xiàn)  0 引言   1971 年,美國學者J.Tierncy.C.M.Rader 和B. Gold 應用全數(shù)字技術,從相位概念出 發(fā)給出了直接合成波形的
    發(fā)表于 01-20 11:23 ?1411次閱讀
    基于<b class='flag-5'>模型</b>的DDS芯片設計與<b class='flag-5'>實現(xiàn)</b>

    基于C++的modbus通訊協(xié)議模型實現(xiàn)

    基于C++的modbus通訊協(xié)議模型實現(xiàn),很好的資料,快來下載學習吧。
    發(fā)表于 03-21 17:27 ?55次下載

    蘋果推出tvOS應用“iBooks StoryTime

    iBooks StoryTime通過結合大聲朗讀(Read-Aloud)功能及圖形和動畫等,從聽覺和視覺上幫助提高孩子們的閱讀理解能力。 另外,與第四代Apple TV相結合后, 這款應用為家長和他們的孩子提供了一種獨特的互動閱讀體驗。
    發(fā)表于 11-11 09:51 ?1303次閱讀

    基于模型的SDR開發(fā)設計與實現(xiàn)

    促使下一代通信無線電的一個新設計方法的產(chǎn)生。該方法基于更高層次抽象描述,采用基于模型的設計思想,其核心為基于與實現(xiàn)無關的模型(IIM)和特定實現(xiàn)
    發(fā)表于 11-22 01:04 ?1775次閱讀

    基于模型的設計的IIM 和ISM實現(xiàn)

    要求。這種認識促使下一代通信無線電的一個新設計方法的產(chǎn)生。該方法基于更高層次抽象描述,采用 基于模型的設計 思想,其核心為基于 與實現(xiàn)無關的模型 (IIM) 和 特定實現(xiàn)
    發(fā)表于 12-12 20:58 ?1492次閱讀

    整體thread模型的設計與實現(xiàn)

    SPDK Thread 模型是SPDK誕生以來十分重要的模塊,它的設計確保了spdk應用的無鎖化編程模型,本文基于spdk最新的release 19.07版本介紹了整體thread模型的設計與
    的頭像 發(fā)表于 03-29 14:39 ?2143次閱讀
    整體thread<b class='flag-5'>模型</b>的設計與<b class='flag-5'>實現(xiàn)</b>

    利用NVIDIA Volta將文本實時生成自然語音

    在訓練了 Tacotron 2 和 WaveGlow 模型,或者下載了各自模型的預先訓練的檢查點之后,您可以執(zhí)行以文本為輸入的推理,并生成一個音頻文件。
    的頭像 發(fā)表于 04-07 10:08 ?1351次閱讀

    Storytime CMS系統(tǒng)和博客引擎

    ./oschina_soft/storytime.zip
    發(fā)表于 06-09 10:47 ?1次下載
    <b class='flag-5'>Storytime</b> CMS系統(tǒng)和博客引擎
    主站蜘蛛池模板: 98色花堂国产第一页| 日韩精品卡4卡5卡6卡7卡| 五月天婷婷在线视频| 黄色日比| 午夜激情福利| 天天干天天舔天天射| 女色窝人体色77777| cao榴| avtt香蕉| 国产精品臀控福利在线观看| 欧美国产黄色| 国产成人毛片视频不卡在线| 97capcom超频在线| 色啦啦影院| 亚洲高清色图| 亚洲美女视频在线观看| 99久久免费精品国产免费高清| 亚洲日本在线观看| 在线欧美色图| 伊人丁香婷婷综合一区二区| 卡1卡2卡3精品推荐老狼| 亚洲免费视频一区| 最好看免费中文字幕2018视频| 1v1双性受整夜不拔bl| 亚洲爱爱视频| 天天操丝袜| 四虎国产精品永久在线播放| 网友偷自拍原创区| 欧美精品色精品一区二区三区| 欧美在线小视频| 末成年一级在线看片| 免费人成黄页在线观看日本| 毛茸茸成熟妇女亚洲人| 成年啪啪网站免费播放看| 手机免费在线视频| 91在线国内在线播放大神| 亚洲字幕久久| 色综合狠狠操| 欧美三级视频在线| 久久手机视频| 国内精品视频免费观看|