2013-11-14 31 views
1

是否有算法或標準來驗證不同格式的客戶名稱?客戶名稱驗證算法

我的意思是,

  • J.史密斯
  • 約翰·史密斯
  • 約翰·史密斯
  • J.路易斯·史密斯
  • 約翰路易斯S.

可能是同一個人,並且應該通過驗證。

感謝

+0

它似乎不是一個特別複雜的任務,你是否試圖自己解決它? – Dukeling

+1

「除非你爲某個名字指定了一個特別限制性的標準,否則這可能是一個非常困難的問題」,這位曾經被稱爲「42」的人說。喬納森路易斯「路易」史密斯博士,小D.D.S.,博士,M.Div。 – twalberg

回答

2

Figure out if a business name is very similar to another one - Python接受的答案一定會幫助你,因爲我自己有一個非常類似的方法工作規範化名稱。

請注意,一個獨立的指標是不夠的。綜合方法必須實施考慮字符N Gram匹配,編輯距離等,最終返回匹配詞的強度。設計一個公式來計算匹配關鍵字的強度,一旦你的名字列表被用盡,只需重新運行算法,以獲得強度低於你設置的特定閾值的名稱/單詞。這使得這些名字可以與其他一些名字相匹配的名字產生共鳴,其中匹配/強度值更強。

此外,你將不得不注意精度/召回的權衡。採用上述方法,我發現精度太好,但召回並不是那麼好。