JP4661415B2 - 表現ゆれ処理システム - Google Patents
表現ゆれ処理システム Download PDFInfo
- Publication number
- JP4661415B2 JP4661415B2 JP2005203799A JP2005203799A JP4661415B2 JP 4661415 B2 JP4661415 B2 JP 4661415B2 JP 2005203799 A JP2005203799 A JP 2005203799A JP 2005203799 A JP2005203799 A JP 2005203799A JP 4661415 B2 JP4661415 B2 JP 4661415B2
- Authority
- JP
- Japan
- Prior art keywords
- character string
- string
- cost
- partial
- partial character
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Machine Translation (AREA)
- Document Processing Apparatus (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Medical Treatment And Welfare Office Work (AREA)
- Measuring And Recording Apparatus For Diagnosis (AREA)
Description
類似単語検索により表記ゆれ処理を行う手法として、特開平8-69474、特開2005-11078等が知られている。特開平8-69474では、入力単語の文字単位n-gramと、別に用意した置換候補文字列により置換した文字列のn-gramからベクトルを構成し、類似文書検索等で用いられるベクトル空間法により、類似単語検索を行っている。特開2005-11078でも、部分文字列をベクトル要素とする類似文字列検索を行うが、特徴素としては、特に文字列に限定してはいない。
[1] 統制用語の部分文字列による近似文字列検索
[2] 正規化規則
[3] 同義語定義
[4] 完成度の定義
[1]により、挿入、欠損、だけでなく語順の違いによる表記ゆれを吸収できる。[2]により、半角全角、大文字小文字のほか、「0」ゼロと「O」オー等の文字認識に起因する表記ゆれを吸収することができる。[3]により、本手法の適用範囲を拡大することができる。[4]により、[1],[2],[3]を入力テキストに適用した結果出現する複数の統制用語の候補の中から、最も可能性の高い用語の組み合わせを選択することができる。
1) 各行は、診療行為、調剤行為、薬剤名、医療材料名の羅列
2) 行中の項目数はあらかじめ不明
3) 挿入欠損置換転置による表記ゆれが存在する。
4) コード化と無関係な文字列が存在する
<統制用語辞書の前処理>
まず、ステップ105により、統制用語を構成素に分解する。分解方法として、事前定義した分解規則に従うもの、機械的にn-gramに分解したもの、形態素解析を利用したものなどが考える。事前定義した分解規則に従う方法の例として、括弧の有無、数量・分量を表す表現、ハイフン、スペースの有無、文字種の切れ目等が考えられる。図3に分解規則の例を示す。例えば規則303、304では、アルファベットに続く漢字とカタカナを分解することを示している。また、特定の用語やパターンの場合は分解規則を適用したくない場合もあり得るため、例外規則も設けた。例えば、「S−M」、「C3」等、分解しないことが適当と思われるパターンについては分解を行わないこととした。これは本発明が転置による表記ゆれを吸収する手法であるため、語順を変えた「MS」や「3C」にマッチする可能性があるためである。従って、目安としては、語順の変換により別の統制用語に照合する可能性が少ない単位に分解することが望ましい。これは、統制用語を一旦分解した後、転置した文字列の頻度を数えるなどして機械的に行うことも可能である。但し、仮に部分文字列として登録した場合でも、後に述べる動的計画法による最小コスト解の探索手段により、最適解を選択することも可能である。
<部分文字列を用いた入力テキストの被覆>
入力テキストを処理する段階では、上記前処理で作成した部分文字列辞書の要素を、入力テキストに貼り付ける処理を行う。変換対象となる入力文字列に対し、まず手段109により正規化処理を行う。ここで適用する正規化規則は、統制用語に適用するものと正確に一致する必要がある。逆に、入力と統制用語と両方に同じ正規化規則を適用する限り、無意味にならない範囲で、どんな正規化規則も適用可能である。これらの文字列の区別をあいまいにすると、部分文字列と入力テキスト間で、正しくない照合が起こり得るが、後段のコスト最小解探索処理で、正しい解を選択できるようにする。
<部分文字列どうしの結合>
次に、手段111により、テキスト上に配置された部分文字列間の結合処理を行う。図7を用いて、配置済み部分文字列を結合する処理について説明する。基本的には隣接部分文字列間のID集合間の積集合を計算する。積集合が空でない場合、それらを結合した範囲に対応する新たな部分文字列を追加する。例えば712と715に着目すると、111010070という共通IDが存在する。そこで、712と715を結合した、719という部分文字列を追加する。同様に、711と712から、別のIDを積集合とする716を追加する。共通IDの積集合を計算する本処理により、語順の違いを許した文字列照合が可能となる。以上の結合処理を、追加される文字列も含めて、すべての可能な部分文字列の間で実施する。
<ギャップを許した結合>
前記結合処理において、隣接部分文字列間のみならず、離れた部分文字列間についても、積集合が空でない組み合わせが存在する。それらの組み合わせに関しては、ギャップの存在による結合コストを課して結合してもよい。結合コストの上限を設けるか、結合文字列間の距離を制限することで、本処理による速度の著しい低下を防ぐことができる。この処理により、無視可能な文字列やタイプミス等によるゴミが挿入している場合にも対処することができる。
<被覆のコスト>
以上のような部分文字列間の結合処理を繰り返すことにより、候補コード番号が唯一になる部分文字列や、元の統制用語の文字列をほぼ再現する部分文字列が出現してくる。これらの部分文字列のうち、コストがある閾値以下のものを解として出力する。ただし、それぞれの解候補であるテキストの部分文字列は、テキスト上で重なり合うこともあるため、入力テキストを最も適切に覆う文字列の組み合わせを探索する必要がある(手段112)。この組み合わせパターンの一つを、以降“被覆”と呼ぶことにする。各被覆間で優先順位をつけるため、“被覆のコスト”として、結合処理コスト、統制用語再現性コスト、完成文字列間連接コストを定義し、動的計画法の各組みの中で、上記結合処理を行いながらコストを計算し、最適な被覆を選択する。
統制用語再現性コスト(InnerCompositionCost)
構成途中の部分文字列と、対応する統制用語部分文字列との違いを表す尺度。前処理段階で、統制用語は重要度の異なる複数の部分文字列に分解される。以下の式において、X、Y、Zは統制用語の各パートの部分文字列長、X'、Y'、Z'は、部分文字列中に再現された各部分文字列の長さをあらわし、α、β、γは、あらかじめ決められた重み付けのための定数である.すなわち、統制用語文字列の、重み付け再現率を表す.
-log((αX'+βY'+γZ')/(αX+βY+γZ))
結合処理コスト(InnerGapCost)
IDの一致する部分文字列同士を結合する際のコスト。隣接文字列同士を結合する場合は、ギャップ0のため、結合処理コストも0とする。
定数α´ × Gap文字数
完成文字列間連接コスト(OurterGapCost)
(結合)文字列の集合である被覆を選択する際に、選択した文字列の間に存在するギャップによるコストを表す。言い換えると、被覆で覆うことのできなかったテキストから計算されるコストを表す。先頭もしくは末尾にコメントなど統制用語で覆う必要のない文字列が現れる場合は、コスト[1]を0にすることも考えられる。
[1]非被覆文字列が、テキストの先頭もしくは末尾の場合:
ストップワード以外の文字列長÷入力文字列長
[2]それ以外:
要素間に存在するストップワード以外の文字列数÷入力文字列長
各被覆について、PathCostを以下のように定義した。数式1で表されるように、テキスト位置pとqに関する被覆のPathCostは、pとqの間にあるtを用いて、再帰的に定義できる。文字列の結合とコストの計算は、テキストの左端から開始し、結合処理、OuterGapCost、InnerGapCost、InnerCompositionCostとPathCostの計算と記録を、テキスト上の位置ごとに左から右に繰り返していくことで、動的計画法の枠組みの中で解くことができる。
図7の例では、入力の先頭から末尾までのパスはいくつも存在する。そのうちコスト最小のものを選択するが、ここでは、被覆720と被覆721を例としてコストの計算例を示す。
被覆720のコスト = InnerCompostion(0, 8) + InnerGap(0, 8) + OuterGap(9, 12)
= -log((α*3+β*0+α*6)/(α*3+β*3+α*6)) + 2/12
> 0.167
被覆721のコスト = OuterGap(0, 2) + InnerCompsotion(3, 12) + InnerGap(3, 12)
= 2/12 + 0 + 0 = 0.167
従って、コストの低い「紹介患者加算4」を解として出力する。
<同義パターンの定義>
表記ゆれの中には、「ESR」と「赤血球沈降速度測定」など、字面上の処理では対処できないものも存在する。これらの表記ゆれについては、同義語登録をする必要がある。但し、構成要素単位で同義語を登録しておくと効率的である。統制用語辞書を分解する前に、あらかじめ同義語定義に従って統制用語を拡張しておく。例えば、「入院外」⇔「外来」という同義語定義がされていると、統制用語「療養担当手当(入院外)」から、「療養担当手当金(外来)」という拡張統制用語を定義できる。同様に、「調剤料(麻・向・覚・毒)(入院外)」から、「調剤料(麻・向・覚・毒)(外来)」。このように、同義語の定義は、例えば「入院外」と「外来」など、統制用語の部分文字列単位で定義することで、定義の汎用性を高めることができる。図9は、同義語の定義例を示しており、901は、「直腸鏡」と「E−直腸」が同義であること、「Hb」「ヘモグロビン」「ヒトヘモグロビン」が同義であることを示している。
102:統制用語辞書 110:近似文字列検索手段
103:同義パターン定義ファイル 111:文字列結合手段
104:辞書の拡張手段 112:文字列組合せ選択手段
105:文字列切断手段 113:統制用語出力手段
106:文字列正規化手段 114:文字列コスト表
107:文字列正規化規則
108:部分文字列辞書。
Claims (3)
- 文字列からなるテキストデータを入力する入力手段と、
文字種や単語列のパターンにより定義される文字列分解規則を格納する手段と、
所定の統制用語集を格納する手段と、
前記文字列分解規則に基づき前記統制用語集内の用語をあらかじめ構成要素ごとに切断し、該切断された部分文字列と該部分文字列が含まれる統制用語とを対応付けて保持する部分文字列辞書を作成する手段と、
作成された該部分文字列辞書を格納する手段と、
前記部分文字列辞書を参照し、前記テキストデータ中に出現する前記部分文字列を検索するテキスト検索手段と、
検索された前記部分文字列のうち、共通の統制用語に対応する部分文字列を結合する手段と、
前記結合文字列と前記テキストデータに含まれる文字列との位置関係と、前記結合文字列と前記統制用語との位置関係とに基づき、前記結合文字列の被覆コストを計算する手段と、
前記被覆コストが所定値以下となる結合文字列を選択し、出力する出力手段と、を有することを特徴とする表記ゆれ処理システム。 - 請求項1に記載の表記ゆれ処理システムにおいて、
前記被覆コストは、統制用語制限性コスト、結合処理コスト、及び、完成文字列間連接コストに基づいて計算されることを特徴とする表現ゆれ処理システム。 - 請求項1に記載表記ゆれ処理システムにおいて、
前記テキスト検索手段は、ハミング距離があらかじめ指定した値以下もしくは、編集距離があらかじめ指定した値以下の近似部分文字列を検索することを特徴とする表記ゆれ処理システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005203799A JP4661415B2 (ja) | 2005-07-13 | 2005-07-13 | 表現ゆれ処理システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005203799A JP4661415B2 (ja) | 2005-07-13 | 2005-07-13 | 表現ゆれ処理システム |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2007025834A JP2007025834A (ja) | 2007-02-01 |
JP2007025834A5 JP2007025834A5 (ja) | 2007-12-27 |
JP4661415B2 true JP4661415B2 (ja) | 2011-03-30 |
Family
ID=37786539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005203799A Expired - Fee Related JP4661415B2 (ja) | 2005-07-13 | 2005-07-13 | 表現ゆれ処理システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4661415B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5646988B2 (ja) * | 2007-04-13 | 2014-12-24 | コーニンクレッカ フィリップス エヌ ヴェ | 臨床イベントの相関付け |
US9342592B2 (en) * | 2013-07-29 | 2016-05-17 | Workday, Inc. | Method for systematic mass normalization of titles |
JP6419899B1 (ja) * | 2017-06-16 | 2018-11-07 | ソフトバンク株式会社 | 情報処理装置、制御方法及び制御プログラム |
CN109885180B (zh) | 2019-02-21 | 2022-12-06 | 北京百度网讯科技有限公司 | 纠错方法和装置、计算机可读介质 |
CN110349639B (zh) * | 2019-07-12 | 2022-01-04 | 之江实验室 | 一种基于通用医疗术语库的多中心医疗术语标准化系统 |
JP7473314B2 (ja) | 2019-09-27 | 2024-04-23 | TXP Medical株式会社 | 医療情報管理装置及び医療レポートのメタデータ付加方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06274547A (ja) * | 1993-03-22 | 1994-09-30 | Nippon Telegr & Teleph Corp <Ntt> | 複合語認識装置 |
JPH10240743A (ja) * | 1997-03-03 | 1998-09-11 | Nippon Telegr & Teleph Corp <Ntt> | 情報蓄積・検索方法及びシステム |
-
2005
- 2005-07-13 JP JP2005203799A patent/JP4661415B2/ja not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06274547A (ja) * | 1993-03-22 | 1994-09-30 | Nippon Telegr & Teleph Corp <Ntt> | 複合語認識装置 |
JPH10240743A (ja) * | 1997-03-03 | 1998-09-11 | Nippon Telegr & Teleph Corp <Ntt> | 情報蓄積・検索方法及びシステム |
Also Published As
Publication number | Publication date |
---|---|
JP2007025834A (ja) | 2007-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Krallinger et al. | Information retrieval and text mining technologies for chemistry | |
AU2004294094B2 (en) | Extraction of facts from text | |
JP4404211B2 (ja) | マルチリンガル翻訳メモリ、翻訳方法および翻訳プログラム | |
EP0583083B1 (en) | Finite-state transduction of related word forms for text indexing and retrieval | |
Zheng et al. | A graph kernel based on context vectors for extracting drug–drug interactions | |
Neves et al. | Moara: a Java library for extracting and normalizing gene and protein mentions | |
JP4661415B2 (ja) | 表現ゆれ処理システム | |
Armengol-Estapé et al. | PharmacoNER Tagger: a deep learning-based tool for automatically finding chemicals and drugs in Spanish medical texts | |
Sautter et al. | Improved bibliographic reference parsing based on repeated patterns | |
WO2015177861A1 (ja) | 教師データ作成装置及び方法 | |
Shah et al. | Clinical narrative summarization based on the mimic iii dataset | |
Champion et al. | Tactical clinical text mining for improved patient characterization | |
Soualmia et al. | Matching health information seekers' queries to medical terms | |
US20220004708A1 (en) | Methods and apparatus to improve disambiguation and interpretation in automated text analysis using structured language space and transducers applied on automatons | |
van Cranenburgh | Rich statistical parsing and literary language | |
Landolsi et al. | Hybrid medical named entity recognition using document structure and surrounding context | |
Andrews | Digital Techniques for Critical Edition | |
Born | Applications of natural language processing to archaeological decipherment: A survey of proto-Elamite | |
Nguyen et al. | Medical Prescription Recognition Using Heuristic Clustering and Similarity Search | |
Perea-Ortega et al. | SINAI at CLEF eHealth 2020: Testing Different pre-trained Word Embeddings for Clinical Coding in Spanish. | |
Antony et al. | Patti vaithiyam—an information extraction system for traditional Tamil medicines | |
Miloševic et al. | Table mining and data curation from biomedical literature | |
Miloševic | A multi-layered approach to information extraction from tables in biomedical documents | |
Fraj et al. | Parsing Arabic Texts Using Real Patterns of Syntactic Trees | |
Marques et al. | PyBioC: a Python implementation of the BioC core |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071112 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20071112 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100610 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100615 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100809 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101109 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101115 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20101207 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20101220 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140114 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |