説明

データ構造比較プログラム及びデータ構造比較装置

【課題】本構成を採用しない場合と比べて計算量を減少するデータ構造比較プログラム及びデータ構造比較装置を提供する。
【解決手段】データ構造比較装置1は、患者と、患者に属するEファイルと、Eファイルに属するFファイルとを構造の要素として含む複数のサポートから、予め定めた頻度で出現するデータ構造を有するパターンを取得するパターン取得手段100と、複数のパターンのFファイルを比較する際に、パターン間でEファイルが共通するFファイル間の第1の類似度をそれぞれ算出する第1の類似度算出手段102と、第1の類似度算出手段102がFファイル毎に算出した第1の類似度に基づいてパターン間の第2の類似度を算出する第2の類似度算出手段103と、第2の類似度が予め定められた値以上の類似性を示すサポートを1つの分類として抽出するデータ構造抽出手段104とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ構造比較プログラム及びデータ構造比較装置に関する。
【背景技術】
【0002】
従来のデータ構造を比較する方法として、例えば、ツリー構造を有する複数のデータからパターン抽出技法を用いて頻出するツリー構造を見本のデータ構造として抽出し、抽出された見本のデータ構造の類似度を算出するものがある(例えば、非特許文献1、2参照)。
【0003】
非特許文献1には、根ノードを頂点として分岐する内部ノード及び最底辺の葉ノードから構成されるツリー構造間の比較をする際に、それぞれのツリー構造の葉ノードの並びを比較し、一方の葉ノードの並びから他方の葉ノードの並びへ変形するのに要するデータの挿入、削除、置換等の手順の最小回数(以下、「編集距離」という。)を算出する方法が開示されている。この編集距離を用いて、編集距離が予め定められた値より小さいツリー構造同士を類似性があるツリー構造とする。
【0004】
また、非特許文献2には、ツリー構造の葉ノードだけでなく、ツリー構造間の根ノード及び内部ノードを含めて一方のツリー構造から他方のツリー構造へ変形するのに要するデータの挿入、削除、置換等の手順の最小回数(以下、「Tree Edit距離」という。)を算出する方法が開示されている。このTree Edit距離の算出方法は、上記した非特許文献1の方法に比べて計算量が増加するものの、葉ノード以外も考慮するため、ツリー構造間の類似度としてより確かな値を算出する。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】Gusfield, Dan (1997). Algorithms on strings, trees, and sequences: computer science and computational biology. Cambridge, UK: Cambridge University Press. ISBN0-521-58519-8.
【非特許文献2】Philip, Bille. A survey on tree edit distance and related problems. Journal Theoretical Computer Science, Volume 337 Issue 1-3, 9 June 2005. Elsevier Science Publishers Ltd. Essex, UK
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明の目的は、本構成を採用しない場合と比べて計算量を減少するデータ構造比較プログラム及びデータ構造比較装置を提供することにある。
【課題を解決するための手段】
【0007】
本発明の一態様は、上記目的を達成するため、以下のデータ構造比較プログラム及びデータ構造比較装置を提供する。
【0008】
[1]コンピュータを、
対象と、対象に属するものとして関連付けられた第1の種類のデータと、前記第1の種類のデータに属するものとして関連付けられた第2の種類のデータとを構造の要素として含む複数の比較対象のデータから、予め定めた頻度で出現するデータ構造を見本のデータ構造として取得する取得手段と、
前記取得手段が取得した複数の前記見本のデータ構造の前記第2の種類のデータを比較する際に、前記見本のデータ構造間で前記第1の種類のデータが共通する第2の種類のデータ間の第1の類似度をそれぞれ算出する第1の類似度算出手段と、
前記第1の類似度算出手段が前記第2の種類のデータ毎に算出した前記第1の類似度に基づいて前記見本のデータ構造間の第2の類似度を算出する第2の類似度算出手段と、
前記第2の類似度が予め定められた値以上の類似性を示す前記見本のデータ構造を1つの分類として抽出する抽出手段として機能させるデータ構造比較プログラム。
【0009】
[2]前記取得手段が前記見本のデータ構造を取得する際に、前記見本のデータ構造を取得した前記複数の比較対象のデータから時間を単位とする日時データを取得する日時データ取得手段と、
前記第1の類似度算出手段は、複数の見本のデータ構造の前記第2の種類のデータを比較する際に、前記見本のデータ構造間で前記第1の種類のデータが共通する第2の種類のデータに前記日時データ取得手段が取得した前記日時のデータを予め定めた方法で加えて、当該日時のデータが加えられた見本のデータ構造の間の第1の類似度を算出する前記[1]に記載のデータ構造比較プログラム。
【0010】
[3]前記第1の類似度算出手段は、第2の種類のデータの内容に応じて重み付けをして類似度を算出する前記[1]又は[2]に記載のデータ構造比較プログラム。
【0011】
[4]対象と、対象に属するものとして関連付けられた第1の種類のデータと、前記第1の種類のデータに属するものとして関連付けられた第2の種類のデータとを構造の要素として含む複数の比較対象のデータから、予め定めた頻度で出現するデータ構造を有する見本のデータ構造を取得する取得手段と、
前記取得手段が取得した複数の前記見本のデータ構造の前記第2の種類のデータを比較する際に、前記見本のデータ構造間で前記第1の種類のデータが共通する第2の種類のデータ間の第1の類似度をそれぞれ算出する第1の類似度算出手段と、
前記第1の類似度算出手段が前記第2の種類のデータ毎に算出した前記第1の類似度に基づいて前記見本のデータ構造間の第2の類似度を算出する第2の類似度算出手段と、
前記第2の類似度が予め定められた値以上の類似性を示す前記見本のデータ構造を1つの分類として抽出する抽出手段とを有するデータ構造比較装置。
【発明の効果】
【0012】
請求項1又は4に係る発明によれば、本構成を採用しない場合と比べて計算量を減少することができる。
【0013】
請求項2に係る発明によれば、日時データを含めた第1の類似度を算出することができる。
【0014】
請求項3に係る発明によれば、第2の種類のデータの内容に応じて重み付けをすることができる。
【図面の簡単な説明】
【0015】
【図1】図1は、本発明の実施の形態に係るデータ構造比較装置の構成の一例を示す図である。
【図2】図2は、DPCデータのパターンの構成の一例を示す概略図である。
【図3】図3は、計算用係数情報の構成の一例を示す概略図である。
【図4】図4は、重み付け係数情報の構成の一例を示す概略図である。
【図5】図5(a)及び(b)は、パターン取得手段100のパターンの取得元となるDPCデータのサポートの構成例を示す。
【図6】図6(a)及び(b)は、追加日時データが追加されたDPCデータのパターンの構成の一例を示す概略図である。
【図7】図7は、第1の類似度の算出に用いる部分パターンを説明するための図である。
【図8】図8は、第1の類似度の算出に用いるリストの生成を説明するための図である。
【図9】図9は、第1の類似度の算出方法を説明するための図である。
【図10】図10は、第2の類似度の算出方法を説明するための図である。
【図11】図11(a)〜(c)は、データ構造抽出動作の一例を説明するための概略図である。
【発明を実施するための形態】
【0016】
(データ構造比較装置の構成)
図1は、本発明の実施の形態に係るデータ構造比較装置の構成の一例を示す図である。
【0017】
データ構造比較装置1は、CPU等から構成され各部を制御するとともに各種のプログラムを実行する制御部10と、HDD(Hard Disk Drive)やフラッシュメモリ等の記憶媒体から構成され情報を記憶する記憶部11とを備え、例えば、患者臨床情報及び診療行為の電子データの解析に用いられる。
【0018】
制御部10は、後述するデータ構造比較プログラム110を実行することで、パターン取得手段100、日時データ追加手段101、第1の類似度算出手段102、第2の類似度算出手段103及びデータ構造抽出手段104等として機能する。
【0019】
パターン取得手段100は、解析対象である電子データとして記憶部11から後述するDPCデータ111に含まれる複数の比較対象のデータ(以下、「サポート」という。)から対象として患者名を根ノードとした見本のツリー構造を複数取得する。ここで、見本のツリー構造(以下、「パターン」という。)とは、パターン抽出技法を用いて、ツリー構造を有する複数のデータに予め定めた頻度で出現する共通のツリー構造として抽出されるもののことをいう。
【0020】
なお、パターン取得手段100は、周知のパターン抽出技法を用いることで、複数のサポート間で後述するEファイル及びFファイルが共通したものをパターンとして取得する。周知のパターン抽出技法として、例えば、シーケンシャル・パターン・マイニングのPrefix Span、BIDE、CloSpan等又はサブツリーマイニング等を用いることができる。
【0021】
日時データ追加手段101は、パターン取得手段100が取得したパターンの元となった複数のサポートから時間を単位とする日時データを抽出してパターンに追加する。なお、時間は、年月日、時間、分、秒等いずれを用いてもよい。
【0022】
第1の類似度算出手段102は、比較対象となるパターン間において、葉ノードであるFファイルのうち、後述するEファイルが共通するFファイルをリスト化して、パターン中の日時データをさらにリストに追加して、Eファイル毎に当該リストの類似度(以下、「第1の類似度」という。)として編集距離を算出する。
【0023】
第2の類似度算出手段103は、第1の類似度算出手段102が算出したEファイル毎の第1の類似度に基づいて比較対象のパターン間の類似度(以下、「第2の類似度」という。)として編集距離を算出する。
【0024】
データ構造抽出手段104は、第2の類似度算出手段103が算出した第2の類似度が予め定められた値以下である複数のパターンの集合を1つの分類として抽出する。
【0025】
記憶部11は、制御部10を上述した各手段として動作させるデータ構造比較プログラム110、DPCデータ111、計算用係数情報112及び重み付け係数情報113等を記憶する。
【0026】
DPCデータ111は、分析可能な全国統一形式の患者臨床情報及び診療行為の電子データセットである。患者臨床情報は、例えば、患者基本情報、病名、術式、各種のスコア・ステージ分類等であり、診療行為情報は、診療行為、医薬品、医療材料、実施日、回数・数量、診療科、病棟、保険種別等である。
【0027】
また、DPCデータ111は、基本となるデータとして様式1、Eファイル及びFファイルと呼ばれるデータを有する。様式1とは、患者の臨床情報、傷病名、術式、補助治療等である。Eファイルとは、実施日、回数、診療科、病棟、オーダ医師等の情報である。Fファイルとは、Eファイルの詳細な内容であり、例えば、行為、薬剤、材料、数量等の情報である。
【0028】
本実施の形態では、患者を根ノードとし、その患者に属する日時データ及びEファイルを内部ノード、Eファイルに属するFファイルを葉ノードとして構成されるツリー構造をサポートとし、複数のサポートに予め定めた頻度以上で現れるサポートのデータ構造をパターンとして取得して、取得されたパターン間で類似度を算出し、算出された類似度に基づいて複数のパターンの集合を抽出する。
【0029】
図2は、DPCデータのパターンの構成の一例を示す概略図である。
【0030】
DPCデータ111から取得されたパターン2a及びパターン2bは、患者に属する日時データ22と、日時データ22に属するEファイル21と、Eファイル21に属するFファイルとを有し、ツリー構造を構成する。
【0031】
図3は、計算用係数情報の構成の一例を示す概略図である。
【0032】
計算用係数情報112は、Fファイル、期間、日単位を行列の項目とし、第1の類似度算出手段102が編集距離を算出する際にFファイル又は日時データに乗じる係数を定義する。なお、Fファイルと期間、Fファイルと日単位はそれぞれ比較すべき対象ではないので係数を「∞」としている。
【0033】
図4は、重み付け係数情報の構成の一例を示す概略図である。
【0034】
重み付け係数情報113は、Fファイル内容欄と、重み付け係数欄とを有し、第1の類似度算出手段102が編集距離を算出する際にFファイルの内容に応じてFファイル又は日時データに乗じる係数を定義する。
【0035】
(データ構造比較装置の動作)
以下に、データ構造比較装置の動作例を各図を参照しつつ、(1)基本動作、(2)類似度算出動作、(3)データ構造抽出動作に分けて説明する。
【0036】
(1)基本動作
まず、パターン取得手段100は、記憶部11のDPCデータ111からデータ構造を抽出する対象となる複数のパターンを取得する。以下、説明を簡単にするため、図2に示す2つのパターン2a及び2bを取得した場合について説明する。
【0037】
まず、パターンの取得方法を示すためにパターン2bを例にとって説明する。
【0038】
図5(a)及び(b)は、パターン取得手段100のパターンの取得元となるDPCデータ111のサポートの構成例を示す。
【0039】
パターン取得手段100は、パターン抽出技法を用いて、図5(a)に示す複数のサポート200b、200b…からパターン2bを取得する。
【0040】
Fファイルの編集距離を利用した従来の技術では、Fファイル以外の情報を用いないため、日時データ22がサポート200b、200b…それぞれにおいて異なっていても構わないため、図2に示すように、日時データ22の内容が異なる箇所は「日単位」としてパターンBを取得していた。
【0041】
しかし、本実施の形態においては日時データ22も考慮し、日時データ追加手段101は、パターン取得手段100が取得したパターン2bの元となった複数のサポート200b、200b…(図5(a))から時間を単位とする日時データ22を抽出して、異なる日時データを包括する内容の日時データとして、図5(b)に示すように、追加日時データ210b、210b…を追加する。
【0042】
図6(a)及び(b)は、追加日時データが追加されたパターンの構成の一例を示す概略図である。
【0043】
次に、日時データ追加手段101は、複数のサポート200b、200b…に追加された追加日時データ210b、210b…に基づき、図6(a)に示すように、パターン2bに追加日時データ22aを追加する。
【0044】
次に、日時データ追加手段101は、追加日時データ22bの日時の範囲内で複数のサポート200b、200b…の日時データを検索し、図6(a)に示す日時データ22aを、図6(b)に示すように、例えば、対象とする日時データを包括する最小の値である追加日時データ22bで置き換える。このように、本実施の形態では、従来の類似度の算出において用いられなかった日時データを要素として加えて類似度を算出する。なお、追加日時データ22aは、最小の値に限らず、予め定めた単位のうち全ての日時データを包括する値に設定してもよい。
【0045】
(2)類似度算出動作
図7は、第1の類似度の算出に用いる部分パターンを説明するための図である。
【0046】
次に、図7に示すように、第1の類似度算出手段102は、パターン2a及び2bをEファイル21に予め定められたデータ区分に基づき部分パターン2a〜2a、2b〜2bに分ける。
【0047】
次に、第1の類似度算出手段102は、区分が「60」で一致する部分パターン同士2aと2b、区分が「50」で一致する2aと2b、区分が「54」で一致する2aと2b、区分が「70」で一致する2aと2bの間の第1の類似度を算出する。以下、算出方法を説明する。
【0048】
図8は、第1の類似度の算出に用いるリストの生成を説明するための図である。
【0049】
第1の類似度算出手段102は、例えば、区分が「60」で一致する部分パターン2a及び2bからそれぞれ日時データ22とFファイル20を文字列として含むリスト3a及び3bを生成する。この際、第1の類似度算出手段102は、Fファイル20が属する日時データ22をそのFファイル20の前を並び順としてリストに追加する。なお、日時データ22の追加する並び順はこれに限るものではなく、Fファイル20の後に追加してもよい。
【0050】
図9は、第1の類似度の算出方法を説明するための図である。
【0051】
次に、第1の類似度算出手段102は、リスト3a及び3bの編集距離を算出する。具体的には、図9に示すように、リスト3a及び3bに含まれる項目毎の類似度を数値化して行列とし、左上の要素から右下の要素へ最小値を取るように移動する。
【0052】
ここで、行列中の同一の要素に対する右下への移動はリストに対して編集しない場合であり、異なる要素に対する下への移動はリストの要素を削除する場合、異なる要素に対する右への移動はリストの要素を挿入する場合にそれぞれ対応する。
【0053】
上記の操作の結果、得られた最小値が編集距離となる。なお、図9に折れ線で示す例において、要素「翌日」と要素「2日後」を交換、要素「TP」を挿入、要素「GPT」を削除、要素「ALP」を挿入、要素「ALb」を挿入する操作を行っている。
【0054】
また、上記操作に対し、計算用係数情報112を係数として用いることで、日時データ同士の編集操作、Fファイル同士の編集操作以外を排除するとともに、Fファイルの交換に対する制限を大きくしている。なお、Fファイルの交換の係数を1としてもよい。
【0055】
また、上記操作に対し、重み付け係数情報113を用いても良い。つまり、要素「翌日」と要素「2日後」を交換する操作は、図4においてFファイル内容欄が「一日差」に対応するため、0.7を係数として乗じる。以下、同様に、要素「TP」を挿入する操作に対し1を係数として乗じ、要素「GPT」を削除する操作に対し1を係数として乗じ、要素「ALP」を挿入する操作に対し0.5を係数として乗じ、要素「ALb」を挿入する操作する操作に対し2を係数として乗じて編集距離を算出してもよい。
【0056】
上記の編集距離の算出をすべての部分パターン同士2aと2b、2aと2b、2aと2b、2aと2bについて行いそれぞれパターン2aと2b間の第1の類似度を得る。
【0057】
図10は、第2の類似度の算出方法を説明するための図である。
【0058】
パターン2a及び2bの対象とする全てのFファイルを項目とし、Eファイル毎に分類した行列において、得られた各部分パターンの第1の類似度は、図10に示すように、同行列中において対角上に配置される。
【0059】
次に、第2の類似度算出手段103は、図10に示す行列において、第2の類似度を算出する。具体的には、図9において説明したのと同様に、左上から右下へ単純に第1の類似度を加算していけばよい。このように、Eファイルが異なるFファイル間の編集距離、例えば、Eファイル21「50」と「54」、「60」と「70」等の間の第1の類似度を算出しないため、すべてのFファイル間の編集距離を算出していた従来の方法に比べて計算量が減少する。
【0060】
(3)データ構造抽出動作
図11(a)〜(c)は、データ構造抽出動作の一例を説明するための概略図である。
【0061】
第2の類似度算出手段103によって各パターン間の第2の類似度が算出されると、図11(a)に示すように、各パターン間の第2の類似度の関係を示す行列が生成される。
【0062】
データ構造抽出手段104は、図11(a)に示す行列において、第2の類似度の値が小さいものから順番に各パターンのデータ構造の類似性が高いと判断し、図11(b)に示すように、データ構造の類似性の高い複数のパターンを1つの分類として抽出する。
【0063】
ここで、分類の閾値を、例えば、第2の類似度の値が3未満とすると、図11(b)に示すように、パターン2a〜2hの分類と、パターン2i及び2jの分類とに分断され、図11(c)に示すように、データ構造抽出手段104は、パターン2a〜2hの分類をクラスター1、パターン2i及び2jの分類をクラスター2として抽出する。
【0064】
[他の実施の形態]
なお、本発明は、上記実施の形態に限定されず、本発明の趣旨を逸脱しない範囲で種々な変形が可能である。
【0065】
また、上記実施の形態で使用されるデータ構造比較プログラム110は、CD−ROM等の記憶媒体から装置内の記憶部に読み込んでも良く、インターネット等のネットワークに接続されているサーバ装置等から装置内の記憶部にダウンロードしてもよい。また、上記実施の形態で使用されるDPCパターン取得手段100、日時データ追加手段101、第1の類似度算出手段102、第2の類似度算出手段103及びデータ構造抽出手段104の一部または全部をASIC等のハードウェアによって実現してもよい。
【符号の説明】
【0066】
1 データ構造比較装置
2a−2h パターン
2a−2a 部分パターン
3a、3b リスト
10 制御部
11 記憶部
20 Fファイル
21 Eファイル
22 日時データ
22a、22b 追加日時データ
100 パターン取得手段
101 日時データ追加手段
102 第1の類似度算出手段
103 第2の類似度算出手段
104 データ構造抽出手段
110 データ構造比較プログラム
111 DPCデータ
112 計算用係数情報
113 重み付け係数情報
200b、200b サポート
210b、210b 追加日時データ



【特許請求の範囲】
【請求項1】
コンピュータを、
対象と、対象に属するものとして関連付けられた第1の種類のデータと、前記第1の種類のデータに属するものとして関連付けられた第2の種類のデータとを構造の要素として含む複数の比較対象のデータから、予め定めた頻度で出現するデータ構造を見本のデータ構造として取得する取得手段と、
前記取得手段が取得した複数の前記見本のデータ構造の前記第2の種類のデータを比較する際に、前記見本のデータ構造間で前記第1の種類のデータが共通する第2の種類のデータ間の第1の類似度をそれぞれ算出する第1の類似度算出手段と、
前記第1の類似度算出手段が前記第2の種類のデータ毎に算出した前記第1の類似度に基づいて前記見本のデータ構造間の第2の類似度を算出する第2の類似度算出手段と、
前記第2の類似度が予め定められた値以上の類似性を示す前記見本のデータ構造を1つの分類として抽出する抽出手段として機能させるデータ構造比較プログラム。
【請求項2】
前記取得手段が前記見本のデータ構造を取得する際に、前記見本のデータ構造を取得した前記複数の比較対象のデータから時間を単位とする日時データを取得する日時データ取得手段と、
前記第1の類似度算出手段は、複数の見本のデータ構造の前記第2の種類のデータを比較する際に、前記見本のデータ構造間で前記第1の種類のデータが共通する第2の種類のデータに前記日時データ取得手段が取得した前記日時のデータを予め定めた方法で加えて、当該日時のデータが加えられた見本のデータ構造の間の第1の類似度を算出する請求項1に記載のデータ構造比較プログラム。
【請求項3】
前記第1の類似度算出手段は、第2の種類のデータの内容に応じて重み付けをして類似度を算出する請求項1又は2に記載のデータ構造比較プログラム。
【請求項4】
対象と、対象に属するものとして関連付けられた第1の種類のデータと、前記第1の種類のデータに属するものとして関連付けられた第2の種類のデータとを構造の要素として含む複数の比較対象のデータから、予め定めた頻度で出現するデータ構造を有する見本のデータ構造を取得する取得手段と、
前記取得手段が取得した複数の前記見本のデータ構造の前記第2の種類のデータを比較する際に、前記見本のデータ構造間で前記第1の種類のデータが共通する第2の種類のデータ間の第1の類似度をそれぞれ算出する第1の類似度算出手段と、
前記第1の類似度算出手段が前記第2の種類のデータ毎に算出した前記第1の類似度に基づいて前記見本のデータ構造間の第2の類似度を算出する第2の類似度算出手段と、
前記第2の類似度が予め定められた値以上の類似性を示す前記見本のデータ構造を1つの分類として抽出する抽出手段とを有するデータ構造比較装置。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2012−248144(P2012−248144A)
【公開日】平成24年12月13日(2012.12.13)
【国際特許分類】
【出願番号】特願2011−121565(P2011−121565)
【出願日】平成23年5月31日(2011.5.31)
【出願人】(000005496)富士ゼロックス株式会社 (21,908)