JP7186871B2 - 自然言語構造を使用したデータ視覚化の詳細レベルの判定 - Google Patents

自然言語構造を使用したデータ視覚化の詳細レベルの判定 Download PDF

Info

Publication number
JP7186871B2
JP7186871B2 JP2021518553A JP2021518553A JP7186871B2 JP 7186871 B2 JP7186871 B2 JP 7186871B2 JP 2021518553 A JP2021518553 A JP 2021518553A JP 2021518553 A JP2021518553 A JP 2021518553A JP 7186871 B2 JP7186871 B2 JP 7186871B2
Authority
JP
Japan
Prior art keywords
data
natural language
data source
implementations
lexicon
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021518553A
Other languages
English (en)
Other versions
JP2022504230A (ja
Inventor
ジャラリ,アレックス
セトラー,ヴィディヤ,ラガヴァン
Original Assignee
タブロー ソフトウェア,インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by タブロー ソフトウェア,インコーポレイテッド filed Critical タブロー ソフトウェア,インコーポレイテッド
Publication of JP2022504230A publication Critical patent/JP2022504230A/ja
Application granted granted Critical
Publication of JP7186871B2 publication Critical patent/JP7186871B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2452Query translation
    • G06F16/24522Translation of natural language queries to structured queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24554Unary operations; Data partitioning operations
    • G06F16/24556Aggregation; Duplicate elimination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90332Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9038Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/904Browsing; Visualisation therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/247Thesauruses; Synonyms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本開示の実装形態は、概して、データ視覚化に関し、より具体的には、ユーザが自然言語表現を使用してデータ視覚化と対話し、データを分析することを可能にするシステム、方法、およびユーザインターフェースに関する。
データ視覚化アプリケーションは、ユーザにデータセットを視覚的に理解させることができる。分布、傾向、外れ値、および他の要因を含むデータセットの視覚的分析は、ビジネス上の意思決定を行うために重要である。いくつかのデータセットは、非常に大きいかまたは複雑であり、多くのデータフィールドを含む。複数のデータを視覚化したダッシュボード、および視覚的な分析タスクに役立つ自然言語インターフェースを含めて、様々なツールを使用してデータを理解し、分析することに役立ち得る。
自然言語インターフェースは、データ探索に役立つモダリティになりつつある。しかしながら、視覚的分析システムとの自然言語対話をサポートすることは、多くの場合困難である。例えば、ユーザは、言語的に単純または口語的な発話をタイピングする傾向があるが、視覚的分析システムは、基礎となるデータおよび分析機能に対してこれらの発話を実現するというより複雑なニュアンスを有する。統計的手法および機械学習手法を採用することはできるが、新しいデータベースごとに文法を手動で作成し、調整することは脆弱であり、法外な費用がかかる。加えて、特定のデータベースに提示された質問を構文解析するには、統計パーサーをそのデータベースに固有の質問のコーパスでトレーニングする必要がある。
視覚的分析システムとの自然言語対話をサポートする改善されたシステムおよび方法が必要である。本開示は、自然言語の発話を、視覚的分析システム(例えば、データ視覚化アプリケーション)に対して実行することができる正式なクエリに解決する中間言語について説明する。中間言語は、単一のデータ視覚化で複数の集計レベルをさらにサポートする。したがって、中間言語は、ユーザの認知的負担を軽減し、より効率的なヒューマンマシンインターフェースを作り出す。
いくつかの実装形態によると、方法は、ディスプレイと、1つ以上のプロセッサと、1つ以上のプロセッサによる実行のために構成された1つ以上のプログラムを格納するメモリと、を有する、コンピューティングデバイスで実行される。この方法は、ディスプレイ上に視覚化インターフェースを表示することを含む。この方法は、データソースのユーザ選択を受信することを含む。この方法は、データソースに向けられた自然言語コマンドを指定するためのユーザ入力を受信することをさらに含む。例えば、ユーザ入力は、データソースに関連付けられた1つ以上の語を含む。この方法は、自然言語コマンドで、(i)第1の集計における集計タイプを指定する第1の用語と、(ii)セマンティックモデルで、第1の集計のために集計されるデータフィールドを指定する第2の用語と、(iii)第1の集計のグループ化を判定するために、セマンティックモデルでデータフィールドを指定する1つ以上の用語と、を識別することを含む、自然言語コマンドを構文解析することによって、データソース内のデータフィールドの文脈自由文法およびセマンティックモデルに従って中間表現を形成することをさらに含む。コンピューティングデバイスは、データソースに従って、中間表現を、第1の集計を含む1つ以上のデータベースクエリに変換する。コンピューティングデバイスは、1つ以上のデータベースクエリを実行して、データソースから第1の集計に従って集計された1つ以上のデータセットを取得する。コンピューティングデバイスは、取得されたデータセットの更新されたデータ視覚化を生成および表示する。
いくつかの実装形態において、変換は、中間表現を再帰的に使用して、異なる詳細レベルを有する更新されたデータ視覚化を作成することを含む。
いくつかの実装形態において、自然言語コマンドを構文解析することは、自然言語コマンドを複数のトークンに構文解析することを含む。
いくつかの実装形態において、複数のトークンの各々について、コンピューティングデバイスは、レキシコンでそれぞれのトークンを検索して、それぞれのトークンに対応する概念を識別する。
いくつかの実装形態において、自然言語コマンドは、複数の語を含む。自然言語コマンドの構文解析は、レキシコンを使用して、自然言語コマンドのコンテキスト内で複数の語の各々の機能を判定することをさらに含む。複数のトークンの各々は、自然言語コマンドにおいて2つ以上の隣接する語を組み合わせることによって形成される単一の語または句のいずれかを含む。
いくつかの実装形態において、中間表現を形成することは、トークンに対応する概念を連結することを含む。
いくつかの実装形態において、それぞれのトークンに対応する概念を識別するためにレキシコン内の各トークンを検索することは、対応する概念を有していない1つ以上のトークンを識別することと、対応する概念を有する複数のトークンを使用して中間表現を形成することと、をさらに含む。
いくつかの実装形態において、レキシコンは、データソースレキシコンおよび文法レキシコンを含む。
いくつかの実装形態において、データソースレキシコンは、データソース内のデータフィールドに対応する複数のフィールドを含む。複数のフィールドの各々は、1つ以上のエントリにマッピングされる。エントリの各々は、概念に対応する。
いくつかの実装形態において、データソースレキシコンは、データソースのセマンティックモデルから生成される。セマンティックモデルは、属性の名前、属性の値、および値に対応するメタデータを含む。
いくつかの実装形態において、データソースレキシコン内の複数のフィールドは、複数の同義語を含む。
いくつかの実装形態において、複数の同義語は、ユーザによって定義される第1のサブセットを含む。
いくつかの実装形態において、複数の同義語は、コンピューティングデバイスによって事前定義された第2のサブセットを含む。
いくつかの実装形態において、中間表現を形成することは、文脈自由文法を管理する1つ以上の事前定義された文法規則を使用する。
いくつかの実装形態において、事前定義された文法規則は、表現タイプが制限、グループ、集計、フィルタリング、またはソートである複数の文法規則を含む。
いくつかの実装形態において、自然言語コマンドを指定するためのユーザ入力を受信することは、データ視覚化インターフェースのユーザインターフェース制御を介して、ユーザ入力を受信することを含む。
いくつかの実装形態において、この方法は、複数のデータソースのユーザ選択を受信することをさらに含み、各々がデータソースに固有のデータソースレキシコンに関連付けられている。
いくつかの実装形態において、データソースは、共通の文法レキシコンを共有する。
いくつかの実装形態において、コンピューティングデバイスは、1つ以上のプロセッサ、メモリ、ディスプレイ、およびメモリに格納された1つ以上のプログラムを含む。プログラムは、1つ以上のプロセッサによる実行のために構成される。1つ以上のプログラムは、本明細書に記載の方法のいずれかを実施するための命令を含む。
いくつかの実装形態において、非一時的コンピュータ可読記憶媒体は、1つ以上のプロセッサ、メモリ、およびディスプレイを有するコンピューティングデバイスによる実行のために構成された1つ以上のプログラムを格納する。1つ以上のプログラムは、本明細書に記載の方法のいずれかを実施するための命令を含む。
したがって、ユーザがデータ視覚化と容易に対話し、自然言語表現を使用してデータを分析することを可能にする方法、システム、およびグラフィカルユーザインターフェースが開示される。
上記のシステム、方法、およびグラフィカルユーザインターフェース、ならびにデータ視覚化分析を提供する追加のシステム、方法、およびグラフィカルユーザインターフェースをより良好に理解するために、同様の参照番号が図全体を通して対応する部分を指す以下の図面と併せて、以下の発明を実施するための形態を参照されたい。
いくつかの実装形態で使用されるグラフィカルユーザインターフェースを示す。 いくつかの実装形態によるコンピューティングデバイスのブロック図である。 いくつかの実装形態によるデータソースレキシコンの構成要素を示すブロック図である。 いくつかの実装形態による文法レキシコンのサブモジュールを示すブロック図である。 いくつかの実装形態による分析表現を示すブロック図である。 いくつかの実装形態による複数レベルの集計をサポートするための中間言語の使用を示す。 いくつかの実装形態による自然言語表現の詳細レベルを判定するための方法のフローチャートを提供する。 いくつかの実装形態による、図3C、図3E、図3F、および図3Gの自然言語コマンドの中間表現を示す表である。
ここで、実装形態を参照すると、その例は、添付の図面に示されている。以下の説明では、本発明の徹底した理解を提供するために、数多くの特定の詳細が記載される。しかしながら、本発明がこれらの特定の詳細を必要とせずに実践され得ることは当業者には明らかであろう。
実装形態の説明
本明細書に記載されている様々な方法およびデバイスは、軽量の中間言語を使用して、自然言語表現(自然言語入力、クエリ、または発話として知られる)から生成された中間論理クエリを表すことにより、データ視覚化プラットフォームでの自然言語インターフェースの有効性を改善する。本明細書でArkLangとも称される中間言語は、自然言語入力をデータベースに対して実行することができる正式なクエリに解決するように設計されている。自然言語入力は、辞書的にArkLangに変換される。入力の中間表現は、ArkLangで形成され、次いで、データソース(例えば、データベース)に対してクエリを発行するために視覚化クエリ言語を採用する一連の命令に変換(例えば、コンパイル)される。データ視覚化プラットフォームは、自然言語入力に応答して、取得したデータセットのデータ視覚化(または更新されたデータ視覚化)を自動的に生成し、および表示する。視覚化クエリ言語は、表、チャート、グラフ、マップ、時系列、および視覚化の表など、データの視覚的表現を記述するための正式な言語である。これらの異なるタイプの視覚的表現は、1つのフレームワークに統合され、クエリ、分析、および視覚化を結合する。したがって、視覚化クエリ言語は、ある視覚的表現から別の視覚的表現へ(例えば、リストビューからクロスタブ、チャートへ)の変換を容易にする。
図1は、対話型データ分析のためのグラフィカルユーザインターフェース100を示す。ユーザインターフェース100は、いくつかの実装形態に従って、データタブ114および分析タブ116を含む。データタブ114が選択されると、ユーザインターフェース100は、データペインとも称されるスキーマ情報領域110を表示する。スキーマ情報領域110は、データ視覚化を構築するために選択、および使用され得る名前付きのデータ要素(例えば、フィールド名)を提供する。いくつかの実装形態において、フィールド名のリストは、ディメンションのグループ(例えば、カテゴリデータ)とメジャーのグループ(例えば、数値)とに分けられる。いくつかの実装形態はまた、パラメータのリストも含む。分析タブ116が選択されると、ユーザインターフェースは、データ要素(図示せず)の代わりに分析機能のリストを表示する。
グラフィカルユーザインターフェース100はまた、データ視覚化領域112も含む。データ視覚化領域112は、列シェルフ領域120および行シェルフ領域122など複数のシェルフ領域を含む。これらは、列シェルフ120および行シェルフ122とも称される。本明細書に示されるように、データ視覚化領域112はまた、視覚的グラフィックを表示するための大きな空間を有する(本明細書ではデータ視覚化とも称される)。データ要素がまだ選択されていないため、空間は最初に視覚的なグラフィックを有しない。いくつかの実装形態において、データ視覚化領域112は、シートと称される複数の層を有する。いくつかの実装形態において、データ視覚化領域112は、データ視覚化フィルタのための領域126を含む。
いくつかの実装形態において、グラフィカルユーザインターフェース100はまた、自然言語コマンドを受信するための自然言語入力ボックス124(コマンドボックスとも称される)を含む。ユーザは、コマンドボックスと対話してコマンドを提供することができる。例えば、ユーザは、ボックス124にコマンドをタイピングすることによって、自然言語コマンドを提供することができる。加えて、ユーザは、コマンドを提供するためにマイクロホン220に話しかけることによって、コマンドボックスと間接的に対話することができる。いくつかの実装形態において、データ要素は、最初に列シェルフ120および行シェルフ122に関連付けられる(例えば、スキーマ情報領域110から列シェルフ120および/または行シェルフ122へのドラッグアンドドロップ操作を使用して)。最初の関連付けの後、ユーザは、自然言語コマンド(例えば、自然言語ボックス124内)を使用して、表示されたデータの視覚化をさらに探索することができる。場合によっては、ユーザは、自然言語入力ボックス124を使用して最初の関連付けを作成し、その結果、1つ以上のデータ要素が列シェルフ120および行シェルフ122に配置される。例えば、ユーザは、データ要素Xとデータ要素Yとの間の関係を作成するためのコマンドを提供することができる。コマンドを受信することに応答して、列シェルフ120および行シェルフ122は、データ要素でポピュレートされ得る(例えば、列シェルフ120はデータ要素Xでポピュレートされ得、行シェルフ122はデータ要素Yでポピュレートされ得るか、またはその逆である)。
図2Aは、いくつかの実装形態によるグラフィカルユーザインターフェース100を表示することができるコンピューティングデバイス200を示すブロック図である。コンピューティングデバイス200の様々な例には、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、ならびにディスプレイおよびデータ視覚化アプリケーション230を実行することができるプロセッサを有する他のコンピューティングデバイスが挙げられる。コンピューティングデバイス200は、典型的には、1つ以上の処理ユニット(プロセッサまたはコア)202、1つ以上のネットワークまたは他の通信インターフェース204、メモリ206、およびこれらの構成要素を相互接続するための1つ以上の通信バス208を含む。通信バス208は、任意選択的に、システム構成要素間の通信を相互接続し、制御する回路(チップセットと呼ばれることもある)を含む。コンピューティングデバイス200は、ユーザインターフェース210を含む。ユーザインターフェース210は、典型的には、ディスプレイデバイス212を含む。いくつかの実装形態において、コンピューティングデバイス200は、キーボード、マウス、および/または他の入力ボタン216などの入力デバイスを含む。代替的に、または加えて、いくつかの実装形態において、ディスプレイデバイス212は、タッチセンシティブ面214を含み、その場合、ディスプレイデバイス212は、タッチセンシティブディスプレイである。いくつかの実装形態において、タッチセンシティブ面214は、様々なスワイプジェスチャ(例えば、垂直および/または水平方向の連続ジェスチャ)および/または他のジェスチャ(例えば、シングル/ダブルタップ)を検出するように構成されている。タッチセンシティブディスプレイ214を有するコンピューティングデバイスにおいて、物理キーボードは任意選択である(例えば、キーボード入力が必要なときにソフトキーボードが表示され得る)。ユーザインターフェース210はまた、スピーカー、またはスピーカー、イヤホン、またはヘッドホンに接続されたオーディオ出力接続などのオーディオ出力デバイス218を含む。さらに、いくつかのコンピューティングデバイス200は、キーボードを補足または交換するためにマイクロホンおよび音声認識を使用する。任意選択的に、コンピューティングデバイス200は、オーディオ(例えば、ユーザからのスピーチ)をキャプチャするためのオーディオ入力デバイス220(例えば、マイクロホン)を含む。
いくつかの実装形態において、メモリ206は、DRAM、SRAM、DDR RAM、または他のランダムアクセスソリッドステートメモリデバイスなどの高速ランダムアクセスメモリを含み、1つ以上の磁気ディスク記憶デバイス、光ディスク記憶デバイス、フラッシュメモリデバイス、または他の不揮発性ソリッドステート記憶デバイスなどの不揮発性メモリを含んでもよい。いくつかの実装形態において、メモリ206は、プロセッサ(複数可)202からリモートに位置する1つ以上の記憶デバイスを含む。メモリ206、または代替的にメモリ206内の不揮発性メモリデバイス(複数可)は、非一時的コンピュータ可読記憶媒体を含む。いくつかの実装形態において、メモリ206、またはメモリ206のコンピュータ可読記憶媒体は、以下のプログラム、モジュール、およびデータ構造、またはそれらのサブセットもしくはスーパーセットを格納する。
・様々な基本的なシステムサービスを処理し、ハードウェアに依存するタスクを実施するための手順を含むオペレーティングシステム222、
・コンピューティングデバイス200を、インターネット、他のワイドエリアネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワークなど、1つ以上の通信インターフェース204(有線または無線)を介して他のコンピュータおよびデバイスに接続するために使用される通信モジュール224、
・ユーザがネットワークを介してリモートのコンピュータまたはデバイスと通信することを可能にするウェブブラウザ226(またはウェブページを表示することができる他のアプリケーション)、
・オーディオ入力デバイス220によってキャプチャされたオーディオを処理するためのオーディオ入力モジュール228(例えば、マイクロホンモジュール)。キャプチャされたオーディオは、リモートサーバに送信され、および/またはコンピューティングデバイス200上で実行されるアプリケーション(例えば、データ視覚化アプリケーション230)によって処理され得る。
・データ視覚化および関連機能を生成するためのデータ視覚化アプリケーション230。いくつかの実装形態において、データ視覚化アプリケーション230はまた、以下も含む。
○ユーザが視覚的グラフィックスを構築するためのグラフィカルユーザインターフェース100。いくつかの実装形態において、グラフィカルユーザインターフェースは、自然言語ボックス124(図1)を介して、ユーザ入力を受信するためのユーザ入力モジュール234を含む。例えば、ユーザは、1つ以上のデータソース242(コンピューティングデバイス200に格納されるか、またはリモートで格納され得る)および/またはデータソース(複数可)からのデータフィールドを識別する自然言語コマンドまたは表現を自然言語ボックス124に入力する。いくつかの実装形態において、自然言語表現は、オーディオ入力デバイス220によってキャプチャされた音声発話である。選択されたフィールドは、視覚的グラフィックを定義するために使用される。次いで、データ視覚化アプリケーション230は、生成された視覚的グラフィックをユーザインターフェース100に表示する。いくつかの実装形態において、データ視覚化アプリケーション230は、スタンドアロンアプリケーション(例えば、デスクトップアプリケーション)として実行される。いくつかの実装形態において、データ視覚化アプリケーション230は、ウェブサーバによって提供されるウェブページを使用して、ウェブブラウザ226または別のアプリケーション内で以下を実行する。
○ユーザ入力(例えば、自然言語入力)を使用して、対応する視覚的グラフィック(「データ視覚化」または「データビズ」とも称される)を自動的に生成および表示するデータ視覚化生成モジュール236、
〇自然言語ボックス124を使用して受信した自然言語入力(例えば、コマンド)を処理(例えば、解釈)するための自然言語処理モジュール238。いくつかの実装形態において、自然言語処理モジュール238は、自然言語コマンドを(例えば、トークンに)構文解析し、コマンドを中間言語(例えば、ArkLang)に変換する。自然言語処理モジュール238は、自然言語処理モジュール238によって自然言語コマンドの中間表現を形成するために使用される分析表現239を含む。自然言語処理モジュール238はまた、データベースまたはデータソース242に対してクエリを発行し、データベースまたはデータソース242から1つ以上のデータセットを取得するために、視覚化クエリ言語を採用することによって、中間表現をデータベースクエリに変換(例えば、コンパイル)する。
・所望のデータ視覚化の特性を定義するために使用される視覚的仕様240。いくつかの実装形態において、ユーザが提供する情報(例えば、ユーザ入力)は、視覚的仕様として格納される。いくつかの実装形態において、視覚的仕様240は、ユーザから受信した以前の自然言語コマンド、または自然言語コマンドを介してユーザによって指定されたプロパティを含む。いくつかの実装形態において、視覚的仕様240は、異なる詳細レベルに基づく2つ以上の集計を含む。詳細レベルについてのさらなる情報は、2015年7月16日に出願された米国特許出願第14/801,750号、発明の名称「Systems and Methods for using Multiple Aggregation Levels in a Single Data Visualization」に見ることができ、その全体が参照により本明細書に組み込まれている。
・データ視覚化アプリケーション230によって使用される、ゼロ個以上のデータベースまたはデータソース242(例えば、第1のデータソース244および第2のデータソース246)。いくつかの実装形態において、データソースは、スプレッドシートファイル、CSVファイル、XMLファイル、フラットファイル、もしくはJSONファイルとして格納されるか、またはリレーショナルデータベースに格納される。例えば、ユーザは、1つ以上のデータベースまたはデータソース242(コンピューティングデバイス200に格納され得るか、またはリモートに格納され得る)を選択し、データソース(複数可)からデータフィールドを選択し、選択されたフィールドを使用して視覚的グラフィックを定義する。
・各々がそれぞれのデータベースまたはデータソース242から直接導出される、ゼロ個以上のセマンティックモデル248(例えば、第1のセマンティックモデル248-1および第2のセマンティックモデル248-2)。セマンティックモデル248は、データベーススキーマを表し、属性に関するメタデータを含む。いくつかの実装形態において、セマンティックモデル248は、属性の代替ラベルまたは同義語のメタデータも含む。セマンティックモデル248は、データタイプ(例えば、「テキスト」、「日付」、「地理空間」、「ブール」、および「数値」)、属性(例えば、米ドルなどの通貨タイプ)、およびそれぞれのデータベースまたはデータソース242のデータフィールドのセマンティックロール(例えば、地理空間属性の「都市」ロール)を含む。いくつかの実装形態において、セマンティックモデル248はまた、各属性の統計値(例えば、データ分布、範囲制限、平均、およびカーディナリティ)をキャプチャする。いくつかの実装形態において、セマンティックモデル248は、多くのクエリ言語(例えば、平均、フィルタ、ソート)に見られる分析概念258のセットを含む文法レキシコン250で拡張されている。いくつかの実装形態において、セマンティックモデル248はまた、メジャーである属性(例えば、測定、集計、または数学演算に使用することができる属性)とディメンション(例えば、カウント以外では集計することができないフィールド)とを区別する。したがって、セマンティックモデル248は、顕著な属性および値を推論し、選択するのに役立つ。
・中間表現を形成するための分析表現239をサポートするために使用される分析概念258(図2Bを参照)を含む文法レキシコン250、および
・各々がそれぞれのデータベースまたはデータソース242に関連付けられている、ゼロ個以上のデータソースレキシコン252(例えば、第1のデータソースレキシコン254および第2のデータソースレキシコン256)。データソースレキシコンの構成要素の詳細は、図2Bに記載されている。
図2Bは、いくつかの実装形態による、第1のデータソースレキシコン254の構成要素を示すブロック図である。第1のデータソースレキシコン254は、第1のデータソース244の1つ以上の表の名前に対応する表名274、第1のデータソース244の複数のデータフィールド276、および他のデータベースオブジェクト288を含む。各データフィールド276は、以下を含む。
・整数、文字列、日付、または浮動小数点数値などのデータタイプ278、
・データフィールドを解釈するために使用される1つ以上の概念280。例えば、データフィールド「Michael」は、「文字列」、「名前」、「性別(例えば、男性)」、「歌手」、「バスケットボールプレーヤ」、および/または「シェフ」などの概念を使用して解釈され得る。いくつかの実装形態において、1つ以上の概念がエラスティック検索から導出される。
・システムによって定義される1つ以上の同義語282。例えば、データフィールド「average」は、「mean」や「avg」などの同義語を含み得る。
・ユーザによって定義される1つ以上のエイリアス284。例えば、データフィールド「goods」は、「widgets」、「bananas」、および「my favorite field」などのエイリアスを含み得る。
・データ値286(例えば、カーディナリティの低い文字列フィールドの場合)。
いくつかの実装形態において、データソースレキシコン254は、他のデータベースオブジェクト288も含む。
図2Cは、いくつかの実装形態による文法レキシコン250の構成要素を示すブロック図である。いくつかの実装形態において、文法レキシコンは、分析表現239の形成をサポートする分析概念258を含む。分析概念258は、以下を含む。
・データベース属性の有限のセットであるフィールド260の概念。フィールドの概念の例には、「sales」および「product category」が挙げられる。
・データベース値の有限のセットである値262の概念。値の概念の例には、「$100」および「Avery Leckman」が挙げられる。
・複数の行の値を一緒にグループ化して、数学演算に基づいて単一の値を形成する演算子の有限のセットである、集計264の概念。集計の概念の例には、「average」、「median」、「count」、「distinct count」が挙げられる。
・データをデータ視覚化で示されるカテゴリに分割する演算子の有限のセットである、グループ266の概念。グループの概念の例には、「by」フィールドが挙げられる。
・フィールドのドメインのサブセットを返す演算子の有限のセットである、フィルタ268の概念。フィルタの概念の例「filter to」、「at least」、「between」、「at most」。
・フィールドのドメインのサブセットを返す演算子の有限のセット(フィルタ268に類似)であり、最大n行に制限し、1≦n≦Nであり、Nは、ドメイン内の行の総数である、制限270の概念。制限の概念の例には、「top」および「bottom」が挙げられる。
・データ行を順番に配置する演算子の有限のセットである、ソート272の概念。ソートの概念の例には、「ascending」、「descending」、および「alphabetical」が挙げられる。
ArkLangは、対応するデータベースを表すセマンティックモデルのセット(例えば、セマンティックモデル248)、文脈自由文法(CFG)、およびセマンティック制約のセットから生成することができる。いくつかの実装形態において、ArkLangの方言は、特定のセマンティックモデルを修正し、文脈自由文法とセマンティックヒューリスティックの固定セットとを活用することによって生成することができる、構文的に有効で意味的に意味のあるすべての分析表現のセットである。
いくつかの実装形態において、正準表現が分析表現239に割り当てられ(例えば、自然言語処理モジュール238によって)、自然言語クエリに固有の曖昧な構文解析の急増の問題に対処する。正準構造は、パーサーの観点から明確であり、自然言語処理モジュール238は、複数の構文解析間で迅速に選択して中間表現を形成することができる。
図2Dは、いくつかの実装形態による、自然言語処理モジュール238の分析表現239を示すブロック図である。ArkLangの方言での正準形とともに、分析表現は以下を含む。
・集計表現290:これらは、正準形[agg att]であり、ここでagg∈Aggregationsであり、attは属性である。集計表現の例は、「average Sales」であり、ここで「average」はagg、および「Sales」はattである。
・グループ表現292:これらは、正準形[grp att]であり、ここでgrp∈Groupsであり、attは属性である。グループ表現の例は、「by Region」であり、ここで「by」はgrp、および「Region」はattである。
・フィルタ表現294:これらは、正準形[att filter val]であり、ここでattは属性であり、filter∈Filters、およびval∈Valuesである。フィルタ表現の例は、「Customer Name starts with John」であり、ここで「Customer」はatt、「starts with」はfilter、および「John」はvalである。
・制限表現296:これらは、正準形[limit val ge ae]であり、ここでlimit∈Limits、val∈Values、ge∈グループ表現、およびae∈集計表現である。制限表現の例は、「top 5 Wineries by sum of Sales」であり、ここで「top」はlimit、「5」はval、「Wineries」はgroup byの属性、および「sum of Sales」は集計表現である。
・ソート表現298:これらは、正準形[sort ge ae]であり、ここでsort∈Sorts、ge∈グループ表現、およびae∈集計表現である。ソート表現の例は、「sort Products in ascending order by sum of Profit」であり、ここで「ascending order」はsort、「Products」はgroup byの属性、および「sum of Profit」は集計表現である。
いくつかの実装形態において、コンピューティングデバイス200は、ユーザが入力ボックス124にタイピングし始めたときに複数の候補オプションを含むドロップダウンメニューを表示するオートコンプリートモジュール、および自然言語コマンドとデータフィールド(図示せず)との間の構文的および意味的な曖昧さを解決する曖昧さモジュールなど他のモジュールも含む。これらのサブモジュールの詳細は、2018年9月18日に出願された米国特許出願第16/134,892号、発明の名称「Analyzing Natural Language Expressions in a Data Visualization User Interface」に記載されており、その全体が参照により本明細書に組み込まれる。
図2は、コンピューティングデバイス200を示しているが、図2は、本明細書で説明されている実装形態の構造的概略としてではなく、存在し得る様々な特徴の機能的説明としてより意図されている。実際には、当業者によって認識されるように、別々に示されたアイテムを組み合わせることができ、いくつかのアイテムを分離することができる。
図3A~図3Jは、例示的なデータソース、ならびに中間言語を背景として使用して、ユーザが入力した自然言語コマンドに応答して、視覚的表現の自動生成および表示を示す。中間言語を使用したコマンド処理に関するさらなる詳細については、図4で説明される。
図3Aは、それぞれの年のバスケットボールチームのプレーヤ、およびそれぞれの年のチーム別の勝利数を説明する例示的なデータソース310(例えば、図2Aのデータベースまたはデータソース242)を示す。この例では、データソース310は、データ列に格納された複数のデータ値を含むデータ構造(例えば、スプレッドシート)である。いくつかの実装形態において、データソース310は、生の(例えば、元のまたはフォーマットされていない)データソースである。この例では、データソースフィールドは集計されていない(Wins列を除く)。いくつかの実装形態において、集計されていないデータソースフィールドを参照する分析表現(例えば、分析表現239)が、基礎となる表の各行について計算される。言い換えれば、表現の次元は行レベルであり、「詳細レベル(LOD)0」として知られている。
図3Bは、元のデータソース310から生成された集計データソース320を示す。集計されたデータソース320は、集計されたデータ列「年別のチーム」を含む。集計されたデータソース320のフィールドは、各行のチームおよび年のフィールドを集計(例えば、グループ化)することによって導出される。集計されたデータソース320の次元は、「詳細レベル(LOD)1」である。言い換えれば、LOD1は、単一レベルの集計を表し、集計されたデータソース320は、行レベルのデータから導出された表である。
図3Cは、グラフィカルユーザインターフェース100とのユーザ対話を示す。この例では、ユーザは、コマンドボックス124に自然言語表現(例えば、自然言語コマンド)312「チーム別の勝利の合計」を入力する。典型的に、自然言語表現は、データソース(例えば、データソース310)からのデータフィールドを識別する1つ以上の用語を含む。用語は、ディメンション(例えば、カテゴリデータ)またはメジャー(例えば、数値)であり得る。例で示されているように、自然言語入力は、典型的に、2つ以上の用語を含む。
図3Dは、ユーザによって入力された自然言語表現312に応答して、グラフィカルユーザインターフェース100に自動的に生成および表示されるデータ視覚化330(例えば、水平棒グラフ)を示す。列シェルフ120および行シェルフ122はそれぞれ、自動生成されたフィールド「SUM(Wins)」332および「Team」334を含む。言い換えれば、データ視覚化330は、一方の軸(例えば、x軸)上の測定値(「wins」の数)および他方の軸(例えば、y軸)上のディメンション(「Team」)の集計(「sum」)の視覚的表現である。この場合、データ視覚化330に関連付けられた次元は、詳細レベル(LOD)1である。
図3Eは、自然言語表現342「経時的なチーム別の勝利の合計」に応答して自動的に生成されるデータ視覚化340(例えば、水平棒グラフ)を示す。図3Dと図3Eとの間を比較すると、列シェルフ120のフィールドは両方の場合で同じである(SUM(Wins)332)のに対し、図3Eの行シェルフ122は、フィールド「Team」334と「Year」344とを含む(すなわち、1つの追加フィールド「Year」を含む)ことを示す。データ視覚化340は、y軸が「Team」および「Year」のディメンションを含み、その年のチーム別の勝利の合計の内訳を示すという点で、図3Dとは異なる。データ視覚化340に関連付けられた次元は、詳細レベル(LOD)1である。
図3Fは、自然言語表現「平均勝利、heatにフィルタリング」352に応答して自動的に生成されるデータ視覚化350(例えば、水平棒グラフ)を示す。列シェルフ120は、自動生成されたフィールド「AVG(Wins)」356を含む。追加的に、フィルタ領域126は、「Team:heat」のためのフィルタが含まれていることを示している。データ視覚化350は、1つの軸(例えば、x軸)上の測定値(「wins」の数)の集計(「average」)を示す。y軸は、フィルタリングされたチームの「heat」に対応する単一の水平バーを示す。いくつかの実装形態において、データ視覚化領域112はまた、ユーザがフィルタリングしたいチームを手動で選択することを可能にするウィンドウ354を表示する。データ視覚化フィルタのさらなる詳細は、2015年7月16日に出願された米国特許出願第14/801,750号、発明の名称「Systems and Methods for using Multiple Aggregation Levels in a Single Data Visualization」に記載されており、その全体が参照により本明細書に組み込まれる。
図3Fのデータ視覚化は、各年の勝利数を見てチーム平均を計算することを示す。「生の」データソースがTeam、Year、およびWinsのデータフィールドを含む場合、この平均は、LOD1を表す。これは、単一の集計を使用して計算することができるためである(例えば、SELECT Teamの計算と同様に、AVERAGE(Wins)FROM Data_Source GROUP BY Team)。一方、生のデータソースがプレイされた個々のゲームである場合、各チームの年間合計を取得するための第1の集計(LOD1の計算)があり、第2の集計は、第1の集計に基づいているので、年別の平均の計算はLOD2の計算である。例えば、生のデータソースがフィールドTeam、Gate_Date、およびWinner(ブールフィールド)を有する場合、第1の集計の計算は、SELECT Team、YEAR(Game_Date)AS Year、COUNT(*)AS Wins FROM Games WHERE Winner=1 GROPUP BY Team,YEAR(Game_Date)の計算に類似している。
図3Gは、グラフィカルユーザインターフェース100上でユーザによって入力された、「1人以上のプレーヤの合計数を伴う年別のチーム別の勝利」という自然言語表現362を示す。
いくつかの実装形態において、第2の集計(例えば、詳細レベル(LOD)2)をLOD1の表から導出することができる。図3Hは、図3Aの元のデータソース310から生成された詳細レベル(LOD)1を備えた集計データソース360を示す。データソース360は、データ列「年別のチーム」と、「勝利の合計」および「プレーヤの数」の集計列と、を含む。図3Iは、集計データソース360から導出された(例えば、生成された)集計データソース370を示し、2回集計されたデータ列「年別のチーム別の勝利の合計別」を含む。すなわち、データ列「年別のチーム」および「勝利の合計」は、最初に集計されて、データフィールド「(55、(Bulls、1991))」、「(58、(Heat、2010))」、および「(55、(Heat、2011))」を形成する。年別に各チームに1人のプレーヤがおり、55勝が2人(チーム、年)いるため、(チーム、年)の55勝のプレーヤの数は2人である。したがって、データフィールドは、(例えば、55勝のプレーヤの数を合計することによって)再び集計されて、図3Iのデータソース370を形成する。したがって、集計されたデータソース370は、第2の詳細レベル(LOD2)を有し、2回集計されたデータ列「年別のチーム別の勝利の合計別」を含む。いくつかの実装形態において、表計算およびLOD計算を使用して、複数の集計(例えば、LOD2)が実現される。
図3Jは、自然言語表現362に応答して自動的に生成および表示され、データソース370の視覚的表現であるデータ視覚化380を示す。
図4A~図4Dは、いくつかの実装形態による自然言語表現の詳細レベルを判定する(402)ための方法400のフローチャートを提供する。方法400は、プロセスとも称される。
いくつかの実装形態において、中間言語(ArkLangとも称される)により、汎用データベースに自然言語クエリを発行するプロセスが容易になる。いくつかの実装形態において、視覚化応答を生成するための自然言語入力から視覚化クエリ言語(VizQL)コマンドへの変換は、以下のアルゴリズムを使用する。
・入力:自然言語トークンのシーケンス
・出力:VizQLクエリ表現(複数可)
・fを、各自然言語の語をArkLangの概念(例えば、「average」の概念)にマッピングする変換関数とする。
・gを、ArkLangの分析表現をVizQLにマッピングする(トップダウン再帰)変換関数とする。
・次いで、hは、自然言語表現をVizQLにマッピングするfとgとの合成として定義される。
・自然言語からArkLangへの語彙翻訳を実施する。例えば、f(mean)=f(avg)=「average」およびf(wine prices)=「Price」。
・文脈自由文法と文法規則のセットとを活用して、結果として変換された用語をArkLang方言に構文解析する。例えば、「average」∈Aggregations、およびワイン価格∈Fieldsなので、[average,Price]∈集計表現となり、
・ArkLangセンテンスをVizQLコマンドにコンパイルし、そのコマンドをデータベースに対して発行する。例えば、変換g([average、Price])を実施する。
方法400は、ディスプレイ212、1つ以上のプロセッサ202、およびメモリ206を有する(404)コンピューティングデバイス200で実施される(404)。メモリ206は、1つ以上のプロセッサ202による実行のために構成された1つ以上のプログラムを格納する(406)。いくつかの実装形態において、図4A~図4Dに示される動作は、メモリ206または他の非一時的コンピュータ可読記憶媒体に記憶された命令に対応する。コンピュータ可読記憶媒体は、磁気もしくは光ディスク記憶デバイス、フラッシュメモリなどのソリッドステート記憶デバイス、または他の不揮発性メモリデバイスを含み得る。コンピュータ可読記憶媒体に格納された命令は、ソースコード、アセンブリ言語コード、オブジェクトコード、または1つ以上のプロセッサによって解釈される他の命令フォーマットのうちの1つ以上を含み得る。方法400のいくつかの動作を組み合わせてもよく、および/またはいくつかの動作の順序を変更してもよい。
コンピューティングデバイス200は、ディスプレイ212上にデータ視覚化インターフェース100を表示する(408)。
コンピューティングデバイス200は、データソースのユーザ選択を受信する(410)。例えば、コンピューティングデバイスは、図3Aに示されるように、データソース310のユーザ選択を受信する。
コンピューティングデバイスは、データソース(例えば、データベースまたはデータソース242またはデータソース310)に向けられた自然言語コマンドを指定するためのユーザ入力を受信する(412)。いくつかの実装形態において、ユーザ入力は、データソースに関連付けられた1つ以上のフィールドを含む。例えば、ユーザ入力は、複数の語および/または数字を含む。
いくつかの実装形態において、コンピューティングデバイス200は、データ視覚化インターフェースのユーザインターフェース制御を介して、ユーザ入力を受信する(414)。例えば、コンピューティングデバイスは、グラフィカルユーザインターフェース100のコマンドボックス124を介してユーザ入力を受信する。いくつかの実装形態において、ユーザは、ユーザ入力を入力する(例えば、入力する)ことができる。いくつかの実装形態において、ユーザ入力は、オーディオ入力デバイス220によってキャプチャされた音声発話である。
コンピューティングデバイスは、自然言語コマンドで、(i)第1の集計における集計タイプを指定する第1の用語と、(ii)セマンティックモデル248で、第1の集計のために集計されるデータフィールドを指定する第2の用語と、(iii)第1の集計のグループ化を判定するために、セマンティックモデルでデータフィールドを指定する1つ以上の用語と、を識別することを含む、自然言語コマンドを構文解析することによって、データソース内のデータフィールドの文脈自由文法およびセマンティックモデル248に従って(例えば、自然言語処理モジュール238を使用して)中間表現を形成する(416)。
いくつかの実装形態において、自然言語コマンドの構文解析のために構文解析アルゴリズムCocke-Kasami-Younger(CKY)が使用される。CKYアルゴリズムは、文脈自由文法でボトムアップ構文解析と動的計画法とを採用している。基礎となるCKYパーサーへの入力は、データベースクエリの基礎となる分析機能に見られる基本的なデータベース操作に対応する分析表現に基づいて、構文述語と意味述語との両方で拡張された生成規則を備えたこの文脈自由文法である。
いくつかの実装形態において、自然言語コマンドを構文解析することは、自然言語コマンドを複数のトークンに構文解析する(418)ことを含む。図3Cの例を参照すると、自然言語コマンド312は、「チーム別の勝利の合計」という語の文字列を含む。いくつかの実装形態において、トークンの各々は、語の文字列内の語である。例えば、自然言語処理モジュール238は、コマンド312を5つのトークン「sum」、「of」、「wins」、「by」、および「team」に構文解析する。
いくつかの実装形態において、複数のトークンの各々について、コンピューティングデバイス200は、レキシコンでそれぞれのトークンを検索して(420)、それぞれのトークンに対応する概念を識別する。図3の例では、コンピューティングデバイス200は、データソース310に対応する文法レキシコン250およびデータソースレキシコン252を検索して、それぞれのトークンに対応する概念を識別する。例えば、トークン「wins」および「team」は、データソースのフィールドに対応しているため、それらの概念はデータソースレキシコンで識別される可能性がある。一方、トークン「sum」および「of」は、文法レキシコン250で定義された集計264の概念およびグループ266の概念に関連付けられている。
いくつかの実装形態において、自然言語コマンドは、複数の語を含む(422)。コンピューティングデバイス200は、レキシコンを使用して、自然言語コマンドのコンテキスト内で複数の語の各々の機能を判定する。複数のトークンの各々は、自然言語コマンドにおいて2つ以上の隣接する語を組み合わせることによって形成される単一の語または句のいずれかを含む。
上記のように、図3Cの自然言語コマンドは、5つのトークンに構文解析されている。いくつかの実装形態において、コンピューティングデバイス200は、トークンの1つ以上(例えば、「of」および「by」)がそれ自体では意味がないと判定する。この場合、コンピューティングデバイス200は、機能的に意味のないトークンをその直前または直後の語(例えば、トークン)と組み合わせてそれぞれの句を生成することによって、1つ以上の新しいトークンを形成する。この例では、コンピューティングデバイスは、「の合計」、「の勝利」、「別の勝利」、および「チーム別」の新しいトークン/句を形成する。コンピューティングデバイス200は、最初の2つの句が機能的に意味がないと再度判定し得、したがって、「by」の直前および後続の語を組み合わせて、「勝利の合計」という句を形成する。
いくつかの実装形態において、中間表現を形成することは、トークンに対応する概念を連結する(424)ことを含む。表5は、いくつかの実装形態(例えば、自然言語処理モジュール238によって生成される)による、図3C、図3E、図3F、および図3Gの自然言語コマンドの中間表現を示す表500を示す。
いくつかの実装形態において、コンピューティングデバイス200は、対応する概念を有していない1つ以上のトークンを識別し(426)、対応する概念を有する複数のトークンを使用して中間表現を形成する。言い換えれば、1つ以上の識別されたトークンが除外されて(すなわち、使用されない)、中間表現が形成される。
いくつかの実装形態において、レキシコンは、データソースレキシコンおよび文法レキシコン250を含む(428)。いくつかの実装形態において、データソースレキシコンは、データベースに対応するレキシコンの一意の部分である。例えば、第1のデータソースレキシコン254は、第1のデータソース244に対応するレキシコンの一意の部分である。文法レキシコン250は、文脈自由文法に対応する事前定義された部分である。
いくつかの実装形態において、コンピューティングデバイス200は、文脈自由文法を管理する1つ以上の事前定義された文法規則を使用して中間表現を形成する(430)。いくつかの実装形態において、事前定義された文法規則がBackus-Naur記法で指定されている。
いくつかの実装形態において、各事前定義された文法規則は、事前定義された表現タイプ(例えば、分析表現239)を有する(432)。いくつかの実装形態において、事前定義された表現のタイプは、制限、グループ化、集計、フィルタリング、およびソートである。言い換えれば、形成される中間表現は、文脈自由文法の構文的に実行可能な表現である。
いくつかの実装形態において、データソースレキシコン(例えば、第1のデータソースレキシコン254)は、データソース内のデータフィールド276に対応する複数のフィールドを含む(434)。複数のフィールドの各々は、1つ以上のエントリにマッピングされ(例えば、エラスティック検索を使用して)、エントリの各々は、概念280に対応する。
いくつかの実装形態において、データソースレキシコンの複数のフィールドは、複数の同義語を含む(436)。
いくつかの実装形態において、複数の同義語は、ユーザによって定義される第1のサブセットを含む(438)。いくつかの実装形態において、第1のサブセットは、エイリアス284を含む。
いくつかの実装形態において、複数の同義語は、コンピューティングデバイス200によって事前定義された第2のサブセットを含む(440)。いくつかの実装形態において、第2のサブセットは、同義語282を含む。いくつかの実装形態において、同義語は、サードパーティのソース(例えば、マップサービス)からコンピューティングシステム200によって取得される。いくつかの実装形態において、第2のサブセットは、名前の略語を含む(例えば、カリフォルニアの「CA」)。
いくつかの実装形態において、データソースレキシコン(例えば、第1のデータソースレキシコン254)は、データソースのセマンティックモデル248から生成される(442)。セマンティックモデル248は、属性の名前、属性の値、および値に対応するメタデータを含む。
コンピューティングデバイスは、データソースに従って、中間表現を、第1の集計を含む1つ以上のデータベースクエリに変換する(444)。いくつかの実装形態において、変換は、図3G~図3Jおよび表500の中間表現に示すように、中間表現を再帰的に使用して、異なる詳細レベル(例えば、LOD2)を有する更新されたデータの視覚化を作成することを含む。
コンピューティングデバイスは、1つ以上のデータベースクエリを実行して、データソースから第1の集計に従って集計された1つ以上のデータセットを取得する(446)。
コンピューティングデバイスは、取得されたデータセットの更新されたデータ視覚化を生成および表示する(448)。
いくつかの実装形態において、方法400は、複数の(例えば、別個の)データソースのユーザ選択を受信すること(450)をさらに含み、各々がデータソースに固有のデータソースレキシコンに関連付けられている。例えば、この方法は、第1のデータソース244および第2のデータソース246のユーザ選択を受信することを含む。第1のデータソース244は、第1のデータソース244に固有の第1のデータソースレキシコン254に関連付けられている。第2のデータソース246は、第2のデータソース256に固有の第2のデータソースレキシコン256に関連付けられている。
いくつかの実装形態において、データソース244および246は、共通の文法レキシコン250を共有する(452)。
上述の識別された実行可能モジュール、アプリケーション、または手順のセットの各々は、前述のメモリデバイスの1つ以上に格納され得、上述の機能を実施するための命令のセットに対応する。上述の識別されたモジュールまたはプログラム(すなわち、命令のセット)は、別個のソフトウェアプログラム、手順、またはモジュールとして実装される必要はなく、したがって、これらのモジュールの様々なサブセットは、様々な実装形態において組み合わされるか、または別様に再配置され得る。いくつかの実装形態において、メモリ214は、上述の識別されたモジュールおよびデータ構造のサブセットを格納する。さらに、メモリ214は、上述されていない追加のモジュールまたはデータ構造を格納し得る。
本明細書で本発明の説明に使用される専門用語は、特定の実装形態を説明することのみを目的としており、本発明を限定することを意図するものではない。本発明の説明および添付の特許請求の範囲で使用される場合、単数形「a」、「an」、および「the」は、特に文脈が明示しない限り、複数形も含むことが意図される。本明細書で使用される「および/または」という用語は、1つ以上の関連するリストされたアイテムのありとあらゆる可能な組み合わせを指し、それらを包含することも理解されよう。本明細書で使用される場合、「含む」および/または「含んでいる」という用語は、述べられた特徴、ステップ、動作、要素、および/または構成要素の存在を指定するが、1つ以上の他の特徴、ステップ、動作、要素、構成要素、および/またはそれらの群の存在または追加を排除しないことがさらに理解されよう。
前述の記載は、説明の目的で、特定の実装形態を参照して記載されてきた。しかしながら、上記の例示的な論議は、網羅的であること、または本発明を開示された正確な形態に限定することを意図していない。上記の教示を考慮して、多くの修正および変形が可能である。実装形態は、本発明の原理およびその実際の応用を最もよく解説するために選択および記載され、それにより、当業者は、本発明および企図される特定の用途に好適な様々な修正を伴う様々な実装形態を最大限に利用できる。

Claims (19)

  1. 自然言語表現の詳細レベルを判定するための方法であって、
    ディスプレイ、1つ以上のプロセッサ、および前記1つ以上のプロセッサによる実行のために構成された1つ以上のプログラムを格納するメモリを有するコンピューティングデバイスにおいて、
    前記ディスプレイ上にデータ視覚化インターフェースを表示することと、
    データソースのユーザ選択を受信することと、
    前記データソースに向けられた自然言語コマンドを指定するためのユーザ入力を受信することと、
    前記自然言語コマンドを構文解析することによって、前記データソース内のデータフィールドの文脈自由文法およびセマンティックモデルに従って中間表現を形成することであって、前記自然言語コマンドで、
    (i)第1の集計における集計タイプを指定する第1の用語、
    (ii)前記セマンティックモデルで、前記第1の集計のために集計されるデータフィールドを指定する第2の用語、および
    (iii)前記第1の集計のグループ化を判定するために、前記セマンティックモデルでデータフィールドを指定する1つ以上の用語、を識別することを含む、中間表現を形成することと、
    前記データソースに従って、前記中間表現を、前記第1の集計を含む1つ以上のデータベースクエリに変換することと、
    前記1つ以上のデータベースクエリを実行して、前記データソースから前記第1の集計に従って集計された1つ以上のデータセットを取得することと、
    前記取得されたデータセットの更新されたデータ視覚化を生成および表示することと、を含む、方法。
  2. 前記自然言語コマンドを構文解析することは、前記自然言語コマンドを複数のトークンに構文解析することを含む、請求項1に記載の方法。
  3. 前記複数のトークンの各々について、
    レキシコンで前記それぞれのトークンを検索して、前記それぞれのトークンに対応する概念を識別することをさらに含む、請求項2に記載の方法。
  4. 前記自然言語コマンドは、複数の語を含み、前記自然言語コマンドを構文解析することは、
    前記レキシコンを使用して、前記自然言語コマンドコンテキスト内で前記複数の語の各々の機能を判定することをさらに含み、
    前記複数のトークンの各々は、前記自然言語コマンドにおいて2つ以上の隣接する語を組み合わせることによって形成される単一の語または句のいずれかを含む、請求項3に記載の方法。
  5. 前記中間表現を形成することは、前記トークンに対応する前記概念を連結することを含む、請求項3または請求項4に記載の方法。
  6. 前記それぞれのトークンに対応する概念を識別するために前記レキシコン内の各トークンを検索することは、
    対応する概念を有していない1つ以上のトークンを識別することと、
    対応する概念を有する前記複数のトークンを使用して前記中間表現を形成することと、をさらに含む、請求項3に記載の方法。
  7. 前記レキシコンは、データソースレキシコンおよび文法レキシコンを含む、請求項3に記載の方法。
  8. 前記データソースレキシコンは、前記データソース内の前記データフィールドに対応する複数のフィールドを含み、
    前記複数のフィールドの各々は、1つ以上のエントリにマッピングされ、前記エントリの各々は、概念に対応する、請求項7に記載の方法。
  9. 前記データソースレキシコンは、前記データソースの前記セマンティックモデルから生成され、
    前記セマンティックモデルは、属性の名前、前記属性の値、および前記値に対応するメタデータを含む、請求項7または請求項8に記載の方法。
  10. 前記データソースレキシコン内の前記複数のフィールドは、複数の同義語を含む、請求項8に記載の方法。
  11. 前記複数の同義語はユーザによって定義される第1のサブセットを含む、請求項10に記載の方法。
  12. 前記複数の同義語は、前記コンピューティングデバイスによって事前定義された第2のサブセットを含む、請求項10または請求項11に記載の方法。
  13. 前記中間表現を形成することは、前記文脈自由文法を管理する1つ以上の事前定義された文法規則を使用する、請求項1~12のいずれかに記載の方法。
  14. 前記事前定義された文法規則は、制限、グループ、集計、フィルタリング、およびソートからなる群から選択された事前定義された表現タイプを含む、請求項13に記載の方法。
  15. 前記自然言語コマンドを指定するためのユーザ入力を受信することは、前記データ視覚化インターフェースのユーザインターフェース制御を介して、前記ユーザ入力を受信することを含む、請求項1~14のいずれかに記載の方法。
  16. 複数のデータソースのユーザ選択を受信することをさらに含み、前記複数のデータソースの各々が前記データソースに固有のデータソースレキシコンに関連付けられている、請求項1~15のいずれかに記載の方法。
  17. 前記データソースは、共通の文法レキシコンを共有する、請求項16に記載の方法。
  18. コンピューティングデバイスであって、
    1つ以上のプロセッサと、
    前記1つ以上のプロセッサに結合されたメモリと、
    ディスプレイと、
    前記メモリに格納され、前記1つ以上のプロセッサによる実行のために構成された1つ以上のプログラムであって、請求項1~17のいずれかに記載の方法を実施するための命令を含む、1つ以上のプログラムと、を含む、コンピューティングデバイス。
  19. 1つ以上のプログラムを格納する非一時的コンピュータ可読記憶媒体であって、前記1つ以上のプログラムは、コンピューティングデバイスによって実行されると、前記デバイスに請求項1~17のいずれかに記載の方法を実施させる命令を含む、非一時的コンピュータ可読記憶媒体。
JP2021518553A 2018-10-08 2019-10-08 自然言語構造を使用したデータ視覚化の詳細レベルの判定 Active JP7186871B2 (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201862742857P 2018-10-08 2018-10-08
US62/742,857 2018-10-08
US16/166,125 2018-10-21
US16/166,125 US11055489B2 (en) 2018-10-08 2018-10-21 Determining levels of detail for data visualizations using natural language constructs
US16/234,470 2018-12-27
US16/234,470 US11244114B2 (en) 2018-10-08 2018-12-27 Analyzing underspecified natural language utterances in a data visualization user interface
PCT/US2019/055169 WO2020076811A1 (en) 2018-10-08 2019-10-08 Determining levels of detail for data visualizations using natural language constructs

Publications (2)

Publication Number Publication Date
JP2022504230A JP2022504230A (ja) 2022-01-13
JP7186871B2 true JP7186871B2 (ja) 2022-12-09

Family

ID=70052179

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021518553A Active JP7186871B2 (ja) 2018-10-08 2019-10-08 自然言語構造を使用したデータ視覚化の詳細レベルの判定

Country Status (6)

Country Link
US (4) US11055489B2 (ja)
JP (1) JP7186871B2 (ja)
CN (1) CN112805714B (ja)
AU (1) AU2019359213B2 (ja)
CA (1) CA3115268C (ja)
WO (1) WO2020076811A1 (ja)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10896297B1 (en) 2017-12-13 2021-01-19 Tableau Software, Inc. Identifying intent in visual analytical conversations
US11055489B2 (en) * 2018-10-08 2021-07-06 Tableau Software, Inc. Determining levels of detail for data visualizations using natural language constructs
US11966568B2 (en) 2018-10-22 2024-04-23 Tableau Software, Inc. Generating data visualizations according to an object model of selected data sources
US11030255B1 (en) 2019-04-01 2021-06-08 Tableau Software, LLC Methods and systems for inferring intent and utilizing context for natural language expressions to generate data visualizations in a data visualization interface
USD926809S1 (en) 2019-06-05 2021-08-03 Reliaquest Holdings, Llc Display screen or portion thereof with a graphical user interface
USD926810S1 (en) 2019-06-05 2021-08-03 Reliaquest Holdings, Llc Display screen or portion thereof with a graphical user interface
USD926200S1 (en) * 2019-06-06 2021-07-27 Reliaquest Holdings, Llc Display screen or portion thereof with a graphical user interface
USD926811S1 (en) 2019-06-06 2021-08-03 Reliaquest Holdings, Llc Display screen or portion thereof with a graphical user interface
USD926782S1 (en) 2019-06-06 2021-08-03 Reliaquest Holdings, Llc Display screen or portion thereof with a graphical user interface
US11042558B1 (en) 2019-09-06 2021-06-22 Tableau Software, Inc. Determining ranges for vague modifiers in natural language commands
US10997217B1 (en) 2019-11-10 2021-05-04 Tableau Software, Inc. Systems and methods for visualizing object models of database tables
US11429271B2 (en) 2019-11-11 2022-08-30 Tableau Software, LLC Methods and user interfaces for generating level of detail calculations for data visualizations
USD974367S1 (en) * 2019-11-19 2023-01-03 Beet, Inc. Display screen or portion thereof with animated graphical user interface
US11714807B2 (en) * 2019-12-24 2023-08-01 Sap Se Platform for conversation-based insight search in analytics systems
US11914628B1 (en) 2020-03-18 2024-02-27 Tableau Software, LLC Incorporating data visualizations into database conversational interfaces
US11630558B2 (en) * 2020-06-09 2023-04-18 Adobe Inc. Systems for generating sequential supporting answer reports
US11522820B2 (en) * 2020-07-27 2022-12-06 Tableau Software, LLC Conversational natural language interfaces for data analysis
US11232120B1 (en) * 2020-07-30 2022-01-25 Tableau Software, LLC Schema viewer searching for a data analytics platform
US11216450B1 (en) * 2020-07-30 2022-01-04 Tableau Software, LLC Analyzing data using data fields from multiple objects in an object model
US11442964B1 (en) 2020-07-30 2022-09-13 Tableau Software, LLC Using objects in an object model as database entities
US11579760B2 (en) * 2020-09-08 2023-02-14 Tableau Software, LLC Automatic data model generation
JP2023543543A (ja) * 2020-10-05 2023-10-17 タブロー ソフトウェア,エルエルシー データ可視化のための詳細度計算を生成するための方法及びユーザインターフェース
BR112023021621A2 (pt) * 2021-05-21 2023-12-19 Google Llc Modelos de linguagem aprendidos por máquina que geram análise textual intermediária a serviço de geração de texto contextual
US11720240B1 (en) * 2021-06-20 2023-08-08 Tableau Software, LLC Visual autocompletion for geospatial queries
US11494061B1 (en) 2021-06-24 2022-11-08 Tableau Software, LLC Using a natural language interface to generate dashboards corresponding to selected data sources
US11689589B1 (en) 2021-09-20 2023-06-27 Tableau Software, LLC Using a communications application to analyze and distribute data analytics
US11704319B1 (en) 2021-10-14 2023-07-18 Tableau Software, LLC Table calculations for visual analytics using concise level of detail semantics
CN113885770B (zh) * 2021-10-27 2024-02-02 北京字跳网络技术有限公司 表格数据展示方法、装置、电子设备和存储介质
US20230214096A1 (en) * 2022-01-06 2023-07-06 Honeywell International Inc. Systems and methods for navigating a graphical user interface
US11809698B1 (en) * 2022-01-28 2023-11-07 Tableau Software, LLC Phrase builder for data analytic natural language interface
WO2024054556A2 (en) 2022-09-07 2024-03-14 Google Llc Generating audio using auto-regressive generative neural networks

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180203924A1 (en) 2017-01-18 2018-07-19 Google Inc. Systems and methods for processing a natural language query in data tables
JP2022500751A (ja) 2018-09-18 2022-01-04 タブロー ソフトウェア,インコーポレイテッド データ可視化ユーザインターフェースにおける自然言語表現の分析

Family Cites Families (163)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5265244A (en) 1986-02-14 1993-11-23 International Business Machines Corporation Method and system for facilitating processing of statistical inquires on stored data accessible through a data access structure
US4800810A (en) 1986-07-24 1989-01-31 Yamamoto & Co. Ltd. Impact rice huller
IT1218950B (it) 1988-01-12 1990-04-24 Sarin Societa Servizi Ausiliar Procedimento e sistema per l'erogazione integrata particolarmente a fini pubblicitari di servizi telematici e di informazione grafica su terminali d'utente
US5169713A (en) 1990-02-22 1992-12-08 Commissariat A L'energie Atomique High frequency electromagnetic radiation absorbent coating comprising a binder and chips obtained from a laminate of alternating amorphous magnetic films and electrically insulating
JP3193365B2 (ja) 1990-05-14 2001-07-30 株式会社東芝 画像形成装置
US5060980A (en) 1990-05-30 1991-10-29 Xerox Corporation Form utilizing encoded indications for form field processing
US5265246A (en) 1990-12-10 1993-11-23 International Business Machines Corporation Graphic definition of range in the selection of data from a database field
US5940614A (en) 1991-04-18 1999-08-17 International Business Machines Corporation Hypertext control method and apparatus for displaying help information in an interactive data processing system
JPH0644320A (ja) 1991-05-14 1994-02-18 Sony Corp 情報検索システム
US5555403A (en) 1991-11-27 1996-09-10 Business Objects, S.A. Relational database access system using semantically dynamic objects
US5377348A (en) 1992-06-04 1994-12-27 International Business Machines Corporation System for searching a data base by creating a marking matrix in which two dimensional patterns control the search and selection
US5560007A (en) 1993-06-30 1996-09-24 Borland International, Inc. B-tree key-range bit map index optimization of database queries
JPH07175823A (ja) 1993-12-16 1995-07-14 Canon Inc 画像形成記憶検索装置
US5581677A (en) 1994-04-22 1996-12-03 Carnegie Mellon University Creating charts and visualizations by demonstration
US5664172A (en) 1994-07-19 1997-09-02 Oracle Corporation Range-based query optimizer
US5577241A (en) 1994-12-07 1996-11-19 Excite, Inc. Information retrieval system and method with implementation extensible query architecture
US5864856A (en) 1995-04-21 1999-01-26 Actuate Software, Inc. Process and apparatus for simplifying access to information stored in databases
US5668987A (en) 1995-08-31 1997-09-16 Sybase, Inc. Database system with subquery optimizer
US5664182A (en) 1995-09-18 1997-09-02 Actuate Software Corporation Persistent storage of report objects
US5913205A (en) 1996-03-29 1999-06-15 Virage, Inc. Query optimization for visual information retrieval system
US5893088A (en) 1996-04-10 1999-04-06 Altera Corporation System and method for performing database query using a marker table
US6405195B1 (en) 1996-05-06 2002-06-11 Spotfire Ab System and method for collaborative hosted analysis of data bases via a network portal
US6115744A (en) 1996-07-30 2000-09-05 Bea Systems, Inc. Client object API and gateway to enable OLTP via the internet
US5794246A (en) 1997-04-30 1998-08-11 Informatica Corporation Method for incremental aggregation of dynamically increasing database data sets
US6032158A (en) 1997-05-02 2000-02-29 Informatica Corporation Apparatus and method for capturing and propagating changes from an operational database to data marts
US5933830A (en) 1997-05-09 1999-08-03 Corda Technologies, Inc. Device and method for arranging data for use by a data client, such as a graph
US6397195B1 (en) 1997-06-27 2002-05-28 Hyperion Solutions Corporation System for managing accounting information in a multi-dimensional database
US6253257B1 (en) 1997-07-31 2001-06-26 Bea Systems, Inc. Software Interface for dynamic API mapping
US6339775B1 (en) 1997-11-07 2002-01-15 Informatica Corporation Apparatus and method for performing data transformations in data warehousing
US6044374A (en) 1997-11-14 2000-03-28 Informatica Corporation Method and apparatus for sharing metadata between multiple data marts through object references
US6188403B1 (en) 1997-11-21 2001-02-13 Portola Dimensional Systems, Inc. User-friendly graphics generator using direct manipulation
US6289352B1 (en) 1998-05-29 2001-09-11 Crystal Decisions, Inc. Apparatus and method for compound on-line analytical processing in databases
US6100901A (en) 1998-06-22 2000-08-08 International Business Machines Corporation Method and apparatus for cluster exploration and visualization
US6208990B1 (en) 1998-07-15 2001-03-27 Informatica Corporation Method and architecture for automated optimization of ETL throughput in data warehousing applications
US6300957B1 (en) 1998-07-29 2001-10-09 Inxight Software, Inc. Mapping a node-link structure to a rendering space beginning from any node
US6377259B2 (en) 1998-07-29 2002-04-23 Inxight Software, Inc. Presenting node-link structures with modification
US6400366B1 (en) 1998-09-14 2002-06-04 Visual Insights, Inc. Method and system for the interactive visualization and examination of data
US6301579B1 (en) 1998-10-20 2001-10-09 Silicon Graphics, Inc. Method, system, and computer program product for visualizing a data structure
US6317750B1 (en) 1998-10-26 2001-11-13 Hyperion Solutions Corporation Method and apparatus for accessing multidimensional data
US7315305B2 (en) 1999-01-04 2008-01-01 International Business Machines Corporation Method for visualizing data
US6522342B1 (en) 1999-01-27 2003-02-18 Hughes Electronics Corporation Graphical tuning bar for a multi-program data stream
US6154766A (en) 1999-03-23 2000-11-28 Microstrategy, Inc. System and method for automatic transmission of personalized OLAP report output
US6260050B1 (en) 1999-03-23 2001-07-10 Microstrategy, Inc. System and method of adapting automatic output of service related OLAP reports to disparate output devices
US6173310B1 (en) 1999-03-23 2001-01-09 Microstrategy, Inc. System and method for automatic transmission of on-line analytical processing system report output
CA2625653C (en) 1999-04-21 2011-08-02 Spss, Inc. Computer method and apparatus for creating visible graphics by using a graph algebra
US6611825B1 (en) 1999-06-09 2003-08-26 The Boeing Company Method and system for text mining using multidimensional subspaces
US6707454B1 (en) 1999-07-01 2004-03-16 Lucent Technologies Inc. Systems and methods for visualizing multi-dimensional data in spreadsheets and other data structures
US6750864B1 (en) 1999-11-15 2004-06-15 Polyvista, Inc. Programs and methods for the display, analysis and manipulation of multi-dimensional data implemented on a computer
US6405208B1 (en) 1999-12-13 2002-06-11 Hyperion Solutions Corporation Dynamic recursive build for multidimensional databases and methods and apparatus thereof
US6834122B2 (en) 2000-01-22 2004-12-21 Kairos Scientific, Inc. Visualization and processing of multidimensional data using prefiltering and sorting criteria
GB0002807D0 (en) 2000-02-09 2000-03-29 Ibm Interaction with query data
WO2001061616A2 (en) 2000-02-14 2001-08-23 First Opinion Corporation Automated diagnostic system and method
US6424933B1 (en) 2000-03-17 2002-07-23 Vicinity Corporation System and method for non-uniform scaled mapping
US6768986B2 (en) 2000-04-03 2004-07-27 Business Objects, S.A. Mapping of an RDBMS schema onto a multidimensional data model
US6327628B1 (en) 2000-05-19 2001-12-04 Epicentric, Inc. Portal server that provides a customizable user Interface for access to computer networks
US6725230B2 (en) 2000-07-18 2004-04-20 Aegis Analytical Corporation System, method and computer program for assembling process data of multi-database origins using a hierarchical display
AU2001271940A1 (en) * 2000-07-28 2002-02-13 Easyask, Inc. Distributed search system and method
US7009609B2 (en) 2000-12-22 2006-03-07 Bsp Inc. Method, system, and software for automated generation of graphs from report data
US6714897B2 (en) 2001-01-02 2004-03-30 Battelle Memorial Institute Method for generating analyses of categorical data
US6906717B2 (en) 2001-02-27 2005-06-14 Microsoft Corporation Multiple chart user interface
US6937237B2 (en) 2001-02-28 2005-08-30 Agilent Technologies, Inc. Sorting data based on data attributes for display in multiple display windows
US6643646B2 (en) 2001-03-01 2003-11-04 Hitachi, Ltd. Analysis of massive data accumulations using patient rule induction method and on-line analytical processing
JP2002288229A (ja) 2001-03-23 2002-10-04 Hitachi Ltd マルチレベル構成図情報の表示方法およびシステム
US7650343B2 (en) 2001-10-04 2010-01-19 Deutsches Krebsforschungszentrum Stiftung Des Offentlichen Rechts Data warehousing, annotation and statistical analysis system
US7281218B1 (en) 2002-04-18 2007-10-09 Sap Ag Manipulating a data source using a graphical user interface
US7290007B2 (en) 2002-05-10 2007-10-30 International Business Machines Corporation Method and apparatus for recording and managing data object relationship data
US7302383B2 (en) * 2002-09-12 2007-11-27 Luis Calixto Valles Apparatus and methods for developing conversational applications
AU2003299703A1 (en) 2002-12-17 2004-07-14 Terastat, Inc. Method and system for dynamic visualization of multi-dimensional data
US8620937B2 (en) 2002-12-27 2013-12-31 International Business Machines Corporation Real time data warehousing
US20040148170A1 (en) 2003-01-23 2004-07-29 Alejandro Acero Statistical classifiers for spoken language understanding and command/control scenarios
US7603267B2 (en) * 2003-05-01 2009-10-13 Microsoft Corporation Rules-based grammar for slots and statistical model for preterminals in natural language understanding system
CA2428853A1 (en) 2003-05-15 2004-11-15 Ibm Canada Limited - Ibm Canada Limitee Plotting numerical data
US7089266B2 (en) 2003-06-02 2006-08-08 The Board Of Trustees Of The Leland Stanford Jr. University Computer systems and methods for the query and visualization of multidimensional databases
US7200529B2 (en) 2003-08-15 2007-04-03 National Instruments Corporation Automatic configuration of function blocks in a signal analysis system
US7426520B2 (en) 2003-09-10 2008-09-16 Exeros, Inc. Method and apparatus for semantic discovery and mapping between data sources
US7756907B2 (en) 2003-09-16 2010-07-13 The Board Of Trustees Of The Leland Stanford Jr. University Computer systems and methods for visualizing data
US7265754B2 (en) 2003-11-12 2007-09-04 Proto Manufacturing Ltd. Method for displaying material characteristic information
US7117058B2 (en) 2004-06-24 2006-10-03 Taiwan Semiconductor Manufacturing Co., Ltd. Automatic statistical process control (SPC) chart generation apparatus and method thereof
US7800613B2 (en) 2004-12-02 2010-09-21 Tableau Software, Inc. Computer systems and methods for visualizing data with generation of marks
US7647551B2 (en) 2004-12-15 2010-01-12 Microsoft Corporation System and method for formatting a cell in response to data stored in a separate location
US7487442B2 (en) 2004-12-20 2009-02-03 Microsoft Corporation Method, system, and computer-readable medium for the layout of automatically-placed elements and user-placed elements in a chart
US7792847B2 (en) 2005-09-09 2010-09-07 Microsoft Corporation Converting structured reports to formulas
US8099674B2 (en) 2005-09-09 2012-01-17 Tableau Software Llc Computer systems and methods for automatically viewing multidimensional databases
US8442828B2 (en) * 2005-12-02 2013-05-14 Microsoft Corporation Conditional model for natural language understanding
US9405823B2 (en) 2007-07-23 2016-08-02 Nuance Communications, Inc. Spoken document retrieval using multiple speech transcription indices
US8209625B2 (en) * 2008-06-12 2012-06-26 University Of Southern California Phrase-driven grammar for data visualization
US8306971B2 (en) * 2008-06-20 2012-11-06 Tableau Software, Inc. Methods and systems of automatically geocoding a dataset for visual analysis
EP2311030A1 (en) * 2008-07-03 2011-04-20 Mobiter Dicta Oy Method and device for converting speech
US20110119047A1 (en) * 2009-11-19 2011-05-19 Tatu Ylonen Oy Ltd Joint disambiguation of the meaning of a natural language expression
US8478581B2 (en) 2010-01-25 2013-07-02 Chung-ching Chen Interlingua, interlingua engine, and interlingua machine translation system
US8250101B2 (en) 2010-05-27 2012-08-21 International Business Machines Corporation Ontology guided reference data discovery
US9299173B2 (en) * 2011-06-07 2016-03-29 International Business Machines Corporation Automatic selection of different visualizations for the organization of multivariate data
US9336298B2 (en) * 2011-06-16 2016-05-10 Microsoft Technology Licensing, Llc Dialog-enhanced contextual search query analysis
US8751505B2 (en) 2012-03-11 2014-06-10 International Business Machines Corporation Indexing and searching entity-relationship data
US20130249917A1 (en) * 2012-03-26 2013-09-26 Microsoft Corporation Profile data visualization
US9461876B2 (en) * 2012-08-29 2016-10-04 Loci System and method for fuzzy concept mapping, voting ontology crowd sourcing, and technology prediction
US20150019537A1 (en) * 2012-09-07 2015-01-15 Splunk Inc. Generating Reports from Unstructured Data
US20140164362A1 (en) 2012-12-10 2014-06-12 Parastructure Inc. Systems and Methods for Data Relationship Visualization
DE102013003055A1 (de) * 2013-02-18 2014-08-21 Nadine Sina Kurz Verfahren und Vorrichtung zum Durchführen von Suchen in natürlicher Sprache
US9818211B1 (en) * 2013-04-25 2017-11-14 Domo, Inc. Automated combination of multiple data visualizations
US9501585B1 (en) * 2013-06-13 2016-11-22 DataRPM Corporation Methods and system for providing real-time business intelligence using search-based analytics engine
US9858292B1 (en) * 2013-11-11 2018-01-02 Tableau Software, Inc. Systems and methods for semantic icon encoding in data visualizations
US10042533B2 (en) 2014-09-05 2018-08-07 Tableau Software, Inc. Graphical user interface that simplifies user creation of custom calculations for data visualizations
US10460239B2 (en) 2014-09-16 2019-10-29 International Business Machines Corporation Generation of inferred questions for a question answering system
US10516980B2 (en) 2015-10-24 2019-12-24 Oracle International Corporation Automatic redisplay of a user interface including a visualization
US10915233B2 (en) * 2014-09-26 2021-02-09 Oracle International Corporation Automated entity correlation and classification across heterogeneous datasets
US20160171050A1 (en) 2014-11-20 2016-06-16 Subrata Das Distributed Analytical Search Utilizing Semantic Analysis of Natural Language
US9904450B2 (en) 2014-12-19 2018-02-27 At&T Intellectual Property I, L.P. System and method for creating and sharing plans through multimodal dialog
US10146751B1 (en) 2014-12-31 2018-12-04 Guangsheng Zhang Methods for information extraction, search, and structured representation of text data
US10418032B1 (en) * 2015-04-10 2019-09-17 Soundhound, Inc. System and methods for a virtual assistant to manage and use context in a natural language dialog
US10546001B1 (en) * 2015-04-15 2020-01-28 Arimo, LLC Natural language queries based on user defined attributes
US20180144065A1 (en) * 2015-04-29 2018-05-24 Mahesh Yellai Method for Generating Visual Representations of Data Based on Controlled Natural Language Queries and System Thereof
US9672814B2 (en) 2015-05-08 2017-06-06 International Business Machines Corporation Semi-supervised learning of word embeddings
US9824083B2 (en) 2015-07-07 2017-11-21 Rima Ghannam System for natural language understanding
US11294924B1 (en) 2015-07-16 2022-04-05 Tableau Software, Inc. Systems and methods for using multiple aggregation levels in a single data visualization
CN107016012A (zh) * 2015-09-11 2017-08-04 谷歌公司 处理在处理自然语言查询中的故障
US10325385B2 (en) 2015-09-24 2019-06-18 International Business Machines Corporation Comparative visualization of numerical information
US11151761B2 (en) * 2015-09-30 2021-10-19 Sap Se Analysing Internet of Things
US10929360B2 (en) 2015-10-19 2021-02-23 Oracle International Corporation Filtered partition maintenance operations
US10380140B2 (en) 2015-11-30 2019-08-13 Tableau Software, Inc. Systems and methods for implementing a virtual machine for interactive visual analysis
US10817527B1 (en) * 2016-04-12 2020-10-27 Tableau Software, Inc. Systems and methods of using natural language processing for visual analysis of a data set
US10515121B1 (en) * 2016-04-12 2019-12-24 Tableau Software, Inc. Systems and methods of using natural language processing for visual analysis of a data set
US20170308571A1 (en) 2016-04-20 2017-10-26 Google Inc. Techniques for utilizing a natural language interface to perform data analysis and retrieval
US9619202B1 (en) 2016-07-07 2017-04-11 Intelligently Interactive, Inc. Voice command-driven database
US10410107B2 (en) * 2016-07-26 2019-09-10 Salesforce.Com, Inc. Natural language platform for database system
US10564622B1 (en) * 2016-07-31 2020-02-18 Splunk Inc. Control interface for metric definition specification for assets and asset groups driven by search-derived asset tree hierarchy
US10042840B2 (en) * 2016-08-04 2018-08-07 Oath Inc. Hybrid grammatical and ungrammatical parsing
CN107885744B (zh) * 2016-09-29 2023-01-03 微软技术许可有限责任公司 对话式的数据分析
KR102667413B1 (ko) 2016-10-27 2024-05-21 삼성전자주식회사 음성 명령에 기초하여 애플리케이션을 실행하는 방법 및 장치
US11210115B2 (en) 2016-11-06 2021-12-28 Tableau Software, Inc. Data visualization user interface with summary popup that includes interactive objects
US10242079B2 (en) 2016-11-07 2019-03-26 Tableau Software, Inc. Optimizing execution of data transformation flows
US10970634B2 (en) * 2016-11-10 2021-04-06 General Electric Company Methods and systems for capturing analytic model authoring knowledge
US20180137424A1 (en) * 2016-11-17 2018-05-17 General Electric Company Methods and systems for identifying gaps in predictive model ontology
US20180158245A1 (en) * 2016-12-06 2018-06-07 Sap Se System and method of integrating augmented reality and virtual reality models into analytics visualizations
US20190197605A1 (en) * 2017-01-23 2019-06-27 Symphony Retailai Conversational intelligence architecture system
US20180210883A1 (en) * 2017-01-25 2018-07-26 Dony Ang System for converting natural language questions into sql-semantic queries based on a dimensional model
US11200265B2 (en) * 2017-05-09 2021-12-14 Accenture Global Solutions Limited Automated generation of narrative responses to data queries
CN108268582B (zh) * 2017-07-14 2021-05-07 阿里巴巴(中国)有限公司 信息查询方法及装置
IT201700082320A1 (it) * 2017-07-19 2019-01-19 Nuovo Pignone Tecnologie Srl Sistema di ricerca per banche dati e metodo
US20190102390A1 (en) 2017-09-29 2019-04-04 Novabase Sgps, S.A. Semantic search engine and visualization platform
KR102426171B1 (ko) 2017-10-13 2022-07-29 현대자동차주식회사 대화 시스템, 이를 포함하는 차량 및 대화 서비스 처리 방법
CN108228701A (zh) * 2017-10-23 2018-06-29 武汉大学 一种实现汉语近自然语言查询接口的系统
KR102414456B1 (ko) 2017-10-23 2022-06-30 현대자동차주식회사 대화 시스템, 이를 포함하는 차량 및 유고 정보 처리 방법
US20190121801A1 (en) * 2017-10-24 2019-04-25 Ge Inspection Technologies, Lp Generating Recommendations Based on Semantic Knowledge Capture
US10546003B2 (en) * 2017-11-09 2020-01-28 Adobe Inc. Intelligent analytics interface
US11080304B2 (en) 2017-11-29 2021-08-03 International Business Machines Corporation Feature vector profile generation for interviews
US11182122B2 (en) 2017-12-08 2021-11-23 Amazon Technologies, Inc. Voice control of computing devices
US11157564B2 (en) 2018-03-02 2021-10-26 Thoughtspot, Inc. Natural language question answering systems
CA3042921A1 (en) 2018-05-10 2019-11-10 Royal Bank Of Canada Machine natural language processing for summarization and sentiment analysis
US10956655B2 (en) * 2018-05-23 2021-03-23 Predictx Limited Automated production of data-driven reports with descriptive and rich text and graphical contents
US11157704B2 (en) * 2018-06-18 2021-10-26 DataChat.ai Constrained natural language processing
US10552541B1 (en) * 2018-08-27 2020-02-04 International Business Machines Corporation Processing natural language queries based on machine learning
EP3627344A1 (en) 2018-09-18 2020-03-25 QlikTech International AB Conversational analytics
US10902045B2 (en) * 2018-09-18 2021-01-26 Tableau Software, Inc. Natural language interface for building data visualizations, including cascading edits to filter expressions
US11048871B2 (en) * 2018-09-18 2021-06-29 Tableau Software, Inc. Analyzing natural language expressions in a data visualization user interface
US11429627B2 (en) 2018-09-28 2022-08-30 Splunk Inc. System monitoring driven by automatically determined operational parameters of dependency graph model with user interface
US11055489B2 (en) * 2018-10-08 2021-07-06 Tableau Software, Inc. Determining levels of detail for data visualizations using natural language constructs
US20200134103A1 (en) * 2018-10-26 2020-04-30 Ca, Inc. Visualization-dashboard narration using text summarization
US11011257B2 (en) * 2018-11-21 2021-05-18 Enlitic, Inc. Multi-label heat map display system
US11823074B2 (en) 2019-04-10 2023-11-21 Accenture Global Solutions Limited Intelligent communication manager and summarizer
US11775529B2 (en) 2020-07-06 2023-10-03 Ocient Holdings LLC Recursive functionality in relational database systems
EP4315101A1 (en) * 2021-03-30 2024-02-07 Tableau Software, LLC Applying a visual analytics intent language to generate data visualizations
US11720240B1 (en) * 2021-06-20 2023-08-08 Tableau Software, LLC Visual autocompletion for geospatial queries

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180203924A1 (en) 2017-01-18 2018-07-19 Google Inc. Systems and methods for processing a natural language query in data tables
JP2022500751A (ja) 2018-09-18 2022-01-04 タブロー ソフトウェア,インコーポレイテッド データ可視化ユーザインターフェースにおける自然言語表現の分析

Also Published As

Publication number Publication date
CA3115268C (en) 2024-05-14
US11694036B2 (en) 2023-07-04
US20200110803A1 (en) 2020-04-09
US20210319186A1 (en) 2021-10-14
US11995407B2 (en) 2024-05-28
US20220164540A1 (en) 2022-05-26
CN112805714B (zh) 2022-06-17
CA3115268A1 (en) 2020-04-16
AU2019359213B2 (en) 2023-02-16
US20200110779A1 (en) 2020-04-09
US11055489B2 (en) 2021-07-06
JP2022504230A (ja) 2022-01-13
WO2020076811A1 (en) 2020-04-16
CN112805714A (zh) 2021-05-14
BR112021006657A2 (pt) 2021-07-13
AU2019359213A1 (en) 2021-05-06
US11244114B2 (en) 2022-02-08

Similar Documents

Publication Publication Date Title
JP7186871B2 (ja) 自然言語構造を使用したデータ視覚化の詳細レベルの判定
US11874877B2 (en) Using natural language processing for visual analysis of a data set
AU2021204448B2 (en) Systems and methods of applying pragmatics principles for interaction with visual analytics
US11934461B2 (en) Applying natural language pragmatics in a data visualization user interface
US11010396B1 (en) Data visualization user interface using cohesion of sequential natural language commands
US10795902B1 (en) Applying natural language pragmatics in a data visualization user interface
US11055353B2 (en) Typeahead and autocomplete for natural language queries
US11842154B2 (en) Visually correlating individual terms in natural language input to respective structured phrases representing the natural language input
US11822584B2 (en) Interpreting vague intent modifiers in visual analysis using word co-occurrence and sentiment analysis
BR112021006657B1 (pt) Método para gerar visualizações de dados a partir de expressões de linguagem natural, dispositivo de computação e meio de armazenamento legível por computador não transitório
US11494061B1 (en) Using a natural language interface to generate dashboards corresponding to selected data sources

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210604

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220726

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220805

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221102

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221129

R150 Certificate of patent or registration of utility model

Ref document number: 7186871

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350