見出し画像

NVIDIA Nemo| 第1回

この記事を書いたのは 山岡さん.

1. この記事から理解できることは?

  1. NVIDIA Nemoとは何か

  2. NVIDA Nemoで出来ること

2. NVDIA Nemoとは?

NeMoは、会話型AIアプリケーションを作成するためのオープンソースのPythonツールキット。

NeMoツールキットは、再利用可能なコンポーネントであるNeural Modulesを用いて、会話型AIのための複雑なニューラルネットワークアーキテクチャを研究者が簡単に構成することが出来ます。(この点がめちゃくちゃ助かります。)
言い換えれば、研究者や開発者、クリエイターは、独自のアプリケーション向けに音声モデルを試用したり、微調整を行うことで、スムーズに開発を開始出来ます。

NVIDIA NeMoは、Mozilla Common Voiceで学習したモデルをNGCを通じて提供している。Mozilla Common Voiceは、約14,000時間に上り、クラウドで収集された音声データによるデータセットで、70以上の言語が提供されています。このプロジェクト自体は、音声データセットによって誰でも音声技術を利用できるようにすることを目的としています。

Neural Modulesは、特定の入力を受け取り、特定の出力を生成するニューラルネットの概念的なブロックです。このようなModuleには通常、データレイヤー、エンコーダ、デコーダ、言語モデル、損失関数、または活性化の結合方法が含まれています。

NeMoは、NVIDIAのTensor Coreを利用し、複数のGPUと複数のノードにトレーニングをスケールアウトすることも可能です。

3. NVDIA Nemoで出来ることは?

Nemoでは大きく分けると以下の3つの分野に分かれています。

  1. Speech Processing

  2. NLP(Natural Language Processing)

  3. TTS(Text To Speech)

それぞれの分野の概要としては

Speech Processing
音声信号を分析して何らかの情報を表す種々の特徴パラメータ(音の高さやMFCCなど)を取り出し、それに基づいて予測や認識などを行うことである。主な分野としては、音声を音響特徴量へ変換する音声分析、音声から言語情報を取り出す音声認識、話者情報を取り出す話者認識、音響・言語特徴量から音声を作り出す音声合成、音声信号を圧縮して記憶・伝送する圧縮・符号化などがある

NLP(Natural Language Processing)
日本語では自然言語処理と呼ばれ、基礎技術にはさまざまなものがある。自然言語処理は、扱う言語によって大きく処理の異なる部分があるのが一つの特徴である。現在のところ、日本語を処理する基礎技術としては形態素解析、構文解析、語義の曖昧性や解消照応解析などが主に研究されている。

TTS(Text To Speech)
入力された文章を読み上げる技術で、現在様々なソフトが開発されておりキャラクター数は110名を超えている。


概要からも分かるようにSpeech Procrssingには様々な問が含まれており、Nemoでは

の6題に対するモデルが提供されている。

提供されているモデルを組み合わせせることで様々な問に挑戦したり、解決することが出来る。
例えば、TTSの技術を用いて、音素のバランスが良い例文を発話させたデータを作成し、そのデータを用いてASRのモデルをFine Tuneすることなどである。

ここで提供されているモデルを試して結果を今後少しづつ共有できたらと思っています。
楽しみにしていただけたらと思います。

4. まとめ

・NeMoは、会話型AIアプリケーションを作成するためのオープンソースのPythonツールキット

・NemoにはSpeech Processing / NLP(Natural Language Processing) / TTS(Text To Speech)に関するモデルが提供されている。

次回はNemoで提供されているモデルの内、Speaker Diarizationのモデルの実力を測るための実験とその結果を整理していきます。



この記事が参加している募集

学問への愛を語ろう

この記事が気に入ったらサポートをしてみませんか?