文章構造化技術の医用画像データベースへの応用
Application of Text Structuring Technologies to a Medical Picture Database

安 永晋＊Anei, Shin

川 上 洋 一＊笹 井 浩 介＊

Kawakami, Youichi

Sasai, Kosuke

要旨

してデータ構造と検索論理をアクティブに進化させるこ

電子化された大量の情報から必要な情報を効率よく抽とが可能な情報検索技術の開発に取り組んでいる１）。この出することが要求されている。そこで我々はユーザーがような情報検索が実現できると、ユーザーの意図を理解入力する情報から得られた知識や経験を用いて学習するして適切な情報を提供するシステムが実現できる。

新しい概念の情報検索技術を開発している。本技術のイ

このシステムは広い汎用性を有しているが、そのひとメージング分野への応用としてPACS（Picture Archiving

つの応用例として、PACSと連携した医療診断支援システ

and Commuincating System: 医用画像保管・転送システ

ムがある。これまでは過去の症例が医療診断支援に適しム）と連携した医療診断支援システムがある。我々は医た構造で蓄積されていなかったので、医療現場に対して用画像及び100文字程度の診断レポートから必要な情報を診断支援のための情報をリアルタイムに提供することは抽出することにより症例を蓄積し、診断支援に利用する困難であった。しかし我々の開発しているシステムでは知的なシステムの実現を目指している。この目的に向過去の症例を医療現場が再利用しやすいデータ構造で蓄け、機能評価のためのソフトウェアを開発した。本論文

積し、それを医療現場の意図を理解してリアルタイムにではこのシステムに要求される言語処理技術について開提示することが可能になる。

発したアルゴリズムを中心に述べる。

本論文では、まずユーザーの知識や経験を利用してデータ構造と検索論理を進化させる処理について述べた

Abstract

後、医療診断支援システムを実現するためのコア技術の1

The efficient extraction of information from large elec-

つである言語処理技術について述べる。

tronic databases is essential to a practical database system. With this in mind, we are developing a novel data
search system which automatically tracks the particular

２ データ構造と検索論理の進化

uses to which individual users put the system. Applied to

ユーザーの知識や経験を反映させ、アクティブにデー

the imaging domain, we are constructing an intelligent aided

タ構造と検索論理を進化させるための情報処理フローを

diagnosis system which can store the pertinent informa-

以下に示す。

tion extracted from medical images and short (approximately 100-character) diagnosis reports, and which can1XML（eＸtensible Markup Language）
を交換構文としbe integrated into a PACS (picture archiving and commu-てタグ付けされた情報をデータエレメントとする。

nicating system). This paper focuses on the system’s lan-2RDF（Resource Description Framework）
スキーマによguage processing algorithm.

りデータエレメントの関係を構造化する。
3 利用者から提供される情報をアクティブに利用してデータ構造と検索論理を動的に進化させる。

１ はじめに電子化された大量の情報を有効に活用するには、ユー

XMLとは、データ交換を目的としてWWWコンソーシ

ザーの必要としている情報が適切に検索可能であることがアムが標準勧告しているマークアップ言語であり、これ必要である。しかし、従来のデータベースシステムでは、を用いることによってテキストデータに限らず様々な情報を発信する側の考え方で情報を作成し蓄積しているたデータに対してデータの意味を同時に記述することがでめ、ユーザーが適切に情報を得ることが難しかった。

きる。

この解決のため、我々はユーザーが入力するいろいろ

RDFとは、WWWコンソーシアムで1999年２月に正式な情報からユーザーの知識や経験を吸収し、それを利用に勧告された最先端のスキーマで、簡単なルールであた
かも人間の脳の情報処理のようにデータエレメントとそ＊コニカミノルタテクノロジーセンター㈱イメージシステム開発室

システム技術研究所の関係を動的に記述できる。

KONICA MINOLTA TECHNOLOGY REPORT VOL.2（2005）113例えば「論文：情報処理の高速化の著者は田中太郎である」という情報に対し、RDFでは「論文：情報処理の析され、XMLを交換構文としたRDFで構造化されてDataStoreに保存される。

高速化」を主語（リソース）、「著者」を述語（プロパ

ユーザーによって入力された質問は、Execute compo-ティ）、「田中太郎」を目的語（リテラル）と呼び、主sitionによって解析され、それをもとにQuery engine・語、述語、目的語の三つを一組として情報をFig.１のようMiningが検索処理を実行する。その際には必要に応じてに表現する。

「知識・構造・発見モデル」を利用して個々のユーザー複雑な情報の場合、目的語の部分に別のリソースを指定することによりFig.２のように表現する。その結果、データエレメントとその関係が「数珠つながり」になる。

に対して提供する情報の最適化や効率の良い質問を導出するためのヒントを提示する。
このシステムが利用される過程で、ユーザーの知識や経験から得られた情報はRealization storeにおいて「知識・構造・発見モデル」に追加される。そして、Restructure engineは情報が追加された「知識・構造・発見モデ
ル」を利用してデータの構造をアクティブに進化させる。

Fig.1 RDF data structure

この繰り返しにより、システムが使い込まれていくほど「知識・構造・発見モデル」に情報が蓄積され、システムが進化していく。

３ 医療診断支援システムへの応用
読影医は、CTやMRIなどで撮影された大量の放射線画
Fig.2 RDF data structure of complicated information

像から特徴的な画像を選び、その特徴を100字程度の短文（以下「レポート」と呼ぶ）で記録する。その際に過去このスキーマの利用によりデータ構造を柔軟に変化さの症例が的確に提示されれば、効率良く診断を行う上でせることができ、新たなデータやユーザーから知識を吸好都合である。我々が検討しているシステムでは、レ収してデータおよびデータ構造をアクティブに進化させポートの内容を画像と関連付けて構造化し、それを症例ることができる。またその時々に抽出ルールを入力すれデータベースとして利用することによって診断支援を可ば、すでに構造化された関係を利用して新たな情報が抽能にする。さらに、診断を行うごとにその結果が新たな出できる。

症例として追加され、これによって動的に症例データ

本システムにおける情報処理フローをFig.３に示す。

ベースの内容が強化される。

Data sourceから得られたデータはTranslatorsにより解３．１

診断支援の手順

まず、第１のステップとして、レポートからFig.４に示すように必要なキーワードを抽出し構造化を行う。具体的には、まず形態素解析を行ってレポートを単語に分解し、得られた単語の「属性」（部位なのか症状なのか診断なのか、など）を判定し、この判定をもとにキーワードを抽出する。単語の属性の判定を行うためにはシソーラス（階層構造の形になっている類義語辞書）を用いる。本システムでは、シソーラスとして、医学中央雑誌刊行会が発行する「医学用語シソーラス」を用いていFig.3 Information processing flowchart

114

Fig.4 Structuring of the report

KONICA MINOLTA TECHNOLOGY REPORT VOL.2（2005）

る。キーワードを正しく抽出できなかった場合は、ユーザーがキーワードを修正することも可能である。
第２のステップとして、第１のステップで得られたキーワードをキーにして、ユーザーの意図に沿った優先順序で情報を提示するための診断支援モデルを構築する。診断支援モデルの詳細は３．２で述べる。
第３のステップとして、読影医が第２のステップで得４．１

キーワードの抽出

Fig.６に処理フローを示す。これに沿って説明する。
まず、入力した文章（レポート等）に対して形態素解析の処理を行う（ステップ１）。
形態素解析には、奈良先端技術大学院大学の松本研究室が開発した日本語形態素解析システム「茶筌」（http://chasen.naist.jp/）を用いている。

られた診断支援モデルを参考にして診断を記入し、「放射線画像・元のレポート・キーワード・診断」の組を症例データベースに保存する。この時、ユーザーがキーワードを修正して保存した場合、修正されたキーワードをシソーラスに追加する。
症例データベースおよびシソーラスは、症例が増えるごとにデータ量が大きくなっていく。よって使われれば使われるほどこの診断支援システムは成長していく。
３．２

診断支援モデル

症例データベースには、あらかじめ過去の症例における「放射線画像・レポート・キーワード・診断」の組がRDFを用いて関連付けられた形で保存されている。
この症例データベース内を第１のステップで得られたキーワードをキーにして検索し、得られた症例をシソーラスの情報をもとにRDFを用いて関連付けて表現したものが診断支援モデルである。一例をFig.５に示す。
例えば「部位」に対応するキーワードを検索キーとすれば、その部位の上位・下位の概念やその部位に関連付けられている「症状」や「診断結果」などを得ることができる。検索キーに「症状」など他の情報も用いれば、さらに結果を絞り込むこともできる。

