JP7246958B2 - データ分析装置及びデータ分析方法 - Google Patents

データ分析装置及びデータ分析方法 Download PDF

Info

Publication number
JP7246958B2
JP7246958B2 JP2019023873A JP2019023873A JP7246958B2 JP 7246958 B2 JP7246958 B2 JP 7246958B2 JP 2019023873 A JP2019023873 A JP 2019023873A JP 2019023873 A JP2019023873 A JP 2019023873A JP 7246958 B2 JP7246958 B2 JP 7246958B2
Authority
JP
Japan
Prior art keywords
unit
attribute
data
aggregation
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019023873A
Other languages
English (en)
Other versions
JP2020135055A (ja
Inventor
大河 能見
良則 中野
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.)
Keyence Corp
Original Assignee
Keyence Corp
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 Keyence Corp filed Critical Keyence Corp
Priority to JP2019023873A priority Critical patent/JP7246958B2/ja
Publication of JP2020135055A publication Critical patent/JP2020135055A/ja
Application granted granted Critical
Publication of JP7246958B2 publication Critical patent/JP7246958B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、データ分析装置及びデータ分析方法に関する。
従来より、大量の情報の中からこれまで未知であった有用な知見を得ようと試みる、いわゆるデータマイニングが知られている。一般的なデータマイニングの手法では、前処理ステップ、特徴抽出ステップ、モデル学習ステップ、後処理ステップの各ステップを順に実行する。前処理ステップでは、分析に必要なデータを収集し、分析の効果を高めるために、データの中から不要なノイズを取り除いたり、欠損した項目を埋めるといった作業を行う。この作業はETL:Extract/Transform/Loadと呼ばれている。特徴抽出ステップでは、元データに存在する特徴量を加工し、分析により役立つ新たな特徴量を生成する。モデル学習ステップでは、前処理ステップ及び特徴抽出ステップで準備されたデータを機械学習アルゴリズムに入力し、分析結果を得る。後処理ステップでは、モデル学習ステップで得られた分析結果を外部の機器に出力したり、分析結果に基づいてレポートを作成するといった処理を行う。
ところで、最適な特徴量の設計には、熟練の分析者による試行錯誤が必要で、データ分析に長い時間を要する原因となっていた。このことに対し、例えば、非特許文献1に開示されているように、新たな特徴量をデータから自動的に生成する技術が知られている。この文献に開示されている技術では、事前に定義された一連の演算子(+,-,×,÷など)を元の特徴量に対して網羅的に適用し、大量の新たな特徴量を自動的に生成することができる。
「A Randomized Exhaustive Propositionalization Approach for Molecule Classification」2010年5月26日
ところで、予測モデルを使ったデータ分析を行う際には、目的変数を指定する必要があるが、目的変数が属性に含まれていない場合、SQLのような高度なプログラミングを用いてあらかじめ集約値を算出しておく必要があり、データ処理に習熟していない者が自由に分析を行うことが難しかった。
そこで、目的変数候補をシステム上で自動的に生成することが考えられるが、システムが生成する以上、使用者にとって不必要な目的変数候補が生成されたり、多数の目的変数候補が生成されてしまい、それらが全て使用者に提示されると、目的変数候補を選択するのに時間がかかるとともに、選択自体が困難になる。
本発明は、かかる点に鑑みてなされたものであり、その目的とするところは、目的変数候補を自動的に生成する場合に、使用者が目的変数候補を選択しやすくすることにある。
上記目的を達成するために、第1の発明は、分析対象データを分析するデータ分析装置において、複数の属性を含む分析対象データの入力を受け付けるデータ入力部と、少なくとも1つの属性を集約対象の属性とし、少なくとも1つの他の属性を集約単位の属性とし、集約単位の属性の属性値毎に、集約対象の属性の属性値を、予め用意された集約関数に基づいて集約し、新たな目的変数候補を生成する目的変数候補生成部と、使用者からのキーワード情報の入力を受け付けるキーワード入力部と、前記キーワード入力部により使用者が入力したキーワード情報に関連する目的変数候補を表示する表示部と、前記表示部に表示された目的変数候補の中から、使用者による目的変数の選択を受け付ける選択受付部と、前記選択受付部により選択された目的変数を予測するための予測モデルを生成する分析部とを備えることを特徴とする。
この構成によれば、複数の属性を含む分析対象データが入力されると、少なくとも1つの属性を集約対象の属性とし、少なくとも1つの他の属性を集約単位の属性とし、集約単位の属性の属性値毎に、集約対象の属性の属性値を、予め用意された集約関数に基づいて集約し、新たな目的変数候補が自動的に生成される。使用者がキーワード情報を入力すると、キーワード情報に関連する目的変数候補が表示部に表示されるので、目的変数候補の選択が容易に行えるようになる。使用者が目的変数を選択すると、目的変数を予測するための予測モデルが生成される。キーワード情報は、1つであってもよいし、2つ以上であってもよい。キーワード情報が複数入力可能な場合には、AND検索機能、OR検索機能によって目的変数候補を自動的に抽出することもできる。
第2の発明は、分析対象データを分析するデータ分析装置において、複数の属性を含む分析対象データの入力を受け付けるデータ入力部と、少なくとも1つの属性を集約対象の属性とし、少なくとも1つの他の属性を集約単位の属性とし、集約単位の属性の属性値毎に、集約対象の属性の属性値を、予め用意された集約関数に基づいて集約し、新たな目的変数候補を生成する目的変数候補生成部と、集約対象又は集約単位の属性に関する使用者からの選択入力を受け付ける属性選択部と、前記属性選択部により使用者が入力した属性を集約対象又は集約単位として生成された目的変数候補を表示する表示部と、前記表示部に表示された目的変数候補の中から、使用者による目的変数の選択を受け付ける選択受付部と、前記選択受付部により選択された目的変数を予測するための予測モデルを生成する分析部とを備えることを特徴とする。
この構成によれば、複数の属性を含む分析対象データが入力されると、少なくとも1つの属性を集約対象の属性とし、少なくとも1つの他の属性を集約単位の属性とし、集約単位の属性の属性値毎に、集約対象の属性の属性値を、予め用意された集約関数に基づいて集約し、新たな目的変数候補が自動的に生成される。一方、使用者が集約対象又は集約単位の属性に関する入力を行うと、入力した属性を集約対象又は集約単位として生成された目的変数候補が表示部に表示されるので、目的変数候補の選択が容易に行えるようになる。使用者が目的変数を選択すると、目的変数を予測するための予測モデルが生成される。
目的変数候補生成部による目的変数候補の生成と、使用者からの集約対象又は集約単位の属性に関する入力の受け付けとは、どちらが先であってもよい。目的変数候補生成部による目的変数候補の生成後、使用者からの集約対象又は集約単位の属性に関する入力の受け付けた場合には、既に生成されている目的変数候補の中から、使用者が入力した属性を集約対象又は集約単位として生成されている目的変数候補を抽出して表示部に表示させることができる。一方、目的変数候補生成部による目的変数候補の生成前に、使用者からの集約対象又は集約単位の属性に関する入力の受け付けた場合には、使用者が入力した属性を集約対象又は集約単位として目的変数候補生成部が目的変数候補を生成し、生成された目的変数候補を表示部に表示させればよい。
第3の発明は、前記目的変数候補生成部は、目的変数候補のリストを生成し、前記キーワード入力部により使用者が入力したキーワード情報に関連する目的変数候補を前記リスト内から抽出するように構成され、前記表示部は、前記目的変数候補生成部が前記リスト内から抽出した目的変数候補を表示するように構成されていることを特徴とする。
この構成によれば、目的変数候補生成部が目的変数候補のリストを予め生成しているので、キーワード情報に関連する目的変数候補の抽出が素早く行われ、抽出結果が表示部に即時に表示される。
第4の発明は、目的変数候補の有用性をあらわすスコアを計算するスコア計算部を備え、前記目的変数候補生成部は、前記キーワード入力部により使用者が入力したキーワード情報に関連する複数の目的変数候補を抽出するように構成され、前記表示部は、前記目的変数候補生成部が抽出した複数の目的変数候補を、前記スコア計算部で計算されたスコアが高い順に表示するように構成されていることを特徴とする。
この構成によれば、多数の目的変数候補が生成された場合に、使用者にとって有用性の高い順で目的変数候補のみを表示部に表示させることができるので、使用者による目的変数の選択が容易に行えるようになる。スコアが所定以上の目的変数候補を、上位のものからランキング形式で表示可能にすることもできる。また、スコアが所定以上の目的変数候補の表示可能数をたとえば5や10のように制限してもよい。
第5の発明は、前記スコア計算部は、生成される目的変数の行数に基づいてスコアを計算するように構成されていることを特徴とする。
すなわち、例えば、分析対象データに性別が含まれている場合、性別については「男」と「女」の2行した目的変数が生成されないことになる。目的変数の行数が少ないと、精度の良い分析ができないので、このような場合には、目的変数候補の有用性をあらわすスコアが低くなるようにする。一方、目的変数の行数が多い場合には、精度の良い分析ができると考えられるので、目的変数候補の有用性をあらわすスコアが高くなるようにする。つまり、目的変数の行数に応じてスコアを変更することができる。
第6の発明は、前記スコア計算部は、生成される目的変数の分散に基づいてスコアを計算するように構成されていることを特徴とする。
すなわち、例えば目的変数の分散が0である場合のように、目的変数の値が全て同じ値であると、目的変数間に違いがないということであり、意味のある分析を行うことができない。このような場合には、目的変数候補の有用性をあらわすスコアが低くなるようにする。一方、目的変数の分散が大きい場合には、目的変数の値に差があるということであり、意味のある分析を行うことが可能になる。この場合には、目的変数候補の有用性をあらわすスコアが高くなるようにする。つまり、目的変数の分散に応じてスコアを変更することができる。
第7の発明は、前記表示部は、前記分析部による予測モデルの生成前に、分析結果の一部のみを表示するプレビュー表示を可能に構成されていることを特徴とする。
この構成によれば、使用者が意図した分析内容になっているか否かを分析の実行前に確認することができる。プレビュー表示では、一部のデータだけを用いて分析結果の計算を行うようにしてもよい。
第8の発明は、分析対象データを分析するデータ分析方法において、複数の属性を含む分析対象データの入力を受け付けるデータ入力ステップと、少なくとも1つの属性を集約対象の属性とし、少なくとも1つの他の属性を集約単位の属性とし、集約単位の属性の属性値毎に、集約対象の属性の属性値を、予め用意された集約関数に基づいて集約し、新たな目的変数候補を生成する目的変数候補生成ステップと、使用者からのキーワード情報の入力を受け付けるキーワード入力ステップと、前記キーワード入力ステップにより使用者が入力したキーワード情報に関連する目的変数候補を表示する表示ステップと、前記表示ステップで表示された目的変数候補の中から、使用者による目的変数の選択を受け付ける選択受付ステップと、前記選択受付ステップで選択された目的変数を予測するための予測モデルを生成する分析ステップとを備えることを特徴とするデータ分析方法である。
第9の発明は、分析対象データを分析するデータ分析方法において、複数の属性を含む分析対象データの入力を受け付けるデータ入力ステップと、少なくとも1つの属性を集約対象の属性とし、少なくとも1つの他の属性を集約単位の属性とし、集約単位の属性の属性値毎に、集約対象の属性の属性値を、予め用意された集約関数に基づいて集約し、新たな目的変数候補を生成する目的変数候補生成ステップと、集約対象又は集約単位の属性に関する使用者からの選択入力を受け付ける属性選択ステップと、前記属性選択ステップで使用者が入力した属性を集約対象又は集約単位として生成された目的変数候補を表示する表示ステップと、前記表示ステップで表示された目的変数候補の中から、使用者による目的変数の選択を受け付ける選択受付ステップと、前記選択受付ステップで選択された目的変数を予測するための予測モデルを生成する分析ステップとを備えることを特徴とするデータ分析方法である。
本発明によれば、目的変数候補生成部により目的変数候補を自動的に生成することができ、目的変数候補をキーワード情報や属性によって抽出して表示部に表示させることができる。これにより、使用者が目的変数候補を選択しやすくすることができる。
本発明の実施形態に係るデータ分析装置の概略構成を示す図である。 データ分析装置のブロック図である。 データ分析の手順を示すフローチャートである。 データ入力用ユーザーインターフェースを示す図である。 データ分析装置の動作を示すフローチャートである。 リレーション定義用ユーザーインターフェースを示す図である。 テーブル間のリレーションの一例を示す図である。 3種類の多重度を説明する図である。 元の属性値を目的変数候補とする場合の説明図である。 元の属性値をフラグに変換する場合の説明図である。 元の属性値を、別の属性値のグループごとに集約した場合の説明図である。 元の属性値を、別の属性値のグループごとに集約して生成した目的変数候補を示す図である。 テーブルを、別のテーブルのグループごとに集約した場合の説明図である。 テーブルを、別のテーブルのグループごとに集約して生成した目的変数候補を示す図である。 目的変数候補生成部により自動的に生成された目的変数候補を示す図である。 キーワード入力用ユーザーインターフェースであり、図16Aはキーワードが1つ入力された場合、図16Bはキーワードが2つ入力された場合を示す。 編集用ユーザーインターフェースを示す図である。 プレビュー表示ユーザーインターフェースを示す図である。 目的変数の集計に使用した期間より前のデータだけを使って特徴量を生成した例を示す図である。 結果表示用ユーザーインターフェースを示す図である。 絞り込み用ユーザーインターフェースを示す図であり、図21Aは属性の選択を受け付ける状態を示し、図21Bは選択した目的変数をスコア順に表示した状態を示し、図21Cは、目的変数に別名を指定した状態を示す。 第1例に係る内部データの保持方法を示す図である。 第2例に係る内部データの保持方法を示す図である。 第3例に係る内部データの保持方法を示す図である。
以下、本発明の実施形態を図面に基づいて詳細に説明する。尚、以下の好ましい実施形態の説明は、本質的に例示に過ぎず、本発明、その適用物或いはその用途を制限することを意図するものではない。
図1は、本発明の実施形態に係るデータ分析装置1の概略構成を示す図であり、図2は、データ分析装置1のブロック図である。このデータ分析装置1は、分析対象データを分析する装置であり、このデータ分析装置1を使用することで、データ分析方法を実行することができる。データ分析装置1及びデータ分析方法は、例えば、大量の情報の中からこれまで未知であった有用な知見を得ようと試みる、いわゆるデータマイニングを行う際に使用することができる。
(データ分析手順)
一般的なデータ分析の手順について図3に示すフローチャートに基づいて説明する。開始後、ステップSA1では前処理ステップを実行する。前処理ステップでは、分析に必要なデータ、すなわち分析対象データを収集し、分析の効果を高めるために、データの中から不要なノイズを取り除いたり、欠損した項目を埋めるといった作業を行う。この作業はETL:Extract/Transform/Loadと呼ばれている。ステップSA2では特徴抽出ステップを実行する。特徴抽出ステップでは、元データに存在する特徴量を加工し、分析により役立つ新たな特徴量を生成する。ステップSA3ではモデル学習ステップを実行する。モデル学習ステップでは、前処理ステップ及び特徴抽出ステップで準備されたデータを機械学習アルゴリズムに入力し、分析結果を得る。ステップSA4では後処理ステップを実行する。後処理ステップでは、モデル学習ステップで得られた分析結果を外部の機器に出力したり、分析結果に基づいてレポートを作成するといった処理を行う。
(データ分析装置1の全体構成)
図1及び図2に示すように、データ分析装置1は、装置本体2と、モニタ3と、キーボード4と、マウス5とを備えており、モニタ3、キーボード4及びマウス5は、装置本体2に接続されている。例えば汎用のパーソナルコンピュータに、後述する制御内容及び処理内容を実行可能なプログラムをインストールすることによってデータ分析装置1とすることができ、また、前記プログラムがインストールされた専用のハードウェアでデータ分析装置1を構成することもできる。たとえば、使用者のパーソナルコンピュータに前記プログラムを直接インストールすることで、当該パーソナルコンピュータをデータ分析装置1として利用する形態、サーバーに前記プログラムをインストールしてデータ分析装置1を構築し、各使用者は各自のパーソナルコンピュータのブラウザからネットワーク経由でデータ分析装置1にアクセスして使用する形態、クラウド上に置かれたサービスであり、各使用者は各自のパーソナルコンピュータのブラウザからクラウド上のデータ分析装置1にアクセスする形態のいずれの形態であってもよい。
また、装置本体2とモニタ3とは一体化されていてもよいし、装置本体2の一部または装置本体2が実行する機能の一部がモニタ3に内蔵されていてもよい。
データ分析装置1は、通信モジュール(図示せず)を内蔵しており、外部との通信が可能に構成されている。これにより、例えばインターネット回線等を介して外部サーバーからのデータのダウンロード等が可能になる。
また、キーボード4及びマウス5は、データ分析装置1を操作する操作手段であるとともに、各種情報を入力する入力手段、選択操作を行う選択手段等でもある。キーボード4及びマウス5に加えて、またはキーボード4及びマウス5に変えて、タッチパネル式の入力装置、音声入力装置、ペン型の入力装置等を使用することもできる。
(モニタ3の構成)
図1に示すモニタ3は、例えば有機ELディスプレイや液晶ディスプレイ等からなるものであり、それ単体で表示部と呼ぶこともできるし、モニタ3と、図2に示す表示制御部3aとを合わせて表示部と呼ぶこともできる。表示制御部3aは、モニタ3に内蔵されていてもよいし、装置本体10に内蔵されていてもよい。表示制御部3aは、モニタ3に対して画像を表示させる表示用DSPなどから構成される。表示制御部3aには、画像を表示させる際に画像データを一時記憶するVRAMなどのビデオメモリが含まれていてもよい。表示制御部3aは、後述する主制御部11のCPU11aから送られてきた表示指令(表示コマンド)に基づいて、モニタ3に対して所定の画像を表示させるための制御信号を送信する。たとえば、後述するような各種ユーザーインターフェースの他、アイコン、キーボード4やマウス5を用いた使用者の操作内容をモニタ3に表示させるための制御信号も送信する。また、マウス5で操作可能なポインタ等もモニタ3に表示することができるようになっている。
モニタ3をタッチ操作パネル型モニタとすることで、モニタ3に各種情報の入力機能、データ分析装置1の操作機能、選択操作機能を持たせることができる。
(装置本体2の全体構成)
図1に示す装置本体2は、制御ユニット10と、記憶部30とを備えている。記憶部30は、ハードディスクドライブ、ソリッドステートドライブ(SSD)等で構成されている。記憶部30は、制御ユニット10に接続されており、制御ユニット10によって制御され、各種データを保存しておくことができるとともに、保存しておいたデータを読み出すこともできるようになっている。
(制御ユニット10)
制御ユニット10は、具体的に図示しないが、MPU、システムLSI、DSPや専用ハードウェア等で構成することができる。制御ユニット10は、後述するように様々な機能を搭載しているが、これらは論理回路によって実現されていてもよいし、ソフトウェアを実行することによって実現されていてもよい。
図2に示すように、制御ユニット10は、主制御部11と、データ入力部12と、型認識部13と、目的変数候補生成部14と、特徴量自動生成部15と、スコア計算部16と、キーワード入力部18と、属性選択部19と、選択受付部20と、分析部21とを備えている。制御ユニット10の各部は、上述したように各部分に分けて記載しているが、同じ部分が複数種の処理を実行するように構成してもよいし、更に細かく分けて複数の部分を連携させて1つの処理を実行するように構成してもよい。上記各ハードウェアは、バスBなどの電気的な通信路(配線)を介し、必要に応じて双方向通信可能または一方向通信可能に接続されている。
主制御部11は、各種プログラムに基づき数値計算、演算処理、各種情報処理を行うとともに、ハードウェア各部の制御を行う。主制御部11は、中央演算処理装置として機能するCPU11aと、主制御部11が各種プログラムを実行する際のワークエリアとして機能するRAM等のワークメモリ11bと、起動プログラムや初期化プログラム等が格納されたROM、フラッシュROMまたはEEPROM等のプログラムメモリ11cとを備えている。
データ入力部12は、複数の属性を含む分析対象データの入力を受け付ける部分であり、このデータ入力部12によって図5に示すフローチャートのステップSB1の処理、即ちデータ入力ステップを実行することが可能になっている。ここでは、入力される分析対象データが1つ以上の表形式のデータ(テーブル)であることを想定している。データ入力部12は、図4に示すデータ入力用ユーザーインターフェース50を生成してモニタ3に表示させるとともに、データ入力用ユーザーインターフェース50上でなされた使用者の操作を受け付ける。使用者の操作とは、たとえば、キーボード4の操作や、マウス5の操作(ボタンクリック、ドラッグ&ドロップ、ホイールの回転等を含む)、タッチパネル式の入力装置へのタップ操作、ドラッグ操作等があり、これらのいずれの操作であってもよい。以下、同様である。
ここで、分析対象データは、複数の属性を含むデータである。属性とは、分析対象データに含まれる名称と型のペアからなる項目のことであり、たとえばユーザID、年齢、性別などが一般的に存在する。属性の型とは、属性がどのような値を取り得るかを定義する分類であり、分類の仕方はシステムによって異なるが、たとえば一般的なリレーショナルデータベースでは、INT型(整数)、REAL型(実数)、DATE型(日付)、VARCHAR型(文字列)などのデータ型のうち、いずれかが属性ごとに割り当てられている。実際のデータベースではこれら以外にも多種多様な型が使用されている。INT型の例は、年齢、購入額があり、REAL型の例は、金利があり、DATE型の例は、生年月日があり、VARCHAR型の例は、ユーザ名、メールアドレス等がある。
データ分析を行う際には、データ分析を行うデータ分析装置1(或いはプログラム)上にリレーショナルデータベースから分析対象データを取り込んだ後、図5示すフローチャートのステップSB1aにおいて、そのデータ分析装置1上での属性の型を定義する。本例では、整数、実数を含む属性の数値型と、年月日などの時間情報を含む属性の日付型と、数値型及び日付型のいずれでもない属性のカテゴリ型の3種類の型をデータ分析装置1上の型として定義する。データ分析装置1上で属性の型を定義する際には、リレーショナルデータベースの型から、予め決定されたルールに基づいてデータ分析装置1が自動で定義するようにしてもよいし、データ分析装置1の使用者が定義してもよい。また、データ分析装置1が自動で定義した後、データ分析装置1の使用者が確認し、必要に応じて修正可能にしてもよい。
つまり、分析対象データに含まれている属性の型は、数値であることを示す数値型、日付であることを示す日付型、及びそれら以外のカテゴリであることを示すカテゴリ型がある。図2に示す型認識部13は、分析対象データに含まれている属性の型を判別することで、データ入力部12に入力された分析対象データの各属性の属性値の型が、数値であることを示す数値型であるか、カテゴリであることを示すカテゴリ型であるかを認識するように構成されており、図5示すフローチャートのステップSB1bの型認識ステップを実行する部分である。型認識部13により、分析対象データの各属性の属性値の型が日付型であるかを認識することもできる。型認識部13で認識された結果は、目的変数候補生成部14に出力される。型認識部13で認識された結果を記憶部30に記憶させておいてもよい。この場合、目的変数候補生成部14は、型認識部13による認識結果を記憶部30から読み込むことになる。
また、分析対象データの一部が欠損していてもよく、その場合は、図5示すフローチャートのステップSB1cに示すように、欠損した項目を埋める作業(ETL処理)を行えばよい。ETL処理の詳細は後述する。
図4に示すデータ入力用ユーザーインターフェース50には、ファイル選択ボタン50aと、データベース選択ボタン50bと、URL指定ボタン50cと、データベース表示領域50dと、読み込み開始ボタン50eとが設けられている。各ボタンの配置は自由に設定できる。
例えば、分析対象データを格納したファイルが外部記憶装置や記憶部30に保存されていて、デスクトップ上や、開いた状態のフォルダにある場合には、使用者が当該ファイルをデータベース表示領域50dへドラッグ&ドロップ操作する。これにより、分析対象データを格納したファイル名がデータベース表示領域50dに表示される。その後、読み込み開始ボタン50eを押すと、データベース表示領域50dに表示されているファイルが記憶部30の所定領域に読み込まれて保存される。
分析対象データがデータベース上にある場合には、使用者がデータベース選択ボタン50bを押す。データベース選択ボタン50bが押されると、データベースに接続するための設定画面(図示せず)を表示し、テーブル名の入力や必要に応じてパスワードの入力を使用者に促す。その後、読み込み開始ボタン50eを押すと、分析対象データが所定のファイル形式で記憶部30の所定領域に読み込まれて保存されるとともに、分析対象データを格納したファイル名がデータベース表示領域50dに表示される。
分析対象データがインターネットやサーバー上にある場合には、使用者がURL指定ボタン50cを押す。URL指定ボタン50cが押されると、URL入力画面(図示せず)を表示し、URLの入力を使用者に促す。その後、読み込み開始ボタン50eを押すと、分析対象データがダウンロードされて所定のファイル形式で記憶部30の所定領域に読み込まれて保存されるとともに、分析対象データを格納したファイル名がデータベース表示領域50dに表示される。
分析対象データを格納したファイルは、1つのみであってもよいし、複数であってもよい。この図4では、「transaction」、「master」の2つのファイルにそれぞれ格納されている分析対象データを読み込んだ場合を示している。上述した3つの方法以外の方法でファイルを読み込んでもよい。上記ファイル形式は、csv形式であるが、これ以外の形式、たとえばリレーショナルデータベース上のテーブルであってもよい。
分析対象データを読み込んだ後、分析用の型(例えば数値型、カテゴリ型、日付型)を属性ごとに設定する。この型情報は、たとえばデータベース上で「INT型の場合は数値型とする」というように、リレーショナルデータベース上の型から類推してもよいし、使用者からの型の指定を受け付けるようにしてもよい。
分析対象データを読み込んだ後、必要に応じて、分析対象データの欠損値の除去、及び分析対象データの穴埋めを行うようにしてもよい。これは使用者が行ってもよいし、データ分析装置1が実行可能な部分についてはデータ分析装置1が行うようにしてもよい。たとえば、任意の欠損値を除去したり、欠損した項目を追加する欠損値除去及び穴埋め処理、既存の値を別の値に置き換える置換処理、任意の列を削除する削除処理、任意の列を追加する追加処理、セルに任意の数式を入力する数式入力処理、任意の列に所定の情報を追加する情報追加処理等を行うことができる。このような処理により、分析対象データを加工することができる。従って、データ分析装置1ではETL処理を行うことができ、ETL処理を行うことで分析対象データを分析により適した形に変形することができる。これにより、分析結果の精度をより一層高めることができる。ETL処理が完了したら、図示しないがユーザーインターフェース上の完了ボタン等を操作することで、次のステップに進むことができる。ETL処理を行わずに、次のステップに進むこともできる。
以上が図5に示すフローチャートのステップSB1で実行される処理である。その後、ステップSB2に進み、テーブル間のリレーションを定義する。このテーブル間のリレーションの定義は、データ分析装置1の使用者が実行する。制御ユニット10は、分析対象データの読み込み、または読み込み後の分析対象データのETL処理が完了したことを検出すると、図6に示すリレーション定義用ユーザーインターフェース51を生成してモニタ3に表示させるとともに、リレーション定義用ユーザーインターフェース51上でなされた使用者の操作を受け付ける。
リレーション定義用ユーザーインターフェース51には、組となる2つのテーブルの名称をそれぞれ表示する第1テーブル名表示領域51a及び第2テーブル名表示領域51bとが設けられている。さらに、リレーション定義用ユーザーインターフェース51には、第1テーブル名表示領域51aに表示されたテーブルに含まれる複数の属性の中から1つを選択して表示する第1属性選択領域51cと、第2テーブル名表示領域51bに表示されたテーブルに含まれる複数の属性の中から1つを選択して表示する第2属性選択領域51dとが設けられている。第1属性選択領域51c及び第2属性選択領域51dは、例えばプルダウンメニュー形式で構成することができ、各々をクリックすることで、各テーブルに含まれる複数の属性の名称を一覧表示し、その中から所望の属性を選択することが可能になっている。選択された属性は、使用者によって指定された属性であり、指定された属性の名称のみが第1属性選択領域51c及び第2属性選択領域51dに表示され、指定されなかった属性の名称は表示されない。
テーブル間のリレーションの定義は、リレーション定義用ユーザーインターフェース51に一例を示しているように、テーブルの組(顧客テーブルと注文テーブル)に対してそれぞれ属性の名称を指定することで行われる。図7に示すように、指定した属性の値が一致する行同士が、対応しているとみなされる。図7に示す例では、「顧客テーブル」の「user001」が「注文テーブル」の「user001」に対応し、「顧客テーブル」の「user002」が「注文テーブル」の「user002」に対応し、「顧客テーブル」の「user004」が「注文テーブル」の「user004」に対応している例を関連線Lで示している。
リレーショナルデータベースの場合、データベースの側で既にテーブルの属性同士の対応関係が定義されていることがある。このデータベース側で定義される対応関係を外部キー制約と呼ぶ。この外部キー制約がある場合、設定済の対応関係を上記ステップSB1においてデータ分析装置1側で読み込み、テーブル間のリレーションの定義をデータ分析装置1側で自動的に設定してもよい。
以上のようにしてテーブル間のリレーションが定義されると、データ分析装置1側ではそれぞれの対応関係について多重度を自動判別する。多重度の自動判別は、制御ユニット10で行われる。図8に示すように、多重度には1:1型、1:N型、N:N型の3種類があり、テーブルの内容を参照することで判別することができる。1:1型は、一方のテーブルの1行が他方のテーブルの1行に対応している関係である。1:N型は、一方のテーブルの1行に他方のテーブルが複数行対応している関係である。N:N型は、一方のテーブルの1行に他方のテーブルが複数行対応し、他方のテーブルの1行に一方のテーブルが複数行対応している関係である。
以上が図5に示すフローチャートのステップSB2で実行される処理である。その後、ステップSB3に進み、目的変数候補の自動生成処理を行う。目的変数候補の自動生成処理は、図2に示す目的変数候補生成部14が行う処理であり、目的変数候補生成ステップである。目的変数候補生成ステップでは、始めに、図2に示す型認識部13で認識された結果を目的変数候補生成部14が読み込む。
目的変数候補生成部14は、図5示すフローチャートのステップSB3aにおいて、型認識部13で認識された数値型である少なくとも1つの属性を集約対象の属性とし、型認識部13で認識されたカテゴリ型である少なくとも1つの属性を集約単位の属性とし、集約単位の属性のカテゴリ値毎に、集約対象の属性の数値を、予め用意された集約関数に基づいて集約し、新たな目的変数候補を自動的に生成する。目的変数とは、データ分析装置1の使用者が予測したい属性のことである。また、集約関数は、ある集約単位(性別、ユーザーなど)で、集約対象の属性(購入額など)の複数の属性値を集約するために適用される関数のことであり、合計(SUM)、平均(AVE)などが一般的に用いられるが、これら以外の関数を用いることもできる。
また、目的変数候補生成部14は、型認識部13で認識された数値型である少なくとも1つの属性を集約対象の属性とし、型認識部13で認識された数値型である少なくとも1つの属性を集約単位の属性とし、集約単位の属性の数値毎に、集約対象の属性の数値を、予め用意された集約関数に基づいて集約し、新たな目的変数候補を自動的に生成するように構成されていてもよい。
また、目的変数候補生成部14は、型認識部13による認識の結果に関わらず、少なくとも1つの属性を集約対象の属性とし、少なくとも1つの他の属性を集約単位の属性とし、集約単位の属性の属性値毎に、集約対象の属性の属性値を、予め用意された集約関数に基づいて集約し、新たな目的変数候補を自動的に生成するように構成されていてもよい。この場合、型認識部13は省略することができる。
以下、目的変数候補生成部14について詳しく説明する。目的変数候補生成部14によって新たに生成された目的変数候補とは、分析対象データに含まれる属性と、集約関数の組み合わせに基づいて自動的に生成された目的変数候補である。詳細は後述するが、使用者は、複数の目的変数候補が存在している場合、それら目的変数候補の中から所望のものを選択し、選択した目的変数候補を目的変数とすることができる。
目的変数候補生成部14は、データ入力部12に入力されたテーブルと、テーブル間のリレーションの定義情報とを基にして目的変数候補を探索し、図2に示す候補記憶部30aに記憶する。目的変数候補は、1.元の属性値、2.元の属性値をフラグに変換した値、3.元の属性値を、別の属性値のグループごとに集約した値、4.テーブルを、別のテーブルのグループごとに集約した値の4種類に大別することができる。以下、それぞれについて説明する。
1.元の属性値
元の属性値は、図9に示すように、データ入力部12に入力された分析対象データに含まれる属性であり、それらの中のうちの1つを目的変数候補として扱うことができる。機械学習では目的変数は数値で与える必要があるため、ここでは数値型の変数のみを対象とする。
2.元の属性値をフラグに変換した値
元の属性値をフラグに変換した値は、データ入力部12に入力された分析対象データに含まれる元の属性に対して所定の条件式を適用することで2値の情報に変換したものである。この変換後の情報を目的変数候補とすることができる。条件式の適用方法について、図10に示すように、属性値の型がカテゴリ型(例:性別)の場合、属性の値がある値に一致するかどうかに基づいて2値の情報に変換することができる。この例では、「男」が「1」、「女」が「0」である。また、条件式の適用方法について、属性値の型が数値型(例:年齢)の場合、属性の値がある値以上/ある値以下/ある値の範囲内かどうかに基づいて2値の情報に変換することができる。数値の場合、しきい値の設定方法が多数考えられるため、「平均値」、「最頻値」といった統計量をしきい値として自動的に選択するようにしてもよい。また、使用者に任意のしきい値を指定させるようにしてもよい。この場合、しきい値の入力部を設けることができる。また、カテゴリ変数の場合も、値の種類が多数ある場合には、頻出上位の値だけを自動的に選択してもよい。
3.元の属性値を、別の属性値のグループごとに集約した値
元の属性値を、別の属性値のグループごとに集約した値は、集約対象の属性の値を、別の属性の種類ごとにグループ化し、各グループで集約関数を適用した値である。以下のa)~d)の4つ条件の組み合わせを網羅的に試し、目的変数候補として得る。
条件 取り得る値
a)集約対象の属性 数値型の全ての属性
b)集約の単位となる属性 カテゴリ型の全ての属性又はリレーション定義に使った属性
c)集約関数の種類 事前に定義された関数セット(たとえばSUM,AVG)
d)集約の条件(オプション) 自動生成された条件セット(たとえば週次、月次)、
または使用者による設定
尚、a)、b)のどちらとも無関係なテーブルで条件を指定した場合は無視されるようにする。
図11に示すテーブルを例にすると、顧客テーブルの属性「ユーザー」と、注文テーブルの「ユーザー」とを結ぶ線L1は、図5に示すフローチャートのステップSB2でテーブル間のリレーションが定義されたことを表している。また、線L1の端部の「1」及び「N」は多重度を表しており、値に重複がなければ1、重複があればNとなる。この場合、「年齢」、「購入額」が数値型の属性に該当し、「ユーザー」、「性別」がカテゴリ型の属性に該当し、これが型認識部13で認識される。
集約の条件は、たとえば属性値の型として日付型の属性(ここでは「購入日」)があったときに、その属性に対して、直近1ヶ月、直近1週間など、複数の条件を自動的に生成する。つまり、目的変数候補生成部14は、データ入力部12に入力された分析対象データに日付型の属性が含まれる場合、所定の期間を集約の条件として自動生成するように構成されている。この所定の期間は任意の期間に設定することができ、例えば年月日や時刻で設定することもできる。このとき、実際の属性の値から、条件を自動的に選別してもよい。たとえば、実際の属性の値が所定期間に集中している場合、その所定期間を超えた期間を除外する等であり、具体的には、実際の属性の値が2週間の範囲に集中している場合、「直近1か月」という条件を除外する。
ここで、集約関数をSUM(合計)、AVE(平均)の2種類、集約条件を「全期間」、「購入日が2019/1/1以降」の2種類とすると、図12に示すように、全部で2×2×2×2=16通りの候補が生成される。
ただし、図12に示す候補3、4については、集約の単位(ユーザー)に対して常に集約対象(性別、年齢)が1種類しかないことが多重度から分かっているので、これらの候補は削除する。すなわち、多重度に基づいて集約対象が何種類あるか判定し、その判定の結果、集約対象の種類が所定数以下の場合には、候補を削除するように構成することができる。また、図12に示す候補9~12については、a)、b)の属性が顧客テーブルの中で完結しており、d)の条件式との関連性が無いため削除する。その結果、残った10個の候補(候補1、2、5~8、13~16)が目的変数候補に追加される。
ここでは集約の単位b)は単一の属性としていたが、複数の組み合わせによる集約で目的変数を生成してもよい。その場合、例えば、「都道府県×年代ごとの購買額」、「店舗×月度ごとの売上額」といった目的変数を定義することができる。
目的変数の候補を生成するにあたって、データ分析装置1の内部では以下のようなSQL文を生成している。
SELECT SUM(性別) FROM 注文テーブル WHERE 購入日 >= '2019-01-01' GROUP BY ユーザー;
使用者に提示する際に分かり易くするため、
{集約の単位}ごとの{条件}の{集約関数}{集約の対象}
のようなテンプレートにあてはめることで、自然言語での表現も自動生成しておく。自然言語での表現と、実際の生成方法(SQL)とを関連付けて記憶部30に記憶させておくことができる。
4.テーブルを、別のテーブルのグループごとに集約した値
この場合、集約を属性に対してではなく、テーブルに対して行う。集約の方法は、「テーブルの行数」、「テーブルに行があるか」の2種類であり、これらの情報を取得することで実行可能である。
条件 取り得る値
a)集約対象のテーブル 全てのテーブル
b)集約の単位となる属性 カテゴリ型の全ての属性又はリレーション定義に使った属性
c)集約関数の種類 事前に定義された関数セット(たとえば行数、有無)
d)集約の条件(オプション) 自動生成された条件セット(たとえば週次、月次)、
または使用者による設定
図13に示すテーブルを例にすると、顧客テーブルの属性「ユーザー」と、注文テーブルの「ユーザー」とを結ぶ線L1は、図11に示すものと同じである。上記「3.元の属性値を、別の属性値のグループごとに集約した値」と同様に、多重度が1であるような集約を削除すると、図14に示す候補1~8が残ることになる。たとえば候補6は、「顧客離反」という指標であり、マーケティングでしばしば使われる指標であり、データ分析の上で有用である。
データ分析装置1の使用者が入力した全てのテーブルの全ての属性に対して、上記1~4の中から適用可能なものを全て適用し、それぞれを目的変数候補として図2に示す候補記憶部30aに記憶する。上記の例であれば、図15に示すように22通りの目的変数候補が自動的に生成される。
以上が図5に示すフローチャートのステップSB3で実行される処理である。その後、ステップSB4に進み、特徴量を自動生成する。これが特徴量自動生成ステップである。特徴量の生成は、目的変数候補の生成とほぼ同じ処理であり、ステップSB3において目的変数候補の生成と共に行うようにしてもよい。また、特徴量の生成は、図2に示す特徴量自動生成部15で行われるが、目的変数候補生成部14で行うようにしてもよい。
特徴量自動生成部15は、分析対象データに含まれる元の属性又は複数の属性の組み合わせに対し所定の関数を適用することにより新たな特徴量を自動的に生成するように構成されている。特徴量は、説明変数と同義であり、目的変数の説明に用いられる属性である。特徴量の自動生成の詳細については後述する。
図5に示すフローチャートのステップSB5では、目的変数候補のスコアリングを行う。目的変数候補のスコアリングとは、目的変数候補の有用性をあらわすスコアを計算することであり、図2に示すスコア計算部16で行われる。
上記の例(図11、図13に示す例)では、2つのテーブル(顧客テーブル、注文テーブル)の各々に属性が3つしか無い場合を挙げたが、実際の分析データでは、より多くのデータが対象となるため、目的変数候補も多数生成される。例えば数値型の属性が20個、カテゴリ型の属性が20個あり、「平均」、「合計」、「最大」、「最小」を集約関数とした上で、集約期間を「全期間」、「1年間」、「半年間」の3種類とした場合、属性を集約した目的変数は20×20×4×3=4800種類に及ぶ。
そのため、生成した目的変数候補を全て提示するだけでは、使用者が所望の目的変数を得ることは難しい。そこで、図5に示すフローチャートのステップSB5では、ステップSB3で生成した目的変数候補に対して、使用者にとっての有用さをあらわすスコアを計算する。例えば、このスコアの値が大きい順に使用者に提示したり、スコアの値が所定以上のもののみ使用者に提示することで、使用者は素早く所望の分析を開始することができる。
スコア計算の手法としては、例えば以下1~7の指標や、それらを任意で組み合わせたものを使うことができるが、これらに限られるものではない。
1.生成される目的変数の行数
スコア計算部16は、生成される目的変数の行数に基づいてスコアを計算するように構成することができる。すなわち、目的変数が何行分生成されるのかは、目的変数候補によってそれぞれ異なる。例えば図15に示す例であれば、「性別ごとの合計購入額」の場合、目的変数は2行分(男、女)しか生成されないことになる。教師あり学習によるデータ分析を行う場合、データ数が少ないと精度の良い分析が出来ないことが一般的に知られている。そのため、上記のように2行しかデータが生成されないような場合、分析を行っても意味のある結果が得られないと予想される。そこで、生成される目的変数の行数をスコアとすることで、有用さを表現することができる。つまり、生成される目的変数の行数が少ないほどスコアが低くなるようにし、生成される目的変数の行数が多いほどスコアが高くなるようにする。
2.生成される目的変数のばらつき
スコア計算部16は、生成される目的変数の分散に基づいてスコアを計算するように構成することができる。すなわち、教師あり学習によるデータ分析を行う場合、目的変数の値がすべて同じ値になると、意味のある計算をすることができない。説明変数の値を全て無視して、常に定数を出力するのが最適解となってしまうからである。そこで、生成される目的変数の分散をスコアに反映させることで、そのようなケースのスコアを下げる。つまり、分散が小さければスコアが低くなるようにする。
3.テーブル間のリレーション定義に使った属性を集約の単位としているかどうか
スコア計算部16は、テーブル間のリレーション定義に使った属性に基づいてスコアを計算するように構成することができる。すなわち、属性ごとに集約して目的変数を作る場合に、集約の単位は、1)カテゴリ変数 2)リレーション定義に使った属性のどちらも使うことができる。一般的には、テーブル間のリレーション定義に使う属性は、たとえば「ユーザー」や「アイテム」など、ビジネス上重要な粒度になっていることが多い。そこで、テーブル間のリレーション定義に使った属性を得て、リレーション定義に使った属性を用いた目的変数に対して、より高いスコアを与えるようにする。
4.各グループ内のレコード数
スコア計算部16は、グループ内のレコード数(データ数)に基づいてスコアを計算するように構成することができる。すなわち、目的変数候補の生成時、「ユーザーごとの平均年齢」のような、各グループに1つしかレコードが無いケースを除くようにしている。このように自明なケースでなくても、グループ内のレコード数が少ない場合には、平均値を計算しても有用でないことが多い。そこで、平均値を使った目的変数に関しては、各グループ内のレコード数もスコアに加味するようにし、レコード数が多いほどスコアを高くし、レコード数が少ないほどスコアを低くする。この場合、レコード数を取得するレコード数取得手段を設けることができる。
5.過去に選択されたことのある目的変数との類似度
スコア計算部16は、過去に選択されたことのある目的変数との類似度に基づいてスコアを計算するように構成することができる。すなわち、使用者が過去に用いたことのある目的変数は、再度使用される可能性が高いと推定される。そこで例えば、以下のようなスコア基準を用いることができる。この場合、過去に用いたことのある目的変数を図2に示す記憶部30に記憶させておき、スコアを計算する際に、記憶部30から、過去に用いたことのある目的変数を読み込むようにすればよい。
スコア=1 if直近N回に使用された目的変数のいずれかと一致
0 eles
あるいは、直近N回のうち何回の目的変数に使われたのかを直近採用率と定義し、目的変数の構成要素ごとの採用率を組み合わせてもよい。
スコア=集約対象の直近採用率×集約の単位の直近採用率×集約関数の直近採用率
複数の使用者が利用可能なシステムとしてデータ分析装置1を提供する場合、他の使用者が同じデータで採用した目的変数に対して高いスコアを与えることもできる。例えば、使用者と、その使用者が採用した目的変数とを関連付けて図2に示す記憶部30に記憶させておき、スコアを計算する際に、記憶部30から、その情報を読み込むようにすればよい。この場合、協調フィルタリングのような、一般的な推薦アルゴリズムとして知られる機械学習の手法を用いることもできる。
6.属性の名前
スコア計算部16は、属性の名前に基づいてスコアを計算するように構成することができる。すなわち、「単価」、「売上」、「不良品」、「離反」といった、データ分析において目的変数に使用されやすい意味の文字を含む場合にスコアを加算する。どういった名前の場合にどれ位のスコアを加算するのかは、事前にシステム側で生成した対応表を照合することで行ってもよいし、機械学習を用いて属性の名前からスコアを直接算出してもよい。
7.欠損値の割合
スコア計算部16は、欠損値の割合に基づいてスコアを計算するように構成することができる。すなわち、平均値を計算する場合に、対象グループ内に集約対象となるレコードが存在しない場合、目的変数の値が定義できない。こういった場合を欠損値と呼び、問題ごとに0などの適切な値を代わりに埋めるか、欠損した行を分析から除外する必要がある。欠損値の割合が多い場合は、分析の信頼度自体も下がると考えられるため、欠損値が多いほどスコアを下げる。
スコア=100-目的変数における欠損値の割合(%)
以上が図5に示すフローチャートのステップSB5で実行される処理である。その後、ステップSB6に進み、目的変数の絞り込みを行う。目的変数の絞り込みとは、ステップSB3で生成された多数の目的変数候補の中から、使用者が所望の目的変数を絞り込むことであり、図2に示すキーワード入力部18及び属性選択部19によって行うことができる。キーワード入力部18は、図16に示すキーワード入力用ユーザーインターフェース54を生成してモニタ3に表示させるとともに、キーワード入力用ユーザーインターフェース54上でなされた使用者の操作を受け付ける。これがキーワード入力ステップである。
キーワード入力用ユーザーインターフェース54には、使用者が検索キーワードのようなテキストを入力可能な入力領域54aと、候補表示領域54bとが設けられている。入力領域54aに入力する情報はキーワード情報であり、図16Aに示すように1つの単語からなるキーワード情報であってもよいし、図16Bに示すように2つ以上の単語からなるキーワード情報であってもよく、複数のキーワード情報を入力することができるようになっている。
入力領域54aは、使用者からのテキスト入力、即ちキーワード情報の入力を受け付けるように構成されており、テキストの入力を受け付けると、目的変数候補生成部14は、図5に示すフローチャートのステップSB3で生成された多数の目的変数候補の中から、その入力にマッチするような目的変数候補の自然言語表現を検索する。目的変数候補生成部14は、目的変数候補のリストを予め生成しておき、キーワード入力部18により使用者が入力したキーワード情報に関連する目的変数候補を前記リスト内から抽出するように構成されている。
具体例について図16に基づいて説明すると、図16Aに示す例では、1つの単語が入力されているので、その単語を含む目的変数を検索する。図16Bに示す例では、2つの単語が入力されているので、2つの単語を含む目的変数を検索する。検索の際、目的変数候補と完全一致していない入力に対しても、単語の類似度等に基づいた曖昧一致検索(例:購入額と購買額)を行うようにしてもよい。また、AND検索とOR検索との選択が可能に構成されていてもよい。
候補表示領域54bには、検索結果として、使用者が入力したテキストを含む目的変数候補を表示する。これはモニタ3に表示されるので、モニタ3は、目的変数候補生成部14により生成された新たな目的変数候補を表示するものであるとともに、キーワード入力部18により使用者が入力したキーワード情報に関連する目的変数候補(前記リスト内から抽出された目的変数候補)を表示するものである。これにより表示ステップが実行される。尚、目的変数の絞り込みを行う必要が無い場合には、テキスト検索を行うことなく、目的変数候補生成部14により生成された新たな目的変数候補をモニタ3に表示させることができる。生成された新たな目的変数候補がモニタ3に表示されるので、使用者が目的変数候補を容易に把握することが可能になる。
候補表示領域54bには、スコア計算部16で計算したスコアが高い順に目的変数候補が表示される。スコアが高いものほど上に位置するように目的変数候補をランキング形式で並べて表示することができる。検索の結果、目的変数候補が多い場合には、スコア計算部16で計算したスコアの上位のもののみ、候補表示領域54bに表示させることができる。このとき表示可能な目的変数候補の数は、5件や10件程度にすることができる。つまり、モニタ3は、スコア計算部16で計算されたスコアが所定以上の目的変数候補を表示可能に構成することができ、そのときに表示される件数を所定件数とすることができる。
また、モニタ3には、データ入力部12に入力された分析対象データの元の属性と、目的変数候補生成部14により生成された新たな目的変数候補とを同時に表示することが可能である。また、モニタ3には、データ入力部12に入力された分析対象データの元の属性の属性値をフラグに変換した値を表示するように構成することも可能である。
また、生成される目的変数の列名を使用者が編集できる手段を備えていてもよい。すなわち、キーワード入力部18は、図17に示す編集用ユーザーインターフェース55を生成してモニタ3に表示させるとともに、編集用ユーザーインターフェース55上でなされた使用者の操作を受け付ける。編集用ユーザーインターフェース55には、編集対象の目的変数の列名を入力する編集対象入力領域55aと、変更後の列名を入力する列名入力領域55bとが設けられている。編集対象入力領域55aに「ユーザーごとの平均購入額」と入力し、列名入力領域55bに「購買単価」と入力すると、目的変数の列名が「購買単価」に変更される。これにより、データ分析の結果をより分かりやすくすることができる。
図2に示す属性選択部19は、集約対象又は集約単位の属性に関する使用者からの選択入力を受け付ける部分であり、キーワード入力部18と同様に、属性を選択して入力することが可能に構成されている。この場合、属性選択部19により使用者が入力した属性を集約対象又は集約単位として生成された目的変数候補がモニタ3に表示される。
目的変数候補生成部14による目的変数候補の生成と、使用者からの集約対象又は集約単位の属性に関する入力の受け付けとは、どちらが先であってもよい。目的変数候補生成部14による目的変数候補の生成後、使用者からの集約対象又は集約単位の属性に関する入力の受け付けた場合には、既に生成されている目的変数候補の中から、使用者が入力した属性を集約対象又は集約単位として生成されている目的変数候補を抽出して表示部に表示させることができる。一方、目的変数候補生成部14による目的変数候補の生成前に、使用者からの集約対象又は集約単位の属性に関する入力の受け付けた場合には、使用者が入力した属性を集約対象又は集約単位として目的変数候補生成部14が目的変数候補を生成し、生成された目的変数候補を表示部に表示させればよい。
図2に示す選択受付部20は、モニタ3に表示された目的変数候補の中から、使用者による目的変数の選択を受け付ける部分であり、これにより選択受付ステップが実行される。具体的には、図16に示すキーワード入力用ユーザーインターフェース54の候補表示領域54bに表示されている目的変数候補のうち、使用者によってどれが選択されたかを検出可能に構成されている。たとえば、候補表示領域54bに表示されている目的変数候補の一つに重なるようにマウス5のポインタを配置してクリック操作することで当該目的変数を選択することができ、また、キーボード4の操作等によっても目的変数を選択することができる。選択受付部20は、複数の目的変数を選択可能に構成することもできる。
モニタ3に、元の属性と、新たな目的変数候補とが表示されている場合、選択受付部20は、元の属性と、新たな目的変数候補との中から、使用者による目的変数の選択を受け付けることができる。また、モニタ3に、元の属性と、新たな目的変数候補と、フラグに変換した値とが表示されている場合、選択受付部20は、元の属性と、新たな目的変数候補と、フラグに変換した値との中から、使用者による目的変数の選択を受け付けることができる。候補表示領域54bには、目的変数候補が複数表示されていることもあれば、1つだけ表示されていることもあるが、いずれの場合も、使用者による目的変数の選択を受け付けるように構成されている。
以上が図5に示すフローチャートのステップSB6で実行される処理である。その後、ステップSB7に進み、プレビュー表示を行う。プレビュー表示は、使用者がステップSB6で選択した目的変数について、分析対象データを使って実際に目的変数の計算を行い、その結果をプレビューで表示する。制御ユニット10は、たとえば、図18に示すプレビュー表示ユーザーインターフェース56を生成してモニタ3に表示させる。プレビュー表示ユーザーインターフェース56には、使用者が選択した目的変数を表示する目的変数表示領域56aと、実際に目的変数の計算を行った結果を表示するプレビュー表示領域56bと、分析開始ボタン56cとが設けられている。プレビュー表示領域56bに表示する結果は、データ量が多い場合に一部のデータ(本例では全データの10%)だけを用いた計算結果であってもよい。計算に用いたデータ数が使用者に分かるように、プレビュー表示ユーザーインターフェース56に表示することができる。
ステップSB6の処理により、分析部21による予測モデルの生成前に、分析結果の一部のみをモニタ3にプレビュー表示することができる。プレビュー表示することによって、使用者が意図した分析内容になっているかどうかを分析実行前に確認することができる。
使用者が意図した分析内容になっている場合には、使用者はプレビュー表示ユーザーインターフェース56の分析開始ボタン56cを押す。これにより、図5に示すフローチャートのステップSB8に進む。使用者が意図した分析内容になっていない場合には、ステップSB6に戻ることができ、別の目的変数候補を選択することができる。
ステップSB8では、選択受付部20で選択された目的変数を使って、予測モデルを用いた実際のデータ分析を行う。既知の機械学習手法(たとえばAutoWEKA等)を用いて、複数の予測モデルから最適なものを選択してもよい。これは図2に示す分析部21で行われる分析ステップである。分析部21は、特徴量自動生成部15により生成された新たな特徴量を用いて、選択受付部20により選択された目的変数を予測するための予測モデルを生成することができるように構成されている。たとえば、複数の特徴量から目的変数を予測するための予測モデルを生成することができ、この予測モデルは、例えば重回帰分析や決定木によって作ることができる。その生成手法については様々あるが、いずれも従来から知られた手法を用いることができる。
(特徴量の自動生成)
例えば目的変数を「ユーザーごとの購入額の合計」とした場合に、特徴量にも同じ「ユーザーごとの購入額の合計」を作成すると、他の特徴量を全て無視した分析結果が出てしまい、意味のある分析結果を得ることができない。このような、目的変数の情報が意図せず特徴量に「漏れる」状況はリークと呼ばれており、機械学習に習熟していない分析者が陥りやすい。
リークを防ぐために、上述した特徴量自動生成部15は、選択受付部20で選択された目的変数を生成する際に、目的変数候補生成部14が用いた集約対象の属性の少なくとも一部の属性値を除いた属性に所定の関数を適用することにより、新たな特徴量を自動的に生成するように構成されている。従って、使用者が目的変数を選択すると、新たな特徴量が自動的に生成されることになるが、このとき、目的変数候補生成部14が目的変数を生成する際に用いた集約対象の属性の少なくとも一部の属性値を除いた属性に所定の関数が適用されるので、目的変数の情報が意図せず特徴量に漏れる状況が回避される。
また、特徴量自動生成部15は、分析対象データに含まれる元の属性又は複数の属性の組み合わせに対し所定の関数を適用することにより新たな特徴量を自動的に生成し、生成された特徴量から、選択受付部20により選択された目的変数に用いられた集約対象の属性の少なくとも一部の属性値の情報を含む特徴量を除外し、最終的な特徴量を生成するように構成することもできる。この場合、目的変数に用いられた集約対象の属性の少なくとも一部の属性値の情報を含む特徴量が除外されて最終的な特徴量になるので、目的変数の情報が意図せず特徴量に漏れる状況が回避される。従って、機械学習に習熟していない者であっても、目的変数の情報が意図せず特徴量に漏れる状況(リーク)を自動的に防ぐことができる。
以下、リークを防止する手段としてデータ分析装置1に設けることが可能な構成について具体的に説明する。
1.目的変数の集計に使用した期間より前のデータだけを使う
図5に示すフローチャートのステップSB3において、日付によって目的変数の集約条件を設定した場合、その日付より前の分析対象データは目的変数には使われていないため、特徴量の計算に使ってもリークは発生しない。そこで、集約条件に日付が指定されているか否かを判定し、日付が指定されている場合には、目的変数の集約条件とした期間と、特徴量の計算に使用する分析対象データの期間とが重複しないようにし、特徴量の生成にあたってはその日付より前の分析対象データだけを対象とする。これにより、たとえば図19に示すように、目的変数として、「ユーザー毎の2019/1の平均購入額」とした場合に、特徴量としてはそれ以前の「ユーザー毎の2018/12の平均購入額」を生成することができる。つまり、特徴量自動生成部15は、日付によって目的変数の集約条件が設定された場合、集約対象の該当期間の属性値を除いて特徴量を自動的に生成するように構成することができ、具体的には、その日付よりも前の分析対象データだけを対象として特徴量を自動的に生成する。
2.目的変数の集計対象となった属性/テーブルは特徴量に使用しない
特徴量自動生成部15は、目的変数の集約条件に日付が指定されているか否かを判定し、日付が指定されていない場合、目的変数に用いられた属性自体を特徴量の生成対象から除外するように構成することができる。目的変数の集約条件に日付が指定されていない場合は上記1の手法を用いることができないので、その場合には、目的変数に使用した属性自体を特徴量の生成対象から外す。これにより、目的変数の情報が意図せず特徴量に漏れる状況が回避される。この場合、目的変数に使用した属性を記憶部30等から読み込むようにすればよい。
次に、解釈性の向上について説明する。目的変数候補生成部14による目的変数候補の生成に用いる分析対象データの集計期間と、特徴量自動生成部15による特徴量の生成に用いる分析対象データの集計期間とを合わせることができる。たとえば、目的変数を「2019/1の店舗ごとの売り上げの合計」とした場合、データ分析装置1の使用者は月単位での集計に興味があると推測できる。そこで、特徴量についても、「2018/12(前月)の店舗ごとの売り上げの合計」、「2018/1(前年同月)の店舗ごとの売り上げの合計」のような、1か月で集計した特徴量を加えることが有効だと推測されるので、そのような期間で集計した特徴量を生成する。同様に、「2019/1/1~1/8の売り上げの合計」が目的変数であれば、週次で集計した特徴量を自動的に生成する。集約の期間を総当たりで試行すると時間がかかるのに対して、使用者が指示した時間の単位に合わせた特徴量を生成することで、使用者にとってより解釈しやすい結果を素早く得ることができる。
特徴量自動生成部15では、目的変数と同様に、集約対象、集約の単位、集約関数、集約の条件の組み合わせを様々に変えることで多数の特徴量を自動的に生成することができる(例えば、非特許文献1参照)。この際、前述のように目的変数候補生成部14が使用した属性を除外することでリークを回避したデータ分析を行うことができるが、それ以外の基準でも、種々の基準で特徴量の一部を除外することで、予測モデルの精度、分析時間、メモリ使用量、結果の解釈性を改善することが出来る場合がある。
たとえば、多数の特徴量を自動的に生成した場合、その内の一部の特徴量が互いに類似の傾向を持つ場合がある。集約対象と集約単位を同一にする特徴量同士、例えば「顧客ごとの購買価格の平均値」と「顧客ごとの購買価格の中央値」は、非常に高い相関を持つ可能性がある。相関値が非常に高い特徴量をデータ分析に用いると、多重共線性と呼ばれる特性によって分析結果が不安定になり、結果の解釈性が損なわれることが一般によく知られている。そこで、特徴量自動生成部15では、集約対象、集約単位、集約関数、集約の条件のうち一部(例えば集約対象と集約単位)が共通している特徴量同士を1つのグループと見なし、グループ内で1つの特徴量だけが残るように特徴量の一部を除外しても良い。残す特徴量をどう決めるかについては、目的変数との相関係数や、重回帰分析における係数の大小、決定木分析における情報ゲインなど、特徴量の重要度を計算する既知のアルゴリズムを使用することができる。あるいは、目的変数の場合と同様に、複数の観点で構成されるスコアを計算し、スコアの大小に基づいて特徴量を選定しても良い。また、グループの定義はユーザーから明示的に与えることもできる。
図20は、結果表示用ユーザーインターフェース57を示している。結果表示用ユーザーインターフェース57は、制御ユニット10が生成してモニタ3に表示させる。結果表示用ユーザーインターフェース57には、目的変数を表示する目的変数表示領域57aと、セグメントを表示するセグメント表示領域57bとが設けられている。セグメントは、分析対象データに対して行の抽出条件を適用することで抽出されるデータの部分集合であり、属性とその条件との組み合わせと呼ぶこともできる。
(目的変数の絞り込み手法の別形態)
図5に示すフローチャートのステップSB6では、ステップSB3で生成された目的変数候補の絞り込みを行っているが、この手法は上述した手法に限られるものではなく、以下の手法を用いることもできる。すなわち、目的変数を絞り込むにあたって、段階的な選択を受け付けることが可能に構成することができる。第1段階として、図21Aに示すように、目的変数について集約の単位となる属性の選択を受け付ける。ここで提示される選択肢は、ステップSB3で生成した全ての目的変数候補のうち、少なくとも1つで集約の単位として選択されている属性とする。図21Aは絞り込み用ユーザーインターフェース60を示しており、制御ユニット10が絞り込み用ユーザーインターフェース60を生成してモニタ3に表示させる。絞り込み用ユーザーインターフェース60には、集約の単位となる属性の選択を受け付けるプルダウンメニュー形式の属性選択部60aと、戻るボタン60bと、次へボタン60cとが設けられている。属性選択部60aによって属性を選択した後、次へボタン60cを押すことで、第2段階に進む。
第2段階では、図21Bに示すように、全ての目的変数候補のうち、第1段階で選択した属性を集約の単位とするような目的変数だけをスコア順に提示する。これは、絞り込み用ユーザーインターフェース60に設けられたスコア順表示領域60dに表示される。スコア順表示領域60dには、目的変数の選択を受け付けるプルダウンメニュー形式の選択部が設けられており、目的変数の選択を受け付けることができるようになっている。これによって、多数の目的変数候補の中から、使用者が分析したい粒度に合致する目的変数を素早く選択することができる。目的変数を選択した後、次へボタン60cを押すことで、第3段階に進む。
最後の第3段階では、選択された目的変数に、分析結果を分かりやすく表示するための別名の指定を受け付ける。図21Cに示すように、絞り込み用ユーザーインターフェース60には、別名を入力可能な別名指定領域60eが設けられている。使用者が別名指定領域60eに別名を入力すると、第2段階で選択した目的変数の名称が、入力された別名に変更される。
この例では、ステップSB3で先に全ての集約単位についての候補を生成してからステップSB6で使用者による選択を受け付けているが、この順番は逆でもよい。すなわち、先に使用者による集約の単位の選択を受け付けてから、その属性を集約の単位とするような目的変数だけを生成し、使用者に一覧提示することもできる。それによって、生成される目的変数候補の数を減らすことができる。また、ここでは集約の単位となる属性の選択を受け付けていたが、集約対象の属性をかわりに受け付けてもよい。
(実施例)
以下、目的変数の生成処理の各ステップにおける、内部データの保持方法について3種類の実施例について説明する。
(第1例)
第1例では、図22に「1.入力データ」として示すように、使用者が顧客テーブルと注文テーブルの2つのテーブルを分析対象データとして入力した場合を想定する。目的変数候補生成部14は、これらの入力されたテーブル(分析対象データ)をもとに、属性を組み合わせた新たな属性を生成し、目的変数候補として生成する。この時、図22に「2.目的変数候補の生成」として示すように、データ分析装置1の内部では目的変数と、集約の単位からなる新たな表を生成している。
続いて、図22に「3.目的変数の選択」として示すように、作成された新たな表の中から、使用者が選択した目的変数を含む表を1つ選ぶ。この例では、
集約対象の属性: 購入額(注文テーブル)
集約の単位 : ユーザー(注文テーブル)
集約関数 : 平均
の組み合わせで生成された、「ユーザーごとの平均購入額」を選択する。
続く特徴量の自動生成ステップでは、「3.目的変数の選択」で残った3つの表を元に、集約関数と属性の組み合わせから、新たな属性を特徴量として生成する。このステップでは、「4.特徴量の生成」として示すように、目的変数において集約対象の属性となった「購入額」は特徴量の生成対象から外している。
(第2例)
第2例では、目的変数を選択した後に、使用者が顧客テーブルと注文テーブルを最新の状態に更新することが可能になっている例である。すなわち、実際のデータ分析(特徴生成~予測モデリング)を開始する前に、最新の状態に基づいて目的変数の属性の値を再計算し、再計算された値に基づいてデータ分析を行う。異なる分析対象データに対して再計算することで、毎月定型の分析処理を実施する場合など、繰り返しの分析を行う際にも選択した目的変数を活用することができる。
図23の「1.入力データ」、「2.目的変数候補の生成」、「3.目的変数の選択」は、図22の各ステップと同じであり、第2例では、「4.分析対象データの更新」ステップがあり、この中で薄く塗りつぶしたセルが、「3.目的変数の選択」ステップから更新されている箇所である。
(第3例)
第3例では、目的変数候補を生成する際に、実際の属性や属性の値を生成する代わりに、図24の「2.目的変数候補の生成」ステップに示すように、集約対象・集約の単位・集約関数の組み合わせと、それに対応する自然言語表現、SQL文を記憶する。これは図2に示す記憶部30に記憶させることができる。
その後、図24の「3.目的変数の選択」に示すように、使用者の指定に応じて目的変数を選択すると、その後、実際のデータに対して上記SQL文を適用し、「4.SQLの実行」に示すように、目的変数を含むテーブルを生成する。上記第2例と同様に、実際にSQL文を適用する前に対象となる表の属性値が更新されていてもよい。このように、「2.目的変数候補の生成」ステップで目的変数の属性値を生成せず、組み合わせ方だけを保持することで、生成するデータ量を削減し、処理を高速化することができる。
(実施形態の作用効果)
以上説明したように、この実施形態に係るデータ分析装置1によれば、数値型である少なくとも1つの属性を集約対象の属性とし、カテゴリ型である少なくとも1つの属性を集約単位の属性とし、集約単位の属性のカテゴリ値毎に、集約対象の属性の数値を、予め用意された集約関数に基づいて集約し、新たな目的変数候補を自動的に生成して表示させることができる。そして、表示された目的変数候補の中から、使用者による目的変数の選択を受け付け、選択された目的変数を予測するための予測モデルを自動的に生成することができるので、データ処理に習熟していない者であっても自由に分析を行うことができる。
また、目的変数を生成する際に用いられた集約対象の属性の少なくとも一部の属性値を除いた属性に所定の関数が適用されるので、目的変数の情報が意図せず特徴量に漏れる状況が回避される。従って、機械学習に習熟していない者であってもリークを自動的に防ぐことができる。
また、目的変数に用いられた集約対象の属性の少なくとも一部の属性値の情報を含む特徴量が除外されて最終的な特徴量になるので、目的変数の情報が意図せず特徴量に漏れる状況が回避される。従って、機械学習に習熟していない者であってもリークを自動的に防ぐことができる。
また、目的変数候補生成部14により目的変数候補を自動的に生成することができ、目的変数候補をキーワード情報や属性によって抽出してモニタ3に表示させることができる。これにより、使用者が目的変数候補を選択しやすくすることができる。
上述の実施形態はあらゆる点で単なる例示に過ぎず、限定的に解釈してはならない。さらに、特許請求の範囲の均等範囲に属する変形や変更は、全て本発明の範囲内のものである。
以上説明したように、本発明に係るデータ分析装置は、大量の情報の中からこれまで未知であった有用な知見を得ようと試みる場合に使用することができる。
1 データ分析装置
3 モニタ(表示部)
3a 表示制御部
11 主制御部
12 データ入力部
13 型認識部
14 目的変数候補生成部
15 特徴量自動生成部
16 スコア計算部
17 キーワード入力部
19 属性選択部
20 選択受付部
21 分析部
30 記憶部
30a 候補記憶部

