IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ TESNOLOGY株式会社の特許一覧

特表2024-539522エッジデバイス上のデータベースを用いたデータトランザクション管理
<>
  • 特表-エッジデバイス上のデータベースを用いたデータトランザクション管理 図1
  • 特表-エッジデバイス上のデータベースを用いたデータトランザクション管理 図2
  • 特表-エッジデバイス上のデータベースを用いたデータトランザクション管理 図3A
  • 特表-エッジデバイス上のデータベースを用いたデータトランザクション管理 図3B
  • 特表-エッジデバイス上のデータベースを用いたデータトランザクション管理 図4
  • 特表-エッジデバイス上のデータベースを用いたデータトランザクション管理 図5
  • 特表-エッジデバイス上のデータベースを用いたデータトランザクション管理 図6
  • 特表-エッジデバイス上のデータベースを用いたデータトランザクション管理 図7
  • 特表-エッジデバイス上のデータベースを用いたデータトランザクション管理 図8
  • 特表-エッジデバイス上のデータベースを用いたデータトランザクション管理 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-10-28
(54)【発明の名称】エッジデバイス上のデータベースを用いたデータトランザクション管理
(51)【国際特許分類】
   G06F 16/9035 20190101AFI20241018BHJP
   G06F 16/27 20190101ALI20241018BHJP
【FI】
G06F16/9035
G06F16/27
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024549068
(86)(22)【出願日】2022-10-27
(85)【翻訳文提出日】2024-06-24
(86)【国際出願番号】 JP2022041100
(87)【国際公開番号】W WO2023074916
(87)【国際公開日】2023-05-04
(31)【優先権主張番号】63/273,513
(32)【優先日】2021-10-29
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】520284218
【氏名又は名称】TESNOLOGY株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】近藤 克彦
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175AA01
5B175HA01
(57)【要約】
本開示の局面は、デジタルインテリジェンス(DI)エンジンを実現するコンピューティング装置であって、コンピューティング装置にローカルなデータから取得される相互に関係付けられたキーワードのデータベースを管理し、およびそれに問い合わせるためのコンピューティング装置を提供する。DIエンジンは、コンピューティング装置によって受信されるデータの様々なソースから解析されたキーワードのデータベースを維持する。DIエンジンは、キーワード間の関連付けを強化または弱化するための重みを生成することができる。キーワードに対するクエリが、例えばDIエンジンのインスタンスを実現する別の装置によって受信されると、コンピューティング装置は、クエリを受信し、クエリの一部として指定されたキーワードを識別し、その指定されたキーワードに関連付けられるキーワードを出力として送信することができる。DIエンジンは、コスト負担当事者の決定を含んで、トランザクションを容易にし管理するために、送信されたキーワードを使用することができる。
【特許請求の範囲】
【請求項1】
コンピューティング装置であって、
デジタルインテリジェンス(DI)エンジンのインスタンスを実現するよう構成された1つまたは複数のプロセッサを備え、前記DIエンジンの前記インスタンスを実現する際に、前記1つまたは複数のプロセッサは、
前記コンピューティング装置にローカルなデータベースを維持するよう構成されており、前記データベースは複数のキーワードを記憶し、各キーワードはそれぞれの重みに従って1つまたは複数の他のキーワードに関連付けられ、前記1つまたは複数のプロセッサはさらに、
キーワードを指定するクエリを受信するよう構成されており、
前記クエリに応答して、指定された前記キーワードに関連付けられる1つまたは複数のキーワードを送信するよう構成されている、コンピューティング装置。
【請求項2】
前記コンピューティング装置は、第1のコンピューティング装置であり、
前記クエリは、前記DIエンジンの第2のインスタンスを実現する第2のコンピューティング装置から受信される、請求項1に記載のコンピューティング装置。
【請求項3】
前記コンピューティング装置は、第1のコンピューティング装置であり、
前記1つまたは複数のプロセッサは、さらに、
前記DIエンジンの第2のインスタンスを実現する第2のコンピューティング装置からのクエリを前記第1のコンピューティング装置から予め定められた距離内において監視するよう構成されており、
前記判断に応答して、前記第2のコンピューティング装置から前記クエリを受信するよう構成されている、請求項1に記載のコンピューティング装置。
【請求項4】
前記クエリに応答して、指定された前記キーワードに関連付けられる前記1つまたは複数のキーワードを送信する際に、前記1つまたは複数のプロセッサは、
キーワードおよび関連付けられるキーワードをフィルタリングするためのフィルタを受信するよう構成されており、前記フィルタは前記クエリに基づき、前記1つまたは複数のプロセッサはさらに、
前記1つまたは複数のキーワードを取得するために、前記フィルタを通してキーワードをフィルタリングするよう構成されている、請求項3に記載のコンピューティング装置。
【請求項5】
受信された前記クエリは、前記第1のコンピューティング装置と前記第2のコンピューティング装置との間のトランザクションの一部であり、前記トランザクションは、受信された前記クエリに応答して前記DIエンジンのインスタンスによって送信される前記1つまたは複数のキーワードを含むデータの交換を特徴付け、
前記1つまたは複数のプロセッサは、さらに、前記クエリにおいて指定された前記キーワードおよび1つまたは複数の予め定められたルールに基づいて、前記トランザクションのコストを負担するコンピューティング装置を決定するよう構成されている、請求項4に記載のコンピューティング装置。
【請求項6】
前記第2のコンピューティング装置は、ネットワークを介して1つまたは複数の他の装置に接続され、
前記1つまたは複数のプロセッサは、さらに、前記第2のコンピューティング装置を介した前記第1のコンピューティング装置と前記1つまたは複数の他の装置との間のトランザクションの数に基づいてトランザクションのコストの値を決定するよう構成されている、請求項5に記載のコンピューティング装置。
【請求項7】
前記1つまたは複数のプロセッサは、さらに、
前記コンピューティング装置の1つまたは複数のセンサから、入力データを、画像データ、音声データ、およびテキストのうちの1つまたは複数として受信するよう構成され、
前記入力データを解析してキーワードを生成するよう構成されており、
2つ以上のキーワードからなるグループが互いの予め定められた近接範囲内に現れる頻度に少なくとも基づいてキーワード間の重みを生成するよう構成されており、
解析されたキーワードおよび生成された重みを用いて前記データベースを更新するよう構成されている、請求項1に記載のコンピューティング装置。
【請求項8】
キーワード間の前記重みを生成することにおいて、前記1つまたは複数のプロセッサは、さらに、所与のキーワードが前記入力データから解析される頻度に基づいて前記重みを生成するよう構成されている、請求項7に記載のコンピューティング装置。
【請求項9】
前記データベースを維持することにおいて、前記1つまたは複数のプロセッサは、
前記入力データから前記1つまたは複数の他のキーワードの各々が解析される頻度によって、キーワードごとに前記1つまたは複数の他のキーワードを配置するよう構成されており、
前記クエリを受信したことに応答して前記データベースに問い合わせるよう構成されており、前記データベースに問い合わせる際に、前記1つまたは複数のプロセッサは、キーワードごとに頻度順に前記1つまたは複数の他のキーワードを取り出すよう構成されている、請求項1に記載のコンピューティング装置。
【請求項10】
前記コンピューティング装置は、第1のコンピューティング装置であり、
前記1つまたは複数のプロセッサは、さらに、
前記DIエンジンの第2のインスタンスを実現する第2のコンピューティング装置から、前記クエリを受信するよう構成されており、
前記第2のコンピューティング装置から、前記第2のコンピューティング装置の1つまたは複数のプロセッサによって維持されるデータベース内における、指定された前記キーワードに対する1つまたは複数のキーワードおよび前記1つまたは複数のキーワードの各々についてのそれぞれの重みを受信するよう構成されており、
前記第2のコンピューティング装置から受信された前記1つまたは複数のキーワードを用いて、前記第1のコンピューティング装置にローカルな前記データベースを更新するよう構成されている、請求項1に記載のコンピューティング装置。
【請求項11】
システムであって、
デジタルインテリジェンス(DI)エンジンの第1のインスタンスを実現する第1のコンピューティング装置と、
前記DIエンジンの第2のインスタンスを実現する第2のコンピューティング装置とを備え、
前記第1のコンピューティング装置は、
前記コンピューティング装置にローカルなデータベースを維持するよう構成されており、前記データベースは複数のキーワードを記憶しており、各キーワードはそれぞれの重みに従って1つまたは複数の他のキーワードに関連付けられており、前記第1のコンピューティング装置はさらに、
キーワードを指定するクエリを受信するよう構成されており、
前記クエリに応答して、指定された前記キーワードに関連付けられる1つまたは複数のキーワードを送信するよう構成されている、システム。
【請求項12】
前記クエリは、前記第2のコンピューティング装置から受信されている、請求項11に記載のシステム。
【請求項13】
前記第1のコンピューティング装置はさらに、
前記DIエンジンの第2のインスタンスを実現する前記第2のコンピューティング装置からのクエリを前記第1のコンピューティング装置からの予め定められた距離内において監視するよう構成されており、
前記判断に応答して、前記第2のコンピューティング装置から前記クエリを受信するよう構成されている、請求項11に記載のシステム。
【請求項14】
前記クエリに応答して、指定された前記キーワードに関連付けられる前記1つまたは複数のキーワードを送信する際に、前記第1のコンピューティング装置は、
キーワードおよび関連付けられるキーワードをフィルタリングするためのフィルタを受信するよう構成されており、前記フィルタは前記クエリに基づき、前記第1のコンピューティング装置はさらに、
前記1つまたは複数のキーワードを取得するために、前記フィルタを通してキーワードをフィルタリングするよう構成されている、請求項13に記載のシステム。
【請求項15】
受信された前記クエリは、前記第1のコンピューティング装置と前記第2のコンピューティング装置との間のトランザクションの一部であり、前記トランザクションは、受信された前記クエリに応答して前記DIエンジンのインスタンスによって送信される前記1つまたは複数のキーワードを含むデータの交換を特徴付け、
前記第1のコンピューティング装置は、さらに、前記クエリにおいて指定された前記キーワードおよび1つまたは複数の予め定められたルールに基づいて、前記トランザクションのコストを負担するために前記第1のコンピューティング装置および前記第2のコンピューティング装置のうちの1つからコンピューティング装置を決定するよう構成されている、請求項14に記載のシステム。
【請求項16】
前記第2のコンピューティング装置は、ネットワークを介して1つまたは複数の他の装置に接続され、
前記第1のコンピューティング装置は、さらに、前記第2のコンピューティング装置を介した前記第1のコンピューティング装置と前記1つまたは複数の他の装置との間のトランザクションの数に基づいてトランザクションのコストの値を決定するよう構成されている、請求項15に記載のシステム。
【請求項17】
前記第1のコンピューティング装置は、さらに、
前記コンピューティング装置の1つまたは複数のセンサから、入力データを、画像データ、音声データ、およびテキストのうちの1つまたは複数として受信するよう構成されており、
前記入力データを解析してキーワードを生成するよう構成されており、
2つ以上のキーワードからなるグループが互いの予め定められた近接範囲内に現れる頻度に少なくとも基づいてキーワード間の重みを生成するよう構成されており、
解析されたキーワードおよび生成された重みを用いて前記データベースを更新するよう構成されている、請求項11に記載のシステム。
【請求項18】
キーワード間の前記重みを生成する際に、前記第1のコンピューティング装置は、さらに、所与のキーワードが前記入力データから解析される頻度に基づいて前記重みを生成するよう構成されている、請求項17に記載のシステム。
【請求項19】
前記データベースを維持する際に、前記第1のコンピューティング装置は、
前記入力データから前記1つまたは複数の他のキーワードの各々が解析される頻度によって、キーワードごとに前記1つまたは複数の他のキーワードを配置するよう構成されており、
前記クエリを受信したことに応答して前記データベースに問い合わせるよう構成されており、前記データベースに問い合わせる際に、前記第1のコンピューティング装置は、キーワードごとに頻度順に前記1つまたは複数の他のキーワードを取り出すよう構成されている、請求項11に記載のシステム。
【請求項20】
コンピュータにより実現される方法であって、
デジタルインテリジェンス(DI)エンジンのインスタンスを実現するよう構成されるコンピューティング装置の1つまたは複数のプロセッサが、前記コンピューティング装置にローカルなデータベースを維持することを含み、前記データベースは複数のキーワードを記憶し、各キーワードはそれぞれの重みに従って1つまたは複数の他のキーワードに関連付けられ、前記方法はさらに、
前記1つまたは複数のプロセッサが、第1のキーワードを指定するクエリを受信することと、
前記1つまたは複数のプロセッサが、前記第1のキーワードに対応する、前記データベースに記憶される第2のキーワードを識別することと、
前記1つまたは複数のプロセッサが、前記クエリに応答して、前記第2のキーワードに関連付けられる1つまたは複数のキーワードを送信することとを含む、コンピュータにより実現される方法。
【発明の詳細な説明】
【背景技術】
【0001】
背景
データベース管理ソフトウェアは、データベースを管理し、クエリを受信し、クエリに応答してデータベースからデータを提供することによってクエリを解決するよう構成される。データベースは、共通サーバで集中化されることが多く、それから、他のコンピューティング装置はデータベース管理ソフトウェアを通じてサーバに問い合わせてデータを取り出すことができる。いくつかのデータベース管理ソフトウェアは、データベース内のデータを分析するためにディープニューラルネットワークを実現することができる。データベースはカテゴリ中心とされる。カテゴリ中心データベースは、データを格納するためのデータベースのテーブル内に一組の予め定められたカテゴリを有する。当該カテゴリは予め定められているので、カテゴリ中心データベースの1つの問題は、データベースの任意の予め定められたカテゴリに適合しないかもしれない非常に多様なデータを扱うことである。
【発明の概要】
【0002】
中央データベースに基づくデータベース管理ソフトウェアは、変化するシステム需要に応答することが必要とされるため、大きな変更を受けることができないことが多い。したがって、データベース管理システムのような既存のユーザ対面システムは、少なくとも潜在的なサービス中断およびユーザ不満足のため、更新されるのが遅いことが多い。さらに、データベース管理システムに対する変更はまた、実行するのにコストがかかり、時間がかかる。
【課題を解決するための手段】
【0003】
概要
本開示の局面は、コンピューティング装置にローカルなデータから取得される相互に関係付けられたキーワードのデータベースを管理し、それに問い合わせるためのデジタルインテリジェンス(DI)エンジンを実現するコンピューティング装置を提供する。データをカテゴリごとに編成するのではなく、DIエンジンは、コンピューティング装置によって受信されるデータの様々なソースから解析されるキーワードのデータベースを維持する。DIエンジンは、キーワード間の関連付けを強め又は弱めるための重みを生成することができる。あるキーワードに対するクエリが、例えば、DIエンジンのインスタンスを実現する別の装置によって受信されると、コンピューティング装置は、そのクエリを受信し、そのクエリ内のその指定されたキーワードに関連付けられるキーワードを出力として返すことができる。
【0004】
DIエンジンを実現する装置のシステムは、本明細書で説明されるように、中央の仲介を使用することなく、データを互いの間で自由に交換するよう構成され得る。データベースはコンピューティング装置上でローカルに維持されるので、クエリに応答するキーワードは装置ごとに異なることになる。応答におけるキーワードは、コンピューティング装置のユーザが通信しているコンテキストの指示を提供することによって、コンピューティング装置間の商品、サービス、またはデータのトランザクションを容易にするために使用され得る。コンテキストは、自動推奨、所与のクエリに応答してどのようなキーワードを提供するか、およびどの当事者がトランザクションのコストを負担すべきかを識別するための判断をドライブすることができる。本開示の局面は、コンピューティング装置であって、デジタルインテリジェンス(DI)エンジンのインスタンスを実現するよう構成される1つまたは複数のプロセッサを備え、当該DIエンジンの当該インスタンスを実現する際に、当該1つまたは複数のプロセッサは、当該コンピューティング装置にローカルなデータベースを維持するよう構成され、当該データベースは複数のキーワードを記憶し、各キーワードはそれぞれの重みに従って1つまたは複数の他のキーワードに関連付けられ、当該1つまたは複数のプロセッサはさらに、キーワードを指定するクエリを受信するよう構成され、当該クエリに応答して、指定された当該キーワードに関連付けられる1つまたは複数のキーワードを送信するよう構成される、コンピューティング装置を提供する。
【0005】
本開示の局面は、システムであって、デジタルインテリジェンス(DI)エンジンの第1のインスタンスを実現する第1のコンピューティング装置と、当該DIエンジンの第2のインスタンスを実現する第2のコンピューティング装置とを備え、当該第1のコンピューティング装置は、当該コンピューティング装置にローカルなデータベースを維持するよう構成され、当該データベースは複数のキーワードを記憶し、各キーワードはそれぞれの重みに従って1つまたは複数の他のキーワードに関連付けられ、当該第1のコンピューティング装置はさらに、キーワードを指定するクエリを受信するよう構成され、当該クエリに応答して、指定された当該キーワードに関連付けられる1つまたは複数のキーワードを送信するよう構成される、システムを提供する。
【0006】
本開示の局面は、コンピュータにより実現される方法であって、デジタルインテリジェンス(DI)エンジンのインスタンスを実現するよう構成されるコンピューティング装置の1つまたは複数のプロセッサが、当該コンピューティング装置にローカルなデータベースを維持することを含み、当該データベースは複数のキーワードを記憶し、各キーワードはそれぞれの重みに従って1つまたは複数の他のキーワードに関連付けられ、当該方法はさらに、当該1つまたは複数のプロセッサが、第1のキーワードを指定するクエリを受信することと、当該1つまたは複数のプロセッサが、当該第1のキーワードに対応する、当該データベースに記憶される第2のキーワードを識別することと、当該1つまたは複数のプロセッサが、当該クエリに応答して、当該第2のキーワードに関連付けられる1つまたは複数のキーワードを送信することとを含む、コンピュータにより実現される方法を提供する。
【0007】
本開示の曲面は、以下で説明される特徴等の1つ以上の特徴を含むことができる。いくつかの例では、本開示の局面は、それらの特徴のいくつかまたはすべてを組み合わせて含む。
【0008】
当該コンピューティング装置は、第1のコンピューティング装置であり、当該クエリは、当該DIエンジンの第2のインスタンスを実現する第2のコンピューティング装置から受信される。
【0009】
当該コンピューティング装置は、第1のコンピューティング装置であり、当該1つまたは複数のプロセッサは、さらに、当該DIエンジンの第2のインスタンスを実現する第2のコンピューティング装置からのクエリを当該第1のコンピューティング装置から予め定められた距離内において監視するよう構成され、当該判断に応答して、当該第2のコンピューティング装置から当該クエリを受信するよう構成される。
【0010】
当該クエリに応答して、指定された当該キーワードに関連付けられる当該1つまたは複数のキーワードを送信する際に、当該1つまたは複数のプロセッサは、キーワードおよび関連付けられるキーワードをフィルタリングするためのフィルタを受信するよう構成され、当該フィルタは当該クエリに基づき、当該1つまたは複数のプロセッサはさらに、当該1つまたは複数のキーワードを取得するために、当該フィルタを通してキーワードをフィルタリングするよう構成される。
【0011】
受信された当該クエリは、当該第1のコンピューティング装置と当該第2のコンピューティング装置との間のトランザクションの一部であり、当該トランザクションは、受信された当該クエリに応答して当該DIエンジンのインスタンスによって送信される当該1つまたは複数のキーワードを含むデータの交換を特徴付け、当該1つまたは複数のプロセッサは、さらに、当該クエリにおいて指定された当該キーワードおよび1つまたは複数の予め定められたルールに基づいて、当該トランザクションのコストを負担するコンピューティング装置を決定するよう構成される。
【0012】
当該第2のコンピューティング装置は、ネットワークを介して1つまたは複数の他の装置に接続され、当該1つまたは複数のプロセッサは、さらに、当該第2のコンピューティング装置を介した当該第1のコンピューティング装置と当該1つまたは複数の他の装置との間のトランザクションの数に基づいてトランザクションのコストの値を決定するよう構成される。
【0013】
当該1つまたは複数のプロセッサは、さらに、当該コンピューティング装置の1つまたは複数のセンサから、入力データを、画像データ、音声データ、およびテキストのうちの1つまたは複数として受信するよう構成され、当該入力データを解析してキーワードを生成するよう構成され、2つ以上のキーワードからなるグループが互いの予め定められた近接範囲内に現れる頻度に少なくとも基づいてキーワード間の重みを生成するよう構成され、解析されたキーワードおよび生成された重みを用いて当該データベースを更新するよう構成される。
【0014】
キーワード間の当該重みを生成することにおいて、当該1つまたは複数のプロセッサは、さらに、所与のキーワードが当該入力データから解析される頻度に基づいて当該重みを生成するよう構成される。
【0015】
当該データベースを維持する際に、当該1つまたは複数のプロセッサは、さらに、当該入力データから当該1つまたは複数の他のキーワードの各々が解析される頻度によって、キーワードごとに当該1つまたは複数の他のキーワードを配置するよう構成され、当該クエリを受信したことに応答して当該データベースに問い合わせるよう構成され、当該データベースに問い合わせる際に、当該1つまたは複数のプロセッサは、キーワードごとに頻度順に当該1つまたは複数の他のキーワードを取り出すよう構成される。
【0016】
当該コンピューティング装置は、第1のコンピューティング装置であり、当該第1のコンピューティング装置の当該1つまたは複数のプロセッサは、さらに、当該DIエンジンの第2のインスタンスを実現する第2のコンピューティング装置から、当該クエリを受信するよう構成され、当該第2のコンピューティング装置から、当該第2のコンピューティング装置の1つまたは複数のプロセッサによって維持されるデータベース内における、指定された当該キーワードに対する1つまたは複数のキーワードおよび当該1つまたは複数のキーワードの各々についてのそれぞれの重みを受信するよう構成され、当該第2のコンピューティング装置から受信された当該1つまたは複数のキーワードを用いて、当該第1のコンピューティング装置にローカルな当該データベースを更新するよう構成される。
【図面の簡単な説明】
【0017】
図1】第1のコンピューティング装置と1つまたは複数の他の端末との間のトランザクションを監視するために実現されるトランザクション監視システムのブロック図である。
図2】DIエンジンを実現するトランザクション監視システムのブロック図である。
図3A】DIエンジンのためのデータベース内の例示的なキーワード辞書を示す。
図3B】例示的な結合された辞書350を示す。
図4】異なるキーワードの使用頻度に基づくキーワード辞書の階層関係を示す。
図5】DIエンジンによってクエリを処理するための例示的なプロセスのフローチャートである。
図6】DIエンジンのインスタンス間でトランザクションを実行するための例示的なプロセスのフローチャートである。
図7】トランザクションを実行し、DIエンジンを実現するデバイスのユーザの情報を交換するための例示的なプロセスのフローチャートである。
図8】DIエンジンのキーワード辞書を使用するデータフィルタリングの例示的なプロセスのフローチャートである。
図9】DIエンジンのキーワード辞書と併せて履歴データおよび現在のデータに基づいて、DIエンジンによるアクションのコースについての推奨を生成する例示的なプロセスのフローチャートである。
【発明を実施するための形態】
【0018】
詳細な説明
概観
本開示の局面は、デジタルインテリジェンス(DI)エンジンを実現するコンピューティング装置であって、コンピューティング装置にローカルなデータから取得される相互に関係付けられたキーワードのデータベースを管理し、およびそれに問い合わせるためのコンピューティング装置を提供する。予め定められた一組のカテゴリまたは複数のカテゴリから開始するのではなく、DIエンジンは、様々なデータソースからのキーワード、例えば、名称、電話番号、住所、および製品、業務、または場所を記述するキーワードを解析するよう構成される。次いで、DIエンジンは、解析されたキーワード間、または解析されたキーワードとデータベースに現在記憶されている他のキーワードとの間における関連付けを、重みとして定量化して生成する。
【0019】
DIエンジンは、キーワードを指定するクエリを受信することができる。DIエンジンは、指定されたキーワードに関連付けられる1つまたは複数のキーワードでクエリに応答するよう構成される。DIエンジンは、エンジンを実現するコンピューティング装置にローカルなデータを維持するので、クエリに対する応答は、実現例ごとに異なり得る。例えば、あるキーワードが共通の家庭用品目および人気のある小売店の両方に言及し得る場合、そのキーワードは、例えば、一緒に使用されたキーワードをDIエンジンが検出した頻度に応じて、それら2つのうちの1つに対して、より強い関連付けを有することになる。
【0020】
「キーワード」は、DIエンジンによって識別される自然言語(例えば、日本語、英語など)単語または句である。キーワードは、DIエンジンを実現する装置上のテキスト通信等のテキストを通して、DIエンジンによって識別されることができる。キーワードは、DIエンジンを実現する装置上のセンサによって撮像される単語または句(カメラを使用して捕捉される路側標識等)として識別されることができる。キーワードはまた、DIエンジンのセンサ範囲内の可聴音声を記録および処理することによって識別されることもできる。
【0021】
「カテゴリ」は、DIエンジンによってターゲットキーワードに適用されるラベルである。カテゴリは、それ自体が、ターゲットキーワードに関連付けられたキーワードであり得る。ターゲットキーワードに関連付けられる各キーワードについて、DIエンジンは、各キーワードとターゲットキーワードとの間の関連付けの強度を定量化することができる。関連付けの強度は、数値であり、発話または記述による通信のコンテキストにおけるキーワードの使用がどのくらいの可能性でカテゴリを参照しているかについてのDIエンジンによる予測を表す。
【0022】
DIエンジンは、キーワード中心のデータベースを維持し、カテゴリ中心ではない。DIエンジンは、本明細書で説明するように、より自然にインテリジェントなキーワード中心の編成と並行するデータベースを管理する。データベースに記憶できるデータのすべてのタイプを捕捉できないかもしれない、キーワードを編成するための予め定められたカテゴリから開始するのではなく、DIエンジンは、キーワードを一緒に関連付け、DIエンジンが動作している現在の状況またはコンテキストに基づいて、キーワードをカテゴリとして割り当てる。
【0023】
DIエンジンは、互いに通信するよう構成される複数のコンピューティング装置の各々にわたるそれぞれのインスタンスとして実現され得る。集中型プラットフォームを介する代わりに、DIエンジンを複数のインスタンスとしてローカルに実現することによって、DIエンジンは、ローカルデータベースの使用を通して、個々のユーザデータをスケーリングし、より効果的に管理することができる。
【0024】
DIエンジンのインスタンスは、キーワード辞書にローカルなデータを、例えば、別の装置上のDIエンジンの別のインスタンスに提供することができる。
【0025】
DIエンジンは、多くの異なるアプリケーションを提供することができ、概して、自然知能のキーワード中心モードを拡張することを中心として、コンテンツ推奨、ならびに商品、サービス、およびデータのための種々のトランザクションの実行において、ユーザを支援する。例えば、DIエンジンは、キーワードに対するクエリを受信することができる。クエリ内の指定されたキーワードは、1つまたは複数の他のキーワードに関連付けられ、それは、クエリに応答して提供され得る。例えば、あるトランザクションは、製品もしくはサービスの購入、またはシステムのユーザもしくは装置に対応する情報の転送であり得る。本明細書で説明されるように、DIエンジンを実現するトランザクション監視システムは、システムを使用することに対してどの当事者に請求すべきかを決定し得る。例えば、トランザクション監視システムは、トランザクションを実行するために、ネットワークを使用するための使用料を課金し得る。システム使用料は、使用単位で課金され得る。システムは、例えば、ある装置から別の装置へのトランザクションタイプに従って、請求されるべき当事者の装置を決定する。いくつかの例では、トランザクション監視システムは、ある当事者の装置が別の当事者からの個人データの受信に対して課金されるトランザクションを管理することができる。
【0026】
別の例として、レストランの常連客の携帯電話とレストランのサーバという2つのコンピューティング装置を考える。両方の装置は、DIエンジンのインスタンスを実現することができる。レストランの常連客がレストランに行くと、サーバDIエンジンはユーザに「食事の好み」または「食事制限」を問い合わせることができる。携帯電話DIエンジンは、「食事制限」のクエリに応答して、問い合わせされたキーワードに関連付けられる1つまたは複数のキーワード、たとえば「レバー」または「魚」と応答することができる。携帯電話DIエンジンは、オプションとして、本明細書に説明されるように、ユーザ定義フィルタに従って、結果データをフィルタリングすることができる。次いで、サーバDIエンジンは、携帯電話DIエンジンによって指定された食事制限が除去されたメニューを提供することができる。
【0027】
別の例として、エアコンユニット(A/Cユニット)は、A/Cユニットに接続されたマイクロコントローラを介してDIエンジンを実現することができる。第1の装置のためのDIエンジンが検出されると、A/CユニットDIエンジンは、「温度選好」についてデバイスDIエンジンに問い合わせることができる。デバイスDIエンジンは、クエリの指定されたキーワードに関連付けられるキーワードとして、「21℃」のような温度選好を指定することができる。次いで、A/Cユニットは、温度を、好ましい温度に調整することができる。
【0028】
別の例として、DIエンジンは、本明細書で説明するように、トランザクション監視システムの一部として実現することができる。トランザクション監視システムは、資金の交換、例えば、デジタル通貨、法定不換通貨、または現実もしくは仮想経済内の価値のポイントもしくは他のインジケータの交換をサポートすることができる。トランザクション監視システムは、DIエンジンのインスタンスを有する2つの装置間のトランザクションに対して、システム使用料のようなコストをどの当事者が負担すべきかを決定するために一組の予め定められたルールを適用することができる。例えば、レストランのサーバDIエンジンとレストラン常連客の携帯電話DIエンジンとの間の例では、レストランのサーバDIエンジンがトランザクションのコストを負担するよう予め定められ得る。
【0029】
ベンダまたはサーバプロバイダは、トランザクションのコストを負担する当事者であり得るが、当事者の装置のDIエンジンから受信されるデータによってサポートされる、ルールに対する例外もあり得る。例えば、ベンダは、通常、商品またはサービスに対するトランザクションのコストを負担し得るが、顧客のDIエンジンは、所望の品目について問い合わせされてもよく、入手可能性が制限された品目を返してもよい。その場合、トランザクション監視システムは、例外をトリガして、ベンダではなく、顧客にトランザクションのコストを負担させてもよい。
【0030】
本開示の局面は、いくつかの技術的利点を提供することができる。DIエンジンは、トランザクションを容易にするために中央データベースを必要としない、ローカルに管理されるデータを提供する。
【0031】
DIエンジンは、限られたメモリおよび計算能力を有する装置のようなリソース制約付き装置を含む様々なコンピューティング装置のいずれかに実現され得る。DIエンジンは、リソース制約付き装置上で実現され得、また、DIエンジンの各インスタンスのために維持されるローカルデータベースからデータを維持および取り出すために、データベース管理等のある技術における継続的改善を利用することができる。
【0032】
さらに、DIエンジンは、ディープラーニングのような他のアプローチにおいて見出される、コストが法外なトレーニングおよびモデルアーキテクチャなしに実現され得る。DIエンジンは、入力と出力との間の関係を確かめるためにブラックボックス機械学習モデルを分析することとは対照的に解釈可能である、キーワード間の関連付けの強度を決定するためのルールのセットを実現することができる。
【0033】
本明細書に記載されるDIエンジンは、少なくとも本明細書に記載されるようにデータを問い合わせる実現コストが低いため、エネルギー効率がよい。低い動作コストに加えて、DIエンジンはまた、DIエンジンも実現する装置間の通信コストも低い。そのために、クライアント装置と中央サーバとの間の複雑な接続とは対照的に、低電力もしくは高効率であるネットワークまたは他の通信媒体は、装置間で通信するために使用され得る。
【0034】
DIエンジンはまた、当該DIエンジンを実現する装置のユーザが、ユーザデータがどのようにおよびいつ提供されるかを制御することを可能にすることによって、ユーザデータの完全な制御を可能にする。DIエンジンは、例えば、収集されたデータをプライベートに保ち、収集されたデータをユーザによって決定されたフィルタに従って他のコンピューティング装置にのみ提供することを可能にする。DIエンジンは、DIエンジンを実現するコンピューティング装置と他の装置との間のデータのトランザクションおよび交換に関連するタイムスタンプ情報ならびに復号されたデータを記憶することができる。交換されるデータはまた、DIエンジンのそれぞれのインスタンスを実現する通信装置間の様々な暗号化プロトコルのいずれかを使用して暗号化され得る。
【0035】
中央で管理されるデータベースとは異なり、DIエンジンは、新たなデータのタイプに応答して新たなカテゴリで再構成される必要はない。DIエンジンの個々のインスタンスは、ユーザ固有のデータを管理することができ、DIエンジンを、すべてのユーザデータを管理する責任がある中央データベース管理システムとは対照的に、更新および管理することを、より容易にする。DIエンジンは、フォン・ノイマン(またはプリンストン)アーキテクチャを含む様々な異なるコンピューティングアーキテクチャおよび装置のいずれかにおいて実現することができる。
【0036】
本開示の局面は、関連する当事者のコンピューティング装置が、トランザクションを、そのコストが当事者の一方または両方に割り当てられた状態で実行する、システムを提供する。当事者のコンピューティング装置にわたってトランザクションを実行することによって、中央システムの必要性が排除される。代わりに、トランザクションの当事者によって操作される個々の装置が、トランザクションの動作を実行することができる。
【0037】
例示的なシステム
図1は、第1のコンピューティング装置101Aと第2のコンピューティング装置101Bとの間のトランザクションを監視するために実現されるトランザクションシステム100のブロック図である。トランザクションシステム100は、第1のコンピューティング装置および第2のコンピューティング装置101Bの一方または両方において実現することができる。トランザクションシステム100は、請求先データベース120を有するトランザクション監視エンジン110と、システム使用料エンジン140を有する請求通知システム130とを含む。
【0038】
コンピューティング装置は、トランザクションシステム、例えば、コンピューティング装置101Aおよびコンピューティング装置101Bを実現することができ、所与のトランザクションにおけるデータの送信者または受信者のいずれかであり得る。システム100は、コスト負担者を決定するためのルールのセットを適用することができる。ある例示的なルールは、顧客の装置と小売店の装置との間で、トランザクション監視システムは小売店の装置にトランザクションのコストを負担させることであり得る。ルールに対する例外もあり得る。例えば、トランザクション監視システムは、トランザクションが、入手可能性が制限された製品またはサービスに関係する場合に、顧客の装置に、トランザクションのコストを負担させ得る。ルールは、トランザクション監視エンジン110の一部として実現することができる。
【0039】
請求先データベース120は、トランザクション毎に請求先を定義するデータを記憶することができる。請求先は、トランザクションのデータタイプに基づくことができる。例えば、データに対する特定の要求は、コンピューティング装置101Aにトランザクションのコストを負担させ得るが、他の要求は、代わりにコンピューティング装置101Bにコストを負担させ得る。
【0040】
システム100は、本明細書で説明されるように、DIエンジンのインスタンスによって生成され得る、コンピューティング装置101A~101B間で提供される情報に基づいて、どのようなルールを適用するかを決定することができる。例えば、1つのルールは、トランザクションが、例えば、ユーザの要求側コンピューティング装置101Aによって、例えば、小売店のコンピューティング装置101Bに、限定された販売品目を注文するためのものであるとき、ユーザのコンピューティング装置が、トランザクションのコストを負担することであってもよい。別の例として、あるルールは、販売店のコンピューティング装置が、現在在庫クリアランスセール中の商品またはサービスのトランザクションに対する要求を受信すると、販売店のコンピューティング装置が、トランザクションのコストを負担することであってもよい。別の例として、ユーザのコンピューティング装置が、それぞれのイベントの前の限られた時間内にチケットを購入することを要求している場合、ユーザのコンピューティング装置が、コストを負担することを要求されてもよい。
【0041】
他のルールは、上記の例における販売店(またはベンダ)がトランザクションのコストを負担することを指定してもよい。例えば、販売店のコンピューティング装置が、ユーザの買い物の好みといった、ユーザに関する情報を求める場合、販売店のコンピューティング装置が、トランザクションのコストを負担する。
【0042】
トランザクション監視エンジン110はまた、請求先データベースを維持して、システム100によって管理されるトランザクションを、トランザクションの当事者、トランザクションの性質、およびトランザクション当たりの課金額を含んで、追跡することもできる。トランザクション監視エンジン110は、例えば、データに対するクエリを通して、あるコンピューティング装置が他のコンピューティング装置にアクセスした回数を記憶することができる。
【0043】
当該予め定められたルールに従って受取人を決定すると、トランザクション監視エンジン110は、その指定を請求通知システム130に転送することができる。請求通知システムは、システム使用料エンジン140を使用して、コストの負担者として指定されたトランザクションの当事者に対するコストを決定することができる。コンピューティング装置101A~101B間で送信される情報は、システム100内の内部処理のために、トランザクションの宛先を示すヘッダを含むことができる。
【0044】
システム使用料エンジン140の値は変動可能である。システム使用料エンジン140は、コンピューティング装置101A~101B間のトランザクションの数に基づいて請求総額を計算するよう構成され得る。いくつかの例では、システム使用料エンジン140は、一方のコンピューティング装置が他方のコンピューティング装置にアクセスした回数に応じて、トランザクションの量に基づいて割引を適用することができる。いくつかの例では、システム使用料エンジン140はまた、装置間で転送されるデータの量に基づいてコストを計算することができる。データの量は、メガバイト、ギガバイト、または他のそのようなデータ測定値で測定され得る。
【0045】
いくつかの例では、システムは、ネットワークの内部サーバの前に実現される。トランザクションに対する請求は、例えば、1つまたは複数の、従業員のコンピューティング装置を介した、企業内からのサーバアクセスの数に基づいて、管理することができる。システム100は、処理のためにデータのリンク付けを可能にする。多くの従業員はすでにコアシステムを適所に有しているが、従業員のほとんどは、依然として、ファイル管理および他のシステムを使用して、自分自身のデータを管理している。
【0046】
これは、企業が業務単位毎にシステムを導入しており、デジタルデータは接続されていないため、各従業員はデータを自分で接続および管理する必要があるためである。デジタルデータ収集システムは、主にデータベースに基づいており、業務単位間でデジタルデータを接続することは困難であり、したがって、従業員は、ほとんどの場合、ワード処理または他のプログラムを使用して自身のデータを管理する。この問題を解決するために、各従業員のデータに基づいてエッジ型の分散システムでデータを接続することで、最後から開始することが考えられる。
【0047】
いくつかの例では、請求通知システム130は、コンピューティング装置101A(または101B)にバッチで、またはトランザクションごとに請求することができる。
【0048】
各コンピューティング装置は、それ自体のウォレットを管理し、トランザクションシステムは、誰が誰と課金を交換しているかを追跡し、請求プロセスが正しく行われていること、およびそれが改ざんされていないことを検証する。
【0049】
コンピューティング装置101A、101B(集合的にコンピューティング装置101)は、1つまたは複数のプロセッサ113A~113B(集合的にプロセッサ113)、メモリ114A~114B(集合的にメモリ114)、命令121A~121B(集合的に命令121)、データ123A~123B(集合的にデータ123)、ユーザ入力124A~124B(集合的にユーザ入力124)およびユーザ出力126A~126B(集合的にユーザ出力126)を含む、いくつかの構成要素を含むことができる。
【0050】
コンピューティング装置101は、ネットワークを介して通信可能に結合され得る。メモリ114は、ハードドライブ、ソリッドステートドライブ、テープドライブ、光学ストレージ、メモリカード、ROM、RAM、DVD、CD-ROM、書き込み可能メモリ、および読み出し専用メモリ等の、情報を記憶可能な任意の種類の非一時的コンピュータ可読媒体を含むことができる。
【0051】
コンピューティング装置101は、1つまたは複数のプロセッサ113およびメモリ114を含むことができる。メモリ114は、プロセッサ113によって実行され得る命令121を含む、プロセッサ113によってアクセス可能な情報を記憶することができる。メモリ114はまた、プロセッサ113によって取り出され、操作され、または記憶され得るデータ123を含むことができる。メモリ114は、揮発性および不揮発性メモリのような、プロセッサ113によってアクセス可能な情報を記憶することが可能な任意のタイプの非一時的コンピュータ可読媒体であり得る。プロセッサ113は、1つまたは複数の中央処理装置(CPU)、グラフィック処理装置(GPU)、フィールドプログラマブルゲートアレイ(FPGA)、および/またはテンソル処理装置(TPU)のような特定用途向け集積回路(ASIC)を含むことができる。例示的な処理ユニットは、ARM、x86、およびx64ベースのプロセッサ、シングルボードコンピュータ(SBC)、マイクロコントローラ、システムオンチップ(SoC)等も含む。
【0052】
命令121は、プロセッサ113によって実行されると、命令によって定義されるアクションを1つまたは複数のプロセッサに実行させる、1つまたは複数の命令を含むことができる。命令121は、プロセッサ113による直接処理のためのオブジェクトコードフォーマットで、またはオンデマンドで解釈されるかもしくは事前にコンパイルされる独立したソースコードモジュールの解釈可能なスクリプトもしくは収集を含む他のフォーマットで記憶され得る。システム400は、プロセッサ113を使用して、および/またはサーバコンピューティング装置115から遠隔に位置する他のプロセッサを使用して、実行することができる。
【0053】
データ123は、命令121に従ってプロセッサ113によって取り出され、記憶され、または修正され得る。データ123は、コンピュータレジスタにおいて、リレーショナルデータベースまたは非リレーショナルデータベースに、複数の異なるフィールドおよびレコードを有するテーブルとして、またはJSON、YAML、プロト、もしくはXML文書として、記憶され得る。データ123はまた、限定はしないが、バイナリ値、ASCII、またはUnicodeのようなコンピュータ可読フォーマットでフォーマットされ得る。さらに、データ123は、数、記述的テキスト、プロプライエタリコード、ポインタ、他のネットワークロケーションを含む他のメモリに記憶されたデータへの参照、または関連データを計算するために関数によって使用される情報のような、関連情報を識別するのに充分な情報を含むことができる。
【0054】
コンピューティング装置101はまた、ユーザ出力126およびユーザ入力124も含むことができる。ユーザ入力124は、キーボード、マウス、機械的アクチュエータ、ソフトアクチュエータ、タッチスクリーン、マイクロフォン、およびセンサのような、ユーザから入力を受信するための任意の適切な機構または技法を含むことができる。
【0055】
コンピューティング装置101は、ユーザ出力126の一部として実現されるディスプレイ上に、受信されたデータの少なくとも一部を表示するよう構成され得る。ユーザ出力126はまた、コンピューティング装置101間のインターフェイスを表示するために使用することもできる。ユーザ出力126は、代替的または追加的に、ユーザコンピューティング装置112のプラットフォームユーザに非視覚および非可聴情報を提供する、1つまたは複数のスピーカ、トランスデューサもしくは他の音声出力、触覚インターフェイスまたは他の触覚フィードバックを含むことができる。
【0056】
図1は、プロセッサ113およびメモリ114をコンピューティング装置101内にあるものとして示しているが、プロセッサ113およびメモリ114を含む本明細書で説明する構成要素は、同じコンピューティング装置内ではなく異なる物理的位置で動作することができる複数のプロセッサおよびメモリを含むことができる。例えば、命令121およびデータ123の一部は、取り外し可能なSDカードに記憶することができ、他のものは、読み取り専用コンピュータチップ内に記憶することができる。命令およびデータの一部またはすべては、プロセッサ113から物理的に遠隔であるが依然としてアクセス可能な場所に記憶することができる。同様に、プロセッサ113は、同時動作および/または逐次動作を実行することができるプロセッサの集合を含むことができる。コンピューティング装置101は、各々、コンピューティング装置101によって実行される動作およびプログラムのための時間測定のために使用され得るタイミング情報を提供する1つまたは複数の内部クロックを含むことができる。
【0057】
コンピューティング装置101は、ネットワークを介した直接的および間接的な通信が可能であり得る。コンピューティング装置101は、情報を送受信するための開始接続を受け入れることができるリスニングソケットをセットアップすることができる。ネットワーク自体は、インターネット、ワールドワイドウェブ、イントラネット、仮想プライベートネットワーク、ワイドエリアネットワーク、ローカルネットワーク、および1つまたは複数の企業に所有権がある通信プロトコルを使用するプライベートネットワークを含む、様々な設定ならびにプロトコルを含むことができる。ネットワークは、様々な短距離接続および長距離接続をサポートすることができる。短距離接続および長距離接続は、2.402GHz~2.480GHz(Bluetooth(登録商標)規格に共通に関連付けられる)、2.4GHzおよび5GHz(Wi-Fi(登録商標)通信プロトコルに共通に関連付けられる)のように、異なる帯域幅にわたって、またはワイヤレスブロードバンド通信のためのLTE(登録商標)規格のような様々な通信規格で、行われ得る。ネットワークはまた、追加または代替として、様々なタイプのイーサネット(登録商標)接続を介することを含む、コンピューティング装置101間の有線接続をサポートすることもできる。
【0058】
本開示の局面は、逐次処理もしくは並列処理のためのパラダイム、または複数の装置の分散ネットワークを含んで、コンピューティング装置の様々な異なる設定および量に従って実現され得ることを理解されたい。いくつかの実現形態では、本開示の局面は、単一の装置、およびその任意の組み合わせ上で実行され得る。
【0059】
図2は、DIエンジン200A~200Cを実現するコンピューティング装置201A~201Cのブロック図である。各コンピューティング装置202A~202Cは、DIエンジン201A~201Cと、データ処理エンジン210A~210Cと、データベース230A~230Cとを含む。
【0060】
本明細書で説明されるコンピューティング装置に加えて、DIエンジンのインスタンスを実現するコンピューティング装置は、様々なセンサ、家電製品、ロック、配送ボックス、それらとの通信手段としてのデジタルデバイス、スマートフォン、スマートウォッチなどを含むか、またはそれらに接続されることができ、デジタルデータを、その機密性を確保しながら、自由に接続および管理することができることになる。
【0061】
トランザクション監視システムによって転送されるデータは、本開示の局面にしたがってデータインテリジェンス(「DI」)エンジンによって処理され得る。DIエンジンは、それぞれのコンピューティング装置にローカルなデータを受け取り、データを処理して1つまたは複数のキーワードを識別するよう構成される。DIエンジンは、それらの関連付けに関するデータを、DIエンジンのインスタンスを有する他の装置に提供することができる。各装置はまた、トランザクション監視システムのそれぞれのインスタンスを含むこともでき、このインスタンスは、DIエンジンにより生成されたデータを別の装置に転送する際のコストを負担する当事者のコストおよび装置を評価するよう構成される。
【0062】
使用されるキーワードを検出すると、DIエンジンは、コンピューティング装置にローカルなデータベースに問い合わせることができる。データベースは、例えば、図3A図3Bを参照して本明細書に示されるように、キーワード辞書を記憶することができる。キーワード辞書は、DIエンジンが遭遇する1つまたは複数のキーワードを対応する1つまたは複数の他のキーワードとマッピングするためのデータを記憶するデータ構造である。DIエンジンは、所与のキーワードとそれの関連付けられた他のキーワードとの間のより強いまたはより弱い関連付けを表して、あるキーワードが適用されるコンテキストをより良く表すことができる。
【0063】
DIエンジンは、コンピューティング装置のユーザ入力を介して入力データを受信することができる。例えば、DIエンジンは、音声入力として、「私はA店でリンゴを購入した。」のようなステートメントを受信することができる。入力から、DIエンジンは、キーワード、例えば「リンゴ」および「A店」の音声を解析することができる。DIエンジンは、2つのキーワードが関係していることを表す重み値を用いて、2つのキーワード間の関連付けを生成することができる。DIエンジンは、入力データを、例えば、音声、画像、および/またはテキストデータとして、連続的に受信することができる。キーワードについて入力データを解析した後、DIエンジンは、キーワードとの追加の関連付けを追加することができ、またはキーワードがすでにデータベースに存在する場合には、関連付けの強度を調整するために、対応する重みを増加させることができる。
【0064】
図2において、コンピューティング装置200A~200Cは、クエリを送信し、例えば1つまたは複数のキーワードとして、当該クエリに応答したデータを受信することができる。コンピューティング装置202Aは、データをコンピューティング装置202Bに送信することができる。コンピューティング装置は、データ処理エンジンの一部として、図1を参照して本明細書に記載されるトランザクションシステムを実現することができる。コンピューティング装置202Aはまた、コンピューティング装置202Cと通信することもでき、2つの装置200Bおよび200Cは、データ処理エンジン210Bまたはデータ処理エンジン210Cを使用して、トランザクションのコストの負担者を決定することができる。
【0065】
互いに通信するためのコンピューティング装置間の同意は、例えば、DIエンジン201A~201Cのためのインターフェイス上でユーザ選好を可能化にすることによって、事前に取得することができる。
【0066】
図3Aは、DIエンジンのためのデータベース内の例示的なキーワード辞書300A~300Dを示す。各辞書は、グルーピング301A~301Dから他のノードへの、ノードのグラフとして表される。ノードはリンクによって接続され、各リンクはDIエンジンによって生成されるそれぞれの重みを有する。以下の表1は、辞書300A~300Dに示されるキーワードを示す。
【0067】
【表1】
【0068】
例えば、2重丸で囲まれたノード301Aに示すようにキーワード「リンゴ」が問い合わせられる場合、キーワード「リンゴ」による関連付けられたキーワードは、ノード302Aの日付10/21/21、ノード303Aの日付10/23/21、ノード304Aのキーワード「C店」、およびノード305Aのキーワードを含む。
【0069】
別の例として、二重丸で囲まれたノード301Bによって示されるようにキーワード「オレンジ」が問い合わせられる場合、キーワード「オレンジ」による関連付けられたキーワードは、ノード302Bにおけるデータ10/22/21およびノード303BにおけるキーワードB店を含む。
【0070】
別の例として、二重丸で囲まれたノード301Cによって示されるようにキーワード「A店」が問い合わせられる場合、キーワード「A店」による関連付けられたキーワードは、ノード302Cにおけるデータ10/22/21およびノード303Cにおけるキーワード「リンゴ」を含む。
【0071】
別の例として、二重丸で囲まれたノード301Dによって示されるようにキーワード「10/22/21」が問い合わせられる場合、キーワード「10/22/21」による関連付けられたキーワードは、ノード302Dにおけるキーワード「リンゴ」、ノード303Dにおけるキーワード「オレンジ」、ノード304Dにおけるキーワード「B店」、およびノード305Dにおけるキーワード「A店」を含む。
【0072】
図3Bは、例示的な結合された辞書350を示す。結合された辞書は、DIエンジンの異なるインスタンスの別々のキーワード辞書から結合されることができる。表2は、表1のようなキーワードを有するDIエンジンとは異なるDIエンジンのためのキーワードを示す。
【0073】
【表2】
【0074】
結合された辞書350は、第1のDIエンジンおよび表1からの辞書340Aと、第2のDIエンジンおよび表2からの辞書340Bとから結合される。結合された辞書350は、第1および第2のDIエンジンのデータベースの一方または両方に追加されて、単一のDIエンジンのみからは収集されないキーワード間の追加の関連付けでデータベースを強化することができる。
【0075】
図4は、異なるキーワード415~455の使用頻度に基づくキーワード辞書の階層関係400を示す。
【0076】
キーワード辞書が作成され、データベース内に配置される。クエリを高速化するために、クエリは拡張され、記憶されたメモリ内で組み合わされる。後述するように、「注目すべきキーワード」に従う順次階層化により、検索処理(キーワードとの関連性が高い単語の検出)が高速化される。キーワードの頻度に加えて、DIエンジンはまた、各キーワードを処理して、例えばDIエンジンによって記録された会話において一緒に使用されるキーワードの頻度を識別する。したがって、データベースの頻度の階層におけるキーワードの位置は、そのキーワードが他のキーワードとともに同じレベルで出現する頻度に基づくこともできる。
【0077】
DIエンジンはさらに、観察の頻度に従ってキーワード辞書内の様々なキーワードに優先順位を付けることができる。例えば、人気のある小売店の名称のような特定のキーワードが共通して観察される場合、DIエンジンは、キーワードマッピングが記憶される順序を並べ替えて、人気のある小売店へのクエリをより迅速に解決できるようにすることができる。例えば、キーワード辞書は階層的であり得、より高いレベルは、より頻繁に観察されるキーワードに対応し、より低いレベルは、問い合わせがより頻繁でないキーワードに対応し得る。
【0078】
階層は出現頻度によって決定される。データベースは、互いに関連したキーワードを含む。キーワードは、「注目すべきキーワード」、例えばクエリで指定されるキーワードに従って、より強い関連付けを有する関連付けられたキーワードが上位に出現する状態で、階層化される。同様に、どれが関連性の高いキーワードであるかを検出することが容易になる。この例では、階層は4つのレベル410A~440Aを含む。階層内の、より高位のキーワード、例えばキーワード415、420は、階層内の、より低位のキーワード、例えばキーワード445~455とは対照的に、DIエンジンによって、より頻繁に観察される。
【0079】
実施例方法
図5は、DIエンジンによってクエリを処理するための例示的なプロセスのフローチャートである。
【0080】
DIエンジンは、ブロック510に従って、コンピューティング装置にローカルなデータベースを維持する。データベースは、キーワードを記憶することができ、各キーワードは、それぞれの重みに従って、1つまたは複数の他のキーワードに関連付けられる。データベースは、本明細書で説明するように、DIエンジンによって生成されるキーワード辞書を含むことができる。
【0081】
DIエンジンは、ブロック520に従って、キーワードを指定するクエリを受信する。
【0082】
DIエンジンは、ブロック530に従って、指定されたキーワードに関連付けられる1つまたは複数のキーワードを送信する。DIエンジンは、いくつかの例では、最初に、識別されたキーワードとのより強い関連付けを有するキーワードを取り出すことができる。さらに、DIエンジンは、より頻繁に観察されるキーワードを、より頻繁に観察されないキーワードの前に検索するために、データベースにキーワードを格納することができる。
【0083】
図6は、DIエンジンのインスタンス間でトランザクションを実行するための例示的なプロセス600のフローチャートである。
【0084】
DIエンジン600Aは、ライン602に従って、DIエンジン600Bにデータを送信する。DIエンジン600Bは、菱形604に従って、データが新しいか否かを判定する。データが新しい場合(「YES」)、DIエンジン600Bは、ブロック606に従って、そのデータをそれのデータベースに追加する。いずれにしても(「YES」または「NO」)、DIエンジン600Bは、DIエンジン600Aのコンピューティング装置がトランザクションのコストを負担する必要があるか否かを判定する。そうである場合(「YES」)、DIエンジン600Bは、DIエンジン600Aに支払いを要求し、それぞれ、ライン610および612に従って、支払いを本質的に受信する。その後、DIエンジン600Bは、それぞれブロック614、616、および618に従って、データを符号化し、データを格納する場所を決定し、最後にデータを格納する。データを格納することの一部として、DIエンジン600Bは、DIエンジン600Bに秘密の鍵に従ってデータを暗号化する。
【0085】
図7は、DIエンジンを実現する装置のユーザの情報に対するトランザクションを実行するための例示的なプロセス700のフローチャートである。情報要求ソース700Aは、別のDIエンジン、またはDIエンジン700Bに情報を要求するよう構成される他のタイプのコンピューティング装置であり得る。
【0086】
データの個人管理は集中化されず、DIエンジンのそれぞれのインスタンスのユーザによって管理される。ユーザの個人情報が取得される場合、それは、ユーザの選好に応じて補償を必要とする場合がある。
【0087】
情報要求ソース700Aは、ライン702に従って、DIエンジン700Bに情報の要求を送信する。DIエンジン700Bは、ブロック704に従って、要求を満たすことができるか否かを判定する。例えば、DIエンジン700Bは、要求された情報が利用可能であるか否か、およびDIエンジン700Bはその情報を共有する許可を有するか否かを判断する。
【0088】
そうである場合(「YES」)、DIエンジン700Bは、菱形706に従って、補償が必要であるか否かを判定する。そうでない場合(「NO」)、プロセス700は終了する。
【0089】
DIエンジン700Bが、補償は必要ではないと判定した場合(「NO」)、DIエンジン700Bは、ライン712に従って、要求された情報を提供する。そうでない場合(「YES」)、DIエンジン700Bは、ライン708に従って支払いまたは補償を要求する。情報要求ソース700Aは、ブロック710に従って、トランザクションに対する補償を提供する。
【0090】
図8は、DIエンジンのキーワード辞書を使用するデータフィルタリングの例示的なプロセスのフローチャートである。本明細書で説明されるように、データフィルタは、あるデータを、それが提供される前にフィルタ除去するよう、生成されることができる。潜在的に保護が必要なデータまたは機密データをフィルタ除去することに加えて、フィルタは、トランザクション中にDIエンジン間で処理するためのデータの量を低減することができる。フィルタは、DIエンジンを実現するコンピューティング装置のユーザによって定義され得る。
【0091】
フィルタデータは、DIエンジンのインターフェイスを使用して、ユーザによって指定され得る。インターフェイスは、テキストベースまたはマルチモーダルであり得、例えば、音声またはジェスチャを使用する。他の例では、インターフェイスは、DIエンジンに接続されたコンピューティング装置のディスプレイ上に表示されるグラフィカルユーザインターフェイスである。例えば、ユーザは、ここで説明される、対応するフィルタを生成するためのキーワードとして「嫌いな材料」を登録することができる。
【0092】
例えば、顧客のモバイルデバイス上のDIエンジンの第1のインスタンスは、食事制限に従ってフィルタリングされた情報をレストランのDIエンジンの第2のインスタンスに提供することができる。フィルタを使用して、どのようなデータがフィルタを生成するDIエンジンによって提供されるかをフィルタリングする、および/またはどのようなデータがデータに対するクエリに応答してDIエンジンによって提供されるかをフィルタリングすることができる。
【0093】
例えばレストランに関連付けられるコンピューティング装置上のレストランDIエンジン800Aは、販売に利用可能な品目のメニューを含むデータベース801Aを維持する。販売に利用可能な品目は、それらの材料に関連付けられる。例えばレストランに対する顧客のモバイルデバイス上の顧客DIエンジン800Bも、「レバー」および「ニンニク」に関連付けられる「嫌いな材料」キーワードを含むデータベース801Bを記憶する。
【0094】
DIエンジン800Aの近接範囲に入ると、DIエンジン800Bは、レストランDIエンジン800Aにメニューを要求するクエリを自動的に送信することができる。
【0095】
顧客DIエンジン800Bは、フィルタ802をレストランDIエンジン800Aに提供する。フィルタ802は、「ニンニク」および「レバー」が「嫌いな材料」に関連付けられていることを示す。データを提供することの一部として、レストランDIエンジン800Aは、2つのDIエンジンインスタンス間のトランザクションのコンテキストに基づいて、データをフィルタに通すことができる。
【0096】
レストランDIエンジン800Aは、フィルタを受信し、自身のデータ、例えば、提供された食事制限に従って品目が除去されたメニューを提供する際に、そのフィルタを適用する。フィルタ803は、フィルタリングされ得る他の品目に加えて、フィルタ802を含むことができる。たとえば、フィルタ803は、現在利用可能ではないメニュー品目も除外し得る。
【0097】
レストランDIエンジン800Aは、フィルタ803に従ってフィルタリングされたデータを含むメニュー801Cを提供する。実際には、DIエンジン800Bのためのコンピューティング装置は、ユーザに合わせて調整されて、ユーザの嫌いな材料を除外しながらメニュー品目を提供するメニューを受信する。
【0098】
次いで、レストランは、フィルタデータを受信し、レストランによって準備されたメニューをフィルタリングし、ユーザに提示されるべきでない料理を除外したメニューをユーザに示す。
【0099】
図9は、DIエンジンのキーワード辞書と併せて、履歴データおよび現在のデータに基づいて、DIエンジンによるアクションのコースの推奨を生成する例示的なプロセスのフローチャートである。DIエンジンは、本明細書で説明されるような異なるセンサからの入力データに加えて、他のデータソースにアクセスすることができる。例えば、DIエンジンは、ネットワークにアクセスして、交通情報のような特定の種類の情報を取得することができる。DIエンジンは、DIエンジンを実現するコンピューティング装置のユーザのために事前イベントを記述するデータを含むことができる履歴データを維持することができる。DIエンジンはまた、DIエンジンを実現するコンピューティング装置のユーザのためにスケジュールデータにアクセスすることもできる。異なるデータソースの組み合わせを使用して、DIエンジンは、例えば、ユーザのためのコンシェルジュまたはデジタルアシスタントとして機能することができる。
【0100】
図9において、モバイルデバイス905のDIエンジン900は、ライン910に従って履歴データを受信することができる。履歴データは、たとえば、モバイルデバイス905のユーザが毎週木曜日に子供を学習塾に送迎することであってもよい。履歴データはまた、ユーザが毎週木曜日の18:30に家を出ることを示すこともできる。
【0101】
DIエンジン900は、ライン904に従ってスケジュールデータを受信することができる。例えば、DIエンジン900は、スケジュールデータを使用して、今日は木曜日であり、学習塾がすぐに始まる、と判断することができる。
【0102】
DIエンジンは、ライン906に従って交通データを受信することができる。DIエンジンは、交通データから、かなりの交通量があると判断することができる。
【0103】
受信した情報を用いて、DIエンジンは、ライン910に従って、交通のため、18:30ではなく18:15に出るよう、ユーザに対して推奨を生成することができる。
【0104】
本開示の局面は、デジタル回路、コンピュータ可読記憶媒体において、1つもしくは複数のコンピュータプログラムとして、または前述の1つもしくは複数の組み合わせとして実現され得る。コンピュータ可読記憶媒体は、たとえば、クラウドコンピューティングプラットフォームによって実行可能であり、有形の記憶装置上に記憶される1つまたは複数の命令として、非一時的であり得る。
【0105】
本明細書では、「~するよう構成される」という句は、コンピュータシステム、ハードウェア、またはコンピュータプログラム、エンジン、もしくはモジュールの一部に関連する異なる文脈で使用される。システムが1つまたは複数の動作を実行するよう構成されると言われる場合、それは、システムが、動作中にシステムに1つまたは複数の動作を実行させる、システム上にインストールされた適切なソフトウェア、ファームウェア、および/またはハードウェアを有することを意味する。あるハードウェアが1つまたは複数の動作を実行するよう構成されると言われる場合、それは、ハードウェアが、動作時に入力を受信し、入力に従って1つまたは複数の動作に対応する出力を生成する1つまたは複数の回路を含むことを意味する。コンピュータプログラム、エンジン、またはモジュールが、1つまたは複数の動作を実行するよう構成されると言われる場合、それは、コンピュータプログラムが、1つまたは複数のコンピュータによって実行されると1つまたは複数のコンピュータに1つまたは複数の動作を実行させる1つまたは複数のプログラム命令を含むことを意味する。
【0106】
図面に示され、特許請求の範囲に記載される動作は、特定の順序で示されているが、それらの動作は、示される順序とは異なる順序で実行され得ること、ならびにいくつかの動作は、省略され得ること、複数回実行され得ること、および/または他の動作と並行して実行され得ることが理解される。さらに、異なる動作を実行するために構成される異なるシステム構成要素の分離は、構成要素が分離されることを必要とするものとして理解されるべきではない。記載される構成要素、モジュール、プログラム、およびエンジンは、単一のシステムとしてともに統合されるか、または複数のシステムの一部であり得る。
【0107】
特に明記しない限り、前述の代替例は相互排他的ではなく、特有の利点を達成するために様々な組み合わせで実現され得る。上述の特徴のこれらおよび他の変形ならびに組み合わせは、特許請求の範囲によって定義される主題から逸脱することなく利用することができるので、実施例の前述の記載は、特許請求の範囲によって定義される主題の限定としてではなく、例示として解釈されるべきである。加えて、本明細書に記載される例の提供、ならびに「~のような」、「~を含む」等の句で表された節は、特許請求の範囲の主題を特定の例に限定するものとして解釈されるべきではなく、実施例は、多くの可能な実現例のうちの1つのみを例示することを意図している。さらに、異なる図面における同じ参照番号は、同じまたは同様の要素を識別し得る。
【0108】
本明細書における実質的に任意の複数形および/または単数形の用語、例えば、(用語「要素」は、任意のシステム、コンポーネント、データ等のスタンドインである状態で)「ある/その要素」、「1つまたは複数の要素」、「複数の要素」、「ある複数個の要素」、「少なくとも1つの要素」等の使用に関して、当業者は、記載される文脈および/または用途に適切であるように、複数から単数に、および/または単数から複数に変換することができる。様々な単数形/複数形の置換は、明示されない限り、明確性のため、および限定することなく、本明細書に明確に記載され得る。
図1
図2
図3A
図3B
図4
図5
図6
図7
図8
図9
【国際調査報告】