Fig.6 Keyword extraction processing flowchart

RDFを利用してすべてのデータを的確に構造化することにより、部位や病変などが明らかになればそこから導かれる過去の画像データを含む症例を提示できる。これ

Fig.７に形態素解析処理の一例を示す。
形態素解析には辞書（単語のリスト）が必要であり、「茶筌」にもあらかじめ辞書が付属している。辞書に含により診断支援を行うことができる。

まれない語は形態素解析で抽出されることはない。辞書

４ 「レポート構造化」に用いる言語処理技術
ここでは、３で述べたシステムの「レポート構造化」に用いる言語処理技術の詳細を述べる。に新しく語を追加することにより形態素解析の精度が上がっていく。
本システムでは、シソーラスに含まれている単語はすべて辞書に追加している。

Fig.7 Morphological analysis processing

次に、接頭語・接尾語の処理を行う（ステップ２）。
これは、「左」「右」「上」「下」などの「接頭語」や「内」「部」などの「接尾語」の候補リストをあらかじめ用意しておき、これらの語が名詞と連続している場
Fig.5 Diagnostic support model

合は１つの語として扱う処理である。

KONICA MINOLTA TECHNOLOGY REPORT VOL.2（2005）

115例えば、「頚動脈」という単語は形態素解析用の辞書にそして、何種類かの属性について、抽出されたその属あるが、「左頚動脈」という語は辞書にないとする。この性を持つ単語の中で最も「TF・IDF値」の大きい単語

場合、形態素解析では「左頚動脈」は「左」と「頚動脈」を、入力した文章のその属性に対応するキーワードとしに分解されるが、これを「左頚動脈」一語として扱う。て抽出する（ステップ５）。もちろん、属性に対応する次に、形態素解析で得られた単語のリストから、各単語キーワードが存在しないこともありうる。の「TF・IDF値」を計算し、単語とTF・IDF値の組のリス

具体的な文章の例を挙げる。

ト（以下、TF・IDF表と呼ぶ）を作成する（ステップ３）。

「大腸にポリープが多発している。特にＳ状結腸に密まず、TF・IDF値について簡単に説明する

２）。

TF値は、その文章中に単語が出現する回数を表す。

集している。」という文をこの方法で処理する場合を考える。

IDF値は、「コーパス（サンプルとして集めた文書の集属性として「部位」「症状」の２つを考える場合、合）中でその単語が現れる文書の割合」を表し、その単「部位」に対応するキーワードの候補として「大腸」語が現れる文書の割合が高いほど「IDF値」は小さくなる。

「Ｓ状結腸」の２つが、「症状」に対応するキーワード

このTF値とIDF値の積がTF・IDF値である。の候補として「ポリープ」が抽出できる。

一般に、当該文書中に出現する頻度が高く、なおかつ「部位」に対応するキーワードとして「大腸」「Ｓ状他の文書にはあまり出現しない語ほど、当該文書を特徴結腸」のどちらを選択するかを「TF・IDF値」で判定すづける度合いが高い。従って、TF・IDF値が大きい単語ると、「大腸」は「Ｓ状結腸」に比べてよく使われる用ほどその文書を特徴づける度合いが高いと言える。

語なので、一般的には「IDF値」は「Ｓ状結腸」の方が大次に、作成したTF・IDF表にある各単語についてシソーラスを検索して属性を求める（ステップ４）。

きくなる。コーパスの選び方によってはそうでないこともあるので、コーパスの選択は適切に行う必要がある。

シソーラスの構造の一例をFig.８に示す。

「TF値」はどちらも同じ（１回だけ出現している）なの

シソーラスに含まれる各単語には構造上の位置を示すで、「Ｓ状結腸」の方が「部位」に対応するキーワード数字（シソーラスコード）が与えられている。

として選択される。

TF・IDF表にある各単語についてシソーラスを検索

ここで抽出されたキーワードは、３で述べたシステムのし、得られたシソーラスコードを手がかりに属性を求め「診断支援モデル」の検索キーとして用いられ、またレポーる。ステップ２の処理で接頭語・接尾語がつけられた単トをデータベースに保存する際に「診断支援モデル」の一部語については、この接頭語・接尾語は除いて検索する。となる。抽出されたキーワードが適切ではないとユーザーが例えば、シソーラスにおいて、大分類として「部位」判断した場合は、ユーザーが修正することもできる。という分類があり、これを表すシソーラスコードが「A」であったとする。この時に「部位」という属性を考える

４．２

新しい単語の追加

場合、「A」で始まるシソーラスコードを持つ語が「部前述したように、形態素解析用の辞書に含まれない語位」という属性を持つと判断する。１つの語が複数のシはキーワードとして抽出できない。また、辞書に含まれソーラスコードを持つ場合もあるので、１つの語が複数ていてもシソーラスに含まれていなければその単語はの属性を持つ場合もありうる。

キーワードとして抽出できない。

単語がシソーラスに見つからなかった場合は、その単語の属性は不明ということになる。

しかし、これでは新しく生まれた用語などはキーワードとして抽出することは不可能なので、単語を新しく辞書やシソーラスに追加できるようにする必要がある。
辞書への単語の追加については、単純に追加したい単語を既存の辞書に付け加えればよい。一方、シソーラスに登録するには構造上のどの位置に追加するか（すなわち、シソーラスコードをどう与えるか）を決めなくてはならない。
ここでは、新しく追加したい単語について、このシソーラスコードを推定する方法について述べる。
このシステムでは、３で述べた第３のステップにおいて、データベースに「放射線画像・元のレポート・キーワード・診断」の組を登録する際に、キーワードをシソーラスおよび辞書に追加する処理を行う。実際にシソーラスや辞書に単語が追加される可能性があるのは、

Fig.8 Thesaurus structure116

ユーザーが抽出されたキーワードに修正を加えた場合で

KONICA MINOLTA TECHNOLOGY REPORT VOL.2（2005）

ある。なぜなら、本来キーワードはシソーラスを用いて述べた方法で、推定したシソーラスコードに対応する抽出されているからである。

「属性」を求め、これが入力した「属性」と合致するシ

Fig.９に単語を新しくシソーラスに登録する場合の処理ソーラスコードのみを単語に与える。

フローを示す。単語をシソーラスに登録する場合は「属この結果、単語にシソーラスコードを全く与えられな性」との組で登録する。上述のキーワードをシソーラスかった場合、及びシソーラスコードが「推定不能」の場に登録する処理では、「属性」としてそのキーワードに合は、「属性」に対応するシソーラスコードを１つ生成対応している属性を指定する。

してそれを単語に与える。上と同様の例で「部位」とい

まず、登録したい単語を形態素解析する。以下の処理

う属性を考えた場合、「A」で始まるシソーラスコードがは、形態素解析によって複数の単語に分解された場合と対応するので、例えば「A99−990」というコードを与える。
登録したい単語を形態素解析した結果、複数の語に分分解されなかった場合で異なる。
複数の単語に分解された場合は、分解されたそれぞれかれなかった場合は、登録したい単語をシソーラスからの単語をシソーラスから検索する。そして、その中で１検索する。登録したい単語が見つかった場合は、そのつでもシソーラスに含まれる語がある場合、もとの単語コードが「属性」に反するかどうかをチェックする。反の構造上の位置は分かれた単語の「すぐ下」にあると推しない場合は特に何もする必要はない。反する場合は、定する。つまり、分解された単語のシソーラスコードが「属性」に対応するシソーラスコードを１つ生成してそ「A1−20−30」だった場合、もとの単語のシソーラスコーれを追加する。登録したい単語が見つからなかった場合

ドは「A1−20−30−990」のように推定する。分解された単は、「属性」に対応するシソーラスコードを１つ生成し語が複数のシソーラスコードを持つ場合は、もとの単語てそれを単語に与える。

も複数のシソーラスコードを持つと推定することにな具体例を挙げる。

る。シソーラスに含まれる語が複数あった場合は、後方「胃潰瘍」という単語がシソーラスに登録されているの語の「すぐ下」にあると推定する。

場合に、「神経性胃潰瘍」という語を「病名」という属なお、分解された語の中にシソーラスに含まれる語が性で追加したいとする。「神経性胃潰瘍」を形態素解析なかった場合は、この方法では推定できない。この場合すると「神経性／胃潰瘍」と分解される。「胃潰瘍」のは「推定不能」と判定する。

シソーラスコードを「C5−60−70」とすれば、「神経性胃次に、推定したシソーラスコードが「属性」と合致す潰瘍」のシソーラスコードは「C5−60−70−990」と推定さるかどうかを確認する。具体的には、４のステップ４でれる。「病名」という属性が「C」で始まるシソーラス

Fig.9 Flowchart of process registering a word into the thesaurus

KONICA MINOLTA TECHNOLOGY REPORT VOL.2（2005）

117

コード対応しているとすれば、この推定は属性に反しなて「心臓」「動脈」の２つが、「症状」に対応するキーいので、推定した「C5−60−70−990」というシソーラスワードの候補として「肥大」「硬化」の２つがある。こ

コードを与える。もし「病名」ではない別の属性、例えの時にTF・IDF値によって「心臓」と「硬化」を抽出しば「部位」という属性でこの単語を追加しようとした場てしまうと、もとの文と全く異なる内容になってしまう。

合は、この推定は属性に反している。よってこの場合こういった誤りを避ける処理にも、上述した「係り受は、属性に対応するシソーラスコード、例えば「A99−け」が利用できると思われる。上の例だと、まず「心990」というコードを生成して与える。

臓」を抽出した後、「心臓」を含む文節「心臓が」は「肥大し」に係っているので、「肥大」を優先的にキーワードとして抽出するといった方法が考えられる。

５ 現状の性能と今後の課題
５．１

現状の性能

一般的に入手できる言語処理ツールでは読影レポート

６ まとめに使用される専門用語の属性判別はほとんど不可能であPACSと連携した医療診断支援システムにおいて、放射る。しかし本報告で述べてきたアルゴリズムと辞書およ

線読影レポートに言語処理を行った上で画像とともに構びシソーラスを組み合わせて実際の読影レポートから造化するシステムを開発した。これにより、画像及びレキーワード抽出を行った結果、50％〜70％の確率で適切ポートを再利用し、診断支援を有効に行うことができなキーワードが抽出できた。また実際の医療機関で使いる。現時点では機能評価のためのソフトウェアを開発し込めばユーザーの知識や経験を吸収することによって一た段階であるが、今後はこのソフトウェアを専門の先生層の精度向上が期待できる。しかし初期性能と汎用性を方に評価していただき、システムとしての性能のさらな向上させるためには新たな課題があることも明らかにる向上を目指す。

なった。
なお評価には病院などで公開されており一般に入手可
能な読影レポートを使用した。

謝辞
本研究を実施するにあたって日本医療情報学会に加入

５．２

今後の課題されている以下の先生方に多大な協力をいただきまし現在は４．２で述べた通り、新しい単語を登録する場た。ここに感謝の意を示します。

合は、まず新しい単語を分解し、分解された語のシソー

京都大学医学部付属病院

黒田講師

ラスコードからもとの単語のシソーラスコードを推定し京都大学医学部付属病院

竹村助手ている。難点は、分解された語の中にシソーラスに含ま大阪大学歯学部れる語がない場合にはこの方法が使えないという点であ関西医科大学

る。そこで、登録したい単語は文章中で他のどの単語と大阪市立大学医学部同時に使われているか、という情報を用いてシソーラス兵庫医科大学コードを推定する方法を検討する。

大阪大学医学部

一方、例えば「異常は見られない」という文からキー

兵庫医科大学

ワードを抽出する場合を考える。「異常」という単語が（50音順）

玉川助教授
仲野講師
朴助教授

平松講師
松村助教授
宮本教授

シソーラスにある場合は「異常」がキーワードとして抽出されることになるが、「異常は見られない」という文●参考文献のキーワードが、「異常」というのは適切とは言えな

１）笹井浩介：「利用者の意図が理解できるデータベース検索システ

い。そこで利用を考えているのが「係り受け情報」である。「係り受け」とは、文を文節単位に区切った場合

ムの開発」, 月刊ファームステージ 9 月号 , 技術情報協会（2004）
２）徳永健伸：「言語と計算−５ 情報検索と言語処理」, 辻井潤一編 ,東京大学出版会（1999）に、文節と文節のつながりのことである。これを使うことによって、例えば「ない」という単語を含む文節に係っている文節にある単語は抽出しない、といった処理方法などが考えられる。
また、４．１の処理においてキーワードを抽出する
際、現在はTF・IDF値が最大のものを属性ごとに求めて抽出している。例えば「心臓が肥大し、動脈も硬化している」という文に対し、属性として「部位」と「症状」を考えると、「部位」に対応するキーワードの候補とし

118

KONICA MINOLTA TECHNOLOGY REPORT VOL.2（2005）