クラウドサービス
AWS/Azure/GCP
それぞれのText to Speechを
比べてみた
@Neri78
ツイート、ツイート!
#burikaigi
#burikaigi2020
#burikaigiB
自己紹介
池原大然(いけはらだいぜん)
Twitter: @Neri78
富山県の入善町出身
Developer Evangelist @ Twilio
元EverQuest(MMORPG)廃人
セッションアジェンダ
● Text to Speech(tts)とは?
● くらべてみよう:AWS/GCP/Azure
● ttsにおける違和感
● まとめ
Text to Speech(tts)
とは?
テキスト文字から音声を再生させること
● https://ja.wikipedia.org/wiki/%E9%9F%B3%E5%A3%B0%E5%90%88%E6%88%90
● 1950年代終盤から取り組まれていた...らしい
● 日常生活の中に入り込んでいる
○ 電話の自動応答(IVR)
○ ATM、複合機
○ 工場の構内放送
○ 駅・バスターミナル・空港
● 逆方向として、音声の内容をテキストとして認識する
Speech to Textも存在する
他の技術との連携も
● 録音と違ってリアルタイムで合成
できるのが魅力
○ というか、そうでなかったら、
録音で良いし...
● 例:LINE BRAIN - DUET
○ https://youtu.be/SwZLp5Y-Z4g
Text to Speech APIを提供している主要なクラウドベンダー
多くが複数の言語に対応している
● AWS - Amazon Polly
https://aws.amazon.com/jp/polly/
● Google Cloud - Cloud Text-to-Speech
https://cloud.google.com/text-to-speech/?hl=ja
● Microsoft Azure - Cognitive Services Text-to-Speech
https://azure.microsoft.com/ja-jp/services/cognitive-services/text-to-speech/
● IBM Watson - Text to Speech
https://www.ibm.com/watson/jp-ja/developercloud/text-to-speech.html
日本語の実力、確かめたるぜ!
くらべてみよ
う:AWS/GCP/Azure
生成する音声の仕様
● ほぼ固定文(違いを感じるため)
● 女性話者
● 標準設定。とくに変更は加えない
● mp3ファイルを作成
● サンプリングレートとビットレートは
統一できなかった...
○ 22,050khz / 32kbps くらい
基本的にやることは似ている
let polly = new AWS.Polly({
apiVersion: '2016-06-10', region:'ap-northeast-1'});
polly.synthesizeSpeech({
Engine: 'standard', OutputFormat: 'mp3',
VoiceId: 'Mizuki', Text: 'AmazonのMitsukiだよ。' + baseText,
SampleRate: '22050', TextType: 'text'
}, (err, data) => {
//生成されたデータを取得 ..
data.AudioStream
});
1. サービスの有効化、
2. アクセストークン
など取得
3. オプション設定
4. 合成!
今日のデモはこんな感じ
Demo
Let’s 聴き比べ
より自然な音に近づけるには?(1)
● 音声合成マークアップ言語(SSML)を用いて抑揚や
スピードなどを細かく指定できる
基本は同じだが、ベンダーごとの独自設定が...
○ AWS
https://docs.aws.amazon.com/ja_jp/polly/latest/dg/supportedtags.html
○ GCP
https://cloud.google.com/text-to-speech/docs/ssml?hl=ja
○ Azure
https://docs.microsoft.com/ja-jp/azure/cognitive-services/speech-service/speech-synthesis-markup
より自然な音に近づけるには?(2)
● 自然な音声を選択する
○ Amazon Polly: ニューラル音声を提供(日本語NG)
https://docs.aws.amazon.com/ja_jp/polly/latest/dg/voicelist.html
○ GCP: WaveNetモデルを使用した音声(日本語OK)
https://cloud.google.com/text-to-speech/docs/voices?hl=ja
○ Azure: ニューラル音声を提供(日本語NG)
https://docs.microsoft.com/ja-jp/azure/cognitive-services/speech-service/language-support
良いと思った
サービスをツイート!
#burikaigi
#burikaigi2020
#burikaigiB
ttsにおける違和感
違和感の原因
● 発音
● イントネーション
● 抑揚
日本語ではそれが顕著
日本語が得意(または特化した)WebAPIも
AITalk Web API
● 標準語や関西弁など
● 感情調整に対応した
音声も提供
https://www.ai-j.jp/cloud/webapi/
Demo
より自然にできるかしら?
まとめ
まとめ
● ttsを利用することで、これまで人手が必要だった
業務をシステム化できる(かもしれない)
● メジャーどころのクラウドベンダーは
軒並みサービスを提供している
● 今後、より自然に近づくと思われる。
○ AI美空ひばりみたいなやつ
リソース
● tts - wikipedia
https://ja.wikipedia.org/wiki/%E9%9F%B3%E5%A3%B0%E5%90%88%E6%88%90
● AWS - Amazon Polly
https://aws.amazon.com/jp/polly/
● Google Cloud - Cloud Text-to-Speech
https://cloud.google.com/text-to-speech/?hl=ja
● Microsoft Azure - Cognitive Services Text-to-Speech
https://azure.microsoft.com/ja-jp/services/cognitive-services/text-to-speech/
● AiTalk Web API
https://www.ai-j.jp/cloud/webapi/
● Twilio Programmable Voice
https://www.twilio.com/ja/voice
最後に
Twilio Meetup @ DevSumi 2020
https://connpass.com/event/162110
北陸でTwilioをからめた
ミートアップ、勉強会、UGを
開催しませんか?
ご興味があれば@Neri78まで!
ありがとうございました!

クラウドサービス、AWS/Azure/GCP それぞれの Text to Speechを比べてみた