ダメラウ・レーベンシュタイン距離

ダメラウ・レーベンシュタイン距離(ダメラウ・レーベンシュタインきょり、: Damerau–Levenshtein distance)は、2つの配列の間の編集距離を測定するために情報理論計算機科学で使われる文字列計量である。2つの単語間のダメラウ・レーベンシュタイン距離は、一方の単語を他方の単語に変換するのに必要な最小の操作回数である。ここで1回の「操作」とは1文字の挿入、削除、置換、あるいは2つの隣り合う文字の交換である。ダメラウ・レーベンシュタイン距離はフレデリック J. ダメラウ英語版ウラジミール I. レーベンシュタインにちなんで名付けられた[1] [2] [3]

古典的なレーベンシュタイン距離を定義する操作は3つの古典的単文字編集操作、すなわち文字の挿入、削除、および置換である。ダメラウ・レーベンシュタイン距離を定義する操作にはこれらに加えて隣接文字交換が含まれている[4] [2]

ダメラウによると、スペルミス全体の80%以上は、これら4操作のうちの1操作の誤り1つで表現できる[5]。ダメラウの論文では、最大1回の編集操作で訂正できる綴り間違いのみが考慮されていた。当初の動機は、スペルチェッカなどのアプリケーション・ソフトウェアを改善するために人間のスペルミス間の距離を測定することであったが、ダメラウ・レーベンシュタイン距離は、生物学においてタンパク質配列の変異を測定するためにも使われている [6]

ダメラウ・レーベンシュタイン距離と制限ダメラウ・レーベンシュタイン距離

同じ文字列を2度以上編集することを許さない条件のもとで求められる編集距離を制限編集距離と呼ぶ。制限編集距離は最適文字列整列距離と呼ばれる量に一致することが知られている。この条件を課さない(つまり同じ文字列を1回より多く編集してよい)場合には、単に編集距離と呼ぶ。制限レーベンシュタイン距離は常にレーベンシュタイン距離に一致する。これは、レーベンシュタイン距離の計算では編集操作は1文字ごとであり、1度編集した文字列を2度編集する必要がないからである。しかし2文字の編集操作が存在するダメラウ・レーベンシュタイン距離に関しては、制限ダメラウ・レーベンシュタイン距離とダメラウ・レーベンシュタイン距離とが一致しない場合がある。

例として、CAABCの編集距離を求める。CAに1回の隣接文字交換および1回の文字挿入を施せば CAACABC となるから、ダメラウ・レーベンシュタイン距離はである。これに対して、制限距離(あるいは最適文字列整列距離 Optimal String Alignment, OSA)を求めるための編集は1回の文字削除に続いて2回の文字挿入を施す CAAABABC であり、制限距離は である。ダメラウ・レーベンシュタイン距離を求めるときに使った編集 CAACABC が使えないのは、B を挿入する時点で同じ文字列を2回編集しており、この編集は制限距離を求める操作では禁止されているからである。制限距離については、三角不等式が一般には成立しないことに注意する。実際、である。つまり制限距離は計量ではない。

ここでは計算が簡単な制限ダメラウ・レーベンシュタイン距離を求める。文字列 の先頭から数えて 番目の1文字を とし、の先頭から 番目までの長さ の部分文字列を とする。2つの文字列 および の間の制限ダメラウ・レーベンシュタイン距離を定義するためにまず、文字列 の部分文字列 と、の部分文字列 の間の制限距離関数 を、次のように再帰的に定義する: [7] :A:11

ここでは、のときになり、それ以外の場合にとなる指示関数である。これらの場合分けはそれぞれ、次に示す部分文字列末尾の編集操作(あるいは編集操作しないこと)に対応している:

  • :2つの長さの文字列を一致させるのに必要な編集回数は
  • が、に1回の挿入をすることで得られたと見なして編集回数をだけ増やす
  • が、に1回の挿入をすることで得られたと見なして編集回数をだけ増やす
  • が一致する場合には、の間の距離はの間の距離に等しいので編集回数を変更しない。が一致しない場合には、に、あるいはに置換したと見なして編集回数をだけ増やす
  • かつのとき、の交換、あるいはの交換をしたと見なして編集回数を回だけ増やす

の間の制限ダメラウ・レーベンシュタイン距離は、文字列全体の関数値 で与えられる。ここでおよびはそれぞれ文字列およびの長さ(文字数)である。

アルゴリズム

ここでは2つのアルゴリズムを示す。1つ目は、制限ダメラウ・レーベンシュタイン距離[7]を求めるアルゴリズム[8]である。これは2つ目のアルゴリズムに比べて単純である。2つ目のアルゴリズムは、非制限ダメラウ・レーベンシュタイン距離を求めるもので、レーベンシュタイン距離に隣接交換を追加して計算する[9]。隣接交換を追加すると非常に複雑になる。

制限ダメラウ・レーベンシュタイン距離

制限ダメラウ・レーベンシュタイン距離は、レーベンシュタイン距離を計算するワグナー・フィッシャー動的計画法アルゴリズムを単純に拡張することで計算できる。その擬似コードは:

 algorithm OSA-distance is
     input: strings a[1..length(a)], b[1..length(b)]
     output: distance, integer
     
     let d[0..length(a), 0..length(b)] // d は整数二次元配列で次元は length(a)+1, length(b)+1
     // ここでは d は添字が 0 から始まる配列であり、a と b は添字が 1 から始まる配列であることに注意する
     
     for i := 0 to length(a) inclusive do
         d[i, 0] := i
     for j := 0 to length(b) inclusive do
         d[0, j] := j
     
     for i := 1 to length(a) inclusive do
         for j := 1 to length(b) inclusive do
             if a[i] = b[j] then
                 cost := 0
             else
                 cost := 1
             d[i, j] := minimum(d[i-1, j] + 1,     // 削除
                                d[i, j-1] + 1,     // 挿入
                                d[i-1, j-1] + cost)  // 置換
             if i > 1 and j > 1 and a[i] = b[j-1] and a[i-1] = b[j] then // 隣接文字交換:ここから
                 d[i, j] := minimum(d[i, j],
                                    d[i-2, j-2] + cost)  // 隣接文字交換:ここまで
     return d[length(a), length(b)]

レーベンシュタイン距離を求めるアルゴリズムとの違いは、隣接文字交換にあたる計算が含まれる点である。

ダメラウ・レーベンシュタイン距離

次は、真のダメラウ・レーベンシュタイン距離を求めるアルゴリズムである。このアルゴリズムでは、アルファベットに含まれる全文字 Σ の個数が必要になる。成分が [0, |Σ|) に含まれる配列を使うからである[7]:A:93。擬似コードは:

 algorithm DL-distance is
     input: strings a[1..length(a)], b[1..length(b)]
     output: distance, integer
     
     da := |Σ|個の整数からなる配列
     for i := 1 to |Σ| inclusive do
         da[i] := 0
     
     let d[1..length(a), 1..length(b)] // d は次元が length(a)+2, length(b)+2 の二次元整数配列
     // d の添字は -1 から始まり、a, b, および da の添字は 1 から始まることに注意
     maxdist := length(a) + length(b)
     d[1, 1] := maxdist
     for i := 0 to length(a) inclusive do
         d[i, 1] := maxdist
         d[i, 0] := i
     for j := 0 to length(b) inclusive do
         d[1, j] := maxdist
         d[0, j] := j
     
     for i := 1 to length(a) inclusive do
         db := 0
         for j := 1 to length(b) inclusive do
             k := da[b[j]]
              := db
             if a[i] = b[j] then
                 cost := 0
                 db := j
             else
                 cost := 1
             d[i, j] := minimum(d[i1, j1] + cost,  //置換
                                d[i,   j1] + 1,     //挿入
                                d[i1, j  ] + 1,     //削除
                                d[k1, 1] + (ik1) + 1 + (j-1)) //交換
         da[a[i]] := i
     return d[length(a), length(b)]


