[go: up one dir, main page]

JP2025013095A - Information processing device, method, program, and system - Google Patents

Information processing device, method, program, and system Download PDF

Info

Publication number
JP2025013095A
JP2025013095A JP2023177238A JP2023177238A JP2025013095A JP 2025013095 A JP2025013095 A JP 2025013095A JP 2023177238 A JP2023177238 A JP 2023177238A JP 2023177238 A JP2023177238 A JP 2023177238A JP 2025013095 A JP2025013095 A JP 2025013095A
Authority
JP
Japan
Prior art keywords
analysis
user
chat
server
data set
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.)
Pending
Application number
JP2023177238A
Other languages
Japanese (ja)
Inventor
聖 高橋
Sei Takahashi
達樹 岩澤
Tatsuki Iwasawa
美和子 加藤
Miwako Kato
武憲 橋本
Takenori Hashimoto
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Collinear Inc
Original Assignee
Collinear Inc
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 Collinear Inc filed Critical Collinear Inc
Priority to JP2023177238A priority Critical patent/JP2025013095A/en
Publication of JP2025013095A publication Critical patent/JP2025013095A/en
Pending legal-status Critical Current

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

To provide a technique for obtaining an appropriate data analysis result at low cost and in a short time regardless of a level of a user's data analysis skill.SOLUTION: A program causes a computer to execute means of: managing a progress state of a chat relating to data analysis performed with a user; specifying a purpose of the analysis of the user through the progress of the chat; analyzing an object data set according to the purpose of analysis; and outputting a result of the analysis of the object data set.SELECTED DRAWING: Figure 4

Description

本開示は、情報処理装置、方法、プログラム、およびシステムに関する。 This disclosure relates to an information processing device, a method, a program, and a system.

従来、企業が自社の取得した膨大なデータを、収集、蓄積、分析、および加工し、経営戦略のための意志決定を支援するための様々なBI(Business Intelligence)ツールが知られている。 Traditionally, various BI (Business Intelligence) tools have been known to help companies collect, accumulate, analyze, and process the vast amounts of data they have acquired, and to support decision-making for business strategies.

また、特許文献1には、共通化された設計フレームワークにより、個人の設計スキルに依存することなく、より短期間で高品質な「マネージドモデル・セルフサービスBI」を提供することを企図した技術的思想が開示されている。 Patent Document 1 also discloses a technical idea that aims to provide high-quality "managed model self-service BI" in a shorter period of time by using a common design framework, without relying on individual design skills.

特開2019-175236号公報JP 2019-175236 A

しかし、例えば、企業の企画部門の担当者のような、多くの場合、高度なデータ分析スキルを持ちあわせない人物が自力でBIツールを駆使することは容易でなく、データ分析の専門家による支援が必要となるケースが多かった。専門家による支援を受けるには金銭的コストがかかるうえ分析結果を得るまでに要する時間は短くない。また、特許文献1の技術的思想も、要件定義テンプレート、および分析モデル詳細定義書に必要事項を入力することが求められるため、一定水準以上の設計・分析スキルがあることを前提としていると解される。 However, in many cases, it is not easy for people without advanced data analysis skills, such as those in a company's planning department, to use BI tools on their own, and support from data analysis experts is often required. Receiving support from an expert is costly, and it takes a long time to obtain analysis results. In addition, the technical idea of Patent Document 1 also requires input of necessary information into a requirements definition template and an analysis model detailed definition document, and is therefore understood to be premised on a certain level of design and analysis skills.

本開示の目的は、ユーザのデータ分析スキルの高低に関わらず、低コストかつ短時間で、適切なデータ分析結果を得るための技術を提供することである。 The purpose of this disclosure is to provide technology that enables users to obtain appropriate data analysis results at low cost and in a short time, regardless of their level of data analysis skill.

本開示の一態様のプログラムは、コンピュータを、ユーザとの間で行われるデータ分析に関するチャットの進行状態を管理する手段、チャットの進行を通じてユーザの分析の目的を特定する手段、分析の目的に従って、対象データセットを分析する手段、対象データセットの分析の結果を出力する手段、として機能させる。 A program according to one aspect of the present disclosure causes a computer to function as a means for managing the progress of chats regarding data analysis conducted with a user, a means for identifying the user's objective of analysis through the progress of the chats, a means for analyzing a target dataset according to the objective of the analysis, and a means for outputting the results of the analysis of the target dataset.

本実施形態の情報処理システムの構成を示すブロック図である。1 is a block diagram showing a configuration of an information processing system according to an embodiment of the present invention; 本実施形態のクライアント装置の構成を示すブロック図である。FIG. 2 is a block diagram showing a configuration of a client device according to the present embodiment. 本実施形態のサーバの構成を示すブロック図である。FIG. 2 is a block diagram showing a configuration of a server according to the present embodiment. 本実施形態の一態様の説明図である。FIG. 1 is an explanatory diagram of one aspect of the present embodiment. 本実施形態の情報処理の全体フローを示す図である。FIG. 2 is a diagram showing an overall flow of information processing according to the present embodiment. 本実施形態の分析の目的の設定処理のフローチャートである。11 is a flowchart of a process for setting an analysis objective according to the present embodiment. 本実施形態の分析の目的の設定処理において表示される画面例を示す図である。13A and 13B are diagrams illustrating an example of a screen displayed in the process of setting an analysis objective according to the present embodiment. 本実施形態の分析の目的の設定処理において表示される画面例を示す図である。13A and 13B are diagrams illustrating an example of a screen displayed in the process of setting an analysis objective according to the present embodiment. 本実施形態の分析の目的の設定処理において表示される画面例を示す図である。13A and 13B are diagrams illustrating an example of a screen displayed in the process of setting an analysis objective according to the present 本実施形態の分析処理のフローチャートである。13 is a flowchart of an analysis process according to the present embodiment. 本実施形態の分析処理において表示される画面例を示す図である。FIG. 13 is a diagram showing an example of a screen displayed in the analysis process of the present embodiment. 本実施形態の分析処理において表示される画面例を示す図である。FIG. 13 is a diagram showing an example of a screen displayed in the analysis process of the present embodiment.

以下、本発明の一実施形態について、図面に基づいて詳細に説明する。なお、実施形態を説明するための図面において、同一の構成要素には原則として同一の符号を付し、その繰り返しの説明は省略する。 One embodiment of the present invention will be described in detail below with reference to the drawings. In the drawings used to explain the embodiment, the same components are generally designated by the same reference numerals, and repeated explanations will be omitted.

