Article View: swnet.general
Article #38Re: soundex for svenska
From: Olle Jarnefors
Date: Thu, 19 Nov 1992 19:26
Date: Thu, 19 Nov 1992 19:26
225 lines
10089 bytes
10089 bytes
F|r ungef{r en m}nad sedan diskuterades Soundex-algoritmen och
behovet av n}got liknande f|r svenska h{r i swnet.general. Jag
har funderat lite mer p} detta. Eftersom de ursprungliga
artiklarna s{kert {r o}tkomliga f|r de flesta citerar jag valda
delar av den tidigare diskussionen.
> Newsgroups: swnet.general
> From: keisu@sics.se (Torbj|rn Keisu)
> Subject: Re: soundex for svenska
> Message-ID: <KEISU.92Oct21082529@lludd.sics.se>
> Date: Wed, 21 Oct 1992 07:25:28 GMT
>
> In article <1992Oct21.011121.17560@kth.se> psv@cyklop.nada.kth.se (Peter Svanberg) writes:
>
> >[r det n}gon som har en "soundex"-algorithm f|r svenska?
>
> > Detta begrepp har jag h|r flera g}nger men {nnu har jag inte
> > f}tt reda p} vad det *{r* f|r n}got. Kan du eller n}gon annan
> > ber{tta kort och/eller h{nvisa till dokument som beskriver det?
>
> Soundex-algoritmen {r t{nkt att l|sa problemet med ord som uttalas ungef{r
> lika men stavas olika. Detta {r d} speciellt anv{ndbart vid s|kning i namn-
> register.
> Ex Andersson, Anderson, Andersohn uttalas ju lika men {r syntaktiskt olika.
>
> Algoritmen bygger p} att ett numeriskt v{rde ber{knas f|r ett ord och ord som
> l}ter lika f}r d{rmed lika v{rde. V{rdet f|r ordet {r en summa av v{rdena f|r
> de ing}ende bokst{verna med lite variation f|r speciella kombinationer, ex
> inledande H r{knas men ej H efter konsonanter eller ngt liknande.
> Grundv{rdena i soundex blir av naturen beroende p} m}lspr}ket.
>
> Jag tror att det var Knuth som f|rst beskrev algoritmen i en av sina "Art"
> volymer.
Amerikanskt patent (!) togs p} metoden 1918 (!!) enligt Knuth.
Anv{ndingsomr}det {r s|kning av engelska efternamn.
> -- Tyv{rr ingen p} svenska, skrev en en g}ng i tiden men den har f|rsvunnit i
> ett forntidst|cken och det hj{lper ju ingen....
Om en svensk soundex {r en bra ide' s} b|r den standardiseras.
Bara dumt om olika programmerare implementerar var sin
sj{lvp}hittad transformation.
> Newsgroups: swnet.general
> From: russin@dynas.se (Peter Rostin)
> Subject: Re: soundex for svenska
> Message-ID: <1992Oct21.123229.16866@dynas.se>
> Date: Wed, 21 Oct 1992 12:32:29 GMT
>
> Algoritmen finns beskriven i Knuths "Sorting and Searching" sidan 391-392.
> Naturligtvis endast i engelsk version. Kanske man kan behandla }{| som de
> andra vokalerna?
Nej, s} enkelt {r det inte. Transformationen {r gjord f|r
engelska efternamn och fungerar d}ligt p} svenska namn. I
engelska finns det till exempel inga par av begynnelsevokaler
som {r n{stan ekvivalenta. I svenska {r "e" och "{" n{stan
ekvivalenta.
> From: ath@linkoping.trab.se (Anders Thulin)
> Newsgroups: swnet.followup
> Subject: Re: soundex for svenska
> Message-ID: <1992Oct21.091607.16413@linkoping.trab.se>
> Date: 21 Oct 92 09:16:07 GMT
>
> Soundex {r en sort hash-algoritm som funkar p} engelska ord. Den
> jobbar p} ett s}dant s{tt att ord som `l}ter lika' men stavas olika
> skall hashas till samma v{rde. Den funkar r{tt v{l, men b|rjar bli
> litet gammal.
I och f|r sig {r det inget fel hos en metod att den {r gammal om
den bara {r bra. Aristoteles syllogismer {r fortfarande giltiga
slutledningsm|nster till exempel.
> En bra svensk 'soundex' b|r innefatta n}gon sorts |vers{ttning
> fr}n skrivet ord till fonetisk form. Riktig Soundex {r ganska
> primitiv, s} det borde v{l inte vara om|jligt att snickra till.
Ett argument mot Soundex (Knuth skriver med stor
begynnelsebokstav, s} det m}ste vara r{tt) kan d{remot vara att
den {r ineffektiv. Knuth p}pekar bland annat att Soundex
-- } ena sidan ger _samma_ kod f|r Ellery, Ghosh, Heilbronn,
Kant, Ladd och Lissajous (av vilka i alla fall tre {r typiskt
engelska efternamn)
-- } andra sidan ger _olika_ kod f|r Rogers och Rodgers.
Orsaken till Soundex ineffektivitet ocks} f|r engelska namn {r
givetvis att algoritmen {r s} enkel och anledningen till det {r
att den konstruerades p} 1910-talet f|r att snabbt kunna utf|ras
i huvudet av de _m{nniskor_ som registrerade
personnamnsuppgifter. Med en _dator_ kan f|rst}s en mycket
sofistikerad algoritm exekveras mycket snabbare.
Svensk stavning {r mycket mer regelbunden {n engelsk, {ven f|r
folks efternamn. Den speciella frihet som folk tar sig i
stavningen av sitt eget efternamn har ganska sn{va ramar. Jag
t{nker allts} p} s}dana variantstavningar som Eriksson, Erikson,
Ericsson, Ericson, Erickson, Erichson, Erixon, Erickzohn,
Erikssson (det finns faktiskt tre personer med _den_ stavningen
i telefonkatalogens Stockholmsdel, under den n}got missvisande
rubriken "Erikssons etc").
Jag tror d{rf|r att en svensk metod f|r att ber{kna en fonetisk
namnform inte beh|ver bli s{rskilt komplicerad och {nd} kan bli
mycket effektivare {n Soundex {r f|r engelska namn.
Denna metod b|r inte reducera till exempel Eriksson-varianterna
till n}got s} simpelt som Soundex g|r, "E625", utan b|r ge den
fonetiska formen "Erikson". (Soundex g}r antagligen s} l}ngt i
namnf|renkling f|r att den utformades med tanke p} helt manuell
generering, sortering och s|kning av Soundex-formen.)
En svensk metod som genererar en fullst{ndig namnform med helt
enhetlig, fonetiskt riktig stavning skulle passa utm{rkt f|r
_helt automatiserad_ sortering av st|rre namnregister, ja {ven
s} stora som telefonkatalogens Stockholmsdel. (Ett detaljstudium
av telefonkatalogen visar m}nga inkonsekventa samsorteringar och
s{rsorteringar av samma namn stavade p} olika s{tt, s} det
manuella inslaget i "telefonkatalogssortering" {r nog
fortfarande avsev{rt.)
H{r {r ett utkast till en s}dan algoritm f|r ber{kning av
"UPPSLAGSFORM F\R SVENSKA PERSONNAMN", avsedd b}de f|r s|kning
och sortering:
Steg 1: Versaler ers{tts med motsvarande gemena bokstav.
Steg 2: Dessa teckentransformationer kan appliceras i valfri
ordning. (De uttrycker i de flesta fall s}dana f|renklingar som
alltid utf|rs vid svensk sortering enligt sedan l{nge vedertagna
regler.)
2a) w -> v
2b) <u"> -> y
2c) <o/> -> |
2d) <ss> -> ss
2e) <ae> -> ae
2f) <oe> -> oe
2g) <eth> -> d
2h) <thorn> -> th
2i) Borttagning av accenter och liknande utom p} }, {, | och <u">.
2j) <bindestreck> -> <SP>
Steg 3: Dessa transformationer av delstr{ngar utf|rs fr}n
v{nster till h|ger i namnet. De olika transformations-
alternativen b|r pr|vas i den ordning de anges h{r.
3a) chr -> kr
(t ex Christiansson, Enochsson)
3b) ch -> ch (annars)
(t ex Chen, Chapman)
3c) ck -> k
3d) c -> k (i |vrigt om f|re a, o, u, } eller konsonant eller sist)
3e) c -> s (annars)
3f) f -> f (f|re vokal)
(t ex Fors)
3g) f -> v (annars)
(t ex Staf, L|fquist)
3h) th -> t
(t ex Thorsson)
3i) hj -> hj
(t ex Hjalmarsson)
3j) h -> h (f|re vokal)
3k) h -> <nil> (annars)
(t ex Hveen, Ahlstr|m)
3l) ph -> f
(det g}r }t pipan med Schiphorst, men s}dana namn som
Philipsson {r vanligare)
3m) q -> k
3n) x -> ks
(t ex Erixon)
3o) {r -> {r
(t ex K{rnstr|m)
3p) {y -> {y
(typiskt f|r finska namn som H{yrinen)
3q) {{ -> {{
(typiskt f|r finska och estniska namn, t ex H{{tyla, K{{rik)
3r) { -> e (annars)
(t ex S{llberg)
Steg 4:
4a) F|ljder av samma konsonant ers{tts med ett exemplar av den.
4b) F|ljder av samma vokal beh}lls.
(Beh|vs f|r finska namn som Kuusinen, tyv{rr blir det d}
olika sorteringsv{rde f|r t ex Wik och Wiik, Sten och
Steen etc.)
Ytterligare kommentarer:
Ett stort problem {r att man till exempel nog letar efter m}nga
utl{ndskt klingande efternamn som b|rjar med c p} bokstaven c,
till exempel Cabrera, Cernik, Charmak, liksom {ven vissa
svensk-klingande, som Cederholm.
Det verkar i stort s{tt hoppl|st att sortera samman namn med
tj-ljud. Ta till exempel Kiell, Kjell, Kj{ll, K{ll eller
K{rnstr|m, Tjernstr|m, Tj{rnstr|m. Den r|ra som }terfinns i
telefonkatalogen, 08-delen, n{r det g{ller den h{r typen av namn
{r magnifik!
Problemen med j-ljudet {r att stavningen i vissa fall {r mycket
obest{md:
Gerling, Gjerling, G{rling, Gj{rling, Hjerling, Jerling,
J{rling
i andra fall mycket fast:
Djup, Hjort
De vanligaste efternamnen som b|rjar med z stavas bara s{llan
med s och man letar d{rf|r troligen f|rst under z: Zachrisson,
Zetterberg, Zettergren, Zetterlund etcetera. Dessutom finns ett
stort antal utl{ndskt klingande namn som b|rjar p} z.
Betr{ffande b{sta sortering av ae-lgaturen lutar jag }t att den
b|r uppl|sas p} samma s{tt som oe-ligaturen, inte ers{ttas med
{ (eller e). Dels {r det ju vad bokstavens grafiska form pekar
p}, dels verkar det vara s} man g|r med <ae> i efternamn i
telefonkatalogen, dels anv{nds den i latiniserade efternamn av
typ Nybl<ae>us, d{r de andra alternativen {r onaturliga. Om man
i 08-delen av telefonkatalogen tittar p} Jaeger, st}r d{r
blandat Jaeger och J<ae>ger, med en h{nvisning till J{ger.
--
Olle J{rnefors SUNET & EUNET: ojarnef@admin.kth.se
KTH, TS-Data EARN: ojarnef@sekth
(Drottning Kristinas v{g 37 B, 1 tr) Fax: 08-10 25 10
100 44 STOCKHOLM Tel: 08-790 71 26 Telex: 11421 KTH S
Technical Details
Message-ID:
<1992Nov19.192626.3536@admin.kth.se>Path:
arc1-ca.pugleaf.net!sparky!uunet!mcsun!sunic!nobeltech!admin.kth.se!ojarnefReferences:
<1992Oct21.011121.17560@kth.se> <KEISU.92Oct21082529@lludd.sics.se> <1992Oct21.123229.16866@dynas.se> <1992Oct21.091607.16413@linkoping.trab.se>Show Full Headers
Complete Article Headers
Newsgroups: swnet.general
Path: arc1-ca.pugleaf.net!sparky!uunet!mcsun!sunic!nobeltech!admin.kth.se!ojarnef
From: ojarnef@admin.kth.se (Olle Jarnefors)
Subject: Re: soundex for svenska
Message-ID: <1992Nov19.192626.3536@admin.kth.se>
Summary: Varf|r den engelska Soundex-metoden {r omodern. F|rslag
till uppslagsform f|r svenska personnamn som bas f|r s|kning och
sortering.
Keywords: s|kning, sortering, personnamn, svenska, engelska, soundex
Organization: Royal Institute of Technology, Sweden
References: <1992Oct21.011121.17560@kth.se> <KEISU.92Oct21082529@lludd.sics.se> <1992Oct21.123229.16866@dynas.se> <1992Oct21.091607.16413@linkoping.trab.se>
Distribution: swnet
Date: Thu, 19 Nov 1992 19:26:26 GMT
Lines: 225