非制限ダメラウ・レーベンシュタイン距離を求める正しいアルゴリズムを作るには次のことに注意する:1度交換された文字がそのあと2度と編集されないような編集操作の最適配列が存在する(交換のコストが挿入のコストと削除のコストの平均以上つまりの場合に成立する[9])。したがって、1つの部分文字列を2回以上編集する2つの対称な方法:

  1. 隣接文字を交換して任意の個数の文字をその間に挿入する
  2. 文字列を削除し、その削除によって新たに隣り合うことになった隣接文字を交換する

のいずれかだけを考えればよい。このアイディアを素直に実行するアルゴリズムは、文字列の長さおよびに対しての計算複雑性を持つ。ローランスとワグナーのアイディア[9]を使ったアルゴリズムでは、最悪の場合でもに改善される。

Bitapアルゴリズムを、隣接交換を処理するように変更できる。この例については参考文献[1]の情報収集の節を見よ。

応用

ダメラウ・レーベンシュタイン距離は、自然言語処理において重要である。自然言語では文字列が短く、誤り(綴り間違い)の個数が2を超えることは少ない。このような場合、制限編集距離と非制限編集距離の値が異なることは稀である。オーメンとローク[8]は、一般化交換を導入して制限編集距離を拡張した。しかし、制限編集距離は一般には三角不等式を満足せず計量ではないので、メトリックツリーに使えないことに注意すべきである。

DNA

DNAでは挿入、削除、置換、および交換が頻繁に生じ、しかもどれも同程度の時間スケールで起こるので、ダメラウ・レーベンシュタイン距離は2つのDNA鎖の間の変化を計る計量として使うことができる。DNA、タンパク質、および他のバイオインフォマティクスなど、要素の整列に関連する課題では、ダメラウ・レーベンシュタイン距離に深く関係するニードルマン・ブンシュ・アルゴリズムやスミス・ウォーターマン・アルゴリズムなどを使うのが一般的である。

輸出規制

アメリカ合衆国政府は統合スクリーニング・リストAPI[10]で、あいまい語検索のためにダメラウ・レーベンシュタイン距離を利用している。

その他

  • Ispell はダメラウ・レーベンシュタイン距離が1の単語を訂正候補として提示する

脚注

  1. ^ Brill, Eric; Moore, Robert C. (2000). An Improved Error Model for Noisy Channel Spelling Correction (PDF). Proceedings of the 38th Annual Meeting on Association for Computational Linguistics. pp. 286–293. doi:10.3115/1075218.1075255. 2012年12月21日時点のオリジナル (PDF)よりアーカイブ。
  2. ^ a b Bard, Gregory V. (2007), “Spelling-error tolerant, order-independent pass-phrases via the Damerau–Levenshtein string-edit distance metric”, Proceedings of the Fifth Australasian Symposium on ACSW Frontiers : 2007, Ballarat, Australia, January 30 - February 2, 2007, Conferences in Research and Practice in Information Technology, 68, Darlinghurst, Australia: Australian Computer Society, Inc., pp. 117–124, ISBN 978-1-920682-49-1, http://dl.acm.org/citation.cfm?id=1274531.1274545 .
  3. ^ Li (2006). Exploring distributional similarity based models for query spelling correction (PDF). Proceedings of the 21st International Conference on Computational Linguistics and the 44th annual meeting of the Association for Computational Linguistics. pp. 1025–1032. doi:10.3115/1220175.1220304. 2010年4月1日時点のオリジナル (PDF)よりアーカイブ。
  4. ^ Levenshtein, Vladimir I. (February 1966), “Binary codes capable of correcting deletions, insertions, and reversals”, Soviet Physics Doklady 10 (8): 707–710 
  5. ^ Damerau, Fred J. (March 1964), “A technique for computer detection and correction of spelling errors”, Communications of the ACM 7 (3): 171–176, doi:10.1145/363958.363994 
  6. ^ The method used in: Majorek, Karolina A.; Dunin-Horkawicz, Stanisław et al. (2013), “The RNase H-like superfamily: new members, comparative structural analysis and evolutionary classification”, Nucleic Acids Research 42 (7): 4160–4179, doi:10.1093/nar/gkt1414, PMC 3985635, PMID 24464998, http://nar.oxfordjournals.org/content/42/7/4160.full 
  7. ^ a b c Boytsov, Leonid (May 2011). “Indexing methods for approximate dictionary searching”. Journal of Experimental Algorithmics 16: 1. doi:10.1145/1963190.1963191. 
  8. ^ a b Oommen, B. J.; Loke, R. K. S. (1997). “Pattern recognition of strings with substitutions, insertions, deletions and generalized transpositions”. Pattern Recognition 30 (5): 789–800. doi:10.1016/S0031-3203(96)00101-X. 
  9. ^ a b c Lowrance, Roy; Wagner, Robert A. (April 1975), “An Extension of the String-to-String Correction Problem”, J ACM 22 (2): 177–183, doi:10.1145/321879.321880 
  10. ^ http://developer.trade.gov/consolidated-screening-list.html

さらに学ぶために

  • Navarro, Gonzalo (March 2001), “A guided tour to approximate string matching”, ACM Computing Surveys 33 (1): 31–88, doi:10.1145/375360.375365 

Read other articles:

Noordenveld, adalah sebuah gemeente Belanda yang terletak di provinsi Drenthe. Pada tahun 2021 daerah ini memiliki penduduk sebesar 31.200 jiwa. Lihat pula Daftar munisipalitas Belanda lbsMunisipalitas di provinsi Drenthe Aa en Hunze Assen Borger-Odoorn Coevorden De Wolden Emmen Hoogeveen Meppel Midden-Drenthe Noordenveld Tynaarlo Westerveld Artikel bertopik geografi atau tempat Belanda ini adalah sebuah rintisan. Anda dapat membantu Wikipedia dengan mengembangkannya.lbs

 

Toy Story 4Poster rilis teatrikalSutradaraJosh CooleyProduserJonas RiveraMark NielsenSkenarioStephany FolsomAndrew StantonCerita John Lasseter Rashida Jones Will McCormack Josh Cooley Valerie LaPointe Martin Hynes Stephany Folsom Andrew Stanton Pemeran Tom Hanks Tim Allen Annie Potts Tony Hale Keegan-Michael Key Jordan Peele Joan Cusack Wallace Shawn John Ratzenberger Blake Clark Don Rickles Estelle Harris Penata musikRandy NewmanSinematografer Patrick Lin Jean-Claude Kalache Penyunting...

 

Tanjung Leman Tanjung Leman adalah wilayah pesisir di Distrik Mersing, Johor, Malaysia.[1] Pantai Tanjung Leman merupakan pantai yang populer di kalangan penduduk setempat. Referensi ^ Virtual Malaysia.com: Tanjung Leman Diarsipkan 2009-01-26 di Wayback Machine. lbs Johor Darul Ta'zimDistrikBatu Pahat • Johor Bahru • Kluang • Kota Tinggi • Kulai • Mersing • Muar • Pontian • Segamat • TangkakKota UtamaJohor Bahru (ibu kota) • Iskandar Puteri • Pasir GudangKotaAyer...

Canadian scholar (born 1948) For the Australian footballer, see Peter McLaren (footballer). For the Canadian politician, see Peter McLaren (politician). Peter McLarenMcLaren in 2015Born (1948-08-02) August 2, 1948 (age 75)Toronto, Ontario, CanadaSpouseYan WangAcademic backgroundAlma materUniversity of WaterlooUniversity of TorontoBrock UniversityThesisEducation as Ritual Performance (1984)Doctoral advisorRichard Courtney[1]Influences Paulo Freire[2] Henry Giroux Emm...

 

