JP2022116866A - 複数の項目を関係付けるための方法、システム、およびプログラム - Google Patents

複数の項目を関係付けるための方法、システム、およびプログラム Download PDF

Info

Publication number
JP2022116866A
JP2022116866A JP2021013264A JP2021013264A JP2022116866A JP 2022116866 A JP2022116866 A JP 2022116866A JP 2021013264 A JP2021013264 A JP 2021013264A JP 2021013264 A JP2021013264 A JP 2021013264A JP 2022116866 A JP2022116866 A JP 2022116866A
Authority
JP
Japan
Prior art keywords
data
value
item
data groups
values
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021013264A
Other languages
English (en)
Inventor
やよい 夏目
Yayoi Natsume
修功 上田
Shuko Ueda
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
RIKEN Institute of Physical and Chemical Research
National Institutes of Biomedical Innovation Health and Nutrition
Original Assignee
RIKEN Institute of Physical and Chemical Research
National Institutes of Biomedical Innovation Health and Nutrition
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by RIKEN Institute of Physical and Chemical Research, National Institutes of Biomedical Innovation Health and Nutrition filed Critical RIKEN Institute of Physical and Chemical Research
Priority to JP2021013264A priority Critical patent/JP2022116866A/ja
Priority to PCT/JP2022/003368 priority patent/WO2022163821A1/ja
Publication of JP2022116866A publication Critical patent/JP2022116866A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/906Clustering; Classification
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Epidemiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Primary Health Care (AREA)
  • Public Health (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Medical Treatment And Welfare Office Work (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】複数の項目を関係付けるための方法、システム及びプログラムを提供する。【解決手段】複数の項目を関係付けるための方法は、異種の複数のデータ群を受信することであって、異種の複数のデータ群の各々は、複数の項目についての複数のデータを含むことと、異種の複数のデータ群の各々の複数のデータに基づいて、異種の複数のデータ群の各々からそれぞれの少なくとも1つの項目を抽出することと、異種の複数のデータ群の各々から抽出されたそれぞれの少なくとも1つの項目の間の関係を特定することと、を含む。【選択図】図6

Description

本開示は、複数の項目を関係付けるための方法、システム、およびプログラムに関する。さらに、本開示は、複数の項目を関係付けるための方法、システム、またはプログラム利用して複数のデータを層別化するための方法、システム、およびプログラムにも関する。
データをグループ化するための手法として、クラスタリングが知られている(例えば、特許文献1)。
特表2019-535046号公報
一つの局面において、本開示は、複数の項目を関係付けるための方法等を提供する。一つの実施形態では、本開示は、異種の複数のデータ群の各々から抽出されたそれぞれの少なくとも1つの項目を関係付けることを可能にする方法等を提供する。別の実施形態では、本開示は、特定された関係に従って、複数のデータを層別化するための方法等も提供する。
本開示の実施形態の例として、以下のものが挙げられる。
(項目1)
複数の項目を関係付けるための方法であって、
異種の複数のデータ群を受信することであって、前記異種の複数のデータ群の各々は、複数の項目についての複数のデータを含む、ことと、
前記異種の複数のデータ群の各々の複数のデータに基づいて、前記異種の複数のデータ群の各々からそれぞれの少なくとも1つの項目を抽出することと、
前記異種の複数のデータ群の各々から抽出されたそれぞれの少なくとも1つの項目の間の関係を特定することと
を含む方法。
(項目2)
前記関係は、
前記異種の複数のデータ群のうちの1つから抽出された少なくとも1つの項目を前提部とし、前記異種の複数のデータ群のうちの別の1つから抽出された少なくとも1つの項目を結論部とすることを含む、項目1に記載の方法。
(項目3)
前記関係を特定することは、
前記異種の複数のデータ群の各々について、
前記異種の複数のデータ群のうちの1つから抽出された少なくとも1つの項目を前提部とし、前記異種の複数のデータ群のうちの別の1つから抽出された少なくとも1つの項目を結論部としたときのスコアを算出することと、
前記スコアに基づいて、前記前提部とすべき少なくとも1つの項目と、前記結論部とすべき少なくとも1つの項目とを決定することと
を含む、項目2に記載の方法。
(項目4)
前記抽出することは、
前記異種の複数のデータ群の各々の複数の項目のうち、データが異常値を有する少なくとも1つの項目を抽出すること
を含む、項目1~3のいずれか一項に記載の方法。
(項目5)
前記抽出することは、再帰的反復アプローチを用いて少なくとも1つの項目を抽出することを含む、項目1~5のいずれか一項に記載の方法。
(項目6)
前記複数のデータ群は、定量的なデータを含む、項目1~5のいずれか一項に記載の方法。
(項目7)
前記定量的なデータを所定範囲内の値を有するデータに変換することをさらに含む、項目6に記載の方法。
(項目8)
前記変換することは、前記定量的なデータのうち、平均値または最頻値との差が閾値以内のデータを使用しないようにすることを含む、項目7に記載の方法。
(項目9)
前記変換することは、前記定量的なデータのうち、平均値または最頻値の値を前記所定範囲内の下限値とし、前記平均値または最頻値から離れるほど、前記所定範囲内の上限値に近づくようにすることを含む、項目7または項目8に記載の方法。
(項目10)
前記変換することは、前記平均値または最頻値から閾値以上離れた値を前記所定範囲内の上限値とすることをさらに含む、項目9に記載の方法。
(項目11)
前記変換することは、
前記定量的なデータからzスコアを算出することと、
前記zスコアを所与の値で除算することと、
前記除算後の値のうち、1を超えるものを1とし、-1を下回るものを-1とすることとにより、値を得ることと、
前記得られた値のうち負の値の絶対値をとることと、
を含む、項目7に記載の方法。
(項目12)
前記変換することは、
前記定量的なデータをヒストグラムに変換することと、
前記ヒストグラムの複数のビンのうちの最高頻度のビンの値で複数のビンの各々を除算することと、
1から前記除算後の値を減算することと
を含む、項目7に記載の方法。
(項目13)
複数のデータを層別化するための方法であって、
項目1~12のいずれか一項に記載の方法に従って特定された関係に従って、前記複数のデータ群内のデータを層別化すること
を含む方法。
(項目14)
複数の項目を関係付けるためのシステムであって、
異種の複数のデータ群を受信する受信手段あって、前記異種の複数のデータ群の各々は、複数の項目についての複数のデータを含む、受信手段と、
前記異種の複数のデータ群の各々の複数のデータに基づいて、前記異種の複数のデータ群の各々からそれぞれの少なくとも1つの項目を抽出する抽出手段と、
前記異種の複数のデータ群の各々から抽出されたそれぞれの少なくとも1つの項目の間の関係を特定する特定手段と
を備えるシステム。
(項目14A)
項目1~13のいずれか一項または複数の項に記載の特徴をさらに含む、項目14に記載のシステム。
(項目15)
複数の項目を関係付けるためのプログラムであって、前記プログラムは、プロセッサを備えるコンピュータシステムにおいて実行され、前記プログラムは、
異種の複数のデータ群を受信することであって、前記異種の複数のデータ群の各々は、複数の項目についての複数のデータを含む、ことと、
前記異種の複数のデータ群の各々の複数のデータに基づいて、前記異種の複数のデータ群の各々からそれぞれの少なくとも1つの項目を抽出することと、
前記異種の複数のデータ群の各々から抽出されたそれぞれの少なくとも1つの項目の間の関係を特定することと
を含む処理を前記プロセッサに行わせる、プログラム。
(項目15A)
項目1~13のいずれか一項または複数の項に記載の特徴をさらに含む、項目15に記載のプログラム。
(項目16)
複数の項目を関係付けるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体であって、前記プログラムは、プロセッサを備えるコンピュータシステムにおいて実行され、前記プログラムは、
異種の複数のデータ群を受信することであって、前記異種の複数のデータ群の各々は、複数の項目についての複数のデータを含む、ことと、
前記異種の複数のデータ群の各々の複数のデータに基づいて、前記異種の複数のデータ群の各々からそれぞれの少なくとも1つの項目を抽出することと、
前記異種の複数のデータ群の各々から抽出されたそれぞれの少なくとも1つの項目の間の関係を特定することと
を含む処理を前記プロセッサに行わせる、コンピュータ読み取り可能な記憶媒体。
(項目16A)
項目1~13のいずれか一項または複数の項に記載の特徴をさらに含む、項目16に記載のコンピュータ読み取り可能な記憶媒体。
本開示において、上記1または複数の特徴は、明示された組み合わせに加え、さらに組み合わせて提供され得ることが意図される。本開示のさらなる実施形態および利点は、必要に応じて以下の詳細な説明を読んで理解すれば、当業者に認識される。
本開示は、複数の項目を関係付けるための方法等を提供することができる。また、本開示は、特定された関係に従って、複数のデータを層別化するための方法等も提供することができる。特に、本開示は、異種の複数のデータ群間の関係を特定し、特定された関係に従って層別化することができる。
解析対象となるデータの一例を示す。 ファジー論理による変換の一例を示す。 zスコアベースの変換の概念を示す。 zスコアベースの変換の概念を示す。 ヒストグラムベースの変換の概念を示す。 ヒストグラムベースの変換の概念を示す。 複数の項目を関係付けるためのコンピュータシステム100の構成の一例を示す。 プロセッサ部120の構成の一例を示す。 プロセッサ部120の代替実施形態であるプロセッサ部120’の構成の一例を示す。 本開示のコンピュータシステム100による処理600の一例を示す。 実施例1におけるサブセット結合アルゴリズムのワークフローおよび利用されたメンバーシップ関数である。図7a)は、サブセット結合アルゴリズムのワークフローを示す。入力データは、2つの対の行列(例えば、同一の患者からのオミクスデータおよび臨床情報。行が患者IDを表し、列が臨床情報における生体分子または項目を表すとき、1つの行列内の行の数および他の行列内の行の数は、同一であることが予期される)である。これらの行列は、定量的であり得、かつ/または、カテゴリ的であり得る。第一に、これらの行列における定量的な属性が、メンバーシップ関数を用いて、ファジーなカテゴリ属性(「低」および「高」)に変換される。「低」カテゴリおよび「高」カテゴリのためのメンバーシップ値が各属性に対して取得されるため、このプロセスは、例えば、全項目が連続値の場合、2倍の列数を有する行列を生成する。第二に、これらの行列は、独立してファジーアプリオリアルゴリズムを用いて、FIS(頻出項目セット)を検出するために用いられる。第三に、1つの行列から導出されたFISが前提部となり、他の行列から導出されたFISが結論部となるように、アソシエーションルールが生成される。ユーザ規定の閾値(例えば、lift)が取り除くために用いられ、対の(データ1からの前提部およびデータ2からの結論部)アソシエーションルールが出力として取得される。図7b)は、ヒストグラムベースのメンバーシップ関数の例である。各属性(入力データの列)に対して、ユーザ規定の数のビンで、ヒストグラムが生成される。例として、属性A1の5つのビンを有するヒストグラムが図7b)に示される。各ビンの頻度をそれぞれx1,x2, x3, x4, x5とし、x3を最大とする。これらの値は、x3で除算されることにより、各ビンの頻度は、0~1の範囲となる。この属性A1に対して、2つの種類のカテゴリのメンバーシップ値が計算される:attributeA1_Low (データセットにおいて値が比較的に低い行のカテゴリ)およびattribute A1_High (データセットにおいて値が比較的に高い行のカテゴリ)。これらの2つのカテゴリのためのメンバーシップ値を計算するための式は、図7b)の底部に示される。図7c)は、zスコアベースのメンバーシップ関数の例である。各属性(入力データの列)に対して、値がzスコアに変換される。このプロセスによって、変換された値は、標準正規分布に従い、これらの約95%が-2~2に分布することが知られている。これらを-1~1にスケーリングするために、zスコアが2で除算され、1よりも大きい値および-1よりも小さい値が、それぞれ1または-1に変換される。取得された値は、(方法)のセクションで記載されるように、2つの種類のカテゴリのメンバーシップ値(“attributeA1_Low”および“attribute A1_High”)として用いられる。概して、取得された値が正である場合、取得された値は、attributeA1_High categoryのメンバーシップ値として用いられ、attribute A1_Low categoryのメンバーシップ値は0である。さらに、取得された値が負である場合、取得された値の絶対値は、attributeA1_Low categoryのメンバーシップ値として用いられ、attribute A1_High categoryのメンバーシップ値は0である。 人工データの生成の概念図を示す。図8a)人工データ(小)の例を示す。標準正規分布に従う値を有する100行および200列を有する2つの行列が、各行が観測(例えば、患者)を表し、各列が属性(例えば、遺伝子または臨床測定値)を表すものとして生成された。図2aにおいて、一方の行列をデータ1として、他方の行列をデータ2とする。第1の10個の行について、データ1の列1、2、3の値およびデータ2の列10、20、30の値がN(3, 0.5)に従った値と置換された。第2の10個の行について、データ1の列20、40、60の値およびデータ2の列40、80、120の値がN(-3,0.5)に従った値と置換された。第3の10個の行について、データ1の列50、75、100の値およびデータ2の列50、100の値がN(3,0.5)に従った値と置換され、データ1の列125、150の値およびデータ2の列150の値がN(-3, 0.5)に従った値と置換された。図8b)人工データ(大)の例を示す。標準正規分布に従う値を有する1000行および2000列を有する2つの行列が生成され、図8aにおける人工データ(小)と同一の手順によって、図8bに示されるように、いくつかの値が置換された 肝毒性データセットを用いた実験の結果の概要を示す。図9A)は、実験のために用いられた肝毒性データを示す。データは、公衆に利用可能である[(Bushel, et al., 2007)]。本発明者らは、本発明者らのアルゴリズムをこのデータセットに適用することにより、病理組織学的観測および/または臨床測定値(アセトアミノフェンの投与による肝毒性の程度のための評価基準)および/またはアセトアミノフェンの投与の実験的条件(データ2)と関連する遺伝子(データ1)を見出した。データ1は、64行(ラット)および3116列(遺伝子)を有し、データ2は、64行(ラット)および60(=48+10+2)列(48個の病理組織学的観測、10個の臨床測定値、2この実験的条件)を有していた。 肝毒性データセットを用いた実験の結果の概要を示す。図9B)は、この実験によって検出された対のアソシエーションルールを示す。検出された3986個の対のアソシエーションルール(閾値:lift(データ1からの頻出項目セット→データ2からの頻出項目セット)=4.8)のうち、最も説得力の高い1つのルールが、図3bに示される。10個の遺伝子が、5つの臨床測定値、4つの病理組織学的観測、2つの実験的条件と関連した。 アセトアミノフェンによる肝臓損傷の推測される分子基盤を示す。図9bにおける遺伝子のうち、4つの遺伝子が、肝臓損傷に関与するものとして見出された。これらの関係および関連する生体事象が描写される。Hsph1熱ショックタンパク質ファミリーH(heat shock protein family H;Hsp110)メンバー1、Mat2a:メチオニンアデノシルトランスフェラーゼ(methionine adenosyltransferase)2A、Pgs1: ホスファチジルグリセロホスフェートシンターゼ(phosphatidylglycerophosphatesynthase)1、Srm:スペルミジンシンターゼ( spermidine synthase), GSH:グルタチオン(glutathione) 実施例2において作成した動作確認用の人工データを示す。 実施例2の結果を示す。 実施例2の結果を示す。 実施例2の結果を示す。 実施例2の結果を示す。 実施例2の結果を示す。 実施例2の結果を示す。
以下、本開示を説明する。本明細書の全体にわたり、単数形の表現は、特に言及しない限り、その複数形の概念をも含むことが理解されるべきである。従って、単数形の冠詞(例えば、英語の場合は「a」、「an」、「the」など)は、特に言及しない限り、その複数形の概念をも含むことが理解されるべきである。また、本明細書において使用される用語は、特に言及しない限り、当該分野で通常用いられる意味で用いられることが理解されるべきである。したがって、他に定義されない限り、本明細書中で使用されるすべての専門用語および科学技術用語は、本開示の属する分野の当業者によって一般的に理解されるのと同じ意味を有する。矛盾する場合、本明細書(定義を含めて)が優先する。
(定義)
本開示において使用される用語および一般的な技術を説明する。
本明細書において、「データ群」は、データの集合のことをいう。単一のデータを含む場合も、データ群と呼ぶ。データ群内の各データにはラベルが付されており、これは、項目と称され得る。すなわち、データ群は、1または複数の項目を有する。データは、定量的な値であってもよいし、定性的な値(例えば、0、1の二値)であってもよい。データは、連続値であってもよいし、離散値であってもよいし、連続値と離散値とが混在してもよい。例えば、データは、複数の成分を有するベクトルとして表現され、ベクトルの複数の成分のそれぞれは、複数の項目のそれぞれに対応する。例えば、或る成分が値Xを有する場合、そのデータは、その成分に対応する項目の値がXであることを意味する。例えば、或る成分が値1を有する場合に、そのデータは、その成分に対応する項目を有することを意味し、或る成分が値0を有する場合に、その成分に対応する項目を有しないことを意味する。
一例において、データ群は、連続値のデータを含む。例えば、データ群は、表1に示すようなデータを含み得る。
Figure 2022116866000002

