(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-02
(45)【発行日】2024-12-10
(54)【発明の名称】雑音環境における会話の分離および安全性のための、深層ニューラル・ネットワーク動的スペクトル・マスキングを使用した参加者によって調整されるフィルタリング
(51)【国際特許分類】
G10L 21/0272 20130101AFI20241203BHJP
【FI】
G10L21/0272 100B
(21)【出願番号】P 2022532006
(86)(22)【出願日】2020-11-26
(86)【国際出願番号】 IB2020061184
(87)【国際公開番号】W WO2021111259
(87)【国際公開日】2021-06-10
【審査請求日】2023-04-24
(32)【優先日】2019-12-02
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【氏名又は名称】太佐 種一
(74)【代理人】
【識別番号】100120710
【氏名又は名称】片岡 忠彦
(72)【発明者】
【氏名】リントン、ジェブ
(72)【発明者】
【氏名】サム、ジョナサン
(72)【発明者】
【氏名】ビッキ、ポージシャ
(72)【発明者】
【氏名】リー、ミンシク
(72)【発明者】
【氏名】スリーニヴァス、サティア
【審査官】大野 弘
(56)【参考文献】
【文献】国際公開第2019/017403(WO,A1)
【文献】特開2008-176681(JP,A)
【文献】特開2019-148780(JP,A)
【文献】米国特許出願公開第2019/0318757(US,A1)
【文献】特開2017-009700(JP,A)
【文献】特開2007-241130(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 21/00-21/18
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
選択された参加者間の会話を分離および増幅するための方法であって、
複数のスペクトル・マスクを受け取ることであって、前記複数のスペクトル・マスクの中の各スペクトル・マスクは、会話に含まれる選択された参加者のグループのそれぞれの参加者に対応する、前記受け取ることと、
前記複数のスペクトル・マスクの加法的重ね合わせにより、合成スペクトル・マスクを生成することであって、前記合成スペクトル・マスクが、前記参加者に合わせて個人化されたスペクトル・マスクを前記会話に含まれる前記選択された参加者のグループに対応する前記複数のスペクトル・マスクと組み合わせて形成される、前記生成することと、
前記合成スペクトル・マスクをマイクロフォンによって捕捉された音声に適用して、前記合成スペクトル・マスクと一致しない音声を除去し、前記合成スペクトル・マスクと一致する残りの音声を増幅することであって、前記
増幅することが、前記合成スペクトル・マスクを使用して、前記選択された参加者のグループと前記参加者との間の前記会話だけをオーディオ信号中に残すことを可能にするように、入ってくるオーディオ信号をフィルタリングすることによって
合成スペクトル・マスクに一致しないオーディオ信号を除去し、その後に、残ったオーディオ信号のみを増幅することによって行われる、前記増幅することと
を含む、前記方法。
【請求項2】
選択された参加者間の会話を分離するための方法であって、
複数のスペクトル・マスクを受け取ることであって、前記複数のスペクトル・マスクの中の各スペクトル・マスクは、会話に含まれる選択された参加者のグループのそれぞれの参加者に対応する、前記受け取ることと、
前記複数のスペクトル・マスクの加法的重ね合わせにより、合成スペクトル・マスクを生成することであって、前記合成スペクトル・マスクが、前記参加者に合わせて個人化されたスペクトル・マスクを前記会話に含まれる前記選択された参加者のグループに対応する前記複数のスペクトル・マスクと組み合わせて形成される、前記生成することと、
前記合成スペクトル・マスクをマイクロフォンによって捕捉された音声に適用して、前記合成スペクトル・マスクと一致しない音声を除去することであって、前記除去することが、前記合成スペクトル・マスクを使用して、前記選択された参加者のグループと前記参加者との間の前記会話だけをオーディオ信号中に残すことを可能にするように、入ってくるオーディオ信号をフィルタリングすることによって行われる、前記除去することと
を含む、前記方法。
【請求項3】
選択された参加者間の会話を分離および増幅するための方法であって、
複数のスペクトル・マスクを受け取ることであって、前記複数のスペクトル・マスクの中の各スペクトル・マスクは、会話に含まれる選択された参加者のグループのそれぞれの参加者に対応する、前記受け取ることと、
前記複数のスペクトル・マスクの加法的重ね合わせにより、合成スペクトル・マスクを生成することと、
前記合成スペクトル・マスクをマイクロフォンによって捕捉された音声に適用して、前記合成スペクトル・マスクと一致しない音声を除去し、前記合成スペクトル・マスクと一致する残りの音声を増幅することと
を含み、
前記合成スペクトル・マスクを生成することが、
各モバイル・デバイスが、各モバイル・デバイスに入ってくるオーディオ信号をフィルタリングするためのそれ自身の合成スペクトル・マスクを生成するように、前記参加者に合わせて個人化された前記スペクトル・マスクと、前記選択された参加者のグループに対応する前記複数のスペクトル・マスクとを、前記参加者および前記選択された参加者のグループに対応するモバイル・デバイス間で共有すること
、
前記モバイル・デバイス間で共有された前記参加者に合わせて個人化された前記スペクトル・マスクを、前記会話に含まれる前記選択された参加者のグループに対応する前記複数のスペクトル・マスクと組み合わせること
を含み、
前記方法が、
前記合成スペクトル・マスクを使用して、前記選択された参加者のグループと前記参加者との間の前記会話だけをオーディオ信号中に残すことを可能にするように、入ってくるオーディオ信号をフィルタリングすることと、
前記選択された参加者のグループと前記参加者との間の前記会話だけを含む前記オーディオ信号をオーディオ出力装置に送信することと
をさらに含む、
前記方法。
【請求項4】
前記合成スペクトル・マスクと一致する前記増幅された残りの音声を、前記会話の参加者に対応するオーディオ出力装置に送信することをさらに含む、請求項1~3のいずれか1項に記載の方法。
【請求項5】
前記会話のリアルタイムの字幕生成を行うことと、
前記会話を聞くのに加えて前記会話のテキストを読むために、モバイル・デバイス画面またはオーディオ出力装置が取り付けられたスマート・グラスの一方の上で、前記会話の前記リアルタイムの字幕生成を前記会話の前記参加者に表示することと
をさらに含む、請求項1~4のいずれか1項に記載の方法。
【請求項6】
前記オーディオ出力装置が、前記会話の前記参加者の耳の近くにある、請求項4又は5に記載の方法。
【請求項7】
前記参加者に合わせて個人化されたスペクトル・マスクを生成するために、前記会話の前記参加者の声サンプルをクラウド環境の深層ニューラル・ネットワーク・サーバに送ることと、
前記参加者に合わせて個人化された前記スペクトル・マスクを前記深層ニューラル・ネットワーク・サーバから受け取ることと
をさらに含む、請求項1~6のいずれか1項に記載の方法。
【請求項8】
前記選択された参加者のグループと前記参加者との間の前記会話だけを含む前記オーディオ信号を
オーディオ出力装置に送信することと
をさらに含む、請求項1
に記載の方法。
【請求項9】
各モバイル・デバイスが、各モバイル・デバイスに入ってくるオーディオ信号をフィルタリングするためのそれ自身の合成スペクトル・マスクを生成するように、前記参加者に合わせて個人化された前記スペクトル・マスクと、前記選択された参加者のグループに対応する前記複数のスペクトル・マスクとを、前記参加者および前記選択された参加者のグループに対応するモバイル・デバイス間で共有することをさらに含む、請求項1、2又は
3に記載の方法。
【請求項10】
前記会話の前記参加者に合わせて個人化された前記スペクトル・マスクが、前記参加者の好みに基づいて前記合成スペクトル・マスクから除外される、請求項1~
9のいずれか1項に記載の方法。
【請求項11】
前記選択された参加者のグループは、誰が前記会話に参加することを許可されるかを示す、請求項1~
10のいずれか1項に記載の方法。
【請求項12】
前記方法がモバイル・デバイスによって実施される、請求項1~
11のいずれか1項に記載の方法。
【請求項13】
前記モバイル・デバイスが、前記会話に含まれる前記選択された参加者のグループに対応するモバイル・デバイスから、前記複数のスペクトル・マスクをワイヤレスに受信する、請求項
12に記載の方法。
【請求項14】
スペクトル・マスクが、音声に適用される数学的に定義されたフィルタである、請求項1~
13のいずれか1項に記載の方法。
【請求項15】
前記個人化されたスペクトル・マスクが、音声が処理されるのと同時に瞬間ごとの参加者の声の次の可能性の高い周波数シグネチャを予測する予測時系列モデルである、請求項1~
14のいずれか1項に記載の方法。
【請求項16】
前記個人化されたスペクトル・マスクが、会話中に参加者の単語音声シーケンスを予測する、請求項1~
15のいずれか1項に記載の方法。
【請求項17】
前記合成スペクトル・マスクが、周波数領域における論理和を使用して、出力されるオーディオ信号中で選択された参加者の声だけを許可し、他の無関係な音声は許可しないフィルタを作成する、請求項1~
16のいずれか1項に記載の方法。
【請求項18】
選択された参加者間の会話を分離および増幅するためのモバイル・デバイスであって、
バス・システムと、
前記バス・システムに接続された記憶装置であって、プログラム命令を記憶している前記記憶装置と、
前記バス・システムに接続されたプロセッサであって、前記プロセッサが、請求項1~
17のいずれか1項に記載の方法を実行する、前記プロセッサと
を備える前記モバイル・デバイス。
【請求項19】
選択された参加者間の会話を分離および増幅するためのコンピュータ・プログラムであって、モバイル・デバイスに、請求項1~
18のいずれか1項に記載の方法を実行させる、前記コンピュータ・プログラム。
【請求項20】
請求項
19に記載のコンピュータ・プログラムを記憶したコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、全般的にスペクトル・マスクに関し、より詳細には、雑音環境(noisy environment)における参加者の会話の分離および安全性のための、深層ニューラル・ネットワーク動的スペクトル・マスキングを使用した会話参加者によって調整されるフィルタリングに関する。
【背景技術】
【0002】
遠隔通信において、スペクトル・マスクとは、音声に適用される数学的に定義されたフィルタである。スペクトル・マスクは一般に、そのスペクトル・マスクと一致しない音声を低減することを目的とする。そのような不要な音声の減衰は、普通、スペクトル・マスクと一致する音声だけを通過させることによって行われる。
【発明の概要】
【0003】
1つの例示的実施形態によれば、選択された参加者間の会話を分離および増幅するための方法が提供される。複数のスペクトル・マスクが受け取られる。複数のスペクトル・マスクの中の各スペクトル・マスクは、会話に含まれる選択された参加者のグループのそれぞれの参加者に対応している。複数のスペクトル・マスクの加法的重ね合わせ(additive superposition)により、合成スペクトル・マスクが生成される。合成スペクトル・マスクをマイクロフォンによって捕捉された音声に適用して、合成スペクトル・マスクと一致しない音声を除去し、合成スペクトル・マスクと一致する残りの音声を増幅する。他の例示的実施形態によれば、選択された参加者間の会話を分離および増幅するためのモバイル・デバイスおよびコンピュータ・プログラム製品が提供される。
【0004】
種々の例示的実施形態はまた、合成スペクトル・マスクと一致する増幅された残りの音声を、会話の参加者に対応するオーディオ出力装置に送信する。さらに、オーディオ出力装置は、会話の参加者の耳の近くにある。
【0005】
さらに、種々の例示的実施形態は、参加者に合わせて個人化されたスペクトル・マスクを生成するために、会話の参加者の声サンプルをクラウド環境の深層ニューラル・ネットワーク・サーバに送り、参加者に合わせて個人化されたスペクトル・マスクを深層ニューラル・ネットワーク・サーバから受け取る。種々の例示的実施形態は、参加者に合わせて個人化されたスペクトル・マスクを、会話に含まれる選択された参加者のグループに対応する複数のスペクトル・マスクと組み合わせて、合成スペクトル・マスクを形成し、合成スペクトル・マスクを使用して、選択された参加者のグループと参加者との間の会話だけをオーディオ信号中に残すことを可能にするように、入ってくるオーディオ信号をフィルタリングし、選択された参加者のグループと参加者との間の会話だけを含むオーディオ信号をオーディオ出力装置に送信する。さらに、種々の例示的実施形態は、各モバイル・デバイスが、各モバイル・デバイスに入ってくるオーディオ信号をフィルタリングするためのそれ自身の合成スペクトル・マスクを生成するように、参加者に合わせて個人化されたスペクトル・マスクと、選択された参加者のグループに対応する複数のスペクトル・マスクとを、参加者および選択された参加者のグループに対応するモバイル・デバイス間で共有する。
【0006】
第1の態様から見たとき、本発明は、選択された参加者間の会話を分離および増幅するための方法を提供し、この方法は、複数のスペクトル・マスクを受け取ることであって、複数のスペクトル・マスクの中の各スペクトル・マスクは、会話に含まれる選択された参加者のグループのそれぞれの参加者に対応する、受け取ることと、複数のスペクトル・マスクの加法的重ね合わせにより、合成スペクトル・マスクを生成することと、合成スペクトル・マスクをマイクロフォンによって捕捉された音声に適用して、合成スペクトル・マスクと一致しない音声を除去し、合成スペクトル・マスクと一致する残りの音声を増幅することと、を含む。
【0007】
好ましくは、本発明は、合成スペクトル・マスクと一致する増幅された残りの音声を、会話の参加者に対応するオーディオ出力装置に送信することをさらに含む方法を提供する。
【0008】
好ましくは、本発明は、会話のリアルタイムの字幕生成(captioning)を行うことと、会話を聞くのに加えて会話のテキストを読むために、モバイル・デバイス画面またはオーディオ出力装置が取り付けられたスマート・グラスの一方の上で、会話のリアルタイムの字幕生成を会話の参加者に表示することと、をさらに含む方法を提供する。
【0009】
好ましくは、本発明は、オーディオ出力装置が会話の参加者の耳の近くにある、方法を提供する。
【0010】
好ましくは、本発明は、参加者に合わせて個人化されたスペクトル・マスクを生成するために、会話の参加者の声サンプルをクラウド環境の深層ニューラル・ネットワーク・サーバに送ることと、参加者に合わせて個人化されたスペクトル・マスクを、深層ニューラル・ネットワーク・サーバから受け取ることと、をさらに含む方法を提供する。
【0011】
好ましくは、本発明は、参加者に合わせて個人化されたスペクトル・マスクを、会話に含まれる選択された参加者のグループに対応する複数のスペクトル・マスクと組み合わせて、合成スペクトル・マスクを形成することと、合成スペクトル・マスクを使用して、選択された参加者のグループと参加者との間の会話だけをオーディオ信号中に残すことを可能にするように、入ってくるオーディオ信号をフィルタリングすることと、選択された参加者のグループと参加者との間の会話だけを含むオーディオ信号をオーディオ出力装置に送信することと、をさらに含む方法を提供する。
【0012】
好ましくは、本発明は、各モバイル・デバイスが、各モバイル・デバイスに入ってくるオーディオ信号をフィルタリングするためのそれ自身の合成スペクトル・マスクを生成するように、参加者に合わせて個人化されたスペクトル・マスクと、選択された参加者のグループに対応する複数のスペクトル・マスクとを、参加者および選択された参加者のグループに対応するモバイル・デバイス間で共有することをさらに含む方法を提供する。
【0013】
好ましくは、本発明は、会話の参加者に合わせて個人化されたスペクトル・マスクが、参加者の好みに基づいて合成スペクトル・マスクから除外される、方法を提供する。
【0014】
好ましくは、本発明は、選択された参加者のグループが、誰が会話に参加することを許可されるかを示す、方法を提供する。
【0015】
好ましくは、本発明は、方法がモバイル・デバイスによって実施される、方法を提供する。
【0016】
好ましくは、本発明は、モバイル・デバイスが、会話に含まれる選択された参加者のグループに対応するモバイル・デバイスから、複数のスペクトル・マスクをワイヤレスに受信する、方法を提供する。
【0017】
第2の態様から見たとき、本発明は、選択された参加者間の会話を分離および増幅するためのモバイル・デバイスを提供し、このモバイル・デバイスは、バス・システムと、バス・システムに接続された記憶装置であって、プログラム命令を記憶している記憶装置と、バス・システムに接続されたプロセッサであって、プロセッサは、複数のスペクトル・マスクを受け取ることであって、複数のスペクトル・マスクの中の各スペクトル・マスクは、会話に含まれる選択された参加者のグループのそれぞれの参加者に対応する、受け取ることと、複数のスペクトル・マスクの加法的重ね合わせにより、合成スペクトル・マスクを生成することと、合成スペクトル・マスクをマイクロフォンによって捕捉された音声に適用して、合成スペクトル・マスクと一致しない音声を除去し、合成スペクトル・マスクと一致する残りの音声を増幅することと、のためにプログラム命令を実行するプロセッサと、を備える。
【0018】
好ましくは、本発明は、プロセッサがさらに、合成スペクトル・マスクと一致する増幅された残りの音声を、会話の参加者に対応するオーディオ出力装置に送信するために、プログラム命令を実行する、モバイル・デバイスを提供する。
【0019】
好ましくは、本発明は、プロセッサがさらに、会話のリアルタイムの字幕生成を行うことと、会話を聞くのに加えて会話のテキストを読むために、モバイル・デバイス画面またはオーディオ出力装置が取り付けられたスマート・グラスの一方の上で、会話のリアルタイムの字幕生成を会話の参加者に表示することと、のためにプログラム命令を実行する、モバイル・デバイスを提供する。
【0020】
好ましくは、本発明は、オーディオ出力装置が会話の参加者の耳の近くにある、モバイル・デバイスを提供する。
【0021】
好ましくは、本発明は、プロセッサがさらに、参加者に合わせて個人化されたスペクトル・マスクを生成するために、会話の参加者の声サンプルをクラウド環境の深層ニューラル・ネットワーク・サーバに送ることと、参加者に合わせて個人化されたスペクトル・マスクを、深層ニューラル・ネットワーク・サーバから受け取ることと、のためにプログラム命令を実行する、モバイル・デバイスを提供する。
【0022】
好ましくは、本発明は、プロセッサがさらに、参加者に合わせて個人化されたスペクトル・マスクを、会話に含まれる選択された参加者のグループに対応する複数のスペクトル・マスクと組み合わせて、合成スペクトル・マスクを形成することと、合成スペクトル・マスクを使用して、選択された参加者のグループと参加者との間の会話だけをオーディオ信号中に残すことを可能にするように、入ってくるオーディオ信号をフィルタリングすることと、選択された参加者のグループと参加者との間の会話だけを含むオーディオ信号をオーディオ出力装置に送信することと、のためにプログラム命令を実行する、モバイル・デバイスを提供する。
【0023】
好ましくは、本発明は、プロセッサがさらに、各モバイル・デバイスが、各モバイル・デバイスに入ってくるオーディオ信号をフィルタリングするためのそれ自身の合成スペクトル・マスクを生成するように、参加者に合わせて個人化されたスペクトル・マスクと、選択された参加者のグループに対応する複数のスペクトル・マスクとを、参加者および選択された参加者のグループに対応するモバイル・デバイス間で共有するためにプログラム命令を実行する、モバイル・デバイスを提供する。
【0024】
第3の態様から見たとき、本発明は、選択された参加者間の会話を分離および増幅するためのコンピュータ・プログラム製品を提供し、このコンピュータ・プログラム製品は、プログラム命令が共に具現化されたコンピュータ可読記憶媒体を備えており、プログラム命令はモバイル・デバイスによって実行可能であり、それによりモバイル・デバイスに、複数のスペクトル・マスクを受け取ることであって、複数のスペクトル・マスクの中の各スペクトル・マスクは、会話に含まれる選択された参加者のグループのそれぞれの参加者に対応する、受け取ることと、複数のスペクトル・マスクの加法的重ね合わせにより、合成スペクトル・マスクを生成することと、合成スペクトル・マスクをマイクロフォンによって捕捉された音声に適用して、合成スペクトル・マスクと一致しない音声を除去し、合成スペクトル・マスクと一致する残りの音声を増幅することと、を含む方法を実施させる。
【0025】
好ましくは、本発明は、合成スペクトル・マスクと一致する増幅された残りの音声を、会話の参加者に対応するオーディオ出力装置に送信することをさらに含む、コンピュータ・プログラム製品を提供する。
【0026】
好ましくは、本発明は、会話のリアルタイムの字幕生成を行うことと、会話を聞くのに加えて会話のテキストを読むために、モバイル・デバイス画面またはオーディオ出力装置が取り付けられたスマート・グラスの一方の上で、会話のリアルタイムの字幕生成を会話の参加者に表示することと、をさらに含む、コンピュータ・プログラム製品を提供する。
【0027】
好ましくは、本発明は、オーディオ出力装置が会話の参加者の耳の近くにある、コンピュータ・プログラム製品を提供する。
【0028】
好ましくは、本発明は、参加者に合わせて個人化されたスペクトル・マスクを生成するために、会話の参加者の声サンプルをクラウド環境の深層ニューラル・ネットワーク・サーバに送ることと、参加者に合わせて個人化されたスペクトル・マスクを、深層ニューラル・ネットワーク・サーバから受け取ることと、をさらに含む、コンピュータ・プログラム製品を提供する。
【0029】
好ましくは、本発明は、参加者に合わせて個人化されたスペクトル・マスクを、会話に含まれる選択された参加者のグループに対応する複数のスペクトル・マスクと組み合わせて、合成スペクトル・マスクを形成することと、合成スペクトル・マスクを使用して、選択された参加者のグループと参加者との間の会話だけをオーディオ信号中に残すことを可能にするように、入ってくるオーディオ信号をフィルタリングすることと、選択された参加者のグループと参加者との間の会話だけを含むオーディオ信号をオーディオ出力装置に送信することと、をさらに含む、コンピュータ・プログラム製品を提供する。
【0030】
好ましくは、本発明は、各モバイル・デバイスが、各モバイル・デバイスに入ってくるオーディオ信号をフィルタリングするためのそれ自身の合成スペクトル・マスクを生成するように、参加者に合わせて個人化されたスペクトル・マスクと、選択された参加者のグループに対応する複数のスペクトル・マスクとを、参加者および選択された参加者のグループに対応するモバイル・デバイス間で共有することをさらに含む、コンピュータ・プログラム製品を提供する。
【0031】
その結果、種々の例示的実施形態は、選択された参加者のグループに対応するモバイル・デバイスからの共有されるスペクトル・マスクを使用して、参加者の声だけがオーディオ出力装置に出力されるオーディオ信号中に残るように無関係な音声を除去するための合成スペクトル・マスクを生成することにより、選択された参加者のグループと当該参加者との間の明瞭かつ安全な会話を提供する。
【図面の簡単な説明】
【0032】
【
図1】例示的実施形態が実施され得るデータ処理システムのネットワークの図式表現である。
【
図2】例示的実施形態が実施され得るデータ処理システムの図である。
【
図3】例示的実施形態が実施され得るクラウド・コンピューティング環境を説明する図である。
【
図4】例示的実施形態による、クラウド・コンピューティング環境の抽象化層の例を説明する図である。
【
図5】例示的実施形態によるオーディオ・フィルタリング・システムの例を説明する図である。
【
図6】例示的実施形態によるオーディオ・フィルタリング・アプリケーション・スペクトル・マスク組合せプロセスの例を説明する図である。
【
図7】例示的実施形態による雑音環境通信プロセスの例を説明する図である。
【
図8】例示的実施形態によるオーディオ・フィルタリング・プロセスの例を説明する図である。
【
図9】例示的実施形態による代替のオーディオ・フィルタリング・プロセスの例を説明する図である。
【
図10】例示的実施形態による、個人化されたスペクトル・マスクを受け取るプロセスを説明するフローチャートである。
【
図11A】例示的実施形態による、入ってくるオーディオ信号をフィルタリングするプロセスを説明するフローチャートである。
【
図11B】例示的実施形態による、入ってくるオーディオ信号をフィルタリングするプロセスを説明するフローチャートである。
【
図12】例示的実施形態による、選択された参加者間の会話を分離および増幅するプロセスを説明するフローチャートである。
【発明を実施するための形態】
【0033】
本発明は、任意の可能な技術的詳細の統合レベルにあるシステム、方法、またはコンピュータ・プログラム製品、あるいはその組合せであってよい。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実施させるためのコンピュータ可読プログラム命令を有している(1つまたは複数の)コンピュータ可読記憶媒体を含んでよい。
【0034】
コンピュータ可読記憶媒体は、命令実行デバイスによって使用するための命令を保持および記憶することが可能な有形のデバイスであり得る。コンピュータ可読記憶媒体は、例えば、これらに限定されないが、電子記憶装置、磁気記憶装置、光学記憶装置、電磁気記憶装置、半導体記憶装置、または上述の任意の好適な組合せであってよい。コンピュータ可読記憶媒体のより具体的な例の非網羅的リストには、携帯型コンピュータ・ディスケット、ハードディスク、ランダム・アクセス・メモリ(RAM)、読出し専用メモリ(ROM)、消去可能プログラム可能読出し専用メモリ(EPROMまたはフラッシュ・メモリ)、静的ランダム・アクセス・メモリ(SRAM)、携帯型コンパクト・ディスク読出し専用メモリ(CD-ROM)、デジタル・バーサタイル・ディスク(DVD)、メモリ・スティック、フロッピー(R)・ディスク、パンチ・カードや、命令が記録されている溝内の隆起構造などの機械的に符号化されたデバイス、または上述の任意の好適な組合せが含まれる。本発明において使用されるコンピュータ可読記憶媒体は、電波または他の自由伝搬する電磁波、導波管もしくは他の伝送媒体を通って伝搬する電磁波(例えば光ファイバ・ケーブルを通る光パルス)、または電線を通じて伝送される電気信号などの一過性の信号自体であるとは解釈されるべきでない。
【0035】
本明細書に記載されるコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピューティング/処理デバイスに、または、ネットワーク、例えば、インターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワークまたはワイヤレス・ネットワークあるいはその組合せを介して、外部コンピュータもしくは外部記憶装置にダウンロードされ得る。ネットワークは、銅伝送ケーブル、光伝送ファイバ、ワイヤレス伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、またはエッジ・サーバ、あるいはその組合せを含んでよい。各コンピューティング/処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インターフェースは、ネットワークからコンピュータ可読プログラム命令を受け取り、そのコンピュータ可読プログラム命令を、それぞれのコンピューティング/処理デバイス内部のコンピュータ可読記憶媒体内に記憶するために転送する。
【0036】
本発明の動作を実施するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路の構成データ、または、Smalltalk(R)、C++等のオブジェクト指向プログラミング言語、および「C」プログラミング言語または同様のプログラミング言語などの手続き型プログラミング言語を含む、1つまたは複数のプログラミング言語の任意の組合せで書かれたソース・コードもしくはオブジェクト・コードのいずれかであってよい。コンピュータ可読プログラム命令は、スタンドアロンのソフトウェア・パッケージとして、全体がユーザのコンピュータ上で、一部がユーザのコンピュータ上で、一部がユーザのコンピュータ上で一部がリモート・コンピュータ上で、または全体がリモート・コンピュータもしくはサーバ上で実行されてよい。後者のシナリオでは、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN)またはワイド・エリア・ネットワーク(WAN)を含む任意タイプのネットワークを通じてユーザのコンピュータに接続されてよく、または接続は外部コンピュータになされてもよい(例えばインターネット・サービス・プロバイダを使用してインターネットを通じて)。一部の実施形態では、例えば、プログラム可能論理回路、フィールド・プログラム可能ゲートアレイ(FPGA)、またはプログラム可能論理アレイ(PLA)を含む電子回路が、本発明の態様を実施するために、コンピュータ可読プログラム命令の状態情報を利用して電子回路を個別設定することによって、コンピュータ可読プログラム命令を実行してよい。
【0037】
本発明の態様は、本明細書において、本発明の実施形態による方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図またはブロック図あるいはその両方を参照して記載される。フローチャート図またはブロック図あるいはその両方の各ブロック、ならびにフローチャート図またはブロックあるいはその組合せの中のブロックの組合せは、コンピュータ可読プログラム命令によって実施され得ることが理解されよう。
【0038】
それらのコンピュータ可読プログラム命令は、コンピュータまたは他のプログラム可能データ処理装置のプロセッサを介して実行される命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックに指定される機能/動作を実施するための手段を作り出すように機械を制作すべく、コンピュータまたは他のプログラム可能データ処理装置のプロセッサに提供されてよい。それらのコンピュータ可読プログラム命令は、命令が記憶されているコンピュータ可読記憶媒体が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックに指定される機能/動作の態様を実施する命令を含む製造品を構成するように、コンピュータ、プログラム可能データ処理装置、または他のデバイス、あるいはその組合せに特定の様態で機能するように指示することができるコンピュータ可読記憶媒体に記憶されてもよい。
【0039】
コンピュータ可読プログラム命令は、コンピュータ、他のプログラム可能装置、または他のデバイスで実行される命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックに指定される機能/動作を実施するように、コンピュータ、他のプログラム可能データ処理装置、または他のデバイスにロードされて、コンピュータ、他のプログラム可能装置、または他のデバイス上で一連の動作ステップを行わせて、コンピュータにより実施されるプロセスを発生させてもよい。
【0040】
図におけるフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータ・プログラム製品の可能な実装形態のアーキテクチャ、機能、および動作を説明している。これに関して、フローチャートまたはブロック図中の各ブロックは、モジュール、セグメント、または命令の一部を表し得、それは、指定される論理機能を実施するための1つまたは複数の実行可能命令を含む。一部の代替実装形態では、ブロックに記される機能は、図に記される順序から外れて行われてよい。例えば、連続して示される2つのブロックが、実際には1つのステップとして実現される、同時に実行される、実質的に同時に実行される、もしくは、部分的もしくは完全に時間的に重なるように実行されてよく、またはそれらブロックは、時に、関与する機能に応じて逆の順序で実行されてもよい。また、ブロック図またはフローチャート図あるいはその両方の各ブロック、およびブロック図またはフローチャート図あるいはその両方の中の各ブロックの組合せは、指定される機能を行うかまたは特殊目的ハードウェアとコンピュータ命令との組合せを動作させるもしくは実施する、特殊目的のハードウェア・ベース・システムによって実施され得ることが気づかれよう。
【0041】
次いで図、特に
図1~5を参照すると、例示的実施形態が実施され得るデータ処理環境の図が提供される。
図1~5は、例としてのみ意図され、種々の実施形態が実施され得る環境に関して何らの制限を主張または示唆するものではないことが認識されるべきである。描かれた環境への多くの変更がなされてよい。
【0042】
図1は、例示的実施形態が実施され得るデータ処理システムのネットワークの図式表現を示す。ネットワーク・データ処理システム100は、例示的実施形態が実施され得る、コンピュータ、データ処理システム、および他のデバイスからなるネットワークである。ネットワーク・データ処理システム100はネットワーク102を含んでおり、ネットワーク102は、ネットワーク・データ処理システム100内で共に接続されたコンピュータ、データ処理システム、および他のデバイス間の通信リンクを提供するために使用される媒体である。ネットワーク102は、例えば、有線通信リンク、ワイヤレス通信リンク、光ファイバ・ケーブル等の接続を含んでよい。
【0043】
描かれる例では、サーバ104およびサーバ106は、ストレージ108と共にネットワーク102に接続する。サーバ104およびサーバ106は、例えば、ネットワーク102への高速接続を備えたサーバ・コンピュータであってよい。加えて、サーバ104およびサーバ106は、個人化されたスペクトル・マスク生成サービスをクライアント・デバイス・ユーザに提供する。また、サーバ104およびサーバ106は各々、1つまたは複数のクラウド環境内の複数のコンピューティング・ノードを表し得ることが留意されるべきである。代替として、サーバ104およびサーバ106は各々、1つまたは複数のデータ・センターのサーバのクラスタを表すこともある。
【0044】
クライアント110、クライアント112、およびクライアント114も、ネットワーク102に接続する。クライアント110、112、および114は、サーバ104およびサーバ106のクライアントである。この例では、クライアント110、112、および114は、ネットワーク102へのワイヤレス通信リンクを備えた、例えば、セルラー電話、スマートフォン等のモバイル通信デバイスとして示されている。しかし、クライアント110、112、および114は例に過ぎず、例えば、ネットワーク102へのワイヤレス通信リンクを備えた、ラップトップ・コンピュータ、手持ち型コンピュータ、スマート・ウォッチ、ゲーム・デバイスなどの他のタイプのモバイル通信デバイスを表し得ることが留意されるべきである。クライアント110、112、および114のユーザは、クライアント110、112、および114を利用して、サーバ104およびサーバ106によって提供される個人化されたスペクトル・マスク生成サービスにアクセスしてよい。
【0045】
ストレージ108は、任意種類のデータを、構造化された形態または構造化されていない形態で記憶することが可能なネットワーク記憶装置である。加えて、ストレージ108は、複数のネットワーク記憶装置を表し得る。さらに、ストレージ108は、複数の異なるクライアント・デバイスの識別子およびネットワーク・アドレス、複数の異なるユーザの識別子、複数の異なるユーザの声サンプル、複数の異なるユーザのための個人化されたスペクトル・マスク等を記憶してよい。さらに、ストレージ108は、例えば、クライアント・デバイス・ユーザに関連付けられたユーザ名、パスワード、および生体テンプレートを含み得る認証または資格証明データなどの他の種類のデータを記憶してよい。
【0046】
加えて、ネットワーク・データ処理システム100は、任意数の図示されない追加的なサーバ、クライアント、記憶装置、および他のデバイスを含んでよいことが留意されるべきである。ネットワーク・データ処理システム100内に位置するプログラム・コードは、コンピュータ可読記憶媒体に記憶され、使用のためにコンピュータまたは他のデータ処理デバイスにダウンロードされてよい。例えば、プログラム・コードは、サーバ104でコンピュータ可読記憶媒体に記憶され、クライアント110で使用するためにネットワーク102を通じてクライアント110にダウンロードされてよい。
【0047】
描かれた例では、ネットワーク・データ処理システム100は、例えば、遠隔通信ネットワーク、インターネット、イントラネット、パーソナル・エリア・ネットワーク(PAN)、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、またはその任意の組合せなどの、いくつかの数の異なる種類の通信ネットワークとして実装されてよい。
図1は、単なる例として意図され、種々の例示的実施形態に関するアーキテクチャ上の制限として意図されるものではない。
【0048】
次いで
図2を参照すると、例示的実施形態によるデータ処理システムの図が描かれている。データ処理システム200は、
図1のクライアント110などのモバイル通信デバイスの一例であり、そこに、例示的実施形態の処理を実施するコンピュータ可読プログラム・コードまたは命令が位置し得る。この例では、データ処理システム200は通信ファブリック202を含み、通信ファブリック202は、プロセッサ・ユニット204、メモリ206、永続ストレージ208、通信ユニット210、入力/出力(I/O)ユニット212、およびディスプレイ214間の通信を提供する。
【0049】
プロセッサ・ユニット204は、メモリ206にロードされ得るソフトウェア・アプリケーションおよびプログラムの命令を実行する働きをする。プロセッサ・ユニット204は、特定の実装に応じて、1つまたは複数のハードウェア・プロセッサ・デバイスのセットであっても、またはマルチコア・プロセッサであってもよい。
【0050】
メモリ206および永続ストレージ208は、記憶装置216の例である。コンピュータ可読記憶装置は、例えば、限定されないが、データ、機能形態のコンピュータ可読プログラム・コード、または他の適切な情報、あるいはその組合せなどの情報を、一過的または永続的のいずれかで記憶することが可能な任意のハードウェアである。さらに、コンピュータ可読記憶装置は、伝搬媒体を除外する。そのような例におけるメモリ206は、例えば、ランダム・アクセス・メモリ(RAM)、またはフラッシュ・メモリなどの、任意の他の好適な揮発性もしくは不揮発性の記憶装置であってよい。永続ストレージ208は、特定の実装に応じて様々な形態を取り得る。例えば、永続ストレージ208は、1つまたは複数のデバイスを含んでいてよい。例えば、永続ストレージ208は、ディスク・ドライブ、ソリッドステート・ドライブ、または上記の何らかの組合せであってよい。
【0051】
この例では、永続ストレージ208が、オーディオ・フィルタリング・アプリケーション218を記憶している。しかし、オーディオ・フィルタリング・アプリケーション218は永続ストレージ208に常駐するものと示されているが、代替の例示的実施形態では、オーディオ・フィルタリング・アプリケーション218は、永続ストレージ208とは別個のハードウェア構成要素とソフトウェア構成要素の組合せであってよいことが留意されるべきである。別の代替の例示的実施形態では、オーディオ・フィルタリング・アプリケーション218の構成要素の第1のセットが、データ処理システム200内に位置し、オーディオ・フィルタリング・アプリケーション218の構成要素の第2のセットが、第2のデータ処理システム、例えば
図1のサーバ104、に位置してよい。
【0052】
オーディオ・フィルタリング・アプリケーション218は、会話の明瞭性および安全性を向上するために、加法的重ね合わせにより会話の参加者に対応するスペクトル・マスクを組み合わせるプロセスを制御して、会話の各参加者のオーディオ信号(すなわち声)だけを分離および増幅する。ユーザ220は、データ処理システム200に対応するユーザの識別子を表す。ユーザ220は、例えば
図1のネットワーク102などのネットワークを介した、1人または複数の他のモバイル通信デバイス・ユーザとの会話の参加者でもあることが留意されるべきである。
【0053】
声サンプル222は、ユーザ220の声の生体測定サンプルを表す。言い換えると、声サンプル222は、ユーザ220の声を録音したものである。ユーザ220は、声サンプル222を、データ処理システム200から、例えば
図1のサーバ104などのスペクトル・マスク生成コンピュータに送る。
【0054】
スペクトル・マスク生成コンピュータは、深層学習ニューラル・ネットワークを利用してスペクトル・マスク224を生成し、このマスクは声サンプル222に基づいてユーザ220に合わせて個人化されている。深層構造化学習または階層学習としても知られる深層学習は、人工ニューラル・ネットワークに基づく機械学習の一部である。機械学習は、教師あり、半教師あり、または教師なしであり得る。深層ニューラル・ネットワーク、リカレント・ニューラル・ネットワーク、および畳み込みニューラル・ネットワークなどの深層学習アーキテクチャは、音声認識、オーディオ認識、自然言語処理、機械翻訳等を含む分野に応用されている。深層ニューラル・ネットワークは、入力層と出力層の間に複数の層を含む。深層ニューラル・ネットワークは、その複数の層間を移動して、各出力の確率を計算する。スペクトル・マスク224は、スペクトル・マスク224と一致する信号のみ(すなわち、ほぼユーザ220に対応する声信号のみ)が残るように、入ってくるオーディオ信号をフィルタリングする。言い換えると、スペクトル・マスク224は、スペクトル・マスク224と一致しないすべての他のオーディオ信号を除去する。
【0055】
スペクトル・マスクのセット226は、例示的実施形態のオーディオ・フィルタリング・アプリケーションを備えているモバイル通信デバイスの他のユーザに対応する、1つまたは複数のあらかじめ共有され、記憶されたスペクトル・マスクのセットを表す。オーディオ・フィルタリング・アプリケーション218は、スペクトル・マスクのセット226の一部もしくはすべてを選択する、またはどれも選択しないために、他のモバイル通信デバイス・ユーザとの会話の直前にまたは開始時に、ディスプレイ214でスペクトル・マスクのセット226をユーザ220に表示してよい。選択された会話参加者のグループ228は、データ処理システム200および各自のモバイル通信デバイス各々を介してユーザ220との会話に参加するようにユーザ220が選択した、1人または複数の他のモバイル通信デバイス・ユーザを表す。
【0056】
選択された会話参加者(すなわち選択された会話参加者のグループ228)の1つまたは複数のスペクトル・マスクが、スペクトル・マスクのセット226にリストされていない場合、オーディオ・フィルタリング・アプリケーション218は、選択された会話参加者に対応するスペクトル・マスクのセット226に含まれていないスペクトル・マスクのダウンロードを要求するか、またはワイヤレス・ダウンロードを自動的に開始してよい。その後、オーディオ・フィルタリング・アプリケーション218は、合成スペクトル・マスク230を生成し、これは、ユーザ220および選択された会話参加者のグループ228に対応するすべてのスペクトル・マスクを組み合わせたものである。代替として、オーディオ・フィルタリング・アプリケーション218は、ユーザ220の好みに基づいて、ユーザ220ではなく、選択された会話参加者のグループ228のみに対応する共有されているスペクトル・マスクを使用して、合成スペクトル・マスク230を生成してもよい。
【0057】
オーディオ・フィルタリング・アプリケーション218は、ユーザ220および選択された会話参加者のグループ228に対応するスペクトル・マスクの加法的重ね合わせを使用して、合成スペクトル・マスク230を生成する。オーディオ・フィルタリング・アプリケーション218は、合成スペクトル・マスク230を利用して、会話の各参加者のオーディオ信号だけを分離および増幅してオーディオ信号232を形成する。言い換えると、オーディオ信号232は、会話参加者の声、および背景雑音などの最小限の他の無関係なオーディオ信号のみから構成される。よって、オーディオ・フィルタリング・アプリケーション218は、会話中のすべての入ってくるオーディオ信号に合成スペクトル・マスク230を適用することにより、入ってくるオーディオ信号を、ほぼ会話参加者の声だけを含んでいる異なる状態または物(すなわちオーディオ信号232)に変換する。
【0058】
オーディオ・フィルタリング・アプリケーション218は、オーディオ信号232をオーディオ出力装置234に送る。オーディオ出力装置234は、有線または無線でデータ処理システム200に接続された、例えば、ヘッドセット、イヤーピース、ヘッドフォン等のオーディオ出力装置の識別子を表す。オーディオ出力装置234は、オーディオ信号232の明瞭で安全な聴取のために、ユーザ220の片耳または両方の耳の中、上、または近くに置かれる。
【0059】
通信ユニット210は、この例では、ネットワークを介して他のコンピュータ、データ処理システム、およびデバイスとの通信を提供する。通信ユニット210は、物理的な通信リンクとワイヤレス通信リンク両方の使用を通じて通信を提供してよい。物理的通信リンクは、例えば、有線、ケーブル、ユニバーサル・シリアル・バス、またはデータ処理システム200のために物理的通信リンクを確立するための任意の他の物理的技術を利用し得る。ワイヤレス通信リンクは、例えば、短波、高周波、超高周波、マイクロ波、ワイヤレス・フィデリティ(Wi-Fi)、Bluetooth(R)技術、モバイル通信のためのグローバル・システム(GSM)、符号分割多重接続(CDMA)、第2世代(2G)、第3世代(3G)、第4世代(4G)、4G Long Term Evolution(LTE)、LTE Advanced、第5世代(5G)、またはデータ処理システム200のためにワイヤレス通信リンクを確立するための任意の他のワイヤレス通信技術もしくは規格を利用し得る。
【0060】
入力/出力ユニット212は、データ処理システム200に接続され得る他のデバイスとのデータの入力および出力を可能にする。例えば、入力/出力ユニット212は、キーパッド、キーボード、マウス、マイクロフォン、または何らかの他の好適な入力装置、あるいはその組合せを通じて、ユーザ入力のための接続を提供してよい。ディスプレイ214は、ユーザに情報を表示するための機構を提供し、例えばユーザがユーザ・インターフェースを通じて画面上の選択を行う、またはデータを入力することを可能にするタッチ画面機能を含んでよい。
【0061】
オペレーティング・システム、アプリケーション、またはプログラム、あるいはその組合せに関する命令は、通信ファブリック202を通じてプロセッサ・ユニット204と通信している記憶装置216に位置してよい。この説明のための例では、命令は、機能形態で永続ストレージ208にある。それらの命令は、プロセッサ・ユニット204によって実行するためにメモリ206にロードされてよい。種々の実施形態のプロセスは、メモリ206などのメモリに位置し得るコンピュータ実施命令を使用して、プロセッサ・ユニット204によって実施されてよい。それらのプログラム命令は、プロセッサ・ユニット204内のプロセッサによって読み込まれ、実行され得る、プログラム・コード、コンピュータ使用可能プログラム・コード、またはコンピュータ可読プログラム・コードと呼ばれる。異なる実施形態におけるプログラム命令は、メモリ206または永続ストレージ208などの異なる物理的コンピュータ可読記憶装置に具現化されてよい。
【0062】
プログラム・コード236は、選択的に取り外し可能であるコンピュータ可読媒体238に機能形態で位置しており、プロセッサ・ユニット204によって実行するためにデータ処理システム200にロードまたは転送されてよい。プログラム・コード236およびコンピュータ可読媒体238は、コンピュータ・プログラム製品240を形成する。一例では、コンピュータ可読媒体238は、コンピュータ可読記憶媒体242またはコンピュータ可読信号媒体244であってよい。コンピュータ可読記憶媒体242は、例えば、永続ストレージ208の一部である、ハード・ドライブなどの記憶装置に転送するために、永続ストレージ208の一部であるドライブまたは他のデバイスに挿入または配置される、光学ディスクまたは磁気ディスクを含み得る。コンピュータ可読記憶媒体242は、データ処理システム200に接続されたハード・ドライブ、サム・ドライブ、またはフラッシュ・メモリなどの、永続ストレージの形態を取ってもよい。一部の事例では、コンピュータ可読記憶媒体242は、データ処理システム200から取り外し可能でないこともある。
【0063】
代替として、プログラム・コード236は、コンピュータ可読信号媒体244を使用してデータ処理システム200に転送されてもよい。コンピュータ可読信号媒体244は、例えばプログラム・コード236を含んでいる伝搬データ信号であってよい。例えば、コンピュータ可読信号媒体244は、電磁気信号、光学信号、または任意の他の好適な種類の信号、あるいはその組合せであってよい。それらの信号は、通信リンク、例えば、ワイヤレス通信リンク、光ファイバ・ケーブル、同軸ケーブル、有線、または任意の他の好適な種類の通信リンク、あるいはその組合せを通じて送信されてよい。言い換えると、通信リンクまたは接続、あるいはその両方は、この説明のための例では物理的であってもワイヤレスであってもよい。コンピュータ可読媒体は、プログラム・コードを含んでいる通信リンクまたはワイヤレス伝送などの、非有形の媒体の形態を取ってもよい。
【0064】
一部の例示的実施形態では、プログラム・コード236は、データ処理システム200内で使用するために、別のデバイスまたはデータ処理システムからコンピュータ可読信号媒体244を通じてネットワークを介して永続ストレージ208にダウンロードされてよい。例えば、データ処理システム内のコンピュータ可読記憶媒体に記憶されたプログラム・コードが、データ処理システムからネットワークを通じてデータ処理システム200にダウンロードされてよい。プログラム・コード236を提供するデータ処理システムは、サーバ・コンピュータ、クライアント・コンピュータ、またはプログラム・コード236を記憶し、送信することが可能な何らかの他のデバイスであってよい。
【0065】
データ処理システム200に関して図示される種々の構成要素は、種々の実施形態が実施され得る方式に関するアーキテクチャ上の制限を与えることは意図されない。種々の例示的実施形態は、データ処理システム200に関して図示される構成要素に加えて、またはその代わりの構成要素を含むデータ処理システム内で実施され得る。
図2に示される他の構成要素は、示される説明のための例から変えることができる。種々の実施形態は、プログラム・コードを実行することが可能な任意のハードウェア・デバイスまたはシステムを使用して実施されてよい。一例として、データ処理システム200は、無機構成要素と一体化された有機構成要素を含んでよく、または人間を除く有機構成要素だけからなってもよく、あるいはその両方であってもよい。例えば、記憶装置は、有機半導体からなってよい。
【0066】
別の例として、データ処理システム200内のコンピュータ可読記憶装置は、データを記憶できる任意のハードウェア装置である。メモリ206、永続ストレージ208、およびコンピュータ可読記憶媒体242は、有形形態の物理的記憶装置の例である。
【0067】
別の例では、通信ファブリック202を実装するためにバス・システムが使用されてよく、そのバス・システムが、システム・バスまたは入力/出力バスなどの1つまたは複数のバスからなってよい。無論、バス・システムは、バス・システムに接続された種々の構成要素またはデバイスの間でデータの転送を提供する任意の好適なタイプのアーキテクチャを使用して実装されてよい。加えて、通信ユニットは、モデムまたはネットワーク・アダプタなどの、データの送受信のために使用される1つまたは複数のデバイスを含んでよい。さらに、メモリは、例えば、メモリ206、または通信ファブリック202に存在することがあるインターフェースおよびメモリ・コントローラ・ハブに見られるようなキャッシュであってよい。
【0068】
本開示はクラウド・コンピューティングに関する詳細な説明を含むが、本明細書に述べられる教示の実施はクラウド・コンピューティング環境に限定されないことが理解される。むしろ、例示的実施形態は、現在知られているまたは後に開発される任意の他のタイプのコンピューティング環境と併せて実施されることが可能である。クラウド・コンピューティングは、最小限の管理労力で、またはサービスの提供者との最小限の対話で、迅速にプロビジョンおよび公開することが可能な、例えばネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想機械、およびサービスなどの、構成可能なコンピューティング・リソースの共有プールへの利便でオンデマンドのネットワーク・アクセスを可能にするためのサービス配信のモデルである。クラウド・モデルは、少なくとも5つの特性、少なくとも3つのサービス・モデル、および少なくとも4つの展開モデルを含み得る。
【0069】
それらの特性には、例えば、オンデマンド・セルフサービス、ブロード・ネットワーク・アクセス、リソース・プーリング、速やかな順応性、および計測されるサービスが含まれ得る。オンデマンド・セルフサービスは、クラウド消費者が、サービスの提供者との人的な対話を必要とすることなく、必要に応じて自動的に、サーバ時間やネットワーク・ストレージなどのコンピューティング能力を一方向に提供することを可能にする。ブロード・ネットワーク・アクセスは、ネットワークを通じて利用可能であり、例えば携帯電話、ラップトップ、および携帯情報端末などの、異種混合のシンまたはシック・クライアント・プラットフォームによる使用を促進する標準的な機構を通じてアクセスされる能力を提供する。リソース・プーリングは、提供者のコンピューティング・リソースが、マルチテナント・モデルを使用して複数の消費者に対応するためにプールされることを可能にし、種々の物理リソースおよび仮想リソースが、必要に従って動的に割り当てられ、割り当てが解除される。消費者は、一般には、提供されるリソースの正確な所在地に関してコントロールも知識も有さないが、例えば、国、州、またはデータ・センターなどの高い抽象化レベルで場所を指定することができるという点で、場所の非依存感がある。速やかな順応性は、迅速に拡張し、迅速に縮小するために速やかに解放される、速やかかつ柔軟にプロビジョニング可能な能力を、場合によっては自動的に提供する。消費者にとって、プロビジョンするために利用可能な能力は、多くの場合無限に見え、任意の時に任意の数量で購入することができる。計測されるサービスは、例えば、ストレージ、処理、帯域幅、および有効なユーザ・アカウントなどのサービスのタイプに適する何らかの抽象化レベルで、計測能力を活用することにより、クラウド・システムがリソース使用を自動的に制御および最適化することを可能にする。リソース使用を監視、制御、および報告して、利用されるサービスの提供者と消費者の両方に透明性を提供する。
【0070】
サービス・モデルは、例えば、サービスとしてのソフトウェア(SaaS)、サービスとしてのプラットフォーム(PaaS)、およびサービスとしてのインフラストラクチャ(IaaS)を含み得る。サービスとしてのソフトウェアは、クラウド・インフラストラクチャ上で動作する提供者のアプリケーションを使用するために消費者に提供される能力である。それらのアプリケーションは、ウェブ・ブラウザ(例えばウェブベースの電子メール)などのシン・クライアント・インターフェースを通じて、様々なクライアント・デバイスからアクセスすることができる。消費者は、ネットワーク、サーバ、オペレーティング・システム、ストレージを含む、基礎となるクラウド・インフラストラクチャ、またはさらには、可能性としては限られたユーザ固有のアプリケーション構成設定を除く、個々のアプリケーション能力すら、管理または制御しない。サービスとしてのプラットフォームは、提供者によってサポートされるプログラミング言語およびツールを使用して作成された、消費者によって作成または取得されたアプリケーションを、クラウド・インフラストラクチャ上に展開するために消費者に提供される能力である。消費者は、ネットワーク、サーバ、オペレーティング・システム、またはストレージを含む、基礎となるクラウド・インフラストラクチャを管理または制御しないが、展開されたアプリケーション、および可能性としてはアプリケーション・ホスト環境構成に対する制御を有する。サービスとしてのインフラストラクチャは、処理、ストレージ、ネットワーク、および他の基本的なコンピューティング・リソースをプロビジョンするために消費者に提供される能力であり、消費者は、オペレーティング・システムおよびアプリケーションを含み得る任意のソフトウェアを展開して実行することができる。消費者は、基礎となるクラウド・インフラストラクチャを管理または制御しないが、オペレーティング・システム、ストレージ、展開されたアプリケーションに対する制御、および場合によっては例えばホスト・ファイアウォールなどの選択されたネットワーキング構成要素の制限された制御を有する。
【0071】
展開モデルは、例えば、プライベート・クラウド、コミュニティ・クラウド、パブリック・クラウド、およびハイブリッド・クラウドを含み得る。プライベート・クラウドは、一つの組織のためだけに運用されるクラウド・インフラストラクチャである。プライベート・クラウドは、組織または第三者によって管理され得、構内または構外に存在し得る。コミュニティ・クラウドは、いくつかの組織によって共有されるクラウド・インフラストラクチャであり、例えば、使命、セキュリティ要件、ポリシー、およびコンプライアンスの考慮事項などの共有される課題を有する特定のコミュニティを支援する。コミュニティ・クラウドは、組織または第三者によって管理され得、構内または構外に存在し得る。パブリック・クラウドは、一般公衆または大きな産業グループに利用可能とされ、クラウド・サービスを販売する組織によって所有されるクラウド・インフラストラクチャである。ハイブリッド・クラウドは、固有のエンティティのままであるが、例えばクラウド間の負荷分散のためのクラウド・バースティングなどのデータおよびアプリケーションの移植性を可能にする標準化されたまたは独自仕様の技術によって互いに結合された、例えばプライベート・クラウド、コミュニティ・クラウド、およびパブリック・クラウドなどの2つ以上のクラウドからなるクラウド・インフラストラクチャである。
【0072】
クラウド・コンピューティング環境は、ステートレス性、低い結合度、モジュール性、および意味的な相互動作性を重視したサービスである。クラウド・コンピューティングの中核にあるのは、相互接続されたノードのネットワークを含むインフラストラクチャである。
【0073】
次いで
図3を参照すると、例示的実施形態が実施され得るクラウド・コンピューティング環境を説明する図が描かれている。この説明のための例では、クラウド・コンピューティング環境300は、1つまたは複数のクラウド・コンピューティング・ノードのセット310を含み、クラウド消費者によって使用されるローカル・コンピューティング・デバイス、例えば、スマートフォン320A、デスクトップ・コンピュータ320B、ラップトップ・コンピュータ320C、または自動車モバイル・コンピュータ・システム320N、あるいはその組合せが、上記クラウド・コンピューティング・ノードと通信することができる。クラウド・コンピューティング・ノード310は、例えば、
図1のサーバ104およびサーバ106であってよい。ローカル・コンピューティング・デバイス320A~320Nは、例えば
図1のクライアント110~114であってよい。
【0074】
クラウド・コンピューティング・ノード310は、互いと通信してよく、また、本明細書の上記に記載されるようにプライベート・クラウド、コミュニティ・クラウド、パブリック・クラウド、もしくはハイブリッド・クラウドなどの1つまたは複数のネットワークとして、またはそれらの組合せとして、物理的または仮想的にグループ化されてよい。これにより、クラウド・コンピューティング環境300が、インフラストラクチャ、プラットフォーム、またはソフトウェアあるいはその組合せをサービスとして提供することが可能となり、それに対してクラウド消費者は、ローカル・コンピューティング・デバイス320A~320Nなどのローカル・コンピューティング・デバイス上にリソースを維持しておく必要がない。ローカル・コンピューティング・デバイス320A~320Nのタイプは、単に例示的なものであることが意図され、またクラウド・コンピューティング・ノード310およびクラウド・コンピューティング環境300は、例えばウェブ・ブラウザを使用して、任意タイプのネットワークまたはネットワーク・アドレス指定接続、あるいはその組合せを通じて、任意タイプのコンピュータ化されたデバイスと通信できることが理解される。
【0075】
次いで
図4を参照すると、例示的実施形態による、抽象化モデル層を説明する図が描かれている。この説明のための例に示される機能抽象化層のセットは、
図3のクラウド・コンピューティング環境300などのクラウド・コンピューティング環境によって提供されてよい。
図4に示される構成要素、層、および機能は単に例示的なものであることが意図され、本発明の実施形態はそれに限定されないことがあらかじめ理解されるべきである。描かれるように、以下の層および対応する機能が提供される。
【0076】
クラウド・コンピューティング環境400の抽象化層は、ハードウェアおよびソフトウェア層402、仮想化層404、管理層406、ならびに作業負荷層408を含む。ハードウェアおよびソフトウェア層402は、クラウド・コンピューティング環境のハードウェアおよびソフトウェア構成要素を含む。ハードウェア構成要素は、例えば、メインフレーム410、RISC(縮小命令セット・コンピュータ)アーキテクチャベースのサーバ412、サーバ414、ブレード・サーバ416、記憶装置418、ならびにネットワークおよびネットワーキング構成要素420を含み得る。一部の例示的実施形態では、ソフトウェア構成要素は、例えば、ネットワーク・アプリケーション・サーバ・ソフトウェア422およびデータベース・ソフトウェア424を含み得る。
【0077】
仮想化層404は、抽象化層を提供し、そこから以下の仮想エンティティの例が提供され得る:仮想サーバ426、仮想ストレージ428、仮想プライベート・ネットワークを含む仮想ネットワーク430、仮想アプリケーションおよびオペレーティング・システム432、ならびに仮想クライアント434。
【0078】
一例では、管理層406は、下記の機能を提供し得る。リソース・プロビジョン436は、クラウド・コンピューティング環境内でタスクを行うために利用されるコンピューティング・リソースおよび他のリソースの動的な調達を提供する。計測および価格決定438は、クラウド・コンピューティング環境内でリソースが利用されるのに伴う費用追跡、およびそれらリソースの消費に対する課金または送り状送付を提供する。一例では、これらリソースは、アプリケーション・ソフトウェアのライセンスを含み得る。セキュリティは、クラウド消費者およびタスクに関する身元検証、ならびにデータおよび他のリソースに関する保護を提供する。ユーザ・ポータル440は、クラウド・コンピューティング環境へのアクセスを消費者およびシステム管理者に提供する。サービス・レベル管理442は、必要とされるサービス・レベルが満たされるようにクラウド・コンピューティング・リソースの割り当ておよび管理を提供する。サービス・レベル合意(SLA)の計画および遂行444は、将来の必要性が見込まれるクラウド・コンピューティング・リソースの事前の構成および調達をSLAに従って提供する。
【0079】
作業負荷層408は、クラウド・コンピューティング環境が利用され得る機能の例を提供する。作業負荷層408から提供され得る作業負荷および機能の例には、マッピングおよびナビゲーション446、ソフトウェア開発およびライフサイクル管理448、仮想の教室教育配信450、データ分析処理452、トランザクション処理454、およびオーディオ信号フィルタリング456が含まれ得る。
【0080】
雑音環境で会話をすることに伴う問題の一つは、会話の参加者が他の参加者によって話されていることを明瞭かつ確実に聞き取るのが難しいことである。現在の解決法の中には、実験的なニューラル・ネットワークを使用して雑音環境における会話を増幅するものがあるが、そのような現在の解決法で、すでに利用可能となっているハードウェアおよびスペクトル・マスキング技術を使用するものはない。
【0081】
近年の深層学習技術の発展により、個人の声の詳細な特徴化を具現化する、カスタマイズされた個人のスペクトル・マスクを作成することが可能となっている。それらの深層学習技術は、背景雑音に抗して個人の声を分離するための高度に固有で効果的なフィルタを作成することを可能にする。
【0082】
例示的実施形態は、例えば携帯電話や有線または無線のイヤーバッドにすでに存在するハードウェア構成要素を使用して、雑音環境内の選択された個人同士の間の会話を分離および増幅する。例示的実施形態は、前もって会話の個々の参加者に合わせて調整された、動的に生成される複合スペクトル・マスクを利用する。
【0083】
例示的実施形態は、事前に訓練された深層ニューラル・ネットワーク動的スペクトル・マスキングを利用して、雑音環境内の参加者間の明瞭で安全な会話を可能にする。例示的実施形態は、動的スペクトル・マスク深層ニューラル・ネットワークを、携帯電話に常駐するオーディオ・フィルタリング・アプリケーションと結び付けられるクラウド・サービスとして提供する。携帯電話のユーザは、1人または複数の個人の声サンプルを録音し、その声サンプルをクラウド・サービスにアップロードし、動的スペクトル・マスク深層ニューラル・ネットワークを各個人の声に合わせて調整させることができる。任意で、個人の声は、会話中に記録され、既存の話者ダイアライゼーション技術を使用して分離されるか、またはボイスメール・メッセージから個々に捕捉されてもよい。例示的実施形態では長めの声サンプルの方が好ましいこと、および個々のスペクトル・マスクの品質は、声サンプルの長さおよび声サンプルを捕捉するために使用されるコーデックの帯域幅に依存し得ることが留意されるべきである。したがって、個々のスペクトル・マスクの品質は、例示的実施形態が、静かな環境で、広帯域幅のエンコーダを用いて、話者の言語が含むすべての音素の複数の声サンプルと共に声サンプルを長く捕捉する場合に向上し得る。
【0084】
例示的実施形態が、動的スペクトル・マスク深層ニューラル・ネットワークを使用して個人の個人化された動的スペクトル・マスクを生成すると、例示的実施形態は、そのスペクトル・マスクをその個人のモバイル・デバイスにダウンロードする。加えて、例示的実施形態は、スペクトル・マスクをモバイル・デバイスにダウンロードした後に、クラウド環境にある個人のデータを削除してもよい。
【0085】
会話に先立って、または会話の開始時に、会話に参加することを望む各個人が、各自のモバイル・デバイスに全参加者のスペクトル・マスクを記憶しておくように、個人は、会話の参加者に対応するモバイル・デバイス間で各自のスペクトル・マスクを共有してもよい。モバイル・デバイスは、例えば、Bluetooth、Wi-Fi、近距離通信、電子メール、ショート・メッセージ・サービス等を介して、スペクトル・マスクを共有してよい。
【0086】
参加者が、各自のモバイル・デバイス上の例示的実施形態のオーディオ・フィルタリング・アプリケーションを使用して会話をする準備ができると、参加者は、例えばヘッドフォンまたはイヤーピースを耳に付け、オーディオ・フィルタリング・アプリケーションを起動する。さらに、参加者は、誰が会話に参加することを許可されるかをオーディオ・フィルタリング・アプリケーションに指示する。参加者は、連絡先リストおよびBluetooth、Wi-Fi、スモール・メッセージ・サーバ、電子メール等を介してこの選択を容易にしてもよい。代替として、参加者は、オーディオ・フィルタリング・アプリケーションのユーザ・インターフェース内で個人を選択してもよい。
【0087】
次に、オーディオ・フィルタリング・アプリケーションは、会話の各参加者のスペクトログラムの加法的重ね合わせにより、合成または複合スペクトル・マスクを生成する。代替として、オーディオ・フィルタリング・アプリケーションは、オーディオ・フィルタリング・アプリケーションがその特定のモバイル・デバイスのユーザ自身の声を増幅すべきかについてのユーザの選好に従って、そのユーザ以外の各参加者から、複合スペクトル・マスクを生成してもよい。オーディオ・フィルタリング・アプリケーションは次いで、この複合スペクトル・マスクを、モバイル・デバイスのマイクロフォンを通じて入ってくる音声に適用し、複合スペクトログラムと一致しないすべての音声を除去し、複合スペクトログラムと一致する残りの音声をイヤーピースまたはヘッドフォンを通じて増幅する。よって、例示的実施形態は、会話中に、他人の(例えば非参加者の)声、およびほぼすべての他の無関係な雑音を効果的に除去する。
【0088】
代替の例示的実施形態では、1つのモバイル・デバイスで数人の参加者に対応できるように、単一のオーディオ・フィルタリング・アプリケーションが、複数のワイヤレス・イヤーバッド、ヘッドセット、またはヘッドフォン、あるいはその組合せと共に使用されてよい。別の代替の例示的実施形態では、オーディオ・フィルタリング・アプリケーションが、会話を聞くのではなく会話のテキストを読むために、または同時に読んで聞くために、例えばモバイル・デバイス画面やイヤーピースが取り付けられたスマート・グラスなどのテキスト出力装置で、会話のリアルタイムの字幕生成を参加者に表示することができるように、オーディオ・フィルタリング・アプリケーションは、会話のリアルタイムの字幕生成を行う機能を(任意で個々の話者識別のための話者ダイアリゼーションと共に)含んでよい。さらに、例示的実施形態は、選択された声の音量を正規化するための自動利得制御も含む。さらに、例示的実施形態は、任意で、通常の発話だけでなく、ささやかれる発話も含むように個人のスペクトル・マスクを訓練してよい。
【0089】
センシティブな内容を含む会話の場合、参加者は、わざと雑音環境に移動し、例示的実施形態のオーディオ・フィルタリング・アプリケーションを使用して、他の者が会話を盗み聞きすることを極めて難しくすることによって、情報のやり取りを保護してよい。任意で、オーディオ・フィルタリング・アプリケーションは、盗み聞きの可能性を減らすため、または盗み聞きをより難しくするために、モバイル・デバイスの外部スピーカを使用して、位相のずれた、識別不能な音素または発話の断片をわざと出力し、それをオーディオ・フィルタリング・アプリケーションが能動的に除去してもよい。代替の例示的実施形態では、法の執行が、遠隔に取り付けられたマイクロフォンまたは例えばレーザ・マイクロフォンなどのより特殊な音声録音機器を用いて、オーディオ・フィルタリング・アプリケーションを使用して、雑音環境内での「参考人」同士の会話を拾い出す。
【0090】
よって、例示的実施形態は、雑音環境でモバイル通信デバイス・ユーザ同士の明瞭で安全な会話を提供するのに伴う技術的問題を克服する、1つまたは複数の技術的解決法を提供する。その結果、それら1つまたは複数の技術的解決法は、モバイル・デバイス通信の分野において技術的効果と実際的な応用を提供する。
【0091】
次いで
図5を参照すると、例示的実施形態によるオーディオ・フィルタリング・システムの例を示す図が描かれている。オーディオ・フィルタリング・システム500は、
図1のネットワーク・データ処理システム100などのデータ処理システムのネットワーク、または
図3のクラウド・コンピューティング環境300などのクラウド・コンピューティング環境で実施されてよい。オーディオ・フィルタリング・システム500は、雑音環境における参加者の会話の分離、増幅および安全性のために深層ニューラル・ネットワーク動的スペクトル・マスキングを使用して会話参加者によって調整されるフィルタリングを行うための、ハードウェア構成要素およびソフトウェア構成要素からなるシステムである。
【0092】
この例では、オーディオ・フィルタリング・システム500は、スペクトル・マスク生成サーバ502、モバイル・デバイス504、モバイル・デバイス506、およびモバイル・デバイス508を含む。しかし、オーディオ・フィルタリング・システム500は、任意数のサーバ、モバイル・デバイス、および図示されない他のデバイスを含んでよいことが留意されるべきである。スペクトル・マスク生成サーバ502、モバイル・デバイス504、モバイル・デバイス506、およびモバイル・デバイス508は、例えば、それぞれ
図1のサーバ104、クライアント110、クライアント112、およびクライアント114であってよい。
【0093】
ユーザ510は、モバイル・デバイス504のユーザを表す。モバイル・デバイス504は、例えばスマートフォンまたは他のモバイル通信デバイスであってよい。ユーザ510は、モバイル・デバイス504に声サンプル512を入力する。モバイル・デバイス504は、声サンプル512を録音し、
図2のオーディオ・フィルタリング・アプリケーション218などのオーディオ・フィルタリング・アプリケーション514を利用して、声サンプル512を、この例ではクラウド環境515内に存在するスペクトル・マスク生成サーバ502に送る。スペクトル・マスク生成サーバ502は、深層学習ニューラル・ネットワーク構成要素516およびグラフィック処理ユニット518を利用して、声サンプル512に基づいて、ユーザ510に対応する個人化された動的スペクトル・マスク520を生成する。個人化された動的スペクトル・マスク520は、音声が処理されるのと同時に瞬間ごとの[恐らくは1ミリ秒あたり約1回]ユーザ510の声の次の可能性の高い周波数シグネチャを予測する予測時系列モデルである。言い換えると、個人化された動的スペクトル・マスク520は、会話中にユーザ510の単語音声シーケンスを予測する。スペクトル・マスク生成サーバ502は、個人化された動的スペクトル・マスク520をモバイル・デバイス504に送る。
【0094】
記憶された別々の個人のスペクトル・マスク522は、ユーザ510に対応する個人動的スペクトル・マスク520と、事前にモバイル・デバイス504と共有された他のモバイル通信デバイス・ユーザに対応する他のスペクトル・マスクとを表す。この例では、モバイル・デバイス506およびモバイル・デバイス508は、会話の参加者となるようにユーザ510が選択した他のユーザに対応する。その結果、524で、モバイル・デバイス506とモバイル・デバイス508とが、例えばBluetooth技術を介して、それぞれ各自のスペクトル・マスクである、スペクトル・マスク526およびスペクトル・マスク528を、モバイル・デバイス504とワイヤレスに共有する。スペクトル・マスク526およびスペクトル・マスク528を受け取った後、オーディオ・フィルタリング・アプリケーション514は、ユーザ510ならびにモバイル・デバイス506およびモバイル・デバイス508のユーザの声だけが聞こえるようにするために、個人動的スペクトル・マスク520をスペクトル・マスク526およびスペクトル・マスク528と組み合わせて、モバイル・デバイス504、モバイル・デバイス506、およびモバイル・デバイス508のマイクロフォン・フィードをフィルタリングするための合成スペクトル・マスクを形成する。
【0095】
次いで
図6を参照すると、例示的実施形態によるオーディオ・フィルタリング・アプリケーション・スペクトル・マスク組合せプロセスの例を説明する図が描かれている。オーディオ・フィルタリング・アプリケーション・スペクトル・マスク組合せプロセス600は、
図1のクライアント110、
図2のデータ処理システム200、
図3のスマートフォン320A、または
図5のモバイル・デバイス504などの、モバイル・デバイス内で実施されてよい。この例では、オーディオ・フィルタリング・アプリケーション・スペクトル・マスク組合せプロセス600は、参加者1のスペクトル・マスク602と参加者2のスペクトル・マスク604を組み合わせる。しかし、オーディオ・フィルタリング・アプリケーション・スペクトル・マスク組合せプロセス600は、任意数の選択された会話の参加者に対応する任意数のスペクトル・マスクを組み合わせてよいことが留意されるべきである。
【0096】
参加者1と参加者2の間の会話の開始時に、オーディオ・フィルタリング・アプリケーション、例えば、
図2のオーディオ・フィルタリング・アプリケーション218または
図5のオーディオ・フィルタリング・アプリケーション514などが、参加者1のスペクトル・マスク602と参加者2のスペクトル・マスク604を組み合わせて、合成スペクトル・マスク606にする。合成スペクトル・マスク606は、周波数領域における論理和を使用して、出力されるオーディオ信号中で参加者1および参加者2の声だけを許可し、他の無関係な音声は許可しないフィルタを作成する。
【0097】
次いで
図7を参照すると、例示的実施形態による雑音環境通信プロセスの例を説明する図が描かれている。雑音環境通信プロセス700は、モバイル・デバイス702およびモバイル・デバイス704を含む。モバイル・デバイス702およびモバイル・デバイス704上で動作する例示的実施形態のオーディオ・フィルタリング・アプリケーションは、参加者710および参加者712が、雑音環境からの他の音声が含まれることなく、互いおよび自身の話すことを明瞭かつ安全に聞くことができるように、それぞれ合成スペクトル・マスク706および合成スペクトル・マスク708を、参加者710と参加者712間の会話の入ってくるオーディオ信号に適用する。
【0098】
次いで
図8を参照すると、例示的実施形態によるオーディオ・フィルタリング・プロセスの例を説明する図が描かれている。オーディオ・フィルタリング・プロセス800は、モバイル・デバイス802、およびモバイル・デバイス802に有線または無線で結合されているオーディオ出力装置804を含む。オーディオ出力装置804は、例えば、イヤーバッドや、イヤーピース付きのスマート・グラス等であってよい。代替の例示的実施形態は、会話のオーディオ信号をテキスト形式に変換し、オーディオの代わりに、またはオーディオに加えて、そのテキストをスマート・グラスまたはモバイル・デバイス画面に出力してもよいことが留意されるべきである。
【0099】
モバイル・デバイス802は、モバイル・デバイス802のユーザである会話参加者808に対応するスペクトル・マスク806を記憶している。また、オーディオ出力装置804は、会話参加者808によって会話参加者808の片耳または両方の耳の近くまたは中に装着されることが留意されるべきである。
【0100】
810で、モバイル・デバイス802は、会話参加者812および会話参加者814に対応するモバイル・デバイスから、マイクロフォン・フィードを含む雑音環境からのすべての音声を受け取る。816で、モバイル・デバイス802は、スペクトル・マスク806および会話参加者812および814に対応するスペクトル・マスクを含む、会話参加者808によって選択されたスペクトル・マスクの組合せである合成スペクトル・マスクを使用して、入ってくる音声をフィルタリングする。818で、モバイル・デバイス802は、Bluetoothまたは有線を介して、会話を明瞭かつ安全に聞くまたは見る、あるいはその両方のために、会話参加者808のフィルタリング後のオーディオ信号をオーディオ出力装置804に送る。
【0101】
次いで
図9を参照すると、例示的実施形態による代替のオーディオ・フィルタリング・プロセスの例を説明する図が描かれている。代替のオーディオ・フィルタリング・プロセス900は、モバイル・デバイス902、およびモバイル・デバイス902に有線または無線で結合されているオーディオ出力装置904を含む。
【0102】
モバイル・デバイス902は、モバイル・デバイス902のユーザである会話参加者908に対応するスペクトル・マスク906を記憶している。また、オーディオ出力装置904は、会話参加者908によって会話参加者908の片耳または両方の耳の近くまたは中に装着される。
【0103】
910で、モバイル・デバイス902は、レーザ監視機器918を介して、会話参加者914および会話参加者916の声を含む、雑音環境912からのすべての音声を受け取る。レーザ監視機器918は、例えばレーザ・マイクロフォンであってよい。920で、モバイル・デバイス802は、会話参加者908によって選択されたスペクトル・マスクの組合せである合成スペクトル・マスクを使用して、入ってくる音声をフィルタリングする。合成スペクトル・マスクは、スペクトル・マスク806および会話参加者914および916に対応するスペクトル・マスクを含む。922で、モバイル・デバイス902は、Bluetoothまたは有線を介して、会話を明瞭かつ安全に聞くまたは見る、あるいはその両方のために、会話参加者908のフィルタリング後のオーディオ信号をオーディオ出力装置904に送る。
【0104】
次いで
図10を参照すると、例示的実施形態による、個人化されたスペクトル・マスクを受け取るプロセスを説明するフローチャートが示されている。
図10に示されるプロセスは、
図1のクライアント110、
図2のデータ処理システム200、
図3のスマートフォン320A、または
図5のモバイル・デバイス504などの、モバイル・デバイス内で実施されてよい。
【0105】
プロセスは、モバイル・デバイスがモバイル・デバイスのユーザの声サンプルを録音するための入力を受け取ると開始する(ステップ1002)。モバイル・デバイスは、ユーザの声サンプルを録音する(ステップ1004)。モバイル・デバイスは、ユーザに合わせて個人化されたスペクトル・マスクを生成するために、ユーザの声サンプルを、ネットワークを介してクラウド環境の動的スペクトル・マスク深層ニューラル・ネットワーク・サーバに送る(ステップ1006)。
【0106】
その後、モバイル・デバイスは、ユーザに合わせて個人化されたスペクトル・マスクを、動的スペクトル・マスク深層ニューラル・ネットワーク・サーバからネットワークを介して受け取る(ステップ1008)。モバイル・デバイスは、ユーザに合わせて個人化されたスペクトル・マスクをモバイル・デバイスの記憶装置に記憶する(ステップ1010)。その後、プロセスは終了する。
【0107】
次いで
図11A~11Bを参照すると、例示的実施形態による、入ってくるオーディオ信号をフィルタリングするプロセスを説明するフローチャートが示されている。
図11A~11Bに示されるプロセスは、
図1のクライアント110、
図2のデータ処理システム200、
図3のスマートフォン320A、または
図5のモバイル・デバイス504などの、モバイル・デバイス内で実施されてよい。
【0108】
プロセスは、モバイル・デバイスが、モバイル・デバイス上のオーディオ・フィルタリング・アプリケーションを起動するための入力をモバイル・デバイスのユーザから受け取ると開始する(ステップ1102)。ステップ1102でモバイル・デバイス上のオーディオ・フィルタリング・アプリケーションを起動するのに応答して、モバイル・デバイスは、例えばBluetooth範囲などのワイヤレス範囲内で同じくオーディオ・フィルタリング・アプリケーションを起動している他のモバイル・デバイスに接続する(ステップ1104)。その後、モバイル・デバイスは、ワイヤレス範囲内でオーディオ・フィルタリング・アプリケーションを起動している他のモバイル・デバイスのユーザに対応するスペクトル・マスクのリストを表示する(ステップ1106)。
【0109】
モバイル・デバイスは、会話に含めたい1人または複数の他のモバイル・デバイス・ユーザに対応する、スペクトル・マスクのリスト内の1つまたは複数のスペクトル・マスクの選択を、モバイル・デバイスのユーザから受け取る(ステップ1108)。モバイル・デバイスは、スペクトル・マスクのリスト内で選択された1つまたは複数のスペクトル・マスクの1つまたは複数がまだモバイル・デバイスの記憶装置に記憶されていない場合、それら1つまたは複数のスペクトル・マスクの1つまたは複数をダウンロードする(ステップ1110)。モバイル・デバイスは、オーディオ・フィルタリング・アプリケーションを使用して、スペクトル・マスクのリスト内で選択された1つまたは複数のスペクトル・マスクを、記憶装置に記憶されているユーザに対応するスペクトル・マスクと組み合わせて、合成スペクトル・マスクを形成する(ステップ1112)。
【0110】
モバイル・デバイスは、モバイル・デバイスのマイクロフォンを起動して、1人または複数の他のモバイル・デバイス・ユーザと当該ユーザとの間の会話を含む、入ってくるオーディオ信号を捕捉する(ステップ1114)。モバイル・デバイスは、合成スペクトル・マスクを使用して、1人または複数の他のモバイル・デバイス・ユーザと当該ユーザとの間の会話だけをオーディオ信号中に残すことを可能にするように、入ってくるオーディオ信号をフィルタリングする(ステップ1116)。モバイル・デバイスは、1人または複数の他のモバイル・デバイス・ユーザと当該ユーザとの間の会話だけを含むオーディオ信号を、モバイル・デバイスに接続されたイヤーピース、ヘッドセット、またはヘッドフォンの1つに送信する(ステップ1118)。
【0111】
モバイル・デバイスは、オーディオ・フィルタリング・アプリケーションを停止するための入力が受け取られたかどうかについて判定を行う(ステップ1120)。モバイル・デバイスが、オーディオ・フィルタリング・アプリケーションを停止するための入力が受け取られていないと判定した場合、すなわちステップ1120の出力がnoの場合、プロセスはステップ1116に戻り、モバイル・デバイスは、合成スペクトル・マスクを使用して、入ってくるオーディオ信号をフィルタリングし続ける。モバイル・デバイスが、オーディオ・フィルタリング・アプリケーションを停止するための入力が受け取られたと判定した場合、すなわちステップ1120の出力がyesである場合、プロセスはその後終了する。
【0112】
次いで
図12を参照すると、例示的実施形態による、選択された参加者間の会話を分離および増幅するプロセスを説明するフローチャートが示されている。
図12に示されるプロセスは、
図1のクライアント110、
図2のデータ処理システム200、
図3のスマートフォン320A、または
図5のモバイル・デバイス504などの、モバイル・デバイス内で実施されてよい。
【0113】
プロセスは、モバイル・デバイスが複数のスペクトル・マスクを受け取ると開始する(ステップ1202)。複数のスペクトル・マスクの中の各スペクトル・マスクは、会話に含まれる選択された参加者のグループのそれぞれの参加者に対応している。モバイル・デバイスは、複数のスペクトル・マスクの加法的重ね合わせにより、合成スペクトル・マスクを生成する(ステップ1204)。
【0114】
モバイル・デバイスは、その合成スペクトル・マスクをモバイル・デバイスのマイクロフォンによって捕捉された音声に適用して、合成スペクトル・マスクと一致しない音声を除去し、合成スペクトル・マスクと一致する残りの音声を増幅する(ステップ1206)。モバイル・デバイスは、合成スペクトル・マスクと一致する増幅された残りの音声を、モバイル・デバイスに対応する会話の参加者の片耳または両方の耳の中または上にあるオーディオ出力装置に送信する(ステップ1208)。その後、プロセスは終了する。
【0115】
このように、本発明の例示的実施形態は、雑音環境における参加者の会話の分離、増幅および安全性のための深層ニューラル・ネットワーク動的スペクトル・マスキングを使用した会話参加者によって調整されるフィルタリングのための、コンピュータにより実施される方法、コンピュータ・システム、およびコンピュータ・プログラム製品を提供する。本発明の様々な実施形態の説明は、説明の目的で提示されたが、網羅的であるまたは開示される実施形態に限定されることは意図されない。多くの変更および変形例が、記載される実施形態の範囲から逸脱することなく、当業者に明らかとなろう。本明細書において使用される術語は、実施形態の原理、実践的な応用、もしくは市場に見られる技術に対する技術的改良を最もよく説明するために、または当業者が本明細書に開示される実施形態を理解することを可能にするために選ばれたものである。