对于某些语言,有些方法比其他语言更有效。例如,soundex(和我喜欢的另一个描述)是为名称的英语发音设计的。随着soundex,Michael
成为M240。这有几个步骤:
- 首字母被隔离。(
M
和ichael
)
- 所有元音都从余数(
M
和chl
)中删除
- 辅音被替换
- 左垫零。
辅音转换的分组是根据他们的语音相似的- ,,B
和所有的地图。F
P
V
1
并且随着时间的流逝会有变化。在家谱中,名称的拼写可能会随时间变化,但发音仍然相似,这在谱系中特别有用。
还有一些方法,例如由航空公司为姓名(而不是美国家谱)开发的比赛评分。
匹配评级方法(MRA)的编码为:
- 删除所有非主导元音(
Michael
成为Mchl
和Anthony
成为Anthny
)
- 删除任何双精度数的第二个常数
- 如果字符串长于6个字符,则通过获取前三个和后三个来将剩余的字符串减少为6个字符。
完整的规范可以在archive.org上找到-注意它“不小”(印刷形式为214页)。
在比较具有基于文本多久匹配的阈值。
还有其他语音算法。
因此,我鼓励您做的是要么按原样使用Soundex,按原样采用匹配评级方法,要么根据罗马尼亚辅音和波兰辅音修改Soundex 。
请记住,同音,辅音的分组(在波兰,m
,n
,ɲ
都鼻辅音进行分组,你可能会组唇,牙齿和肺泡塞音-无论是清音或浊音在一起-理所当然的,我不我会说波兰语,所以不知道我是否只是在说那不是真的话。
然后,只需将数据库中的所有名称隐藏到两个不同的soundex系统中,然后找出在不同语言中冲突最少的名称。这为您提供了不同的名称。因此Smith
不会显示为Smyth
。
但是,这只能解决“可能会与其他名称冲突并被人听到的名称”。它没有解决“正确听到名字,写下错误名字”的另一种方式,为此,应该将注意力集中在通用名称上。
例如,Michael
从1950年初到1970年底在美国是一个非常普遍的名字。它确实很受欢迎。但是,由于某种原因,这个名字Micheal
在1950年代很流行(在其最鼎盛时期排名第83位)。而且我敢肯定,Micheal
经常被命名的人的名字拼写错误。
因此,对于给定的发音,您应该专注于名称占主导地位的名称。在通过一年的姓名另一个数据消费者一眼,你可以看到,开始与果酱的名字......一个男孩是一个烂摊子有Jamaal
,Jamal
,Jamar
和其他人。顺便说一句,这些名称略有不同soundexes对美国(J540
,J540
和J560
-的l
,并r
在即使它们在语音密切相关的不同的群体)。然而,从,说日本一个人,没有在语音区域只有一个声音在那里l
和r
用美式英语发音。这对于使用soundex的主要辅音也可能构成一个挑战,这是人们应该意识到的(我曾经和一位日本女人打过招呼,称自己为Risa(带有“ R”),而不是Lisa作为她的日语名字的罗马字)。
您会注意到,我的示例适用于美国。该数据易于访问。显然,对于波兰和匈牙利而言,有些事情,只是暗示了匈牙利名称的通用性……我怀疑在英语之外搜索其他语言可能会有所帮助。
因此,给定了soundex的名称,几乎没有碰撞,并且实际的拼写在碰撞集中。优选地,这是一个通用名称。从匈牙利的清单来看,Krisztián
拼写错误可能会同时导致拼写错误Zoltán
(2011年匈牙利最常见的婴儿名字排名第22位!)。也就是说,您不会错Michael
。