JP7007793B2 - 類似文字列検出装置及び類似文字列検出方法並びに類似文字列検出プログラム - Google Patents

類似文字列検出装置及び類似文字列検出方法並びに類似文字列検出プログラム Download PDF

Info

Publication number
JP7007793B2
JP7007793B2 JP2016167611A JP2016167611A JP7007793B2 JP 7007793 B2 JP7007793 B2 JP 7007793B2 JP 2016167611 A JP2016167611 A JP 2016167611A JP 2016167611 A JP2016167611 A JP 2016167611A JP 7007793 B2 JP7007793 B2 JP 7007793B2
Authority
JP
Japan
Prior art keywords
value
character string
character
total
difference
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016167611A
Other languages
English (en)
Other versions
JP2018036744A (ja
Inventor
大祐 野村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Pasco Corp
Original Assignee
Pasco Corp
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 Pasco Corp filed Critical Pasco Corp
Priority to JP2016167611A priority Critical patent/JP7007793B2/ja
Publication of JP2018036744A publication Critical patent/JP2018036744A/ja
Application granted granted Critical
Publication of JP7007793B2 publication Critical patent/JP7007793B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、複数文字列のデータの中から、相互に類似する文字列データ(以下単に「文字列」とも言う)を検出する類似文字列検出装置及び類似文字列検出方法並びに類似文字列検出プログラムに関する。
従来、複数の文字列データの中から、相互に類似する文字列を検出する装置あるいは方法として、文字列中の一部の文字からなるキーワードを用いて、このキーワードが存在するか否かを検出する装置あるいは方法が知られている(例えば、下記の特許文献1参照)。また、キーワードが完全一致するとは限らないので、文字列の揺れを考慮してキーワードと類似する文字列についてキーワードとの類似度に応じて点数を付して検索する手法が知られている(例えば、下記の特許文献2参照)。
しかしながら、文字列データを作成する際に、入力する人の注意不足などにより、例えば、ハイフンとマイナス記号、あるいは長音記号などを混同したり、カタカナの「ノ」と漢字の「之」とを取り違えたりすることが散見される。また、日本語の場合、全角と半角を混同することもしばしばある。また、入力者の注意不足により、同一文字を重複して入力したり、あるいは脱字が生じる場合もある。さらに、入力ミスではないが、同一対象物の名称を示す文字列中の年を示す文字列のみが異なったり、対象物の名称を示す文字列中のほとんどは共通しているが、例えば構造物の長さを示す数字の文字列のみが異なる複数の類似文字列が混在することがある。このように文字列データを作成する際の入力ミスによる誤字や脱字、あるいは入力ミスではないが年や一部数値のみが異なる部分は、文字列全体の中では1箇所から数カ所程度であることが多く、文字列中に一部他の文字列と異なる部分が存在するものを表記揺れという。
上記ハイフンとマイナス記号、あるいは長音記号などを混同したり、カタカナの「ノ」と漢字の「之」の取り違えの場合、これらは経験的にあり得る揺れであるので、誤記の予測がつきやすく比較的容易に類似文字列として検出可能である。しかしながら、予測が困難な誤字や脱字の場合や、文字列中の特定部分の数値などのみが異なるような、表記揺れを機械的に検出することは困難である。
例えば、部分一致検索により特定の語句の揺れを検出する場合、経験的に予測可能な揺れに対しては、事前にあたりをつけた語句により検出することが可能であるが、網羅的に実施しようとする場合は、文字列中の任意文字列を抽出する場合の文字数、すなわち、文字列中のどの位置から何文字分を検索対象語句とするか、を決めて検索を行う必要があり、極めて非効率的である。
特開2009-129272号公報(要約書、段落[0005]~[0006]、図6) 特開平8-69474号公報(要約書、段落[0018]~[0029]、図5)
特許文献1の従来技術では、文字列中の特定の任意の文字列をキーワードとして検索しているが、これでは、表記揺れが予測困難な場合には、キーワードの一致をみることが困難であり、また、網羅的にキーワードの一致を検索することは非効率的である。また、上記特許文献2の場合は、キーワードとの類似度を考慮して表記揺れに対応しようとしているが、類似度を考慮してキーワードに類似する範囲を一定程度検索したとしても、表記揺れが予測困難な場合には、類似度を考慮してのキーワードの一致をみることが困難であり、また、網羅的にキーワードの一致を検索することは非効率的である。さらに特許文献2は、入力されたキーワードと検索対象文書内の文字列の類似度を判断するものであって、複数の文字列間の類似度を判断する手法を開示するものではない。
上記の問題点を考慮して、本発明は、表記揺れが予測困難な場合であっても、複数の文字列間の類似度を数値により検出して、類似文字列を検出することができる類似文字列検出装置を提供することを目的とする。
また、本発明は、表記揺れが予測困難な場合であっても、複数の文字列間の類似度を数値により検出して、類似文字列を検出することができる類似文字列検出方法を提供することを目的とする。
さらに、本発明は、表記揺れが予測困難な場合であっても、複数の文字列間の類似度を数値により検出して、類似文字列を検出することができる類似文字列検出プログラムを提供することを目的とする。
上記の目的を達成するため、本発明の類似文字列検出装置は、複数の文字列データに対して文字単位で、文字コードに変換する手段と、前記複数の文字列データの各文字列について前記変換されて得られた文字コードを所定の演算式により演算し、総計値を求める手段と、前記各文字列の前記総計値を昇順あるいは降順で並べ変えることにより、前記各文字列の前記総計値をソーティングする手段と、前記ソーティングされて並べ変えられた前記各文字列の総計値に対して、隣り合う文字列の総計値同士の差分を得る差分生成手段と、前記ソーティングされて並べ変えられた前記演算により得られた各文字列の前記総計値の平均と各前記総計値との距離を算出し、算出した値で前記差分を除算した数値を重み付きの差分とする重み付きの差分生成手段と、前記ソーティングされて並べ変えられた前記演算により得られた各文字列の前記総計値の最大値から前記総計値の最小値を減算して得られた数値を前記文字列の数で除算して得られた平均的な前記総計値の間隔を前記総計値の標準偏差で除算して得られた値を閾値として生成する閾値生成手段と、前記総計値に対して、前記重み付きの差分が前記閾値以上かあるいは前記閾値未満かを判断して前記複数の文字列をグループ化する手段とを有する。
また、本発明の類似文字列検出方法は、複数の文字列データに対して文字単位で、文字コードに変換するステップと、前記複数の文字列データの各文字列について前記変換されて得られた文字コードを所定の演算式により演算し、総計値を求めるステップと、
前記各文字列の前記総計値を昇順あるいは降順で並べ変えることにより、前記各文字列の前記総計値をソーティングするステップと、前記ソーティングされて並べ変えられた前記各文字列の総計値に対して、隣り合う文字列の総計値同士の差分を得る差分生成ステップと、前記ソーティングされて並べ変えられた前記演算により得られた各文字列の前記総計値の平均と各前記総計値との距離を算出し、算出した値で前記差分を除算した数値を重み付きの差分とする重み付きの差分生成ステップと、前記ソーティングされて並べ変えられた前記演算により得られた各文字列の前記総計値の最大値から前記総計値の最小値を減算して得られた数値を前記文字列の数で除算して得られた平均的な前記総計値の間隔を前記総計値の標準偏差で除算して得られた値を閾値として生成する閾値生成ステップと、
前記総計値に対して、前記重み付きの差分が前記閾値以上かあるいは前記閾値未満かを判断して前記複数の文字列をグループ化するステップとをとを有する。
さらに、本発明の類似文字列検出プログラムは、コンピュータに実行させるステップとして複数の文字列データに対して文字単位で、文字コードに変換するステップと、前記複数の文字列データの各文字列について前記変換されて得られた文字コードを所定の演算式により演算し、総計値を求めるステップと、前記各文字列の前記総計値を昇順あるいは降順で並べ変えることにより、前記各文字列の前記総計値をソーティングするステップと、前記ソーティングされて並べ変えられた前記各文字列の総計値に対して、隣り合う文字列の総計値同士の差分を得る差分生成ステップと、前記ソーティングされて並べ変えられた前記演算により得られた各文字列の前記総計値の平均と各前記総計値との距離を算出し、算出した値で前記差分を除算した数値を重み付きの差分とする重み付きの差分生成ステップと、前記ソーティングされて並べ変えられた前記演算により得られた各文字列の前記総計値の最大値から前記総計値の最小値を減算して得られた数値を前記文字列の数で除算して得られた平均的な前記総計値の間隔を前記総計値の標準偏差で除算して得られた値を閾値として生成する閾値生成ステップと、前記総計値に対して、前記重み付きの差分が前記閾値以上かあるいは前記閾値未満かを判断して前記複数の文字列をグループ化するステップとを有する。
前記ソーティングが前記演算により得られた各文字列の数値を昇順あるいは降順で並べ変えることは、本発明の好ましい態様の1つである。
前記ソーティングされて並べ変えられた前記演算により得られた各文字列の数値を画面に表示することは、本発明の好ましい態様の1つである。
記グループ化された前記複数の文字列を画面に表示することは、本発明の好ましい態様の1つである。


前記所定の演算式として、変換されて得られた数値の合計値を求めることは、本発明の好ましい態様の1つである。
前記所定の演算式として、変換されて得られた数値に所定の重み付けをしてから合計値を求めることは、本発明の好ましい態様の1つである。
本発明は、前記の構成又はステップを有しており、比較的簡単な処理によって、同程度の文字数の文字列の類似性を数値として表現でき、よって、類似する文字列を検索することが可能となる。
本発明は、あらゆる複数の文字列データに対して適用可能であるが、例えば、土木工事の件名や契約名、土木工事用図面の名称など台帳にデータとして記載されていたり、所定の記憶装置に記録されている場合であって、文字列中に誤字や脱字などあり、文字列に揺れが生じているような場合や、誤字、脱字はないものの、同一対象に対する件名などが
年度のみ異なっていたり、文字列中の一部の数値のみが異なっていることにより、文字列に揺れが生じているような場合に、これらのデータの整理に有用である。すなわち、複数の文字列中の多くの文字が一致しているものの、番号のみが異なっていたり、橋梁の長さを表す数字部分のみが異なっていたり、不要なアンダーバーが入っていたりするような場合には、単純な前方一致検索や特定語(キーワード)の検索では、効率的な検索が困難であるが、本発明によれば、文字をコード化して演算を行うので、類似文字列の演算結果同士は近似する数値を示すこととなり、よって、近似する演算結果を示す文字列が類似の件名であったり、関連する件名や図面名称ということになる。
本発明の実施の形態にかかる類似文字列検出処理の概要を示すフローチャートである。 本発明の実施の形態にかかる類似文字列検出装置の構成の一例を示すブロック図である。 本発明の実施の形態にかかる類似文字列検出処理において、図1中のステップS5の例を示すフローチャートである。
以下、図面を参照しながら、本発明の実施の形態について説明する。
図1は、本発明の実施の形態にかかる類似文字列検出処理の概要を示すフローチャートである。このフローチャートは、図2に示す類似文字列検出装置10におけるCPU16の動作を示すものでもある。図2に示す類似文字列検出装置10は、外部から複数の文字列データを受領するインターフェイス(I/F)12と、インターフェイス12を介して受領した文字列データや、後述するコード化情報や演算結果を格納する記憶部14と、演算その他の各種処理を行うCPU(中央演算処理装置)16と、操作者が種々の指示をCPU16に与える操作部18と、CPU16の指示により所定データを画面に表示する表示部20とを有する。上記記憶部14としては、半導体メモリからなるRAMを用いることができる。また上記操作部18としては、一般的にパソコンで用いられるキーボードやマウスを用いることができる。また、上記表示部20としては、一般的にパソコンで用いられる液晶などのディスプレイを用いることができる。なお、実際は、CPU16を起動させるための基本プログラムが格納されているROMや表示部20に画像を表示させるためのビデオRAMなどが存在するが、説明を簡略化するために、図示を省略している。
図1に戻り、動作を説明する。今複数の文字列データについて検索するものとし、外部から、図示省略の通信回線あるいはUSBメモリや光ディスクなどの可搬型記憶装置を介して、複数の文字列データがインターフェイス12を介して入力されるものとする。もちろん、外部からのデータではなく、所定の複数の文字列データを予め記憶部14に格納しておいてもよい。ステップS1は、このように複数の文字列データが記憶部14に格納されることを示している。
次にステップS2において、各文字列データの各文字毎にコード化を行う。ここで用いる文字列コードとは、例えば、ASCIIコードや、ユニコードである。ASCIIコードやユニコードを用いた場合は、1バイト文字である英数字記号の数値が小さくなるため、記号や数値の揺れがある文字列の類似文字列として検出し易いという特徴がある。
今、一例として、下記の2つの文字列について、各文字毎にコード化する場合を、ユニコードの一種である、UCS-2文字コードに変換する場合を示す。
Figure 0007007793000001
下記の表は、表1に示す2つの文字列に対する上記UCS-2文字コードを示している。
Figure 0007007793000002
ステップS3では、上記UCS-2文字コードによりコード化し、その結果得られた数値に対して文字列毎に所定の演算を行う。
いま、演算の1種として、各文字列についての所定の演算として、各文字の数値の和を求めることとする。その結果、上記2つの文字列に対して、表2中にも<計>として示したように下記の演算結果を得ることができる。以下この和を総計値と呼ぶこととする。
Figure 0007007793000003
上記2つの文字列の場合、異なっているのは、先頭から5文字目と6文字目の数字と、先頭から16文字目の「桁」の文字の後が第1行目では「床」の文字なっているが、第2行目では「_」が挿入されている点であり、その他の文字は一致しているので演算結果である総計値が近似した数値となっている。上記2つの文字列は、分かり易くするために2つのみ表示したものであるが、実際には、多くの文字列を対象とすることにより、互いに類似する文字列を検出することができるのである。演算をした後、ステップS4で演算結果の数値をソーティングして例えば、昇順で(数値の小さいものから大きいものへ)並べ変える。なお、並べ変えは降順で(数値の大きいものから小さいものへ)もよい。昇順でソーティングした具体例を次に示す。
Figure 0007007793000004
表4は、19個の文字列について演算で得られた総計値を昇順でソーティングした場合の文字列と数値を示すものである。ここで便宜上各文字列を行と呼ぶこととする。したがって、表4は、19行の文字列とその演算結果を示している。1行目と2行目の数値差は、2410であり、2行目と3行目の数値差は、12953であり、3行目と4行目の数値差は、2であり、同種あるいは類似の文字列間では数値差が極めて少なく、異種あるいは非類似の文字列との間の数値差はかなり大きいことがわかる。以下、行間の数値差を差分と呼ぶこととする。
なお、表4は、実際の複数の文字列の演算値データを間引きせずにソーティングしたものである。演算値を用いないで、複数の文字列を単純に名称順に並べた場合、冒頭の方の文字に差異があると、本来類似する文字列であってもソーティングしたときに離れた位置になってしまう。しかし本発明のように文字コードの演算結果を用いた場合は、表記揺れが生じる位置によらず相互に類似する文字列は近接するので、目視チェックによる同種工事、同種図面かどうかの判断が飛躍的に効率化されることとなる。したがって、高度なアルゴリズムや長時間にわたる処理が必要で無くなり、よって非力なパソコン環境でも簡便に短時間で実施できる。
したがって、ステップS4でのソーティング結果を表示部20に表示するだけでも操作者が目視で、類似する文字列群を容易に把握することができる。さらにステップS5を実行することにより、差分の少ない文字列同士をグループ化して抽出し、差分の大きい他のグループの文字列とは分離して表示部20に表示することもできる。
次に、上記表4の数値に対して下記の処理を行うことにより、類似文字列群を自動的に検出する方法について図3のフローチャートに基づいて説明する。下記の表5は、表4の右欄の数値である総計値を第1行目から第19行目まで順に並べ、次いで各行の数値(総計値)とその下の行の数値の差分を計算し、その差分が閾値としての所定値以上かあるいは所定値未満かを検出した結果を示すものである。なお、第19行目は、その下の行が存在しないので、差分値は計算しない。図3のフローチャートは、図1のフローチャートのステップS5の好ましい例を示すものであり、ステップS11は、上記差分の計算を示している。
Figure 0007007793000005
差分値が比較的大きい場合は、その行とその下の行の文字列同士の類似度が低い、あるいは非類似であることを示し、差分値が比較的小さい場合は、その行とその下の行の文字列同士の類似度が高いことを示している。差分値が0の場合は、その行とその下の行の文字列同士が完全に一致している場合が多い。希に、完全一致ではなく、いくつかの文字が異なる場合であっても、数値の合計値が同一となり、差分が0となることは、理論上あり得る。表5は、以下に説明する簡易グループ判定の場合と、重み付きグループ判定の2つの判定手法を示している。
まず、簡易グループ判定について説明する。表4の例のように文字コード総計値の分散が小さく、一様な分布として扱える場合には、差分値が固定の閾値を超えているかどうかで簡易的なグルーピングを行うことができる。例えば、総計値の最大値(Maxから最小値(Min)を引いて、行の数で割った値、すなわち、上記例では、4140.8421は平均的な総計値の間隔となるが、この値、あるいはグルーピングの状況を見てこの値を調整したものを閾値として用いて、総計値でソートしたときの前行との差分値がこの閾値未満かどうかでグルーピングを判断することもできる。今、平均的な総計値の間隔である、4140.8421を閾値として用いると、各行の差分値が閾値より小さければ、類似度が高いと判断し、一方、各行の差分値が閾値以上であれば、類似度が低いと判断する。
表5中、簡易グループ判定欄の、「<」は、差分値が閾値未満であることを示し、一方「≧」は、差分値が閾値以上であることを示している。なお、後述する、重み付きグループ
判定においてもこれらの記号は同様である。なお、第1行目の場合は、その上の行は存在しないので、当該行のみの差分値で判断し、第19行目の場合は、当該行の差分値は存在しないので、当該行の上の行の差分値のみで判断する。
上記簡易グループ判定では、平均的な総計値の間隔である、4140.8421を閾値として用いたが、文字列間の類似度が極めて高い文字列のみを検出するためには、この閾値をより小さな値に設定することもできる。表5では、差分が1桁、すなわち9未満の場合に類似度が極めて高いことから、閾値を、例えば10、50、あるいは100などに任意に設定することもできる。このように上記閾値を適切に設定することにより、各行の差分値を評価して各差分値が閾値値未満かあるいは閾値以上あるかを自動的に判断して、類似文字列群を検出することが可能となる。なお、複数の閾値を用いて順次グループ判定することもできる。
次に、重み付きグループ判定について説明する。文字コード総計値の分散が大きく、かつ正規分布で近似できる場合には、値の密集する平均値付近で判定基準をより厳しくしたい場合がある。すなわち、平均値に近いデータでは、より厳しい閾値でグループにするかどうかを判定したいのである。1つの例として、平均からの距離により差分値に重み付けをするため、総計値の平均と各総計値の差を符号をとるために2乗し、次に次数を戻すために平方根をとり、この後ゼロ除算にならないようにさらに1を加えた値を平均との距離として、差分をこの値で割ったものを重み付きの差分とする。閾値は先の平均間隔を総計値の標準偏差(平均距離)で割った値とする。
中の重み付きグループ判定はその例であり、実務上は閾値を調整することで判定精度を向上させることができる。なお、ここで挙げた特定の例によらずとも、簡易的に得られる文字コードの総計値等の指標を、文字列の類似度を推定するための機械的な計算に様々に用いることができる。例えば、クラスタリング等のデータマイニング手法などを用いることができる。
図3に戻り、上記2つのグループ判定を説明すると、ステップS12は、ソーティングされた演算結果を用いて差分の閾値を計算するものである。また、ステップS13は、各文字列の差分とステップS12で得られた閾値を用いて、それらの大小関係から、文字列を評価してグルーピングするものである。
文字列のグループ判定は、上記2つの手法に限定されるものではなく、前述のように、差分が小さい文字列をグループ化するために、任意の定数を用いることもできるし、分布を加味した区間毎に異なる基準値でもよい。また、演算値自体も、単純な文字コードの総計値を用いることに限定されるものではなく、例えば目的に応じて特定の文字種に重み付けした上での総計値や、文字の位置・全体文字数を加味した演算値を用いてもよい。具体的には、本来は文字列の内容が大きく異なる複数の文字列が偶然近い総計値を示すことがあり得ることを想定して、先頭から10文字といった固定文字抜き取り、あるいは各文字列を前半分と後ろ半分に分割するといった文字列を分解しての総計値も類似判定に加えることも可能である。すなわち、単純に両者の合計値を指標にしたり、ユークリッド距離によるN次元クラスタリングに用いたりするのである。また、文字数が多くなるほど文字揺れが総計値に占める割合は小さくなるので、総計値を文字数で割って標準化することも1つの方法である。文字コードの並びは、文字種類、すなわち、数字、アルファベット、記号、ひらがな、カタカナ、漢字などの種類毎になっているため、記号についての揺れを優先的に検出したいのか、あるいは数値部分の揺れを優先的に検出したのかなどにより、文字コードの数値に重み付けを行うことができる。具体的には、例えば、数値部分の揺れを優先的に検出したいのであれば、数値部分の文字コードの数値のみを3倍にし、他の文字コードの数値は、3倍にしないでそのまま、すなわち1倍して、演算(例えば、加算)するなどである。
以上説明した手法で、類似文字列を抽出したり、グループ化することができるが、グループ化に当たっては、1つのグループと他のグループを色分けで表示したり、あるいは、グループ間にスペースを設けるなどして、目視しやすくすることができる。なお、文字列としては非類似であるが、偶々隣り合う行の文字列の演算値が近い値となることもある。この場合、上記所定値との大小関係だけでは、類似文字列を自動的に抽出したり、グループ化することが困難な場合があり得る。したがって、最終的には画面に表示された文字列を使用者が目視し、例えば、同じ種類の工事や図面かどうかを判断して、類似文字列を抽出したり、グループ分けすることになるが、上記所定値との大小関係を判断することにより、多数の文字列が存在するときに、かなりの精度で類似文字列をまとめることが可能となり、文字列のみを用いたソーティングと比べると、遙かに精度が高い文字列の自動的かつ簡易的な類似度指標を得て類似文字列の抽出とグループ化に寄与するものと言える。
なお、本発明は類似文字列検出装置あるいは類似文字列検出方法、類似文字列検出プログラムとして説明したが、図1のステップS4のソーティング結果を画面に表示した段階では、装置の利用者が目視で類似文字列がまとまって表示されていることを検出することになるので、装置が類似文字列を自動的に検出するものではなく、類似文字列検出のための支援装置と言える。一方、上記所定値を用いて差分値と比較した場合は、自動的に類似文字列を検出することが可能となるのである。
本発明は、複数の文字列データが存在するときに、その中で、予測困難な表記揺れのため、類似していたり、関連している文字列同士をグループ化することが困難な場合であっても、簡単な処理により容易に類似する文字列を検出してグループ化することが可能となり、土木工事関連の名称や契約名、図面名称はもちろんのこと、その他の、あらゆる文字列データ、すなわち、地名や住所、各種製品の名称や生産地、動植物の属や科を含む名称、出版物や論文などの名称や発行者あるいは作者名、美術品の名称や作者名、各種文芸作品の名称や作者名、各種楽曲の名称や作者名、各種イベントの名称や主催者名、映画やテレビ番組の名称や主演者名などあらゆるジャンルのあらゆる文字列データの検索に適用可能であり、文字列を含むデータベース管理技術全般に適用可能である。
10 類似文字列検出装置
12 インターフェイス
14 記憶部
16 CPU(中央演算処理装置)
18 操作部
20 表示部

Claims (5)

  1. 複数の文字列データに対して文字単位で、文字コードに変換する手段と、
    前記複数の文字列データの各文字列について前記変換されて得られた文字コードを所定の演算式により演算し、総計値を求める手段と、
    前記各文字列の前記総計値を昇順あるいは降順で並べ変えることにより、前記各文字列の前記総計値をソーティングする手段と、
    前記ソーティングされて並べ変えられた前記各文字列の総計値に対して、隣り合う文字列の総計値同士の差分を得る差分生成手段と、
    前記ソーティングされて並べ変えられた前記演算により得られた各文字列の前記総計値の平均と各前記総計値との距離を算出し、算出した値で前記差分を除算した数値を重み付きの差分とする重み付きの差分生成手段と、
    前記ソーティングされて並べ変えられた前記演算により得られた各文字列の前記総計値の最大値から前記総計値の最小値を減算して得られた数値を前記文字列の数で除算して得られた平均的な前記総計値の間隔を前記総計値の標準偏差で除算して得られた値を閾値として生成する閾値生成手段と、
    前記総計値に対して、前記重み付きの差分が前記閾値以上かあるいは前記閾値未満かを判断して前記複数の文字列をグループ化する手段とを、
    有する類似文字列検出装置。
  2. 前記ソーティングされて並べ変えられた前記演算により得られた各文字列の総計値を画面に表示する手段をさらに有する請求項1に記載の類似文字列検出装置。
  3. 前記グループ化された前記複数の文字列と前記総計値を画面に表示する手段をさらに有する請求項1又は2に記載の類似文字列検出装置。
  4. 複数の文字列データに対して文字単位で、文字コードに変換するステップと、
    前記複数の文字列データの各文字列について前記変換されて得られた文字コードを所定の演算式により演算し、総計値を求めるステップと、
    前記各文字列の前記総計値を昇順あるいは降順で並べ変えることにより、前記各文字列の前記総計値をソーティングするステップと、
    前記ソーティングされて並べ変えられた前記各文字列の総計値に対して、隣り合う文字列の総計値同士の差分を得る差分生成ステップと、
    前記ソーティングされて並べ変えられた前記演算により得られた各文字列の前記総計値の平均と各前記総計値との距離を算出し、算出した値で前記差分を除算した数値を重み付きの差分とする重み付きの差分生成ステップと、
    前記ソーティングされて並べ変えられた前記演算により得られた各文字列の前記総計値の最大値から前記総計値の最小値を減算して得られた数値を前記文字列の数で除算して得られた平均的な前記総計値の間隔を前記総計値の標準偏差で除算して得られた値を閾値として生成する閾値生成ステップと、
    前記総計値に対して、前記重み付きの差分が前記閾値以上かあるいは前記閾値未満かを判断して前記複数の文字列をグループ化するステップとを、
    有する類似文字列検出方法。
  5. 複数の文字列データに対して文字単位で、文字コードに変換するステップと、
    前記複数の文字列データの各文字列について前記変換されて得られた文字コードを所定の演算式により演算し、総計値を求めるステップと、
    前記各文字列の前記総計値を昇順あるいは降順で並べ変えることにより、前記各文字列の前記総計値をソーティングするステップと、
    前記ソーティングされて並べ変えられた前記各文字列の総計値に対して、隣り合う文字列の総計値同士の差分を得る差分生成ステップと、
    前記ソーティングされて並べ変えられた前記演算により得られた各文字列の前記総計値の平均と各前記総計値との距離を算出し、算出した値で前記差分を除算した数値を重み付きの差分とする重み付きの差分生成ステップと、
    前記ソーティングされて並べ変えられた前記演算により得られた各文字列の前記総計値の最大値から前記総計値の最小値を減算して得られた数値を前記文字列の数で除算して得られた平均的な前記総計値の間隔を前記総計値の標準偏差で除算して得られた値を閾値として生成する閾値生成ステップと、
    前記総計値に対して、前記重み付きの差分が前記閾値以上かあるいは前記閾値未満かを判断して前記複数の文字列をグループ化するステップとを、
    有する類似文字列検出方法をコンピュータにより実行させるための類似文字列検出プログラム。
JP2016167611A 2016-08-30 2016-08-30 類似文字列検出装置及び類似文字列検出方法並びに類似文字列検出プログラム Active JP7007793B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016167611A JP7007793B2 (ja) 2016-08-30 2016-08-30 類似文字列検出装置及び類似文字列検出方法並びに類似文字列検出プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016167611A JP7007793B2 (ja) 2016-08-30 2016-08-30 類似文字列検出装置及び類似文字列検出方法並びに類似文字列検出プログラム

Publications (2)

Publication Number Publication Date
JP2018036744A JP2018036744A (ja) 2018-03-08
JP7007793B2 true JP7007793B2 (ja) 2022-01-25

Family

ID=61565809

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016167611A Active JP7007793B2 (ja) 2016-08-30 2016-08-30 類似文字列検出装置及び類似文字列検出方法並びに類似文字列検出プログラム

Country Status (1)

Country Link
JP (1) JP7007793B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111832304B (zh) * 2020-06-29 2024-02-27 上海巧房信息科技有限公司 楼盘名称的查重方法、装置、电子设备及存储介质
WO2024116381A1 (ja) * 2022-12-01 2024-06-06 日本電信電話株式会社 表記ゆれ指摘装置、表記ゆれ指摘方法、及びプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003248689A (ja) 2002-02-26 2003-09-05 Just Syst Corp 選択肢作成装置、選択肢作成方法、及び選択肢作成プログラム
WO2014171519A1 (ja) 2013-04-17 2014-10-23 アイビーリサーチ株式会社 誤記検出装置及び記録媒体
JP2015069393A (ja) 2013-09-27 2015-04-13 株式会社東芝 文書データ比較方法、文書データ比較装置、及び文書データ比較プログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07225763A (ja) * 1994-02-10 1995-08-22 Fujitsu Ltd 文書処理装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003248689A (ja) 2002-02-26 2003-09-05 Just Syst Corp 選択肢作成装置、選択肢作成方法、及び選択肢作成プログラム
WO2014171519A1 (ja) 2013-04-17 2014-10-23 アイビーリサーチ株式会社 誤記検出装置及び記録媒体
US20150339279A1 (en) 2013-04-17 2015-11-26 I.B.Research Inc. Typing error detecting device and recording medium
JP2015069393A (ja) 2013-09-27 2015-04-13 株式会社東芝 文書データ比較方法、文書データ比較装置、及び文書データ比較プログラム

Also Published As

Publication number Publication date
JP2018036744A (ja) 2018-03-08

Similar Documents

Publication Publication Date Title
US8190613B2 (en) System, method and program for creating index for database
CN107861949B (zh) 文本关键词的提取方法、装置及电子设备
JP2007310746A (ja) 文章更新量評価プログラム
WO2012169128A1 (ja) 表記ゆれ検出装置及び表記ゆれ検出プログラム
JP2013196358A (ja) 検索支援装置および検索支援方法
JP7007793B2 (ja) 類似文字列検出装置及び類似文字列検出方法並びに類似文字列検出プログラム
CN112364625A (zh) 文本筛选方法、装置、设备及存储介质
JP7493937B2 (ja) 文書における見出しのシーケンスの識別方法、プログラム及びシステム
US9753928B1 (en) System and method for identifying delimiters in a computer file
US9965546B2 (en) Fast substring fulltext search
CN112487159A (zh) 检索方法、检索装置及计算机可读存储介质
JP5829330B2 (ja) フォントを識別するための方法および装置
US8700997B1 (en) Method and apparatus for spellchecking source code
JP5491446B2 (ja) 話題語獲得装置、方法、及びプログラム
US9842112B1 (en) System and method for identifying fields in a file using examples in the file received from a user
JP4301496B2 (ja) データベース検索装置、データベース検索方法およびプログラム
KR102215580B1 (ko) 스타일 속성에 기반하여 문서에 대한 중요 키워드를 선정하는 전자 장치 및 그 동작 방법
JP2009104520A (ja) 商標検索システム及び商標検索サーバ
JP2009271671A (ja) 情報処理装置、情報処理方法、プログラム及び記録媒体
JP2020021455A5 (ja)
JP2020181332A (ja) 高精度類似画像検索方法、プログラム及び高精度類似画像検索装置
JP2020091607A (ja) 検索システム、及び検索方法
US20230096564A1 (en) Chunking execution system, chunking execution method, and information storage medium
Nawab et al. External plagiarism detection using information retrieval and sequence alignment
KR102231336B1 (ko) 유사 문자열 고속 탐색 시스템 및 그 방법

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20160830

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160831

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190815

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200908

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201102

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210506

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210702

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211214

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220107

R150 Certificate of patent or registration of utility model

Ref document number: 7007793

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150