KR102621758B1 - 표로부터 지식 데이터를 추출하기 위한 시스템 및 방법 - Google Patents

표로부터 지식 데이터를 추출하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR102621758B1
KR102621758B1 KR1020200153084A KR20200153084A KR102621758B1 KR 102621758 B1 KR102621758 B1 KR 102621758B1 KR 1020200153084 A KR1020200153084 A KR 1020200153084A KR 20200153084 A KR20200153084 A KR 20200153084A KR 102621758 B1 KR102621758 B1 KR 102621758B1
Authority
KR
South Korea
Prior art keywords
cells
header
knowledge
cell
data
Prior art date
Application number
KR1020200153084A
Other languages
English (en)
Other versions
KR20220066732A (ko
Inventor
이경일
Original Assignee
주식회사 솔트룩스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 솔트룩스 filed Critical 주식회사 솔트룩스
Priority to KR1020200153084A priority Critical patent/KR102621758B1/ko
Publication of KR20220066732A publication Critical patent/KR20220066732A/ko
Application granted granted Critical
Publication of KR102621758B1 publication Critical patent/KR102621758B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/26Visual data mining; Browsing structured data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

복수의 셀들을 포함하는 표로부터 지식 데이터를 추출하기 위한 시스템은, 복수의 셀들의 값들에 기초하여, 복수의 셀들을 헤더 셀들 및 데이터 셀들로 분류하는 헤더 식별부, 헤더 셀들의 속성들에 기초하여, 헤더 셀들의 계층을 식별하는 헤더 계층 분석부, 및 헤더 셀들의 계층에 기초하여, 헤더 셀들 및 데이터 셀들로부터 지식 인스턴스들을 생성하는 지식 생성부를 포함할 수 있다.

Description

표로부터 지식 데이터를 추출하기 위한 시스템 및 방법{SYSTEM AND METHOD FOR EXTRACTING KNOWLEDGE DATA FROM TABLE}
본 발명의 기술적 사상은 지식 데이터에 관한 것으로서, 자세하게는 표로부터 지식 데이터를 추출하기 위한 시스템 및 방법에 관한 것이다.
본 발명은 과학기술정보통신부 SW컴퓨팅산업원천기술개발사업(SW)의 일환으로 (주)솔트룩스가 주관하고 연구하여 수행된 연구로부터 도출된 것이다. [연구기간: 2020.01.01~2020.12.31, 연구관리 전문기관: 정보통신기술진흥센터, 연구과제명: WiseKB: 빅데이터 이해 기반 자가학습형 지식베이스 및 추론 기술 개발, 과제 고유번호: 1711103335, 세부과제번호: 2013-2-00109-008]
방대한 지식들을 구조화하여 지식 베이스가 사용될 수 있다. 지식 베이스는 구조화된 지식 데이터를 포함할 수 있고, 사용자는 지식 베이스에 포함된 지식 데이터로부터 지식을 획득할 수 있다. 예를 들면, 구조화된 지식 데이터로서 지식 인스턴스는 하나의 지식을 나타낼 수 있고, 지식 베이스는 다수의 지식 인스턴스들이 상호 연결된 지식 그래프로 구현될 수 있다. 지식 베이스는, 지식을 포함하는 다양한 소스들로부터 구축될 수 있고, 소스들은 다양한 형식들을 가질 수 있다. 이에 따라, 다양한 형식의 소스로부터 구조화된 지식 데이터를 생성하는 것이 요구될 수 있다.
본 발명의 기술적 사상은, 지식 베이스를 구축하기 위한 소스들 중 표로부터 지식 데이터를 추출하기 위한 시스템 및 방법을 제공한다.
상기와 같은 목적을 달성하기 위하여, 본 발명의 기술적 사상의 일측면에 따라, 복수의 셀들을 포함하는 표로부터 지식 데이터를 추출하기 위한 시스템은, 복수의 셀들의 값들에 기초하여, 복수의 셀들을 헤더 셀들 및 데이터 셀들로 분류하는 헤더 식별부, 헤더 셀들의 속성들에 기초하여, 헤더 셀들의 계층을 식별하는 헤더 계층 분석부, 및 헤더 셀들의 계층에 기초하여, 헤더 셀들 및 데이터 셀들로부터 지식 인스턴스들을 생성하는 지식 생성부를 포함할 수 있다.
본 발명의 예시적 실시예에 따라, 헤더 식별부는, 복수의 셀들 중, 정규 표현식(regular expression)에 의해서 정의되는 값을 포함하는 셀들을 데이터 셀들로 분류하고, 나머지 셀들을 헤더 셀들로 분류할 수 있다.
본 발명의 예시적 실시예에 따라, 헤더 식별부는, 표의 로우들 및/또는 컬럼들에 따라 상이한 정규 표현식에 기초하여 복수의 셀들을 헤더 셀들 및 데이터 셀들로 분류할 수 있다.
본 발명의 예시적 실시예에 따라, 시스템은, 표의 최하위 로우의 최우측에 위치한 코너 셀부터 로우 방향 및/또는 컬럼 방향으로 인접한 셀들의 값들을 공통으로 정의하는 정규 표현식을 도출하는 정규 표현식 생성부를 더 포함할 수 있다.
본 발명의 예시적 실시예에 따라, 헤더 셀들의 속성들은, 헤더 셀에 포함된 텍스트의 폰트(font), 들여쓰기(indentation), 헤더 셀의 로우 인덱스, 헤더 셀의 컬럼 인덱스 중 적어도 하나를 포함할 수 있다.
본 발명의 예시적 실시예에 따라, 헤더 계층 분석부는, 복수의 셀들에 포함된 텍스트들의 평균 폭을 획득하고, 평균 폭에 기초하여 들여쓰기를 식별할 수 있다.
본 발명의 예시적 실시예에 따라, 지식 생성부는, 헤더 셀들의 계층에 기초하여, 하위 계층의 헤더 셀에 상위 계층의 헤더 셀의 값을 추가함으로써 헤더 셀들을 플래트닝(flattening)하는 헤더 플래트닝부, 및 지식 그래프에 기초하여, 데이터 셀의 제1 값, 데이터 셀과 동일한 로우에 대응하는 플래트닝된 헤더 셀의 제2 값 및 데이터 셀과 동일한 컬럼에 대응하는 플래트닝된 헤더 셀의 제3 값으로부터 지식 인스턴스를 생성하는 지식 인스턴스 생성부를 포함할 수 있다.
본 발명의 예시적 실시예에 따라, 지식 생성부는, 표의 명칭을 식별하고, 표의 명칭에 기초하여 지식 인스턴스들 생성할 수 있다.
본 발명의 기술적 사상의 일측면에 따라, 복수의 셀들을 포함하는 표로부터 지식 데이터를 추출하기 위한 방법은, 복수의 셀들의 값들에 기초하여, 복수의 셀들을 헤더 셀들 및 데이터 셀들로 분류하는 단계, 헤더 셀들의 속성들에 기초하여, 헤더 셀들의 계층을 식별하는 단계, 및 헤더 셀들의 계층에 기초하여, 헤더 셀들 및 데이터 셀들로부터 지식 인스턴스를 생성하는 단계를 포함할 수 있다.
본 발명의 예시적 실시예에 따라, 복수의 셀들을 헤더 셀들 및 데이터 셀들로 분류하는 단계는, 복수의 셀들 중 정규 표현식(regular expression)에 의해서 정의되는 값을 포함하는 셀들을 데이터 셀들로 분류하는 단계, 및 복수의 셀들 중 데이터 셀들로 분류되지 아니한 셀들을 헤더 셀들로 분류하는 단계를 포함할 수 있다.
본 발명의 기술적 사상에 따른 시스템 및 방법에 의하면, 표로 표현된 지식으로부터 지식 베이스를 위한 지식 데이터가 자동으로 생성될 수 있다.
또한, 본 발명의 기술적 사상에 따른 시스템 및 방법에 의하면, 지식 베이스에 표로 표현된 지식이 보강될 수 있고, 이에 따라 방대한 지식을 포함하는 지식 베이스가 달성될 수 있다.
본 발명의 실시예들에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 아니하며, 언급되지 아니한 다른 효과들은 이하의 본 발명의 실시예들에 대한 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 도출되고 이해될 수 있다. 즉, 본 발명을 실시함에 따른 의도하지 아니한 효과들 역시 본 발명의 실시예들로부터 당해 기술분야의 통상의 지식을 가진 자에 의해 도출될 수 있다.
도 1은 본 발명의 예시적 실시예에 따른 지식 추출 시스템을 나타내는 블록도이다.
도 2는 본 발명의 예시적 실시예에 따른 도 1의 헤더 식별부의 동작을 설명하기 위한 표를 나타낸다.
도 3은 본 발명의 예시적 실시예에 따른 지식 추출 시스템을 나타내는 블록도이다.
도 4는 본 발명의 예시적 실시예에 따른 도 3의 정규 표현식 생성부의 동작을 설명하기 위한 표를 나타낸다.
도 5는 본 발명의 예시적 실시예에 따른 도 1의 헤더 계층 분석부의 동작을 설명하기 위한 표를 나타낸다.
도 6은 본 발명의 예시적 실시예에 따른 지식 생성부를 나타내는 블록도이다.
도 7은 본 발명의 예시적 실시예에 따라 지식 인스턴스를 생성하는 동작의 예시를 나타내는 도면이다.
도 8은 본 발명의 예시적 실시예에 따라 표로부터 지식 데이터를 추출하기 위한 방법을 나타내는 순서도이다.
도 9는 본 발명의 예시적 실시예에 따라 표로부터 지식 데이터를 추출하기 위한 방법을 나타내는 순서도이다.
이하, 첨부한 도면을 참조하여 본 발명의 실시예에 대해 상세히 설명한다. 본 발명의 실시예는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공되는 것이다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다. 첨부된 도면에 있어서, 구조물들의 치수는 본 발명의 명확성을 기하기 위하여 실제보다 확대하거나 축소하여 도시한 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수개의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 갖는다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하 도면 및 설명에서, 하나의 블록으로 표시 또는 설명되는 구성요소는 하드웨어 블록 또는 소프트웨어 블록일 수 있다. 예를 들면, 구성요소들 각각은 서로 신호를 주고 받는 독립적인 하드웨어 블록일 수도 있고, 또는 하나의 프로세서에서 실행되는 소프트웨어 블록일 수도 있다. 소프트웨어 블록은 적어도 하나의 프로세서에 의해서 실행가능한 일련의 명령어들 및/또는 컴파일을 통해서 그러한 명령어들이 생성될 수 있는 소스 코드를 포함할 수 있고, 광학 기억 매체(예컨대, CD, DVD 등), 반도체 메모리 장치(예컨대, 플래시 메모리, EPROM 등), 자기 디스크 장치(예컨대, 하드 디스크 드라이브, 자기 테이프 등) 등과 같은 컴퓨터로 독출가능한 비일시적인 저장 매체, 예컨대 에 저장될 수 있다. 또한, 본 명세서에서 "시스템" 또는 "데이터베이스"는 적어도 하나의 프로세서 및 프로세서에 의해서 액세스되는 메모리를 포함하는 컴퓨팅 시스템을 지칭할 수 있다.
도 1은 본 발명의 예시적 실시예에 따른 지식 추출 시스템(100)을 나타내는 블록도이다. 도 1에 도시된 바와 같이, 지식 추출 시스템(100)은 입력 데이터(D2)를 수신할 수 있고, 지식 베이스(200)에 액세스할 수 있다. 일부 실시예들에서, 도 1에 도시된 바와 상이하게, 지식 베이스(200)는 지식 추출 시스템(100)에 포함될 수 있다. 후술되는 바와 같이, 지식 추출 시스템(100)은 표로부터 지식 데이터를 생성할 수 있고, 이에 따라 지식 추출 시스템(100)은 표로부터 지식 데이터를 추출하기 위한 시스템으로 지칭될 수 있다.
지식 베이스(knowledge base)(200)는 구조화된 지식들을 포함하는 시스템을 지칭할 수 있다. 지식 베이스(200)는 미리 정의된 구조에 따라 지식 데이터를 저장할 수 있고, 요청(예컨대, 쿼리)에 따라 지식 데이터를 외부에 제공할 수 있다. 예를 들면, 지식 베이스(200)는 RDF(resource description framework) 구조로 표현된 지식 인스턴스를 포함할 수 있고, 지식 인스턴스들의 집합은 지식 그래프로서 지칭될 수 있다. 본 명세서에서, 지식 인스턴스는, 예컨대 "이순신의 생일은 1545년 4월 28일이다"와 같은 지식을 나타내는 단위를 지칭할 수 있다. RDF 구조에서 지식 인스턴스는 트리플(triple)로 표현될 수 있다. 트리플은, 예컨대 "이순신 / 생일 / 1545-04-28"과 같이 주어(subject), 술어(predicate), 목적어(object)로 표현될 수 있다. "이순신"은 지식 개체 또는 단순하게 개체로 지칭될 수 있으며, 지식 베이스(200)에서 고유한 식별자, 예컨대 URI(uniform resource identifier)를 가질 수 있다. 또한, "생일"은 주어 및 목적어의 관계를 나타내는 속성으로 지칭될 수 있다. 트리플에서 목적어는 상기 "1545년 4월 28일"과 같이 값에 대응할 수도 있고, "이순신 / 직업 / 군인"과 같이 술어가 개체간 관계를 나타내는 경우 주어와 상이한 개체에 대응할 수도 있다. 공통의 개체를 가지는 지식 인스턴스들은 상호 연결된 것으로 지칭될 수 있고, 이에 따라 지식 베이스(200)는 상호 연결된 다수의 지식 인스턴스들로 구성된 지식 그래프를 포함할 수 있다.
지식 베이스(200)를 구축하기 위하여, 다양한 소스들로부터 지식 인스턴스가 생성될 수 있다. 예를 들면, 지식 베이스(200)에 포함된 지식 데이터는, 인터넷을 통해서 제공하는 서버(예컨대, 위키피디아, 언론사 서버, 소셜 네트워크 서버)로부터 수집된 문서로부터 생성될 수도 있고, 로컬 저장소에 저장된 문서로부터 생성될 수도 있다. 문서에 포함된 텍스트는 자연어 처리를 통해서 분석될 수 있고, 시맨틱 분석을 통해서 지식 인스턴스들이 생성될 수 있다. 도 1에 도시된 바와 같이, 정보를 포함하는 문서(D1)는 문장들뿐만 아니라 표(T10)를 포함할 수 있고, 표(T10) 역시 정보, 즉 지식을 포함할 수 있다. 예를 들면, 표(T10)는 복수의 셀들을 포함할 수 있고, 복수의 셀들은 자신과 동일한 로우(row) 및 컬럼(column)에 포함되는 셀들과 연계되어 지식을 나타낼 수 있다.
입력 데이터(D2)는 표(T10)에 포함된 복수의 셀들에 대한 정보를 포함할 수 있다. 일부 실시예들에서, 이미지인 문서(D1)로부터 광학 문자 인식(optical character recognition; OCR)을 통해서 문자들이 인식될 수 있고, 입력 데이터(D2)는 인식된 문자들의 배치를 분석함으로써 생성된 셀들에 대한 정보, 예컨대 셀에 포함된 값, 셀이 속하는 로우 및 컬럼 등을 포함할 수 있다. 또한, 일부 실시예들에서, 문서(D1)는 미리 정의된 양식에 따라 작성된 데이터일 수 있고, 이에 따라 입력 데이터(D2)는 양식에 기초하여 문서(D1)의 구조를 분석함으로써 생성된 셀들에 대한 정보를 포함할 수 있다. 논문과 같은 문서에서 실험 결과를 나타내는 표는 복잡한 구조를 가질 수 있고, 이에 따라 표(T10)에 포함된 셀들로부터 지식 데이터를 정확하게 추출하는 것이 중요할 수 있다. 일부 실시예들에서, 입력 데이터(D2)는 문서(D1)로부터 식별된 표(T10)의 제목을 포함할 수 있다.
지식 추출 시스템(100)은, 표(T10)에 포함된 복수의 셀들에 대한 정보, 즉 입력 데이터(D2)로부터 지식 인스턴스를 생성할 수 있고, 생성된 지식 인스턴스를 지식 베이스(200)에 제공할 수 있다. 도 1에 도시된 바와 같이, 지식 추출 시스템(100)은, 헤더 식별부(120), 헤더 계층 분석부(140) 및 지식 생성부(160)를 포함할 수 있다.
헤더 식별부(120)는 입력 데이터(D2)를 수신할 수 있고, 복수의 셀들의 값들에 기초하여 복수의 셀들을 헤더 셀들 및 데이터 셀들로 분류할 수 있다. 본 명세서에서, 데이터 셀은 데이터를 포함하는 셀을 지칭할 수 있고, 헤더 셀은 표에 포함된 데이터의 명칭이나 조건들을 정의하기 위하여 표의 에지에 배치되는 셀을 지칭할 수 있다. 헤더 식별부(120)는 복수의 셀들 중 공통의 형식을 가지는 셀들을 데이터 셀들로 식별할 수 있는 한편, 데이터 셀들로 식별되지 아니한 셀들을 헤더 셀들로 분류할 수 있다. 이를 위하여, 헤더 식별부(120)는 정규 표현식(regular expression)을 사용할 수 있고, 헤더 식별부(120)의 동작의 예시가 도 2를 참조하여 후술될 것이다.
헤더 계층 분석부(140)는, 헤더 식별부(120)로부터 헤더 셀들로 식별된 셀들을 수신할 수 있고, 헤더 셀들의 계층을 분석할 수 있다. 예를 들면, 표(T10)에서 헤더 셀들은 하나의 로우 및/또는 하나의 컬럼에 배치될 수도 있고, 도 2 등을 참조하여 후술되는 바와 같이, 2이상의 로우들 및/또는 컬럼들에 배치되어 계층적 구조를 가질 수도 있다. 헤더 계층 분석부(140)는 헤더 셀들의 속성들에 기초하여 헤더 셀들의 계층을 식별할 수 있고, 헤더 셀들에 식별된 계층을 태깅(tagging)할 수 있다. 헤더 계층 분석부(140)의 동작의 예시가 도 5를 참조하여 후술될 것이다.
지식 생성부(160)는, 헤더 계층 분석부(140)에 의해서 식별된 헤더 셀들의 계층에 기초하여, 헤더 셀들 및 데이터 셀들로부터 지식 인스턴스들을 생성할 수 있고, 지식 인스턴스들을 지식 베이스(200)에 제공할 수 있다. 예를 들면, 지식 생성부(160)는 하나의 데이터 셀에 대응하는 하나의 지식 인스턴스(예컨대, 트리플)를 생성할 수 있고, 지식 생성부(160)의 예시가 도 6을 참조하여 후술될 것이다.
도 2는 본 발명의 예시적 실시예에 따른 도 1의 헤더 식별부(120)의 동작을 설명하기 위한 표(T20)를 나타낸다. 표(T20)는 예시의 목적으로 도시된 것으로서, 문서 "Association of breakfast intake with obesity, dietary and physical activity behavior among urban school-aged adolescents in Delhi, India: Results of a cross-sectional study", Monika Arora, Gaurang Nazar, Vinay K Gupta, Cheryl L Perry, October 2012BMC Public Health 12(1):881, DOI: 10.1186/1471-2458-12-881에 포함된 "Table 3"에 해당한다(출처: https://www.researchgate.net/ publication/232279437). 이하에서, 본 발명의 예시적 실시예들은 표(T20)를 참조하여 설명될 것이며, 이하에서 도 2는 도 1을 참조하여 설명될 것이다.
도 2를 참조하면, 표(T20)는 16개의 로우들(R01 내지 R16) 및 7개의 컬럼들(C01 내지 C07)에 따라 배열된 셀들을 포함할 수 있고, 도 1의 입력 데이터(D2)는 표(T20)의 셀들에 대한 정보를 포함할 수 있다. 도 1을 참조하여 전술된 바와 같이, 헤더 식별부(120)는 표(T20)의 복수의 셀들을 헤더 셀들 및 데이터 셀들로 분류할 수 있다. 이에 따라, 도 2에 도시된 바와 같이, 제4 내지 제16 로우(R04 내지 R16) 및 제2 내지 제7 컬럼(C02 내지 C07)에 배치된 셀들(26)이 데이터 셀들로 분류될 수 있다. 또한, 제1 및 제2 로우(R01, R02)에 배치된 셀들(22) 및 제3 내지 제16 로우(R03 내지 R16) 및 제1 컬럼(C01)에 배치된 셀들(24)이 헤더 셀들로 분류될 수 있다. 또한, 헤더 식별부(120)는, 제1 및 제2 로우(R01, R02)에 배치된 헤더 셀들을 컬럼 헤더 셀들로 식별할 수 있고, 제3 내지 제16 로우(R03 내지 R16) 및 제1 컬럼(C01)에 배치된 헤더 셀들을 로우 헤더 셀들로 식별할 수 있다.
일부 실시예들에서, 헤더 식별부(120)는 정규 표현식에 기초하여 데이터 셀들(26)을 식별할 수 있다. 정규 표현식(또는 정규식)은 특정 규칙을 가진 문자열의 집합을 정의하는 문자들의 시퀀스를 지칭할 수 있다. 도 2에 도시된 바와 같이, 표(T20)에서 데이터 셀들(26) 각각은 수를 포함할 수 있고, 숫자를 정의하는 정규 표현식에 의해서 데이터 셀들(26)이 식별될 수 있다. 정규 표현식은 미리 정의될 수도 있고, 도 3을 참조하여 후술되는 바와 같이, 표(20)로부터 생성될 수도 있다. 일부 실시예들에서, 헤더 식별부(120)는 표(T20)의 로우들 및/또는 컬럼들에 따라 상이한 정규 표현식에 기초하여 데이터 셀들을 식별할 수도 있다.
헤더 식별부(120)는 정규 표현식에 기초하여 데이터 셀들(26)을 식별한 후, 나머지 셀들(22, 24)을 헤더 셀들로 분류할 수 있다. 일부 실시예들에서, 헤더 식별부(120)는 데이터 셀에 데이터 셀임을 나타내는 태그(tag)를 추가할 수 있고, 헤더 셀에 헤더 셀임을 나타내는 태그를 추가할 수 있다. 또한, 헤더 식별부(120)는 헤더 셀들(22, 24)의 배치에 기초하여, 최상위(top) 제1 및 제2 로우(R01, R02)에 배치된 헤더 셀들(22)을 컬럼 헤더 셀들로 분류할 수 있고, 최좌측(leftmost) 제1 컬럼(C01)에 배치된 헤더 셀들(24)을 로우 헤더 셀들로 분류할 수 있다.
도 3은 본 발명의 예시적 실시예에 따른 지식 추출 시스템(100')을 나타내는 블록도이다. 도 1을 참조하여 전술된 바와 같이, 지식 추출 시스템(100')은 입력 데이터(D2)로부터 지식 인스턴스를 생성할 수 있고, 지식 인스턴스를 지식 베이스(200)에 제공할 수 있다. 도 3에 도시된 바와 같이, 지식 추출 시스템(100')은, 도 1의 지식 추출 시스템(100')과 유사하게, 헤더 식별부(120'), 헤더 계층 분석부(140') 및 지식 생성부(160')를 포함할 수 있는 한편, 정규 표현식 생성부(110)를 더 포함할 수 있다. 이하에서, 도 3에 대한 설명 중 도 1에 대한 설명과 중복되는 내용은 생략될 것이다.
도 3을 참조하면, 정규 표현식 생성부(110)는 입력 데이터(D2)를 수신할 수 있고, 정규 표현식을 생성하여 헤더 식별부(120')에 제공할 수 있다. 표에 포함된 데이터는 다양한 형식을 가질 수 있고, 정규 표현식 생성부(110)는 복수의 셀들에 기초하여 표(T10)에 적합한 정규 표현식을 생성할 수 있고, 이에 따라 데이터 셀들이 정확하게 식별될 수 있다. 일부 실시예들에서, 정규 표현식 생성부(110)는 하나의 데이터 셀을 정의하는 초기 정규 표현식을 식별하고, 해당 데이터 셀에 인접한 셀들을 공통으로 정의하도록 정규 표현식을 수정함으로써 최종 정규 표현식을 생성할 수 있다. 정규 표현식 생성부(110)의 동작의 예시가 도 4를 참조하여 후술될 것이다.
도 4는 본 발명의 예시적 실시예에 따른 도 3의 정규 표현식 생성부(110)의 동작을 설명하기 위한 표(T20)를 나타낸다. 이하에서, 도 4는 도 3을 참조하여 설명될 것이다.
일부 실시예들에서, 정규 표현식 생성부(110)는 표(T20)의 최하위(bottom) 로우의 최우측(rightmost)에 위치한 코너 셀을 정의하는 초기 정규 표현식을 생성할 수 있다. 예를 들면, 정규 표현식 생성부(110)는 일반적으로 표에서 최하위 로우의 최우측에 위치한 셀, 즉 코너 셀이 데이터 셀임을 가정할 수 있고, 코너 셀을 정의하는 초기 정규 표현식을 생성할 수 있다. 도 4의 표(T20)에서 최하위 로우, 즉 제16 로우(R16)에서 최우측 컬럼, 즉 제7 컬럼(C07)은 비어있을 수 있고, 이에 따라 정규 표현식 생성부(110)는 셀(41)을 코너 셀로 식별할 수 있고, 셀(41)을 정의하는 초기 정규 표현식, 예컨대 [#.###]을 정의할 수 있다.
정규 표현식 생성부(110)는 코너 셀로부터 로우 방향 및/또는 컬럼 방향으로 인접한 셀들의 값들을 공통으로 정의하는 정규 표현식을 도출할 수 있다. 예를 들면, 정규 표현식 생성부(110)는 초기 정규 표현식을 수정함으로써, 코너 셀 및 코너 셀에 인접한 셀을 공통으로 정의하는 정규 표현식을 생성할 수 있다. 도 4의 표(T20)에서, 정규 표현식 생성부(110)는 코너 셀(41)과 동일한 로우, 즉 제15 로우(R15)에서 인접한 셀(42)을 식별할 수 있고, 셀(42)과 코너 셀(41)을 공통으로 정의하는 정규 표현식으로서 초기 정규 표현식과 동일한 정규 표현식을 생성할 수 있다. 유사하게, 도 4의 표(T20)에서, 정규 표현식 생성부(110)는 코너 셀(41)과 동일한 컬럼, 즉 제7 컬럼(C07)에서 인접한 셀(43)을 식별할 수 있고, 셀(43)과 코너 셀(41)을 공통으로 정의하는 정규 표현식으로서 초기 정규 표현식과 동일한 정규 표현식을 생성할 수 있다.
일부 실시예들에서, 정규 표현식 생성부(110)는 코너 셀로부터 로우 방향 및 컬럼 방향으로 각각 인접한 셀들을 각각 정의하는 제1 및 제2 정규 표현식을 정의할 수 있고, 제1 및 제2 정규 표현식과 초기 정규 표현식과의 유사도를 판정할 수 있다. 예를 들면, 정규 표현식 생성부(110)는, 코너 셀(41)과 로우 방향으로 인접한 셀(42)을 정의하는 제1 정규 표현식, 예컨대 [#.##]을 생성할 수 있고, 코너 셀(41)과 컬럼 방향으로 인접한 셀(43)을 정의하는 제2 정규 표현식, 예컨대 [#.###]을 생성할 수 있다. 정규 표현식 생성부(110)는 제2 정규 표현식이 제1 정규 표현식 보다 초기 정규 표현식에 유사한 것을 판정할 수 있고, 이에 따라 정규 표현식 생성부(110)는 최하위 셀부터 시작하여 컬럼 마다 상이한 정규 표현식들을 정의할 수 있다. 다른 한편으로, 도 4의 예시와 상이하게, 로우 방향에 인접한 셀을 정의하는 정규 표현식이 보다 높은 유사도를 가지는 경우, 정규 표현식 생성부(110)는 최우측 셀부터 시작하여 로우 마다 상이한 정규 표현식들을 정의할 수 있다. 또한, 일부 실시예들에서, 정규 표현식 생성부(110)는 보다 높은 유사도를 가지는 제2 정규 표현식에 기인하여, 제7 컬럼(C07)의 헤더 셀(44)이 제7 컬럼(C07)을 대표하는 명칭임을 식별할 수도 있다.
도 5는 본 발명의 예시적 실시예에 따른 도 1의 헤더 계층 분석부(140)의 동작을 설명하기 위한 표(T20)를 나타낸다. 도 1을 참조하여 전술된 바와 같이, 헤더 계층 분석부(140)는 헤더 셀들의 속성들에 기초하여 헤더 셀들의 계층을 식별할 수 있다. 이하에서, 도 5는 도 1을 참조하여 설명될 것이다.
표는 다양한 형식을 가질 수 있고, 계층적 헤더를 포함할 수 있다. 예를 들면, 도 5에 도시된 바와 같이, 표(T20)의 로우 헤더 셀들, 즉 제3 내지 제16 로우(R03 내지 R16) 및 제1 컬럼(C01)에 배치된 헤더 셀들은 상위 계층 헤더 셀들, 즉 "Gender, Age, School, Grade" 및 하위 계층 헤더 셀들, 즉 "Boys, Girls, <=13, 14, 15, 16 and above, Private, Government, 8th, 10th"을 포함할 수 있다. 이에 따라, 상위 계층 헤더 셀(53)은 자신에 대응하는 데이터를 가지지 아니할 수 있는 한편, 하위 계층 헤더 셀(54)은 자신이 종속된 상위 계층 헤더 셀(53)과 결합되는 것이 요구될 수 있다. 유사하게, 도 5에 도시된 바와 같이, 표(T20)의 컬럼 헤더 셀들, 즉 제1 및 제2 로우(R01, R02)에 배치된 헤더 셀들은 상위 계층 헤더 셀 "Breakfast %" 및 하위 계층 헤더 셀들 "Never (n=129), Intermediate (n=417), Daily (n=1268)"을 포함할 수 있다. 또한, 표는 3개 이상의 레벨들로 구성된 계층적 헤더를 포함할 수도 있다.
헤더 계층 분석부(140)는 헤더 셀들의 속성들에 기초하여 헤더 셀들의 계층을 식별할 수 있다. 예를 들면, 헤더 계층 분석부(140)는, 헤더 셀에 포함된 텍스트의 폰트(font), 들여쓰기(indentation), 헤더 셀의 로우 인덱스, 헤더 셀의 컬럼 인덱스 중 적어도 하나에 기초하여 헤더 셀들의 계층을 식별할 수 있다. 일부 실시예들에서, 헤더 계층 분석부(140)는 굵은(bold) 폰트를 가지는 헤더 셀들을 상위 계층 헤더 셀들로 식별할 수 있는 한편, 일반 폰트를 가지는 헤더 셀들을 하위 계층 헤더 셀들로 식별할 수 있다. 이에 따라, 도 5의 헤더 셀(53)은 상위 계층 헤더 셀로 식별될 수 있고, 헤더 셀(54)은 하위 계층 헤더 셀로 식별될 수 있다.
일부 실시예들에서, 헤더 계층 분석부(140)는 들여쓰기가 없는 헤더 셀을 상위 계층 헤더 셀로 식별할 수 있고, 들여쓰기가 있는 헤더 셀을 하위 계층 헤더 셀로 식별할 수 있다. 헤더 계층 분석부(140)는 들여쓰기의 폭을 표의 통계 데이터에 기초하여 설정할 수 있다. 예를 들면, 헤더 계층 분석부(140)는, 표에 포함된 문자들의 평균 폭(즉 로우 방향에 평행한 길이의 평균)을 획득할 수 있고, 들여쓰기의 길이를 평균 폭의 배수(예컨대, 약 2배 내지 4배)로 설정할 수 있다. 헤더 계층 분석부(140)는 설정된 길이의 들여쓰기를 식별할 수 있고, 식별된 들여쓰기에 기초하여 상위 계층 헤더 셀 및 하위 계층 헤더 셀을 식별할 수 있다.
일부 실시예들에서, 헤더 계층 분석부(140)는 헤더 셀의 로우 인덱스, 헤더 셀의 컬럼 인덱스 중 적어도 하나에 기초하여 헤더 셀들의 계층을 식별할 수 있다. 예를 들면, 도 5의 표(T20)와 같이, 로우 인덱스가 아래로 갈수록 증가하고 컬럼 인덱스가 우측으로 갈수록 증가하는 경우, 헤더 계층 분석부(140)는 보다 낮은 로우 인덱스 및 보다 작은 컬럼 인덱스를 가지는 헤더 셀을 상위 계층 헤더 셀로 식별할 수 있다. 이에 따라, 헤더 계층 분석부(140)는, 제1 로우(R01)에 배치된 헤더 셀(51)을 상위 계층 헤더 셀로 식별할 수 있고, 제2 로우(R02)에 배치된 헤더 셀(52)을 하위 계층 헤더 셀로 식별할 수 있다.
도 6은 본 발명의 예시적 실시예에 따른 지식 생성부(160")를 나타내는 블록도이다. 도 1을 참조하여 전술된 바와 같이, 지식 생성부(160")는 헤더 계층 분석부(예컨대, 도 1의 140)에 의해서 식별된 헤더 셀들의 계층에 기초하여, 헤더 셀들 및 데이터 셀들로부터 지식 인스턴스를 생성할 수 있고, 지식 인스턴스를 지식 베이스(200)에 제공할 수 있다. 도 6에 도시된 바와 같이, 지식 생성부(160")는 헤더 플래트닝부(162) 및 지식 인스턴스 생성부(164)를 포함할 수 있다.
헤더 플래트닝부(162)는, 헤더 셀들의 계층에 기초하여 하위 계층의 헤더 셀, 즉 하위 계층 헤더 셀에 상위 계층의 헤더 셀, 즉 상위 계층 헤더 셀의 값을 추가함으로써 헤더 셀들을 플래트닝(flattening)할 수 있다. 플래트닝은 계층화된 구조를 수평적 구조로 변환하는 동작으로서, 하위 노드에 자신의 상위 노드들을 추가하는 작업을 지칭할 수 있다. 이에 따라, 플래트닝된(flattened) 헤더 셀들은 데이터에 대응하는 명칭 및/또는 조건을 모두 포함할 수 있고, 지식 인스턴스의 생성에 사용될 수 있다.
지식 인스턴스 생성부(164)는 헤더 플래트닝부(162)로부터 플래트닝된 헤더 셀들을 수신할 수 있고, 헤더 식별부로부터 데이터 셀들을 수신할 수 있다. 지식 인스턴스 생성부(164)는, 플래트닝된 로우 헤더 셀, 플래트닝된 컬럼 헤더 셀 및 이들에 대응하는 데이터 셀로 구성된 하나의 셀 그룹으로부터 하나의 지식 인스턴스를 생성할 수 있다. 지식 인스턴스 생성부(164)는 지식 베이스(200)에 포함된 지식 그래프를 참조하여 플래트닝된 헤더 셀들의 의미(semantic)를 분석할 수 있고, 플래트닝된 헤더 셀들로부터 트리플의 주어 및 술어를 식별할 수 있고, 데이터 셀로부터 목적어, 즉 값을 식별할 수 있다. 일부 실시예들에서, 지식 인스턴스 생성부(164)는, 표의 제목을 수신할 수 있고, 표의 제목에 기초하여 플래트닝된 헤더 셀들의 의미를 분석할 수도 있다. 지식 인스턴스 생성부(164)의 동작의 예시가 도 7을 참조하여 후술될 것이다.
도 7은 본 발명의 예시적 실시예에 따라 지식 인스턴스를 생성하는 동작의 예시를 나타내는 도면이다. 구체적으로, 도 7은 도 6의 지식 인스턴스 생성부(164)의 동작의 예시를 나타낸다. 도 6을 참조하여 전술된 바와 같이, 지식 인스턴스 생성부(164)는 플래트닝된 헤더 셀들 및 데이터 셀로부터 지식 인스턴스를 생성할 수 있다. 이하에서, 도 7은 도 6을 참조하여 설명될 것이다.
도 7을 참조하면, 플래트닝된 헤더 셀들 및 데이터 셀들로 구성된 리스트가 제공될 수 있다. 플래트닝된 헤더 셀들 및 데이터 셀들로 구성된 표는 최상위 로우가 컬럼 헤드 셀들로 구성되고, 최좌측 컬럼이 로우 헤더 셀들로 구성되고, 나머지 셀들이 데이터 셀들로 구성된 단순한 구조를 가질 수 있다. 단순한 구조의 표로부터 2개의 헤더 셀들 및 이에 대응하는 데이터 셀을 하나의 항목으로 포함하는 리스트(71)가 생성될 수 있다. 예를 들면, 도 7에 도시된 바와 같이, 리스트(71)는 표(T20)로부터 " Breakfast % | Never", "Age | <=13" 및 "6.7"를 하나의 항목으로 포함할 수 있고, 해당 항목은 "13세 이하에서 6.7%가 아침 식사를 하지 아니한다"라는 지식을 나타낼 수 있다. 항목에서 "|"는 상위 계층 헤더 셀 및 하위 계층 헤더 셀의 구분자를 나타낼 수 있고, 본 발명의 예시적 실시예들이 이에 제한되지는 아니하는 점이 유의된다.
지식 인스턴스 생성부(164)는 리스트(71)의 항목들 각각으로부터 지식 인스턴스를 생성할 수 있고, 이에 따라 지식 그래프(72)가 생성될 수 있다. 예를 들면, 지식 인스턴스 생성부(164)는 3개의 항목들에 대응하는 3개의 트리플들, 즉 "Breakfast Never / Age <= 13 / 6.7", "Breakfast Never / Age = 14 / 4.6" 및 "Breakfast Never / Age = 15 / 7.2"를 생성할 수 있고, 3개의 트리플들은 개체 "Breakfast Never"를 통해 상호 연결될 수 있다. 또한, 지식 인스턴스 생성부(164)는 "Breakfast Never"의 단위(unit)를 정의하는 트리플 "Breakfast Never / Unit / %"를 생성할 수 있고, 표의 제목을 정의하는 트리플 "Breakfast Never / Title / Demographic profile of students and their association with breakfast consumption"를 생성할 수 있다. 도 7에서 트리플들은 지식 그래프(72)의 형식으로 도시되었으나, 지식 인스턴스 생성부(164)는 트리플들을 개별적으로 지식 베이스(200)에 제공할 수 있고, 지식 베이스(200)는 트리플들을 지식 그래프에 추가할 수 있다.
도 8은 본 발명의 예시적 실시예에 따라 표로부터 지식 데이터를 추출하기 위한 방법을 나타내는 순서도이다. 도 8에 도시된 바와 같이, 표로부터 지식 데이터를 추출하기 위한 방법은, 복수의 단계들(S20, S40, S60)을 포함할 수 있다. 일부 실시예들에서, 도 8의 방법은 도 1의 지식 추출 시스템(100)에 의해서 수행될 수 있고, 이하에서 도 8은 도 1을 참조하여 설명될 것이다.
도 8을 참조하면, 단계 S20에서 복수의 셀들이 헤더 셀들 및 데이터 셀들로 분류될 수 있다. 예를 들면, 헤더 식별부(120)는, 적어도 하나의 정규 표현식에 기초하여 복수의 셀들 중 데이터 셀들을 식별할 수 있고, 나머지 셀들을 헤더 셀들로 식별할 수 있다. 정규 표현식은, 미리 정의될 수도 있고, 도 3 및 도 4를 참조하여 전술된 바와 같이, 표로부터 생성될 수도 있다. 단계 S20의 예시가 도 9를 참조하여 후술될 것이다.
단계 S40에서, 헤더 셀들의 계층이 식별될 수 있다. 예를 들면, 헤더 계층 분석부(140)는 헤더 셀의 속성에 기초하여 헤더 셀들의 계층을 식별할 수 있고, 헤더 셀의 속성은, 예컨대 헤더 셀에 포함된 텍스트의 폰트, 들여쓰기, 헤더 셀의 로우 인덱스, 헤더 셀의 컬럼 인덱스 중 적어도 하나를 포함할 수 있다. 일부 실시예들에서, 헤더 계층 분석부(140)는, 굵은 포트를 가지거나, 들여쓰기가 없거나, 최상위 로우 또는 최좌측 컬럼에 배치되는 헤더 셀을 상위 계층 헤더 셀로 식별할 수 있다. 또한, 일부 실시예들에서, 헤더 계층 분석부(140)는, 일반 폰트를 가지거나, 들여쓰기가 있거나, 최상위 로우 또는 최좌측 컬럼에 배치되지 아니한 헤더 셀을 하위 계층 헤더 셀로 식별할 수 있다.
단계 S60에서, 지식 인스턴스가 생성될 수 있다. 예를 들면, 지식 생성부(160)는 헤더 계층 분석부(140)로부터 제공되는 헤더 셀들의 계층 및 헤더 식별부(120)로부터 제공되는 데이터 셀들로부터 지식 인스턴스들을 생성할 수 있다. 지식 생성부(160)는 헤더 셀들의 계층에 기초하여 헤더 셀들을 플래트닝할 수 있고, 한 쌍의 플래트닝된 헤더 셀들 및 이들에 대응하는 데이터 셀로부터 하나의 지식 인스턴스를 생성할 수 있다. 또한, 지식 생성부(160)는 단위를 나타내는 지식 인스턴스 및/또는 표의 제목을 나타내는 지식 인스턴스를 생성할 수도 있다.
도 9는 본 발명의 예시적 실시예에 따라 표로부터 지식 데이터를 추출하기 위한 방법을 나타내는 순서도이다. 구체적으로, 도 9의 순서도는 도 8의 단계 S20의 예시를 나타낸다. 도 9에 도시된 바와 같이, 단계 S20'은 단계 S22, 단계 S24 및 단계 S26을 포함할 수 있고, 일부 실시예들에서 단계 S22는 생략될 수 있다. 일부 실시예들에서, 단계 S20'은 도 3의 지식 추출 시스템(100')에 의해서 수행될 수 있고, 이하에서 도 9는 도 3을 참조하여 설명될 것이다.
도 9를 참조하면, 단계 S22에서 정규 표현식이 생성될 수 있다. 예를 들면, 정규 표현식 생성부(110)는 복수의 셀들 중 코너 셀(예컨대, 도 4의 41)을 식별할 수 있고, 코너 셀을 정의하는 초기 정규 표현식을 생성할 수 있다. 정규 표현식 생성부(110)는 코너 셀과 로우 방향 및/또는 컬럼 방향으로 인접한 셀과 코너 셀을 공통으로 정의하는 정규 표현식을 생성할 수 있다. 일부 실시예들에서, 정규 표현식 생성부(110)는 코너 셀과 로우 방향에 인접한 셀(예컨대, 도 4의 42)을 정의하는 제1 정규 표현식 및 코너 셀과 컬럼 방향에 인접한 셀(예컨대, 도 4의 43)을 정의하는 제2 정규 표현식을 생성할 수 있고, 초기 정규 표현식과의 유사도를 판단함으로써 로우마다 또는 컬럼마다 정규 표현식을 상이하게 생성할 수 있다.
단계 S24에서 정규 표현식에 기초하여 데이터 셀들이 식별될 수 있고, 단계 S26에서 나머지 셀들이 헤더 셀들로 식별될 수 있다. 예를 들면, 헤더 식별부(120')는 정규 표현식 생성부(110)로부터 제공되거나 미리 정의된 적어도 하나의 정규 표현식에 의해서 정의되는 셀들을 데이터 셀들로 식별할 수 있다. 헤더 식별부(120')는 데이터 셀들로 식별되지 아니한 셀들을 헤더 셀들로 식별하는 한편, 헤더 셀들의 배치에 기초하여 헤더 셀들을 로우 헤더 셀들 및 컬럼 헤더 셀들로 분류할 수 있다. 이에 따라, 도 2를 참조하여 전술된 바와 같이, 복수의 셀들은, 데이터 셀들(예컨대, 도 2의 26), 로우 헤더 셀들(예컨대, 도 2의 24) 및 컬럼 헤더 셀들(예컨대, 도 2의 22)로 분류될 수 있다.
이상에서와 같이 도면과 명세서에서 예시적인 실시예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시예들을 설명되었으나, 이는 단지 본 발명의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (10)

  1. 복수의 셀들을 포함하는 표로부터 지식 데이터를 추출하기 위한 시스템으로서,
    상기 복수의 셀들의 값들에 기초하여, 상기 복수의 셀들을 헤더 셀들 및 데이터 셀들로 분류하도록 구성된 헤더 식별부;
    상기 헤더 셀들의 속성들에 기초하여, 상기 헤더 셀들의 계층을 식별하도록 구성된 헤더 계층 분석부; 및
    상기 헤더 셀들의 계층에 기초하여, 상기 헤더 셀들 및 상기 데이터 셀들로부터 지식 인스턴스들을 생성하도록 구성된 지식 생성부를 포함하고,
    상기 헤더 식별부는, 상기 복수의 셀들 중, 정규 표현식(regular expression)에 의해서 정의되는 값을 포함하는 셀들을 상기 데이터 셀들로 분류하고, 나머지 셀들을 상기 헤더 셀들로 분류하도록 구성되고,
    상기 시스템은, 상기 표의 최하위 로우의 최우측에 위치한 코너 셀을 데이터 셀로 가정하고, 상기 코너 셀부터 로우 방향 및/또는 컬럼 방향으로 인접한 셀들의 값들을 공통으로 정의하는 상기 정규 표현식을 도출하도록 구성된 정규 표현식 생성부를 더 포함하는 것을 특징으로 하는 시스템.
  2. 삭제
  3. 청구항 1에 있어서,
    상기 헤더 식별부는, 상기 표의 로우들 및/또는 컬럼들에 따라 상이한 정규 표현식에 기초하여 상기 복수의 셀들을 상기 헤더 셀들 및 상기 데이터 셀들로 분류하도록 구성된 것을 특징으로 하는 시스템.
  4. 삭제
  5. 청구항 1에 있어서,
    상기 헤더 셀들의 속성들은, 헤더 셀에 포함된 텍스트의 폰트(font), 들여쓰기(indentation), 헤더 셀의 로우 인덱스, 헤더 셀의 컬럼 인덱스 중 적어도 하나를 포함하는 것을 특징으로 하는 시스템.
  6. 청구항 5에 있어서,
    상기 헤더 계층 분석부는, 상기 복수의 셀들에 포함된 텍스트들의 평균 폭을 획득하고, 상기 평균 폭에 기초하여 상기 들여쓰기를 식별하도록 구성된 것을 특징으로 하는 시스템.
  7. 청구항 1에 있어서,
    상기 지식 생성부는,
    상기 헤더 셀들의 계층에 기초하여, 하위 계층의 헤더 셀에 상위 계층의 헤더 셀의 값을 추가함으로써 상기 헤더 셀들을 플래트닝(flattening)하도록 구성된 헤더 플래트닝부; 및
    지식 그래프에 기초하여, 데이터 셀의 제1 값, 상기 데이터 셀과 동일한 로우에 대응하는 플래트닝된 헤더 셀의 제2 값 및 상기 데이터 셀과 동일한 컬럼에 대응하는 플래트닝된 헤더 셀의 제3 값으로부터 상기 지식 인스턴스를 생성하도록 구성된 지식 인스턴스 생성부를 포함하는 것을 특징으로 하는 시스템.
  8. 청구항 1에 있어서,
    상기 지식 생성부는, 상기 표의 명칭을 식별하고, 상기 표의 명칭에 기초하여 상기 지식 인스턴스들 생성하도록 구성된 것을 특징으로 하는 시스템.
  9. 컴퓨팅 시스템에 의해서 수행되는, 복수의 셀들을 포함하는 표로부터 지식 데이터를 추출하기 위한 방법으로서,
    상기 복수의 셀들의 값들에 기초하여, 상기 복수의 셀들을 헤더 셀들 및 데이터 셀들로 분류하는 단계;
    상기 헤더 셀들의 속성들에 기초하여, 상기 헤더 셀들의 계층을 식별하는 단계; 및
    상기 헤더 셀들의 계층에 기초하여, 상기 헤더 셀들 및 상기 데이터 셀들로부터 지식 인스턴스를 생성하는 단계를 포함하고,
    상기 복수의 셀들을 헤더 셀들 및 데이터 셀들로 분류하는 단계는,
    상기 복수의 셀들 중 정규 표현식(regular expression)에 의해서 정의되는 값을 포함하는 셀들을 상기 데이터 셀들로 분류하는 단계; 및
    상기 복수의 셀들 중 상기 데이터 셀들로 분류되지 아니한 셀들을 상기 헤더 셀들로 분류하는 단계를 포함하고,
    상기 방법은,
    상기 표의 최하위 로우의 최우측에 위치한 코너 셀을 데이터 셀로 가정하고, 상기 코너 셀로부터 로우 방향 및/또는 컬럼 방향으로 인접한 셀들의 값들을 공통으로 정의하는 상기 정규 표현식을 도출하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  10. 삭제
KR1020200153084A 2020-11-16 2020-11-16 표로부터 지식 데이터를 추출하기 위한 시스템 및 방법 KR102621758B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200153084A KR102621758B1 (ko) 2020-11-16 2020-11-16 표로부터 지식 데이터를 추출하기 위한 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200153084A KR102621758B1 (ko) 2020-11-16 2020-11-16 표로부터 지식 데이터를 추출하기 위한 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20220066732A KR20220066732A (ko) 2022-05-24
KR102621758B1 true KR102621758B1 (ko) 2024-01-09

Family

ID=81806030

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200153084A KR102621758B1 (ko) 2020-11-16 2020-11-16 표로부터 지식 데이터를 추출하기 위한 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102621758B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240071906A (ko) 2022-11-16 2024-05-23 부산대학교 산학협력단 수치 추론 연산을 위한 단서 생성 기반 표 질의응답 시스템 및 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160117551A1 (en) * 2013-06-14 2016-04-28 Lexmark International Technology Sa Methods for Automatic Structured Extraction of Data in OCR Documents Having Tabular Data
JP2017182526A (ja) * 2016-03-31 2017-10-05 富士通株式会社 領域抽出プログラム、領域抽出方法、および領域抽出装置
US20190171704A1 (en) * 2017-12-01 2019-06-06 International Business Machines Corporation Heuristic Domain Targeted Table Detection and Extraction Technique
WO2022102827A1 (ko) 2020-11-16 2022-05-19 주식회사 솔트룩스 과학 기술 논문을 위한 지식 추출 시스템

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101684579B1 (ko) * 2014-03-28 2016-12-09 주식회사 솔트룩스 지식 생성 시스템 및 방법
KR101986288B1 (ko) * 2015-09-30 2019-06-07 한국전자통신연구원 전자문서 내 표 데이터의 음성 변환 장치 및 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160117551A1 (en) * 2013-06-14 2016-04-28 Lexmark International Technology Sa Methods for Automatic Structured Extraction of Data in OCR Documents Having Tabular Data
JP2017182526A (ja) * 2016-03-31 2017-10-05 富士通株式会社 領域抽出プログラム、領域抽出方法、および領域抽出装置
US20190171704A1 (en) * 2017-12-01 2019-06-06 International Business Machines Corporation Heuristic Domain Targeted Table Detection and Extraction Technique
WO2022102827A1 (ko) 2020-11-16 2022-05-19 주식회사 솔트룩스 과학 기술 논문을 위한 지식 추출 시스템

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Fang et al. "Table header detection and classification." Twenty-Sixth AAAI Conference on Artificial Intelligence. 2012.

Also Published As

Publication number Publication date
KR20220066732A (ko) 2022-05-24

Similar Documents

Publication Publication Date Title
US9588960B2 (en) Automatic extraction of named entities from texts
RU2628436C1 (ru) Классификация текстов на естественном языке на основе семантических признаков
CN104991891B (zh) 一种短文本特征提取方法
US9892111B2 (en) Method and device to estimate similarity between documents having multiple segments
US20140101171A1 (en) Similar Document Search
US20170161255A1 (en) Extracting entities from natural language texts
JP2004110161A (ja) テキスト文比較装置
CN112667940B (zh) 基于深度学习的网页正文抽取方法
Tran et al. Automated reference resolution in legal texts
US11922327B2 (en) Automated knowledge base
KR20150084706A (ko) 온톨로지의 지식 학습 장치 및 그의 방법
CN116628229B (zh) 一种利用知识图谱生成文本语料的方法及装置
US20210103699A1 (en) Data extraction method and data extraction device
JP6614152B2 (ja) テキスト処理システム、テキスト処理方法、及び、コンピュータ・プログラム
Günther et al. Pre-trained web table embeddings for table discovery
KR102621758B1 (ko) 표로부터 지식 데이터를 추출하기 위한 시스템 및 방법
Rezaei et al. Event detection in twitter by deep learning classification and multi label clustering virtual backbone formation
Song et al. Multiple order semantic relation extraction
Fan et al. Knowledge base question answering via path matching
Hadni et al. Graph based representation for Arabic text categorization
Plu et al. Adel: Adaptable entity linking
Wu et al. HUSS: A heuristic method for understanding the semantic structure of spreadsheets
Wang et al. SCIEnt: A Semantic-Feature-Based Framework for Core Information Extraction from Web Pages
WO2022102825A1 (ko) 표로부터 지식 데이터를 추출하기 위한 시스템 및 방법
Akkineni et al. Hybrid Method for Framing Abstractive Summaries of Tweets.

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant