(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024073928
(43)【公開日】2024-05-30
(54)【発明の名称】情報処理方法、情報処理装置、情報処理プログラム、および、該情報処理プログラムを記憶したコンピュータ読取可能な記憶媒体
(51)【国際特許分類】
G06N 20/00 20190101AFI20240523BHJP
G06F 16/906 20190101ALI20240523BHJP
【FI】
G06N20/00
G06F16/906
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022184919
(22)【出願日】2022-11-18
(71)【出願人】
【識別番号】000003137
【氏名又は名称】マツダ株式会社
(74)【代理人】
【識別番号】110001427
【氏名又は名称】弁理士法人前田特許事務所
(72)【発明者】
【氏名】目良 貢
(72)【発明者】
【氏名】北原 陽一郎
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175FA03
(57)【要約】
【課題】多次元データ集合に対し、より解釈性に優れた可視化を施す。
【解決手段】情報処理方法は、複数の因子p
iそれぞれに多次元データx
iを割り当てることで構成される多次元データ集合49を分析するとともに、該分析結果を可視化するものである。この情報処理方法は、多次元データ集合49に対して非線形次元削減を施すことで、多次元データ集合49の各元を2次元または3次元に変換することで低次元データ集合59を生成する次元削減ステップと、低次元データ集合59に対して階層的クラスタリングを施すことで、低次元データ集合59を複数のクラスタCl
hに分割するクラスタリングステップと、クラスタリングステップによる分割結果を教師データとしたクラス分類を行うことで、複数のクラスタCl
hの決定境界Dbを定めるクラス分類ステップと、低次元データ集合59及び決定境界Dbを同時に可視化する可視化ステップとを備える。
【選択図】
図3
【特許請求の範囲】
【請求項1】
コンピュータの演算部を用いることによって、複数の因子それぞれに多次元の数値データを割り当てることで構成される多次元データ集合を分析するとともに、該分析結果を可視化する情報処理方法であって、
前記演算部が、前記多次元データ集合に対して多様体学習を用いた非線形次元削減を施すことで、前記多次元データ集合の各元を2次元または3次元の数値データに変換してなる低次元データ集合を生成する次元削減ステップと、
前記演算部が、前記低次元データ集合に対して階層的クラスタリングを施すことで、前記低次元データ集合を複数のクラスタに分割するクラスタリングステップと、
前記演算部が、前記クラスタリングステップによる分割結果を教師データとしたクラス分類を行うことで、前記複数のクラスタの決定境界を定めるクラス分類ステップと、
前記演算部が、前記低次元データ集合及び前記決定境界を同時に可視化する可視化ステップと、を備える
ことを特徴とする情報処理方法。
【請求項2】
請求項1に記載された情報処理方法において、
前記複数の因子のそれぞれには、該因子の属性を示す属性情報が紐付けられ、
前記可視化ステップでは、前記属性情報に応じて前記低次元データ集合の表示態様を異ならせる
ことを特徴とする情報処理方法。
【請求項3】
請求項2に記載された情報処理方法において、
前記複数の因子には、
前記数値データとして所定の第1特定データが割り当てられる第1目的因子と、
前記数値データとして、前記第1特定データに対して負の相関を有する第2特定データが割り当てられる第2目的因子と、含まれ、
前記属性情報は、前記第1目的因子又は前記第2目的因子であるか否かを示す
ことを特徴とする情報処理方法。
【請求項4】
請求項3に記載された情報処理方法において、
前記複数の因子には、物品の形状を特徴付ける因子が含まれ、
前記第1目的因子は、前記形状に対応した前記物品の性能を示す
ことを特徴とする情報処理方法。
【請求項5】
請求項1に記載された情報処理方法において、
前記次元削減ステップでは、前記多様体学習にt-SNE法を用いる
ことを特徴とする情報処理方法。
【請求項6】
請求項1に記載された情報処理方法において、
前記クラス分類ステップでは、非線形SVMを用いて前記決定境界を定める
ことを特徴とする情報処理方法。
【請求項7】
コンピュータの演算部を用いることによって、複数の因子それぞれに多次元の数値データを割り当てることで構成される多次元データ集合を分析するとともに、該分析結果を可視化する情報処理装置であって、
前記演算部が、前記多次元データ集合に対して多様体学習を用いた非線形次元削減を施すことで、前記多次元データ集合の各元を2次元または3次元の数値データに変換してなる低次元データ集合を生成する次元削減手段と、
前記演算部が、前記低次元データ集合に対して階層的クラスタリングを施すことで、前記低次元データ集合を複数のクラスタに分割するクラスタリング手段と、
前記演算部が、前記クラスタリング手段による分割結果を教師データとしたクラス分類を行うことで、前記複数のクラスタの決定境界を定めるクラス分類手段と、
前記演算部が、前記低次元データ集合及び前記決定境界を同時に可視化する可視化手段と、を備える
ことを特徴とする情報処理装置。
【請求項8】
コンピュータの演算部を用いることによって、複数の因子それぞれに多次元の数値データを割り当てることで構成される多次元データ集合を分析するとともに、該分析結果を可視化する情報処理プログラムであって、
前記コンピュータに、
前記演算部が、前記多次元データ集合に対して多様体学習を用いた非線形次元削減を施すことで、前記多次元データ集合の各元を2次元または3次元の数値データに変換してなる低次元データ集合を生成する次元削減ステップと、
前記演算部が、前記低次元データ集合に対して階層的クラスタリングを施すことで、前記低次元データ集合を複数のクラスタに分割するクラスタリングステップと、
前記演算部が、前記クラスタリングステップによる分割結果を教師データとしたクラス分類を行うことで、前記複数のクラスタの決定境界を定めるクラス分類ステップと、
前記演算部が、前記低次元データ集合及び前記決定境界を同時に可視化する可視化ステップと、を実行させる
ことを特徴とする情報処理プログラム。
【請求項9】
請求項8に記載された情報処理プログラムを記憶している
ことを特徴とするコンピュータ読取可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理方法、情報処理装置、情報処理プログラム、および、該情報処理プログラムを記憶したコンピュータ読取可能な記憶媒体に関する。
【背景技術】
【0002】
例えば特許文献1には、多次元データに対して次元削減およびクラスタリングを施すように構成された情報処理方法(細胞情報処理方法)が開示されている。
【0003】
具体的に、この特許文献1に開示されている情報処理方法では、シングルセル化された各細胞から、遺伝子DNA配列情報、蛍光標識および遺伝子発現量を各次元の成分とした多次元データ(シングルセルデータ)を取得するとともに、その多次元データを2次元または3次元データへと次元削減する。
【0004】
前記情報処理方法は、多次元データの次元削減を通じて、全細胞を複数の細胞集団にグループ分けしてプロットするとともに、そうしてグループ分けされた各細胞集団に対し、各細胞集団を構成する細胞種の同定処理(クラスタリング処理)を実行するようになっている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、前記特許文献1におけるクラスタリング処理とは、次元削減によってグループ分けされた各細胞集団に対し、細胞種のラベリングを割り当てる処理に過ぎない。言い換えると、同文献に記載された手法は、次元削減によってグループ分けがなされることを前提としたものであり、次元削減だけでは明確にグループ分けされないような多次元データに適用することはできない。
【0007】
そこで、各種クラスタリングを追加で行うことが考えられるものの、次元削減によって得られる2次元または3次元のプロットの分布と、その分布中に見出し得るクラスタとの間の関係は、一般に複雑なものとなる。従来知られた方法では、そうした関係性を可視化できたとしても、その複雑さ故に解釈性に難があり、リソース負荷の抑制という点で検討の余地が残っていた。
【0008】
ここに開示する技術は、かかる点に鑑みてなされたものであり、その目的とするところは、多次元データ集合に対し、より解釈性に優れた可視化を施すことにある。
【課題を解決するための手段】
【0009】
本開示の第1の態様は、コンピュータの演算部を用いることによって、複数の因子それぞれに多次元の数値データを割り当てることで構成される多次元データ集合を分析するとともに、該分析結果を可視化する情報処理方法に係る。
【0010】
そして、前記第1の態様によれば、前記情報処理方法は、前記演算部が、前記多次元データ集合に対して多様体学習を用いた非線形次元削減を施すことで、前記多次元データ集合の各元を2次元または3次元の数値データに変換してなる低次元データ集合を生成する次元削減ステップと、前記演算部が、前記低次元データ集合に対して階層的クラスタリングを施すことで、前記低次元データ集合を複数のクラスタに分割するクラスタリングステップと、前記演算部が、前記クラスタリングステップによる分割結果を教師データとしたクラス分類を行うことで、前記複数のクラスタの決定境界を定めるクラス分類ステップと、前記演算部が、前記低次元データ集合及び前記決定境界を同時に可視化する可視化ステップと、を備える。
【0011】
前記第1の態様によると、演算部は、多次元データ集合に対して非線形次元削減を実行する。これにより、主成分分析法等の線形次元削減と比較して、多次元データ集合を構成する一の元と他の元との間の位置関係等、多次元データ集合における局所的な構造を、次元削減後の低次元データ集合においても可能な限り維持することができる。
【0012】
さらに、前記第1の態様によると、演算部は、次元削減によって得られた低次元データ集合に階層的クラスタリングを施すとともに、その階層的クラスタリングによって得られた結果を教師データとしたクラス分類を行うことで決定境界を定める。
【0013】
これにより、次元削減だけでは明確にグループ分けされないようなデータ集合を可視化対象とした場合であっても、非線形次元削減の結果に囚われることなく、決定境界を客観的に定めることができる。
【0014】
特に前記第1の態様では、クラスタリングに際して、階層的クラスタリングを行う。これにより、k平均法(k-means法)等の非階層的クラスタリングに比して、低次元データ集合における局所的な構造を、可能な限り尊重したクラスタリングを行うことができる。
【0015】
すなわち、k平均法等の非階層的クラスタリングは、クラスタ全体で見たときの平均的な挙動に着目したいわば“統計学的な手法”であり、局所的な構造というよりは、むしろ集合全体のマクロな構造(大域的な構造)を重視した手法といえる。
【0016】
そのため、低次元データ集合に非階層的クラスタリングを適用してしまうと、非線形次元削減において維持された局所的な構造が、非階層的クラスタリングでは軽視されることとなる。この場合、局所的な構造と、集合全体の構造と、が双方とも中途半端に尊重されることになり、仮に決定境界を定めたとしても、解釈性及び数学的意義に難のあるものが得られるに過ぎない。
【0017】
また、マクロな構造を重視した手法を用いた場合、特定の因子について知見を得ようとしても、その因子の特性が、マクロな構造によって平均化されてしまい、必要とする知見が十分に得られない可能性がある。
【0018】
これに対し、いわゆるコーフェン距離等に基づいた階層的クラスタリングは、低次元データ集合をなす元の1つ1つに着目するとともに、元同士のユークリッド距離等、ミクロな性質に重きを置いたいわば“幾何学的な手法”であり、低次元データ集合の局所的な構造を重視した手法であるといえる。
【0019】
したがって、前記第1の態様のように階層的クラスタリングを適用することで、非線形次元削減において維持された局所的な構造が、クラスタリングに際しても可能な限り重視されることになる。これにより、因子間の局所的な構造を最大限に反映させた決定境界を定めることができ、特に因子間の関係(例えば、特定の因子と、他の因子との間の相関関係)に関して、解釈性に優れた可視化を実現することができる。
【0020】
また、ミクロな構造を重視した手法を用いることで、マクロな構造を重視した手法と比較して、特定の因子の特性を平均化することなく、その特性を可能な限り維持することができる。したがって、前記第1の態様は、特定の因子に係る知見を得ようとしたと際に、好適に作用する。
【0021】
また、本開示の第2の態様によれば、前記複数の因子のそれぞれには、該因子の属性を示す属性情報が紐付けられ、前記可視化ステップでは、前記属性情報に応じて前記低次元データ集合の表示態様を異ならせる、としてもよい。
【0022】
前記第2の態様によると、属性情報に応じて表示態様を異ならせることで、決定境界によって可視化されるクラスタの概念と、表示態様によって表される属性情報の概念と、を同一平面内で同時に可視化することができる。これにより、属性情報とクラスタとの関係を俯瞰的かつ直感的に把握できるようになり、技術者の負荷を低減すると同時に、より解釈性に優れた可視化を実現することができるようになる。
【0023】
また、本開示の第3の態様によれば、前記複数の因子には、前記数値データとして所定の第1特定データが割り当てられる第1目的因子と、前記数値データとして、前記第1特定データに対して負の相関を有する第2特定データが割り当てられる第2目的因子と、含まれ、前記属性情報は、前記第1目的因子又は前記第2目的因子であるか否かを示す、としてもよい。
【0024】
前記第3の態様によると、単に第1目的因子を含めるばかりでなく、第2目的因子も含めるようにすることで、第1目的因子に対して正の相関及び負の相関を双方とも有しておらず、第1目的因子の分析に際して無視できるような因子を抽出することができる。これにより、より効率的な分析を行うことができるようになる。また、第1目的因子又は第2目的因子であるか否かを示す情報を属性情報に用いることで、前述のように無視可能な因子の抽出が容易になる。
【0025】
また、本開示の第4の態様によれば、前記複数の因子には、物品の形状を特徴付ける因子が含まれ、前記第1目的因子は、前記形状に対応した前記物品の性能を示す、としてもよい。
【0026】
前記第4の態様によると、複数の因子に物品の形状を特徴付ける因子を含めるとともに、第1目的因子が、その形状に対応した物品の性能を示すように構成することで、所望の性能に関連した物品の形状を、効率よく抽出することができる。
【0027】
その際、前記第1の態様のようにミクロな構造を重視した手法を用いることで、特定の形状と特定の性能との関係を、他の因子によって平均化されることなく、より確実に抽出することができるようになる。
【0028】
また、本開示の第5の態様によれば、前記次元削減ステップでは、前記多様体学習にt-SNE法を用いる、としてもよい。
【0029】
前記第5の態様によると、多様体学習にt-SNE法を用いることで、例えばUMAP(Uniform Manifold Approximation and Projection)法のようにマクロな構造も重視した手法を用いる場合と比較して、多次元データ集合における局所的な構造を、次元削減後の低次元データ集合においても可能な限り維持することができる。これにより、より解釈性に優れた可視化を実現する上で有利になる。
【0030】
また、本開示の第6の態様によれば、前記クラス分類ステップでは、非線形SVMを用いて前記決定境界を定める、としてもよい。
【0031】
前記第6の態様によると、非線形SVMを用いて決定境界を定めることで、より滑らかな決定境界を定めることができる。これにより、例えば直線状の決定境界を定めるような手法と比較して、因子間のミクロな構造を反映させるのに適した決定境界を定めることができる。このことは、より解釈性に優れた可視化を実現する上で好適に作用する。
【0032】
また、本開示の第7の態様は、コンピュータの演算部を用いることによって、複数の因子それぞれに多次元の数値データを割り当てることで構成される多次元データ集合を分析するとともに、該分析結果を可視化する情報処理装置に係る。
【0033】
そして、前記第7の態様によれば、前記情報処理装置は、前記演算部が、前記多次元データ集合に対して多様体学習を用いた非線形次元削減を施すことで、前記多次元データ集合の各元を2次元または3次元の数値データに変換してなる低次元データ集合を生成する次元削減手段と、前記演算部が、前記低次元データ集合に対して階層的クラスタリングを施すことで、前記低次元データ集合を複数のクラスタに分割するクラスタリング手段と、前記演算部が、前記クラスタリング手段による分割結果を教師データとしたクラス分類を行うことで、前記複数のクラスタの決定境界を定めるクラス分類手段と、前記演算部が、前記低次元データ集合及び前記決定境界を同時に可視化する可視化手段と、を備える。
【0034】
前記第7の態様によると、多次元データ集合に対し、より解釈性に優れた可視化を施すことができる。
【0035】
また、本開示の第8の態様は、コンピュータの演算部を用いることによって、複数の因子それぞれに多次元の数値データを割り当てることで構成される多次元データ集合を分析するとともに、該分析結果を可視化する情報処理プログラムに係る。
【0036】
そして、前記第8の態様によれば前記情報処理プログラムは、前記コンピュータに、前記演算部が、前記多次元データ集合に対して多様体学習を用いた非線形次元削減を施すことで、前記多次元データ集合の各元を2次元または3次元の数値データに変換してなる低次元データ集合を生成する次元削減ステップと、前記演算部が、前記低次元データ集合に対して階層的クラスタリングを施すことで、前記低次元データ集合を複数のクラスタに分割するクラスタリングステップと、前記演算部が、前記クラスタリングステップによる分割結果を教師データとしたクラス分類を行うことで、前記複数のクラスタの決定境界を定めるクラス分類ステップと、前記演算部が、前記低次元データ集合及び前記決定境界を同時に可視化する可視化ステップと、を実行させる。
【0037】
前記第8の態様によると、多次元データ集合に対し、より解釈性に優れた可視化を施すことができる。
【0038】
また、本開示の第9の態様は、前記情報処理プログラムを記憶していることを特徴とするコンピュータ読取可能な記憶媒体に係る。
【0039】
前記第9の態様によると、多次元データ集合に対し、より解釈性に優れた可視化を施すことができる。
【発明の効果】
【0040】
以上説明したように、本開示によれば、多次元データ集合に対し、より解釈性に優れた可視化を施すことができる。
【図面の簡単な説明】
【0041】
【
図1】
図1は、情報処理装置のハードウェア構成を例示する図である。
【
図2】
図2は、情報処理装置のソフトウェア構成を例示する図である。
【
図3】
図3は、情報処理方法の手順を例示するフローチャートである。
【
図4】
図4は、多次元データ集合を例示する図である。
【
図5】
図5は、t-SNE法の基本概念を説明するための図である。
【
図6】
図6は、階層型クラスタリングの基本概念を説明するための図である。
【
図7】
図7は、第1の具体例における因子を説明するための図である。
【
図8】
図8は、第1の具体例における可視化結果を示す図である。
【
図9】
図9は、第2の具体例における因子を説明するための図である。
【
図10】
図10は、第2の具体例における可視化結果を示す図である。
【発明を実施するための形態】
【0042】
以下、本開示の実施形態を図面に基づいて説明する。なお、以下の説明は例示である。
【0043】
<装置構成>
図1は、本開示に係る情報処理装置(具体的には、情報処理装置を構成するコンピュータ1)のハードウェア構成を例示する図であり、
図2は、そのソフトウェア構成を例示する図である。
【0044】
図1に例示するように、コンピュータ1は、コンピュータ1全体の制御を司る中央処理装置(Central Processing Unit:CPU)3と、ブートプログラム等を記憶するリードオンリーメモリ(Read Only Memory:ROM)5と、メインメモリとして機能するランダムアクセスメモリ(Random Access Memory:RAM)7と、2次記憶装置としてのソリッドステートドライブ(Solid State Drive:SSD)9と、を備える。なお、2次記憶装置としては、SSD9の代わりに、ハードディスクドライブ(Hard Disk Drive:HDD)等を用いることもできる。
【0045】
これらの要素のうち、CPU3は、種々のプログラムを実行する。CPU3は、いわゆるプロセッサであって、本実施形態における演算部として機能する。また、RAM7及びSSD9は、CPU3により実行されるプログラムを一時的または継続的に記憶する。RAM7及びSSD9は、それぞれ、本実施形態における記憶部として機能する。
【0046】
コンピュータ1はまた、ディスプレイ11と、ディスプレイ11上に表示される画像データを格納するグラフィックスメモリ(Video RAM:VRAM)13と、マンマシンインターフェースとしてのキーボード15及びマウス17と、を備える。ディスプレイ11は、CPU3による演算結果を表示することができ、本実施形態における表示部として機能する。また、本実施形態に係るコンピュータ1は、通信用のインターフェース21を解して外部機器との間でデータを送受することができる。
【0047】
図2に例示するように、SSD9のプログラムメモリには、オペレーティングシステム(Operating System:OS)19、分析対象設定プログラム29A、次元削減プログラム29B、クラスタリングプログラム29C、クラス分類プログラム29D、可視化プログラム29E、アプリケーションプログラム39等が格納される。
【0048】
これらの要素のうち、分析対象設定プログラム29A、次元削減プログラム29B、クラスタリングプログラム29C、クラス分類プログラム29D及び可視化プログラム29Eは、本実施形態における情報処理プログラム29を構成する。
【0049】
ここで、情報処理プログラム29とは、後述の情報処理方法を実行するためのプログラムであって、同方法を構成する各ステップをコンピュータ1に実行させるように構成されている。情報処理プログラム29は、コンピュータ読取可能な記憶媒体18に予め記憶されている。
【0050】
SSD9のプログラムにおいて、分析対象設定プログラム29A、次元削減プログラム29B、クラスタリングプログラム29C、クラス分類プログラム29D及び可視化プログラム29Eは、それぞれ、キーボード15、マウス17等から入力される指令に応じて起動される。その際、分析対象設定プログラム29A等は、SSD9からRAM7にロードされ、CPU3によって実行されることになる。
【0051】
一方、SSD9のデータメモリには、後述の多次元データ集合49と、その多次元データ集合を次元削減することで得られる低次元データ集合59と、その低次元データ集合59をクラスタリングすることで得られるクラスタリングデータ69と、そのクラスタリングデータ69に基づいて低次元データ集合59をクラス分類することで得られる境界データ79と、が格納される。
【0052】
この他、分析対象設定プログラム29A、次元削減プログラム29B、クラスタリングプログラム29C、クラス分類プログラム29D及び可視化プログラム29Eを実行することで生成される種々のデータ、並びに、アプリケーションプログラム39の実行結果については、必要に応じて、SSD9のデータメモリに格納されたり、メインメモリとしてのRAM7に格納されたりする。
【0053】
以下、情報処理方法の具体的な方法論について詳細に説明する。
【0054】
<方法論>
図3は、情報処理方法の手順を例示するフローチャートである。この情報処理方法は、コンピュータ1のCPU3を用いることによって、前述の多次元データ集合49を分類するとともに、その分類結果を可視化するものである。
【0055】
図3に示すように、情報処理方法は、分析対象設定ステップ(ステップS1)と、次元削減ステップ(ステップS2)と、クラスタリングステップ(ステップS3)と、クラス分類ステップ(ステップS4)と、可視化ステップ(ステップS5)と、を順番に実行することで実施される。なお、各ステップの実行結果(特に、可視化ステップの実行結果)は、いずれも、表示部としてのディスプレイ11上に表示することができる。
【0056】
これらのステップのうち、分析対象設定ステップは、CPU3が前述の分析対象設定プログラム29Aを実行することで実施される。同様に、次元削減ステップは、CPU3が次元削減プログラム29Bを実行することで実施され、クラスタリングステップは、CPU3がクラスタリングプログラム29Cを実行することで実施され、クラス分類ステップは、CPU3がクラス分類プログラム29Dを実行することで実施され、可視化ステップは、CPU3が可視化プログラム29Eを実行することで実施される。
【0057】
CPU3が分析対象設定プログラム29A等を実行することで、コンピュータ1は、分析対象設定ステップを実行する分析対象設定手段と、次元削減ステップを実行する次元削減手段と、クラスタリングステップを実行するクラスタリング手段と、クラス分類ステップを実行するクラス分類手段と、可視化ステップを実行する可視化手段と、を備える情報処理装置として機能することになる。
【0058】
以下、情報処理方法を構成する各ステップについて順番に説明する。
【0059】
(分析対象設定ステップ)
図4は、多次元データ集合49を例示する図である。
【0060】
以下の説明は、
図3のステップS1において行われる処理を示している。すなわち、
図3において制御プロセスがステップS1に進むと、CPU3は、以下に示す分析対象設定ステップを実行する。
【0061】
本実施形態に係る分析対象設定ステップは、CPU3が多次元データ集合49を設定するように構成されている。この設定は、SSD9、記憶媒体18等から多次元データ集合49を読み込むことで行ってもよいし、キーボード15等を介してユーザが直に入力することで行ってもよい。
【0062】
ここで、多次元データ集合49は、複数の因子pi(i=1,2,…,M)のそれぞれに、多次元(この例ではN次元)の数値データxiを割り当てることで構成されている。以下、この数値データxiを単に「多次元データ」ともいう。また、次元数Nは、少なくとも4以上に設定される。
【0063】
言い換えると、多次元データ集合49は、各因子piに割り当てられたN次元の多次元データxiを元としている。多次元データxiの各成分の値は、因子pi毎に変わり得る。さらに言い換えると、多次元データ集合49は、計M個の多次元ベクトル(次元数=N)によって構成されるデータ集合とみなすことができる。
【0064】
この多次元データ集合49は、
図4に示すような行列として表すことができる。同図において、n
j(j=1,2,…,N)は、i番目の因子p
iに割り当てられる多次元データx
iにおける、j次元目の成分を示している。この図に示すように、多次元データx
iの次元数Nは、因子p
i間で共通とされている。なお、
図4では各n
jは、-1、0、+1の3通りの値に設定されているが、この設定は説明を簡潔にするための例示に過ぎず、必須ではない。
【0065】
以下、多次元データx
iにおけるj次元目の成分を、n
jに代えてx
i,jと表記する。例えば
図4では、破線で囲われたx
4,4は、4番目の因子p
4に割り当てられた多次元データx
4における、4次元目の成分を表している。
【0066】
なお、複数の因子piは、それぞれ、所定の分析対象を特徴付ける因子piに相当する。本開示の主たる目的は、それら因子pi間の関係を可視化したり、特定の因子pi(例えば、後述の第1目的因子psと第2目的因子ps’)とそれ以外の因子piとの間の関係を可視化したりすることにある。
【0067】
ここで、複数の因子piは、それぞれ、所定の分析対象を特徴付ける因子に相当する。ここでいう分析対象には、物品の形状、性能、性質及び状態等が含まれる。また、ここでいう物品には、少なくとも、車両部品と、車両部品のアセンブリと、車両とが含まれる。
【0068】
また、物品の形状には、当該物品の外形状及び断面形状が含まれる。物品の形状に関連した因子piには、例えば、物品の各部における寸法及び曲率半径と、その物品を構成する部品間の相対角度(三角関数で表した場合も含む)と、が含まれる。
【0069】
また、物品の性能には、物品の衝突性能が含まれる。ここでいう衝突性能には、衝突時における物品の変形度合いに加え、衝突時に人に与える影響の度合いも含まれる。物品の衝突性能に関連した因子piには、例えば、物品に対する頭部の衝突位置及び衝突角度に加え、頭部損傷の程度を表す指数であるHIC(Head Injury Criterion:頭部損傷基準値)等、人に与えるダメージの大きさを特徴付ける指標が含まれる。
【0070】
その他、物品の変形し易さを特徴付けているという意味で、物品の形状に関連した因子pi(例えば、物品の各部における寸法及び曲率半径)を、物品の衝突性能に関連した因子piとみなしてもよい。その他、物品の性能に関連した因子piと、物品の形状に関連した因子piと、を組み合わせて分析してもよい。
【0071】
また、物品の形状に適合しているか否か、或いは、物品の性能を十分に発揮できるか否か等を深掘りすべく、複数の因子piに、人(車両の製造者及び搭乗者を含む)の性質、状態等に関連した因子を含めてもよい。ここでいう人の性質には、人の性別、性格及び嗜好が含まれる。人の状態には、その人の年齢、健康状態、及び、その物品を所有しているか否かを示すフラグが含まれる。人の嗜好には、特定の物品を好むか否かを示すフラグが含まれる。
【0072】
また、物品の性質に関連した因子piには、物品の仕様、種類及び仕向地等を含めてもよいし、物品の状態に関連した因子piには、物品の使用年数、汚損状態等を含めてもよい。
【0073】
なお、前述の物品には、「手書き文字」、「物品の断面形状」等を写した画像も含まれる。物品に画像を用いた場合、その画像の状態に関連した因子piとして、それぞれ異なる内容を写した複数枚の画像を用いることができる。
【0074】
図4の例では、M個の因子p
iのうち、1番目~M-2番目の因子p
iは物品の形状を特徴付けていて、M-1番目の因子p
M-1は、その形状に対応した物品の性能(その形状を採用したときの物品の性能)を示している。
【0075】
この場合、1番目~M-2番目の因子piと、M-1番目の因子pM-1との相対的な位置関係を分析することで、一の因子pM-1に係る性能に対する、他の因子piに係る形状の寄与度(特に、性能を向上させるような寄与度)を可視化することが可能になる。
【0076】
因子pM-1は、本実施形態における「第1目的因子」の例示である。以下、第1目的因子と他の因子piとを明確に区別するために、第1目的因子とされた因子に「ps」を付す場合がある。第1目的因子psには、多次元データxM-1として所定の第1特定データが割り当てられているものとする。
【0077】
さらに、
図5の例では、M番目の因子p
Mは、第1目的因子p
sに対して正反対な振る舞いをするように設定されている。具体的に、M番目の因子p
Mには、多次元データx
Mとして、前述の第1特定データに対して負の相関を有する第2特定データ(具体的には、
図4に示すように、前記第1特定データに対して-1を乗算してなる数値データ)が割り当てられるようになっている。
【0078】
この場合、1番目~M-2番目の因子piと、M番目の因子pMとの相対的な位置関係を分析することで、第1目的因子psに係る性能に対する、因子piに係る形状の負の寄与度(すなわち、性能を低下させるような寄与度)を可視化することが可能になる。
【0079】
因子pMは、本実施形態における「第2目的因子」の例示である。以下、第2目的因子と他の因子piとを明確に区別するために、第2目的因子とされた因子に「ps’」を付す場合がある。
【0080】
なお、M-1番目の因子pM-1を第1目的因子psに設定し、M番目の因子pMを第2目的因子ps’に設定したことは例示に過ぎない。因子piの順番にかかわらず、第1目的因子ps及び第2目的因子ps’を設定することができる。第1目的因子psと、それに対応する第2目的因子ps’は、複数設定してもよい。
【0081】
また、CPU3は、複数の因子piのそれぞれに、各因子piの属性を示す属性情報を紐付けることができる。この属性情報は、前述の分析対象とは無関係に設定することができ、後述のクラスタClhの概念に対しても独立した概念を用いることができる。
【0082】
例えば、前述のようにM個の因子piの中に第1目的因子psを含めた場合、属性情報として、第1目的因子psであるか否かを示すフラグを用いることができる。さらに、M個の因子piの中に、第1目的因子psと第2目的因子ps’を双方とも含めた場合、属性情報として、第1目的因子ps又は前記第2目的因子ps’であるか否かを示すフラグを用いることができる。
【0083】
図4の例では、前述のようにM-1番目の因子p
M-1が第1目的因子p
sに設定され、M番目の因子p
Mが第2目的因子p
s’に設定されている。この場合、これらの2つの因子p
M-1,p
Mと、他のM-2個の因子p
iと、の間で属性情報を示すフラグI
aの値を異ならせればよい。
【0084】
属性情報の紐付けも含めて多次元データ集合49の設定が完了すると、制御プロセスは
図3のステップS2へ進む。制御プロセスをステップS2に進める前に、多次元データ集合49をRAM7又はSSD9に格納してもよい。
【0085】
(次元削減ステップ)
図5は、t-SNE法の基本概念を説明するための図である。
【0086】
以下の説明は、
図3のステップS2において行われる処理を示している。すなわち、
図3において制御プロセスがステップS2に進むと、CPU3は、以下に示す次元削減ステップを実行する。
【0087】
本実施形態に係る次元削減ステップは、CPU3が多次元データ集合49に対して多様体学習を用いた非線形次元削減を施すことで、多次元データ集合49の各元(各xi)を2次元または3次元の数値データyiに変換してなる低次元データ集合59を生成するように構成されている。以下、次元削減によって得られる数値データyiを単に「低次元データ」ともいう。
【0088】
ここで、yiは、低次元データ集合59を構成するi番目の低次元データ(低次元ベクトル)を表している。以下、i番目の因子piに割り当てられた低次元データyiにおけるk次元目の成分をyi,kと表す場合がある。多次元データxiの添え字と同様に、iは1以上かつM以下の範囲内の値を取る整数である。一方、kは1以上かつ2または3以下の整数となる。
【0089】
次元削減ステップでは、ステップS1で設定された多次元データ集合49をインプットとし、低次元データ集合59をアウトプットとした教師なし学習が行われる。特に本実施形態に係る次元削減ステップでは、教師なし学習としての多様体学習に、t分布型確率的近傍埋め込み法(t-SNE法)を用いるように構成されている。
【0090】
t-SNE法を用いた場合、CPU3は、例えば
図5の左図に示すように、高次元空間では多変量正規分布に基づく第1の尺度(p*|i)でベクトルデータ間の距離を測る。CPU3はまた、
図5の右図に示すように、低次元空間では自由度1のt分布に基づく第2の尺度(q*|i)でベクトルデータ間の距離を測る。
【0091】
そして、CPU3は、2つの分布間のカルバック・ライブラー情報量を最小化するような学習を実行することで、非線形次元削減を実行する。t-SNE法を適用することで、N次元の各多次元データxiを、2次元又は3次元の低次元データyiへと変換することができる。例えば2次元の低次元データyiへと変換された場合、各低次元データyiを2次元平面上に図示することが可能となる。
【0092】
t-SNE法を初めとする非線形次元削減は、多次元データx
iの局所的な構造に忠実である。例えば、所定の多次元データx
iを低次元データy
iに変換したときに、多次元データx
iに接近していた(類似していた)多次元データx
jを近傍に対応付けるとともに、多次元データx
iに離間していた(異なっていた)多次元データx
kを遠方に対応付けることができる(
図5の低次元データy
j,y
kを参照)。非線形次元削減を用いることで、多次元データx
i近傍の局所的な構造を、次元削減後も可能な限り維持することができる。
【0093】
以下、2次元の低次元データyiに変換されたことを前提として説明を進めるが、以下の説明は、3次元の低次元データyiに変換された場合においても実質的に同じである。
【0094】
また、非線形次元削減による削減対象は、各多次元データxiの次元数(=N)に他ならない。一方、低次元データyiのデータ数(考慮すべき因子piの個数M)は、多次元データxiのデータ数と同一であり、次元削減の前後で不変に保たれるようになっている。
【0095】
その後、CPU3は、前述のようにして生成された低次元データ集合59を、RAM7又はSSD9に格納する。そうして格納された低次元データ集合59は、クラスタリングステップ等の後続の処理において、必要に応じて読み込まれる。低次元データ集合59の格納が完了すると、制御プロセスは
図3のステップS3へ進む。
【0096】
(クラスタリングステップ)
図6は、階層的クラスタリングの基本概念を説明するための図である。
【0097】
以下の説明は、
図3のステップS3において行われる処理を示している。すなわち、
図3において制御プロセスがステップS3に進むと、CPU3は、以下に示すクラスタリングステップを実行する。
【0098】
本実施形態に係るクラスタリングステップは、CPU3が低次元データ集合59に対して階層的クラスタリングを施すことで、低次元データ集合59を複数のクラスタClh(h=1,2,…,L)に分割するように構成されている。
【0099】
ここで、Clhは、複数のクラスタのうち、h番目のクラスタを表している。hの上限を示すLは、2以上かつN以下の整数となる。
【0100】
クラスタリングステップでは、ステップS2で生成された低次元データ集合59と、後述の第1閾値とがインプットとなり、クラスタリングデータ69がアウトプットとなる。
【0101】
ここで、クラスタリングデータ69は、各低次元データyiと、その低次元データyiが属するクラスタClhとの紐付けを表すデータである。
【0102】
また、本実施形態に係るCPU3は、k-means法等の非階層的クラスタリングではなく、前述のように階層的クラスタリングを実行する。その際、Diana法等の分割型(トップダウン型)の階層的クラスタリングではなく、単連結法、完全連結法、重心法等の凝集型(ボトムアップ型)の階層的クラスタリングを用いることが好ましい。
【0103】
詳細には、分割型の階層的クラスタリングを用いた場合、一般的には、クラスタ数は事前に指定されることになる。この場合、局所的な構造よりはむしろ大域的な構造に重きが置かれることになる。したがって、局所的な距離構造を可能な限り保存することができるというt-SNE法の特性を際立たせるためには、クラスタ数を事後に指定可能な凝集型の階層的クラスタリングを用いることが好ましい。
【0104】
また、凝集型の階層的クラスタリングの中でも、ウォード法(最小分散法)を用いることがさらに好ましい。このウォード法は、最小分散法という別名が示すように、クラスタ内の分散を最小化する手法である。一方、t-SNE法による非線形次元削減を行った場合、次元削減前に近距離となる因子同士が、次元削減後も自ずと近くに集まってくるため、ウォード法との相性がよく、当該手法によるクラスタリングをスムースに行うことができる。
【0105】
階層的クラスタリングに際しては、いわゆるコーフェン行列による分析方法を用いることができる。すなわち、低次元データ集合59の各元を独立したクラスタとみなした上で、それら各元から、選択された方法(例えばウォード法)に応じた距離と、その距離を用いたコーフェン行列とを算出し、そのコーフェン行列に基づいて樹形図の作成を進める。その際、少なくとも一部の低次元データyiがクラスタリングされる。その後、クラスタリングの結果を反映した状態で、前記工程を繰り返す。
【0106】
ここで、クラスタ間の距離は、選択された方法によって変わり得る。例えば前述のようなウォード法を用いた場合、仮に第1及び第2のクラスタを併合して第3のクラスタが生成されるものとすると、第3のクラスタの分散から、第1のクラスタの分散と第2のクラスタの分散との和を減算したものを、第1のクラスタ及び第2のクラスタの間の距離とみなすことができる。ウォード法においては、そうして定義される距離が最小化される組み合わせが探索されるようにクラスタリングが進められていくことになる。以下、この距離を「情報ロス量」ともいう。
【0107】
なお、ここでいう「第3のクラスタの分散」とは、第3のクラスタ全体で見たときの重心と、第3のクラスタを構成する各低次元データ集合59との間の距離の2乗の平均をいう。同様に、「第1のクラスタ(第2のクラスタ)の分散」とは、第1のクラスタ(第2のクラスタ)の重心と、第1のクラスタ(第2のクラスタ)を構成する各低次元データ集合59との間の距離の2乗の平均をいう。
【0108】
一例として、ウォード法を用いた場合を考える。この場合、CPU3はまず、低次元データ集合59の各元を独立したクラスタとみなした上で、その低次元データ集合59の全体から、前述のように定義された情報ロス量が最小となる2つの低次元データyiの組み合わせを探索する。この段階では、各元の重心位置は、各元の二次元座標と一致することになる。
【0109】
図6(a)の例の場合、CPU3は、5つの低次元データP1,P2,P3,P4,P5の中から任意の2者間の情報ロス量を算出し、その2者間の組み合わせの中から、算出した情報ロス量が最小となる2つの低次元データP1,P2をピックアップする。
【0110】
そして、CPU3は、2つの低次元データP1,P2を内包した第1クラスタCl1を構築する。この第1クラスタCl1の位置は、情報ロス量の算出に用いられた重心P12によって特徴付けられる。それと並行して、CPU3は、2つの低次元データP1,P2を結んだ枝を構築する。この枝の高さは、2つの低次元データP1,P2間の距離(つまり情報ロス量)の大きさに相当する。
【0111】
続いて、CPU3は、他の3つの低次元データP3,P4,P5と、前記第1クラスタCl1との中から任意の2者間の情報ロス量を算出し、その2者間の組み合わせの中から、算出した情報ロス量が最小となる組み合わせを探索する。例えば
図6(b)のように2つの低次元データP3,P4がピックアップされた場合、それら2つの低次元データP3,P4を内包した第2クラスタCl2が構築される。この第2クラスタCl2の位置は、情報ロス量の算出に用いられた重心P34によって特徴付けられる。それと並行して、CPU3は、2つの低次元データP3,P4を結んだ枝を構築する。この枝の高さは、2つの低次元データP3,P4間の距離(つまり情報ロス量)の大きさに相当するものであり、2つの低次元データP1,P2を結んだ枝よりも高くなる。
【0112】
続いて、CPU3は、他の1つの低次元データP5と、前記クラスタCl1,CL2との中から任意の情報ロス量を算出し、その2者間の組み合わせの中から、算出した情報ロス量が最小となる組み合わせを探索する。例えば
図6(c)のように第1クラスタCl1と第2クラスタCl2とがピックアップされた場合、第1クラスタCl1及び第2クラスタCl2を内包した第3クラスタCl3が構築される。この第3クラスタCl3の位置は、情報ロス量の算出に用いられた重心P1234によって特徴付けられる。それと並行して、CPU3は、第1クラスタCl1と第2クラスタCl2を結んだ枝を構築する。この枝の高さは、第1クラスタCl1と第2クラスタとの間の距離(つまり情報ロス量)の大きさに相当するものであり、2つの低次元データP3,P4を結んだ枝よりも高くなる。
【0113】
ウォード法以外の階層的クラスタリングを用いた場合も、概ね同様である。その場合、情報ロス量以外の指標を用いることで、低次元データyi又は一のクラスタClhと、他のクラスタClhと、の間の距離(類似度)が算出されることになる。
【0114】
なお、階層的クラスタリングによって低次元データy
iを複数のクラスタCl
hに分割するために、樹形図中の枝の高さに閾値を設定してもよい。この場合、枝の高さを所定の第1閾値未満に制限することで、低次元データ集合59を複数のクラスタCl
hに分割することができる。例えば、
図6(c)の鎖線L1のように第1閾値(詳細には、第3クラスタCl3の枝の高さ未満の閾値)を設定した場合、低次元データ集合59は、前述の第1クラスタCl1及び第2クラスタCl2と、低次元データP5のみが属するクラスタと、に分割されることになる。これに代えて、複数のクラスタCl
hの総数に上限を設け、その上限を超えない範囲内で分割を行ってもよい。
【0115】
続いて、CPU3は、このようにして生成された複数のクラスタClhに基づいて、各クラスタClhに属する低次元データyiの内訳を示すクラスタリングデータ69を生成する。
【0116】
続いて、CPU3は、生成したクラスタリングデータ69を、RAM7又はSSD9に格納する。そうして格納されたクラスタリングデータ69は、クラス分類ステップ等の後続の処理において、必要に応じて読み込まれる。クラスタリングデータ69の格納が完了すると、制御プロセスは
図3のステップS4へ進む。
【0117】
(クラス分類ステップ)
以下の説明は、
図3のステップS4において行われる処理を示している。すなわち、
図3において制御プロセスがステップS4に進むと、CPU3は、以下に示すクラス分類ステップを実行する。
【0118】
本実施形態に係るクラス分類ステップは、クラスタリングステップによる分割結果を教師データとしたクラス分類をCPU3が行うことで、複数のクラスタCl
hの決定境界Dbを定めるように構成されている(決定境界Dbについては、
図8及び
図10を参照)。
【0119】
クラス分類ステップでは、ステップS2で生成された低次元データ集合59をインプット(分類対象)とし、ステップS3で生成されたクラスタリングデータ69を教師データとし、境界データ79をアウトプットとした教師あり学習が行われる。
【0120】
ここで、境界データ79は、低次元データ集合59がプロットされるべき2次元平面又は3次元空間における、決定境界Dbの位置、形状及び数を示すデータである。特に本実施形態に係るクラス分類ステップでは、学習機に非線形サポートベクターマシン(Support-Vector Machine:SVM)を用いて決定境界Dbを定めるよう構成されている。
【0121】
一般に、クラス分類は、いわゆるマージン(特にソフトマージン)を最大化するように構成された、SVMの最適化問題とみなすことができる。この最適化問題は、ラグランジュの未定乗数法を適用することで双対問題に変換される。この双対問題は、元の空間から高次元空間へと写像を取ることで、元の空間では線形分離不可能だったとしても、高次元空間では線形分離可能な最適化問題とすることができる。この高次元空間において最適化問題を解くための手法が、いわゆる非線形SVMである。非線形SVMでは、高次元空間における内積に下記のようなカーネル関数を用いることで、カーネル関数の非使用時に比して、計算量を低減することができる(カーネルトリック)。
【0122】
本実施形態では、カーネル関数に、下式に示すガウシアンカーネルKが用いられる。
【0123】
【数1】
上式において、γは、ガウシアンカーネルの関数系を特徴付けるカーネルパラメータである。その他、外部から設定可能なパラメータとして、ハイパーパラメータCが存在する。ハイパーパラメータCは、より詳細には1ノルムソフトマージンSVMコストパラメータであって、ソフトマージンSVMにおける誤判別の許容度を調整するためのパラメータである。
【0124】
クラス分類ステップでは、クラスタリングデータ69を教師データとした上で、CPU3が低次元データ集合59に非線形SVMを適用する。これにより、低次元データ集合59がクラス分類されると同時に、そのクラス分類に対応した決定境界Dbが定まる。
【0125】
続いて、CPU3は、クラス分類に伴い定まった決定境界Dbに基づいて、前述の如く定義された境界データ79を生成する。
【0126】
続いて、CPU3は、生成した境界データ79を、RAM7又はSSD9に格納する。そうして格納された境界データ79は、後続の可視化ステップにおいて、必要に応じて読み込まれる。境界データ79の格納が完了すると、制御プロセスは
図3のステップS5へ進む。
【0127】
(可視化ステップ)
以下の説明は、
図3のステップS5において行われる処理を示している。すなわち、
図3において制御プロセスがステップS5に進むと、CPU3は、以下に示す可視化ステップを実行する。
【0128】
本実施形態に係る可視化ステップは、次元削減ステップによって生成された低次元データ集合59(より詳細には、低次元データ集合59を構成する各低次元データyi)と、クラス分類ステップにおいて定められた決定境界Dbと、を同時に可視化するように構成されている。
【0129】
この可視化ステップは、表示部としてのディスプレイ11上に、低次元データ集合59の各元(各低次元データyi)と、決定境界Dbと、をCPU3が重畳表示することで実現されるようになっている。重畳表示の具体例は後述する。
【0130】
なお、低次元データ集合59の各元は、2次元平面又は3次元空間上で散布図として表示されるようになっている。その際、後述の
図8及び
図10に示すように、前記各元に対応した散布図の各点に、各低次元データy
iが割り当てられた因子p
iの名称を用いてもよい。
【0131】
さらに、本実施形態に係る可視化ステップでは、各因子piに紐付けられた属性情報に応じて、低次元データ集合59の表示態様を異ならせるように構成されている。
【0132】
ここでいう「表示態様を異ならせる」には、散布図を構成する各点の色彩、サイズ、及び/又は形状を異ならせることが含まれる。「表示態様を異ならせる」には、前述のように散布図中に各因子piの名称を表示する代わりに、その因子piに紐付いた属性情報の名称を表示することも含まれる。
【0133】
<情報処理方法の具体例>
以下、可視化ステップの具体例について、因子pi等の例示を交えて説明する。
【0134】
(第1の具体例)
図7は、第1の具体例における因子p
iを説明するための図である。
図8は、第1の具体例における可視化結果を示す図である。この例では、因子数Mは22に設定されており、次元削減されることになる次元数Nは、50~200程度に設定されている。
【0135】
また、この第1の具体例では、物品としての車両100の性能、特に車両100の衝突性能を分析対象とする。計22個の因子p
iには、
図7の因子p
1~p
8のように車両100の形状に関連した因子p
iと、
図8の因子p
20~p
22のように車両100の衝突性能に関連した因子p
iと、
図8の因子p
9のように人の嗜好に関連した因子p
iと、が含まれている。
【0136】
図7の例では、因子p
1~p
8は、車両前後方向に沿った断面上で定義されている。具体的に、因子p
1は、車両前側に位置する第1部品101における車両後側の上端部の曲率を示しており、因子p
2は、第1部品101における車両後側の下端部の曲率を示しており、因子p
3は、第1部品101における車両後側かつ車両下側の部位の長さを示している。また、因子p
4は、第1部品101における車両前側かつ車両上側の部位の長さを示しており、因子p
5は、第1部品101における車両前側かつ車両下側の部位の長さを示している。同様に、因子p
6は、車両後側に位置する第2部品102における高さ方向中央付近の曲率を示しており、因子p
7は、第2部品102における下端部付近の曲率を示しており、因子p
8は、第2部品102における車両上側の部位の長さを示している。
【0137】
これらの因子p1~p8には、それぞれN次元の多次元データx1~x8が割り当てられている。例えば、多次元データx1における第n成分x1,nは、n番目のサンプリングデータSn(n=1,2,…,N)を用いて計算された因子p1の値を示している。
【0138】
ここでいうサンプリングデータS
nは、
図7に示すような断面形状を形成するためのパラメータセットとしてもよい。このパラメータセットは、例えば、車両100の設計変数でとしてもよく、車両部品の節点位置を示す座標の組み合わせとしてもよい。
【0139】
図7に、n=1、n=2及びn=NにおけるサンプリングデータS
nのイメージを示す。このイメージのように、計N通りのサンプリングデータS
nが事前に設定されている。そして、n番目のサンプリングデータS
nを用いて計算された因子p
1の値が、前述した成分x
1,nの値として用いられるようになっている。残りの因子p
2~p
8についても同様である。
【0140】
また、第1の具体例では、因子p21は、頭部損傷基準値(HIC)を示しており、本例における第1目的因子psに用いられている。一方、因子p22は、頭部損傷基準値(HIC)に(-1)を乗算したものを示しており、本例における第2目的因子ps’に用いられている。この第1の具体例において、因子p21及び因子p22には、他の因子piとは異なる属性情報が設定されている。
【0141】
因子p21~p22は、それぞれN次元の多次元データx21~x22が割り当てられている。この場合、n番目のサンプリングデータSnに対応した断面形状を有する車両100において衝突が発生したときのHICの値が、多次元データx21における第n成分x21,nの値として用いられるようになっている。一方、成分x22,nは、成分x21,nの符号を反転することで与えられる。
【0142】
また、車両100の衝突性能に関連した因子p20として、車両100に対する頭部の衝突位置を用いてもよい。この場合、n番目のサンプリングデータSnに対応した断面形状を有する車両100に対し、所定の初期位置から所定速度で物品を衝突させたときの衝突点を示す数値が、多次元データx20における第n成分x20,nの値として用いられるようになっている。その他、頭部の入射角等を因子piに含めてもよい。
【0143】
その他、第1の具体例では、因子p9は、所定の対象者(人)の嗜好を示している。この場合、n番目のサンプリングデータSnに対応した断面形状を対象者に見せたときに、その断面形状が対象者に好まれたか否かを示すフラグの値が、成分x9,nの値として用いられるようになっている。すなわち、第1の具体例では、因子p1~p9と因子p20~p22の値は、いずれも共通のサンプリングデータSnに基づいて与えられるようになっている。
【0144】
このように設定された因子p
1~p
22に対して前記可視化ステップを施した結果は、
図8に示す通りである。同図に示すように、2次元平面上に、各因子p
iに対応した低次元データy
iの値と、それらの低次元データy
iにクラス分類を施すことで得られた決定境界Dbと、が同時に可視化されている。
【0145】
図8において、各低次元データy
iの値は、散布図として可視化されている。この散布図を構成する各値は、点状の図形として散布されるのではなく、各低次元データy
iに対応した因子p
iの名称として散布されている。因子p
iの名称を直に可視化することで、散布図の視認性を高めることができる。
【0146】
また、
図8には、散布図に対して決定境界Dbが重畳表示されている。この決定境界Dbは、クラスタ間の境界線を示している。したがって、決定境界Dbを重畳表示することで、非線形次元削減の結果に囚われることなく、各因子p
iが属するクラスタを明確に可視化することができる。
【0147】
例えば、
図8の因子p
2、因子p
3及び因子p
9のように、人の目で見ただけでは同一のクラスタに属するように見える因子p
iであっても、階層的クラスタリングに基づいた結果を同時表示することで、互いに異なるクラスタに振るい分けることが可能となる。
【0148】
また、
図8に示すように、第1目的因子p
sとしての因子p
21と、第2目的因子p
s’としての因子p
22とは、他の因子p
1~p
20とは異なる表示態様で表示されている。この例では、他の因子p
1~p
20は黒字で表示されている一方、因子p
21及び因子p
22は、白抜きの文字で表示されている。このように表示態様を異ならせることで、第1目的因子p
s及び第2目的因子p
s’と、他の因子p
1~p
20とを比較する際の視認性を高めることができる。
【0149】
また、
図8に示すように、第1目的因子p
sの近傍には、因子p
12と因子p
13とが位置している。この場合、「頭部損傷基準値(HIC)を低下させるためには、因子p
12と因子p
13を低下させるような車両100を設計することが重要となる」という、特定の設計因子と衝突性能を結びつけた仮の解釈を与えることができる。
【0150】
また、因子p9は、第1目的因子psと同じクラスタに属している。この場合、「サンプリング対象とした対象者は、車の安全性能に精通した技術者である可能性がある」といったように、人の嗜好と車両100の安全性能を結びつけた仮の解釈を与えることができる。
【0151】
一方、第2目的因子ps’の近傍には、因子p5が位置している。この場合、「因子p5の値、つまり第1部品101における車両前側かつ車両下側の部位が短くなるように設計してしまうと、頭部損傷基準値(HIC)を増大させる可能性がある」という、特定の設計因子と衝突性能を結びつけた仮の解釈を与えることができる。
【0152】
さらに、第1目的因子psと第2目的因子ps’の間に位置し、かつ、第1目的因子ps及び第2目的因子ps’の双方と異なるクラスタに属する因子piについては、「頭部損傷基準値(HIC)の低下にも増大にもあまり寄与しておらず、車両100の衝突性能を向上させる上で無視することができる」という仮の解釈を与えることができる。これにより、これらの因子piについては、車両100の衝突性能以外の観点から設計することが許容されるようになる。
【0153】
なお、第1目的因子psの設定は、必要に応じて再設定してもよい。この再設定は、上記フラグIaの値を変更することで実現可能である。また、2以上の因子piを第1目的因子psに設定してもよい。
【0154】
例えば、前述した因子p9を第1目的因子psに設定することで、特定の対象者の好みと合致するような設計因子(因子pi)を探求することが可能となる。これにより、車両100のパーソナライズを図る上で有利になる。
【0155】
同様に、特定の仕向地における嗜好を第1目的因子psに設定することで、その仕向地における流行と合致するような設計因子(因子pi)を探求することが可能となる。これにより、特定の仕向地に適した車両100を設計する一助とすることができる。
【0156】
(第2の実施例)
図9は、第2の具体例における因子p
iを説明するための図である。
図10は、第2の具体例における可視化結果を示す図である。この例では、因子数Mは1000に設定されており、次元削減の対象となる次元数Nは、後述のように28×28=784に設定されている。
【0157】
第2の具体例では、複数の因子piとして、物品としての手書き文字を写した計M枚の画像を用いる。一の因子piが、一の画像に対応している。また、分析対象として、画像の識別性能を例示する。
【0158】
また、計M枚の画像は、「0」~「9」までの10通りの数字を書き記した画像に分類することができる。各数字を記した画像は、100枚ずつ用意されている。ここで、各因子pi(画像)に、数字毎に異なる属性情報を紐付ける。この例では、書き記した数字と同じ値、つまり「0」~「9」までの10通りの属性情報が各因子piに紐付けられている。
【0159】
また、各画像は、28×28ピクセル、つまり計784個の画素によって構成されている。そこで、画像毎に各画素の値を一列に並べてなるベクトルを多次元データxiに用いることができる。
【0160】
すなわち、各因子piには、784次元の多次元データxiが割り当てられるようになっている。例えば、多次元データx1は、1番目の因子p1に割り当てられるべき数値データであって、その第n成分x1,nは、1枚目の画像を構成する画素のうち、第n番目の画素の値を示している。
【0161】
このように設定された因子p
1~p
1000に対して前記可視化ステップを施した結果は、
図10に示す通りである。同図に示すように、2次元平面上に、各因子p
iに対応した低次元データy
iの値と、それらの低次元データy
iにクラス分類を施すことで得られた決定境界Dbと、が同時に可視化されている。
【0162】
図10において、各低次元データy
iの値は、散布図として可視化されている。この散布図を構成する各値は、点状の図形として散布されるのではなく、各低次元データy
iに紐付いた属性情報の値、つまり、書き記した数字の値として散布されている。属性情報の値を直に可視化することで、散布図の視認性を高めることができる。
【0163】
また、
図10には、散布図に対して決定境界Dbが重畳表示されている。この決定境界Dbは、クラスタ間の境界線を示している。したがって、決定境界Dbを重畳表示することで、非線形次元削減の結果に囚われることなく、各因子p
iが属するクラスタを明確に可視化することができる。
【0164】
<解釈性について>
以上説明したように、本実施形態によれば、CPU3は、多次元データ集合49に対して非線形次元削減を実行する(
図3のステップS2を参照)。これにより、主成分分析法等の線形次元削減と比較して、多次元データ集合49を構成する一の元x
iと他の元x
i’との間の位置関係等、多次元データ集合49における局所的な構造を、次元削減後の低次元データ集合59においても可能な限り維持することができる。
【0165】
さらに、
図3のステップS3及びステップS4に例示したように、CPU3は、次元削減によって得られた低次元データ集合59に階層的クラスタリングを施すとともに、その階層的クラスタリングによって得られた結果を教師データとしたクラス分類を行うことで決定境界Dbを定める。
【0166】
これにより、次元削減だけでは明確にグループ分けされないようなデータ集合を可視化対象とした場合であっても、非線形次元削減の結果に囚われることなく、決定境界Dbを客観的に定めることができる。
【0167】
特に、
図3のステップS3に例示したように、本実施形態では、クラスタリングに際して階層的クラスタリングを行う。これにより、k平均法(k-means法)等の非階層的クラスタリングに比して、低次元データ集合59における局所的な構造を、可能な限り尊重したクラスタリングを行うことができる。
【0168】
すなわち、k平均法等の非階層的クラスタリングは、クラスタ全体で見たときの平均的な挙動に着目したいわば“統計学的な手法”であり、局所的な構造というよりは、むしろ集合全体のマクロな構造を重視した手法といえる。
【0169】
そのため、低次元データ集合59に非階層的クラスタリングを適用してしまうと、非線形次元削減において維持された局所的な構造が、非階層的クラスタリングでは軽視されることとなる。この場合、局所的な構造と、集合全体の構造と、が双方とも中途半端に尊重されることになり、仮に決定境界Dbを定めたとしても、解釈性及び数学的意義に難のあるものが得られるに過ぎない。
【0170】
マクロな構造を重視した手法を用いた場合、特定の因子piについて知見を得ようとしても、その因子piの特性が、マクロな構造によって平均化されてしまい、必要とする知見が十分に得られない可能性がある。
【0171】
これに対し、いわゆるコーフェン距離等に基づいた階層的クラスタリングは、低次元データ集合59をなす元の1つ1つに着目するとともに、元同士のユークリッド距離等、ミクロな性質に重きを置いたいわば“幾何学的な手法”であり、低次元データ集合59の局所的な構造を重視した手法であるといえる。
【0172】
したがって、前記ステップS3のように階層的クラスタリングを適用することで、非線形次元削減において維持された局所的な構造が、クラスタリングに際しても可能な限り重視されることになる。これにより、因子pi間の局所的な構造を最大限に反映させた決定境界Dbを定めることができ、特に因子pi間の関係(例えば、第1目的因子psと、他の因子piとの間の相関関係)に関して、解釈性に優れた可視化を実現することができる。
【0173】
また、ミクロな構造を重視した手法を用いることで、マクロな構造を重視した手法と比較して、特定の因子piの特性を平均化することなく、その特性を可能な限り維持することができる。したがって、本実施形態は、特定の因子piに係る知見を得ようとした際に、好適に作用する。
【0174】
また、
図8等を用いて説明したように、属性情報に応じて各点の表示態様を異ならせることで、決定境界Dbによって可視化されるクラスタCl
hの概念と、表示態様によって表される属性情報の概念と、を同一平面内で同時に可視化することができる。これにより、属性情報とクラスタCl
hとの関係を俯瞰的かつ直感的に把握できるようになり、技術者の負荷を低減すると同時に、より解釈性に優れた可視化を実現することができるようになる。
【0175】
また、
図4及び
図8等を用いて説明したように、単に第1目的因子p
sを含めるばかりでなく、第2目的因子p
s’も含めるようにすることで、第1目的因子p
sに対して正の相関及び負の相関を双方とも有しておらず、第1目的因子p
sの分析に際して無視できるような因子p
iを抽出することができる。これにより、より効率的な分析を行うことができるようになる。また、第1目的因子p
s又は第2目的因子p
s’であるか否かを示す情報を属性情報に用いることで、前述のように無視可能な因子p
iの抽出が容易になる。
【0176】
また、
図7及び
図8を用いて説明したように、複数の因子p
iに物品の形状を特徴付ける因子を含めるとともに、第1目的因子p
sが、その形状に対応した物品の性能を示すように構成することで、所望の性能に関連した物品の形状を、効率よく抽出することができる。
【0177】
その際、前述のようにミクロな構造を重視した手法を用いることで、特定の形状と特定の性能との関係を、他の因子piによって平均化されることなく、より確実に抽出することができるようになる。
【0178】
また、
図5を用いて説明したように、多様体学習にt-SNE法を用いることで、例えばUMAP(Uniform Manifold Approximation and Projection)法のようにマクロな構造も重視した手法を用いる場合と比較して、多次元データ集合49における局所的な構造を、次元削減後の低次元データ集合59においても可能な限り維持することができる。これにより、より解釈性に優れた可視化を実現する上で有利になる。
【0179】
また、非線形SVMを用いて決定境界Dbを定めることで、より滑らかな決定境界を定めることができる。これにより、例えば直線状の決定境界を定めるような手法と比較して、因子pi間のミクロな構造を反映させるのに適した決定境界Dbを定めることができる。このことは、より解釈性に優れた可視化を実現する上で好適に作用する。
【0180】
<他の実施形態>
前記実施形態では、多様体学習にt-SNE法を用いるように構成されていたが、本開示は、そうした構成には限定されない。Isomap(Isometric mapping)、UMAP(Uniform Manifold Approximation and Projection)等、他の手法を多様体学習に用いることができる。
【0181】
また、前記実施形態では、非線形SVM法を用いて決定境界Dbを定めるように構成されていたが、本開示は、そうした構成には限定されない。ニューラルネットワーク、ランダムフォレスト、ブースティング等、他の手法を用いて決定境界を定めることができる。
【0182】
また、前記実施形態では、一のコンピュータ1によって実施される構成を例示したが、本開示は、そうした構成には限定されない。本開示に係る情報処理方法及び情報処理プログラム29は、複数のコンピュータ1を用いて実行してもよい。また、本開示におけるコンピュータ1には、スーパーコンピュータ、PCクラスタ等の並列計算機も含まれる。
【0183】
なお、
図3のステップ間でコンピュータ1を変更することで、次元削減ステップ、クラスタリングステップ等を実行するCPU3と、可視化ステップを実行するCPU3と、を異ならせてもよい。すなわち、本開示は、単一のCPU3によって全ステップが実行される構成には限定されない。
【符号の説明】
【0184】
1 コンピュータ(情報処理装置)
3 CPU(演算部)
7 RAM(記憶部)
9 SSD(記憶部)
11 ディスプレイ(表示部)
18 記憶媒体
29 情報処理プログラム
49 多次元データ集合
59 低次元データ集合
S2 次元削減ステップ
S3 クラスタリングステップ
S4 クラスタ分類ステップ
S5 可視化ステップ