Information Retrieval (Chapter 6: 텍스트와 멀티미디어 언어) 서정연교수 Office: 공학관 816 Tel: 705-8488 Email: seojy@sogang.ac.kr
6.1 소 개 텍스트 문서(document) 지식 전달의 주된 형태 다양한 형식과 언어로 작성 정보의 한 단위 주로 디지털 형태의 텍스트 다른 미디어도 포함: 이미지, 그래프, … 논리적 단위: 논문, 단락, 사전 항목, … 물리적 단위: 파일, 전자 메일, 웹 페이지, …
6.1 소 개(계속) 문서의 구성 작성자가 기술한 일정 형태의 구문 구조 저자가 명시한 의미 스타일: 프린터나 화면에 출력될 문서의 외양 메타데이터(metadata): 문서 자신에 관한 정보, 날짜, …. 인쇄물, 웹페이지, …
소 개(계속) 문서의 구문(syntax) 문서의 의미 구조, 스타일, 의미, 외부 기능 등을 표현 많은 경우 암시적으로 주어짐 선언적 언어나 프로그래밍 언어로 표현하기도 함 문서 편집기: 서술적 형태 TeX: 식자용 언어 SGML: 개방적 언어 -- 호환성과 융통성 제공 문서의 의미 용도와도 관련이 있음 포스트스크립트(postscript) 지시자: 출력 목적
소 개(계속) 문서의 스타일(style) 대부분의 문서는 특정 포맷 스타일을 지님 정보와 스타일간의 독립성 추구 TeX, RTF(Rich Text Format): 스타일이 문서에 내재 스타일은 매크로로 보완 가능 예) TeX에서 LaTeX 스타일은 보통 저자에 의해 정의됨 독자가 스타일의 일부 결정 가능 예) 웹 브라우저의 옵션 오디오, 비디오 같은 다른 미디어의 처리도 포함
6.2 메타데이터 메타데이터 데이터에 대한 데이터 예) DBMS: 스키마, 관계의 명칭/필드/속성, 속성의 정의역 메타데이터의 유형[Marchionini] 서술적 메타데이터(Descriptive Metadata) 의미 외적인 메타데이터 : 문서 작성 방법에 관한 정보, 저자, 출판일, 출처, 길이, 장르 등을 포함 예) Dublin Core Metadata Element Set: 15개 필드 의미적 메타데이터(Semantic Metadata) 문서의 내용/주제에 대한 정보 예) 미국 국회 도서관 주제 코드 예) MEDLINE 시스템의 생체 임상 의학 논문 질병, 해부학, 약품 등에 관련된 주제 항목 부여 용어 체계(ontology) 주제 기술을 위한 용어의 계층 분류(taxonomy) 의미적 용어를 표준화화기 위해 사용
6.2 메타데이터(계속) 메타데이터 포맷 MARC(Machine Readable Cataloging Record) 도서관 레코드 포맷, 제목/저자 등 서지 항목 필드 존재 USMARC: MARC의 미국 버전 서지 정보 교환용 미국 국가 표준 웹 메타데이터 용도: 목록 작성(예: BibTeX), 내용 등급 부여, 지적 재산권, 디지털 서명, 프라이버시 수준, 전자상거래 응용 등 RDF(Resource Description Framework) 웹 메타데이터 표준 노드와 부가적인 속성/값(attribute/value) 쌍으로 구성 노드 URL(Uniform Resource Locator) URI(Uniform Resource Identifier) 비텍스트 객체의 메타 서술에도 유용 예) 이미지: 서술용 키워드 집합
6.3 텍스트 텍스트 코딩 체계 텍스트 포맷의 유형 초기: EBCDIC, ASCII ISO-Latin: 8비트 ASCII, 악센트, 발음 구분 기호 포함 Unicode(ISO 10616): 16비트, 한글, 한자 등 동양 언어 표현 가능 한글 코드: KS5601(완성형), KS5700(한글 유니코드) 텍스트 포맷의 유형 ASCII 형태: 높은 호환성, 정보의 추출/수정이 용이 예) TeX 이진 형태: 필터 필요 예) Word, HWP 같은 워드프로세서로 작성된 문서
6.3 텍스트(계속) 서로 변경할 수 있는 텍스트 포맷(interchangeable format) RTF (Rich Text Format) : 워드프로세서용, ASCII 구문 PDF(Portable Document Format) : 인쇄용 Postscript : 인쇄용 MIME(Multipurpose Internet Mail Exchange): 전자 메일용 다중 문자 집합, 다중 언어, 다중 미디어 지원 대표적인 압축 소프트웨어/포맷 Compress: Unix ARJ: PC ZIP: gzip, Winzip uuencode/uudecode, binhex: 이진 파일과 7비트 ASCII 텍스트 사이의 변환
6.3.2 정보이론(Information Theory) 엔트로피 : 확률 변수의 정보량 정보의 내용(content)/불확실성(uncertainty)을 포착하기 위한 개념 최적 코드를 사용해서 전송한 메시지의 평균 길이 확률 변수 X의 엔트로피 H(X), 확률 집합 {p1, …, pn}의 엔트로피 H(p) 엔트로피의 성질 H(X) 0 H(X) = 0 (X가 확실하거나 불가능할 경우) 메시지의 길이에 따라 엔트로피는 증가한다. 메시지의 길이가 길다는 의미는 불확실하다는 의미이다. 확률 분포가 균등하면 균등할수록 엔트로피는 증가한다.
6.3.2 정보이론(계속) 엔트로피는 불확성의 척도이다. 어떤 사실을 많이 알수록 엔트로피는 낮다. 엔트로피는 텍스트에 대해서 어느 정도 압축할 수 있을지를 알 수 있다. 텍스트의 정보량은 엔트로피로 알 수 있다. 각 심볼의 확률에 따라 다름 이러한 확률을 구하기 위해 텍스트 모델이 필요하다.
6.3.3 자연언어 모델링 심볼 심볼의 특성 자연언어 모델링의 주요 쟁점 단어를 구분하는 심볼 단어를 이루는 심볼 균등하게 분포되어 있지 않다. 자연언어의 경우, 이전에 나타난 심볼에 의존적 자연언어 모델링의 주요 쟁점 텍스트 생성 모델 문서의 단어 빈도 분포(Zipf의 법칙) 문서에서 사용되는 어휘의 수(Heaps의 법칙) 단어의 평균 길이
6.3.3 자연언어 모델링(계속) 자연언어 텍스트 생성 모델 이항(binomial) 모델 심볼의 출현 확률이 독립적인 것으로 간주 유한 문맥(finite-context) 모델, 마코프(Markov) 모델 현재 심볼의 출현 확률을 구할 때, 이전 k개의 심볼을 고려 k차 모델 (이항 모델은 0차 모델로 간주됨) 유한 상태(finite-state) 모델: 정규 언어 정의 문법 모델: 문맥 자유(context free) 언어 등을 정의
이항 모델 (Binomial model) Model 각 심볼은 이전 심볼들을 고려하지 않고 어떤 확률로 생성된다. J o h 각 심볼은 이전 심볼들을 고려하지 않고 어떤 확률로 생성된다. J o h n a t e t h e c a t Pr(a) Pr(t) Pr(e) Model
유한 문맥 모델 (Finite-context model) 각 심볼은 이전 k개의 심볼을 고려하면서 어떤 확률로 생성된다. J o h n a t e t h e c a t Pr(a|n ) Pr(t| a) Pr(e|at) Pr(t|e ) Pr(e|th) Pr(t|ca) k=2 Model
Zipf’s Law 단어의 분포 단어는 텍스트 내에서 균등하게 분포되지 않는다. 자주 사용되는 단어(most common tokens)은 전체 단어 출현에 약 50%를 차지한다. 단어의 약 50%는 단지 한번만 출현된다.(Hapax legomena) 텍스트의 약 12%는 3번 이하로 출현한 단어로 구성된다. 따라서 텍스트에서 단어의 행위를 예측하는 것은 어렵다. Zipf의 법칙 단어의 빈도 f와 그 순위 r의 곱은 거의 일정하다.
Zipf의 법칙 (계속)
Zipf의 법칙 (계속) 반비례관계 대부분의 단어에 대해서 자료부족(data sparseness) 문제를 가진다. 아주 적은 수의 단어에 대해서만 충분한 예를 가지고 있다. 화자(speaker)는 수가 많지 않고 자주 쓰이는 단어(common word)를 사용하려고 한다. 청자(hearer)는 수가 많고 자주 쓰이지 않는 단어(중의성이 적은 단어)를 사용하도록 기대한다. 최소 노력의 원리(Principle of Least Effort) 단어의 빈도가 클수록 복합어와 같은 단어 합성(permutations)이 많다.
Zipf의 법칙 (계속) 불용어(stop words): 단어의 빈도와 수 정보검색에서 중빈도 단어가 색인어로서 가장 적합하다. 몇몇 고빈도 단어는 문서의 분별력이 좋지 않다. 언어학에서는 대개 폐쇄어(closed-class words)들이다. 영어의 예: to, from, on, and, the, ... 예) TREC-2 컬렉션에서 가장 빈도가 높은 단어: the, of, and, a, to, in 한국어의 예: -가, -의, -는, … 단어의 빈도와 수 고빈도 단어: 수가 적다. 중빈도 단어: 수는 중간 정도이다. 저빈도 단어: 수가 많다. 정보검색에서 중빈도 단어가 색인어로서 가장 적합하다.
6.4 마크업 언어 마크업(markup) 텍스트의 포맷 방식, 구조 정보, 의미, 속성 등을 기술하는 데 사용될 수 있는 부가적인 텍스트 구문 예) TeX의 포맷 명령어 마크(mark): 태그(tag) <시작 태그> 마크된 부분 <종료 태그> SGML(Standard Generalized Markup Language ): 마크업용 표준 메타언어 XML(eXtensible Markup Language): 웹용 메타언어 SGML의 부분 집합 HTML (Hypertext Markup Language): 웹용 마크업 언어 SGML의 실례(instance)
6.4.1 SGML SGML(표준 일반 마크업 언어, Standard Generalized Markup Language – ISO 8879) 텍스트 마크업용 메타언어 Goldfab 주도 그룹이 개발 태그에 기초하여 마크업 언어를 정의하는 규칙 제공 문서 형식 정의(document type definition) 문서 구조를 기술 문서의 구성 부분을 기술하고 명명 문서의 구성 부분 사이의 관련성 정의 SGML 문서의 구성 문서 구조 기술 태그로 마크된 텍스트 자체
SGML(계속) DTD(문서 형식 선언: Document Type Declaration) 태그 문서 형식 정의 부분을 명시 구성 요소나 속성의 의미, 응용 관례는 형식적으로 표현 못함 하지만 주석(comment)을 사용하여 비공식적으로 표현 가능 의미적 정보는 주석이나 별도의 문서로 주어짐 태그 시작 태그: <tagname> 종료 태그: </tagname> 동일한 태그가 응용에 따라 다른 의미를 지닐 수 있음 태그의 속성(attribute) 시작 태그 부분에 ‘attname=value’ 형식으로 주어짐
SGML(계속)
SGML(계속) SGML 포맷 SGML의 이용 예: TEI(Text Encoding Initiative) 포맷을 기술할 장치가 없음 SGML 문서에는 종종 출력 명세(포맷 방법)가 추가됨 출력 명세 표준 DSSSL(Document Style Semantic Specification Language) FOSI(Formatted Output Specification Instance) 문서와 스타일 정보를 연관짓는 방식을 정의 SGML의 이용 예: TEI(Text Encoding Initiative) 목적: 전자 텍스트 작성 및 교환에 대한 지침 제공 SGML DTD를 통해 여러 문서 포맷 제공 TEI Lite가 많이 사용됨
6.4.2 HTML HTML(Hyper Text Markup Language) SGML에 기초한 SGML의 한 실례 1992년에 개발, 1997년에 4.0 발표 대부분의 웹 문서는 HTML로 작성됨 하이퍼텍스트, 멀티미디어, 작고 단순한 문서에 적합 HTML DTD가 있으나 보통 명시적으로 참조하지는 않음 이미지, 오디오 같은 다른 미디어도 포함 가능 메타데이터 필드 제공: 특정 응용에 사용 가능 동적 HTML(DHTML, Dynamic HTML) 자바 스크립트 같은 프로그램이 포함된 경우
HTML(계속)
HTML(계속) 단계식 스타일 시트(CSS: Cascade Style Sheets) 서로 다른 구성 요소의 표현 스타일을 정의하기 위해 차례로(단계적으로) 사용 가능 문서의 표현 정보와 내용을 분리 웹 사이트 유지 단순화 웹의 접근성 증가 문제점: 스타일 시트간의 일관성 부재, 불완전성
HTML(계속) HTML 4.0의 기능 및 용도 스타일 시트, 국제화, 프레임, 풍부한 테이블과 폼(form), 장애인을 위한 접근 연산 등을 지원 순수(strict) HTML 모든 표시 정보를 CSS에 맡기고 단지 표시 방법과는 무관한 마크업에만 관심을 둠 과도기적(transitional) HTML CSS를 이해하지 못하는 과거의 브라우저가 페이지를 판독할 경우를 위해 모든 표시 자질을 사용 프레임셋(frameset) HTML 브라우저의 윈도우를 프레임으로 분할할 때 사용
HTML(계속) HTML의 제약 SGML, HTML, XML 데이터를 매개 변수화하거나(parameterize) 의미 자질을 부여하기 위해 사용자가 자신의 태그나 속성을 명시하는 것을 허용 못함 데이터베이스 스키마나 객체지향 계층 구조를 표현하기 위한 중첩 구조의 명시를 지원 못함 데이터를 소비하는 응용 프로그램이 데이터를 삽입할 때, 그 구조적 유효성 검사를 허용하는 유형의 언어 명세를 지원 못함 SGML, HTML, XML SGML은 HTML에서 결여된 확장성, 구조화, 유효성 처리 가능 SGML은 웹 응용에서 불필요한 선택 자질 포함 비용/이득 비율이 나쁨 보다 단순한 메타 언어인 XML 개발
6.4.3 XML XML(eXtensible Markup Language) SGML을 단순화한 부분 집합: 일종의 메타 언어 HTML의 제약을 많이 제거 의미 마크업 허용 새로운 태그 정의 가능 복잡한 구조 정의 허용 – 예) 제한이 없는 중첩 구조 데이터의 유효성 검사 기능 자바 스크립트나 프로그램 인터페이스를 통한 작업 대체 가능 보다 엄격한 마크업 구문 요구 종결 태그 생략 불가 대소문자 구분 모든 속성 값은 인용 부호로 싸야 함
XML(계속)
XML(계속) XML의 DTD 확장 스타일 시트 언어(XSL: Extensible Style sheet Language) 태그 이름에 중의성이 있으면, 이름 공간(namespace)을 사용하여 해결 가능 확장 스타일 시트 언어(XSL: Extensible Style sheet Language) CSS에 대응 고도로 구조적임 XML 문서 변환 및 스타일 부여 기능 예) 표 내용의 자동 추출 확장 링크 언어(XLL: Extensible Linking Language) 외부/내부 링크등 여러 유형의 링크 정의
XML(계속) XML의 활용 수학 마크업 언어(MathML: Mathematical Markup Language) 수식 표현과 수학적 표현의 의미를 나타내기 위한 두 가지 태그 집합 동기화 멀티미디어 통합 언어(SMIL: Synchronized Multimedia Integration Language) 웹에서 다양한 유형의 객체에 대해 위치와 활성 시간을 명시할 수 있는 멀티미디어 표현의 스케줄을 나타낼 수 있는 선언적 언어 자원 기술 형식(Resource Description Format) RDF를 사용하여 기술해야 하는 XML용 메타데이터 정보
SGML / XML / HTML 비교 항 목 SGML XML HTML 사용자 정의 태그 사용 문서의 재사용 응용분야 문서작성 항 목 SGML XML HTML 사용자 정의 태그 사용 가능, 무제한적 가능, SGML보다는 제한적 불가능, 제한적 문서의 재사용 가능 가능 불가능 응용분야 방대한 내용과 구조를 요하는 기술적인 문서 SGML과 동일, 웹상의 문서교환(XML/EDI) 등 단순한 구조의 문서 및 소량의 홈페이지 작업 문서작성 특별한 포맷 정의, 크고 복잡한 문서의 작성 가능 SGML과 동일 간단하고 용이함, 논리구조 작성의 어려움 문서검색 정확한 검색이 가능하고 문서구조에 대한 검색이 가능 SGML과 동일 효과적 검색 어려움 링크 Hy-Time (동적인 시간 정보를 결합된 다양한 타입) XLL (다양한 타입) HTML (단방향) 출력형식 언어 DSSSL XSL CSS
6.5 멀티미디어 멀티미디어 여러 유형의 매체에서 기원한 다양한 디지털 데이터 취급 매체 유형: 텍스트, 오디오, 이미지, 비디오 용량, 포맷, 처리 제약 등에서 차이가 있음 예) 오디오, 비디오는 실시간 제약 조건 요구 매체 유형에 따라 서로 다른 이진 포맷 필요
6.5.1 포맷 이미지 포맷 XBM, BMP, PCX: 단순한 비트맵 포맷 많은 기억 공간 요구 GIF(Graphic Interchange Format): Compuserve 압축 저장 형식 JPEG(Joint Photographic Experts Group) 포맷 손실 압축 TIFF(Tagged Image File Format) 문서 교환용 TGA(Truevision Targa image file) 비디오 게임 보드와 관련 PNG(Portable Network Graphics) 1996년에 인터넷용의 비트맵 이미지 포맷으로 제안
포맷(계속) 오디오 포맷 애니메이션/동영상 포맷 AU, WAVE MIDI: 전자 악기와 컴퓨터 사이의 음악 교환용 표준 Real Audio, CD 포맷: 오디오 도서관용으로 활용 애니메이션/동영상 포맷 MPEG(Moving Pictures Expert Group) 포맷 기본 이미지를 기준으로 변화를 코딩 압축 지원, 관련 오디오 포함 AVI, FLI QuickTime: Apple
6.5.2 텍스트 이미지 텍스트 이미지(textual image) 텍스트 이미지 검색 텍스트를 포함하는 문서의 이미지 보통 스캔하여 만듬 많은 부분이 텍스트이므로 검색 및 효율적인 압축이 가능 텍스트 심볼을 추출하여 검색 및 압축 향상 사능 텍스트 이미지 검색 이미지를 서술하는 키워드 집합 사용 OCR을 사용하여 텍스트 인식 오인식 문제로 인해 근사 탐색이 적합, 하지만 이 경우 속도 저하 추출된 심볼을 통해 이미지 검색이나 순차 검색 기법 적용
6.5.3 그래픽과 가상 현실 컴퓨터 그래픽 메타파일 (CGM: Computer Graphic Metafile) 그래픽 객체와 관련 속성을 개방적으로 교환하기 위해 제정 장치 독립적인 방법으로 그래픽 데이터 저장 벡터 그래픽, 래스터(raster) 그래픽, 텍스트 표현 가능 메타파일: 그래픽 성분의 집합 가상 현실 모델 언어(VRML: Virtual Reality Modeling Language) 3D 객체 세계 기술을 위한 파일 포맷 Silicon Graphics OpenInventor 파일 포맷의 한 부분 3D 그래픽과 멀티미디어가 통합된 경우까지 고려 응용 영역 공학, 과학의 시각화, 멀티미디어 프리젠테이션, 오락 교육용 타이틀, 웹 페이지, 공유 가상 세계 사실상 웹의 표준 모델링 언어