PaddleSpeech - 句読点付きのSOTA/ストリーミングASR、テキストフロントエンド付きの影響力のあるTTS、話者認証システム、エンドツーエンドの音声同時翻訳など、使いやすい音声ツールキット。

(Easy-to-use Speech Toolkit including SOTA/Streaming ASR with punctuation, influential TTS with text frontend, Speaker Verification System and End-to-End Speech Simultaneous Translation.)

Created at: 2017-11-14 20:36:30
Language: C++
License: Apache-2.0

简体中文|英語)


PaddleSpeechは、 PaddlePaddleプラットフォーム上のオープンソースのツールキットであり、最先端の影響力のあるモデルを使用して、音声と音声のさまざまな重要なタスクに対応します。

音声認識
入力オーディオ 認識結果

私は建物の古代側のドアをノックしました。

我认是跑0015最期的就是给我带来了身体健康。
音声翻訳(英語から中国語)
入力オーディオ 翻訳結果

我在する栋建しく的老老门上敲门。
テキスト読み上げ
入力テキスト 合成オーディオ
人生はチョコレートの箱のようなものでした、あなたはあなたが何を手に入れようとしているのか決してわかりません。
早上好、今天是2020/10/29、最低基準-3°C。
季姬鶏、集鸡、鸡即棘鸡。棘鸡饥叽、季姬越箕稷济鸡。即登箕击鸡、箕模击几伎、伎即齑、鸡叽集几基、季姬急极屐击鸡、鸡長殛、季姬激、即记《季姬击鸡记

より合成されたオーディオについては、 PaddleSpeechText-to-Speechサンプルを参照してください。

句読点の復元
入力テキスト 出力テキスト
今天的天ガス真不错啊你下午有空吗我想約你一起去吃饭 今天的天ガス真不错啊!你下午有空吗?我想約你一起去吃饭。

特徴

使いやすく、効率的で、柔軟性があり、スケーラブルな実装を通じて、私たちのビジョンは、トレーニング、推論およびテストモジュール、展開プロセスなど、産業用アプリケーションと学術研究の両方に力を与えることです。具体的には、このツールキットの機能は次のとおりです。

  • 📦 使いやすさ:インストールの障壁が低く、CLIサーバー、およびストリーミングサーバーを使用して、旅をすばやく開始できます。
  • 🏆 最先端の技術に合わせて:高速で超軽量のモデルと最先端のテクノロジーを提供します。
  • 🏆 ストリーミングASRおよびTTSシステム:本番環境に対応したストリーミングasrおよびストリーミングttsシステムを提供します。
  • 💯 ルールベースの中国語フロントエンド:フロントエンドには、テキストの正規化と書記素から音素(G2P、ポリフォニーとトーンサンディを含む)が含まれています。さらに、自己定義の言語規則を使用して、中国語のコンテキストを適応させます。
  • 📦 産業と学界の両方を活性化するさまざまな機能
    • 🛎️ 重要な音声タスクの実装:このツールキットには、自動音声認識、テキスト読み上げ合成、話者検証、キーワードスポッティング、音声分類、音声翻訳などの音声機能が含まれています。
    • 🔬 主流のモデルとデータセットの統合:ツールキットは、音声タスクのパイプライン全体に参加するモジュールを実装し、LibriSpeech、LJSpeech、AIShell、CSMSCなどの主流のデータセットを使用します。詳細については、モデルリストも参照してください。
    • 🧩 カスケードモデルアプリケーション:一般的な従来のオーディオタスクの拡張として、前述のタスクのワークフローを自然言語処理(NLP)やコンピュータービジョン(CV)などの他のフィールドと組み合わせます。

最近の更新

  • 👑2022.05.13:リリースPP-ASRPP-TTSPP-VPR
  • 👏🏻2022.05.06 :
    Streaming ASR
    と。
    Punctuation Restoration
    Token Timestamp
  • 👏🏻2022.05.06:、、および
    Server
    で使用できます。
    Speaker Verification
    Punctuation Restoration
  • 👏🏻2022.04.28:と
    Streaming Server
    で利用できます。
    Automatic Speech Recognition
    Text-to-Speech
  • 👏🏻2022.03.28:、、およびで
    Server
    使用できます。
    Audio Classification
    Automatic Speech Recognition
    Text-to-Speech
  • 👏🏻2022.03.28:
    CLI
    で利用できます
    Speaker Verification
  • 🤗 2021.12.14:顔のスペースを抱き締めるASRTTSのデモが利用可能です!
  • 👏🏻2021.12.10:、、、およびで使用
    CLI
    できます。
    Audio Classification
    Automatic Speech Recognition
    Speech Translation (English to Chinese)
    Text-to-Speech

コミュニティ

  • 以下のQRコードをWechatでスキャンすると、公式の技術交流グループにアクセスして、ボーナス(ペーパー、コード、ビデオなどの20 GBを超える学習資料)とレッスンのライブリンクを入手できます。どうぞよろしくお願いいたします。

インストール

Linuxpython>=3.7でPaddleSpeechをインストールすることを強くお勧めします。これまで、Linuxはすべてのタスクに対してCLIをサポートし、Mac OSXおよびWindowsは、音声分類、音声合成、および音声合成に対してのみPaddleSpeechCLIをサポートします。インストールするには、インストール

PaddleSpeech
を参照してください。

クイックスタート

開発者は、PaddleSpeechコマンドラインを使用してモデルを試すことができます。

--input
自分のオーディオ/テキストをテストするように変更します。

オーディオ分類

paddlespeech cls --input input.wav

話者認証

paddlespeech vector --task spk --input input_16k.wav

自動音声認識

paddlespeech asr --lang zh --input input_16k.wav
  • 自動音声認識のWebデモは、Gradioを使用してHuggingfaceSpacesに統合されます。デモを参照:ASRデモ

音声翻訳(英語から中国語)(現在MacおよびWindowsではサポートされていません)

paddlespeech st --input input_16k.wav

テキスト読み上げ

paddlespeech tts --input "你好,欢迎使用飞桨深度学习框架!" --output output.wav
  • テキスト読み上げのWebデモは、Gradioを使用してHuggingfaceSpacesに統合されます。デモを参照してください:TTSデモ

テキスト後処理

  • 句読点の復元
    paddlespeech text --task punc --input 今天的天气真不错啊你下午有空吗我想约你一起去吃饭

バッチ処理

echo -e "1 欢迎光临。\n2 谢谢惠顾。" | paddlespeech tts

シェルパイプライン

  • ASR+句読点の復元
paddlespeech asr --input ./zh.wav | paddlespeech text --task punc

その他のコマンドラインについては、デモを参照してください。

トレーニングやチューニングなどの機能をさらに試したい場合は、音声合成クイックスタート音声合成クイックスタートをご覧ください。

クイックスタートサーバー

開発者は、PaddleSpeechServerコマンドラインを使用して音声サーバーを試すことができます。

サーバーを起動します

paddlespeech_server start --config_file ./paddlespeech/server/conf/application.yaml

音声認識サービスにアクセスする

paddlespeech_client asr --server_ip 127.0.0.1 --port 8090 --input input_16k.wav

スピーチサービスへのテキストへのアクセス

paddlespeech_client tts --server_ip 127.0.0.1 --port 8090 --input "您好,欢迎使用百度飞桨语音合成服务。" --output output.wav

オーディオ分類サービスへのアクセス

paddlespeech_client cls --server_ip 127.0.0.1 --port 8090 --input input.wav

サーバーのコマンドラインの詳細については、音声サーバーのデモを参照してください。

クイックスタートストリーミングサーバー

開発者は、 ストリーミングasrおよびストリーミングttsサーバーを試すことができます。

音声認識サーバーのストリーミングを開始します

paddlespeech_server start --config_file ./demos/streaming_asr_server/conf/application.yaml

アクセスストリーミング音声認識サービス

paddlespeech_client asr_online --server_ip 127.0.0.1 --port 8090 --input input_16k.wav

SpeechServerへのテキストのストリーミングを開始します

paddlespeech_server start --config_file ./demos/streaming_tts_server/conf/tts_online_application.yaml

ストリーミングテキストからスピーチサービスへのアクセス

paddlespeech_client tts_online --server_ip 127.0.0.1 --port 8092 --protocol http --input "您好,欢迎使用百度飞桨语音合成服务。" --output output.wav

詳細については 、ストリーミングasrおよびストリーミングttsを参照してください。

モデルリスト

PaddleSpeechは、最も人気のある一連のモデルをサポートしています。それらはリリースされたモデルに要約され、利用可能な事前トレーニング済みモデルが添付されています。

Speech-to-Textには、音響モデル言語モデル、および音声翻訳が含まれ、詳細は次のとおりです。

音声テキストモジュールタイプ データセット モデルタイプ
音声認識 Aishell DeepSpeech2 RNN+Convベースのモデル deepspeech2-aishell
トランスベースの注意モデル u2.transformer.conformer-aishell
Librispeech トランスベースの注意モデル deepspeech2-librispeech / transformer.conformer.u2-librispeech / transformer.conformer.u2-kaldi-librispeech
TIMIT ユニファイドストリーミングと非ストリーミングの2パス u2-timit
アラインメント THCHS30 MFA mfa-thchs30
言語モデル Ngram言語モデル kenlm
音声翻訳(英語から中国語) TED En-Zh トランス+ASRMTL トランスフォーマーテッド
FAT+トランス+ASRMTL fat-st-ted

PaddleSpeechのText-to-Speechには、主にText FrontendAcoustic ModelVocoderの3つのモジュールが含まれています。アコースティックモデルとボコーダーモデルは次のとおりです。

テキスト読み上げモジュールタイプ モデルタイプ データセット
テキストフロントエンド tn / g2p
音響モデル タコトロン2 LJSpeech / CSMSC tacotron2-ljspeech / tacotron2-csmsc
トランスフォーマーTTS LJSpeech トランスフォーマー-ljspeech
SpeedySpeech CSMSC speedyspeech-csmsc
FastSpeech2 LJSpeech / VCTK / CSMSC / AISHELL-3 fastspeech2-ljspeech / fastspeech2-vctk / fastspeech2-csmsc / fastspeech2-aishell3
ボコーダ WaveFlow LJSpeech waveflow-ljspeech
Parallel WaveGAN LJSpeech / VCTK / CSMSC / AISHELL-3 PWGAN-ljspeech / PWGAN-vctk / PWGAN-csmsc / PWGAN-aishell3
マルチバンドMelGAN CSMSC マルチバンドMelGAN-csmsc
スタイルMelGAN CSMSC スタイルMelGAN-csmsc
HiFiGAN LJSpeech / VCTK / CSMSC / AISHELL-3 HiFiGAN-ljspeech / HiFiGAN-vctk / HiFiGAN-csmsc / HiFiGAN-aishell3
WaveRNN CSMSC WaveRNN-csmsc
音声クローニング GE2E Librispeechなど ge2e
GE2E + Tacotron2 AISHELL-3 ge2e-tacotron2-aishell3
GE2E + FastSpeech2 AISHELL-3 ge2e-fastspeech2-aishell3

オーディオ分類

仕事 データセット モデルタイプ
オーディオ分類 ESC-50 パン pann-esc50

話者認証

仕事 データセット モデルタイプ
話者認証 VoxCeleb12 ECAPA-TDNN ecapa-tdnn-voxceleb12

句読点の復元

仕事 データセット モデルタイプ
句読点の復元 IWLST2012_zh アーニーリニア iwslt2012-punc0

ドキュメント

Normally, Speech SoTA, Audio SoTA and Music SoTA give you an overview of the hot academic topics in the related area. To focus on the tasks in PaddleSpeech, you will find the following guidelines are helpful to grasp the core ideas.

Text-to-Speechモジュールは元々Parakeetと呼ばれていましたが、現在はこのリポジトリに統合されています。このタスクに関する学術研究に興味がある場合は、 TTS研究の概要を参照してください。また、このドキュメントはパイプラインコンポーネントの優れたガイドラインです。

  • PaddleBoBo:PaddleSpeech TTSを使用して、仮想の人間の声を生成します。

引用

研究のためにPaddleSpeechを引用するには、次の形式を使用してください。

@inproceedings{zhang2022paddlespeech,
    title = {PaddleSpeech: An Easy-to-Use All-in-One Speech Toolkit},
    author = {Hui Zhang, Tian Yuan, Junkun Chen, Xintong Li, Renjie Zheng, Yuxin Huang, Xiaojie Chen, Enlei Gong, Zeyu Chen, Xiaoguang Hu, dianhai yu, Yanjun Ma, Liang Huang},
    booktitle = {Proceedings of the 2022 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies: Demonstrations},
    year = {2022},
    publisher = {Association for Computational Linguistics},
}

@inproceedings{zheng2021fused,
  title={Fused acoustic and text encoding for multimodal bilingual pretraining and speech translation},
  author={Zheng, Renjie and Chen, Junkun and Ma, Mingbo and Huang, Liang},
  booktitle={International Conference on Machine Learning},
  pages={12736--12746},
  year={2021},
  organization={PMLR}
}

PaddleSpeechに貢献する

ディスカッションで質問を送信したり、問題でバグレポートを送信したりすることを歓迎します。また、このプロジェクトにご協力いただければ幸いです。

寄稿者

了承

  • yeyupiaoling / PPASR / PaddlePaddle -DeepSpeech / VoiceprintRecognition-PaddlePaddle / AudioClassification-PaddlePaddleには、長年の注目、建設的なアドバイス、そして多大な支援に感謝します。
  • 短いオーディオファイルと長いオーディオファイルにASRをJavaで実装してくれたmymagicpowerに感謝します。
  • PaddleSpeech TTS機能を備えた仮想アップローダー(VUP)/仮想YouTuber(VTuber)を開発してくれたJiehangXie / PaddleBoBoに感謝します。
  • 句読点復元モデルに貢献してくれた745165806 / PaddleSpeechTaskに感謝します。
  • 補足の中国語文書を提供してくれたkslzに感謝します。
  • fastspeech2aishell3コンフォーマーの事前トレーニング済みモデルに貢献してくれたawmmmmに感謝します。
  • PaddleSpeechTTSモデルに基づくGUIを使用した吹き替えツールを開発してくれたphecda-xu / PaddleDubbingに感謝します。
  • PaddleSpeechTTSに基づくGUIツールとPaddleSpeechASRに基づくビデオからデータセットを作成するためのコードを開発してくれたjerryuhoo / VTuberTalkに感謝します。

その上、PaddleSpeechは多くのオープンソースリポジトリに依存しています。詳細については、リファレンスを参照してください。

ライセンス

PaddleSpeechは、Apache-2.0ライセンスの下で提供されます。