(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-04-02
(54)【発明の名称】画像ベースのノイズを有する内容を使用した電子メッセージング方法
(51)【国際特許分類】
H04L 51/04 20220101AFI20240326BHJP
G06F 16/908 20190101ALI20240326BHJP
G06F 16/90 20190101ALI20240326BHJP
H04L 51/08 20220101ALI20240326BHJP
G06F 18/2135 20230101ALI20240326BHJP
G06N 3/08 20230101ALI20240326BHJP
G06N 3/0455 20230101ALI20240326BHJP
G06N 5/02 20230101ALI20240326BHJP
【FI】
H04L51/04
G06F16/908
G06F16/90 100
H04L51/08
G06F18/2135
G06N3/08
G06N3/0455
G06N5/02
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023559723
(86)(22)【出願日】2022-03-08
(85)【翻訳文提出日】2023-09-27
(86)【国際出願番号】 CN2022079742
(87)【国際公開番号】W WO2022206307
(87)【国際公開日】2022-10-06
(32)【優先日】2021-03-30
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【氏名又は名称】太佐 種一
(74)【代理人】
【識別番号】100120710
【氏名又は名称】片岡 忠彦
(74)【復代理人】
【識別番号】100104880
【氏名又は名称】古部 次郎
(74)【復代理人】
【識別番号】100118108
【氏名又は名称】久保 洋之
(72)【発明者】
【氏名】ハンスマン、ウーヴェ、カール
(72)【発明者】
【氏名】エカンバラム、ヴィジャイ
(72)【発明者】
【氏名】マルヴァニヤ、スミトクマール、ナロタンバイ
(72)【発明者】
【氏名】クスマウル、ティモ
(72)【発明者】
【氏名】ストーバー、トーマス
(72)【発明者】
【氏名】モンダル、スネハ
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175EA01
5B175FA01
(57)【要約】
本開示は、電子通信システムの電子メッセージを受信することを含む方法に関する。画像ベースのノイズを有する内容が生成されてもよい。画像ベースのノイズを有する内容は、受信した電子メッセージの内容とは異なるとともに、受信したメッセージのメッセージインテントに関連する。電子通信システムは、受信した電子メッセージの代わりに画像ベースのノイズを受信者に提供するか、または画像ベースのノイズに加えて受信した電子メッセージを受信者に提供するように構成されてもよい。
【特許請求の範囲】
【請求項1】
電子メッセージングのためのコンピュータ実装方法であって、
電子通信システムの電子メッセージであって、受信者のために決定されるメッセージを受信することと、
前記受信した電子メッセージのメッセージインテントを決定することと、
前記受信した電子メッセージの内容とは異なるとともに、前記メッセージインテントに関連する、画像ベースのノイズを有する内容を生成することと、
前記電子通信システムを制御して、前記受信した電子メッセージの代わりに前記画像ベースのノイズを有する内容を前記受信者に提供するか、または、当該画像ベースのノイズを有する内容に加えて当該受信した電子メッセージを当該受信者に提供することと、
を含む、コンピュータ実装方法。
【請求項2】
前記電子メッセージのドメインを決定することと、
前記決定したドメインの1つ以上のテキストメッセージのセットおよび1つ以上の画像のセットを決定することと、をさらに含み、
前記画像ベースのノイズを有する内容を生成することは、
前記テキストメッセージのセットから1つ以上のノイズを有する画像を生成することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有する画像である、ことと、
前記画像のセットからノイズを有するテキストを抽出することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有するテキストである、ことと
前記画像のセットおよび前記テキストメッセージのセットからノイズを有するマルチモーダルな内容を生成することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有するマルチモーダルな内容である、ことと
のいずれか1つを含む、請求項1に記載の方法。
【請求項3】
前記画像のセットおよびテキストメッセージのセットは、それらのインテントが前記メッセージインテントの一部に関連するように決定される、請求項2に記載の方法。
【請求項4】
前記画像ベースのノイズを有する内容を生成することは、
電子メッセージおよび画像を表現するための同時埋め込み空間を決定することと、
テキストメッセージおよび所定の画像のセットを前記埋め込み空間に表現することであって、当該テキストメッセージは、前記電子メッセージ、または前記メッセージインテントの少なくとも一部であるインテントを有する別のメッセージである、ことと、
前記埋め込み空間における前記画像のセットの表現と前記テキストメッセージの表現との間の類似度に基づいて、当該画像のセットをランク付けすることと、
前記ランク付けに基づいて、前記画像のセットから1つ以上のノイズを有する画像のサブセットを選択することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有する画像を含む、ことと
を含む、請求項1に記載の方法。
【請求項5】
前記ノイズを有する画像のサブセットは、第2のk個のランク付けされた画像(kは設定可能なパラメータの値)である、請求項4に記載の方法。
【請求項6】
前記ノイズを有する内容の所望のノイズレベルに応じて、前記パラメータkの値を設定することをさらに含む、請求項5に記載の方法。
【請求項7】
前記同時埋め込みは、シャムニューラルネットワークアーキテクチャに従って、画像とテキストを整合させるためにヒンジ損失を使用して学習される、請求項4に記載の方法。
【請求項8】
前記画像ベースのノイズを有する内容を生成することは、
ナレッジグラフを使用して、前記メッセージインテントの関連インテントを決定することであって、当該ナレッジグラフは、インテントを表すエンティティを含む、ことと、
所定の画像のセットから、前記関連インテントに関連付けられ、かつ前記メッセージインテントに関連付けられない画像のサブセットを抽出することであって、前記画像ベースのノイズを有する内容は、当該画像のサブセットを含む、ことと、
を含む、請求項1に記載の方法。
【請求項9】
前記電子メッセージを使用して、メッセージングセッションのコンテキストを決定することであって、当該メッセージングセッションの当該コンテキストは、前記ナレッジグラフの少なくともサブグラフによって定義される、ことと、
前記サブグラフを使用して、前記決定したコンテキストに属し、かつ前記メッセージインテントに関連付けられるインテントとして、前記関連インテントを決定することと、
をさらに含む、請求項8に記載の方法。
【請求項10】
前記画像ベースのノイズを有する内容を生成することは、
ナレッジグラフを使用して、前記メッセージインテントの関連インテントを決定することであって、当該ナレッジグラフは、インテントを表すエンティティを含む、ことと、
前記関連エンティティに対して変分オートエンコーダを使用して画像を生成することであって、前記画像ベースのノイズを有する内容は、当該生成した画像を含む、ことと、
を含む、請求項1に記載の方法。
【請求項11】
前記電子メッセージは、前記電子通信システムのチャットアプリケーションから傍受され、当該チャットアプリケーションは、メッセージングセッション中のユーザとの会話をシミュレートするように構成され、前記受信することは、当該メッセージングセッションの所定の時点で当該チャットアプリケーションのメッセージを傍受することを含む、請求項1に記載の方法。
【請求項12】
前記電子通信システムは、チャットクライアント間でメッセージを配信するように構成されたチャットサーバである、請求項1に記載の方法。
【請求項13】
前記電子メッセージは、第1のチャットクライアントから第2のチャットクライアントを宛先として受信され、前記方法は、前記受信した電子メッセージ中の機密情報を検出することをさらに含み、前記決定した画像の前記ノイズを有する内容は、非機密情報を含み、前記決定した画像は、当該受信した電子メッセージの代わりに提供される、請求項12に記載の方法。
【請求項14】
コンピュータ関連のバグ修正のドメインを表すナレッジグラフを提供することであって、当該ナレッジグラフは、問題および解決策を表すエンティティを含み、前記メッセージインテントは、コンピュータ関連の技術的問題を表すとともに、当該ナレッジグラフ内の解決策のセットに関連付けられる、ことをさらに含み、
前記画像を決定することは、
前記ナレッジグラフを使用して、前記メッセージインテントの関連インテントを決定することであって、当該関連インテントは、前記解決策のセットとは異なる解決策に関連付けられる、ことと、
所定の画像のセットから、前記関連インテントに関連付けられ、かつ前記メッセージインテントに関連付けられない画像のサブセットを抽出することと、
を含む、請求項1に記載の方法。
【請求項15】
過去のデータ通信の通信記録もしくはログまたはその両方を用いて前記ナレッジグラフを作成することと、
前記ナレッジグラフの1つ以上のグラフ特性に従って当該ナレッジグラフのインテントをクラスタ化することであって、当該グラフ特性は、当該グラフにおける各ノードの中心性指数、および当該グラフにおける各ノードから他のノードへの距離のうちのいずれか1つを含む、ことと、
をさらに含む、請求項14に記載の方法。
【請求項16】
1つ以上のコンピュータの1つ以上のプロセッサによって実行するためのコンピュータ可読プログラム命令を実装した1つ以上のコンピュータ可読記憶媒体を含むコンピュータプログラム製品であって、当該コンピュータ可読プログラム命令は、
前記1つ以上のプロセッサによって、電子通信システムの電子メッセージであって、受信者のために決定されるメッセージを受信することと、
前記1つ以上のプロセッサによって、前記受信した電子メッセージのメッセージインテントを決定することと、
前記1つ以上のプロセッサによって、前記受信した電子メッセージの内容とは異なるとともに、前記メッセージインテントに関連する、画像ベースのノイズを有する内容を生成することと、
前記1つ以上のプロセッサによって、前記電子通信システムを制御して、前記受信した電子メッセージの代わりに前記画像ベースのノイズを有する内容を前記受信者に提供するか、または、当該画像ベースのノイズを有する内容に加えて当該受信した電子メッセージを当該受信者に提供することと、
を実行するための命令を含む、コンピュータプログラム製品。
【請求項17】
前記プログラム命令は、
前記1つ以上のプロセッサによって、前記電子メッセージのドメインを決定することと、
前記1つ以上のプロセッサによって、前記決定したドメインの1つ以上のテキストメッセージのセットおよび1つ以上の画像のセットを決定することと、を実行するための命令をさらに含み、
前記画像ベースのノイズを有する内容を生成することは、
前記テキストメッセージのセットから1つ以上のノイズを有する画像を生成することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有する画像である、ことと、
前記画像のセットからノイズを有するテキストを抽出することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有するテキストである、ことと
前記画像のセットおよび前記テキストメッセージのセットからノイズを有するマルチモーダルな内容を生成することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有するマルチモーダルな内容である、ことと
のいずれか1つを含む、請求項16に記載のコンピュータプログラム製品。
【請求項18】
前記画像のセットおよびテキストメッセージのセットは、それらのインテントが前記メッセージインテントの一部に関連するように決定される、請求項17に記載のコンピュータプログラム製品。
【請求項19】
1つ以上のプロセッサと、当該1つ以上のプロセッサによって実行するためのプログラム命令を記憶した1つ以上の有形記憶媒体とを備えるコンピュータシステムであって、当該プログラム命令は、
電子メッセージを受信することと、
前記受信した電子メッセージのメッセージインテントを決定することと、
前記受信した電子メッセージの内容とは異なるとともに、前記メッセージインテントに関連する、画像ベースのノイズを有する内容を生成することと、
前記電子通信システムを制御して、前記受信した電子メッセージの代わりに前記画像ベースのノイズを有する内容を提供するか、または、当該画像ベースのノイズを有する内容に加えて当該生成した電子メッセージを提供することと、
を実行するための命令を含む、コンピュータシステム。
【請求項20】
前記プログラム命令は、
前記1つ以上のプロセッサによって、前記電子メッセージのドメインを決定することと、
前記1つ以上のプロセッサによって、前記決定したドメインの1つ以上のテキストメッセージのセットおよび1つ以上の画像のセットを決定することと、を実行するための命令をさらに含み、
前記画像ベースのノイズを有する内容を生成することは、
前記テキストメッセージのセットから1つ以上のノイズを有する画像を生成することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有する画像である、ことと、
前記画像のセットからノイズを有するテキストを抽出することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有するテキストである、ことと
前記画像のセットおよび前記テキストメッセージのセットからノイズを有するマルチモーダルな内容を生成することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有するマルチモーダルな内容である、ことと
のいずれか1つを含む、請求項19に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、デジタルコンピュータシステムの分野に関し、より具体的には、電子メッセージング方法に関する。
【背景技術】
【0002】
ユーザまたはシステムの自動訓練またはテストは、現在、事前に定義された質問と回答のセットを用いて行われる。しかし、現実の世界では、情報は常に単純かつ構造化された方法で提供されるとは限らない。曖昧な情報やノイズが多く含まれていたり、必要な情報の一部しか含まれていなかったり、逆に情報が多すぎる場合もある。
【発明の概要】
【0003】
様々な実施形態において、独立請求項の主題によって記載される方法、コンピュータシステム、およびコンピュータプログラム製品が提供される。有利な実施形態は、従属請求項に記載される。本発明の実施形態は、相互に排他的でない場合、互いに自由に組み合わせることができる。
【0004】
一態様において、本発明は、電子メッセージングのためのコンピュータ実装方法であって、電子通信システムの電子メッセージであって、受信者のために決定されるメッセージを受信することと、前記受信した電子メッセージのメッセージインテントを決定することと、前記受信した電子メッセージの内容とは異なるとともに、前記メッセージインテントに関連する、画像ベースのノイズを有する内容を生成することと、前記電子通信システムを制御して、前記受信した電子メッセージの代わりに前記画像ベースのノイズを有する内容を前記受信者に提供するか、または、当該画像ベースのノイズを有する内容に加えて当該受信した電子メッセージを当該受信者に提供することと、を含む、コンピュータ実装方法に関する。
【0005】
別の態様において、本発明は、コンピュータ可読プログラムコードを実装したコンピュータ可読記憶媒体を含むコンピュータプログラム製品に関し、当該コンピュータ可読プログラムコードは、前述の実施形態に係る方法のすべてのステップを実施するように構成される。
【0006】
別の態様において、本発明は、電子メッセージを受信することと、前記受信した電子メッセージのメッセージインテントを決定することと、前記受信した電子メッセージの内容とは異なるとともに、前記メッセージインテントに関連する、画像ベースのノイズを有する内容を生成することと、前記電子通信システムを制御して、前記受信した電子メッセージの代わりに前記画像ベースのノイズを有する内容を提供するか、または、当該画像ベースのノイズを有する内容に加えて当該生成した電子メッセージを提供することと、を実行するために構成されたコンピュータシステムに関する。
【0007】
以下、本発明の実施形態を、以下の図面を参照しながら例示としてより詳細に説明する。
【図面の簡単な説明】
【0008】
【
図1A】本主題の一例に係るコンピュータシステムを示す図である。
【
図1B】チャットセッションの記録を示すウィンドウを示す図である。
【
図2】本主題の一例に係る方法のフローチャートである。
【
図3】本主題の一例に係る方法のフローチャートである。
【
図4】本主題の一例に係る方法のフローチャートである。
【
図5】本主題に係る、テキストと画像の埋め込み空間をリンクする方法を示す図である。
【
図6】本主題に係る、学習済み埋め込み空間をテストする方法を示す図である。
【
図7】本主題に係る、画像を生成する方法を示す図である。
【
図8】本開示に関係する方法ステップの少なくとも一部を実装するのに適した一般的なコンピュータ化システムを表す図である。
【発明を実施するための形態】
【0009】
本開示の様々な実施形態を例示として説明するが、網羅的であることや、開示する実施形態に限定することを意図したものではない。当業者には明らかなように、記載する各実施形態の範囲および主旨から逸脱することなく、多くの変更および変形が可能である。本明細書で用いられる用語は、各実施形態の原理、実際の用途、もしくは市場で確認される技術に対する技術的な改善を最もよく説明するために、または、他の当業者が本明細書に開示する各実施形態を理解できるように選択されたものである。
【0010】
メッセージングは、電子メール、SMS、アプリ内チャットなど、様々なデジタルチャネルを介して送信される書面による通信であってもよい。メッセージングは、適切な時間に関連情報を提供することができるため、有益となり得る。特に、適切な情報および頻度で実行されるメッセージングによって、電子通信システムのパフォーマンスが向上する場合がある。しかし、電子メッセージは、これらの記録を作成するために使用されるプラットフォーム、デバイス、およびシステムが増大しているため、管理が困難な場合がある。本主題は、電子メッセージの通信を制御および管理するための体系的な方法を提供するものであり、有益となり得る。これは特に、一部の機関においては、テキストやチャット/インスタントメッセージの使用が機関の任務達成に不可欠である場合があるため、有益となり得る。
【0011】
電子メッセージは、例えば、メッセージングセッション用のメッセージを生成するために、会話のログを読み取ることによって受信されてもよい。別の例では、電子メッセージは、例えば進行中のメッセージングセッション中に傍受(intercept)することによって受信されてもよい。傍受された電子メッセージは、例えば、メッセージングセッション中に提供されてもよい。メッセージングセッションは、リアルタイム形式または非リアルタイム形式でのテキスト、マルチメディア、もしくは音声またはその組み合わせを含む電子メッセージを交換することを含んでもよい。リアルタイム形式は、インスタントメッセージングまたはチャットを含んでもよく、非リアルタイム形式は、電子メールや、動的なフォーラムまたはフィードへの投稿などを含んでもよい。メッセージングセッションは、ユースケースに応じてコンテキストと関連付けられてもよい。例えば、メッセージングセッションは、チャットボットエージェントによるユーザの訓練またはテストのために、チャットボットエージェントとユーザとの間で実行されてもよい。この場合、電子メッセージは、質問と回答であってもよい。別の例では、メッセージングセッションは、複数のユーザのそれぞれのモバイルクライアントデバイス上で提供されるモバイルメッセージングアプリケーションを介して、複数のユーザ間で実行されてもよい。別の例では、メッセージングセッションは、ビデオまたは他のタイプのマルチメディアを含む、それぞれのユーザが様々なトピックを共有し議論するグループチャットを含むことができる。「チャットボット(chatbot/chat bot)」または「チャットエージェント(chat agent)」という用語は、主に世間話や訓練を行うために、聴覚的またはテキスト的な方法で1人以上の人間のユーザとの会話をシミュレートするように設計されたコンピュータプログラムを指す。このようなシミュレーションの目的は、エンドユーザに対して、プログラムの出力があたかも人間によって生成されたものであるかのように思い込ませることである。
【0012】
傍受/受信された電子メッセージは、画像ベースのノイズを有する内容(image based noisy content)を生成するために処理される。画像ベースのノイズを有する内容は、1つの内容であってもよい。当該内容は、画像を伴うとともに、メッセージインテントに関連するにすぎないインテントを有するため、画像ベースのノイズを有する内容と称される。例えば、当該内容は、1つ以上の画像を含んでもよいし、1つ以上の画像を使用して生成されてもよいし、その両方であってもよい。画像ベースのノイズを有する内容は、そのインテントがメッセージインテントのサブセットを構成するように生成されてもよい。ここで、当該サブセットは、メッセージインテントから重要なインテントを除外するか、またはメッセージインテントから重要ではないインテントを選択することによって得られる。メッセージインテントは、その重要度に基づいてランク付けされてもよい。メッセージインテントは、例えば、サブセットがK個(K≧1)の重要度の低いメッセージインテントで構成されるように、ナレッジグラフの中心性指標(centrality indices)に基づいてランク付けされてもよい。別の例では、メッセージインテントは、ユーザ入力に基づいてランク付けされてもよい。例えば、ユーザに対してメッセージインテントのランク付けを提供するように促して、ランク付けが受信されてもよい。
【0013】
例えば、画像ベースのノイズを有する内容は、例えば、チャットエージェントとユーザとの間の訓練セッションなどの既存の通信フローの向上に使用可能な1つ以上の画像を含んでもよい。訓練のユースケースの場合、画像ベースのノイズを有する内容は、不完全な情報を提供し、曖昧さを増すために紛らわしいインテントを追加し、もしくは、誤解を生じさせるようなインテントを傍受/受信された電子メッセージに追加し、またはこれらの組み合わせを行うことによって、所定の質問の難易度を高めるように生成されてもよい。特に、本主題は、例えば、最終的にアフターセールスサポートや製品の顧客サービスを提供することになる被訓練者や、医学知識を応用して仮想患者の症例を解決する上級医学生(senior medical student)をテスト/指導するために採用することができる。後者の場合、画像ベースのノイズを有する内容は、間違いが生じやすい医療診断、誤った検査結果、患者の画像/写真などの形態であってもよい。最終的な相互対話は、2人の人間エージェント(消費者とカスタマーサービスエージェントや、医師と患者)間の会話である場合があるため、チャットエージェントは、そのような人間の対話を模倣することができる会話チャットボットであってもよい。一例では、画像ベースのノイズを有する内容は、チャットボットの会話状況から特定されたコンテキストに基づく、ノイズを有するマルチモーダルな会話的発話(multimodal conversational utterance)を含んでもよい。マルチモーダルとは、テキストと画像の両方にわたって不一致(inconsistency)を導入することを指してもよい。
【0014】
また、データアクセス規則に従って機密情報を提供すべきではない通信システムの場合、傍受/受信された電子メッセージを処理して、データアクセス規則を満たさないインテントを特定し、マスク(mask)または除去してもよい。生成された画像ベースのノイズを有する内容は、受信した電子メッセージのマスクされていない情報(unmasked information)を含んでもよい。これにより、安全なデータ通信が可能となり得る。
【0015】
一実施形態によれば、本方法は、電子メッセージのドメインを決定することと、決定したドメインの1つ以上のテキストメッセージのセットおよび1つ以上の画像のセットを決定することと、をさらに含む。ここで、画像ベースのノイズを有する内容を生成することは、以下のいずれか1つを含む:
・テキストメッセージのセットから、1つ以上のノイズを有する画像を生成すること(ここで、画像ベースのノイズを有する内容は、当該ノイズを有する画像である)。
・画像のセットから、ノイズを有するテキストを抽出すること(ここで、画像ベースのノイズを有する内容は、当該ノイズを有するテキストである)。
・画像のセットおよびテキストメッセージのセットから、ノイズを有するマルチモーダルな内容を生成すること(ここで、画像ベースのノイズを有する内容は、当該ノイズを有するマルチモーダルな内容である)。
【0016】
ドメインは、生物学や政治など、世界の一部に属する概念やカテゴリーを表してもよい。ドメインは通常、ドメイン固有の用語の定義をモデル化する。例えば、ドメインは、ヘルスケア、広告、商業、医療、化学、物理、コンピュータサイエンス、石油・ガス、または輸送を指すことができる。電子メッセージのドメインは、例えば、自然言語処理技術を使用して決定されてもよい。テキストメッセージのセットおよび画像のセットは、例えば、テキストおよび画像上の会話的発話の履歴から得られてもよい。受信した電子メッセージと同じドメインのテキストおよび画像をより多く取得することで、電子メッセージのメッセージインテント間の違いをよりよく理解し、処理することが可能となり得る。テキストメッセージのセットからの画像の生成は、以下の実施形態で説明するように、埋め込み空間を使用して実行してもよい。
【0017】
一実施形態によれば、画像ベースのノイズを有する内容を生成することは、電子メッセージおよび画像を表現するための同時埋め込み空間(joint embedding space)を決定することと、テキストメッセージおよび所定の画像のセットを埋め込み空間に表現することと、埋め込み空間における画像のセットの表現とテキストメッセージの表現との間の類似度に基づいて、画像のセットをランク付けすることと、ランク付けに基づいて画像のセットのサブセットを選択することと、を含む。画像のサブセットは、ノイズを有する画像であってもよい。すなわち、テキストメッセージのインテントに類似してはいないが、テキストメッセージのメッセージインテントに関係するインテントを有していてもよい。埋め込み空間に表現されるテキストメッセージは、受信した電子メッセージであってもよい。別の例では、テキストメッセージは、電子メッセージに類似したメッセージであってもよい。例えば、テキストメッセージは、電子メッセージのメッセージインテントと等しいかまたは少ない数のインテントを有する。別の例では、テキストメッセージは、前述の実施形態におけるテキストメッセージのセットのうちの1つであってもよい。画像のセットは、例えば、スクリーンショットであってもよい。スクリーンショットは、例えば、ソフトウェアの一連の開発段階やデバイス監視の各段階などで撮影されたユーザインタフェースのものであってもよい。
【0018】
一実施形態によれば、画像のサブセットは、第2のk個のランク付けされた画像である(kは設定可能なパラメータの値)。例えば、画像のセットが10枚の画像であり、k=3の場合、画像のサブセットは、7位、6位、および5位にランク付けされた画像を含んでもよい。
【0019】
一実施形態によれば、本方法は、ノイズを有する内容の所望のノイズレベルに従って、パラメータkの値を設定することをさらに含む。ノイズは、例えば、ユーザベースのノイズであってもよいし、問題ベースのノイズであってもよい。ユーザベースのノイズは、例えば、年齢などのユーザの特性に基づいて決定されてもよい。例えば、パラメータkの値を大きくすることによって、熟練ユーザに対するノイズレベルを、通常ユーザに対するノイズレベルよりも高くしてもよい。問題ベースのノイズのレベルは、例えば、より紛らわしいインテントを追加したり、より重要なインテントを削除したりすることによって変更してもよい。ノイズのレベルは、例えば、生成されたマルチモーダルなノイズ(multimodal noise)がケースコンテキスト(case-context)に関連するように制御してもよい。例えば、ノイズが多すぎるデータは被訓練者を混乱させるかもしれないが、無関係なノイズでは訓練に役立たない可能性がある。したがって、この実施形態によれば、マルチモーダルな会話的発話がテキスト内容と画像内容との間の不一致を表現するように、ノイズを導入してもよい。また、この実施形態によれば、マルチモーダルな会話的発話が、画像/テキストまたはその両方の形態における不完全な情報を表現するように、ノイズを導入してもよい。例えば、チャットボットは、自動生成されたテキスト上の発話もしくは画像上の発話またはその両方、および被訓練者が過去のノイズを有する情報にどのように対処するかに応じて、マルチモーダルなノイズを動的に導入してもよい。これにより、ユーザの関与を向上できる可能性がある。
【0020】
一実施形態によれば、同時埋め込みは、シャムニューラルネットワーク(Siamese neural network)アーキテクチャに従って、画像とテキストを整合させるためにヒンジ損失を使用して学習される。シャムニューラルネットワークは、表現されたオブジェクトの意味的類似度を距離が表すように、埋め込みを生成することができる。
【0021】
一実施形態によれば、画像ベースのノイズを有する内容を生成することは、ナレッジグラフを使用して、メッセージインテントの関連インテントを決定することであって、当該ナレッジグラフは、インテントを表すエンティティを含む、ことと、画像の所定のセットから、関連インテントに関連し、かつメッセージインテントに関連しない画像のサブセットを抽出することであって、画像ベースのノイズを有する内容は、当該画像のサブセットである、ことと、を含む。
【0022】
画像のセットは、ナレッジグラフのノードによって表されてもよい。ナレッジグラフは、1つ以上のドメインオントロジー(domain ontology)を表してもよい。例えば、ナレッジグラフは、ソフトウェアもしくはハードウェアまたはその両方のバグ修正(bug fixing)のドメインを表してもよい。この場合、ナレッジグラフのノードは、例えば、インテント、画像、および解決策(resolution)を表してもよい。インテントは、例えば、特定のソフトウェア問題を表してもよい。例えば、インテントは、それぞれ、コンピュータの発熱およびコンピュータウイルスの存在による問題を示す「#heating」または「#virus」である。解決策は、ナレッジグラフのインテントで定義された問題に関連付けられる。例えば、インテント「#virus」に関連付けられる解決策は、「#install_antivirus」であってもよい。画像は、スタックトレース(stack trace)、エラーログ、関数呼び出し、またはコマンド出力を表してもよい。グラフ内の画像は、例えば、あるインテントに関連する問題を記述したログのスクリーンショットであってもよい。例えば、「#fan_noise」の画像は、インテント「#heating」に関連付けられていてもよい。本主題は、画像を正確に生成するためにナレッジグラフを利用することができるため、有益となり得る。
【0023】
ただし、ナレッジグラフのドメインは、複数のトピックをカバーするほどに広い場合がある。バグ問題の例を続けると、ナレッジグラフにおいて複数のトピックがカバーされる場合がある。例えば、オペレーティングシステムの問題が1つのトピックをカバーし、ディスプレイが別のトピックをカバーする、などの場合がある。これは、ナレッジグラフをクラスタ化することによって解決することができる。ナレッジグラフをクラスタ化し、複数のクラスタにしてもよい。あるクラスタは、例えば、ナレッジグラフのサブグラフによって表されてもよい。ここで、当該クラスタのデータは、特定のトピックを表す。クラスタは複数のサブクラスタを含んでもよい。ここで、あるサブクラスタは、一般的に発生するインテント、一般的に共起する(co-occurring)インテント、一般的に提案される解決策、推奨されない、または誤った解決策などを表してもよい。関連インテントは、例えば、同じクラスタに属するように決定されてもよい。
【0024】
ナレッジグラフは、グラフであってもよい。グラフは、データ値が特性としてノードおよびエッジ上に格納されるプロパティグラフ(property graph)を指してもよい。プロパティグラフは、グラフデータベース管理システムまたは他のデータベースシステムによって管理および処理されてもよい。これらのシステムは、プロパティグラフを例えば格納用のリレーショナルテーブルに変換するラッパ層(wrapper layer)を提供するとともに、読み出しまたはクエリ時には、リレーショナルテーブルをプロパティグラフへと戻す。グラフは、例えば、有向グラフ(directed graph)であってもよい。グラフは、ノード(頂点とも呼ばれる)およびエッジの集合であってもよい。グラフのエッジは、当該グラフのいずれか2つのノードを接続する。エッジは、順序付けされたノードのペア(v1、v2)によって表すことができ、ノードv1からノードv2へとトラバースすることができる。グラフにおけるあるノードは、あるエンティティを表してもよい。エンティティは、問題や解決策などを指してもよい。エンティティ(および対応するノード)は、値を割り当て可能な1つ以上のエンティティ属性(entity attribute)または特性を有してもよい。例えば、解決策のエンティティ属性は、その解決策が一般的に推奨される解決策であるか、推奨されない解決策であるかなどを示す属性を含んでもよい。ノードを表す属性値は、当該ノードによって表されるエンティティのエンティティ属性の値である。エッジには、当該エッジに接続された2つのノード間の関係を少なくとも示す1つ以上のエッジ属性値が割り当てられてもよい。エッジを表す属性値は、エッジ属性の値である。関係は、例えば、特定の階層に従った継承(inheritance)(例えば親子)関係もしくは連想関係(associative relationship)を含んでもよい。例えば、ノードv1とv2との間の継承関係を、v1とv2との間の「is-a関係(is-a relationship)」と呼ぶ場合がある。例えば、「v2はv1の親である(v2 is-a parent of v1)」などである。また、ノードv1とv2との間の連想関係を、v1とv2との間の「has-a関係(has-a relationship)」と呼ぶ場合がある。例えば、「v2はv1とhas-a関係を有している(v2 has a has-a relationship with v1)」などである。これは、v1がv2の一部であるか、v2の構成物であるか、またはv2に関連していることを意味する。
【0025】
一実施形態によれば、本方法は、電子メッセージを使用してメッセージングセッションのコンテキストを決定することであって、当該メッセージングセッションのコンテキストは、ナレッジグラフの少なくともサブグラフによって定義される、ことと、当該サブグラフを使用して、決定した当該コンテキストに属すとともにメッセージインテントとは異なるインテントとして関連インテントを決定することと、をさらに含む。「関連インテント(related intent)」と称されるインテントは、曖昧さを追加したり、紛らわしい情報を挿入したりするために使用することができる。言い換えれば、生成された画像の内容は、不完全な情報、曖昧な情報、または紛らわしい情報を提供してもよい。
【0026】
メッセージングセッションのコンテキストは、メッセージングセッションのトピックであってもよい。メッセージングセッションのトピックは、電子メッセージの内容を解析することによって決定されてもよい。解析は、例えば、データマイニング技術を使用して実行されてもよい。ナレッジグラフのサブグラフは、電子メッセージのトピックを共有することが想定されるインテントを含んでもよい。サブグラフのインテントは、傍受された電子メッセージのメッセージインテントを含んでもよい。サブグラフは、例えば中心性(centrality)を用いて、サブグラフのインテントを重要度に基づいてランク付けできるため、有利に使用することができる。
【0027】
一実施形態によれば、電子メッセージは、電子通信システムのチャットアプリケーションから傍受される。チャットアプリケーションは、メッセージングセッション中にユーザとの会話をシミュレートするように構成される。本方法は、メッセージングセッションの特定の時点においてチャットアプリケーションの電子メッセージを傍受することを含む。
【0028】
チャットアプリケーション(例えば、チャットボット)は、テキストまたはテキスト音声変換(text-to-speech)を介してオンラインチャット会話を行うために使用してもよい。例えば、チャットアプリケーションは、ユーザに対して質問を行うことによって、ユーザをテストまたは訓練するために使用してもよい。ユーザは、質問への回答を提供してもよい。電子メッセージは、例えば、質問のテキストで構成されてもよい。本実施形態は、本主題に従って電子メッセージ(例えば、質問)の修正または適合を行うことが必要なタイミングを制御することができるので、有益となり得る。
【0029】
新たな/修正された質問を生成する時点は、例えば、事前に定義されてもよいし、動的に決定されてもよい。例えば、当該時点は、ユーザ入力に基づいて動的に定義されてもよい。これにより、例えば、ユーザとの会話/訓練の異なる動作モードを使い分けることができる。例えば、簡単な訓練モードや難しい訓練モードを使用することができる。簡単な訓練モードでは、質問のごく一部(例えば、会話の最初)を修正することのみを考慮してもよいし、難しい動作モードでは、より多くの質問(例えば、会話の異なる段階)を変更してもよい。
【0030】
画像は、傍受された電子メッセージのインテントを変更することによって決定または生成されてもよい。この変更は、不完全な情報を提供するために傍受された電子メッセージのインテントを削除することによって、曖昧さを追加するために紛らわしいインテントを追加することによって、もしくは、傍受された電子メッセージに誤解を招くインテントを追加することによって、またはこれらの組み合わせを行うことによって実行されてもよい。
【0031】
一実施形態によれば、電子通信システムは、チャットクライアント間でメッセージを配信するように構成されたチャットサーバである。例えば、電子メッセージは配信される前に、本主題に従って傍受および処理される。
【0032】
一実施形態によれば、電子メッセージは、第1のチャットクライアントから第2のチャットクライアントを宛先として受信され、本方法は、受信された電子メッセージ中の機密情報を検出することをさらに含む。ここで、決定された画像のノイズを有する内容は、非機密情報を含み、決定された画像は、受信された電子メッセージの代わりに提供される。機密情報は、例えば、フルネームなどの個人情報を含んでもよい。
【0033】
一実施形態によれば、本方法は、コンピュータ関連のバグ修正のドメインを表すナレッジグラフを提供することをさらに含む。ナレッジグラフは、問題および解決策を表すエンティティを含む。メッセージインテントは、コンピュータ関連の技術的問題を表し、ナレッジグラフ内の解決策のセットに関連付けられる。画像を決定することは、ナレッジグラフを使用して、当該解決策のセットとは異なる解決策に関連付けられる、メッセージインテントの関連インテントを決定することを含む。本方法は、画像の所定のセットから、当該関連インテントに関連付けられ、かつメッセージインテントに関連付けられない画像のサブセットを抽出することをさらに含む。
【0034】
一実施形態によれば、本方法は、過去のデータ通信の通信記録(communication transcript)もしくはログまたはその両方を使用してナレッジグラフを作成することと、ナレッジグラフの1つ以上のグラフ特性に従って、ナレッジグラフのインテントをクラスタ化することとをさらに含む。グラフ特性は、グラフにおける各ノードの中心性指標、およびグラフにおける各ノードから他のノードへの距離のうちのいずれか1つを含む。
【0035】
図1Aは、本主題の一例に係るコンピュータシステム100を示す図である。コンピュータシステム100は、エージェントコンピュータ105を含む。エージェントコンピュータ105は、電子通信システムであってもよい。コンピュータシステム100は、電子通信コントローラ101を含む。電子通信コントローラ101は、チャットリンク103に接続され、会話またはチャットセッション中にユーザ102とエージェントコンピュータ105との間で送信される各連続メッセージ(successive message)を受信する。リンク103は、エージェントコンピュータ105をユーザ102のリモートユーザコンピュータに接続してもよいし、エージェントコンピュータ105のディスプレイデバイスへのリンクであってもよい。リンク103は、インターネットまたは他のデータチャネルを介して設定されてもよい。リンク103によって、ユーザ102とエージェントコンピュータ105との間で交換されるテキストメッセージのストリームを含む会話またはチャットを可能にしてもよい。
【0036】
ユーザ102の連続メッセージは、エージェントコンピュータ105の解析ユニット106にて受信される。解析ユニット106は、エージェントコンピュータ105とのチャットの主題であるユーザ102の問題または問い合わせを決定するために、メッセージを解析する機能を実行する。メッセージがテキスト形式である場合、解析ユニット106は、この機能を実行するために、テキスト解析機能を備える。解析ユニット106の機能は、ユーザ102がエージェントコンピュータ105からの質問に対して提供した具体的な応答を特定するためのプロセスの一部であってもよい。
【0037】
エージェントコンピュータ105は、解析ユニット106からの入力を受信する質問ビルダ(question builder)116を含む。質問ビルダ116は、これらの入力(例えば、チャットボット)を使用して、リクエストまたは質問を構築または構成する。リクエストとは、ある問題に関連する目標のステートメントであり、ユーザ102は、この問題に対する解決策を提供する必要がある。質問ビルダ116はまた、例えばユーザ102との会話を開始するために、解析ユニットから入力を受信することなく、リクエストを生成してもよい。質問ビルダ116によって生成されたメッセージもしくはユーザ102から受信したメッセージまたはその両方は、リンク103を介して電子通信コントローラ101に入力として傍受または提供されてもよい。電子通信コントローラ101は、本主題に従って傍受されたメッセージを修正するための情報源として、ナレッジグラフ118もしくは画像のセット120またはその両方を使用してもよい。
【0038】
ユーザ102とエージェントコンピュータ105との間で交換されたメッセージは、
図1Bに示すように、ウィンドウ130上に表示されてもよい。ウィンドウ130は、ユーザ102がエージェントコンピュータ105に直接触れている場合はエージェントコンピュータ105のユーザインタフェース上に表示されてもよいし、あるいは、ユーザ102のリモートユーザコンピュータ上に表示されてもよい。
【0039】
図1Bは、ユーザ102とエージェントコンピュータ105との間のチャットメッセージのタイムラインビューの一例を示している。チャットセッションの記録を示すウィンドウ130は、メッセージを表示するための第1の表示領域131と、チャットメッセージのタイムスタンプを表示するための第2の表示領域133とを含む。メッセージはそれぞれのタイムスタンプと整列している。
図1Bに示す例では、エージェントコンピュータ105は、メッセージ135.1~135.nを提供してもよい。各メッセージは、ユーザ102への質問であってもよい。一例において、質問は、質問の項目に関連する画像によって補足されてもよい。別の例において、質問は画像として提供されてもよい。ユーザ102は、対応する応答メッセージ136.1~136.nを提供してもよい。
【0040】
なお、別個のコンポーネントとして示しているが、別の例において、電子通信コントローラ101は、エージェントコンピュータ105の一部であってもよい。
【0041】
図2は、本主題の一例に係る方法のフローチャートである。説明の便宜上、
図2に記載の方法は、
図1Aに例示したシステムにおいて実装されてもよいが、この実装形態に限定されるものではない。
図2の方法は、例えば、電子通信コントローラ101によって実行されてもよい。
【0042】
ステップ201にて、電子通信システム105によって例えばユーザまたは受信者に提供される電子メッセージが受信または特定されてもよい。電子メッセージは、会話のログファイルから読み出されてもよいし、電子通信コントローラ101によって傍受されてもよい。電子メッセージは、例えば、送信側コンピュータから電子通信システム105である受信側コンピュータに送信されるメッセージであってもよい。電子メッセージは、例えば、電子通信システム105からの発信メッセージであってもよい。この場合、電子通信コントローラ101は、電子通信システム105から送信される前にこの電子メッセージを傍受するように構成されてもよい。電子メッセージが電子通信システム105への着信メッセージである場合、電子通信コントローラ101は、電子通信システム105の受信側アプリケーションに提供される前にこの受信電子メッセージを傍受するように構成されてもよい。別の例では、電子メッセージは、電子通信システム105のアプリケーションによって生成され、電子通信システム105のインタフェース上に表示されるメッセージであってもよい。この場合、電子通信コントローラ101は、表示される前にこの電子メッセージを傍受するように構成されてもよい。電子通信コントローラ101は、電子通信システム105の一部であってもよいし、そうでなくてもよい。
【0043】
電子メッセージは、いずれのタイプの電子通信データ構造であってもよい。電子メッセージは、例えば、電子メール、インスタントメッセージ、音声メッセージ、またはテキストメッセージであってもよい。電子メッセージは、会話におけるメッセージであってもよい。電子メッセージは、会話におけるチャットメッセージの1つであってもよい。会話は、チャットエージェントと1人以上のユーザとの間で送信される一連のメッセージであってもよい。電子メッセージは、例えば、会話における最初のチャットメッセージであってもよいし、会話におけるランダムに選択された電子メッセージであってもよい。別の例では、電子メッセージは、会話における選択されたチャットメッセージであってもよい。選択は、選択基準に基づいて実行されてもよい。選択基準は、例えば、ユーザによる正解後に、修正対象のメッセージが受信されることを求めるものであってもよい。
【0044】
ステップ203にて、受信または傍受された電子メッセージのインテントが決定されてもよい。決定されたインテントを、メッセージインテントと称してもよい。メッセージインテントとは、例えば、質問またはコメントを提供する際にチャットボットエージェントが念頭に置く(has in mind)目標を指してもよい。インテントの分類は、テキストを特定の目的または目標に自動的に関連付けることであってもよい。メッセージインテントは、例えば、分類器によって決定されてもよい。分類器は、テキストの断片を分析し、これらを「コンピュータウイルス」、「発熱」などのインテントに分類してもよい。インテント分類器は、例えば、単語や表現を特定のインテントに関連付けることができる機械学習アルゴリズムを使用してもよい。
【0045】
ステップ205にて、画像ベースのノイズを有する内容が生成されてもよい。画像ベースのノイズを有する内容は、受信した電子メッセージの内容とは異なる、ノイズを有する内容を含む。受信した電子メッセージの内容とは異なるが、画像ベースのノイズを有する内容は、メッセージインテントに関連する。画像ベースのノイズを有する内容は、例えば、1つ以上の画像であってもよい。別の例では、画像ベースのノイズを有する内容は、1つ以上の画像から得られたテキストを含んでもよい。
【0046】
例えば、画像ベースのノイズを有する内容は、変分オートエンコーダ(VAE:variational autoencoder)を使用して生成されてもよい。そのために、過去に使用されたテキストメッセージのデータベースを使用して、受信した電子メッセージと同じドメインを有するが、受信した電子メッセージのメッセージインテントとは異なるインテントを有するテキストメッセージを特定してもよい。1つ以上の画像を生成するために、これらの特定されたテキストメッセージをVAEへの入力として使用してもよい。
【0047】
ステップ207にて、生成された画像ベースのノイズを有する内容が提供されてもよい。一例として、生成された画像ベースのノイズを有する内容が、傍受された電子メッセージの代わりに提供されてもよい。例えば、傍受された電子メッセージが、コンピュータのインタフェース上に表示されるものであった場合、生成された画像ベースのノイズを有する内容がその代わりに表示されてもよい。別の例では、生成された画像ベースのノイズを有する内容が、傍受された電子メッセージに加えて提供されてもよい。例えば、傍受された電子メッセージが、コンピュータのインタフェース上に表示されるものであった場合、生成された画像ベースのノイズを有する内容が、(チャットフローにおいて)傍受された電子メッセージの表示前または表示後に表示されてもよい。これにより、電子メッセージのテキストを、次の発話において、生成された曖昧な画像のいずれかとともに提示することが可能になる。
【0048】
生成された画像ベースのノイズを有する内容を提供した後、生成された内容をユーザがノイズとして特定したかどうかを判断してもよい。ユーザが当該内容をノイズとして特定しなかった場合、電子通信コントローラ101は、簡単な動作モードに従って、ノイズを有する内容をさらに提供することを停止してもよい。別の例では、電子通信コントローラは、難しい動作モードに従って、ユーザが最終的に会話中のノイズを特定できるかどうかを確認するために、短時間この状態を持続してもよい。
【0049】
図3は、本主題の一例に係る、画像を生成する方法のフローチャートである。説明の便宜上、
図3に記載の方法は、
図1Aに例示したシステムにおいて実装されてもよいが、この実装形態に限定されるものではない。
図3の方法は、例えば、電子通信コントローラ101によって実行されてもよい。
【0050】
ステップ301にて、メッセージインテントの関連インテントが決定されてもよい。例えば、ナレッジグラフを使用して、メッセージインテントに関連するインテントのセットを発見してもよい。
【0051】
ステップ303にて、関連インテントに関連付けられ、かつメッセージインテントに関連付けられない画像をナレッジベースから抽出してもよい。抽出された画像は、例えば、ステップ205で決定された画像ベースのノイズを有する内容であってもよい。例えば、関連セットY内に存在するが、画像セットX内には存在しないインテントにタグ付けされた画像が抽出されてもよい。これらの画像は、傍受された電子メッセージ内には存在しないが、それらに関連するインテントに対応する。これらの画像によって、曖昧さを導入してもよい。
【0052】
図4は、本主題の一例に係る方法のフローチャートである。説明の便宜上、
図4に記載の方法は、
図1Aに例示したシステムにおいて実装されてもよいが、この実装形態に限定されるものではない。
図4の方法は、例えば、電子通信コントローラ101によって実行されてもよい。
図4の方法は、ステップ205の更なる詳細を提供するものである。すなわち、
図4の方法は、ステップ205にて画像に基づくノイズを有する内容を決定するために使用されてもよい。
【0053】
ステップ401にて、同時埋め込み空間が決定されてもよい。同時埋め込み空間は、電子メッセージおよび画像を表現してもよい。
【0054】
ステップ403にて、(ステップ201で受信された)電子メッセージおよび所定の画像のセットが、埋め込み空間に表現されてもよい。
【0055】
ステップ405にて、埋め込み空間における画像のセットの表現と電子メッセージの表現との間の類似度に基づいて、画像のセットがランク付けされてもよい。
【0056】
ステップ407にて、ランク付けに基づいて、画像のセットのサブセットが選択されてもよい。
図4の方法は、例えば、同時埋め込みを使用して、テキストとの類似度によってすべての画像をランク付けすることができる。このランク付けにおける上位k個の画像は、テキストに直接関連する。曖昧さを導入するために、次のk個の画像が選択される。これらの画像は、多少の関連性はあるが、テキストtのコンテキストにおいて完全に有用ではなく、曖昧さをもたらすことになる。kの値は微調整可能である。
【0057】
図5は、本主題に係る、テキストと画像の埋め込み空間をリンクする方法を示す図である。画像とテキストの関係を特定するために、シャムネットワーク(Siamese network)500を訓練してもよい。画像はCNNベースのエンコーダによって解析され、テキスト記述はBERTベースの変換器によって解析される。シャムネットニューラルワークアーキテクチャに従って画像とテキストを整合させるために、ヒンジ損失(hinge loss)を用いて同時埋め込みが学習される。シャムネットワーク500は、ラベル付けされたデータセットを用いて訓練される。ラベル付けされたデータセットは、エントリで構成される。各エントリは、画像(スクリーンショットなど)、関連する問題テキストまたはランダムな問題テキスト、およびラベルからなるトリプレットで構成される。問題テキストがランダムなものでない場合、ラベルを1に設定し、そうでない場合、ラベルを0に設定してもよい。
【0058】
図6は、本主題に係る、学習済み埋め込み空間をテストする方法を示す図である。ある会話における1つ以上の過去のメッセージ601が、埋め込み空間に表現されてもよい(606)。さらに、同時埋め込み空間において、1つの現在のメッセージ604および関連する生成画像605が表現されてもよい(607)。2つの表現間の類似度608が決定され、それに応じて損失関数が評価されてもよい(609)。決定された損失に基づいて、生成された画像によって訓練が向上したかどうかが決定されてもよい(610)。
【0059】
図7は、本主題に係る、画像ベースのノイズを有する内容を生成する方法を示す図である。
図7の方法は、画像ベースのノイズを有する内容を生成する代替的な方法を提供するものである。
【0060】
入力700が提供されてもよい。入力700は、ユーザが入力に対して回答またはフィードバックを提供できるように、最初にユーザに提供されることが意図される。入力700は、例えば、SMEが作成した仮想の顧客苦情(virtual customer complaint)を示してもよい。入力は、例えば、苦情に関連する電子メッセージT0および画像I0を含んでもよい。例えば、画像I0は、端末ログのスクリーンショットであってもよく、電子メッセージT0は、ログに記載された問題に関する質問であってもよい。本方法は、ユーザのテストをより良く行えるように、入力を変更する(例えば、質問/苦情をより難しくする)ことを可能にすることができる。
【0061】
ステップ701にて、電子メッセージT0のテキスト解析が実行されてもよい。テキスト解析は、電子メッセージT0のインテントおよび関係を決定するために実行されてもよい。テキスト解析は、例えば、テキスト上の会話的発話の履歴720を使用して実行されてもよい。ステップ702にて、画像I0の画像解析が実行されてもよい。画像解析は、画像I0のインテントおよび関係を決定するために実行されてもよい。画像解析は、例えば、画像上の会話的発話の履歴720を使用して実行されてもよい。ステップ701および702は、入力の入力インテント(input intent)を提供してもよく、さらに、例えば、それらの重要度に基づいて、入力インテントのランク付けを提供してもよい。ステップ704にて、決定されたインテントおよびナレッジグラフを使用して、苦情に対する可能な解決策が特定されてもよい。
【0062】
ステップ705~706は、ステップ701~704の結果に基づいて画像ベースのノイズを有する内容を生成する第1の方法を提供する。ステップ705~708は、ステップ701~704の結果に基づいて画像ベースのノイズを有する内容を生成する第2の方法を提供する。ステップ711は、ステップ701~704の結果に基づいて画像ベースのノイズを有する内容を生成する第3の方法を提供する。ステップ712は、ステップ701~ステップ704の結果に基づいて画像ベースのノイズを有する内容を生成する第4の方法を提供する。ステップ713は、ステップ701~ステップ704の結果に基づいて画像ベースのノイズを有する内容を生成する第5の方法を提供する。
【0063】
第1の方法は、入力に不完全性(incompleteness)を導入するために、入力を変更することを可能にすることができる。そのために、ステップ705にて、入力から削除(drop)可能な入力インテントが特定されてもよい。そのために、ステップ706にて、入力のドメインおよびコンテキストに基づいて、さらに画像メタデータに基づいて、画像上の会話的発話に対して画像解析が実行されてもよい。例えば、ナレッジグラフを使用して、入力から削除するインテントを発見してもよい。例えば、画像上の会話的発話を使用して、入力におけるどのインテントが入力における他のインテントよりも重要であるかを決定してもよい。これらの重要なインテントが、削除対象のインテントであってもよい。例えば、入力が10個のインテントを有している場合、10個のインテントのうちの1個または2個のインテントを表す内容を入力から削除し、その結果得られた/残りの入力を、不完全な入力としてユーザに提供してもよい。これらの特定した削除対象のインテントは、様々なシナリオで利用される。第1のシナリオでは、画像I0の内容および画像解析の結果を使用して、新たなテキストメッセージが生成されてもよい。例えば、新たなテキストメッセージは、削除対象のインテントを表す内容を除く、画像I0の内容を含んでもよい。第2のシナリオでは、入力テキストT0の内容と、テキスト上の会話的発話に対して実行されるテキスト解析(ステップ708)の結果とを使用して、新たな画像が生成されてもよい。テキスト解析(708)により、ナレッジグラフを使用して、入力テキストT0のインテントのうち、ノイズを有するインテント(例えば、重要でないインテント)を特定することを可能にしてもよい。新たな画像は、これらのノイズを有するインテントを表す入力テキストT0の内容を含んでもよい。第3のシナリオでは、画像I0およびテキストT0の内容を使用して、新たなテキストメッセージおよび新たな画像が生成されてもよい。新たなテキストもしくは新たな画像またはその両方は、重要でないインテントのみを表すコンテンツを含んでもよい。この新たな画像もしくは新たなテキストメッセージまたはその両方は、入力の代わりに不完全な入力としてユーザに提供されてもよい。
【0064】
第2の方法は、VAEを使用して、ノイズを有する画像を生成することを可能にすることができる。そのために、ステップ707にてノイズを有する画像を生成するために、入力画像I0および特定された削除対象のインテントが、VAEへの入力として提供されてもよい。例えば、VAEは、画像I0と、削除する必要があるインテントを画像I0から特定することによって抽出されたコンテキスト情報とを取り込む。このノイズを有する画像は、ユーザへの入力に加えて提供されてもよいし、入力の代わりに提供されてもよい。
【0065】
第3の方法は、誤解を招く情報(misleading information)をユーザに提供することを可能にすることができる。そのために、ステップ711にて、VAEを使用して、テキスト上の会話的発話に関連付けられたテキストメタデータに基づいて、入力の画像にノイズを挿入してもよい。VAEは、画像I0と、ノイズとして追加する必要があるインテントをテキストメッセージT0から特定することによって抽出されたコンテキスト情報とを取り込む。
【0066】
第4の方法は、誤解を招く情報をユーザに提供することを可能にすることができる。そのために、ステップ712にて、画像上の会話的発話に関連付けられた画像メタデータに基づいて、誤解を招くスニペットを入力のテキストメッセージT0に挿入してもよい。
【0067】
第5の方法は、ステップ713にて、テキストおよび画像上の会話的発話のテキストおよび画像メタデータを使用して、入力に不一致を導入することを可能にすることができる。例えば、入力画像I0およびテキストメッセージT0から、新たな画像および新たなテキストメッセージが生成されてもよい。
【0068】
このように、第1~第5の方法のいずれも、ステップ714にて、ノイズを有する会話的発話715をユーザに提供することを可能にすることができる。
【0069】
図8は、本開示に関係する方法ステップの少なくとも一部を実装するのに適した一般的なコンピュータ化システム900を表す図である。
【0070】
本明細書に記載の方法は、少なくとも部分的には非対話型(non-interactive)であり、サーバや組み込みシステムなどのコンピュータ化システムによって自動化されることを理解されたい。ただし、例示的な実施形態において、本明細書に記載の方法は、(部分的に)対話型システムで実装可能である。これらの方法は、さらに、ソフトウェア912、922(ファームウェア922を含む)、ハードウェア(プロセッサ)905、またはこれらの組み合わせで実装可能である。例示的な実施形態において、本明細書に記載の方法は、実行可能プログラムとしてソフトウェアで実装され、パーソナルコンピュータ、ワークステーション、ミニコンピュータ、またはメインフレームコンピュータなどの専用または汎用デジタルコンピュータによって実行される。したがって、最も一般的なシステム900は、汎用コンピュータ901を含む。
【0071】
例示的な実施形態において、ハードウェアアーキテクチャの観点からは、
図8に示すように、コンピュータ901は、プロセッサ905と、メモリコントローラ915に結合されたメモリ(メインメモリ)910と、ローカル入力/出力コントローラ935を介して通信可能に結合された1つ以上の入力もしくは出力またはその両方の(I/O)デバイス(または周辺機器)10、945とを含む。入力/出力コントローラ935は、特に限定されないが、当技術分野で知られているように、1つ以上のバスまたは他の有線もしくは無線接続とすることができる。図面を簡単化するために省略されているが、入力/出力コントローラ935は、通信を可能にするための追加の要素、例えばコントローラ、バッファ(キャッシュ)、ドライバ、リピータおよび受信器を含んでもよい。さらに、ローカルインタフェースは、上記のコンポーネント間の適切な通信を可能にするために、アドレス接続、制御接続もしくはデータ接続またはその組み合わせを含んでもよい。本明細書に記載するように、I/Oデバイス10、945は一般に、当技術分野で既知の任意の汎用型暗号カードまたはスマートカードを含んでもよい。
【0072】
プロセッサ905は、ソフトウェア、具体的にはメモリ910に記憶されているソフトウェアを実行するためのハードウェアデバイスである。プロセッサ905は、任意の特注または市販のプロセッサ、中央処理装置(CPU)、コンピュータ901に付随する複数のプロセッサのうちの補助プロセッサ、半導体ベースの(マイクロチップまたはチップセット型の)マイクロプロセッサ、または一般にソフトウェア命令を実行するための任意のデバイスとすることができる。
【0073】
メモリ910は、揮発性メモリ要素(例えば、ランダムアクセスメモリ(DRAM、SRAM、SDRAMなどのRAM))、および不揮発性メモリ要素(例えば、ROM、消去可能プログラマブルROM(EPROM)、電気的消去可能プログラマブルROM(EEPROM)、プログラマブルROM(PROM))のうちのいずれか1つまたはいずれかの組み合わせを含むことができる。なお、メモリ910は、様々なコンポーネントが互いに遠隔に位置しながらプロセッサ905によってアクセス可能な、分散アーキテクチャを有することができる。
【0074】
メモリ910内のソフトウェアは、1つ以上の別個のプログラムを含んでもよく、これらのプログラムの各々は、論理機能、特に本発明の実施形態に関わる機能を実装するための実行可能命令の順序付けられたリストを含む。
図8の例では、メモリ910内のソフトウェアは、データベース管理システムなどのデータベースを管理するための命令などの命令912を含む。
【0075】
メモリ910内のソフトウェアは、一般的には、適切なオペレーティングシステム(OS)911も含む必要がある。OS911は、場合によっては本明細書に記載の方法を実装するためのソフトウェア912など、他のコンピュータプログラムの実行を本質的に制御する。
【0076】
本明細書に記載の方法は、ソースプログラム912、実行可能プログラム912(オブジェクトコード)、スクリプト、または、実行対象の命令912のセットを含む任意の他の実体の形態であってもよい。ソースプログラムの場合、プログラムは、OS911に関連して適切に動作するように、コンパイラ、アセンブラ、インタプリタなどによって変換される必要がある。これらは、メモリ910内に含まれていてもよいし、含まれていなくてもよい。また、方法は、データおよびメソッドのクラスを有するオブジェクト指向プログラミング言語として、または、ルーチン、サブルーチン、もしくは関数またはその組み合わせを有する手続き型プログラミング言語として記述することができる。
【0077】
例示的な実施形態において、従来のキーボード950およびマウス955を入力/出力コントローラ935に結合することができる。I/Oデバイス945などの他の出力デバイスは、入力デバイスを含むことができる。入力デバイスは、特に限定されないが、例えばプリンタ、スキャナ、マイクロフォンなどである。最後に、I/Oデバイス10、945は、入力と出力の両方を伝達するデバイスをさらに含んでもよい。これらのデバイスは、特に限定されないが、例えば、(他のファイル、デバイス、システムまたはネットワークにアクセスするための)ネットワークインタフェースカード(NIC)または変調器/復調器、無線周波数(RF)または他の送受信器、電話インタフェース、ブリッジ、ルータなどである。I/Oデバイス10、945は、当技術分野で既知の任意の汎用型暗号カードまたはスマートカードであってもよい。システム900は、ディスプレイ930に結合されたディスプレイコントローラ925をさらに含むことができる。例示的な実施形態において、システム900は、ネットワーク965に結合するためのネットワークインタフェースをさらに含むことができる。ネットワーク965は、ブロードバンド接続を介したコンピュータ901と任意の外部サーバ、クライアント等との間の通信のためのIPベースのネットワークとすることができる。ネットワーク965は、コンピュータ901と外部システム30との間でデータを送受信する。外部システム30は、本明細書に記載の方法のステップの一部または全部の実行に関与することができる。例示的な実施形態において、ネットワーク965は、サービスプロバイダによって管理されるマネージドIPネットワークとすることができる。ネットワーク965は、例えば、WiFi(登録商標)、WiMax(登録商標)などの無線プロトコルおよび技術を使用して無線方式で実装されてもよい。また、ネットワーク965は、ローカルエリアネットワーク、ワイドエリアネットワーク、メトロポリタンエリアネットワーク、インターネットネットワーク、または他の同様のネットワーク環境などのパケット交換網とすることもできる。ネットワーク965は、固定無線ネットワーク、無線ローカルエリアネットワーク(WLAN)、無線ワイドエリアネットワーク(WWAN)、パーソナルエリアネットワーク(PAN)、仮想プライベートネットワーク(VPN)、イントラネット、または他の適切なネットワークシステムであってもよく、信号を送受信するための装置を含む。
【0078】
コンピュータ901が、PC、ワークステーション、インテリジェントデバイスなどである場合、メモリ910内のソフトウェアは、基本入出力システム(BIOS)922をさらに含んでもよい。BIOSは、起動時にハードウェアを初期化してテストし、OS111を起動させ、ハードウェアデバイス間のデータ転送をサポートする基本的なソフトウェアルーチンのセットである。BIOSは、コンピュータ901の起動時に実行できるようにROMに記憶される。
【0079】
コンピュータ901の動作中、プロセッサ905は、メモリ910内に記憶されているソフトウェア912を実行し、メモリ910との間でデータを通信し、ソフトウェアに従ってコンピュータ901の動作を全般的に制御するように構成される。本明細書に記載の方法およびOS911は、そのすべてまたは一部、典型的には後者が、プロセッサ905によって読み出され、場合によってはプロセッサ905内でバッファリングされてから、実行される。
【0080】
本明細書に記載のシステムおよび方法が
図8に示すようにソフトウェア912で実装される場合、方法は、任意のコンピュータ関連システムまたは方法によって、またはそれらに関連して使用するために、ストレージ920などの任意のコンピュータ可読媒体に記憶することができる。ストレージ920は、HDDストレージなどのディスクストレージを含んでもよい。
【0081】
本主題は、以下の条項を含んでもよい。
【0082】
第1項:電子メッセージングのためのコンピュータ実装方法であって、
電子通信システムの電子メッセージであって、受信者のために決定されるメッセージを受信することと、
前記受信した電子メッセージのメッセージインテントを決定することと、
前記受信した電子メッセージの内容とは異なるとともに、前記メッセージインテントに関連する、画像ベースのノイズを有する内容を生成することと、
前記電子通信システムを制御して、前記受信した電子メッセージの代わりに前記画像ベースのノイズを有する内容を前記受信者に提供するか、または、当該画像ベースのノイズを有する内容に加えて当該受信した電子メッセージを当該受信者に提供することと、
を含む、コンピュータ実装方法。
【0083】
第2項:前記電子メッセージのドメインを決定することと、
前記決定したドメインの1つ以上のテキストメッセージのセットおよび1つ以上の画像のセットを決定することと、をさらに含み、
前記画像ベースのノイズを有する内容を生成することは、
前記テキストメッセージのセットから1つ以上のノイズを有する画像を生成することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有する画像である、ことと、
前記画像のセットからノイズを有するテキストを抽出することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有するテキストである、ことと
前記画像のセットおよび前記テキストメッセージのセットからノイズを有するマルチモーダルな内容を生成することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有するマルチモーダルな内容である、ことと
のいずれか1つを含む、第1項に記載の方法。
【0084】
第3項:前記画像のセットおよびテキストメッセージのセットは、それらのインテントが前記メッセージインテントの一部に関連するように決定される、第2項に記載の方法。
【0085】
第4項:前記画像ベースのノイズを有する内容を生成することは、
電子メッセージおよび画像を表現するための同時埋め込み空間を決定することと、
テキストメッセージおよび所定の画像のセットを前記埋め込み空間に表現することであって、当該テキストメッセージは、前記電子メッセージ、または前記メッセージインテントの少なくとも一部であるインテントを有する別のメッセージである、ことと、
前記埋め込み空間における前記画像のセットの表現と前記テキストメッセージの表現との間の類似度に基づいて、当該画像のセットをランク付けすることと、
前記ランク付けに基づいて、前記画像のセットから1つ以上のノイズを有する画像のサブセットを選択することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有する画像を含む、ことと
を含む、上記第1~第3項のいずれかに記載の方法。
【0086】
第5項:前記ノイズを有する画像のサブセットは、第2のk個のランク付けされた画像(kは設定可能なパラメータの値)である、第4項に記載の方法。
【0087】
第6項:前記ノイズを有する内容の所望のノイズレベルに応じて、前記パラメータkの値を設定することをさらに含む、第5項に記載の方法。
【0088】
第7項:前記同時埋め込みは、シャムニューラルネットワークアーキテクチャに従って、画像とテキストを整合させるためにヒンジ損失を使用して学習される、上記第4項~第6項のいずれかに記載の方法。
【0089】
第8項:前記画像ベースのノイズを有する内容を生成することは、
ナレッジグラフを使用して、前記メッセージインテントの関連インテントを決定することであって、当該ナレッジグラフは、インテントを表すエンティティを含む、ことと、
所定の画像のセットから、前記関連インテントに関連付けられ、かつ前記メッセージインテントに関連付けられない画像のサブセットを抽出することであって、前記画像ベースのノイズを有する内容は、当該画像のサブセットを含む、ことと、
を含む、上記第1項~第3項のいずれかに記載の方法。
【0090】
第9項:前記電子メッセージを使用して、メッセージングセッションのコンテキストを決定することであって、当該メッセージングセッションの当該コンテキストは、前記ナレッジグラフの少なくともサブグラフによって定義される、ことと、
前記サブグラフを使用して、前記決定したコンテキストに属し、かつ前記メッセージインテントに関連付けられるインテントとして、前記関連インテントを決定することと、
をさらに含む、第8項に記載の方法。
【0091】
第10項:前記画像ベースのノイズを有する内容を生成することは、
ナレッジグラフを使用して、前記メッセージインテントの関連インテントを決定することであって、当該ナレッジグラフは、インテントを表すエンティティを含む、ことと、
前記関連エンティティに対して変分オートエンコーダを使用して画像を生成することであって、前記画像ベースのノイズを有する内容は、当該生成した画像を含む、ことと、
を含む、上記第1項~第3項のいずれかに記載の方法。
【0092】
第11項:前記電子メッセージは、前記電子通信システムのチャットアプリケーションから傍受され、当該チャットアプリケーションは、メッセージングセッション中のユーザとの会話をシミュレートするように構成され、前記受信することは、当該メッセージングセッションの所定の時点で当該チャットアプリケーションのメッセージを傍受することを含む、上記第1項~第10項のいずれかに記載の方法。
【0093】
第12項:前記電子通信システムは、チャットクライアント間でメッセージを配信するように構成されたチャットサーバである、上記第1項~第11項のいずれかに記載の方法。
【0094】
第13項:前記電子メッセージは、第1のチャットクライアントから第2のチャットクライアントを宛先として受信され、前記方法は、前記受信した電子メッセージ中の機密情報を検出することをさらに含み、前記決定した画像の前記ノイズを有する内容は、非機密情報を含み、前記決定した画像は、当該受信した電子メッセージの代わりに提供される、第12項に記載の方法。
【0095】
第14項:コンピュータ関連のバグ修正のドメインを表すナレッジグラフを提供することであって、当該ナレッジグラフは、問題および解決策を表すエンティティを含み、前記メッセージインテントは、コンピュータ関連の技術的問題を表すとともに、当該ナレッジグラフ内の解決策のセットに関連付けられる、ことをさらに含み、
前記画像を決定することは、
前記ナレッジグラフを使用して、前記メッセージインテントの関連インテントを決定することであって、当該関連インテントは、前記解決策のセットとは異なる解決策に関連付けられる、ことと、
所定の画像のセットから、前記関連インテントに関連付けられ、かつ前記メッセージインテントに関連付けられない画像のサブセットを抽出することと、
を含む、上記第1項~第13項のいずれかに記載の方法。
【0096】
第15項:過去のデータ通信の通信記録もしくはログまたはその両方を用いて前記ナレッジグラフを作成することと、
前記ナレッジグラフの1つ以上のグラフ特性に従って当該ナレッジグラフのインテントをクラスタ化することであって、当該グラフ特性は、当該グラフにおける各ノードの中心性指数、および当該グラフにおける各ノードから他のノードへの距離のうちのいずれか1つを含む、ことと、
をさらに含む、第14項に記載の方法。
【0097】
本発明は、任意の可能な技術詳細レベルで統合されたシステム、方法もしくはコンピュータプログラム製品またはそれらの組み合わせとすることができる。コンピュータプログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を記憶したコンピュータ可読記憶媒体を含んでもよい。
【0098】
コンピュータ可読記憶媒体は、命令実行デバイスによって使用される命令を保持し、記憶することができる有形のデバイスとすることができる。コンピュータ可読記憶媒体は、一例として、電子ストレージデバイス、磁気ストレージデバイス、光ストレージデバイス、電磁ストレージデバイス、半導体ストレージデバイスまたはこれらの適切な組み合わせであってもよい。コンピュータ可読記憶媒体のより具体的な一例としては、ポータブルコンピュータディスケット、ハードディスク、RAM、ROM、EPROM(またはフラッシュメモリ)、スタティックランダムアクセスメモリ(SRAM)、CD-ROM、DVD、メモリスティック、フロッピーディスク、パンチカードまたは溝内の隆起構造などに命令を記録した機械的に符号化されたデバイス、およびこれらの適切な組み合せが挙げられる。本明細書で使用されるコンピュータ可読記憶媒体は、電波もしくは他の自由に伝播する電磁波、導波管もしくは他の伝送媒体を介して伝播する電磁波(例えば、光ファイバケーブルを通過する光パルス)、またはワイヤを介して送信される電気信号のような、一過性の信号それ自体として解釈されるべきではない。
【0099】
本明細書に記載のコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピューティングデバイス/処理デバイスへダウンロードすることができる。あるいは、ネットワーク(例えばインターネット、LAN、WANもしくは無線ネットワークまたはこれらの組み合わせ)を介して、外部コンピュータまたは外部ストレージデバイスへダウンロード可能である。ネットワークは、銅製伝送ケーブル、光伝送ファイバ、ワイヤレス伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータもしくはエッジサーバまたはこれらの組み合わせを備えることができる。各コンピューティングデバイス/処理デバイス内のネットワークアダプタカードまたはネットワークインタフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、当該コンピュータ可読プログラム命令を、各々のコンピューティングデバイス/処理デバイスにおけるコンピュータ可読記憶媒体に記憶するために転送する。
【0100】
本発明の動作を実施するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路用構成データ、または、スモールトークやC++などのオブジェクト指向プログラミング言語、および「C」プログラミング言語や類似のプログラミング言語などの手続き型プログラミング言語を含む、1つ以上のプログラミング言語の任意の組み合わせで記述されたソースコードもしくはオブジェクトコードのいずれかとすることができる。コンピュータ可読プログラム命令は、スタンドアロン型ソフトウェアパッケージとして完全にユーザのコンピュータ上で、または部分的にユーザのコンピュータ上で実行可能である。あるいは、部分的にユーザのコンピュータ上でかつ部分的にリモートコンピュータ上で、または、完全にリモートコンピュータもしくはサーバ上で実行可能である。後者の場合、リモートコンピュータは、LANやWANを含む任意の種類のネットワークを介してユーザのコンピュータに接続してもよいし、外部コンピュータに(例えば、インターネットサービスプロバイダを使用してインターネットを介して)接続してもよい。いくつかの実施形態において、例えばプログラマブル論理回路、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブル論理アレイ(PLA)を含む電子回路は、本発明の態様を実行する目的で当該電子回路をカスタマイズするために、コンピュータ可読プログラム命令の状態情報を利用することによって、コンピュータ可読プログラム命令を実行することができる。
【0101】
本発明の態様は、本明細書において、本発明の実施形態に係る方法、装置(システム)、およびコンピュータプログラム製品のフローチャートもしくはブロック図またはその両方を参照して説明されている。フローチャートもしくはブロック図またはその両方における各ブロック、および、フローチャートもしくはブロック図またはその両方における複数のブロックの組み合わせは、コンピュータ可読プログラム命令によって実行可能である。
【0102】
これらのコンピュータ可読プログラム命令は、機械を生産するために、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサに提供することができる。これにより、このようなコンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行されるこれらの命令が、フローチャートもしくはブロック図またはその両方における1つ以上のブロックにて特定される機能/動作を実行するための手段を創出する。これらのコンピュータ可読プログラム命令はさらに、コンピュータ、プログラマブルデータ処理装置もしくは他のデバイスまたはこれらの組み合わせに対して特定の態様で機能するよう命令可能なコンピュータ可読記憶媒体に記憶することができる。これにより、命令が記憶された当該コンピュータ可読記憶媒体は、フローチャートもしくはブロック図またはその両方における1つ以上のブロックにて特定される機能/動作の態様を実行するための命令を含む製品を構成する。
【0103】
また、コンピュータ可読プログラム命令を、コンピュータ、他のプログラマブル装置、または他のデバイスにロードし、一連の動作ステップを当該コンピュータ、他のプログラマブル装置、または他のデバイス上で実行させることにより、コンピュータ実行プロセスを生成してもよい。これにより、当該コンピュータ、他のプログラマブル装置、または他のデバイス上で実行される命令が、フローチャートもしくはブロック図またはその両方における1つ以上のブロックにて特定される機能/動作を実行する。
【0104】
図面におけるフローチャートおよびブロック図は、本発明の種々の実施形態に係るシステム、方法およびコンピュータプログラム製品の可能な実装形態のアーキテクチャ、機能性、および動作を示している。この点に関して、フローチャートまたはブロック図における各ブロックは、特定の論理機能を実行するための1つ以上の実行可能な命令を含む、命令のモジュール、セグメント、または部分を表すことができる。他の一部の実装形態において、ブロック内に示した機能は、各図に示す順序とは異なる順序で実行されてもよい。例えば、関係する機能に応じて、連続して示される2つのブロックが、実際には、1つの工程として達成されてもよいし、同時もしくは略同時に実行されてもよいし、部分的もしくは全体的に時間的に重複した態様で実行されてもよいし、ブロックが場合により逆順で実行されてもよい。なお、ブロック図もしくはフローチャートまたはその両方における各ブロック、および、ブロック図もしくはフローチャートまたはその両方における複数のブロックの組み合わせは、特定の機能もしくは動作を行う、または専用ハードウェアとコンピュータ命令との組み合わせを実行する、専用ハードウェアベースのシステムによって実行可能である。
【手続補正書】
【提出日】2023-10-27
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
電子メッセージングのためのコンピュータ実装方法であって、
電子通信システムの電子メッセージであって、受信者のために決定されるメッセージを受信することと、
前記受信した電子メッセージのメッセージインテントを決定することと、
前記受信した電子メッセージの内容とは異なるとともに、前記メッセージインテントに関連する、画像ベースのノイズを有する内容を生成することと、
前記電子通信システムを制御して、前記受信した電子メッセージの代わりに前記画像ベースのノイズを有する内容を前記受信者に提供するか、または、当該画像ベースのノイズを有する内容に加えて当該受信した電子メッセージを当該受信者に提供することと、
を含む、コンピュータ実装方法。
【請求項2】
前記電子メッセージのドメインを決定することと、
前記決定したドメインの1つ以上のテキストメッセージのセットおよび1つ以上の画像のセットを決定することと、をさらに含み、
前記画像ベースのノイズを有する内容を生成することは、
前記テキストメッセージのセットから1つ以上のノイズを有する画像を生成することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有する画像である、ことと、
前記画像のセットからノイズを有するテキストを抽出することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有するテキストである、ことと
前記画像のセットおよび前記テキストメッセージのセットからノイズを有するマルチモーダルな内容を生成することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有するマルチモーダルな内容である、ことと
のいずれか1つを含む、請求項1に記載の方法。
【請求項3】
前記画像のセットおよびテキストメッセージのセットは、それらのインテントが前記メッセージインテントの一部に関連するように決定される、請求項2に記載の方法。
【請求項4】
前記画像ベースのノイズを有する内容を生成することは、
電子メッセージおよび画像を表現するための同時埋め込み空間を決定することと、
テキストメッセージおよび所定の画像のセットを前記埋め込み空間に表現することであって、当該テキストメッセージは、前記電子メッセージ、または前記メッセージインテントの少なくとも一部であるインテントを有する別のメッセージである、ことと、
前記埋め込み空間における前記画像のセットの表現と前記テキストメッセージの表現との間の類似度に基づいて、当該画像のセットをランク付けすることと、
前記ランク付けに基づいて、前記画像のセットから1つ以上のノイズを有する画像のサブセットを選択することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有する画像を含む、ことと
を含む、請求項1に記載の方法。
【請求項5】
前記ノイズを有する画像のサブセットは、第2のk個のランク付けされた画像(kは設定可能なパラメータの値)である、請求項4に記載の方法。
【請求項6】
前記ノイズを有する内容の所望のノイズレベルに応じて、前記パラメータkの値を設定することをさらに含む、請求項5に記載の方法。
【請求項7】
前記同時埋め込みは、シャムニューラルネットワークアーキテクチャに従って、画像とテキストを整合させるためにヒンジ損失を使用して学習される、請求項4に記載の方法。
【請求項8】
前記画像ベースのノイズを有する内容を生成することは、
ナレッジグラフを使用して、前記メッセージインテントの関連インテントを決定することであって、当該ナレッジグラフは、インテントを表すエンティティを含む、ことと、
所定の画像のセットから、前記関連インテントに関連付けられ、かつ前記メッセージインテントに関連付けられない画像のサブセットを抽出することであって、前記画像ベースのノイズを有する内容は、当該画像のサブセットを含む、ことと、
を含む、請求項1に記載の方法。
【請求項9】
前記電子メッセージを使用して、メッセージングセッションのコンテキストを決定することであって、当該メッセージングセッションの当該コンテキストは、前記ナレッジグラフの少なくともサブグラフによって定義される、ことと、
前記サブグラフを使用して、前記決定したコンテキストに属し、かつ前記メッセージインテントに関連付けられるインテントとして、前記関連インテントを決定することと、
をさらに含む、請求項8に記載の方法。
【請求項10】
前記画像ベースのノイズを有する内容を生成することは、
ナレッジグラフを使用して、前記メッセージインテントの関連インテントを決定することであって、当該ナレッジグラフは、インテントを表すエンティティを含む、ことと、
前記関連
インテントに対して変分オートエンコーダを使用して画像を生成することであって、前記画像ベースのノイズを有する内容は、当該生成した画像を含む、ことと、
を含む、請求項1に記載の方法。
【請求項11】
前記電子メッセージは、前記電子通信システムのチャットアプリケーションから傍受され、当該チャットアプリケーションは、メッセージングセッション中のユーザとの会話をシミュレートするように構成され、前記受信することは、当該メッセージングセッションの所定の時点で当該チャットアプリケーションのメッセージを傍受することを含む、請求項1に記載の方法。
【請求項12】
前記電子通信システムは、チャットクライアント間でメッセージを配信するように構成されたチャットサーバである、請求項1に記載の方法。
【請求項13】
前記電子メッセージは、第1のチャットクライアントから第2のチャットクライアントを宛先として受信され、前記方法は、前記受信した電子メッセージ中の機密情報を検出することをさらに含み、前記
画像ベースのノイズを有する内容は、非機密情報を含み、前記
画像ベースのノイズを有する内容は、当該受信した電子メッセージの代わりに提供される、請求項12に記載の方法。
【請求項14】
コンピュータ関連のバグ修正のドメインを表すナレッジグラフを提供することであって、当該ナレッジグラフは、問題および解決策を表すエンティティを含み、前記メッセージインテントは、コンピュータ関連の技術的問題を表すとともに、当該ナレッジグラフ内の解決策のセットに関連付けられる、ことをさらに含み、
前記
画像ベースのノイズを有する内容を生成することは、
前記ナレッジグラフを使用して、前記メッセージインテントの関連インテントを決定することであって、当該関連インテントは、前記解決策のセットとは異なる解決策に関連付けられる、ことと、
所定の画像のセットから、前記関連インテントに関連付けられ、かつ前記メッセージインテントに関連付けられない画像のサブセットを抽出することと、
を含む、請求項1に記載の方法。
【請求項15】
過去のデータ通信の通信記録もしくはログまたはその両方を用いて前記ナレッジグラフを作成することと、
前記ナレッジグラフの1つ以上のグラフ特性に従って当該ナレッジグラフのインテントをクラスタ化することであって、当該グラフ特性は、当該グラフにおける各ノードの中心性指数、および当該グラフにおける各ノードから他のノードへの距離のうちのいずれか1つを含む、ことと、
をさらに含む、請求項14に記載の方法。
【請求項16】
1つ以上のコンピュータの1つ以上のプロセッサによって実行するためのコンピュータ可読プログラム命令を実装した1つ以上のコンピュータ可読記憶媒体を含むコンピュータプログラム製品であって、当該コンピュータ可読プログラム命令は、
前記1つ以上のプロセッサによって、電子通信システムの電子メッセージであって、受信者のために決定されるメッセージを受信することと、
前記1つ以上のプロセッサによって、前記受信した電子メッセージのメッセージインテントを決定することと、
前記1つ以上のプロセッサによって、前記受信した電子メッセージの内容とは異なるとともに、前記メッセージインテントに関連する、画像ベースのノイズを有する内容を生成することと、
前記1つ以上のプロセッサによって、前記電子通信システムを制御して、前記受信した電子メッセージの代わりに前記画像ベースのノイズを有する内容を前記受信者に提供するか、または、当該画像ベースのノイズを有する内容に加えて当該受信した電子メッセージを当該受信者に提供することと、
を実行するための命令を含む、コンピュータプログラム製品。
【請求項17】
前記プログラム命令は、
前記1つ以上のプロセッサによって、前記電子メッセージのドメインを決定することと、
前記1つ以上のプロセッサによって、前記決定したドメインの1つ以上のテキストメッセージのセットおよび1つ以上の画像のセットを決定することと、を実行するための命令をさらに含み、
前記画像ベースのノイズを有する内容を生成することは、
前記テキストメッセージのセットから1つ以上のノイズを有する画像を生成することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有する画像である、ことと、
前記画像のセットからノイズを有するテキストを抽出することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有するテキストである、ことと
前記画像のセットおよび前記テキストメッセージのセットからノイズを有するマルチモーダルな内容を生成することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有するマルチモーダルな内容である、ことと
のいずれか1つを含む、請求項16に記載のコンピュータプログラム製品。
【請求項18】
前記画像のセットおよびテキストメッセージのセットは、それらのインテントが前記メッセージインテントの一部に関連するように決定される、請求項17に記載のコンピュータプログラム製品。
【請求項19】
1つ以上のプロセッサと、当該1つ以上のプロセッサによって実行するためのプログラム命令を記憶した1つ以上の有形記憶媒体とを備えるコンピュータシステムであって、当該プログラム命令は、
電子メッセージを受信することと、
前記受信した電子メッセージのメッセージインテントを決定することと、
前記受信した電子メッセージの内容とは異なるとともに、前記メッセージインテントに関連する、画像ベースのノイズを有する内容を生成することと、
前記電子通信システムを制御して、前記受信した電子メッセージの代わりに前記画像ベースのノイズを有する内容を提供するか、または、当該画像ベースのノイズを有する内容に加えて当該
受信した電子メッセージを提供することと、
を実行するための命令を含む、コンピュータシステム。
【請求項20】
前記プログラム命令は、
前記1つ以上のプロセッサによって、前記電子メッセージのドメインを決定することと、
前記1つ以上のプロセッサによって、前記決定したドメインの1つ以上のテキストメッセージのセットおよび1つ以上の画像のセットを決定することと、を実行するための命令をさらに含み、
前記画像ベースのノイズを有する内容を生成することは、
前記テキストメッセージのセットから1つ以上のノイズを有する画像を生成することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有する画像である、ことと、
前記画像のセットからノイズを有するテキストを抽出することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有するテキストである、ことと
前記画像のセットおよび前記テキストメッセージのセットからノイズを有するマルチモーダルな内容を生成することであって、前記画像ベースのノイズを有する内容は、当該ノイズを有するマルチモーダルな内容である、ことと
のいずれか1つを含む、請求項19に記載のコンピュータシステム。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0006
【補正方法】変更
【補正の内容】
【0006】
別の態様において、本発明は、電子メッセージを受信することと、前記受信した電子メッセージのメッセージインテントを決定することと、前記受信した電子メッセージの内容とは異なるとともに、前記メッセージインテントに関連する、画像ベースのノイズを有する内容を生成することと、前記電子通信システムを制御して、前記受信した電子メッセージの代わりに前記画像ベースのノイズを有する内容を提供するか、または、当該画像ベースのノイズを有する内容に加えて当該受信した電子メッセージを提供することと、を実行するために構成されたコンピュータシステムに関する。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0091
【補正方法】変更
【補正の内容】
【0091】
第10項:前記画像ベースのノイズを有する内容を生成することは、
ナレッジグラフを使用して、前記メッセージインテントの関連インテントを決定することであって、当該ナレッジグラフは、インテントを表すエンティティを含む、ことと、
前記関連インテントに対して変分オートエンコーダを使用して画像を生成することであって、前記画像ベースのノイズを有する内容は、当該生成した画像を含む、ことと、
を含む、上記第1項~第3項のいずれかに記載の方法。
【手続補正4】
【補正対象書類名】明細書
【補正対象項目名】0094
【補正方法】変更
【補正の内容】
【0094】
第13項:前記電子メッセージは、第1のチャットクライアントから第2のチャットクライアントを宛先として受信され、前記方法は、前記受信した電子メッセージ中の機密情報を検出することをさらに含み、前記画像ベースのノイズを有する内容は、非機密情報を含み、前記画像ベースのノイズを有する内容は、当該受信した電子メッセージの代わりに提供される、第12項に記載の方法。
【手続補正5】
【補正対象書類名】明細書
【補正対象項目名】0095
【補正方法】変更
【補正の内容】
【0095】
第14項:コンピュータ関連のバグ修正のドメインを表すナレッジグラフを提供することであって、当該ナレッジグラフは、問題および解決策を表すエンティティを含み、前記メッセージインテントは、コンピュータ関連の技術的問題を表すとともに、当該ナレッジグラフ内の解決策のセットに関連付けられる、ことをさらに含み、
前記画像ベースのノイズを有する内容を生成することは、
前記ナレッジグラフを使用して、前記メッセージインテントの関連インテントを決定することであって、当該関連インテントは、前記解決策のセットとは異なる解決策に関連付けられる、ことと、
所定の画像のセットから、前記関連インテントに関連付けられ、かつ前記メッセージインテントに関連付けられない画像のサブセットを抽出することと、
を含む、上記第1項~第13項のいずれかに記載の方法。
【国際調査報告】