KR102121504B1 - System and method for building integration knowledge data base based a plurality of data sources - Google Patents
System and method for building integration knowledge data base based a plurality of data sources Download PDFInfo
- Publication number
- KR102121504B1 KR102121504B1 KR1020180151227A KR20180151227A KR102121504B1 KR 102121504 B1 KR102121504 B1 KR 102121504B1 KR 1020180151227 A KR1020180151227 A KR 1020180151227A KR 20180151227 A KR20180151227 A KR 20180151227A KR 102121504 B1 KR102121504 B1 KR 102121504B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- knowledge database
- curation
- instance
- database construction
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Animal Behavior & Ethology (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
본 발명의 기술적 사상은 지식 데이터 베이스 구축 시스템에 관한 것으로, 더욱 상세하게는, 복수의 데이터 소스들로부터 수집한 데이터들을 기반으로 효율적인 방식으로 지식 데이터 베이스를 구축하는 지식 데이터 베이스 구축 시스템 및 이의 방법에 관한 것이다.The technical idea of the present invention relates to a knowledge database building system, and more particularly, to a knowledge database building system and method for building a knowledge database in an efficient manner based on data collected from a plurality of data sources. It is about.
본 발명은 과학기술정보통신부의 정보통신, 방송 기술개발사업의 일환으로 (주)솔트룩스가 주관하고 연구하여 수행된 연구로부터 도출된 것이다. [연구기간: 2018.01.01~2018.12.31, 연구관리 전문기관: 정보통신기술연구진흥센터, 연구과제명: WiseKB: 빅데이터 이해 기반 자가학습형 지식베이스 및 추론 기술 개발, 과제 고유번호: 2013-0-00109]The present invention is derived from research conducted by Saltlux Co., Ltd. as a part of the information and communication technology development project of the Ministry of Science and ICT. [Research period: 2018.01.01~2018.12.31, Research institute: Information and communication technology research promotion center, Research project name: WiseKB: Development of self-learning knowledge base and reasoning technology based on big data understanding, task identification number: 2013- 0-00109]
링크드 데이터(linked data) 관련 연구/상용 프로젝트들에 의해 구축된 시스템들의 구현에 있어서 데이터 포맷, 프로토콜이 W3C에 의해 제정된 표준을 따라 구축되고 있다. W3C에서는 2012년 10월부터 'Linked Data Platform 1.0' 이라는 권고 표준을 제안하였고, 2015년 2월까지 꾸준하게 개정하고 있으며, 'Linked Data Platform 1.0'는 링크드 데이터의 정의 포맷과 통신 프로토콜 등을 정의하고 있다. 이러한 규격들을 기반으로 다양한 링크드 데이터의 변환 및 관리 도구, 서비스들이 개발되고 있다. 또한, 외부의 데이터 베이스들에 저장된 오픈 데이터를 링크드 데이터로 변환하고 관리하는 데이터 서비스 시스템에 대한 개발이 활발하게 진행되고 있다.In the implementation of systems built by linked data research/commercial projects, data formats and protocols are being built in accordance with the standards established by the W3C. W3C proposed the recommended standard of'Linked Data Platform 1.0' from October 2012, and has been revised steadily until February 2015, and'Linked Data Platform 1.0' defines the definition format and communication protocol of Linked Data. . Based on these standards, various linked data conversion and management tools and services are being developed. In addition, development of a data service system that converts and manages open data stored in external databases into linked data has been actively conducted.
본 발명의 기술적 사상이 해결하려는 과제는 복수의 데이터 소스들 기반 지식 데이터 베이스를 효율적으로 구축하기 위한 지식 데이터 베이스 구축 시스템 및 방법을 제공한다.The problem to be solved by the technical idea of the present invention is to provide a knowledge database construction system and method for efficiently constructing a knowledge database based on a plurality of data sources.
본 개시에 따른 지식 데이터 베이스 구축 시스템은, 어플리케이션에 요청된 서비스 데이터를 지식 데이터 베이스를 참조하여 제공하는 서비스 제공부, 상기 서비스 목적에 따라 정의된 온톨리지 스키마를 관리하는 서비스 데이터 관리부, 외부의 서로 다른 데이터 소스들로부터 오픈 데이터들을 입력받는 인터페이스부 및 상기 복수의 오픈 데이터들의 관계를 분석하여 생성한 데이터 통합 규칙을 기반으로 복수의 통합 데이터들을 생성하고, 상기 통합 데이터들 및 상기 온톨로지 스키마를 기반으로 상기 지식 데이터 베이스를 구축하는 데이터 통합부를 포함하며, 상기 데이터 통합부는, 큐레이션 모듈의 특성을 나타내는 큐레이션 모듈 정보 및 큐레이션 모듈의 작업 수행 결과를 나타내는 피드백 정보를 기반으로 상기 지식 데이터 베이스 구축 작업을 위하여 상기 온톨로지 스키마의 복수의 인스턴스(instance) 들을 분배하는 인스턴스 분배기, 상기 인스턴스 분배기로부터 분배된 상기 복수의 인스턴스들을 각각 수신하여 상기 지식 데이터 베이스 구축 작업을 개별적으로 수행하는 복수의 큐레이션 모듈들이 구비된 큐레이션 모듈 그룹 및 상기 큐레이션 모듈 그룹의 상기 지식 데이터 베이스 구축 작업의 결과를 검증하여 상기 피드백 정보를 생성하는 검증기를 포함하는 것을 특징으로 한다.The knowledge database construction system according to the present disclosure includes a service providing unit providing service data requested to an application with reference to a knowledge database, a service data management unit managing an ontology schema defined according to the service purpose, and external parties Based on the integrated data generated by analyzing the relationship between the interface unit receiving the open data from other data sources and the plurality of open data, and generating a plurality of integrated data, based on the integrated data and the ontology schema And a data integration unit for constructing the knowledge database, wherein the data integration unit is based on the curation module information indicating characteristics of the curation module and feedback information indicating a result of performing the operation of the curation module. For this, an instance distributor that distributes a plurality of instances of the ontology schema, and a plurality of curation modules that individually receive the plurality of instances distributed from the instance distributor and individually perform the knowledge database construction task are provided. And a validator for verifying the result of the knowledge database construction work of the curation module group and the curation module group, and generating the feedback information.
또한, 본 개시의 일 실시 예에 있어서, 상기 인스턴스 분배기는, 상기 큐레이션 모듈 정보를 기반으로 상기 큐레이션 모듈들 각각이 수행 가능한 인스턴스의 타입에 따라 상기 온톨로지 스키마의 복수의 인스턴스들을 나누어 상기 큐레이션 모듈들에 분배하는 것을 특징으로 한다.In addition, in one embodiment of the present disclosure, the instance divider divides the plurality of instances of the ontology schema according to the type of an instance that each of the curation modules can perform based on the curation module information, and the curation It is characterized by distributing to modules.
또한, 본 개시의 일 실시 예에 있어서, 상기 인스턴스 분배기는, 상기 온톨로지 스키마의 인스턴스에 대응하는 복수의 속성들 중 상기 인스턴스의 타입을 고려하여 일부만을 선택해 상기 구축 작업을 분배하는 것을 특징으로 한다.In addition, in one embodiment of the present disclosure, the instance distributor is characterized in that a part of the attributes corresponding to the instance of the ontology schema is selected in consideration of the type of the instance to distribute the construction task.
또한, 본 개시의 일 실시 예에 있어서, 상기 큐레이션 모듈은, 상기 인스턴스 분배기로부터 수신된 상기 지식 데이터 베이스 구축 작업의 복수의 인스턴스들에 대한 처리가 가능한지 여부를 판별하여, 판별 결과를 상기 검증기에 제공하고, 상기 판별 결과를 기반으로 상기 지식 데이터 베이스 구축 작업을 수행하는 것을 특징으로 한다.In addition, in one embodiment of the present disclosure, the curation module determines whether processing for a plurality of instances of the knowledge database construction job received from the instance distributor is possible, and the determination result is sent to the verifier. And providing the knowledge database based on the discrimination result.
또한, 본 개시의 일 실시 예에 있어서, 상기 큐레이션 모듈은, 상기 온톨로지 스키마를 기반으로 수신된 상기 지식 데이터 베이스 구축 작업의 상기 복수의 인스턴스들 외에도 처리 가능한 적어도 하나의 인스턴스를 추가하는 인스턴스 추가 선택부를 더 포함하는 것을 특징으로 한다.In addition, in one embodiment of the present disclosure, the curation module selects an instance to add at least one processable instance in addition to the plurality of instances of the knowledge database construction job received based on the ontology schema Characterized in that it further comprises a wealth.
또한, 본 개시의 일 실시 예에 있어서, 상기 큐레이션 모듈은, 상기 복수의 인스턴스들에 대한 상기 지식 데이터 베이스 구축 작업을 완료한 때에, 작업 완료를 알리는 신호를 상기 인스턴스 분배기에 제공하는 상태 출력부를 더 포함하고, 상기 인스턴스 분배기는, 상기 작업 완료를 알리는 신호에 응답하여 상기 큐레이션 모듈 그룹 내의 다른 큐레이션 모듈로부터 처리 불가 판별을 받은 적어도 하나의 인스턴스를 상기 큐레이션 모듈에 재분배하는 것을 특징으로 한다.In addition, in one embodiment of the present disclosure, the curation module, when completing the task of constructing the knowledge database for the plurality of instances, provides a status output unit that provides a signal to the instance distributor to inform the completion of the task Further comprising, the instance distributor is characterized in that in response to the signal indicating the completion of the task, redistributing at least one instance that is not processed by another curation module in the curation module group to the curation module .
또한, 본 개시의 일 실시 예에 있어서, 상기 큐레이션 모듈 그룹 내의 큐레이션 모듈 별로 검증 결과를 누적하고, 상기 검증 결과를 기반으로 상기 복수의 큐레이션 모듈들의 성능에 대한 정보를 지속적으로 업데이트하고, 상기 피드백 정보는 상기 성능에 대한 정보를 포함하는 것을 특징으로 한다.In addition, in one embodiment of the present disclosure, verification results are accumulated for each curation module in the curation module group, and information on performance of the plurality of curation modules is continuously updated based on the verification result, The feedback information is characterized by including information on the performance.
또한, 본 개시의 일 실시 예에 있어서, 상기 검증기는, 상기 큐레이션 모듈 그룹 내의 큐레이션 모듈 별로 수행된 상기 지식 데이터 베이스 구축 작업을 검증하고, 상기 검증 결과를 상기 큐레이션 모듈들에 제공하고, 상기 큐레이션 모듈들은, 상기 검증 결과를 기반으로 상기 지식 데이터 베이스 구축 작업을 재수행하거나, 상기 지식 데이터 베이스 구축 작업을 완료하는 것을 특징으로 한다.In addition, in one embodiment of the present disclosure, the verifier verifies the knowledge database construction work performed for each curation module in the curation module group, and provides the verification results to the curation modules, The curation modules are characterized by performing the knowledge database construction task again based on the verification result or completing the knowledge database construction task.
본 개시의 일 실시예에 따른 지식 데이터 베이스 구축 시스템은 큐레이션 모듈의 특성, 큐레이션 모듈의 작업 수행 결과에 따라 온톨로지 스키마의 인스턴스들을 분배하여 큐레이션 모듈들에 제공함으로써 효율적인 지식 데이터 베이스 구축 작업을 수행할 수 있는 효과가 있다.The knowledge database construction system according to an embodiment of the present disclosure provides efficient knowledge database construction by distributing instances of ontology schemas to the curation modules according to the characteristics of the curation module and the result of performing the operation of the curation module. There is an effect that can be performed.
도 1은 본 발명의 일 실시예에 따른 지식 데이터 베이스 구축 시스템을 개략적으로 나타내는 블록도이다.
도 2는 본 개시의 일 실시 예에 따른 인터페이스부를 나타내는 블록도이다.
도 3은 본 개시의 일 실시 예에 따른 서비스 데이터 관리부를 나타내는 블록도이다.
도 4는 본 개시의 일 실시 예에 따른 데이터 통합부를 나타내는 도면이다.
도 5는 본 개시의 일 실시 예에 따른 인스턴스 분배기를 나타내는 블록도이다.
도 6은 본 개시의 일 실시 예에 따른 큐레이션 모듈 그룹을 나타내는 블록도이다.
도 7은 본 개시의 일 실시 예에 따른 검증기를 나타내는 블록도이다.1 is a block diagram schematically showing a knowledge database building system according to an embodiment of the present invention.
2 is a block diagram illustrating an interface unit according to an embodiment of the present disclosure.
3 is a block diagram illustrating a service data management unit according to an embodiment of the present disclosure.
4 is a diagram illustrating a data integration unit according to an embodiment of the present disclosure.
5 is a block diagram illustrating an instance distributor according to an embodiment of the present disclosure.
6 is a block diagram illustrating a group of curation modules according to an embodiment of the present disclosure.
7 is a block diagram illustrating a verifier according to an embodiment of the present disclosure.
이하, 첨부한 도면을 참조하여 본 발명의 실시예에 대해 상세히 설명한다. 본 발명의 실시예는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공되는 것이다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다. 첨부된 도면에 있어서, 구조물들의 치수는 본 발명의 명확성을 기하기 위하여 실제보다 확대하거나 축소하여 도시한 것이다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. The embodiments of the present invention are provided to more fully describe the present invention to those skilled in the art. The present invention can be applied to various changes and may have various forms, and specific embodiments will be illustrated in the drawings and described in detail. However, this is not intended to limit the present invention to a specific disclosure form, and it should be understood that it includes all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. In describing each drawing, similar reference numerals are used for similar components. In the accompanying drawings, the dimensions of the structures are enlarged or reduced than actual ones for clarity of the present invention.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in this application are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, terms such as “include” or “have” are intended to indicate the presence of features, numbers, steps, actions, elements, parts or combinations thereof described in the specification, but one or more other features. It should be understood that the existence or addition possibilities of fields or numbers, steps, actions, components, parts or combinations thereof are not excluded in advance.
또한, 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 벗어나지 않으면서, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. Further, terms such as first and second may be used to describe various components, but the components should not be limited by the terms. The terms may be used for the purpose of distinguishing one component from other components. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 갖는다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by a person skilled in the art to which the present invention pertains. Terms such as those defined in a commonly used dictionary should be interpreted as having meanings consistent with meanings in the context of related technologies, and should not be interpreted as ideal or excessively formal meanings unless explicitly defined in the present application. Does not.
본 발명의 실시예들을 설명하기에 앞서 이하에서 사용할 용어들과 개념을 간략히 설명한다. Before describing embodiments of the present invention, terms and concepts to be used below will be briefly described.
시맨틱 기술은 사람이 화면을 읽고 의미를 이해하는 것처럼 컴퓨터가 이해할 수 있는 언어와 규칙들을 정해 놓아 컴퓨터 사이의 의사소통을 가능하게 하는 지능형 기술을 의미한다. 시맨틱 기술에서는 해당 환경에 속하는 객체들 간의 관계-의미 정보(semanteme)를 기계, 즉 컴퓨터가 처리할 수 있는 온톨로지(ontology) 형태로 표현하고, 이를 자동화된 기계가 처리하도록 하는 것을 목표로 하고 있다. 온톨로지란 사람들이 사물에 대해 생각하는 바를 추상화하고 공유한 모델로서, 정형화되고 개념의 유형이나 사용상의 제약 조건들이 명시적으로 정의된 기술을 말한다. 컴퓨터 과학 분야에서 온톨로지는 특정한 도메인을 표현하는 데이터 모델로서 특정한 도메인(domain)에 속하는 개념과 개념 사이의 관계를 기술하는 정형 데이터로 정의된다. 온톨로지는 시맨틱 기술을 구현할 수 있는 도구로써, 데이터를 의미적으로 연결할 수 있는 도구로 사용되며, 컴퓨터에서 사람이 갖고 있는 사물에 대한 개념을 일종의 데이터베이스의 형태로 가공하여 처리할 수 있도록 해 준다. Semantic technology is an intelligent technology that enables communication between computers by setting languages and rules that computers can understand, just like a person reads a screen and understands meaning. The semantic technology aims to express the relationship-semantic information (semanteme) between objects belonging to the environment in the form of an ontology that can be processed by a machine, that is, a computer. Ontology is a model that abstracts and shares what people think about things, and is a technique that is formalized and the types of concepts or constraints on use are explicitly defined. In the field of computer science, an ontology is a data model representing a specific domain, and is defined as structured data that describes concepts and relationships between concepts belonging to a specific domain. Ontology is a tool that can implement semantic technology, and is used as a tool to connect data semantically, and allows the computer to process and process the concept of objects in the form of a database.
온톨로지의 구성 요소는 인스턴스(instance), 클래스(class), 관계(relation), 속성(property)으로 구분할 수 있다. 클래스는 일반적으로 우리가 사물이나 개념 등에 붙이는 이름을 말한다고 설명할 수 있다. "키보드", "모니터", "사랑"과 같은 것은 모두 클래스라고 할 수 있다. 반면, 인스턴스는 사물이나 개념이 구체물이나 사건 등의 실질적인 형태로 나타난 그 자체를 의미한다. 즉, "LG전자 ST-500 슬림키보드", "삼성 싱크마스터 Wide LCD 모니터", "로미오와 줄리엣의 사랑"은 일반적으로 인스턴스라 볼 수 있다. 이와 같은 클래스와 인스턴스의 구분은 응용과 사용목적에 따라서 매우 달라질 수 있다. 즉, 같은 표현의 개체가 어떠한 경우에는 클래스가 되었다가 다른 경우에는 인스턴스가 될 수 있다.Ontology components can be classified into instance, class, relationship, and property. We can explain that a class is a name we usually give to things or concepts. "Keyboard", "monitor", and "love" are all classes. On the other hand, an instance means itself in which objects or concepts appear in a practical form such as a concrete object or an event. In other words, "LG Electronics ST-500 Slim Keyboard", "Samsung Sync Master Wide LCD Monitor", "Romeo and Juliet's Love" can be considered as instances. Classes and instances can be very different depending on the application and purpose of use. That is, an object of the same expression can be a class in some cases and an instance in other cases.
관계는 클래스/인스턴스 간에 존재하는 관계들을 칭하며, 일반적으로 분류적인 관계(taxonomic relation)와 비분류적인 관계(non-taxonomic relation)로 구분할 수 있다. 분류적인 관계는 클래스/인스턴스들의 개념 분류를 위하여, 보다 폭넓은 개념과 구체적인 개념들로 구분하여 계층적으로 표현하는 관계이다. 예를 들어, "사람은 동물이다"와 같은 개념 간 포함관계를 나타내기 위한 "isA" 관계가 그것이다. 분류적인 관계가 아닌 관계를 비분류적인 관계라 한다. 예를 들어, "운동으로 인해 건강해진다"는 것은 "cause" 관계(인과관계)를 이용하여 표현한다. Relationships refer to relationships that exist between classes/instances, and can be generally classified into a taxonomic relation and a non-taxonomic relation. The taxonomy relationship is a hierarchical expression that is classified into broader and concrete concepts for class/instance concept classification. For example, it is the "isA" relationship to indicate the inclusion relationship between concepts such as "people are animals." Relationships that are not classified are called unclassified. For example, "being healthy through exercise" is expressed using a "cause" relationship (causality).
속성은 클래스나 인스턴스의 특정한 성질/성향 등을 나타내기 위하여, 클래스나 인스턴스를 특정한 값(value)와 연결시킨 것이다. 예를 들어, "삼성 싱크마스터 Wide LCD 모니터는 24인치이다."라는 것을 표현하기 위하여, hasSize와 같은 속성을 정의할 수 있다.Attributes are classes or instances that are associated with specific values to indicate a specific property/property of the class or instance. For example, to express "Samsung Syncmaster Wide LCD monitor is 24 inches.", an attribute such as hasSize can be defined.
일반적으로 관계와 속성은 굳이 구분하여 칭하지 않는 경우가 많다. "isA(사람, 동물)", "cause(운동, 건강)", "hasSize(삼성 싱크마스터 Wide LCD, 24 인치)"와 같은 실제 클래스/인스턴스들 사이의 관계로 선언한 관계/속성을 관계/속성 인스턴스(relation/property instance)라고 부르기도 하는데, 이는 "isA", "cause", "hasSize" 등과 같이 정의하여 명명한 관계/속성과의 구분을 위하여서이다.In general, relationships and attributes are often not distinguished. Relationships/properties declared as relationships between actual classes/instances such as "isA (person, animal)", "cause (exercise, health)", "hasSize (Samsung Syncmaster Wide LCD, 24 inch)" Also called a property/property instance, this is for distinguishing the relationship/property defined and defined as "isA", "cause", and "hasSize".
이러한 시맨틱 기술 분야에서는 관계를 표현하기 위한 수단으로서 트리플(triple)이라는 표현 형태를 사용한다. 트리플이란, 주어(subject), 술어(predicate), 객체(object)의 형태로 개념을 표현하는 것을 말한다. 각각의 주어, 술어, 객체는 XML의 URI(Uniform Resource Identifier)로 표현될 수 있으며, 현재 시맨틱 웹 온톨로지를 기술하는 표준 언어로 W3C에서 제안한 RDF, OWL 그리고 ISO에서 제안한 TopicMaps 등이 있다.In this field of semantic technology, the expression form triple is used as a means for expressing a relationship. Triple means expressing a concept in the form of a subject, a predicate, and an object. Each subject, predicate, and object can be expressed as a Uniform Resource Identifier (URI) of XML. RDF, OWL proposed by W3C, and TopicMaps proposed by ISO are standard languages that describe the semantic web ontology.
도 1은 본 발명의 일 실시예에 따른 지식 데이터 베이스 구축 시스템(100)을 개략적으로 나타내는 블록도이다.1 is a block diagram schematically showing a knowledge
도 1을 참조하면, 지식 데이터 베이스 구축 시스템(100)은 인터페이스부(110), 데이터 통합부(120), 서비스 데이터 관리부(130) 및 서비스 제공부(140)를 포함한다. 인터페이스부(110)는 외부의 데이터 풀(data pool)로부터 오픈 데이터(OPD)를 입력 받을 수 있다. 인터페이스부(110)는 데이터 풀로부터 입력받은 복수 개의 오픈 데이터(OPD)를 오픈 데이터 그룹(OPDG)으로 데이터 통합부(120)에 제공할 수 있다. 인터페이스부(110)에 오픈 데이터를 제공하는 데이터 풀은 다양한 데이터 소스를 포함하는 것으로, 인터넷(internet), 데이터 베이스(database), 클라우드 소싱(cloud sourcing) 및 소셜 네트워크(social network) 등, 오픈 데이터가 생성되고 보유되며 유통될 수 있는 것을 나타낼 수 있다. 또한, 데이터 풀은 대중 또는 개인에 의해 직접 제공되는 오픈 데이터도 포함할 수 있다. 오픈 데이터란, 사용자들이 사용할 수 있도록 공개된 공공 데이터를 지칭할 수 있다. 오픈 데이터(OPD)의 형태는 CSV, 엑셀파일, RDF 등과 같은 정적 파일이거나, CKAN과 같은 데이터 카탈로그 시스템 형태, 오픈 API 형태 등에 해당할 수 있다.Referring to FIG. 1, the knowledge
데이터 풀로부터 비정형 데이터(informal data 또는 unstructured data) 또는 정형 데이터(formal data 또는 structured data)를 포함하는 오픈 데이터를 입력 받는다. 비정형 데이터는 고정된 형태로 구현되지 아니하는 데이터로, 대응되는 필드(field)에 대응되는 콘텐츠(contents)가 포함되는 정형 데이터(formal data 또는 structured data)와 대비된다. 고정된 필드에 저장되지는 않지만, 메타데이터(metadata)나 스키마(schema) 등을 포함하는 데이터로, XML이나 HTML은 반정형 데이터로 분류될 수는 있으나, 본 발명은 반정형 데이터를 비정형 데이터의 일 유형으로 전제될 수 있음을 알려둔다.Open data including informal data or unstructured data or formal data is received from a data pool. Unstructured data is data that is not implemented in a fixed form, and is contrasted with formal data or structured data including contents corresponding to a corresponding field. Although not stored in a fixed field, data including metadata or a schema, XML or HTML may be classified as semi-structured data, but the present invention uses semi-structured data as unstructured data. Note that it can be assumed as a work type.
데이터 통합부(120)는 복수의 오픈 데이터들을 포함하는 오픈 데이터 그룹(OPDG)를 수신하여, 각각의 오픈 데이터들의 포맷(format)을 하나의 통일된 포맷으로 변환할 수 있다. 일 실시예로, 오픈 데이터는 CSV(comma separated value), 엑셀 (Excel), HTML(HypertextMarkup Language), PDF(Portable Document Format), XML(Extensible markup language) 등의 데이터 형태일 수 있다. 데이터 통합부(120)는 변환 템플릿을 기반으로 다양한 포맷을 가지는 오픈 데이터들을 통일된 포맷을 가지도록 변환할 수 있다. 데이터 통합부(120)는 오픈 데이터들의 구조인 필드, 포맷 등을 분석하고, 분석된 오픈 데이터들의 구조를 기반으로 상기 변환 템플릿을 생성할 수 있다. 일 실시예로, 데이터 통합부(120)는 외부로부터 수신한 각각의 오픈 데이터들의 포맷을 RDF(Resource Description Framework) 데이터 포맷으로 통일하여 변환할 수 있다.The
데이터 통합부(120)는 각각의 오픈 데이터간의 관계를 분석하여, 통합 데이터 규칙을 생성할 수 있다. 상기 통합 데이터 규칙을 기반으로, 오픈 데이터들을 통합한 통합 데이터를 생성할 수 있다. 일 실시예로, 오픈 데이터들은 데이터 통합부(120)에 의하여 RDF 데이터 포맷으로 변환될 수 있으며, RDF 데이터 포맷으로 변환된 오픈 데이터들을 통합한 통합 데이터는 RDF 데이터 포맷을 가질 수 있다. The
서비스 데이터 관리부(130)는 사용자에게 데이터 제공 서비스를 제공하기 위하여, 서비스 목적에 따라 공간, 시간, 사용자, 서비스 정책, 해당 서비스 등 이들 간의 관계를 정의한 온톨로지 스키마를 정의할 수 있다. 정의된 온톨로지 스키마는 온톨로지 스키마 저장부(미도시)에 저장될 수 있다. 예를 들면, 공간 온톨로지는 GPS 좌표로부터 행정 구역을 도출할 수 있는 스키마, 시간 온톨로지는 입력 시간 정보로부터 계절, 절기, 새벽, 오후 등을 도출할 수 있는 스키마, 헬스케어 서비스 온톨로지는 개인 병력, 혈압, 혈당 측정 결과로부터 건강 상태를 파악할 수 있는 스키마 등으로 정의될 수 있다. 또한, 서비스 데이터 관리부(130)는 외부로부터 입력된 오픈 데이터들을 온톨로지 스키마에 매핑하는 방법을 정의한 매핑 규칙을 생성할 수 있다. 서비스 데이터 관리부(130)는 온톨로지 스키마 및 매핑 규칙 중 적어도 하나를 포함하는 온톨로지 정보(OI)를 데이터 통합부(120)에 제공할 수 있다. In order to provide a data providing service to a user, the service
본 개시의 일 실시 예에 따른 데이터 통합부(120)는 통합 데이터를 온톨로지 스키마에 적용시킴으로써 지식 데이터 베이스 구축 작업을 수행할 수 있다. 데이터 통합부(120)는 지식 데이터 베이스 구축 작업의 효율성을 위하여 지식 데이터 베이스 구축 작업을 개별적으로 수행할 수 있는 복수의 큐레이션 모듈들을 포함할 수 있다. 또한, 데이터 통합부(120)는 큐레이션 모듈의 특성을 나타내는 큐레이션 모듈 정보 및 큐레이션 모듈의 작업 수행 결과를 나타내는 피드백 정보를 기반으로 온톨로지 스키마의 복수의 인스턴스들을 분배하는 인스턴스 분배기를 포함할 수 있다. 큐레이션 모듈들은 각각 인스턴스 분배기로부터 분배된 인스턴스들을 이용하여 지식 데이터 베이스 구축 작업을 수행할 수 있다. 데이터 통합부(120)는 큐레이션 모듈들에서 수행되는 지식 데이터 베이스 구축 작업을 검증하여, 지식 데이터 베이스 구축 작업에 의해 생성된 지식 데이터를 지식 데이터 베이스에 적용할지 여부를 결정하기 위한 검증기를 포함할 수 있다. 데이터 통합부(120)는 소정의 메모리 장치에 생성한 지식 데이터 베이스를 저장하고, 저장된 지식 데이터 베이스에 대한 업데이트를 수행할 수 있다.The
이와 같이, 데이터 통합부(120)는 큐레이션 모듈의 특성, 큐레이션 모듈의 작업 수행 결과에 따라 온톨로지 스키마의 인스턴스들을 분배하여 큐레이션 모듈들에 제공함으로써 효율적인 지식 데이터 베이스 구축 작업을 수행할 수 있는 효과가 있다.In this way, the
데이터 통합부(120)는 서비스 데이터 관리부(130)에서 정의한 온톨로지 스키마와 통합 데이터를 기반으로 생성된 지식 데이터 베이스를 참조하여 어플리케이션(1)에 제공하는 서비스 데이터(SD)를 생성할 수 있다. 일 실시예로, 데이터 통합부(120)는 상기 온톨로지 스키마에 통합 데이터들을 매핑하고, 매핑 데이터를 생성하고, 상기 매핑 데이터를 포함하는 지식 데이터 베이스로부터 서비스 데이터(SD)를 생성할 수 있다. 일 실시예로, 매핑 데이터는 RDF 데이터 포맷을 가지는 트리플(triple)에 해당할 수 있으며, 이에 대하여, 자세한 서술은 후술하기로 한다. 서비스 데이터(SD)는 서비스 데이터 관리부(130)에 저장될 수 있다.The
서비스 제공부(140)는 어플리케이션(1)으로부터 서비스 데이터를 요청하기 위한 질의(Query)를 수신하여, 질의(Query)를 분석한 후에, 서비스 데이터 요청 신호(RS)를 서비스 데이터 관리부(130)에 제공할 수 있다. 서비스 데이터 관리부(130)는 이에 응답하여 요청된 서비스 데이터(RSD)를 서비스 제공부(140)에 제공하며, 서비스 제공부(140)는 어플리케이션(1)에 요청된 서비스 데이터(RSD)를 제공할 수 있다. 더 나아가, SPARQL Endpoint, RESTful API 등의 다양한 어플리케이션이 데이터 서비스 시스템(100)에 접근할 수 있도록, 서비스 제공부(140)는 다양한 어플리케이션 각각에 대응하는 인터페이스를 포함할 수 있다.The
어플리케이션(1)은 서비스 제공부(140)를 통하여, 서비스 데이터 관리부(130)에 새로운 온톨로지 스키마를 정의하는 데 필요한 서비스 정보를 제공할 수 있으며, 서비스 데이터 관리부(130)는 상기 새로운 서비스 정보를 기반으로 새로운 온톨로지 스키마를 정의할 수 있다. The
도 2는 본 개시의 일 실시 예에 따른 인터페이스부(110)를 나타내는 블록도이다. 도 2를 참고하면, 인터페이스부(110)는 제1 내지 제n 오픈 데이터(OPD_1~OPD_n)를 입력 받기 위하여, 각각의 데이터 포맷에 대응하는 제1 내지 제n 오픈 데이터 어댑터(110_1~110_n)를 포함한다.2 is a block diagram illustrating an
인터페이스부(110)는 외부로부터 제1 내지 제n 오픈 데이터(OPD_1~OPD_n)를 입력받을 수 있다. 제1 내지 제n 오픈 데이터(OPD_1~OPD_n)의 오픈 데이터 형태는 서로 상이할 수 있다. 예를 들면, 제1 오픈 데이터(OPD_1)는 엑셀 파일과 같은 정적 파일 형식 해당될 수 있으며, 제2 오픈 데이터(OPD_2)는 CKAN과 같은 데이터 카탈로그 시스템 형식에 해당될 수 있고, 제n 오픈 데이터(OPD_n)는 오픈 API의 형태를 가질 수 있다. 따라서, 인터페이스부(110)는 제1 오픈 데이터(OPD_1)를 입력 받을 수 있도록, 상기 정적 파일 형식에 대응되는 제1 인터페이스를 포함하는 제1 오픈 데이터 어댑터(110_1)를 포함하고, 제2 오픈 데이터(OPD_2)를 입력 받을 수 있도록, 상기 데이터 카탈로그 시스템 형식에 대응되는 제2 인터페이스를 포함하는 제2 오픈 데이터 어댑터(110_2)를 포함하고, 제n 오픈 데이터(OPD_n)를 입력 받을 수 있도록, 상기 오픈 API 형식에 대응되는 제n 인터페이스를 포함하는 제n 오픈 데이터 어댑터(110_n)를 포함할 수 있다. 다만, 이에 국한되지 않으며, 더 다양한 오픈 데이터 형식을 가지는 오픈 데이터를 입력 받기 위해, 이에 대응하는 오픈 데이터 어댑터를 더 포함할 수 있다. 인터페이스부(110)는 복수의 오픈 데이터들(OPD_1~OPD_n)을 한번에 오픈 데이터 그룹(OPDG)으로 도 1 의 데이터 통합부(120)에 제공할 수 있다.The
도 3은 본 개시의 일 실시 예에 따른 서비스 데이터 관리부(130)를 나타내는 블록도이다. 도 3을 참고하면, 서비스 데이터 관리부(130)는 온톨로지 정의부(131), 규칙 정보 생성부(132), 온톨로지 정보 저장부(134) 및 서비스 데이터 저장부(135)를 포함한다.3 is a block diagram illustrating a service
온톨로지 정의부(131)는 어플리케이션에 제공하는 서비스의 목적에 따라 공간, 시간, 사용자, 서비스 정책, 해당 서비스 등 이들 간의 관계를 정의한 적어도 하나의 온톨로지 스키마를 정의할 수 있다. 온톨로지 정의부(131)는 어플리케이션으로부터 서비스 정보(SI)를 수신하여, 서비스 정보를 기반으로 온톨로지 스키마를 정의할 수 있다. The ontology definition unit 131 may define at least one ontology schema defining spaces, times, users, service policies, and corresponding services, etc. according to the purpose of a service provided to an application. The ontology definition unit 131 may receive service information SI from an application, and define an ontology schema based on the service information.
규칙 정보 생성부(132)는 도 1의 데이터 통합부(120)에서 오픈 데이터들을 통합하여 생성한 통합 데이터를 온톨로지 스키마에 매핑하는 방법을 정의하는 제1 매핑 규칙을 생성할 수 있다. 상기 제1 매핑 규칙은 온톨로지 정의부(131)에서 정의된 온톨로지 스키마를 기반으로 생성될 수 있다. 일 실시예로, 제1 매핑 규칙은 RDF 데이터 포맷을 가지는 통합 데이터의 트리플 리소스와 정의된 온톨로지 스키마의 개체가 동일 그룹 관계인지, 동의 관계인지, 상/하위 관계인지, 상/하위 그룹 관계인지, 동의어 관계 등의 특정한 관계를 나타내는 것 일 수 있다. 다만, 이는 일 실시예로서 이에 국한되지 않으며, 상기 특정한 관계는 동의 관계뿐만 아니라 반의 관계, 유사 관계 등을 나타낸 것일 수 있다. 온톨로지 스키마의 개체의 의미는 클래스, 클래스에 속한 객체인 인스턴스 및 인스턴스의 성질을 나타내는 속성을 의미한다. 더 나아가, 어플리케이션으로부터 데이터 서비스 시스템이 질의를 수신하였을 때, 질의를 기반으로 추론을 하기 위한 추론 규칙, 즉 추론을 위한 사용자 정의 규칙 등을 생성할 수 있다.The rule information generation unit 132 may generate a first mapping rule that defines a method of mapping the integrated data generated by integrating open data in the
온톨로지 정보 저장부(134)는 온톨로지 정의부(131)로부터 정의된 온톨로지 스키마를 저장할 수 있다. 또한, 온톨로지 정보 저장부(134)는 규칙 정보 생성부(132)로부터 정의된 제1 매핑 규칙 및 추론 규칙을 저장할 수 있다. 온톨로지 정보 저장부(134)는 도 1의 데이터 통합부(120)에 온톨로지 스키마 및 제1 매핑 규칙 중 적어도 하나를 포함하는 온톨로지 정보(OI)를 데이터 통합부(120)에 제공할 수 있다. The ontology information storage unit 134 may store an ontology schema defined by the ontology definition unit 131. Also, the ontology information storage unit 134 may store the first mapping rule and the inference rule defined by the rule information generation unit 132. The ontology information storage unit 134 may provide the
서비스 데이터 저장부(135)는 도 1의 데이터 통합부(120)로부터 생성된 서비스 데이터(SD)를 수신하여, 저장할 수 있다. 도 1의 서비스 제공부(140)로부터 서비스 데이터 요청 신호(RS)를 수신한 경우, 이에 응답하여 요청된 서비스 데이터(RSD)를 서비스 제공부(140)에 제공할 수 있다. 일 실시 예로, 서비스 데이터 저장부(135)는 서비스 데이터(SD)를 온톨로지 정의부(131) 및 규칙 정보 생성부(132)에 피드백 정보로서 제공할 수 있다. 온톨로지 정의부(131)는 피드백 정보를 참고하여, 온톨로지 스키마 기반으로 적절한 서비스 데이터(SD)가 생성되었는지 판단하고, 적절하지 않은 서비스 데이터(SD)가 생성된 경우, 정의된 온톨로지 스키마를 수정할 수 있다. 또한, 규칙 정보 생성부(132)는 피드백 정보를 참고하여, 제 1 매핑 규칙을 기반으로 적절한 서비스 데이터(SD)가 생성되었는지 판단하고, 적절하지 않은 서비스 데이터(SD)가 생성된 경우, 정의된 제 1 매핑 규칙을 수정할 수 있다.The service data storage unit 135 may receive and store the service data SD generated from the
도 4는 본 개시의 일 실시 예에 따른 데이터 통합부(120)를 나타내는 도면이다.4 is a diagram illustrating a
도 4를 참조하면, 데이터 통합부(120)는 데이터 포맷 변환부(122), RDF 데이터 저장부(124), 지식 데이터 베이스 저장부(126) 및 데이터 통합 관리부(200)를 포함할 수 있다. Referring to FIG. 4, the
데이터 통합부(120)는 도 1의 인터페이스부(110)로부터 복수의 오픈 데이터를 포함하는 오픈 데이터 그룹(OPDG)을 수신하고, 도 1의 서비스 데이터 관리부(130)로부터 온톨로지 정보(OI)를 수신할 수 있다. 데이터 통합부(120)는 온톨로지 정보(OI) 및 통합 데이터를 기반으로, 지식 데이터 베이스를 구축할 수 있으며, 지식 데이터 베이스로부터 서비스 데이터(SD)를 생성할 수 있다.The
데이터 포맷 변환부(122)는 정형 데이터 변환부(122a) 및 RDF 데이터 변환부(122b)를 포함할 수 있다. 오픈 데이터는 CSV(comma separated value), 엑셀(Excel), HTML(HypertextMarkup Language), PDF(Portable Document Format), XML(Extensible markup language) 등의 데이터 형태일 수 있다. 정형 데이터 변환부(122a)는 변환 템플릿을 기반으로 다양한 포맷을 가지는 오픈 데이터들을 정형 데이터 형태으로 변환할 수 있다. 정형 데이터 변환부(122a)는 오픈 데이터(OPD)의 구조인 필드, 포맷 등을 분석하고, 분석된 오픈 데이터(OPD)의 구조를 기반으로 상기 변환 템플릿을 생성할 수 있다.The
RDF 데이터 변환부(122b)는 상기 정형 데이터 형태로 변환된 오픈 데이터를 RDF 데이터 포맷을 가지도록 변환할 수 있다. 더 나아가, RDF 데이터 변환부(122b)는 오픈 데이터 그룹(OPDG)을 직접 수신하여, 각각 서로 다른 데이터 포맷을 가지는 오픈 데이터를 RDF 데이터 포맷을 가지도록 변환할 수 있다. RDF 데이터 변환부(122b)로부터 RDF 데이터 포맷을 가지도록 변환된 오픈 데이터는 RDF 데이터 저장부(124)에 저장될 수 있다.The RDF
데이터 통합 관리부(200)는 RDF 데이터 포맷을 가지도록 변환된 오픈 데이터를 분석하여 생성한 데이터 통합 규칙을 기반으로 통합 데이터들을 생성할 수 있다. 일 예로, RDF 데이터 포맷으로 변환된 제1 오픈 데이터 및 제2 오픈 데이터를 통합하는 경우에는, 데이터 통합 규칙은 제1 오픈 데이터의 트리플 리소스와 제2 오픈 데이터의 트리플 리소스가 동일 그룹 관계인지, 동의 관계인지, 상/하위 관계인지, 상/하위 그룹 관계인지, 동의어 관계 등의 특정한 관계를 나타내는 것 일수 있다. 상기 특정한 관계는 동의 관계뿐만 아니라 반의 관계, 유사 관계 등을 나타낸 것일 수 있다.The data
데이터 통합 관리부(200)는 생성된 통합 데이터들 및 온톨로지 정보(OI)(또는, 온톨로지 스키마)를 기반으로 지식 데이터 베이스를 구축할 수 있으며, 이를 위해, 인스턴스 분배기(210), 큐레이션 모듈 그룹(220) 및 검증기(230)를 포함할 수 있다. 큐레이션 모듈 그룹(220)은 개별적으로 지식 데이터 베이스 구축 작업을 수행할 수 있는 복수의 큐레이션 모듈들을 포함할 수 있다. 지식 데이터 베이스 구축 작업이란 온톨로지 스키마에 포함되는 복수의 인스턴스들에 대한 속성, 다른 인스턴스와의 관계, 클래스 등을 연결시켜 특정 식별자로 접근할 수 있는 트리플 데이터들을 생성하는 동작을 의미할 수 있다.The data
인스턴스 분배기(210)는 온톨로지 스키마의 복수의 인스턴스들을 분배하여 큐레이션 모듈 그룹(220) 내의 각각의 큐레이션 모듈들에 제공할 수 있다. 구체적으로, 인스턴스 분배기(210)는 큐레이션 모듈의 특성을 나타내는 큐레이션 모듈 정보를 기반으로 온톨로지 스키마의 복수의 인스턴스들을 분배할 수 있다. 예를 들어, 제1 큐레이션 모듈은 '정치' 테마에 관한 인스턴스들의 지식 데이터 베이스 구축 작업 수행에 특화된 것이고, 제2 큐레이션 모듈은 '연예' 테마에 관한 인스턴스들의 지식 데이터 베이스 구축 작업 수행에 특화된 것인 때에, 인스턴스 분배기(210)는 이러한 큐레이션 모듈의 특성을 고려하여 인스턴스들을 분배할 수 있다. 큐레이션 모듈 그룹(220)은 각각의 큐레이션 모듈들의 특성을 나타내는 큐레이션 모듈 정보를 인스턴스 분배기(210)에 제공할 수 있으며, 큐레이션 모듈 정보는 주기적으로 업데이트될 수 있다.The
다른 실시 예로, 인스턴스 분배기(210)는 검증기(230)로부터 생성된 피드백 정보를 기반으로 온톨로지 스키마의 복수의 인스턴스들을 분배할 수 있다. 검증기(230)는 큐레이션 모듈 그룹(220) 내의 각각의 큐레이션 모듈들의 지식 데이터 베이스 구축 작업이 잘 수행되었는지 여부에 대하여 소정의 신뢰성이 보장된 검증 모듈을 이용해 검증을 수행할 수 있다. 검증기(230)는 큐레이션 모듈 별 검증 결과를 포함하는 피드백 정보를 인스턴스 분배기(210)에 제공할 수 있다. 검증 결과는 각 큐레이션 모듈들이 지식 데이터 베이스 구축 작업을 잘 수행하였는지에 대한 결과와 얼마나 신속하게 지식 데이터 베이스 구축 작업을 완료하였는지를 포함할 수 있다. 이후의 지식 데이터 베이스 구축 작업을 위해 인스턴스 분배기(210)는 피드백 정보를 기반으로 각 큐레이션 모듈들에 분배하는 인스턴스들의 개수를 조절할 수 있으며, 지식 데이터 베이스 구축 작업을 잘 수행하지 못하는 일부 큐레이션 모듈에는 인스턴스들을 분배하지 않을 수 있다.In another embodiment, the
또한, 검증기(230)는 상기 검증 결과를 기반으로 큐레이션 모듈 그룹(220) 내의 각 큐레이션 모듈들에 대한 지식 데이터 베이스 구축 작업 재수행, 중단을 제어할 수 있다. 검증기(230)는 큐레이션 모듈 그룹(220)에서 수행된 지식 데이터 베이스 구축 작업이 검증 패스된 때에는, 결과물이 지식 데이터 베이스에 적용되도록 할 수 있다. 데이터 통합 관리부(200)는 생성한 지식 데이터 베이스를 지식 데이터 베이스 저장부(126)에 저장하거나, 또는, 업데이트를 수행할 수 있다.In addition, the
도 5는 본 개시의 일 실시 예에 따른 인스턴스 분배기(210)를 나타내는 블록도이다. 5 is a block diagram illustrating an
도 5를 참조하면, 인스턴스 분배기(210)는 편집 인스턴스 선택부(211), 편집 속성 선택부(212), 큐레이션 모듈 지정부(213), 큐레이션 모듈 정보 저장부(214) 및 피드백 정보 수집부(215)를 포함할 수 있다. 편집 인스턴스 선택부(211)는 통합 데이터들로부터 온톨로지 스키마에 적합한 편집 인스턴스들을 선택할 수 있다. 편집 속성 선택부(212)는 통합 데이터들로부터 선택된 편집 인스턴스들 각각에 적합한 편집 속성들을 선택할 수 있다. 예를 들어, 편집 속성 선택부(212)는 선택된 편집 인스턴스가 '국회의원'인 때에, 이와 가장 관련된 '지역구', '정책', '이력' 등에 관한 속성(또는, 관계)들을 편집 속성으로서 선택할 수 있다.Referring to FIG. 5, the
큐레이션 모듈 지정부(213)는 큐레이션 모듈 정보 저장부(214)로부터 수신한 큐레이션 모듈 정보 및 피드백 정보 수집부(215)로부터 수신한 피드백 정보를 기반으로 선택된 편집 인스턴스들을 큐레이션 모듈들 각각에 분배할 수 있다. 일 실시 예로, 큐레이션 모듈 지정부(213)는 큐레이션 모듈 정부를 기반으로 큐레이션 모듈들 각각이 수행 가능한 인스턴스의 타입에 따라 온톨로지 스키마의 편집 인스턴스들을 나누어 큐레이션 모듈들에 분배할 수 있다. 또한, 큐레이션 모듈 지정부(213)는 각 큐레이션 모듈들의 작업 수행 결과들에 관한 피드백 정보를 기반으로 적응적으로 편집 인스턴스들을 큐레이션 모듈들 각각에 분배할 수 있다. 예를 들어, 큐레이션 모듈 지정부(213)는 선택된 편집 인스턴스들을 제1 그룹 인스턴스, 제2 그룹 인스턴스로 나누어, 각각 제1 큐레이션 모듈, 제2 큐레이션 모듈에 제공할 수 있고, 제1 큐레이션 모듈은 제1 그룹 인스턴스에 대한 지식 데이터 베이스 구축 작업을 수행하고, 제2 큐레이션 모듈은 제2 그룹 인스턴스에 대한 지식 데이터 베이스 구축 작업을 수행할 수 있다.The curation
큐레이션 모듈 정보 저장부(214)는 도 4의 큐레이션 모듈 그룹(220)으로부터 큐레이션 모듈 정보를 수신할 수 있으며, 더 나아가, 각 큐레이션 모듈들에 분배되었던 편집 인스턴스들에 대한 히스토리(history)들이 저장될 수 있다. 인스턴스 분배기(210)는 상기 히스토리들을 기반으로 편집 인스턴스들을 분배할 수 있다. 또한, 인스턴스 분배기(210)는 큐레이션 모듈들 각각으로부터 현재 큐레이션 모듈의 상태(예를 들면, 비지(busy), 유휴(idle)) 관련 정보를 수신할 수 있으며, 이러한 큐레이션 모듈의 상태 관련 정보를 기반으로 편집 인스턴스들을 분배할 수 있다.The curation module
도 6은 본 개시의 일 실시 예에 따른 큐레이션 모듈 그룹(220)을 나타내는 블록도이다.6 is a block diagram illustrating a
도 6을 참조하면, 큐레이션 모듈 그룹(220)은 개별적인 지식 데이터 베이스 구축 작업을 수행할 수 있는 제1 내지 제N 큐레이션 모듈들(220_1~220_N)을 포함할 수 있다. 이하에서는, 제1 큐레이션 모듈(220_1)의 구성을 중심으로 서술하나, 제1 큐레이션 모듈(220_1)의 구성은 다른 큐레이션 모듈(220_2~220_N)에 적용될 수 있음은 분명하다.Referring to FIG. 6, the
제1 큐레이션 모듈(220_1)은 인스턴스 확인부(211_1), 편집 인스턴스 추가 선택부(212_1), 지식 데이터 구축부(213_1) 및 상태 출력부(214_1)를 포함할 수 있다. 인스턴스 확인부(211_1)는 분배된 편집 인스턴스들에 대하여 우선적으로 본인이 처리할 수 있는지 여부를 확인할 수 있다. 전술한 바와 같이, 각 큐레이션 모듈(220_1~220_N) 별로 특화된 인스턴스 테마를 가질 수 있는 바, 인스턴스 확인부(211_1)는 상기 테마가 나타난 큐레이션 모듈 정보를 기반으로 처리 가능한 편집 인스턴스들인지 판별할 수 있다.The first curation module 220_1 may include an instance confirmation unit 211_1, an edit instance addition selection unit 212_1, a knowledge data construction unit 213_1, and a status output unit 214_1. The instance confirmation unit 211_1 may first check whether the edited instances are distributed or not. As described above, since each curation module 220_1 to 220_N may have a specialized instance theme, the instance confirmation unit 211_1 may determine whether the themes are editable editable instances based on the curation module information in which the theme appears. have.
편집 인스턴스 추가 선택부(212_1)는 도 5의 인스턴스 분배기(210)로부터 수신한 편집 인스턴스들에서 온톨로지 스키마에 적합한 편집 인스턴스가 더 존재하는지 온톨로지 스키마를 기반으로 확인하고, 적어도 하나의 편집 인스턴스를 더 추가할 수 있다. 지식 데이터 구축부(213_1)는 분배된 편집 인스턴스들 및 온톨로지 스키마를 기반으로 지식 데이터 베이스 구축 작업을 수행할 수 있다.The editing instance addition selector 212_1 checks whether there are more editing instances suitable for the ontology schema from the editing instances received from the
상태 출력부(214_1)는 지식 데이터 베이스 구축 작업의 결과물을 도 4의 검증기(230)로 출력하고, 인스턴스 분배기(210)는 현재 제1 큐레이션 모듈(220_1)의 동작 상태를 나타내는 상태 정보를 생성하여 출력할 수 있다. 상태 출력부(214_1)는 현재 제1 큐레이션 모듈(220_1)에 분배된 편집 인스턴스들에 대한 지식 데이터 베이스 구축 작업이 완료된 때에, 이를 도 5의 인스턴스 분배기(210)에 알릴 수 있다. 도 5의 인스턴스 분배기(210)는 이러한 알림에 응답하여 제1 큐레이션 모듈(220_1)에 추가적인 편집 인스턴스들(다른 큐레이션 모듈에 의해 처리 불가능함이 확인된 편집 인스턴스들 또는 지식 데이터 베이스 구축 작업이 실패된 편집 인스턴스들을 포함)을 더 분배할 수 있다. The status output unit 214_1 outputs the result of the knowledge database construction work to the
도 7은 본 개시의 일 실시 예에 따른 검증기(230)를 나타내는 블록도이다.7 is a block diagram illustrating a
도 7을 참조하면, 검증기(230)는 구축 작업 불가 확인부(231), 지식 데이터 검증부(232), 지식 데이터 적용부(233), 피드백 생성부(234)를 포함할 수 있다. 구축 작업 불가 확인부(231)는 도 6의 인스턴스 확인부(211_1)에 의해 제1 큐레이션 모듈(220_1)이 분배된 편집 인스턴스들을 처리하지 못하는 때에, 이를 확인하고, 도 5의 인스턴스 분배기(210)에 해당 편집 인스턴스들에 재분배를 요청할 수 있다. 요청에 응답하여, 인스턴스 분배기(210)는 각 큐레이션 모듈들의 상태 정보 및 큐레이션 모듈의 특성을 기반으로 해당 편집 인스턴스들에 대한 재분배를 수행할 수 있다.Referring to FIG. 7, the
지식 데이터 검증부(232)는 도 6의 큐레이션 모듈들(220_1~220_N)에 의해 수행되어 생성된 지식 데이터(또는, 지식 데이터 베이스)를 신뢰성이 보장된 검증 모듈을 이용하여 검증을 수행할 수 있다. 지식 데이터 검증부(232)는 검증 결과가 패스인 때에, 지식 데이터 적용부(233)가 생성된 지식 데이터들을 기존에 저장된 지식 데이터 베이스에 적용될 수 있도록 제어할 수 있다.The knowledge
피드백 생성부(234)는 지식 데이터 검증부(232)의 검증 결과를 포함하는 피드백 정보를 생성하여 도 5의 인스턴스 분배기(210)에 제공할 수 있다. 피드백 생성부(234)는 각 큐레이션 모듈들의 지식 데이터 베이스 구축 작업 실패 횟수를 카운팅하여 임계 값을 초과한 큐레이션 모듈에 대해서는 작업 불가 대상임을 알리는 정보를 생성하여 도 5의 인스턴스 분배기(210)에 제공할 수 있다. 인스턴스 분배기(210)는 이에 응답하여 작업 불가 대상에 해당하는 큐레이션 모듈에는 편집 인스턴스들을 분배하지 않을 수 있다. 피드백 생성부(234)는 도 6의 큐레이션 모듈들(220_1~220_N)에 대한 검증 결과를 누적하여 검증 결과를 기반으로 큐레이션 모듈들(220_1~220_N)의 성능에 대한 정보를 지속적으로 업데이트할 수 있다. 성능에 대한 정보는 하나의 인스턴스에 대한 처리 속도, 구축 작업 실패 횟수 등의 정보를 포함할 수 있다. 도 5의 인스턴스 분배기(210)는 피드백 정보에 포함된 성능에 대한 정보를 기반으로 편집 인스턴스들에 대한 분배를 수행할 수 잇다.The
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.Although the present invention has been described with reference to the embodiments shown in the drawings, these are merely exemplary, and those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. Therefore, the true technical protection scope of the present invention should be determined by the technical spirit of the appended claims.
Claims (8)
서비스 목적에 따라 정의된 온톨로지 스키마를 기반으로 상기 서비스 데이터를 관리하는 서비스 데이터 관리부;
외부의 서로 다른 데이터 소스들로부터 오픈 데이터들을 입력받는 인터페이스부; 및
상기 복수의 오픈 데이터들의 관계를 분석하여 생성한 데이터 통합 규칙을 기반으로 복수의 통합 데이터들을 생성하고, 상기 통합 데이터들 및 상기 온톨로지 스키마를 기반으로 상기 지식 데이터 베이스를 구축하는 데이터 통합부를 포함하며,
상기 데이터 통합부는,
큐레이션 모듈의 특성을 나타내는 큐레이션 모듈 정보 및 큐레이션 모듈의 작업 수행 결과를 나타내는 피드백 정보를 기반으로 상기 지식 데이터 베이스 구축 작업을 위하여 상기 온톨로지 스키마의 복수의 인스턴스(instance) 들을 분배하는 인스턴스 분배기;
상기 인스턴스 분배기로부터 분배된 상기 복수의 인스턴스들을 각각 수신하여 상기 지식 데이터 베이스 구축 작업을 개별적으로 수행하는 복수의 큐레이션 모듈들이 구비된 큐레이션 모듈 그룹; 및
상기 큐레이션 모듈 그룹의 상기 지식 데이터 베이스 구축 작업의 결과를 검증하여 상기 피드백 정보를 생성하는 검증기를 포함하는 것을 특징으로 하는 지식 데이터 베이스 구축 시스템.A service providing unit providing service data requested to the application with reference to the knowledge database;
A service data management unit that manages the service data based on an ontology schema defined according to a service purpose;
An interface unit that receives open data from different external data sources; And
And a data integration unit that generates a plurality of integrated data based on a data integration rule generated by analyzing the relationship of the plurality of open data, and builds the knowledge database based on the integrated data and the ontology schema,
The data integration unit,
An instance distributor for distributing a plurality of instances of the ontology schema for the knowledge database construction task based on the curation module information indicating characteristics of the curation module and feedback information indicating a result of performing the task of the curation module;
A curation module group provided with a plurality of curation modules that respectively receive the plurality of instances distributed from the instance distributor and individually perform the knowledge database construction task; And
And a verifier generating the feedback information by verifying the result of the knowledge database construction work of the curation module group.
상기 인스턴스 분배기는,
상기 큐레이션 모듈 정보를 기반으로 상기 큐레이션 모듈들 각각이 수행 가능한 인스턴스의 타입에 따라 상기 온톨로지 스키마의 복수의 인스턴스들을 나누어 상기 큐레이션 모듈들에 분배하는 것을 특징으로 하는 지식 데이터 베이스 구축 시스템.According to claim 1,
The instance distributor,
A knowledge database building system, characterized in that a plurality of instances of the ontology schema are divided and distributed to the curation modules according to the type of an instance that each of the curation modules can perform based on the curation module information.
상기 인스턴스 분배기는,
상기 온톨로지 스키마의 인스턴스에 대응하는 복수의 속성들 중 상기 인스턴스의 타입을 고려하여 일부만을 선택해 상기 구축 작업을 분배하는 것을 특징으로 하는 지식 데이터 베이스 구축 시스템.According to claim 1,
The instance distributor,
A knowledge database construction system characterized by distributing the construction task by selecting only a part of the plurality of attributes corresponding to the ontology schema instance in consideration of the instance type.
상기 큐레이션 모듈은,
상기 인스턴스 분배기로부터 수신된 상기 지식 데이터 베이스 구축 작업의 복수의 인스턴스들에 대한 처리가 가능한지 여부를 판별하여, 판별 결과를 상기 검증기에 제공하고, 상기 판별 결과를 기반으로 상기 지식 데이터 베이스 구축 작업을 수행하는 것을 특징으로 하는 지식 데이터 베이스 구축 시스템.According to claim 1,
The curation module,
It is determined whether processing of a plurality of instances of the knowledge database construction job received from the instance distributor is possible, and a determination result is provided to the verifier, and the knowledge database construction job is performed based on the determination result Knowledge database construction system, characterized in that.
상기 큐레이션 모듈은,
상기 온톨로지 스키마를 기반으로 수신된 상기 지식 데이터 베이스 구축 작업의 상기 복수의 인스턴스들 외에도 처리 가능한 적어도 하나의 인스턴스를 추가하는 인스턴스 추가 선택부를 더 포함하는 것을 특징으로 하는 지식 데이터 베이스 구축 시스템.The method of claim 4,
The curation module,
The knowledge database construction system further comprises an instance adding selector for adding at least one processable instance in addition to the plurality of instances of the knowledge database construction job received based on the ontology schema.
상기 큐레이션 모듈은,
상기 복수의 인스턴스들에 대한 상기 지식 데이터 베이스 구축 작업을 완료한 때에, 작업 완료를 알리는 신호를 상기 인스턴스 분배기에 제공하는 상태 출력부를 더 포함하고,
상기 인스턴스 분배기는,
상기 작업 완료를 알리는 신호에 응답하여 상기 큐레이션 모듈 그룹 내의 다른 큐레이션 모듈로부터 처리 불가 판별을 받은 적어도 하나의 인스턴스를 상기 큐레이션 모듈에 재분배하는 것을 특징으로 하는 지식 데이터 베이스 구축 시스템.The method of claim 5,
The curation module,
When the knowledge database construction work for the plurality of instances is completed, further includes a status output unit that provides a signal to the instance distributor indicating that the work is completed,
The instance distributor,
Knowledge database construction system, characterized in that to redistribute the at least one instance that is determined to be non-processable from other curation modules in the curation module group in response to the signal indicating the completion of the operation.
상기 검증기는,
상기 큐레이션 모듈 그룹 내의 큐레이션 모듈 별로 검증 결과를 누적하고, 상기 검증 결과를 기반으로 상기 복수의 큐레이션 모듈들의 성능에 대한 정보를 지속적으로 업데이트하고,
상기 피드백 정보는 상기 성능에 대한 정보를 포함하는 것을 특징으로 하는 지식 데이터 베이스 구축 시스템.According to claim 1,
The verifier,
The verification results are accumulated for each curation module in the curation module group, and information about the performance of the plurality of curation modules is continuously updated based on the verification result,
The feedback information includes information about the performance, knowledge database construction system.
상기 검증기는,
상기 큐레이션 모듈 그룹 내의 큐레이션 모듈 별로 수행된 상기 지식 데이터 베이스 구축 작업을 검증하고, 상기 검증 결과를 상기 큐레이션 모듈들에 제공하고,
상기 큐레이션 모듈들은,
상기 검증 결과를 기반으로 상기 지식 데이터 베이스 구축 작업을 재수행하거나, 상기 지식 데이터 베이스 구축 작업을 완료하는 것을 특징으로 하는 지식 데이터 베이스 구축 시스템.
According to claim 1,
The verifier,
Verify the knowledge database construction work performed for each curation module in the curation module group, and provide the verification results to the curation modules,
The curation modules,
Based on the verification result, the knowledge database construction system is performed again or the knowledge database construction system is completed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180151227A KR102121504B1 (en) | 2018-11-29 | 2018-11-29 | System and method for building integration knowledge data base based a plurality of data sources |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180151227A KR102121504B1 (en) | 2018-11-29 | 2018-11-29 | System and method for building integration knowledge data base based a plurality of data sources |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102121504B1 true KR102121504B1 (en) | 2020-06-10 |
Family
ID=71087024
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180151227A KR102121504B1 (en) | 2018-11-29 | 2018-11-29 | System and method for building integration knowledge data base based a plurality of data sources |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102121504B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102195955B1 (en) * | 2020-07-21 | 2020-12-29 | 주식회사 크라우드웍스 | Method for reassigning work having history of return of crowdsourcing based project for artificial intelligence training data generation |
KR102195953B1 (en) * | 2020-07-20 | 2020-12-29 | 주식회사 크라우드웍스 | Method for reassignment of withdrawn work based on reasons for rejection in a crowdsourcing based projects for artificial intelligence training data generation |
CN114064777A (en) * | 2021-11-19 | 2022-02-18 | 杭州雷数科技有限公司 | Configurable method for acquiring data at fixed time, scheduling data, encrypting transmission and visualizing |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060103828A (en) * | 2005-03-28 | 2006-10-04 | 마이크로소프트 코포레이션 | Mapping of a file system model to a database object |
KR20080019439A (en) * | 2006-08-28 | 2008-03-04 | 한국과학기술정보연구원 | System and method for knowledge extension and inference service based on dbms |
KR101684579B1 (en) * | 2014-03-28 | 2016-12-09 | 주식회사 솔트룩스 | System and method for generating knowledge |
KR101739540B1 (en) * | 2016-01-27 | 2017-06-08 | 주식회사 솔트룩스 | System and method for building integration knowledge base based |
KR20170123591A (en) * | 2017-10-23 | 2017-11-08 | 숭실대학교산학협력단 | Ontology reasoning method and apparatus |
-
2018
- 2018-11-29 KR KR1020180151227A patent/KR102121504B1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060103828A (en) * | 2005-03-28 | 2006-10-04 | 마이크로소프트 코포레이션 | Mapping of a file system model to a database object |
KR20080019439A (en) * | 2006-08-28 | 2008-03-04 | 한국과학기술정보연구원 | System and method for knowledge extension and inference service based on dbms |
KR101684579B1 (en) * | 2014-03-28 | 2016-12-09 | 주식회사 솔트룩스 | System and method for generating knowledge |
KR101739540B1 (en) * | 2016-01-27 | 2017-06-08 | 주식회사 솔트룩스 | System and method for building integration knowledge base based |
KR20170123591A (en) * | 2017-10-23 | 2017-11-08 | 숭실대학교산학협력단 | Ontology reasoning method and apparatus |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102195953B1 (en) * | 2020-07-20 | 2020-12-29 | 주식회사 크라우드웍스 | Method for reassignment of withdrawn work based on reasons for rejection in a crowdsourcing based projects for artificial intelligence training data generation |
KR102195955B1 (en) * | 2020-07-21 | 2020-12-29 | 주식회사 크라우드웍스 | Method for reassigning work having history of return of crowdsourcing based project for artificial intelligence training data generation |
CN114064777A (en) * | 2021-11-19 | 2022-02-18 | 杭州雷数科技有限公司 | Configurable method for acquiring data at fixed time, scheduling data, encrypting transmission and visualizing |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Lambrix et al. | SAMBO—a system for aligning and merging biomedical ontologies | |
US7941398B2 (en) | Autopropagation of business intelligence metadata | |
US9223777B2 (en) | Self-learning semantic search engine | |
Debattista et al. | Luzzu--A Framework for Linked Data Quality Assessment | |
US10223650B2 (en) | Enforcing context model based policies with forward chaining | |
US20040054690A1 (en) | Modeling and using computer resources over a heterogeneous distributed network using semantic ontologies | |
KR102121504B1 (en) | System and method for building integration knowledge data base based a plurality of data sources | |
Kolovski et al. | Representing web service policies in owl-dl | |
US20140012988A1 (en) | Provisioning computer resources on a network | |
CN112287114A (en) | Knowledge graph service processing method and device | |
KR101686919B1 (en) | Method and apparatus for managing inference engine based on big data | |
Bruno et al. | Efficient management of product lifecycle information through a semantic platform | |
Pérez et al. | Semantic-based authorization architecture for grid | |
Jabal et al. | SimP: Secure interoperable multi-granular provenance framework | |
EP3076289A1 (en) | Method, program, and apparatus, for managing a stored data graph | |
CN113853597A (en) | Method for inquiring industrial data and inquiring module | |
Villata et al. | A social semantic web access control model | |
Lawall et al. | Integration of dynamic role resolution within the S-BPM approach | |
Hatzi et al. | Semantically aware web service composition through AI planning | |
Höltgen et al. | Implementation of an Open Web Interface for the Container-based Exchange of Linked Building Data | |
Liang et al. | Service mining for Web service composition | |
US20090077021A1 (en) | System for Managing SameAs Relationships Between Ontology Instances and Method for the Same | |
Moser et al. | SAMOA-A semi-automated ontology alignment method for systems integration in safety-critical environments | |
Fisun et al. | Knowledge management applications based on user activities feedback | |
Tran et al. | DECOM: a framework to support evolution of IoT services |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |