WO2021024430A1 - 類似度評価装置、類似度評価方法、およびプログラム - Google Patents

類似度評価装置、類似度評価方法、およびプログラム Download PDF

Info

Publication number
WO2021024430A1
WO2021024430A1 PCT/JP2019/031215 JP2019031215W WO2021024430A1 WO 2021024430 A1 WO2021024430 A1 WO 2021024430A1 JP 2019031215 W JP2019031215 W JP 2019031215W WO 2021024430 A1 WO2021024430 A1 WO 2021024430A1
Authority
WO
WIPO (PCT)
Prior art keywords
similarity
character string
morphological analysis
similarity evaluation
unit
Prior art date
Application number
PCT/JP2019/031215
Other languages
English (en)
French (fr)
Other versions
WO2021024430A9 (ja
Inventor
莉奈 岡田
長谷川 聡
Original Assignee
日本電信電話株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to US17/631,503 priority Critical patent/US20220284189A1/en
Priority to JP2021538633A priority patent/JPWO2021024430A1/ja
Priority to PCT/JP2019/031215 priority patent/WO2021024430A1/ja
Publication of WO2021024430A1 publication Critical patent/WO2021024430A1/ja
Publication of WO2021024430A9 publication Critical patent/WO2021024430A9/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/194Calculation of difference between files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/247Thesauruses; Synonyms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking

Definitions

  • the present invention relates to a natural language processing technique, and more particularly to a technique for evaluating the similarity between character strings in consideration of a concept.
  • (curly braces) represents a set, and
  • the character string x is "NTT Advanced Technology Corporation”
  • y 1 "Baatexis Dononro Corporation”
  • y 2 "Advanced Technology” ( NTT) "
  • y 3 Vance Technology Co., Ltd.
  • , y 4 Nippon Telegraph and Telephone West Corporation " ⁇ .
  • Y * be the set of character strings in Y with the highest similarity, and consider finding Y * that satisfies equation (1) using the methods (A), (B), (C), and (D).
  • sim A ( ⁇ , ⁇ ) be the similarity calculated by “(A) number of matching characters”.
  • the similarity calculated by the method (A) for x, y 0 ,..., and y 4 is as follows.
  • sim A (x, y 0 )
  • sim B ( ⁇ , ⁇ ) be the similarity calculated by “(B) Length of matching character string”.
  • the similarity calculated by the method (B) for x, y 0 ,..., and y 4 is as follows.
  • sim B (x, y 0 )
  • 4
  • sim C ( ⁇ , ⁇ ) be the similarity calculated by “(C) Editing distance”.
  • the similarity calculated by the method (C) for x, y 0 ,..., and y 4 is as follows.
  • sim D ( ⁇ , ⁇ ) be the degree of similarity calculated by “(D) Distance by distributed representation”.
  • word2vec see, for example, Non-Patent Document 1
  • fastText see, for example, Non-Patent Document 2
  • (D) is the method focusing on the similarity between concepts most.
  • Distributed representation is not calculated. Therefore, in some cases, the x, y 0 vectors exist, but the y 1 , y 2 , y 3 , y 4 vectors do not exist. In this case, only sim D (x, y 0 ) can be evaluated. As described above, it may not be possible to calculate the similarity for all character strings by the distance by the distributed representation.
  • An object of the present invention is to evaluate the similarity between character strings in consideration of a concept without using a distributed expression in view of the above technical problems.
  • the similarity evaluation device of one aspect of the present invention includes a morphological analysis unit that analyzes the first character string and the second character string, and a morphological analysis result of the first character string. Includes a similarity calculation unit that obtains the number of morphemes included in both the morphological analysis result of the second character string and the morphological analysis result of the second character string as the similarity.
  • FIG. 1 is a diagram illustrating a functional configuration of a similarity evaluation device.
  • FIG. 2 is a diagram illustrating a processing procedure of the similarity evaluation method.
  • FIG. 3 is a diagram illustrating a functional configuration of a computer.
  • the similarity evaluation device 1 of the embodiment includes a term unified data storage unit 10-1, a morphological analysis model storage unit 10-2, a term unification unit 11, a morphological analysis unit 12, and a similarity calculation.
  • a unit 14 is provided.
  • the similarity evaluation device 1 may further include a concept deletion unit 13.
  • the similarity evaluation method of the embodiment is realized by the similarity evaluation device 1 performing the processing of each step illustrated in FIG.
  • the similarity evaluation device 1 is configured by loading a special program into a known or dedicated computer having, for example, a central processing unit (CPU: Central Processing Unit), a main storage device (RAM: Random Access Memory), or the like. It is a special device.
  • the similarity evaluation device 1 executes each process under the control of the central processing unit, for example.
  • the data input to the similarity evaluation device 1 and the data obtained by each process are stored in the main storage device, for example, and the data stored in the main storage device is read out to the central processing unit as needed. It is used for other processing.
  • At least a part of each processing unit of the similarity evaluation device 1 may be configured by hardware such as an integrated circuit.
  • Each storage unit included in the similarity evaluation device 1 is, for example, a main storage device such as RAM (RandomAccessMemory), an auxiliary storage device composed of a hard disk, an optical disk, or a semiconductor memory element such as a flash memory (FlashMemory).
  • a main storage device such as RAM (RandomAccessMemory)
  • auxiliary storage device composed of a hard disk, an optical disk, or a semiconductor memory element such as a flash memory (FlashMemory).
  • middleware such as a relational database or key value store.
  • -1 ⁇ , and the similarity set S ⁇ sim between the character string x and the character string set Y.
  • sim prop (x, y i ) represents the similarity between the string x and the string y i ⁇ Y.
  • z i ⁇ Z is a set of character strings that have the same concept but different notations
  • is the number of concepts in ⁇ x ⁇ ⁇ Y.
  • the morphological analysis model m is stored in the morphological analysis model storage unit 10-2.
  • the morphological analysis model m is prepared in advance by using a morphological analyzer such as MeCab (see Reference 1) or JUMAN (see Reference 2).
  • the term unification unit 11 outputs the term-unified character string x'and the character string set Y'to the morphological analysis unit 12.
  • z (i, 0) is the 0th element of z i .
  • step S12 the morphological analysis unit 12 'and every string y' string x with respect to i ⁇ Y ', using the morphological analysis model m stored in the morphological analysis model storage unit 10-2 morphemes decomposing each, '' to produce a.
  • the morphological analysis unit 12 outputs the morphological analysis result x "and the morphological analysis result set Y" to the similarity calculation unit 14.
  • the morphological analysis model is expressed as a function "m: character string-> character string set”.
  • Algorithm 2 Morphological analysis department Input: Unified term string x', string set Y', morphological analysis model m
  • Output: x ", Y" decomposed by morpheme 1: x " m (x') 2: Create Y "with elements of the same size as Y'(whereever, in ⁇ i ⁇ [0,
  • the method of dividing morphemes depends on the algorithm of the morphological analyzer and the data set used to calculate the morphological analysis model.
  • step S14 the similarity calculation unit 14 calculates the similarity sim prop (x, y i ) ⁇ S for all the sets of the morphological analysis result x "and the morphological analysis result y" i ⁇ Y ".
  • the degree calculation unit 14 uses the similarity set S as the output of the similarity evaluation device 1.
  • x " i is the i-th element of x
  • y " (i, j) is the j-th element of y" i .
  • [Modification example] For example, if the concept of the character string to be evaluated for similarity can be inferred in advance (for example, if it is known to be a "company name” as in the above example), a word representing that concept (for example, the above). In the example of "Co., Ltd.”), measuring the similarity has no effect or has the opposite effect. When the concept that has no effect or causes the adverse effect is known in advance, it is advisable to delete the concept from the morphological analysis result.
  • the similarity evaluation device 1 further includes a concept deletion unit 13.
  • the similarity between x and each y i ⁇ Y is as follows.
  • the similarity is calculated according to the present invention, where the data of the organization A shown in Table 1 is a character string x and the data of the organization B shown in Table 2 is a character string set Y.
  • sim ( ⁇ , ⁇ ) is the similarity calculated in the present invention
  • the character string in the curly braces is a morpheme that is commonly present in the two character strings.
  • sim (x 1 , Y 11 )
  • 8
  • Table 3 shows the results of replacing the character string in Y with the character string in x in the pair of the character string in x and the character string in Y having a high degree of similarity.
  • the product of x 3 handled by organization A has a high degree of similarity to the product of Y 36 handled by organization B, so by replacing Y 36 with x 3 , Y 31 ,..., Y 35 for x 3 I was able to fit the category of.
  • the organization A was able to appropriately categorize the products it handles with reference to the categorization held by the organization B.
  • the program that describes this processing content can be recorded on a computer-readable recording medium.
  • the computer-readable recording medium may be, for example, a magnetic recording device, an optical disk, a photomagnetic recording medium, a semiconductor memory, or the like.
  • the distribution of this program is carried out, for example, by selling, transferring, or renting a portable recording medium such as a DVD or CD-ROM on which the program is recorded.
  • the program may be stored in the storage device of the server computer, and the program may be distributed by transferring the program from the server computer to another computer via a network.
  • a computer that executes such a program first stores, for example, a program recorded on a portable recording medium or a program transferred from a server computer in its own storage device. Then, when the process is executed, the computer reads the program stored in its own storage device and executes the process according to the read program. Further, as another execution form of this program, a computer may read the program directly from a portable recording medium and execute processing according to the program, and further, the program is transferred from the server computer to this computer. It is also possible to execute the process according to the received program one by one each time. In addition, the above processing is executed by a so-called ASP (Application Service Provider) type service that realizes the processing function only by the execution instruction and result acquisition without transferring the program from the server computer to this computer. May be.
  • the program in this embodiment includes information used for processing by a computer and equivalent to the program (data that is not a direct command to the computer but has a property of defining the processing of the computer, etc.).
  • the present device is configured by executing a predetermined program on the computer, but at least a part of these processing contents may be realized by hardware.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

概念を考慮した文字列間の類似度を評価する。類似度評価装置(1)は、第一の文字列と第二の文字列とを入力とし、文字列間の類似度を出力する。用語統一部(11)は、用語統一データを用いて第一の文字列および第二の文字列に含まれる概念が同一で表記が異なる単語を表記が同一となるよう置換する。形態素解析部(12)は、第一の文字列および第二の文字列を形態素解析する。概念削除部(13)は、第一の文字列の形態素解析結果および第二の文字列の形態素解析結果から所定の形態素を削除する。類似度算出部(14)は、第一の文字列の形態素解析結果と第二の文字列の形態素解析結果との両方に含まれる形態素の数を類似度として得る。

Description

類似度評価装置、類似度評価方法、およびプログラム
 本発明は、自然言語処理技術に関し、特に、概念を考慮した文字列間の類似度を評価する技術に関する。
 2つの文字列間の類似度を評価する方法として、「(A)一致する文字の個数」と「(B)一致する文字列の長さ」と「(C)編集距離」と「(D)分散表現による距離」がある。また、これらの方法を組み合わせて最終的な2つの文字列間の類似度を評価することも可能である。
 上記で述べた(A)(B)(C)(D)の4つの類似度の問題点を、例を用いながら説明する。なお、以下では{}(波括弧)は集合を表し、|{}|は集合内の要素数を表す。例として、文字列xを"NTTアドバンステクノロジ株式会社"とし、文字列集合Yを{y0="NTTデータ", y1="バアテクジスドノンロ株式会社", y2="アドバンステクノロジ(NTT)", y3="バンステクノロジ株式会社", y4="西日本電信電話株式会社"}とする。ここでは、Y内のi番目(0≦i≦|Y|-1(=4))の文字列をyiとし、xとyiの類似度をsim(x, yi)とし、xと最も類似度が高いY内の文字列の集合をY*とし、(A)(B)(C)(D)の方法を用いて、式(1)を満たすY*を見つけることを考える。
Figure JPOXMLDOC01-appb-M000001
 この例の場合、概念的にはx="NTTアドバンステクノロジ"とy2="アドバンステクノロジ(NTT)"が最も近いため、この2つの文字列の類似度が最も高いと判断されるべきである。
 「(A)一致する文字の個数」で算出される類似度をsimA(・,・)とする。xとy0, …, y4それぞれについて(A)の方法で算出した類似度は以下となる。
simA(x, y0)=|{'N','T','T'}|=3
simA(x, y1)=|{'バ','ア','テ','ク','ジ','ス','ド','ノ','ン','ロ','株','式','会','社'}|=14
simA(x, y2)=|{'ア','ド','バ','ン','ス','テ','ク','ノ','ロ','ジ','N','T','T'}|=13
simA(x, y3)=|{'バ','ン','ス','テ','ク','ノ','ロ','ジ','株','式','会','社'}|=12
simA(x, y4)=|{'株','式','会','社'}|=4
 したがって、式(2)となる。
Figure JPOXMLDOC01-appb-M000002
 このように、文字の個数で見る場合、文字の並び方を一切考慮しないため、このような概念的に誤った類似度が算出されてしまう。
 「(B)一致する文字列の長さ」で算出される類似度をsimB(・,・)とする。xとy0, …, y4それぞれについて(B)の方法で算出した類似度は以下となる。
simB(x, y0)=|'NTT'|=3
simB(x, y1)=|'株式会社'|=4
simB(x, y2)=|'アドバンステクノロジ'|=10
simB(x, y3)=|'バンステクノロジ株式会社'|=12
simB(x, y4)=|'株式会社'|=4
 したがって、式(3)となる。
Figure JPOXMLDOC01-appb-M000003
 このように、文字列の長さで見る場合、文字の概念を一切考慮しないため、このような概念的に誤った類似度が算出されてしまう。
 「(C)編集距離」で算出される類似度をsimC(・,・)とする。編集距離は、ある文字列aをある文字列bに変化させるためにかかる操作(挿入・削除・置換)の回数と各操作のコストによって算出されるものである。特に、各操作のコストは場合によって変わりうる。さらに、編集距離は、操作の順番次第で異なる距離が算出される。このため、ここでは、各操作のコストを全て同じものとしたときの最小の編集距離(=レーベンシュタイン距離)の例を確認することにする。また、「距離」は値が小さいほど類似度が高いと言えるため、ここでは簡易的にsimC(・,・)は編集距離の逆数として記す。xとy0, …, y4それぞれについて(C)の方法で算出した類似度は以下となる。
simC(x, y0)=1/14
simC(x, y1)=1/8
simC(x, y2)=1/10
simC(x, y3)=1/5
simC(x, y4)=1/13
 したがって、式(4)となる。
Figure JPOXMLDOC01-appb-M000004
 編集距離の場合、y1の先頭にある"NTT"と末尾付近にある"NTT"が同じ概念であるにも関わらず、位置が異なることから、先頭の"NTT"を削除し、末尾付近の"NTT"を挿入する操作となる。このような操作により距離が大きくなってしまい、結果として概念的に誤った類似度が算出されてしまう。
 「(D)分散表現による距離」で算出される類似度をsimD(・,・)とする。分散表現による距離の評価方法は、word2vec(例えば非特許文献1参照)やfastText(例えば非特許文献2参照)と呼ばれる技術が知られている。各文字列の特徴を各文字列が含まれている文書等から算出し、その特徴(=分散表現)をベクトル形式で保持する。2つの文字列の距離(=類似度)を評価する際には、その2つの文字列のベクトルの公知概念であるL2ノルムやコサイン類似度を用いて算出する。(A)から(D)の中では、(D)が最も概念間の類似性に着目した方法となる。
Tomas Mikolov, Kai Chen, Greg S. Corrado, and Jeffrey Dean, "Efficient estimation of word representations in vector space," arXiv:1301.3781,2013. Piotr Bojanowski, Edouard Grave, Armand Joulin, and Tomas Mikolov, "Enriching word vectors with subword information," Transactions of the Association for Computational Linguistics, Vol. 5, pp. 135-146, 2017.
 しかしながら、分散表現による距離では、分散表現を算出するために用いる文書等のデータ内に対象の文字列が含まれていない場合(もしくは出現頻度が非常に低い場合)、その文字列のベクトル(=分散表現)が算出されない。そのため、場合によっては、x, y0のベクトルは存在するが、y1, y2, y3, y4のベクトルは存在しないということがあり得る。この場合、simD(x, y0)以外は評価できない。このように、分散表現による距離では、すべての文字列に対しては類似度を算出することができない場合がある。
 この発明の目的は、上記のような技術的課題を鑑みて、分散表現を用いずに、概念を考慮した文字列間の類似度を評価することである。
 上記の課題を解決するために、本発明の一態様の類似度評価装置は、第一の文字列および第二の文字列を形態素解析する形態素解析部と、第一の文字列の形態素解析結果と第二の文字列の形態素解析結果との両方に含まれる形態素の数を類似度として得る類似度算出部と、を含む。
 この発明によれば、分散表現を用いずに、概念を考慮した文字列間の類似度を評価することができる。
図1は、類似度評価装置の機能構成を例示する図である。 図2は、類似度評価方法の処理手順を例示する図である。 図3は、コンピュータの機能構成を例示する図である。
 以下、この発明の実施の形態について詳細に説明する。なお、図面中において同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
 実施形態の類似度評価装置1は、図1に例示するように、用語統一データ記憶部10-1、形態素解析モデル記憶部10-2、用語統一部11、形態素解析部12、および類似度算出部14を備える。類似度評価装置1は、概念削除部13をさらに備えていてもよい。この類似度評価装置1が、図2に例示する各ステップの処理を行うことにより実施形態の類似度評価方法が実現される。
 類似度評価装置1は、例えば、中央演算処理装置(CPU: Central Processing Unit)、主記憶装置(RAM: Random Access Memory)などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。類似度評価装置1は、例えば、中央演算処理装置の制御のもとで各処理を実行する。類似度評価装置1に入力されたデータや各処理で得られたデータは、例えば、主記憶装置に格納され、主記憶装置に格納されたデータは必要に応じて中央演算処理装置へ読み出されて他の処理に利用される。類似度評価装置1の各処理部は、少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。類似度評価装置1が備える各記憶部は、例えば、RAM(Random Access Memory)などの主記憶装置、ハードディスクや光ディスクもしくはフラッシュメモリ(Flash Memory)のような半導体メモリ素子により構成される補助記憶装置、またはリレーショナルデータベースやキーバリューストアなどのミドルウェアにより構成することができる。
 類似度評価装置1は、文字列xと文字列集合Y={y0, …, y|Y|-1}を入力とし、文字列xと文字列集合Yとの類似度集合S={simprop(x,y0), …, simprop(x,y|Y|-1)}を出力する。ただし、simprop(x,yi)は文字列xと文字列yi∈Yとの類似度を表す。
 用語統一データ記憶部10-1には、用語統一データZ={z0, …, z|Z|-1}が記憶されている。ここで、zi∈Zは同じ概念を持ち表記が異なる文字列の集合であり、|Z|は{x}∪Y内の概念数である。
 形態素解析モデル記憶部10-2には、形態素解析モデルmが記憶されている。形態素解析モデルmは、例えばMeCab(参考文献1参照)やJUMAN(参考文献2参照)などの形態素解析器を利用して予め準備しておく。
 〔参考文献1〕“MeCab: Yet Another Part-of-Speech and Morphological Analyzer”、[online]、[令和1年7月29日検索]、インターネット<URL: http://taku910.github.io/mecab/>
 〔参考文献2〕“JUMAN - KUROHASHI-KAWAHARA LAB”、[online]、[令和1年7月29日検索]、インターネット<URL: http://nlp.ist.i.kyoto-u.ac.jp/index.php?JUMAN>
 以下、図2を参照して、実施形態の類似度評価装置1が実行する類似度評価方法について説明する。
 ステップS11において、用語統一部11は、文字列xとすべての文字列yi∈Yに表記が異なるが同じ概念である用語が含まれている場合、用語統一データ記憶部10-1に記憶されている用語統一データZを用いて用語を統一化し、用語統一された文字列x'および文字列y'i∈Y'を生成する。なお、YおよびY'は順序付き集合(=リスト)であり、y'i∈Y'にはyi∈Yを用語統一した後の文字列が格納される。用語統一部11は、用語統一された文字列x'および文字列集合Y'を形態素解析部12へ出力する。
 用語統一部11の処理の詳細を以下に示す。ここで、z(i,0)はziの0番目の要素とする。
Algorithm 1: 用語統一部
Input: 文字列x, 文字列集合Y, 用語統一データZ
Output: 用語統一されたx', Y'
 1: for i∈[0, |Z|-1] do
 2:   if x∈zithen
 3:     x'←z(i,0)
 4:   end if
 5: end for
 6: Yと同じ大きさの要素を持つY'を作成(ただし、∀i∈[0, |Y'|-1]において、y'i∈Y'は空値であるとする)
 7: for i∈[0, |Y|-1] do
 8:   for j∈[0, |Z|-1] do
 9:     if yi∈zj then
10:       y'i←z(i,0)
11:     end if
12:   end for
13: end for
14: return x', Y'
 例えば、用語統一データziがzi={"NTT","日本電信電話株式会社"}であるとする。このとき、xやyi∈Yに文字列"日本電信電話株式会社"が含まれている場合、その文字列"日本電信電話株式会社"は文字列z(i,0)="NTT"に置換される。
 ステップS12において、形態素解析部12は、文字列x'およびすべての文字列y'i∈Y'に対して、形態素解析モデル記憶部10-2に記憶されている形態素解析モデルmを用いて形態素ごとに分解し、文字列x'の形態素解析結果x"および文字列y'i∈Y'の形態素解析結果y"i∈Y"を生成する。なお、Y'およびY"は順序付き集合(=リスト)であり、y"i∈Y"にはy'i∈Y'を形態素解析した結果が格納される。形態素解析部12は、形態素解析結果x"および形態素解析結果集合Y"を類似度算出部14へ出力する。
 形態素解析部12の処理の詳細を以下に示す。ここでは、形態素解析モデルを関数「m: 文字列→文字列集合」として表現する。
Algorithm 2: 形態素解析部
Input: 用語統一された文字列x', 文字列集合Y', 形態素解析モデルm
Output: 形態素ごとに分解されたx", Y"
 1: x"=m(x')
 2: Y'と同じ大きさの要素を持つY"を作成(ただし、∀i∈[0, |Y"|-1]において、y"i∈Y"は空集合であるとする)
 3: for i∈[0, |Y'|-1] do
 4:   y"i←m(y'i)
 5: end for
 6: return x", Y"
 例えば、文字列xが"NTTアドバンステクノロジ株式会社"であれば、m(x)はxの形態素(≒概念)集合m(x)={"NTT","アドバンス","テクノロジ","株式会社"}のようになる。なお、形態素の分け方は、形態素解析器のアルゴリズムや形態素解析モデルを算出するために用いるデータセットに依存する。
 ステップS14において、類似度算出部14は、形態素解析結果x"と形態素解析結果y"i∈Y"のすべての組に対して類似度simprop(x,yi)∈Sを算出する。類似度算出部14は、類似度集合Sを類似度評価装置1の出力とする。
 類似度算出部14の処理の詳細を以下に示す。ここでx"iはx"のi番目の要素とし、y"(i,j)はy"iのj番目の要素とする。
Algorithm 3: 類似度算出部
Input: 文字列x, 文字列集合Y, 形態素ごとに分解されたx", Y"
Output: 各要素がYの要素に対応する類似度ベクトルS
 1: Yの要素と対応する要素を持つ集合Sを作成(ただし、si∈S(i∈[0, |S|-1])の初期値は0であるとする)
 2: for i∈[0, |x"|-1] do
 3:   for j∈[0, |Y"|-1] do
 4:     for k∈[0, |y"j|-1] do
 5:       if x"i=y"(j,k)then
 6:         sj=sj+1
 7:       end if
 8:     end for
 9:   end for
10: end for
11: return S
 例えば、x"={"NTT","アドバンス","テクノロジ","株式会社"}、y"0={"NTT","データ"}、の場合、y"0はx"の要素のうち"NTT"のみ共通である。ゆえに、この場合、x"とy"0との類似度はs0=1となる。
 〔変形例〕
 例えば、類似度評価の対象とする文字列の概念が予め推測できる場合(例えば、上記の例のように「会社名」であることがわかっている場合)、その概念を表す単語(例えば、上記の例では「株式会社」)で類似度を測っても効果がない、あるいは、逆効果である。このように効果がない、あるいは、逆効果を引き起こす概念が予めわかっている場合、形態素解析結果からその概念を削除するとよい。
 この場合、類似度評価装置1は概念削除部13をさらに備える。概念削除部13は、形態素解析部12が出力する形態素解析結果x"および形態素解析結果y"i∈Y"から予め定めた概念(=形態素)を削除して、類似度算出部14へ出力する。
 〔具体例〕
 上記の例を用いて処理の流れを具体的に例示する。
 類似度評価装置1に入力される文字列xは"NTTアドバンステクノロジ株式会社"であり、文字列集合Yは{y0="NTTデータ", y1="バアテクジスドノンロ株式会社", y2="アドバンステクノロジ(NTT)", y3="バンステクノロジ株式会社", y4="西日本電信電話株式会社"}である。
 用語統一部11の処理により、文字列xはx'="NTTアドバンステクノロジ株式会社"となり、文字列集合YはY'={y'0="NTTデータ", y'1="バアテクジスドノンロ株式会社", y'2="アドバンステクノロジ(NTT)", y'3="バンステクノロジ株式会社", y'4="西NTT"}となる。
 形態素解析部12の処理により、文字列x'はx"={"NTT","アドバンス","テクノロジ","株式会社"}となり、文字列集合Y'はY"={y"0={"NTT","データ"}, y"1={"バアテクジスドノンロ","株式会社"}, y"2={"アドバンス","テクノロジ","(","NTT",")"}, y"3={"バンステクノロジ","株式会社"}, y"4={"西","NTT"}}となる。
 類似度算出部13の処理により、xと各yi∈Yの類似度は、以下のようになる。
simprop(x, y0)=1
simprop(x, y1)=1
simprop(x, y2)=3
simprop(x, y3)=1
simprop(x, y4)=1
 上記より、xとy2が最も類似度が高いと評価されており、分散表現を用いずに概念を考慮した文字列間の類似度評価を行うことができたと言える。
 〔応用例〕
 上記の具体例では処理手順が理解しやすいように極端な例を示したが、ここでは実際のサービスに応用することで発明の効果が発揮される例を示す。ある組織Aが、自身が扱っている商品をカテゴリ分けしたいとする。また、他の組織Bは、自身が扱っている商品のカテゴリ分けを既に行っているものとする。そこで、組織Aは組織Bのカテゴリ分けを参考にして、自身が扱っている商品のカテゴリ分けを行うシチュエーションを考える。
 組織Aが扱っている商品のデータを、表1のx1, …, x3とする。ただし、「○○○」「△△△」「◆◆◆」「◇◇◇」等はメーカー名等の固有名詞である。
Figure JPOXMLDOC01-appb-T000005
 組織Bが保有するカテゴリ分け済みのデータを、表2のY11, …, Y16, Y21, …, Y25, Y31, …, Y36とする。
Figure JPOXMLDOC01-appb-T000006
 表1に示した組織Aのデータを文字列xとし、表2に示した組織Bのデータを文字列集合Yとして、本願発明により類似度を算出すると、以下のようになる。なお、sim(・,・)は本発明で算出される類似度であり、波括弧内の文字列は2つの文字列に共通して存在する形態素である。
sim(x1, Y11)=|{}|=0
sim(x1, Y12)=|{}|=0
sim(x1, Y13)=|{}|=0
・・・
sim(x3, Y34)=|{"家具"}|=1
sim(x3, Y35)=|{"収納","ワゴン"}|=2
sim(x3, Y36)=|{"◆◆◆","◇◇◇","押入れ","収納","ラック","キャスター","付き","幅"}|=8
 類似度が高いx内の文字列とY内の文字列の組において、Y内の文字列をx内の文字列に置換した結果を表3に示す。例えば、組織Aの扱うx3の商品は、組織Bの扱うY36の商品との類似度が高いため、Y36をx3で置き換えることで、x3に対してY31, …, Y35のカテゴリをあてはめることができた。これにより、組織Aは、組織Bが保有するカテゴリ分けを参考にして、自身が扱っている商品を適切にカテゴリ分けすることができた。
Figure JPOXMLDOC01-appb-T000007
 〔発明のポイント〕
 従来の文字列間の類似度評価では、分散表現を用いなければ概念を考慮した類似度を評価することができなかった。また、特に固有名詞のように出現頻度が高くない場合、類似度を評価する対象のすべての文字列の分散表現を算出できない場合がある。このため、分散表現を用いずに概念を考慮した類似度を評価することが課題となっていた。本発明によれば、形態素解析結果から類似度を算出することができるため、分散表現を用いずに概念を考慮した類似度を評価することができる。特に、固有名詞では形態素の並びには意味がないことが多いため、出現頻度に着目した類似度を構成することにより、適切に類似度を評価することができるようにした。
 以上、この発明の実施の形態について説明したが、具体的な構成は、これらの実施の形態に限られるものではなく、この発明の趣旨を逸脱しない範囲で適宜設計の変更等があっても、この発明に含まれることはいうまでもない。実施の形態において説明した各種の処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
 [プログラム、記録媒体]
 上記実施形態で説明した各装置における各種の処理機能をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムを図3に示すコンピュータの記憶部1020に読み込ませ、制御部1010、入力部1030、出力部1040などに動作させることにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
 この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
 また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
 このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記憶装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
 また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。

Claims (5)

  1.  第一の文字列および第二の文字列を形態素解析する形態素解析部と、
     上記第一の文字列の形態素解析結果と上記第二の文字列の形態素解析結果との両方に含まれる形態素の数を類似度として得る類似度算出部と、
     を含む類似度評価装置。
  2.  請求項1に記載の類似度評価装置であって、
     概念が同一で表記が異なる複数の単語を組にした用語統一データを記憶する記憶部と、
     上記用語統一データを用いて上記第一の文字列および上記第二の文字列に含まれる概念が同一で表記が異なる単語を表記が同一となるよう置換する用語統一部と、
     をさらに含む類似度評価装置。
  3.  請求項1または2に記載の類似度評価装置であって、
     上記第一の文字列の形態素解析結果および上記第二の文字列の形態素解析結果から所定の形態素を削除する概念削除部をさらに含む、
     類似度評価装置。
  4.  形態素解析部が、第一の文字列および第二の文字列を形態素解析し、
     類似度算出部が、上記第一の文字列の形態素解析結果と上記第二の文字列の形態素解析結果との両方に含まれる形態素の数を類似度として得る、
     類似度評価方法。
  5.  請求項1から3のいずれかに記載の類似度評価装置としてコンピュータを機能させるためのプログラム。
PCT/JP2019/031215 2019-08-07 2019-08-07 類似度評価装置、類似度評価方法、およびプログラム WO2021024430A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US17/631,503 US20220284189A1 (en) 2019-08-07 2019-08-07 Similarity score evaluation apparatus, similarity score evaluation method, and program
JP2021538633A JPWO2021024430A1 (ja) 2019-08-07 2019-08-07
PCT/JP2019/031215 WO2021024430A1 (ja) 2019-08-07 2019-08-07 類似度評価装置、類似度評価方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/031215 WO2021024430A1 (ja) 2019-08-07 2019-08-07 類似度評価装置、類似度評価方法、およびプログラム

Publications (2)

Publication Number Publication Date
WO2021024430A1 true WO2021024430A1 (ja) 2021-02-11
WO2021024430A9 WO2021024430A9 (ja) 2021-03-04

Family

ID=74503140

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/031215 WO2021024430A1 (ja) 2019-08-07 2019-08-07 類似度評価装置、類似度評価方法、およびプログラム

Country Status (3)

Country Link
US (1) US20220284189A1 (ja)
JP (1) JPWO2021024430A1 (ja)
WO (1) WO2021024430A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003058535A (ja) * 2001-08-16 2003-02-28 Oki Electric Ind Co Ltd 情報管理装置
JP2004220513A (ja) * 2003-01-17 2004-08-05 Canon Inc 情報検索装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6810376B1 (en) * 2000-07-11 2004-10-26 Nusuara Technologies Sdn Bhd System and methods for determining semantic similarity of sentences
US7392240B2 (en) * 2002-11-08 2008-06-24 Dun & Bradstreet, Inc. System and method for searching and matching databases
JP4368336B2 (ja) * 2005-07-13 2009-11-18 富士通株式会社 カテゴリ設定支援方法及び装置
JP6056610B2 (ja) * 2013-03-29 2017-01-11 株式会社Jvcケンウッド テキスト情報処理装置、テキスト情報処理方法、及びテキスト情報処理プログラム
WO2020144730A1 (ja) * 2019-01-07 2020-07-16 富士通株式会社 抽出方法、抽出プログラムおよび情報処理装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003058535A (ja) * 2001-08-16 2003-02-28 Oki Electric Ind Co Ltd 情報管理装置
JP2004220513A (ja) * 2003-01-17 2004-08-05 Canon Inc 情報検索装置

Also Published As

Publication number Publication date
JPWO2021024430A1 (ja) 2021-02-11
US20220284189A1 (en) 2022-09-08
WO2021024430A9 (ja) 2021-03-04

Similar Documents

Publication Publication Date Title
US10282468B2 (en) Document-based requirement identification and extraction
US11176325B2 (en) Adaptive evaluation of meta-relationships in semantic graphs
Zeng et al. Domain-specific Chinese word segmentation using suffix tree and mutual information
US11613008B2 (en) Automating a process using robotic process automation code
US11003701B2 (en) Dynamic faceted search on a document corpus
US10978053B1 (en) System for determining user intent from text
JP2005174336A (ja) 情報抽出のための一般化文字列パターンの学習および使用
Mayer et al. A challenge for tier-based strict locality from Uyghur backness harmony
Leydesdorff In search of epistemic networks
Alian et al. Word sense disambiguation for Arabic text using Wikipedia and Vector Space Model
Laskar et al. CQSumDP: a ChatGPT-annotated resource for query-focused abstractive summarization based on debatepedia
Hamed et al. Code-switching language modeling with bilingual word embeddings: A case study for egyptian arabic-english
CA2561087A1 (en) Induction of grammar rules
Mesmia et al. ASRextractor: a tool extracting semantic relations between Arabic named entities
WO2021024430A1 (ja) 類似度評価装置、類似度評価方法、およびプログラム
JP4361299B2 (ja) 評価表現抽出装置、プログラム、及び記憶媒体
US20200226181A1 (en) Semantic queries based on semantic representation of programs and data source ontologies
Chawla et al. ProBot: an online aid to procurement
Popova et al. Keyphrase extraction using extended list of stop words with automated updating of stop words list
CN113761213B (zh) 一种基于知识图谱的数据查询系统、方法及终端设备
JP2007172179A (ja) 意見抽出装置、意見抽出方法、および意見抽出プログラム
Abulaish et al. A contextual semantic-based approach for domain-centric lexicon expansion
Adamu et al. A framework for enhancing the retrieval of UML diagrams
Weiying et al. Benchmarking nlp toolkits for enterprise application
Jo et al. Text indexing

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19940574

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021538633

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19940574

Country of ref document: EP

Kind code of ref document: A1