..PAGE:1작은 화면에서의 효율적인 웹 브라우징을 위한웹 페이지 본문 추출 방법Primary Content Extraction forEfficient Browsing on Small Screens2009307004김재은1..PAGE:2목차서론관련연구작은 화면에서의 웹 브라우징본문 추출(Primary Content Extraction)제안하는 본문 추출 방법불필요한 DOM 요소 제거텍스트밀도 스코어 계산본문 요소 확장실험실험데이터 집합평가 방법실험 결과결론 및 향후 연구2..PAGE:31. 서론모바일 기기의 성능과 보급률 향상에 따라 모바일 기기에서의 웹 브라우징 수요가 늘어나고있다.하지만 대부분의 웹 페이지가 PC환경을 기준으로 레이아웃이 구성되어 있으며 많은 수의 광고나 네비게이션바와 같은 클러터(Clutter)들을 포함하고 있다.따라서 모바일 기기의 작은 화면에서는 한 화면에 내용이 들어오지 않으며, 웹 페이지를 열었을 때 한 화면 가득히 헤더부분만 보이는 경우가 많다.본 논문에서는 웹 페이지의 본문만을 추출하여 보여줌으로써 이러한 문제를 해결하고자 한다.3..PAGE:42. 관련연구PC환경에서의 브라우징을 전제로 설계된 웹 페이지들을 모바일 기기에서 편리하게 브라우징하는 방법에 대한 선행 연구들과 장단점에 대해 알아본다.선행연구는 크게 “작은 화면에서의 웹 브라우징”과 “본문 추출”이라는 두 가지 관점에서 조사하였다.4..PAGE:5웹 페이지 레이아웃 수정(Web page layout modification)웹 페이지의 레이아웃을 변형시키는 방법이다.웹 페이지 전체를 축소시키는 방법테이블형태의 데이터를 모바일 페이지에 맞게 변형시키는 방법사이트 맵을 분석하여 메뉴 페이지를 생성하는 방법웹 페이지 재구성(Web page restructuring)웹 페이지의 컨텐츠를 새롭게 구성하는 방법이다.DOM 트리 분석을 통해 연관된 데이터들을 클러스터링 하는 방법사용자 로그를 분석하여 사용자 취향에 맞지 않는 컨텐츠를 제거하는 방법웹 페이지 분할과 확대(Web p 키워드를 기준으로 본문 블록 탐색컨텐츠 블록을 추출하는 과정이 태그를 기준으로 하기 때문에 태그 기반의 웹 페이지에는 적용 불가기계학습을 위한 학습 데이터 준비가 필요하다.웹 페이지를 VIPS 알고리즘으로 세그멘테이션 하고 블록의 시각적 특징을 기준으로 본문 블록 탐색VIPS알고리즘은 시간복잡도가 높다기계학습을 위한 학습 데이터 준비가 필요하다.DOM 요소의 깊이와 문장 수를 기준으로 블록 선정한 후 완전한 문장만 추출완전한 문장을 판별하기 위한 추가적인 알고리즘이 필요하다.6..PAGE:73. 제안하는 본문 추출 방법웹 페이지 본문의 특징은 다음과 같다본문 내에는 링크가 드물다본문은 비교적 장문의 텍스트를 포함한다본문을 레이아웃을 구성하는 태그는 비교적 적다.본문의 특징을 반영하기 위하여 각각의 DOM 요소를 다음의 네 가지 요소로 분류하였다.링크 요소 하이퍼링크를 생성하는 요소텍스트 요소 순수한 텍스트 요소레이아웃 요소 레이아웃을 형성하는 요소기타 요소 화면에 보이지 않는 요소7..PAGE:83. 제안하는 본문 추출 방법앞서 설명한 네 가지 요소 중 링크 요소와 기타 요소를 제거하고 텍스트 요소와 레이아웃 요소를 이용하여 본문을 탐색한다.제안한 방법은 다음의 세 단계를 거친다불필요한 DOM 요소 삭제텍스트 밀도 스코어 계산본문 요소 확장8..PAGE:93.1 불필요한 DOM 요소 삭제알고리즘의 성능 향상을 위하여 본문 탐색에 불필요한 DOM 요소들을 삭제한다., 과 같이 화면에 보이지 않는 요소들, , 와 같이 텍스트의 외형에만 영향을 미치는 요소들링크를 생성하는 요소9..PAGE:103.2 텍스트밀도 스코어 계산텍스트밀도 스코어는 본문일 확률이 높은 요소를 찾기 위하여 계산한다.텍스트밀도 스코어는 다음의 수식으로 계산되며 스코어가 높을 수록 본문일 확률이 크다.텍스트밀도 스코어 =이미지는 이미지가 차지하는 면적을 기준으로 텍스트길이로 환산한 후 위의 수식을 적용시킨다.10..PAGE:113.2 텍스트밀도 스코어 계산그림 1. 텍스트밀도 스코어의 계산병행하면 한 차례의 DOM 트리 순회만으로 두 단계를 수행할 수 있다.따라서 3.1과 3.2 두 단계의 시간 복잡도는 O(n)이 된다. 여기서 n은 DOM 트리에 포함된 요소의 개수이다.12..PAGE:133.2 텍스트밀도 스코어 계산Function calcScore(node) {If type of node is TEXT {node.lengTxt = length of node;} Else {For each childNodes in node {calcScore(childNode);node.lengTxt += childNode.lengTxt;node.numTag += childNode.numTag;}node.score = node.Txt / node.Tag;}node.numTag++;}그림 2. 텍스트밀도 스코어 계산 과정을 나타내는 수도코드13..PAGE:143.3 본문 요소 확장앞서 계산한 스코어 중 최고 스코어를 갖는 DOM 요소를 중심으로 주변을 탐색하여 추가적인 본문 요소들을 찾아낸다.최고 스코어 노드의 주변을 탐색하는 이유는 본문 전체가 여러 개의 연속된 문장으로 이루어져있다고 가정하기 때문이며, 이런 가정은 텍스트의 구조적 응집성(Text Coherence)로 설명 할 수 있다.추가적인 본문 요소는 최고 스코어 노드의 형제 노드들에서 찾아내며, 소정의 임계값(Threshold) 이상의 스코어를 가진 요소를 본문 요소로 결정한다.14..PAGE:154. 실험앞서 제안한 방법의 실효성을 검증하기 위한 실험을 실시하였다.이번 장에서는 실험에 사용된 데이터집합과 실험 결과의 평가 방법에 대해 설명하겠다.15..PAGE:164.1 실험데이터 집합잘 알려진 국내의 신문사와 방송사 사이트 21개로부터 460여개의 페이지를 추출하였고, 3개의 블로그 사이트로부터 60개의 페이지를 추출하였다.주요 실험 데이터를 언론사 사이트에서 수집한 이유는 뉴스 기사 페이지는 반드시 본문을 포함하며, 본문과 본문이 아닌 것을 구분하는 기준을 명확히 할 수 있기 때문이다.실험데이터 25세계일보18조선일보25중앙일보25한국일보24소 계167방송KBS TV20MBN TV20MBC TV25YTN TV25소 계90경제/IT디지털타임스20매일경제20머니투데이20아시아경제20아이뉴스2420이데일리19전자신문23헤럴드경제20소 계162스포츠일간스포츠20스포츠서울20소 계40블로그야후블로그20coinblog.co.kr20www.abangsil.net20소 계60합 계519표 1. 실험 데이터 집합17..PAGE:184.1 실험데이터 집합전체 실험데이터 집합에 속한 단어의 수는 518,368개이고 그 중 24.32%를 차지하는 126,107개의 단어가 본문에 속하며 전체의 44.10%를 차지하는 228,604개의 단어가 링크 요소에 속한다.전체 실험데이터집합에 속한 이미지의 개수는 55,432개이며, 그 중 1.08%를 차지하는 603개의 이미지가 본문에, 60.23%를 차지하는 33,389개의 이미지가 링크 요소에 속한다.링크요소를 제거하는 것 만으로도 많은 클러터를 제거할 수 있다.18..PAGE:19유 형전체메인링크기타일간지단어 수155,04343,69460,00051,349평 균928262359307방송단어 수115,30013,90774,66426,729평 균1,281155830297경제/IT단어 수153,06733,63770,81948,611평 균945208437300스포츠단어 수31,4966,34715,1809,969평 균787159380249블로그단어 수63,46228,5227,94126,999평 균1,058475132450합 계518,368126,107228,604163,657평 균967235427305일간지이미지 수14,8371047,5917,142평 균8914543방송이미지 수11,13629,0082,126평 균124010024경제/IT이미지 수20,9824613,2957,641평 균13008247스포츠이미지 수4,265472,0062,212평 균10715055블로그이미지 수4,2124041,4892,319평 균7072539합 계55,리고 F1을 적용하였다.여기서 C는 정답 단어 집합, D는 추출된 단어 집합이다.20..PAGE:215. 실험 결과21..PAGE:225. 실험 결과22..PAGE:235. 실험 결과실험 결과 성능을 요약하면 다음과 같다.전체 텍스트의 추출 성능MicroF1 : 95.23MacroF1 : 89.85전체 이미지의 추출 성능MicroF1 : 90.25MacroF1 : 83.23웹 페이지 면적의 감소율약 77%23..PAGE:24유 형MiReMiPrMiF1MaReMaPrMaF1일간지텍스트98.3597.3797.8697.7696.5197.13이미지80.7063.8971.3275.2173.1374.15방송텍스트100.0096.2398.08100.0094.4197.13이미지50.00100.0066.6750.0050.0050경제/IT텍스트86.2895.2690.5479.7679.1779.46이미지93.4897.7395.5694.2997.1495.69스포츠텍스트81.6883.7682.7185.0783.1484.09이미지74.4797.2284.3470.7272.9771.83블로그텍스트95.8499.8797.8289.3591.6789.86이미지97.52100.0098.7594.46100.0098.20전체 텍스트93.9096.5895.2390.5889.1489.85전체 이미지92.1788.4290.2582.5683.5083.23표 4. 기사 추출 방법의 성능24..PAGE:255. 실험 결과텍스트 추출 성능보다 이미지 추출 성능이 낮은 이유는 일부 웹 사이트에서 본문 이미지에 “크게 보기”링크를 걸어두기 때문이다.에서 낮은 성능을 보인 일간지와 스포츠 신문 사이트에는 각각 7개 중 2개 사이트와 2개 중 1개 사이트가 이미지 크게 보기 기능을 제공하고 있다.그림 3. 매체 별 이미지 추출 결과25..PAGE:265. 실험 결과오류 발생 유형별 통계를 보면 다음과 같다제목 추출본문 내 광고 추출이미지 미추출본문 전체 미추출본문 일부 미추출댓글 추출기타13*************26