「大數據」時代的「小問題」「大數據」時代的「小問題」
---- 以數據分析的手法判定虛擬歌手聲源參數以數據分析的手法判定虛擬歌手聲源參數
Yuan CHAO ( 趙元 )
(National Taiwan University, Taipei, Taiwan)
COSCUP
2015/08/15-16
2
Outline – to build a voicebankOutline – to build a voicebank
Introduction to virtual singersIntroduction to virtual singers
Text-to-speech synthesizerText-to-speech synthesizer
Singing song synthesizerSinging song synthesizer
First computer to sing: Daisy BellFirst computer to sing: Daisy Bell
Yamaha's VocaloidYamaha's Vocaloid
Utau, Cevio, Sinsy...Utau, Cevio, Sinsy...
What is a voicebank?What is a voicebank?
Taking Utau as an exampleTaking Utau as an example
Resampler & wavtoolResampler & wavtool
5 parameters of a sound clip5 parameters of a sound clip
Vowels and consonantsVowels and consonants
The problem to be solvedThe problem to be solved
Feature variablesFeature variables
Vowel detection (data-driven)Vowel detection (data-driven)
Call for developers and users!Call for developers and users!
徵音梅林開發計畫徵音梅林開發計畫
我是誰?
Yuan CHAO (John)
YChao
...
研究員
高能物理
使用 OSS 做研究 ...
今天不談
高能物理
( 還沒有撞出黑洞 )
今天不談
高能物理
今天不談
高能物理
來談談虛擬歌手 ...
什麼是虛擬歌手?
Virtual Singer!
合成樂器
合成樂器
FM, wave table
合成樂器
函數合成 , 波形取樣
合成語音
合成語音
Siri 姊 , Ok Google
合成語音
Siri 姊 , Ok Google
合成語音
Festival, eSpeak, GCIN
https://www.youtube.com/watch?v=Cfu860dW2dQ
https://youtu.be/NnW9nEuQQ8o?t=2m6s
什麼是虛擬歌手?
電腦輔助合成歌聲系統
電腦輔助合成歌聲系統
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
YAMAHA Vocaloid™
YAMAHA Vocaloid™
初音未來
Tell Your World
- feat. Hatsune Miku
https://youtu.be/KHriNNUPYhA?t=6s
Utau by 飴屋/菖蒲
http://utau2008.web.fc2.com/
Bad Apple!
– covered by 45 Utau chorus
https://youtu.be/Iyt4EVIGgsE?t=57s
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/ 森勢将雅 山梨大特任助教
Sinsy by 名古屋工業大学
OSS on SourceForge
http://www.nicovideo.jp/watch/sm9190295
http://www.nicovideo.jp/watch/sm22191833
https://sourceforge.net/projects/sinsy/
十年
虛擬歌手音源庫?
音源庫
由商業公司製作
或使用者自製
歌曲編輯器
輸入音符與歌詞
歌聲合成引擎
歌曲資料
合成歌聲
歌聲合成系統方塊圖
飴屋 P - UTAU の基本的アルゴリズムと開発経緯
http://udn.utau-synth.com/documents/kouen/20120325/
飴屋 P - UTAU の基本的アルゴリズムと開発経緯
http://udn.utau-synth.com/documents/kouen/20120325/
飴屋 P - UTAU の基本的アルゴリズムと開発経緯
http://udn.utau-synth.com/documents/kouen/20120325/
音源庫參數
基音 / 泛音 ( 諧音 )
https://en.wikipedia.org/wiki/Overtone
子音 / 母音
子音 / 母音
聲母 / 韻母
https://en.wikipedia.org/wiki/Vowel
IPA 國際音標 ( 母音 )
發音起點
先行發聲
對拍位置
純淨母音韻母起點
子音 / 聲母尾
母音取樣結束處
連續音的下
一個字
Oto.ini 參數圖解教學
起始偏移值
Offset
伸縮發音起點
先行發聲 /
對拍點
伸縮發音終點
連續音的下
一個字
單獨音參數
右方
Blank
固定發音範圍 伸縮發音範圍
左方
Blank
起始偏移值
Offset
伸縮發音起點
先行發聲 / 對拍點
伸縮發音終點
連續音的下
一個字
連續音參數
連續音重疊部分
右方
Blank
固定發音範圍 伸縮發音範圍
左方
Blank
http://kenchan22.web.fc2.com/i/utaumanualvoicesetting/utaumanualvoicesetting.html
日語聲音庫部分
日語部分
「五十音」
日語部分
五十音 x 2 ( 清濁 )
日語部分
五十音 x 2 ( 清濁 ) +
拗音、半濁音及其他輔音
日語部分
五十音 x 2 ( 清濁 ) +
拗音、半濁音及其他輔音
~ 約 150 音
日語部分
單獨音 ~ 約 150 音
日語部分
連續母音結合
~ 約 150 音 x 6
日語部分
連續母音結合
~ 約 150 音 x 6
~ 1000 音
中文聲音庫部分
中文部分
暫以ㄅㄆㄇㄈ估計
中文部分
聲母 21 個、韻母 16 個
中文部分
所有可能的組合發音
~450 音
中文部分
結合前一韻母連續音
~450 音 x 9
一ㄨㄩㄚㄛㄜㄝㄦ n ( ㄣㄥㄢㄤ )
( ㄞㄟㄠㄡ )
中文部分
結合前一韻母連續音
~450 音 x 9
~4000 音
中文部分
平均每個發音約 3 分 . 人
中文部分
平均每個發音約 3 分 . 人
~200 時 . 人
Analysis framework by
Ben Lau
https://github.com/benlau/linne-analyzer
http://www.gnu.org/software/octave/
https://github.com/jsawruk/pymir
初版參數分析程式
http://guhy.csie.ntust.edu.tw/pap/07_TWN_Mandarin_SingingVoice_Synthesis_BasedOn_ExpressionParameter_Analyzing.pdf
過零率
Zero-cross
rate
頻譜
變異數
Spectrum
variance
初版參數分析程式
http://guhy.csie.ntust.edu.tw/pap/07_TWN_Mandarin_SingingVoice_Synthesis_BasedOn_ExpressionParameter_Analyzing.pdf
過零率
Zero-cross
rate
頻譜
變異數
Spectrum
variance
閥值分析無法
有效分辨母音位置
初版日語聲音庫
以簡單的閥值判定參數
子母音分界
採經驗時間長度判定
→ 自動產生單獨音參數
徵音梅林的中文聲音庫
完全以連續音錄製
卡關
於是我拿了 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
改用頻域分析
傅立葉轉換
Fourier Transformation
https://en.wikipedia.org/wiki/Fourier_transform
https://en.wikipedia.org/wiki/Vowel
時域 vs. 頻域分析
數千筆參數需處理
機器學習?
What & Why?
如何訓練機器?
Supervised vs.
Unsupervised Learning
Supervised Learning
讓程式自動處理
大量的數據
將聲音庫以
sliding window 取樣
使用 SVM 演算法判定母音
http://www.cmlab.csie.ntu.edu.tw/~cyy/learning/tutorials/SVM3.pdf
https://en.wikipedia.org/wiki/Support_vector_machine
http://www.csie.ntu.edu.tw/~cjlin/libsvm/index.html
使用 SVM 演算法判定母音
あいうえおん
使用 SVM 演算法判定母音
ㄚㄛㄜㄝ一ㄨㄩ
ㄢㄣㄤㄥ (n)
Supervised learning -
缺乏標準數據模型?
https://github.com/yuanchao/linne-analyzer/blob/vowel_det/src/linne/analyzer/cmd/linne-train2.py
使用一部份原始數據作為
分析訓練資料
Data-driven Analysis
https://github.com/yuanchao/linne-analyzer/blob/vowel_det/src/linne/analyzer/cmd/linne-spect2.py
N
U
E
O
I
A
N
U
E
O
I
A
N
U
E
O
I
A
Ka-Shi-Tu-Ne-Ho-N A-A-I-A-U
N
U
E
O
I
A
https://github.com/yuanchao/linne-analyzer/blob/vowel_det/src/linne/analyzer/cmd/linne-test2.py
日文連續母音偵測
尚有待加強
N
U
E
O
I
A
mei-ka-keng-ken-lian
ㄇㄟ-ㄎㄚ-ㄎㄥ-ㄎㄣ-ㄌ一ㄢ
zhun-xi-lai-sou-pian
ㄓㄨㄣ-ㄒ一-ㄌㄞ-ㄙㄡ-ㄆ一ㄢ
N
U
E
O
I
A
中文連續母音偵測
改進後仍有待加強
wu-nuo-lue-kan-jia
ㄨ-ㄋㄨㄛ-ㄌㄨㄝ-ㄎㄤ-ㄐ一ㄚ
fen-fia-fou-a-fe
ㄈㄣ - ㄈ一ㄚ - ㄈㄡ - ㄚ - ㄈㄜ
N
ㄩ
ㄨ
一
ㄝ
ㄜ
ㄛ
ㄚ
N
ㄩ
ㄨ
一
ㄝ
ㄜ
ㄛ
ㄚ
中文連續母音偵測
Fork Me on GitHub!
https://github.com/yuanchao/linne-analyzer/tree/vowel_det/src/linne/analyzer/cmd
ㄓ ˇ ㄧㄣㄇㄟ ˊ ㄌㄧㄣ ˊ
徵音梅林開發計畫
https://github.com/ProjectMeilin
ち おんメイリン
徵音梅林開發計畫
自由開放的虛擬歌手平台
痴音
ち おんメイリン
徵音梅林開發計畫
可使用 Cadencii, Utau 編輯
ち おんメイリン
徵音梅林開發計畫
Paul Liu 移植森勢将雅 World 係的
開源碼 resampler 與代用 wavtool
http://people.debian.org.tw/~paulliu/efb-gw-pl/efb-gw-pl1.zip
http://zh.sourceforge.jp/projects/wavtool-pl/
https://youtu.be/oIr21y5jL0c?t=32m5s
以語音合成演算法「 WORLD 」協助 UTAU 與
VOCALOID 的創作活動 - 森勢将雅
World 族係表
World
ECHOESvConnect
EFB-GW
EFB-GT
EFB-PB
Warp
WORLD4UTAU
tn-fnds
vConnect 非 UTAU 引擎,是獨立的合成系統
其餘皆為衍生自 World 的 UTAU 調聲引擎
EFB-GW 有 Paul Liu 移植到 *nix 的版本
ち おんメイリン
徵音梅林開發計畫
獨立使用的轉換後端 in Java
http://bazaar.launchpad.net/~paulliu/+junk/xvsqExec/files
ㄓ ˇ
徵音梅林開發計畫
Software: Paul Liu, MGDesigner,
Ben Lau, Atsushieno, Yuan Chao
ㄓ ˇ
徵音梅林開發計畫
中之人 : 羅竺 授權 : CC-BY
https://www.youtube.com/watch?v=OZNrVq50wEY
ㄓ ˇ
徵音梅林開發計畫
oto.ini 編輯 / 校正 :
Mgdesigner, YuanChao,
Snowmint, Goescat, Kilfu0701,
BrianHsu, Candycan, Tds
徵音梅林ロボット
MGDesigner, Noritsuna,
EvilDragonLee, RickyTeng
徵音梅林語音提示
Voice for GCIN input method
https://www.dropbox.com/s/tq88060u8x4dapt/linne_ogg.7z?dl
http://hyperrate.com/thread.php?tid=31040
歡迎加入開發計畫的行列!
示範曲播放
Live DEMO!!!
https://soundcloud.com/ychao/umbrella-linne2
http://www.nicovideo.jp/watch/sm26831479
https://soundcloud.com/ychao/utau-celluloid-linne-zh
以上
謝謝
Remerci de
Votre
Attention
101
標準模型 簡介標準模型 簡介 Standard ModelStandard Model
~10-18
m
宇宙的尺度 http://htwins.net/scale2/
~10-1
m
膠子光子 W/Z 子 重力子
強作用力強作用力電磁力電磁力 弱作用力弱作用力 重力重力
夸
克
輕
子
奈米 =10-9
m

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