Women's omnium at the 2023 UEC European Track ChampionshipsVenueTissot Velodrome, GrenchenDate10 FebruaryCompetitors19 from 19 nationsWinning points155Medalists  Katie Archibald   Great Britain Daria Pikulik   Poland Lotte Kopecky   Belgium← 20222024 → 2023 UEC EuropeanTrack ChampionshipsSprintmenwomenTeam sprintmenwomenTeam pursuitmenwomenKeirinmenwomenOmniummenwomenMadisonmenwomenTime trialmenwomenIndivi...

 

坐标:43°11′38″N 71°34′21″W / 43.1938516°N 71.5723953°W / 43.1938516; -71.5723953 此條目需要补充更多来源。 (2017年5月21日)请协助補充多方面可靠来源以改善这篇条目,无法查证的内容可能會因為异议提出而被移除。致使用者:请搜索一下条目的标题(来源搜索:新罕布什尔州 — 网页、新闻、书籍、学术、图像),以检查网络上是否存在该主题的更多可靠来源...

Earthquake in Alabama on October 18, 1916 1916 Irondale earthquakeUTC time1916-10-18 22:04ISC eventn/a USGS-ANSSComCatLocal dateOctober 18, 1916 (1916-10-18)Local time16:04Magnitude5.1 MLEpicenter33°32′N 86°41′W / 33.53°N 86.69°W / 33.53; -86.69Areas affectedAlabama United StatesMax. intensityMMI VII (Very strong)Casualtiesno fatalities The 1916 Irondale earthquake struck in the north–central region of the U.S. state of Alabama on Oct...

 

Keuskupan Ciudad ObregónDioecesis Civitatis ObregonensisDiócesis de Ciudad ObregónKatolik LokasiNegara MeksikoProvinsi gerejawiProvinsi HermosilloStatistikLuas34.125 sq mi (88.380 km2)Populasi- Total- Katolik(per 2006)1.031.000889,000 (86.2%)Paroki58InformasiDenominasiKatolik RomaRitusRitus RomaPendirian20 Juni 1959 (64 tahun lalu)KatedralKatedral Kudus YesusKepemimpinan kiniPausFransiskusUskupJuan Manuel Mancilla SánchezUskup agungJosé Ulises Mac�...

 

