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

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

▶ グーグル インコーポレイテッドの特許一覧

特表2024-533717パーソナライズされた自律スプレッドシート
<>
  • 特表-パーソナライズされた自律スプレッドシート 図1
  • 特表-パーソナライズされた自律スプレッドシート 図2
  • 特表-パーソナライズされた自律スプレッドシート 図3
  • 特表-パーソナライズされた自律スプレッドシート 図4
  • 特表-パーソナライズされた自律スプレッドシート 図5
  • 特表-パーソナライズされた自律スプレッドシート 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-09-12
(54)【発明の名称】パーソナライズされた自律スプレッドシート
(51)【国際特許分類】
   G06Q 50/10 20120101AFI20240905BHJP
【FI】
G06Q50/10
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024518729
(86)(22)【出願日】2022-09-23
(85)【翻訳文提出日】2024-05-24
(86)【国際出願番号】 US2022044614
(87)【国際公開番号】W WO2023049406
(87)【国際公開日】2023-03-30
(31)【優先権主張番号】17/485,008
(32)【優先日】2021-09-24
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100142907
【弁理士】
【氏名又は名称】本田 淳
(72)【発明者】
【氏名】ラベリー、アンドリュー ジェイ.
(72)【発明者】
【氏名】ワグナー、アール ジェイ.
(72)【発明者】
【氏名】オルブライト、マシュー
【テーマコード(参考)】
5L050
【Fターム(参考)】
5L050CC11
(57)【要約】
本方法は、処理デバイスによって、ユーザーに関連付けられたクライアントデバイスから、ユーザー向けの表形式の構造を有するパーソナライズされた文書を作成する要求に対応する自然言語クエリを受信することと、処理デバイスによって、パーソナライズされた文書に関連する1つ以上の属性カテゴリを判定することと、処理デバイスによって、ユーザーに関連する少なくとも1つの主観的なデータソースを含む少なくとも1つの外部データソースを識別することと、処理デバイスによって、少なくとも1つの外部データソースから、1つ以上の属性カテゴリを示すデータ項目を取得することと、処理デバイスによって、パーソナライズされた文書の各セルにそれぞれのデータ項目を入力することによってユーザー向けのパーソナライズされた文書を生成することと、を含む。
【特許請求の範囲】
【請求項1】
処理デバイスによって、ユーザーに関連付けられたクライアントデバイスから、前記ユーザー向けの表形式の構造を有するパーソナライズされた文書を作成するための要求に対応する自然言語クエリを受信することと、
前記処理デバイスによって、前記パーソナライズされた文書に関連する1つ以上の属性カテゴリを判定することと、
前記処理デバイスによって、少なくとも1つの外部データソースを識別することであって、前記少なくとも1つの外部データソースが、前記ユーザーに関連する少なくとも1つの主観的なデータソースを含む、前記識別することと、
前記処理デバイスによって、前記少なくとも1つの外部データソースから、前記1つ以上の属性カテゴリを示す複数のデータ項目を取得することと、
前記処理デバイスによって、前記パーソナライズされた文書の複数のセルの各セルに前記複数のデータ項目のそれぞれのデータ項目を入力することにより、前記ユーザー向けの前記パーソナライズされた文書を生成することと、を含む、方法。
【請求項2】
前記1つ以上の属性カテゴリが、1つ以上のプライマリ属性が入力された1つ以上のセルに対応するプライマリ属性カテゴリと、1つ以上のセカンダリ属性が入力された1つ以上のセルに対応するセカンダリ属性カテゴリと、を含む、請求項1に記載の方法。
【請求項3】
前記少なくとも1つの外部データソースが客観的なデータソースをさらに含み、前記少なくとも1つの外部データソースから前記複数のデータ項目を取得することが、
前記少なくとも1つの主観的なデータソースから、前記1つ以上のプライマリ属性に対応する1つ以上のデータ項目を取得することであって、前記少なくとも1つの主観的なデータソースが、前記ユーザーまたは前記ユーザーに関連付けられたユーザーグループに関連する内容を有する、前記取得することと、
前記客観的なデータソースから、前記1つ以上のセカンダリ属性に対応する1つ以上のデータ項目を取得することと、を含む、請求項2に記載の方法。
【請求項4】
前記処理デバイスによって、ユーザーアクティビティの変化を識別することと、
前記処理デバイスによって、前記パーソナライズされた文書の新しいバージョンを生成することであって、前記新しいバージョンは、前記ユーザーアクティビティの前記変化を反映する内容を含み、前記内容は、前記ユーザーまたは前記ユーザーに関連付けられたユーザーグループに関連する、前記生成することと、をさらに含む、請求項1に記載の方法。
【請求項5】
前記処理デバイスによって、前記少なくとも1つの外部データソースから1つ以上の追加のデータ項目を取得することと、
前記処理デバイスによって、前記1つ以上の追加のデータ項目に基づいて前記パーソナライズされた文書を更新することと、をさらに含む、請求項1に記載の方法。
【請求項6】
前記1つ以上の追加のデータ項目を取得することが、
追加の自然言語クエリを受信することと、
前記追加の自然言語クエリの受信に応じて、前記1つ以上の追加のデータ項目を取得することと、をさらに含む、請求項5に記載の方法。
【請求項7】
前記1つ以上の追加のデータ項目を取得することが、
前記パーソナライズされた文書に新たに関連するデータに対するユーザーの関心を識別することと、
前記新たに関連するデータが前記少なくとも1つの外部データソースに追加されたことを判定することと、
前記少なくとも1つの外部データソースから前記新たに関連するデータを取得することと、をさらに含む、請求項5に記載の方法。
【請求項8】
メモリデバイスと、
前記メモリデバイスに結合された処理デバイスであって、
ユーザーに関連付けられたクライアントデバイスから、前記ユーザー向けの表形式の構造を有するパーソナライズされた文書を作成するための要求に対応する自然言語クエリを受信することと、
前記パーソナライズされた文書に関連する1つ以上の属性カテゴリを判定することと、
少なくとも1つの外部データソースを識別することであって、前記少なくとも1つの外部データソースが、前記ユーザーに関連する少なくとも1つの主観的なデータソースを含む、前記識別することと、
前記少なくとも1つの外部データソースから、前記1つ以上の属性カテゴリを示す複数のデータ項目を取得することと、
前記パーソナライズされた文書の複数のセルの各セルに前記複数のデータ項目のそれぞれのデータ項目を入力することにより、前記ユーザー向けの前記パーソナライズされた文書を生成することと、を含む動作を実行する前記処理デバイスと、を含む、システム。
【請求項9】
前記1つ以上の属性カテゴリが、1つ以上のプライマリ属性が入力された1つ以上のセルに対応するプライマリ属性カテゴリと、1つ以上のセカンダリ属性が入力された1つ以上のセルに対応するセカンダリ属性カテゴリと、を含む、請求項8に記載のシステム。
【請求項10】
前記少なくとも1つの外部データソースが客観的なデータソースをさらに含み、前記少なくとも1つの外部データソースから前記複数のデータ項目を取得することが、
前記少なくとも1つの主観的なデータソースから、前記1つ以上のプライマリ属性に対応する1つ以上のデータ項目を取得することであって、前記少なくとも1つの主観的なデータソースが、前記ユーザーまたは前記ユーザーに関連付けられたユーザーグループに関連する内容を有する、前記取得することと、
前記客観的なデータソースから、前記1つ以上のセカンダリ属性に対応する1つ以上のデータ項目を取得することと、を含む、請求項8に記載のシステム。
【請求項11】
前記動作が、
ユーザーアクティビティの変化を識別することと、
前記パーソナライズされた文書の新しいバージョンを生成することであって、前記新しいバージョンが、前記ユーザーアクティビティの前記変化を反映する内容を含み、前記内容が、前記ユーザーまたは前記ユーザーに関連付けられたユーザーグループに関連する、前記生成することと、をさらに含む、請求項8に記載のシステム。
【請求項12】
前記動作が、
前記少なくとも1つの外部データソースから1つ以上の追加のデータ項目を取得することと、
前記1つ以上の追加のデータ項目に基づいて前記パーソナライズされた文書を更新することと、をさらに含む、請求項8に記載のシステム。
【請求項13】
前記1つ以上の追加のデータ項目を取得することが、
追加の自然言語クエリを受信することと、
前記追加の自然言語クエリの受信に応じて、前記1つ以上の追加のデータ項目を取得することと、をさらに含む、請求項12に記載のシステム。
【請求項14】
前記1つ以上の追加のデータ項目を取得することが、
前記パーソナライズされた文書に新たに関連するデータに対するユーザーの関心を識別することと、
前記新たに関連するデータが前記少なくとも1つの外部データソースに追加されたことを判定することと、
前記少なくとも1つの外部データソースから前記新たに関連するデータを取得することと、をさらに含む、請求項12に記載のシステム。
【請求項15】
メモリデバイスと、
前記メモリデバイスに結合された処理デバイスであって、
ユーザーから複数の自然言語クエリを受信することと、
前記複数の自然言語クエリの各自然言語クエリが類似のトピックに関連付けられていることを判定することと、
前記複数の自然言語クエリに基づいて表形式の構造を有するパーソナライズされた文書を作成するための推奨を前記ユーザーに送信することと、
前記ユーザーからの前記パーソナライズされた文書の作成指示の受信に応じて、前記パーソナライズされた文書を生成することと、を含む動作を実行する前記処理デバイスと、を含む、システム。
【請求項16】
前記パーソナライズされた文書を生成することが、
前記パーソナライズされた文書に関連する1つ以上の属性カテゴリを識別することと、
少なくとも1つの外部データソースから、前記1つ以上の属性カテゴリに対応する複数のデータ項目を取得することと、
前記パーソナライズされた文書の複数のセルの各セルに前記複数のデータ項目のそれぞれのデータ項目を入力することにより、前記パーソナライズされた文書を生成することと、を含む、請求項15に記載のシステム。
【請求項17】
少なくとも1つの外部データソースが主観的なデータソースと客観的なデータソースとを含む、請求項15に記載のシステム。
【請求項18】
前記動作が、
少なくとも1つの外部データソースから1つ以上の追加のデータ項目を取得することと、
前記1つ以上の追加のデータ項目に基づいて前記パーソナライズされた文書を更新することと、をさらに含む、請求項15に記載のシステム。
【請求項19】
前記1つ以上の追加のデータ項目を取得することが、
追加の自然言語クエリを受信することと、
前記追加の自然言語クエリの受信に応じて、前記1つ以上の追加のデータ項目を取得することと、をさらに含む、請求項18に記載のシステム。
【請求項20】
前記1つ以上の追加のデータ項目を取得することが、
前記パーソナライズされた文書に新たに関連するデータに対するユーザーの関心を識別することと、
前記新たに関連するデータが前記少なくとも1つの外部データソースに追加されたことを判定することと、
前記少なくとも1つの外部データソースから前記新たに関連するデータを取得することと、をさらに含む、請求項18に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の態様及び実施態様は、一般的には電子文書に関し、より具体的には、表形式の構造を有するパーソナライズされた自律文書に関する。
【背景技術】
【0002】
電子文書(以下、「文書」)は、複数のセルを含む表形式の構造を有することができる。このような文書は、「データ表」または単に「表」と呼ばれることがある。各セルは、特定の形式(例えば、数値データまたはテキストデータ)でデータを入力するための領域に対応しており、文書を使用して入力データを整理、分析、及び/または保存できる。各セルには、数値以外のデータ入力、セルに値を割り当てる数式を含めることができ、または空のままにすることもできる。数式には、数値、スプレッドシート内の1つ以上のセルの値への参照、算術演算子、関係演算子、関数などを含めることができる。さらに、文書はプログラミング機能をサポートできる。例えば、セルは文書内の1つ以上の他のセルから導出できる。いくつかの実施態様では、文書はスプレッドシートであり得る。スプレッドシート内のセルは、複数の行及び複数の列を含む配列として配置することができ、スプレッドシートの特定のセルは、表内の列の位置及び表内の行の位置を基準にしてアドレス指定または参照できる。いくつかの例では、列は文字(例えば、列A、列B、…)で表され、行は数字(例えば、行1、行2、…)で表される。例えば、列Dの行5にあるセルは、セルD5として参照できる。
【発明の概要】
【0003】
以下の概要は、本開示のいくつかの態様についての基本的な理解を提供するための、本開示の簡略化された概要である。この概要は本開示内容の包括的な概要ではない。これは、開示の主要もしくは重要な要素を特定すること、または本開示の特定の実施態様の範囲もしくは特許請求の範囲を定義することを意図するものではない。その唯一の目的は、後ほど提示される、より詳細な説明の前置きとして、本開示のいくつかの概念を簡略化した形で提示することである。
【0004】
いくつかの実施態様では、システム及び方法が開示される。一実施態様では、システムは、メモリデバイスと、メモリデバイスに結合された処理デバイスとを含む。処理デバイスは、ユーザーに関連付けられたクライアントデバイスから、ユーザー向けの表形式の構造を有するパーソナライズされた文書を作成する要求に対応する自然言語クエリを受信することと、パーソナライズされた文書に関連する1つ以上の属性カテゴリを判定することと、ユーザーに関連する少なくとも1つの主観的なデータソースを含む少なくとも1つの外部データソースを識別することと、少なくとも1つの外部データソースから、1つ以上の属性カテゴリを示す複数のデータ項目を取得することと、パーソナライズされた文書の複数のセルの各セルに複数のデータ項目のそれぞれのデータ項目を入力することによってユーザー向けのパーソナライズされた文書を生成することと、を含む動作を実行する。
【0005】
いくつかの実施態様では、1つ以上の属性カテゴリは、1つ以上のプライマリ属性が入力された1つ以上のセルに対応するプライマリ属性カテゴリと、1つ以上のセカンダリ属性が入力された1つ以上のセルに対応するセカンダリ属性カテゴリを含む。いくつかの実施態様では、少なくとも1つの外部データソースは、客観的なデータソースをさらに含み、少なくとも1つの外部データソースから複数のデータ項目を取得することは、少なくとも1つの主観的なデータソースから、1つ以上のプライマリ属性に対応する1つ以上のデータ項目を取得することと、ここで、少なくとも1つの主観的なデータソースは、ユーザーまたはユーザーに関連付けられたユーザーグループに関連する内容を有し、また、客観的なデータソースから、1つ以上のセカンダリ属性に対応する1つ以上のデータ項目を取得することと、を含む。
【0006】
いくつかの実施態様では、動作は、ユーザー活動の変化を識別し、パーソナライズされた文書の新しいバージョンを生成することをさらに含み、ここで、新しいバージョンは、ユーザー活動の変化を反映する内容を含み、その内容は、ユーザーまたはユーザーに関連付けられたユーザーグループに関連する。
【0007】
いくつかの実施態様では、動作には、少なくとも1つの外部データソースから1つ以上の追加のデータ項目を取得することと、1つ以上の追加のデータ項目に基づいてパーソナライズされた文書を更新することと、をさらに含む。いくつかの実施態様では、1つ以上の追加のデータ項目を取得することは、追加の自然言語クエリを受信することと、追加の自然言語クエリの受信に応じて1つ以上の追加のデータ項目を取得することと、をさらに含む。いくつかの実施態様では、1つ以上の追加のデータ項目を取得することは、パーソナライズされた文書に対する新たな関連データに対するユーザーの関心を識別することと、新たな関連データが少なくとも1つの外部データソースに追加されたことを判定することと、少なくとも1つの外部データソースから新たな関連データを取得することと、をさらに含む。
【0008】
別の実施態様では、システムは、メモリデバイスと、メモリデバイスに結合された処理デバイスとを含む。処理デバイスは、ユーザーから複数の自然言語クエリを受信することと、複数の自然言語クエリの各自然言語クエリが類似のトピックに関連付けられていることを判定することと、複数の自然言語クエリに基づいて表形式の構造を有するパーソナライズされた文書を作成するようにユーザーに推奨を送信することと、ユーザーからのパーソナライズされた文書の作成指示の受信に応じてパーソナライズされた文書を生成することと、を含む動作を実行する。
【0009】
いくつかの実施態様では、パーソナライズされた文書を生成することは、パーソナライズされた文書に関連する1つ以上の属性カテゴリを識別することと、少なくとも1つの外部データソースから、1つ以上の属性カテゴリに対応する複数のデータ項目を取得することと、パーソナライズされた文書の複数のセルの各セルに複数のデータ項目のそれぞれのデータ項目を入力することによってパーソナライズされた文書を生成することと、を含む。
【0010】
いくつかの実施態様では、少なくとも1つの外部データソースは、主観的なデータソース及び客観的なデータソースを含む。
【0011】
いくつかの実施態様では、動作は、少なくとも1つの外部データソースから1つ以上の追加のデータ項目を取得することと、1つ以上の追加のデータ項目に基づいてパーソナライズされた文書を更新することと、をさらに含む。いくつかの実施態様では、1つ以上の追加のデータ項目を取得することは、追加の自然言語クエリを受信することと、追加の自然言語クエリの受信に応じて1つ以上の追加のデータ項目を取得することと、をさらに含む。いくつかの実施態様では、1つ以上の追加のデータ項目を取得することは、パーソナライズされた文書に対する新たな関連データに対するユーザーの関心を識別することと、新たな関連データが少なくとも1つの外部データソースに追加されたことを判定することと、少なくとも1つの外部データソースから新たな関連データを取得することと、をさらに含む。
【0012】
本開示の態様及び実施態様は、以下の詳細な説明、ならびに本開示のさまざまな態様及び実施態様の添付図面からより完全に理解されるであろうが、これらの図面は、本開示を特定の態様または実施態様に限定するものではなく、説明及び理解のみを目的としている。
【図面の簡単な説明】
【0013】
図1】本開示の実施態様に従ったシステムアーキテクチャの一例を示す。
図2】本開示の実施態様に従った、パーソナライズされたスプレッドシートの一例を説明する図を示す。
図3】本開示の実施態様に従った、パーソナライズされた文書を自律的に作成する方法のフロー図を示す。
図4】本開示の実施態様に従った、パーソナライズされた文書を自律的に改良する方法のフロー図を示す。
図5】本開示の実施態様に従った、推奨されるパーソナライズされた文書を自律的に作成する方法のフロー図を示す。
図6】本開示の実施態様に従った、例示的なコンピュータシステムを説明するブロック図を示す。
【発明を実施するための形態】
【0014】
本開示の態様は、表形式の構造を有するパーソナライズされた自律電子文書に関する。表形式の構造(例えば、スプレッドシート)を有する電子文書(「文書」)を作成する際の課題の1つは、文書にデータを入力することである。例として、列A-Iと行1-3を含むスプレッドシートの次の部分を表1に示す。
【表1】
【0015】
表1は、書籍のセットに関連するデータを整理したスプレッドシートの一部である。この書籍のセットには、John Doeによる「ABC」と、Jane Doeによる「XYZ」と、書籍のセットの各書籍の属性とが含まれている。具体的には、列Aの各セルは書籍の名前を定義し、列Bの各セルは、同じ行内の列Aのセルによって定義された書籍の著者を定義し、列Cの各セルは、同じ行内の列Aのセルによって定義された書籍の初版発行日を定義し、列Dの各セルは、同じ行内の列Aのセルによって定義された書籍の最新版発行日を定義し、列Eの各セルは、同じ行内の列Aのセルによって定義された書籍の売上ランキングを定義し、列Fの各セルは、同じ行内の列Aのセルによって定義された書籍の2019年の販売数を定義し、列Gの各セルは、同じ行内の列Aのセルによって定義された書籍の2020年の販売数を定義し、列Hの各セルは、同じ行内の列Aのセルによって定義された書籍の2021年の販売数を定義し、列Iの各セルは、同じ行内の列Aのセルによって定義された書籍の2019年から2021年までの販売数を定義する。列Iのセルの値は、同じ行内の列F-Hのセルの対応する値から導出できる。例えば、セルI2の値は、セルF2からセルH2までの値の合計として導出できる。
【0016】
列A及び列Bは、ユーザーがコンピューティングデバイスを使用してスプレッドシートに手動で入力できる。列Iの値は列F-Hから導出されるため、列F-Hにデータを入力すると、列Iのセルにデータが自動的に入力される。従来のスプレッドシートでは、数式を使用して他のセルの値を参照してセルの値を導出できるが(前述のとおり)、従来のスプレッドシートでは通常、ユーザーが大量のデータを手動で入力する必要がある。スプレッドシートにデータを手動で入力すると、人為的なエラーにより一部のセルに誤った値が含まれる可能性があり、かなりの時間と計算リソースを要することがある。
【0017】
本開示の態様は、表形式の構造(例えば、スプレッドシート)を有するパーソナライズされた文書を自律的に作成することにより、上記及びその他の欠陥に対処する。パーソナライズされた文書とは、特定のユーザーまたはユーザーグループ向けにカスタマイズされた文書である(例えば、特定のユーザーまたはユーザーグループに固有の情報に基づいて取得された構造及び/または内容を含む)。ここで説明するように、パーソナライズされた文書は、パーソナライズされた文書全体、または完全なパーソナライズされた文書の一部である可能性がある。パーソナライズされた文書は、1つ以上の外部データソースからデータを取得するために自然言語クエリを利用することで生成できる。
【0018】
自然言語処理とは、人間とコンピューティングデバイス間の対話を可能にするために自然言語を処理することを指すことができる。例えば、自然言語処理技術は、コンピューティングデバイスが理解できない非構造化自然言語フォーマットを有する自然言語クエリを、コンピューティングデバイスが理解できる構造化フォーマットを有するクエリに変換して、自然言語処理タスクを実行するために使用できる。自然言語クエリは、テキストクエリ、音声クエリなどであり得る。自然言語処理タスクの例は、テキスト及び音声処理、形態素解析、構文解析、語彙意味論、関係意味論などを含む。
【0019】
例えば、ユーザー向けのパーソナライズされた文書を作成するための要求に対応する自然言語クエリをユーザーから受信すると、コンピューティングシステムのパーソナライズされた文書作成マネージャは、その自然言語クエリを1つ以上の外部データソースにアクセスするためのデータアクセスクエリに変換できる。外部データソースは、外部データベースまたはリポジトリ、ナレッジグラフ、Webサイトなどであり得る。自然言語クエリは、テキストクエリ、音声クエリなどを含み得る。例えば、自然言語クエリは、音声制御デジタルアシスタントによって受信される音声クエリであり得る。
【0020】
いくつかの実施態様では、1つ以上の外部データソースは、ユーザーの個人的なナレッジグラフを含む。個人的なナレッジグラフは、連絡先、電子メール、検索エンジンの履歴、電子地図検索、電子カレンダーなどのさまざまなソースから作成できる。一部の実施態様では、パーソナライズされた文書作成マネージャは、ユーザーに関連するコホート情報をさらに統合して、個人的なナレッジグラフを作成できる。例えば、ユーザーの個人的なナレッジグラフに基づいて、ユーザーが1つ以上のコホートまたはグループに属していると判定される場合がある。例えば、ユーザーは、ユーザーの個人的なナレッジグラフから弁護士として識別できるため、弁護士以外の人に比べて法律問題についてより深い知識を有している場合がある。ユーザーは「弁護士」コホートに関連付けることができ、パーソナライズされた文書は弁護士コホートに関連付けられているユーザーに合わせて調節できる。例えば、1つ以上の外部データソースは、ユーザーが関連付けられているコホートに関連するコホートナレッジグラフを含み得る。したがって、パーソナライズされた文書は、ユーザーの個人情報及び/または他の同様のユーザーに基づいて、特定のユーザーに合わせて独自に調節できる。ユーザーの個人的なナレッジグラフに含まれていない場合のある情報を補足するために、パーソナライズされた文書作成マネージャは、そのような情報を取得するための検索エンジンクエリとして自然言語クエリを提供し得る。
【0021】
スプレッドシートに関しては、パーソナライズされた文書作成マネージャは、スプレッドシートの各列を定義する1つ以上の属性カテゴリと、各列内のセルに入力するためのいくつかの属性を識別し得る。1つ以上の属性カテゴリを識別することは、クエリからプライマリ属性カテゴリを抽出することを含む可能性があり、プライマリ属性カテゴリはクエリのメイントピックとして識別される。プライマリ属性カテゴリは、スプレッドシートの第1の列(例えば、列A)に割り当てることができる。1つ以上の属性カテゴリを識別することは、プライマリ属性カテゴリに関連する1つ以上のセカンダリ属性カテゴリを識別することをさらに含み得る。各セカンダリ属性カテゴリは、スプレッドシート内の対応する列に割り当てることができ、列内の各セルには属性を示す値が入力される。1つ以上のセカンダリ属性カテゴリは、外部データソースを使用して実行された分析に基づいて(例えば、パーソナライズされたナレッジグラフ内のノード間の接続の分析に基づいて)識別できる。
【0022】
パーソナライズされた文書作成マネージャは、パーソナライズされた文書を最初に作成した後に、さらに改良することができる。例えば、パーソナライズされた文書作成マネージャは、パーソナライズされた文書にデータを追加したり、パーソナライズされた文書に新たな関連データを追加することを提案したり、新たな関連データをパーソナライズされた文書に自動的に統合したりすることができる。さらに、パーソナライズされた文書作成マネージャは、ユーザーから受信した自然言語クエリの履歴に基づいて、ユーザー向けにパーソナライズされた文書を作成することを提案することもできる。例えば、ユーザーが性質が似ている一連の質問をした場合、パーソナライズされた文書作成マネージャは、少なくともそれらの質問に対する回答を提供するパーソナライズされた文書の作成を提案できる。パーソナライズされた文書作成マネージャの動作の詳細については、以下で説明する。
【0023】
パーソナライズされた文書を自動的に作成し、パーソナライズされた文書にデータを自動的に入力することで、手動入力によって発生し得る人為的エラーを排除し、パーソナライズされた文書を作成してデータを入力するために必要な時間とコンピューティングリソースを削減できる。さらに、パーソナライズされた文書を自動的に改良することで、計算効率がさらに向上し、コンピューティングリソースの使用量が削減される。例えば、新たな関連データをパーソナライズされた文書に統合すると、ユーザーによる新たな関連データの検索や、このデータのパーソナライズされた文書への手動入力が不要になり、パーソナライズされた文書の内容更新が最適化され、時間とリソースの消費がさらに削減される。
【0024】
図1は、本開示の実施態様に従った、システムアーキテクチャ100の一例を示す。システムアーキテクチャ100(ここでは「システム」とも呼ばれる)は、ネットワーク130を介して文書プラットフォーム120(例えば、サーバ)などのサーバに接続できる少なくとも1つのクライアントデバイス110を含む。簡潔にするために、1つのクライアントデバイス110と1つの文書プラットフォーム120がネットワーク130に接続されているように示されている。実際には、クライアントデバイス及び/または文書プラットフォームがさらに存在する場合がある。また、場合によっては、クライアントデバイスが文書プラットフォームの1つ以上の機能を実行し、文書プラットフォームがクライアントデバイスの1つ以上の機能を実行することもある。クライアントデバイス110は、文書プラットフォーム120から情報にアクセスしたり、情報を受信したりする場合がある。システムアーキテクチャ100はクラウドベースの環境であってもよく、これにより、文書プラットフォーム120をホストするサーバ(複数可)とクライアントデバイス110間の通信をネットワーク130経由で可能にし、電子文書を保存及び共有できる。あるいは、システムアーキテクチャ100は、ローカルに相互接続されたシステムに適用することもできる。さらに、本開示のいくつかの態様は、スプレッドシート及びスプレッドシートを管理する文書アプリケーションを参照して説明されているが、本開示のシステム、方法、機能、及び実施形態は、あらゆる種類の電子文書、及びあらゆる種類のホストアプリケーションによって提供されるあらゆる種類のプログラムまたはサービスに適用できることは、当業者には理解されるはずである。
【0025】
実施態様において、ネットワーク130は、パブリックネットワーク(例えば、インターネット)、プライベートネットワーク(例えば、ローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN))、有線ネットワーク(例えば、イーサネット(登録商標)ネットワーク)、無線ネットワーク(例えば、802.11ネットワークまたはWi-Fiネットワーク)、セルラーネットワーク(例えば、Long Term Evolution(LTE)ネットワーク)、ルーター、ハブ、スイッチ、サーバコンピューター、及び/またはそれらの組み合わせを含む場合がある。クライアントデバイス110は、パーソナルコンピュータ(PC)、ラップトップ、携帯電話、スマートフォン、タブレットコンピュータ、ネットブックコンピュータ、ネットワーク接続テレビなどのコンピューティングデバイスを含み得る。クライアントデバイス110は、1人以上のユーザーに関連付けられる可能性があり、クライアントデバイス110は「ユーザーデバイス」とも呼ばれ得る。
【0026】
図示の実施態様では、文書プラットフォーム120はクライアントデバイス110と対話する場合があり、クライアントデバイス110は文書プラットフォーム120と連携して電子文書(「文書」)アプリケーションを実行し、表形式の構造を有する文書を含むさまざまな文書を管理できる。例えば、文書アプリケーションはオンライン文書アプリケーションである可能性がある。いくつかの実施態様では、文書アプリケーションはスプレッドシートアプリケーション(例えば、オンラインスプレッドシートアプリケーション)である。代替的に、文書アプリケーションは、文書プラットフォーム120を使用せずに、ここで説明する機能を提供することもできる。また、代替的に、文書プラットフォーム120は、(指定された文書アプリケーションではなく)Webブラウザ115と対話して、例えば、文書を表示したり、文書に関連するユーザー入力を受信することなどができる。
【0027】
クライアントデバイス110のユーザーの文書は、文書プラットフォーム120によって、例えばデータストア140に保存される場合がある。図1では単一のデバイスとして示されているが、文書プラットフォーム120は、例えば、単一のコンピューティングデバイスとして、または複数の分散コンピューティングデバイスとして実装されてもよい。デバイスがサーバとして機能するかクライアントデバイスとして機能するかは、実装されている特定のアプリケーションによって異なる可能性があることを理解し、認識する必要がある。つまり、コンピューティングデバイスがクライアントとして動作しているか、サーバとして動作しているかは、アプリケーション内でのコンピューティングデバイスの役割のコンテキストによって決まる可能性がある。クライアントデバイス及びサーバの関係は、それぞれのデバイス上で実行されるプログラムにより、及びクライアントとサーバの関係を互いに有することにより生じる可能性がある。
【0028】
上記で説明したように、クライアントデバイス110と文書プラットフォーム120との対話は、クライアントデバイス110で実行されるWebブラウザ115を通じて実装され得る。「Webブラウザ」という用語は、ブラウザプログラムがスタンドアロンプログラムであるか、オペレーティングシステムの一部として組み込まれたブラウザプログラムなどの組み込みプログラムであるかに関係なく、ユーザーがマークアップ文書(例えば、Web文書)を参照できるようにするプログラムを指すことを意図する。いくつかの実施態様では、本明細書で説明する文書アプリケーションは、文書アプリケーションの一部が1つ以上のクライアントデバイス110及び文書プラットフォーム120で実行される分散Webアプリケーションとして実装される。より具体的には、クライアントデバイス110(複数可)は、文書プラットフォーム120から文書アプリケーションを要求することがある。これに応じて、文書プラットフォーム120は、文書アプリケーションの一部をクライアント110でのローカル実行用に送信することがある。したがって、文書アプリケーションは、文書プラットフォーム120と1つ以上のクライアントデバイス110にわたって分散アプリケーションとして動作することがある。このように、クライアントデバイス110は、文書プラットフォーム120によってホストされる文書アプリケーションを使用するために、ローカルに文書アプリケーションをインストールする必要がない場合がある。
【0029】
一般に、文書プラットフォーム120によって実行されるものとして実施態様で説明されている機能は、適切な場合、他の実施態様ではクライアントデバイス110でも実行できる。さらに、特定のコンポーネントに割り当てられた機能は、異なるコンポーネントまたは複数のコンポーネントが連携して動作することで実行できる。文書プラットフォーム120は、適切なアプリケーションプログラミングインターフェイスを通じて他のシステムまたはデバイスに提供されるサービスとしてアクセスされることもできる。
【0030】
本開示の実施態様では、「ユーザー」は単一の個人として表される可能性がある。ただし、本開示の他の実施態様では、「ユーザー」は、ユーザーの集団及び/または自動化されたソースによって制御されるエンティティであることを含む。例えば、ソーシャルネットワーク内のコミュニティとして統合された個々のユーザーの集団は、「ユーザー」と見なすことができる。別の例では、自動化された使用者は、文書プラットフォーム120のトピックチャネルなどの自動化された取り込みパイプラインである可能性がある。
【0031】
本明細書で説明するように、文書は、分散型Webアプリケーションとして実装することがあり、そのアプリケーションの一部は複数のクライアントデバイス110及び文書プラットフォーム120で実行され、単一の文書で作業する複数のユーザー間のコラボレーションを供する場合がある。例えば、複数のユーザーが同時にまたは共同でこのような共同文書を編集し、各ユーザーの編集内容をリアルタイムまたはほぼリアルタイム(例えば、数ミリ秒または数秒以内)で表示することができる。あるユーザーが文書(例えば、文書のセル)を編集すると、その編集内容は文書プラットフォーム120に送信され、その後、スプレッドシートを編集または表示している他の共同作業ユーザーに転送されることがある。この目的のために、文書プラットフォーム120は、2人のユーザーが特定のセルを同時に編集しようとした場合など、共同作業を行うユーザー間の競合を処理することがある。例えば、文書プラットフォーム120は、受信した第1の編集を受け入れるか、または何らかの方法で共同作業ユーザーを優先順位付けして、優先度の高いユーザーの編集が優先度の低いユーザーの編集よりも優先されるようにすることがある。ユーザーの編集が文書プラットフォーム120によって拒否された場合、文書プラットフォーム120は、編集が拒否されたことをユーザーに通知するメッセージをユーザーに返信することがある。このようにして、複数のユーザーが1つのスプレッドシート上で、場合によってはリアルタイム(またはほぼリアルタイム)で共同作業を行うことができる。いくつかの実施態様では、特定の文書を表示及び共同作業する関係者は、文書の最初の作成者によって指定される場合がある。例えば、文書の最初の作成者に「管理者」権限を与えると、作成者は他の共同作業者候補それぞれに対して権限を指定することができる。最初の作成者は、他の共同作業者に、スプレッドシートの編集、スプレッドシートの表示のみ、スプレッドシートの指定された部分の編集、共同作業者のリストへのユーザーの追加など、1つ以上の操作を実行する権限を与えるように指定してもよい。例えば、特定のユーザーはスプレッドシートの特定の部分を編集できる場合があるが、他の指定されたセルまたはセルの領域はそれらのユーザーに対して「ロック」されたままになり、ユーザーはロックされたセルを表示することはできるが編集することはできない。一部の実施態様では、文書は誰でも閲覧及び/または編集できる「パブリック」文書として指定される場合がある。
【0032】
さらに示されているように、文書プラットフォーム120は、パーソナライズされた文書(例えば、スプレッドシート)を作成するためのパーソナライズされた文書作成マネージャ122を含む場合がある。パーソナライズされた文書作成マネージャ122は、クライアントデバイス110からのユーザー向けのパーソナライズされた文書を作成するための要求に対応する自然言語クエリの受信に応じて、1つ以上の外部データソース150-1から150-Nからのデータを文書124に取り込むことにより、自然言語クエリに基づいてユーザー向けのパーソナライズされた文書124を自律的に作成または生成できる。自然言語クエリは、テキストクエリ、音声クエリなどを含み得る。例えば、自然言語クエリは、音声制御デジタルアシスタントによって受信される音声クエリであり得る。
【0033】
パーソナライズされた文書124の構築方法を判定するために、パーソナライズされた文書作成マネージャ122は、構築されるパーソナライズされた文書に関連する1つ以上の属性カテゴリを識別できる。各属性カテゴリは属性のタイプを定義する。例えば、1つ以上の属性カテゴリは、プライマリ属性を定義するプライマリ属性カテゴリを含み得る。1つ以上の属性カテゴリは、プライマリ属性カテゴリに関連し、それぞれのセカンダリ属性を定義する1つ以上の追加またはセカンダリ属性カテゴリをさらに含むことができる。セカンダリ属性カテゴリは、ユーザーが関心を持ち得るプライマリ属性カテゴリに関連する属性に関係する。例えば、「私のお気に入りのレストランのスプレッドシートを作成する」という自然言語クエリの場合、プライマリ属性カテゴリはコンテキストに基づいて「レストラン」として識別されることができ、セカンダリ属性カテゴリの例には、例えば、平均価格、料理の種類、営業時間などが含まれ得る。
【0034】
パーソナライズされた文書作成マネージャ122は、自然言語クエリを、外部データソース150-1から150-Nの少なくとも1つにアクセスするためのデータアクセスクエリに、さらに変換できる。例えば、パーソナライズされた文書作成マネージャ122は、自然言語クエリを適切なコマンド形式(例えば、SQLコマンド形式)に変換して、外部データソース150-1から150-Nの少なくとも1つからデータを取得できる。自然言語クエリが音声クエリ(例えば、音声制御デジタルアシスタントによって受信されるもの)である場合、パーソナライズされた文書作成マネージャ122は、まず適切な、音声からテキストへの変換技術を実行して、音声をテキスト形式に変換し、データアクセスクエリに変換する。
【0035】
いくつかの実施態様では、外部データソース150-1から150-Nの少なくとも1つは、個人的または主観的なナレッジグラフを含む第1のナレッジグラフと、客観的なナレッジグラフを含む第2のナレッジグラフを含む。一般的に、ナレッジグラフは、エンティティ(例えば、オブジェクト、イベント、概念)のネットワークに関する構造化データの包括的なコレクション、各エンティティ間の関係、及び各エンティティに関する属性またはプロパティを提供するグラフ構造のデータモデルである。ナレッジグラフは、それぞれのエンティティに対応する複数のノードと、ノード(エンティティ)のペア間の関係を定義する複数のエッジを含み得る。ナレッジグラフは、無向グラフ、またはノード間の一方向の関係またはリンクを定義する有向グラフとして具体化できる。ナレッジグラフは推論メカニズムを使用して新しい知識を導き出すことができる。
【0036】
個人的なナレッジグラフは、連絡先、電子メール、検索エンジンの履歴、電子地図履歴など、ユーザーに関する個人情報または主観的な情報を含む複数のソースから作成できる。個人的なナレッジグラフは、プライマリ属性カテゴリのプライマリ属性を識別するために使用できる。例えば、プライマリ属性カテゴリが「レストラン」である自然言語クエリ「私のお気に入りのレストランのスプレッドシートを作成する」に関しては、個人的なナレッジグラフを使用して、ユーザーのお気に入りのレストランの名前を識別できる。次に客観的なナレッジグラフを使用して、各レストランのセカンダリ属性(例えば、平均価格、料理の種類、営業時間など)を見つけることができる。客観的なナレッジグラフに含まれていない場合のある情報を補足するには、検索エンジンを使用してそのような情報を照会することができる。
【0037】
パーソナライズされた文書124の結果をユーザー向けにさらにカスタマイズするために、パーソナライズされた文書作成マネージャ122は、ユーザーに関連するコホート情報をさらに統合して、個人的なナレッジグラフを作成できる。例えば、ユーザーの個人的なナレッジグラフに基づいて、ユーザーが1つ以上のコホートまたはグループに属していると判定される場合がある。例えば、ユーザーは、ユーザーの個人的なナレッジグラフから弁護士として識別できるため、弁護士以外の人に比べて法律問題についてより深い知識を持っている場合がある。ユーザーは「弁護士」コホートに割り当てられることができ、パーソナライズされた文書124は弁護士コホートに関連付けられているユーザーに合わせて調節できる。例えば、1つ以上の外部データソースは、ユーザーが関連付けられているコホートに関連するコホートナレッジグラフを含み得る。したがって、パーソナライズされた文書は、特定のユーザーに合わせて独自に調整できる。
【0038】
外部データソース150-1から150-Nの少なくとも1つからデータが取得されると、パーソナライズされた文書作成マネージャ122はパーソナライズされた文書124を作成できる。例えば、パーソナライズされた文書124にスプレッドシートが含まれている場合、スプレッドシートは、それぞれの属性カテゴリに割り当てられた1つ以上の列を含むように作成されることができ、スプレッドシートの行には、属性カテゴリに対応する属性を示すそれぞれの値が入力された1つ以上のセルを含めることができる。プライマリ属性カテゴリはスプレッドシートの第1の列(例えば、列A)に割り当てることができ、各セカンダリ属性カテゴリ(存在する場合)はスプレッドシート内の対応する追加列に割り当てることができる。第1の行(例えば、行1)の各セルには、対応する列の属性カテゴリの名前を入力でき、後続の行の各セルには、属性カテゴリのそれぞれの値を入力できる。パーソナライズされた文書124が作成された後、ユーザーはクライアントデバイス110を介してパーソナライズされた文書124の表示を変更できる。例えば、パーソナライズされた文書124がスプレッドシートである場合、ユーザーは適切なスプレッドシートツールを使用してデータを再配置または操作できる。スプレッドシートの例については、図2を参照して以下でさらに詳しく説明する。
【0039】
各セカンダリ属性カテゴリは、以前の自然言語クエリまたは検索履歴の履歴分析に基づいて選択され、プライマリ属性カテゴリに関連する最も人気のある属性カテゴリを識別できる。例えば、パーソナライズされた文書作成マネージャ122は、他のユーザー(例えば、ユーザーの1つ以上のコホートの他のユーザー)が過去に質問したプライマリ属性カテゴリに関連する情報を識別して、現在のユーザーが関心を持つ可能性がある情報を特定できる。これを使用して、ユーザーは直接要求していないが、検索履歴に基づいてユーザーが関心を持つ可能性のある情報を含むパーソナライズされた文書124を作成できる。
【0040】
例えば、自然言語クエリ「ニューヨーク市における私のお気に入りのレストランのスプレッドシートを作成する」に関して、パーソナライズされた文書作成マネージャ122は、プライマリ属性カテゴリ「ニューヨーク市のレストラン」に関連する少なくとも1つの人気属性カテゴリとして「営業時間」を識別できる。さらに、パーソナライズされた文書作成マネージャ122は、パーソナライズされた文書124に含めることができる別の人気属性カテゴリとして「ディナーの平均価格」を識別できる。これは、他のユーザーが以前に「ニューヨーク市のレストランでのディナーの平均価格はいくらですか?」などの自然言語クエリを提供したため、パーソナライズされた文書作成マネージャ122が、この情報は具体的に要求されていないものの、現在のユーザーが関心を持つ可能性があると判定した。
【0041】
さらに、パーソナライズされた文書作成マネージャ122は、ユーザーに固有の情報へのアドホックインターフェイスをユーザーに提供できる。例えば、ユーザーは、ページの長さ、コメントの数、作成日、最終更新日などの属性を有する、文書プラットフォーム120に保存されているユーザーの電子文書のスプレッドシートを要求できる。これに応じて、パーソナライズされた文書作成マネージャ122は、文書プラットフォーム120によって管理されているユーザーの文書に基づいて、要求されたスプレッドシートを作成できる。いくつかの実施態様では、パーソナライズされた文書作成マネージャ122は、クライアントデバイス110によってホストされるパーソナライズされた文書作成エージェント(図示せず)と連携する。パーソナライズされた文書作成エージェントは、ローカルデータストア/データベースへのアクセス、及び/またはクライアントデバイス110によってホストされるローカルアプリケーション(例えば、ユーザー連絡先アプリケーション、電子メールアプリケーション、Webブラウザ、電子地図アプリケーション、電子カレンダーアプリケーション、文書処理アプリケーションなど)との、例えばプロセス間通信を介する通信を実行し、ユーザー固有の情報を取得し、その情報を使用してユーザー向けにパーソナライズされた文書(例えば、パーソナライズされたスプレッドシート)を作成できる。
【0042】
パーソナライズされた文書作成マネージャ122は、1つ以上の追加機能を提供できる。いくつかの実施態様では、パーソナライズされた文書作成マネージャ122は、外部データソースに戻るアクセス(例えば、外部データソースへのリンク)をさらに提供できる。これにより、ユーザーは、パーソナライズされた文書124に入力されたデータの詳細を調べることができ、データの信頼性を検証する方法が提供される。例えば、ユーザーが外部データソースからのデータの正確性に懸念がある場合、ユーザーは(例えば、提供されたリンクを介して)外部データソース自体にアクセスして、データの正確性を信頼するかどうかを判断できる。
【0043】
いくつかの実施態様では、パーソナライズされた文書作成マネージャ122は、データ信頼性機能をさらに実装できる。例えば、データ信頼性機能は、特定のソースから取得されたデータが特定の自然言語クエリに対する正確な応答であるという信頼性に関連付けることができる。データ信頼性機能では、信頼性のパーセンテージ、信頼性の範囲に対応するシンボル(例えば、色)(例えば、信頼性が90%を超える場合は緑の円、信頼性が50%未満の場合は赤の円)など、データの視覚的な信頼性インジケータを利用できる。ユーザーは、対応するセルにデータを入力するために超える必要があるカスタマイズ可能な信頼性しきい値を設定できる。例えば、一部の自然言語クエリでは、ユーザーは信頼性の高いデータのみが使用されるようにしたい場合があるが(例えば、信頼性しきい値を90%の信頼性に設定する)、一方、他の自然言語クエリでは、ユーザーは信頼性の低いデータに対してより広い許容範囲を有する場合がある(例えば、信頼性しきい値を設定しない)。
【0044】
いくつかの実施態様では、パーソナライズされた文書作成マネージャ122は、自然言語クエリの意図をさらに識別して、非構造化データソース及び/または構造化データソースを活用できる。例えば、パーソナライズされた文書124がスプレッドシートである場合、パーソナライズされた文書作成マネージャは、列カテゴリとスプレッドシートの1つ以上の属性を組み合わせて、自然言語クエリの意図を識別できる。
【0045】
いくつかの実施態様では、パーソナライズされた文書作成マネージャ122は多次元データを処理できる。例えば、パーソナライズされた文書124が、お気に入りのレストランのリストを含むスプレッドシートであるとする。パーソナライズされた文書124の列の1つに「食事の平均価格」がある可能性があり、ユーザーは食事の平均価格に基づいて作成されたグラフや計算を表示することに興味がある場合がある。「食事の平均価格」列の各セルは、1次元の値(例えば、最新のデータ)または多次元の値(例えば、一定期間にわたる食事の平均価格の配列)にすることができる。データはプログラムによってそれぞれのセルに入力されるため、パーソナライズされた文書作成マネージャ122は、グラフ化及び/または計算のために時系列の平均食事価格データを取得できる。
【0046】
いくつかの実施態様では、パーソナライズされた文書作成マネージャ122は、自然言語クエリに応じて取得されたデータのデータ型を識別できる。例えば、データは、GPS座標、日付、単一の整数値、整数値の配列などの特定のデータ型を有することができる。パーソナライズされた文書作成マネージャ122は、データ操作(例えば、グラフの作成、計算)を支援するために使用できるデータ型に関するメタデータを保持できる。
【0047】
いくつかの実施態様では、パーソナライズされた文書作成マネージャ122は、パーソナライズされた文書の改良を提供することができる。パーソナライズされた文書の改良により、ユーザーは追加の自然言語クエリを使用してパーソナライズされた文書124を拡張できるようになる。パーソナライズされた文書124がスプレッドシートである場合、パーソナライズされた文書の改良を使用して、パーソナライズされた文書124の列及び/または行を増やすことができる。例えば、お気に入りのレストランのスプレッドシートに関して、ユーザーが文書124に料理の種類に関する情報を追加したい場合、ユーザーは追加の自然言語クエリを提供して、各レストランの料理の種類の列を挿入することができる(例えば、「私のお気に入りのレストランのスプレッドシートに料理の種類を追加する」)。
【0048】
いくつかの実施態様では、パーソナライズされた文書作成マネージャ122は、トレンドまたはバイラリティ機能を組み込んで、パーソナライズされた文書124に入力する属性を選択できる。例えば、パーソナライズされた文書作成マネージャ122は、外部データソースを使用して、パーソナライズされた文書124に関して新たな関連データを識別し、その新たな関連データを属性としてパーソナライズされた文書124に入力することができる。さらに、パーソナライズされた文書作成マネージャ122は、新たな関連データを検出し、その新たな関連データを文書内に組み込むための提案をユーザーに提供することができる。例えば、パーソナライズされた文書作成マネージャ122は、文書の内容に関連する新たな関連データを使用してパーソナライズされた文書を更新するための提案をグラフィカルユーザーインターフェイス(GUI)を介してユーザーに提供できる。別の例として、パーソナライズされた文書作成マネージャは、提案を提供する代わりに、パーソナライズされた文書の新たな関連データに対するユーザーの関心を識別し(例えば、パーソナライズされた文書に関するユーザーの以前のクエリまたはパーソナライズされた文書の手動更新に基づいて)、新たな関連データが外部データソースに追加されたことを判定し、外部データソースからの新たな関連データでパーソナライズされた文書を自動的に更新することができる。例えば、ユーザーがユーザーの地域にある地元のレストランのパーソナライズされた文書を作成し、その地域で新しいレストランが流行していると判定された場合(例えば、オンラインレビューから)、その新しいレストランはユーザーの関心を引く可能性があると判定され、このレストランをパーソナライズされた文書に組み込む(またはパーソナライズされた文書に自動的に組み込む)ことが推奨され得る。
【0049】
いくつかの実施形態では、パーソナライズされた文書作成マネージャ122及び/またはパーソナライズされた文書作成エージェントは、ユーザーアクティビティの変化を識別し(例えば、パーソナライズされた文書作成エージェントは、ユーザーが別の場所へ移動中であるか、すでに別の場所にいるかという情報をユーザーのカレンダーアプリケーションから受信できる)、パーソナライズされたスプレッドシートの新しいバージョンを生成することができる。新しいバージョンは、ユーザーアクティビティの変化を反映し、ユーザーまたはユーザーに関連付けられたユーザーグループ(コホート)に関連する内容を含む場合がある。例えば、サンフランシスコのユーザーが(例えば、ユーザーのカレンダーまたはユーザーの位置情報データにより)現在ボストンにいると判定された場合、パーソナライズされた文書作成マネージャは、ユーザー向けのレストランの推奨に関する新しいパーソナライズされた文書を生成できる。レストランの推奨は、ユーザーの個人的なナレッジグラフ及び/またはユーザーコホート情報に基づいて生成できる。
【0050】
いくつかの実施態様では、パーソナライズされた文書作成マネージャ122は、1つ以上の自然言語クエリに基づいてパーソナライズされた文書124の作成を推奨または提案できる。推奨は、ユーザーの質問行動の分析に基づいて行うことができる。例えば、ユーザーが性質の似ている一連の質問をした場合、パーソナライズされた文書作成マネージャ122は、少なくともそれらの質問に対する回答を提供するためにパーソナライズされた文書124の作成を提案できる。例として、ユーザーが「ニューヨーク市における私のお気に入りのレストランはどこですか?」と質問し、続いて「フィラデルフィアにおける私のお気に入りのレストランはどこですか?」と質問した場合、パーソナライズされた文書作成マネージャ122は、ニューヨーク市、フィラデルフィア、さらには他の都市にあるユーザーのお気に入りのレストランをリストしたパーソナライズされた文書124を作成できることをユーザーに通知できる。ユーザーが承諾した場合、ユーザーがパーソナライズされた文書124の作成を直接要求していなくても、データ管理マネージャ122はユーザー向けのパーソナライズされた文書124を作成できる。
【0051】
自律的な文書作成により、パーソナライズされた文書124は、理論的には大量のデータ(例えば、スプレッドシート内の多数の列及び/または行)を有することができる。これにより、リソースの消費量の増加、データ取得コストの増加などが生じる可能性がある。これを解決するために、一部の実施態様では、パーソナライズされた文書作成マネージャ122は、パーソナライズされた文書124のサイズに関して構成可能なサイズ制限を設定することができる。例えば、パーソナライズされた文書作成マネージャ122は、パーソナライズされた文書124に含まれるべき行数及び/または列数を定義するユーザー入力に基づいて、パーソナライズされた文書124のサイズを調整できる。別の例として、パーソナライズされた文書作成マネージャ122は、パーソナライズされた文書124に大量のデータ(例えば、しきい値のデータ量を超えるデータ量)が含まれる可能性を検出し、大量のデータについてユーザーに通知することができる。通知には、ユーザーに対してパーソナライズされた文書124に含めるデータの量を定義するよう求める要求を含めることができる。さらに、または代替的に、パーソナライズされた文書124の最大サイズは、ユーザー定義の設定またはしきい値にすることができる。したがって、パーソナライズされた文書作成マネージャ122は、計算リソースの効率を向上させる機能を実装できる。
【0052】
上記の説明に加えて、ユーザーに対して、ここで説明するシステム、プログラム、または機能がユーザー情報(例えば、ユーザーのソーシャルネットワーク、ソーシャルアクション、またはアクティビティ、職業、ユーザーの好み、またはユーザーの現在地に関する情報)の収集を可能にするかどうか、及びいつ可能にするか、また、サーバからユーザーに内容または情報が送信されるかどうかを選択できる権限が提供される場合がある。さらに、特定のデータは、保存または使用される前に、個人を特定できる情報が削除されるように、1つ以上の方法で処理される場合がある。例えば、ユーザーのIDは、ユーザー個人を識別できる情報でユーザーを特定できないように処理されることがある。また、位置情報が取得される場所でユーザーの地理的位置が一般化されることもある(市、郵便番号、または州レベルなど)。そのため、ユーザーの特定の位置を割り出すことはできない。したがって、ユーザーは、ユーザーについてどのような情報が収集されるか、その情報がどのように使用されるか、及びユーザーにどのような情報が提供されるかを管理し得る。
【0053】
図2は、本開示の実施態様に従った、パーソナライズされたスプレッドシートの一例を説明する図を示す。パーソナライズされたスプレッドシート200は、自然言語クエリ「私のお気に入りのレストランのスプレッドシートを作成する」に応じて、パーソナライズされた文書作成マネージャ(例えば、図1のパーソナライズされた文書作成マネージャ122)を使用して生成されたものと想定される。図2にはパーソナライズされたスプレッドシートが示されているが、この例は限定的なものと見なされるべきではなく、表形式の構造を有する任意の適切なパーソナライズされた文書が考えられる。
【0054】
図に示すように、スプレッドシート200は、複数の列210Aから210Eと、複数の行220-1から220-4を含む。5列及び4行が表示されているが、列数と行数を制限するものではない。行220-1は、対応する列のセル内に挿入されるデータの型を示す説明用の行である。
【0055】
列210Aは属性カテゴリ「レストラン」に割り当てられる。つまり、「レストラン」はスプレッドシート200Aのプライマリ属性カテゴリである。テキスト「レストラン」が、行220-1及び列210Aで定義されたアドレスを有するセルに入力され、列210Aの他のセルに保持されているデータがレストランの名前に対応していることを示す(例えば、列210A及び行220-2から220-4で定義されたアドレスを有する各セル)。例えば、行220-2及び列210Aで定義されたアドレスを有するセルにはコーチ名「ABC」が入力され、行220-3及び列210Aで定義されたアドレスを有するセルにはコーチ名「XYZ」が入力される。したがって、列210Aは「レストラン」列として定義され、それぞれのレストラン名を示す値を有する複数のセルを含む。
【0056】
スプレッドシート200に示されているプライマリ属性カテゴリ「レストラン」の属性(例えば、ABC及びXYZ)は、ユーザーに関連する少なくとも1つの外部データソースから取得できる。例えば、ユーザーに関連する少なくとも1つの外部データソースは、ユーザーの個人的なナレッジグラフを含むことができる。さらに、少なくとも1つの外部データソースは、ユーザーに関連付けられた少なくとも1つのコホートに関連する少なくとも1つの外部データソースを含むことができる。例えば、ユーザーに関連付けられた少なくとも1つのコホートに関連する少なくとも1つの外部データソースは、少なくとも1つのコホートの少なくとも1つのコホートナレッジグラフを含むことができる。
【0057】
さらに示されているように、スプレッドシート200には、レストランに関連するセカンダリ属性カテゴリの属性が入力されている。列210Bは、セカンダリ属性カテゴリ「料理」に割り当てられる。テキスト「料理」が、行220-1及び列210Bで定義されたアドレスを有するセルに入力され、列210Bの他のセルに保持されているデータがそれぞれのレストランの料理に対応していることを示す(例えば、列210B及び行220-2から220-4で定義されたアドレスを有する各セル)。例えば、行220-2及び列210Bで定義されたアドレスを有するセルには、ABCがイタリア料理レストランであることを示すために「イタリア料理」というテキストが入力され、行220-3及び列210Bで定義されたアドレスを有するセルには、XYZがメキシコ料理レストランであることを示すために「メキシコ料理」というテキストが入力される。したがって、列210Bは「料理」列として定義され、列210Aにリストされているレストランのそれぞれの料理を示す値を有する複数のセルを含む。
【0058】
列210Cは、セカンダリ属性カテゴリ「平均価格」に割り当てられる。テキスト「平均価格」が、行220-1及び列210Cで定義されたアドレスを有するセルに入力され、列210Cの他のセルに保持されているデータがそれぞれのレストランの平均価格に対応していることを示す(例えば、列210C及び行220-2から220-4で定義されたアドレスを有する各セル)。例えば、行220-2及び列210Cで定義されたアドレスを有するセルには、ABCでの食事の平均価格が10ドルであることを示す値「10ドル」が入力され、行220-3及び列210Cで定義されたアドレスを有するセルには、XYZでの食事の平均価格が25ドルであることを示す値「25ドル」が入力される。したがって、列210C は「平均価格」列として定義され、列210Aにリストされているレストランのそれぞれについての平均食事価格を示す値を有する複数のセルを含む。
【0059】
列210Dは、セカンダリ属性カテゴリ「開店時間」に割り当てられる。テキスト「開店時間」が、行220-1及び列210Dで定義されたアドレスを有するセルに入力され、列210Dの他のセルに保持されているデータがそれぞれのレストランの開店時間に対応していることを示す(例えば、列210D及び行220-2から220-4で定義されたアドレスを有する各セル)。例えば、行220-2及び列210Dで定義されたアドレスを有するセルには、ABCが午前11時に開店することを示す値「午前11:00」が入力され、行220-3と列210Dで定義されたアドレスを有するセルには、XYZが午前8時に開店することを示す値「午前8:00」が入力される。したがって、列210Dは「開店時間」列として定義され、列210Aにリストされているレストランのそれぞれの開店時間を示す値を有する複数のセルを含む。
【0060】
列210Eは、セカンダリ属性カテゴリ「閉店時間」に割り当てられる。テキスト「閉店時間」が、行220-1及び列210Eで定義されたアドレスを有するセルに入力され、列210Eの他のセルに保持されているデータがそれぞれのレストランの閉店時間に対応していることを示す(例えば、列210E及び行220-2から220-4で定義されたアドレスを有する各セル)。例えば、行220-2及び列210Eで定義されたアドレスを有するセルには、ABCが午後10時に閉店することを示す値「午後10:00」が入力され、行220-3と列210Eで定義されたアドレスを有するセルには、XYZが午後11時に閉店することを示す値「午後11:00」が入力される。したがって、列210Eは「閉店時間」列として定義され、列210Aにリストされているレストランのそれぞれの閉店時間を示す値を有する複数のセルを含む。
【0061】
スプレッドシート200に表示されるセカンダリ属性カテゴリの属性(例えば、料理、平均価格、開店時間、閉店時間)は、少なくとも1つの客観的な外部データソースから取得できる。例えば、少なくとも1つの客観的な外部データソースは、少なくとも1つの客観的なナレッジグラフを含むことができる。少なくとも1つの客観的なナレッジグラフで見つからない情報については、検索エンジンまたはその他の適切なエンティティを使用してそのような情報を検索できる。
【0062】
要求に応じて、スプレッドシート200に追加のデータを追加できる。例えば、各レストランの場所に関する情報を追加するには、ユーザーは適切な自然言語クエリ(例えば、「各レストランの場所をスプレッドシートに追加する」)を提供してもよい。クエリの受信に応じて、列210Aにリストされている各レストランの場所を示す「場所」列をスプレッドシート200に追加できる。
【0063】
図3は、本開示の実施態様に従った、パーソナライズされた文書を自律的に作成する方法300のフロー図を示す。方法300は、ハードウェア(回路、専用ロジックなど)、ソフトウェア(例えば、処理デバイス上で実行される命令)、またはそれらの組み合わせを含み得る処理ロジックによって実行され得る。一実施態様では、方法300の一部またはすべての動作は、図1のパーソナライズされた文書作成マネージャ122によって実行される場合がある。
【0064】
ブロック310では、処理ロジックは、ユーザーに関連付けられたクライアントデバイスから、ユーザー向けの表形式の構造を有するパーソナライズされた文書を作成するための要求に対応する自然言語クエリを受信する。いくつかの実施態様では、パーソナライズされた文書は、複数のセルの列と複数のセルの行を含むパーソナライズされたスプレッドシートである。自然言語クエリは、GUIを介してユーザーから受信したテキスト自然言語クエリ、(例えば、音声制御デジタルアシスタント介して)ユーザーから受信した音声自然言語クエリなどのうちの少なくとも1つを含むことができる。
【0065】
ブロック320では、処理ロジックは、パーソナライズされた文書に関連する1つ以上の属性カテゴリを判定する。各属性カテゴリは属性のタイプに対応しており、パーソナライズされた文書の各セルには、属性を示すデータを入力できる。いくつかの実施態様では、1つ以上の属性カテゴリは、プライマリ属性カテゴリと1つ以上のセカンダリ属性カテゴリを含む。プライマリ属性カテゴリ及び1つ以上のセカンダリ属性カテゴリは、任意の適切な自然言語処理技術を使用した自然言語クエリの意味分析に基づいて識別できる。
【0066】
ブロック330では、処理ロジックは、ユーザーに関連する少なくとも1つの主観的なデータソースを含む少なくとも1つの外部データソースを識別する。少なくとも1つの外部データソースは、少なくとも1つの客観的なデータソースをさらに含むことができる。プライマリ属性カテゴリの属性は、少なくとも1つの主観的なデータソースから識別でき、1つ以上のセカンダリ属性カテゴリそれぞれの属性は、少なくとも1つの客観的なデータソースから識別できる。
【0067】
例えば、少なくとも1つの主観的なデータソースは、ユーザーに関連付けられた個人的なナレッジグラフを含むことができ、少なくとも1つの客観的なデータソースは、客観的なナレッジグラフを含むことができる。さらに、少なくとも1つの主観的なデータソースは、ユーザーに関連付けられた少なくとも1つのコホートに対応する少なくとも1つのコホートデータソース(例えば、少なくとも1つのコホートナレッジグラフ)を含むことができる。少なくとも1つの外部データソースに存在しない情報は、例えば、検索エンジンのクエリまたはその他の適切なエンティティから取得できる。自然言語処理を使用して導出された自然言語クエリの意図は、少なくとも1つの外部データソース内のデータの検索をガイドするために使用できる。
【0068】
ユーザーは、複数のアプリケーションをサポートするユーザーアカウントに関連付けることができる。ユーザーアカウントによってサポートされ得るアプリケーションの例には、電子メールアプリケーション、カレンダーアプリケーション、電子地図アプリケーション、連絡先アプリケーションなどが含まれる。ユーザーに関連する少なくとも1つの主観的なデータソースは、ユーザーアカウントによってサポートされるアプリケーションから取得したユーザーデータに基づいて構築できる。例えば、電子メールアプリケーションからの電子メールデータ、電子地図アプリケーションからの電子地図データ、カレンダーアプリケーションからのカレンダーデータなどに基づいて、ユーザーの個人的なナレッジグラフを構築することができる。
【0069】
ブロック340では、処理ロジックは、少なくとも1つの外部データソースから、1つ以上の属性カテゴリを示す複数のデータ項目を取得する。各データ項目は、特定の属性カテゴリの属性に対応する。例えば、データ項目は、プライマリ属性カテゴリのプライマリ属性(例えば、少なくとも1つの主観的なデータソースから取得される)に対応し、別のデータ項目は、セカンダリ属性カテゴリのセカンダリ属性(例えば、少なくとも1つの客観的なデータソースから取得される)に対応し得る。
【0070】
複数のデータ項目を取得することは、自然言語クエリを、少なくとも1つの外部データソースから複数のデータ項目を取得するためのデータアクセスクエリに変換することを含むことができる。例えば、処理ロジックは、自然言語クエリを、少なくとも1つの外部データソースから複数のデータ項目を取得するための適切なコマンド形式(例えば、SQLコマンド形式)に変換できる。自然言語クエリが音声クエリ(例えば、音声制御デジタルアシスタントによって受信されるもの)である場合、処理ロジックは、まず適切な、音声からテキストへの変換技術を実行して、音声をテキスト形式に変換し、データアクセスクエリに変換する。クエリ変換は、意味表現、言語理解、質問応答に関連する機能を提供するクエリ変換メカニズムを使用して実行できる。これらの機能を活用すると、自然言語クエリの意図を理解し、少なくとも1つの外部データソース内でデータを検索するために使用されるデータアクセスクエリに変換できる。さらに、クエリ変換メカニズムは、以前の自然言語クエリ変換及び/または検索の結果(例えば、以前のWeb検索クエリ、検索結果、及び関連する検索結果のユーザー選択)に基づいて、自然言語クエリの意図を理解する能力を向上させることができる。
【0071】
ブロック350では、処理ロジックは、パーソナライズされた文書の複数のセルの各セルに複数のデータ項目のそれぞれのデータ項目を入力することにより、ユーザー向けのパーソナライズされた文書を生成する。例えば、パーソナライズされた文書がパーソナライズされたスプレッドシートである場合、パーソナライズされたスプレッドシートの第1の列をプライマリ属性カテゴリに割り当てることができ、第1の列の第1のセルにはプライマリ属性カテゴリの識別子が入力され、第1の列の他のセルにはプライマリ属性カテゴリの属性に関連するデータ項目に対応する値が入力される。パーソナライズされたスプレッドシートの第2の列は、セカンダリ属性カテゴリの1つに割り当てることができ、第2の列の第1のセルにはセカンダリ属性カテゴリの識別子が入力され、第2の列の他のセルにはセカンダリ属性カテゴリの属性に関連するデータ項目に対応する値が入力される。第2の列のセルの値は、同じ行内の第1の列のセルの値に関係する。
【0072】
例えば、少なくとも1つの外部データソースは、ナレッジグラフなどのプライマリデータソースを含むことができる。ただし、プライマリデータソースにクエリを満たすための特定の情報がまだ含まれていない場合もある。例えば、生成される文書に地元のレストランに関するデータ項目が含まれている場合、文書に含まれる少なくとも1つのレストランの営業時間が、プライマリデータソース(例えば、ナレッジグラフ)に現在存在しない場合がある。このような場合、少なくとも1つの外部データソースは、プライマリデータソースに欠けている特定の情報を補足するセカンダリデータソースをさらに含む可能性がある。例えば、セカンダリデータソースはWebサイトであり、検索エンジン内のクエリを利用して識別できる。
【0073】
いくつかの実施態様では、パーソナライズされた文書は、設定可能なサイズ制限に従って生成できる。例えば、ユーザーは、パーソナライズされた文書をどのくらいの大きさにするかに関するヒント(例えば、スプレッドシートの行数及び/または列数)をパーソナライズされた文書作成マネージャ122に提供できる。別の例として、処理ロジックは、パーソナライズされた文書に大量のデータ(例えば、しきい値のデータ量を超えるデータ量)が含まれる可能性を検出し、大量のデータについてユーザーに通知することができる。通知には、ユーザーに対してパーソナライズされた文書に含めるデータの量を定義するよう求める要求を含めることができる。さらに、または代替的に、パーソナライズされた文書の最大サイズは、ユーザー定義の設定またはしきい値にすることができる。ブロック310-340に関するさらなる詳細は、図1-2を参照して上記で説明した。
【0074】
図4は、本開示の実施態様に従った、パーソナライズされた文書を自律的に改良する方法400のフロー図を示す。方法400は、ハードウェア(回路、専用ロジックなど)、ソフトウェア(例えば、処理デバイス上で実行される命令)、またはそれらの組み合わせを含み得る処理ロジックによって実行できる。一実施態様では、方法400の一部またはすべての動作は、図1のパーソナライズされた文書作成マネージャ122によって実行される場合がある。
【0075】
ブロック410では、処理ロジックは、少なくとも1つの外部データソースから1つ以上の追加のデータ項目を取得し、表形式の構造を有するパーソナライズされた文書に統合する。例えば、パーソナライズされた文書は、複数の列のセルと複数の行のセルを含むパーソナライズされたスプレッドシートであり得る。自然言語クエリを受信する前に、パーソナライズされた文書が作成されていると想定される。いくつかの実施態様では、パーソナライズされた文書は、図3を参照して上記で説明した方法に従って自律的に作成された。いくつかの実施態様では、パーソナライズされた文書の少なくとも一部はユーザーによって手動で作成された。
【0076】
いくつかの実施態様では、追加の自然言語クエリの受信に応じて、1つ以上の追加のデータ項目が取得される。追加の自然言語クエリは、GUIを介してユーザーから受信したテキスト自然言語クエリ、(例えば、音声制御デジタルアシスタントを介して)ユーザーから受信した音声自然言語クエリなどのうちの少なくとも1つを含むことができる。例えば、処理ロジックは、追加の自然言語クエリから、パーソナライズされた文書に関連する1つ以上のセカンダリ属性カテゴリを識別し、図3のブロック320から340を参照して上記で説明したプロセスと同様に、1つ以上のセカンダリ属性カテゴリに対応する少なくとも1つの外部データソースから1つ以上の追加のデータ項目を取得できる。
【0077】
いくつかの実施態様では、1つ以上の追加のデータ項目は、少なくとも1つの外部データソースから、パーソナライズされた文書に新たに関連するデータとして識別される。例えば、新たに関連するデータは、パーソナライズされた文書内に現在存在しないトレンド情報やバイラル情報が含まれる可能性がある。
【0078】
ブロック420では、処理ロジックは1つ以上の追加のデータ項目に基づいてパーソナライズされた文書を更新する。いくつかの実施形態では、パーソナライズされた文書を更新することは、1つ以上の追加のデータ項目に基づいて、パーソナライズされた文書の1つ以上の既存のセルの1つ以上の属性を含む可能性がある。
【0079】
いくつかの実施形態では、パーソナライズされた文書を更新することは、新たに関連するデータに基づいて1つ以上の属性が入力された1つ以上のセルを追加することを含む。例えば、パーソナライズされた文書にスプレッドシートが含まれている場合、パーソナライズされた文書を更新することは、パーソナライズされた文書に1つ以上の追加の列を加え、1つ以上の追加の列の1つ以上のセルに、それぞれ特定の追加のデータ項目に対応する1つ以上のそれぞれの属性を入力することが含まれる可能性がある。別の例として、パーソナライズされた文書がスプレッドシートである場合、パーソナライズされた文書を更新することは、パーソナライズされた文書の1つ以上の既存の列に1つ以上の追加のセルを加え、1つ以上の既存の列の1つ以上のセルに、それぞれ特定の追加のデータ項目に対応する1つ以上のそれぞれの属性を入力することを含むことができる。ブロック410及び420に関するさらなる詳細は、図1図3を参照して上記で説明した。
【0080】
図5は、本開示の実施態様に従った、推奨されるパーソナライズされた文書を自律的に作成する方法500のフロー図を示す。方法500は、ハードウェア(回路、専用ロジックなど)、ソフトウェア(例えば、処理デバイス上で実行される命令)、またはそれらの組み合わせを含む処理ロジックによって実行され得る。一実施態様では、方法500の一部またはすべての動作は、図1のパーソナライズされた文書作成マネージャ122によって実行される場合がある。
【0081】
ブロック510では、処理ロジックはユーザーから複数の自然言語クエリを受信する。例えば、自然言語クエリは、少なくとも第1の自然言語クエリと第2の自然言語クエリを含むことができる。各自然言語クエリは、GUIを介してユーザーから受信したテキスト自然言語クエリ、(音声制御デジタルアシスタントなどを介して)ユーザーから受信した音声自然言語クエリなどのうちの少なくとも1つを含むことができる。
【0082】
ブロック520では、処理ロジックは、自然言語クエリが類似のトピックに関連付けられていることを判定する。自然言語クエリが類似のトピックに関連付けられていることを判定することは、少なくとも第1及び第2の自然言語クエリが類似の情報要求に関連していることを識別することを含み得る。例えば、第1の自然言語クエリは「ニューヨークにおける私のお気に入りのレストランはどこですか?」で、第2の自然言語クエリは「フィラデルフィアにおける私のお気に入りのレストランはどこですか?」になる可能性がある。
【0083】
ブロック530では、処理ロジックは、自然言語クエリに基づいて表形式の構造を有するパーソナライズされた文書を作成するための推奨をユーザーに送信する。例えば、第1の自然言語クエリが「ニューヨークにおける私のお気に入りのレストランはどこですか?」で、第2の自然言語クエリが「フィラデルフィアにおける私のお気に入りのレストランはどこですか?」の場合、処理ロジックは、米国のすべての州にあるユーザーのお気に入りのレストランに関する情報を含むパーソナライズされた文書を作成するための提案を生成できる。
【0084】
ブロック540では、処理ロジックは、ユーザーから、パーソナライズされた文書を作成するための指示を受信する。処理ロジックがユーザーからパーソナライズされた文書を作成する指示を受け取らない場合(例えば、ユーザーが推奨に対して否定的な応答を供する場合)、処理ロジックはパーソナライズされた文書を作成せず、プロセスは終了する。
【0085】
ブロック550では、処理ロジックがパーソナライズされた文書を生成する。パーソナライズされた文書は、図3を参照して上記で説明した方法と同様の方法で生成することができる。例えば、処理ロジックは、自然言語クエリから識別された属性カテゴリに対応する少なくとも1つの外部データソース(例えば、少なくとも1つの主観的な外部データソース及び少なくとも1つの客観的な外部データソース)からデータ項目を取得し、パーソナライズされた文書の各セルにそれぞれのデータ項目を入力することができる。ブロック510-550に関するさらなる詳細は、図1-4を参照して上記で説明した。
【0086】
図6は、本開示の実施態様に従った、例示的なコンピュータシステムを示すブロック図である。コンピュータシステム600は、図1の文書プラットフォーム120またはクライアントデバイス110であり得る。マシンは、エンドポイントとサーバのネットワーク環境においてサーバまたはエンドポイントマシンという立場で動作するか、またはピアツーピア(または分散)ネットワーク環境におけるピアマシンとして動作することができる。マシンは、テレビ、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、パーソナルデジタルアシスタント(PDA)、携帯電話、ウェブアプライアンス、サーバ、ネットワークルータ、スイッチまたはブリッジ、もしくはそのマシンが取るべき行動を指定する1セットの命令を、(順を追って、またはそれ以外の方法で)実行することが可能な任意のマシンであり得る。さらに、単一のマシンのみが例示されるが、用語「マシン」はまた、本明細書で考察される方法論のうちの任意の1つ以上を実行するために、個々でまたは共同して1セットの(または複数のセットの)命令を実行する任意のマシンの集まりを含めるように利用されるべきである。
【0087】
例示のコンピュータシステム600は、処理デバイス(プロセッサ)602、メインメモリ604(例えば、読み取り専用メモリ(ROM)、フラッシュメモリ、同期DRAM(SDRAM)、ダブルデータレート(DDR SDRAM)、またはDRAM(RDRAM(登録商標))などのダイナミックランダムアクセスメモリ(DRAM)など)、スタティックメモリ606(例えば、フラッシュメモリ、スタティックランダムアクセスメモリ(SRAM)など)、及びデータストレージデバイス618を含み、これらはバス640を介して相互に通信する。
【0088】
プロセッサ(処理デバイス)602は、マイクロプロセッサ、中央処理装置などの1つ以上の汎用処理デバイスを表す。より具体的には、プロセッサ602は、複合命令セットコンピュータ(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、超長命令語(VLIM)マイクロプロセッサ、または他の命令セットを実装するプロセッサ、もしくは命令セットの組み合わせを実装するプロセッサを含むことができる。プロセッサ602は、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、ネットワークプロセッサなどの1つ以上の専用処理デバイスであり得る。プロセッサ602は、本明細書で説明する動作を実行するための命令605(例えば、チャンネルラインナップの視聴者数を予測するための命令)を実行するように構成されている。
【0089】
コンピュータシステム600は、ネットワークインターフェースデバイス608をさらに含み得る。コンピュータシステム600は、ビデオ表示ユニット610(例えば、液晶ディスプレイ(LCD)またはブラウン管(CRT))、入力デバイス612(例えば、キーボード、英数字キーボード、動作検知入力デバイス、タッチスクリーン)、カーソル制御デバイス614(例えば、マウス)、及び信号生成デバイス620(例えば、スピーカー)をさらに含むことができる。
【0090】
データ記憶装置618は、本明細書で説明した方法論または機能の1つ以上を具体化する1セット以上の命令605(例えば、最適化されたエンコーダパラメータ設定を取得するためのもの)が格納された非一時的な機械可読記憶媒体624(コンピュータ可読記憶媒体でもある)を含むことができる。命令は、コンピュータシステム600によって実行される間、メインメモリ604内及び/またはプロセッサ602内に完全にまたは少なくとも部分的に存在させることもでき、メインメモリ604及びプロセッサ602はまた機械可読記憶媒体を構成する。命令は、ネットワークインターフェースデバイス608を介してネットワーク630上でさらに送受信されることができる。
【0091】
一実施態様では、命令605は、口頭の声明をポーリング質問として指定するための命令を含む。コンピュータ可読記憶媒体624(機械可読記憶媒体)は単一の媒体であるように一例の実施態様には示されているが、用語「コンピュータ可読記憶媒体」及び「機械可読記憶媒体」は、1セット以上の命令を格納する単一の媒体または複数の媒体(例えば、集中型または分散型データベース、及び/または関連付けられたキャッシュ及びサーバ)を含むように解釈されるべきである。「コンピュータ可読記憶媒体」及び「機械可読記憶媒体」という用語には、機械によって実行される1セットの命令を記憶、符号化、または搬送することができ、機械に本開示の方法論の1つ以上を実行させることができるあらゆる媒体も含まれるものと解釈される。したがって、「コンピュータ可読記憶媒体」及び「機械可読記憶媒体」という用語には、ソリッドステートメモリ、光学媒体、磁気媒体が含まれるものと解釈されるが、これらに限定されない。
【0092】
本明細書全体を通して「1つの実施態様(one implementation)」または「1つの実施態様(an implementation)」という言及は、実施態様に関連して説明されている特定の機能、構造、または特性が少なくとも1つの実施態様に含まれていることを意味する。したがって、この明細書のさまざまな場所で「1つの実施態様では(in one implementation)」または「1つの実施態様では(in an implementation)」という語句が使用されている場合、状況によっては、必ずしも同じ実施態様を指すとは限らないが、同じ実施態様を指すこともある。さらに、特定の特徴、構造、または特色は、1つ以上の実施態様における任意の好適な方法で組み合わせられてもよい。
【0093】
「含む(includes)」、「含んでいる(including)」、「有する(has)」、「含む(contains)」という用語、それらの変形、及びその他の類似の語が詳細な説明または請求項のいずれかで使用される限りにおいて、これらの用語は、追加の要素またはその他の要素を排除することなく、オープンな転換語としての「含む(comprising)」という用語と同様に包括的であることが意図されている。
【0094】
本願で用いられる場合、「コンポーネント」、「モジュール」、「システム」などの用語は、一般に、コンピュータ関連の構成要素、ハードウェア(例えば、回路)、ソフトウェア、ハードウェア及びソフトウェアの組み合わせのいずれか、または1つ以上の具体的な機能性を有する操作可能なマシンに関連する構成要素を指すことを意図している。例えば、コンポーネントは、プロセッサ(例えば、デジタル信号プロセッサ)上で実行されるプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行スレッド、プログラム、及び/またはコンピュータなどであり得るが、これらに限定されない。図示のために、コントローラ上で動作しているアプリケーション及びコントローラの両方がコンポーネントであってもよい。1つ以上のコンポーネントが実行のプロセス及び/またはスレッド内に存在してもよく、コンポーネントは1つのコンピュータ上にローカライズされるか、及び/または2つ以上のコンピュータ間に分散されてもよい。さらに、「デバイス」は、特別に設計されたハードウェア、ハードウェアが特定の機能(例えば、関心ポイント及び/または記述子の生成)を実行できるようにするソフトウェアの実行によって特化された汎用ハードウェア、コンピュータ可読媒体上のソフトウェア、またはそれらの組み合わせの形で提供される可能性がある。
【0095】
前述のシステム、回路、モジュールなどは、複数のコンポーネント及び/またはブロック間の相互作用に関して説明された。このようなシステム、回路、コンポーネント、ブロックなどには、それらのコンポーネントまたは指定されたサブコンポーネント、指定されたコンポーネントまたはサブコンポーネントの一部、及び/または追加のコンポーネントが含まれ、前述のさまざまな順列及び組み合わせに従って含まれ得ることが理解される。サブコンポーネントは、親コンポーネント内に含まれるのではなく(階層的)、他のコンポーネントと通信的に結合されたコンポーネントとして実装することもできる。さらに、1つ以上のコンポーネントを1つのコンポーネントに統合して集約的な機能を提供したり、複数の個別のサブコンポーネントに分散したりできること、また、管理層などの任意の1つ以上の中間層を提供して、そのようなサブコンポーネントと通信的に結合し、統合された機能を提供できることにも留意する必要がある。本明細書に記載の任意のコンポーネントは、本明細書に具体的に記載されていないが、当業者には既知の1つ以上の他のコンポーネントと相互作用する場合もある。
【0096】
さらに、ここで使用されている「例」または「例示的な」という語は、例、事例、または説明としての意味を有する。本明細書で「例示的な」として説明されているいかなる態様または設計も、必ずしも他の側面または設計よりも好ましい、または有利であると解釈されるものではない。むしろ、「例」や「例示的な」という言葉の使用は、概念を具体的に提示することを意図している。本出願で使用されるように、用語「または」は、排他的な「または」ではなく包含的な「または」を意味することが意図される。つまり、別様に指定されない限り、または文脈から明らかでない限り、「XはAまたはBを採用する」とは、自然な包括的置換を意味することが意図される。つまり、XがAを採用する場合、XがBを採用する場合、またはXがA及びBの両者を採用する場合には、「XはAまたはBを採用する」は、あらゆる前述の事例の下に満たされる。加えて、本出願及び添付の特許請求の範囲で使用される冠詞「a」及び「an」は概して、他に指定されない限り、または文脈から単数形を指すことが明らかでない限り、「1つ以上」を意味すると解釈される。
【0097】
最後に、ここで説明する実施態様には、ユーザー及び/またはユーザーのアクティビティを記述するデータの収集が含まれる。ある実施態様では、このようなデータは、ユーザーがこのデータの収集に同意した場合にのみ収集される。一部の実施態様では、ユーザーにデータ収集を明示的に許可するように求められる。さらに、ユーザーはそのようなデータ収集活動への参加をオプトインまたはオプトアウトすることがある。1つの実施態様では、収集されたデータは、統計パターンを取得するための分析を実行する前に匿名化されるため、収集されたデータからユーザーの身元を特定することはできない。
図1
図2
図3
図4
図5
図6
【国際調査報告】