「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

101
「大數據」時代的「小問題」 「大數據」時代的「小問題」 -- -- 以數據分析的手法判定虛擬歌手聲源參數 以數據分析的手法判定虛擬歌手聲源參數 Yuan CHAO ( 趙元 ) (National Taiwan University, Taipei, Taiwan) COSCUP 2015/08/15-16

Transcript of 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

Page 1: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

「大數據」時代的「小問題」「大數據」時代的「小問題」-- -- 以數據分析的手法判定虛擬歌手聲源參數以數據分析的手法判定虛擬歌手聲源參數

Yuan CHAO ( 趙元 )(National Taiwan University, Taipei, Taiwan)

COSCUP2015/08/15-16

Page 2: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

2

Outline – to build a voicebankOutline – to build a voicebank

Introduction to virtual singersIntroduction to virtual singersText-to-speech synthesizerText-to-speech synthesizerSinging song synthesizerSinging song synthesizerFirst computer to sing: Daisy BellFirst computer to sing: Daisy BellYamaha's VocaloidYamaha's VocaloidUtau, Cevio, Sinsy...Utau, Cevio, Sinsy...

What is a voicebank?What is a voicebank?Taking Utau as an exampleTaking Utau as an exampleResampler & wavtoolResampler & wavtool5 parameters of a sound clip5 parameters of a sound clipVowels and consonantsVowels and consonants

The problem to be solvedThe problem to be solvedFeature variablesFeature variablesVowel detection (data-driven)Vowel detection (data-driven)

Call for developers and users!Call for developers and users!徵音梅林開發計畫徵音梅林開發計畫

Page 3: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

我是誰?Yuan CHAO (John)

YChao...

Page 4: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

研究員高能物理

使用 OSS 做研究 ...

Page 5: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

今天不談高能物理

( 還沒有撞出黑洞 )

Page 6: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

今天不談高能物理

Page 7: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

今天不談高能物理

來談談虛擬歌手 ...

Page 8: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

什麼是虛擬歌手?Virtual Singer!

Page 9: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

合成樂器

Page 10: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

合成樂器FM, wave table

Page 11: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

合成樂器函數合成 , 波形取樣

Page 12: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

合成語音

Page 13: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

合成語音Siri 姊 , Ok Google

Page 14: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

合成語音Siri 姊 , Ok Google

Page 15: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

合成語音Festival, eSpeak, GCIN

https://www.youtube.com/watch?v=Cfu860dW2dQ

https://youtu.be/NnW9nEuQQ8o?t=2m6s

Page 16: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

什麼是虛擬歌手?電腦輔助合成歌聲系統

Page 17: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

電腦輔助合成歌聲系統First computer song

- Daisy Bell

https://www.youtube.com/watch?v=41U78QP8nBk

In 1961 on IBM 7094 by J. Kelly, C. Lockbaum and M. Mathews

Page 18: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

YAMAHA Vocaloid™

Page 19: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

YAMAHA Vocaloid™初音未來

Page 20: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

Tell Your World- feat. Hatsune Miku

https://youtu.be/KHriNNUPYhA?t=6s

Page 21: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

Utau by 飴屋/菖蒲

http://utau2008.web.fc2.com/

Page 22: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

Bad Apple! – covered by 45 Utau chorus

https://youtu.be/Iyt4EVIGgsE?t=57s

Page 23: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

CeVIO by 名古屋工業大学音声分析の一部にも WORLD が使われています

http://av.watch.impress.co.jp/docs/series/dal/20100823_388885.html

https://www.youtube.com/watch?v=wl-vokhOiQw

https://youtu.be/dTIsBkhCDPg?t=1m32s

http://ml.cs.yamanashi.ac.jp/world/ 森勢将雅 山梨大特任助教

Page 24: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

Sinsy by 名古屋工業大学OSS on SourceForge

http://www.nicovideo.jp/watch/sm9190295

http://www.nicovideo.jp/watch/sm22191833

https://sourceforge.net/projects/sinsy/

十年

Page 25: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

虛擬歌手音源庫?

Page 26: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

音源庫由商業公司製作或使用者自製

歌曲編輯器輸入音符與歌詞

歌聲合成引擎

歌曲

資料

合成

歌聲

歌聲合成系統方塊圖

Page 27: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

飴屋 P - UTAU の基本的アルコリスムと開発経緯

http://udn.utau-synth.com/documents/kouen/20120325/

Page 28: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

飴屋 P - UTAU の基本的アルコリスムと開発経緯

http://udn.utau-synth.com/documents/kouen/20120325/

Page 29: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

飴屋 P - UTAU の基本的アルコリスムと開発経緯

http://udn.utau-synth.com/documents/kouen/20120325/

Page 30: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

音源庫參數

Page 31: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

基音 / 泛音 ( 諧音 )

Page 32: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

https://en.wikipedia.org/wiki/Overtone

Page 33: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

子音 / 母音

Page 34: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

