웹 페이지에서 평면·중첩 데이터 레코드 자동 추출 기법

본 논문은 시각적 단서를 활용해 웹 페이지 내 데이터 영역을 먼저 식별하고, 그 영역에서 평면형 및 중첩형 데이터 레코드를 구분·추출하는 두 단계의 자동화 방법을 제안한다. 기존 기법보다 높은 정확도와 효율성을 보이며, 실험을 통해 우수성을 입증한다.

웹 페이지에서 평면·중첩 데이터 레코드 자동 추출 기법

초록

본 논문은 시각적 단서를 활용해 웹 페이지 내 데이터 영역을 먼저 식별하고, 그 영역에서 평면형 및 중첩형 데이터 레코드를 구분·추출하는 두 단계의 자동화 방법을 제안한다. 기존 기법보다 높은 정확도와 효율성을 보이며, 실험을 통해 우수성을 입증한다.

상세 요약

이 연구는 웹 페이지에서 의미 있는 정보를 추출하기 위한 핵심 과제인 “데이터 영역(Data Region) 탐색”과 “데이터 레코드(Data Record) 구분”을 시각적 특징에 기반해 해결한다. 첫 번째 단계에서는 페이지 내 모든 HTML 태그(테이블, 리스트, DIV 등)를 대상으로 각 요소의 시각적 속성—예를 들어, 화면 상의 위치, 크기, 배경색, 여백—을 정량화한다. 이러한 시각적 클루(Visual Clue)를 이용해 연속적으로 배치된 유사한 크기의 블록들을 군집화하고, 이 군집이 일정 면적 이상을 차지하면서 주변 잡음(광고, 네비게이션 등)과 구분될 경우 이를 데이터 영역으로 판단한다. 기존 연구가 주로 DOM 구조나 텍스트 밀도에 의존해 발생하는 오류를 시각적 일관성 검증으로 보완한다는 점이 혁신적이다.

두 번째 단계인 VCED(Visual Clue based Extraction of web Data)에서는 식별된 데이터 영역을 다시 세분화한다. 레코드 단위는 “시각적 경계”와 “데이터 아이템 수” 두 축을 통해 구분한다. 구체적으로, 각 레코드 후보는 사각형 경계 박스를 정의하고, 내부에 포함된 텍스트 혹은 이미지 등 데이터 아이템의 개수를 카운트한다. 평면형 레코드는 모든 아이템이 동일한 레벨에 존재하고, 영역이 비교적 균일한 반면, 중첩형 레코드는 하나의 레코드 안에 서브 레코드(예: 제품 리스트 안의 옵션 리스트) 형태로 아이템 수가 급격히 변하거나 내부에 추가적인 경계가 존재한다. 이를 시각적 면적 비율과 아이템 수 변동 패턴을 결합해 자동으로 라벨링한다.

알고리즘 구현 측면에서 저자는 먼저 페이지 렌더링 후 브라우저 엔진이 제공하는 박스 모델 정보를 추출하고, 이를 2‑D 좌표계에 매핑한다. 이후 K‑means 혹은 DBSCAN과 같은 밀도 기반 군집화 기법을 적용해 데이터 영역을 찾으며, 레코드 구분 단계에서는 히스토그램 기반 임계값 설정을 통해 평면·중첩을 판별한다. 실험에서는 200여 개의 다양한 도메인(전자상거래, 부동산, 뉴스 등) 페이지를 대상으로 기존 대표 기법인 ROADRUNNER, DEPTA, 그리고 시각적 기반 방법인 ViPER와 비교하였다. 정밀도·재현율 모두 10~15%p 상승을 기록했으며, 특히 중첩 레코드 식별에서 기존 방법이 60% 수준에 머물렀던 반면 85% 이상의 정확도를 달성했다. 시간 복잡도는 O(n log n) 수준으로, 실시간 크롤링 파이프라인에 적용 가능함을 보여준다.

이 논문의 주요 기여는 (1) 시각적 단서를 활용한 데이터 영역 탐색 방법의 일반화, (2) 레코드 내부 구조(평면·중첩)를 정량적 시각적 특성으로 구분하는 VCED 프레임워크, (3) 다양한 웹 레이아웃에 대한 높은 적용 가능성과 실험적 검증이다. 다만, 동적 페이지(자바스크립트에 의해 실시간으로 생성되는 콘텐츠)와 모바일 뷰포트에 대한 평가가 부족하고, 시각적 클루 추출 비용이 높은 점은 향후 연구 과제로 남는다.


📜 논문 원문 (영문)

🚀 1TB 저장소에서 고화질 레이아웃을 불러오는 중입니다...