(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-30
(45)【発行日】2023-11-08
(54)【発明の名称】グラフ構造化分析方法、グラフ構造化分析プログラム、および該グラフ構造化分析プログラムを記憶したコンピュータ読取可能な記憶媒体
(51)【国際特許分類】
G06N 7/01 20230101AFI20231031BHJP
G06F 17/18 20060101ALI20231031BHJP
【FI】
G06N7/01
G06F17/18 Z
(21)【出願番号】P 2020001704
(22)【出願日】2020-01-08
【審査請求日】2022-07-20
(73)【特許権者】
【識別番号】000003137
【氏名又は名称】マツダ株式会社
(74)【代理人】
【識別番号】110001427
【氏名又は名称】弁理士法人前田特許事務所
(72)【発明者】
【氏名】目良 貢
(72)【発明者】
【氏名】清水 圭吾
(72)【発明者】
【氏名】中村 優佑
(72)【発明者】
【氏名】吉田 敏宏
【審査官】北川 純次
(56)【参考文献】
【文献】特開2018-106247(JP,A)
【文献】米国特許出願公開第2006/0164997(US,A1)
【文献】米国特許出願公開第2011/0125699(US,A1)
【文献】中国特許出願公開第110489898(CN,A)
【文献】LAHDESMAKI, H. et al.,Learning the structure of dynamic Bayesian networks from time series and steady state measurements,Machine Learning [online],2008年,Vol. 71,pp. 185-217,[検索日 2023.09.05], インターネット:<URL:https://doi.org/10.1007/s10994-008-5053-y>
(58)【調査した分野】(Int.Cl.,DB名)
G06N 7/00-7/08
G06N 5/00-5/04
G06F 17/18
(57)【特許請求の範囲】
【請求項1】
プログラムを実行する演算部と、該プログラムを記憶する記憶部と、を備えるコンピュータを用いることによって、複数の物理量をそれぞれ所定期間にわたり計測することで生成される複数の時系列データに基づいたベイジアンネットワークを生成するとともに、該ベイジアンネットワークを可視化するグラフ構造化分析方法であって、
前記演算部が前記複数の時系列データそれぞれの各時刻における値を多水準系に離散化することで、前記複数の時系列データの各々についてカテゴリデータ集合を生成する離散化ステップと、
前記複数のカテゴリデータ集合の各々をノードとしたベイジアンネットワークを示す有向非巡回グラフ構造の集合をGとし、集合Gの元をなすグラフ構造をgとした場合に、元gを所与としたときに前記複数のカテゴリデータ集合が実現される条件付き確率を最大化させるグラフ構造を前記演算部が決定するネットワーク構築ステップと、
前記グラフ構造におけるいずれかのノードを子ノードとし、前記グラフ構造における1つ以上のエッジを介して前記子ノードと結ばれるノードを親ノードとし、前記子ノードから前記親ノードへ至るまでに経由するエッジの数を階層数とした場合に、前記子ノードと前記親ノードとの組み合わせを前記階層数毎に前記演算部が抽出する抽出ステップと、を備える
ことを特徴とするグラフ構造化分析方法。
【請求項2】
請求項1に記載されたグラフ構造化分析方法において、
前記複数の時系列データのうち、i番目(iは1以上の整数)の時系列データをS
iとし、該i番目の時系列データS
iの所定時刻における値をxとし、前記i番目の時系列データS
iの時間に係る平均値をμ
iとし、前記i番目の時系列データS
iの時間に係る標準偏差をσ
iとし、前記i番目の時系列データS
iに対応したカテゴリデータ集合をC
iとすると、写像φ
i:S
i→C
iは、
【数1】
により表される
ことを特徴とするグラフ構造化分析方法。
【請求項3】
請求項2に記載されたグラフ構造化分析方法において、
x以下の最大整数を[x]とすると、前記写像φ
iは、
【数2】
により表される
ことを特徴とするグラフ構造化分析方法。
【請求項4】
請求項1から3のいずれか1項に記載されたグラフ構造化分析方法において、
前記コンピュータは、前記演算部による演算結果を表示する表示部を備え、
前記抽出ステップは、前記子ノードを指定することで、該子ノードと前記親ノードとの組み合わせを前記階層数毎に前記グラフ構造から抽出し、前記表示部上に表示する工程を有する
ことを特徴とするグラフ構造化分析方法。
【請求項5】
請求項1から4のいずれか1項に記載されたグラフ構造化分析方法において、
前記複数の物理量には、空間的に離れた複数の箇所で計測される共通の物理量と、共通の箇所で計測される複数種類の物理量と、が含まれる
ことを特徴とするグラフ構造化分析方法。
【請求項6】
請求項5に記載されたグラフ構造化分析方法において、
前記複数の物理量は、車体上の複数の箇所で計測される表面圧力である
ことを特徴とするグラフ構造化分析方法。
【請求項7】
請求項5に記載されたグラフ構造化分析方法において、
前記複数の物理量は、脳内の複数の部位において計測される血中酸素濃度である
ことを特徴とするグラフ構造化分析方法。
【請求項8】
請求項5に記載されたグラフ構造化分析方法において、
前記複数の物理量は、共通の地点で計測される複数種類の気象情報である
ことを特徴とするグラフ構造化分析方法。
【請求項9】
プログラムを実行する演算部と、該プログラムを記憶する記憶部と、を備えるコンピュータに実行させることによって、複数の物理量をそれぞれ所定期間にわたり計測することで生成される複数の時系列データに基づいたベイジアンネットワークを生成するとともに、該ベイジアンネットワークを可視化するグラフ構造化分析プログラムであって、
前記コンピュータに、
前記演算部が前記複数の時系列データそれぞれの各時刻における値を多水準系に離散化することで、前記複数の時系列データの各々についてカテゴリデータ集合を生成する離散化ステップと、
前記複数のカテゴリデータ集合の各々をノードとしたベイジアンネットワークを示す有向非巡回グラフ構造の集合をGとし、集合Gの元をなすグラフ構造をgとした場合に、元gを所与としたときに前記複数のカテゴリデータ集合が実現される条件付き確率を最大化させるグラフ構造を前記演算部が決定するネットワーク構築ステップと、
前記グラフ構造におけるいずれかのノードを子ノードとし、前記グラフ構造における1つ以上のエッジを介して前記子ノードと結ばれるノードを親ノードとし、前記子ノードから前記親ノードへ至るまでに経由するエッジの数を階層数とした場合に、前記子ノードと前記親ノードとの組み合わせを前記階層数毎に前記演算部が抽出する抽出ステップと、を実行させる
ことを特徴とするグラフ構造化分析プログラム。
【請求項10】
請求項9に記載されたグラフ構造化分析プログラムを記憶している
ことを特徴とするコンピュータ読取可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
ここに開示する技術は、グラフ構造化分析方法、グラフ構造化分析プログラム、および該グラフ構造化分析プログラムを記憶したコンピュータ読取可能な記憶媒体に関する。
【背景技術】
【0002】
統計データに基づいて構築される確率モデルの一例として、いわゆるベイジアンネットワークが広く知られている。ベイジアンネットワークとは、変数(ノード)間の依存関係(エッジ)を有向非巡回グラフの形で構造化することで、その依存関係をモデル化する手法である。ベイジアンネットワークを用いることで、従来の経験則および古典的な統計解析のみでは到達し難い着眼点の獲得を促し、ひいては、知識発見を支援することができる。
【0003】
近年、ベイジアンネットワークの産業への応用が進みつつある。その一例として、下記特許文献1には、ベイジアンネットワークに基づいた車の故障診断装置が開示されている。具体的に、特許文献1に開示されている故障診断装置は、車のエンジンがスタートしないという故障が発生したときに、観測された事象から故障の原因を推論し、その原因を示す情報を出力することができる。
【0004】
また、特許文献2には、ベイジアンネットワークの上位概念にあたるグラフィカルモデルの補正方法が開示されている。特許文献2に開示されている方法によれば、グラフカルモデルの精度を向上させることができる。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2005-276152号公報
【文献】特許第6425743号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
本願発明者らは、複雑な事象を理解するための実験および数値シミュレーションによって生み出される多量かつ多次元の時系列データに対し、前述のベイジアンネットワークを用いることを検討した。
【0007】
しかしながら、従来知られたベイジアンネットワークは、基本的に離散変数を分析対象としており、連続的に経時変化するような時系列データには、直接適用することはできない。
【0008】
また、ベイジアンネットワークにおけるモデル構造を探索する際には、数学的に良好な性質を満たすアルゴリズムを用いることが望ましい。特に、前述のように多量かつ多次元の時系列データを分析対象とする場合、コンピュータによる演算の効率化を図るためには、ノード間の関係性を漏れなく、かつ系統的に導き出すようなアルゴリズムが求められる。
【0009】
ここに開示する技術は、かかる点に鑑みてなされたものであり、その目的とするところは、ベイジアンネットワークの適用対象を拡張するとともに、コンピュータによる演算の効率化を実現することにある。
【課題を解決するための手段】
【0010】
本開示の第1の態様は、プログラムを実行する演算部と、該プログラムを記憶する記憶部と、を備えるコンピュータを用いることによって、複数の物理量をそれぞれ所定期間にわたり計測することで生成される複数の時系列データに基づいたベイジアンネットワークを生成するとともに、該ベイジアンネットワークを可視化するグラフ構造化分析方法に係る。
【0011】
そして、本開示の第1の態様によれば、前記グラフ構造化分析方法は、前記演算部が前記複数の時系列データそれぞれの各時刻における値を多水準系に離散化することで、前記複数の時系列データの各々についてカテゴリデータ集合を生成する離散化ステップと、前記複数のカテゴリデータ集合の各々をノードとしたベイジアンネットワークを示す有向非巡回グラフ構造の集合をGとし、集合Gの元をなすグラフ構造をgとした場合に、元gを所与としたときに前記複数のカテゴリデータ集合が実現される条件付き確率を最大化させるグラフ構造を前記演算部が決定するネットワーク構築ステップと、前記グラフ構造におけるいずれかのノードを子ノードとし、前記グラフ構造における1つ以上のエッジを介して前記子ノードと結ばれるノードを親ノードとし、前記子ノードから前記親ノードへ至るまでに経由するエッジの数を階層数とした場合に、前記子ノードと前記親ノードとの組み合わせを前記階層数毎に前記演算部が抽出する抽出ステップと、を備える。
【0012】
ここで、「多水準系への離散化」とは、時系列データの値を整数レベルに離散化する処理をいう。また、後述のように、複数の物理量は、複数箇所で同時計測された共通の物理量としてもよいし、共通箇所で同時計測された複数種類の物理量としてもよい。
【0013】
前記方法は、複数のカテゴリデータ集合のそれぞれをノードとしたベイジアンネットワークを構築するものである。ここで、各時系列データを予め多水準系に離散化しておくことで、連続的に経時変化するような時系列データであっても、ベイジアンネットワークを構築することが可能となる。
【0014】
また、各時系列データを時刻について離散化するのではなく、それ自身の値について離散化することで、時間的な関係を内包したカテゴリデータ集合を生成することができる。これにより、因果関係等、時間的な依存関係を内包したグラフ構造を生成することができるようになる。そうしたグラフ構造を生成することで、カテゴリデータ集合間の時間的な依存関係が明示されていない場合であっても、その依存関係を示唆するグラフ構造を得ることができる。その結果、可視化されたグラフ構造から、時間的な依存関係を逆に辿ることができ、ひいては、従来知られていた仮説を検証したり、仮説そのものを新たに創出したりすることができるようになる。
【0015】
また、前記のように定義される階層数に基づいて、その階層数毎にノード間の依存関係を抽出することで、グラフ構造を漏れなくかつ過不足なく可視化することができる。これにより、コンピュータによる演算の効率化を図ることができる。
【0016】
このように、本開示の第1の態様を用いることで、ベイジアンネットワークの適用対象を拡張するとともに、コンピュータによる演算の効率化を実現することができる。
【0017】
また、本開示の第2の態様によれば、前記複数の時系列データのうち、i番目(iは1以上の整数)の時系列データをS
iとし、該i番目の時系列データS
iの所定時刻における値をxとし、前記i番目の時系列データS
iの時間に係る平均値をμ
iとし、前記i番目の時系列データS
iの時間に係る標準偏差をσ
iとし、前記i番目の時系列データS
iに対応したカテゴリデータ集合をC
iとすると、写像φ
i:S
i→C
iは、
【数1】
により表される、としてもよい。
【0018】
この方法によれば、写像φiは、時系列データの標準化を伴う。写像φiを用いることで、各時系列データの理論的背景とは無関係に、平均値及び標準偏差に起因した各データのばらつきを抑制することができる。これにより、より適切なグラフ構造を得ることができるようになる。
【0019】
また、本開示の第3の態様によれば、x以下の最大整数を[x]とすると、前記写像φ
iは、
【数2】
により表される、としてもよい。
【0020】
前記方法によれば、式(B)は、標準化後のxから、小数点以下の数値を切り捨てる処理に相当する。時系列データを離散化する際には、小数点以下の数値を切り上げるか、或いは、切り捨てるかの2通りの方法が考えられるところ、本願発明者らは、鋭意検討を重ねた結果、小数点以下の数値を切り上げる構成に比して、小数点以下の数値を切り捨てる構成こそが人間の感覚に適合することを新たに突き止めた。
【0021】
例えば、10歳ごとに年齢をカテゴリ化する場合、29歳を30歳に切り上げてしまうと、20代ではなく30代とみなされてしまうため、一般的な人間の感覚に適合しない。本願発明者らは、このような考察を種々のデータに対して行った結果、式(B)を想到するに至った。
【0022】
式(B)のように、理論的な背景とは無関係な標準化を伴いつつも、人間の感覚に適合した写像φiを用いることで、より適切なグラフ構造を得ることができるようになる。
【0023】
また、本開示の第4の態様によれば、前記コンピュータは、前記演算部による演算結果を表示する表示部を備え、前記抽出ステップは、前記子ノードを指定することで、該子ノードと前記親ノードとの組み合わせを前記階層数毎に前記グラフ構造から抽出し、前記表示部上に表示する工程を有する、としてもよい。
【0024】
この方法によれば、ネットワーク構築ステップを通じて得られるグラフ構造のうち、特定の部分構造のみを抽出して表示することになる。これにより、時系列データの数が膨大な場合であっても、使用者が求める構造のみを可視化することができ、ひいては、グラフ構造化分析方法の使い勝手を向上させる上で有利になる。
【0025】
また、本開示の第5の態様によれば、前記複数の物理量には、空間的に離れた複数の箇所で計測される共通の物理量と、共通の箇所で計測される複数種類の物理量と、が含まれる、としてもよい。
【0026】
この方法によれば、前記グラフ構造化分析方法は、時系列データの生成元として、様々な状況下で計測される物理量を用いることができる。このように、前記グラフ構造化分析方法は、多種多様な物理量を分析対象とすることができるため、他の方法に比して使い勝手に優れる。
【0027】
また、本開示の第6の態様によれば、前記複数の物理量は、車体上の複数の箇所で計測される表面圧力である、としてもよい。
【0028】
この方法によれば、前記グラフ構造化分析方法は、車体上の表面圧力を分析対象とすることができる。この方法は、例えば自動車モデルの改良に用いることができるという点で有用である。
【0029】
また、本開示の第7の態様によれば、前記複数の物理量は、脳内の複数の部位において計測される血中酸素濃度である、としてもよい。
【0030】
この方法によれば、前記グラフ構造化分析方法は、ヒトの脳活動を分析対象とすることができる。この方法は、例えば自動車を運転している最中におけるヒトの脳活動を明らかにすることができる。そのため、前記方法は、ヒトの脳活動に適合した自動車の設計に資するという点で有用である。
【0031】
また、本開示の第8の態様によれば、前記複数の物理量は、共通の地点で計測される複数種類の気象情報である、としてもよい。
【0032】
この方法によれば、前記グラフ構造化分析方法は、気象現象すら分析対象とすることができる。この方法は、自動車産業以外の技術分野にも適用できるという点で有用である。
【0033】
本開示の第9の態様は、プログラムを実行する演算部と、該プログラムを記憶する記憶部と、を備えるコンピュータに実行させることによって、複数の物理量をそれぞれ所定期間にわたり計測することで生成される複数の時系列データに基づいたベイジアンネットワークを生成するとともに、該ベイジアンネットワークを可視化するグラフ構造化分析プログラムに係る。
【0034】
そして、本開示の第9の態様によれば、前記グラフ構造化分析プログラムは、前記コンピュータに、前記演算部が前記複数の時系列データそれぞれの各時刻における値を多水準系に離散化することで、前記複数の時系列データの各々についてカテゴリデータ集合を生成する離散化ステップと、前記複数のカテゴリデータ集合の各々をノードとしたベイジアンネットワークを示す有向非巡回グラフ構造の集合をGとし、集合Gの元をなすグラフ構造をgとした場合に、元gを所与としたときに前記複数のカテゴリデータ集合が実現される条件付き確率を最大化させるグラフ構造を前記演算部が決定するネットワーク構築ステップと、前記グラフ構造におけるいずれかのノードを子ノードとし、前記グラフ構造における1つ以上のエッジを介して前記子ノードと結ばれるノードを親ノードとし、前記子ノードから前記親ノードへ至るまでに経由するエッジの数を階層数とした場合に、前記子ノードと前記親ノードとの組み合わせを前記階層数毎に前記演算部が抽出する抽出ステップと、を実行させる。
【0035】
このプログラムによれば、ベイジアンネットワークの適用対象を拡張するとともに、コンピュータによる演算の効率化を実現することができる。
【0036】
また、本開示の第10の態様は、前記第グラフ構造化分析プログラムを記憶していることを特徴とするコンピュータ読取可能な記憶媒体に係る。
【0037】
この記憶媒体によれば、ベイジアンネットワークの適用対象を拡張するとともに、コンピュータによる演算の効率化を実現することができる。
【発明の効果】
【0038】
以上説明したように、本開示に係るグラフ構造化分析方法、グラフ構造化分析プログラム、および該グラフ構造化分析プログラムを記憶したコンピュータ読取可能な記憶媒体によれば、ベイジアンネットワークの適用対象を拡張するとともに、コンピュータによる演算の効率化を実現することができる。
【図面の簡単な説明】
【0039】
【
図1】
図1は、グラフ構造化分析装置のハードウェア構成を例示する図である。
【
図2】
図2は、グラフ構造化分析装置のソフトウェア構成を例示する図である。
【
図3】
図3は、グラフ構造化分析方法の手順を例示するフローチャートである。
【
図4】
図4は、プリ処理プロセスの手順を例示するフローチャートである。
【
図5】
図5は、メイン処理プロセスの手順を例示するフローチャートである。
【
図6】
図6は、ポスト処理プロセスの手順を例示するフローチャートである。
【
図7】
図7は、ポスト処理プロセスの具体例を示す図である。
【
図8】
図8は、第1実施例における分析結果を例示する図である。
【
図9A】
図9Aは、第2実施例における車体構造を示す図である。
【
図9B】
図9Bは、第2実施例における車体構造を示す図である。
【
図11】
図11は、第3実施例における分析結果を示す図である。
【
図12】
図12は、第4実施例の内容を説明するための図である。
【
図13】
図13は、第4実施例における分析結果を示す図である。
【
図14】
図14は、第5実施例における分析結果を示す図である。
【発明を実施するための形態】
【0040】
以下、本開示の実施形態を図面に基づいて説明する。なお、以下の説明は例示である。
【0041】
<装置構成>
図1は、本開示に係るグラフ構造化分析装置(具体的には、その分析装置を構成するコンピュータ1)のハードウェア構成を例示する図であり、
図2は、そのソフトウェア構成を例示する図である。
【0042】
図1に例示するように、コンピュータ1は、コンピュータ1全体の制御を司る中央処理装置(Central Processing Unit:CPU)3と、ブートプログラム等を記憶するリードオンリーメモリ(Read Only Memory:ROM)5と、メインメモリとして機能するランダムアクセスメモリ(Random Access Memory:RAM)7と、2次記憶装置としてのハードディスクドライブ(Hard Disk Drive:HDD)9と、を備える。なお、2次記憶装置としては、HDD9の代わりに、ソリッドステートドライブ(Solid State Drive:SSD)等を用いることもできる。
【0043】
これらの要素のうち、CPU3は、種々のプログラムを実行する。CPU3は、本実施形態における演算部として機能する。また、RAM7及びHDD9は、CPU3により実行されるプログラムを一時的又は継続的に記憶する。RAM7及びHDD9は、それぞれ、本実施形態における記憶部として機能する。
【0044】
コンピュータ1はまた、液晶ディスプレイ11と、液晶ディスプレイ11上に表示される画像データを格納するグラフィックスメモリ(Video RAM:VRAM)13と、マンマシンインターフェースとしてのキーボード15及びマウス17と、を備える。液晶ディスプレイ11は、CPU3による演算結果を表示することができ、本実施形態における表示部として機能する。また、本実施形態に係るコンピュータ1は、通信用のインターフェース21を介して外部機器との間でデータを送受することができる。
【0045】
図2に例示するように、HDD9のプログラムメモリには、オペレーティングシステム(Operating System:OS)19、プリ処理プログラム29A、メイン処理プログラム29B、ポスト処理プログラム29C、アプリケーションプログラム39等が格納される。
【0046】
これらの要素のうち、プリ処理プログラム29A、メイン処理プログラム29B及びポスト処理プログラム29Cは、本実施形態におけるグラフ構造化分析プログラム29を構成する。
【0047】
ここで、グラフ構造化分析プログラム29とは、後述のグラフ構造化分析方法を実行するためのプログラムであって、同分析方法を構成する各ステップをコンピュータ1に実行させるように構成されている。グラフ構造化分析プログラム29は、コンピュータ読取可能な記憶媒体18に予め記憶されている。
【0048】
HDD9のプログラムメモリにおいて、プリ処理プログラム29A、メイン処理プログラム29B及びポスト処理プログラム29Cは、それぞれ、キーボード15、マウス17等から入力される指令に応じて起動される。その際、プリ処理プログラム29A等は、HDD9からRAM7にロードされ、CPU3によって実行されることになる。CPU3がプリ処理プログラム29A等を実行することで、コンピュータ1がグラフ構造化分析装置として機能することになる。
【0049】
一方、HDD9のデータメモリには、分析対象とされる多次元の時系列データ(複数の時系列データ)49が格納される。複数の時系列データ49は、複数の物理量をそれぞれ所定期間にわたり計測することで生成される。
【0050】
この他、プリ処理プログラム29A、メイン処理プログラム29B及びポスト処理プログラム29Cを実行することで生成される種々のデータ、並びに、アプリケーションプログラム39の実行結果については、必要に応じて、HDD9のデータメモリに格納されたり、メインメモリとしてのRAM7に格納されたりする。
【0051】
以下、グラフ構造化分析方法の具体的な方法論について詳細に説明する。
【0052】
<方法論>
図3は、グラフ構造化分析方法の手順を例示するフローチャートである。
図3に例示した方法は、コンピュータ1を用いることによって、複数の時系列データ49に基づいたベイジアンネットワークを生成するとともに、該ベイジアンネットワークを可視化するものである。
【0053】
グラフ構造化分析方法は、離散化ステップとしてのプリ処理プロセス(ステップS1)と、ネットワーク構築ステップとしてのメイン処理プロセス(ステップS2)と、抽出ステップとしてのポスト処理プロセス(ステップS3)と、を順番に実行することで実施される。
【0054】
これらのプロセスのうち、プリ処理プロセスは、CPU3が前述のプリ処理プログラム29Aを実行することで実施される。同様に、メイン処理プロセスは、CPU3がメイン処理プログラム29Bを実行することで実施され、ポスト処理プロセスは、CPU3がポスト処理プログラム29Cを実行することで実施される。
【0055】
以下、グラフ構造化分析方法を構成する各プロセスについて順番に説明する。
【0056】
(プリ処理プロセス)
図4は、プリ処理プロセスの手順を例示するフローチャートである。
図4に例示するフローチャートは、
図3のステップS1において行われる処理を示している。すなわち、
図3において制御プロセスがステップS1に進むと、CPU3は、
図4のステップS11~S13を順番に実行することになる。
【0057】
プリ処理プロセスにおいて、CPU3は、複数の時系列データ49を、時間とは独立したパラメータ(好ましくは、時系列データ49を構成する各変数xの絶対値)に基づいてカテゴリ化(離散化)する。
【0058】
具体的に、
図4のステップS11において、CPU3が時系列データ49を読み込む。
【0059】
ここで、複数の時系列データ49がp個(pは2以上の整数)の時系列データ49から構成されるとすると、複数の物理量として、空間的に離れたp個の箇所で計測される共通の物理量、又は、共通の箇所で計測されるp種類の物理量を用いることができる。共通の物理量、及びp種類の物理量の具体例は後述する。
【0060】
ここでは、より一般的な議論を行うべく、複数の時系列データ49として、p個の変数x1,…,xpを考える。p個の変数のそれぞれが、時刻t1<…<tNにおいて個別に測定されているものとする。
【0061】
この場合、時系列データ49として、
【数3】
が得られているとみなすことができる。データXは、全p列のデータ列とみなすことができる。ここで、各i∈{1,…,p}に対し、変数x
iに関するデータ集合をS
iとすると、
【数4】
と表すことができる。式(1)から明らかなように、集合S
iは、全p個の時系列データ49のうち、i番目(iは1以上かつp以下の整数)の時系列データ49に相当する。
【0062】
続いて、
図4のステップS12において、演算部としてのCPU3が各時系列データ49の各時刻における値を多水準系に離散化することで、各時系列データ49に対応したカテゴリデータを生成する。
【0063】
具体的に、ステップS12では、データ集合(i番目の時系列データ49)S
iをr
i(<N)個の要素からなるカテゴリデータ集合
【数5】
に変換する写像(全射) φ
i:S
i→C
iをクラスタリングにより構成し、データXを
【数6】
なる多水準系にカテゴリ化(離散化)する。
【0064】
すなわち、式(2)の段階では、データ集合Siは、時間について区分されたN個の元から構成される。一方、式(3)の段階では、カテゴリデータ集合Ciは、他のパラメータによって区分されたri(<N)個の元から構成されることになる。
【0065】
好ましくは、データ集合S
iの所定時刻における値を変数xで表し、データ集合S
iの時間に係る平均値をμ
iとし、データ集合S
iの時間に係る標準偏差をσ
iとし、データ集合S
iに対応したカテゴリデータ集合をC
iとすると、写像φ
iは、
【数7】
により表される。式(5)は、統計パラメータμ
i,σ
iによるxの標準化を示す。
【0066】
さらに好ましくは、x以下の最大整数を[x]とすると、写像φ
iは、
【数8】
により表される。式(6)は、標準化後のxから、小数点以下の数値を切り捨てる写像を示す。このように、標準化を伴った独自の変換式(5)~(6)に基づいて写像φ
iを構成することができる。
【0067】
特に、式(6)が示すように、写像φiは、変数xが計測された時間tではなく、変数x自身の絶対値に依存する。したがって、式(6)を通じて生成されるカテゴリデータ集合Ciは、時間tにかかる依存性が見かけ上、排除されたものとなる。
【0068】
なお、時系列データ49の時間にかかる非定常性が強いと判断される場合、時間方向にデータ集合Siを分割し、データ集合Siを構成する各変数xを現在と過去のものに予め振り分けておく処理を追加してもよい。
【0069】
続いて、
図4のステップS13において、CPU3が、カテゴリ化後の時系列データ49をRAM7又はHDD9に格納する。そうして格納されたデータは、メイン処理プロセス等の処理において、必要に応じて読み込まれる。ステップS13が完了すると、制御プロセスは、
図4に例示したフローからリターンし、
図3のステップS2へ進む。
【0070】
以下、記載を簡潔にまとめるべく、カテゴリ化前の時系列データ49を示すXと、カテゴリ化後の時系列データ49を示すXcとを同一視して記載する。また、全p列からなるデータ列Xの第i列ベクトル成分をカテゴリデータとして有する離散変数をxiと見なして取り扱うことにする。
【0071】
(メイン処理プロセス)
図5は、メイン処理プロセスの手順を例示するフローチャートである。
図5に例示するフローチャートは、
図5のステップS2において行われる処理を示している。すなわち、
図3において制御プロセスがステップS2に進むと、CPU3は、
図5のステップS21~S23を順番に実行することになる。
【0072】
メイン処理プロセスにおいて、CPU3は、プリ処理プロセスにおいて生成された各離散変数(データ列Xの第i列ベクトル成分)xiをノードとしたベイジアンネットワークを構築する。
【0073】
ここで、ベイジアンネットワークの構築は、該ベイジアンネットワークを示す有向非巡回グラフ(Directed Acyclic Graph:DAG)構造を探索することで実施される。このDAG構造は、グラフ構造を条件としたデータ列Xの条件付き確率を最大化させるグラフ構造として探索される。
【0074】
具体的に、
図5のステップS21において、CPU3がカテゴリデータ(具体的には、カテゴリ化後のデータ列X)を読み込む。続いて、ステップS22において、CPU3は、ステップS21で読み込まれたカテゴリデータに基づいて、ネットワークスコアを設定する。
【0075】
本実施形態では、p個のノードで表現可能なベイジアンネットワークのDAG構造の全ての集合をGpとし、プリ処理プロセスにて構成されたp個の離散変数x1,…,xpと、p個の離散変数からなるデータ列Xと、を用いることで、スコアベースのアプローチにより最適なグラフ構造g∈Gpを学習する。
【0076】
以下、ネットワークスコアの設定手順について説明する。
【0077】
グラフ構造g∈G
pを所与とするとき、各i∈{1,…,p}に対し、x
iに直接連結する親ノードの集合をΠ
i⊂{x
1,…,x
p}とし、Π
iが状態として取り得るパターン数をq
iとすると、q
iは、
【数9】
と表すことができる。式(3)に示すように、r
lは、データ列Xにおける第l列目のカテゴリデータ集合C
lのデータ数を示す。各j∈{1,…,q
i}及びk∈{1,…,r
i-1}に対し、Π
iがj番目のパターンをとったときにx
i=c
ikとなるサンプル数をn
ijkとし、条件付き確率パラメータ
【数10】
のi,j,kの全てにわたる和集合を
【数11】
とする。このとき、同時確率分布は、
【数12】
と表すことができて、データ列Xを得たときのθ
gに関する尤度関数は、多項分布を用いて
【数13】
と表される。式(11)に対する自然共役事前分布としては、ディリクレ分布
【数14】
が想定される。式(12)におけるα
ijkは、事前分布の関数形を特徴付けるハイパーパラメータである。
【0078】
そして、尤度関数として式(11)を用いるとともに、事前分布として式(12)を用いた場合の事後分布は、ベイズの定理を用いることで整理される。具体的に、ベイズの定理を通じて整理された事後分布は、
【数15】
となる。式(13)で表される事後分布をΘ
gに関して周辺化することで得られる周辺尤度
【数16】
をネットワークスコアと呼ぶ。ここで、本実施形態に係る手法では、式(14)を最大化させるようなg∈G
pを、メタヒューリスティック探索アルゴリズムである「タブーサーチ」を通して求めるようになっている。タブーサーチの詳細は、例えば、“Bouckaert, R., Bayesian belief networks: from construction to inference, Ph.D. Thesis, University of Utrecht, 1995.”及び“Acid, S., and de Campos, L.M., Searching for Bayesian network structures in the space of restricted acyclic partially directed graphs, Journal of Artificial Intelligence Research 18, pp. 445-490, 2003.”等を参照されたい。
【0079】
また、ハイパーパラメータα
ijkの決定に際しては、“Ueno, M., Learning networks determined by the ratio of prior and data, In Proc. of 26th Conf. on Uncertainty in Artificial Intelligence, pp. 598-605, 2010.”及び“Ueno, M., Robust learning of Bayesian networks for prior belief, In Proc. of 27th Conf. on Uncertainty in Artificial Intelligence, pp. 698-707, 2011.”等で推奨されているネットワークスコア「BDeu(Bayesian Dirichlet equivalence uniform)」を構成可能なものを採用している。すなわち、“Heckerman, D., Geiger, D., and Chickering, D.M., Learning Bayesian networks: The combination of knowledge and statistical data, Machine learning, 20, pp. 197-243, 1995.”に記載の「尤度等価性(likelihood equivalence)」を満たす十分条件の特別な場合に相当する制約
【数17】
の関数形を採用している。式(15)の詳細は、“Buntine, W., Theory refinement on Bayesian networks, In Proc. of 7th Conf. on Uncertainty in Artificial Intelligence, pp. 52-60, 1991.”を参照されたい。なお、式(15)において、ESS(Equivalent Sample Size)パラメータα(>0)は、α=1に設定される。
【0080】
本実施形態では、カテゴリデータ集合Ciに対応したp個の離散変数xiの各々を、ベイジアンネットワークを構成するノードとみなす。つまり、本実施形態におけるベイジアンネットワークは、p個の離散変数xiを片矢印(エッジ)で接続することで構成される。
【0081】
そして、離散変数x
iを相互に接続することによって構成されるベイジアンネットワークを示す有向非巡回グラフ構造の集合をG(前述のG
pに相当)とし、集合Gの元をなすグラフ構造をgとした場合に、元gを所与とすることを条件としたカテゴリデータ集合C
i全体の確率分布を設定する。この確率分布は、元gを条件としたときにデータ列Xが実現される確率に等しく、式(14)で示されるネットワークスコアに等しい。前述のように、ネットワークスコアの設定は、
図5のステップS22で実行される。
【0082】
そして、ステップS22から続くステップS23において、ネットワークスコアを最大化させるグラフ構造をタブーサーチを通じてCPU3が決定し、そのグラフ構造をRAM7又はHDD9に格納する。ステップS23が完了すると、制御プロセスは、
図5に例示したフローからリターンし、
図3のステップS3へ進む。
【0083】
(ポスト処理プロセス)
図6は、ポスト処理プロセスの手順を例示するフローチャートである。
図6に例示するフローチャートは、
図6のステップS3において行われる処理を示している。すなわち、
図3において制御プロセスがステップS3に進むと、CPU3は、
図6のステップS31~S36を順番に実行することになる。
【0084】
ポスト処理プロセスにおいては、メイン処理プロセスにおいて得られたグラフ構造g∈Gpに対し、所定の部分構造を抽出する処理を実行したり、グラフ構造の少なくとも一部を可視化する処理を実行したりする。
【0085】
特に、ポスト処理プロセスにおける前者の処理は、グラフ構造gにおけるいずれかのノード(例えば、変数xi)を子ノードとし、同グラフ構造gにおける1つ以上のエッジを介して子ノードと結ばれるノードを親ノードとし、子ノードから親ノードへ至るまでに経由するエッジの数を階層数とした場合に、子ノードと親ノードとの組み合わせを階層数毎にCPU3が抽出することで実現される。これにより、子ノードに対応した親ノードの集合(xiに到達するgの部分構造であって、xiの親ノードがなす階層構造)を過不足なく抽出することができる。
【0086】
以下、前述の如き抽出に係る処理について、
図6を用いて詳細に説明する。
【0087】
まず、
図6のステップS31において、CPU3がグラフ構造gを読み込む。同ステップにて読み込まれるグラフ構造gは、メイン処理プロセスによって決定されたグラフ構造に等しい。
【0088】
続いて、ステップS32において、HDD9等に事前に記憶された設定、又はユーザによる手動で入力された設定に基づいて、CPU3は、抽出対象とする子ノードxiを指定する。それに続くステップS33において、CPU3は、xiに対する第1階層親ノードを、各i∈{1,…,p}についてリストアップする。
【0089】
なお、本実施形態における「第s階層親ノード」とは、各i,s∈{1,…,p}に対し、グラフ構造gにおいてx
iを子ノードとしたときに最短でs個のエッジを経由して辿り着くような親ノードを指す。以下、x
iに対する第s階層親ノードの集合をH
i(s)と表す。便宜上、x
iに対する第0階層親ノードの集合は、
【数18】
と定義される。第1階層親ノードの集合は、
【数19】
なる形式で表示することができる。なお、式(17)において、
【数20】
は、H
i(1)の濃度を指し、
【数21】
は、それぞれ、インデックスを表す。CPU3は、式(17)で表される集合を各iについて取得し、RAM7又はHDD9に格納する。
【0090】
続いて、ステップS34において、CPU3は、xiに対する第s階層親ノードの集合Hi(s)を各sについて再帰的に抽出する。
【0091】
具体的に、一般の第s階層親ノードの集合H
i(s)は、H
i(s-1)の各要素に対する第1階層親ノードのうち、H
i(1),…,H
i(s-1)のいずれの集合にも属さないもの全ての集合、すなわち、s≧2に関して逐次的に
【数22】
なる形式で求めることができる。なお、式(20)において、
【数23】
は、H
i(s)の濃度を指し、
【数24】
は、それぞれ、インデックスを表す。また、H
i(s-1)
cは、H
i(s-1)の補集合を表す。ここで、グラフ構造g∈G
p自身がDAG構造であることから、ある最大階層数s(i)∈{0,1,…,p-1}で
【数25】
となるものが必ず存在することになる(式(23)の右辺は空集合を表す)。
【0092】
式(20)を各sについて繰り返し計算することで、空集合となるまでHi(s)を再帰的に算出することができる。算出されたHi(s)は、RAM7又はHDD9に格納される。
【0093】
続いて、ステップS35において、CPU3は、集合Hi(s)を構成する各要素xmからxiに至る際に通過するエッジの集合Li(s)を各sについて再帰的に抽出する。
【0094】
具体的に、グラフ構造gに含まれるエッジの全て、すなわち、子ノードx
mと、該子ノードx
mに対応した第1階層親ノードx
lのペアを(x
l,x
m)とした場合に、その(x
l,x
m)の全てからなる集合を
【数26】
で表すものとする。そして、各i,s∈{1,…,p}に対し、便宜上、
【数27】
と定義するとともに、
【数28】
と定義する。このとき、L
i(s)は、H
i(s)の各要素x
mに対する第1階層親ノードであるx
lとのペア(x
l,x
m)の全てからなるE
gの部分集合を表す。
【0095】
式(24)~式(26)を各sについて繰り返し計算することで、Li(s)を再帰的に算出することができる。算出されたLi(s)は、RAM7又はHDD9に格納される。
【0096】
こうして、x
iを子ノードとした場合のグラフ構造gの部分構造全体を示す最大部分グラフg
(i)が、x
iに対する第s(i)階層までの親ノードを全て含んだ
【数29】
をノード集合とし、かつ
【数30】
をエッジ集合とするDAG構造として過不足なく自動的に抽出される。
【0097】
最終的に、ステップS36において、CPU3は、式(27)~(28)から与えられる最大部分グラフg(i)を液晶ディスプレイ11上に表示する。使用者は、その表示内容を通じて、最大部分グラフg(i)の構造を視認することができる。
【0098】
-ポスト処理プロセスの具体例-
図7は、ポスト処理プロセスの具体例を示す図である。ここでは、p=6のケース、すなわち6次元の時系列データ49について説明する。前述したプリ処理プロセスによって、時系列データ49の各次元に対応した6つの離散変数x
1~x
6が得られたものとする。また、
図7(a)のグラフG11に示すように、前述したメイン処理プロセスによって、6つの離散変数x
1~x
6を相互に結んでなるDAG構造g∈G
6が得られたものとする。
【0099】
本例においては、DAG構造g∈G
6からx
6を子ノードとする最大部分グラフg
(6)を抽出する工程を示す。この工程においては、まず、
図6のステップS33に例示したように、グラフ構造gを構成する全ノードx
1~x
6について、第1階層親ノードをリストアップする。
【0100】
具体的に、
図7(a)のグラフG11から見て取れるように、グラフ構造gにおいてノードx
1,x
2,x
3,x
4,x
5,x
6に直接連結する第1階層親ノードの集合は、それぞれ、
【数31】
と表すことができる。ゆえに、
図6のステップS34に例示したように、各階層数s∈{1,2,3,4,5,6}について、x
6の第s階層親ノードの集合H
6(s)を再帰的に抽出すると、
【数32】
として求まる。つまり、
図7(b)のグラフG12に示すように、s=0においては、便宜上、x
6自身が親ノードとなる。また、同図のグラフG13に示すように、s=1においては、x
2とx
3がx
6の親ノードとなる。また、同図のグラフG14に示すように、s=2においては、x
3に直接連結されたx
4が、x
6の親ノードとなる。式(30)に示すように、最大階層数はs(6)=2となる。
【0101】
同様に、グラフ構造g全体のエッジ集合は、
【数33】
と求められる。
【0102】
ゆえに、
図6のステップS35に例示したように、各階層数s∈{1,2,3,4,5,6}について、集合H
6(s)を構成する各要素x
mからx
6に至る際に通過するエッジの集合L
6(s)を再帰的に抽出すると、
【数34】
として求められる。つまり、
図7(b)のグラフG15に示すように、s=0においては、x
3からx
6へ至るエッジと、x
2からx
6へ至るエッジと、が抽出される。また、同図のグラフG16に示すように、s=1においては、x
3からx
2へ至るエッジと、x
4からx
3へ至るエッジと、が抽出される。
【0103】
こうして、最大部分グラフg
(6)は、
【数35】
をそれぞれノード集合、エッジ集合とするDAG構造として完全に抽出される。
【0104】
図6のステップS36に例示したように、最大部分グラフg
(6)を液晶ディスプレイ11上に表示すると、
図7(c)のグラフG17に相当する内容が表示される。
【0105】
<グラフ構造化分析方法の適用例>
本実施形態に係る分析方法は、時系列データ49としての変数間に時間の概念(時間的な依存関係)を明示的に与えずとも、時間の概念を内包するような依存関係を示すグラフ構造を得ることができる。こうした特徴点を、具体的な適用例としての下記第1~第5実施例を用いて説明する。
【0106】
-第1実施例(数学的モデルへの適用例)-
図8は、第1実施例における分析結果を例示する図である。この第1実施例では、時間の概念が非線形な依存関係となる決定論的モデルの一例として、ロジスティック写像の一種
【数36】
を考えるとともに、式(34)に基づき生成された3次元(3点)の時系列データ49
【数37】
を分析対象とする。
【0107】
なお、式(35)で与えられる3点には、
【数38】
という関係性があることに留意されたい。式(36)は、x
3がx
1とx
2とに依存することと、x
2がx
1に依存することと、を示唆している。
【0108】
前述したグラフ構造化分析方法を適用し、x
1,x
2,x
3の間の関係性を示唆するグラフ構造が得られるか否かを検証したところ、
図8に示す結果を得た。
図8において、グラフG21、グラフG23、グラフG25は、それぞれ、x
1,x
2,x
3の時系列データ49に相当する。また、グラフG22はx
1とx
2との関係を示し、グラフG24はx
1とx
3との関係を示し、グラフG26はx
2とx
3との関係を示す。
【0109】
図8のグラフG27に示すように、この第1実施例では、x
1,x
2からx
3に向かうエッジと、x
1からx
2に向かうエッジと、からなるグラフ構造が得られた。このグラフ構造は、式(36)が示唆する依存関係と一致する。
【0110】
ここで、グラフG27が示す依存関係と、式(36)が示す関係性と、をそれぞれ考察すると、x1からx2に向かうエッジは、時間とは無関係な変数変換(2乗)に因る依存関係を示すが、x1,x2からx3に向かうエッジは、漸化式で記述可能な時間的な依存関係を示すことが理解されよう。
【0111】
このことから、本実施形態におけるグラフ構造化分析方法は、時間的な依存関係を明示的に与えずとも、時間的な依存関係を内包した関係を、グラフ構造の少なくとも一部に自然と反映させることができる。そのことで、時間的な依存関係さえも、柔軟に捉えることができるようになる。
【0112】
さらに、グラフG22、グラフG24及びグラフG26に示すように、x1とx2とは、正の相関関係を有しているところ、x1とx3及びx2とx3との間には、相関関係は明瞭に現れない。このことから、本実施形態に係る手法は、変数間の相関関係の有無を問わず、時間的な依存関係を抽出できると理解されよう。
【0113】
-第2実施例(車体工学への適用例)-
図9A及び
図9Bは、第2実施例における車体構造を示す図である。また、
図10は、第2実施例における分析結果を示す図である。この第2実施例では、工学現象の一例として、車体工学における空力を題材に説明する。
【0114】
図9Aに例示するように、この第2実施例では、自動車モデルM1において、該モデルM1のルーフに沿って前方から後方へ向かって風が流れる状況を分析対象とする。
【0115】
具体的に、自動車モデルM1のセンターライン上に3点x1,x2,x3を設定し、これら3点において同時に計測された車体表面圧力を時系列データ49として分析を行った。
【0116】
また、時系列データ49の計測は、風速が相対的に弱い場合(例えば、5.0m/s程度の場合)と、風速が相対的に強い場合(例えば、15.0m/s程度の場合)と、について行った。
【0117】
そうして得られた時系列データ49に対し、グラフ構造化分析方法を適用したところ、
図10A及び
図10Bに示す結果を得た。ここで、
図10Aは、風速が相対的に弱い場合の適用結果を示し、グラフG31、グラフG33、グラフG35は、それぞれ、x
1,x
2,x
3における時系列データ49に相当する。また、グラフG32はx
1とx
2との関係を示し、グラフG34はx
1とx
3との関係を示し、グラフG36はx
2とx
3との関係を示す。
【0118】
同様に、
図10Bは、風速が相対的に強い場合の適用結果を示し、グラフG41、グラフG43、グラフG45は、それぞれ、x
1,x
2,x
3における時系列データ49に相当する。また、グラフG42はx
1とx
2との関係を示し、グラフG44はx
1とx
3との関係を示し、グラフG46はx
2とx
3との関係を示す。
【0119】
図10AにおけるグラフG37、及び
図10BにおけるグラフG47に示すように、第2実施例では、風速の強弱に関係なく、x
1からx
2に向かうエッジと、x
2からx
3に向かうエッジと、からなるグラフ構造が得られた。
【0120】
図9Bに示すように、第2実施例において得られたグラフ構造は、時間軸に沿って前方から後方へと風が流れていく現象を示唆するものとなっており、自動車モデルM1における風の流れ方向と整合するものとなっている。このことから、本実施形態における分析方法は、第1実施例のような数学的なモデルばかりでなく、実際に測定された時系列データ49に対しても、やはり、時間的な依存関係を内包した関係をグラフ構造に反映させることができると理解されよう。
【0121】
-第3実施例(車体工学へのさらなる適用例)-
図11は、第3実施例における分析結果を示す図である。
図11に示すように、この第3実施例では、車体表面の各所に測定点を配置した場合の時系列データ49を題材に説明する。第3実施例における時系列データ49としては、第2実施例と同様に、車体の前方から後方に向かって風が流れる際の表面圧力が選ばれている。各時系列データ49は、風洞実験より得た。
【0122】
なお、
図11における「改良前」とは、ベース仕様車をモデル化してなる自動車モデルM2での分析結果を示し、「改良後」とは、改良仕様車をモデル化してなる自動車モデルM3での分析結果を示す。また、ここでいう「改良仕様車」とは、ベース仕様車に対し、空気抵抗の改良を施したものをいう。
【0123】
具体的に、
図11の紙面下側から順に、自動車モデルM2,M3のフロント部、左右両サイド部、リアウインドウ部、トランクデッキ部及びリア部が順番に図示されている。また、自動車モデルM2,M3の各部位の表面には、黒丸で示された測定点(ノード)と、モデル構造分析方法を適用することで得られたエッジと、が図示されている。
【0124】
周知のように、車体周辺の渦構造が車体の空気抵抗を増大させる。空気抵抗の増大には、いわゆる「後曳き渦」の強さが支配的となる。この「後曳き渦」は、いわゆる「フロントピラー渦(フロントピラーで発生し、ルーフを通る渦)」と、「ボディサイド渦(フロントホイール周辺で発生し、ボディサイドに沿って前方から後方へ向かって流れる渦)」と、「床下渦(床下で生じる渦)」と、によって形成される。
【0125】
例えば、空気抵抗が大きな自動車モデルM2では、フロントピラー渦が強くなり、ボディサイド渦がフロントウインドウ後方へと巻き込まれ、トランクデッキ上で複雑な流れを発生させると考えられる。一方、空気抵抗が小さな自動車モデルM3では、ルーフからの流れと、ボディサイドでの流れが、それぞれ、車体の表面に沿って平行に流れるものと考えられる。
【0126】
本願発明者らは、本実施形態に係るモデル構造分析方法を用いることによって、前述した仮説が、グラフ構造化分析方法による分析結果であるグラフ構造に如何に反映されているかを検証した。具体的に、時系列データ49の各点同士の影響関係をそれぞれ構造化することで、車体の仕様間で共通の傾向、相違点がどのようにして見出せるかを評価した。
【0127】
まず、仕様間で共通の傾向として、データ処理に際して物理的な制約を恣意的に与えていないにもかかわらず、ボディサイドに沿って前方から後方へと向かう関係性を見出すことができる。この関係性は、フロントホイールの周辺において発生し、ボディサイドに沿って流れる渦と整合する。
【0128】
こうした傾向は、プリ処理プロセスを通じてカテゴリ化された圧力の分布間に潜む関係性の中に、明示的に与えずとも偏りとして時間の概念が柔らかく内包されていることを示唆している。これにより、見えない渦の広がりを拾うようにして自然な流れの方向をボディサイドにて柔軟に捉えられたと考えることができる。
【0129】
続いて、仕様間で相違する傾向として、ベース仕様車ではボディサイドから背面へと向かう支配的な関係性(矢印A1を参照)と、背面から床下へと向かう支配的な関係性(矢印A2,A3を参照)と、が見て取れるのに対し、改良仕様車では、そうした関係性が全く見られない。こうした傾向は、前述した仮説を支持するものとなる。これにより、車体の空気抵抗が確かに改善されていると理解される。
【0130】
第3実施例における分析結果に対する解釈は、工学的な考察とも整合性が取れることから、本実施形態に係る手法が、時系列データ49を解析する上で有効であることを示している。
【0131】
-第4実施例(生体現象への適用例)-
図12は、第4実施例の内容を説明するための図であり、
図13は、第4実施例における分析結果を示す図である。この第4実施例では、第2実施例及び第3実施例と同様に、時系列データ49の生成元は、空間的に離れた複数の箇所で計測される共通の物理量である。しかしながら、第4実施例において題材とする物理量は、脳内の複数の部位にて計測される血中酸素濃度である。この血中酸素濃度に対応した時系列データ49は、MRIを用いることで測定することができる(いわゆるBOLD信号)。
【0132】
一般に、自動車の運転は、視覚・聴覚といった様々な入力情報に基づいて状況を判断し、各状況に応じた運転行動(出力)を行っている。例えば、視覚からの入力によってステアリングを左に操作する場合、入力箇所や出力箇所を変えることなく、入出力間の処理に違いが生じることで、最終的な出力値(運転行動)が変化すると考えられる。
【0133】
これまで、運転中の脳活動において、各知覚の入力情報の具体的な情報伝達経路、及び経路間を中継する部位等は明らかになっていない。したがって、運転中の脳活動を単純に計測するだけでは、部位間の依存関係等、詳細な内容を解明することは難しい。この問題に対し、本実施形態に係る手法を適用することで、運転中の脳活動における入出力の解明の一助になると本願発明者らは考えた。
【0134】
このように、以下で説明される第4実施例は、生体現象の一例として、ヒトの脳活動に着目したものであり、入出力間の処理を可視化したものである。
【0135】
第4実施例では、グラフ構造化分析方法の適用可能性について検証するべく、
図12に示すように、視覚、聴覚等、異なる知覚からの入力に応じた単純な課題を用意して実施した。
【0136】
具体的に、
図12(a)は、「画像の中央部に表示される十字模様の色彩が変化したときに、右手でボタンを押す」という課題を例示している。この例では、時間t2と、時間t4と、において十時模様の色彩が変化していることが見て取れよう。
【0137】
一方、
図12(b)は、「音が鳴ったときに、右手でボタンを押す」という課題を例示している。この例では、時間t2と、時間t4と、において音が鳴っていることが見て取れよう。
【0138】
また、第4実施例では、「視覚野(聴覚野)から運動野へと至る処理プロセスが存在する」という仮説を立て、この仮説の妥当性と、この仮説がグラフ構造に如何なる形で現れるかを検証した。
【0139】
前述のように、複数の時系列データ49は、
図12(a)及び(b)に示す課題を遂行中に、MRIを用いて脳活動を実測することで取得した。また、脳内の各部位における活動信号としては、MRIに基づいて抽出されるBOLD信号を利用した。
【0140】
検証結果は、
図13に示す通りである。ここで、
図13(a)は、
図12(a)の課題より得られたグラフ構造を示し、
図13(b)は、
図12(b)の課題より得られたグラフ構造を示している。
【0141】
このうち、
図13(a)は、前述の仮説の通り、視覚野から運動野へと至る処理プロセスが存在することを示唆している。この処理プロセスは、視覚的な刺激が視覚野に入力されて視覚野が活動し、この視覚野が運動野の活動を促していることを示している。
【0142】
同様に、
図13(b)は、前述の仮説の通り、聴覚野から運動野へと至る処理プロセスが存在することを示唆している。この処理プロセスは、聴覚的な刺激が聴覚野に入力されて聴覚野が活動し、この聴覚野が運動野の活動を促していることを示している。
【0143】
このように、第4実施例では、異なる2種類の知覚入力と、運動と、の関係を入出力とした実験を行い、従来知見と整合した処理プロセスをグラフ構造として見いだすことができた。運転中の脳活動を分析対象とした、各知覚と運動出力とからなる複雑な情報伝達経路であっても、これをグラフ構造として見出すことができると考えられる。
【0144】
-第5実施例(気象現象への適用例)-
前記第2実施例、第3実施例及び第4実施例では、時系列データ49の生成元は、車体上の各所、脳の局所部位等、空間的に離れた複数の箇所で計測される共通の物理量であったが、本開示が分析対象とする物理量は、これに限定されない。例えば、以下で説明する第5実施例のように、分析対象とする物理量は、共通の箇所で計測される複数種類の物理量としてもよい。
【0145】
図14は、第5実施例における分析結果を示す図である。この第5実施例において題材とする物理量は、共通の地点で計測される複数種類の気象情報である。
【0146】
第5実施例では、共通の地点として広島市を利用するとともに、複数種類の気象情報として、2014年8月1日から31日にかけて計測された合計降水量(Rain_total)、平均気温(Temp_ave)、最高気温(Temp_min)、日照時間(Sunlight_hour)、平均風速(Wind_speed_ave)、最大風速(Wind_speed_max)、最大瞬間風速(Wind_speed_instant_max)、平均蒸気圧(Steam_pressure_ave)、平均湿度(humidity_ave)、平均雲量(Cloud_volume_ave)、最大風速が記録された時点の風向き(Wind_speed_max_direction)、最大瞬間風速が記録された時点の風向き(Wind_speed_instant_max_direction)及び最多風向(Wind_direction_most)を用いた。実際に測定されたデータ等の詳細は、気象庁がWEBサイト上に公開している通りである。
【0147】
2014年8月1日から31日にかけて計測されたデータを用いることから、式(1)等における整数Nは31となる。また、14種類の気象情報を用いることから、式(1)等における整数pは14となる。
【0148】
ところで、2014年8月の中旬に、広島市に大雨が発生した。気象庁は、その原因を以下のように分析した(気象研究所による報道発表資料を参照)。
【0149】
1.豊後水道上に大量の水蒸気が蓄積
2.蒸気圧の上昇と共に広島市付近へと水蒸気を局所的に流入させ、積乱雲を形成
3.高度500m程度から1000付近まで、上昇気流が水蒸気を押上
4.水蒸気の凝結と共に湿った空気が発生し、凝結熱により気温も上昇
5.南西から北東に向けた風に沿って湿った空気が継続的に供給され、積乱雲を形成
6.積乱雲群が風速を加速させ、湿った空気が湿潤域に達したことで集中豪雨が発生
【0150】
ここで、6.の工程は、雨量が風速に依存しているという仮説を示唆するものである。
【0151】
そこで、本実施形態に係るグラフ構造化分析方法を適用したところ、
図14におけるグラフG51に示すように、平均風速から合計降水量へと至るエッジ、すなわち、合計降水量が平均風速に依存していることがグラフ構造に反映された。このことは、前述の仮説を支持するものである。
【0152】
また、
図14中のプロットP51に示すように、平均風速と合計降水量とは、明瞭な相関関係を有していない。本実施形態に係る方法は、前述した第2実施例からも示されるように、変数間の相関関係の有無にかかわらず、依存関係を抽出することができる。
【0153】
〈グラフ構造化分析方法の意義〉
以上説明したように、本実施形態によれば、複数のカテゴリデータ集合のそれぞれをノードとしたベイジアンネットワークを探索する前に、式(4)を用いて説明したように、各時系列データ49を予め多水準系に離散化する。これにより、連続的に経時変化するような時系列データであっても、ベイジアンネットワークを構築することが可能となる。
【0154】
また、式(5),(6)等を用いて説明したように、各時系列データ49を時刻について離散化するのではなく、それ自身の値について離散化することで、時間的な関係を内包したカテゴリデータ集合を生成することができる。これにより、因果関係等、時間的な依存関係を内包したグラフ構造を生成することができるようになる。そうしたグラフ構造を生成することで、カテゴリデータ集合間の時間的な依存関係が明示されていない場合であっても、
図10A及び
図10B等に示したように、その依存関係を示唆するグラフ構造を得ることができる。その結果、可視化されたグラフ構造から、時間的な依存関係を逆に辿ることができ、ひいては、従来知られていた仮説を検証したり、仮説自体を新たに創出したりすることができるようになる。
【0155】
また、
図7を用いて説明したように、階層数毎にノード間の依存関係を抽出することで、グラフ構造を漏れなくかつ過不足なく可視化することができる。これにより、コンピュータ1による演算の効率化を図ることができる。
【0156】
また、式(5)を用いて説明したように、写像φiは、時系列データの標準化を伴う。写像φiを用いることで、各時系列データ49の理論的背景とは無関係に、平均値及び標準偏差に起因した各データのばらつきを抑制することができる。これにより、より適切なグラフ構造を得ることができるようになる。
【0157】
また、式(6)を用いて説明したように、写像φiは、標準化後のxから、小数点以下の数値を切り捨てる処理に相当する。時系列データ49を離散化する際には、小数点以下の数値を切り上げるか、或いは、切り捨てるかの2通りの方法が考えられるところ、本願発明者らは、鋭意検討を重ねた結果、小数点以下の数値を切り上げる構成に比して、小数点以下の数値を切り捨てる構成こそが人間の感覚に適合することを新たに突き止めた。
【0158】
例えば、10歳ごとに年齢をカテゴリ化する場合、29歳を30歳に切り上げてしまうと、20代ではなく30代とみなされてしまうため、一般的な人間の感覚に適合しない。本願発明者らは、このような考察を種々のデータに対して行った結果、式(6)を想到するに至った。
【0159】
式(6)のように、理論的な背景とは無関係な標準化を伴いつつも、人間の感覚に適合した写像φiを用いることで、より適切なグラフ構造を得ることができるようになる。
【0160】
また、
図6のステップS32及びステップS36に示したように、ポスト処理プロセスを通じて得られるグラフ構造のうち、特定の部分構造のみを抽出して表示することができる。これにより、時系列データ49の数が膨大な場合であっても、使用者が求める構造のみを可視化することができ、ひいては、グラフ構造化分析方法の使い勝手を向上させる上で有利になる。
【0161】
また、第2実施例~第5実施例を通じて説明したように、本実施形態に係るグラフ構造化分析方法は、時系列データ49の生成元として、様々な状況下で計測される物理量を用いることができる。このように、前記方法は、多種多様な物理量を分析対象とすることができるため、他の方法に比して使い勝手に優れる。
【0162】
また、第2実施例及び第3実施例を通じて説明したように、本実施形態に係るグラフ構造化分析方法は、車体上の表面圧力を分析対象とすることができる。この方法は、例えば自動車モデルの改良に用いることができるという点で有用である。
【0163】
また、第4実施例を通じて説明したように、本実施形態に係るグラフ構造化分析方法は、ヒトの脳活動を分析対象とすることができる。この方法は、例えば自動車を運転している最中におけるヒトの脳活動を明らかにすることができる。そのため、前記方法は、ヒトの脳活動に適合した自動車の設計に資するという点で有用である。
【0164】
また、第5実施例を通じて説明したように、本実施形態に係るグラフ構造化分析方法は、気象現象すら分析対象とすることができる。この方法は、自動車産業以外の技術分野にも適用できるという点で有用である。
【0165】
《他の実施形態》
前記実施形態では、コンピュータ1の一例として、1つのCPU3を有するものを例示したが、本開示は、その例に限定されない。コンピュータ1には、スーパーコンピュータ、PCクラスター等の並列計算機も含まれる。コンピュータ1を並列計算機とした場合、グラフ構造化分析プログラム29は、複数の計算機を用いて実行されることになる。
【0166】
また、ポスト処理プロセスにおいて、ステップS32は必須ではない。子ノードを指定することなく、全ての子ノードに関して再帰的にグラフ構造を抽出してもよい。また、ポスト処理プロセスにおいて、ステップS36は必須ではない。ステップS36を実行することなく、ステップS35で得られた演算結果をRAM7又はHDD9に格納してもよい。
【0167】
《産業上の利用可能性》
以上説明したように、本開示は、工学現象、生体現象、気象現象等、種々の現象の分析に有用であるとともに、コンピュータ自身の性能向上に有用であり、産業上の利用可能性がある。
【符号の説明】
【0168】
1 コンピュータ
3 CPU(演算部)
7 RAM(記憶部)
9 HDD(記憶部)
11 液晶ディスプレイ(表示部)
18 記憶媒体
29 グラフ構造化分析プログラム
49 時系列データ
S1 プリ処理プロセス(離散化ステップ)
S2 メイン処理プロセス(ネットワーク構築ステップ)
S3 ポスト処理プロセス(抽出ステップ)