레코드 연결에 EM 알고리즘 사용


9

이름, 성 및 생년월일로 두 데이터 집합의 레코드를 연결하는 데 관심이 있습니다. EM 알고리즘으로 이것이 가능할 수 있습니까? 그렇다면 그렇다면 어떻게해야합니까?

Carl McCarthy, 1967. 예를 들어 1st의 다음 레코드를 고려하십시오. 두 번째 데이터 집합의 모든 레코드를 검색하고 이름과 Carl 사이의 jaro-winkler 거리와 성과 McCarthy 사이의 jaro-winkler 거리를 할당합니다. 이 거리는 출생 연도 사이의 거리와 마찬가지로 확률 적입니다. 이 3 가지 확률 (곱하기 평균은?)을 1로 결합합니다.

이제 결정 규칙 부분이 온다. 모든 확률을 최고에서 최저로 순위를 매 깁니다. 먼저 P (첫 번째 적중이 일치)> = 임계 값을 원합니다. 둘째, P (두 번째 적중이 일치) P (두 번째 적중이 일치) / = (두 번째 적중이 일치)> = 임계 값도 원합니다. 셋째,이 두 번째 데이터 세트의 첫 번째 조회가 Carl McCarthy, 1967의 첫 번째 데이터 세트에서 한 명 이상과 일치하지 않기를 원합니다.

이러한 임계 값은 어떻게 결정될 수 있습니까?

Stata 및 / 또는 Perl의 접근법을 선호합니다.

예를 들어 :

http://www.ncbi.nlm.nih.gov/pmc/articles/PMC1479910/pdf/amia2003_0259.pdf

(그것에도 불구하고, 나는 왜 그리고 어떻게, 입력과 출력이 무엇인지, 그리고 가정과 제한이 무엇인지 완전히 따르지 않습니다).


Stata에서 reclink를 사용하는 것에 대해 생각해 보셨습니까?
Dimitriy V. Masterov 2019

답변:


4

물론 EM 알고리즘은 확률 적 연결에 사용되었습니다. 주제에 관한 많은 기사가 있으며, Winkler의 다음은 이론적 인 세부 사항과 관련하여 도움이 될 수 있습니다.

http://www.census.gov.edgekey.net/srd/papers/pdf/rr2000-05.pdf

또한 Kevin Campbell이 개발 한 데이터 링크 소프트웨어가 이미 있습니다 :

http://the-link-king.com/

소프트웨어는 무료로 다운로드 할 수 있으며 Kevin Campbell은 유료 지원을 제공합니다. 코드는 SAS로 작성되었으므로 기본 SAS 패키지가 필요합니다.


감사합니다! Winkler가 작성한 2 개의 논문을 읽었지만 완전히 이해하지 못했습니다. 나는 그 종이에서 EM을 모았습니다. 또한 SAS 사용법을 모르겠습니다. 나는 펄이 내가 사용할 EM 모듈을 가지고 있다는 것을 알고 있지만, 왜 EM이 적합한 지 또는 어떻게 사용하는지 잘 모르겠습니다. 개념적으로 EM은 위의 질문에 어떻게 대답합니까?
user1690130

EM 알고리즘은 두 개의 서로 다른 레코드를 잘못 연결하거나 두 개의 일치하는 레코드를 잘못 연결하지 않는 알 수없는 (또는 "잠재적 인") 확률을 고려하기 때문에 양의 일치 가능성을 모델링하는 데 유용합니다. 이러한 확률의 추정값은 우도 함수를 최대화하기 위해 알고리즘의 각 단계에서 세분화됩니다.
RobertF

어떤 입력을 제공합니까? 일 변량 프로브 및 레이블? 그리고 그것은 최적의 일치를 내뿜는가?
user1690130

0

다음 과의 연결을 기록 하는 소프트웨어 RELAIS 가 있습니다.

6) 확률 적 기록 연계 (EM (Expectation-Maximization)를 통한 Fellegi 및 Sunter 모델 파라미터 추정.

RELAIS는 Java 및 R로 구현되었으며 데이터베이스 아키텍처 (MySQL)가 있습니다.

ESSnet 데이터 통합 ​​프로젝트 에서 사용 가능한 레코드 연결에 대한 추가 문서가 있습니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.