(1)情報処理システムの構成
情報処理システムの構成について説明する。図1は、本実施形態の情報処理システムの構成を示すブロック図である。
(1) Configuration of the Information Processing System The configuration of the information processing system will be described below. Fig. 1 is a block diagram showing the configuration of the 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 (for example, 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 transmits a request to the server 30. The client device 10 is, for example, a smartphone, a tablet terminal, or a personal computer. A user of the client device 10 is assumed to be, for example, a person in a company's planning department who has a need for data analysis but who often does not have the advanced skills to carry out the data analysis. 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 sent from the client device 10. The server 30 is, for example, a web server.

(1-1)クライアント装置の構成
クライアント装置の構成について説明する。図2は、本実施形態のクライアント装置の構成を示すブロック図である。
(1-1) Configuration of the Client Device The configuration of the client device will be described below with reference to Fig. 2, which is a block diagram showing the configuration of the client device according to 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. The client device 10 is connected to a 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 Read Only Memory (ROM), Random Access Memory (RAM), and storage (for example, flash memory or a hard disk).

プログラムは、例えば、以下のプログラムを含む。
・OS(Operating System)のプログラム
・情報処理を実行するアプリケーション(例えば、ウェブブラウザ、またはデータ分析用のアプリケーション、など)のプログラム
The programs include, for example, the following programs:
- Operating System (OS) programs - Programs for applications that perform information processing (e.g., web browsers, applications for data analysis, etc.)

データは、例えば、以下のデータを含む。
・情報処理において参照されるデータベース
・情報処理を実行することによって得られるデータ(つまり、情報処理の実行結果)
The data includes, for example, the following data:
- Databases referenced in information processing - Data obtained by executing information processing (i.e., the results of executing 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 realizes the functions of the client device 10 by running 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 obtain information (e.g., user instructions) from an input device connected to the client device 10, and to output information (e.g., images) to an output device connected to the client device 10.

入力デバイスは、例えば、キーボード、ポインティングデバイス、タッチパネル、又は、それらの組合せである。
出力デバイスは、例えば、ディスプレイ21、スピーカ、又は、それらの組合せである。
The input device is, for example, a keyboard, a pointing device, a touch panel, or a combination thereof.
The output device is, for example, a display 21, a speaker, or a combination thereof.

通信インタフェース14は、クライアント装置10と外部装置(例えばサーバ30)との間の通信を制御するように構成される。 The communication interface 14 is configured to control communication between the client device 10 and an external device (e.g., the server 30).

ディスプレイ21は、画像(静止画、または動画)を表示するように構成される。ディスプレイ21は、例えば、液晶ディスプレイ、または有機ELディスプレイである。 The display 21 is configured to display an image (still image or video). The display 21 is, for example, a liquid crystal display or an organic EL display.

(1-2)サーバの構成
サーバの構成について説明する。図3は、本実施形態のサーバの構成を示すブロック図である。
(1-2) Server Configuration The following describes the server configuration: Fig. 3 is a block diagram showing the server configuration 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 (e.g., flash memory or a hard disk).

プログラムは、例えば、以下のプログラムを含む。
・OSのプログラム
・情報処理を実行するアプリケーションのプログラム
The programs include, for example, the following programs:
・OS programs ・Application programs that execute information processing

データは、例えば、以下のデータを含む。
・情報処理において参照されるデータベース
・情報処理の実行結果
The data includes, for example, the following data:
- Databases referenced in information processing - Results of information processing

プロセッサ32は、記憶装置31に記憶されたプログラムを起動することによって、サーバ30の機能を実現するコンピュータである。プロセッサ32は、例えば、以下の少なくとも1つである。
・CPU
・GPU
・ASIC
・FPGA
The processor 32 is a computer that realizes the functions of the server 30 by running 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 to output information (e.g., images) to an output device connected to the server 30.

入力デバイスは、例えば、キーボード、ポインティングデバイス、タッチパネル、又は、それらの組合せである。
出力デバイスは、例えば、ディスプレイである。
The input device is, for example, a keyboard, a pointing device, a touch panel, or a combination thereof.
The output device is, for example, a display.

通信インタフェース34は、サーバ30と外部装置(例えばクライアント装置10)との間の通信を制御するように構成される。なお、サーバ30は、例えば大規模言語モデルに代表される自然言語モデル(以下、単に「自然言語モデル」という)またはデータ分析ツールなどの一部機能の利用のために外部システムにアクセスするように構成されてもよい。 The communication interface 34 is configured to control communication between the server 30 and an external device (e.g., the client device 10). The server 30 may be configured to access an external system to utilize some of the functions of a natural language model (hereinafter simply referred to as a "natural language model") such as a large-scale language model or a data analysis tool.

(2)実施形態の一態様
本実施形態の一態様について説明する。図4は、本実施形態の一態様の説明図である。
(2) One aspect of the embodiment One aspect of the present embodiment will be described below. Fig. 4 is an explanatory diagram of one aspect of the present embodiment.

図4に示すように、情報処理システム1は、主にユーザUS1とデータ分析エージェントAG2との間で行われるチャットベースで、当該ユーザUS1が必要とするデータ分析を進め、最終的に、当該分析の結果をユーザUS1に提供する。 As shown in FIG. 4, the information processing system 1 performs data analysis required by the user US1 mainly on a chat basis between the user US1 and the data analysis agent AG2, and ultimately provides the results of the analysis 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. The management of the chat progress may include understanding the intent of the user's instructions, generating a system response based on the intent of the user's instructions and the data analysis scenario, and outputting the system response. In managing the chat progress, the server 30 can use a natural language model as appropriate. On the other hand, the client device 10 accepts user instructions from the user US1 and outputs them to the server 30, and displays a UI (User Interface) for the user US1 based on the system response received from the server 30.

サーバ30は、チャットの進行を通じて、ユーザUS1のデータ分析の目的を特定(言語化)する。言語化された目的は、その後の分析の指針として、記憶装置31に保存され、サーバ30によって参照される。また、サーバ30は、ユーザUS1から、クライアント装置10を介して、データセットの提供を受け付ける。サーバ30は、受け付けたデータセットに基づく対象データセットを分析し、当該分析の結果を含むシステム応答をクライアント装置10に出力する。クライアント装置10は、分析の結果を示すUIをユーザUS1に向けて表示する。 Through the progress of the chat, the server 30 identifies (verbalizes) the purpose of the data analysis of the user US1. The verbalized purpose is stored in the storage device 31 as a guideline for subsequent analysis and is referenced by the server 30. The server 30 also accepts data sets provided by the user US1 via the client device 10. The server 30 analyzes a target data set based on the accepted data set, and outputs a system response including the results 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, user US1 can obtain the analysis results that user US1 needs (which may include the results of analysis that he or she potentially needed) simply by answering questions from data analysis agent AG2 and performing actions requested by data analysis agent AG2 (e.g., specifying a data set, etc.). In particular, user US1 does not need to prepare solutions in advance before starting the chat, such as what purpose the analysis should be performed for, what analysis method should be selected, or what data set should be prepared, as these elements can be determined through the chat and the necessary analysis can be performed.

(3)情報処理
本実施形態の情報処理について説明する。図5は、本実施形態の情報処理の全体フローを示す図である。
(3) Information Processing The information processing of this embodiment will be described with reference to Fig. 5, which is a diagram showing the overall flow of the information processing of this embodiment.

本実施形態の情報処理は、所定の開始条件の成立に応じて開始する。開始条件は、例えば、ユーザが新たな分析プロジェクトを開始すること、であってよい。 In this embodiment, information processing starts when a predetermined start condition is met. The start condition may be, for example, a user starting a new analysis project.

図5に示すように、サーバ30は、データセットの取得(S100)を実行する。
具体的には、サーバ30は、ユーザに分析材料となるデータセットの提供を求めるシステム応答(例えば、チャットメッセージ)を取得し、クライアント装置10へ送信する。
クライアント装置10は、受信したシステム応答に基づくUIをディスプレイ21に表示する。クライアント装置10は、ユーザからデータセットの指定を受け付け、指定されたデータセットを取得する。クライアント装置10は、取得したデータセットをサーバ30へ送信する。
As shown in FIG. 5, the server 30 acquires a data set (S100).
Specifically, the server 30 obtains a system response (e.g., a chat message) requesting the user to provide a data set that will be used as material for analysis, 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 accepts a data set designation from the 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 the 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 an 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 received purpose of analysis.
The details of setting the purpose of the 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 an analysis (S120).
Specifically, the server 30 performs an analysis on the data set acquired in step S100 or a data set obtained by processing the data set (e.g., by performing preprocessing such as data cleansing) in accordance with the purpose of the analysis set in step S110. The server 30 transmits the results of the analysis to the client device 10. The client device 10 displays a UI indicating the received analysis results on the display 21.
The analysis (S120) will be described in detail later.

(3-1)分析の目的の設定処理
本実施形態の分析の目的の設定処理について説明する。図6は、本実施形態の分析の目的の設定処理のフローチャートである。図7は、本実施形態の分析の目的の設定処理において表示される画面例を示す図である。図8は、本実施形態の分析の目的の設定処理において表示される画面例を示す図である。図9は、本実施形態の分析の目的の設定処理において表示される画面例を示す図である。
(3-1) Analysis Goal Setting Process The analysis goal setting process of this embodiment will now be described. FIG. 6 is a flowchart of the analysis goal setting process of this embodiment. FIG. 7 is a diagram showing an example of a screen displayed in the analysis goal setting process of this embodiment. FIG. 8 is a diagram showing an example of a screen displayed in the analysis goal setting process of this embodiment. FIG. 9 is a diagram showing an example of a screen displayed in the analysis goal setting process of this embodiment.

図6に示すように、サーバ30は、システム応答の生成(S111)を実行する。
具体的には、サーバ30は、分析対象をユーザに問うシステム応答(メッセージ)を生成し、クライアント装置10へ送信する。
As shown in FIG. 6, the server 30 generates a system response (S111).
Specifically, the server 30 generates a system response (message) that asks the user about the analysis target, and transmits the response to the client device 10 .

システム応答の生成(S111)の第1例として、サーバ30は、ステップS100において取得したデータセットに含まれるデータ項目名(変数名)に基づいて、分析対象の候補を特定(抽出)し、当該候補に関する質問を含むシステム応答を生成してもよい。質問は、候補のいずれが分析対象であるかをユーザに問うてもよいし、各候補が分析対象であるか否かをユーザに問うてもよい。 As a first example of generating a system response (S111), the server 30 may identify (extract) candidates to be analyzed based on the data item names (variable names) included in the dataset acquired in step S100, and generate a system response including a question regarding the candidates. The question may ask the user which of the candidates is the analysis target, or may ask the user whether each candidate is the analysis target.

以降の説明において、特に断りの無い限り、サーバ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 a system response by inserting a sentence generated by a natural language model into a template.

システム応答の生成(S111)の第2例として、サーバ30は、ステップS100において取得したデータセットに含まれるデータ項目名に関わらず、定型的なメッセージをシステム応答として生成してもよい。 As a second example of generating a system response (S111), the server 30 may generate a standard message as the system response, regardless of the data item names contained 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 transmitted 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 of FIG. 7 includes objects J20 to J27.
Object J20 indicates which of a number of phases that define the progress of the chat (i.e., the progress of the analysis project) the chat is currently in. In the example of Fig. 7, object J20 indicates that the progress of the chat is "setting the goal of the analysis."

オブジェクトJ21は、メインUIを表示する。オブジェクトJ21は、ユーザとデータ分析エージェントとのチャット、または分析の結果、など(換言すれば、システム応答とユーザ指示)を表示する。オブジェクトJ21は、少なくとも最新のシステム応答またはユーザ指示を表示可能に構成される。さらに、オブジェクトJ21は、過去のシステム応答またはユーザ指示を、例えばスクロール操作に応じて表示可能に構成されてもよい。 Object J21 displays the main UI. Object J21 displays chat between the user and the data analysis agent, or analysis results (in other words, system responses and user instructions). Object J21 is configured to be able to display at least the most recent system response or user instruction. Furthermore, 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 would you like to analyze?" Furthermore, in the example of FIG. 7, objects J210a to J210b are placed on object J21.

オブジェクトJ210aは、分析対象の候補を選択するユーザ指示を受け付ける。図7の例では、オブジェクトJ210aは、ドロップダウンリストに相当するが、リストボックス、チェックボックス、またはラジオボタンなどの任意の選択系のGUI部品に代替可能である。 Object J210a accepts user instructions to select candidates for analysis. In the example of FIG. 7, object J210a corresponds to a drop-down list, but 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, the client device 10 transmits information that can identify the candidate selected by object J210a to the server 30.

オブジェクトJ22は、ユーザ指示を受け付ける。クライアント装置10は、オブジェクトJ22によって受け付けたユーザ指示を、サーバ30へ送信する。図7の例では、オブジェクトJ22を利用することで、ユーザは分析対象を、オブジェクトJ210aの選択によらずに、直接指定することができる。 Object J22 accepts user instructions. The client device 10 transmits the user instructions accepted by object J22 to the server 30. In the example of FIG. 7, by using object J22, the user can directly specify the analysis target without selecting object J210a.

オブジェクトJ23は、サブUIを表示する。オブジェクトJ23は、分析に用いるデータセット、分析の目的(テキスト)、分析の結果、チャットの履歴などの、分析プロジェクトの要点に関する情報を表示可能に構成される。オブジェクトJ23には、オブジェクトJ24~J27が配置される。 Object J23 displays a sub-UI. Object J23 is configured to be able to display information about key points of the analysis project, such as the dataset used in the analysis, the purpose of the analysis (text), the results of the analysis, and chat history. Objects J24 to J27 are placed in object J23.

オブジェクトJ24は、分析に用いるデータセットに関する情報の表示/非表示を切り替えるユーザ指示を受け付ける。オブジェクトJ24が選択されると、クライアント装置10は、分析に用いるデータセットに関する情報をオブジェクトJ23に展開表示し、または展開表示済みの当該情報を閉じる。分析に用いるデータセットに関する情報は、例えば以下の少なくとも1つの情報を含むことができる。
・データセットが格納されたファイルの名称
・データセットに含まれるデータ項目(変数)の名称(例えば、売上、日時、など)
・データセットに含まれるデータ項目(変数)の型(例えば、整数型、日付型、など)
・データセットに含まれるデータ項目(変数)の値の実例
The object J24 accepts a user instruction to switch between displaying and hiding information about the dataset used in the analysis. When the object J24 is selected, the client device 10 displays the information about the dataset used in the analysis in the object J23, or closes the information that has already been displayed. The information about the dataset used in the analysis may include, for example, at least one of the following pieces of information:
- The name of the file in which the dataset is stored - The names of the data items (variables) included in the dataset (e.g., sales, date and time, etc.)
- The type of data items (variables) contained 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 the display/non-display of the purpose of analysis. When object J25 is selected, the client device 10 displays the purpose of analysis in object J23, or closes the information that has already been displayed. However, when the purpose of analysis has not been set, the client device 10 can use fixed text or an image, such as "Undecided," in place of the purpose of analysis. Optionally, when object J25 is selected, in addition to the purpose of analysis, an object that accepts a user instruction to edit the purpose may be displayed.

オブジェクトJ26は、現在の分析プロジェクトにおいて既に実施された分析の結果の表示/非表示を切り替えるユーザ指示を受け付ける。オブジェクトJ26が選択されると、クライアント装置10は、分析の結果をオブジェクトJ23に展開表示し、または展開表示済みの当該情報を閉じる。ただし、分析が未実施の場合に、クライアント装置10は、例えば「なし」など固定のテキストまたは画像を分析の結果の代わりに用いることができる。また、オプションとして、オブジェクトJ26の選択時に、分析の結果に加え、当該結果の視覚的表現(例えば、グラフの書式など)を編集するユーザ指示を受け付けるオブジェクトが展開表示されてもよい。 Object J26 accepts a user instruction to switch between displaying and hiding the results of an analysis that has already been performed in the current analysis project. When object J26 is selected, the client device 10 displays the results of the analysis in object J23, or closes the information that has already been displayed. However, if the analysis has not been performed, the client device 10 can use fixed text or an image, such as "none," in place of the results of the analysis. Optionally, when object J26 is selected, in addition to the results of the analysis, an object that accepts a user instruction to edit the visual representation of the results (e.g., the format of a graph, etc.) may be displayed.

オブジェクトJ27は、チャット履歴の表示/非表示を切り替えるユーザ指示を受け付ける。オブジェクトJ27が選択されると、クライアント装置10は、チャット履歴をオブジェクトJ23に展開表示し、または展開表示済みの当該情報を閉じる。 Object J27 accepts a user instruction to switch between displaying and hiding the chat history. When object J27 is selected, the client device 10 displays the chat history in object J23, or closes the information that has already been displayed.

ステップS211の後に、クライアント装置10は、ユーザ指示の受け付け(S212)を実行する。
具体的には、クライアント装置10は、ユーザから分析対象を選択または指定するユーザ指示を受け付ける。図7の例では、ユーザは、オブジェクトJ210a~J210bの操作、またはオブジェクトJ22の操作により、分析対象を選択または指定することができる。クライアント装置10は、受け付けたユーザ指示をサーバ30へ送信する。
After step S211, the client device 10 executes reception of 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 by operating object J22. The client device 10 transmits the received user instruction to the server 30.

ステップS212の後に、サーバ30は、分析対象の特定(S112)を実行する。
具体的には、サーバ30は、ステップS212においてクライアント装置10から送信されたユーザ指示を受信する。サーバ30は、受信したユーザ指示に基づいて分析対象を特定する。ここで、例えば分析対象をテキストで指定するユーザ指示が得られた場合に、サーバ30は当該テキストに基づくモデル入力を、自然言語モデルに与えることで、分析対象を特定してもよい。オプションとして、ユーザ指示から分析対象を特定するのに十分な情報が得られなかった場合に、サーバ30は、ステップS111~S112を再実行してもよい。
After step S212, the server 30 executes identification of an analysis target (S112).
Specifically, the server 30 receives the user instruction transmitted from the client device 10 in step S212. The server 30 identifies the analysis target based on the received user instruction. Here, for example, when a user instruction is obtained that specifies the analysis target by text, the server 30 may identify the analysis target by providing a model input based on the text to the natural language model. Optionally, when sufficient information to identify the analysis target is not obtained from the user instruction, the server 30 may re-execute steps S111 to S112.

ステップ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) asking the user what kind of analysis he or she wants to perform on the analysis target (i.e., the direction of the analysis), and transmits it to the client device 10. For example, the server 30 may generate the system response by inserting text corresponding to the analysis target identified in step S112 (which may include text generated by a natural language model based on the text) into a predefined message template. The system response may also include information indicating candidates for the direction of analysis that can be taken on the analysis target. The information indicating the candidates for the direction of analysis may include text that verbalizes the direction, an image (e.g., a graph) that helps understand the concept of the direction, or a combination thereof. The candidates for the direction of analysis may be predefined according to, for example, the type of data item of the analysis target, the type of data item other than the analysis target, 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 transmitted 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 of FIG. 8 includes objects J20 to J27.
In the example of Fig. 8, object J21 displays a system response saying, "The analysis target is 'Sales'. Next, please choose the type of analysis you would like to perform. If there is no corresponding option, please enter it in the chat." Furthermore, in the example of Fig. 8, objects J211a to J211b are placed in object J21.

オブジェクトJ211bは、分析の方向性の候補を選択するユーザ指示を受け付ける。図8の例では、オブジェクトJ211aは、ラジオボタンに相当するが、ドロップダウンリスト、リストボックス、またはラジオボタンなどの任意の選択系のGUI部品に代替可能である。 Object J211b accepts a user instruction to select a candidate analysis direction. In the example of FIG. 8, object J211a corresponds to a radio button, but can be replaced with any selection-based GUI component such as a drop-down list, list box, or radio button.

オブジェクトJ211bは、オブジェクトJ211aの選択を確定するユーザ指示を受け付ける。オブジェクトJ211bが選択されると、クライアント装置10は、オブジェクトJ211aによって選択されている候補を特定可能な情報をサーバ30へ送信する。 Object J211b accepts a user instruction to confirm the selection of object J211a. When object J211b is selected, the client device 10 transmits information capable of identifying the candidate selected by object J211a to the server 30.

図8の例では、オブジェクトJ22を利用することで、ユーザは分析の方向性を、オブジェクトJ211aの選択によらずに、直接指定することができる。 In the example of Figure 8, by using object J22, the user can directly specify the direction of analysis without selecting object J211a.

ステップS213の後に、クライアント装置10は、ユーザ指示の受け付け(S214)を実行する。
具体的には、クライアント装置10は、ユーザから分析の方向性を選択または指定するユーザ指示を受け付ける。図8の例では、ユーザは、オブジェクトJ211a~J211bの操作、またはオブジェクトJ22の操作により、分析の方向性を選択または指定することができる。クライアント装置10は、受け付けたユーザ指示をサーバ30へ送信する。
After step S213, the client device 10 executes reception of a user instruction (S214).
Specifically, the client device 10 receives a user instruction to select or specify 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 the objects J211a to J211b or the object J22. The client device 10 transmits the received user instruction to the server 30.

ステップS214の後に、サーバ30は、分析の目的の特定(S114)を実行する。
具体的には、サーバ30は、ステップS214においてクライアント装置10から送信されたユーザ指示を受信する。サーバ30は、受信したユーザ指示に基づいて分析の目的(つまり、分析対象と分析の方向性の組み合わせ)を特定する。すなわち、サーバ30は、分析の目的を示すテキストを得る。ここで、例えば分析の方向性をテキストで指定するユーザ指示が得られた場合に、サーバ30は当該テキスト(分析対象を示すテキストをさらに含み得る)に基づくモデル入力を、自然言語モデルに与えることで、分析の目的を特定してもよい。オプションとして、ユーザ指示から分析の目的を特定するのに十分な情報が得られなかった場合に、サーバ30は、ステップS113~S114を再実行してもよい。
After step S214, the server 30 executes specification of the purpose of the analysis (S114).
Specifically, the server 30 receives the user instruction transmitted from the client device 10 in step S214. The server 30 identifies the purpose of the analysis (i.e., a 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 is obtained that specifies the direction of the analysis by text, the server 30 may provide a model input based on the text (which may further include text indicating the analysis target) to the natural language model to identify the purpose of the analysis. Optionally, when sufficient information is not obtained from the user instruction to identify the purpose of the analysis, the server 30 may re-execute steps S113 to S114.

ステップ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 including the purpose of the analysis identified (verbalized) in step S114, and transmits the system response 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 transmitted 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 of FIG. 9 includes objects J20 to J27.
In the example of FIG. 9, an object J212 is placed on the 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 the analysis can be expanded and displayed in object J23 via object J25, as necessary.

(3-2)分析処理
本実施形態の分析処理について説明する。図10は、本実施形態の分析処理のフローチャートである。図11は、本実施形態の分析処理において表示される画面例を示す図である。図12は、本実施形態の分析処理において表示される画面例を示す図である。
(3-2) Analysis Processing The analysis processing of this embodiment will be described. Fig. 10 is a flowchart of the analysis processing of this embodiment. Fig. 11 is a diagram showing an example of a screen displayed in the analysis processing of this embodiment. Fig. 12 is a diagram showing an example of a screen displayed in the analysis processing of this embodiment.

図10に示すように、サーバ30は、適した分析手法の予測(S121)を実行する。
具体的には、サーバ30は、チャット上でのユーザ入力およびシステム応答に基づいて、ステップS110において特定した分析の目的に対して、適した分析手法を予測する。
As shown in FIG. 10, the server 30 executes prediction of a suitable analysis method (S121).
Specifically, the server 30 predicts an appropriate analysis method for the purpose of the analysis identified in step S110, based on the user input in the chat and the system response.

一例として、サーバ30は、自然言語モデルに対し、ユーザ入力により得られた情報に基づくモデル入力を与え、分析の目的に適した分析手法を推論させてもよい。分析手法は、例えば、分析対象に関する回帰(将来予測を含み得る)、分類、クラスタリング、次元削減(例えば主成分分析)、またはそれらの組み合わせであってよい。また、分析手法の特定は、説明変数として用いるデータ項目の特定を含み得る。 As an example, the server 30 may provide the natural language model with model input based on information obtained by user input, and infer an analysis method suitable for the purpose of the analysis. The analysis method may be, for example, regression (which may include future prediction) for the analysis target, classification, clustering, dimensionality reduction (e.g., principal component analysis), or a combination thereof. Furthermore, identifying the analysis method may include identifying data items to be used as explanatory variables.

別の例として、分析の目的に適した分析手法を特定し、当該分析手法から利用可能な手法を絞り込んでもよい。分析の目的に適した分析手法は、例えば事前に定義されてもよい。また、各分析手法が利用可能であるか否かは、ステップS100において取得したデータセットに含まれるデータ項目の名称もしくは型、当該データセットに含まれるデータサンプルの数、などに基づいて判定されてよい。 As another example, an analysis method suitable for the purpose of the analysis may be identified, and the available methods may be narrowed down from the analysis methods. The analysis method suitable for the purpose of the analysis may be defined in advance, for example. Furthermore, whether each analysis method is available may be determined based on the name or type of the data items included in the dataset acquired in step S100, the number of data samples included in the dataset, etc.

適した分析手法の予測(S121)のオプションとして、分析の目的に適した分析手法を予測するための判断材料が不足する場合に、サーバ30は、ユーザに質問する、または所定のアクションを促すためのシステム応答を生成し、チャットに出力してもよい。一例として、サーバ30は、分析に関連する追加のデータセットの有無を質問したり、追加のデータセットの提供を促したりするためのシステム応答を生成してもよい。 As an option for predicting an appropriate analysis method (S121), when there is insufficient information to predict an appropriate analysis method for the purpose of the analysis, the server 30 may generate a system response to ask the user a question or to prompt a predetermined action, and output the system response to the chat. As an example, the server 30 may generate a system response to ask whether there are any additional data sets related to the analysis, or to prompt the user to provide the 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 the user whether to adopt the analysis method predicted in step S121. As an example, the system response may ask the user which of a plurality of analysis methods to select (multiple selections may be possible), or may ask the user whether to adopt each analysis method. 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 methods, text that verbalizes the method, an image (e.g., a graph) that helps 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 transmitted from the server 30 in step S122. The client device 10 displays on the display 21 a screen based on the received system response.

ステップS221の後に、クライアント装置10は、ユーザ指示の受け付け(S222)を実行する。
具体的には、クライアント装置10は、ユーザから分析手法を選択または指定するユーザ指示を受け付ける。クライアント装置10は、受け付けたユーザ指示をサーバ30へ送信する。
After step S221, the client device 10 executes reception of a user instruction (S222).
Specifically, the client device 10 receives a user instruction to select or specify an analysis method from the user, and transmits the received user instruction to the server 30.

ステップS222の後に、サーバ30は、分析手法の決定(S123)を実行する。
具体的には、サーバ30は、ステップS222においてクライアント装置10から送信されたユーザ指示を受信する。サーバ30は、受信したユーザ指示に基づいて分析手法を決定する。ここで、例えば分析手法をテキストで指定するユーザ指示が得られた場合に、サーバ30は当該テキスト(分析対象、分析の方向性、またはそれらの組み合わせを示すテキストをさらに含み得る)に基づくモデル入力を、自然言語モデルに与えることで、分析手法を決定してもよい。オプションとして、ユーザ指示から分析手法を決定するのに十分な情報が得られなかった場合に、サーバ30は、ステップS121~S123を再実行してもよい。
After step S222, the server 30 determines the analysis method (S123).
Specifically, the server 30 receives the user instruction transmitted from the client device 10 in step S222. The server 30 determines the analysis method based on the received user instruction. Here, for example, when a user instruction is obtained that specifies the analysis method by text, the server 30 may determine the analysis method by providing a model input based on the text (which may further include text indicating the analysis target, the direction of the analysis, or a combination thereof) to the natural language model. Optionally, when sufficient information is not obtained from the user instruction to determine the analysis method, the server 30 may re-execute steps S121 to S123.

ステップS123の後に、サーバ30は、データセットの検査(S124)を実行する。
具体的には、サーバ30は、ステップS100において、または他のタイミングで、ユーザから提供されたデータセットを所定のアルゴリズムにより検査する。アルゴリズムは、ステップS123によって決定された分析手法に応じて異なるように定められてもよい。データセットの検査は、例えば、以下の少なくとも1つを含むことができる。
・データの不備(例えば、欠損値、外れ値、バリエーションが適切でない、粒度が合わない、またはそれらの組み合わせ)の検出
・所定の前処理の適用条件を満たすか否かの判定
After step S123, the server 30 performs an inspection of the data set (S124).
Specifically, the server 30 checks the data set provided by the user with a predetermined algorithm in step S100 or at another timing. The algorithm may be determined differently depending on the analysis method determined in step S123. The check of the data set may include, for example, at least one of the following:
・Detection of data imperfections (e.g., missing values, outliers, inappropriate variation, inappropriate granularity, or a combination of these) ・Determining whether the conditions for applying specified pre-processing are met

ステップS125の後に、サーバ30は、システム応答の生成(S125)を実行する。
具体的には、サーバ30は、ステップS124における検査の結果に基づくシステム応答を生成する。システム応答は、例えば以下の少なくとも1つを含むことができる。
・ステップS124における検査によって発見された、データセットの不備の是正(一例として、欠損値または外れ値を含むサンプルの除去)を促すシステム応答
・所定の前処理の実施を提案するシステム応答(ステップS124において所定の前処理の適用条件を満たすと判定された場合)
・ステップS124における検査によって発見された、データセットの不備を補う別のデータセットを外部ソースから探索し、当該外部ソースから発見されたデータセットの利用を提案するシステム応答
After step S125, the server 30 executes generation of a system response (S125).
Specifically, the server 30 generates a system response based on the results of the check in step S124. The system response may include, for example, at least one of the following:
A system response that prompts correction of imperfections in the data set discovered by the inspection in step S124 (for example, removal of samples including missing values or outliers) A system response that suggests carrying out a predetermined preprocessing (if it is determined in step S124 that the conditions for applying the predetermined preprocessing are met)
A system response that searches for another dataset from an external source to supplement the deficiencies in the dataset discovered by the inspection in step S124 and suggests using the dataset discovered from the external source.

所定の前処理は、例えば、以下の少なくとも1つを含むことができる。
・名寄せ
・欠損値の除外
・特徴量エンジニアリング(例えば、変数の変換、似ている(相関の高い)変数の除外)
ここで、サーバ30は、変数の型、変数間の関係性の仮説などについての推論結果を自然言語モデルから取得し、当該推論結果に基づいて前処理(特に、特徴量エンジニアリング)を行ってもよい。
The predetermined pre-processing may include, for example, at least one of the following:
- Name matching - Removal of missing values - Feature engineering (e.g., variable transformation, removal of similar (highly correlated) variables)
Here, the server 30 may obtain inference results regarding the types of variables, hypotheses about relationships between variables, and the like from the natural language model, and perform preprocessing (particularly, feature engineering) based on the inference results.

ステップ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 transmitted from the server 30 in step S125. The client device 10 displays on the display 21 a screen based on the received system response.

ステップS223の後に、クライアント装置10は、ユーザ指示の受け付け(S224)を実行する。
具体的には、クライアント装置10は、ステップS223において表示した画面に対するユーザからの応答に相当するユーザ指示を受け付ける。クライアント装置10は、受け付けたユーザ指示をサーバ30へ送信する。
After step S223, the client device 10 executes reception of a user instruction (S224).
Specifically, the client device 10 accepts 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:
A user instruction to correct the deficiencies pointed out by the system response (e.g., to edit the dataset) A user instruction to provide (upload) a dataset in which the deficiencies pointed out by the system response have been corrected A user instruction to request the implementation or non-implementation of preprocessing suggested by the system response

ステップS224の後に、サーバ30は、対象データセットの取得(S126)を実行する。
具体的には、サーバ30は、ステップS224においてクライアント装置10から送信されたユーザ指示を受信する。サーバ30は、受信したユーザ指示に応じて、分析に実際に用いるデータセット(以下、「対象データセット」という)を取得する。
After step S224, the server 30 acquires the target data set (S126).
Specifically, in step S224, the server 30 receives the user instruction transmitted from the client device 10. In response to the received user instruction, the server 30 acquires a data set actually used for analysis (hereinafter, referred to as a "target data set").

対象データセットの取得(S126)の第1例として、システム応答により指摘された不備を是正するユーザ指示が得られた場合に、サーバ30は、ステップS124において検査されたデータセットを当該ユーザ指示に従って編集することで対象データセットを取得する。 As a first example of acquiring the target dataset (S126), when a user instruction is obtained to correct a defect indicated by the system response, the server 30 acquires the target dataset by editing the dataset inspected in step S124 in accordance with the user instruction.

対象データセットの取得(S126)の第2例として、システム応答により指摘された不備を是正したデータセットを提供するユーザ指示が得られた場合に、サーバ30は、ユーザ指示によって提供されたデータセットを対象データセットとして取得する。或いは、サーバ30は、ユーザ指示によって提供されたデータセットに対して、データセットの検査(S124)を再実行してもよい。 As a second example of acquiring the target dataset (S126), when a user instruction is received to provide a dataset in which the deficiencies pointed out by the system response have been corrected, the server 30 acquires the dataset provided by the user instruction as the target dataset. Alternatively, the server 30 may re-execute the dataset inspection (S124) on the dataset provided by the user instruction.

対象データセットの取得(S126)の第3例として、システム応答により提案された前処理の実施を要求するユーザ指示が得られた場合に、サーバ30は、ステップS124において検査されたデータセットに対して当該前処理を行うことで対象データセットを取得する。 As a third example of acquiring a target dataset (S126), when a user instruction is received requesting the implementation of preprocessing proposed by the system response, the server 30 acquires the target dataset by performing the preprocessing on the dataset inspected in step S124.

対象データセットの取得(S126)の第4例として、システム応答により提案された前処理の不実施を要求するユーザ指示が得られた場合に、サーバ30は、ステップS124において検査されたデータセットをそのまま対象データセットとして取得する。 As a fourth example of acquiring the target dataset (S126), when a user instruction is received requesting not to perform the preprocessing suggested by the system response, the server 30 acquires the dataset inspected in step S124 as the target dataset as is.

なお、ステップS124における検査によって、データセットに不備が発見されず、かつ当該データセットがいずれの前処理の適用条件も満たさないと判定された場合に、ステップS125~S126は省略可能である。すなわち、サーバ30は、ステップS124において検査されたデータセットがそのまま対象データセットとして取得し得る。 Note that if the inspection in step S124 finds no defects in the dataset and determines that the dataset does not satisfy any of the conditions for applying preprocessing, steps S125 to S126 can be omitted. In other words, the server 30 can acquire the dataset inspected in step S124 as the target dataset as is.

ステップS126の後に、サーバ30は、分析(S127)を実行する。
具体的には、サーバ30は、ステップS126において取得した対象データセットに対して、ステップS123において決定した分析手法による分析を行う。
After step S126, the server 30 performs an analysis (S127).
Specifically, the server 30 performs analysis on 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 the graph by providing a command generated by the natural language model to a data analysis tool. The type of graph (e.g., line graph, bar graph, scatter plot, pie chart, 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 points 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 the suggestions by providing a model input based on the results of the analysis to a natural language model. The suggestions may include, for example, at least one of the following information:
Information that describes the dependent variable, explanatory variables, or a combination of them (i.e., the variables selected according to the objective of the analysis) (e.g., information summarizing the variables, such as the spread of the distribution or typical values)
- Information explaining the relationship between the objective variable and explanatory variables (i.e., the results of the analysis) - Information explaining the relationship between different explanatory variables - Information explaining the statistical treatment of the results of the analysis (for example, if the results of the analysis are not statistically significant, a message stating that the results of this analysis may be due to chance, or if the results of the analysis are statistically significant, a message stating that the results of this analysis are unlikely to be due to chance (i.e., there is a certain degree of reliability)).
- Information explaining statistically significant explanatory variables (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 value of the correlation coefficient between the explanatory variable and the objective variable)
Information that explains the outliers (e.g., where they occur, what their value is, etc.)
- Information explaining important points in the graph - Information recommending the implementation of 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 the topics that may be covered by the suggestions using a natural language model, and generate suggestions only for topics whose scores meet a criterion.

なお、示唆は、例えば予め用意されたテンプレートに、分析の結果(数値)を挿入することで生成されてよい。テンプレートは、統計学的な専門用語またはデータ分析の専門用語を用いることなく分析の結果を記述する文章であることが好ましい。これにより、ユーザの理解を助け、示唆を具体的なビジネスアクションに落とし込めるよう支援することができる。 The suggestions may be generated, for example, by inserting the results of the analysis (numerical values) into a pre-prepared template. The template is preferably a text that describes the results of the analysis without using statistical or data analysis terminology. This can aid the user's understanding and help them translate the 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 results of the analysis generated in step S127. The system response may 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 transmitted 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 of FIG. 11 includes objects J20 to J27.
In the example of FIG. 11, object J20 indicates that the chat progress status is "analysis."

図11の例では、オブジェクトJ21には、オブジェクトJ213a,J213a1,J213bが配置される。 In the example of Figure 11, objects J213a, J213a1, and J213b are placed on object J21.

オブジェクトJ213aは、目的変数である「販売数」と説明変数である「日付」との関係を示す折れ線グラフを表示する。
オブジェクトJ213a1は、オブジェクトJ213aに示されるグラフにおける重要な箇所として、外れ値を示す情報を表示する。
The object J213a displays a line graph showing the relationship between the objective variable "sales volume" and the explanatory variable "date."
Object J213a1 displays information indicating outliers as important points in the graph shown in object J213a.

オブジェクトJ213bは、示唆を表示する。具体的には、オブジェクトJ213bは、「販売数は概ね約100~400個/日で推移しています。年末年始およびGWには外れ値的に販売数が約600個/日まで高まっています。」として、目的変数の要約に関する情報と、外れ値を解説する情報とを含む。 Object J213b displays a suggestion. Specifically, object J213b includes information about a summary of the objective variable and information explaining the outlier, such as "Sales volume generally fluctuates between approximately 100 and 400 units per day. During the New Year holidays and Golden Week, sales volume increases to approximately 600 units per day, which is an outlier."

図12の例では、オブジェクトJ21には、オブジェクトJ214a,J214a1,J214bが配置される。 In the example of Figure 12, objects J214a, J214a1, and J214b are placed on object J21.

オブジェクトJ214aは、目的変数である「販売数」と説明変数である「近隣イベント」との関係を示す箱ひげ図を表示する。 Object J214a displays a box plot showing the relationship between the objective variable "sales volume" and the explanatory variable "neighborhood events."

オブジェクトJ214a1は、オブジェクトJ214aに示されるグラフにおける重要な箇所として、ベースライン(図12の例では、近隣イベント「なし」の販売数の中央値)に対する注目する値(近隣イベント「全国」の販売数の中央値)の差を示す情報を表示する。 Object J214a1 displays information indicating the difference between a value of interest (the median sales volume for the nearby event "nationwide") and the baseline (in the example of Figure 12, the median sales volume for the nearby event "none") as an important point in the graph shown in object J214a.

オブジェクトJ214bは、示唆を表示する。具体的には、オブジェクトJ214bは、「近隣イベント「全国」がある場合、近隣イベント「なし」の場合と比較して、販売数が大きくなる傾向にある。中央値で比較した時、販売数の増加は30個/日」として、目的変数と説明変数との関係を解説する情報を含む。 Object J214b displays a suggestion. Specifically, object J214b includes information explaining the relationship between the objective variable and the explanatory variable, such as "When there is a nearby event 'nationwide,' the number of sales tends to be higher compared to when there is no nearby event. When comparing with the median, the increase in the number of sales is 30 units/day."

なお、サーバ30は、分析(S127)を、複数のフェーズ(例えば、集計、簡易分析、および機械学習など)に亘って段階的に行ってもよい。つまり、クライアント装置10は、ステップS225の後に、分析の結果に対するユーザ指示を受け付け、サーバ30は、さらなる分析(S127)を行い、システム応答の生成(S128)および画面表示(S225)がなされてもよい。この場合に、サーバ30は、グラフおよび示唆の少なくとも一方を、フェーズの遷移に応じて変更し得る。 The server 30 may perform the analysis (S127) in stages across multiple phases (e.g., aggregation, simple analysis, machine learning, etc.). That is, the client device 10 may accept a user instruction regarding the analysis results after step S225, and the server 30 may perform further analysis (S127), generate a system response (S128), and display the screen (S225). In this case, the server 30 may change at least one of the graph and the suggestions in response to the transition of the phase.

(4)小括
以上説明したように、本実施形態のサーバ30は、ユーザとの間で行われるデータ分析に関するチャットの進行状態を管理し、チャットの進行を通じてユーザの分析の目的を特定する。サーバ30は、分析の目的に従って、対象データセットを分析し、対象データセットの分析の結果を出力する。これにより、ユーザは、チャット上で与えられた質問に回答したり、チャット上で要求されたアクションを行ったりするだけで、当該ユーザが必要とする分析の結果を得ることができる。故に、従来のBIツールに多く見られたCUI(Character User Interface)またはGUI(Graphical User Interface)に抵抗があるユーザであっても、技術的・心理的ハードルを感じることなく、関心のある切り口での分析を自由に試すことができる。
(4) Summary As described above, the server 30 of this embodiment manages the progress of chats regarding data analysis conducted 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. This allows the user to obtain the analysis results required by the user simply by answering questions given on the chat or performing actions requested on the chat. Therefore, even if a user is resistant to the CUI (Character User Interface) or GUI (Graphical User Interface), which are often seen in conventional BI tools, they can freely try analysis from the perspective of their interest without feeling any technical or psychological hurdles.

チャットの進行状態は、所定の複数のフェーズを用いて定義されてよい。サーバ30は、複数のフェーズのそれぞれにおいて、ユーザからの入力によらずに、所定の情報を提供し、またはユーザに所定のアクションを促すための応答をチャットに出力してもよい。これにより、ユーザは、チャットを開始する前に、どのような目的で分析を行うべきか、どのような分析手法を選ぶべきか、またはどのようなデータセットを用意するべきか、などの解を事前に用意しておかなくても、チャットを通じてこれらの要素が定まり、必要な分析を行うことができる。 The progress of the chat may be defined using a number of predetermined phases. In each of the multiple 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. In this way, the user does not need to prepare solutions in advance before starting the chat, such as what purpose the analysis should be performed for, what analysis method should be selected, or what data set should be prepared, as these elements can be determined through the chat and the necessary analysis can be performed.

サーバ30は、チャット上でのユーザ入力およびシステム応答に基づいて、分析の目的に適した分析手法を予測し、予測された分析の目的に適した分析手法の情報を出力してもよい。これにより、ユーザは、分析の目的を分析設計に落とし込むスキルが十分でなくとも、意図した目的に沿った分析を行い、必要とする結果を得ることができる。 The server 30 may predict an analysis method suitable for the purpose of the analysis based on user input on the chat and system responses, and output information on the analysis method suitable for the predicted purpose of the analysis. This allows a user to perform an analysis according to the intended purpose and obtain the required results, even if the user does not have sufficient skills to incorporate the purpose of the analysis into the analysis design.

サーバ30は、分析の目的に適した分析手法を予測するための判断材料が不足する場合に、ユーザに質問する、または所定のアクションを促すためのシステム応答をチャットに出力してもよい。これにより、ユーザが必要とする分析手法を適切に予測することができる。 If the server 30 does not have enough information to predict an analysis method suitable for the purpose of the analysis, it may ask the user a question or output a system response to the chat to prompt the user to take a specific action. This allows the server 30 to appropriately predict the analysis method required by the user.

サーバ30は、ユーザによって提供されたデータセットである第1データセットを取得し、分析の目的に基づいて、第1データセットの不備を検出し、検出の結果に応じて、ユーザに第1データセットの不備の是正を促す応答をチャットに出力してもよい。これにより、ユーザによって提供されたデータセットに不備があったり、適切なデータセットが提供されていなかったりして、そのままでは精度の高い分析が得られない場合に、当該不備を是正し、より高精度な分析を行うことができる。 The server 30 may acquire a first dataset, which is a dataset provided by a user, detect any deficiencies in the first dataset based on the purpose of the analysis, and output a response to the chat prompting the user to correct the deficiencies in the first dataset based on the detection result. In this way, when the dataset provided by the user has deficiencies or an appropriate dataset is not provided, and a highly accurate analysis cannot be obtained as is, the deficiencies can be corrected and a more accurate analysis can be performed.

サーバ30は、ユーザによって提供されたデータセットである第1データセットを取得し、第1データセットが予め定められた条件に合致する場合に、当該条件に対応する前処理の実施を提案する応答をチャットに出力してもよい。これにより、ユーザは、データクレンジングなどの前処理に関する知識が十分でなくとも、必要な前処理を選択することができる。換言すれば、前処理の工数を削減できる。 The server 30 may acquire a first dataset, which is a dataset provided by a user, and if the first dataset meets a predetermined condition, output a response to the chat proposing the implementation of preprocessing corresponding to the condition. This allows the user to select the necessary preprocessing even if the user does not have sufficient knowledge about preprocessing such as data cleansing. In other words, the amount of work required for preprocessing can be reduced.

サーバ30は、チャットを表示する領域と、対象データセットの分析の結果を表示する領域とを一画面で、または切替可能に表示するための情報を出力してもよい。これにより、ユーザは、分析の結果と、チャットとを同時に、または交互に参照し、システムに対する次の指示を検討したり、分析の結果に対する理解を深めたりすることができる。 The server 30 may output information for displaying an area for displaying chat and an area for displaying the results of the analysis of the target dataset on a single screen or in a switchable manner. This allows the user to refer to the results of the analysis and the chat simultaneously or alternately, to consider the next instructions to the system, or to deepen their understanding of the results of the analysis.

対象データセットの分析の結果は、当該対象データセットの分析の結果を図示するグラフと、当該対象データセットの分析の結果に基づく示唆を表すテキストとを含んでもよい。これにより、ユーザは、コマンド操作等を行うことなくグラフを確認するとともに、統計学的知識が十分でなくとも分析の結果の要点を理解することができる。つまり、ユーザが分析の結果を主観的に解釈し、客観的に正しいと示せないことを真実であるかのように捉えたり、客観的に正しいと示せることを見落としたりする事態を防止できる。 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 that presents suggestions based on the results of the analysis of the target dataset. This allows the user to check the graph without performing command operations, etc., and to understand the key points of the analysis results even if the user does not have sufficient statistical knowledge. In other words, it is possible to prevent a situation in which the user subjectively interprets the results of the analysis and takes something that cannot be shown to be objectively correct as if it were true, or overlooks something that can be shown to be objectively correct.

示唆は、分析の目的に応じて選定された変数の解説、または2以上の変数間の関係の解説を示してもよい。これにより、ユーザは、分析の対象となった変数(データ項目)についての理解を深めることができる。 The suggestions may provide an explanation of the variables selected based on the purpose of the analysis, or an explanation of the relationships between two or more variables, allowing the user to gain a deeper understanding of the variables (data items) that were the subject of the analysis.

サーバ30は、グラフの種別を、分析の目的と、分析に用いられた分析手法とに応じて決定してもよい。これにより、ユーザがコマンド操作等を行わずとも、分析の結果の確認に適した種別のグラフを確認することができる。 The server 30 may determine the type of graph based on the purpose of the analysis and the analysis method used in the analysis. This allows the user to view a graph type suitable for checking the results of the analysis without having to perform command operations, etc.

サーバ30は、グラフにおいて重要な箇所を分析の目的と、分析に用いられた分析手法とに応じて判定し、グラフおいて重要と判定された箇所を示す情報を出力してもよい。これにより、ユーザは、グラフを適切に解釈するための背景知識が十分でなくとも、当該グラフの要点を理解することができる。 The server 30 may determine important points in the graph according to the purpose of the analysis and the analysis method used in the analysis, and output information indicating the points in the graph that are determined to be important. This allows a user to understand the main points of the graph even if the user does not have sufficient background knowledge to properly interpret the graph.

対象データセットの分析は、複数のフェーズに亘って段階的に行われてもよい。サーバ30は、グラフおよび示唆の少なくとも一方を、フェーズの遷移に応じて変更してもよい。これにより、複雑な分析であっても、段階的に結果が提示されるので、ユーザは、分析の結果を適切に解釈するための背景知識が十分でなくとも、順を追って分析の結果の要点を理解することができる。 The analysis of the target dataset may be performed in stages across multiple phases. The server 30 may change at least one of the graphs and the suggestions in response to the transition of the phases. This allows the results of even complex analyses to be presented in stages, allowing a user to follow along and understand the gist of the results of the analysis, even if the user does not have sufficient background knowledge to properly interpret the results of the analysis.

(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. The display 21 may be integrated with the 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 performed 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, and processing described as being performed by the interaction of multiple devices may be performed by a single device.

上記説明では、各処理において各ステップを特定の順序で実行する例を示したが、各ステップの実行順序は、依存関係がない限りは説明した例に制限されない。例えば、上記説明では、データセットの取得後に分析の目的を設定する例を示した。しかしながら、両者は逆の順序で行われてもよいし、並列的に行われてもよい。 In the above explanation, an example was given in which each step in each process is executed in a specific order, but the execution order of each step is not limited to the example described, as long as there is no dependency. For example, in the above explanation, an example was given in which the purpose of the analysis is set after the data set is acquired. However, the two may be executed 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-mentioned embodiments. Furthermore, the above-mentioned embodiments can be improved or modified in various ways without departing from the spirit of the present invention. Furthermore, the above-mentioned 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)

コンピュータを、
ユーザとの間で行われるデータ分析に関するチャットの進行状態を管理する手段、
前記チャットの進行を通じて前記ユーザの分析の目的を特定する手段、
前記分析の目的に従って、対象データセットを分析する手段、
前記対象データセットの分析の結果を出力する手段、
として機能させるプログラム。
Computer,
A means for managing the progress of chats regarding data analysis conducted between users;
means for identifying a purpose of analysis of the user through the progress of the chat;
means for analyzing a subject data set according to a purpose of said analysis;
means for outputting the results of the analysis of said target dataset;
A program that functions as a
前記チャットの進行状態は、所定の複数のフェーズを用いて定義され、
前記コンピュータを、前記複数のフェーズのそれぞれにおいて、前記ユーザからの入力によらずに、所定の情報を提供し、または前記ユーザに所定のアクションを促すための応答を前記チャットに出力する手段、として機能させる、
請求項1に記載のプログラム。
The progress of the chat is defined using a plurality of predetermined phases;
causing the computer to function as a means for providing predetermined information or outputting a response to the chat for prompting the user to take a predetermined action without an input from the user in each of the plurality of phases;
The program according to claim 1.
前記コンピュータを、
前記チャット上でのユーザ入力およびシステム応答に基づいて、前記分析の目的に適した分析手法を予測する手段、
予測された前記分析の目的に適した分析手法の情報を出力する手段、
として機能させる、
請求項2に記載のプログラム。
The computer,
A means for predicting an analysis method suitable for the purpose of the analysis based on a user input and a system response on the chat;
A means for outputting information on an analytical method suitable for the predicted purpose of the analysis;
To function as
The program according to claim 2.
前記コンピュータを、前記分析の目的に適した分析手法を予測するための判断材料が不足する場合に、前記ユーザに質問する、または所定のアクションを促すためのシステム応答を前記チャットに出力する手段、として機能させる、
請求項3に記載のプログラム。
The computer is caused to function as a means for outputting a system response to the chat to ask the user a question or to prompt the user to take a predetermined action when there is insufficient information for making a judgment to predict an analysis method suitable for the purpose of the analysis.
The program according to claim 3.
前記コンピュータを、
前記ユーザによって提供されたデータセットである第1データセットを取得する手段、
前記分析の目的に基づいて、前記第1データセットの不備を検出する手段、
前記検出の結果に応じて、前記ユーザに前記第1データセットの不備の是正を促す応答を前記チャットに出力する手段、
として機能させる、
請求項2に記載のプログラム。
The computer,
means for obtaining a first data set, the first data set being a data set provided by the user;
means for detecting deficiencies in the first data set based on the objective of the analysis;
means for outputting a response to the chat in response to a result of the detection, the response prompting the user to correct the deficiency in the first data set;
To function as
The program according to claim 2.
前記コンピュータを、
前記ユーザによって提供されたデータセットである第1データセットを取得する手段、
前記第1データセットが予め定められた条件に合致する場合に、当該条件に対応する前処理の実施を提案する応答を前記チャットに出力する手段、
として機能させる、
請求項2に記載のプログラム。
The computer,
means for obtaining a first data set, the first data set being a data set provided by the user;
means for outputting, when the first data set meets a predetermined condition, a response to the chat suggesting the execution of a preprocessing corresponding to the condition;
To function as
The program according to claim 2.
前記出力する手段は、前記チャットを表示する領域と、前記対象データセットの分析の結果を表示する領域とを一画面で、または切替可能に表示するための情報を出力する、
請求項1に記載のプログラム。
The output means outputs information for displaying the area displaying the chat and the area displaying the result of the analysis of the target dataset on a single screen or in a switchable manner.
The program according to claim 1.
前記対象データセットの分析の結果は、当該対象データセットの分析の結果を図示するグラフと、当該対象データセットの分析の結果に基づく示唆を表すテキストとを含む、
請求項7に記載のプログラム。
The results of the analysis of the target dataset include a graph illustrating the results of the analysis of the target dataset and text presenting suggestions based on the results of the analysis of the target dataset.
The program according to claim 7.
前記示唆は、前記分析の目的に応じて選定された変数の解説、または2以上の変数間の関係の解説を示す、
請求項8に記載のプログラム。
The suggestion provides a description of variables selected for the purpose of the analysis, or a description of relationships between two or more variables.
The program according to claim 8.
前記コンピュータを、前記グラフの種別を、前記分析の目的と、前記分析に用いられた分析手法とに応じて決定する手段、として機能させる、
請求項8に記載のプログラム。
causing the computer to function as a means for determining the type of the graph in accordance with a purpose of the analysis and an analysis method used in the analysis;
The program according to claim 8.
前記コンピュータを、
前記グラフにおいて重要な箇所を前記分析の目的と、前記分析に用いられた分析手法とに応じて判定する手段、
前記グラフにおいて重要と判定された箇所を示す情報を出力する手段、
として機能させる、
請求項8に記載のプログラム。
The computer,
a means for determining important points in the graph according to a purpose of the analysis and an analysis method used in the analysis;
means for outputting information indicating points determined to be important in the graph;
To function as
The program according to claim 8.
前記対象データセットの分析は、複数のフェーズに亘って段階的に行われ、
前記出力する手段は、前記グラフおよび前記示唆の少なくとも一方を、前記フェーズの遷移に応じて変更する、
請求項8に記載のプログラム。
The analysis of the subject dataset is conducted in a stepwise manner over multiple phases;
The output means changes at least one of the graph and the suggestion in response to a transition of the phase.
The program according to claim 8.
コンピュータが、
ユーザとの間で行われるデータ分析に関するチャットの進行状態を管理するステップと、
前記チャットの進行を通じて前記ユーザの分析の目的を特定するステップと、
前記分析の目的に従って、対象データセットを分析するステップと、
前記対象データセットの分析の結果を出力するステップと
を実行する方法
The computer
Managing the progress of a chat regarding data analysis conducted with a user;
Identifying an objective of the user's analysis through the progress of the chat;
Analysing a target dataset according to a goal of said analysis;
and outputting the results of the analysis of the target dataset.
ユーザとの間で行われるデータ分析に関するチャットの進行状態を管理する手段と、
前記チャットの進行を通じて前記ユーザの分析の目的を特定する手段と、
前記分析の目的に従って、対象データセットを分析する手段と、
前記対象データセットの分析の結果を出力する手段と
を具備する、情報処理装置。
A means for managing a progress state of a chat regarding data analysis conducted with a user;
A means for identifying an objective of the user's analysis through the progress of the chat;
means for analyzing a subject data set according to a purpose of said analysis;
and means for outputting a result of the analysis of the target data set.
複数のコンピュータによって構成されるシステムであって、
ユーザとの間で行われるデータ分析に関するチャットの進行状態を管理する手段と、
前記チャットの進行を通じて前記ユーザの分析の目的を特定する手段と、
前記分析の目的に従って、対象データセットを分析する手段と、
前記対象データセットの分析の結果を出力する手段と
を具備する、システム。
A system composed of a plurality of computers,
A means for managing a progress state of a chat regarding data analysis conducted with a user;
A means for identifying an objective of the user's analysis through the progress of the chat;
means for analyzing a subject data set according to a purpose of said analysis;
and means for outputting results of the analysis of the target dataset.
JP2023177238A 2023-07-14 2023-10-13 Information processing device, method, program, and system Pending JP2025013095A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023177238A JP2025013095A (en) 2023-07-14 2023-10-13 Information processing device, method, program, and system

Applications Claiming Priority (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

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2023115912A Division JP7369320B1 (en) 2023-07-14 2023-07-14 Information processing device, method, program, and system

Publications (1)

Publication Number Publication Date
JP2025013095A true JP2025013095A (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 Before (1)

Application Number Title Priority Date Filing Date
JP2023115912A Active JP7369320B1 (en) 2023-07-14 2023-07-14 Information processing device, method, program, and system

Country Status (1)

Country Link
JP (2) JP7369320B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
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

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3953120B2 (en) * 1995-11-24 2007-08-08 株式会社ソフィア Amusement park management analysis equipment
JP4005820B2 (en) * 2002-02-21 2007-11-14 株式会社東芝 Electronic merchandise distribution system, electronic merchandise distribution method and program
JP6472573B2 (en) * 2016-03-28 2019-02-20 三菱電機株式会社 Data analysis method candidate decision device
EP3267374A1 (en) * 2016-07-04 2018-01-10 Mu Sigma Business Solutions Pvt. Ltd. Guided analytics system and method
US10951554B1 (en) * 2019-09-12 2021-03-16 Genesys Telecommunications Laboratories, Inc. Systems and methods facilitating bot communications
JP7053077B1 (en) * 2021-04-07 2022-04-12 ナウキャスティング.エーアイ インコーポレイテッド Methods and systems to support single-user action decision making
US20230081797A1 (en) * 2021-09-15 2023-03-16 Deepspatial INC. Computer implemented method and system for retail management and optimization
JP2023067771A (en) * 2021-10-31 2023-05-16 株式会社Datafluct Information processing system, program, and information processing method

Also Published As

Publication number Publication date
JP7369320B1 (en) 2023-10-25
JP2025012800A (en) 2025-01-24

Similar Documents

Publication Publication Date Title
Kula et al. Factors affecting on-time delivery in large-scale agile software development
US12229501B2 (en) Populating values in a spreadsheet using semantic cues
JP2025013095A (en) Information processing device, method, program, and system
CN109923535B (en) Insight Objects as Portable User Application Objects
US11232134B2 (en) Customized visualization based intelligence augmentation
US20170076321A1 (en) Predictive analytics in an automated sales and marketing platform
US11886779B2 (en) Accelerated simulation setup process using prior knowledge extraction for problem matching
US20210035132A1 (en) Predicting digital survey response quality and generating suggestions to digital surveys
US10586237B2 (en) Method, apparatus, and computer-readable media for customer interaction semantic annotation and analytics
JP2006202304A (en) Computer resource automatic start system
US10042944B2 (en) Suggested keywords
Bodie et al. Revisiting the Listening Styles Profile (LSP-16): A confirmatory factor analytic approach to scale validation and reliability estimation
WO2018079225A1 (en) Automatic prediction system, automatic prediction method and automatic prediction program
US20220309428A1 (en) Generating and presenting an interactive audit report
US20220005083A1 (en) Remote Assistance Systems And Methods
CN105279600B (en) Mark in Working procedure management system extends adding method
Ntoa et al. UXAmI observer: an automated user experience evaluation tool for ambient intelligence environments
US12174865B2 (en) Information processing apparatus, information processing system, and information processing method
EP3992876A1 (en) Integration navigator and intelligent monitoring for living systems
Classen et al. Mixed methods approach explaining process of an older driver safety systematic literature review
EP4099250B1 (en) Method and device for determining quality of user experience of products
US20190080002A1 (en) Methods and systems to estimate recall while screening an ordered list of bibliographic references
Power et al. Comparing the comprehensiveness of three expert inspection methodologies for detecting errors in interactive systems
JP7684529B1 (en) Information processing system, information processing method, and program
Cuff et al. Statistical analysis of surgical pathology data using the R program