説明

辞書作成プログラム,辞書作成装置および辞書作成方法

【課題】表記が類似しない文字列同士の対応を反映させた読替え辞書を作成する。
【解決手段】読替え辞書作成支援装置10において,取得部11は,第1の文字列と第2の文字列とを取得する。解析部12は,形態素解析により,第1の文字列と第2の文字列とをそれぞれ単語に分解する。抽出部13は,第1の文字列に含まれる単語または複合語である文字列と,第2の文字列に含まれる単語または複合語である文字列との対応を抽出する。表示部14は,抽出した文字列の対応をディスプレイ18等の表示装置に表示する。受付部15は,ユーザによる表示装置に表示された文字列の対応からの読替え可能な文字列の対応の選択を受け付ける。登録部16は,読替え辞書記憶部100に記憶された読替え辞書に,選択された読替え可能な文字列の対応を登録する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は,読替え可能な文字列の対応を記録する読替え辞書を作成する辞書作成プログラム,辞書作成装置および辞書作成方法に関する。
【背景技術】
【0002】
コンピュータ処理において,読替え可能な文字列の対応を記録した辞書データを用いて,文字列の読替えを行う技術がある。ここでは,読替え可能な文字列の対応を記録した辞書データを,読替え辞書と呼ぶ。読替え辞書は,コンピュータを用いた名寄せ処理における正規化辞書や,一種のシソーラスなどとして利用できる。
【0003】
読替え辞書を作成する方法としては,例えば,ユーザが読替え可能な文字列の対応を1つ1つ手作業で入力して登録する方法などがある。
【0004】
なお,文字列間の類似度を算出して評価することで,異表記語の候補を抽出し,抽出された異表記語の候補を表示装置に表示してユーザに提示することで,異表記語辞書の作成を支援する技術が知られている。この技術では,文字列間の類似度の算出に,一般的な近似文字列照合技術が採用されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平7−73197号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
読替え可能な文字列の対応をユーザが1つ1つ手作業で入力して登録する方法では,読替え辞書の作成に非常に手間がかかるため,読替え辞書の作成コストが高くなる。
【0007】
上述のように,近似文字列照合技術を用いて文字列間の類似度を算出する技術では,読替え可能な文字列の対応の候補を抽出してユーザに提示し,読替え辞書の作成を支援することが可能である。例えば,上述の近似文字列照合技術を利用した技術では,互いに表記が類似する文字列「シュミレーション」と「シミュレーション」との対応を,読替え可能な文字列の対応の候補として抽出する。
【0008】
しかし,上述の近似文字列照合技術を利用した抽出技術では,表記が類似する文字列の対応を読替え可能な文字列の対応の候補として抽出するが,共通して取り扱いが可能である一方で全く表記が異なる文字列の対応を読替え可能な文字列の対応の候補として抽出することはできない。例えば,「○○○関連機械」という社名の会社が,「△△△カンレンシステムズ」に社名変更した場合に,上述の近似文字列照合技術を利用した抽出技術では,これらの文字列の対応を読替え可能な文字列の対応の候補として抽出することができない。
【0009】
このように,従来の方法では,表記が類似しない文字列の対応を,読替え可能な文字列の対応の候補として抽出できないため,読替え辞書作成支援の効果を上げることができない。
【0010】
一側面では,本発明は,表記が類似しない文字列同士の対応を反映させた読替え辞書を作成することを目的とする。
【課題を解決するための手段】
【0011】
1態様では,開示するプログラムは,コンピュータを次のように機能させる。すなわち,前記プログラムは,前記プログラムがインストールされて実行されるコンピュータに,第1の文字列と第2の文字列とを取得し,取得した第1の文字列と第2の文字列とから,それぞれ単語または複合語である文字列を抽出し,第1の文字列から抽出した文字列と第2の文字列から抽出した文字列との文字列の対を表示装置に表示し,表示装置に表示された文字列の対が選択された場合に,選択された文字列の対を記憶部に記憶する処理を実行させる。
【発明の効果】
【0012】
1態様では,表記が類似しない文字列同士の対応を反映させた読替え辞書を作成することができる。
【図面の簡単な説明】
【0013】
【図1】本実施の形態による読替え辞書作成支援装置の構成例を示す図である。
【図2】本実施の形態による読替え辞書作成支援装置を実現するコンピュータのハードウェア構成例を示す図である。
【図3】本実施の形態によるデータの名寄せを行うシステムの例を示す図である。
【図4】本実施の形態のシステムによる名寄せ処理フローチャートである。
【図5】本実施の形態による名寄せ対象データの例を示す図である。
【図6】本実施の形態による表記統一後の名寄せ対象データの例を示す図である。
【図7】本実施の形態による読替え辞書の例を示す図である。
【図8】本実施の形態によるホワイトリストの例を示す図である。
【図9】本実施の形態によるグレーリストの例を示す図である。
【図10】本実施の形態による名寄せ結果データの例を示す図である。
【図11】本実施の形態の解析部により処理対象の文字列をそれぞれ単語に分解した例を示す図である。
【図12】本実施の形態によるリストアップルールの例を示す図である。
【図13】本実施の形態による無視文字列リストの例を示す図である。
【図14】本実施の形態の抽出部による読替え候補抽出の例を説明する図である。
【図15】本実施の形態によるリストアップデータの例を示す図である。
【図16】本実施の形態による読替え辞書に登録する読替え可能な文字列の対応の選択画面の例(1)を示す図である。
【図17】本実施の形態による読替え辞書に登録する読替え可能な文字列の対応の選択画面の例(2)を示す図である。
【図18】本実施の形態による無視文字列選択の例を示す図である。
【図19】本実施の形態の読替え辞書作成支援装置による読替え辞書作成支援処理フローチャートである。
【図20】本実施の形態の読替え辞書作成支援装置による読替え辞書作成支援処理フローチャートである。
【発明を実施するための形態】
【0014】
以下,本実施の形態について,図を用いて説明する。
【0015】
図1は,本実施の形態による読替え辞書作成支援装置の構成例を示す図である。
【0016】
読替え辞書作成支援装置10は,ユーザによる読替え辞書の作成や更新を支援する。読替え辞書は,読替え可能な文字列の対応を記録する辞書である。読替え辞書作成支援装置10は,読替え辞書を作成する辞書作成装置の一例である。
【0017】
例えば,コンピュータを用いてデータの名寄せを行う際には,人による目視照合に頼らず,できるだけコンピュータによる機械照合で名寄せの判定を行えるようにするために,名寄せ対象データの正規化が行われる。名寄せ対象データの正規化では,読替え辞書を用いた文字列の読替えが行われ,機械照合で判定可能なデータが増やされる。
【0018】
また,例えば,データのキーワード検索を行う際に,キーワードに関係するデータをできるだけもらさずに抽出するために,キーワード文字列だけではなく,キーワードと同じまたは似た意味を持つ文字列による検索も行われる場合がある。この場合には,読替え辞書を用いてキーワード文字列の一部またはすべてを読替えした文字列による検索も行われる。
【0019】
読替え可能な文字列の対応は,目的とする処理の前に,あらかじめ読替え辞書に登録してある必要がある。汎用的な読替え可能な文字列の対応は,そのような文字列の対応が登録された読替え辞書を入手することで,すぐに処理で使用可能となる。しかし,特定のケースでしか使用されない読替え可能な文字列の対応については,ユーザがあらかじめ読替え辞書に登録しておく必要がある。また,処理の効率化を持続するために,読替え可能な文字列の対応を随時追加登録するケースも考えられる。必要な文字列の読替え関係を考えながら読替え辞書に登録していく作業は,ユーザにとって非常に手間となる。
【0020】
読替え辞書作成支援装置10は,このようなユーザによる読替え辞書への文字列の対応の登録を支援する。読替え辞書作成支援装置10は,取得部11,解析部12,抽出部13,表示部14,受付部15,登録部16,形態素辞書記憶部110,リストアップルール記憶部120,無視文字列リスト記憶部130,リストアップデータ記憶部140を備える。また,読替え辞書作成支援装置10は,ディスプレイ18等の表示装置や,キーボード・マウス19等の入力装置を備えている。
【0021】
図1において,読替え辞書記憶部100は,読替え可能な文字列の対応を記録する読替え辞書を記憶する記憶部である。読替え辞書記憶部100は,読替え辞書作成支援装置10を実現するコンピュータが備える記憶部であってもよいし,読替え辞書作成支援装置10を実現するコンピュータがアクセス可能な別のコンピュータが備える記憶部であってもよい。
【0022】
取得部11は,第1の文字列と第2の文字列とを取得する。第1の文字列と第2の文字列は,例えば,同定された2つのデータにそれぞれ含まれる文字列である。また,第1の文字列と第2の文字列は,例えば,読替え可能とされた2つの文字列である。
【0023】
例えば,企業名簿の名寄せ処理において,企業名の文字列が一致しないが,住所,代表者等の他の文字列が完全一致するため,同じ企業のデータレコードであると同定された2つのデータレコードがあるものとする。このとき,取得部11は,同定された2つのデータレコードにおける企業名の文字列を,第1の文字列,第2の文字列として取得する。
【0024】
また,例えば,ユーザは,人手で読替え辞書に読替え可能な文字列の対応を登録する際に,読替え可能とする2つの文字列を指定する。このとき,取得部11は,ユーザが読替え可能として指定した2つの文字列を,第1の文字列,第2の文字列として取得する。
【0025】
解析部12は,形態素解析により,第1の文字列と第2の文字列とをそれぞれ単語に分解する。形態素解析では,単語と品詞との対応などを記録する形態素辞書を用いた解析により,文字列が,意味を持つ最小単位の単語に分解される。解析部12は,2つの文字列に対してそれぞれ形態素解析を行い,意味を持つ最小単位の単語に分解する。形態素辞書記憶部110は,形態素辞書を記憶する記憶部である。
【0026】
抽出部13は,第1の文字列と第2の文字列とから,それぞれ単語または複合語である文字列を抽出する。また,抽出部13は,第1の文字列から抽出した文字列と第2の文字列から抽出した文字列との文字列の対を抽出する。例えば,抽出部13は,第1の文字列に含まれる単語または複合語である文字列と,第2の文字列に含まれる単語または複合語である文字列と対応を抽出する。抽出部13が抽出する文字列の対応が,読替え可能な文字列の対応の候補となる。
【0027】
このとき,抽出部13は,組合せ可能なすべての単語/複合語の対応を抽出するのではなく,所定の条件を満たす単語/複合語の対応のみを,読替え可能な文字列の対応の候補として抽出するようにしてもよい。リストアップルール記憶部120は,抽出する文字列の対応の条件が設定されたリストアップルールを記憶する記憶部である。抽出部13は,リストアップルールで設定された条件を満たす文字列の対応を抽出する。
【0028】
また,抽出部13は,特定の文字列を含む文字列の対応や,特定の文字列の対応を読替え可能な文字列の対応の候補から除外することも可能である。無視文字列リスト記憶部130は,読替えしない文字列,または読替えしない文字列の対を記録する無視文字列リストを格納する格納部である。抽出部13は,無視文字列リストに記録された文字列を含む文字列の対応,または無視文字列リストに記録された文字列の対応を抽出しない。すなわち,格納部に格納された文字列を含む文字列の対,または格納部に格納された文字列の対について,文字列の対を表示させる処理の実行が抑止される。
【0029】
抽出部13は,抽出した文字列の対応を記録したリストアップデータを,リストアップデータ記憶部140に記憶する。リストアップデータ記憶部140は,抽出部13が抽出した文字列の対応を記録したリストアップデータを記憶する記憶部である。
【0030】
表示部14は,抽出部13が抽出した文字列の対を表示装置に表示する。例えば,表示部14は,リストアップデータに記録された文字列の対応を,読替え可能な文字列の対応の候補として,ディスプレイ18に表示する。
【0031】
ユーザは,キーボード・マウス19等の入力装置を操作し,ディスプレイ18等の表示装置に表示された文字列の対応から,読替え辞書に登録する読替え可能な文字列の対応を選択する。このとき,受付部15は,表示装置に表示された文字列の対応からの,読替え可能な文字列の対応の選択を受け付ける。
【0032】
また,ユーザは,キーボード・マウス19等の入力装置を操作し,ディスプレイ18等の表示装置に表示された文字列の対応から,読替えしない文字列または読替えしない文字列の対応を選択することも可能である。このとき,受付部15は,表示装置に表示された文字列の対からの,読替えしない文字列または読替えしない文字列の対の選択を受け付ける。
【0033】
登録部16は,表示装置に表示された文字列の対が選択された場合に,選択された文字列の対を記憶部に記憶する。例えば,登録部16は,選択された読替え可能な文字列の対応を,読替え辞書記憶部100に記憶された読替え辞書に登録する。このとき,登録部16が,読替え辞書に対応を登録した文字列を,さらに形態素辞書記憶部110に記憶された形態素辞書に登録するようにしてもよい。また,読替えしない文字列または読替えしない文字列の対応が選択されている場合には,登録部16が,選択された読替えしない文字列または読替えしない文字列の対応を,無視文字列リスト記憶部130に記憶された無視文字列リストに登録するようにしてもよい。
【0034】
図2は,本実施の形態による読替え辞書作成支援装置を実現するコンピュータのハードウェア構成例を示す図である。
【0035】
図1に示す本実施の形態の読替え辞書作成支援装置10は,例えば,CPU(Central Processing Unit )2,主記憶となるメモリ3,記憶装置4,通信装置5,媒体読取・書込装置6,入力装置7,出力装置8等を備えるコンピュータ1によって実現される。記憶装置4は,例えばHDD(Hard Disk Drive )などである。媒体読取・書込装置6は,例えばCD−R(Compact Disc Recordable )ドライブやDVD−R(Digital Versatile Disc Recordable )ドライブなどである。入力装置7は,例えばキーボード・マウス19などである。出力装置8は,例えばディスプレイ18等の表示装置などである。
【0036】
図1に示す読替え辞書作成支援装置10および読替え辞書作成支援装置10が備える各機能部は,コンピュータ1が備えるCPU2,メモリ3等のハードウェアと,ソフトウェアプログラムとによって実現することが可能である。コンピュータ1が実行可能なプログラムは,記憶装置4に記憶され,その実行時にメモリ3に読み出され,CPU2により実行される。
【0037】
コンピュータ1は,可搬型記録媒体から直接プログラムを読み取り,そのプログラムに従った処理を実行することもできる。また,コンピュータ1は,サーバコンピュータからプログラムが転送されるごとに,逐次,受け取ったプログラムに従った処理を実行することもできる。さらに,このプログラムは,コンピュータ1で読み取り可能な記録媒体に記録しておくことができる。
【0038】
以下,データの名寄せで利用する読替え辞書の作成を支援する例を用いて,本実施の形態による読替え辞書作成支援の技術を説明する。データの名寄せが行われるケースとしては,例えば,企業合併時における顧客情報の統合等のデータベースの統合や,顧客マスタにおける顧客情報の重複除去等のデータベースの重複除去などがある。
【0039】
図3は,本実施の形態によるデータの名寄せを行うシステムの例を示す図である。
【0040】
図3に示すシステムは,顧客の情報を管理する顧客マスタに顧客を登録する際に,データの名寄せを行うことにより,同じ顧客が重複して登録されることを防止するシステムの例である。
【0041】
DB(DataBase)サーバ30は,顧客マスタなどのデータを管理する。DBサーバ30は,顧客データ記憶部31,アンロード部32,新規登録部33,名寄せ結果記憶部34,目視判定処理部35を備える。
【0042】
名寄せサーバ20は,DBサーバ30が管理する顧客マスタに顧客を登録する際に,同じ顧客が重複登録されることを防止するために,データの名寄せを行う。名寄せサーバ20は,読替え辞書記憶部100,名寄せ対象データ記憶部21,表記統一部22,照合部23を備える。
【0043】
読替え辞書作成支援装置10は,名寄せサーバ20において,名寄せ対象のデータを正規化する際に使用する読替え辞書の作成を支援する。読替え辞書作成支援装置10の構成は,図1に示す通りであるものとする。図3に示す例では,読替え辞書は名寄せサーバ20にある。ユーザは,読替え辞書作成支援装置10のコンピュータ1で名寄せサーバ20にアクセスし,読替え辞書作成支援装置10による支援を受けながら,名寄せサーバ20の読替え辞書記憶部100に記憶された読替え辞書の作成・更新を行う。
【0044】
ここでは,顧客マスタに登録しようとする顧客については,仮登録顧客データに情報を仮登録しておき,定期的に仮登録顧客データに仮登録された顧客の情報を顧客マスタに本登録する処理を行うものとする。このとき,仮登録された顧客がすでに顧客マスタに登録された既存の顧客であるかをチェックするために,名寄せサーバ20によってデータの名寄せ処理を行う。
【0045】
図4は,本実施の形態のシステムによる名寄せ処理フローチャートである。
【0046】
図4に示すフローチャートを用いて,DBサーバ30,名寄せサーバ20による一連の名寄せ処理の流れを説明する。
【0047】
DBサーバ30において,アンロード部32は,顧客データ記憶部31に記憶された仮登録顧客データと顧客マスタとをアンロードする(ステップS100)。アンロードとは,バイナリのデータファイルを,テキストファイルで取り出すことをいう。
【0048】
顧客データ記憶部31から取り出された仮登録顧客データと顧客マスタは,名寄せ対象データとして名寄せサーバ20に送られ,名寄せ対象データ記憶部21に記憶される。名寄せサーバ20では,仮登録顧客データを名寄せ元データとし,顧客マスタを名寄せ先データとしたデータの名寄せが行われる。以下では,仮登録顧客データを名寄せ元データとも呼び,顧客マスタを名寄せ先データとも呼ぶ。また,名寄せ元データと名寄せ先データとをまとめて名寄せ対象データと呼ぶ。
【0049】
名寄せサーバ20において,表記統一部22は,名寄せ対象データ記憶部21に記憶された名寄せ対象データ,すなわち名寄せ元データと名寄せ先データの表記統一処理を行う(ステップS101)。
【0050】
例えば,顧客データにおける各顧客の情報は,同じ顧客の情報であってもデータの入力者によって異なる文字列の表記で入力されるケースがある。例えば,同じ会社であっても,「株式会社○○○」と入力する人もいれば,「(株)○○○」と入力する人もいるといったケースが考えられる。このように,表記の統一がなされていないデータでコンピュータによる機械照合を行うと,同じ会社であっても表記文字列が異なれば違う会社であると判断されてしまう。このような状況では,機械照合の信頼性が低いため,結局は人が目視判定を行うケースが増えてしまい,名寄せのコストが高くなってしまう。
【0051】
名寄せサーバ20では,機械照合を行う前に,表記統一部22によって,名寄せ対象データの文字表記を正規化する処理を行う。表記統一部22は,所定の正規化ルールに従って,読替え辞書記憶部100に記憶された読替え辞書などを用いて,名寄せ対象データの文字表記を統一する。
【0052】
照合部23は,表記統一後の名寄せ元データの各レコードを,表記統一後の名寄せ先データの各レコードと機械照合する照合処理を行う(ステップS102)。本実施の形態の名寄せによる照合処理では,照合する名寄せ元データのレコードと名寄せ先データのレコードとの間の一致度に応じて,ホワイト,グレー,ブラックの3つの判定がなされる。
【0053】
本実施の形態では,機械照合のみで双方のレコードがそれぞれ異なる顧客のレコードであると判定することを,ブラック判定と呼ぶ。ある名寄せ元データのレコードについて,すべての名寄せ先データのレコードとの照合でブラック判定となった場合,その名寄せ元データのレコードは,新規顧客のレコードであると判定される。名寄せサーバ20は,新規顧客のレコードであると判定された名寄せ元データのレコードを,DBサーバ30に通知する。
【0054】
DBサーバ30において,新規登録部33は,名寄せサーバ20から新規顧客のレコードであると通知された名寄せ元データのレコードすなわち仮登録顧客データのレコードの情報を,新規顧客の情報として顧客マスタに登録する(ステップS103)。
【0055】
本実施の形態では,機械照合のみで双方のレコードが同じ顧客のレコードであると同定することを,ホワイト判定と呼ぶ。ホワイト判定とされた名寄せ元データのレコードは,機械照合のみで,すでに顧客マスタに登録された既存の顧客のレコードであると判断されたことになる。名寄せサーバ20は,ホワイトと判定された名寄せ元データのレコードと名寄せ先データのレコードとの組合せのリスト情報を,DBサーバ30に通知する。本実施の形態では,ホワイトと判定された名寄せ元データのレコードと名寄せ先データのレコードとの組合せのリスト情報を,ホワイトリストと呼ぶ。
【0056】
DBサーバ30は,名寄せサーバ20から受け取ったホワイトリストにあるレコードの組合せ情報を,名寄せ結果記憶部34に記憶された名寄せ結果データに記録する(ステップS104)。
【0057】
本実施の形態では,双方のレコードを同定できるかできないかを機械照合だけでは判断できないと判定することを,グレー判定と呼ぶ。グレーと判定されたレコードの名寄せ元データのレコードと名寄せ先データのレコードとの組合せについては,人による目視判定を行う必要がある。名寄せサーバ20は,グレーと判定された名寄せ元データのレコードと名寄せ先データのレコードとの組合せのリスト情報を,DBサーバ30に通知する。本実施の形態では,グレーと判定された名寄せ元データのレコードと名寄せ先データのレコードとの組合せのリスト情報を,グレーリストと呼ぶ。
【0058】
DBサーバ30において,目視判定処理部35は,名寄せサーバ20から受け取ったホワイトリストにあるレコードの組合せについて,ユーザによる目視判定についての処理を行う(ステップS105)。例えば,目視判定処理部35は,ユーザが操作する端末の表示装置にグレーリストにあるレコードの組合せを表示させ,それらのレコードを同定するかしないかをユーザに判断させる。
【0059】
目視判定処理部35は,グレーリストにあるレコードの組合せのうち,ユーザにより同定されたレコードの組合せを,名寄せ結果記憶部34に記憶された名寄せ結果データに記録する(ステップS104)。ユーザの目視判定により名寄せ先データのレコードと同定された名寄せ元データのレコードは,すでに顧客マスタに登録された既存の顧客のレコードであると判断されたことになる。
【0060】
新規登録部33は,グレーリストにあるすべての名寄せ先データのレコードとの組合せが同定されなかった名寄せ元データのレコードすなわち仮登録顧客データのレコードの情報を,新規顧客の情報として顧客マスタに登録する(ステップS103)。グレーリストにあるすべての名寄せ先データのレコードとの組合せが同定されなかった名寄せ元データのレコードは,新規顧客のレコードであると判断されたことになる。
【0061】
以下,本実施の形態によるデータ名寄せの具体的な例を説明する。
【0062】
図5は,本実施の形態による名寄せ対象データの例を示す図である。
【0063】
図5(A)は,名寄せ元データ211の例を示し,図5(B)は,名寄せ先データ212の例を示す。本実施の形態では,仮登録顧客データを顧客マスタに統合することを目的として名寄せを行うので,仮登録顧客データが名寄せ元データ211となり,顧客マスタが名寄せ先データ212となる。
【0064】
図5(A)に示す名寄せ元データ211は,仮顧客ID,名称,所在地,代表名等の情報を持つ。図5(B)に示す名寄せ先データ212は,顧客ID,名称,所在地,代表名等の情報を持つ。仮顧客ID,顧客IDは,それぞれ名寄せ元データ211,名寄せ先データ212における各顧客のレコードを一意に識別する識別情報である。名称は,顧客である法人等の組織の名称である。所在地は,顧客の所在地の住所である。代表名は,顧客である法人等の組織の代表者の名前である。
【0065】
本実施の形態の例のように,データの統合などを目的に複数のデータ間で行われる名寄せを相互名寄せと呼ぶ。これに対して,重複除去などを目的に1つのデータ内で行われる名寄せを自己名寄せと呼ぶ。自己名寄せの手法としては,例えば,同じデータが2つあると仮定し,一方を名寄せ元データとし,他方を名寄せ先データとして,相互名寄せと同じ手法で名寄せを行う手法などが考えられる。
【0066】
図6は,本実施の形態による表記統一後の名寄せ対象データの例を示す図である。
【0067】
図6(A)は,図5(A)に示す名寄せ元データ211に対する表記統一処理後の名寄せ元データ211’の例を示し,図6(B)は,図5(B)に示す名寄せ先データ212に対する表記統一処理後の名寄せ先データ212’の例を示す。図6(A)に示す名寄せ元データ211’,図6(B)に示す名寄せ先データ212’において,表記統一処理によって図5に示す各データから文字列の表記が変更された部分については,アンダーラインで示す。
【0068】
本実施の形態の表記統一部22による表記統一処理では,異体字統一,全角統一,カナ統一,住所の表記統一,法人等組織名称の正規化などの処理が行われている。
【0069】
異体字統一の処理では,異体字の表記統一が行われる。例えば,「高」という漢字には,図5(A)に示す名寄せ元データ211における仮顧客ID“X101”のレコードの代表名項目の文字列に示すような異体字が存在する。図6(A)に示す表記統一後の名寄せ元データ211’では,異体字が「高」の字に統一されている。全角統一の処理では,名称項目の文字列について,アルファベットやカタカナ,特定の記号などの,全角/半角の表記がある文字の表記を全角に統一する処理が行われる。カナ統一の処理では,名称項目の文字列について,ひらがな表記をカタカナ表記に統一する処理が行われる。住所の表記統一の処理では,所在地項目の文字列について,住所辞書などを用いて,都道府県名などの表記が省略された部分の補間や,「丁目」などの表記方法の統一等の処理が行われる。法人等組織名称の正規化では,名称項目の文字列について,法人等の組織名称の読替え辞書を用いた正規化が行われる。
【0070】
図7は,本実施の形態による読替え辞書の例を示す図である。
【0071】
図7に示す読替え辞書101は,法人等の組織名称の正規化に使用する読替え辞書の一例である。図7に示す読替え辞書101は,読替えID,読替え元文字列,読替え先文字列等の情報を持つ。読替えIDは,読替え辞書101に登録された読替え可能な文字列の対応を識別する識別情報である。読替え元文字列は,表記変更を行う対象の文字列である。読替え先文字列は,読替え元文字列を表記変更した後の文字列である。
【0072】
なお,本実施の形態では,読替え辞書を名寄せにおける表記の正規化で使用しているため,読替え辞書に登録された読替え可能な文字列の対応には,読替え元文字列から読替え先文字列へといった文字列読替えの方向性がある。例えば,キーワード検索におけるキーワードの読替えなどにおいて,文字列読替えの方向性が必要ない場合に使用する読替え辞書は,文字列読替えの方向性がない読替え可能な文字列の対応のみが登録されたものとなる。
【0073】
表記統一部22は,図5に示す名寄せ元データ211,名寄せ先データ212において,各レコードの名称項目に,読替え辞書101に登録された読替え元文字列が含まれているかをチェックする。読替え元文字列が検出された場合には,表記統一部22は,検出された読替え元文字列を,読替え辞書101において該読替え元文字列に対応付けられた読替え先文字列に置き換える。
【0074】
例えば,図5(A)に示す名寄せ元データ211において,仮顧客ID“X105”のレコードから,図7に示す読替え辞書101に登録された読替え元文字列「△△△ラボ」が検出される。表記統一部22は,検出された読替え元文字列「△△△ラボ」を,読替え辞書101において該読替え元文字列に対応付けられた読替え先文字列「△△△研究所」に表記変更する。図6(A)に示す表記統一後の名寄せ元データ211’では,仮顧客ID“X105”のレコードの名称項目の文字列が,「△△△研究所」に表記変更されている。
【0075】
照合部23は,図6(A)に示す表記統一後の名寄せ元データ211’の各レコードについて,図6(B)に示す表記統一後の名寄せ先データ212’の各レコードとの機械照合を行う。
【0076】
ここでは,名称項目の文字列が完全一致した場合には25点が,所在地項目の文字列が完全一致した場合には50点が,代表名項目の文字列が完全一致した場合には25点が一致度に加算される方式で,レコード間の一致度が求められるものとする。全項目の文字列が完全一致した場合には,一致度は100点となる。逆に,全項目の文字列が完全一致しなかった場合には,一致度は0点となる。一部項目の文字列が完全一致した場合には,完全一致した項目に応じて,一致度は25点,50点,75点のいずれかとなる。
【0077】
照合部23は,名寄せ元データ211’のレコードと名寄せ先データ212’のレコードとの一致度が100点である場合,すなわち全項目の文字列が完全一致した場合に,ホワイトと判定する。また,照合部23は,名寄せ元データ211’のレコードと名寄せ先データ212’のレコードとの一致度が50点以上で100点に満たない場合に,グレーと判定する。また,照合部23は,名寄せ元データ211’のレコードと名寄せ先データ212’のレコードとの一致度が50点未満である場合に,ブラックと判定する。
【0078】
このような一致度決定の設計や,照合結果の判定の設計については,任意の設計が可能である。
【0079】
図8は,本実施の形態によるホワイトリストの例を示す図である。
【0080】
図8に示すホワイトリスト231は,図6に示す名寄せ元データ211’と名寄せ先データ212’との照合で,ホワイト判定とされたレコードの組合せのリストである。ホワイトリスト231には,ホワイト判定とされた名寄せ元データ211’のレコードの仮顧客IDと,名寄せ先データ212’のレコードの顧客IDとの組合せが示されている。
【0081】
例えば,図6に示す名寄せ対象データの例において,仮顧客ID“X102”のレコードと顧客ID“Y353”のレコードとの一致度は100点であるので,機械照合の判定結果はホワイト判定となる。同様に,仮顧客ID“X105”のレコードと顧客ID“Y356”のレコードとの一致度は,100点であるので,機械照合の判定結果はホワイト判定となる。ホワイトリスト231には,仮顧客ID“X102”と顧客ID“Y353”の対応と,仮顧客ID“X105”と顧客ID“Y356”との対応がリストアップされる。
【0082】
図9は,本実施の形態によるグレーリストの例を示す図である。
【0083】
図9に示すグレーリスト232は,図6に示す名寄せ元データ211’と名寄せ先データ212’との照合で,グレー判定とされたレコードの組合せのリストである。グレーリスト232には,グレー判定とされた名寄せ元データ211’のレコードの仮顧客IDと,名寄せ先データ212’のレコードの顧客IDとの組合せが示されている。
【0084】
例えば,図6に示す名寄せ対象データの例において,仮顧客ID“X101”のレコードと顧客ID“Y354”のレコードとの一致度は75点であるので,機械照合の判定結果はグレー判定となる。同様に,仮顧客ID“X104”のレコードと顧客ID“Y354”のレコードとの一致度は,50点であるので,機械照合の判定結果はグレー判定となる。グレーリスト232には,仮顧客ID“X101”と顧客ID“Y354”の対応と,仮顧客ID“X104”と顧客ID“Y354”との対応がリストアップされる。
【0085】
図10は,本実施の形態による名寄せ結果データの例を示す図である。
【0086】
図10に示す名寄せ結果データ341は,図6に示す表記統一された名寄せ対象データにおいて,ホワイト判定とされたレコードの組合せと,グレー判定とされたレコードの組合せのうちユーザに同定された組合せとが記録されたデータの例である。名寄せ結果データ341には,同定された名寄せ元データ211’のレコードの仮顧客IDと,名寄せ先データ212’のレコードの顧客IDとの対応が示されている。
【0087】
DBサーバ30において,名寄せ結果データ341は,IDの付け替えやジャーナルの洗い替えなどに使用される。
【0088】
このような名寄せの結果に基づいて,読替え辞書101に登録する読替え可能な文字列の対応の候補を生成して提示することで,本実施の形態の読替え辞書作成支援装置10は,ユーザによる読替え辞書101への読替え可能な文字列の対応の登録を支援する。以下では,その具体的な例を挙げて,本実施の形態の読替え辞書作成支援装置10による読替え辞書作成支援処理の説明を行う。
【0089】
読替え辞書作成支援装置10において,取得部11は,名寄せにより同定されたレコードにそれぞれ含まれる文字列を取得する。
【0090】
例えば,取得部11は,DBサーバ30の名寄せ結果記憶部34の名寄せ結果データ341を読み出す。ここでは,図10に示す名寄せ結果データ341が得られる。
【0091】
取得部11は,名寄せ結果データ341に記録された名寄せで同定された各レコードの組合せについて,名寄せサーバ20の名寄せ対象データ記憶部21に記憶された名寄せ元データ211’,名寄せ先データ212’から,それぞれ読替え対象項目の文字列を抽出する。本実施の形態では,図7に示す法人等の組織名称の読替え辞書101の作成支援を行うため,図6に示す名寄せ元データ211’,名寄せ先データ212’から,それぞれ該当レコードの名称項目の文字列を抽出する。抽出された2つの文字列が異なる場合,取得部11は,その文字列の組合せを,読替え辞書作成支援の処理の対象となる文字列の組合せとして取得する。
【0092】
以下では,名寄せ元データ211’から取得された文字列を名寄せ元文字列,名寄せ先データ212’から取得された文字列を名寄せ先文字列と呼ぶ。例えば,名寄せ元文字列が第1の文字列の一例であり,名寄せ先文字列が第2の文字列の一例である。
【0093】
例えば,図10に示す名寄せ結果データにおける仮顧客ID“X101”と顧客ID“Y354”との組合せから,名寄せ元文字列「FALサービス」と名寄せ先文字列「富士山航空サービス」との組合せが取得される。また,仮顧客ID“X104”と顧客ID“Y354”との組合せから,名寄せ元文字列「FALフード」と名寄せ先文字列「富士山航空サービス」との組合せが取得される。なお,仮顧客ID“X102”と顧客ID“Y353”の組合せや仮顧客ID“X105”と顧客ID“Y356”の組合せについては,双方のレコードの名称項目の文字列が完全一致するので,異なる文字列の組合せは取得できない。
【0094】
名寄せで同定されたレコード間で同じ項目の文字列同士の表記が異なる場合には,それらの文字列間の表記の類似性が高くなくても,それらの文字列間で読替えできる可能性が高い。名寄せで同定されたレコードに含まれる文字列から,処理対象の文字列の組合せを取得することで,表記が類似しない文字列の対応を,読替え可能な文字列の対応の候補とすることが可能となる。
【0095】
解析部12は,形態素辞書記憶部110に記憶された形態素辞書を用いた形態素解析により,取得部11により取得された各文字列を,それぞれ単語に分解する。形態素解析や形態素辞書については,一般に広く知られた技術であるので,ここでは詳細な説明を省略する。
【0096】
図11は,本実施の形態の解析部により処理対象の文字列をそれぞれ単語に分解した例を示す図である。
【0097】
図11(A)は,形態素解析によって,名寄せ元文字列「FALサービス」と名寄せ先文字列「富士山航空サービス」とを単語に分解した例を示す。図11(B)は,形態素解析によって,名寄せ元文字列「FALフード」と名寄せ先文字列「富士山航空サービス」とを単語に分解した例を示す。
【0098】
抽出部13は,名寄せ元文字列に含まれる単語または複合語である文字列と,名寄せ先文字列に含まれる単語または複合語である文字列との組合せから,読替え可能な文字列の対応の候補を抽出する。抽出された読替え可能な文字列の対応の候補において,名寄せ元文字列に含まれる単語または複合語である文字列は,読替え元文字列の候補となり,名寄せ先文字列に含まれる単語または複合語である文字列は,読替え先文字列の候補となる。なお,以下では,読替え可能な文字列の対応の候補を,読替え候補とも呼ぶ。
【0099】
このとき,抽出部13は,リストアップルール記憶部120に記憶されたリストアップルールの設定情報に従って,設定されたリストアップルールの条件を満たす文字列の対応を,読替え候補として抽出する。
【0100】
図12は,本実施の形態によるリストアップルールの例を示す図である。
【0101】
図12に示すリストアップルールにおいて,ルール1は,対応する2つの文字列の少なくとも一方が単独の一般名詞である場合に,その文字列の対応を読替え候補としないという条件を示している。例えば,法人名等の組織名称の読替えでは,読替えの一方の文字列が単独の一般名詞であるケースは少ない。このような場合には,ルール1をONに設定することで,読替え候補の絞り込みができる。
【0102】
図12に示すリストアップルールにおいて,ルール2は,名寄せ元文字列と名寄せ先文字列とをそのまま置き換えるパターンも読替え候補とするという条件を示している。例えば,図11(A)に示すように,名寄せ元文字列と名寄せ先文字列との間で一部の単語が一致している場合には,一致する単語を除いた部分で,文字列の読替えが可能ではないかと推定される。そのため,本実施の形態では,原則として,名寄せ元文字列と名寄せ先文字列とから一致する単語を除いた部分で,読替え候補の抽出を行うものとしている。一部の単語が一致している場合でも,名寄せ元文字列と名寄せ先文字列とをそのまま置き換えるパターンを読替え候補としたい場合には,ルール2をONに設定する。
【0103】
図12に示すリストアップルールにおいて,ルール3は,無視文字列リスト記憶部130に記憶された無視文字列リストを使用し,無視文字列リストに登録された文字列を含む文字列の対応,または登録された文字列の対応を読替え候補としないという条件を示している。無視文字列リストを使用する場合には,ルール3をONにする。
【0104】
図13は,本実施の形態による無視文字列リストの例を示す図である。
【0105】
図13に示す無視文字列リスト131は,読替えしない文字列または読替えしない文字列の対応を記録する無視文字列リストの一例である。無視文字列リスト131は,無視文字列ID,読替え元文字列,読替え先文字列の情報を持つ。無視文字列IDは,読替えしない文字列の対応を一意に識別する識別情報である。図13に示す無視文字列リスト131の例では,読替え元文字列と読替え先文字列との対応ごとに読替えしない文字列の対応が記録されている。なお,図13に示す無視文字列リスト131において,(NUL)は空であることを示す。
【0106】
無視文字列リスト131において,例えば,無視文字列ID“Z001”のレコードは,読替え先文字列に関係なく,読替え元文字列が「ABC」となる文字列の対応を,読替え候補としないことを示している。また,無視文字列ID“Z002”のレコードは,読替え元文字列に関係なく,読替え先文字列が「ABC」となる文字列の対応を,読替え候補としないことを示している。また,無視文字列ID“Z003”のレコードは,文字列の対応が読替え元文字列が「FJ」でかつ読替え先文字列が「富士」となる場合に,その文字列の対応を読替え候補としないことを示している。
【0107】
図13に示す無視文字列リスト131の例は,読替え元文字列と読替え先文字列との対応ごとに読替えしない文字列の対応を記録するリスト情報となっている。無視文字列リストが,読替え元文字列や読替え先文字列に関係なく,読替えしない文字列や,読替えしない文字列の対応を記録するリスト情報であってもよい。
【0108】
図14は,本実施の形態の抽出部による読替え候補抽出の例を説明する図である。
【0109】
図14(A)は,名寄せ元文字列「FALサービス」と名寄せ先文字列「富士山航空サービス」との組合せについて,読替え候補を抽出する例を説明する図である。図14(B)は,名寄せ元文字列「FALフード」と名寄せ先文字列「富士山航空サービス」との組合せについて,読替え候補を抽出する例を説明する図である。図14において,矢印の左側が,名寄せ元文字列に含まれる単語または複合語を示し,矢印の右側が,名寄せ先文字列に含まれる単語または複合語を示す。なお,ここでは,図12に示すリストアップルールについては,すべてのルールの設定がONになっているものとする。
【0110】
名寄せ元文字列「FALサービス」と名寄せ先文字列「富士山航空サービス」との組合せについては,図11(A)に示す形態素解析の結果から,双方の文字列が最後尾に「サービス」という共通の単語を持つことが分かる。このような名寄せ元文字列と名寄せ先文字列との関係性を解析すると,双方の文字列から「サービス」の単語を除いた,「FAL」と「富士山」+「航空」との関係性が抽出される。
【0111】
このような関係性から,名寄せ元文字列に含まれる単語または複合語と,名寄せ先文字列に含まれる単語または複合語とを組み合わせると,図14(A)の(1)〜(3)に示す3通りの文字列の対応が得られる。図12に示すリストアップルールのルール3から,図14(A)の(4)に示す文字列の対応が候補に加えられる。
【0112】
図14(A)に示す文字列の対応のうち,(1)と(2)に示す文字列の対応は,読替え先文字列が単独の一般名詞となってしまうので,図12に示すリストアップルールのルール1の条件から,読替え候補として抽出されない。なお,図14(A)に示す文字列の対応には,図13に示す無視文字列リスト131に該当する文字列の対応はない。
【0113】
よって,図14(A)に示す文字列の対応のうち,読替え候補となるのは,(3),(4)に示す2通りの文字列の対応である。名寄せ元文字列「FALサービス」と名寄せ先文字列「富士山航空サービス」との組合せについて,抽出される読替え候補のグループは,
(1−1) FAL → 富士山航空
(1−2) FALサービス → 富士山航空サービス
となる。
【0114】
名寄せ元文字列「FALフード」と名寄せ先文字列「富士山航空サービス」との組合せについては,図11(B)に示す形態素解析の結果から,双方の文字列に共通する文字列がないことが分かる。名寄せ元文字列と名寄せ先文字列との関係性を解析すると,「FAL」+「フード」と「富士山」+「航空」+「サービス」との関係性が抽出される。
【0115】
このような関係性から,名寄せ元文字列に含まれる単語または複合語と,名寄せ先文字列に含まれる単語または複合語とを組み合わせると,図14(B)の(1)〜(18)に示す18通りの文字列の対応が得られる。
【0116】
図14(B)に示す文字列の対応のうち,(7)〜(12)に示す文字列の対応は,読替え元文字列が単独の一般名詞となってしまうので,図12に示すリストアップルールのルール1の条件から,読替え候補として抽出されない。また,図14(B)に示す文字列の対応のうち,(1)〜(3),(7)〜(9),(13)〜(15)に示す文字列の対応は,読替え先文字列が単独の一般名詞となってしまうので,図12に示すリストアップルールのルール1の条件から,読替え候補として抽出されない。なお,図14(B)に示す文字列の対応には,図13に示す無視文字列リスト131に該当する文字列の対応はない。
【0117】
よって,図14(B)に示す文字列の対応のうち,読替え候補となるのは,(4)〜(6),(16)〜(18)に示す6通りの文字列の対応である。名寄せ元文字列「FALフード」と名寄せ先文字列「富士山航空サービス」との組合せについて,抽出される読替え候補のグループは,
(2−1) FAL → 富士山航空
(2−2) FAL → 航空サービス
(2−3) FAL → 富士山航空サービス
(2−4) FALフード → 富士山航空
(2−5) FALフード → 航空サービス
(2−6) FALフード → 富士山航空サービス
となる。
【0118】
抽出部13は,抽出された読替え候補を,リストアップデータ記憶部140に記憶されたリストアップデータに記録する。
【0119】
図15は,本実施の形態によるリストアップデータの例を示す図である。
【0120】
図15に示すリストアップデータ141は,抽出部により抽出された読替え候補のデータが,マークアップ形式で記述されたデータの例を示す。図15に示すリストアップデータ141には,グループid=1のグループとして,名寄せ元文字列「FALサービス」と名寄せ先文字列「富士山航空サービス」との組合せから得られた読替え候補が記録されている。さらに,図15に示すリストアップデータ141には,グループid=2のグループとして,名寄せ元文字列「FALフード」と名寄せ先文字列「富士山航空サービス」との組合せから得られた読替え候補が記録されている。
【0121】
表示部14は,リストアップデータ記憶部140に記憶されたリストアップデータ141を参照し,抽出された読替え候補をディスプレイ18に表示する。
【0122】
図16は,本実施の形態による読替え辞書に登録する読替え可能な文字列の対応の選択画面の例(1)を示す図である。
【0123】
図16に示す選択画面181は,図15に示すリストアップデータ141におけるグループid=1のグループについて,読替え候補が提示された画面の一例である。
【0124】
グループid=1のグループは,名寄せ元文字列「FALサービス」と名寄せ先文字列「富士山航空サービス」との組合せについて抽出された読替え候補のグループである。選択画面181には,読替え候補の抽出元となった名寄せ元文字列「FALサービス」と名寄せ先文字列「富士山航空サービス」とが提示されている。
【0125】
選択画面181において,読替え文字列の選択欄には,抽出された読替え候補の一覧が提示される。選択画面181では,グループid=1のグループの2つの読替え候補が,読替え文字列の選択欄に提示されている。
【0126】
読替え文字列の選択欄において,読替え結果には,名寄せ元文字列を読替え候補を用いて読替えした結果が示される。図16に示す選択画面181の読替え結果の文字列において,アンダーラインが引かれた部分が,名寄せ元文字列から読替え候補によって読替えされた部分である。
【0127】
選択画面181に,読替え候補抽出の元となったデータを提示することも可能である。図16に示す選択画面181において,名寄せ元/先情報の例示欄には,名寄せ元文字列が取得された元の名寄せ元データ211’のレコードと,名寄せ先文字列が取得された元の名寄せ先データ212’のレコードとが提示される。選択画面181に提示されたこれらのレコードは,名寄せで同定されたレコードである。このように,読替え候補抽出の元となったデータを,読替え候補とともに選択画面181に提示することで,ユーザは,読替え候補が読替え可能な文字列の対応として適切であるか否かを判断し易くなる。
【0128】
ユーザは,キーボード・マウス19を操作して読替え候補の登録欄のチェックボックスにチェックを入れることで,読替え辞書101に登録したい読替え可能な文字列の対応を選択する。受付部15は,キーボード・マウス19を用いたユーザによる読替え辞書101に登録したい読替え可能な文字列の対応の選択を受け付ける。
【0129】
選択画面181において,ユーザが“次へ”のボタンを選択すると,登録部16は,ユーザに選択された文字列の対応を仮登録する処理を行う。表示部14は,次のグループの読替え候補についての選択画面に移る。
【0130】
本実施の形態の例では,複数の名寄せ結果のデータの組合せから得られた読替え候補についてまとめて処理を行っているので,グループごとの処理で,選択された文字列の対応を仮登録用のデータに仮登録しておく。登録部16は,処理対象のすべてのグループについて処理が終了したところで仮登録用のデータをコミットし,読替え辞書記憶部100に記憶された読替え辞書101に対する読替え可能な文字列の対応の本登録を行う。
【0131】
表示部14が,リストアップデータ141に記録された読替え候補から,さらに提示する読替え候補を選別してディスプレイ18に表示するようにしてもよい。表示する読替え候補の選別の条件としては,例えば次のような条件が考えられる。
【0132】
a)読替え辞書101に登録済みである文字列の対応と読替え元文字列が同じで読替え先文字列が異なる読替え候補は,ディスプレイ18に表示する読替え候補から除外される。読替え辞書101に登録済みである文字列の対応には,仮登録された文字列の対応も含まれるものとする。
【0133】
b)読替え結果が名寄せ先名称と異なる読替え候補は,ディスプレイ18に表示する読替え候補から除外される。
【0134】
例えば,本実施の形態の名寄せのように,文字列を正規化する場合には,複数の異なる表記の文字列を,決まった1つの表記に変換する処理が行われる。このような文字列の正規化を目的として使用する読替え辞書101では,1つの読替え元文字列に対応付けられる読替え先文字列は,1つとなる。a)の条件により,1つの読替え元文字列に対して複数の読替え先文字列が読替え辞書101に登録されることを防止することができる。
【0135】
上記のグループid=2のグループにおいて,
(2−1) FAL → 富士山航空
(2−2) FAL → 航空サービス
(2−3) FAL → 富士山航空サービス
の読替え候補については,グループid=1の処理で仮登録された文字列の対応と,読替え文字列「FAL」が一致する。このうち,(2−1)の読替え候補については,読替え先文字列「富士山航空」についても仮登録された文字列の対応と一致するが,(2−2),(2−3)の読替え候補については,読替え先文字列が仮登録された文字列の対応と一致しない。a)の条件でディスプレイ18に表示する読替え候補の選別が行われる場合には,(2−2),(2−3)の読替え候補は,ディスプレイ18に表示する読替え候補から除外される。
【0136】
また,例えば,読替え結果が名寄せ先名称と異なる読替え候補を読替え辞書101に登録しても,その読替え候補の元となった名寄せ元文字列を名寄せ先文字列に読替えすることはできない。そのため,読替え結果が名寄せ先名称と異なる読替え候補は,読替え可能な文字列の対応として不適切である可能性が高い。b)の条件により,このような読替え可能な文字列の対応として不適切である可能性が高い読替え候補が読替え辞書101に登録されることを防止することができる。
【0137】
上記のグループid=2のグループにおいて,
(2−4) FALフード → 富士山航空
(2−5) FALフード → 航空サービス
の読替え候補について,読替え結果は,
(2−4) 富士山航空
(2−5) 航空サービス
となる。これらの読替え結果は,名寄せ先文字列「富士山航空サービス」とは異なる。b)の条件でディスプレイ18に表示する読替え候補の選別が行われる場合には,(2−4),(2−5)の読替え候補は,ディスプレイ18に表示する読替え候補から除外される。
【0138】
図17は,本実施の形態による読替え辞書に登録する読替え可能な文字列の対応の選択画面の例(2)を示す図である。
【0139】
図17に示す選択画面182は,図15に示すリストアップデータ141におけるグループid=2のグループについて,読替え候補が提示された画面の一例である。グループid=2のグループは,名寄せ元文字列「FALフード」と名寄せ先文字列「富士山航空サービス」との組合せについて抽出された読替え候補のグループである。
【0140】
図17に示す選択画面182をディスプレイ18に表示する際に,表示部14は,上記のa),b)の条件で表示する読替え候補の選定を行ったものとする。上述のように,a),b)を用いた読替え候補の選定により,グループid=2のグループの6つの読替え候補のうち,(2−2)〜(2−5)の4つの読替え候補が,表示する読替え候補から除外される。選択画面182の読替え文字列の選択欄には,グループid=2のグループの6つの読替え候補のうち,(2−1),(2−6)の2つの読替え候補が提示される。
【0141】
選択画面182の読替え文字列の選択欄のNo.“1”に提示された(2−1)の読替え候補は,グループid=1のグループの処理ですでに仮登録された文字列の対応と同じである。そのため,図17に示すように,選択画面182では,この読替え候補の登録欄のチェックボックスがチェック済みとなっている。例えば,このチェック済みのチェックボックスは,ユーザによる通常の選択操作で設定変更できないようになっている。
【0142】
また,選択画面182の読替え文字列の選択欄において,(2−6)の読替え候補が提示されたNo.“2”の所に,「!」の警告が示されている。これは,共通の単語を全く含まない名寄せ元文字列「FALフード」と名寄せ先文字列「富士山航空サービス」との対応が,そのまま読替え元文字列と読替え先文字列との対応となっていることを警告したものである。
【0143】
共通の単語を全く含まない名寄せ元文字列と名寄せ先文字列との対応は,共通の単語を含む名寄せ元文字列と名寄せ先文字列との対応と比較して,文字列間の関係性が低いため,読替え可能とすべきでない文字列の対応である可能性が高くなるケースがある。例えば,法人名などの組織名称のケースでは,名称の一部を略称することが多々見られる。このようなケースでは,共通の単語を含む名寄せ元文字列と名寄せ先文字列との対応が,略称を含む名称と正式名称との対応である可能性が高い。これに対して,共通の単語を全く含まない名寄せ元文字列と名寄せ先文字列との対応は,文字列間の関係性が低いため,どちらかがどちらかの略称である可能性が低い。
【0144】
図17に示す選択画面182の例では,読替え候補が共通の単語を全く含まない名寄せ元文字列と名寄せ先文字列との対応である場合に警告することで,ユーザに対する注意喚起を行っている。
【0145】
処理対象のすべてのグループについて処理が終了したところで,登録部16は,ユーザに選択された読替え可能な文字列の対応を,読替え辞書記憶部100に記憶された読替え辞書101に登録する。
【0146】
このとき,読替え辞書101に登録した文字列を,形態素辞書記憶部110に記憶された形態素辞書に登録するようにしてもよい。読替え辞書101に登録した文字列を,形態素辞書に登録することで,以後の形態素解析による単語の解析精度を効果的に高めることが可能となる。
【0147】
例えば,登録部16が,図16に示す「FAL」→「富士山航空」の対応と,「FALサービス」→「富士山航空サービス」との対応を読替え辞書101に登録したものとする。このとき,登録部16は,さらにこれらの文字列「FAL」,「富士山航空」,「FALサービス」,「富士山航空サービス」を,形態素辞書記憶部110に記憶された形態素辞書に,固有名詞で登録する。
【0148】
図16に示す選択画面181や,図17に示す選択画面182において,ユーザは,無視文字列リスト131に登録する読替えしない文字列または読替えしない文字列の対応を選択することができる。以下では,読替えしない文字列や,読替えしない文字列の対応を無視文字列とも呼ぶ。
【0149】
図18は,本実施の形態による無視文字列選択の例を示す図である。
【0150】
図18(A),図18(B)は,図17に示す選択画面182の読替え文字列の選択欄で,ユーザが無視文字列の選択を行う例を示す。図18(A)は,無視文字列として読替えしない文字列を選択する例を示し,図18(B)は,無視文字列として読替えしない文字列の対応を選択する例を示す。
【0151】
例えば,図18(A)に示すように,ユーザは,読替え元文字列欄において文字列「FAL」を指定した状態でコンテキストメニューを開き,「読替え元を無視する」を選択する。受付部15は,ユーザによる無視文字列の選択を受け付ける。ここでは,無視文字列は,読替え元文字列の「FAL」となる。登録部16は,上述の読替え辞書101への登録の場合と同様に,選択された無視文字列を,無視文字列仮登録用のデータに仮登録しておく。
【0152】
また,例えば,図18(B)に示すように,ユーザは,読替え元文字列と読替え先文字列欄において,文字列「FALフード」と「富士山航空サービス」とを同時に指定した状態でコンテキストメニューを開き,「ペアを無視する」を選択する。受付部15は,ユーザによる無視文字列の選択を受け付ける。ここでは,無視文字列は,読替え元文字列「FALフード」と読替え先文字列「富士山航空サービス」との対応となる。登録部16は,選択された無視文字列を,無視文字列仮登録用のデータに仮登録しておく。
【0153】
登録部16は,処理対象のすべてのグループについて処理が終了したところで無視文字列仮登録用のデータをコミットし,無視文字列リスト記憶部130に記憶された無視文字列リスト131に対する無視文字列の本登録を行う。
【0154】
このように,今後読替えを行わない文字列を指定して無視文字列リスト131に登録し,以後の抽出部13による処理の段階で抽出される読替え候補を減らすことで,以後の読替え候補の選択判断時におけるユーザの作業量を減らすことが可能となる。
【0155】
図19,図20は,本実施の形態の読替え辞書作成支援装置による読替え辞書作成支援処理フローチャートである。
【0156】
読替え辞書作成支援装置10において,取得部11は,名寄せ結果に基づいて,名寄せにより同定された名寄せ元データ211’のレコードと名寄せ先データ212’のレコードとから,名寄せ元文字列と名寄せ先文字列とを取得する(ステップS10)。
【0157】
解析部12は,形態素辞書記憶部110に記憶された形態素辞書を用いた形態素解析により,取得された名寄せ元文字列と名寄せ先文字列とを,それぞれ単語に分解する(ステップS11)。
【0158】
抽出部13は,名寄せ元文字列に含まれる単語または複合語である文字列と,名寄せ先文字列に含まれる単語または複合語である文字列との組合せから,読替え候補を抽出する(ステップS12)。このとき,抽出部13は,リストアップルール記憶部120に記憶されたリストアップルールの設定情報に従って,無視文字列リスト記憶部130に記憶された無視文字列リスト131を利用するなどして,読替え候補の抽出を行う。抽出された読替え候補は,リストアップデータ記憶部140に記憶されたリストアップデータ141に記録される。
【0159】
なお,ここまでの処理は,複数の名寄せ結果について行われ,複数のグループの名寄せ結果がリストアップデータ141に記録されるものとする。
【0160】
表示部14は,リストアップデータ記憶部140に記憶されたリストアップデータ141から,読替え候補のグループを1つ選択する(ステップS13)。表示部14は,選択されたグループに含まれる読替え候補を所定の条件で選別し(ステップS14),表示するとされた読替え候補を,ディスプレイ18の画面に表示する(ステップS15)。受付部15は,ディスプレイ18の画面に対する,キーボード・マウス19を用いたユーザの入力を受け付ける(ステップS16)。
【0161】
登録部16は,ユーザにより読替え候補の登録が選択されたかを判定する(ステップS17)。読替え候補の登録が選択されていれば(ステップS17のYES),登録部16は,選択された読替え候補を,読替え辞書101の仮登録データに仮登録する(ステップS18)。
【0162】
登録部16は,ユーザにより無視文字列が選択されたかを判定する(ステップS19)。無視文字列が選択されていれば(ステップS19のYES),登録部16は,選択された無視文字列を,無視文字列リスト131の仮登録データに仮登録する(ステップS20)。
【0163】
読替え辞書作成支援装置10は,リストアップデータ141のすべてのグループについて処理が終了したかを判定する(ステップS21)。すべてのグループについてまだ処理が終了していなければ(ステップS21のNO),読替え辞書作成支援装置10は,ステップS13の処理に戻り,次のグループの処理に移る。
【0164】
すべてのグループについて処理が終了していれば(ステップS21のYES),登録部16は,仮登録のデータをコミットする(ステップS22)。読替え辞書101の仮登録データに仮登録された読替え候補が,読替え辞書記憶部100に記憶された読替え辞書101に本登録される。また,無視文字列リスト131の仮登録データに仮登録された無視文字列が,無視文字列リスト記憶部130に記憶された無視文字列リスト131に本登録される。
【0165】
登録部16は,読替え辞書101に登録された読替え候補の文字列を,形態素辞書記憶部110に記憶された形態素辞書に登録する(ステップS23)。
【0166】
ここまでの本実施の形態による読替え辞書作成支援処理の説明では,複数の名寄せ結果についてまとめて処理を行う例を説明したが,1つの名寄せ結果ごとに読替え辞書作成支援処理を行うようにしてもよい。例えば,ユーザがグレー判定のレコードの組合せを同定するたびに,その結果について読替え辞書作成支援処理を行うようにしてもよい。
【0167】
このような読替え辞書作成支援処理を定期的に実行することにより,名寄せにおける機械照合の精度が上がるため,グレー判定の件数や誤った判定の件数を減少させることが可能となる。これにより,目視確認をするユーザの手間も減少する。
【0168】
また,名寄せ結果を用いて読替え辞書作成の支援を行うことにより,名寄せの環境に応じた適切な読替え辞書101の作成が可能となる。
【0169】
以上説明した本実施の形態の読替え辞書作成支援装置10によって,表記が類似しない文字列の対応や,文字列に含まれる単語や複合語の対応からでも,読替え可能な文字列の対応の候補を抽出することが可能となり,読替え辞書作成支援の効果が向上する。
【0170】
以上,本実施の形態について説明したが,本発明はその主旨の範囲において種々の変形が可能であることは当然である。
【0171】
例えば,本実施の形態では,読替え辞書作成支援の技術を法人等の組織名称の読替え辞書の作成支援に適用する例を説明したが,商品名や情報技術用語など他の様々な分野の読替え辞書の作成支援にも,当然適用可能である。
【0172】
また,例えば,本実施の形態では,主に名寄せの結果から取得した文字列で読替え辞書の作成支援を行う例を説明したが,これに限るものではない。例えば,ユーザが手入力で読替え可能な文字列の対応を読替え辞書に登録する際に,本実施の形態による読替え辞書作成支援の技術によって,ユーザが入力した文字列に含まれる単語または複合語の対応を読替え候補としてユーザに提示する支援を行うこともできる。
【0173】
また,例えば,本実施の形態では,主に名寄せで用いる読替え辞書の作成支援の例を説明したが,これに限るものではない。例えば,キーワード検索におけるキーワード文字列の読替えに用いる読替え辞書の作成支援に,本実施の形態による読替え辞書作成支援の技術を適用することも可能である。
【符号の説明】
【0174】
10 読替え辞書作成支援装置
11 取得部
12 解析部
13 抽出部
14 表示部
15 受付部
16 登録部
18 ディスプレイ
19 キーボード・マウス
100 読替え辞書記憶部
110 形態素辞書記憶部
120 リストアップルール記憶部
130 無視文字列リスト記憶部
140 リストアップデータ記憶部
20 名寄せサーバ
21 名寄せ対象データ記憶部
22 表記統一部
23 照合部
30 DBサーバ
31 顧客データ記憶部
32 アンロード部
33 新規登録部
34 名寄せ結果記憶部
35 目視判定処理部

【特許請求の範囲】
【請求項1】
コンピュータに,
第1の文字列と第2の文字列とを取得し,
取得した前記第1の文字列と前記第2の文字列とから,それぞれ単語または複合語である文字列を抽出し,
前記第1の文字列から抽出した文字列と前記第2の文字列から抽出した文字列との文字列の対を表示装置に表示し,
前記表示装置に表示された前記文字列の対が選択された場合に,選択された前記文字列の対を記憶部に記憶する
処理を実行させることを特徴とする辞書作成プログラム。
【請求項2】
前記コンピュータに,さらに,
前記記憶部に記憶した文字列を,形態素辞書に登録する
処理を実行させるための請求項1に記載の辞書作成プログラム。
【請求項3】
前記コンピュータに,さらに,
前記表示装置に表示された文字列の対からの,読替えしない文字列または読替えしない文字列の対の選択を受け付け,
選択された読替えしない文字列または読替えしない文字列の対を,格納部に格納し,
前記格納部に格納された文字列を含む文字列の対,または前記格納部に格納された文字列の対について,前記文字列の対を表示させる処理の実行を抑止する
処理を実行させることを特徴とする請求項1または請求項2に記載の辞書作成プログラム。
【請求項4】
前記第1の文字列は,名寄せ元のデータに含まれる文字列であり,
前記第2の文字列は,前記名寄せ元のデータと同定された名寄せ先のデータに含まれる文字列であり,
前記文字列の対は,前記第1の文字列から抽出した文字列を読替え元の文字列とし,前記第2の文字列から抽出した文字列を読替え先の文字列とする,読替え元の文字列と読替え先の文字列との対である
ことを特徴とする請求項1から請求項3までのいずれかに記載の辞書作成プログラム。
【請求項5】
前記文字列の対を表示装置に表示する処理では,さらに同定された前記名寄せ元のデータと前記名寄せ先のデータとを前記表示装置に表示する
ことを特徴とする請求項4に記載の辞書作成プログラム。
【請求項6】
第1の文字列と第2の文字列とを取得する取得部と,
前記第1の文字列と前記第2の文字列とから,それぞれ単語または複合語である文字列を抽出する抽出部と,
前記第1の文字列から抽出した文字列と前記第2の文字列から抽出した文字列との文字列の対を表示装置に表示する表示部と,
前記表示装置に表示された前記文字列の対が選択された場合に,選択された前記文字列の対を記憶部に記憶する登録部とを備える
ことを特徴とする辞書作成装置。
【請求項7】
コンピュータが,
第1の文字列と第2の文字列とを取得し,
取得した前記第1の文字列と前記第2の文字列とから,それぞれ単語または複合語である文字列を抽出し,
前記第1の文字列から抽出した文字列と前記第2の文字列から抽出した文字列との文字列の対を表示装置に表示し,
前記表示装置に表示された前記文字列の対が選択された場合に,選択された前記文字列の対を記憶部に記憶する過程を実行する
ことを特徴とする辞書作成方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate


【公開番号】特開2013−65068(P2013−65068A)
【公開日】平成25年4月11日(2013.4.11)
【国際特許分類】
【出願番号】特願2011−201853(P2011−201853)
【出願日】平成23年9月15日(2011.9.15)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】