1289 lines
38 KiB
Markdown
1289 lines
38 KiB
Markdown
---
|
||
source_url: "https://www.nii.ac.jp/journal/pdf/08/08-05.pdf"
|
||
ingested: 2026-07-17
|
||
sha256: a948d9169c4545d1355b95ff850bcbcacdbcc1de4005373fa49ef2d63d7b1d28
|
||
discovered_from:
|
||
platform: discord
|
||
channel_id: "1028287639918497822"
|
||
channel_name: chat
|
||
message_id: "1527613464728834168"
|
||
author_id: "890908900520505354"
|
||
posted_at: "2026-07-17T09:50:31.677000000Z"
|
||
message_excerpt: "https://www.nii.ac.jp/journal/pdf/08/08-05.pdf"
|
||
---
|
||
|
||
NII Journal No.8 (2004.2)
|
||
|
||
レビュー
|
||
|
||
異種データベース間でのレコード照合に関する研究動向
|
||
|
||
Record Linkage of Multi-source Databases: Research Trends
|
||
相澤 彰子
|
||
国立情報学研究所
|
||
|
||
Akiko AIZAWA
|
||
National Institute of Informatics
|
||
高須 淳宏
|
||
国立情報学研究所
|
||
|
||
Atsuhiro TAKASU
|
||
National Institute of Informatics
|
||
大山 敬三
|
||
国立情報学研究所
|
||
|
||
Keizo OYAMA
|
||
National Institute of Informatics
|
||
安達 淳
|
||
国立情報学研究所
|
||
|
||
Jun ADACHI
|
||
National Institute of Informatics
|
||
|
||
要旨
|
||
異なるデータベースの統合においては,互いに重複するレコードを検出し排除することが必須である.しかしながら,
|
||
このレコード間の照合は一般にコストのかかる困難な作業となる.というのも多くの場合,データベースどうしは共通
|
||
のレコード識別子を持たず,レコードの属性や値どうしにも厳密な対応関係が存在しないためである.特に,長期間に
|
||
わたり分散化した環境のもとで構築されてきた大規模なデータベースにおいて,信頼性の高い照合判定を実現するこ
|
||
とは容易ではない.また近年では半構造化データの扱いという新たな課題も出現している.そこで本論文では,重複レ
|
||
コードの検出と削除を行うためのデータクリーニング技術について概観する.
|
||
|
||
ABSTRACT
|
||
Detecting and eliminating duplicate records is crucial in integrating multiple source databases. However, the task of
|
||
identifying linkages between records is often costly and hard due to the lack of common record identifiers, and also the
|
||
variations of notations of attributes and values with no explicit correspondences. Specifically, when dealing with large databases
|
||
with long and distributed maintenance histories, highly reliable record linkage is difficult. There has also been a new and
|
||
emerging aspect of the problem that is the manipulation of semi-structured data. Based on the background, we present an
|
||
overview of data cleaning techniques for detecting and eliminating duplicate records in this paper.
|
||
[キーワード]
|
||
レコード照合, 重複排除, データクリーニング, ブロッキング, Fellegi-Sunter モデル
|
||
|
||
[Keywords]
|
||
Record Linkage, Deduplication, Data Cleaning, Blocking, Fellegi-Sunter Model
|
||
|
||
43
|
||
|
||
異種データベース間でのレコード照合に関する研究動向
|
||
|
||
はじめに
|
||
|
||
ニング技術が注目を集めている.直感的にいえば,
|
||
「Web
|
||
|
||
異なる情報源の間で共通するレコードを照合する問
|
||
|
||
上の人物情報の照合」や「Web からの書誌情報の収集」
|
||
|
||
題は歴史が古く,すでに 1959 年には Newcombe らによ
|
||
|
||
といった身近なタスクにまで,レコード照合問題の範囲
|
||
|
||
り,計算機による “record linkage” の自動化に関する論
|
||
|
||
が広がったのである.また,従来の統計的なアプローチ
|
||
|
||
文が発表されている[1] .また同じ文献によれば,“record
|
||
|
||
に加えて,機械学習や情報検索分野における研究成果の
|
||
|
||
linkage” という言葉はさらに古く(この場合は人手によ
|
||
|
||
適用が試みられはじめたことも,近年の顕著な動きとし
|
||
|
||
る同定処理を指す),その起源は 1940 年代後半の Dunn
|
||
|
||
て見逃せない.
|
||
|
||
1
|
||
|
||
[2][3]
|
||
|
||
.
|
||
|
||
ここで,レコード照合問題を考える上で特に注意が必
|
||
|
||
当初 “record linkage” は,ばらばらに記録された “vital
|
||
|
||
要となる点を2つ述べる.第一は,値の欠落や誤りの多
|
||
|
||
records”(出生・死亡・婚姻・離婚などの記録)を用い
|
||
|
||
いデータを扱う場合には,レコードの誤り修正とレコー
|
||
|
||
て様々な統計分析を行うための前処理として認識され
|
||
|
||
ドの照合が,しばしば不可分な処理となることである.
|
||
|
||
ていた.しばらくは主に疫学調査の分野で研究が行わ
|
||
|
||
すなわち,レコード照合の機能は単独のモジュールとし
|
||
|
||
れていたが,その後,長い歴史の中で次第に適用範囲
|
||
|
||
て存在するのではなく,値の整合性チェックや異種デー
|
||
|
||
を広げ,様々な方面から研究されることになった.こ
|
||
|
||
タベース間でのスキーマ変換等を含む,より広範なデー
|
||
|
||
のことは,同種の問題が今日,論文ごとに異なる呼び
|
||
|
||
タクリーニング技術との連携ではじめて実現される.注
|
||
|
||
名で呼ばれていることにも反映されている.参考のた
|
||
|
||
意点の第二は,レコード照合問題では処理の品質を高い
|
||
|
||
めその例を列挙すると,record matching, data cleaning,
|
||
|
||
水準に保つことが最優先されることである.機械学習や
|
||
|
||
data cleansing, data scrubbing, entity reconciliation, en-
|
||
|
||
情報検索では,領域に依存しない手法を用いて誤りを最
|
||
|
||
tity identification, merge/purge problem, duplication check,
|
||
|
||
小にするベストエフォート型システムの構成が最終的な
|
||
|
||
duplication identification, duplication elimination, dedupli-
|
||
|
||
目標となるが,レコード照合問題では品質を保証するた
|
||
|
||
cation, hardening soft databases, reference matching, object
|
||
|
||
めに,領域知識の実装や維持管理,人手による判定処理
|
||
|
||
consolidation, named entity co-reference determination 等
|
||
|
||
までが必要となる.すなわちレコード照合問題の本質
|
||
|
||
である.本論文では以下,これらを総称して「レコード
|
||
|
||
は,単なる学習や知識獲得アルゴリズムの適用なのでは
|
||
|
||
照合問題」と呼ぶことにする.1
|
||
|
||
なく,現実世界のデータを前提とした総合的なシステム
|
||
|
||
や Marshall による文献までさかのぼることができる
|
||
|
||
設計なのである.
|
||
|
||
レコード照合問題の代表的な適用例として,
|
||
「人物の
|
||
|
||
本論文では,上記の背景を踏まえて,レコード照合問
|
||
|
||
照合」および「書誌の照合」の2つをあげることができ
|
||
る.
|
||
「人物の照合」とは,具体的には異なる2つの病院
|
||
|
||
題に関するこれまでの研究動向を概観する.以下,2 節
|
||
|
||
の患者記録の対応をとる等であり,医療データや国勢調
|
||
|
||
でレコード照合問題の分類を示し,3 節で一般的なモデ
|
||
|
||
査等の分析に欠かせない技術として,主に統計処理的
|
||
|
||
ルを紹介する.4 節では,レコード照合問題の要素技術
|
||
|
||
な立場から研究されてきた.一方,
|
||
「書誌の照合」とは,
|
||
|
||
について述べ,代表的な手法を簡単に紹介する.さらに
|
||
|
||
例えば文献データベース中の重複エントリの検出等であ
|
||
|
||
5 節で役に立つサーベイ論文を紹介し,最後に 6 節でま
|
||
|
||
り,オンラインカタログの品質維持のため,主に図書館
|
||
|
||
とめを述べる.
|
||
|
||
情報学の立場から検討されてきた.いずれの場合につい
|
||
|
||
2
|
||
|
||
ても,データベース構築が長期にわたり分散した環境の
|
||
|
||
レコード照合問題の分類
|
||
まず,本論文における「レコード」の定義について述
|
||
|
||
もとで行われるため,レコード照合による品質の管理が
|
||
|
||
べる.データベース分野におけるレコードとは,データ
|
||
|
||
必須となることが背景にあったと考えられる.
|
||
|
||
ベースに蓄積される情報の単位であり,ある論理的な意
|
||
|
||
一方,データベース分野においては,レコード照合
|
||
問題はデータクリーニング技術の1つとして認識されて
|
||
|
||
味付けのもとに,ひとまとまりにされたデータを指すが
|
||
|
||
きた[4] .特に近年では,データウェアハウス構築や Web
|
||
|
||
[5]
|
||
|
||
マイニングといった話題の盛り上がりを受けて,タグ付
|
||
|
||
れた属性を持ち,実世界上の特定のエンティティを明示
|
||
|
||
きのいわゆる半構造化データの統合を目的とするクリー
|
||
|
||
的あるいは非明示的に参照するタグづけされた情報」で
|
||
|
||
,本論文におけるレコードとは,
|
||
「あらかじめ定めら
|
||
|
||
あるとする.すなわち,レコードは広義に以下の2つを
|
||
含む.
|
||
|
||
1 レコード照合問題はすでに述べたように長い伝統と歴史を
|
||
|
||
持つ分野であるが,我が国における研究発表はあまり多くない.
|
||
和訳の存在しない用語も多く見受けられるため,本文中では技
|
||
術用語については英文表記を原則として,必要に応じて括弧で
|
||
和訳を示すことにした.
|
||
|
||
(1) データベース上のレコード
|
||
|
||
44
|
||
|
||
NII Journal No.8 (2004.2)
|
||
|
||
(2) 半構造化データ
|
||
ただしここでの「半構造化データ」とは,一定書式のテ
|
||
キスト等から抽出した情報であり,不特定多数の情報発
|
||
信者が独立に記述する場合等を想定している.たとえ
|
||
ば,(1) が顧客 DB,(2) が個人のアドレス帳に対応する,
|
||
あるいは,(1) が書誌データベース,(2) が著者による引
|
||
用文献リストに対応するなどである.
|
||
ここで,レコード照合という問題設定のもとでは,(1)
|
||
|
||
(A) レコードの重複排除
|
||
|
||
と (2) の間には質的な違いが存在する.すなわち,(1)
|
||
データベース上のレコードは,データベース内で一意
|
||
に付与されるレコード識別子によって,明示的に現実世
|
||
界のエンティティを参照している.レコードは,予め定
|
||
義されたデータモデルにしたがって登録されており,属
|
||
性値が欠落することはまれである.また,各々のデータ
|
||
ベースは,エンティティとの対応が1対1となるよう設
|
||
計されていることから,誤りが混入する場合を除き原則
|
||
として重複レコードが存在することはない.一方,(2)
|
||
|
||
(B) レコード参照先の同定
|
||
|
||
半構造化データは多くの場合,一意性が保証された識別
|
||
子を持たず,エンティティの参照は非明示的である.半
|
||
構造化データは,属性値の欠落や誤り等を含む可能性が
|
||
高い.また,同一エンティティを参照するレコードが多
|
||
数存在することは,重要な情報は多くの人から参照され
|
||
るという原則に照らして,むしろ当然であるといえる.
|
||
上記を前提として本論文では,レコード同定問題を
|
||
以下の3つのタイプに分類する(図 1).
|
||
|
||
(A) レコードの重複排除
|
||
(C) レコード共参照関係の分析
|
||
|
||
単一あるいは複数のデータベース間で重複するレ
|
||
コードを抽出して,ひとつにまとめる問題.
|
||
|
||
図 1: レコード照合問題の分類
|
||
|
||
(B) レコード参照先の同定
|
||
レコード照合問題のモデル
|
||
|
||
3
|
||
|
||
半構造化データの参照先を,指定されたデータベー
|
||
|
||
今日,多くの研究で参照されている代表的なレコー
|
||
|
||
ス中の登録レコードの中から見つける問題.
|
||
|
||
ド照合問題のモデルは,1969 年の Fellegi & Sunter の文
|
||
|
||
(C) レコード共参照関係の分析
|
||
|
||
献[6] によるものである.以下では,最新の文献[7][8] の記
|
||
|
||
同一のエンティティを参照する半構造化データど
|
||
|
||
法にしたがって,Fellegi-Sunter の確率モデルを紹介し,
|
||
|
||
うしを,1つのグループにまとめる問題.
|
||
|
||
近年における機械学習の適用との関係について触れる.
|
||
|
||
(A) はレコードの統合(merge),(B) はレコードの同
|
||
|
||
3.1
|
||
|
||
定(identification),(C) はレコードのクラスタリング
|
||
|
||
Fellegi-Sunter モデル
|
||
|
||
まず,照合の対象となる2つの情報源 A, B を考える.
|
||
|
||
(clustering)にかかわるものである.単一データベース
|
||
|
||
A が na 個のレコードを,B が nb 個のレコードを含む
|
||
|
||
上ではレコードの重複はないものとすると,考慮するべ
|
||
|
||
とする.さて,B のすべてのレコードが A のすべての
|
||
|
||
きレコード間の対応関係は,(A) では1対1,(B) では
|
||
|
||
レコードの照合候補だとすると,match(照合)/ non-
|
||
|
||
1対多,(C) では多対多となる.
|
||
|
||
match(非照合)の決定が必要なレコード対は na × nb
|
||
|
||
45
|
||
|
||
異種データベース間でのレコード照合に関する研究動向
|
||
|
||
個存在する.2 これに基づき,A と B の直積 A × B を2
|
||
|
||
ここで,Γ をすべての可能な agreement vector の集合と
|
||
|
||
つの排他的な集合 M , U に分割し,A × B の要素は,こ
|
||
|
||
すると,両者の確率は次式となる.
|
||
|
||
れらが照合関係にあれば M ,不照合であれば U に属す
|
||
|
||
P (A1 |U ) =
|
||
|
||
るものとする.ここでのレコード照合の目的は,A × B
|
||
|
||
|
||
|
||
u(γ)P (A1 |γ)
|
||
|
||
(3)
|
||
|
||
m(γ)P (A3 |γ)
|
||
|
||
(4)
|
||
|
||
γ∈Γ
|
||
|
||
の要素に対して,以下のいずれかのラベルを付与するこ
|
||
|
||
P (A3 |M ) =
|
||
|
||
とである.
|
||
|
||
|
||
γ∈Γ
|
||
|
||
A1 :
|
||
|
||
match(照合)
|
||
|
||
A2 :
|
||
|
||
possible match(照合可能性あり)
|
||
|
||
match の確率 µ = P (A1 |U ) および false non-match の確
|
||
|
||
A3 :
|
||
|
||
non-match(非照合)
|
||
|
||
率 λ = P (A3 |M ) が決められたとき,人手判定を必要
|
||
|
||
Fellegi-Sunter モデルによる最適な照合戦略とは,false
|
||
|
||
レコード照合における一般的な考え方は,A1 および A3
|
||
|
||
とするレコード対 A2 の数を最小にするものである.具
|
||
|
||
を自動判定し,A2 の場合については人手による判定を
|
||
|
||
体的には,|Γ| = NΓ として NΓ 個の u(γ) の値を降順
|
||
|
||
行うというのものである.
|
||
|
||
に並べ,
|
||
|
||
m(γ)
|
||
|
||
n
|
||
|
||
i=1
|
||
|
||
|
||
|
||
NΓ
|
||
|
||
u(γi ) = µ,
|
||
|
||
i=n
|
||
|
||
m(γi ) = λ となるよ
|
||
|
||
|
||
|
||
さて,A,B の要素を a(∈ A),b(∈ B ),各々に
|
||
|
||
う n,n (n < n )を決める.すると,n, n における
|
||
|
||
関する登録情報を α(a),β(b) と表記するとき,候補対
|
||
|
||
値 Tµ = u(γnn) ,Tλ = u(γ n ) を判定の境界値として,
|
||
|
||
(α(a), β(b)) の一致の度合いを示すベクトル γ (∈ Γ)
|
||
|
||
最適戦略は以下のようになる.
|
||
|
||
m(γ )
|
||
|
||
m(γ )
|
||
|
||
n
|
||
|
||
を agreement vector (一致ベクトル)と呼ぶ.たとえば,
|
||
|
||
(a, b)
|
||
|
||
フィールドごとに一致度を計算する場合には,フィール
|
||
|
||
m(γ)
|
||
u(γ)
|
||
m(γ)
|
||
< Tµ
|
||
A2 if Tλ <
|
||
u(γ)
|
||
m(γ)
|
||
A3 if
|
||
≤ Tλ
|
||
u(γ)
|
||
|
||
∈
|
||
|
||
A1 if Tµ ≤
|
||
|
||
∈
|
||
|
||
ド数を k として,γ は k 次元ベクトルとなる.ここで,与
|
||
えられたレコード対で照合が成立する場合に,agreement
|
||
|
||
∈
|
||
|
||
vector の値が γ となる確率を m(γ) とする.すなわち,
|
||
m(γ) = P (γ|(a, b) ∈ M )
|
||
|
||
(5)
|
||
|
||
ここで,各フィールドの値が互いに独立である場合に
|
||
|
||
(1)
|
||
|
||
m(γ)
|
||
|
||
は,log u(γ) =
|
||
|
||
k
|
||
|
||
j=1
|
||
|
||
j
|
||
|
||
)
|
||
log m(γ
|
||
となる.図 2 は Fellegiu(γ j )
|
||
|
||
とする.同様にレコード対で照合が成立しない場合に,
|
||
|
||
Sunter モデルによる A1 ,A2 ,A3 の3つのラベルと2
|
||
|
||
agreement vector の値が γ となる確率を u(γ) とする.す
|
||
|
||
つのタイプの判定誤りを図示したものである[11] .
|
||
|
||
なわち,
|
||
|
||
u(γ) = P (γ|(a, b) ∈ U )
|
||
|
||
(2)
|
||
|
||
とする.
|
||
このとき,A1 ,A2 ,A3 のカテゴリ付与の誤りとし
|
||
て,次の2種類が存在する.
|
||
|
||
• False matches (Type I errors)
|
||
本来異なるレコードを誤って同一のものとみなし
|
||
てしまう誤り
|
||
図 2: Fellegi-Sunter モデルにおける判定ラベルと判定誤
|
||
り[11]
|
||
|
||
• False non-matches (Type II errors)
|
||
本来同一のレコードを誤って異なるものとみなし
|
||
てしまう誤り
|
||
|
||
上記の枠組のもと,レコード照合問題は式 (1) (2) の
|
||
|
||
m(γ) および u(γ)(あるいは対数尤度比 log m(γ)
|
||
)を推
|
||
u(γ)
|
||
定する問題となる.当初の Fellegi-Sunter モデルでは,こ
|
||
|
||
2 実際には,A と B の対応関係は任意ではない場合が多い.
|
||
|
||
の値を (i) あらかじめ既知である,(ii) 判定済の事例に
|
||
|
||
たとえば B の要素が互いに異なるものである場合には,A の
|
||
要素は B の複数の要素に同時に対応することはない.Cohen
|
||
らは,このような問題を constrained matching problem と呼ん
|
||
でいる[9] .また,Gu らはこのような問題を 1-1 record linkage,
|
||
その他の場合を 1-many record linkage と呼んでいる[8] .これは,
|
||
本論文の図 1 で示したレコード照合問題の分類 (A),(B) にそ
|
||
れぞれ対応すると考えられる.
|
||
|
||
おける観察値に設定する,のいずれかとしていた[6] .そ
|
||
の後 Jaro らは,各フィールドの独立性を仮定した上で,
|
||
j
|
||
|
||
)
|
||
EM アルゴリズムを適用して対数尤度比(log m(γ
|
||
)を
|
||
u(γ j )
|
||
|
||
推定する方法を示した[10] .近年では Verkios らが,ラン
|
||
|
||
46
|
||
|
||
NII Journal No.8 (2004.2)
|
||
|
||
イズ決定理論の枠組みを示している
|
||
|
||
[11]
|
||
|
||
レコード照合のための要素技術
|
||
|
||
4
|
||
|
||
ダムに得られる観測値に基づき先験的分布を更新するベ
|
||
.
|
||
|
||
レコード照合における技術的なポイントは,(1) 大規
|
||
模なデータを扱うため高い効率性が求められること,お
|
||
|
||
3.2
|
||
|
||
Fellegi-Sunter モデルと機械学習の関係
|
||
|
||
よび (2) データベース品質維持のため高い信頼性が求め
|
||
|
||
近年では機械学習を直接適用して match(照合) /
|
||
|
||
られること,の2点である.しかしながら両者はトレー
|
||
|
||
non-match(非照合)の2値分類問題を解く場合もあり,
|
||
|
||
ドオフ関係にあり,すべてのレコード対を単純に比較す
|
||
|
||
高い識別能力が報告されている[12][13] .機械学習自体は
|
||
|
||
るだけでは (1)(2) を同時に満足することはできない.こ
|
||
|
||
possible match(照合可能性あり)を判定する能力を持
|
||
|
||
のためレコード照合システムでは,候補選別,自動判定,
|
||
|
||
m(γ)
|
||
|
||
たないが,図 2 において,対数尤度比 log u(γ) を機械
|
||
|
||
人手による判定などを含む多段階の処理が必要となる.
|
||
|
||
学習によるスコア値に置き換えると,Fellegi-Sunter モ
|
||
|
||
以下では,レコード照合システムの要素技術をまとめ,
|
||
|
||
デルと類似の判定方法が適用できる.
|
||
|
||
代表的な手法を簡単に紹介する.
|
||
|
||
たとえば図 3 は,実際の書誌同定タスクにおけるス
|
||
|
||
4.1
|
||
|
||
コアの分布を示したものである.横軸にはスコア値を,
|
||
|
||
レコード照合システムにおける処理要素
|
||
|
||
縦軸にはスコア値を 1 区切りでヒストグラム化した場合
|
||
|
||
レコード照合システムの設計は研究毎に様々であり,
|
||
|
||
のレコード対の数を対数目盛りで示している.実線が照
|
||
|
||
文献により用語も異なるのが現状である.たとえば,レ
|
||
|
||
合する事例,点線が非照合事例である(見やすさのため
|
||
|
||
コード照合システムに必要な処理要素として Elfeky[31] ら
|
||
|
||
縦軸を対数目盛りで示しているが,実際には照合,非照
|
||
|
||
は,Standardization(正規化),Blocking/Searching(ブ
|
||
|
||
合の両者では後者の数が圧倒的に多い).いま,人手判
|
||
|
||
ロック化/探索),Comparison (比較),Decision Model
|
||
|
||
定の閾値 Tµ ,Tλ が与えられたとすると,Fellegi-Sunter
|
||
|
||
(判定モデル),Measurement(評価指標)の5つを示し
|
||
|
||
モデルの場合と同様に,閾値判定ラベルと誤りタイプが
|
||
|
||
ている.また Gu ら[8] はこれらに Database Management
|
||
|
||
図中に示したように定まる.
|
||
|
||
System (DBMS)および Graphical User Interface(GUI)
|
||
を加えた 7 層モデルを提案している.また,Lee ら[14]
|
||
|
||
100000
|
||
|
||
はデータクリーニングにおいて必要となる操作を pre-
|
||
|
||
match
|
||
non-match
|
||
|
||
processing,processing,validation and verification の3段
|
||
|
||
10000
|
||
|
||
階に分け,それぞれで実行する処理として Abnormalities
|
||
|
||
Detection(不整合データの検出),Automatic Merge/Purge
|
||
|
||
1000
|
||
|
||
(自動統合/削除),User Manipulation (人手による判定)
|
||
100
|
||
|
||
等をあげている.
|
||
本論文では,近年の動きであるテキストや半構造デー
|
||
|
||
10
|
||
|
||
タからのデータ抽出,判定済のデータを訓練用事例とす
|
||
1
|
||
0
|
||
|
||
20
|
||
|
||
40
|
||
|
||
60
|
||
|
||
80
|
||
|
||
る知識獲得等も踏まえ,レコード照合システムの標準的
|
||
|
||
100
|
||
|
||
な処理の流れを図 4 のようにまとめる.以下,それぞれ
|
||
図 3: 実問題における照合スコアの分布の例
|
||
|
||
の処理機能について簡単に説明する.
|
||
|
||
(1) セグメンテーション(segmentation)
|
||
|
||
ただし,サポートベクタマシンなどの機械学習を適
|
||
用する場合には,スコア値が確率的な解釈を持たない
|
||
|
||
入力テキストを解析して,レコード毎のフィールド
|
||
|
||
ため,誤り確率 µ,λ をスコア値から推定することが
|
||
|
||
値を抽出しデータベースにロードする.
|
||
(例:“1999.8”
|
||
|
||
できない.このため人手判定の閾値 Tµ ,Tλ について
|
||
|
||
を “year⇒1999, month⇒8” など)
|
||
|
||
は,別途経験的に設定することが必要である.これは具
|
||
|
||
(2) 正規化(normalization)
|
||
|
||
体的には,図 3 において,Fellegi-Sunter モデルによる
|
||
|
||
辞書や変換ルールを用いて,入力時の表記の揺れや
|
||
|
||
agreement vector をヒストグラムの1区間に対応させた
|
||
|
||
用語の不統一を修正する.
|
||
(例: “1999 年” と “’98”
|
||
|
||
場合に,区間の並び方が必ずしも match / non-match の
|
||
|
||
など)
|
||
|
||
対数尤度比の順番にはならないことを意味している.
|
||
|
||
(3) 選別(selection)
|
||
効率のよい方法を用いて,互いに重複する可能性
|
||
|
||
47
|
||
|
||
異種データベース間でのレコード照合に関する研究動向
|
||
|
||
4.2
|
||
|
||
代表的な候補選択手法
|
||
|
||
候補選択はしばしば文献中で blocking,filtering,deTransformation Rules
|
||
Entity Dictionaries
|
||
|
||
tection,search 等の用語で参照される.blocking という
|
||
用語を使う場合の基本的な考え方は,あらかじめレコー
|
||
|
||
Parameter Settings
|
||
|
||
ドをいくつかのグループに分割し,照合候補の選択をグ
|
||
ループ内のメンバーに限定して効率化をはかることであ
|
||
る.これに対して search は,任意のレコードに対して,
|
||
|
||
Checking
|
||
Function
|
||
|
||
候補集合全体を調べて候補リストを作成する場合を含む
|
||
ものと考えられる.ただし歴史的に,これらの用語は厳
|
||
密な区別なく使われる場合が多いようである.
|
||
候補選択の伝統的な方法として第1にあげられるの
|
||
|
||
Blocking
|
||
/Ranking
|
||
Function
|
||
|
||
は standard blocking[10] である.この方法では,たとえば
|
||
「苗字の先頭4文字」など,キーとなる属性(あるいは
|
||
|
||
Human
|
||
Judgement
|
||
|
||
属性の組みあわせ)を1つ決めて,同じキーの値を持
|
||
つレコードどうしを照合の候補とする.また,複数の
|
||
キーに対してこのような操作を行う場合を multiple pass
|
||
|
||
Matching
|
||
Function
|
||
|
||
blocking と呼ぶ.
|
||
伝統的な方法の第2は sorted neighbourhood method
|
||
|
||
図 4: レコード照合システムにおける処理の流れ
|
||
|
||
(SNM) [15][16] である.この方法は,あらかじめ定めた
|
||
キーの値にしたがってすべてのレコードをソートし,そ
|
||
のリスト上で固定長ウィンドウの範囲内にある近接レ
|
||
|
||
があるレコード対の候補を数え上げる.
|
||
|
||
コード群を照合候補とする.SNM にはあらかじめグルー
|
||
|
||
(4) 比較(comparison)
|
||
|
||
プ化したレコード群の中でソートを適用する clustering
|
||
|
||
候補にあげられたレコード対の照合スコアを求め,
|
||
|
||
SNM,複数のキーでソートを繰り返す multi-pass SNM
|
||
|
||
match(照合)/possible match(照合可能性あり)
|
||
|
||
など,幾つかのバリエーションが存在する.また,リスト
|
||
|
||
/non-match(非照合)のいずれかに分類する.
|
||
|
||
を走査する際に,最新の代表的なレコードだけを特別な
|
||
キューに入れて効率化をはかる priority queue method[19]
|
||
|
||
(5) 検証(verification)
|
||
|
||
も提案されている.
|
||
|
||
分類結果を受けて,必要に応じて人手による追加
|
||
|
||
一方,近年になり提案された新しい候補選択法とし
|
||
|
||
判定を行い,最終的な照合結果を出力する.
|
||
|
||
て,bigram indexing[17] と canopy clustering [18][9] をあげ
|
||
|
||
(6) 調整(tuning)
|
||
|
||
ることができる.Bigram indexing は,キーの値を文字単
|
||
|
||
照合結果に基づきシステムの性能を評価し,選別
|
||
|
||
位バイグラムの集合に変換し,ある一定の閾値以上でバ
|
||
|
||
や分類等におけるパラメタを調整する.また,必
|
||
|
||
イグラムが一致するレコードを候補とする方法である.
|
||
|
||
要に応じて,正規化のための辞書やルールを獲得
|
||
|
||
閾値を設定することで,効率とあいまい性のトレードオ
|
||
|
||
する.
|
||
|
||
フを可能にしている.一方,canopy clustering は,情報
|
||
検索システムで広く用いられている tf-idf を類似度尺度
|
||
|
||
上記のうちで,レコード照合問題の中心的な検討課
|
||
|
||
として用いる方法である.レコードをランダムに順次選
|
||
|
||
題となるのは,(2) の候補選択および (3) の候補比較で
|
||
|
||
択しながら,tf-idf による距離が一定値以下であるよう
|
||
|
||
ある.これらは両者とも,いかにしてレコード間の照合
|
||
|
||
なレコード群をまとめて,canopy cluster と呼ばれるグ
|
||
|
||
スコア(類似度)を求めるか,という問題に帰着させて
|
||
|
||
ループを構成する.最後に,同一の canopy cluster 内の
|
||
|
||
考えることができる.前者では,精度は低くてよいが取
|
||
|
||
レコードどうしを照合候補とする.
|
||
|
||
りこぼしがなく,大量のレコードを現実的な速度で処理
|
||
できるような高速な手法が求められる.後者では,コス
|
||
|
||
4.3
|
||
|
||
代表的な比較手法
|
||
|
||
トが高くても信頼性の高い手法が求められる.以下で
|
||
|
||
候補の比較では,与えられた2つのレコードを比較し
|
||
|
||
は,候補選択と比較に関する代表的な手法を簡単に紹介
|
||
|
||
て,match,possible match,non-match のいずれかに分
|
||
|
||
する.
|
||
|
||
48
|
||
|
||
NII Journal No.8 (2004.2)
|
||
|
||
合問題に関する盛り上がりがうかがえる.
|
||
|
||
別する.候補比較は,レコード照合の中で最もコストが
|
||
高い計算であり,対象領域に特化あるいは適応した手法
|
||
|
||
最後に,レコード照合を実装したプロトタイプシス
|
||
|
||
が必要とされる.Sung らは候補比較の方法を,(1) ルー
|
||
|
||
テムとしては,AutoMatch[29] ,AJAX[30] ,IntelliClean[14] ,
|
||
|
||
ルに基づく方法,(2) 類似関数に基づく方法,の2つに
|
||
|
||
TAILOR[31] ,Febrl[17] 等が知られている.また,Gu らの
|
||
|
||
大別している
|
||
|
||
[20]
|
||
|
||
概説論文[8] では代表的な無料・商用ソフトウェアや利用
|
||
|
||
.
|
||
|
||
ルールに基づく方法では,たとえば「姓が等しく名が
|
||
|
||
可能なベンチマーク用データもあわせて紹介している.
|
||
|
||
1文字違いならば同一人物とみなす」などの IF-THEN
|
||
|
||
さらに,1997 の論文集[26] (Chapter 13)では,レコー
|
||
|
||
型のルールを,適用領域にあわせて人手で作成してシス
|
||
|
||
ド照合ソフトウェアを評価するためのチェックリストが
|
||
|
||
テムに組み込む[15] .ここで性能向上のため,ルールに
|
||
|
||
提供されており興味深い.
|
||
|
||
[14]
|
||
|
||
確信度を与える方法も提案されている
|
||
|
||
.
|
||
|
||
6
|
||
|
||
類似関数に基づく方法では,文字列比較の汎用的な
|
||
関数である編集距離を用いることが一般的に行われる
|
||
[21]
|
||
|
||
おわりに
|
||
レコード照合問題に関する研究は,1950 年代までさ
|
||
|
||
.多くの場合,編集距離を計算するためのパラメタ
|
||
|
||
かのぼる長い歴史を持つ一方で,近年では,半構造化
|
||
|
||
(挿入,置換などの編集操作のコスト)は適応領域にあ
|
||
|
||
データやデータウェアハウスの登場を背景に,データ
|
||
|
||
わせて人手により調整するが,機械学習を利用して適応
|
||
|
||
ベース,機械学習,情報検索等の分野からのアプローチ
|
||
|
||
的に距離関数を獲得する方法も提案されている[13] .そ
|
||
|
||
が活発化している.しかしながら我が国においては,今
|
||
|
||
の他の方法として,token, field, record の3つのレベル
|
||
|
||
回調査した範囲では発表がほとんど見受けられず,独立
|
||
|
||
[22]
|
||
|
||
毎に順番に類似度を計算する record similarity
|
||
[23]
|
||
|
||
を適用する方法
|
||
|
||
[24]
|
||
|
||
,Q-gram を用いる方法
|
||
|
||
,tf-idf
|
||
|
||
した研究分野としてあまり認識されていないようであっ
|
||
|
||
などが提
|
||
|
||
た.レコード照合問題は,領域固有の知識を多く必要と
|
||
|
||
案されている.
|
||
|
||
することから,学術的な一般化がむずかしいという側面
|
||
もある.また我が国では戸籍制度が整備されており国勢
|
||
|
||
関連文献と代表的なシステムの例
|
||
|
||
調査等での人物名同定の必要性があまりなかったという
|
||
|
||
レコード照合問題に関するサーベイとして,まず,U.
|
||
|
||
社会的背景もあろう.しかしレコード照合は,今日の社
|
||
|
||
S. Census Bureau 主催の2回のワークショップ論文集
|
||
|
||
会に氾濫する情報を整理し,役に立つ形で発信して行く
|
||
|
||
5
|
||
|
||
[25]
|
||
|
||
(Section I,
|
||
|
||
上で不可欠な技術である.広くは,一般にテキスト情報
|
||
|
||
Selected Background Papers: 1959-1983)には,1959 年
|
||
|
||
を実世界上の実体に対応付ける操作とみなすこともで
|
||
|
||
から 1983 年までの代表的な論文が集められており,そ
|
||
|
||
きる.単純に諸外国の商用ソフトを導入しただけでは実
|
||
|
||
の歴史を概観するのに役立つ.また同文献(Section II ∼
|
||
|
||
用に耐えるレコード照合システムの構築は困難である
|
||
|
||
V)には,1985 年の時点での技術概観,理論,応用分野
|
||
|
||
と考えられ,我が国においても今後の研究の発展が望ま
|
||
|
||
等に関する包括的な情報もまとめられている.さらに第
|
||
|
||
れる.
|
||
|
||
をあげることができる.第1回の論文集
|
||
|
||
[26]
|
||
|
||
2回の論文集
|
||
|
||
(Chapter 11)には,1986 年から 1997
|
||
謝辞
|
||
|
||
年までの代表的な論文,および 1997 年の時点での最新
|
||
の技術動向が集められている.
|
||
|
||
本研究動向調査は,国立情報学研究所が事業サービ
|
||
|
||
さらに最近のサーベイとして,2000 年の IEEE Trans-
|
||
|
||
スを開始している文献情報ナビゲータ(CiNii)開発の
|
||
|
||
action on Data Engineering のデータクリーニングに関
|
||
|
||
一環として行いました.研究開発および運用に携わる富
|
||
|
||
する特集号[4] に掲載された Monge による記事[27] ,Win-
|
||
|
||
士通研究所,富士通株式会社,国立情報学研究所開発・
|
||
|
||
kler による U. S. Census Bureau のテクニカルレポー
|
||
|
||
事業部アプリケーション課の方々に感謝いたします.
|
||
|
||
ト
|
||
|
||
[28]
|
||
|
||
,2003 年発刊の本に掲載された Sung らによる
|
||
|
||
概説[20] ,Gu らによる 2003 年の論文[8] 等がある.ま
|
||
|
||
文献
|
||
|
||
た近年では,VLDB (International Conference on Very
|
||
|
||
[1] H. B. Newcombe, J. M. Kennedy, S. J. Axford and A. P.
|
||
|
||
Large Databases),ACM SIGMOD (International Confer-
|
||
|
||
James, Automatic Linkage of Vital Records, Science,
|
||
|
||
ence on Management of Data),ACM SIGKDD (Interna-
|
||
|
||
130 (3381), pp. 954-959, 1959
|
||
|
||
tional Conference on Knowledge Discovery and Data Min-
|
||
|
||
[2] Halbert L. Dunn, Record Linkage, American Journal
|
||
|
||
ing),WWW (International World Wide Web Conference)
|
||
|
||
of Public Health, 36, pp. 1412-1416, 1946
|
||
|
||
等の著名な会議において発表がされており,レコード照
|
||
|
||
49
|
||
|
||
異種データベース間でのレコード照合に関する研究動向
|
||
|
||
Merge/Purge Problem for Large Databases, Proceed-
|
||
|
||
[3] J. T. Marshall, Canada’s National Vital Statistics Index,
|
||
|
||
ings of the 1995 ACM SIGMOD International Con-
|
||
|
||
Population Studies, 1 (2), pp. 204-211, 1947
|
||
|
||
ference on Management of Data (SIGMOD 1995), pp.
|
||
|
||
[4] Erhard Rahm and Hong Hai Do, Data Cleaning: Prob-
|
||
|
||
127-138, 1995
|
||
|
||
lems and Current Approaches, IEEE Transaction on
|
||
|
||
[16] Mauricio A. Hernandez and Salvatore J. Stolfo,
|
||
|
||
Data Engineering, 23 (4), pp. 3-13, 2000
|
||
[5] 有澤博, データベース理論, 情報処理学会, 1981
|
||
|
||
Real-world Data is Dirty: Data Cleansing and the
|
||
|
||
[6] Ivan P. Fellegi and Alan B. Sunter, A Theory for Record
|
||
|
||
Merge/Purge Problem, Journal of Data Mining and
|
||
Knowledge Discovery, 1 (2), 1998
|
||
|
||
Linkage, Journal of American Statistical Association,
|
||
|
||
[17] Peter Christen and Tim Churches, Febrl – Freely Ex-
|
||
|
||
64 (328), pp. 1183-1210, 1969
|
||
[7] S. Gomatam, R. Carter, M. Ariet and G. Mitchell, An
|
||
|
||
tensible Biomedical Record Linkage, Computer Sci-
|
||
|
||
Empirical Comparison of Record Linkage Procedures,
|
||
|
||
ence Technical Reports, TR-CS-02-05, Australian National University, 2002
|
||
|
||
Statistics in Medicine, 21, pp. 1485-1496, 2002
|
||
[8] Lifang Gu, Rohan Baxter, Deanne Vickers and Chris
|
||
|
||
[18] Andrew McCallum, Kamal Nigam and Lyle H. Ungar
|
||
|
||
Rainsford, Record Linkage: Current Practice and Fu-
|
||
|
||
, Efficient Clustering of High-Dimensional Data Sets
|
||
|
||
ture Directions, CMIS Technical Report, CSIRO Math-
|
||
|
||
with Application to Reference Matching, Proceedings
|
||
|
||
ematical and Information Sciences, 03/83, 2003
|
||
|
||
of the 6th ACM International Conference on Knowl-
|
||
|
||
[9] William W. Cohen and Jacob Richman, Learning to
|
||
|
||
edge Discovery and Data Mining (KDD2000), pp. 169178, 2000
|
||
|
||
Match and Cluster Large High-Dimensional Data Sets
|
||
for Data Integration, Proceedings of the 8th ACM In-
|
||
|
||
[19] Alvaro E. Monge and Charles P. Elkan, An Efficient
|
||
|
||
ternational Conference on Knowledge Discovery and
|
||
|
||
Domain-Independent Algorithm for Detecting Approx-
|
||
|
||
Data Mining (KDD2002), pp. 475-480, 2002
|
||
|
||
imately Duplicate Database Records, Proceedings of
|
||
the ACM-SIGMOD Workshop on Research Issues on
|
||
|
||
[10] Matthew A. Jaro, Advances in Record Linkage
|
||
|
||
Knowledge Discovery and Data Mining, 1997
|
||
|
||
Methodology as Applied to Matching the 1985 Census
|
||
|
||
[20] Sam Y. Sung, Zhao Li and Tok W. Ling, Clustering
|
||
|
||
of Tampa, Florida, Journal of the American Statistical
|
||
|
||
Techniques for Large Database Cleansing, in ”Clus-
|
||
|
||
Society, 84 (406), pp. 414-420, 1989
|
||
[11] Vassilions S. Verykios, George V. Moustakides and
|
||
|
||
tering and Information Retrieval”, W. Wu, H. Xiong
|
||
|
||
Mohamed G. Elfeky, A Bayesian Decision Model for
|
||
|
||
and S. Shekhar eds., Kluwer Academic Publishers, pp.
|
||
|
||
Cost Optimal Record Matching, The International Jour-
|
||
|
||
227-259, 2003
|
||
|
||
nal on Very Large Databases, Vol. 12, pp. 28-40, 2003
|
||
|
||
[21] Alvaro E. Monge and Charles P. Elkan, The Field
|
||
|
||
[12] Sunita Sarawagi and Anuradha Bhamidipaty, Interac-
|
||
|
||
Matching Problem: Algorithms and Applications, Pro-
|
||
|
||
tive Deduplication using Active Learning, Proceedings
|
||
|
||
ceedings of the Second International Conference on
|
||
|
||
of the 8th ACM International Conference on Knowl-
|
||
|
||
Knowledge Discovery and Data Mining (KDD 1996),
|
||
|
||
edge Discovery and Data Mining (KDD2002), pp. 269-
|
||
|
||
pp. 267-27, 1996
|
||
[22] M. L. Lee, H. Lu, T. W. Ling and Y. T. Ko, Cleans-
|
||
|
||
278, 2002
|
||
[13] Mikhail Bilenko and Raymond J. Mooney, Adaptive
|
||
|
||
ing Data for Mining and Warehousing, Proceedings of
|
||
|
||
Duplicate Detection Using Learnable String Similarity
|
||
|
||
the 10th International Conference on Database and Ex-
|
||
|
||
Measures, Proceedings of the 9th ACM International
|
||
|
||
pert Systems Applications (DEXA 1999), pp. 751-760,
|
||
1999
|
||
|
||
Conference on Knowledge Discovery and Data Mining
|
||
|
||
[23] William W. Cohen, Integration of Heterogeneous
|
||
|
||
(KDD2003), 2003
|
||
[14] Mong Li Lee, Tok Wang Ling and Wai Lup Low
|
||
|
||
Databases Without Common Domains Using Queries
|
||
|
||
, IntelliClean: A Knowledge-Based Intelligent Data
|
||
|
||
Based on Textual Similarity, Proceedings of the 1998
|
||
|
||
Cleaner, Proceedings of the 6th ACM International
|
||
|
||
ACM SIGMOD International Conference on Manage-
|
||
|
||
Conference on Knowledge Discovery and Data Min-
|
||
|
||
ment of Data (SIGMOD 1998), pp. 201-212, 1998
|
||
[24] L. Gravano, P. G. Ipeirotis, H. V. Jagadish, N. Koudas,
|
||
|
||
ing (KDD2000), pp. 290-294, 2000
|
||
|
||
S. Muthukrishnan and D. Srinivasta, Approximate
|
||
|
||
[15] Mauricio A. Hernandez and Salvatore J. Stolfo, The
|
||
|
||
50
|
||
|
||
NII Journal No.8 (2004.2)
|
||
|
||
String Joins in a Database, Proceedings of the 27th
|
||
International Conference on Very Large Data Bases
|
||
(VLDB 2001), pp. 491-500, 2001
|
||
[25] Beth Kilss and Wendy Alvey eds., Record Linkage
|
||
Techniques – 1985: Proceedings of the Workshop on
|
||
Exact Matching Technologies, Statistics of Income Division, Internal Revenue Service Publication 12992-96 (available from http://www.fcsm.gov/workingpapers/RLT _ 1985.html), 1985
|
||
[26] National Research Council, Record Linkage Techniques – 1997: Proceedings of an International Workshopthe Workshop and Exposition, National Academic
|
||
Press (available from http://www.fcsm.gov/workingpapers/RLT _ 1997.html), 1997
|
||
[27] Alvaro E. Monge, Matching Algorithms Within a Duplicate Detection System, IEEE Transaction on Data
|
||
Engineering, 23 (4), pp. 14-20, 2000
|
||
[28] William E. Winkler, The State of Record Linkage
|
||
and Current Research Problems, Technical Report
|
||
RR/200/06, Statistical Research Report Series, U.S. Bureau of the Census, 2000
|
||
[29] Matthew A. Jaro, Software Demonstrations, Proceedings of an International Workshop and Exposition Record Linkage Techniques, 1997
|
||
[30] Helena Galhardas, Daniela Florescu and Dennis
|
||
Shasha, AJAX: An Extensible Data Cleaning Tool,
|
||
Proceedings of the 2000 ACM SIGMOD International
|
||
Conference on Management of Data (SIGMOD 2000),
|
||
pp. 590, 2000
|
||
[31] Mohamed G. Elfeky, Vassilios S. Verykios and Ahmed
|
||
K. Elmagarmid, TAILOR: A Record Linkage Toolbox,
|
||
In Proceedings of the 18th International Conference on
|
||
Data Engineering (ICDE 2002), 2002
|
||
|
||
51
|
||
|
||
|