子音 / 母音聲母 / 韻母

Page 35: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

https://en.wikipedia.org/wiki/Vowel

IPA 國際音標 ( 母音 )

Page 36: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

發音起點

先行發聲對拍位置

純淨母音韻母起點

子音 / 聲母尾

母音取樣結束處

連續音的下一個字

Oto.ini 參數圖解教學

Page 37: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

起始偏移值 Offset

伸縮發音起點

先行發聲 /對拍點

伸縮發音終點

連續音的下一個字

單獨音參數

右方Blank

固定發音範圍 伸縮發音範圍

左方Blank

Page 38: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

起始偏移值 Offset

伸縮發音起點

先行發聲 / 對拍點

伸縮發音終點

連續音的下一個字

連續音參數

連續音重疊部分右方Blank

固定發音範圍 伸縮發音範圍

左方Blank

Page 39: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

http://kenchan22.web.fc2.com/i/utaumanualvoicesetting/utaumanualvoicesetting.html

Page 40: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

日語聲音庫部分

Page 41: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

日語部分「五十音」

Page 42: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

日語部分五十音 x 2 ( 清濁 )

Page 43: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

日語部分五十音 x 2 ( 清濁 ) +

拗音、半濁音及其他輔音

Page 44: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

日語部分五十音 x 2 ( 清濁 ) +

拗音、半濁音及其他輔音~ 約 150音

Page 45: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

日語部分單獨音 ~ 約 150音

Page 46: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

日語部分連續母音結合~ 約 150音 x 6

Page 47: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

日語部分連續母音結合~ 約 150音 x 6~ 1000音

Page 48: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

中文聲音庫部分

Page 49: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

中文部分暫以ㄅㄆㄇㄈ估計

Page 50: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

中文部分聲母 21個、韻母 16個

Page 51: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

中文部分所有可能的組合發音

~450音

Page 52: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

中文部分結合前一韻母連續音

~450音 x 9一ㄨㄩㄚㄛㄜㄝㄦ n (ㄣㄥㄢㄤ )

(ㄞㄟㄠㄡ )

Page 53: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

中文部分結合前一韻母連續音

~450音 x 9~4000音

Page 54: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

中文部分平均每個發音約 3分 .人

Page 55: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

中文部分平均每個發音約 3分 .人

~200時 .人

Page 56: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

Analysis framework by Ben Lau

https://github.com/benlau/linne-analyzerhttp://www.gnu.org/software/octave/https://github.com/jsawruk/pymir

Page 57: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

初版參數分析程式

http://guhy.csie.ntust.edu.tw/pap/07_TWN_Mandarin_SingingVoice_Synthesis_BasedOn_ExpressionParameter_Analyzing.pdf

過零率Zero-cross rate

頻譜變異數Spectrum variance

Page 58: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

初版參數分析程式

http://guhy.csie.ntust.edu.tw/pap/07_TWN_Mandarin_SingingVoice_Synthesis_BasedOn_ExpressionParameter_Analyzing.pdf

過零率Zero-cross rate

頻譜變異數Spectrum variance

Page 59: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

閥值分析無法有效分辨母音位置

Page 60: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數
Page 61: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數
Page 62: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

初版日語聲音庫以簡單的閥值判定參數

Page 63: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

子母音分界採經驗時間長度判定→自動產生單獨音參數

Page 64: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

徵音梅林的中文聲音庫完全以連續音錄製

Page 65: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

卡關於是我拿了 GCIN 的語音檔

來玩 ...

https://www.dropbox.com/s/qohv11094mh7x58/gcin_zh_tone_test.mp3?dl=0

https://www.dropbox.com/s/xgjp1igl68k3efn/wqs_gcin_test1.wav?dl=0

Page 66: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

改用頻域分析

Page 67: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

傅立葉轉換Fourier Transformation

https://en.wikipedia.org/wiki/Fourier_transform

Page 68: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

https://en.wikipedia.org/wiki/Vowel

Page 69: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

時域 vs.頻域分析

Page 70: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

數千筆參數需處理

Page 71: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

機器學習?What & Why?

Page 72: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

如何訓練機器?Supervised vs.

Unsupervised Learning

Page 73: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

Supervised Learning

Page 74: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

讓程式自動處理大量的數據

Page 75: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

將聲音庫以sliding window 取樣

Page 76: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

使用 SVM演算法判定母音

http://www.cmlab.csie.ntu.edu.tw/~cyy/learning/tutorials/SVM3.pdf

https://en.wikipedia.org/wiki/Support_vector_machinehttp://www.csie.ntu.edu.tw/~cjlin/libsvm/index.html

Page 77: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

使用 SVM演算法判定母音あいうえおん

Page 78: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

使用 SVM演算法判定母音ㄚㄛㄜㄝ一ㄨㄩㄢㄣㄤㄥ (n)

Page 79: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

Supervised learning -缺乏標準數據模型?

