피드로 돌아가기
Entity Resolution at Scale: Matching Products Across Amazon, Reddit, and RTINGS
Dev.toDev.to
Backend

ML 없이 94.2% 정확도 달성, 3단계 계층형 Entity Resolution 전략

Entity Resolution at Scale: Matching Products Across Amazon, Reddit, and RTINGS

Daniel Rozin2026년 4월 10일6intermediate

Context

다양한 소스에서 수집한 상품명이 서로 달라 동일 상품 식별에 어려움 발생. 단순 문자열 매칭 방식으로는 각 플랫폼의 명명 규칙 차이로 인한 중복 데이터 생성 불가피. 데이터 정규화와 정밀한 매칭 로직을 통한 효율적인 상품 통합 체계 필요.

Technical Solution

  • 브랜드 및 모델 식별자 추출을 통해 기초 데이터를 정규화하는 1단계 Normalization 레이어 설계
  • Brand 일치 여부를 필수 조건으로 설정하고 Model Family에 Levenshtein distance를 적용한 2단계 Fuzzy Matching 전략
  • 정규화 및 유사도 매칭 실패 건을 대상으로 Tavily API 기반 외부 캐노니컬 소스를 참조하는 3단계 Cross-Reference 검증 구조
  • 브랜드-라인-모델-변체로 이어지는 계층 구조를 정의하여 상품군과 개별 모델 간의 구분 모호성 해결
  • 지역별 명칭 차이 해결을 위한 Alias Table 기반의 매핑 관리 체계 구축
  • 매칭 결정 경로를 전체 기록하는 로깅 시스템을 도입하여 오탐 분석 및 로직 개선 기반 마련

Impact

  • 매칭 정확도(Match accuracy) 94.2% 달성
  • 오탐률(False positive rate) 1.8% 유지
  • 일일 약 5,000건의 상품 멘션 처리
  • 전체 파이프라인 처리 시간 약 12분 소요
  • 캐노니컬 데이터베이스 내 12,000개 이상의 상품 관리

Key Takeaway

복잡한 엔티티 매칭 문제에서 무조건적인 ML 도입보다 도메인 지식 기반의 휴리스틱 계층 구조 설계가 개발 비용 대비 높은 효율을 제공함.


엔티티 매칭 설계 시 Brand와 같은 핵심 식별자는 Exact Match를 적용하고, 모델명 등 가변적인 필드에만 Fuzzy Matching을 적용하여 오탐을 방지할 것

원문 읽기