Caverphone

Caverphone inom lingvistik och databehandling , är en fonetisk matchningsalgoritm som uppfanns för att identifiera engelska namn med deras ljud, ursprungligen byggd för att bearbeta en anpassad datauppsättning mellan 1893 och 1938 i södra Dunedin , Nya Zeeland. Med utgångspunkt från ett liknande koncept som metaphone , har det utvecklats för att rymma och bearbeta allmän engelska sedan dess.

Etymologi

Caverphone skapades av David Hood i Caversham Project vid University of Otago i Nya Zeeland 2002, reviderad 2004. Den skapades för att hjälpa till med datamatchning mellan vallistor från slutet av 1800-talet och början av 1900-talet, där namnet bara behövdes att vara i en "allmänt igenkännbar form". Algoritmen var avsedd att gälla de namn som inte lätt kunde matchas mellan röstlängderna, efter att de exakta matchningarna tagits bort från poolen av potentiella matchningar. Algoritmen är optimerad för accenter som finns i studieområdet (södra delen av staden Dunedin , Nya Zeeland).

Procedur

Caverphone 1.0

Algoritmens regler tillämpas i följd på ett visst namn, som en serie ersättningar.

Algoritmen är som följer:

  1. Konvertera till gemener
  2. Ta bort allt som inte är A-Ö
  3. Om namnet börjar med...
    1. hosta , ersätt den med cou2f
    2. grov , ersätt den med rou2f
    3. tuff , ersätt den med tou2f
    4. nog , ersätt det med enou2f
    5. gn , ersätt den med 2n
  4. Om namnet slutar med
    1. mb , ersätt det med m2
  5. Byta ut
    1. cq med 2q
    2. ci med si
    3. ce med se
    4. cy med sy
    5. tch med 2ch
    6. c med k
    7. q med k
    8. x med k
    9. v med f
    10. dg med 2g
    11. tio med sio
    12. tia med sia
    13. d med t
    14. ph med fh
    15. b med sid
    16. sh med s2
    17. z med s
    18. någon initial vokal med ett A
    19. alla andra vokaler med 3
    20. 3gh3 med 3kh3
    21. gh med 22
    22. g med k
    23. grupper av bokstaven s med ett S
    24. grupper av bokstaven t med ett T
    25. grupper av bokstaven p med ett P
    26. grupper av bokstaven k med ett K
    27. grupper av bokstaven f med ett F
    28. grupper av bokstaven m med ett M
    29. grupper av bokstaven n med ett N
    30. w3 med W3
    31. wy med Wy
    32. wh3 med Wh3
    33. varför med Varför
    34. w med 2
    35. någon initial h med ett A
    36. alla andra förekomster av h med en 2
    37. r3 med R3
    38. ry med Ry
    39. r med 2
    40. l3 med L3
    41. ly med Ly
    42. l med 2
    43. j med y
    44. y3 med Y3
    45. y med 2
  6. ta bort alla
    1. 2
    2. 3
  7. sätt sex 1 på slutet
  8. ta de första sex tecknen som kod

Caverphone 2.0

  1. Börja med ett ord
  2. Konvertera till gemener
  3. Ta bort allt som inte finns i standardalfabetet (vanligtvis az )
  4. Ta bort sista e
  5. Om namnet börjar med
    1. hosta gör det cou2f
    2. grov gör det rou2f
    3. tufft gör det tou2f
    4. nog gör det enou2f
    5. trough make it trou2f
    6. gn gör det 2n
  6. Om namnet slutar med
    1. mb gör det till m2
  7. Byta ut
    1. cq med 2q
    2. ci med si
    3. ce med se
    4. cy med sy
    5. tch med 2ch
    6. c med k
    7. q med k
    8. x med k
    9. v med f
    10. dg med 2g
    11. tio med sio
    12. tia med sia
    13. d med t
    14. ph med fh
    15. b med sid
    16. sh med s2
    17. z med s
    18. en initial vokal med ett A
    19. alla andra vokaler med 3
    20. j med y
    21. ett initialt y3 med Y3
    22. ett initialt y med A
    23. y med 3
    24. 3gh3 med 3kh3
    25. gh med 22
    26. g med k
    27. grupper av bokstaven s med ett S
    28. grupper av bokstaven t med ett T
    29. grupper av bokstaven p med ett P
    30. grupper av bokstaven k med ett K
    31. grupper av bokstaven f med ett F
    32. grupper av bokstaven m med ett M
    33. grupper av bokstaven n med ett N
    34. w3 med W3
    35. wh3 med Wh3
    36. om namnet slutar på w ersätt det sista w med 3
    37. w med 2
    38. ett initialt h med ett A
    39. alla andra förekomster av h med en 2
    40. r3 med R3
    41. om namnet slutar på r ersätt det sista r med 3
    42. r med 2
    43. l3 med L3
    44. om namnet slutar på l ersätt det sista l med 3
    45. l med 2
  8. ta bort alla 2 s
  9. om namnet slutar på 3 , ersätt de sista 3 med A
  10. ta bort alla 3 s
  11. lägg tio 1 s på slutet
  12. ta de första tio tecknen som kod

Exempel

Caverphone 1.0

 Lee -> lee lee -> l33 l33 -> L33 L33 -> L L -> L111111 L111111 -> L11111 Thompson -> thompson thompson -> th3mps3n th3mps3n -> th3mpS3n th3mpS3n th3mpS3n Th3mpS3n Th3mpS3n Th3mpS3n th3mpS3n Th3mpS3n th3mpS3n 3mPS3n -> Th3MPS3n Th3MPS3n - 
 > Th3MPS3N Th3MPS3N -> T23MPS3N T23MPS3N -> TMPSN TMPSN111111 -> TMPSN1 

Caverphone 2.0

 Lee -> lee lee -> le le -> l3 l3 -> L3 L3 -> LA LA -> LA1111111111 LA1111111111 -> LA11111111 Thompson -> thompson thompson -> th3mps3n th3mps> 3mps3n 3mps> 3:e n Th3mpS3n -> Th3mPS3n Th3mPS3n 
 - > Th3MPS3n Th3MPS3n -> Th3MPS3N Th3MPS3N -> T23MPS3N T23MPS3N -> TMPSN TMPSN1111111111 -> TMPSN11111 

Se även

externa länkar