https://github.com/yuanchao/linne-analyzer/blob/vowel_det/src/linne/analyzer/cmd/linne-train2.py

Page 80: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

使用一部份原始數據作為分析訓練資料

Data-driven Analysis

https://github.com/yuanchao/linne-analyzer/blob/vowel_det/src/linne/analyzer/cmd/linne-spect2.py

Page 81: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

NUEOIA

NUEOIA

Page 82: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

NUEOIA

Ka-Shi-Tu-Ne-Ho-N A-A-I-A-U

NUEOIA

https://github.com/yuanchao/linne-analyzer/blob/vowel_det/src/linne/analyzer/cmd/linne-test2.py

日文連續母音偵測

Page 83: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

尚有待加強

NUEOIA

mei-ka-keng-ken-lianㄇㄟ-ㄎㄚ-ㄎㄥ-ㄎㄣ-ㄌ一ㄢ

zhun-xi-lai-sou-pianㄓㄨㄣ-ㄒ一-ㄌㄞ-ㄙㄡ-ㄆ一ㄢ

NUEOIA

中文連續母音偵測

Page 84: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

改進後仍有待加強

wu-nuo-lue-kan-jiaㄨ-ㄋㄨㄛ-ㄌㄨㄝ-ㄎㄤ-ㄐ一ㄚ

fen-fia-fou-a-feㄈㄣ -ㄈ一ㄚ -ㄈㄡ -ㄚ -ㄈㄜ

Nㄩㄨ一ㄝㄜㄛㄚ

Nㄩㄨ一ㄝㄜㄛㄚ

中文連續母音偵測

Page 85: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

Fork Me on GitHub!https://github.com/yuanchao/linne-analyzer/tree/vowel_det/src/linne/analyzer/cmd

Page 86: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

ㄓ ˇㄧㄣㄇㄟ ˊㄌㄧㄣ ˊ

徵音梅林開發計畫 https://github.com/ProjectMeilin

Page 87: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

ち おんメイリン

徵音梅林開發計畫自由開放的虛擬歌手平台

痴音

Page 88: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

ち おんメイリン

徵音梅林開發計畫可使用 Cadencii, Utau 編輯

Page 89: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

ち おんメイリン

徵音梅林開發計畫Paul Liu 移植森勢将雅World係的開源碼 resampler 與代用 wavtool

http://people.debian.org.tw/~paulliu/efb-gw-pl/efb-gw-pl1.ziphttp://zh.sourceforge.jp/projects/wavtool-pl/

https://youtu.be/oIr21y5jL0c?t=32m5s以語音合成演算法「 WORLD 」協助 UTAU 與VOCALOID 的創作活動 - 森勢将雅

Page 90: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

World族係表

World

ECHOESvConnect

EFB-GW EFB-GTEFB-PB

Warp

WORLD4UTAUtn-fnds

vConnect非 UTAU 引擎,是獨立的合成系統其餘皆為衍生自 World 的 UTAU調聲引擎EFB-GW 有 Paul Liu 移植到*nix 的版本

Page 91: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

ち おんメイリン

徵音梅林開發計畫獨立使用的轉換後端 in Java

http://bazaar.launchpad.net/~paulliu/+junk/xvsqExec/files

Page 92: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

ㄓ ˇ

徵音梅林開發計畫Software: Paul Liu, MGDesigner, Ben Lau, Atsushieno, Yuan Chao

Page 93: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

ㄓ ˇ

徵音梅林開發計畫中之人 : 羅竺 授權 : CC-BY

https://www.youtube.com/watch?v=OZNrVq50wEY

Page 94: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

ㄓ ˇ

徵音梅林開發計畫oto.ini 編輯 /校正 :

Mgdesigner, YuanChao, Snowmint, Goescat, Kilfu0701,

BrianHsu, Candycan, Tds

Page 95: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

徵音梅林ロボットMGDesigner, Noritsuna,

EvilDragonLee, RickyTeng

Page 96: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

徵音梅林語音提示Voice for GCIN input method

https://www.dropbox.com/s/tq88060u8x4dapt/linne_ogg.7z?dl=0

http://hyperrate.com/thread.php?tid=31040

Page 97: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

歡迎加入開發計畫的行列!

Page 98: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

示範曲播放Live DEMO!!!

https://soundcloud.com/ychao/umbrella-linne2

http://www.nicovideo.jp/watch/sm26831479

https://soundcloud.com/ychao/utau-celluloid-linne-zh

Page 99: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

以上

謝謝

Page 100: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

Remerci deVotre

Attention

Page 101: 「大數據」時代的「小問題」-- 以數據分析的手法處理虛擬歌手聲源參數

101

標準模型 簡介標準模型 簡介 Standard ModelStandard Model

~10-18 m

宇宙的尺度 http://htwins.net/scale2/

~10-1 m

膠子光子 W/Z子 重力子

強作用力強作用力電磁力電磁力 弱作用力弱作用力 重力重力

夸克

輕子

奈米 =10-9 m