2017年3月5日日曜日

疾患を特徴づける用語

疾患を特徴づける症状を求めて論文の抄録を対応分析した。その結果,関係性の近い疾患が判明した。しかし,対応分析の結果を見る限り,疾患に関連の強い症状を見出すことはできなかった。例えば子宮筋腫の近くに布置された単語を見ると,「妊娠」,「成功」,「手術」といった一般的な用語が多く,その疾患を特徴づける症状用語はほとんど見られない。また,卵巣腫瘍の周りには「高値」「低値」といった何かの特徴を示す単語がみられるものの,それが何の値を示しているのかわからない。
これらの問題点として以下の原因が考えられる。
  1. 過分割の問題
  2. コーパスの問題
  3. 出現頻度で用語を抽出する問題
  4. 専門用語の問題
例えば「血圧が高値を示す」という記述が「血圧」,「高値」,「示す」という単語に分割され,それらのうち,「高値」という単語が疾患と関連性が高い単語として抽出されたとしても,「高値」単独では何のことかわからない。
また,KH Coderの対応分析では,一定以上の出現頻度を持つ単語が分析対象として抽出されているが,「子宮」「患者」「症例」「来院」といった用語の出現頻度が多いのは当然であって,それらが疾患を特徴づける用語になるとは思われない。
さらに,抽出された用語に「開腹」「染色」「浸潤」「切除」といった専門用語が多くみられるのは,論文の抄録からコーパスを作成したことが原因である。
一般の人が使用するアプリに,このような専門用語を提示したり選択させたりするのは適切ではない。

過分割の問題


形態素解析など,機械的な方法で単語を抽出しても意味のある症状用語を抽出するのは絶望的である。かといって手作業で大量の文書から意味のある症状用語を抽出するのも現実的でない。そこで,別途症状用語のリストを作成し,機械学習によってそれらに疾患ラベルを貼るという分類問題に帰着させてはどうだろう。その際,学習用コーパスとして論文の抄録を用いる。これらはすでに疾患というラベルが貼られているのだから,客観的な教師データとして利用できる(我々医学の非専門家がラベリングするというリスクを回避できる)。
この分類問題の評価は,次のように行う。
  1. 疾患について書かれた文書を収集する(ネットの文書でも教科書の文書でも構わない。できるだけ信頼性の高いものを集める)
  2. 収集した文書から手作業で症状用語を抽出し,疾患とのペアで記録する(「疾患・症状ペア」と呼ぶ)
  3. 収集した症状用語を論文コーパスで作成した分類器にかけて疾患ラベル付与する
  4. 付与された疾患ラベルの正解・不正解を「疾患・症状ペア」を用いて検証する
分類器としてはナイーブベイズ分類器を使う。

多面的な判断材料の導入


テキストマイニングだけで疾患を言い当てるのは無理である。テキストマイニングは,所詮,文字情報だけを頼って関連性を類推しているだけである。医学的知見に基づいているわけではない(文字で伝えることのできる医学的知見を除いて)。
そこで,文字情報以外の情報の利用を考える。例えば以下のものが考えられる。
  1. 年齢
  2. 身長・体重
  3. バイタル(体温,血圧,脈拍,・・・)
  4. 生理日
  5. 食欲
  6. 出血(少・中・多)
例えば,収集した論文・症例には将来の年齢が記載されている。これを集めれば各疾患の年齢分布がわかる。すると,年齢からどの疾患に最もなりやすいかという情報が得られるので,これも疾患を判定する際に加味する。






0 件のコメント:

コメントを投稿