別の例において、データ群は、離散値のデータを含む。例えば、データ群は、表2に示すようなデータを含み得る。
Figure 2022116866000003

別の例において、データ群は、連続値のデータと離散値のデータとの組み合わせを含む。例えば、データ群は、表3に示すようなデータを含み得る。
Figure 2022116866000004
本明細書において、2つのデータ群が「同種」であるとは、2つのデータ群間で、すべての項目が一致する場合のことをいう。すなわち、第1のデータ群および第2のデータ群が同種であるとは、第1のデータ群が有する1または複数の第1の項目のすべてと、第2のデータ群が有する1または複数の第2の項目のすべてとが一致する場合のことをいう。
本明細書において、2つのデータ群が「異種」であるとは、2つのデータ群間で、一致しない項目が存在する場合のことをいう。すなわち、第1のデータ群および第2のデータ群が異種であるとは、第1のデータ群が有する1または複数の第1の項目のうちの少なくとも1つと、第2のデータ群が有する1または複数の第2の項目の少なくとも1つとが一致しない場合のことをいう。
本明細書において、「異常値」とは、そのデータの平均値または最頻値から離れた出現確率の低い値のことをいう。例えば、「異常値」は、出現確率が約50%未満、約40%未満、約30%未満、約20%未満、約15%未満、約10%未満、約5%未満、約3%未満、約1%未満、約0.5%未満等の値であり得る。
本明細書において、「約」とは、後に続く数値の±10%を意味する。
本明細書において、「項目の間の関係」とは、前提部-結論部の関係、すなわち、A(前提部)であるならばB(結論部)である、という関係をいう。項目の間の関係は、例えば、事象Aが発生すると事象Bも発生する、項目Aが高い/低いと項目Bが高い/低い等を含むがこれらに限定されない。
(好ましい実施形態)
以下に本開示の好ましい実施形態を説明する。以下に提供される実施形態は、本開示のよりよい理解のために提供されるものであり、本開示の範囲は以下の記載に限定されるべきでないことが理解される。従って、当業者は、本明細書中の記載を参照して、本開示の範囲内で適宜改変を行うことができることは明らかである。また、本開示の以下の実施形態は単独でも使用されあるいはそれらを組み合わせて使用することができることが理解される。
一実施形態において、本開示の手法は、異種の複数のデータ群の各々の少なくとも1つの項目間の関係を見出すことが可能なアルゴリズムを利用する。このアルゴリズムは、共起する傾向がある項目(頻出項目セット)を探索するアソシエーションルールマイニングの一種であるが、異種の複数のデータ群を関連付けることができる点で、1つのデータ群を利用するアソシエーションルールマイニングとは異なっている。本開示のアソシエーションルールマイニングでは、異種の複数のデータ群から異常値の頻出項目セットを探索することができる。
例えば、1つのデータ群を利用するアソシエーションルールマイニングでは、以下のアプリオリアルゴリズムを利用する。
まず、n個の2値属性I={i,i,・・・,i}を「項目」の組とする。Iは、「項目セット」と呼ばれる。T={t,t,・・・,t}をm個の観測の組とし、各tは、Iを有する。1つの観測がk個の項目を有する(Iがk個の1と、(n-k)個の0とを有する)場合、この項目セットは、k長項目セットと呼ばれる。アソシエーションルールは、以下のように定義される。
X→Y
ここで、X(前提部)およびY(結論部)は、
Figure 2022116866000005
で、共起する。
次に、アプリオリアルゴリズムは、1長項目セット(1個の項目のみを含む項目セット)の頻度をカウントし、所定の最小supportを満足しない低い頻度を有する1長項目セットが取り除かれる。supportは、X、Yの頻度またはXおよびYの共起の頻度を表すスコアである。X→Yの場合、supportは、データがバイナリである場合、例えば、以下のように表現される。
Figure 2022116866000006
次に、あり得る(k+1)長項目セットがk長項目セットから生成され、所定の最小supportよりも小さいsupportを有するk長項目セットを含むものが取り除かれる。これらのプロセスは、収束が達成されるまで繰り返される。この手順を用いて、頻出項目セット(所定の最小supportよりも高いsupportを有する項目セット)が検出される。
次に、各頻出項目セット内の前提部および結論部を探すことによって、アソシエーションルールが生成される。いくつかのスコア(例えば、lift)が一般的に用いられ、liftは、例えば、以下のように表現される。
Figure 2022116866000007
例えば、販売データ分析を例に説明する。
例えば、10人の消費者{t,t,t,t,t, t,t,t,t,t10}のそれぞれが、4つの項目(i:おむつ、i:ビール、i:牛乳、i:洗剤)のうちの少なくとも1つを購入したとする。このときのデータをアソシエーションルールマイニングで分析することにより、4つの項目(i:おむつ、i:ビール、i:牛乳、i:洗剤)間に存在し得る関係を推定することができる。
例えば、第1の消費者tがおむつとビールとを購入した場合、
It={1,1,0,0}
となり、第2の消費者tがおむつとビールと牛乳とを購入した場合、
It={1,1,1,0}
となり、第3の消費者tが牛乳と洗剤とを購入した場合、
It={0,0,1,1}
となり、第4の消費者tがおむつとビールと洗剤とを購入した場合、
It={1,1,0,1}
となり、第5の消費者tがおむつとビールと牛乳と洗剤とを購入した場合、
It={1,1,1,1}
となり、第6の消費者tがおむつを購入した場合、
It={1,0,0,0}
となり、第7の消費者tがビールと牛乳とを購入した場合、
It={0,1,1,0}
となり、第8の消費者tがビールと洗剤とを購入した場合、
It={0,1,0,1}
となり、第9の消費者tがおむつとビールと牛乳と洗剤とを購入した場合、
It={1,1,1,1}
となり、第10の消費者t10がおむつと牛乳とを購入した場合、
It10={1,0,1,0}
となる。
まず、商品を一つ購入する際のSupportを計算する。設定するSupportの閾値は0.35とする。例えば、Support(おむつ)はおむつを購入した人数(7)を総人数(10)で除算し、0.7となる。同様に、Support(ビール)=0.7、Support(牛乳)=0.6、Support(洗剤)=0.5となる。全てのSupportは閾値を上回ることを確認することができる。
次に、商品を二つ購入する際のsupportを計算する。考えられる組み合わせは{おむつ、ビール}、{おむつ、牛乳}、{おむつ、洗剤}、{ビール、牛乳}、{ビール、洗剤}、{牛乳、洗剤}の6通りである。例えば、Support(おむつ、ビール)はおむつとビールを購入した人数(5)を総人数(10)で除算し、0.5となる。同様に、Support(おむつ、牛乳)=0.4、Support(おむつ、洗剤)=0.3、Support(ビール、牛乳)=0.4、Support(ビール、洗剤)=0.4、Support(牛乳、洗剤)=0.3となる。Support(おむつ、洗剤)とSupport(牛乳、洗剤)はSupportの閾値を満たさないので、{おむつ、洗剤}と{牛乳、洗剤}の組み合わせは頻出項目セットの候補から外す。
次に、商品を三つ購入する際のsupportを計算する。考えられる組み合わせは{おむつ、ビール、牛乳}、{おむつ、ビール、洗剤}、{おむつ、牛乳、洗剤}、{ビール、牛乳、洗剤}の4通りである。しかし、{おむつ、洗剤}と{牛乳、洗剤}の組み合わせは頻出項目セットとなり得ないことから、{おむつ、洗剤}または{牛乳、洗剤}を含まない{おむつ、ビール、牛乳}の1通りのみSupportを計算する。例えば、Support(おむつ、ビール、牛乳)はおむつとビールと牛乳を購入した人数(3)を総人数(10)で除算して0.3となる。Support(おむつ、ビール、牛乳)はSupportの閾値を満たさないので、{おむつ、ビール、牛乳}は頻出項目セットの候補から外す。以上の手順により、頻出項目セットが4つ({おむつ、ビール}、{おむつ、牛乳}、{ビール、牛乳}、{ビール、洗剤})得られる。
続いて、頻出項目セットからアソシエーションルールを作成する。例えば、{おむつ、ビール}から考えられるアソシエーションルールは、
・おむつ→ビール(おむつを買った人はビールも一緒に買う傾向がある)、
・ビール→おむつ(ビールを買った人はおむつも一緒に買う傾向がある)
の2通りである。これらのアソシエーションルールの妥当性を評価するためのスコア(例えば、lift)を計算する。例えば、lift(おむつ→ビール)は、support(おむつ→ビール)=0.5、support(おむつ)=0.7、support(ビール)=0.7であるため、[数2]より約1.02となる。この値が高いほど、一緒に買われる傾向が強いと考えられる。
このようにして、例えば、「おむつ」と「ビール」とが一緒に買われる傾向があることを見出すことができた場合、「おむつ」と「ビール」との間に前提部-結論部の関係を見出すことができれば、「おむつを買った人はビールも一緒に買う傾向がある」という関係性を得ることができる。
このように、1つのデータ群を利用するアソシエーションルールマイニングでは、アソシエーションルールは、1つのデータ群内の各頻出項目セット内で生成される。本開示の後述する手法は、上述した1つのデータ群を利用するアソシエーションルールマイニングの手法とは異なり、アソシエーションルールが、異種の複数のデータ群を横断して生成される。例えば、アソシエーションルールは、アソシエーションルールの前提部が1つのデータセットから導出され、アソシエーションルールの結論部が別のデータセットから導出されるように生成される。これにより、生成されたアソシエーションルールは、相互に関連する異なるデータセットから導出された項目セットを表すことになる
本開示の手法は、異種の複数のデータ群の各々の少なくとも1つの項目間の関係を見出すために、例えば、以下のアルゴリズムを利用する。
まず、p個の属性のI={i1,1,i1,2,…,i1,p}およびq個の属性のI={i2,1,i2,2,…,i2,q}を「項目」の組とし、IおよびIは、「項目セット」と呼ばれる。T={t1,1,t1,2,…,t1,m}およびT={t2,1,t2,2,…,t2,m}をm個の観測の組とし、各t、tは、それぞれI、Iを有する。TおよびTが同数の観測を有し、t1,aおよびt2,a(a∈{1,2,…,m})が相互に関連付けられるものとする(例えば、患者の医療記録と、遺伝子発現プロファイルとを関連付ける場合、t1,a:患者ID aの医療記録、t2,a:患者ID aの遺伝子発現プロファイルとなり得る)。Tおよび/またはTが定量的な属性を含む場合、本アルゴリズムで取り扱い可能な値とするために、後述するメンバーシップ関数を用いた前処理が行われ得る。
次に、本アルゴリズムでは、所定の最小supportを用いて、TおよびTにおいて別々に頻出項目セットが検出される。supportは、データが連続値である場合、例えば、以下のように表現される。
Figure 2022116866000008
ここで、
X(a):観測aのXのメンバーシップ値
Y(a):観測aのYのメンバーシップ値
である。
次に、前提部がTにおいて検出された頻出項目セットから選択され、結論部がTにおいて検出された頻出項目セットから選択されて、アソシエーションルールが生成される。さらに、前提部がTにおいて検出された頻出項目セットから選択され、結論部がTにおいて検出された頻出項目セットから選択されて、アソシエーションルールが生成される。出力されるべきアソシエーションルールの数を制限するために、いくつかのスコアが用いられることができる。スコアは、例えば、liftを含む。liftは、例えば、以下のように表現される。
Figure 2022116866000009
ここで、
X:Iで構成される頻出項目セット、
Y:Iで構成される頻出項目セット、
Figure 2022116866000010
例えば、販売データ分析を例に説明する。
例えば、10人の消費者{t,t,t,t,t,t,t,t,t,t10}のそれぞれが、6つの項目(j:20代以下、j:30代または40代、j:50代または60代、j4:70代以上、j5:男性、j6:女性)のうちの少なくとも1つが当てはまるとする。さらに、4つの項目(i:おむつ、i:ビール、i:牛乳、i:洗剤)のうちの少なくとも1つを購入したとする。このときのデータを本開示の手法で分析することにより、6つの項目(j:20代以下、j:30代または40代、j:50代または60代、j4:70代以上、j5:男性、j6:女性)と4つの項目(i:おむつ、i:ビール、i:牛乳、i:洗剤)との間に存在し得る関係を推定することができる。
例えば、第1の消費者tが30~40代の男性である場合、
Jt={0,1,0,0,1,0}
となり、第2の消費者tが20代以下の女性である場合、
Jt={1,0,0,0,0,1}
となり、第3の消費者tが50~60代の女性である場合、
Jt={0,0,1,0,0,1}
となり、第4の消費者tが30~40代の男性である場合、
Jt={0,1,0,0,1,0}
となり、第5の消費者tが30~40代の女性である場合、
Jt={0,1,0,0,0,1}
となり、第6の消費者tが20代以下の女性である場合、
Jt={1,0,0,0,0,1}
となり、第7の消費者tが70代以上の男性である場合、
Jt={0,0,0,1,1,0}
となり、第8の消費者tが20代以下の男性である場合、
Jt={1,0,0,0,1,0}
となり、第9の消費者tが30~40代の男性である場合、
Jt={0,1,0,0,1,0}
となり、第10の消費者t10が20代以下の女性である場合、
Jt10={1,0,0,0,0,1}
となる。
また、第1の消費者tがおむつとビールとを購入した場合、
It={1,1,0,0}
となり、第2の消費者tがおむつとビールと牛乳とを購入した場合、
It={1,1,1,0}
となり、第3の消費者tが牛乳と洗剤とを購入した場合、
It={0,0,1,1}
となり、第4の消費者tがおむつとビールと洗剤とを購入した場合、
It={1,1,0,1}
となり、第5の消費者tがおむつとビールと牛乳と洗剤とを購入した場合、
It={1,1,1,1}
となり、第6の消費者tがおむつを購入した場合、
It={1,0,0,0}
となり、第7の消費者tがビールと牛乳とを購入した場合、
It={0,1,1,0}
となり、第8の消費者tがビールと洗剤とを購入した場合、
It={0,1,0,1}
となり、第9の消費者tがおむつとビールと牛乳と洗剤とを購入した場合、
It={1,1,1,1}
となり、第10の消費者t10がおむつと牛乳とを購入した場合、
It10={1,0,1,0}
となる。
始めに、データJの頻出項目セットを抽出する。まず、消費者の特徴についてsupportを計算する。設定するsupportの閾値は0.25とする。例えば、Support(20代以下)は20代以下の人数(4)を総人数(10)で除算し、0.4となる。同様に、Support(30~40代)=0.4、Support(50~60代)=0.1、Support(70代以上)=0.1、Support(男性)=0.6、Support(女性)=0.4となる。Support(50~60代)とSupport(70代以上)はSupportの閾値を満たさないので、{50~60代}と{70代以上}は頻出項目セットの候補から外す。
次に、二つの特徴が当てはまる際のsupportを計算する。考えられる組み合わせは{20代以下、男性}、{20代以下、女性}、{20代以下、30~40代}、{30~40代、男性}、{30~40代、女性}、{男性、女性}の6通りである。例えば、Support(20代以下、男性)は20代以下の男性の人数(1)を総人数(10)で除算し、0.1となる。同様に、Support(20代以下、女性)=0.3、Support(20代以下、30~40代)=0、Support(30~40代、男性)=0.3、Support(30~40代、女性)=0.1、Support(男性、女性)=0となる。Support(20代以下、男性)、Support(20代、30~40代)、Support(30~40代、女性)、Support(男性、女性)はSupportの閾値を満たさないので、{20代以下、男性}と{20代、30~40代}と{30~40代、女性}と{男性、女性}の組み合わせは頻出項目セットの候補から外す。
次に、三つの特徴が当てはまる際のsupportを計算する。考えられる組み合わせは{20代以下、30~40代、女性}、{20代以下、30~40代、男性}、{20代以下、女性、男性}、{30~40代、男性、女性}の4通りである。しかし、これらの組み合わせを満たす消費者はいないことから、頻出項目セットの候補から外す。
以上の手順により、頻出項目セットが2つ({20代以下、女性}、{30~40代、男性})得られる。
次に、データIの頻出項目セットを抽出する。これは上述した販売データ分析の例と同じ手順・結果であり、頻出項目セットが4つ({おむつ、ビール}、{おむつ、牛乳}、{ビール、牛乳}、{ビール、洗剤})得られる。
続いて、頻出項目セットからアソシエーションルールを作成する。前提部にデータJ(消費者の特徴)から得られた頻出項目セット、結論部にデータI(消費者の購入商品)を持つアソシエーションルールを作成する場合に考えられるアソシエーションルールは、
・{20代以下、女性}→{おむつ、ビール}(20代以下の女性は、おむつおよびビールを一緒に買う傾向がある)、
・{20代以下、女性}→{おむつ、牛乳}(20代以下の女性は、おむつおよび牛乳を一緒に買う傾向がある)、
・{20代以下、女性}→{ビール、牛乳}(20代以下の女性は、ビールおよび牛乳を一緒に買う傾向がある)、
・{20代以下、女性}→{ビール、洗剤}(20代以下の女性は、ビールおよび洗剤を一緒に買う傾向がある)、
・{30~40代、男性}→{おむつ、ビール}(30~40代の男性は、おむつおよびビールを一緒に買う傾向がある)、
・{30~40代、男性}→{おむつ、牛乳}(30~40代の男性は、おむつおよび牛乳を一緒に買う傾向がある)、
・{30~40代、男性}→{ビール、牛乳}(30~40代の男性は、ビールおよび牛乳を一緒に買う傾向がある)、
・{30~40代、男性}→{ビール、洗剤}(30~40代の男性は、ビールおよび洗剤を一緒に買う傾向がある)
の8通りである。
これらのアソシエーションルールの妥当性を評価するためのスコア(例えば、lift)を計算する。例えば、lift({30~40代、男性}→{おむつ、ビール})は、support({30~40代、男性}→{おむつ、ビール})=0.3(t1,t4, t9が「30~40代」、「男性」、「おむつ」、「ビール」を満たすため)、support({30~40代、男性})=0.3、support({おむつ、ビール})=0.5であるため、[数2]より2となる。この値が高いほど、消費者の特徴と購入商品の間の関係性が強いと考えられる。
このようにして、例えば、「おむつ」と「ビール」とが「30~40代」の「男性」によって一緒に買われる傾向があることを見出すことができた場合、「30~40代」および「男性」と「おむつ」および「ビール」との間に前提部-結論部の関係を見出すことができれば、「お客さんが30~40代男性であるとき、おむつおよびビールを一緒に買う傾向がある」という関係性を得ることができる。
上記アルゴリズムにより、相互に関連する異種のデータセット内の関連する項目の識別が可能となる。
上述したアルゴリズムを利用するに際し、解析対象となるデータに連続値が含まれる場合がある。例えば、図1Aに示すように、解析対象となるデータに連続値および離散値が混在している場合がある。このような場合であっても、後述する手法を用いて、連続値を所定範囲内の値に変換することにより、解析対象となるデータに対して上述したアルゴリズムを適用することが可能である。
本例では、連続値を所定範囲内の値に変換するために、連続値をファジー論理で表現する。これにより、連続値を所定範囲[0,1]内の値に変換することができる。
例えば、図1Bに示されるように、気温という連続値がファジー論理で表現されることにより、所定範囲[0,1]内の値に変換され得る。ここでは、気温13℃が「coolという項目を0.6個有し、coldという項目を0.4個有する」ものとして表現されている。
本例では、ファジー論理を用いて連続値を所定範囲内の値に変換するとき、平均値または最頻値から離れるほど所定範囲内の高い値に変換されるような変換式を用いて、連続値を変換することができる。これは、異種の複数のデータ群から異常値の頻出項目セットを探索することができる本開示のアソシエーションルールマイニングにとって重要である。異常値は、平均値または最頻値から離れた出現確率の低い値であることから、この変換により、連続値に含まれる異常値の情報を欠落することなく、むしろ、異常値の情報を増幅することができるからである。平均値または最頻値に近い値は、例えば、平均値または最頻値から遠い値を有さないという情報として扱われることになる。
例えば、平均値または最頻値から離れるほど所定範囲内の高い値に変換することに加えて、または、これに代えて、平均値または最頻値との差が閾値以内のデータを使用しないようにすることができる。これにより、異常値ではない分析に不要なデータを欠落させ、異常値の情報を相対的に増幅することができる。閾値は、任意の値であり得る。閾値は、所望の精度に応じて設定されることができる。
ファジー論理を用いて連続値を所定範囲内の値に変換するための手法は、いくつかの手法が存在する。
例えば、Min-Maxスケーリング法、シグモイド関数、ランクベースの変換が挙げられる。
例えば、連続値vのためのMin-Maxスケーリング法は、以下のとおりである。
Figure 2022116866000011
例えば、連続値vのためのシグモイド関数の式は、以下のとおりである。
Figure 2022116866000012
例えば、連続値vのためのランクベースの変換の式は、以下のとおりである。
Figure 2022116866000013
ここで、rがランクであり、nが観測の数である。
Min-Maxスケーリング法、シグモイド関数、ランクベースの変換等の手法は、平均値または最頻値から離れるほど所定範囲内の高い値に変換されるような変換式ではなく、むしろ、最も高い値と最も低い値との間の差を減少させ、異常値の情報を欠落させる傾向がある。本開示の発明者は、Min-Maxスケーリング法、シグモイド関数、ランクベースの変換等の手法は、本開示のアルゴリズムのためには好ましくないことを見出した。そして、本開示の発明者は、本開示のアルゴリズムのために好ましいいくつかの手法を予想外に発見した。その手法は、平均値または最頻値から離れるほど所定範囲内の高い値に変換することができるため、本開示のアルゴリズムのために好適であった。
一例において、連続値を所定範囲内の値に変換する手法は、zスコアベースの変換である。
図2A~図2Bは、zスコアベースの変換の概念を示す図である。
まず、図2Aの左側に示されるように、ある項目についての定量的な値は、複数のビンを有するヒストグラムに変換される。ここで、ヒストグラムのビンの数は、2以上の任意の数であり得る。例えば、ビンの数は、データに応じて設定されてもよいし、複数のデータに対して固定されていてもよい。ビンの数は、ユーザによって指定されてもよい。
図2Aに示される例では、miR-xxxの値が、10個のビンを有するヒストグラムに変換されている。
次いで、図2Aの右側に示されるように、ヒストグラムは、標準正規分布に変換される。標準正規分布における値は、その95%が[-2,2]の範囲にある。
次いで、標準正規分布からzスコアが算出される。そして、zスコアを所与の値(例えば、3または2)で除算することにより、値が算出される。この値が、zスコアベースの変換における指標となる。例えば、この値の絶対値が1よりも大きいか否かが判定される。
例えば、この値の絶対値が1よりも大きい場合に、この値の絶対値を1とみなし、この値の絶対値が1以下である場合に、この値をそのまま用いる。このようにして算出された値は、所定範囲内[-1,1]の範囲内の値となる。このような値の分布は、例えば、図2Bの右側に示される分布となる。メンバーシップ値は、[0,1]の値および、[-1,0]の値の絶対値であり、[0,1]の範囲内の値となる。
上記の所与の値は、例えば、全体の何%を1または0に変換するかに応じて決定され得る任意の値である。所与の値は、好ましくは3であり、より好ましくは2である。。所与の値が3である場合、全体の約0.3%が、変換後に1または0になることになり、所与の値が2である場合、全体の約5%は変換後に1または0になることになる。すなわち、所与の値が2である場合の方が所与の値が3である場合よりも多くの範囲が1または0に変換されることになり、[0,1]の範囲に分布する「その項目が当てはまるのか当てはまらないのか曖昧であることを表す値」が少なくなる。これにより、本開示のアソシエーションルールマイニングのアルゴリズムによってアソシエーションルールが検出しやすくなるため、有用である。
このようにzスコアベースの変換後の値は、本開示のアルゴリズムにおける利用のために好適である。なぜなら、変換後の値は、最高値および最低値のみならず、平均値(上記分布での0)から閾値以上離れた値をすべて1または-1としており、異常値の情報を欠落することなく、むしろ増幅しているからである。
ある項目について、平均値(上記分布での0)よりも高い値をカテゴリ“高”に分類し、平均値よりも低い値をカテゴリ“低”に分類すると、カテゴリ“高”における値(メンバーシップ値)は、[0,1]の範囲内の値となり、カテゴリ“低”における値(メンバーシップ値)は、絶対値を取ることにより[0,1]の範囲内の値となり、このとき、0は、平均値に対応する値である。それぞれのカテゴリにおける連続値vのメンバーシップ値は、例えば、以下のとおりに表され得る。
Figure 2022116866000014
上記変換では、平均値または最頻値の周辺の値は、カテゴリ“低”およびカテゴリ“高”のいずれにも属さない。これにより、平均値または最頻値の周辺の値は、本開示のアソシエーションルールマイニングにおいて使用されない。このようにして、平均値または最頻値の周辺の値を異常値ではない分析に不要なデータとして欠落させることで、異常値の情報を相対的に増幅することができる。
別の一例において、連続値を所定範囲内の値に変換する手法は、ヒストグラムベースの変換である。
図3A~図3Bは、ヒストグラムベースの変換の概念を示す図である。
まず、図3Aの左側に示されるように、ある項目についての定量的な値は、複数のビンを有するヒストグラムに変換される。ここで、ヒストグラムのビンの数は、2以上の任意の数であり得る。例えば、ビンの数は、データに応じて設定されてもよいし、複数のデータに対して固定されていてもよい。ビンの数は、ユーザによって指定されてもよい。
図3Aに示される例では、miR-xxxの値が、10個のビンを有するヒストグラムに変換されている。
次いで、図3Aの右側に示されるように、ヒストグラムの各ビンの値は、その最高頻度のビンの値で除算される。図3Aに示される例では、最高頻度のビンの値が55であるため、各ビンの値が55で除算されている。
次いで、1から除算後の値が減算される。このようにして算出された値は、所定範囲内[-1,1]の範囲内の値となる。メンバーシップ値は、[0,1]の値および、[-1,0]の値の絶対値であり、[0,1]の範囲内の値となる。例えば、図3Bに示されるように、最高頻度のビン(すなわち、最頻値)よりも高い値をカテゴリ“高”に分類し、最高頻度のビンよりも低い値をカテゴリ“低”に分類すると、カテゴリ“高”における値(メンバーシップ値)は、[0,1]の範囲内の値となり、カテゴリ“低”における値(メンバーシップ値)は、[0,1]の範囲内の値となり、このとき、0は、最頻値に対応する値である。
このようにヒストグラムベースの変換後の値は、本開示のアルゴリズムにおける利用のために好適である。なぜなら、変換後の値は、最頻値から閾値以内の値(すなわち、最高頻度のビン内の値)をゼロとすることで、平均値との差が閾値以内のデータを使用しないようにすることができ、これにより、異常値ではない不要なデータを欠落させ、異常値の情報を相対的に増幅することができるからである。
ある項目について、最頻値の上限bよりも高い値をカテゴリ“高”に分類し、最頻値の下限bよりも低い値をカテゴリ“低”に分類すると、それぞれのカテゴリにおける連続値vのメンバーシップ値は、例えば、以下のとおりに表され得る。
Figure 2022116866000015
ここで、Fvは、vを含むビンの頻度であり、FHは、最高頻度のビンの頻度である。
このようにして、解析対象のデータが連続値であっても、本開示のアルゴリズムを適用することができ、異種の複数のデータ群の複数の項目を関係付けることができる。
なお、以下で説明する実施の形態は、いずれも包括的または具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、請求の範囲を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
図4は、複数の項目を関係付けるためのコンピュータシステム100の構成の一例を示す。
コンピュータシステム100は、例えば、サービスプロバイダに設置されているコンピュータシステム(すなわち、サーバ装置)であってもよいし、ユーザが使用するコンピュータシステム(すなわち、ユーザ装置)であってもよい。以下では、サービスプロバイダに設置されているコンピュータシステムを例に説明する。
コンピュータシステム100は、インターフェース部110と、プロセッサ部120と、メモリ130部とを備える。コンピュータシステム100は、データベース部200に接続されている。
インターフェース部110は、コンピュータシステム100の外部と情報のやり取りを行う。コンピュータシステム100のプロセッサ部120は、インターフェース部110を介して、コンピュータシステム100の外部から情報を受信することが可能であり、コンピュータシステム100の外部に情報を送信することが可能である。インターフェース部110は、任意の形式で情報のやり取りを行うことができる。第1の人物が使用する情報端末および第2の人物が使用する情報端末は、インターフェース部110を介して、コンピュータシステム100と通信することができる。
インターフェース部110は、例えば、コンピュータシステム100に情報を入力することを可能にする入力部を備える。入力部が、どのような態様でコンピュータシステム100に情報を入力することを可能にするかは問わない。例えば、入力部がタッチパネルである場合には、ユーザがタッチパネルにタッチすることによって情報を入力するようにしてもよい。あるいは、入力部がマウスである場合には、ユーザがマウスを操作することによって情報を入力するようにしてもよい。あるいは、入力部がキーボードである場合には、ユーザがキーボードのキーを押下することによって情報を入力するようにしてもよい。あるいは、入力部がマイクである場合には、ユーザがマイクに音声を入力することによって情報を入力するようにしてもよい。あるいは、入力部がカメラである場合には、カメラが撮像した情報を入力するようにしてもよい。あるいは、入力部がデータ読み取り装置である場合には、コンピュータシステム100に接続された記憶媒体から情報を読み取ることによって情報を入力するようにしてもよい。あるいは、入力部が受信器である場合、受信器がネットワークを介してコンピュータシステム100の外部から情報を受信することにより入力してもよい。この場合、ネットワークの種類は問わない。例えば、受信器は、インターネットを介して情報を受信してもよいし、LANを介して情報を受信してもよい。
インターフェース部110は、例えば、コンピュータシステム100から情報を出力することを可能にする出力部を備える。出力部が、どのような態様でコンピュータシステム100から情報を出力することを可能にするかは問わない。例えば、出力部が表示画面である場合、表示画面に情報を出力するようにしてもよい。あるいは、出力部がスピーカである場合には、スピーカからの音声によって情報を出力するようにしてもよい。あるいは、出力部がデータ書き込み装置である場合、コンピュータシステム100に接続された記憶媒体に情報を書き込むことによって情報を出力するようにしてもよい。あるいは、出力部が送信器である場合、送信器がネットワークを介してコンピュータシステム100の外部に情報を送信することにより出力してもよい。この場合、ネットワークの種類は問わない。例えば、送信器は、インターネットを介して情報を送信してもよいし、LANを介して情報を送信してもよい。
プロセッサ部120は、コンピュータシステム100の処理を実行し、かつ、コンピュータシステム100全体の動作を制御する。プロセッサ部120は、メモリ部130に格納されているプログラムを読み出し、そのプログラムを実行する。これにより、コンピュータシステム100を所望のステップを実行するシステムとして機能させることが可能である。プロセッサ部120は、単一のプロセッサによって実装されてもよいし、複数のプロセッサによって実装されてもよい。
メモリ部130は、コンピュータシステム100の処理を実行するために必要とされるプログラムやそのプログラムの実行に必要とされるデータ等を格納する。メモリ部130は、複数の項目を関連付けるための処理をプロセッサ部120に行わせるためのプログラム(例えば、後述する図6に示される処理を実現するプログラム)および/または複数のデータを層別化するための処理をプロセッサ部120に行わせるためのプログラムを格納してもよい。ここで、プログラムをどのようにしてメモリ部130に格納するかは問わない。例えば、プログラムは、メモリ部130にプリインストールされていてもよい。あるいは、プログラムは、ネットワークを経由してダウンロードされることによってメモリ部130にインストールされるようにしてもよい。この場合、ネットワークの種類は問わない。メモリ部130は、任意の記憶手段によって実装され得る。メモリ部130は、例えば、非一過性のコンピュータ読み取り可能な記憶媒体を含み得る。
データベース部200には、例えば、解析対象の複数のデータ群が格納されている。また、データベース部200には、例えば、コンピュータシステム100によって特定された複数の項目間の関係を示すデータが格納され得る。例えば、データベース部200には、特定された関係に従って層別化されたデータが格納されてもよい。
図4に示される例では、データベース部200は、コンピュータシステム100の外部に設けられているが、本発明はこれに限定されない。データベース部200をコンピュータシステム100の内部に設けることも可能である。このとき、データベース部200は、メモリ部130を実装する記憶手段と同一の記憶手段によって実装されてもよいし、メモリ部130を実装する記憶手段とは別の記憶手段によって実装されてもよい。いずれにせよ、データベース部200は、コンピュータシステム100のための格納部として構成される。データベース部200の構成は、特定のハードウェア構成に限定されない。例えば、データベース部200は、単一のハードウェア部品で構成されてもよいし、複数のハードウェア部品で構成されてもよい。例えば、データベース部200は、コンピュータシステム100の外付けハードディスク装置として構成されてもよいし、ネットワークを介して接続されるクラウド上のストレージとして構成されてもよい。
図5Aは、プロセッサ部120の構成の一例を示す。
プロセッサ部120は、受信手段121と、抽出手段122と、特定手段123とを備える。
受信手段121は、インターフェース部110から情報を受信するように構成されている。
受信手段121は、異種の複数のデータ群を受信するように構成されている。受信手段121は、例えば、インターフェース部110を介してコンピュータシステム100に入力された異種の複数のデータ群をインターフェース部110から受信してもよい。例えば、複数のデータ群は、ユーザが操作するユーザ装置からネットワークを介してコンピュータシステム100に入力されてもよいし、データベース部200に格納されている複数のデータ群が、コンピュータシステム100に入力されてもよい。
抽出手段122は、異種の複数のデータ群の各々の複数のデータに基づいて、異種の複数のデータ群の各々からそれぞれの少なくとも1つの項目を抽出するように構成されている。抽出手段122は、例えば、データが異常値を有する少なくとも1つの項目を抽出することができる。
抽出手段122は、任意の手法を利用して、少なくとも1つの項目を抽出することができる。例えば、処理速度、精度、マシン性能等に応じて、好適な手法で、少なくとも1つの項目を抽出することができる。
一例において、抽出手段122は、以下のアプリオリアルゴリズムを利用する。
まず、n個の2値属性I={i,i,・・・,i}を「項目」の組とする。Iは、「項目セット」と呼ばれる。T={t,t,・・・,t}をm個の観測の組とし、各tは、Iを有する。1つの観測がk個の項目を有する(Iがk個の1と、(n-k)個の0とを有する)場合、この項目セットは、k長項目セットと呼ばれる。アソシエーションルールは、以下のように定義される。
X→Y
ここで、X(前提部)およびY(結論部)は、
Figure 2022116866000016
で、共起する。
次に、アプリオリアルゴリズムは、1長項目セット(1個の項目のみを含む項目セット)の頻度をカウントし、所定の最小supportを満足しない低い頻度を有する1長項目セットが取り除かれる。supportは、X、Yの頻度またはXおよびYの共起の頻度を表すスコアである。X→Yの場合、supportは、例えば、以下のように表現される。
Figure 2022116866000017
次に、あり得る(k+1)長項目セットがk長項目セットから生成され、所定の最小supportよりも小さいsupportを有するk長項目セットを含むものが取り除かれる。これらのプロセスは、収束が達成されるまで繰り返される。この手順を用いて、頻出項目セット(所定の最小supportよりも高いsupportを有する項目セット)が検出される。
別の例において、抽出手段122は、上述したアプリオリアルゴリズムまたはその亜種に代えて、eclat、VIPER、MAFIA、TM、FP-Growth、TFP、SSR、EXTRACT等のアルゴリズムを利用し得る。例えば、抽出手段122は、再帰的反復アプローチを用いて少なくとも1つの項目を抽出することができる。再帰的反復アプローチは、(k+1)個の項目を含むセットを探索するためにk個の項目を含むセットの情報を利用する。
特定手段123は、異種の複数のデータ群の各々から抽出されたそれぞれの少なくとも1つの項目の間の関係を特定するように構成されている。
関係は、例えば、前提部-結論部の関係であり得る。例えば、異種の2つのデータ群について関係を特定する場合、特定手段123は、第1のデータ群から抽出された少なくとも1つの項目または第2のデータ群から抽出された少なくとも1つの項目のいずれか一方を前提部とし、他方を結論部とする関係を特定することができる。例えば、異種のn個のデータ群について関係を特定する場合、特定手段123は、第1のデータ群から抽出された少なくとも1つの項目、第2のデータ群から抽出された少なくとも1つの項目、・・・第nのデータ群から抽出された少なくとも1つの項目の少なくとも1つを前提部とし、残りを結論部とする関係を特定することができる。
特定手段123は、例えば、2つのデータ群の各々から抽出されたそれぞれの項目の間の関係を特定するために、以下のアルゴリズムを利用することができる。
第1のデータ群から抽出された少なくとも1つの項目を前提部とし、第2のデータ群から抽出された少なくとも1つの項目を結論部として、アソシエーションルールが生成される。さらに、第2のデータ群から抽出された少なくとも1つの項目を前提部とし、第1のデータ群から抽出された少なくとも1つの項目を結論部として、アソシエーションルールが生成される。生成された複数のアソシエーションルールから、実際に出力されるべきアソシエーションルールの数を制限するために、いくつかのスコアが用いられることができる。スコアは、例えば、liftを含む。liftは、例えば、以下のように表現される。
Figure 2022116866000018
ここで、
X:第1のデータ群から抽出された少なくとも1つの項目、
Y:第2のデータ群から抽出された少なくとも1つの項目、
Figure 2022116866000019
liftが所定の閾値以上のアソシエーションルールが、2つのデータ群の関係を示すルールとして出力されることができる。
コンピュータシステム100によれば、従来のクラスタリングなどのグループ化手法では見いだせなかった関係を見出すことができる。見出された関係に従って、例えば、コンピュータシステム100は、複数のデータ群内のデータを層別化することができる。これにより、従来見いだせなかった観点から、データを層別化することができるようになる。これは、種々の分析の幅を広げることにつながり得る。
図5Bは、プロセッサ部120の代替実施形態であるプロセッサ部120’の構成の一例を示す。プロセッサ部120’は、複数のデータ群のうちの少なくとも1つが、定量的なデータを有する場合に利用され得る。
プロセッサ部120’は、受信手段121と、変換手段124と、抽出手段122と、特定手段123とを備える。受信手段121と、抽出手段122と、特定手段123とは、図5Aを参照して説明したものと同一であり、ここでは説明を省略する。
変換手段124は、定量的なデータを所定範囲内の値を有するデータに変換するように構成されている。所定範囲内の値は、例えば、[0,1]の範囲内の値であり得る。変換手段124は、定量的なデータのうち、平均値または最頻値との差が閾値以内のデータを使用しないようにすることができる。平均値または最頻値に近いデータは、関係を特定するうえで有用ではないので、これらのデータを排除することにより、特定される関係の精度を向上させることができる。閾値は、任意の値に設定され得る。閾値は可変値であってもよいし、固定値であってもよい。
変換手段124は、例えば、定量的なデータのうち、平均値または最頻値の値を所定範囲内の下限値(例えば、[0,1]の範囲内の「0」)とし、平均値または最頻値から離れるほど所定範囲内の上限値(例えば、[0,1]の「1」)に近づくように、定量的なデータを変換することができる。このとき、変換手段124は、平均値または最頻値から閾値以上離れた値を所定範囲内の上限値(例えば、[0,1]の「1」)とすることができる。
一例において、変換手段124は、zスコアベースの変換法を利用する。zスコアベースの変換法は、図2A~図2Bを参照して上述した手法である。
zスコアベースの変換後の値は、抽出手段122および特定手段123による処理のために好適である。なぜなら、変換後の値は、最高値および最低値のみならず、平均値から閾値以上離れた値をすべて1または-1としており、異常値の情報を欠落することなく、むしろ増幅しているからである。
別の例において、変換手段124は、ヒストグラムベースの変換法を利用する。ヒストグラムベースの変換法は、図3A~図3Bを参照して上述した手法である。
ヒストグラムベースの変換後の値は、抽出手段122および特定手段123による処理のために好適である。なぜなら、変換後の値は、最頻値から閾値以内の値をゼロとすることで、平均値との差が閾値以内のデータを使用しないようにすることができ、これにより、異常値ではない不要なデータを欠落させ、異常値の情報を相対的に増幅することができるからである。
変換手段124による変換により、複数のデータ群のうちの少なくとも1つが定量的なデータを有する場合であっても、抽出手段122および特定手段123による処理を行うことができ、異種の複数のデータ群の複数の項目を関係付けることができる。
なお、上述したコンピュータシステム100の各構成要素は、単一のハードウェア部品で構成されていてもよいし、複数のハードウェア部品で構成されていてもよい。複数のハードウェア部品で構成される場合は、各ハードウェア部品が接続される態様は問わない。各ハードウェア部品は、無線で接続されてもよいし、有線で接続されてもよい。本発明のコンピュータシステム100は、特定のハードウェア構成には限定されない。プロセッサ部120をデジタル回路ではなくアナログ回路によって構成することも本発明の範囲内である。本発明のコンピュータシステム100の構成は、その機能を実現できる限りにおいて上述したものに限定されない。
図6は、本開示のコンピュータシステム100による処理600の一例を示す。処理600は、コンピュータシステム100のプロセッサ部120またはプロセッサ部120’において実行され得る。以下では、プロセッサ部120によって実行されるものとして説明する。
ステップS601では、プロセッサ部120の受信手段121が、異種の複数のデータ群を受信する。受信手段121は、例えば、インターフェース部110を介してコンピュータシステム100に入力された異種の複数のデータ群をインターフェース部110から受信してもよい。例えば、複数のデータ群は、ユーザが操作するユーザ装置からネットワークを介してコンピュータシステム100に入力されてもよいし、データベース部200に格納されている複数のデータ群が、コンピュータシステム100に入力されてもよい。
ステップS602では、プロセッサ部120の抽出手段122が、異種の複数のデータ群の各々の複数のデータに基づいて、異種の複数のデータ群の各々からそれぞれの少なくとも1つの項目を抽出する。抽出手段122は、例えば、データが異常値を有する少なくとも1つの項目を抽出することができる。抽出手段122は、任意の手法を利用して、少なくとも1つの項目を抽出することができる。
ステップS603では、プロセッサ部120の特定手段123が、異種の複数のデータ群の各々から抽出されたそれぞれの少なくとも1つの項目の間の関係を特定する。関係は、例えば、前提部-結論部の関係であり得る。例えば、異種の2つのデータ群について関係を特定する場合、特定手段123は、第1のデータ群から抽出された少なくとも1つの項目または第2のデータ群から抽出された少なくとも1つの項目のいずれか一方を前提部とし、他方を結論部とする関係を特定することができる。例えば、異種のn個のデータ群について関係を特定する場合、特定手段123は、第1のデータ群から抽出された少なくとも1つの項目、第2のデータ群から抽出された少なくとも1つの項目、・・・第nのデータ群から抽出された少なくとも1つの項目の少なくとも1つを前提部とし、残りを結論部とする関係を特定することができる。
このようにして、異種の複数のデータ群の複数の項目を関連付けることができる。このような関連付けは、例えば。データの層別化に利用されることができる。
例えば、複数のデータ群のうちの少なくとも1つが、定量的なデータを有する場合、処理600は、プロセッサ部120’によって実行される。この場合、ステップS602の前に。定量的なデータを所定範囲内の値のデータに変換するステップS6021が行われる。
ステップS6021では、プロセッサ部120’の変換手段124が、定量的なデータを所定範囲内の値を有するデータに変換する。所定範囲内の値は、例えば、[0,1]の範囲内の値であり得る。変換手段124は、定量的なデータのうち、平均値または最頻値との差が閾値以内のデータを使用しないようにすることができる。平均値または最頻値に近いデータは、関係を特定するうえで有用ではないので、これらのデータを排除することにより、特定される関係の精度を向上させることができる。閾値は、任意の値に設定され得る。閾値は可変値であってもよいし、固定値であってもよい。
変換手段124は、例えば、定量的なデータのうち、平均値または最頻値の値を所定範囲内の下限値(例えば、[0,1]の範囲内の「0」)とし、平均値または最頻値から離れるほど所定範囲内の上限値(例えば、[0,1]の「1」)に近づくように、定量的なデータを変換することができる。このとき、変換手段124は、平均値または最頻値から閾値以上離れた値を所定範囲内の上限値(例えば、[0,1]の「1」)とすることができる。
変換手段124は、例えば、zスコアベースの変換法、または、ヒストグラムベースの変換法を利用して、定量的なデータを変換することができる。
ステップS6021により、複数のデータ群のうちの少なくとも1つが定量的なデータを有する場合であっても、処理600により、異種の複数のデータ群の複数の項目を関係付けることができるようになる。
なお、上述した処理は、特定の順序で行われることを説明したが、この順序は例示的であり、処理は、論理的に可能な任意の順序で行われることができる。また、上述した処理の少なくとも1つのステップを省略することが可能であり、上述した処理に少なくとも1つのステップを追加することも可能であることが理解される。
以上、本開示を、理解の容易のために好ましい実施形態を示して説明してきた。以下に、実施例に基づいて本開示を説明するが、上述の説明および以下の実施例は、例示の目的のみに提供され、本開示を限定する目的で提供したのではない。従って、本開示の範囲は、本明細書に具体的に記載された実施形態にも実施例にも限定されず、特許請求の範囲によってのみ限定される。
(人工データセットと生物学的データセットとを用いた例)
本実施例では、人工データセットとして、遺伝子発現プロファイルデータセットを用い、生物学的データセットとして、肝毒性データセットを用いて、種々のアルゴリズムの性能を実証した。概して、データセット内に検出されるべきパターンを人工的に追加し、本開示のアルゴリズムによってこれらのパターンを検出可能かどうかを判定した。
(方法)
アルゴリズムの一例
ARMの目的は、頻出項目セット(共起する傾向がある項目)を探し、アソシエーションルール(頻出項目セット内の項目間の共起のパターン)を見出すことである。本開示のアルゴリズムの目的は、i)連続値を含む所与のデータセット内の頻出項目セットを探すことと、ii)異なる所与のデータセットにおいて検出された頻出項目セット間のアソシエーションルールを見出すこととを可能にし、これにより、2つの異種のデータセットを関連付けて、少数の項目に焦点を当てることを可能にすることである。このアルゴリズムのワークフローは、図7に示される。
・アプリオリアルゴリズム
n個の2値属性I = {i1, i2,…, in}を「項目」の組とし、Iは、「項目セット」と呼ばれる。T = {t1,t2, …, tm}をm個の観測の組とし、各tは、Iを有する。1つの観測がk個の項目を有する(Iがk個の1と、(n-k)個の0とを有する)場合、この項目セットは、k長項目セットと呼ばれる。アソシエーションルールは、以下のように定義され、ここで、X(前提部と呼ばれる)およびY(結論部と呼ばれる)は、
Figure 2022116866000020
で共起する。
X→Y
第一に、アプリオリアルゴリズムは、1長項目セット(1個の項目のみを含む項目セット)の頻度をカウントし、ユーザ規定の最小supportを満足しない低い頻度を有する1長項目セットが取り除かれる。supportは、X,Yの頻度またはXおよびYの共起の頻度を表すスコアである。X→ Yの場合、supportは、以下のように表現される。
Figure 2022116866000021
第二に、あり得る(k+1)長項目セットがk長項目セットから生成され、ユーザ規定の最小supportよりも小さいsupportを有するk長項目セットを含むものが取り除かれる。これらのプロセスは、収束が達成されるまで繰り返される。この手順を用いて、頻出項目セット(ユーザ規定の最小supportよりも高いsupportを有する項目セット)が検出される。
第三に、各頻出項目セット内の前提部および結論部を探すことによって、アソシエーションルールが生成される。いくつかのスコア(例えば、lift)が一般的に用いられ、以下のように表現される。
・ファジーアソシエーションルールマイニング
従来のARMアプローチは、入力データがカテゴリ属性を含むことを前提としている。しかしながら、本発明者らが現実に取り扱うデータは、定量的であり得るか、定量的データと定性的データとの混合であり得る。従って、定量的な属性は、カテゴリ属性に変換される定量化のための閾値を設けることによって、定量的な属性がカテゴリ値に変換される場合(例えば、閾値1および閾値2が与えられ、閾値1<閾値2である場合)、定量的な属性は、以下のカテゴリのうちの1つを割り当てられる。
i)≦閾値1
ii)閾値1と閾値2との間
iii)閾値2≦
これは、クリスプデータと呼ばれ、この手順は、情報の損失をもたらす。この問題を解決するために、アプリオリアルゴリズムにおいて、ファジーロジックが導入される。
ファジーロジックは、「メンバーシップのグレードの連続体を有するオブジェクトのクラス」として定義され、定量的な属性は、0~1の範囲の「メンバーシップ値」を有するいくつかのカテゴリに変換される(閾値1における定量的な属性は、0.5カテゴリi)および0.5カテゴリii)に変換される)。supportのようなアソシエーションルールマイニングにおけるいくつかの重要なスコアを計算するために用いられる和集合、共通部分、および補集合の概念は、ファジーセットにも拡張され得る。
・メンバーシップ値の計算のための関数
定量的な属性をファジーカテゴリセットに変換するために、主な問題は、メンバーシップ関数をどのように定義するかであり、ここで、メンバーシップ関数は、メンバーシップ値を計算するために用いられる。メンバーシップ値が0~1の範囲であるため、一般的に、min-maxスケーリング、シグモイド変換、ランクベースの変換が用いられる。しかしながら、これらの方法は、最も該当するカテゴリと最も該当しないカテゴリとの間のメンバーシップ値の差を減少させ、アプリオリアルゴリズムにとってファジーすぎるデータを取得する。この予備的な観測から、本発明者らは、後述するように、新規のメンバーシップ関数を設計した。
・ヒストグラムベースの変換(図7b)
定量的データの頻度は、ユーザ規定の数のビンを有するヒストグラムに変換される。定量的な属性は、3つのカテゴリ、「低」、「平均」、「高」に変換される。定量的な属性vのためのこれらのメンバーシップ値は、以下のように表現され、ここで、定量的な属性vを含むビンの頻度がFvであり、最高のビンの頻度がFHであり、最高のビンの下限がbLであり、最高のビンの上限がbHである。
Figure 2022116866000022
カテゴリ、「低」、「平均」、または「高」のメンバーシップ値の合計は、1となることになっている。しかしながら、カテゴリ「平均」内の情報はアソシエーションルールマイニングには用いられない。なぜなら、それは、頻繁に発生する項目として扱われ、カテゴリ「低」またはカテゴリ「高」を含む、興味深いアソシエーションルールを検出することができないからである。
・zスコアベースの変換(図7c)
定量的データの頻度は、zスコアを取得するために、標準正規分布に変換された。データの95%が-2~2の範囲にあることになっている。定量的な属性は、3つのカテゴリ、「低」、「平均」、または「高」に変換される。定量的な属性vのためのメンバーシップ値は、以下のように表現される。
Figure 2022116866000023
ヒストグラムベースの変換と同様に、カテゴリ、「低」、「平均」、および「高」のメンバーシップ値の合計は、1となることになっている。しかしながら、カテゴリ「平均」内の情報はアソシエーションルールマイニングには用いられない。なぜなら、それは、頻繁に発生する項目として扱われ、カテゴリ「低」またはカテゴリ「高」を含む、興味深いアソシエーションルールを検出することができないからである。
・比較のために用いられる他のメンバーシップ関数
定量的な属性vのためのmin-maxスケーリングのための式は、以下のとおりである。
Figure 2022116866000024
定量的な属性vのためのシグモイド関数の式は、以下のとおりである。
Figure 2022116866000025
定量的な属性vのためのランクベースの変換の式は、以下のとおりである。
Figure 2022116866000026
ここで、rがランクであり、nが観測の数である。
・異種データセットの関連付け
従来のARMアプローチでは、アソシエーションルールは、各頻出項目セット“内”で生成される。本発明者らの方法の目的は、アソシエーションルールの前提部が1つのデータセットから導出され、アソシエーションルールの結論部が別のデータセットから導出されるようにアソシエーションルールを生成することであり、これにより、検出されたアソシエーションルールは、相互に関連する異なるデータセットから導出される項目セットを表す。この目的のために、本発明者らは、後述するように、新規なアルゴリズムを開発した。
p個の属性のI1 = {i1,1,i1,2, …, i1,p}およびq個の属性のI2= {i2,1, i2,2, …, i2,q}を「項目」の組とし、I1およびI2は、「項目セット」と呼ばれる。T1= {t1,1, t1,2, …, t1,m}およびT2= {t2,1, t2,2, …, t2,m}をm個の観測の組とし、各t1、t2は、それぞれI1、I2を有する。T1およびT2が同数の観測を有し、t1,aおよびt2,a(a∈{1, 2, …, m})が相互に関連付けられる(例えば、t1,a: 患者IDaの医療記録、t2,a:患者IDaの遺伝子発現プロファイル)ものとする。T1および/またはT2が定量的な属性を含む場合、それらの属性のためのカテゴリ「低」およびカテゴリ「高」のメンバーシップ値の計算が前処理として必要とされる。
第一に、ファジーアプリオリアルゴリズムは、ユーザ規定の最小supportを用いて、T1およびT2において別々に頻出項目セットを検出する。supportは、以下のように表現される。

Figure 2022116866000027
ここで、
X(a):観測aのXのメンバーシップ値
Y(a):観測aのYのメンバーシップ値
第二に、前提部がT1において検出された頻出項目セットから選択され、結論部がT2において検出された頻出項目セットから選択され、逆もまた同様であるように、アソシエーションルールが生成される。出力されるべきルールの数を制限するために、いくつかのスコアが用いられることができる。例えば、liftは、以下のように表現される。
Figure 2022116866000028
ここで、
X:Iで構成される頻出項目セット、
Y:Iで構成される頻出項目セット、
Figure 2022116866000029
この新規のアルゴリズムは、相互に関連する異種のデータセット内の関連する項目の識別を可能にする。
実験のための肝毒性データセットの前処理および後処理
本発明者らが実験のために使用したオリジナルの生物学的データ(肝毒性データ)において、病理組織学的な観測が「最小」、「軽度」、「中程度」、または「顕著」として記載された。本実施例の実験のために、これらはそれぞれ、「0」、「1」、「2」、または「3」に変換された。参考とした論文(Bushel, P.R., Wolfinger, R. D., & Gibson, G. (2007). Simultaneous clustering of geneexpression data with clinical chemistry and pathological evaluations revealsphenotypic prototypes. BMC Systems Biology, 1(1), 15.)の著者Bushelは、50mg/kg体重および150mg/kgのアセトアミノフェンが準毒性であり、1500mg/kg体重および2000mg/kgのアセトアミノフェンが極めて毒性が高いと報告した(Bushel,et al., 2007)。従って、データ2における用量レベルの列は、それらの毒性レベルを表す2値属性に変換された(50mg/kg体重および150mg/kg:0、1500mg/kg体重および2000mg/kg:1)。さらに、データ2における時点の列が、それらの毒性レベルを表す2値属性に変換された(6、18、48h:0、24h:1)。これは、24hが毒性のピークであり、アセトアミノフェン処置の48h後はラットが回復期であったと報告されたからである(Bushel,et al., 2007)。データ1(遺伝子発現プロファイル)において、遺伝子がAgilentプローブIDによって示された。DAVID [(Dennis, et al.,2003)]は、AgilentプローブIDをEntrez遺伝子IDおよび遺伝子名に変換するために用いた。
実験
産業技術総合研究所 (AIST;日本)において動作するAI Bridging Cloud Infrastructure (ABCI)を実験のために用いた。
実装
本実施例で用いた方法は、Python 3.0において実装され、pandas, joblib, およびos モジュールに依存する。頻出項目セットの検出において、mlxtendというpythonモジュールの中にあるaprioriという関数のコードに編集を加えて、ファジーロジックを扱えるように改変したものを用いた。
結果
本発明者らは、サブセット結合のための対の頻出項目セットを検出するための本実施例で用いたアルゴリズムの性能を確認するために、2つの人工データセットおよび1つの実世界生物学的データセットを用いて実験を行った。本実施例で使用したアルゴリズムは、任意の対のデータセットに適用されることができる。簡略化のために、本研究では、データセットは、1つの遺伝子発現プロファイルデータ(データ1)および1つの臨床測定データ(データ2)から成ると仮定する。
・人工データ(小)
図8に示されるように人工データを生成した。概して、遺伝子発現プロファイルデータは、100行(例えば、100人の患者)および200列(例えば、200個の遺伝子)を有し、ランダム値が標準正規分布に従って生成した。臨床測定データは、同一の手順で生成した。本発明者らは、検出されるべき頻出項目セットとして、これらの2つの行列内に異なる平均および標準偏差(S.D.)を有する正規分布に従ってランダムに生成されたいくつかの不規則パターンを追加した。本発明者らは、表4におけるパターンがうまく検出されたかどうかを確認することによって、アルゴリズムの性能を評価した。
Figure 2022116866000030
このデータセットを用いて、本発明者らは、5個のメンバーシップ関数、min-maxスケーリング、シグモイド関数を用いた変換、ランクベースの変換、ヒストグラムベースの変換、zスコアベースの変換を比較した。これらの方法の説明は、上記(方法)のセクションに見ることができる。表5は、この結果を要約する。本発明者らが試験を行った特定の設定を用いて、ヒストグラムベースの関数およびzスコアベースの関数のみが一対の頻出項目セットを生成し、本発明者らが追加した3つのパターンすべてが生成されたルールに含まれていた。他の3つの方法(min-maxスケーリング、シグモイド、ランクベース)は、本発明者らが試験したパターンでは、これらのいずれも検出しなかった。
Figure 2022116866000031
・人工データ(大)
次に、本発明者らは、大きなデータセットで実験した。1000行および2000列を有する対の行列が、人工データ(小)と同じ手順で生成され、本発明者らは、図7b)および表4に示されるように検出されるべき3つのパターンを追加した。再び、ヒストグラムベースの関数およびzスコアベースの関数が、出力において、本発明者らが生成した3つのパターン全てをうまく検出した(表5)。
・実データ(肝毒性)
最後に、本発明者らは、実世界の生物学的データセット[(Bushel, et al., 2007)]を用いて実験した。高い用量で肝毒性をもたらすと知られているアセトアミノフェン(5、150、1500、20000mg/kg体重)を64匹のラットに投与し、これらは、6、18、24、または48h後に屠殺された。肝遺伝子発現プロファイルを、Agilentマイクロアレイ分析によって取得し、3116の遺伝子を、アセトアミノフェン処置によって有意に発現量が異なるものとして選択した(図9A、データ1)。さらに、48個の病理組織学的観察および10個の臨床測定値をこれらのラットから取得した(図9A、データ2)。方法セクションで記載したように、実験条件(用量および時点)が、データ2に追加された。
本発明者らが試験したパラメータ設定(データ1およびデータ2に対する最小support:0.02、データ1およびデータ2の最小項目:10、lift:4.8)、3986対のアソシエーションルールが生成された。これらのうち、最高の説得力を有する対のアソシエーションルールは、図9Bに示される。結果は、低い値のコレステロールを伴う、高い値のalkalinephosphatase (ALP)、alanine aminotransferase (ALT)、aspartate aminotransferase(AST)、およびtotal bile acid (TBA)が、LLL_Centrilob_Necrosis、LLL_Hepato_Hypertrophy、LML_Centrilob_NecrosisおよびLML_Sinusoid_Cogestion等の病理組織学的観測と共起することを実証し、これらは、アセトアミノフェン処置の毒性用量および時点に関連していた。結果におけるこれらの属性は、その前提部において、10個のプローブ('A_43_P10003_High'(gene name: Hsph1), 'A_42_P717602_High' (gene name: Mat2a), 'A_42_484423_High'(gene name: Pgs1), 'A_43_P17455_Low' (gene name: Dnah9), 'A_43_P14864_High'(gene name: Dynll1), 'A_43_P16523_High' (gene name: Nomo1), 'A_43_P19279_Low'(gene name: Lyzl4), 'A_43_P12811_High' (gene name: Srm), 'A_42_P655825_High'(gene name: Smg9), 'A_42_P804499_High' (n.d.))とペアにされた。この結果は、高い値のALP, ALT, AST,TBAおよび低い値のコレステロールが肝毒性のマーカーとしてみなされ、アセトアミノフェンの高い用量が肝毒性をもたらすという事実と整合している。
アセトアミノフェンの過剰用量が洞様毛細血管のうっ血および中心体壊死をもたらすことが報告されており[(Boyd and Bereczky, 1966)]、これは、中間代謝物によってもたらされ、致命的になり得ることが報告されている[(Prescott,1980)]。加えて、アセトアミノフェンは、ラットにおいて肝細胞肥大ももたらす[(Kishi, et al., 2020)]。さらに、前提部において検出された遺伝子のいくつかは、肝臓損傷に関与していることを示していた。Methionineadenosyltransferase (Mat)は、S-adenosylmethionine (AdoMet)の生合成の原因であり、哺乳類には、Mat1aおよびMat2aという2つのアイソフォームが存在する。Mat2aは、肝臓損傷に応答して誘導され、細胞分裂および肝細胞増殖を加速する[(Martinez-Chantar,et al., 2002)]。AdoMetは、antioxidative glutathione (GSH)の前駆体およびポリアミンとして機能し、細胞増殖およびアポトーシスに関与する。アセトアミノフェン処置によるGHS枯渇および肝細胞壊死に対するその影響は、十分に研究されてきた[(Martinez-Chantar,et al., 2002)]。加えて、Srmがポリアミン合成において重要な役割を果たしている。肝臓損傷の条件下で、Mat1aの下向き調節およびMat2aの上向き調節が観測され、これは、肝臓損傷に対する保護効果を有するAdoMetの減少をもたらす[(Luand Mato, 2012)]。データベースサーチは、Hsph1がMat2aと相互作用することを実証した[(Rouillard, et al.,2016)]。Pgs1は、ホスファチジルグリセロールおよびカルジオリピンの生合成の原因であり、これらは、内部ミトコンドリア膜に位置し、その活性酸素種(ROS)誘導酸化は、ミトコンドリア機能不全と関連付けられる[(Paradies,et al., 2014)]。AdoMetは、慢性アルコール処置によって惹起されるミトコンドリア機能不全を防止することが報告されている[(Bailey,et al., 2006)]。
以上をまとめると、これらの結果は、メチオニン代謝の異常調節およびAdoMetの減少が、アセトアミノフェン処置によってもたらされた肝細胞壊死、ミトコンドリア異常調節、および細胞増殖と関連付けられることを示している。これらの報告の概要を、図10に示す。
考察
本実施例では、本発明者らは、対のデータにおいて相互に関連する属性を見出すための新規のアプローチを提示し、本発明者らは、これをサブセット結合アプローチとも呼ぶ。相互合致を最大にするために複数の観点のデータを結合するのではなく、このアプローチは、それらの共起に従って、着目属性を見出す。このアプローチの利点は、共起の統計が容易に計算可能であり、これが出力を解釈可能にすることである。加えて、このアプローチは、事前知識に依存することなしに、データドリブンの手法で、異種データを関連付けることができ、入力データに応じて、バイオマーカー、事象の分子基盤の影響、または患者層別化等の多様な目的のために用いられることが可能である。
(実施例2)
以下の人工的な例を用いて、さらに解析する。
図11に示されるように、動作確認用の人工データとして、異種の複数のデータ群に相当する2つの行列(transactions_m、transactions_o)を作成した。これらの行列はともに360×500とし、平均0、標準偏差1の正規分布から発生させた乱数から構成される。これらの行列では行が一致しており、列は一致していない。さらに、transactions_mの1~30行目、1~5列目については、平均-2、標準偏差0.5の正規分布から発生させた乱数に置換した。また、transactions_mの31~60行目、2,4,8,10,12列目については、平均2、標準偏差0.5の正規分布から発生させた乱数に置換した。同様に、transaction_oの1~30行目、60,70,80,90,100列目については、平均2、標準偏差0.5の正規分布から発生させた乱数に置換した。また、transactions_oの31~60行目、100,200,300,400列目については、平均-2、標準偏差0.5の正規分布から発生させた乱数に置換した。このようなデータ群から、「transactions_mの1~5列目が異常値(平均値または最頻値より低い)である場合、transactions_oの60,70,80,90,100列目が異常値(平均値または最頻値より高い)である傾向がある」という関係と「transactions_mの2,4,8,10,12列目が異常値(平均値または最頻値より高い)である場合、transactions_oの100,200,300,400列目が異常値(平均値または最頻値より低い)である傾向がある」という関係を抽出することを目的とする。
次に、上記の方法で作成した人工データtransactions_mの数値の分布をヒートマップで可視化した。この結果を図12に示す。値が低いほど青、0付近で赤、値が高いほど白で表示されている。意図的に生成されたパターン(transactions_mの1~5列目が異常値(平均値または最頻値より低い)、かつtransactions_mの2,4,8,10,12列目が異常値(平均値または最頻値より高い))が確認できる。
次に、データを所定範囲内の値に変換する式として、min-maxスケーリングを用いた場合に得られる変換後の数値の分布をヒートマップで可視化した。この結果を図13に示す。各値は「平均値または最頻値より低い項目」および「平均値または最頻値より高い項目」について変換後の値を算出するため列数は2倍となり、「transactions_mの1~5列目が平均値または最頻値より低い」という項目の値、かつ「transactions_mの2,4,8,10,12列目が平均値または最頻値より高い」という項目の値が高くなる(ヒートマップでは白で表示される)。全体的に赤く(値が0.5付近)、各項目について当てはまり具合が曖昧であることを意味する。
次に、データを所定範囲内の値に変換する式として、シグモイド関数を用いた場合に得られる変換後の数値の分布をヒートマップで可視化した。この結果を図14に示す。ヒートマップの見方および解釈は、図13と同様であり、各値は「平均値または最頻値より低い項目」および「平均値または最頻値より高い項目」について変換後の値を算出するため列数は2倍となり、「transactions_mの1~5列目が平均値または最頻値より低い」という項目の値、かつ「transactions_mの2,4,8,10,12列目が平均値または最頻値より高い」という項目の値が高くなる(ヒートマップでは白で表示される)。全体的に赤く(値が0.5付近)、各項目について当てはまり具合が曖昧であることを意味する。
次に、データを所定範囲内の値に変換する式として、数値の大小の順位を基にした式(ランクベースの変換)を用いた場合に得られる変換後の数値の分布をヒートマップで可視化した。この結果を図15に示す。ヒートマップの見方および解釈は、図13と同様であり、各値は「平均値または最頻値より低い項目」および「平均値または最頻値より高い項目」について変換後の値を算出するため列数は2倍となり、「transactions_mの1~5列目が平均値または最頻値より低い」という項目の値、かつ「transactions_mの2,4,8,10,12列目が平均値または最頻値より高い」という項目の値が高くなる(ヒートマップでは白で表示される)。全体的に赤く(値が0.5付近)、各項目について当てはまり具合が曖昧であることを意味する。
次に、データを所定範囲内の値に変換する式として、zスコアベースの変換を用いた場合に得られる変換後の数値の分布をヒートマップで可視化した。この結果を図16に示す。ヒートマップの見方は図13と同様である。全体的に黒く(値が0付近)、図12~15の方法と比較して各項目の当てはまり具合の曖昧さを許容しないことを意味する。
次に、データを所定範囲内の値に変換する式として、ヒストグラムベースの変換を用いた場合に得られる変換後の数値の分布をヒートマップで可視化した。この結果を図17に示す。ヒートマップの見方および解釈は図16と同様であり、全体的に黒く(値が0付近)、図12~15の方法と比較して各項目の当てはまり具合の曖昧さを許容しないことを意味する。
(実施例3)
(食料品購入データと人間ドックデータとを用いた例)
例えば、第1のデータ群として食料品購入データを入力し、第2のデータ群として人間ドックデータを入力して、本開示のアルゴリズムから出力を得ることができる。
例えば、第1のデータ群として食料品購入データを入力し、第2のデータ群として同一人物の人間ドックデータを入力して、本開示のアルゴリズムから出力を得ることができる。
食料品購入データは、1ヶ月にどのような食品(例えば、緑黄色野菜、根菜、牛肉、豚肉、鶏肉、魚、アルコール飲料、加工食品)を何回購入したかという購入頻度の情報を含む。人間ドックデータは、身体計測、血液検査、尿検査、便潜血検査を含む。
これらのデータに対して、本開示のアルゴリズムを適用すると、一例では、食品購入データからは「アルコール飲料“高”、加工食品“高”」が頻出項目セットとして抽出される。人間ドックデータからは、一例では、「中性脂肪“高”、LDL-コレステロール“高”、血圧“高”」が頻出項目セットとして抽出される。
このように抽出された頻出項目セットからアソシエーションルールを特定すると、一例では、「アルコール飲料・加工食品の購入頻度が高い場合、中性脂肪・LDL-コレステロール・血圧が高い傾向がある」というルールが特定され得る。これは、食生活が健康状態に影響を与えている(食生活の改善により健康状態の改善につながる可能性を示唆)ことを表していると考えられる。
以上のように、本開示の好ましい実施形態を用いて本開示を例示してきたが、本開示は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。本明細書において引用した特許、特許出願および他の文献は、その内容自体が具体的に本明細書に記載されているのと同様にその内容が本明細書に対する参考として援用されるべきであることが理解される。
本開示は、複数の項目を関係付けるための方法等を提供するものとして有用である。また、本開示は、特定された関係に従って、複数のデータを層別化するための方法等を提供するものとしても有用である。
100 コンピュータシステム
110 インターフェース部
120 プロセッサ部
130 メモリ部