Cet article concerne le concept irrédentiste. Pour le Royaume d'Arménie ou Grande-Arménie, voir Royaume d'Arménie et Nationalisme arménien. Le concept moderne de Grande Arménie, tel que revendiqué par la Tashnag : Orange : zones peuplées majoritairement par des Arméniens (République d'Arménie : 98 %[1] ; Haut-Karabagh : 99 % ; Djavakhétie : 95 %) Jaune : Zones historiquement arméniennes où la population arménienne ...

Place in Lublin Voivodeship, PolandPoniatowaChurch of the Holy Spirit in Poniatowa Coat of armsPoniatowaCoordinates: 51°11′34″N 22°03′53″E / 51.19278°N 22.06472°E / 51.19278; 22.06472Country PolandVoivodeshipLublinCountyOpole LubelskieGminaPoniatowaGovernment • MayorPaweł Kaczmarczyk (PiS)Area • Total15.26 km2 (5.89 sq mi)Population (2006) • Total9,911 • Density650/km2 (1,700/sq ...

 

  لمعانٍ أخرى، طالع فريبورت (توضيح). فريبورت District and City  علم الشعار: الحب هو كل شئ الاسم الرسمي City of Freeport موقع City of Freeport الإحداثيات 26°31′42.5″N 78°41′47.7″W / 26.528472°N 78.696583°W / 26.528472; -78.696583 تقسيم إداري  البلد  باهاماس  الجزيرة باهاما الكبرى  المقاطعة فريب�...

 

乔冠华 中华人民共和国外交部部长 中国人民对外友好协会顾问 任期1974年11月—1976年12月总理周恩来 → 华国锋前任姬鹏飞继任黄华 个人资料性别男出生(1913-03-28)1913年3月28日 中華民國江蘇省盐城县逝世1983年9月22日(1983歲—09—22)(70歲) 中华人民共和国北京市籍贯江蘇鹽城国籍 中华人民共和国政党 中国共产党配偶明仁(1940年病逝) 龚澎(1970年病逝) 章含�...

5 أيام من الحرب5 Days of War (بالإنجليزية) معلومات عامةالصنف الفني حركة دراما حربالمواضيع مراسل حربي — حرب أوسيتيا الجنوبية 2008 تاريخ الصدور 2011مدة العرض 120 دقيقةاللغة الأصلية الإنجليزيةالروسيةالجورجيةالبلد  الولايات المتحدةموقع الويب fivedaysofwar.com… الطاقمالمخرج ريني هارلنالب�...

 

Qualification for the FIFA U-17 Women's World Cup for African nations Football tournamentAfrican U-17 Women's World Cup qualificationOrganising bodyCAFFounded2008RegionAfrica 2024 edition The African U-17 Women's World Cup qualification is a biennial youth women's association football qualification competition for the FIFA U-17 Women's World Cup organized by the Confederation of African Football for its nations. History With the imminent inauguration of the FIFA U-17 Women's World Cup in ...

 

Genus of flowering plants This article is about the plant genus. For the English village, see Crambe, North Yorkshire. For other uses, see Crambe (disambiguation). Crambe Crambe maritima in Estonia Scientific classification Kingdom: Plantae Clade: Tracheophytes Clade: Angiosperms Clade: Eudicots Clade: Rosids Order: Brassicales Family: Brassicaceae Genus: CrambeL. Species See text Crambe is a genus of annual and perennial flowering plants in the family Brassicaceae, native to a variety of hab...

Gedung-gedung di sekitar Tour Sequoia. Tour Sequoia (sebelumnya dikenal sebagai Tour Bull dan juga Tour SFR atau Tour Cegetel) merupakan sebuah pencakar langit perkantoran yang terletak di La Défense, distrik bisnis di barat Paris, Prancis. Dibangun pada 1990, menara setinggi 119 meter (dengan luas 55,000 m²) ini memiliki transisi antara pencakar langit generasi ketiga dan keempat di La Défense. Tour Sequoia pernah menjadi menara pertama yang dibangun dengan desain semi-sirkuler di distrik...

 

French condiment made from anchovies PissalatTypeSauce, condimentCourseAppetizerPlace of origin FranceRegion or stateNice and surrounding areaServing temperatureHot or warmMain ingredientsAnchovies or other small fishOther informationImportant ingredient in the emblematic Niçois dish, pissaladière  Media: Pissalat Pissalat or pissala is a condiment originating from the Nice region of France. The name comes from peis salat in Niçard and means 'salted fish'.[1] It is ma...

 

1954 1964 Élections régionales de 1959 dans le Land de Salzbourg 32 sièges du Landtag(Majorité absolue : 17 sièges) 10 mai 1959 Corps électoral et résultats Inscrits 214 991 Votants 195 524   90,95 %  1,4 ÖVP Voix 82 942 43,26 %   2,7 Sièges obtenus 14  1 SPÖ Voix 73 999 38,60 %   0,4 Sièges obtenus 13 FPÖ Voix 30 915 16,13 %   3 Sièges obtenus 5  1 modifier...

ルサイル・スタジアムLusail Stadiumاستاد لوسيلルサイル・アイコニック・スタジアムLusail Iconic Stadium 2022 FIFAワールドカップでのスタジアム 施設情報所在地 カタール ルサイル起工 2017年4月11日開場 2021年11月21日所有者 カタールサッカー協会グラウンド 天然芝設計者 Foster + Partners POPULOUS建設者 HBK Contracting 中国鉄建[1]使用チーム、大会 サッカーカタール代表2022 FIF...

 

Theory in science and technology studies See also: Science and technology studies, Technology and society, Social shaping of technology, and Sociology of scientific knowledge This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages) This article is written like a personal reflection, personal essay, or argumentative essay that states a Wikipedia editor's personal feelings or presents an original argument ab...