(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-18
(45)【発行日】2024-10-28
(54)【発明の名称】データ解析装置、方法およびプログラム
(51)【国際特許分類】
G05B 23/02 20060101AFI20241021BHJP
G06Q 50/04 20120101ALI20241021BHJP
【FI】
G05B23/02 302Y
G06Q50/04
(21)【出願番号】P 2021151465
(22)【出願日】2021-09-16
【審査請求日】2023-03-15
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】伊東 孝幸
(72)【発明者】
【氏名】渡邉 航
(72)【発明者】
【氏名】安藤 純平
(72)【発明者】
【氏名】川内 敬介
(72)【発明者】
【氏名】小野 利幸
【審査官】阿部 圭子
(56)【参考文献】
【文献】特開2019-082865(JP,A)
【文献】特開2020-077033(JP,A)
【文献】Miroslav VANIS, Krzysztof URBANIEC,Employing Bayesian Networks and Conditional Probability Functions for Determining Dependences in Road Traffic Accidents Data,2017 Smart City Symposium Prague (SCSP),IEEE,2017年
(58)【調査した分野】(Int.Cl.,DB名)
G05B 23/02
G06Q 10/00 - 99/00
(57)【特許請求の範囲】
【請求項1】
複数のデータ要素で構成されるデータ要素群を取得するデータ取得部と、
前記データ要素群のうちの第1のデータ要素について、前記データ要素群のうちの他のデータ要素との条件付きばらつきを示す指標値を算出する指標値算出部と、
前記指標値に基づき、前記第1のデータ要素と関連性の高い親要素を前記データ要素群から抽出する親要素抽出部と、
前記第1のデータ要素と前記親要素とに関する第1の情報を含む解析結果を出力する出力制御部と
を具備
し、
前記第1のデータ要素の水準数は、前記親要素の水準数よりも多い、
データ解析装置。
【請求項2】
前記データ要素群は、特定のデータ要素の変化に関するものであり、
前記特定のデータ要素および前記データ要素群を用いて回帰分析を行うことによって、前記変化の原因となる原因要素を推定する原因推定部
を更に具備し、
前記第1のデータ要素は、前記原因要素である、
請求項1に記載のデータ解析装置。
【請求項3】
前記第1のデータ要素と前記親要素とについて、前記特定のデータ要素の変化に対する効果量を算出する効果量算出部
を更に具備し、
前記解析結果は、更に、前記効果量に関する第2の情報を含む、
請求項2に記載のデータ解析装置。
【請求項4】
前記効果量算出部は、前記第1のデータ要素と前記親要素とが、前記特定のデータ要素に与える効果の期待値をゼロと仮定し、前記効果量を算出する、
請求項3に記載のデータ解析装置。
【請求項5】
前記効果量は、前記第1のデータ要素と前記親要素とを回帰モデルに当てはめた際のそれぞれの回帰係数について設定した事前分布モデルのスケールパラメータである、
請求項3または請求項4に記載のデータ解析装置。
【請求項6】
前記効果量算出部は、前記事前分布モデルの周辺尤度を最大化するように前記スケールパラメータを算出する、
請求項5に記載のデータ解析装置。
【請求項7】
前記効果量算出部は、更に、前記効果量の確率分布を算出し、
前記解析結果は、更に、前記確率分布に関する第3の情報を含む、
請求項3から請求項5までのいずれか一項に記載のデータ解析装置。
【請求項8】
前記出力制御部は、前記効果量の値に応じて、前記第1の情報の表示態様を変更する、 請求項3から請求項7までのいずれか一項に記載のデータ解析装置。
【請求項9】
前記表示態様の変更は、前記第1のデータ要素と前記親要素との表示順序をソートすることを含む、
請求項8に記載のデータ解析装置。
【請求項10】
前記表示態様の変更は、前記第1のデータ要素と前記親要素とを表示する文字列の文字サイズ、太さ、および文字色の少なくとも一つを変更することを含む、
請求項8または請求項9に記載のデータ解析装置。
【請求項11】
前記親要素が複数抽出された場合、
前記指標値算出部は、更に、複数の親要素のそれぞれの組み合わせについて、各要素間における条件付きばらつきを示す前記指標値を算出し、
前記親要素抽出部は、前記指標値に基づき、前記複数の親要素の親子関係を抽出し、
前記解析結果は、前記第1のデータ要素と前記複数の親要素とに基づく階層構造を含む、
請求項1から請求項10までのいずれか一項に記載のデータ解析装置。
【請求項12】
前記階層構造は、前記第1のデータ要素を根ノードとし、前記複数の親要素のそれぞれを内部ノードまたは葉ノードとするツリー構造である、
請求項11に記載のデータ解析装置。
【請求項13】
前記指標値は、グッドマンとクラスカルのタウである、
請求項1から請求項10までのいずれか一項に記載のデータ解析装置。
【請求項14】
前記原因推定部は、前記特定のデータ要素を目的変数とし、前記データ要素群のそれぞれのデータ要素または前記それぞれのデータ要素の組み合わせを説明変数として前記回帰分析を行うことによって、前記原因要素を推定する、
請求項2に記載のデータ解析装置。
【請求項15】
前記原因推定部は、前記それぞれのデータ要素の組み合わせを説明変数として重回帰分析を行うことによって、前記原因要素の組み合わせを推定し、
前記原因要素の組み合わせについて、任意の原因要素の組み合わせのそれぞれと、対応する前記親要素のそれぞれとの、前記特定のデータ要素の変化に対する効果量を算出する効果量算出部
を更に具備する、
請求項14に記載のデータ解析装置。
【請求項16】
前記第1のデータ要素の各水準と前記親要素の各水準とは、入れ子の関係となっている、
請求項1から請求項15までのいずれか一項に記載のデータ解析装置。
【請求項17】
特定のデータ要素の変化に関する、複数のデータ要素で構成されるデータ要素群と、前記データ要素群のうちのそれぞれのデータ要素と関連性の高い親要素の情報とを取得するデータ取得部と、
前記特定のデータ要素および前記データ要素群を用いて回帰分析を行うことによって、前記変化の原因となる原因要素を推定する原因推定部と、
前記親要素の情報に基づき、前記原因要素と関連性の高い親要素を前記データ要素群から抽出する親要素抽出部と、
前記原因要素と対応する前記親要素について、前記特定のデータ要素の変化に
対する効果量を算出する効果量算出部と、
前記原因要素と対応する前記親要素に関する第1の情報と、前記効果量に関する第2の情報とを含む解析結果を出力する出力制御部と
を具備
し、
前記原因要素の水準数は、前記原因要素と対応する前記親要素の水準数よりも多い、
データ解析装置。
【請求項18】
コンピュータが、
複数のデータ要素で構成されるデータ要素群を取得することと、
前記データ要素群のうちの第1のデータ要素について、前記データ要素群のうちの他のデータ要素との条件付きばらつきを示す指標値を算出することと、
前記指標値に基づき、前記第1のデータ要素と関連性の高い親要素を前記データ要素群から抽出することと、
前記第1のデータ要素と前記親要素とに関する第1の情報を含む解析結果を出力することと
を具備
し、
前記第1のデータ要素の水準数は、前記親要素の水準数よりも多い、
データ解析方法。
【請求項19】
コンピュータを、
複数のデータ要素で構成されるデータ要素群を取得する手段と、
前記データ要素群のうちの第1のデータ要素について、前記データ要素群のうちの他のデータ要素との条件付きばらつきを示す指標値を算出する手段と、
前記指標値に基づき、前記第1のデータ要素と関連性の高い親要素を前記データ要素群から抽出する手段と、
前記第1のデータ要素と前記親要素とに関する第1の情報を含む解析結果を出力する手段
として機能させるためのプログラム
であって、
前記第1のデータ要素の水準数は、前記親要素の水準数よりも多い、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、データ解析装置、方法およびプログラムに関する。
【背景技術】
【0002】
所与のデータ(例えば数値、カウント値または確率値等)またはそのばらつきの変化に対し、変化の要因を探索するニーズがある。例えば製造業においては、製品の不良率の増加、品質指標値の低下等の異常が発生した場合に、異常の原因となる工程を早期に把握し、改善策を施すことが重要である。従来、製品ごとの特性値(例えば品質指標値等の測定値)、不良の有無、製造条件(例えば製造装置、製造時刻、使用部材、各装置等の設定等)等のデータを記録しておき、これを解析することで、特性値あるいは不良率の変化を検出し、その原因となる製造条件等を探索する手法が存在する。
【0003】
あるデータYの変化の要因を推定しようとした場合、例えば、1または複数のデータ要素Xを説明変数とした回帰分析を行い、その当てはまり具合によって推定する手法が考えられる。仮にデータ要素Xが変化の要因(正解)であった場合、当てはまりの良いモデルが得られるし、他方、不正解であった場合は当てはまりの悪いモデルとなる。このことから、任意のデータ要素Xについて回帰モデルの当てはまりを評価することで、データYの変化の要因を推定することが可能となる。
【0004】
近年、モノのインターネット(Internet of Things)技術の発達等により、多様なデータの取得・蓄積が進んでいる。一方、データが多くなることで、多数のデータから必要な情報を探索することは困難になりつつある。上記の要因探索手法においては、データ要素Xの候補数が膨大となることで、当てはまりの良いモデルが多数出現し、どの要因が正解か判らなくなる等の課題が生じる。
【0005】
また、例えば水準数の多いカテゴリカルデータ要素が存在する場合、こうしたデータ要素を用いたモデルはデータYに対する当てはまりがよくなりやすい傾向にある。水準数が多いと、相関する他のデータによる効果を表現することが可能となるため、当てはまりが良くなりやすい。結果として、要因推定結果の上位には水準数の多いデータ要素が上がりやすく、逆に、水準数の低いデータ要素は相対的に下位に沈みやすい傾向となる。このような問題の対策として、一般に、正則化やモデル選択等の統計的手法に基づき、水準数の多いデータのスコアを抑制することが行われるが、水準数の多いデータ要素自身が一定以上の効果を有する場合、当該データ要素は依然、上位に上がる場合がある。この場合に、水準数が少ないものの効果が大きい要因が下位に沈んでいると、データYの変化に対する主要な要因の見落としにつながるという課題がある。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明が解決しようとする課題は、観測データの変化要因の解析において、要因の見落としを抑制することである。
【課題を解決するための手段】
【0008】
一実施形態に係るデータ解析装置は、取得部と、指標値算出部と、親要素抽出部と、出力制御部とを含む。取得部は、複数のデータ要素で構成されるデータ要素群を取得する。指標値算出部は、データ要素群のうちの第1のデータ要素について、データ要素群のうちの他のデータ要素との条件付きばらつきを示す指標値を算出する。親要素抽出部は、指標値に基づき、第1のデータ要素と関連性の高い親要素をデータ要素群から抽出する。出力制御部は、第1のデータ要素と親要素とに関する第1の情報を含む解析結果を出力する。
【図面の簡単な説明】
【0009】
【
図1】第1の実施形態に係るデータ解析装置を含むデータ解析システムの構成を例示するブロック図。
【
図2】
図1のデータ解析装置の構成を例示するブロック図。
【
図3】親子関係を説明するためのクロス集計表を例示する図。
【
図4】
図2のデータ解析装置の動作を例示するフローチャート。
【
図5】階層的な親子関係を説明するためのツリー構造を例示する図。
【
図6】第1の実施形態の変形例に係るデータ解析装置の構成を例示するブロック図。
【
図7】第2の実施形態に係るデータ解析装置の構成を例示するブロック図。
【
図8】
図7のデータ解析装置の動作を例示するフローチャート。
【
図9】第2の実施形態の変形例に係るデータ解析装置の構成を例示するブロック図。
【
図10】第3の実施形態に係るデータ解析装置の構成を例示するブロック図。
【
図11】
図10のデータ解析装置の動作を例示するフローチャート。
【
図12】第3の実施形態の変形例に係るデータ解析装置の構成を例示するブロック図。
【
図13】第4の実施形態に係るデータ解析装置の構成を例示するブロック図。
【
図14】
図13のデータ解析装置の動作を例示するフローチャート。
【
図15】一実施形態に係るコンピュータのハードウェア構成を例示するブロック図。
【発明を実施するための形態】
【0010】
以下、図面を参照しながら、データ解析装置の各実施形態について詳細に説明する。
【0011】
(第1の実施形態)
図1は、第1の実施形態に係るデータ解析装置を含むデータ解析システムの構成を例示するブロック図である。
図1のデータ解析システム1は、データ解析装置100と、出力装置110と、記憶装置120とを備える。データ解析装置100は、記憶装置120から読み出したデータを解析する。出力装置110は、例えば、データ解析装置100による解析結果を表示する。以下では、出力装置110および記憶装置120について先に説明する。
【0012】
出力装置110は、例えば、モニタである。出力装置110は、データ解析装置100から解析結果を受け取る。出力装置110は、解析結果を表示する。尚、出力装置110は、モニタに限らず、例えば、他のデータ解析装置および端末装置でもよい。
【0013】
記憶装置120は、例えば、HDD(Hard Disk Drive)またはSSD(Solid State Drive)などの不揮発性メモリである。記憶装置120は、データ要素群を記憶している。データ要素群は、例えば、複数のデータ要素で構成される。
【0014】
データ要素は、例えばカテゴリ値または数値によって示される複数のデータサンプルを含む。具体的には、データサンプルは、例えば、製造業における個々の製品、製品群(例えば、ロット)、或いは製造時刻のそれぞれに対応した所定の測定値(例えば、品質指標(例えば大きさ、歪み、電気特性等)の測定値、または不良率等)、製造条件、或いは使用部材のデータである。一例を挙げると、あるデータ要素が使用部材のデータであるとすると、上記データ要素は、異なる製品のそれぞれに用いられた部材のデータが対応付けられたものであって良い。データ要素群は、複数のデータ要素のデータサンプルがそれぞれ対応付いたものであってよく、例えば、個々の製品毎の品質指標値(第1のデータ要素)と使用部材(第2のデータ要素)を含むデータ等であってよい。
【0015】
尚、データ要素は、製造業に関するデータに限らず、例えば、小売業に関するデータ(例えば、所定期間(日毎、週毎等)における来客数、売上高、販売価格、セール実施の有無、広告の有無等)、株価、疫学、電力消費その他に関するデータであってもよい。上記データ要素は、例えば、曜日・季節・祝休日等の暦情報、気温・天候(晴雨等)・降水(雪)量・風量等の気象情報、災害等の発生有無の情報、個人情報(個人の属性情報および消費行動情報など)、アンケート結果、およびそれらに類するデータ等が含まれてもよい。
【0016】
図2は、
図1のデータ解析装置の構成を例示するブロック図である。
図2のデータ解析装置100は、データ取得部210と、指標値算出部220と、親要素抽出部230と、出力制御部240とを備える。
【0017】
データ取得部210は、記憶装置120から、複数のデータ要素で構成されるデータ要素群を取得する。データ取得部210は、取得したデータ要素群を指標値算出部220へと出力する。
【0018】
データ取得部210は、ユーザからの指示を契機として、データ要素群を取得してもよい。具体的には、ユーザが複数のデータ要素を指定することによって、データ取得部210は、指定されたデータ要素のみを取得するようにしてよい。これにより、ユーザが関係性を評価したいデータ要素群のみを解析対象とすることが可能となる。また、データ取得部210は、ユーザからの指示等によりデータ要素群に含まれるデータサンプルを削減してもよい。具体的には、特定の期間、あるいは条件(例えば、所定のロットまたは所定の製造場所等)に基づいてデータサンプルを抽出して出力してよい。これにより、出力されるデータサンプル数を削減することができるため、データ解析装置100の解析数を低減することができるほか、ユーザが関係性を評価したいデータ要素の期間または条件のみを抽出して評価することが可能となる。
【0019】
なお、データ取得部210は、記憶装置120とは別の外部装置からデータ要素群を取得してもよい。この場合、データ解析装置100は、外部装置と通信するためのインタフェース(例えば、ネットワークアダプタおよび外部ストレージアダプタ)を更に有してもよい。
【0020】
指標値算出部220は、データ取得部210からデータ要素群を取得する。指標値算出部220は、データ要素群のうちの任意のデータ要素(以降、第1のデータ要素と称する)に関する条件付きばらつきを示す指標値を算出する。具体的には、指標値算出部220は、第1のデータ要素について、データ要素群のうちの他のデータ要素との条件付きばらつきを示す指標値を算出する。指標値算出部220は、算出した指標値を親要素抽出部230へと出力する。尚、第1のデータ要素は、例えばユーザによって選択されてもよい。
【0021】
指標値の算出は、例えば、「グッドマンとクラスカルのタウ」(Goodman and Kruskal’s tau)を用いてよい。グッドマンとクラスカルのタウは、クロス集計表における行要素と列要素との関連の強さを示す指標である。尚、指標値の詳細については後述される。
【0022】
親要素抽出部230は、指標値算出部220から指標値を取得する。親要素抽出部230は、指標値に基づき、第1のデータ要素における親要素を抽出する。具体的には、親要素抽出部230は、指標値に基づき、第1のデータ要素と関連性の高い親要素をデータ要素群から抽出する。親要素抽出部230は、抽出した親要素を出力制御部240へと出力する。尚、本明細書において、親要素は、一つまたは複数のデータ要素を含んでよい。また、親要素抽出部230において、親要素が抽出されない場合も考えられるが、そのような場合は親要素が存在しないことを示す情報が出力され、当該親要素に対する以降の処理はスキップされてもよい。親要素の抽出の詳細については後述される。
【0023】
以降では、親要素に対する第1のデータ要素を、子要素と呼ぶこととする。また、このような親要素および子要素の関係を親子関係と呼ぶ。よって、親要素抽出部230による抽出処理は、親子関係を特定する処理と言い換えられてもよい。以下、親要素、子要素、および親子関係について、
図3のクロス集計表を用いて具体的に説明する。
【0024】
図3は、親子関係を説明するためのクロス集計表を例示する図である。
図3のクロス集計表300は、要素X1の項目を行方向(表頭)に配置し、要素X2の項目を列方向(表側)に配置している。また、要素X1の任意の項目(例えば、要素X1=p)と、要素X2の任意の項目(例えば、要素X2=a)との交わるセルには、両方の項目の条件を満たすデータサンプルの数(例えば、120)が示されている。尚、上記の「項目」は、「水準」と呼ばれてもよい。また、「データサンプルの数」は、「サンプル数」と呼ばれてもよい。
【0025】
クロス集計表300には、水準数が2つの要素X1と、水準数が5つの要素X2とが示されている。また、クロス集計表300において、要素X2の各水準に注目すると、要素X1のいずれかの水準にのみデータサンプルが存在している。よって、要素X1の各水準と要素X2の各水準とは、入れ子(ネスト)の関係であると言える。また、本実施形態では、要素X1と要素X2との水準数がそれぞれ異なることに着目し、水準数の少ない要素X1を「親要素」、水準数の多い要素X2を「子要素」、および要素X1と要素X2との関係を「親子関係」とそれぞれ定義する。尚、要素X1と要素X2との水準数が同じ場合、要素X1と要素X2との関係を「相関関係」と定義し、「親子関係」とは区別して用いることとする。
【0026】
なお、クロス集計表300では、要素X2の各水準について、データサンプルが要素X1のいずれか一方の水準に存在する例を示したが、これに限らない。例えば、要素X2のある水準について要素X1のいずれの水準にもデータサンプルが存在する場合、要素X1の一方の水準データサンプルがごく少数(例えば、要素X1の各水準を合計したサンプル数の数%程度)であれば、要素X1と要素X2との関係は、広義の「親子関係」であるとみなしてよい。
【0027】
出力制御部240は、親要素抽出部230から親要素を取得する。出力制御部240は、親要素に関する解析結果を出力装置110へと出力する。具体的には、出力制御部240は、第1のデータ要素と親要素とに関する情報を含む解析結果を出力装置110へと出力する。尚、出力制御部240は、解析結果を記憶装置120へと出力してもよいし、解析結果をデータ解析装置100が有するメモリ(図示せず)に記憶させてもよい。また、出力装置110への出力手段は、有線通信および無線通信を問わず、伝送が可能であればよい。例えば、出力制御部240は、電子メールなどのメッセージング手段によって、解析結果を出力してもよい。
【0028】
なお、データ解析装置100は、メモリおよびプロセッサを備えてもよい。メモリは、例えば、データ解析装置100の動作に関する各種プログラム(例えば、データ解析プログラムなど)を記憶する。プロセッサは、メモリに記憶された各種プログラムを実行することで、データ取得部210、指標値算出部220、親要素抽出部230、および出力制御部240の各機能を実現する。また、データ解析装置100は、出力装置110および記憶装置120の少なくとも一方を有してもよい。
【0029】
以上、第1の実施形態に係るデータ解析装置100の構成について説明した。次に、データ解析装置100の動作について
図4のフローチャートを用いて説明する。
【0030】
図4は、
図2のデータ解析装置の動作を例示するフローチャートである。
図4のフローチャートの処理は、ユーザによってデータ解析プログラムが実行されることで開始する。
【0031】
(ステップST410)
データ解析プログラムが実行されると、データ取得部210は、データ要素群を取得する。具体的には、データ取得部210は、複数のデータ要素で構成されるデータ要素群を取得する。
【0032】
(ステップST420)
指標値算出部220は、第1のデータ要素に関する条件付きばらつきを示す指標値を算出する。具体的には、指標値算出部220は、データ要素群のうちの第1のデータ要素について、データ要素群のうちの他のデータ要素との条件付きばらつきを示す指標値を算出する。以下、指標値の詳細について説明する。
【0033】
第1のデータ要素と他のデータ要素とが親子関係にある場合、第1のデータ要素の各水準について、他のデータ要素の各水準のいずれか一つの水準にデータサンプルが存在している。即ち、第1のデータ要素と他のデータ要素との関係は、各水準におけるデータサンプルの偏りが大きい、或いはデータサンプルのばらつきが小さい状態となっている。このことから、二つのデータ要素の各水準の偏りの大きさ、或いはばらつきの小ささを示す指標値を算出することによって、親子関係の評価に用いることができる。二つのデータ要素をそれぞれx,yとした場合、指標値α(x,y)は、例えば以下の式(1)で求めることができる。
【0034】
【0035】
式(1)において、V(y)はデータ要素yのばらつき、V(y|x)はデータ要素xの各水準におけるデータ要素yのばらつき、E[.]は期待値を表す。即ち、指標値αは、データ要素xの各水準におけるデータ要素yのばらつきの「小ささ」を、0から1までの尺度で表す。
【0036】
よって、上述の式(1)を用いることによって、指標値算出部220は、第1のデータ要素と、データ要素群のうちの他のデータ要素それぞれとの指標値αを算出することができる。
【0037】
次に、二つのデータ要素がそれぞれカテゴリ値である場合について説明する。例えば、データ要素x,yがそれぞれカテゴリ値の場合、V(y)およびE[V(y|x)]は、例えば以下の式(2),(3)を用いてよい。
【0038】
【0039】
【0040】
式(2),(3)において、πij、πi+、およびπ+jは、それぞれ以下で表される。
【0041】
【0042】
ここで、Nはサンプル数、Nijはデータ要素x=i、y=jの条件を満たすサンプル数を表す。また、IおよびJは、それぞれデータ要素x,yの水準数を表す。
【0043】
上述の式(2),(3)を用いて算出される指標値αは、グッドマンとクラスカルのタウに相当する。よって、カテゴリ値で表されるデータ要素については、指標値算出部220は、グッドマンとクラスカルのタウを指標値αとして算出してもよい。
【0044】
次に、二つのデータ要素の少なくとも一方が連続値のデータ(連続値データ)である場合について説明する。指標値算出部220は、連続値データを任意の数の水準数となるように離散化を行って離散データを生成し、これをカテゴリ値とみなして指標値αを算出してもよい。離散データの生成には、各種のクラスタリング手法(例えば、K-Means法)が用いられてもよい。
【0045】
離散化と同様の概念として、指標値算出部220は、量子化を行ってもよい。量子化には、例えば、Lloyd-Max量子化器が用いられてよい。このとき、量子化幅は、例えば、予め指定した値を用いてもよいし、量子化後の水準数が所定値となるように設定されてもよい。また別の方法として、一方の指標値(例えば、指標値α(x,y))が1となる制約のもとで、他方の指標値(例えば、指標値α(y,x))が最小となる値を量子化幅としてもよく、この方法を用いて量子化点を探索してもよい。
【0046】
次に、二つのデータ要素の一方がカテゴリ値、他方が連続値である場合について説明する。この場合、ばらつきを示す指標値V(.)には分散が用いられてよい。例えば、データ要素xがカテゴリ値、データ要素yが連続値の場合、V(y)およびV(y|x)は、それぞれデータ要素yの分散、およびデータ要素xの各水準におけるデータ要素yの分散であってよい。このように、分散を用いて指標値α(x,y)が算出された場合、他方の指標値α(y,x)は、所定の値(例えば、ゼロ)としてもよいし、或いは連続値であるデータ要素yを離散化(或いは量子化)したうえで、グッドマンとクラスカルのタウを利用してもよい。
【0047】
(ステップST430)
親要素抽出部230は、第1のデータ要素における親要素を抽出する。具体的には、親要素抽出部230は、指標値に基づき、第1のデータ要素と関連性の高い親要素をデータ要素群から抽出する。以下、親要素の抽出の詳細について説明する。
【0048】
第1のデータ要素を前述のデータ要素xとすると、他のデータ要素yが親要素である場合、指標値α(x,y)=1、且つ指標値α(y、x)<1という条件が成り立つ。よって、親要素抽出部230は、上記条件を満たすデータ要素yを、データ要素x(第1のデータ要素)の親要素としてデータ要素群から抽出する。
【0049】
抽出する条件にある程度の幅を持たせたい場合は、指標値α(x,y)>第1の閾値、且つ指標値α(y、x)<第2の閾値という条件を設定してもよい。第1の閾値および第2の閾値は、0以上1以下の任意の値でよく、予め設定されてよい。実用上は、例えば、第1の閾値は1に近い値(例えば、0.8や0.9)に設定され、第2の閾値は第1の閾値以下の値(例えば、0.8や0.5)に設定される。
【0050】
(ステップST440)
出力制御部240は、親要素に関する解析結果を出力する。具体的には、出力制御部240は、第1のデータ要素と親要素とに関する情報を含む解析結果を出力する。ステップST440の後、データ解析プログラムは終了する。
【0051】
解析結果は、例えば、第1のデータ要素に対する親要素を列挙したデータである。具体例を挙げると、例えば、第1のデータ要素を要素X、親要素を要素Y1,Y2,Z1,Z2,Z3,Wとすると、解析結果は、{要素名:X,親要素:[Y1,Y2,Z1,Z2,Z3,W]}のように、第1のデータ要素を示す情報(要素名等)と、その親要素を示す情報(要素名の配列等)を含む構造体であってよい。ここで、{A:X,B:Y}は構造体を示し、A,Bは構造体を構成する要素名、X,Yは各要素の値を示す。また、[X1,X2,・・・]は配列を示す。
【0052】
あるいは、解析結果は、上記の構造体を所定のフォーマット(例えばJSON,XML,YAML等)でシリアル化した文字列で表現されてもよいし、CSV等のような区切り文字よる要素名およびその親要素のリストで表現されてもよいし、要素毎にIDを付与することによってバイナリ配列で表現されてもよい。
【0053】
なお、上記の処理により親要素が抽出されなかった場合、即ち第1のデータ要素に対応する親要素が存在しない場合、親要素が存在しないことを示す情報を出力してよい。この場合の解析結果は、例えば{要素名:X,親要素:[]}のように、空配列等を用い、親要素が存在しないことを示してよい。空配列の代わりに、予め設定されたシンボル(NULL、数値、文字列等)が用いられてもよい。
【0054】
また、上記の具体例のように、解析結果において親要素が複数列挙された場合、データ解析装置100は、更に、複数の親要素間における親子関係をさらに解析してもよい。具体的には、親要素抽出部230は、抽出された複数の親要素を指標値算出部220へと出力する。そして、指標値算出部220は、複数の親要素のそれぞれを基準として他の親要素との指標値を算出し、親要素抽出部230へと出力する。その後、親要素抽出部230は、算出された指標値に基づき、複数の親要素間の親子関係を特定する。即ち、データ解析装置100は、複数の親要素のそれぞれについて、指標値の算出および親要素の出力を反復的に行うことによって、複数の親要素間における親子関係を解析する。
【0055】
具体例を挙げると、データ解析装置100は、複数の親要素間の親子関係として、要素Y1について親要素Z1,Z2を特定し、要素Y2について親要素Z2,Z3,Wを特定し、要素Z3について親要素Wを特定したものとする。このとき、親要素Wは要素Y2,Z3のそれぞれと親子関係であるものの、親要素Wについての直接的な親子関係は要素Z3である。よって、解析結果は、[{要素名:X,親要素:[Y1,Y2]}、{要素名:Y1,親要素:[Z1,Z2]}、{要素名:Y2,親要素:[Z2,Z3]}、{要素名:Z3,親要素:[W]}]のような構造体のリストであってよい。
【0056】
複数の親要素間の親子関係が特定されることにより、解析結果は、例えば、第1のデータ要素と親要素とに基づく階層構造を示したデータであってもよい。以下、階層構造の例として、ツリー構造について
図4を用いて説明する。
【0057】
図5は、階層的な親子関係を説明するためのツリー構造を例示する図である。
図5のツリー構造500は、第1のデータ要素である要素Xを根ノードとし、複数の親要素である要素Y1,Y2,Z1,Z2,Z3,Wのそれぞれを内部ノードまたは葉ノードとした構造となっている。具体的には、ツリー構造500は、複数の親要素について、要素Y1に対する親要素(要素Z1,Z2)、要素Y2に対する親要素(要素Z2,Z3)、および要素Z3に対する親要素(要素W)をそれぞれ示している。
【0058】
ツリー構造500において、要素Y1、Y2、Z3は内部ノードに相当し、要素Z1,Z2,Wは葉ノードに相当する。また、各ノードには、データ要素を示す情報(例えば、データ要素名およびインデックス)と、親要素を示す情報(例えば、データ要素名およびインデックス)が保持されている。
【0059】
以上より、出力制御部240は、データ要素間の親子関係が対応付けられた構造体、構造体のリスト、或いはこれをシリアル化した文字列を解析結果として出力してもよいし、ツリー構造のようなグラフィカルな解析結果を出力してもよいし、その両方を出力してもよい。例えば、グラフィカルな解析結果であれば、ユーザはデータ要素間の関係を視覚的に把握することが可能となる。
【0060】
以上説明したように、第1の実施形態に係るデータ解析装置は、複数のデータ要素で構成されるデータ要素群を取得し、データ要素群のうちの第1のデータ要素について、データ要素群のうちの他のデータ要素との条件付きばらつきを示す指標値を算出し、指標値に基づき、第1のデータ要素と関連性の高い親要素をデータ要素群から抽出し、第1のデータ要素と親要素とに関する第1の情報を含む解析結果を出力する。
【0061】
冒頭にて述べた通り、あるデータYの変化の要因を推定しようとした場合に、データ要素Xの間に親子関係が存在する場合、親要素の効果(影響)は子要素へ継承される。このデータ解析装置によれば、所与のデータ要素について、その親要素を列挙して出力することで、効果が継承された可能性のあるデータ要素をユーザが把握する、或いは他のデータ解析装置に出力させることが可能となる。これにより、観測データの変化要因の解析を行う場合に、要因の見落としを抑制することができる。
【0062】
第1の実施形態に係るデータ解析装置は、所与の第1のデータ要素について親要素を抽出する代わりに、データ要素群全体の親子関係を評価してよい。この場合、指標値算出部220はデータ要素の任意の組み合わせについて指標値αを算出し、親要素抽出部230は、任意の組み合わせについて指標値αから親子関係を評価してよい。これにより、第1のデータ要素を指定せずとも、データ要素群における要素間の親子関係を評価することが可能となる。
【0063】
(第1の実施形態の変形例)
第1の実施形態の変形例に係るデータ解析装置は、第1の実施形態に係るデータ解析装置の構成に類似度算出部を追加する。類似度算出部は、複数の親要素が抽出された場合に、親要素間の類似度を算出する。一般に、データ要素群に複数のデータ要素が存在する場合、同一または類似のデータ要素が含まれていることがある。例えば、データ要素群に類似する二つのデータ要素が存在する場合、他のデータ要素との対応関係(例えば、相関関係または影響)も類似することが多い。このことから、類似するデータ要素を把握することは、データYの変化要因を探索する上で重要である。
【0064】
図6は、第1の実施形態の変形例に係るデータ解析装置の構成を例示するブロック図である。
図6のデータ解析装置100Aは、データ取得部210Aと、指標値算出部220Aと、親要素抽出部230Aと、出力制御部240Aと、類似度算出部650とを備える。尚、データ取得部210Aおよび指標値算出部220Aは、
図2のデータ取得部210および指標値算出部220と同様のため、説明を省略する。また、親要素抽出部230Aおよび出力制御部240Aは、類似度算出部650の追加に係る処理を除き、
図2の親要素抽出部230および出力制御部240と略同様であるため、説明を一部省略する。
【0065】
親要素抽出部230Aは、指標値算出部220Aから指標値を取得する。親要素抽出部230Aは、指標値に基づき、第1のデータ要素における親要素を抽出する。親要素抽出部230Aは、抽出した親要素を出力制御部240Aおよび類似度算出部650へと出力する。
【0066】
類似度算出部650は、親要素抽出部230Aから親要素を取得する。類似度算出部650は、親要素が複数の場合に、複数の親要素のうちの二つのデータ要素間における類似度を算出する。類似度算出部650は、算出した類似度を出力制御部240Aへと出力する。
【0067】
類似度の算出は、例えば、「ピアソンの積率相関係数」、「スピアマンの順位相関係数」、「ケンドールの順位相関係数」、および「MIC(Maximal Information Coefficient)」などを用いてよい。また、データ要素のデータサンプルがカテゴリ値の場合、類似度の算出は、「グッドマンとクラスカルのタウ」および「クラメールのV」などを用いてよい。尚、類似度の算出にグッドマンとクラスカルのタウを用いる場合、二つのデータ要素を用いて算出される二つの値のうちの小さい方を用いればよい。
【0068】
出力制御部240Aは、親要素抽出部230Aから親要素を取得し、類似度算出部650から類似度を取得する。出力制御部240Aは、類似度を考慮した解析結果を出力装置110へと出力する。具体的には、出力制御部240Aは、類似度が所定の閾値を越えた場合、当該類似度に対応する二つのデータ要素をグループ化してもよい。
【0069】
類似度を考慮した解析結果は、例えば、第1のデータ要素に対する親要素を更にグループ化して列挙したデータである。具体例を挙げると、例えば、第1のデータ要素を要素A、親要素を要素B1,B2,B3,B4とすると、グループ化する前の解析結果は、{要素名:A,親要素:[B1,B2,B3,B4]}のような構造体で表現される。ここで、親要素B2,B3がグループ化された場合、類似度を考慮した解析結果は、{要素名:A,親要素:[B1,[B2,B3],B4]}のように、グループ化された要素の部分について配列あるいは構造体等で表現されてよい。
【0070】
また、類似度を考慮した解析結果は、類似する要素の組み合わせを別途出力してもよい。この場合、類似度を考慮した解析結果は、{要素名:A,親要素:[B1,B2,B3,B4]}、{類似要素:[B2,B3]}のように、類似度を考慮しない(グループ化する前の)解析結果(構造体)と、類似要素の配列を含む構造体とで表現されてよい。尚、類似度を考慮した解析結果は、所定の閾値を越えた類似度の値を合わせて出力してもよい(例えば、{類似要素:[B2,B3],類似度:90%})。
【0071】
更に、出力制御部240Aは、類似度に基づき、二次元ヒートマップを生成してもよい。二次元ヒートマップには、行方向および列方向にそれぞれ複数の親要素を配置し、類似度の値を色の濃淡、或いは色相に対応させたものである。出力制御部240Aは、生成した二次元ヒートマップを解析結果とは別に出力装置110へと出力してもよいし、生成した二次元ヒートマップを解析結果に含めて出力装置110へと出力してもよい。二次元ヒートマップが出力されることによって、ユーザは、データ要素間の類似関係を視覚的に把握することが可能となる。
【0072】
以上説明したように、第1の実施形態の変形例に係るデータ解析装置は、第1の実施形態に係るデータ解析装置の処理に加えて、複数の親要素のうちの二つのデータ要素間における類似度を算出し、算出した類似度に基づく解析結果を出力する。
【0073】
従って、第1の実施形態の変形例に係るデータ解析装置は、複数の親要素における類似するデータ要素を抽出、およびグループ化することにより、ユーザが解析結果をより把握しやすくできる。
【0074】
なお、第1の実施形態の変形例では、類似度算出部を別途設けたが、これに限らない。例えば、類似度算出部の処理を親要素抽出部、或いは出力制御部が行ってもよい。
【0075】
(第2の実施形態)
第2の実施形態に係るデータ解析装置は、第1の実施形態に係るデータ解析装置の構成に原因推定部を追加する。原因推定部は、特定のデータ要素の変化の原因となる原因要素を推定する。特定のデータ要素は、例えば、ユーザが着目している、あるいは変化の原因を評価したいデータ要素である。例えば製造業におけるデータの場合、製品毎の品質指標値の測定値や不良の有無、あるいはロット毎の不良率等のいずれかであってよい。
【0076】
第1の実施形態では、データ要素群のうちの任意のデータ要素(第1のデータ要素)を用いて、指標値の算出や親要素の抽出を行うことについて述べた。しかし、第1のデータ要素の選択ついては例えばユーザに委ねられていた。他方、本実施形態では、第1のデータ要素を推定された原因要素に置き換えることによって、データ解析装置は、第1のデータ要素を適切に設定し、特定のデータ要素の変化の原因となる原因要素の解析を行う場合に、要因の見落としを抑制することができる。
【0077】
図7は、第2の実施形態に係るデータ解析装置の構成を例示するブロック図である。
図7のデータ解析装置700は、データ取得部710と、指標値算出部720と、親要素抽出部730と、出力制御部740と、原因推定部760とを備える。尚、データ取得部710、指標値算出部720、親要素抽出部730、および出力制御部740は、原因推定部760の追加に係る処理を除き、
図2のデータ取得部210、指標値算出部220、親要素抽出部230、および出力制御部240と略同様であるため、説明を一部省略する。
【0078】
データ取得部710は、記憶装置120からデータ要素群を取得する。データ取得部710は、取得したデータ要素群を原因推定部760および指標値算出部720へとそれぞれ出力する。
【0079】
原因推定部760は、データ取得部710からデータ要素群を取得する。原因推定部760は、特定のデータ要素の変化(例えば、期待値の変化またはばらつきの変化等)について、変化の原因であるデータ要素、または変化の原因と関連(相関)するデータ要素をデータ要素群から推定する。具体的には、原因推定部760は、特定のデータ要素およびデータ要素群を用いて回帰分析を行うことによって、変化要因の原因となる原因要素を推定する。原因推定部760は、推定した原因要素を指標値算出部720へと出力する。尚、本明細書において、原因要素は、一つまたは複数のデータ要素を含んでよい。また、原因推定部760において、原因要素が抽出されない場合も考えられるが、そのような場合は、当該原因要素に対する後段の処理(親要素の抽出等)はスキップされてよい。原因要素の推定の詳細については後述される。
【0080】
指標値算出部720は、データ取得部710からデータ要素群を取得し、原因推定部760から原因要素を取得する。原因要素が一つの場合、指標値算出部720は当該原因要素を第1の実施形態で述べた第1のデータ要素として、当該データ要素と他のデータ要素との間で条件付きばらつきを示す指標値を算出してよい。原因要素が複数の場合、指標値算出部720は、当該原因要素のそれぞれを上記第1のデータ要素として、各原因要素と他のデータ要素との間で条件付きばらつきを示す指標値を算出してよい。指標値算出部720は、算出した複数の指標値を親要素抽出部730へと出力する。
【0081】
親要素抽出部730は、指標値算出部720から複数の指標値を取得する。親要素抽出部730は、複数の指標値に基づき、原因要素のそれぞれについて、各原因要素と関連性の高い親要素をデータ要素群から抽出する。親要素抽出部730は、複数の原因要素のそれぞれに対応する親要素を出力制御部740へと出力する。
【0082】
出力制御部740は、親要素抽出部730から、複数の原因要素のそれぞれに対応する親要素を取得する。出力制御部740は、複数の原因要素のそれぞれについて、原因要素と親要素とに関する情報を含む解析結果を出力する。よって、出力制御部740は、複数の原因要素のそれぞれについて、データ要素間の親子関係が対応付けられたデータ(構造体)を出力してよいし、あるいはこれを所定の形式(例えばJSON,XML,YAML等)にシリアル化した文字列を解析結果として出力してもよい。あるいは、複数の原因要素のそれぞれについて、ツリー構造のようなグラフィカルな解析結果を出力してもよいし、データとグラフィックの両方を出力してもよい。
【0083】
なお、データ解析装置700は、メモリおよびプロセッサを備えてもよい。メモリは、例えば、データ解析装置700の動作に関する各種プログラム(例えば、データ解析プログラムなど)を記憶する。プロセッサは、メモリに記憶された各種プログラムを実行することで、データ取得部710、指標値算出部720、親要素抽出部730、出力制御部740、および原因推定部760の各機能を実現する。また、データ解析装置700は、出力装置110および記憶装置120の少なくとも一方を有してもよい。
【0084】
以上、第2の実施形態に係るデータ解析装置700の構成について説明した。次に、データ解析装置700の動作について
図8のフローチャートを用いて説明する。
【0085】
図8は、
図7のデータ解析装置の動作を例示するフローチャートである。
図8のフローチャートの処理は、ユーザによってデータ解析プログラムが実行されることで開始する。
【0086】
(ステップST810)
データ解析プログラムが実行されると、データ取得部710は、データ要素群を取得する。具体的には、データ取得部710は、特定のデータ要素を含む、複数のデータ要素で構成されるデータ要素群を取得する。
【0087】
(ステップST820)
原因推定部760は、変化の原因となる原因要素を推定する。具体的には、原因推定部760は、特定のデータ要素およびデータ要素群を用いて回帰分析を行うことによって、変化要因の原因となる原因要素を推定する。以下、原因要素の推定の詳細について説明する。
【0088】
より具体的には、原因推定部760は、データ要素群の各データ要素を説明変数とし、特定のデータ要素を目的変数とした回帰分析を行うことによって原因要素を推定する。例えば、所与のデータ要素(例えば、データ要素a)が特定のデータ要素(例えば、データ要素Y)の変化の原因、原因と関連する、または相関する場合、データ要素aを説明変数Aとした回帰分析は、データ要素Yに対する当てはまりのよい回帰モデルを得られることが期待される。当てはまりのよい回帰モデルとは、例えば、回帰誤差(例えば、最小二乗誤差)が小さいモデル、或いは尤度が高いモデルである。よって、原因推定部760は、任意のデータ要素について回帰分析を行い、回帰誤差が最小、或いは尤度が最大となるデータ要素を探索することによって、データ要素Yの変化要因の原因となる要素(原因要素)を推定することができる。
【0089】
回帰分析の手法としては、例えば、線形回帰、一般化線形回帰(例えば、ロジスティック回帰およびポアソン回帰)、基底線形回帰、カーネル回帰、サポートベクター回帰、多層パーセプトロン、回帰木、およびランダムフォレストが用いられる。データ要素がカテゴリ値の場合、原因推定部760は、このデータ要素にOne-Hotエンコーディングを施したうえで回帰分析を行ってよい。
【0090】
また、原因推定部760は、回帰誤差とは異なる指標を用いて原因要素を推定してもよい。一般に、水準数の多いデータ要素、或いは多数のデータ要素の組み合わせを説明変数に用いた場合、回帰誤差は小さくなりやすい傾向がある。このような傾向によらず、データ要素Yの変化要因の原因要素を推定するために、モデルの当てはまりに加えて、モデルの複雑さ(例えば、説明変数の数、或いは非線形回帰における正則化強度)を考慮したモデル比較指標を用いて原因要素が推定されてもよい。
【0091】
モデル比較指標としては、例えば、赤池情報量基準(AIC:Akaike Information Criterion)、ベイズ情報量基準(BIC:Bayesian Information Criterion)、広く使える情報量基準(WAIC:Widely Appliation Information Criterion)、およびマローズのCpなどが用いられる。
【0092】
また別の指標として、クロスバリデーション(例えば、Leave-One-OutクロスバリデーションおよびK-foldバリデーション)誤差が用いられてもよい。
【0093】
前述の指標を用いた指標値は、その値が小さいほどモデルの尤もらしさが高いことを示す。一方で、モデルの尤もらしさを推定するために、回帰モデルにおける周辺尤度、または周辺尤度の近似値が用いられてもよい。これらを用いた場合、その値が大きいほどモデルの尤もらしさが高いことを示す。上述のBIC等のモデル比較指標も、モデルの尤もらしさを示す値(対数周辺尤度)の近似値と見做すことができる。よって、原因推定部760は、モデルの尤もらしさを示す値(例えば、AIC,BICの値、周辺尤度或いはその対数(対数周辺尤度)の値)を、データ要素Yの変化要因を推定するためのスコアとして用いてよい。以降では、このスコアが高いほど、最尤モデルに近いものとして説明する。
【0094】
換言すると、原因推定部760は、モデルの尤もらしさを表すスコアが最大となるモデルの説明変数(データ要素)を、原因要素として推定してよい。また、原因推定部760は、スコアが上位に位置するデータ要素を、複数の原因要素として推定してよい。推定される原因要素の数は、予め決められていてもよいし、スコアが所定の閾値以上(例えば、最大スコアから所定量を減算または除算した値以上)となるデータ要素の数でもよい。また、原因推定部760は、推定された複数の原因要素をスコアに応じてソートさせてもよいし、原因要素とそのスコアとを対応付けてもよい。
【0095】
(ステップST830)
指標値算出部720は、原因要素と他のデータ要素との間で条件付きばらつきを示す指標値を算出する。具体的には、指標値算出部720は、原因要素のそれぞれについて、データ要素群のうちの他のデータ要素との条件付きばらつきを示す指標値を算出する。
【0096】
(ステップST840)
親要素抽出部730は、原因要素における親要素を抽出する。具体的には、親要素抽出部730は、指標値に基づき、原因要素のそれぞれについて、各原因要素と関連性の高い親要素をデータ要素群から抽出する。
【0097】
(ステップST850)
出力制御部740は、親要素に関する解析結果を出力する。具体的には、出力制御部740は、原因要素のそれぞれについて、原因要素と対応する親要素とに関する情報を含む解析結果を出力する。ステップST840の後、データ解析プログラムは終了する。
【0098】
以上説明したように、第2の実施形態に係るデータ解析装置は、第1の実施形態に係るデータ解析装置の各処理に加えて、変化の原因となる原因要素を推定し、第1のデータ要素を推定した原因要素に置き換えたうえで、指標値の算出および親要素の抽出を行うことができる。
【0099】
従って、第2の実施形態に係るデータ解析装置は、第1のデータ要素を推定された原因要素に置き換えて解析をすることにより、詳細な観測データの変化要因の解析を行うことができる。
【0100】
また、前述の通り、データ要素間に親子関係が存在する場合、親要素の効果(影響)は、子要素へと継承される。このことから、原因推定結果として得られるデータ要素は、子要素に相当する、水準数の多いデータ要素である場合が多い。このような場合に、その親要素を列挙して出力することで、原因推定結果のデータ要素へと効果が継承された可能性のある親要素をユーザ、あるいは他のデータ解析装置に把握させることが可能となる。
【0101】
(第2の実施形態の応用例)
上述した第2の実施形態では、原因推定部によって原因要素を推定することについて述べた。しかし、原因要素の組み合わせを推定することについては考慮されていない。よって、第2の実施形態の応用例では、原因推定部によって原因要素の組み合わせを推定することについて述べる。尚、第2の実施形態の応用例に係る各種処理は、第2の実施形態の原因推定部760が行うものとして説明する。
【0102】
前述した通り、原因推定部760は、データ要素群の各データ要素またはその組み合わせを説明変数とし、特定のデータ要素を目的変数とした回帰分析を行うことで、原因推定を行う。即ち、原因推定部760より出力される原因候補は単一のデータ要素に限定されず、その組み合わせであっても良い。複数のデータ要素を用いた回帰は重回帰と呼ばれる。データ要素の組み合わせは、連続値同士、カテゴリ値同士あるいはこれらの組み合わせのいずれであっても良い。原因推定部は、データ要素の組み合わせを含め、「原因らしさ」の指標(スコア)が大きくなるデータ要素を出力してよい。
【0103】
原因推定部760は、例えば、LassoやGroup Lassoの手法を用いて、スコアの大きいデータ要素の組み合わせを推定してもよい。例えば、カテゴリ値をOne-Hotエンコードしたものを1つのグループとし、連続値は各要素をグループ(1要素によるグループ)として、データ要素群の任意のデータ要素を説明変数としたGroup Lassoを行って、原因推定を行ってよい。この場合、正則化強度を変更して回帰を行い、上記スコアが最大となった際の回帰モデルを取得する。Lassoでは、必要な係数を除き各係数が0となりやすい特性をもつ。このことから、得られた回帰モデルにおいて、0でない係数をもつデータ要素を原因候補として出力してよい。
【0104】
上記手法のほか、原因推定部760は、例えば全探索、貪欲法あるいはその他の各種組み合わせ最適化手法を用いて、スコアが最大化されるデータ要素の組み合わせを探索してもよい。
【0105】
また、原因推定部760がデータ要素の組み合わせを原因候補として出力する場合、指標値算出部720および親要素抽出部730は、上記組み合わせの各要素について、これを第1のデータ要素として、指標算出および親要素抽出を行い、出力制御部740において出力してよい。
【0106】
(第2の実施形態の変形例)
第2の実施形態の変形例に係るデータ解析装置は、第2の実施形態に係るデータ解析装置の構成に類似度算出部を追加する。
【0107】
図9は、第2の実施形態の変形例に係るデータ解析装置の構成を例示するブロック図である。
図9のデータ解析装置700Aは、データ取得部710Aと、指標値算出部720Aと、親要素抽出部730Aと、出力制御部740Aと、原因推定部760Aと、類似度算出部950とを備える。尚、データ取得部710A、指標値算出部720A、親要素抽出部730A、および原因推定部760Aは、
図7のデータ取得部710、指標値算出部720、親要素抽出部730、および原因推定部760と同様のため、説明を省略する。また、類似度算出部950および出力制御部740Aは、
図6の類似度算出部650および出力制御部240Aと略同様であるため、説明を一部省略する。尚、以降では、原因推定部760Aによって推定された原因要素が複数の場合について説明する。
【0108】
類似度算出部950は、親要素抽出部730Aから、複数の原因要素のそれぞれに対応する親要素を取得する。類似度算出部950は、複数の原因要素のそれぞれについて、親要素が複数の場合に、複数の親要素のうちの二つのデータ要素間における類似度を算出する。類似度算出部950は、複数の原因要素のそれぞれについて算出した類似度を出力制御部740Aへと出力する。
【0109】
出力制御部740Aは、親要素抽出部730Aから複数の原因要素のそれぞれに対応する親要素を取得し、類似度算出部950から複数の原因要素のそれぞれについて算出された類似度を取得する。出力制御部740Aは、複数の原因要素のそれぞれについて、類似度を考慮した解析結果を出力装置110へと出力する。
以上説明したように、第2の実施形態の変形例に係るデータ解析装置は、第2の実施形態に係るデータ解析装置の処理に加えて、複数の原因要素のそれぞれについて、複数の親要素のうちの二つのデータ要素間における類似度を算出し、算出した類似度に基づく解析結果を出力する。
【0110】
従って、第2の実施形態の変形例に係るデータ解析装置は、複数の原因要素のそれぞれについて、複数の親要素における類似するデータ要素を抽出、およびグループ化することにより、ユーザが解析結果をより把握しやすくできる。
【0111】
なお、第2の実施形態の変形例では、類似度算出部を別途設けたが、これに限らない。例えば、類似度算出部の処理を親要素抽出部、或いは出力制御部が行ってもよい。
【0112】
(第3の実施形態)
第3の実施形態に係るデータ解析装置は、第1の実施形態に係るデータ解析装置の構成に効果量算出部を追加する。効果量算出部は、特定のデータ要素の変化に対する効果量を算出する。第1の実施形態では、第1のデータ要素について親要素を列挙する、或いは階層構造によって示すことを述べた。しかし、第1のデータ要素に対して、親要素が複数ある場合、第1のデータ要素と複数の親要素のうちのどの要素の影響(効果)が大きいかを把握することが困難であった。他方、本実施形態では、第1のデータ要素と親要素とについて効果量を算出することによって、ユーザはより影響の大きい親要素を容易に特定することが可能となる。
【0113】
図10は、第3の実施形態に係るデータ解析装置の構成を例示するブロック図である。
図10のデータ解析装置1000は、データ取得部1010と、指標値算出部1020と、親要素抽出部1030と、出力制御部1040と、効果量算出部1070とを備える。尚、指標値算出部1020は、
図2の指標値算出部220と同様のため、説明を省略する。また、データ取得部1010、親要素抽出部1030、および出力制御部1040は、
図2のデータ取得部210、親要素抽出部230、および出力制御部240と略同様であるため、説明を一部省略する。
【0114】
データ取得部1010は、記憶装置120からデータ要素群を取得する。データ取得部1010は、取得したデータ要素群を指標値算出部1020および効果量算出部1070へとそれぞれ出力する。
【0115】
親要素抽出部1030は、指標値算出部1020から指標値を取得する。親要素抽出部1030は、指標値に基づき、第1のデータ要素における親要素を抽出する。親要素抽出部1030は、抽出した親要素を出力制御部1040および効果量算出部1070へと出力する。
【0116】
効果量算出部1070は、データ取得部1010からデータ要素群を取得し、親要素抽出部1030から親要素を取得する。効果量算出部1070は、特定のデータ要素の変化(例えば、期待値の変化またはばらつきの変化)に対して、第1のデータ要素および親要素について効果量を算出する。換言すると、効果量算出部1070は、第1のデータ要素と親要素のとについて、特定のデータ要素の変化に対する効果量を算出する。効果量算出部1070は、算出した効果量を出力制御部1040へと出力する。尚、効果量の算出の詳細については後述される。
【0117】
出力制御部1040は、親要素抽出部1030から親要素を取得し、効果量算出部1070から効果量を取得する。出力制御部1040は、効果量に関する情報を含む解析結果を出力装置110へと出力する。また、効果量の確率分布が算出されている場合、出力制御部1040は、上記確率分布に関する情報を含む解析結果を出力装置110へと出力してもよい。
【0118】
効果量に関する情報を含む解析結果は、例えば、第1のデータ要素に対する親要素を列挙したデータ、および第1のデータ要素と親要素とについての効果量のデータである。親要素を列挙したデータと効果量のデータとが合わせて出力されることによって、ユーザは、特定のデータ要素の変化に対する親要素の効果量を把握することが可能となり、変化要因の原因を探索しやすくなる。
【0119】
また、確率分布に関する情報を含む解析結果は、上記の効果量に関する情報を含む解析結果に加えて、効果量の精度に関する情報を含む。効果量の精度に関する情報は、例えば、効果量の期待値または中央値と、その分散、標準偏差または信頼区間などである。更に、効果量の精度に関する情報は、例えば、効果量の相関関係を示す情報(例えば、共分散行列または相関行列)を含んでもよい。これらにより、ユーザは、効果量の精度に関する情報を把握することができる。
【0120】
また、出力制御部1040は、効果量の値に応じて、第1のデータ要素に対する親要素を列挙したデータの表示態様を変更してもよい。表示態様の変更は、例えば、第1のデータ要素と親要素との表示順序をソートすること、第1のデータ要素と親要素とを表示する文字列の文字サイズ、太さ、および文字色の少なくとも一つを変更することを含む。
【0121】
具体的には、出力制御部1040は、データ要素の効果量の値に応じて、ソートして(例えば、効果量の大きい順に並べて)解析結果を出力する。また、出力制御部1040は、データ要素の効果量の値に応じて、効果量の大きい要素を強調して(例えば、文字サイズを大きく、文字を太字に、または文字に色づけして)解析結果を出力する。また、出力制御部1040は、データ要素の効果量の値に応じて、表示する文字列の表示色を変更して(例えば、効果量の値が大きいほど赤色、小さいほど青色となるグラデーションとする)解析結果を出力する。
【0122】
更に、表示態様の変更は、効果量の値が小さい親要素(例えば、効果量の値が所定の閾値以下である親要素)を除外、或いは非可視化することを含んでもよい。このような親要素を除外、或いは非可視化することは、ユーザの操作によって任意に選択できてよい。
【0123】
更に、出力制御部1040は、ツリー構造のようなグラフィカルなデータを上記解析結果と合わせて出力してもよい。
【0124】
なお、データ解析装置1000は、メモリおよびプロセッサを備えてもよい。メモリは、例えば、データ解析装置1000の動作に関する各種プログラム(例えば、データ解析プログラムなど)を記憶する。プロセッサは、メモリに記憶された各種プログラム(例えば、データ解析プログラムなど)を実行することで、データ取得部1010、指標値算出部1020、親要素抽出部1030、出力制御部1040、および効果量算出部1070の各機能を実現する。また、データ解析装置1000は、出力装置110および記憶装置120の少なくとも一方を有してもよい。
【0125】
以上、第3の実施形態に係るデータ解析装置1000の構成について説明した。次に、データ解析装置1000の動作について
図11のフローチャートを用いて説明する。
【0126】
図11は、
図10のデータ解析装置の動作を例示するフローチャートである。
図11のフローチャートの処理は、ユーザによってデータ解析プログラムが実行されることで開始する。尚、ステップST1110からステップST1130までの処理は、
図4のステップST410からステップST430までの処理と同様のため、説明を省略する。また、ステップST1130の処理の後、処理はステップST1140へと遷移する。
【0127】
(ステップST1140)
効果量算出部1070は、第1のデータ要素および親要素のそれぞれについて効果量を算出する。具体的には、効果量算出部1070は、第1のデータ要素と親要素とについて、特定のデータ要素の変化に対する効果量を算出する。以下、効果量の算出の詳細について説明する。
【0128】
より具体的には、効果量算出部1070は、第1のデータ要素、或いは親要素を説明変数とし、特定のデータ要素を目的変数とした回帰分析を行い、説明変数が特定のデータ要素に寄与する大きさまたは割合を効果量として算出する。例えば、一般化線形回帰を用いる場合、効果量は、回帰係数の大きさ(例えば、絶対値または二乗値)であってよい。また、データ要素がカテゴリ値の場合、効果量算出部1070は、このデータ要素にOne-Hotエンコードを施したうえで回帰分析を行い、分析により得られた係数のばらつき(例えば、絶対値の平均、標準偏差または分散)を効果量としてよい。また別の手法として、回帰木を用いる場合、効果量算出部1070は、特徴量重要度(例えば、ジニ重要度)を効果量としてよい。
【0129】
一般に、説明変数とした各データ要素間が完全に相関する(即ち、相関係数が1である)場合、回帰係数が不定となることが知られている。このことは、各データ要素が親子関係を有する場合も同様である。よって、効果量算出部1070は、各効果の期待値がゼロ(即ち、効果がゼロに近い値)であると仮定して回帰分析を行い、効果量を算出してよい。
【0130】
具体的には、効果量算出部1070は、各係数についてL2正則化(即ち、リッジ回帰)を行ってよく、或いは期待値ゼロの事前分布(例えば、期待値ゼロの正規事前分布)を設定したベイズ回帰を行ってよい。このような、正則化、或いは非一様な事前分布を設定したベイズ回帰により、各係数を算出することが可能となり、効果量を評価できる。
【0131】
なお、説明変数(第1のデータ要素、或いは親要素のそれぞれ)と特定のデータ要素によって、説明変数による既知のバイアスがある場合、効果量算出部1070は、既知のバイアスを考慮した処理を行ってもよい。既知のバイアスとは、例えば、製造業において、経年劣化などによって装置毎に観測値の期待値が異なることである。よって、効果量算出部1070は、既知のバイアス量を期待値とした事前分布(例えば、バイアス量を期待値とした正規分布)を設定したベイズ回帰を行ってよく、或いは既知のバイアス量からのずれ量に基づくL2正則化を行ってよい。尚、効果量算出部1070は、既知のバイアス量を補正したうえで(例えば、装置毎に特定のデータ要素の期待値を差し引いたうえで)、処理を行ってもよい。
【0132】
上記の正則化の強度、或いは事前分布の分散といったハイパーパラメータは、例えば、事前に設定された値を用いてよい。また、ハイパーパラメータは、データ要素に基づいて最適化したうえで用いてもよい。例えば、効果量算出部1070は、前述のクロスバリデーション誤差、或いはその近似値(例えば、一般化クロスバリデーション)を最小化するハイパーパラメータを探索して用いてもよい。また例えば、効果量算出部1070は、前述の周辺尤度、或いは周辺尤度の近似値を最大化するハイパーパラメータを探索して用いてもよい。
【0133】
以下では、より具体的な説明として、第1のデータ要素およびその親要素に対応する二つのデータ要素について効果量を算出することについて述べる。二つのデータ要素をそれぞれX1,X2とした場合、回帰モデルは、例えば以下の式(4)で表される。
【0134】
【0135】
式(4)において、β1およびβ2はそれぞれデータ要素X1,X2の回帰係数、εは回帰誤差を表す。また、g(.)はリンク関数であり、特定のデータ要素の値域に応じて、例えば恒等関数(g(y)=y)、ロジット関数(g(y)=ln(y/(1-y)))、および対数関数(g(y)=ln(y))を用いることができる。尚、上記の回帰モデルに対して、さらに定数項(切片項)が追加されてもよい。また、データ要素X1,X2がカテゴリ値の場合、これらのデータ要素にOne-Hotエンコーディングを施した値を用いてよい。
【0136】
更に、前述の回帰モデルのもとで、ロス関数が最小となるパラメータ(β1およびβ2)を探索することについて述べる。ロス関数は、例えば、以下の式(5)で表される。
【0137】
【0138】
式(5)において、||.||2はL2ノルムを表す。また、L(.)は損失関数であり、特定のデータ要素が連続値の場合は例えば二乗損失(二乗誤差)を用いてよく、特定のデータ要素がカウント値(例えば、度数データ)の場合は例えばポアソン損失関数を用いてよく、特定のデータ要素がフラグ(例えば、不良の有無等)や確率値(不良率等)の場合は例えば交差エントロピー関数を用いてよい。また、λは正則化の強度を示すハイパーパラメータを表す。
【0139】
よって、上述の式(5)を用いることによって、効果量算出部1070は、最適なパラメータ(β1およびβ2)の値、またはばらつきの値(これはデータ要素がカテゴリ値の場合)が得られるため、二つのデータ要素X1,X2のそれぞれの効果量を算出することができる。
【0140】
また別の方法として、前述の回帰モデルをベイズモデルとして評価してもよい。具体的には、二つのデータ要素X1,X2の回帰係数β1,β2に対して、期待値ゼロ(または、既知のバイアスに関する所定の値)の事前分布を設定し、二つのデータ要素X1,X2および特定のデータ要素Yに対する事後分布を推定してもよい。ベイズモデルは、例えば、以下の式(6)で表される。
【0141】
【0142】
式(6)において、左辺は事後分布、右辺の第一項は尤度関数、右辺の第二項は事前分布を表す。事後分布の推定は、線形モデルの場合は解析的に評価することが可能である。他の場合(例えば、ロジスティック回帰モデル、ポアソン回帰モデル)は、例えばLaplace近似、変分推論、マルコフ連鎖モンテカルロ(MCMC)法などの各種近似推定手法により評価してよい。得られた事後分布に基づき、例えば事後確率が最大となるパラメータ(MAP推定量)を用いて、各データ要素の効果量を推定してよい。あるいは、事後分布に基づき、各データ要素の効果量の分布を推定してもよい。事後分布は、各係数(β1,β2)がとり得る値の確率を示しており、これに基づけば各効果量のとり得る範囲を確率的に評価することが可能となる。例えば、事後分布に基づき各係数(β1,β2)のサンプルを取得し、得られたサンプルそれぞれについて効果量を推定することで、得られた効果量のサンプルから、効果量の確率分布を評価してよい。この手法によれば、各データ要素(X1,X2)の効果量について、その期待値だけでなく分布(ばらつき)も確認することが可能となる。
【0143】
あるいは、各データ要素(X1,X2)の各係数(β1,β2)について、それぞれ異なる事前分布を設定してもよい。具体的には、各係数はそれぞれ以下で表される。
【0144】
【0145】
ただしβ10,β20は事前分布の期待値パラメータであり、例えばゼロまたは所定の値(例えば、既知のバイアス)である。Nは例えば正規分布であり、β~N(μ,σ)は左辺値βが右辺の確率分布(期待値μ、スケールσの分布、例えば正規分布)に従うことを示している。v1およびv2は事前分布のスケールパラメータ(分散または標準偏差)である。例えば、上記モデルの周辺尤度に基づき、周辺尤度を最大化するスケールパラメータv1、v2を求めてよい。例えば線形モデルの場合、周辺尤度は、以下の式(7)で表される。
【0146】
【0147】
上記式(7)は、スケールパラメータv1,v2と、モデル誤差のスケールσ2による関数である。線形モデル以外の場合、正規分布N(y|...)の代わりに対応する尤度関数を用い、例えばLaplace近似、変分推論、マルコフ連鎖モンテカルロ(MCMC)法などの各種近似推定手法を用いて尤度関数を評価してよい。周辺尤度を最大化する各パラメータは、例えば勾配降下法、ニュートン法などにより探索することができる。スケールパラメータv1,v2は、二つのデータ要素X1,X2のそれぞれの係数(β1,β2)のスケール(分散)を示すパラメータである。このことから、周辺尤度を最大化するスケールパラメータv1,v2、あるいはその平方根をとった値を、二つのデータ要素X1,X2のそれぞれの効果量として用いることができる。
【0148】
あるいは、上記スケールパラメータv1,v2に対してさらに事前分布(超事前分布)を設定してベイズ推定を行うことで、スケールパラメータv1,v2の事後分布を推定してもよい。超事前分布は、例えば正の実数空間上の一様分布、半コーシー分布、逆ガンマ分布、ガンマ分布などを用いてよい。事後分布の推定は、例えば変分推論やMCMC法などにより行ってよい。これにより、各データ要素の効果量の確率分布を評価することも可能となる。
【0149】
(ステップST1150)
出力制御部1040は、親要素および効果量に関する解析結果を出力する。具体的には、出力制御部1040は、第1のデータ要素と親要素とに関する情報と、第1のデータ要素と親要素とについての効果量の情報とを含む解析結果を出力する。ステップST1150の後、データ解析プログラムは終了する。
【0150】
以上説明したように、第3の実施形態に係るデータ解析装置は、第1の実施形態に係るデータ解析装置の各処理に加えて、第1のデータ要素と親要素とについての効果量を算出することができる。
【0151】
従って、第3の実施形態に係るデータ解析装置は、効果量に基づいて抽出された親要素を評価することができるため、詳細な観測データの変化要因の解析を行うことができる。
【0152】
また、一般に親子関係をもつデータ要素では、親要素の効果は子要素へと継承される。このことから、本実施形態によれば各データ要素それぞれの効果量を推定して出力するため、親子関係にあるデータ要素のいずれか、または特定のデータ要素に対する効果の大きいデータ要素の探索が容易となる。
【0153】
(第3の実施形態の応用例)
効果量算出部1070は、効果量のスパース性を仮定して、効果量推定を行ってもよい。スパース性の仮定は、説明変数となるデータ要素X(=X1,X2,...)のうち、一部の要素のみが特定のデータ要素に対する効果をもつという仮定である。例えば、各係数についてL1ノルムによる正則化を行うLasso回帰、Group Lasso回帰、あるいはL1ノルムとL2ノルムの両方を用いるElastic Netにより、効果量を推定してもよい。カテゴリ値が説明変数要素である場合、カテゴリ値をOne-Hotエンコードしたものを1つのグループとしてGroup Lasso回帰を行ってよい。このほか、値をもつ係数の数(L0ノルム)、効果を持つ要素の数等を正則化項として加えて回帰を行ってもよい。
【0154】
あるいは、効果量算出部1070は、スパース性を仮定したベイズ推定手法を用いてもよい。これは、各係数についての事前分布を変更することで行ってよい。スパース性を仮定した事前分布として、例えばラプラス分布、Spike and slab事前分布、Horsehoe事前分布等が知られている。これら事前分布を用いてベイズ推定を行うことで、効果量算出部1070は、各要素の効果量を推定してもよい。
【0155】
(第3の実施形態の変形例)
第3の実施形態の変形例に係るデータ解析装置は、第3の実施形態に係るデータ解析装置に原因推定部および類似度算出部の少なくとも一方を追加する。以下では、第3の実施形態の変形例に係るデータ解析装置は、原因推定部および類似度算出部の両方が追加される場合について説明する。
【0156】
図12は、第3の実施形態の変形例に係るデータ解析装置の構成を例示するブロック図である。
図12のデータ解析装置1000Aは、データ取得部1010Aと、指標値算出部1020Aと、親要素抽出部1030Aと、出力制御部1040Aと、効果量算出部1070Aと、類似度算出部1250と、原因推定部1260とを備える。尚、データ解析装置1000Aは、
図9のデータ解析装置700Aの構成に、効果量算出部を追加した構成とみなすこともできる。よって、以下では、データ解析装置700Aの各部と重複する構成については、説明を一部省略する。また、以降では、原因推定部1260によって推定された原因要素が複数の場合について説明する。
【0157】
データ取得部1010Aは、記憶装置120からデータ要素群を取得する。データ取得部1010Aは、取得したデータ要素群を原因推定部1260、指標値算出部1020A、および効果量算出部1070Aへとそれぞれ出力する。
【0158】
親要素抽出部1030Aは、指標値算出部1020Aから複数の指標値を取得する。親要素抽出部1030Aは、複数の指標値に基づき、複数の原因要素のそれぞれについて、原因要素と関連性の高い親要素をデータ要素群から抽出する。親要素抽出部1030Aは、複数の原因要素のそれぞれに対応する親要素を、類似度算出部1250、出力制御部1040、および効果量算出部1070Aへとそれぞれ出力する。
【0159】
効果量算出部1070Aは、データ取得部1010Aからデータ要素群を取得し、親要素抽出部1030Aから複数の原因要素のそれぞれに対応する親要素を取得する。効果量算出部1070Aは、複数の原因要素のそれぞれについて、原因要素と親要素のそれぞれとの効果量を算出する。効果量算出部1070Aは、複数の原因要素のそれぞれについて算出した効果量を出力制御部1040Aへと出力する。
【0160】
なお、原因推定部1260において重回帰分析が行われた場合、効果量算出部1070Aは、組み合わせの各要素について、それぞれ効果量を推定してよい。この場合、効果量算出部1070Aは、組み合わせの各要素(第1のデータ要素)とその親要素、および特定のデータ要素を用いて効果量推定を行ってよい。
【0161】
あるいは、特定のデータ要素の代わりに、特定のデータ要素における、データ要素(第1のデータ要素)の効果成分、あるいは、組み合わせの他要素による効果を差し引いた残差Rを用いて効果量推定を行ってよい。組み合わせの所与の要素における残差Rは、組み合わせを説明変数として特定のデータ要素の回帰を行ったモデルから、上記所与の要素の効果を除外して(係数を0として)予測を行った残差(特定のデータ要素から予測値を差し引いた値)である。このようにすることで、重回帰モデルの各要素について、それぞれ独立に親子関係およびその効果を評価することが可能となる。
【0162】
出力制御部1040Aは、親要素抽出部1030Aから複数の原因要素のそれぞれに対応する親要素を取得し、類似度算出部1250から複数の原因要素のそれぞれについて算出された類似度を取得し、効果量算出部1070Aから複数の原因要素のそれぞれについて算出された効果量を取得する。出力制御部1040Aは、複数の原因要素のそれぞれについて、類似度を考慮した原因要素と親要素とに関する情報および効果量に関する情報を含む解析結果を出力する。
【0163】
以上説明したように、第3の実施形態の変形例に係るデータ解析装置は、第3の実施形態に係るデータ解析装置の処理に加えて、複数の原因要素のそれぞれについて、複数の親要素のうちの二つのデータ要素間における類似度を算出し、算出した類似度に基づく解析結果を出力すると同時に、第1のデータ要素と親要素とについての効果量を算出し、これを出力することができる。
【0164】
従って、第3の実施形態の変形例に係るデータ解析装置は、第2の実施形態の変形例および第3の実施形態と同様の効果を得ることができる。
【0165】
(第4の実施形態)
上記各実施形態に係るデータ解析装置は、データ要素に基づいて指標値を算出し、算出した指標値に基づいて親要素を抽出していた。他方、第4の実施形態に係るデータ解析装置は、外部(例えば、記憶装置)から親要素の情報(親要素情報)を取得することによって、少なくとも指標値の算出を省略する。
【0166】
図13は、第4の実施形態に係るデータ解析装置の構成を例示するブロック図である。
図13のデータ解析装置1300は、データ取得部1310と、親要素抽出部1330と、出力制御部1340と、原因推定部1360と、効果量算出部1370とを備える。尚、データ解析装置1300は、
図12のデータ解析装置1000Aから指標値算出部1020Aおよび類似度算出部1250を除いた構成とみなすこともできる。よって、以下では、データ解析装置1000Aの各部と重複する構成については、説明を一部省略する。また、以降では、原因推定部1360によって推定された原因要素が複数の場合について説明する。
【0167】
データ取得部1310は、記憶装置120からデータ要素群および親要素情報を取得する。親要素情報は、例えば、任意のデータ要素と関連性の高い親要素に関する情報である。具体的には、親要素情報は、任意のデータ要素に関する親子関係のリストである。データ取得部1310は、取得したデータ要素群を原因推定部1360、親要素抽出部1330、および効果量算出部1370へとそれぞれ出力し、取得した親要素情報を親要素抽出部1330へと出力する。
【0168】
原因推定部1360は、データ取得部1310からデータ要素群を取得する。原因推定部1360は、特定のデータ要素およびデータ要素群を用いて回帰分析を行うことによって、変化要因の原因となる複数の原因要素を推定する。原因推定部1360は、推定した複数の原因要素を親要素抽出部1330へと出力する。
【0169】
親要素抽出部1330は、データ取得部1310からデータ要素群および親要素情報を取得し、原因推定部1360から複数の原因要素を取得する。親要素抽出部1330は、親要素情報に基づき、複数の原因要素のそれぞれについて、原因要素と関連性の高い親要素をデータ要素群から抽出する。親要素抽出部1330は、複数の原因要素のそれぞれに対応する親要素を出力制御部1340および効果量算出部1370へと出力する。
【0170】
効果量算出部1370は、データ取得部1310からデータ要素群を取得し、親要素抽出部1330から複数の原因要素のそれぞれに対応する親要素を取得する。効果量算出部1370は、複数の原因要素のそれぞれについて、原因要素と親要素との効果量を算出する。効果量算出部1370は、複数の原因要素のそれぞれについて算出した効果量を出力制御部1340へと出力する。
【0171】
出力制御部1340は、親要素抽出部1330から複数の原因要素のそれぞれに対応する親要素を取得し、効果量算出部1370から複数の原因要素のそれぞれについて算出された効果量を取得する。出力制御部1340は、複数の原因要素のそれぞれについて、原因要素と親要素とに関する情報および効果量に関する情報を含む解析結果を出力する。
【0172】
なお、データ解析装置1300は、メモリおよびプロセッサを備えてもよい。メモリは、例えば、データ解析装置1300の動作に関する各種プログラム(例えば、データ解析プログラムなど)を記憶する。プロセッサは、メモリに記憶された各種プログラムを実行することで、データ取得部1310、親要素抽出部1330、出力制御部1340、原因推定部1360、および効果量算出部1370の各機能を実現する。また、データ解析装置1300は、出力装置110および記憶装置120の少なくとも一方を有してもよい。
【0173】
以上、第4の実施形態に係るデータ解析装置1300の構成について説明した。次に、データ解析装置1300の動作について
図14のフローチャートを用いて説明する。
【0174】
図14は、
図13のデータ解析装置の動作を例示するフローチャートである。
図14のフローチャートの処理は、ユーザによってデータ解析プログラムが実行されることで開始する。
【0175】
(ステップST1410)
データ解析プログラムが実行されると、データ取得部1310は、データ要素群および親要素情報を取得する。具体的には、データ取得部1310は、特定のデータ要素の変化要因に関する、複数のデータ要素で構成されるデータ要素群と、任意のデータ要素と関連性の高い親要素に関する親要素情報とを取得する。
【0176】
(ステップST1420)
原因推定部1360は、変化の原因となる原因要素を推定する。具体的には、原因推定部1360は、特定のデータ要素およびデータ要素群を用いて回帰分析を行うことによって、変化要因の原因となる原因要素を推定する。
【0177】
(ステップST1430)
親要素抽出部1330は、原因要素における親要素を抽出する。具体的には、親要素抽出部1330は、親要素情報に基づき、複数の原因要素のそれぞれについて、原因要素と関連性の高い親要素をデータ要素群から抽出する。
【0178】
(ステップST1440)
効果量算出部1370は、原因要素および親要素のそれぞれについて効果量を算出する。具体的には、効果量算出部1370は、複数の原因要素のそれぞれについて、原因要素と親要素のそれぞれとの効果量を算出する。
【0179】
(ステップST1450)
出力制御部1340は、親要素および効果量に関する解析結果を出力する。具体的には、出力制御部1340は、複数の原因要素のそれぞれについて、原因要素と親要素とに関する情報および効果量に関する情報を含む解析結果を出力する。ステップST1450の後、データ解析プログラムは終了する。
【0180】
以上説明したように、第4の実施形態に係るデータ解析装置は、特定のデータ要素の変化要因に関する、複数のデータ要素で構成されるデータ要素群と、データ要素群のうちのそれぞれのデータ要素と関連性の高い親要素の情報とを取得し、特定のデータ要素およびデータ要素群を用いて回帰分析を行うことによって、変化要因の原因となる原因要素を推定し、親要素の情報に基づき、原因要素と関連性の高い親要素をデータ要素群から抽出し、原因要素と対応する親要素について、特定のデータ要素の変化に効果量を算出し、原因要素と対応する親要素に関する第1の情報と、効果量に関する第2の情報とを含む解析結果を出力する。
【0181】
従って、第4の実施形態に係るデータ解析装置は、指標値の算出処理および指標値に基づく親要素を抽出するための処理を必要としないため、データ解析に係る処理時間を低減することができる。
【0182】
図15は、一実施形態に係るコンピュータのハードウェア構成を例示するブロック図である。コンピュータ1500は、ハードウェアとして、CPU(Central Processing Unit)1510、RAM(Random Access Memory)1520、プログラムメモリ1530、補助記憶装置1540、入出力インタフェース1550を備える。CPU1510は、バス1560を介して、RAM1520、プログラムメモリ1530、補助記憶装置1540、および入出力インタフェース1550と通信する。
【0183】
CPU1510は、汎用プロセッサの一例である。RAM1520は、ワーキングメモリとしてCPU1510に使用される。RAM1520は、SDRAM(Synchronous Dynamic Random Access Memory)などの揮発性メモリを含む。プログラムメモリ1530は、データ解析プログラムを含む種々のプログラムを記憶する。プログラムメモリ1530として、例えば、ROM(Read-Only Memory)、補助記憶装置1540の一部、またはその組み合わせが使用される。補助記憶装置1540は、データを非一時的に記憶する。補助記憶装置1540は、HDDまたはSSDなどの不揮発性メモリを含む。
【0184】
入出力インタフェース1550は、他のデバイスと接続するためのインタフェースである。入出力インタフェース1550は、例えば、
図1に示される記憶装置120との接続、および出力装置110との接続に使用される。
【0185】
プログラムメモリ1530に記憶されている各プログラムはコンピュータ実行可能命令を含む。プログラム(コンピュータ実行可能命令)は、RAM1520にロードされ、CPU1510により実行されると、CPU1510に所定の処理を実行させる。例えば、データ解析プログラムは、CPU1510により実行されると、CPU1510に
図4、8、11、および14のフローチャートの各部に関して説明された一連の処理を実行させる。
【0186】
プログラムは、コンピュータで読み取り可能な記憶媒体に記憶された状態でコンピュータ1500に提供されてよい。この場合、例えば、コンピュータ1500は、記憶媒体からデータを読み出すドライブ(図示せず)をさらに備え、記憶媒体からプログラムを取得する。記憶媒体の例は、磁気ディスク、光ディスク(CD-ROM、CD-R、DVD-ROM、DVD-Rなど)、光磁気ディスク(MOなど)、半導体メモリを含む。また、プログラムを通信ネットワーク上のサーバに格納し、コンピュータ1500が入出力インタフェース1550を使用してサーバからプログラムをダウンロードするようにしてもよい。
【0187】
実施形態において説明される処理は、CPU1510などの汎用ハードウェアプロセッサがプログラムを実行することにより行われることに限らず、ASIC(Application Specific Integrated Circuit)などの専用ハードウェアプロセッサにより行われてもよい。処理回路(処理部)という語は、少なくとも1つの汎用ハードウェアプロセッサ、少なくとも1つの専用ハードウェアプロセッサ、または少なくとも1つの汎用ハードウェアプロセッサと少なくとも1つの専用ハードウェアプロセッサとの組み合わせを含む。
図15に示す例では、CPU1510、RAM1520、およびプログラムメモリ1530が処理回路に相当する。
【0188】
よって、以上の各実施形態によれば、観測データの変化要因の解析において、要因の見落とし等を抑制することができる。
【0189】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0190】
1…データ解析システム、100,100A,700,700A,1000,1000A,1300…データ解析装置、110…出力装置、120…記憶装置、210,210A,710,710A,1010,1010A,1310…データ取得部、220,220A,720,720A,1020,1020A…指標値算出部、230,230A,730,730A,1030,1030A,1330…親要素抽出部、240,240A,740,740A,1040,1040A,1340…出力制御部、300…クロス集計表、500…ツリー構造、650,950,1250…類似度算出部、760,760A,1260,1360…原因推定部、1070,1070A,1370…効果量算出部、1500…コンピュータ、1510…CPU、1520…RAM、1530…プログラムメモリ、1540…補助記憶装置、1550…入出力インタフェース、1560…バス。