Claims (9)

  1. 分析対象データを分析するデータ分析装置において、
    分析対象データとして、複数の属性を含む複数の表形式データの入力を受け付けるデータ入力部と、
    前記データ入力部で受け付けた複数の表形式データのリレーションを定義するリレーション定義部と、
    少なくとも1つの属性を集約対象の属性とし、少なくとも1つの他の属性を集約単位の属性とし、集約単位の属性の属性値毎に、集約対象の属性の属性値を、予め用意された集約関数に基づいて集約し、前記リレーション定義部で定義されたリレーションに基づいて、新たな目的変数候補を生成する目的変数候補生成部と、
    使用者からのキーワード情報の入力を受け付けるキーワード入力部と、
    前記キーワード入力部により使用者が入力したキーワード情報に関連する目的変数候補を表示する表示部と、
    前記表示部に表示された目的変数候補の中から、使用者による目的変数の選択を受け付ける選択受付部と、
    前記選択受付部により選択された目的変数を予測するための予測モデルを生成する分析部とを備えることを特徴とするデータ分析装置。
  2. 分析対象データを分析するデータ分析装置において、
    複数の属性を含む分析対象データの入力を受け付けるデータ入力部と、
    少なくとも1つの属性を集約対象の属性とし、少なくとも1つの他の属性を集約単位の属性とし、集約単位の属性の属性値毎に、集約対象の属性の属性値を、予め用意された集約関数に基づいて集約し、新たな目的変数候補を生成する目的変数候補生成部と、
    集約対象又は集約単位の属性に関する使用者からの選択入力を受け付ける属性選択部と、
    前記属性選択部により使用者が入力した属性を集約対象又は集約単位として生成された目的変数候補を表示する表示部と、
    前記表示部に表示された目的変数候補の中から、使用者による目的変数の選択を受け付ける選択受付部と、
    前記選択受付部により選択された目的変数を予測するための予測モデルを生成する分析部とを備えることを特徴とするデータ分析装置。
  3. 請求項1に記載のデータ分析装置において、
    前記目的変数候補生成部は、目的変数候補のリストを生成し、前記キーワード入力部により使用者が入力したキーワード情報に関連する目的変数候補を前記リスト内から抽出するように構成され、
    前記表示部は、前記目的変数候補生成部が前記リスト内から抽出した目的変数候補を表示するように構成されていることを特徴とするデータ分析装置。
  4. 請求項1または3に記載のデータ分析装置において、
    目的変数候補の有用性をあらわすスコアを計算するスコア計算部を備え、
    前記目的変数候補生成部は、前記キーワード入力部により使用者が入力したキーワード情報に関連する複数の目的変数候補を抽出するように構成され、
    前記表示部は、前記目的変数候補生成部が抽出した複数の目的変数候補を、前記スコア計算部で計算されたスコアが高い順に表示するように構成されていることを特徴とするデータ分析装置。
  5. 請求項4に記載のデータ分析装置において、
    前記スコア計算部は、生成される目的変数の行数に基づいてスコアを計算するように構成されていることを特徴とするデータ分析装置。
  6. 請求項4または5に記載のデータ分析装置において、
    前記スコア計算部は、生成される目的変数の分散に基づいてスコアを計算するように構成されていることを特徴とするデータ分析装置。
  7. 請求項1から6のいずれか1つに記載のデータ分析装置において、
    前記表示部は、前記分析部による予測モデルの生成前に、分析結果の一部のみを表示するプレビュー表示を可能に構成されていることを特徴とするデータ分析装置。
  8. データ分析装置を用いて分析対象データを分析するデータ分析方法において、
    分析対象データとして、複数の属性を含む複数の表形式データの入力を前記データ分析装置のデータ入力部が受け付けるデータ入力ステップと、
    前記データ分析装置のリレーション定義部が、前記データ入力ステップで受け付けた複数の表形式データのリレーションを定義するリレーション定義ステップと、
    前記データ分析装置の目的変数候補生成部が、少なくとも1つの属性を集約対象の属性とし、少なくとも1つの他の属性を集約単位の属性とし、集約単位の属性の属性値毎に、集約対象の属性の属性値を、予め用意された集約関数に基づいて集約し、前記リレーション定義ステップで定義されたリレーションに基づいて、新たな目的変数候補を生成する目的変数候補生成ステップと、
    前記データ分析装置のキーワード入力部が、使用者からのキーワード情報の入力を受け付けるキーワード入力ステップと、
    前記キーワード入力ステップにより使用者が入力したキーワード情報に関連する目的変数候補を前記データ分析装置の表示制御部が表示部に表示させる表示ステップと、
    前記表示ステップで表示された目的変数候補の中から、使用者による目的変数の選択を前記データ分析装置の選択受付部が受け付ける選択受付ステップと、
    前記選択受付ステップで選択された目的変数を予測するための予測モデルを前記データ分析装置の分析部が生成する分析ステップとを備えることを特徴とするデータ分析方法。
  9. データ分析装置を用いて分析対象データを分析するデータ分析方法において、
    複数の属性を含む分析対象データの入力を前記データ分析装置のデータ入力部が受け付けるデータ入力ステップと、
    前記データ分析装置の目的変数候補生成部が、少なくとも1つの属性を集約対象の属性とし、少なくとも1つの他の属性を集約単位の属性とし、集約単位の属性の属性値毎に、集約対象の属性の属性値を、予め用意された集約関数に基づいて集約し、新たな目的変数候補を生成する目的変数候補生成ステップと、
    集約対象又は集約単位の属性に関する使用者からの選択入力を前記データ分析装置の属性選択部が受け付ける属性選択ステップと、
    前記属性選択ステップで使用者が入力した属性を集約対象又は集約単位として生成された目的変数候補を前記データ分析装置の表示制御部が表示部に表示させる表示ステップと、
    前記表示ステップで表示された目的変数候補の中から、使用者による目的変数の選択を前記データ分析装置の選択受付部が受け付ける選択受付ステップと、
    前記選択受付ステップで選択された目的変数を予測するための予測モデルを前記データ分析装置の分析部が生成する分析ステップとを備えることを特徴とするデータ分析方法。
JP2019023873A 2019-02-13 2019-02-13 データ分析装置及びデータ分析方法 Active JP7246958B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019023873A JP7246958B2 (ja) 2019-02-13 2019-02-13 データ分析装置及びデータ分析方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019023873A JP7246958B2 (ja) 2019-02-13 2019-02-13 データ分析装置及びデータ分析方法

Publications (2)

Publication Number Publication Date
JP2020135055A JP2020135055A (ja) 2020-08-31
JP7246958B2 true JP7246958B2 (ja) 2023-03-28

Family

ID=72263048

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019023873A Active JP7246958B2 (ja) 2019-02-13 2019-02-13 データ分析装置及びデータ分析方法

Country Status (1)

Country Link
JP (1) JP7246958B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004157814A (ja) 2002-11-07 2004-06-03 Fuji Electric Holdings Co Ltd 決定木生成方法およびモデル構造生成装置
JP2014081750A (ja) 2012-10-16 2014-05-08 Hitachi Ltd データ統合分析システム
JP2017054230A (ja) 2015-09-08 2017-03-16 株式会社エヌ・ティ・ティ・データ 集計分析装置、集計分析方法、及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004157814A (ja) 2002-11-07 2004-06-03 Fuji Electric Holdings Co Ltd 決定木生成方法およびモデル構造生成装置
JP2014081750A (ja) 2012-10-16 2014-05-08 Hitachi Ltd データ統合分析システム
JP2017054230A (ja) 2015-09-08 2017-03-16 株式会社エヌ・ティ・ティ・データ 集計分析装置、集計分析方法、及びプログラム

Also Published As

Publication number Publication date
JP2020135055A (ja) 2020-08-31

Similar Documents

Publication Publication Date Title
JP7257169B2 (ja) データ分析装置
US8131684B2 (en) Adaptive archive data management
AU2021281120B2 (en) Domain-specific language interpreter and interactive visual interface for rapid screening
JP7049210B2 (ja) データ分析装置及びデータ分析方法
JP7246956B2 (ja) データ分析装置及びデータ分析方法
CN108228861B (zh) 用于执行机器学习的特征工程的方法及系统
JP2017500664A (ja) 多ディメンション・データー構造に対する実行のためのクエリー構築
JP2006344211A (ja) 知的財産権分析・レポート作成システムと方法
JP2020135891A (ja) 検索提案を提供する方法、装置、機器及び媒体
US20220351004A1 (en) Industry specific machine learning applications
US20180067986A1 (en) Database model with improved storage and search string generation techniques
JP7246957B2 (ja) データ分析装置及びデータ分析方法
JP2007011604A (ja) 不具合診断システム及びプログラム
JP7257168B2 (ja) データ分析装置
Bhatia et al. Machine Learning with R Cookbook: Analyze data and build predictive models
CN116235158A (zh) 实施自动化特征工程的系统和方法
JP7049211B2 (ja) データ分析装置及びデータ分析方法
JP7246958B2 (ja) データ分析装置及びデータ分析方法
JP2023096330A (ja) データ分析装置及びデータ分析方法
JP4316538B2 (ja) 仲介型問題解決支援システム
US11151653B1 (en) Method and system for managing data
US8200523B2 (en) Procedure generation apparatus and method
JP2020071523A (ja) 見積方法、課金方法、コンピュータ、及びプログラム
KR20080084568A (ko) 특허 데이터베이스 시스템을 위한 문제점/기능-정의된인터페이스에 기초한 검색방법
JP2001154848A (ja) 仲介型問題解決支援システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221026

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221223

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: 20230307

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230315

R150 Certificate of patent or registration of utility model

Ref document number: 7246958

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150