このシリーズブログでは、Seasalt.aiが完全な現代会議体験を作成する旅路に従います。最初のスタートから、様々なハードウェアとモデルでの最適化、最先端のNLPシステムの統合、そして最終的にSeaMeet協作現代会議ソリューションの実現まで。
アルゴリズムを超えて
Modern Meetingsは素晴らしいデモでしたが、常にデモ段階に留まっていました。実際に本格運用に投入するには長い道のりがありました。まずMicrosoft Azure技術スタックを使用してデモ版を成功裏に実装しました。しかし、ソフトウェアの様々な欠陥を認識した後、独自のアルゴリズムに置き換え、体験全体をより滑らかで軽量かつ柔軟にすることを決定しました。Modern Meetingsには4つの主要コンポーネントがあります:
- マイクアレイの信号処理、特にビームフォーミング
- 話者分離と識別
- カスタム音声認識
- より良いユーザーインターフェース
次に、すべての重要なコンポーネントについて詳しく説明します。

Modern Meetingsの4つの主要コンポーネントを独自の技術スタックで改造しました:1. マイクアレイ信号処理;2. 話者分離と識別;3. カスタム音声認識;4. 現代的なウェブインターフェース。
マイクアレイの信号処理
単一の近接マイクと比較して、マイクアレイは360度の範囲から最大5メートルの距離で音声を拾うことができます。したがって、1つのマイクアレイで10メートル×10メートルの中型会議室の音声を収集できます。すべてのマイクが1つのデバイスに集中しているため、会議室のケーブル乱雑さを大幅に削減し、インストールとメンテナンスを簡素化します。 一方、マイクアレイを使用する下流の目標は、モデルに最高品質のデータを提供することです。したがって、自動音声認識の前に、複数の信号処理アルゴリズムを実行します。前処理パイプラインの核心はビームフォーミングアルゴリズムです。円形多マイクアレイを使用しているため、音声が各マイクに到達する微小な時間差を利用できます。ビームフォーミングの役割は、信号の主要な特徴(最適ビーム)を決定し、これらの周波数を強化しながら、不要な音声を減衰させることです。効果はノイズ除去と残響除去で、主要信号(音声)をより大きく明確にします。
多くのビームフォーミングアルゴリズムの最適性能には、マイクに対する音源(話者)の位置を知る必要があります。しかし実際の応用ではこれはほとんど不可能なので、まず音源方向を決定して遠場重みを計算します。このステップは音源定位、より具体的には到達方向(DOA)と呼ばれます。私たちが直面した主要な問題は滑らかさでした。アルゴリズムはおおよそ正しい結果を与えますが、決定された音源は真の方向の両側30度の範囲内で絶えず変動し、ビームフォーミングに影響します。私たちの解決策は、音源定位アルゴリズムに人間の音声の主要周波数をエンコードする周波数帯域のみを使用させ、平滑化技術と組み合わせて、DOA結果の「履歴」を保持して平均化することです。より信頼性の高いDOA結果により、遠場重みを計算し最適ビームを決定できます。
Kinect DKで実行される一連のアルゴリズム:ビームフォーミング、ノイズ除去、残響除去、音源定位により、リアルタイムで明確に強化された人間の音声を生成し、話者の方向を大まかに定位できます。これは次のステップの話者識別に大いに役立ちます。
話者分離と識別
会議転写システムの次の重要なコンポーネントは自動話者識別です。このシリーズの前の部分で述べたように、話者情報のない雑然とした対話テキストを読むのはイライラし、システムの意味が完全に失われます。これが話者識別の役割です。
このコンポーネントにより、転写と音声を話者名と自動的に一致させることができます。実装方法は分離技術を使用して、音声セグメントを録音中の話者数と同じ数のグループにクラスタリングすることです。この方法は音声活動検出(VAD)システムを使用して音声セグメントを決定し、そこから短いウィンドウのベクトル表現を抽出します。各ウィンドウから抽出されたベクトルは発話レベルのxvectorと呼ばれ、平均化して話者レベルのxvectorを取得します。次にこれらのxvectorをクラスタリングし、各クラスターは同じ話者に属する音声セグメントを表します。注目すべきは、クラスタリングアルゴリズムの選択が分離性能に大きく影響することです。閾値親和性行列を使用し、正規化最大固有値ギャップ(NME)値の自動調整と組み合わせたスペクトルクラスタリングアルゴリズムにより、最適な分離エラー率(DER)を実現しました。最後に、各クラスターが表す話者を決定する必要があります。会議前に40秒の録音から各話者のxvectorを抽出し、クラスタリング結果と比較して対応する話者を識別できます。
このプロセスの柔軟性は、多くの会議シナリオでは、事前に各話者の録音を取得することは現実的ではないことです。例えばVIP顧客とのビジネス会議や50人の発言者による大規模なセミナーなどです。このような場合、登録ステップをスキップしても、私たちの分離システムは音声セグメントをグループ化できます。各クラスターから数秒の音声を手動で抽出するだけで話者身元を決定できます。専用の現代的なユーザーインターフェースと組み合わせることで、同じ機能をより柔軟に提供できます。
カスタム音声認識
Microsoft会議転写器の強力さを理解した後、システムを完全に独立させ、既存の革新的な製品を超える準備ができました。Modern Meetingsおよび任意の転写製品の核心は自動音声認識(ASR)モデルなので、最も多くの注意を払いました。 Azure Cognitive Servicesは複数の言語と方言のモデルオプションを提供していますが、異なる方言間の性能を区別するのは困難です。英語の異なる方言については、主な努力とデータは米国英語モデルに集中し、その後アクセント付きデータで微調整して様々な方言モデルを作成する可能性があります。独立したモデルを提供する場合は、特定のユースケースに調整されることを確実にしたいと考えています。これは何千時間ものローカライズされた音声と転写を収集し、数週間のトレーニングと微調整に投資することを意味します。しかし、モデルが各エポックで進歩し、約束を果たすのを見るのは非常に満足です。
堅実なベースモデルができた後、次のステップは可用性とカスタマイズ性の拡張です。各業界には大量の専用用語があり、ASRモデルが珍しい単語と一般的で発音が似ている単語を区別するのが困難になります。
私たちの解決策はSeaVoiceで、ユーザーに特定のニーズに合わせてモデルを微調整するための集中プラットフォームを提供します。