言語学とコンピューティングの分野におけるCaverphoneは、英語名をその音で識別するために発明された音声マッチングアルゴリズム[1] [2]であり、もともとは1893年から1938年の間にニュージーランドのダニーデン南部でカスタムデータセット複合語を処理するために構築されました。 [3] metaphoneと同様の概念から始まり、それ以来、一般的な英語に対応して処理するために開発されました。[3]
語源
Caverphoneは、ニュージーランドのオタゴ大学Cavershamプロジェクトにおいて、2002年にDavid Hood氏によって開発され、2004年に改訂されました。これは、19世紀後半と20世紀初頭の選挙人名簿間のデータ照合を支援するために開発されました。これらのデータ照合では、氏名が「一般的に認識可能な形式」であることのみが求められました。このアルゴリズムは、選挙人名簿間で容易に照合できない氏名に適用することを目的としており、完全な一致は潜在的な一致候補から除外されました。このアルゴリズムは、研究対象地域(ニュージーランド、ダニーデン市南部)に存在するアクセントに最適化されています。
手順
キャバーフォン 1.0
アルゴリズムのルールは、一連の置換として、特定の名前に連続的に適用されます。
アルゴリズムは次のとおりです。
- 小文字に変換
- AZ以外のものはすべて削除
- 名前が...で始まる場合
- 咳をcou2fに置き換えます
- rough 、 rou2fに置き換えます
- toughをtou2fに置き換えます
- 十分です。enou2fに置き換えてください。
- gnを2nに置き換える
- 名前が
- mbをm2に置き換えます
- 交換する
- 2qとcq
- ciとsi
- ceとse
- cyとsy
- 2chでtch
- cとk
- qとk
- xとk
- vとf
- 2gのdg
- tioとsio
- ティアとシア
- dとt
- phとfh
- bとp
- shとs2
- zとs
- Aで始まる母音
- 3のその他の母音
- 3gh3と3kh3
- 22のgh
- gとk
- Sを含む文字sのグループ
- Tを含む文字tのグループ
- Pを含む文字pのグループ
- Kを含む文字kのグループ
- Fを含む文字fのグループ
- Mの文字mのグループ
- Nを含む文字nのグループ
- w3とW3
- wyとWy
- wh3とWh3
- なぜとなぜ
- wと2
- 最初の文字がAのh
- hが2であるその他のすべての出現
- r3とR3
- ryとRy
- rと2
- l3とL3
- lyとLy
- 2とl
- jとy
- y3とY3
- yと2
- すべて削除
- 2
- 3
- 最後に1を6つ付ける
- 最初の6文字をコードとして取得する
キャバーフォン 2.0
- 単語から始める
- 小文字に変換
- 標準アルファベット(通常はaz)に含まれないものをすべて削除します[注1]
- 最後のeを削除
- 名前が
- 咳をする
- ラフに作る
- タフはそれを強引にする
- 十分だ
- トラフはそれをtrou2fにする
- gn 2nにする
- 名前が
- mbをm2にする
- 交換する
- 2qとcq
- ciとsi
- ceとse
- cyとsy
- 2chでtch
- cとk
- qとk
- xとk
- vとf
- 2gのdg
- tioとsio
- ティアとシア
- dとt
- phとfh
- bとp
- shとs2
- zとs
- 母音[注2]がAで始まる
- 3のその他の母音
- jとy
- Y3の初期y3
- Aで始まるy
- yと3
- 3gh3と3kh3
- 22のgh
- gとk
- Sを含む文字sのグループ
- Tを含む文字tのグループ
- Pを含む文字pのグループ
- Kを含む文字kのグループ
- Fを含む文字fのグループ
- Mの文字mのグループ
- Nを含む文字nのグループ
- w3とW3
- wh3とWh3
- 名前がwで終わる場合は、最後のwを3に置き換えます。
- wと2
- 最初の文字がhで始まり、文字がA
- hが2であるその他のすべての出現
- r3とR3
- 名前がrで終わる場合は最後のrを3に置き換えます
- rと2
- l3とL3
- 名前がlで終わる場合は、最後のlを3に置き換えます。
- 2とl
- 2つすべて削除
- 名前が3で終わる場合は、最後の3 をAに置き換えます。
- 3つすべて削除
- 最後に10個の1をつける
- 最初の10文字をコードとして取得する
- ^ 文字セットにæ、ā、øなどの文字が含まれている場合は異なる場合があります。
- ^ 母音は通常 a、e、i、o、u ですが、データによっては æ、ā、ø などの文字が含まれる場合があります。
例
キャバーフォン 1.0
リー -> リー リー -> l33 l33 -> L33 L33 -> L L -> L111111 L111111 -> L11111
トンプソン -> トンプソン トンプソン -> th3mps3n th3mps3n -> th3mpS3n th3mpS3n -> Th3mpS3n Th3mpS3n -> Th3mPS3n Th3mPS3n -> Th3MPS3n Th3MPS3n -> Th3MPS3N Th3MPS3N -> T23MPS3N T23MPS3N -> TMPSN TMPSN111111 -> TMPSN1
キャバーフォン 2.0
リー -> リー リー -> ル le -> l3 l3 -> L3 L3 -> LA ラ -> LA1111111111 LA1111111111 -> LA11111111
トンプソン -> トンプソン トンプソン -> th3mps3n th3mps3n -> th3mpS3n th3mpS3n -> Th3mpS3n Th3mpS3n -> Th3mPS3n Th3mPS3n -> Th3MPS3n Th3MPS3n -> Th3MPS3N Th3MPS3N -> T23MPS3N T23MPS3N -> TMPSN TMPSN1111111111 -> TMPSN11111
参照
参考文献
- ^ ミレット、グレッグ、ストラウド、アダム (2012-05-18). プロフェッショナル Android センサープログラミング. John Wiley & Sons. pp. 421–. ISBN 9781118240458. 2013年2月19日閲覧。
- ^ Phua, Clifton; Lee, Vincent; Smith, Kate (2006). 「個人名問題と推奨されるデータマイニングソリューション」データウェアハウスとマイニング百科事典. CiteSeerX 10.1.1.127.5111 .
- ^ ab "Caverphone".米国国立標準技術研究所. 2018年8月20日閲覧。
外部リンク
- Caversham プロジェクト - 1893 年から 1938 年にかけてニュージーランドのダニーデン南部で記録された名前とアクセントの Caversham データ セット。
- オリジナル(2002年)Caverphoneアルゴリズム
- 改訂版(2004年)Caverphoneアルゴリズム
- 実装:
- C# 改訂実装
- Apache Commons Codec プロジェクトの Java 実装
- PHP実装
- Python実装caverphoneアルゴリズム(バージョン2.0) - AdvaS高度検索プロジェクト