JP7369320B1 - Information processing device, method, program, and system - Google Patents
Information processing device, method, program, and system Download PDFInfo
- Publication number
- JP7369320B1 JP7369320B1 JP2023115912A JP2023115912A JP7369320B1 JP 7369320 B1 JP7369320 B1 JP 7369320B1 JP 2023115912 A JP2023115912 A JP 2023115912A JP 2023115912 A JP2023115912 A JP 2023115912A JP 7369320 B1 JP7369320 B1 JP 7369320B1
- Authority
- JP
- Japan
- Prior art keywords
- analysis
- user
- data set
- outputting
- target
- 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
Links
- 230000010365 information processing Effects 0.000 title claims description 26
- 238000000034 method Methods 0.000 title claims description 23
- 238000004458 analytical method Methods 0.000 claims abstract description 271
- 238000007405 data analysis Methods 0.000 claims abstract description 31
- 230000004044 response Effects 0.000 claims description 97
- 238000007781 pre-processing Methods 0.000 claims description 15
- 230000007812 deficiency Effects 0.000 claims description 13
- 230000009471 action Effects 0.000 claims description 8
- 239000000463 material Substances 0.000 claims description 4
- 238000001514 detection method Methods 0.000 claims description 3
- 230000007704 transition Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 abstract description 20
- 230000006870 function Effects 0.000 abstract description 5
- 238000005516 engineering process Methods 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 13
- 238000012545 processing Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 8
- 239000003795 chemical substances by application Substances 0.000 description 6
- 230000000875 corresponding effect Effects 0.000 description 5
- 238000007689 inspection Methods 0.000 description 5
- 238000013461 design Methods 0.000 description 4
- 230000003213 activating effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000001276 controlling effect Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000007717 exclusion Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000000513 principal component analysis Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】ユーザのデータ分析スキルの高低に関わらず、低コストかつ短時間で、適切なデータ分析結果を得るための技術を提供する。
【解決手段】本開示の一態様のプログラムは、コンピュータを、ユーザとの間で行われるデータ分析に関するチャットの進行状態を管理する手段、チャットの進行を通じてユーザの分析の目的を特定する手段、分析の目的に従って、対象データセットを分析する手段、対象データセットの分析の結果を出力する手段、として機能させる。
【選択図】図4
The present invention provides a technology for obtaining appropriate data analysis results at low cost and in a short time, regardless of the level of a user's data analysis skills.
[Solution] A program according to one aspect of the present disclosure provides a means for controlling a computer to manage the progress status of a chat regarding data analysis performed with a user, a means for identifying the purpose of the user's analysis through the progress of the chat, and an analysis method. According to the purpose of , it functions as a means to analyze the target data set and a means to output the results of the analysis of the target data set.
[Selection diagram] Figure 4
Description
本開示は、情報処理装置、方法、プログラム、およびシステムに関する。 The present disclosure relates to an information processing device, method, program, and system.
従来、企業が自社の取得した膨大なデータを、収集、蓄積、分析、および加工し、経営戦略のための意志決定を支援するための様々なBI(Business Intelligence)ツールが知られている。 Conventionally, various BI (Business Intelligence) tools have been known that allow companies to collect, accumulate, analyze, and process the enormous amount of data they have acquired, and to support decision-making for business strategies.
また、特許文献1には、共通化された設計フレームワークにより、個人の設計スキルに依存することなく、より短期間で高品質な「マネージドモデル・セルフサービスBI」を提供することを企図した技術的思想が開示されている。 Additionally, Patent Document 1 describes a technology that aims to provide high-quality "managed model self-service BI" in a shorter period of time without relying on individual design skills using a standardized design framework. ideas are disclosed.
しかし、例えば、企業の企画部門の担当者のような、多くの場合、高度なデータ分析スキルを持ちあわせない人物が自力でBIツールを駆使することは容易でなく、データ分析の専門家による支援が必要となるケースが多かった。専門家による支援を受けるには金銭的コストがかかるうえ分析結果を得るまでに要する時間は短くない。また、特許文献1の技術的思想も、要件定義テンプレート、および分析モデル詳細定義書に必要事項を入力することが求められるため、一定水準以上の設計・分析スキルがあることを前提としていると解される。 However, in many cases, it is not easy for people who do not have advanced data analysis skills, such as those in charge of a company's planning department, to make full use of BI tools on their own, so they need assistance from data analysis experts. There were many cases where this was necessary. Obtaining expert support requires financial costs and the time required to obtain analysis results is not short. In addition, the technical idea of Patent Document 1 also requires input of necessary items into the requirements definition template and detailed analysis model definition document, so it can be understood that it is assumed that design and analysis skills of a certain level or higher are present. be done.
本開示の目的は、ユーザのデータ分析スキルの高低に関わらず、低コストかつ短時間で、適切なデータ分析結果を得るための技術を提供することである。 An object of the present disclosure is to provide a technique for obtaining appropriate data analysis results at low cost and in a short time, regardless of the level of data analysis skill of the user.
本開示の一態様のプログラムは、コンピュータを、ユーザとの間で行われるデータ分析に関するチャットの進行状態を管理する手段、チャットの進行を通じてユーザの分析の目的を特定する手段、分析の目的に従って、対象データセットを分析する手段、対象データセットの分析の結果を出力する手段、として機能させる。 A program according to an aspect of the present disclosure provides a means for controlling a computer to manage the progress of a chat regarding data analysis performed with a user, a means for identifying a user's purpose of analysis through the progress of the chat, and a means for controlling a computer according to the purpose of analysis. It functions as a means to analyze the target data set and a means to output the results of the analysis of the target data set.
以下、本発明の一実施形態について、図面に基づいて詳細に説明する。なお、実施形態を説明するための図面において、同一の構成要素には原則として同一の符号を付し、その繰り返しの説明は省略する。 Hereinafter, one embodiment of the present invention will be described in detail based on the drawings. In addition, in the drawings for explaining the embodiments, the same components are generally designated by the same reference numerals, and repeated explanations thereof will be omitted.
(1)情報処理システムの構成
情報処理システムの構成について説明する。図1は、本実施形態の情報処理システムの構成を示すブロック図である。
(1) Configuration of information processing system The configuration of the information processing system will be explained. FIG. 1 is a block diagram showing the configuration of an information processing system according to this embodiment.
図1に示すように、情報処理システム1は、クライアント装置10と、サーバ30とを備える。
クライアント装置10及びサーバ30は、ネットワーク(例えば、インターネット又はイントラネット)NWを介して接続される。
As shown in FIG. 1, the information processing system 1 includes a client device 10 and a server 30.
The client device 10 and the server 30 are connected via a network (eg, the Internet or an intranet) NW.
クライアント装置10は、サーバ30にリクエストを送信する情報処理装置の一例である。クライアント装置10は、例えば、スマートフォン、タブレット端末、又は、パーソナルコンピュータである。クライアント装置10のユーザとして、例えば企業の企画部門の人員のような、データ分析のニーズはあるが、データ分析を遂行するための高度なスキルを多くの場合持ち合わせていない人物が想定される。ただし、クライアント装置10のユーザが、高度なスキルを持つデータ分析の専門家である場合にも、本実施形態の情報処理システム1は有用である。 The client device 10 is an example of an information processing device that sends a request to the server 30. The client device 10 is, for example, a smartphone, a tablet terminal, or a personal computer. The user of the client device 10 is assumed to be a person who has a need for data analysis but often does not have the advanced skills to perform data analysis, such as a person in a corporate planning department. However, the information processing system 1 of this embodiment is also useful when the user of the client device 10 is a highly skilled data analysis expert.
サーバ30は、クライアント装置10から送信されたリクエストに応じたレスポンスをクライアント装置10に提供する情報処理装置の一例である。サーバ30は、例えば、ウェブサーバである。 The server 30 is an example of an information processing device that provides the client device 10 with a response in response to a request transmitted from the client device 10. Server 30 is, for example, a web server.
(1-1)クライアント装置の構成
クライアント装置の構成について説明する。図2は、本実施形態のクライアント装置の構成を示すブロック図である。
(1-1) Configuration of client device The configuration of the client device will be explained. FIG. 2 is a block diagram showing the configuration of the client device of this embodiment.
図2に示すように、クライアント装置10は、記憶装置11と、プロセッサ12と、入出力インタフェース13と、通信インタフェース14とを備える。クライアント装置10は、ディスプレイ21に接続される。 As shown in FIG. 2, the client device 10 includes a storage device 11, a processor 12, an input/output interface 13, and a communication interface 14. Client device 10 is connected to display 21 .
記憶装置11は、プログラム及びデータを記憶するように構成される。記憶装置11は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、及び、ストレージ(例えば、フラッシュメモリ又はハードディスク)の組合せである。 The storage device 11 is configured to store programs and data. The storage device 11 is, for example, a combination of ROM (Read Only Memory), RAM (Random Access Memory), and storage (for example, flash memory or hard disk).
プログラムは、例えば、以下のプログラムを含む。
・OS(Operating System)のプログラム
・情報処理を実行するアプリケーション(例えば、ウェブブラウザ、またはデータ分析用のアプリケーション、など)のプログラム
The programs include, for example, the following programs.
・OS (Operating System) programs ・Application programs that execute information processing (e.g., web browsers, data analysis applications, etc.)
データは、例えば、以下のデータを含む。
・情報処理において参照されるデータベース
・情報処理を実行することによって得られるデータ(つまり、情報処理の実行結果)
The data includes, for example, the following data.
・Databases referenced in information processing ・Data obtained by executing information processing (that is, execution results of information processing)
プロセッサ12は、記憶装置11に記憶されたプログラムを起動することによって、クライアント装置10の機能を実現するコンピュータである。プロセッサ12は、例えば、以下の少なくとも1つである。
・CPU(Central Processing Unit)
・GPU(Graphic Processing Unit)
・ASIC(Application Specific Integrated Circuit)
・FPGA(Field Programmable Gate Array)
The processor 12 is a computer that implements the functions of the client device 10 by activating a program stored in the storage device 11. The processor 12 is, for example, at least one of the following.
・CPU (Central Processing Unit)
・GPU (Graphic Processing Unit)
・ASIC (Application Specific Integrated Circuit)
・FPGA (Field Programmable Gate Array)
入出力インタフェース13は、クライアント装置10に接続される入力デバイスから情報(例えばユーザの指示)を取得し、かつ、クライアント装置10に接続される出力デバイスに情報(例えば画像)を出力するように構成される。 The input/output interface 13 is configured to acquire information (for example, user instructions) from an input device connected to the client device 10 and output information (for example, an image) to an output device connected to the client device 10. be done.
入力デバイスは、例えば、キーボード、ポインティングデバイス、タッチパネル、又は、それらの組合せである。
出力デバイスは、例えば、ディスプレイ21、スピーカ、又は、それらの組合せである。
The input device is, for example, a keyboard, pointing device, touch panel, or a combination thereof.
The output device is, for example, a display 21, a speaker, or a combination thereof.
通信インタフェース14は、クライアント装置10と外部装置(例えばサーバ30)との間の通信を制御するように構成される。 Communication interface 14 is configured to control communication between client device 10 and an external device (eg, server 30).
ディスプレイ21は、画像(静止画、または動画)を表示するように構成される。ディスプレイ21は、例えば、液晶ディスプレイ、または有機ELディスプレイである。 The display 21 is configured to display images (still images or moving images). The display 21 is, for example, a liquid crystal display or an organic EL display.
(1-2)サーバの構成
サーバの構成について説明する。図3は、本実施形態のサーバの構成を示すブロック図である。
(1-2) Server configuration The server configuration will be explained. FIG. 3 is a block diagram showing the configuration of the server of this embodiment.
図3に示すように、サーバ30は、記憶装置31と、プロセッサ32と、入出力インタフェース33と、通信インタフェース34とを備える。 As shown in FIG. 3, the server 30 includes a storage device 31, a processor 32, an input/output interface 33, and a communication interface 34.
記憶装置31は、プログラム及びデータを記憶するように構成される。記憶装置31は、例えば、ROM、RAM、及び、ストレージ(例えば、フラッシュメモリ又はハードディスク)の組合せである。 The storage device 31 is configured to store programs and data. The storage device 31 is, for example, a combination of ROM, RAM, and storage (eg, flash memory or hard disk).
プログラムは、例えば、以下のプログラムを含む。
・OSのプログラム
・情報処理を実行するアプリケーションのプログラム
The programs include, for example, the following programs.
・OS program ・Application program that executes information processing
データは、例えば、以下のデータを含む。
・情報処理において参照されるデータベース
・情報処理の実行結果
The data includes, for example, the following data.
・Databases referenced in information processing ・Execution results of information processing
プロセッサ32は、記憶装置31に記憶されたプログラムを起動することによって、サーバ30の機能を実現するコンピュータである。プロセッサ32は、例えば、以下の少なくとも1つである。
・CPU
・GPU
・ASIC
・FPGA
The processor 32 is a computer that implements the functions of the server 30 by activating a program stored in the storage device 31. The processor 32 is, for example, at least one of the following.
・CPU
・GPU
・ASIC
・FPGA
入出力インタフェース33は、サーバ30に接続される入力デバイスから情報(例えばユーザの指示)を取得し、かつ、サーバ30に接続される出力デバイスに情報(例えば画像)を出力するように構成される。 The input/output interface 33 is configured to obtain information (e.g., user instructions) from an input device connected to the server 30 and output information (e.g., an image) to an output device connected to the server 30. .
入力デバイスは、例えば、キーボード、ポインティングデバイス、タッチパネル、又は、それらの組合せである。
出力デバイスは、例えば、ディスプレイである。
The input device is, for example, a keyboard, pointing device, touch panel, or a combination thereof.
The output device is, for example, a display.
通信インタフェース34は、サーバ30と外部装置(例えばクライアント装置10)との間の通信を制御するように構成される。なお、サーバ30は、例えば大規模言語モデルに代表される自然言語モデル(以下、単に「自然言語モデル」という)またはデータ分析ツールなどの一部機能の利用のために外部システムにアクセスするように構成されてもよい。 Communication interface 34 is configured to control communication between server 30 and an external device (eg, client device 10). Note that the server 30 is configured to access external systems in order to use some functions, such as natural language models such as large-scale language models (hereinafter simply referred to as "natural language models") or data analysis tools. may be configured.
(2)実施形態の一態様
本実施形態の一態様について説明する。図4は、本実施形態の一態様の説明図である。
(2) One aspect of the embodiment One aspect of the present embodiment will be described. FIG. 4 is an explanatory diagram of one aspect of this embodiment.
図4に示すように、情報処理システム1は、主にユーザUS1とデータ分析エージェントAG2との間で行われるチャットベースで、当該ユーザUS1が必要とするデータ分析を進め、最終的に、当該分析の結果をユーザUS1に提供する。 As shown in FIG. 4, the information processing system 1 advances the data analysis required by the user US1 mainly on a chat basis between the user US1 and the data analysis agent AG2, and finally performs the data analysis required by the user US1. The results are provided to the user US1.
具体的には、サーバ30は、ユーザUS1と、データ分析エージェントAG2との間で行われる、データ分析に関するチャットの進行状態を管理する。チャットの進行状態の管理は、ユーザ指示の意図理解、当該ユーザ指示の意図とデータ分析のシナリオとに基づくシステム応答の生成、ならびに当該システム応答の出力、などを含み得る。チャットの進行状態の管理において、サーバ30は、自然言語モデルを適宜利用することができる。他方、クライアント装置10は、ユーザUS1からユーザ指示を受け付けてサーバ30へ出力したり、サーバ30から受信したシステム応答に基づいてユーザUS1に向けてUI(User Interface)を表示したりする。 Specifically, the server 30 manages the progress of a chat regarding data analysis between the user US1 and the data analysis agent AG2. Managing the progress of a chat may include understanding the intent of a user instruction, generating a system response based on the intent of the user instruction and a data analysis scenario, outputting the system response, and the like. In managing the progress of the chat, the server 30 can use a natural language model as appropriate. On the other hand, the client device 10 receives a user instruction from the user US1 and outputs it to the server 30, and displays a UI (User Interface) to the user US1 based on a system response received from the server 30.
サーバ30は、チャットの進行を通じて、ユーザUS1のデータ分析の目的を特定(言語化)する。言語化された目的は、その後の分析の指針として、記憶装置31に保存され、サーバ30によって参照される。また、サーバ30は、ユーザUS1から、クライアント装置10を介して、データセットの提供を受け付ける。サーバ30は、受け付けたデータセットに基づく対象データセットを分析し、当該分析の結果を含むシステム応答をクライアント装置10に出力する。クライアント装置10は、分析の結果を示すUIをユーザUS1に向けて表示する。 The server 30 identifies (verbalizes) the purpose of data analysis of the user US1 through the progress of the chat. The verbalized purpose is stored in the storage device 31 and referenced by the server 30 as a guide for subsequent analysis. Further, the server 30 receives a data set from the user US1 via the client device 10. The server 30 analyzes a target data set based on the received data set, and outputs a system response including the result of the analysis to the client device 10. The client device 10 displays a UI showing the results of the analysis to the user US1.
これにより、ユーザUS1は、データ分析エージェントAG2からの質問に回答したり、データ分析エージェントAG2から要求されたアクション(例えば、データセットの指定など)を行ったりするだけで、当該ユーザUS1が必要とする分析の結果(潜在的に必要としていた分析の結果を含み得る)を得ることができる。特に、ユーザUS1は、チャットを開始する前に、どのような目的で分析を行うべきか、どのような分析手法を選ぶべきか、またはどのようなデータセットを用意するべきか、などの解を事前に用意しておかなくても、チャットを通じてこれらの要素が定まり、必要な分析を行うことができる。 As a result, the user US1 only needs to respond to questions from the data analysis agent AG2 or perform actions requested by the data analysis agent AG2 (for example, specifying a dataset). (including potentially needed analysis results) can be obtained. In particular, before starting the chat, user US1 is looking for solutions such as what purpose the analysis should be carried out, what kind of analysis method should be chosen, and what kind of data set should be prepared. These elements can be determined through chat and the necessary analysis can be performed without having to prepare them in advance.
(3)情報処理
本実施形態の情報処理について説明する。図5は、本実施形態の情報処理の全体フローを示す図である。
(3) Information processing Information processing of this embodiment will be explained. FIG. 5 is a diagram showing the overall flow of information processing in this embodiment.
本実施形態の情報処理は、所定の開始条件の成立に応じて開始する。開始条件は、例えば、ユーザが新たな分析プロジェクトを開始すること、であってよい。 The information processing of this embodiment starts in response to establishment of a predetermined start condition. The starting condition may be, for example, that the user starts a new analysis project.
図5に示すように、サーバ30は、データセットの取得(S100)を実行する。
具体的には、サーバ30は、ユーザに分析材料となるデータセットの提供を求めるシステム応答(例えば、チャットメッセージ)を取得し、クライアント装置10へ送信する。
クライアント装置10は、受信したシステム応答に基づくUIをディスプレイ21に表示する。クライアント装置10は、ユーザからデータセットの指定を受け付け、指定されたデータセットを取得する。クライアント装置10は、取得したデータセットをサーバ30へ送信する。
As shown in FIG. 5, the server 30 executes data set acquisition (S100).
Specifically, the server 30 obtains a system response (for example, a chat message) requesting the user to provide a data set as analysis material, and transmits it to the client device 10 .
The client device 10 displays a UI based on the received system response on the display 21. The client device 10 receives a data set designation from a user and acquires the designated data set. The client device 10 transmits the acquired data set to the server 30.
ステップS100の後、サーバ30は、分析の目的の設定(S110)を実行する。
具体的には、サーバ30は、ユーザの分析の目的を特定するためのチャットを開始する。サーバ30は、ユーザとデータ分析エージェントとの間のメッセージのやり取りに基づいて、ユーザの分析の目的を特定(言語化)する。サーバ30は、特定した分析の目的を記憶装置31に保存するとともに、クライアント装置10へ送信する。クライアント装置10は、受信した分析の目的を参照可能なUIをユーザに提供する。
なお、分析の目的の設定(S110)の詳細は後述する。
After step S100, the server 30 executes setting of the purpose of analysis (S110).
Specifically, the server 30 starts a chat to identify the user's purpose of analysis. The server 30 identifies (verbalizes) the user's purpose of analysis based on the exchange of messages between the user and the data analysis agent. The server 30 stores the identified purpose of analysis in the storage device 31 and transmits it to the client device 10. The client device 10 provides the user with a UI that allows the user to refer to the purpose of the received analysis.
Note that details of setting the purpose of analysis (S110) will be described later.
ステップS110の後、サーバ30は、分析(S120)を実行する。
具体的には、サーバ30は、ステップS110において設定した分析の目的に従って、ステップS100において取得したデータセット、または当該データセットを加工(例えばデータクレンジングなどの前処理)したデータセットに対する分析を行う。サーバ30は、分析の結果をクライアント装置10へ送信する。クライアント装置10は、受信した分析の結果を示すUIをディスプレイ21に表示する。
なお、分析(S120)の詳細は後述する。
After step S110, the server 30 performs analysis (S120).
Specifically, the server 30 analyzes the data set acquired in step S100 or the data set obtained by processing the data set (for example, preprocessing such as data cleansing) according to the purpose of analysis set in step S110. The server 30 transmits the analysis results to the client device 10. The client device 10 displays a UI on the display 21 that shows the received analysis results.
Note that details of the analysis (S120) will be described later.
(3-1)分析の目的の設定処理
本実施形態の分析の目的の設定処理について説明する。図6は、本実施形態の分析の目的の設定処理のフローチャートである。図7は、本実施形態の分析の目的の設定処理において表示される画面例を示す図である。図8は、本実施形態の分析の目的の設定処理において表示される画面例を示す図である。図9は、本実施形態の分析の目的の設定処理において表示される画面例を示す図である。
(3-1) Analysis purpose setting process The analysis purpose setting process of this embodiment will be explained. FIG. 6 is a flowchart of analysis purpose setting processing according to this embodiment. FIG. 7 is a diagram showing an example of a screen displayed in the analysis purpose setting process of this embodiment. FIG. 8 is a diagram showing an example of a screen displayed in the analysis purpose setting process of this embodiment. FIG. 9 is a diagram showing an example of a screen displayed in the analysis purpose setting process of this embodiment.
図6に示すように、サーバ30は、システム応答の生成(S111)を実行する。
具体的には、サーバ30は、分析対象をユーザに問うシステム応答(メッセージ)を生成し、クライアント装置10へ送信する。
As shown in FIG. 6, the server 30 executes system response generation (S111).
Specifically, the server 30 generates a system response (message) that asks the user what to analyze, and sends it to the client device 10.
システム応答の生成(S111)の第1例として、サーバ30は、ステップS100において取得したデータセットに含まれるデータ項目名(変数名)に基づいて、分析対象の候補を特定(抽出)し、当該候補に関する質問を含むシステム応答を生成してもよい。質問は、候補のいずれが分析対象であるかをユーザに問うてもよいし、各候補が分析対象であるか否かをユーザに問うてもよい。 As a first example of system response generation (S111), the server 30 identifies (extracts) candidates for analysis based on the data item names (variable names) included in the data set acquired in step S100, and A system response may be generated that includes questions about the candidates. The question may ask the user which of the candidates is the target of analysis, or may ask the user whether each candidate is the target of analysis.
以降の説明において、特に断りの無い限り、サーバ30は、予め定められたテンプレートと、自然言語モデルとの一方または両方を用いてシステム応答を生成し得る。例えば、サーバ30は、自然言語モデルによって生成された文言を、テンプレートに挿入することで、システム応答を生成してもよい。 In the following description, unless otherwise specified, the server 30 may generate a system response using one or both of a predetermined template and a natural language model. For example, the server 30 may generate the system response by inserting text generated by a natural language model into a template.
システム応答の生成(S111)の第2例として、サーバ30は、ステップS100において取得したデータセットに含まれるデータ項目名に関わらず、定型的なメッセージをシステム応答として生成してもよい。 As a second example of system response generation (S111), the server 30 may generate a standard message as the system response, regardless of the data item name included in the data set acquired in step S100.
ステップS111の後に、クライアント装置10は、画面表示(S211)を実行する。
具体的には、クライアント装置10は、ステップS111においてサーバ30から送信されたシステム応答を受信する。クライアント装置10は、受信したシステム応答に基づく画面をディスプレイ21に表示する。かかる画面の一例を図7に示す。
After step S111, the client device 10 executes screen display (S211).
Specifically, the client device 10 receives the system response sent from the server 30 in step S111. The client device 10 displays a screen based on the received system response on the display 21. An example of such a screen is shown in FIG.
図7の画面は、オブジェクトJ20~J27を含む。
オブジェクトJ20は、チャットの進行状態(すなわち、分析プロジェクトの進行状態)を定義する複数のフェーズのうち、現在どのフェーズにあるかを表示する。図7の例では、オブジェクトJ20はチャットの進行状態が「分析の目的の設定」であることを示す。
The screen in FIG. 7 includes objects J20 to J27.
Object J20 displays which phase is currently in among a plurality of phases that define the progress state of the chat (that is, the progress state of the analysis project). In the example of FIG. 7, object J20 indicates that the chat progress status is "Setting analysis purpose."
オブジェクトJ21は、メインUIを表示する。オブジェクトJ21は、ユーザとデータ分析エージェントとのチャット、または分析の結果、など(換言すれば、システム応答とユーザ指示)を表示する。オブジェクトJ21は、少なくとも最新のシステム応答またはユーザ指示を表示可能に構成される。さらに、オブジェクトJ21は、過去のシステム応答またはユーザ指示を、例えばスクロール操作に応じて表示可能に構成されてもよい。 Object J21 displays the main UI. Object J21 displays the chat between the user and the data analysis agent, the results of analysis, etc. (in other words, system responses and user instructions). Object J21 is configured to be able to display at least the latest system response or user instruction. Furthermore, the object J21 may be configured to be able to display past system responses or user instructions, for example, in response to a scroll operation.
図7の例では、オブジェクトJ21は、「何について分析したいですか?」というシステム応答を表示する。さらに、図7の例では、オブジェクトJ21には、オブジェクトJ210a~J210bが配置される。 In the example of FIG. 7, object J21 displays the system response "What do you want to analyze?" Furthermore, in the example of FIG. 7, objects J210a to J210b are arranged in object J21.
オブジェクトJ210aは、分析対象の候補を選択するユーザ指示を受け付ける。図7の例では、オブジェクトJ210aは、ドロップダウンリストに相当するが、リストボックス、チェックボックス、またはラジオボタンなどの任意の選択系のGUI部品に代替可能である。 Object J210a accepts a user instruction to select a candidate for analysis. In the example of FIG. 7, the object J210a corresponds to a drop-down list, but it can be replaced with any selection-based GUI component such as a list box, check box, or radio button.
オブジェクトJ210bは、オブジェクトJ210aの選択を確定するユーザ指示を受け付ける。オブジェクトJ210bが選択されると、クライアント装置10は、オブジェクトJ210aによって選択されている候補を特定可能な情報をサーバ30へ送信する。 Object J210b accepts a user instruction to confirm the selection of object J210a. When object J210b is selected, client device 10 transmits information that can identify the candidate selected by object J210a to server 30.
オブジェクトJ22は、ユーザ指示を受け付ける。クライアント装置10は、オブジェクトJ22によって受け付けたユーザ指示を、サーバ30へ送信する。図7の例では、オブジェクトJ22を利用することで、ユーザは分析対象を、オブジェクトJ210aの選択によらずに、直接指定することができる。 Object J22 accepts user instructions. The client device 10 transmits the user instruction received by the object J22 to the server 30. In the example of FIG. 7, by using the object J22, the user can directly specify the analysis target without selecting the object J210a.
オブジェクトJ23は、サブUIを表示する。オブジェクトJ23は、分析に用いるデータセット、分析の目的(テキスト)、分析の結果、チャットの履歴などの、分析プロジェクトの要点に関する情報を表示可能に構成される。オブジェクトJ23には、オブジェクトJ24~J27が配置される。 Object J23 displays a sub-UI. The object J23 is configured to be able to display information related to the main points of the analysis project, such as the dataset used for analysis, the purpose of analysis (text), the results of analysis, and the history of chats. Objects J24 to J27 are arranged in object J23.
オブジェクトJ24は、分析に用いるデータセットに関する情報の表示/非表示を切り替えるユーザ指示を受け付ける。オブジェクトJ24が選択されると、クライアント装置10は、分析に用いるデータセットに関する情報をオブジェクトJ23に展開表示し、または展開表示済みの当該情報を閉じる。分析に用いるデータセットに関する情報は、例えば以下の少なくとも1つの情報を含むことができる。
・データセットが格納されたファイルの名称
・データセットに含まれるデータ項目(変数)の名称(例えば、売上、日時、など)
・データセットに含まれるデータ項目(変数)の型(例えば、整数型、日付型、など)
・データセットに含まれるデータ項目(変数)の値の実例
Object J24 accepts a user instruction to switch between displaying and non-displaying information regarding the data set used for analysis. When the object J24 is selected, the client device 10 expands and displays information regarding the data set used for analysis on the object J23, or closes the information that has already been expanded and displayed. Information regarding the data set used for analysis can include, for example, at least one of the following information.
・Name of the file where the dataset is stored ・Name of the data items (variables) included in the dataset (e.g. sales, date and time, etc.)
・Types of data items (variables) included in the dataset (e.g., integer type, date type, etc.)
・Examples of values of data items (variables) included in the dataset
オブジェクトJ25は、分析の目的の表示/非表示を切り替えるユーザ指示を受け付ける。オブジェクトJ25が選択されると、クライアント装置10は、分析の目的をオブジェクトJ23に展開表示し、または展開表示済みの当該情報を閉じる。ただし、分析の目的が未設定の場合に、クライアント装置10は、例えば「未定」などの固定のテキストまたは画像を分析の目的の代わりに用いることができる。また、オプションとして、オブジェクトJ25の選択時に、分析の目的に加え、当該目的を編集するユーザ指示を受け付けるオブジェクトが展開表示されてもよい。 Object J25 accepts a user instruction to switch between displaying and non-displaying the purpose of analysis. When the object J25 is selected, the client device 10 expands and displays the purpose of analysis on the object J23, or closes the expanded and displayed information. However, if the purpose of analysis has not been set, the client device 10 can use a fixed text or image such as "Undetermined" instead of the purpose of analysis. Further, as an option, when the object J25 is selected, in addition to the purpose of analysis, an object that accepts a user instruction to edit the purpose may be expanded and displayed.
オブジェクトJ26は、現在の分析プロジェクトにおいて既に実施された分析の結果の表示/非表示を切り替えるユーザ指示を受け付ける。オブジェクトJ26が選択されると、クライアント装置10は、分析の結果をオブジェクトJ23に展開表示し、または展開表示済みの当該情報を閉じる。ただし、分析が未実施の場合に、クライアント装置10は、例えば「なし」など固定のテキストまたは画像を分析の結果の代わりに用いることができる。また、オプションとして、オブジェクトJ26の選択時に、分析の結果に加え、当該結果の視覚的表現(例えば、グラフの書式など)を編集するユーザ指示を受け付けるオブジェクトが展開表示されてもよい。 Object J26 accepts a user instruction to switch between displaying and hiding the results of analyzes that have already been performed in the current analysis project. When the object J26 is selected, the client device 10 expands and displays the analysis results on the object J23, or closes the expanded and displayed information. However, if no analysis has been performed, the client device 10 can use a fixed text or image, such as "none", instead of the analysis result. Further, as an option, when object J26 is selected, an object that accepts user instructions for editing the visual representation of the results (eg, graph format, etc.) in addition to the analysis results may be expanded and displayed.
オブジェクトJ27は、チャット履歴の表示/非表示を切り替えるユーザ指示を受け付ける。オブジェクトJ27が選択されると、クライアント装置10は、チャット履歴をオブジェクトJ23に展開表示し、または展開表示済みの当該情報を閉じる。 Object J27 accepts a user instruction to switch between displaying and non-displaying the chat history. When object J27 is selected, client device 10 expands and displays the chat history on object J23, or closes the expanded and displayed information.
ステップS211の後に、クライアント装置10は、ユーザ指示の受け付け(S212)を実行する。
具体的には、クライアント装置10は、ユーザから分析対象を選択または指定するユーザ指示を受け付ける。図7の例では、ユーザは、オブジェクトJ210a~J210bの操作、またはオブジェクトJ22の操作により、分析対象を選択または指定することができる。クライアント装置10は、受け付けたユーザ指示をサーバ30へ送信する。
After step S211, the client device 10 accepts a user instruction (S212).
Specifically, the client device 10 receives a user instruction to select or specify an analysis target from the user. In the example of FIG. 7, the user can select or specify an analysis target by operating objects J210a to J210b or object J22. The client device 10 transmits the accepted user instruction to the server 30.
ステップS212の後に、サーバ30は、分析対象の特定(S112)を実行する。
具体的には、サーバ30は、ステップS212においてクライアント装置10から送信されたユーザ指示を受信する。サーバ30は、受信したユーザ指示に基づいて分析対象を特定する。ここで、例えば分析対象をテキストで指定するユーザ指示が得られた場合に、サーバ30は当該テキストに基づくモデル入力を、自然言語モデルに与えることで、分析対象を特定してもよい。オプションとして、ユーザ指示から分析対象を特定するのに十分な情報が得られなかった場合に、サーバ30は、ステップS111~S112を再実行してもよい。
After step S212, the server 30 identifies the analysis target (S112).
Specifically, the server 30 receives the user instruction sent from the client device 10 in step S212. The server 30 identifies the analysis target based on the received user instruction. Here, for example, if a user instruction to specify the analysis target in text is obtained, the server 30 may specify the analysis target by providing model input based on the text to the natural language model. Optionally, the server 30 may re-execute steps S111-S112 if sufficient information is not obtained from the user instructions to identify the analysis target.
ステップS111の後に、サーバ30は、システム応答の生成(S113)を実行する。
具体的には、サーバ30は、分析対象に対してどのような分析がしたいか(つまり、分析の方向性)をユーザに問うシステム応答(メッセージ)を生成し、クライアント装置10へ送信する。例えば、サーバ30は、事前に定義されたメッセージテンプレートに、ステップS112において特定した分析対象に対応するテキスト(当該テキストに基づいて自然言語モデルが生成したテキストを含み得る)を挿入することで、システム応答を生成してもよい。また、システム応答には、分析対象に対して採り得る分析の方向性の候補を示す情報が含まれてもよい。分析の方向性の候補を示す情報は、当該方向性を言語化したテキスト、当該方向性の概念の理解を助ける画像(例えばグラフ)、またはそれらの組み合わせを含み得る。分析の方向性の候補は、例えば、分析対象のデータ項目の型、分析対象以外のデータ項目の型、他の要素、またはそれらの組み合わせに応じて事前に定義されていてもよい。
After step S111, the server 30 generates a system response (S113).
Specifically, the server 30 generates a system response (message) that asks the user what kind of analysis they would like to perform on the analysis target (that is, the direction of the analysis), and transmits it to the client device 10 . For example, the server 30 inserts a text (which may include a text generated by a natural language model based on the text) corresponding to the analysis target identified in step S112 into a predefined message template. May generate a response. Further, the system response may include information indicating possible directions of analysis for the analysis target. Information indicating a candidate direction of analysis may include text that verbalizes the direction, an image (eg, a graph) that helps understand the concept of the direction, or a combination thereof. Candidates for the direction of analysis may be defined in advance according to, for example, the type of data item to be analyzed, the type of data item other than the target to be analyzed, other elements, or a combination thereof.
ステップS113の後に、クライアント装置10は、画面表示(S213)を実行する。
具体的には、クライアント装置10は、ステップS113においてサーバ30から送信されたシステム応答を受信する。クライアント装置10は、受信したシステム応答に基づく画面をディスプレイ21に表示する。かかる画面の一例を図8に示す。
After step S113, the client device 10 executes screen display (S213).
Specifically, the client device 10 receives the system response sent from the server 30 in step S113. The client device 10 displays a screen based on the received system response on the display 21. An example of such a screen is shown in FIG.
図8の画面は、オブジェクトJ20~J27を含む。
図8の例では、オブジェクトJ21は、「分析対象は「売上」ですね。では、続いて、どのような分析がしたいかを選んで下さい。選択肢に該当するものがなければ、チャットに入力してください。」というシステム応答を表示する。さらに、図8の例では、オブジェクトJ21には、オブジェクトJ211a~J211bが配置される。
The screen in FIG. 8 includes objects J20 to J27.
In the example of FIG. 8, object J21 says, ``The analysis target is ``sales.'' Next, choose what kind of analysis you would like to do. If none of the options apply to you, please enter them in the chat. ” is displayed as the system response. Furthermore, in the example of FIG. 8, objects J211a to J211b are arranged in object J21.
オブジェクトJ211bは、分析の方向性の候補を選択するユーザ指示を受け付ける。図8の例では、オブジェクトJ211aは、ラジオボタンに相当するが、ドロップダウンリスト、リストボックス、またはラジオボタンなどの任意の選択系のGUI部品に代替可能である。 Object J211b accepts a user instruction to select a candidate for the direction of analysis. In the example of FIG. 8, the object J211a corresponds to a radio button, but it can be replaced with any selection-based GUI component such as a drop-down list, a list box, or a radio button.
オブジェクトJ211bは、オブジェクトJ211aの選択を確定するユーザ指示を受け付ける。オブジェクトJ211bが選択されると、クライアント装置10は、オブジェクトJ211aによって選択されている候補を特定可能な情報をサーバ30へ送信する。 Object J211b accepts a user instruction to confirm the selection of object J211a. When the object J211b is selected, the client device 10 transmits information that can identify the candidate selected by the object J211a to the server 30.
図8の例では、オブジェクトJ22を利用することで、ユーザは分析の方向性を、オブジェクトJ211aの選択によらずに、直接指定することができる。 In the example of FIG. 8, by using the object J22, the user can directly specify the direction of the analysis without depending on the selection of the object J211a.
ステップS213の後に、クライアント装置10は、ユーザ指示の受け付け(S214)を実行する。
具体的には、クライアント装置10は、ユーザから分析の方向性を選択または指定するユーザ指示を受け付ける。図8の例では、ユーザは、オブジェクトJ211a~J211bの操作、またはオブジェクトJ22の操作により、分析の方向性を選択または指定することができる。クライアント装置10は、受け付けたユーザ指示をサーバ30へ送信する。
After step S213, the client device 10 accepts a user instruction (S214).
Specifically, the client device 10 receives a user instruction for selecting or specifying the direction of analysis from the user. In the example of FIG. 8, the user can select or specify the direction of analysis by operating objects J211a to J211b or object J22. The client device 10 transmits the accepted user instruction to the server 30.
ステップS214の後に、サーバ30は、分析の目的の特定(S114)を実行する。
具体的には、サーバ30は、ステップS214においてクライアント装置10から送信されたユーザ指示を受信する。サーバ30は、受信したユーザ指示に基づいて分析の目的(つまり、分析対象と分析の方向性の組み合わせ)を特定する。すなわち、サーバ30は、分析の目的を示すテキストを得る。ここで、例えば分析の方向性をテキストで指定するユーザ指示が得られた場合に、サーバ30は当該テキスト(分析対象を示すテキストをさらに含み得る)に基づくモデル入力を、自然言語モデルに与えることで、分析の目的を特定してもよい。オプションとして、ユーザ指示から分析の目的を特定するのに十分な情報が得られなかった場合に、サーバ30は、ステップS113~S114を再実行してもよい。
After step S214, the server 30 identifies the purpose of analysis (S114).
Specifically, the server 30 receives the user instruction sent from the client device 10 in step S214. The server 30 specifies the purpose of the analysis (that is, the combination of the analysis target and the direction of the analysis) based on the received user instruction. That is, the server 30 obtains text indicating the purpose of the analysis. Here, for example, when a user instruction specifying the direction of analysis in text is obtained, the server 30 provides model input based on the text (which may further include text indicating the analysis target) to the natural language model. You may also specify the purpose of the analysis. Optionally, server 30 may re-perform steps S113-S114 if sufficient information is not obtained from the user instructions to determine the purpose of the analysis.
ステップS114の後に、サーバ30は、システム応答の生成(S115)を実行する。
具体的には、サーバ30は、ステップS114において特定(言語化)した分析の目的を含むシステム応答を生成し、クライアント装置10へ送信する。例えば、サーバ30は、事前に定義されたメッセージテンプレートに、ステップS114において特定した分析の目的に対応するテキストを挿入することで、システム応答を生成してもよい。
After step S114, the server 30 generates a system response (S115).
Specifically, the server 30 generates a system response that includes the purpose of the analysis specified (verbalized) in step S114, and transmits it to the client device 10. For example, the server 30 may generate the system response by inserting text corresponding to the purpose of the analysis identified in step S114 into a predefined message template.
ステップS115の後に、クライアント装置10は、画面表示(S215)を実行する。
具体的には、クライアント装置10は、ステップS115においてサーバ30から送信されたシステム応答を受信する。クライアント装置10は、受信したシステム応答に基づく画面をディスプレイ21に表示する。かかる画面の一例を図9に示す。
After step S115, the client device 10 executes screen display (S215).
Specifically, the client device 10 receives the system response sent from the server 30 in step S115. The client device 10 displays a screen based on the received system response on the display 21. An example of such a screen is shown in FIG.
図9の画面は、オブジェクトJ20~J27を含む。
図9の例では、オブジェクトJ21には、オブジェクトJ212が配置される。
The screen in FIG. 9 includes objects J20 to J27.
In the example of FIG. 9, object J212 is placed in object J21.
オブジェクトJ212は、ステップS114において特定した分析の目的をユーザに伝えるシステム応答を表示する。以後、かかる分析の目的は、必要に応じて、オブジェクトJ25を介して、オブジェクトJ23に展開表示可能となる。 Object J212 displays a system response that informs the user of the purpose of the analysis identified in step S114. Thereafter, the purpose of this analysis can be expanded and displayed on the object J23 via the object J25, if necessary.
(3-2)分析処理
本実施形態の分析処理について説明する。図10は、本実施形態の分析処理のフローチャートである。図11は、本実施形態の分析処理において表示される画面例を示す図である。図12は、本実施形態の分析処理において表示される画面例を示す図である。
(3-2) Analysis Processing The analysis processing of this embodiment will be explained. FIG. 10 is a flowchart of the analysis process of this embodiment. FIG. 11 is a diagram showing an example of a screen displayed in the analysis process of this embodiment. FIG. 12 is a diagram showing an example of a screen displayed in the analysis process of this embodiment.
図10に示すように、サーバ30は、適した分析手法の予測(S121)を実行する。
具体的には、サーバ30は、チャット上でのユーザ入力およびシステム応答に基づいて、ステップS110において特定した分析の目的に対して、適した分析手法を予測する。
As shown in FIG. 10, the server 30 executes prediction using a suitable analysis method (S121).
Specifically, the server 30 predicts an analysis method suitable for the analysis purpose specified in step S110, based on the user input on the chat and the system response.
一例として、サーバ30は、自然言語モデルに対し、ユーザ入力により得られた情報に基づくモデル入力を与え、分析の目的に適した分析手法を推論させてもよい。分析手法は、例えば、分析対象に関する回帰(将来予測を含み得る)、分類、クラスタリング、次元削減(例えば主成分分析)、またはそれらの組み合わせであってよい。また、分析手法の特定は、説明変数として用いるデータ項目の特定を含み得る。 As an example, the server 30 may provide model input based on information obtained through user input to the natural language model, and cause the natural language model to infer an analysis method suitable for the purpose of the analysis. The analysis technique may be, for example, regression (which may include future prediction), classification, clustering, dimensionality reduction (eg, principal component analysis), or a combination thereof on the object of analysis. Further, specifying the analysis method may include specifying data items to be used as explanatory variables.
別の例として、分析の目的に適した分析手法を特定し、当該分析手法から利用可能な手法を絞り込んでもよい。分析の目的に適した分析手法は、例えば事前に定義されてもよい。また、各分析手法が利用可能であるか否かは、ステップS100において取得したデータセットに含まれるデータ項目の名称もしくは型、当該データセットに含まれるデータサンプルの数、などに基づいて判定されてよい。 As another example, an analysis method suitable for the purpose of analysis may be specified, and usable methods may be narrowed down from the analysis method. An analysis technique suitable for the purpose of analysis may be defined in advance, for example. Furthermore, whether or not each analysis method is usable is determined based on the name or type of data item included in the dataset acquired in step S100, the number of data samples included in the dataset, etc. good.
適した分析手法の予測(S121)のオプションとして、分析の目的に適した分析手法を予測するための判断材料が不足する場合に、サーバ30は、ユーザに質問する、または所定のアクションを促すためのシステム応答を生成し、チャットに出力してもよい。一例として、サーバ30は、分析に関連する追加のデータセットの有無を質問したり、追加のデータセットの提供を促したりするためのシステム応答を生成してもよい。 As an option for predicting a suitable analysis method (S121), when there is insufficient judgment material for predicting an analysis method suitable for the purpose of analysis, the server 30 may ask the user a question or prompt a predetermined action. may generate a system response and output it to the chat. As an example, server 30 may generate a system response to inquire about the availability of additional data sets relevant to the analysis, or to prompt the provision of additional data sets.
ステップS121の後に、サーバ30は、システム応答の生成(S122)を実行する。
具体的には、サーバ30は、ステップS121において予測した分析手法の採否を問うシステム応答(メッセージ)を生成する。一例として、かかるシステム応答は、複数の分析手法のいずれを選択(複数選択可としてもよい)するかをユーザに問うてもよいし、各分析手法を採用するか否かをユーザに問うてもよい。例えば、サーバ30は、事前に定義されたメッセージテンプレートに、ステップS121において予測した分析手法に対応するテキストを挿入することで、システム応答を生成してもよい。また、システム応答には、採り得る分析手法の候補を示す情報として、当該手法を言語化したテキスト、当該手法の概念の理解を助ける画像(例えばグラフ)、またはそれらの組み合わせが含まれてもよい。
After step S121, the server 30 generates a system response (S122).
Specifically, the server 30 generates a system response (message) asking whether to adopt the analysis method predicted in step S121. As an example, such a system response may ask the user which of multiple analysis methods to select (multiple selections may be possible), or may ask the user whether to adopt each analysis method. good. For example, the server 30 may generate the system response by inserting text corresponding to the analysis method predicted in step S121 into a predefined message template. In addition, the system response may include, as information indicating possible analysis method candidates, text that verbalizes the method, images (e.g., graphs) that help understand the concept of the method, or a combination thereof. .
ステップS122の後に、クライアント装置10は、画面表示(S221)を実行する。
具体的には、クライアント装置10は、ステップS122においてサーバ30から送信されたシステム応答を受信する。クライアント装置10は、受信したシステム応答に基づく画面をディスプレイ21に表示する。
After step S122, the client device 10 executes screen display (S221).
Specifically, the client device 10 receives the system response sent from the server 30 in step S122. The client device 10 displays a screen based on the received system response on the display 21.
ステップS221の後に、クライアント装置10は、ユーザ指示の受け付け(S222)を実行する。
具体的には、クライアント装置10は、ユーザから分析手法を選択または指定するユーザ指示を受け付ける。クライアント装置10は、受け付けたユーザ指示をサーバ30へ送信する。
After step S221, the client device 10 accepts a user instruction (S222).
Specifically, the client device 10 receives a user instruction for selecting or specifying an analysis method from the user. The client device 10 transmits the accepted user instruction to the server 30.
ステップS222の後に、サーバ30は、分析手法の決定(S123)を実行する。
具体的には、サーバ30は、ステップS222においてクライアント装置10から送信されたユーザ指示を受信する。サーバ30は、受信したユーザ指示に基づいて分析手法を決定する。ここで、例えば分析手法をテキストで指定するユーザ指示が得られた場合に、サーバ30は当該テキスト(分析対象、分析の方向性、またはそれらの組み合わせを示すテキストをさらに含み得る)に基づくモデル入力を、自然言語モデルに与えることで、分析手法を決定してもよい。オプションとして、ユーザ指示から分析手法を決定するのに十分な情報が得られなかった場合に、サーバ30は、ステップS121~S123を再実行してもよい。
After step S222, the server 30 determines an analysis method (S123).
Specifically, the server 30 receives the user instruction sent from the client device 10 in step S222. The server 30 determines an analysis method based on the received user instruction. Here, for example, when a user instruction specifying an analysis method in text is obtained, the server 30 inputs a model based on the text (which may further include text indicating the analysis target, the direction of analysis, or a combination thereof). The analysis method may be determined by giving the following to the natural language model. Optionally, the server 30 may re-execute steps S121-S123 if sufficient information is not obtained from the user instructions to determine an analysis technique.
ステップS123の後に、サーバ30は、データセットの検査(S124)を実行する。
具体的には、サーバ30は、ステップS100において、または他のタイミングで、ユーザから提供されたデータセットを所定のアルゴリズムにより検査する。アルゴリズムは、ステップS123によって決定された分析手法に応じて異なるように定められてもよい。データセットの検査は、例えば、以下の少なくとも1つを含むことができる。
・データの不備(例えば、欠損値、外れ値、バリエーションが適切でない、粒度が合わない、またはそれらの組み合わせ)の検出
・所定の前処理の適用条件を満たすか否かの判定
After step S123, the server 30 executes a dataset check (S124).
Specifically, the server 30 examines the data set provided by the user using a predetermined algorithm in step S100 or at other timings. The algorithm may be determined differently depending on the analysis method determined in step S123. Inspection of the data set can include, for example, at least one of the following:
・Detection of data deficiencies (e.g., missing values, outliers, inappropriate variations, mismatched granularity, or combinations thereof) ・Determination of whether pre-processing conditions are met
ステップS125の後に、サーバ30は、システム応答の生成(S125)を実行する。
具体的には、サーバ30は、ステップS124における検査の結果に基づくシステム応答を生成する。システム応答は、例えば以下の少なくとも1つを含むことができる。
・ステップS124における検査によって発見された、データセットの不備の是正(一例として、欠損値または外れ値を含むサンプルの除去)を促すシステム応答
・所定の前処理の実施を提案するシステム応答(ステップS124において所定の前処理の適用条件を満たすと判定された場合)
・ステップS124における検査によって発見された、データセットの不備を補う別のデータセットを外部ソースから探索し、当該外部ソースから発見されたデータセットの利用を提案するシステム応答
After step S125, the server 30 generates a system response (S125).
Specifically, the server 30 generates a system response based on the result of the test in step S124. The system response can include, for example, at least one of the following:
- A system response that prompts correction of deficiencies in the data set (for example, removal of samples containing missing values or outliers) discovered by the inspection in step S124 - A system response that suggests implementation of a predetermined preprocessing (step S124) (If it is determined that the application conditions for pre-processing are met)
- A system response that searches for another dataset from an external source to compensate for the deficiencies in the dataset discovered by the inspection in step S124, and proposes the use of the dataset discovered from the external source.
所定の前処理は、例えば、以下の少なくとも1つを含むことができる。
・名寄せ
・欠損値の除外
・特徴量エンジニアリング(例えば、変数の変換、似ている(相関の高い)変数の除外)
ここで、サーバ30は、変数の型、変数間の関係性の仮説などについての推論結果を自然言語モデルから取得し、当該推論結果に基づいて前処理(特に、特徴量エンジニアリング)を行ってもよい。
The predetermined pretreatment can include, for example, at least one of the following.
・Name identification・Exclusion of missing values・Feature engineering (e.g., variable conversion, exclusion of similar (highly correlated) variables)
Here, the server 30 obtains inference results regarding the types of variables, hypotheses of relationships between variables, etc. from the natural language model, and performs preprocessing (especially feature engineering) based on the inference results. good.
ステップS125の後に、クライアント装置10は、画面表示(S223)を実行する。
具体的には、クライアント装置10は、ステップS125においてサーバ30から送信されたシステム応答を受信する。クライアント装置10は、受信したシステム応答に基づく画面をディスプレイ21に表示する。
After step S125, the client device 10 executes screen display (S223).
Specifically, the client device 10 receives the system response sent from the server 30 in step S125. The client device 10 displays a screen based on the received system response on the display 21.
ステップS223の後に、クライアント装置10は、ユーザ指示の受け付け(S224)を実行する。
具体的には、クライアント装置10は、ステップS223において表示した画面に対するユーザからの応答に相当するユーザ指示を受け付ける。クライアント装置10は、受け付けたユーザ指示をサーバ30へ送信する。
After step S223, the client device 10 accepts a user instruction (S224).
Specifically, the client device 10 receives a user instruction corresponding to a response from the user to the screen displayed in step S223. The client device 10 transmits the accepted user instruction to the server 30.
一例として、クライアント装置10は、以下の少なくとも1つのユーザ指示を受け付けることができる。
・システム応答により指摘された不備を是正する(例えば、データセットを編集する)ユーザ指示
・システム応答により指摘された不備を是正したデータセットを提供(アップロード)するユーザ指示
・システム応答により提案された前処理の実施または不実施を要求するユーザ指示
As an example, the client device 10 can accept at least one of the following user instructions.
・User instructions to correct the deficiencies pointed out by the system response (for example, edit the dataset) ・User instructions to provide (upload) a dataset with the deficiencies pointed out by the system response corrected ・User instructions to correct the deficiencies pointed out by the system response ・User instructions to correct the deficiencies pointed out by the system response User instructions to perform or not perform pre-processing
ステップS224の後に、サーバ30は、対象データセットの取得(S126)を実行する。
具体的には、サーバ30は、ステップS224においてクライアント装置10から送信されたユーザ指示を受信する。サーバ30は、受信したユーザ指示に応じて、分析に実際に用いるデータセット(以下、「対象データセット」という)を取得する。
After step S224, the server 30 acquires the target data set (S126).
Specifically, the server 30 receives the user instruction sent from the client device 10 in step S224. The server 30 acquires a data set actually used for analysis (hereinafter referred to as "target data set") in response to the received user instruction.
対象データセットの取得(S126)の第1例として、システム応答により指摘された不備を是正するユーザ指示が得られた場合に、サーバ30は、ステップS124において検査されたデータセットを当該ユーザ指示に従って編集することで対象データセットを取得する。 As a first example of acquiring the target data set (S126), when a user instruction to correct the deficiencies pointed out by the system response is obtained, the server 30 acquires the dataset inspected in step S124 according to the user instruction. Obtain the target dataset by editing.
対象データセットの取得(S126)の第2例として、システム応答により指摘された不備を是正したデータセットを提供するユーザ指示が得られた場合に、サーバ30は、ユーザ指示によって提供されたデータセットを対象データセットとして取得する。或いは、サーバ30は、ユーザ指示によって提供されたデータセットに対して、データセットの検査(S124)を再実行してもよい。 As a second example of acquiring the target data set (S126), when a user instruction to provide a data set with the deficiencies pointed out by the system response corrected is obtained, the server 30 acquires the data set provided by the user instruction. Obtain as the target dataset. Alternatively, the server 30 may re-execute the data set inspection (S124) on the data set provided by the user's instruction.
対象データセットの取得(S126)の第3例として、システム応答により提案された前処理の実施を要求するユーザ指示が得られた場合に、サーバ30は、ステップS124において検査されたデータセットに対して当該前処理を行うことで対象データセットを取得する。 As a third example of obtaining the target data set (S126), when a user instruction requesting implementation of the preprocessing proposed by the system response is obtained, the server 30 performs a process on the data set inspected in step S124. The target data set is obtained by performing the preprocessing.
対象データセットの取得(S126)の第4例として、システム応答により提案された前処理の不実施を要求するユーザ指示が得られた場合に、サーバ30は、ステップS124において検査されたデータセットをそのまま対象データセットとして取得する。 As a fourth example of acquiring the target dataset (S126), when a user instruction requesting non-implementation of the proposed preprocessing is obtained from the system response, the server 30 acquires the dataset inspected in step S124. Obtain it as is as a target dataset.
なお、ステップS124における検査によって、データセットに不備が発見されず、かつ当該データセットがいずれの前処理の適用条件も満たさないと判定された場合に、ステップS125~S126は省略可能である。すなわち、サーバ30は、ステップS124において検査されたデータセットがそのまま対象データセットとして取得し得る。 Note that if the inspection in step S124 determines that no defects are found in the data set and that the data set does not satisfy any preprocessing application conditions, steps S125 to S126 can be omitted. That is, the server 30 can acquire the data set inspected in step S124 as it is as the target data set.
ステップS126の後に、サーバ30は、分析(S127)を実行する。
具体的には、サーバ30は、ステップS126において取得した対象データセットに対して、ステップS123において決定した分析手法による分析を行う。
After step S126, the server 30 performs analysis (S127).
Specifically, the server 30 analyzes the target data set acquired in step S126 using the analysis method determined in step S123.
また、サーバ30は、分析の結果を図示するグラフを生成してもよい。一例として、サーバ30は、自然言語モデルによって生成したコマンドを、データ分析ツールに与えることで、グラフを取得してもよい。分析の目的および分析手法に応じて、グラフの種別(例えば、折れ線グラフ、棒グラフ、散布図、円グラフ、バブルチャート、レーダーチャート、積み上げグラフ、箱ひげ図、など)が決定され得る。サーバ30は、分析の目的および分析手法に応じて、グラフにおいて重要な箇所を判定してもよい。 The server 30 may also generate a graph illustrating the results of the analysis. As an example, the server 30 may obtain a graph by providing commands generated by a natural language model to a data analysis tool. The type of graph (for example, line graph, bar graph, scatter diagram, pie graph, bubble chart, radar chart, stacked graph, box plot, etc.) may be determined depending on the purpose of the analysis and the analysis method. The server 30 may determine important locations in the graph depending on the purpose of the analysis and the analysis method.
さらに、サーバ30は、分析の結果から得られる示唆を表すテキストを生成してもよい。一例として、サーバ30は、分析の結果に基づくモデル入力を、自然言語モデルに与えることで、示唆を取得してもよい。示唆は、例えば以下の情報の少なくとも1つを含むことができる。
・目的変数、説明変数、またはそれらの組み合わせ(つまり、分析の目的に応じて選定された変数)を解説する情報(例えば、分布の広がりや代表値などの変数を要約した情報)
・目的変数と説明変数との関係(つまり、分析の結果)を解説する情報
・異なる説明変数の間の関係を解説する情報
・分析の結果の統計学的な扱いを解説する情報(例えば、分析の結果が統計学的に有意でない場合に、本分析の結果が偶然の可能性がある旨のメッセージ、または分析の結果が統計学的に有意である場合に、本分析の結果が偶然の可能性が低い(つまり、一定の信頼性がある)旨のメッセージ)
・統計学的に重要な説明変数(例えば、有意水準が最も低い説明変数、または有意な説明変数のうち相関係数の絶対値が最も大きい説明変数)を解説する情報(例えば、当該説明変数と目的変数との相関係数の値)
・外れ値を解説する情報(例えば、外れ値がどこに発生しているか、どの程度の値か、など)
・グラフにおいて重要な箇所を解説する情報
・他の分析手法による分析の実施を推奨する情報
Furthermore, the server 30 may generate text representing suggestions obtained from the results of the analysis. As an example, the server 30 may obtain suggestions by providing model input based on the results of the analysis to the natural language model. The suggestion can include, for example, at least one of the following information:
- Information that explains the objective variable, explanatory variable, or a combination thereof (that is, variables selected according to the purpose of the analysis) (for example, information summarizing variables such as distribution spread and representative value)
・Information that explains the relationship between the objective variable and explanatory variables (i.e., the results of the analysis) ・Information that explains the relationship between different explanatory variables ・Information that explains the statistical treatment of the results of the analysis (e.g., If the result of this analysis is not statistically significant, a message that the result of this analysis may be due to chance, or if the result of this analysis is statistically significant, a message that the result of this analysis may be due to chance. message that the reliability is low (that is, there is a certain level of reliability)
- Information that explains a statistically important explanatory variable (e.g., the explanatory variable with the lowest significance level, or the explanatory variable with the largest absolute value of the correlation coefficient among the significant explanatory variables) (e.g., the explanatory variable with the highest correlation coefficient) (correlation coefficient value with objective variable)
・Information explaining the outlier (e.g., where the outlier occurs, what value it is, etc.)
・Information that explains important points in the graph ・Information that recommends analysis using other analysis methods
示唆によって扱われるトピックは、分析の目的に応じて絞り込まれてよい。具体的には、サーバ
30は、示唆によって扱われ得るトピックを、自然言語モデルを用いてスコアリングし、スコアが基準を満たすトピックについてのみ示唆を生成してもよい。
The topics covered by the suggestions may be narrowed down depending on the purpose of the analysis. Specifically, the server 30 may score topics that can be addressed by suggestions using a natural language model, and generate suggestions only for topics whose scores meet the criteria.
なお、示唆は、例えば予め用意されたテンプレートに、分析の結果(数値)を挿入することで生成されてよい。テンプレートは、統計学的な専門用語またはデータ分析の専門用語を用いることなく分析の結果を記述する文章であることが好ましい。これにより、ユーザの理解を助け、示唆を具体的なビジネスアクションに落とし込めるよう支援することができる。 Note that the suggestion may be generated, for example, by inserting the analysis results (numeric values) into a template prepared in advance. Preferably, the template is a text that describes the results of the analysis without using statistical or data analysis terminology. This helps users understand and translate suggestions into concrete business actions.
ステップS127の後に、サーバ30は、システム応答の生成(S128)を実行する。
具体的には、サーバ30は、ステップS127において生成した分析の結果に基づくシステム応答を生成する。システム応答は、例えば、グラフ、グラフにおいて重要と判定された箇所、示唆、またはそれらの組み合わせを含むことができる。
After step S127, the server 30 generates a system response (S128).
Specifically, the server 30 generates a system response based on the result of the analysis generated in step S127. The system response can include, for example, a graph, a portion of the graph determined to be important, a suggestion, or a combination thereof.
ステップS125の後に、クライアント装置10は、画面表示(S225)を実行する。
具体的には、クライアント装置10は、ステップS127においてサーバ30から送信されたシステム応答を受信する。クライアント装置10は、受信したシステム応答に基づく画面をディスプレイ21に表示する。かかる画面の一例を図11および図12に示す。
After step S125, the client device 10 executes screen display (S225).
Specifically, the client device 10 receives the system response sent from the server 30 in step S127. The client device 10 displays a screen based on the received system response on the display 21. An example of such a screen is shown in FIGS. 11 and 12.
図11の画面は、オブジェクトJ20~J27を含む。
図11の例では、オブジェクトJ20はチャットの進行状態が「分析」であることを示す。
The screen in FIG. 11 includes objects J20 to J27.
In the example of FIG. 11, object J20 indicates that the progress state of the chat is "analysis."
図11の例では、オブジェクトJ21には、オブジェクトJ213a,J213a1,J213bが配置される。 In the example of FIG. 11, objects J213a, J213a1, and J213b are arranged in object J21.
オブジェクトJ213aは、目的変数である「販売数」と説明変数である「日付」との関係を示す折れ線グラフを表示する。
オブジェクトJ213a1は、オブジェクトJ213aに示されるグラフにおける重要な箇所として、外れ値を示す情報を表示する。
Object J213a displays a line graph showing the relationship between the objective variable "number of sales" and the explanatory variable "date".
The object J213a1 displays information indicating outliers as important points in the graph shown in the object J213a.
オブジェクトJ213bは、示唆を表示する。具体的には、オブジェクトJ213bは、「販売数は概ね約100~400個/日で推移しています。年末年始およびGWには外れ値的に販売数が約600個/日まで高まっています。」として、目的変数の要約に関する情報と、外れ値を解説する情報とを含む。 Object J213b displays suggestions. Specifically, Object J213b says, ``The number of sales generally fluctuates at about 100 to 400 pieces/day.The number of sales increases to about 600 pieces/day as an outlier during the year-end and New Year holidays and Golden Week. '' includes information regarding a summary of the objective variable and information explaining outliers.
図12の例では、オブジェクトJ21には、オブジェクトJ214a,J214a1,J214bが配置される。 In the example of FIG. 12, objects J214a, J214a1, and J214b are arranged in object J21.
オブジェクトJ214aは、目的変数である「販売数」と説明変数である「近隣イベント」との関係を示す箱ひげ図を表示する。 Object J214a displays a boxplot showing the relationship between the objective variable "number of sales" and the explanatory variable "neighborhood event".
オブジェクトJ214a1は、オブジェクトJ214aに示されるグラフにおける重要な箇所として、ベースライン(図12の例では、近隣イベント「なし」の販売数の中央値)に対する注目する値(近隣イベント「全国」の販売数の中央値)の差を示す情報を表示する。 Object J214a1 is an important point in the graph shown in object J214a, which shows the value of interest (the number of sales for nearby events "Nationwide") with respect to the baseline (in the example of FIG. Display information showing the difference between the median values of
オブジェクトJ214bは、示唆を表示する。具体的には、オブジェクトJ214bは、「近隣イベント「全国」がある場合、近隣イベント「なし」の場合と比較して、販売数が大きくなる傾向にある。中央値で比較した時、販売数の増加は30個/日」として、目的変数と説明変数との関係を解説する情報を含む。 Object J214b displays suggestions. Specifically, the object J214b tends to have a larger number of sales when there is a nearby event "Nationwide" compared to when there is no nearby event. It includes information that explains the relationship between the objective variable and explanatory variables, such as ``when compared with the median value, the increase in sales is 30 units/day.''
なお、サーバ30は、分析(S127)を、複数のフェーズ(例えば、集計、簡易分析、および機械学習など)に亘って段階的に行ってもよい。つまり、クライアント装置10は、ステップS225の後に、分析の結果に対するユーザ指示を受け付け、サーバ30は、さらなる分析(S127)を行い、システム応答の生成(S128)および画面表示(S225)がなされてもよい。この場合に、サーバ30は、グラフおよび示唆の少なくとも一方を、フェーズの遷移に応じて変更し得る。 Note that the server 30 may perform the analysis (S127) in stages over multiple phases (for example, aggregation, simple analysis, machine learning, etc.). That is, after step S225, the client device 10 accepts a user instruction regarding the analysis result, and the server 30 performs further analysis (S127), generates a system response (S128), and displays the screen (S225). good. In this case, the server 30 may change at least one of the graph and the suggestion according to the phase transition.
(4)小括
以上説明したように、本実施形態のサーバ30は、ユーザとの間で行われるデータ分析に関するチャットの進行状態を管理し、チャットの進行を通じてユーザの分析の目的を特定する。サーバ30は、分析の目的に従って、対象データセットを分析し、対象データセットの分析の結果を出力する。これにより、ユーザは、チャット上で与えられた質問に回答したり、チャット上で要求されたアクションを行ったりするだけで、当該ユーザが必要とする分析の結果を得ることができる。故に、従来のBIツールに多く見られたCUI(Character User Interface)またはGUI(Graphical User Interface)に抵抗があるユーザであっても、技術的・心理的ハードルを感じることなく、関心のある切り口での分析を自由に試すことができる。
(4) Summary As explained above, the server 30 of this embodiment manages the progress of chat regarding data analysis performed with the user, and identifies the purpose of the user's analysis through the progress of the chat. The server 30 analyzes the target data set according to the purpose of the analysis, and outputs the results of the analysis of the target data set. Thereby, the user can obtain the analysis results that the user needs simply by answering questions given on the chat or taking actions requested on the chat. Therefore, even users who are reluctant to use CUI (Character User Interface) or GUI (Graphical User Interface), which are often found in conventional BI tools, can use the approach they are interested in without experiencing any technical or psychological hurdles. You can freely try out the analysis.
チャットの進行状態は、所定の複数のフェーズを用いて定義されてよい。サーバ30は、複数のフェーズのそれぞれにおいて、ユーザからの入力によらずに、所定の情報を提供し、またはユーザに所定のアクションを促すための応答をチャットに出力してもよい。これにより、ユーザは、チャットを開始する前に、どのような目的で分析を行うべきか、どのような分析手法を選ぶべきか、またはどのようなデータセットを用意するべきか、などの解を事前に用意しておかなくても、チャットを通じてこれらの要素が定まり、必要な分析を行うことができる。 The progress state of a chat may be defined using a plurality of predetermined phases. In each of the plurality of phases, the server 30 may provide predetermined information or output a response to the chat to prompt the user to take a predetermined action, without relying on input from the user. This allows users to find out before starting a chat, such as what the purpose of the analysis should be, what kind of analysis method to choose, or what kind of data set to prepare. These elements can be determined through chat and the necessary analysis can be performed without having to prepare them in advance.
サーバ30は、チャット上でのユーザ入力およびシステム応答に基づいて、分析の目的に適した分析手法を予測し、予測された分析の目的に適した分析手法の情報を出力してもよい。これにより、ユーザは、分析の目的を分析設計に落とし込むスキルが十分でなくとも、意図した目的に沿った分析を行い、必要とする結果を得ることができる。 The server 30 may predict an analysis method suitable for the purpose of the analysis based on the user input on the chat and the system response, and output information on the predicted analysis method suitable for the purpose of the analysis. As a result, even if the user does not have sufficient skill to incorporate the purpose of analysis into analysis design, the user can perform analysis in accordance with the intended purpose and obtain the desired results.
サーバ30は、分析の目的に適した分析手法を予測するための判断材料が不足する場合に、ユーザに質問する、または所定のアクションを促すためのシステム応答をチャットに出力してもよい。これにより、ユーザが必要とする分析手法を適切に予測することができる。 When the server 30 lacks judgment materials for predicting an analysis method suitable for the purpose of analysis, the server 30 may output a system response to the chat to ask the user a question or prompt a predetermined action. Thereby, it is possible to appropriately predict the analysis method required by the user.
サーバ30は、ユーザによって提供されたデータセットである第1データセットを取得し、分析の目的に基づいて、第1データセットの不備を検出し、検出の結果に応じて、ユーザに第1データセットの不備の是正を促す応答をチャットに出力してもよい。これにより、ユーザによって提供されたデータセットに不備があったり、適切なデータセットが提供されていなかったりして、そのままでは精度の高い分析が得られない場合に、当該不備を是正し、より高精度な分析を行うことができる。 The server 30 acquires the first data set that is the data set provided by the user, detects deficiencies in the first data set based on the purpose of analysis, and provides the user with the first data according to the detection result. A response that prompts correction of deficiencies in the set may be output to the chat. As a result, if the data set provided by the user has a flaw or an appropriate data set is not provided, and highly accurate analysis cannot be obtained as is, the flaw can be corrected and the data set can be improved. Accurate analysis can be performed.
サーバ30は、ユーザによって提供されたデータセットである第1データセットを取得し、第1データセットが予め定められた条件に合致する場合に、当該条件に対応する前処理の実施を提案する応答をチャットに出力してもよい。これにより、ユーザは、データクレンジングなどの前処理に関する知識が十分でなくとも、必要な前処理を選択することができる。換言すれば、前処理の工数を削減できる。 The server 30 obtains a first data set that is a data set provided by the user, and when the first data set matches a predetermined condition, a response that proposes implementation of preprocessing corresponding to the condition is sent. may be output to chat. This allows the user to select necessary preprocessing even if the user does not have sufficient knowledge regarding preprocessing such as data cleansing. In other words, the number of steps for preprocessing can be reduced.
サーバ30は、チャットを表示する領域と、対象データセットの分析の結果を表示する領域とを一画面で、または切替可能に表示するための情報を出力してもよい。これにより、ユーザは、分析の結果と、チャットとを同時に、または交互に参照し、システムに対する次の指示を検討したり、分析の結果に対する理解を深めたりすることができる。 The server 30 may output information for displaying an area where the chat is displayed and an area where the analysis results of the target data set are displayed on one screen or in a switchable manner. This allows the user to refer to the analysis results and the chat simultaneously or alternately, to consider the next instruction to the system, and to deepen their understanding of the analysis results.
対象データセットの分析の結果は、当該対象データセットの分析の結果を図示するグラフと、当該対象データセットの分析の結果に基づく示唆を表すテキストとを含んでもよい。これにより、ユーザは、コマンド操作等を行うことなくグラフを確認するとともに、統計学的知識が十分でなくとも分析の結果の要点を理解することができる。つまり、ユーザが分析の結果を主観的に解釈し、客観的に正しいと示せないことを真実であるかのように捉えたり、客観的に正しいと示せることを見落としたりする事態を防止できる。 The results of the analysis of the target dataset may include a graph illustrating the results of the analysis of the target dataset and text representing suggestions based on the results of the analysis of the target dataset. This allows the user to check the graph without performing any command operations, and to understand the gist of the analysis results even if the user does not have sufficient statistical knowledge. In other words, it is possible to prevent the user from subjectively interpreting the results of the analysis, interpreting as if something that cannot be shown to be objectively correct is true, or overlooking something that can be shown to be objectively correct.
示唆は、分析の目的に応じて選定された変数の解説、または2以上の変数間の関係の解説を示してもよい。これにより、ユーザは、分析の対象となった変数(データ項目)についての理解を深めることができる。 The suggestion may indicate an explanation of variables selected according to the purpose of the analysis, or an explanation of a relationship between two or more variables. This allows the user to deepen their understanding of the variables (data items) that are the targets of analysis.
サーバ30は、グラフの種別を、分析の目的と、分析に用いられた分析手法とに応じて決定してもよい。これにより、ユーザがコマンド操作等を行わずとも、分析の結果の確認に適した種別のグラフを確認することができる。 The server 30 may determine the type of graph depending on the purpose of the analysis and the analysis method used for the analysis. Thereby, the user can check a graph of a type suitable for checking the analysis results without performing any command operations or the like.
サーバ30は、グラフにおいて重要な箇所を分析の目的と、分析に用いられた分析手法とに応じて判定し、グラフおいて重要と判定された箇所を示す情報を出力してもよい。これにより、ユーザは、グラフを適切に解釈するための背景知識が十分でなくとも、当該グラフの要点を理解することができる。 The server 30 may determine important locations in the graph according to the purpose of analysis and the analysis method used in the analysis, and may output information indicating the locations determined to be important in the graph. This allows the user to understand the gist of the graph even if the user does not have sufficient background knowledge to properly interpret the graph.
対象データセットの分析は、複数のフェーズに亘って段階的に行われてもよい。サーバ30は、グラフおよび示唆の少なくとも一方を、フェーズの遷移に応じて変更してもよい。これにより、複雑な分析であっても、段階的に結果が提示されるので、ユーザは、分析の結果を適切に解釈するための背景知識が十分でなくとも、順を追って分析の結果の要点を理解することができる。 Analysis of the target data set may be performed in stages over multiple phases. The server 30 may change at least one of the graph and the suggestion according to the transition of the phases. This provides step-by-step results, even for complex analyses, so users can step-by-step through the key points of an analysis, even if they do not have sufficient background knowledge to properly interpret the results. be able to understand.
(5)その他の変形例
記憶装置11は、ネットワークNWを介して、クライアント装置10と接続されてもよい。ディスプレイ21は、クライアント装置10と一体化されてもよい。記憶装置31は、ネットワークNWを介して、サーバ30と接続されてもよい。
(5) Other Modifications The storage device 11 may be connected to the client device 10 via the network NW. Display 21 may be integrated with client device 10 . The storage device 31 may be connected to the server 30 via the network NW.
上記の情報処理の各ステップは、クライアント装置10及びサーバ30の何れでも実行可能である。例えば、いずれかの装置によって行われるとして説明された処理が別の装置によって行われたり、複数の装置のやり取りによって行われるとして説明された処理が単一の装置によって行われたりしてもよい。 Each step of the above information processing can be executed by either the client device 10 or the server 30. For example, processing described as being performed by one device may be performed by another device, or processing described as being performed by interaction of multiple devices may be performed by a single device.
上記説明では、各処理において各ステップを特定の順序で実行する例を示したが、各ステップの実行順序は、依存関係がない限りは説明した例に制限されない。例えば、上記説明では、データセットの取得後に分析の目的を設定する例を示した。しかしながら、両者は逆の順序で行われてもよいし、並列的に行われてもよい。 In the above description, an example was shown in which each step is executed in a specific order in each process, but the execution order of each step is not limited to the example described as long as there is no dependency relationship. For example, in the above explanation, an example was shown in which the purpose of analysis is set after acquiring the data set. However, both may be performed in the reverse order or in parallel.
以上、本発明の実施形態について詳細に説明したが、本発明の範囲は上記の実施形態に限定されない。また、上記の実施形態は、本発明の主旨を逸脱しない範囲において、種々の改良や変更が可能である。また、上記の実施形態及び変形例は、組合せ可能である。 Although the embodiments of the present invention have been described in detail above, the scope of the present invention is not limited to the above embodiments. Moreover, various improvements and changes can be made to the embodiments described above without departing from the spirit of the present invention. Furthermore, the above embodiments and modifications can be combined.
1 :情報処理システム
10 :クライアント装置
11 :記憶装置
12 :プロセッサ
13 :入出力インタフェース
14 :通信インタフェース
21 :ディスプレイ
30 :サーバ
31 :記憶装置
32 :プロセッサ
33 :入出力インタフェース
34 :通信インタフェース
1 : Information processing system 10 : Client device 11 : Storage device 12 : Processor 13 : Input/output interface 14 : Communication interface 21 : Display 30 : Server 31 : Storage device 32 : Processor 33 : Input/output interface 34 : Communication interface
Claims (15)
ユーザとの間で行われるデータ分析に関するチャットの進行状態を管理する手段、
前記チャットの進行を通じて前記ユーザの分析の目的を特定する手段、
前記分析の目的に従って、対象データセットを分析する手段、
前記対象データセットの分析の結果を出力する手段、
として機能させ、
前記分析の目的を特定する手段は、
分析対象を前記ユーザに問う第1システム応答を出力し、当該第1システム応答に対する前記ユーザの回答に基づいて前記分析対象を特定する手段と、
前記分析対象に対して採り得る分析の方向性の候補を示す情報を含み、かつ前記分析の方向性を前記ユーザに問う第2システム応答を出力し、前記分析対象と、当該第2システム応答に対する前記ユーザの回答とに基づいて前記分析の目的を特定する手段と、
特定した前記分析の目的を含む第3システム応答を出力する手段と
を備える、
プログラム。 computer,
A means for managing the progress of a chat regarding data analysis conducted with a user;
means for identifying the purpose of analysis of the user through the progress of the chat;
means for analyzing the target data set according to the purpose of said analysis;
means for outputting the results of the analysis of the target data set;
function as
The means for specifying the purpose of said analysis includes:
means for outputting a first system response that asks the user about an analysis target, and identifying the analysis target based on the user's answer to the first system response;
outputting a second system response that includes information indicating possible directions of analysis for the analysis target and asking the user about the direction of the analysis; means for identifying the purpose of the analysis based on the user's answer;
means for outputting a third system response including the identified purpose of the analysis;
Equipped with
program.
前記コンピュータを、前記複数のフェーズのそれぞれにおいて、前記ユーザからの入力によらずに、所定の情報を提供し、または前記ユーザに所定のアクションを促すための応答を前記チャットに出力する手段、として機能させる、
請求項1に記載のプログラム。 The progress state of the chat is defined using a plurality of predetermined phases,
The computer is used as a means for providing predetermined information or outputting a response to the chat to prompt the user to take a predetermined action without input from the user in each of the plurality of phases. make it work,
The program according to claim 1.
前記チャット上でのユーザ入力およびシステム応答に基づいて、前記分析の目的に適した分析手法を予測する手段、
予測された前記分析の目的に適した分析手法の情報を出力する手段、
として機能させる、
請求項2に記載のプログラム。 The computer,
means for predicting an analysis method suitable for the purpose of the analysis based on user input and system responses on the chat;
means for outputting information on an analysis method suitable for the predicted purpose of the analysis;
to function as
The program according to claim 2.
請求項3に記載のプログラム。 means for outputting a system response to the chat for asking the user a question or prompting a predetermined action when the computer lacks judgment materials for predicting an analysis method suitable for the purpose of the analysis; to function as
The program according to claim 3.
前記ユーザによって提供されたデータセットである第1データセットを取得する手段、
前記分析の目的に基づいて、前記第1データセットの不備を検出する手段、
前記検出の結果に応じて、前記ユーザに前記第1データセットの不備の是正を促す応答を前記チャットに出力する手段、
として機能させる、
請求項2に記載のプログラム。 The computer,
means for obtaining a first data set that is a data set provided by the user;
means for detecting deficiencies in the first data set based on the purpose of the analysis;
means for outputting a response to the chat, prompting the user to correct deficiencies in the first data set, according to the detection result;
to function as
The program according to claim 2.
前記ユーザによって提供されたデータセットである第1データセットを取得する手段、
前記第1データセットが予め定められた条件に合致する場合に、当該条件に対応する前処理の実施を提案する応答を前記チャットに出力する手段、
として機能させる、
請求項2に記載のプログラム。 The computer,
means for obtaining a first data set that is a data set provided by the user;
means for outputting, to the chat, a response suggesting implementation of preprocessing corresponding to the condition when the first data set matches a predetermined condition;
to function as
The program according to claim 2.
請求項1に記載のプログラム。 The output means outputs information for displaying an area where the chat is displayed and an area where the analysis results of the target data set are displayed on one screen or in a switchable manner.
The program according to claim 1.
請求項7に記載のプログラム。 The results of the analysis of the target data set include a graph illustrating the results of the analysis of the target data set, and text representing suggestions based on the results of the analysis of the target data set.
The program according to claim 7.
請求項8に記載のプログラム。 The suggestion indicates an explanation of the variables selected according to the purpose of the analysis, or an explanation of the relationship between two or more variables.
The program according to claim 8.
請求項8に記載のプログラム。 causing the computer to function as means for determining the type of the graph according to the purpose of the analysis and the analysis method used in the analysis;
The program according to claim 8.
前記グラフにおいて重要な箇所を前記分析の目的と、前記分析に用いられた分析手法とに応じて判定する手段、
前記グラフにおいて重要と判定された箇所を示す情報を出力する手段、
として機能させる、
請求項8に記載のプログラム。 The computer,
means for determining important points in the graph according to the purpose of the analysis and the analysis method used in the analysis;
means for outputting information indicating locations determined to be important in the graph;
to function as
The program according to claim 8.
前記出力する手段は、前記グラフおよび前記示唆の少なくとも一方を、前記フェーズの遷移に応じて変更する、
請求項8に記載のプログラム。 The analysis of the target data set is performed stepwise over multiple phases,
The outputting means changes at least one of the graph and the suggestion according to the transition of the phase.
The program according to claim 8.
ユーザとの間で行われるデータ分析に関するチャットの進行状態を管理するステップと、
前記チャットの進行を通じて前記ユーザの分析の目的を特定するステップと、
前記分析の目的に従って、対象データセットを分析するステップと、
前記対象データセットの分析の結果を出力するステップと
を実行し、
前記分析の目的を特定するステップは、
分析対象を前記ユーザに問う第1システム応答を出力し、当該第1システム応答に対する前記ユーザの回答に基づいて前記分析対象を特定するステップと、
前記分析対象に対して採り得る分析の方向性の候補を示す情報を含み、かつ前記分析の方向性を前記ユーザに問う第2システム応答を出力し、前記分析対象と、当該第2システム応答に対する前記ユーザの回答とに基づいて前記分析の目的を特定するステップと、
特定した前記分析の目的を含む第3システム応答を出力するステップと
を備える、
方法 The computer is
managing the progress of a chat regarding data analysis with a user;
identifying the purpose of analysis of the user through the progress of the chat;
analyzing the target dataset according to the purpose of said analysis;
outputting a result of the analysis of the target dataset ;
The step of identifying the purpose of said analysis comprises:
outputting a first system response that asks the user about the target of analysis, and identifying the target of analysis based on the user's answer to the first system response;
outputting a second system response that includes information indicating possible directions of analysis for the analysis target and asking the user about the direction of the analysis; identifying the purpose of the analysis based on the user's answers;
outputting a third system response including the identified purpose of the analysis;
Equipped with
Method
前記チャットの進行を通じて前記ユーザの分析の目的を特定する手段と、
前記分析の目的に従って、対象データセットを分析する手段と、
前記対象データセットの分析の結果を出力する手段と
を具備し、
前記分析の目的を特定する手段は、
分析対象を前記ユーザに問う第1システム応答を出力し、当該第1システム応答に対する前記ユーザの回答に基づいて前記分析対象を特定する手段と、
前記分析対象に対して採り得る分析の方向性の候補を示す情報を含み、かつ前記分析の方向性を前記ユーザに問う第2システム応答を出力し、前記分析対象と、当該第2システム応答に対する前記ユーザの回答とに基づいて前記分析の目的を特定する手段と、
特定した前記分析の目的を含む第3システム応答を出力する手段と
を備える、
情報処理装置。 A means for managing the progress of a chat regarding data analysis conducted with a user;
means for identifying the purpose of analysis of the user through the progress of the chat;
means for analyzing the target data set according to the purpose of said analysis;
and means for outputting the results of the analysis of the target data set,
The means for specifying the purpose of said analysis includes:
means for outputting a first system response that asks the user about an analysis target, and identifying the analysis target based on the user's answer to the first system response;
outputting a second system response that includes information indicating possible directions of analysis for the analysis target and asking the user about the direction of the analysis; means for identifying the purpose of the analysis based on the user's answer;
means for outputting a third system response including the identified purpose of the analysis;
Equipped with
Information processing device.
ユーザとの間で行われるデータ分析に関するチャットの進行状態を管理する手段と、
前記チャットの進行を通じて前記ユーザの分析の目的を特定する手段と、
前記分析の目的に従って、対象データセットを分析する手段と、
前記対象データセットの分析の結果を出力する手段と
を具備し、
前記分析の目的を特定する手段は、
分析対象を前記ユーザに問う第1システム応答を出力し、当該第1システム応答に対する前記ユーザの回答に基づいて前記分析対象を特定する手段と、
前記分析対象に対して採り得る分析の方向性の候補を示す情報を含み、かつ前記分析の方向性を前記ユーザに問う第2システム応答を出力し、前記分析対象と、当該第2システム応答に対する前記ユーザの回答とに基づいて前記分析の目的を特定する手段と、
特定した前記分析の目的を含む第3システム応答を出力する手段と
を備える、
システム。 A system composed of multiple computers,
A means for managing the progress of a chat regarding data analysis conducted with a user;
means for identifying the purpose of analysis of the user through the progress of the chat;
means for analyzing the target data set according to the purpose of said analysis;
and means for outputting the results of the analysis of the target data set,
The means for specifying the purpose of said analysis includes:
means for outputting a first system response that asks the user about an analysis target, and identifying the analysis target based on the user's answer to the first system response;
outputting a second system response that includes information indicating possible directions of analysis for the analysis target and asking the user about the direction of the analysis; means for identifying the purpose of the analysis based on the user's answer;
means for outputting a third system response including the identified purpose of the analysis;
Equipped with
system.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023115912A JP7369320B1 (en) | 2023-07-14 | 2023-07-14 | Information processing device, method, program, and system |
JP2023177238A JP2025013095A (en) | 2023-07-14 | 2023-10-13 | Information processing device, method, program, and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023115912A JP7369320B1 (en) | 2023-07-14 | 2023-07-14 | Information processing device, method, program, and system |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023177238A Division JP2025013095A (en) | 2023-07-14 | 2023-10-13 | Information processing device, method, program, and system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP7369320B1 true JP7369320B1 (en) | 2023-10-25 |
JP2025012800A JP2025012800A (en) | 2025-01-24 |
Family
ID=88418567
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023115912A Active JP7369320B1 (en) | 2023-07-14 | 2023-07-14 | Information processing device, method, program, and system |
JP2023177238A Pending JP2025013095A (en) | 2023-07-14 | 2023-10-13 | Information processing device, method, program, and system |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023177238A Pending JP2025013095A (en) | 2023-07-14 | 2023-10-13 | Information processing device, method, program, and system |
Country Status (1)
Country | Link |
---|---|
JP (2) | JP7369320B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7540808B1 (en) | 2024-06-28 | 2024-08-27 | 株式会社フェズ | Analysis support system, analysis support method, and analysis support program |
JP7591175B1 (en) | 2024-07-31 | 2024-11-27 | 株式会社マネーフォワード | Information processing system, information processing method, and program |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09140895A (en) * | 1995-11-24 | 1997-06-03 | Sophia Co Ltd | Information processor for game parlor |
JP2003242372A (en) * | 2002-02-21 | 2003-08-29 | Toshiba Corp | System and method for distributing electronic merchandise and program |
WO2017168967A1 (en) * | 2016-03-28 | 2017-10-05 | 三菱電機株式会社 | Device for determining data analysis method candidate |
JP2018005883A (en) * | 2016-07-04 | 2018-01-11 | ムジグマ・ビジネス・ソリューションズ・ピーブイティー・リミテッド | Guided analytics system and method |
JP2022161031A (en) * | 2021-04-07 | 2022-10-20 | ナウキャスティング.エーアイ インコーポレイテッド | Method and system for applying predictive model to generate watchlist |
JP2022547470A (en) * | 2019-09-12 | 2022-11-14 | グリーンエデン ユーエス ホールディングス セカンド エルエルシー | System and method for facilitating bot communication |
US20230081797A1 (en) * | 2021-09-15 | 2023-03-16 | Deepspatial INC. | Computer implemented method and system for retail management and optimization |
JP2023067836A (en) * | 2021-10-31 | 2023-05-16 | 株式会社Datafluct | Information processing system, information processing method and information processing program |
-
2023
- 2023-07-14 JP JP2023115912A patent/JP7369320B1/en active Active
- 2023-10-13 JP JP2023177238A patent/JP2025013095A/en active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09140895A (en) * | 1995-11-24 | 1997-06-03 | Sophia Co Ltd | Information processor for game parlor |
JP2003242372A (en) * | 2002-02-21 | 2003-08-29 | Toshiba Corp | System and method for distributing electronic merchandise and program |
WO2017168967A1 (en) * | 2016-03-28 | 2017-10-05 | 三菱電機株式会社 | Device for determining data analysis method candidate |
JP2018005883A (en) * | 2016-07-04 | 2018-01-11 | ムジグマ・ビジネス・ソリューションズ・ピーブイティー・リミテッド | Guided analytics system and method |
JP2022547470A (en) * | 2019-09-12 | 2022-11-14 | グリーンエデン ユーエス ホールディングス セカンド エルエルシー | System and method for facilitating bot communication |
JP2022161031A (en) * | 2021-04-07 | 2022-10-20 | ナウキャスティング.エーアイ インコーポレイテッド | Method and system for applying predictive model to generate watchlist |
US20230081797A1 (en) * | 2021-09-15 | 2023-03-16 | Deepspatial INC. | Computer implemented method and system for retail management and optimization |
JP2023067836A (en) * | 2021-10-31 | 2023-05-16 | 株式会社Datafluct | Information processing system, information processing method and information processing program |
Non-Patent Citations (2)
Title |
---|
X(旧TWITTER)[ONLINE][VIDEO], JPN6023032468, 5 January 2023 (2023-01-05), ISSN: 0005122458 * |
X(旧twitter)[online][video],2023年01月05日,[2023年8月2日検索],インターネット<https://twitter.com/dory111111/status/1610653367474491393>,動画の0:00~0:28を参照 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7540808B1 (en) | 2024-06-28 | 2024-08-27 | 株式会社フェズ | Analysis support system, analysis support method, and analysis support program |
JP7591175B1 (en) | 2024-07-31 | 2024-11-27 | 株式会社マネーフォワード | Information processing system, information processing method, and program |
Also Published As
Publication number | Publication date |
---|---|
JP2025013095A (en) | 2025-01-24 |
JP2025012800A (en) | 2025-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7369320B1 (en) | Information processing device, method, program, and system | |
AU2020203409B2 (en) | Intelligent crowdsourced resource assistant | |
US10942905B2 (en) | Systems and methods for cleansing automated robotic traffic | |
Elghaish et al. | Artificial intelligence-based voice assistant for BIM data management | |
US11126938B2 (en) | Targeted data element detection for crowd sourced projects with machine learning | |
CN116521841B (en) | Method, device, equipment and medium for generating reply information | |
US20150278706A1 (en) | Method, Predictive Analytics System, and Computer Program Product for Performing Online and Offline Learning | |
CN111061831A (en) | Method and device for switching machine customer service to manual customer service and electronic equipment | |
EP3685245B1 (en) | Method, apparatus, and computer-readable media for customer interaction semantic annotation and analytics | |
WO2022093358A1 (en) | Augmented data insight generation and provision | |
US10042944B2 (en) | Suggested keywords | |
Az-zahra et al. | Usability evaluation of mobile application in culinary recommendation system | |
Ntoa et al. | UXAmI observer: an automated user experience evaluation tool for ambient intelligence environments | |
CN118734793A (en) | Method, device, electronic device and storage medium for generating presentation | |
WO2022006530A1 (en) | Remote assistance systems and methods | |
Rey-Valette et al. | Introduction to the key issue concerning the use of sustainable development indicators | |
CN112799949A (en) | A model optimization method, device, system and equipment | |
Melo et al. | Understanding user understanding: What do developers expect from a cognitive assistant? | |
US12174865B2 (en) | Information processing apparatus, information processing system, and information processing method | |
US11809472B2 (en) | Service providing system, information processing apparatus, information processing method | |
US20240202212A1 (en) | Contextualizing data to augment processes using semantic technologies and artificial intelligence | |
EP3992876A1 (en) | Integration navigator and intelligent monitoring for living systems | |
Elsaid et al. | Automatic framework for requirement analysis phase | |
Mendes et al. | A Systematic Literature Review on the Use of Artificial Intelligence in New Product Development | |
Guvindan Raju et al. | Cognitive Virtual Admissions Counselor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230714 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20230714 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230804 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231002 |
|
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: 20231010 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231013 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7369320 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |