(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-19
(45)【発行日】2024-03-28
(54)【発明の名称】類似度算出装置、類似度算出プログラム、および、類似度算出方法
(51)【国際特許分類】
G06F 40/247 20200101AFI20240321BHJP
【FI】
G06F40/247
(21)【出願番号】P 2020033191
(22)【出願日】2020-02-28
【審査請求日】2022-12-19
(73)【特許権者】
【識別番号】000207551
【氏名又は名称】株式会社SCREENホールディングス
(74)【代理人】
【識別番号】100088672
【氏名又は名称】吉竹 英俊
(74)【代理人】
【識別番号】100088845
【氏名又は名称】有田 貴弘
(72)【発明者】
【氏名】梅原 光規
(72)【発明者】
【氏名】粕渕 清孝
(72)【発明者】
【氏名】宮井 清孝
(72)【発明者】
【氏名】吉田 明子
(72)【発明者】
【氏名】北村 一博
(72)【発明者】
【氏名】寺田 万理
【審査官】長 由紀子
(56)【参考文献】
【文献】特開2017-167851(JP,A)
【文献】特開2006-092316(JP,A)
【文献】米国特許出願公開第2013/0006975(US,A1)
【文献】米国特許出願公開第2018/0089300(US,A1)
【文献】米国特許出願公開第2007/0078849(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 40/00-58
G06F 16/00-958
(57)【特許請求の範囲】
【請求項1】
複数の同義語グループ間の類似度を算出する類似度算出装置であり、
それぞれの前記同義語グループは、互いに同義語である複数の単語からなり、
それぞれの前記単語は、1つまたは2つ以上の前記同義語グループに属し、
複数の前記同義語グループは、第1の同義語グループと第2の同義語グループとを含み、
前記第1の同義語グループに属するそれぞれの前記単語が属する前記同義語グループの名称である少なくとも1つの第1のグループ名称と、
前記第2の同義語グループに属するそれぞれの前記単語が属する前記同義語グループの名称である少なくとも1つの第2のグループ名称とを取得する名称取得部と、
少なくとも1つの前記第1のグループ名称を要素とする第1のグループ名称集合と、少なくとも1つの前記第2のグループ名称を要素とする第2のグループ名称集合とを生成する名称集合生成部と、
前記第1のグループ名称集合と前記第2のグループ名称集合とに含まれる要素数に対する共通する前記同義語グループの要素数の割合に基づいて、前記第1のグループ名称集合と、前記第2のグループ名称集合との間の類似度を算出する類似度算出部とを備える、
類似度算出装置。
【請求項2】
請求項1に記載の類似度算出装置であり、
前記類似度がしきい値以上である場合に、前記第1の同義語グループと前記第2の同義語グループとを結合する結合部をさらに備える、
類似度算出装置。
【請求項3】
請求項1または2に記載の類似度算出装置であり、
前記類似度算出部は、Dice係数を用いて前記類似度を算出する、
類似度算出装置。
【請求項4】
請求項1から3のうちのいずれか1つに記載の類似度算出装置であり、
前記類似度算出部は、前記第1のグループ名称集合における取得可能な前記第1のグループ名称が1つのみである前記単語の数に応じて前記第1のグループ名称集合の要素数を増加させ、かつ、前記第2のグループ名称集合における取得可能な前記第2のグループ名称が1つのみである前記単語の数に応じて前記第2のグループ名称集合の要素数を増加させる、
類似度算出装置。
【請求項5】
複数の同義語グループ間の類似度を算出する類似度算出プログラムであり、
それぞれの前記同義語グループは、互いに同義語である複数の単語からなり、
それぞれの前記単語は、1つまたは2つ以上の前記同義語グループに属し、
複数の前記同義語グループは、第1の同義語グループと第2の同義語グループとを含み、
前記類似度算出プログラムがコンピュータにインストールされて実行されることによって、
前記コンピュータに、
前記第1の同義語グループに属するそれぞれの前記単語が属する前記同義語グループの名称である少なくとも1つの第1のグループ名称と、
前記第2の同義語グループに属するそれぞれの前記単語が属する前記同義語グループの名称である少なくとも1つの第2のグループ名称とを取得させ、
前記コンピュータに、少なくとも1つの前記第1のグループ名称を要素とする第1のグループ名称集合と、少なくとも1つの前記第2のグループ名称を要素とする第2のグループ名称集合とを生成させ、
前記コンピュータに、
前記第1のグループ名称集合と前記第2のグループ名称集合とに含まれる要素数に対する共通する前記同義語グループの要素数の割合に基づいて、前記第1のグループ名称集合と、前記第2のグループ名称集合との間の類似度を算出させる、
類似度算出プログラム。
【請求項6】
複数の同義語グループ間の類似度を算出する類似度算出方法であり、
それぞれの前記同義語グループは、互いに同義語である複数の単語からなり、
それぞれの前記単語は、1つまたは2つ以上の前記同義語グループに属し、
複数の前記同義語グループは、第1の同義語グループと第2の同義語グループとを含み、
前記第1の同義語グループに属するそれぞれの前記単語が属する前記同義語グループの名称である少なくとも1つの第1のグループ名称と、
前記第2の同義語グループに属するそれぞれの前記単語が属する前記同義語グループの名称である少なくとも1つの第2のグループ名称とを取得する工程と、
少なくとも1つの前記第1のグループ名称を要素とする第1のグループ名称集合と、少なくとも1つの前記第2のグループ名称を要素とする第2のグループ名称集合とを生成する工程と、
前記第1のグループ名称集合と前記第2のグループ名称集合とに含まれる要素数に対する共通する前記同義語グループの要素数の割合に基づいて、前記第1のグループ名称集合と、前記第2のグループ名称集合との間の類似度を算出する工程とを備える、
類似度算出方法。
【発明の詳細な説明】
【技術分野】
【0001】
本願明細書に開示される技術は、類似度算出装置、類似度算出プログラム、および、類似度算出方法に関するものである。
【背景技術】
【0002】
従来から、たとえば文書内の表記ゆれを吸収する目的で、複数の同義語からなる同義語グループを作成する技術が用いられている(たとえば、特許文献1を参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に示された技術などを用いて同義語グループを作成すると、互いに類似する複数の同義語グループが作成される場合がある。その場合、用い得る同義語グループが複数存在することによって用語を統一することが難しくなる。一方で、それらの同義語グループを人手でまとめる作業は非常に時間がかかるものである。
【0005】
本願明細書に開示される技術は、以上に記載されたような問題を鑑みてなされたものであり、複数の同義語グループが作成される場合であっても、効果的に用語の統一を図るための技術である。
【課題を解決するための手段】
【0006】
本願明細書に開示される技術の第1の態様は、複数の同義語グループ間の類似度を算出する類似度算出装置であり、それぞれの前記同義語グループは、互いに同義語である複数の単語からなり、それぞれの前記単語は、1つまたは2つ以上の前記同義語グループに属し、複数の前記同義語グループは、第1の同義語グループと第2の同義語グループとを含み、前記第1の同義語グループに属するそれぞれの前記単語が属する前記同義語グループの名称である少なくとも1つの第1のグループ名称と、前記第2の同義語グループに属するそれぞれの前記単語が属する前記同義語グループの名称である少なくとも1つの第2のグループ名称とを取得する名称取得部と、少なくとも1つの前記第1のグループ名称を要素とする第1のグループ名称集合と、少なくとも1つの前記第2のグループ名称を要素とする第2のグループ名称集合とを生成する名称集合生成部と、前記第1のグループ名称集合と前記第2のグループ名称集合とに含まれる要素数に対する共通する前記同義語グループの要素数の割合に基づいて、前記第1のグループ名称集合と、前記第2のグループ名称集合との間の類似度を算出する類似度算出部とを備える。
【0007】
本願明細書に開示される技術の第2の態様は、第1の態様に関連し、前記類似度がしきい値以上である場合に、前記第1の同義語グループと前記第2の同義語グループとを結合する結合部をさらに備える。
【0008】
本願明細書に開示される技術の第3の態様は、第1または2の態様に関連し、前記類似度算出部は、Dice係数を用いて前記類似度を算出する。
【0009】
本願明細書に開示される技術の第4の態様は、第1から3のうちのいずれか1つの態様に関連し、前記類似度算出部は、前記第1のグループ名称集合における取得可能な前記第1のグループ名称が1つのみである前記単語の数に応じて前記第1のグループ名称集合の要素数を増加させ、かつ、前記第2のグループ名称集合における取得可能な前記第2のグループ名称が1つのみである前記単語の数に応じて前記第2のグループ名称集合の要素数を増加させる。
【0010】
本願明細書に開示される技術の第5の態様は、複数の同義語グループ間の類似度を算出する類似度算出プログラムであり、それぞれの前記同義語グループは、互いに同義語である複数の単語からなり、それぞれの前記単語は、1つまたは2つ以上の前記同義語グループに属し、複数の前記同義語グループは、第1の同義語グループと第2の同義語グループとを含み、前記類似度算出プログラムがコンピュータにインストールされて実行されることによって、前記コンピュータに、前記第1の同義語グループに属するそれぞれの前記単語が属する前記同義語グループの名称である少なくとも1つの第1のグループ名称と、前記第2の同義語グループに属するそれぞれの前記単語が属する前記同義語グループの名称である少なくとも1つの第2のグループ名称とを取得させ、前記コンピュータに、少なくとも1つの前記第1のグループ名称を要素とする第1のグループ名称集合と、少なくとも1つの前記第2のグループ名称を要素とする第2のグループ名称集合とを生成させ、前記コンピュータに、前記第1のグループ名称集合と前記第2のグループ名称集合とに含まれる要素数に対する共通する前記同義語グループの要素数の割合に基づいて、前記第1のグループ名称集合と、前記第2のグループ名称集合との間の類似度を算出させる。
【0011】
本願明細書に開示される技術の第6の態様は、複数の同義語グループ間の類似度を算出する類似度算出方法であり、それぞれの前記同義語グループは、互いに同義語である複数の単語からなり、それぞれの前記単語は、1つまたは2つ以上の前記同義語グループに属し、複数の前記同義語グループは、第1の同義語グループと第2の同義語グループとを含み、前記第1の同義語グループに属するそれぞれの前記単語が属する前記同義語グループの名称である少なくとも1つの第1のグループ名称と、前記第2の同義語グループに属するそれぞれの前記単語が属する前記同義語グループの名称である少なくとも1つの第2のグループ名称とを取得する工程と、少なくとも1つの前記第1のグループ名称を要素とする第1のグループ名称集合と、少なくとも1つの前記第2のグループ名称を要素とする第2のグループ名称集合とを生成する工程と、前記第1のグループ名称集合と前記第2のグループ名称集合とに含まれる要素数に対する共通する前記同義語グループの要素数の割合に基づいて、前記第1のグループ名称集合と、前記第2のグループ名称集合との間の類似度を算出する工程とを備える。
【発明の効果】
【0012】
本願明細書に開示される技術の第1から6の態様によれば、複数の同義語グループが作成される場合であっても、同義語グループに対応するグループ名称集合間の類似度を算出することによって、効果的に用語の統一を図ることができる。
【0013】
また、本願明細書に開示される技術に関連する目的と、特徴と、局面と、利点とは、以下に示される詳細な説明と添付図面とによって、さらに明白となる。
【図面の簡単な説明】
【0014】
【
図1】実施の形態に関する、類似度算出装置のハードウェア構成の例を示す図である。
【
図2】実施の形態に関する、類似度算出装置の機能的構成の例を示す図である。
【
図3】類似度算出動作の例を示すフローチャートである。
【
図4】ある単語が属する同義語グループと、当該同義語グループに属する単語の例を示す図である。
【発明を実施するための形態】
【0015】
以下、添付される図面を参照しながら実施の形態について説明する。以下の実施の形態では、技術の説明のために詳細な特徴なども示されるが、それらは例示であり、実施の形態が実施可能となるためにそれらすべてが必ずしも必須の特徴ではない。
【0016】
なお、図面は概略的に示されるものであり、説明の便宜のため、適宜、構成の省略、または、構成の簡略化が図面においてなされるものである。また、異なる図面にそれぞれ示される構成などの大きさおよび位置の相互関係は、必ずしも正確に記載されるものではなく、適宜変更され得るものである。また、断面図ではない平面図などの図面においても、実施の形態の内容を理解することを容易にするために、ハッチングが付される場合がある。
【0017】
また、以下に示される説明では、同様の構成要素には同じ符号を付して図示し、それらの名称と機能とについても同様のものとする。したがって、それらについての詳細な説明を、重複を避けるために省略する場合がある。
【0018】
また、以下に記載される説明において、ある構成要素を「備える」、「含む」または「有する」などと記載される場合、特に断らない限りは、他の構成要素の存在を除外する排他的な表現ではない。
【0019】
また、以下に記載される説明において、「第1の」または「第2の」などの序数が用いられる場合があっても、これらの用語は、実施の形態の内容を理解することを容易にするために便宜上用いられるものであり、これらの序数によって生じ得る順序などに限定されるものではない。
【0020】
<実施の形態>
以下、本実施の形態に関する類似度算出装置、類似度算出プログラム、および、類似度算出方法について説明する。
【0021】
<類似度算出装置の構成について>
図1は、本実施の形態に関する類似度算出装置100のハードウェア構成の例を示す図である。
【0022】
図1に例が示されるように、類似度算出装置100は、少なくとも、同義語グループ間の類似度の算出動作に用いられるプログラム105がインストールされたコンピュータであり、中央演算処理装置(central processing unit、すなわち、CPU)102と、メモリ103と、ハードディスクドライブ(Hard disk drive、すなわち、HDD)104と、ディスプレイ101とを備える。
【0023】
類似度算出装置100においては、対応するプログラム105がHDD104にインストールされる。プログラム105のインストールは、コンパクトディスク(compact disc、すなわち、CD)、デジタル多目的ディスク(digital versatile disc、すなわち、DVD)、ユニバーサルシリアルバス(universal serial bus、すなわち、USB)メモリなどの外部記憶媒体106から読み出されたデータをHDD104に書き込むことによって行われてもよいし、ネットワーク107を経由して受信されたデータをHDD104に書き込むことによって行われてもよい。
【0024】
また、HDD104は、他の種類の補助記憶装置に置き換えられてもよい。たとえば、HDD104が、ソリッドステートドライブ(solid state drive、すなわち、SSD)、ランダムアクセスメモリー(random access memory、すなわち、RAM)ディスクなどに置き換えられてもよい。
【0025】
類似度算出装置100においては、HDD104にインストールされたプログラム105がメモリ103にロードされ、ロードされたプログラム105がCPU102によって実行される。そうすることによって、コンピュータがプログラム105を実行し、類似度算出装置100として機能する。
【0026】
なお、CPU102が行う処理の少なくとも一部がCPU102以外のプロセッサによって行われてもよい。たとえば、CPU102によって行われる処理の少なくとも一部が、グラフィックス処理装置(GPU)などによって行われてもよい。また、CPU102によって行われる処理の少なくとも一部が、プログラムを実行しないハードウェアによって行われてもよい。
【0027】
図2は、本実施の形態に関する類似度算出装置100の機能的構成の例を示す図である。
【0028】
図2に例が示されるように、類似度算出装置100は、少なくとも、名称取得部10と、名称集合生成部12と、類似度算出部14とを備える。また、類似度算出装置100は、結合部16と、入力部18と、出力部20と、記憶部22とを備えることができる。入力部18および出力部20は、
図1のディスプレイ101などによって実現される。また、記憶部22は、たとえば、
図1のメモリ103およびHDD104の少なくとも一方によって実現される。また、名称取得部10、名称集合生成部12、類似度算出部14および結合部16は、たとえば、
図1のCPU102にプログラム105を実行させることによって実現される。
【0029】
名称取得部10は、同義語グループに属するそれぞれの単語が属する同義語グループの名称(以下、同義語グループ名称)を取得する。
【0030】
ここで、同義語グループは、互いに同義語である複数の単語からなる集合である。また、同義語とは、語形、発音または表記などが異なっているが、同じような意味を有する単語である。
【0031】
また、本実施の形態におけるそれぞれの単語は後述する専門用語を除き、少なくとも2つの同義語グループに属し、後述の専門用語は1つの同義語グループのみに属するものとする。
【0032】
名称集合生成部12は、同義語グループ名称を要素とするグループ名称集合を生成する。生成されたグループ名称集合は、記憶部22に記憶される。
【0033】
類似度算出部14は、複数のグループ名称集合間の類似度を算出する。そして、算出されたグループ名称集合間の類似度に基づいて、対応する同義語グループ間の類似度を判定する。算出されたグループ名称集合間の類似度および対応する同義語グループ間の類似度は、記憶部22に記憶される。
【0034】
結合部16は、複数のグループ名称集合間の類似度(または、同義語グループ間の類似度)がしきい値以上である場合に、これらのグループ名称集合に対応する同義語グループ同士を結合する。結合して生成された同義語グループは、記憶部22に記憶される。
【0035】
入力部18には、同義語グループに関するデータが入力される。また、出力部20は、算出されたグループ名称集合間の類似度(または、同義語グループ間の類似度)、または、結合して生成された同義語グループに関するデータを出力する。
【0036】
<類似度算出装置の動作について>
次に、類似度算出装置100の動作、具体的には、複数の同義語グループ間の類似度を算出する動作について、
図3および
図4を参照しつつ説明する。なお、
図3は、類似度算出動作の例を示すフローチャートである。
【0037】
ここで、以下で言及される複数の同義語グループは、全ての同義語グループが共通の基準によって作成された同義語グループであってもよいし、いくつかの同義語グループが、他とは異なる基準によって作成された同義語グループであってもよい。具体的には、ユーザーによって独自に作成された同義語グループと、外部辞書(たとえば、WordNet)などに採用されている基準で作成された同義語グループとが混在していてもよい。
【0038】
まず、2つの同義語グループ(同義語グループG1および同義語グループG2)に関するデータがそれぞれ入力部18に入力される(
図3のステップST01)。ここでは、同義語グループG1が(end、finish、stop)を含む同義語グループであり、同義語グループG2が(cease、terminate、finish)を含む同義語グループであるものとする。
【0039】
また、上記の同義語グループに関するデータには、少なくとも、同義語グループに含まれるそれぞれの単語のデータ、および、それらの単語が属する同義語グループ名称のデータを含むものとする。同義語グループ名称は、対応する単語に関連づけられている。
【0040】
図4は、ある単語が属する同義語グループと、当該同義語グループに属する単語の例を示す図である。なお、
図4において示される同義語グループは、対応する単語の一部を示すものである。
【0041】
図4に例が示されるように、単語designは、同義語グループdesign.n.01と同義語グループpurpose.n.01とに属する。ここで、同義語グループdesign.n.01にはdesignおよびdesigningが属し、同義語グループpurpose.n.01にはpurpose、intent、intention、aimおよびdesignが属する。
【0042】
同様に、単語paperは、同義語グループcomposition.n.08と同義語グループnewspaper.n.01とに属する。ここで、同義語グループcomposition.n.08にはcomposition、paper、reportおよびthemeが属し、同義語グループnewspaper.n.01にはnewspaperおよびpaperが属する。
【0043】
次に、名称取得部10が、入力部18に入力されたそれぞれの同義語グループのデータについて、それぞれの同義語グループに属する全ての単語の、属する同義語グループ名称を取得する(
図3のステップST02)。
【0044】
次に、名称集合生成部12が、名称取得部10において取得された同義語グループ名称に基づいて、グループ名称集合を生成する(
図3のステップST03)。生成されたグループ名称集合は、記憶部22に記憶される。
【0045】
本実施の形態の例では、同義語グループG1における単語end、finishおよびstopそれぞれが属する同義語グループ名称の集合として、end.n.01、end.v.04、finish.n.08、stop.v.01、period.n.07など53個の同義語グループ名称を得る。これらの集合をグループ名称集合G11とする。なお、以下でも同様に、同義語グループ名称の集合においては、同一の同義語グループ名称は含まれない(すなわち、同一の同義語グループ名称の重複は許さない)ものとする。また、グループ名称集合G11には、同義語グループG1自身の名称が含まれていてもよい。
【0046】
同様に、同義語グループG2における単語cease、terminateおよびfinishそれぞれが属する同義語グループ名称の集合として、cease.n.01、complete.v.01、finish.n.08など20個の同義語グループ名称を得る。これらの集合をグループ名称集合G12とする。なお、グループ名称集合G12には、同義語グループG2自身の名称が含まれていてもよい。
【0047】
上記のうち、グループ名称集合G11とグループ名称集合G12との双方に共通する同義語グループ名称は、18個であるものとする。
【0048】
次に、類似度算出部14が、グループ名称集合間の類似度を算出する(
図3のステップST04)。本実施の形態の例では、類似度算出部14は、Dice係数を用いてグループ名称集合間の類似度を算出する。算出されたグループ名称集合間の類似度は、記憶部22に記憶される。
【0049】
具体的には、以下の式(1)を用いて、グループ名称集合G11とグループ名称集合G12との間の類似度を算出する。
【0050】
【0051】
ここで、|G11|は、グループ名称集合G11の要素数を、|G12|は、グループ名称集合G12の要素数を、G11∩G12は、グループ名称集合G11とグループ名称集合G12との双方に共通する要素数をそれぞれ示す。
【0052】
上記のように、グループ名称集合G11は53個の要素を有する集合であり、グループ名称集合G12は20個の要素を有する集合である。また、グループ名称集合G11とグループ名称集合G12との双方に共通する要素数は、18個である。
【0053】
よって、グループ名称集合G11とグループ名称集合G12との間の類似度は、およそ0.493と表すことができる。算出されたグループ名称集合間の類似度に基づいて、対応する同義語グループG1と同義語グループG2との間の類似度を、たとえば、同様の数値で表すことができる。
【0054】
ここで、他の同義語グループG3を想定する。同義語グループG3は、(complete、accomplish、finish)を含む同義語グループである。
【0055】
同義語グループG3についても、同義語グループG1および同義語グループG2と同様に入力部18に入力され(
図3のステップST01)、名称取得部10によって、同義語グループG3に属する全ての単語の、属する同義語グループ名称を取得される(
図3のステップST02)。そして、名称集合生成部12によって、取得された同義語グループ名称に基づいて、グループ名称集合を生成される(
図3のステップST03)。
【0056】
本実施の形態の例では、同義語グループG3における単語complete、accomplishおよびfinishそれぞれが属する同義語グループ名称の集合として、achieve.v.01、complete.v.01、finish.n.08など26個の同義語グループ名称を得る。これをグループ名称集合G13とする。なお、グループ名称集合G13には、同義語グループG3自身の名称が含まれていてもよい。
【0057】
上記のうち、グループ名称集合G11とグループ名称集合G13との双方に共通する同義語グループ名称は、15個であるものとする。
【0058】
次に、グループ名称集合G11とグループ名称集合G12との場合と同様に、類似度算出部14が、グループ名称集合G11とグループ名称集合G13との間の類似度を算出する(
図3のステップST04)。算出されたグループ名称集合間の類似度は、記憶部22に記憶される。
【0059】
上記のように、グループ名称集合G11は53個の要素を有する集合であり、グループ名称集合G13は26個の要素を有する集合である。また、グループ名称集合G11とグループ名称集合G13との双方に共通する要素数は、15個である。
【0060】
よって、上記の式(1)の|G12|を|G13|(グループ名称集合G13の要素数)に置き換え、G11∩G12をG11∩G13(グループ名称集合G11とグループ名称集合G13との双方に共通する要素数)に置き換えて演算することによって、グループ名称集合G11とグループ名称集合G13との間の類似度は、およそ0.379と表すことができる。算出されたグループ名称集合間の類似度に基づいて、対応する同義語グループG1と同義語グループG3との間の類似度を、たとえば、同様の数値で表すことができる。
【0061】
上記のように、グループ名称集合間の類似度を算出することによって、1つの単語に対して複数の同義語グループが作成されている場合であっても、グループ名称集合間の類似度が高い同義語グループ間では後述するような結合などを行うことによって、効果的に用語の統一を図ることができる。
【0062】
本実施の形態の例では、同義語グループG1、同義語グループG2および同義語グループG3には、共通してfinishが含まれているが、それぞれの同義語グループに属する単語の、属する同義語グループ名称を参照することによって、同義語グループを構成する単語の意味の傾向が類似する同義語グループG1と同義語グループG2との間ではグループ名称集合間で比較的高い類似度が算出され、一方で、同義語グループを構成する単語の意味の傾向が異なる同義語グループG1と同義語グループG3との間ではグループ名称集合間で比較的低い類似度が算出される結果となっている。
【0063】
よって、本実施の形態によれば、同義語グループを構成する単語の意味の傾向を考慮しつつ、同義語グループに対応するグループ名称集合間の類似度を算出することによって、対応する同義語グループ間の類似度を高い精度で判定することができる。そして、たとえば、類似度が高い同義語グループのみを用いることによって、効果的に用語の統一を図ることができる。
【0064】
また、同義語グループに多義語が含まれる場合であっても、当該多義語が有する複数の意味を反映する同義語グループ名称がグループ名称集合に含まれることとなるため、多義語の意味の広がりを考慮してグループ名称集合間の類似度を算出することができる。
【0065】
次に、結合部16は、類似度算出部14において算出されたグループ名称集合間の類似度(または、同義語グループ間の類似度)があらかじめ定められたしきい値以上であるか否かを判定する(
図3のステップST05)。そして、グループ名称集合間の類似度(または、同義語グループ間の類似度)があらかじめ定められたしきい値以上である場合、すなわち、
図3に例が示されるステップST05から分岐する「YES」に対応する場合には、
図3に例が示されるステップST06へ進む。一方で、グループ名称集合間の類似度(または、同義語グループ間の類似度)があらかじめ定められたしきい値以上でない場合、すなわち、
図3に例が示されるステップST05から分岐する「NO」に対応する場合には、動作を終了する。
【0066】
図3のステップST06において、結合部16は、グループ名称集合間の類似度が算出されたグループ名称集合に対応する同義語グループ同士を結合する。本実施の形態においては、たとえば、しきい値を0.4として、対応する同義語グループG1と同義語グループG2とを結合して、同義語グループG1に含まれる全ての単語と同義語グループG2に含まれる全ての単語とを1つの同義語グループに含める。この際、単語の重複がないように結合する。一方で、グループ名称集合G11とグループ名称集合G13とに対応するグループ名称集合間の類似度はしきい値未満であるため、これらの同義語グループは結合しない。なお、上記のしきい値は、ユーザーが任意に設定可能である。
【0067】
<属する同義語グループが1つのみである場合について>
次に、対応するグループ名称集合間の類似度を算出する複数の同義語グループのうちの少なくとも1つに、属する同義語グループが1つのみである単語が含まれる場合の動作について、以下説明する。なお、属する同義語グループが1つのみである単語、すなわち、自身が属する同義語グループ以外のいずれの同義語グループにも属していない単語を、以下、専門用語を称する。
【0068】
いずれかの同義語グループに専門用語が含まれる場合には、以下の式(2)を用いて、グループ名称集合の要素数を調整する。
【0069】
【0070】
ここで、Gnsは、専門用語以外の要素が属する同義語グループ名称の集合を示す。
【0071】
上記のようにグループ名称集合の要素数を調整した上で、
図3のステップST04に示されるグループ名称集合間の類似度の算出を行う。さらに、必要に応じて、
図3のステップST05さらにはステップST06に示される同義語グループの結合を行う。
【0072】
具体的に、専門用語が含まれる同義語グループG4および同義語グループG5について、対応するグループ名称集合間の類似度を算出する場合について以下に示す。
【0073】
同義語グループG4は(terminate_job、terminate、finish)を含む同義語グループであり、同義語グループG5は(complete_job、accomplish_job、finish)を含む同義語グループであるものとする。ここで、terminate_jobは専門用語である。
【0074】
同義語グループG4における単語terminate_job、terminateおよびfinishそれぞれが属する同義語グループ名称の集合として、end.v.03、complete.v.01、finish.n.08など18個の同義語グループ名称を得る。これらの集合をグループ名称集合G14とする。なお、グループ名称集合G14には、同義語グループG4自身の名称が含まれていてもよい。
【0075】
同様に、同義語グループG5における単語complete_job、accomplish_jobおよびfinishそれぞれが属する同義語グループ名称の集合として、end.v.01、complete.v.01、finish.n.08など15個の同義語グループ名称を得る。これらの集合をグループ名称集合G15とする。なお、グループ名称集合G15には、同義語グループG5自身の名称が含まれていてもよい。
【0076】
上記のうち、グループ名称集合G11とグループ名称集合G14との双方に共通する同義語グループ名称は、17個であるものとする。また、グループ名称集合G11とグループ名称集合G15との双方に共通する同義語グループ名称は、15個であるものとする。
【0077】
この場合、同義語グループG1に対応するグループ名称集合G11と同義語グループG4に対応するグループ名称集合G14との間の類似度を算出する際の、グループ名称集合G14の要素数は、以下のように調整されて増加する。
【0078】
【0079】
同様に、同義語グループG1に対応するグループ名称集合G11と同義語グループG5に対応するグループ名称集合G15との間の類似度を算出する際の、グループ名称集合G15の要素数は、以下のように調整されて増加する。
【0080】
【0081】
よって、上記の式(1)の|G12|を|G14|(グループ名称集合G14の要素数)に置き換え、G11∩G12をG11∩G14(グループ名称集合G11とグループ名称集合G14との双方に共通する要素数)に置き換えて演算することによって、グループ名称集合G11とグループ名称集合G14との間の類似度は、およそ0.425と表すことができる。算出されたグループ名称集合間の類似度に基づいて、対応する同義語グループG1と同義語グループG4との間の類似度を、たとえば、同様の数値で表すことができる。
【0082】
同様に、上記の式(1)の|G12|を|G15|(グループ名称集合G15の要素数)に置き換え、G11∩G12をG11∩G15(グループ名称集合G11とグループ名称集合G15との双方に共通する要素数)に置き換えて演算することによって、グループ名称集合G11とグループ名称集合G15との間の類似度は、およそ0.306と表すことができる。算出されたグループ名称集合間の類似度に基づいて、対応する同義語グループG1と同義語グループG5との間の類似度を、たとえば、同様の数値で表すことができる。
【0083】
このように、専門用語が含まれる同義語グループについて、対応するグループ名称集合の要素数を調整することによって、専門用語以外の要素のみを考慮して類似度を算出することによる、過度に類似度が高く算出される場合を抑制することができる。そのため、グループ名称集合間の類似度算出の精度を高めることができる。
【0084】
<以上に記載された実施の形態によって生じる効果について>
次に、以上に記載された実施の形態によって生じる効果の例を示す。なお、以下の説明においては、以上に記載された実施の形態に例が示された具体的な構成に基づいて当該効果が記載されるが、同様の効果が生じる範囲で、本願明細書に例が示される他の具体的な構成と置き換えられてもよい。
【0085】
以上に記載された実施の形態によれば、類似度算出装置は、名称取得部10と、名称集合生成部12と、類似度算出部14とを備える。名称取得部10は、複数の同義語グループのうちの第1の同義語グループ(たとえば、同義語グループG1)に属するそれぞれの単語が属する同義語グループの名称である少なくとも1つの第1のグループ名称(同義語グループ名称)と、複数の同義語グループのうちの第2の同義語グループ(たとえば、同義語グループG2)に属するそれぞれの単語が属する同義語グループの名称である少なくとも1つの第2のグループ名称(同義語グループ名称)とを取得する。名称集合生成部12は、少なくとも1つの第1のグループ名称(同義語グループ名称)を要素とする第1のグループ名称集合(たとえば、グループ名称集合G11)と、少なくとも1つの第2のグループ名称(同義語グループ名称)を要素とする第2のグループ名称集合(たとえば、グループ名称集合G12)とを生成する。そして、類似度算出部14は、第1のグループ名称集合(たとえば、グループ名称集合G11)と、第2のグループ名称集合(たとえば、グループ名称集合G12)との間の類似度を算出する。
【0086】
このような構成によれば、複数の同義語グループが作成される場合であっても、同義語グループに対応するグループ名称集合間の類似度を算出することによって、同義語グループを構成する単語の意味の傾向を考慮しつつ同義語グループ間の類似度を判定することができる。そのため、たとえば、類似度が高い同義語グループ同士をまとめることによって、効果的に用語の統一を図ることができる。なお、同義語グループに多義語が含まれる場合、単語の意味の傾向を考慮せずに単に共通の単語の有無などに基づいて同義語グループ間の類似度を算出すると、同義語グループに含まれる単語の意味の傾向が異なっている同義語グループ同士であっても高い類似度を有するものとして算出される場合があるが、上記の構成によれば、そのような不具合を抑制することができる。
【0087】
なお、上記の構成に本願明細書に例が示された他の構成を適宜追加した場合、すなわち、上記の構成としては言及されなかった本願明細書中の他の構成が適宜追加された場合であっても、同様の効果を生じさせることができる。
【0088】
また、以上に記載された実施の形態によれば、類似度算出装置100は、グループ名称集合間の類似度がしきい値以上である場合に、対応する第1の同義語グループと第2の同義語グループとを結合する結合部16を備える。このような構成によれば、グループ名称集合間の類似度が高い対応する同義語グループ同士を結合させることができる。よって、同義語グループを構成する単語の意味の傾向が類似する同義語グループ同士を結合させることによって、結合後の当該同義語グループを用いれば効果的に用語を統一することができる。また、グループ名称集合間の類似度の判定に用いるしきい値は調整可能であるため、結合判定の厳しさを用途に応じて調節することができる。
【0089】
また、以上に記載された実施の形態によれば、類似度算出部14は、Dice係数を用いて類似度を算出する。このような構成によれば、Dice係数を用いて算出されたグループ名称集合間の類似度に基づいて、対応する同義語グループ間の類似度を判定することができる。
【0090】
また、以上に記載された実施の形態によれば、類似度算出部14は、第1のグループ名称集合における取得可能な第1のグループ名称が1つのみである単語(すなわち、専門用語)の数に応じて第1のグループ名称集合の要素数を増加させ、かつ、第2のグループ名称集合における取得可能な第2のグループ名称が1つのみである単語(すなわち、専門用語)の数に応じて第2のグループ名称集合の要素数を増加させる。このような構成によれば、専門用語以外の要素のみを考慮して見かけ上のグループ名称集合の要素数が少なくなってしまうことによって、グループ名称集合間の類似度が過度に高く算出される場合を抑制することができる。そのため、グループ名称集合間の類似度算出の精度を高めることができる。
【0091】
以上に記載された実施の形態によれば、類似度算出プログラムは、コンピュータ(たとえば、CPU102)にインストールされて実行されることによって、CPU102に、複数の同義語グループのうちの第1の同義語グループに属するそれぞれの単語が属する同義語グループの名称である少なくとも1つの第1のグループ名称と、複数の同義語グループのうちの第2の同義語グループに属するそれぞれの単語が属する同義語グループの名称である少なくとも1つの第2のグループ名称とを取得させる。そして、CPU102に、少なくとも1つの第1のグループ名称を要素とする第1のグループ名称集合と、少なくとも1つの第2のグループ名称を要素とする第2のグループ名称集合とを生成させる。そして、CPU102に、第1のグループ名称集合と、第2のグループ名称集合との間の類似度を算出させる。
【0092】
このような構成によれば、複数の同義語グループが作成される場合であっても、同義語グループに対応するグループ名称集合間の類似度を算出することによって、同義語グループを構成する単語の意味の傾向を考慮しつつ同義語グループ間の類似度を判定することができるため、たとえば、類似度が高い同義語グループのみを用いることによって、効果的に用語の統一を図ることができる。
【0093】
また、上記のプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスクまたはDVDなどのコンピュータ読取可能な可搬記録媒体に格納されていてもよい。そして、上記の機能を実現するプログラムが格納された可搬記録媒体が商業的に流通されてもよい。
【0094】
以上に記載された実施の形態によれば、類似度算出方法において、複数の同義語グループのうちの第1の同義語グループに属するそれぞれの単語が属する同義語グループの名称である少なくとも1つの第1のグループ名称と、複数の同義語グループのうちの第2の同義語グループに属するそれぞれの単語が属する同義語グループの名称である少なくとも1つの第2のグループ名称とを取得する工程と、少なくとも1つの第1のグループ名称を要素とする第1のグループ名称集合と、少なくとも1つの第2のグループ名称を要素とする第2のグループ名称集合とを生成する工程と、第1のグループ名称集合と、第2のグループ名称集合との間の類似度を算出する工程とを備える。
【0095】
このような構成によれば、複数の同義語グループが作成される場合であっても、同義語グループに対応するグループ名称集合間の類似度を算出することによって、同義語グループを構成する単語の意味の傾向を考慮しつつ同義語グループ間の類似度を判定することができるため、たとえば、類似度が高い同義語グループのみを用いることによって、効果的に用語の統一を図ることができる。
【0096】
なお、特段の制限がない場合には、それぞれの処理が行われる順序は変更することができる。
【0097】
<以上に記載された実施の形態の変形例について>
上記の実施の形態では、同義語グループ間の類似度を算出するためにDice係数が用いられたが、類似度の算出方法はこの手法に限られるわけではなく、たとえば、Jaccard係数またはSimpson係数などが用いられてもよい。
【0098】
したがって、例が示されていない無数の変形例、および、均等物が、本願明細書に開示される技術の範囲内において想定される。たとえば、少なくとも1つの構成要素を変形する場合、追加する場合または省略する場合が含まれるものとする。
【0099】
また、以上に記載された実施の形態で記載されたそれぞれの構成要素は、ソフトウェアまたはファームウェアとしても、それと対応するハードウェアとしても想定され、その双方の概念において、それぞれの構成要素は「部」または「処理回路」(circuitry)などと称される。
【符号の説明】
【0100】
10 名称取得部
12 名称集合生成部
14 類似度算出部
16 結合部
18 入力部
20 出力部
22 記憶部
100 類似度算出装置
101 ディスプレイ
102 CPU
103 メモリ
104 HDD
105 プログラム
106 外部記憶媒体
107 ネットワーク