Claims (15)

  1. 複数の項目を関係付けるための方法であって、
    異種の複数のデータ群を受信することであって、前記異種の複数のデータ群の各々は、複数の項目についての複数のデータを含む、ことと、
    前記異種の複数のデータ群の各々の複数のデータに基づいて、前記異種の複数のデータ群の各々からそれぞれの少なくとも1つの項目を抽出することと、
    前記異種の複数のデータ群の各々から抽出されたそれぞれの少なくとも1つの項目の間の関係を特定することと
    を含む方法。
  2. 前記関係は、
    前記異種の複数のデータ群のうちの1つから抽出された少なくとも1つの項目を前提部とし、前記異種の複数のデータ群のうちの別の1つから抽出された少なくとも1つの項目を結論部とすることを含む、請求項1に記載の方法。
  3. 前記関係を特定することは、
    前記異種の複数のデータ群の各々について、
    前記異種の複数のデータ群のうちの1つから抽出された少なくとも1つの項目を前提部とし、前記異種の複数のデータ群のうちの別の1つから抽出された少なくとも1つの項目を結論部としたときのスコアを算出することと、
    前記スコアに基づいて、前記前提部とすべき少なくとも1つの項目と、前記結論部とすべき少なくとも1つの項目とを決定することと
    を含む、請求項2に記載の方法。
  4. 前記抽出することは、
    前記異種の複数のデータ群の各々の複数の項目のうち、データが異常値を有する少なくとも1つの項目を抽出すること
    を含む、請求項1~3のいずれか一項に記載の方法。
  5. 前記抽出することは、再帰的反復アプローチを用いて少なくとも1つの項目を抽出することを含む、請求項1~5のいずれか一項に記載の方法。
  6. 前記複数のデータ群は、定量的なデータを含む、請求項1~5のいずれか一項に記載の方法。
  7. 前記定量的なデータを所定範囲内の値を有するデータに変換することをさらに含む、請求項6に記載の方法。
  8. 前記変換することは、前記定量的なデータのうち、平均値または最頻値との差が閾値以内のデータを使用しないようにすることを含む、請求項7に記載の方法。
  9. 前記変換することは、前記定量的なデータのうち、平均値または最頻値の値を前記所定範囲内の下限値とし、前記平均値または最頻値から離れるほど、前記所定範囲内の上限値に近づくようにすることを含む、請求項7または請求項8に記載の方法。
  10. 前記変換することは、前記平均値または最頻値から閾値以上離れた値を前記所定範囲内の上限値とすることをさらに含む、請求項9に記載の方法。
  11. 前記変換することは、
    前記定量的なデータからzスコアを算出することと、
    前記zスコアを所与の値で除算することと、
    前記除算後の値のうち、1を超えるものを1とし、-1を下回るものを-1とすることとにより、値を得ることと、
    前記得られた値のうち負の値の絶対値をとることと、
    を含む、請求項7に記載の方法。
  12. 前記変換することは、
    前記定量的なデータをヒストグラムに変換することと、
    前記ヒストグラムの複数のビンのうちの最高頻度のビンの値で複数のビンの各々を除算することと、
    1から前記除算後の値を減算することと
    を含む、請求項7に記載の方法。
  13. 複数のデータを層別化するための方法であって、
    請求項1~12のいずれか一項に記載の方法に従って特定された関係に従って、前記複数のデータ群内のデータを層別化すること
    を含む方法。
  14. 複数の項目を関係付けるためのシステムであって、
    異種の複数のデータ群を受信する受信手段あって、前記異種の複数のデータ群の各々は、複数の項目についての複数のデータを含む、受信手段と、
    前記異種の複数のデータ群の各々の複数のデータに基づいて、前記異種の複数のデータ群の各々からそれぞれの少なくとも1つの項目を抽出する抽出手段と、
    前記異種の複数のデータ群の各々から抽出されたそれぞれの少なくとも1つの項目の間の関係を特定する特定手段と
    を備えるシステム。
  15. 複数の項目を関係付けるためのプログラムであって、前記プログラムは、プロセッサを備えるコンピュータシステムにおいて実行され、前記プログラムは、
    異種の複数のデータ群を受信することであって、前記異種の複数のデータ群の各々は、複数の項目についての複数のデータを含む、ことと、
    前記異種の複数のデータ群の各々の複数のデータに基づいて、前記異種の複数のデータ群の各々からそれぞれの少なくとも1つの項目を抽出することと、
    前記異種の複数のデータ群の各々から抽出されたそれぞれの少なくとも1つの項目の間の関係を特定することと
    を含む処理を前記プロセッサに行わせる、プログラム。
JP2021013264A 2021-01-29 2021-01-29 複数の項目を関係付けるための方法、システム、およびプログラム Pending JP2022116866A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021013264A JP2022116866A (ja) 2021-01-29 2021-01-29 複数の項目を関係付けるための方法、システム、およびプログラム
PCT/JP2022/003368 WO2022163821A1 (ja) 2021-01-29 2022-01-28 複数の項目を関係付けるための方法、システム、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021013264A JP2022116866A (ja) 2021-01-29 2021-01-29 複数の項目を関係付けるための方法、システム、およびプログラム

Publications (1)

Publication Number Publication Date
JP2022116866A true JP2022116866A (ja) 2022-08-10

Family

ID=82654721

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021013264A Pending JP2022116866A (ja) 2021-01-29 2021-01-29 複数の項目を関係付けるための方法、システム、およびプログラム

Country Status (2)

Country Link
JP (1) JP2022116866A (ja)
WO (1) WO2022163821A1 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004086782A (ja) * 2002-08-29 2004-03-18 Hitachi Ltd 異種データベース統合支援装置
JP5452030B2 (ja) * 2009-02-06 2014-03-26 三菱電機株式会社 統合ログ生成装置及び統合ログ生成プログラム及び記録媒体
CN105718433B (zh) * 2014-12-05 2019-01-22 富士通株式会社 表格语义化装置和方法

Also Published As

Publication number Publication date
WO2022163821A1 (ja) 2022-08-04

Similar Documents

Publication Publication Date Title
Wang et al. Recipe recognition with large multimodal food dataset
Nguyen et al. Building a national neighborhood dataset from geotagged Twitter data for indicators of happiness, diet, and physical activity
Zhang et al. Weakness Finder: Find product weakness from Chinese reviews by using aspects based sentiment analysis
Alzahrani et al. Fuzzy semantic-based string similarity for extrinsic plagiarism detection
Liu et al. Natural language processing methods and systems for biomedical ontology learning
Hessel et al. A case study on combining asr and visual features for generating instructional video captions
Pavlopoulos et al. Aspect term extraction for sentiment analysis: New datasets, new evaluation measures and an improved unsupervised method
US20160103910A1 (en) System and method for food categorization
Homoceanu et al. Will I like it? Providing product overviews based on opinion excerpts
JP2019507425A (ja) サービス処理方法と、データ処理方法及び装置
CN112381627B (zh) 育儿知识下的商品评分处理推荐方法、装置
CN116168804B (zh) 一种基于his系统的病患膳食推荐系统与方法
Jabreel et al. Introducing sentiment analysis of textual reviews in a multi-criteria decision aid system
Cheng et al. Efficient low-resource medical information processing based on semantic analysis and granular computing
WO2022163821A1 (ja) 複数の項目を関係付けるための方法、システム、およびプログラム
Jahanshahi et al. Text classification for predicting multi-level product categories
Pinto et al. What Drives Research Efforts? Find Scientific Claims that Count!
Indasari et al. Automatic Categorization of Multi Marketplace FMCGs Products using TF-IDF and PCA Features
Bayrak A session-based recommendation approach with word embeddings
Ramani et al. An Explorative Study on Extractive Text Summarization through k-means, LSA, and TextRank
Hemalatha et al. Direct-Indirect Association Rule Mining for Online Shopping Customer Data using Natural Language Processing
He et al. Smart Diet Management Through Food Image and Cooking Recipe Analysis
Sunita et al. An optimizing preprocessing algorithm for enhanced web content
Wang et al. Data Mining Methods to Support C2M Product-Service Systems Design and Recommendation System Based on User Value
CN110162694B (zh) 一种基于成对关联规则的推荐系统和方法

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20230705

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231227