150 likes | 458 Views
Knowledge Extraction. Jaeseok Myung , Jongheum Yeon. Contents. Data Set Survey Extraction Steps Document Collecting Preprocessing Entity Extraction Relationship Extraction Co-work with KB Conclusion. Crawler.
E N D
Knowledge Extraction JaeseokMyung, JongheumYeon
Contents • Data Set • Survey • Extraction Steps • Document Collecting • Preprocessing • Entity Extraction • Relationship Extraction • Co-work with KB • Conclusion Center for E-Business Technology
Crawler • 프로젝트 위키 페이지 http://ids.snu.ac.kr/wiki/KEE_(Knowledge_Extraction_Engine)참조 • 크롤링 대상이 지정된 xml 설정 파일을 읽어 수집을 수행 • 결과를 xml 로 저장 • 자바용 크롤러 라이브러리 Web-Harverst사용 • CVS • :pserver:cygnus.snu.ac.kr:/oss-cvs/kinkin • Class • KinCrawler • 설정 파일을 불러와 Web-Harvest 라이브러리를 실행 • 설정 파일이 크롤링의 동작을 모두 담고 있다 • 설정 파일은 xml 형식으로 XPath와 XQuery를 이용 • conf/kdaq01.xml • Reference • http://web-harvest.sourceforge.net/samples.php?num=4 • http://web-harvest.sourceforge.net/manual.php • http://www.w3.org/TR/xpath • http://www.w3.org/TR/xquery/ • http://www.w3.org/TR/xquery-operators/ • InsertData • xml 파일로 된 결과를 DB에 저장
Crawling Sample • 엠파스 지식(kdaq.empas.com)을 수집 • corona.snu.ac.kr의 오라클에 저장 • 지식 Q&A ≫ 쇼핑∙상품정보 ≫ 휴대폰 ∙PDA • 지식 Q&A ≫ 쇼핑∙상품정보 ≫ 쇼핑노하우 • 두 카테고리에 대해 답변이 있는 지식으로 각각 3500 건씩 저장 • 수집항목 • 질문 • URL / 질문자 ID / 날짜 / 카테고리 / 제목 • 내용 / 태그 / 추천수합 / 조회수 • 답변 • 네티즌 선택, 질문자 선택 여부 / 답변자 ID / 날짜 / 내용
Survey • Keyword • [information/named entity/relationship/knowledge] extraction • semantic annotation • ontology building • System & Tool • GATE • 이용 가능한 대표적인 문서 아키텍처 및 프로그램 • 자바 기반의 독립 프로그램으로 실행 가능 • 라이브러리 형식으로 프로그램에 포함하여 사용 가능 • 유니코드를 지원하여 다국어 처리 가능 • 관련된 서베이 논문 • information extraction 이나 ontology building 과 같은 보다 일반적인 내용을 다룬 논문 • 한글 논문
Extraction Steps • Document Collecting • 분석 대상이 될 문서 수집 • Preprocessing • 자연어 처리 과정을 통하여 분석 가능 형태로 변환 • Entity Extraction • 문서내의 주요 어휘를 추출 • Relationship Extraction • 어휘간 관계를 추출 Center for E-Business Technology
Document 3 Document 2 Document 1 박지성, '불사조 축구화' 신고 축구 레전드로 한국에서는 박지성(27, 맨체스터유나이티드)이 나이키가 아시아 선수 중 최초라 자신만을 위해 특별히 제작한 ‘불사조 축구화, 박지성 티엠포레전드FG’를 신고 달리게 됐다. 나이키의 마케팅적 판단이라고 할 수도 있지만 그 사실조차도 세계무대에서 박지성의 위상을 알 수 있는 부분이다. 지난 8월 30일 제니트와의 UEFA 슈퍼컵에 교체 투입된 박지성이 30여 분간 활약하며 첫 선을 보인 이 신발은 검정 바탕에 붉은 색 나이키 로고와 골드 컬러로 박지성의 열정을 강조했다. 나이키는 박지성의 이름을 딴 축구화뿐만 아니라 축구복, 축구공 그리고 가방까지 제작해 ‘Be The Legend’라는 캠페인을 진행할 예정이다. Document Collector Extraction Module Preprocessed Result Preprocessing Algorithms Title • 박지성/불사조/축구화/신다/축구/레전드 Contents • 한국/박지성/27/맨체스터유나이티드/‘불사조 축구화, 박지성 티엠포레전드FG’/ 신다/달리다/되었다/나이키/마케팅/판단/사실/세계무대/박지성/위상/부분/지난/8월 30일/제니트/UEFA/슈퍼컵/교체/투입/박지성/30여분간/활약/첫 선/보이다/신발/검정/바탕/붉은색/나이키로고/골드컬러/박지성/열정/강조/하다 Entity Extraction Algorithms Relationship Extraction Algorithms Result 박지성 검정 축구화 바탕 제품 티엠포레전드FG 나이키
Document Collecting • 역할 • 분석 대상이 될 문서를 수집하여 저장 • Crawling or Importing (crawling이 더 일반적) • 방법 • 수집하기 적절한 페이지 선정 • 로그인 필요하거나 구조가 동적으로 변하면 수집이 어려움 • 문서 구조 분석을 통하여 원하는 부분의 텍스트 수집 • Tag의 순서, id 및 class attribute등을 이용 • 도구 • DOM Parser를 이용하여 특정 tag의 텍스트를 수집 가능 • Nutch와 같은 오픈소스 크롤러 등을 이용하는 것도 좋음 • 절차 • 대상 선정 및분석, 수집 부분 구현 Center for E-Business Technology
Preprocessing • 역할 • 자연어 처리 • 문장 구분, 형태소 분석, 품사 태깅, 구문 분석 • 전처리 결과 저장 • 추출 알고리즘이 동작할 수 있는 general model 구성 • 도구 • 철이 (http://ids.snu.ac.kr/wiki/%EC%B2%A0%EC%9D%B4) • KLT (http://nlp.kookmin.ac.kr/HAM/kor/download.html) • Java version은 없으므로 JNI를 이용하여 연결해야 함 • 절차 • 도구 탐색 및 적응 • 저장 구조 결정 및 구현 Center for E-Business Technology
Extraction Algorithms • 종류 • Entity • Relationship • 특징 • Ad-hoc 함 • 활용 목적에 맞게 특정한 entity나 relationship을 추출해야 하기 때문 • 모든 목적에 적합한 entity와 relationship을 추출해주는 algorithm은 없을 것으로 생각됨 • 기간을 산정하기 어려움 (Ad-hoc하고 복잡도가 다름) • Preprocessing에 의존적임 • 전처리 과정에서 얻어오는 정보를 이용하여 추출하는 경우가 대부분 • 전처리 과정의 오류도 함께 전파되므로 주의가 필요 • 수작업이 어느 정도 필요함 • 참조 • 시소러스 자동 구축에 관한 연구가 전부 관련 있으므로 참조 가능 Center for E-Business Technology
Entity Extraction • 역할 • 문서 내에서 의미 있는 어휘를 식별 • 애플리케이션의 목적에 맞는 어휘 사전의 구축 • 방법 • 사전을 이용 • 명사 사전, 상품명 사전 등 활용 목적에 따라 외부 사전을 이용 가능 • 세종 사전(http://www.sejong.or.kr/), 포털의OpenAPI등 이용 • 통계적 방법 • Frequency, Co-occurrence등 이용 • 패턴 이용 • 참조 • Information Extraction, Feature Selection, Feature Extraction, … Center for E-Business Technology
Relationship Extraction • 역할 • 어휘간의 관계를 정의하고 그에 맞는 추출 알고리즘 구축 • Relationship 추출의 단계 • Metadata : 각어휘간 관계는 없는 것으로 간주 • Controlled Voca. : 비슷한 어휘군을 대표하는 대표어를 추출 • Taxonomy : 어휘군 간의 상하위 관계를 분류 • Thesaurus : 어휘간 관계에 BT/NT/RT 등을 추가 • Ontology-1단계 : OWL등의 표준어휘, 예를 들어 equivalent등을 고려 • Ontology-2단계 : 자유로운 semantics를 처리 • 참조 • Information Extraction, Semantic Annotation, .. Center for E-Business Technology
KB Team과의 Co-work 포인트 • 어떤 Entity가 필요한가 (상품명?) • 어떤 Relationship이 필요한가 (가격? 상품평?) • KB의 API • 어떤식으로KB에 데이터를 저장 할 수 있는지 알아야 함 • KB의 데이터 모델에 맞는 추출 방법 구상 • Weight를 갖는지, datatype은 어떠한지, constraint는 있는지 등을 고려해야 함 Center for E-Business Technology
결론 • 어떠한 entity와 relationship을 추출할 것인지를 가장 먼저 결정한 후 그에 맞는 문서를 수집해야 함 • 문서 수집과 전처리는 추출 알고리즘을 위해 공통적으로 거쳐야 하는 부분이므로 중요하고, 빨리 끝내야 하며, 외부 도구를 이용하는 작업이므로 다소 기계적인 부분임 • 어떠한 entity와 relationship을 추출할 것인지는 KB팀과 함께 • 어떻게 entity와 relationship을 추출할 것인지는 목적에 따라 다양한방법을 구상 Center for E-Business Technology