2009-10-27 4 views
1

이름 분리에 대한 참조를 찾고 있는데, "John A. Doe"부분은 first = John, middle = A., last = Doe입니다. 멕시코에서는 부계, 모성, 첫 번째 및 두 번째 이름이 있으며 다른 순열로 쓰일 수 있으므로 문제는 상당히 복잡합니다.개인 이름을 파트로 분할하기위한 알고리즘

데이터에 따라 다르므로 우리는 의사 결정을 내릴 수 있도록 모든 단어의 점수를 계산하는 일치하는 소프트웨어로 작업하고 있습니다 (큰 데이터베이스를 기반으로 함). 입력 된 데이터는 깨끗하지 않고 일부 정부 웹 페이지에서 가져온 것으로 사람이 필터링하므로 인식해야하는 정크가있을 수 있습니다. 어떤 제안?

[편집] 예 :

 
name: 
    Javier Abdul Córdoba Gándara 
common permutations (or as it may appear in gvt data referring to same person): 
    Córdoba Gándara Javier Abdul 
    Javier A. Córdoba Gándara 
    Javier Abdul Córdoba G. 

paternal=Córdoba 
maternal=Gándara 
first given:Javier 
second given:Abdul 
 
name: María de la Luz Sánchez Martínez 
paternal:Sánchez 
maternal: Martínez 
first given: María de la Luz 
 
name: Paloma Viridiana Alin Arias Medina 
paternal: Arias 
maternal: Medina 
first given: Paloma 
second given: Viridiana Alin 

나는 각 단어의 의미는 점수에 따라 어떤 말했듯이. 점수가 아닌 경우

Viridiana
Alin
에 이름이 주어 졌는지 알 수있는 방법이 없습니다.

우리는 매우 강력한 데이터베이스 (8 천만 레코드 정도)를 가지고 있으므로 점수 시스템을 사용할 수 있습니다. 나는 그것을 사용하지만 다른 참조를 찾는 알고리즘을 설계하고 있습니다.

+0

멕시코 이름의 몇 가지 예를 제공해 주시겠습니까? –

답변

1

불행히도 - 자신의 이상적인 알고리즘은 매우 특정한 데이터가 될 것이므로 특정 상황에서이 알고리즘을 사용해야합니다.

  1. 10 %를 일반 문자열 조작에 대한
  2. 30 %의 특정 성격에 대한 : 총 시간, 나는 다음과 같이 시간이 대략 분할됩니다 말하고 싶지만이 알고리즘을 개발하기위한 노력의

    품질

그리고 내가 믿는의 데이터 (멕시코 이름 형식, 데이터 입력 단점)

  • 60 %가 데이터 품질에 대한 수용하기/부족 그것은 일반적인 문자열 조작에 대해 상당히 관대합니다. 물론 모든 레코드에 대해 품질 결과가 필요한지 또는 '깨끗한'레코드 만 필요로하는지에 따라 달라지며 '어려운'레코드를 무시할 수 있으면 훨씬 간단 해집니다.그들은이 필요하지 않은 경우,
  • 사용 하이픈/문장 부호 (성씨 또는 가족 이름
  • 이니셜을 식별하는 공간에 비 영숫자/공백 문자
  • 분할을 제거

    일부 일반 팁

    • 하는 일반적으로 싱글 문자)는 성 (surnames)이 아닙니다. 즉 은 처음/중간이어야합니다.
    • 각 이름을 프로그래밍 방식으로 확인한 (그리고이를 철저히 테스트 한) 자신감의 수준을 결정하십시오. 개별적으로 음식을 제공해야하는 유사한 패턴을 포함하는 데이터의 하위 집합이있을 수 있습니다 (다른 출처 등에서 올 수 있음)
  • 0

    정규 표현식을 n 번째 학위로 입학하기 전에 http://www.ultrapico.com/expresso.htm을 살펴보세요. 이런 종류의 일을하는 데 훌륭한 도구입니다.

    사용하려는 언어는 무엇입니까? 자동화하고 싶습니까?

    Google에서 시작할 수있는 몇 가지 예가 있습니까?

    re

    0

    확인을 위해 자연어 나 기계 학습을 추가해야 할 수도 있습니다. 저자명 (예 : 과학 논문)을 식별하는 문제는 서로 다른 주문, 약어, 추출 등으로보고 될 수 있기 때문에 어렵습니다. 데이터베이스가 더러 우면 당신이하는 일이 무엇이든간에 모호함으로 끝날 것입니다.

    관련 문제