KR101788303B1 - Apparatus and meyhod for large scale parallel temporal reasoning - Google Patents

Apparatus and meyhod for large scale parallel temporal reasoning Download PDF

Info

Publication number
KR101788303B1
KR101788303B1 KR1020160038659A KR20160038659A KR101788303B1 KR 101788303 B1 KR101788303 B1 KR 101788303B1 KR 1020160038659 A KR1020160038659 A KR 1020160038659A KR 20160038659 A KR20160038659 A KR 20160038659A KR 101788303 B1 KR101788303 B1 KR 101788303B1
Authority
KR
South Korea
Prior art keywords
knowledge base
time
processing node
hdfs
inference
Prior art date
Application number
KR1020160038659A
Other languages
Korean (ko)
Other versions
KR20170112102A (en
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 KR1020160038659A priority Critical patent/KR101788303B1/en
Publication of KR20170112102A publication Critical patent/KR20170112102A/en
Application granted granted Critical
Publication of KR101788303B1 publication Critical patent/KR101788303B1/en

Links

Images

Classifications

    • G06F17/30731
    • 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/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/174Redundancy elimination performed by the file system
    • G06F16/1744Redundancy elimination performed by the file system using compression, e.g. sparse files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • 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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2219Large Object storage; Management thereof
    • G06F17/30153
    • G06F17/30194
    • G06F17/30318
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명에 따른 대규모 병렬 정성 시간 추론 장치는 다수의 지식 베이스를 하둡 분산 파일 시스템(HDFS) 형태로 저장하는 HDFS부, 둘 이상의 처리 노드부에 각각 태스크(Task)를 할당하는 작업 관리부 및 할당된 태스크에 기초하여 수신된 지식 베이스에 대해 추론 작업을 수행하여 확장된 지식 베이스를 산출하고, 산출된 확장된 지식 베이스를 HDFS부에 저장하는 둘 이상의 처리 노드부를 포함한다.The massively parallel qualitative time inferring apparatus according to the present invention includes an HDFS unit for storing a plurality of knowledge bases in the form of a Hadoop Distributed File System (HDFS), a task management unit for assigning a task to each of the two or more processing node units, And a processing node unit for performing an inference operation on the received knowledge base to calculate an expanded knowledge base and storing the calculated expanded knowledge base in the HDFS unit.

Description

대규모 병렬 정성 시간 추론 장치 및 방법{APPARATUS AND MEYHOD FOR LARGE SCALE PARALLEL TEMPORAL REASONING}[0001] APPARATUS AND MEYHOD FOR LARGE SCALE PARALLEL TEMPORAL REASONING [0002]

본 발명은 시간 추론에 관한 기술로서, 보다 상세하게는 대규모 병렬 정성 시간 추론에 관한 기술이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to time inference, and more particularly, to massively parallel qualitative time inference.

웹(Web)을 이용하는 이용자의 수와 정보의 양이 기하급수적으로 증가함에 따라, 웹 이용자의 요구도 점차 더 다양해지고 복잡해지고 있다. 이에 따라 대규모 비정형 웹 데이터로부터 이용자의 목적에 부합하는 정보만을 효율적으로 추출해내고 이용자의 요구에 효과적으로 답할 수 있는 시맨틱 웹(semantic web) 기술에 관한 연구가 활발히 진행되고 있다. 시맨틱 웹 기술은 응용 영역에 필요한 기초 개념(concept)들과 그들 간의 관계(relationship), 공유 어휘(common vocabulary), 추론 규칙(inference rule) 등을 체계적으로 정의한 온톨로지 지식(ontological knowledge)을 이용함으로써, 프로그램 스스로 웹 콘텐츠의 의미(semantics)를 올바르게 이해하고 작업을 수행할 수 있도록 해준다. 대표적인 온톨로지 표현 언어로는 RDF(Resource Description Framework), OWL(Web Ontology Language) 등이 주로 이용되고 있다.As the number of users who use the Web and the amount of information increase exponentially, the demands of the web users are becoming more diverse and complex. Accordingly, researches on semantic web technology that efficiently extracts only information that meets the user's purpose from large-scale unstructured web data and efficiently responds to user's needs is being actively conducted. Semantic Web technology utilizes ontological knowledge that systematically defines basic concepts for applications, relationships among them, common vocabularies, and inference rules, The program itself allows the user to understand the semantics of the web content and perform the work. RDF (Resource Description Framework) and OWL (Web Ontology Language) are mainly used as representative ontology presentation languages.

최근 공학 기술 분야, 의학 및 신약 기술 분야, 보안 기술 분야 등을 비롯해 다양한 응용 분야들에서 수많은 새로운 사실들과 발견들이 웹을 통해 발표되고 있다. 따라서 이러한 빠른 웹 정보의 변화에 잘 대응하기 위해서는, 시맨틱 웹 기술이 단순히 단편적인 사실과 지식만을 표현하는 데서 벗어나, 해당 사실과 지식이 실제로 유효한 시간(time)과 장소(location)들도 함께 표현하고 그들 간의 관계도 추론할 수 있도록 기술적 확장이 필요하다.Recently, a lot of new facts and discoveries have been published on the web in a variety of applications, including engineering, medicine and drug technology, security technology, and so on. Therefore, in order to cope with such a rapid change of web information, the semantic web technology is moved away from expressing only partial facts and knowledge, and the time and place where the fact and knowledge are actually valid are expressed There is a need for technological extension to be able to infer the relationship between them.

시간 지식과 질의를 처리하는 기존의 많은 시스템들에서는 질의(query)에 대한 답을 얻기 위해, 시간 점(time point)과 시간 간격(time interval)을 나타내는 시간 데이터에 관한 연산(computation of temporal data)에 주로 의존하는 정량적 시간 추론(quantitative temporal reasoning)을 많이 수행하였다.In many existing systems that process time knowledge and queries, computation of temporal data, which represents a time point and a time interval, is used to obtain an answer to a query. , Which is mainly based on quantitative temporal reasoning.

정량적 시간 표현과 추론은 실시간성과 정밀성을 요구하는 생산 자동화, 제어 시스템과 같은 응용 분야에서 더 효과적으로 이용될 수 있는데 반해, 자연어 이해(natural language understanding), 질의-응답 시스템(question-answering system), 의사 결정 지원 시스템(decision support system)과 같은 특정 응용 분야들에서는 사건들 간의 시간 순서 관계를 정성적으로 표현하고 이들을 추론하는 정성적 시간 추론(qualitative temporal reasoning)이 더 효과적으로 이용될 수 있다.Quantitative temporal representation and reasoning can be used more effectively in applications such as production automation and control systems that require real-time and precision, while natural language understanding, question-answering systems, In certain applications, such as decision support systems, qualitative temporal reasoning that qualitatively expresses and inferences of temporal order relationships between events can be used more effectively.

정량적 시간 표현과 추론은 실시간성과 정밀성을 요구하는 생산 자동화, 제어 시스템과 같은 응용 분야에서 더 효과적으로 이용될 수 있는데 반해, 자연어 이해(natural language understanding), 질의-응답 시스템(question-answering system), 의사 결정 지원 시스템(decision support system)과 같은 특정 응용 분야들에서는 이벤트들 간의 정성적 순서 관계를 표현하고 추론하는 정성적 시간 추론이 더 효과적으로 이용될 수 있다.Quantitative temporal representation and reasoning can be used more effectively in applications such as production automation and control systems that require real-time and precision, while natural language understanding, question-answering systems, In certain applications, such as decision support systems, qualitative time inference, which expresses and inferences the qualitative order relation between events, can be used more effectively.

GQR, SOWL, 그리고 CHRONOS에 이르기까지 현재까지 개발된 거의 모든 정성 시간 추론 기술들은 단일 컴퓨터 실행 환경을 가정하고 개발되어, 이들은 공통적으로 웹 스케일의 대규모 지식 베이스를 추론하기에는 성능에 한계가 있다. GQR, SOWL, and CHRONOS, almost all of the qualitative time inference techniques developed so far are assumed to have a single computer execution environment, and they have a limited performance to infer a large scale knowledge base of Web scale in common.

"시구간 기반 시간 정보의 표현과 추론을 위한 시간 온톨로지 언어", 김상균, 이규철, 송미영, 정보과학회논문지: 소프트웨어 및 응용, 36권 7호, pp. 509-522, 2009."Time Ontology Language for Representation and Inference of Time-based Time Information," Sang Kyun Kim, Kyu Chul Lee, and Mi Mi Young, Journal of KISS: Software and Applications, Vol. 36, No. 7, pp. 509-522, 2009.

본 발명이 해결하고자 하는 과제는 다양한 일상의 사건(Event) 사이의 대규모 시간 순서 관계를 자동으로 추론하는 병렬 정성 시간 추론 장치 및 추론 방법을 제공하는 것이다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a parallel qualitative time inference device and a reasoning method that automatically infer large-scale time order relations between various daily events.

본 발명에 따른 대규모 병렬 정성 시간 추론 장치는 다수의 지식 베이스를 하둡 분산 파일 시스템(HDFS) 형태로 저장하는 HDFS부, 둘 이상의 처리 노드부에 각각 태스크(Task)를 할당하는 작업 관리부 및 할당된 태스크에 기초하여 수신된 지식 베이스에 대해 추론 작업을 수행하여 확장된 지식 베이스를 산출하고, 산출된 확장된 지식 베이스를 HDFS부에 저장하는 둘 이상의 처리 노드부를 포함한다.The massively parallel qualitative time inferring apparatus according to the present invention includes an HDFS unit for storing a plurality of knowledge bases in the form of a Hadoop Distributed File System (HDFS), a task management unit for assigning a task to each of the two or more processing node units, And a processing node unit for performing an inference operation on the received knowledge base to calculate an expanded knowledge base and storing the calculated expanded knowledge base in the HDFS unit.

본 발명의 처리 노드부는 지식 베이스에 대해 사전 인코딩 작업을 수행하고, 인코딩 된 지식 베이스에 대해 역 관계 및 동일 관계 추론(Inverse & Equal Reasoning)을 수행하고, 새로운 사실들이 유도되지 않을 때까지 이행 관계 추론(Transitive Reasoning) 및 관계 정제(Refining)를 반복 수행한 후, 추론이 완료된 지식 베이스를 HDFS부에 저장하는 과정을 통해 병렬 정성 시간을 추론할 수 있다.The processing node unit of the present invention performs a pre-encoding operation on the knowledge base, performs an inverse & equality reasoning on the encoded knowledge base, and performs a relational inference < RTI ID = 0.0 > It is possible to infer the parallel qualification time by repeating Transitive Reasoning and Refining, and then storing the inferred knowledge base in the HDFS unit.

이 때, 처리 노드부는 디코딩 작업을 통해 지식 베이스를 텍스트 형태로 변환하고, 텍스트 형태로 변환된 지식 베이스를 HDFS부에 저장한다. 그리고 처리 노드부는 지식 베이스에 포함된 문자열 형태의 각 트리플 문장(Triple Statement)을 숫자 형태의 주어 식별자(Subject ID), 술어 식별자(predicate ID) 및 목적어 식별자(object ID)의 조합으로 변환하여 인코딩 작업을 수행한다. At this time, the processing node unit converts the knowledge base into a text form through a decoding operation, and stores the knowledge base converted into a text form in the HDFS unit. The processing node unit converts each triple statement in the form of a string included in the knowledge base into a combination of a subject ID, a predicate ID, and an object identifier (ID) .

처리 노드부는 이행 관계 추론을 통해 정의된 이행 관계 추론 규칙을 지식 베이스에 적용하며, 이행 관계 추론을 통해 이접 관계(disjunctive relation)의 집합을 축소할 수 있다. 그리고 처리 노드부는 관계 정제 작업을 통해 추론된 사실 사이의 모순을 체크하고 인접 관계 사실을 정제할 수 있다.The processing node applies the migration relationship inferencing rules defined through the migration relationship inference to the knowledge base and can reduce the set of disjunctive relations through the migration relationship inference. Then, the processing node unit can check the contradiction between facts inferred through the relationship refinement operation and refine the neighbor relation facts.

처리 노드부는 지식 베이스를 구성하는 트리플 문장을 주어, 술어 및 목적어 중에서 적어도 하나 이상을 포함하는 구성 요소 별로 분해하고, 각 구성 요소의 통합 자원 식별자(URI)에 고유한 식별자를 부여하여 사전에 등록하고, 동시에 각 구성 요소의 통합 자원 식별자를 사전에 등록된 고유 식별자로 변환한 후, 변환된 구성 요소의 식별자를 결합하여 간결한 트리플 문장을 재구성한다. 또한, 처리 노드부는 인코딩된 지식 베이스에 대해 역 관계 및 동일 관계를 동시에 추론한다. The processing node unit disassembles each constituent element including at least one of the predicate and the object by giving a triple sentence constituting the knowledge base, assigns a unique identifier to the unified resource identifier (URI) of each constituent element, registers it in the dictionary At the same time, the integrated resource identifier of each component is converted into a previously registered unique identifier, and the concatenated triple sentence is reconstructed by combining the identifiers of the converted components. In addition, the processing node part simultaneously infer the inverse relationship and the same relation to the encoded knowledge base.

본 발명에 따란 병렬 정성 시간 추론 장치를 이용한 병렬 정성 시간 추론 방법은 먼저 할당된 태스크에 따라 지식 베이스를 인코딩하고, 인코딩 된 지식 베이스에 대해 역 관계 및 동일 관계 추론(Inverse & Equal Reasoning)을 수행한다. 그리고 새로운 사실들이 유도되지 않을 때까지 이행 관계 추론(Transitive Reasoning) 및 관계 정제(Refining)를 반복 수행하여 지식 베이스를 추론한다. 다음으로, 추론이 완료된 지식 베이스를 HDFS에 저장한다.According to the present invention, the parallel qualitative time inference method using the parallel qualitative time inferencing apparatus first encodes the knowledge base according to the assigned task, and performs an inverse & equality reasoning on the encoded knowledge base . Then we infer the knowledge base by repeating Transitive Reasoning and Refining until new facts are not induced. Next, the inferred knowledge base is stored in HDFS.

본 발명에 따른 대규모 병렬 정성 시간 추론 장치 및 방법은 하둡(Hadoop) 클러스터 시스템과 맵리듀스(MapReduce) 병렬 프레임워크를 이용한 병렬 시간 추론 기술을 통해, 종래의 소규모 시간 추론이 가지는 한계성에서 벗어나 웹 스케일의 대규모 정성 시간 추론을 가능하게 한다. The massively parallel qualitative time inferencing apparatus and method according to the present invention can be applied to a parallel time inference method using a Hadoop cluster system and a MapReduce parallel framework to overcome the limitations of conventional small time inference, Enables massive qualitative time inference.

또한, 본 발명에 따른 대규모 병렬 정성 시간 추론 장치 및 방법은 공간 및 시간 추론 능력이 필수적으로 요구되는 산업 분야인 시맨틱 웹 기반의 정보 검색, 시간-공간 데이터베이스, 지능형 서비스 로봇, 지식 관리 시스템 및 질의-응답 시스템과 같은 분야에 폭넓게 활용될 수 있다.In addition, the massively parallel qualitative time inferencing apparatus and method according to the present invention can be applied to an information search based on semantic web, which is an industry field in which space and time reasoning ability is indispensable, a time-space database, an intelligent service robot, And can be widely used in fields such as response systems.

도 1은 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 시간 온톨로지 일례를 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 이접 관계 서술자 집합의 일례를 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 처리 노드부(130)의 동작을 나타내는 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 처리 노드부(130)의 사전 인코딩 작업(S401)의 처리 과정을 나타내는 도면이다.
도 6a 및 도 6b는 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 처리 노드부(130)의 역 관계 동일 관계 추론 작업(S402)의 처리 과정을 나타내는 도면이다.
도 7a 및 도 7b는 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 처리 노드부(130)의 이행 관계 추론 작업(S403)의 처리 과정을 나타내는 도면이다.
도 8a 및 도 8b는 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 처리 노드부(130)의 관계 정제 작업(S404)의 처리 과정을 나타내는 도면이다.
1 is a block diagram of a massively parallel qualitative time inference apparatus according to an embodiment of the present invention.
2 is a diagram illustrating an example of a time ontology of a massively parallel qualitative time inference apparatus according to an embodiment of the present invention.
3 is a diagram showing an example of a set of disjunctive descriptors of a massively parallel qualitative time inferencing apparatus according to an embodiment of the present invention.
FIG. 4 is a flowchart showing the operation of the processing node unit 130 of the massively parallel qualitative time inferencing apparatus according to an embodiment of the present invention.
FIG. 5 is a diagram illustrating a process of a pre-encoding operation S401 of the processing node unit 130 of the massively parallel qualitative time inferencing apparatus according to an embodiment of the present invention.
6A and 6B are diagrams illustrating a process of inverse relation inference inference operation S402 of the processing node unit 130 of the massively parallel parallel inequality reasoning apparatus according to an embodiment of the present invention.
FIGS. 7A and 7B are diagrams showing a processing procedure of the relational reasoning operation S403 of the processing node unit 130 of the massively parallel qualitative time inferencing apparatus according to an embodiment of the present invention.
8A and 8B are diagrams illustrating a process of a relation refining operation (S404) of the processing node unit 130 of the massively parallel parallel qualitative inferring apparatus according to an embodiment of the present invention.

이하, 본 발명의 실시예를 첨부된 도면들을 참조하여 상세하게 설명한다. 본 명세서에서 사용되는 용어 및 단어들은 실시예에서의 기능을 고려하여 선택된 용어들로서, 그 용어의 의미는 발명의 의도 또는 관례 등에 따라 달라질 수 있다. 따라서 후술하는 실시예에서 사용된 용어는, 본 명세서에 구체적으로 정의된 경우에는 그 정의에 따르며, 구체적인 정의가 없는 경우는 당업자들이 일반적으로 인식하는 의미로 해석되어야 할 것이다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. The terms and words used in the present specification are selected in consideration of the functions in the embodiments, and the meaning of the terms may vary depending on the intention or custom of the invention. Therefore, the terms used in the following embodiments are defined according to their definitions when they are specifically defined in this specification, and unless otherwise specified, they should be construed in a sense generally recognized by those skilled in the art.

도 1은 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 구성도이다.1 is a block diagram of a massively parallel qualitative time inference apparatus according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치는 하둡 맵리듀스(Hadoop MapReduce) 병렬 프로그래밍 프레임워크를 기반으로 병렬 정성 시간을 추론한다.Referring to FIG. 1, a massively parallel qualitative time inferencing apparatus according to an embodiment of the present invention deduces a parallel qualification time based on a Hadoop MapReduce parallel programming framework.

본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치는 작업 관리부(110), 네임 노드부(120), 둘 이상의 처리 노드부(130), HDFS부(140) 및 사용자 처리부(150)를 포함한다. The massively parallel qualitative time inference apparatus according to an embodiment of the present invention includes a task management unit 110, a name node unit 120, two or more processing node units 130, an HDFS unit 140, and a user processing unit 150 do.

처리 노드부(130)는 하둡 클러스터 시스템의 분산 파일 시스템인 HDFS(Hadoop Distributed File System)부(140)로부터 대용량의 지식 베이스를 읽어 들인다. 그리고 처리 노드부(130)는 스케줄러부(131) 및 노드 매니저부(132)를 통해 태스크(Task)를 클러스터를 구성하는 하나 이상의 처리 노드부(130)로 각각 할당하여 전송한다.The processing node unit 130 reads a large-capacity knowledge base from the HDFS (Hadoop Distributed File System) unit 140, which is a distributed file system of the Hadoop cluster system. The processing node unit 130 allocates tasks to one or more processing node units 130 constituting the cluster through the scheduler unit 131 and the node manager unit 132 and transmits the tasks.

둘 이상의 처리 노드부(130)는 작업 관리부(110)에 의해 할당된 태스크에 대해, 역 관계 및 동일 관계 추론 작업(Inverse & Equal Reasoning), 이행 관계 추론 작업(Transitive) 및 관계 정제 작업(Refining)을 포함하는 추론 작업 파이프라인(Pipeline)을 차례대로 병행 수행한다. 그리고, 둘 이상의 처리 노드부(130)는 추론의 결과로 얻어지는 확장된 지식 베이스를 다시 분산 파일 시스템부(140)에 저장한다. 각 구성요소에서 수행되는 세부 절차는 후술하는 도면을 통해 추가적으로 설명하도록 한다.The two or more processing node units 130 may perform inverse and equal inference tasks, transitive inference tasks, and relationship refinement tasks for a task assigned by the task management unit 110. [ And an inference work pipeline (Pipeline) including the inference operation pipeline. The two or more processing node units 130 store the extended knowledge base obtained as a result of the inference in the distributed file system unit 140 again. The details of the procedure performed by each component will be described later with reference to the drawings.

도 2는 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 시간 온톨로지 일례를 나타내는 도면이다.2 is a diagram illustrating an example of a time ontology of a massively parallel qualitative time inference apparatus according to an embodiment of the present invention.

도 2를 참조하면, 도 2에 도시된 시간 온톨로지는 시간 지식 표현의 기초가 되는 시간 온톨로지(Temporal Ontology)의 일부를 도시한다. 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치는 시맨틱 웹(Semantic Web) 표준 온톨로지 언어인 RDF와 OWL을 기초로, 시간 지식을 주어(Subject), 술어(Predicate), 목적어(Object)들로 구성되는 트리플(Triple) 형태로 표현한다. 그리고 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치는 앨랜(Allen)의 간격 대수 이론과 코츠(Kautz)의 점 대수 이론을 확장하여 도 2와 같은 시간 온톨로지와 시간 지식 표현 체계를 이용한다. Referring to FIG. 2, the time ontology shown in FIG. 2 shows a part of a temporal ontology on which a temporal knowledge representation is based. The massively parallel qualitative time inferencing apparatus according to an embodiment of the present invention is based on Semantic Web standard ontology languages RDF and OWL and has a function of subject knowledge, predicate, object, As shown in FIG. The massive parallel qualitative time inference apparatus according to an embodiment of the present invention extends the interval algebra theory of Allen and the point algebra theory of Kautz using the time ontology and the time knowledge representation system as shown in FIG.

도 2의 온톨로지에서 문장(rdfs:Statement) 클래스는 사실(fact)들의 집합을 나타내며, 하나의 사실을 나타내는 각 문장은 RDF와 OWL의 형식에 따라 단순히 주어(subject), 술어(predicate), 목적어(object)들로 구성되는 트리플(triple) 형태로만 표현된다. In the ontology of FIG. 2, the rdfs (Statement) class represents a set of facts, and each sentence representing a fact is simply a subject, a predicate, an object objects are represented in a triple form.

하지만, 본 온톨로지에서 각 문장은 해당 사실이 유효한 시간 정보를 부여해주기 위해 occursOn 프로퍼티를 통해 하나의 시간 이벤트(kgu:Time Event)와 연결될 수 있다. 한편, 하나의 시간 이벤트(kgu:Time Event)는 점 대수 이론과 같이 하나의 시간 점(kgu:Time Point)이 될 수도 있고, 하나의 시간 간격(kgu:Time Interval)이 될 수도 있다. 하나의 시간 간격(kgu:Time Interval)은 각각 kgu:tm_begin 프로퍼티와 kgu:tm_end 프로퍼티를 통해 시작 점(starting point)과 종료 점(ending point)에 해당하는 두 개의 시간 점(kgu:Time Point)들과 연결될 수 있다. 그리고 이 온톨로지의 가장 중요한 부분은 바로 두 개의 시간 이벤트(kgu:Time Event)들 사이의 순서 관계를 나타내는 13 가지의 시간 프로퍼티(Temporal Property)들이다.However, in this ontology, each sentence can be associated with a time event (kgu: Time Event) through the occursOn property to give the facts the time information that is valid. On the other hand, a time event (kgu: Time Event) can be a time point (kgu: Time Point) or a time interval (kgu: Time Interval) as in the point logarithmic theory. One time interval (kgu: Time Interval) consists of two time points (kgu: Time Points) corresponding to the starting and ending points through the kgu: tm_begin property and the kgu: tm_end property, Lt; / RTI > And the most important part of this ontology is thirteen temporal properties that represent the order relation between two time events (kgu: Time Events).

도 3은 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 이접 관계 서술자 집합의 일례를 나타내는 도면이다.3 is a diagram showing an example of a set of disjunctive descriptors of a massively parallel qualitative time inferencing apparatus according to an embodiment of the present invention.

도 3을 참조하면, 도 3은 13가지의 시간 순서 관계 프로퍼티, 즉 시간 서술자(Temporal Property)로부터 공간 이행 관계 추론을 통해 도출할 수 있는 28개의 축소된 이접 관계(disjunctive relation)의 집합을 나타낸다. 13 개의 시간 순서관계 서술자들로부터 만들 수 있는 가능한 모든 이접 관계들은 이론적으로는 총 213개가 존재한다. Referring to FIG. 3, FIG. 3 shows a set of 28 disjunctive relations that can be derived through spatial transition relationship inferences from 13 temporal relationship properties, i.e., temporal properties. There are a total of 2 13 theoretically possible all possible relations from the 13 time order relation descriptors.

하지만, 시간 이행 관계 추론을 위해 가능한 모든 이접 관계들의 조합 표(composition table)를 구성하면, 이 조합 표는 213*213의 크기를 갖기 때문에, 이 조합 표를 저장하고 추론에 참조하기 위해서는 매우 큰 기억 공간과 많은 계산 시간을 요구하게 된다. 이러한 문제점을 극복하기 위해 본 발명에서는 시뮬레이션 추론과정을 거쳐 이행 관계 추론 과정 중에 실제 등장 가능한 이접 관계들의 집합을 산출한다.However, when constructing a composition table of all possible relations for temporal relationship inferences, this combination table has a size of 2 13 * 2 13 , so it is very difficult to store this combination table and refer to it It requires a large storage space and a lot of calculation time. In order to overcome such a problem, the present invention calculates a set of real relations that can be appeared during the relational reasoning process through a simulation inference process.

본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치는 이접 관계들의 집합을 산출한 결과, 213개의 이접 관계들 중 도 3에 열거한 총 28 개의 이접 관계들만 추론과정에서 발생한다. 반면에, 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치에서는 나머지 많은 이접 관계들은 실제로는 생성되지 않는다.As a result of calculating the set of disjunctive relations according to the embodiment of the present invention, only 28 disjunctive relations listed in FIG. 3 among the 2 13 disjunctive relations occur in the inference process. On the other hand, in the massively parallel qualitative time inference apparatus according to the embodiment of the present invention, many other disconnection relations are not actually generated.

따라서 본 발명에서는 이행 관계 추론 규칙을 213*213 크기의 낭비적인 이접 관계 조합 표 대신 도 3에 열거한 28 개의 이접 관계들의 조합만을 표현한 28*28 크기의 이접 관계 조합 표로 축소 및 정의할 수 있다. 이와 같은 최적화된 이접 관계 집합의 발견과 조합 표의 축소는 시간 추론 전반에 걸쳐 연산량을 감소시켜 성능을 향상시킬 수 있다.Therefore, in the present invention, instead of the wasteful combination table of 2 13 * 2 13 size, the transfer relation reasoning rule can be reduced and defined as a 28 * 28 size combination table representing only 28 combinations of the disjunctive relations listed in FIG. have. The discovery of such an optimized disjunctive set and the reduction of the combinatorial table can improve performance by reducing the amount of computation over time reasoning.

도 4는 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 처리 노드부(130)의 동작을 나타내는 흐름도이다.FIG. 4 is a flowchart showing the operation of the processing node unit 130 of the massively parallel qualitative time inferencing apparatus according to an embodiment of the present invention.

도 1 및 도 4를 참조하면, 본 발명에 따른 대규모 병렬 정성 시간 추론 장치는 작업 관리부(110)에 의해 태스크가 둘 이상의 처리 노드부(130)로 각각 전송된다.Referring to FIG. 1 and FIG. 4, a task is transferred to two or more processing node units 130 by a task management unit 110, respectively, in a large-scale parallel qualitative time inferencing apparatus according to the present invention.

처리 노드부(130)는 먼저 사전 인코딩(Encoding) 작업을 수행한다(S401). 본 발명에 따른 병렬 정성 시간 추론 장치의 처리 노드부(130)에서 가장 먼저 수행되는 맵리듀스 작업은 사전 인코딩 작업이다. 사전 인코딩 작업은 지식 베이스에 포함된 문자열 형태의 각 트리플 문장(Triple Statement)를 숫자 형태의 주어 식별자(Subject ID), 술어 식별자(predicate ID), 목적어 식별자(object ID)들의 조합으로 변환한다. 이를 통해, 추론 작업 이전에 미리 지식 베이스의 크기를 효과적으로 축소한다. 이러한 사전 인코딩 작업은 추론 작업 전반의 효율성을 높일 수 있다.The processing node unit 130 first performs a pre-encoding operation (S401). The mapping task performed first in the processing node unit 130 of the parallel qualitative time inferencing apparatus according to the present invention is a pre-encoding task. The dictionary encoding task converts each triple statement in the form of a string contained in the knowledge base into a combination of a numeric subject ID, a predicate ID, and an object identifier (object ID). This effectively reduces the size of the knowledge base before inferencing. This pre-encoding operation can increase the efficiency of the whole reasoning work.

다음으로, 인코딩 작업이 끝난 지식 베이스에 대해, 처리 노드부(130)는 역 관계 및 동일 관계 추론(Inverse & Equal Reasoning) 작업을 수행한다(S402). S402 단계에서는 인코딩된 지식 베이스에 대해 역 관계와 동일 관계를 동시에 추론한다.Next, the processing node unit 130 performs an inverse & equality reasoning operation on the encoded knowledge base (S402). In step S402, the inverse relation and the same relation are simultaneously inferred for the encoded knowledge base.

그리고 처리 노드부(130)는 이어서 더 이상 새로운 사실들이 유도되지 않을 때까지, 이행 관계 추론(Transitive Reasoning) 작업(S403)과 관계 정제(Refining) 작업(S404)을 수행한다. 이행 관계 추론 작업에서는 앞서 정의한 이행 관계 추론 규칙들을 적용하여 새로운 사실들을 유도하며, 관계 정제 작업에서는 추론된 사실들 간의 모순을 체크하고 인접 관계 사실들을 간결하게 정제하는 일을 수행한다.The processing node unit 130 then performs a Transitive Reasoning operation S403 and a Refining operation S404 until no further new facts are derived. In the relational reasoning work, we apply the previously defined relational reasoning rules to induce new facts. In the relationship refining work, we check the contradictions between the inferred facts and refine the adjacency facts concisely.

처리 노드부(130)는 트리플 문장이 획득되었는지 여부를 판단(S405)하여, 이행 관계 추론 작업(S403) 및 관계 정제 작업(S404)를 차례대로 반복하여 수행한다.The processing node unit 130 determines whether or not the triple sentence has been acquired (S405), and repeats the migration relationship reasoning operation (S403) and the relationship refining operation (S404) in order.

트리플 문장이 획득되면, 처리 노드부(130)는 사전 디코딩(Decoding) 작업을 수행한다(S406). 처리 노드부(130)는 디코딩 작업을 통해 추론이 완료된 최종 결과 지식 베이스를 다시 원래 모습인 텍스트 형태로 변환한다. 그리고 처리 노드부(130)는 텍스트 형태로 변환된 지식 베이스를 HDFS부(140)에 다시 저장한다.When the triple sentence is obtained, the processing node unit 130 performs a pre-decoding operation (S406). The processing node unit 130 converts the final result knowledge base, whose inference is completed through the decoding operation, back to the text form of the original appearance. Then, the processing node unit 130 stores the knowledge base converted into the text form again in the HDFS unit 140.

도 5는 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 처리 노드부(130)의 사전 인코딩 작업(S401)의 처리 과정을 나타내는 도면이다.FIG. 5 is a diagram illustrating a process of a pre-encoding operation S401 of the processing node unit 130 of the massively parallel qualitative time inferencing apparatus according to an embodiment of the present invention.

도 4 및 도 5를 참조하면, 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 처리 노드부(130)는 가장 먼저 수행되는 맵리듀스 작업으로 사전 인코딩 작업을 수행한다. 사전 인코딩 작업은 지식 베이스에 포함된 문자열 형태의 각 트리플 문장(Triple Statement)를 숫자 형태의 주어 식별자(Subject ID), 술어 식별자(predicate ID), 목적어 식별자(object ID)들의 조합으로 변환한다. 이를 통해, 추론 작업 이전에 미리 지식 베이스의 크기를 효과적으로 축소한다.Referring to FIGS. 4 and 5, the processing node unit 130 of the massively parallel qualitative time inferencing apparatus according to an embodiment of the present invention performs a pre-encoding operation with the mapping task performed first. The dictionary encoding task converts each triple statement in the form of a string contained in the knowledge base into a combination of a numeric subject ID, a predicate ID, and an object identifier (object ID). This effectively reduces the size of the knowledge base before inferencing.

예컨대, "<http://kgu//a> <http://kgu//after> <http://kgu//b>" 와 같은 URI들을 포함하는 긴 문자열 형태의 트리플 문장들을 사전(dictionary)을 이용해 "100 41 101"와 같이 숫자로 된 짧은 식별자(ID)들의 조합으로 변환한다. 사전에는 원래 주어, 술어, 목적어의 URI들과 그들에 대응되는 각각 식별자들을 함께 저장한다다. For example, triple sentences in the form of long strings containing URIs such as < http: // kgu // a> <http: // kgu // after> ) Into a combination of numeric short identifiers (IDs) such as "100 41 101 &quot;. The dictionary stores the URIs of the original subject, the predicate, the object and their corresponding identifiers together.

이와 같은 인코딩 작업은 도 5와 같이 2 개의 순차적인 세부 맵리듀스(MapReduce) 작업들로 구성된다. 제1 작업(510)에서는 지식 베이스를 구성하는 각 트리플 문장을 주어, 술어, 목적어 등 구성 요소별로 분해하고, 각 구성 요소의 URI에 고유한 식별자(ID)를 부여하여 사전에 등록한다. 그와 동시에 각 구성 요소의 URI를 사전에 등록된 고유 식별자로 변환한다.Such an encoding operation consists of two sequential detailed MapReduce operations as shown in FIG. In the first operation 510, each triple sentence constituting the knowledge base is given, and decomposed into constituent elements such as predicate and object, and an identifier (ID) unique to the URI of each constituent element is given and registered in advance. At the same time, the URI of each component is converted into a unique identifier registered in advance.

제2 작업(520)에서는 변환된 구성 요소들의 식별자들을 결합하여, 식별자들로만 구성된 간결한 트리플 문장을 재구성한다. 시간 추론 작업들이 모두 완료된 후에는 최종 결과 지식 베이스를 다시 본래의 모습인 문자열 형태로 재 변환하는 디코딩(Decoding) 작업이 수행된다. 디코딩 작업에서는 인코딩 작업 때 만들어 둔 사전(dictionary)을 이용해, 각 문장에 포함된 식별자(ID)들을 다시 원래의 URL로 변환하는 일을 수행한다.The second task 520 combines the identifiers of the transformed components to reconstruct a concise triple sentence consisting only of the identifiers. After all the time inference tasks are completed, a decoding operation is performed to retranslate the final result knowledge base back to the original character string form. In the decoding task, the IDs included in each sentence are converted back to the original URL by using a dictionary created during the encoding operation.

도 6a 및 도 6b는 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 처리 노드부(130)의 역 관계 동일 관계 추론 작업(S402)의 처리 과정을 나타내는 도면이다.6A and 6B are diagrams illustrating a process of inverse relation inference inference operation S402 of the processing node unit 130 of the massively parallel parallel inequality reasoning apparatus according to an embodiment of the present invention.

도 6a 및 도 6b를 참조하면, 처리 노드부(130)는 인코딩 작업이 끝난 지식 베이스에 대해 역 관계 및 동일 관계 추론(Inverse & Equal Reasoning) 작업을 수행한다. 이 때, 처리 노드부(130)는 인코딩된 지식 베이스에 대해 역 관계와 동일 관계를 동시에 추론한다.Referring to FIGS. 6A and 6B, the processing node unit 130 performs an inverse & equality Reasoning operation on the encoded knowledge base. At this time, the processing node unit 130 simultaneously infer the inverse relation and the same relation to the encoded knowledge base.

도 6a는 하나의 맵리듀스 작업으로 구현하는 역 관계 및 동일 관계 추론의 일례를 보여준다. 이 작업에서는, 예컨대, "a after b"라는 두 이벤트 a와 b의 순서 관계를 나타내는 하나의 사실에 대해, 역 관계(inverse relation)를 나타내는 "b before a"와 동일 관계(equal relation)를 나타내는 "a equal a", "b equal b" 들을 각각 유도한다. 이를 위해, 맵 단계에서는 역 관계를 나타내는 "b before a"를 키(key)로, 널(null)을 값(value)로 갖는 (키, 값) 쌍을 생성한다. 이어서 리듀스 단계에서는 하나의 키 "b before a"에 대해, 동일 관계들인 "a equal a"와 "b equal b" 들을 추가적으로 생성하여 그 결과들을 출력한다. 6b는 도 6a에서 설명된 한 쌍의 맵 함수와 리듀스 함수로 구현한 역 관계 및 동일 관계 추론 작업 알고리즘을 나타낸다.FIG. 6A shows an example of an inverse relation and an identical relation inference to be implemented by one mapping task. In this work, for example, a fact indicating the order relation of two events a and b, "a after b", represents an equal relation to "b before a" indicating an inverse relation "a equal a" and "b equal b", respectively. To do this, the map step generates a (key, value) pair having "b before a" representing the inverse relationship as a key and null as a value. In the next step, the same relations "a equal a" and "b equal b" are additionally generated for one key "b before a", and the results are output. 6b shows an inverse relation and an inference relation operation algorithm implemented by the pair of map functions and the reduction function shown in FIG. 6A.

도 7a 및 도 7b는 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 처리 노드부(130)의 이행 관계 추론 작업(S403)의 처리 과정을 나타내는 도면이다.FIGS. 7A and 7B are diagrams showing a processing procedure of the relational reasoning operation S403 of the processing node unit 130 of the massively parallel qualitative time inferencing apparatus according to an embodiment of the present invention.

도 7a 및 도 7b를 참조하면, 처리 노드부(130)는 더 이상 새로운 사실들이 유도되지 않을 때까지, 이행 관계 추론(Transitive Reasoning) 작업(S403)과 관계 정제(Refining) 작업(S404)을 수행한다. 이행 관계 추론 작업에서는 앞서 정의한 이행 관계 추론 규칙들을 적용하여 새로운 사실들을 유도한다.Referring to FIGS. 7A and 7B, the processing node unit 130 performs a Transitive Reasoning operation (S403) and a Refining operation (S404) until new facts are no longer derived do. In the migration relation reasoning work, new rules are derived by applying the migration relation reasoning rules defined above.

도 7a는 하나의 맵리듀스 작업으로 구현하는 이행 관계 추론(Transitive Reasoning)의 일례를 보여준다. 이행 관계 추론 작업은 이접 관계 조합 표를 이용하여, 트리플 문장들로 표현된 2 개의 사실들부터 새로운 이접 관계 사실을 유도해내는 작업이다. 예컨대, 사건 a, b, c에 관한 "a contains(di) b" 와 "b metby(mi) c"라는 2 개의 기존 사실들로부터 "a overlappedby(oi) | contains(di) | startedby(si) c"라는 새로운 이접 관계(disjunctive relation) 사실을 유도한다. Figure 7A shows an example of Transitive Reasoning implemented with one MapReduce operation. The work of relational reasoning is to derive new relational facts from two facts represented by triple sentences using the relational combination table. For example, "a overlappedby (oi) | contains (di) | startedby (si)" from two existing facts "a contains (di) b" and "b metby c ", a new disjunctive relation.

이를 위해, 맵 단계에서는 각 문장에서 주어와 목적어를 추출하여, 주어와 목적어를 키(key)로, 원래 문장에서 키의 역할을 나타내는 플래그(flag)와 원래 문장을 결합하여 값(value)으로 하는 (키, 값) 쌍들을 만든다. 키의 역할이 원래 문장에서 주어(subject)이면, 플래그는 s로 표기하고, 목적어(object)이면, 플래그는 o로 표기한다. To do this, in the map step, the subject and object are extracted from each sentence, and the subject and the object are used as a key, and a flag indicating the role of the key in the original sentence is combined with the original sentence to be a value (Key, value) pairs. If the role of the key is the subject in the original sentence, the flag is denoted by s, and if it is an object, the flag is denoted by o.

즉, "a contains b"로부터는 (a, <s, a contains b>), (b, <o, a contains b>)와 같은 2 개의 (키, 값) 쌍들이 만들어진다. 이어서 리듀스 단계에서는 키가 동일한 (b, <o, a contains b>)와 (b, <s, b metby c>)에 대해, 역할 플래그가 목적어(o)를 나타내면 이접 관계 조합 표(composition table)의 contains(di) 행(row)과 대응시키고, 플래그가 주어(s)를 나타내면 조합 표의 metby(mi) 열(column)과 대응시켜 서로 교차하는 난(entry)에서 지정하는 방식대로 새로운 이접 관계 사실인 "a | overlappedby(oi) | contains(di) | startedby(si) | c"를 유도해낸다. That is, two (key, value) pairs such as (a, <s, a contains b>) and (b, <o, a contains b>) are created from "a contains b". Then, in the redes step, if the role flag indicates object (o) for the same key (b, <o, a contains b>) and (b, <s, b metby c> (Mi) column of the combination table when the flag indicates the subject (s), and a new inter-relationship (A) overlappedby (oi) | contains (di) | startedby (si) | c ".

도 7b는 상술한 한 쌍의 맵 함수와 리듀스 함수로 구현한 이행 관계 추론 알고리즘의 일례를 나타낸다.FIG. 7B shows an example of a migration relation reasoning algorithm implemented by the above-described pair of map functions and a reduction function.

도 8a 및 도 8b는 본 발명의 일 실시예에 따른 대규모 병렬 정성 시간 추론 장치의 처리 노드부(130)의 관계 정제 작업(S404)의 처리 과정을 나타내는 도면이다.8A and 8B are diagrams illustrating a process of a relation refining operation (S404) of the processing node unit 130 of the massively parallel parallel qualitative inferring apparatus according to an embodiment of the present invention.

도 8a 및 도 8b를 참조하면, 처리 노드부(130)는 이어서 더 이상 새로운 사실들이 유도되지 않을 때까지, 이행 관계 추론 작업(S403)과 관계 정제 작업(S404)을 수행한다. 관계 정제 작업에서는 추론된 사실들 간의 모순을 체크하고 이접 관계 사실들을 간결하게 정제하는 일을 수행한다.Referring to FIGS. 8A and 8B, the processing node unit 130 then performs the relational reasoning operation S403 and the relational refinement operation S404 until no more new facts are derived. In relation refinement work, we check contradictions between inferred facts and perform refinement of mutual relations facts.

도 8a는 하나의 맵리듀스 작업으로 구현되는 관계 정제(Refining) 작업의 일례를 보여준다. 관계 정제 작업은 추론된 사실들 간의 불일치성을 체크하고 이접 관계 사실들을 간결하게 정제하는 일을 수행한다. 예컨대, 추론을 진행하는 동안에"a overlappedby(oi) b"와 "a contains(di) | startedby(si) b"라는 두 사실이 유도되었다고 하자. 이 경우 동일한 두 이벤트 a와 b에 대해, 이 두 사실은 서로 동시에 만족할 수 있는 순서 관계를 전혀 포함하고 있지 않기 때문에 서로 불일치성 혹은 모순을 보인다고 판단할 수 있다. Figure 8A shows an example of a relationship refining operation implemented with one MapReduce operation. Relational refinement works to check for discrepancies between inferred facts and to refine interdependent facts. For example, suppose that during the inference, two facts are derived: "a overlappedby (oi) b" and "a contains (di) | In this case, the two facts for the same two events a and b can be judged to show discrepancies or contradictions because they do not contain any satisfactory order relation at the same time.

반면에, "a overlappedby(oi) b"와"a overlappedby(oi) | contains(di) | startedby(si) b" 라는 두 사실들의 경우, 두 이벤트 a와 b에 대해 순서 관계 overlappedby(oi)를 공통으로 포함하고 있으므로 서로 모순을 갖지 않는다고 판단하며, 서로 다른 두 사실은 공통 순서 관계들만을 포함한 하나의 사실 "a overlappedby b" 로 대체함으로써 지식을 보다 간결하게 정제할 수 있다. On the other hand, for two facts, "a overlappedby (oi) b" and "a overlappedby (oi) And that two different facts are replaced by a fact "a overlappedby b" which contains only common order relations, so that knowledge can be refined more concisely.

이를 위해, 하나의 MapReduce 작업으로 구현되는 관계 정제 작업에서는 "a overlappedby(oi) b", "a during(d) b", "a overlappedby(oi) | contains(di) | startedby(si) b" 등과 같은 시간 관계 사실들이 입력으로 주어졌을 때, 맵 단계에서는 각 문장의 주어와 목적어를 결합하여 이것을 키(key)로, 원래 문장을 값(vlaue)으로 하는 (ab, <a oi b>), (ac, <a d c>), (ab, <a oi | di | si b>) 와 같은 (키, 값) 쌍들을 만든다. To do this, in a relational refinement task implemented by a single MapReduce task, "a overlappedby (oi) b", "a during (d) b" (Ab, <a oi b>), which combines the subject and object of each sentence into a key and the original sentence as a vlaue, (key, value) pairs such as (ac, <adc>), (ab, <a oi | di | si b>).

이와 같은 과정을 통해 같은 주어와 목적어를 가진 문장들끼리 그룹화(grouping)가 이루어진다. 리듀스 단계에서는 같은 키를 가진, 즉 같은 주어와 목적어를 가진 문장들에 대해 이접 관계들의 교집합(intersection)을 구한 다음, 원래 문장들을 대신하는 보다 정제된 하나의 문장 "a overlappedby(oi) b"를 결과로 출력한다. 도면 8b는 한 쌍의 맵 함수와 리듀스 함수로 구현한 관계 정제 알고리즘의 세부 과정을 나타낸다.Through this process, sentences with the same subject and object are grouped together. In the redusing phase, we obtain the intersection of disjunctive relations for sentences with the same key, the same subject and object, and then a more refined sentence "a overlappedby (oi) b" As a result. 8B shows a detailed process of a relation refinement algorithm implemented with a pair of map functions and a reduction function.

상술한 내용을 포함하는 본 발명은 컴퓨터 프로그램으로 작성이 가능하다. 그리고 상기 프로그램을 구성하는 코드 및 코드 세그먼트는 당분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 상기 작성된 프로그램은 컴퓨터가 읽을 수 있는 기록매체 또는 정보저장매체에 저장되고, 컴퓨터에 의하여 판독되고 실행함으로써 본 발명의 방법을 구현할 수 있다. 그리고 상기 기록매체는 컴퓨터가 판독할 수 있는 모든 형태의 기록매체를 포함한다.The present invention including the above-described contents can be written in a computer program. And the code and code segment constituting the program can be easily deduced by a computer programmer of the field. In addition, the created program can be stored in a computer-readable recording medium or an information storage medium, and can be read and executed by a computer to implement the method of the present invention. And the recording medium includes all types of recording media readable by a computer.

이상 바람직한 실시예를 들어 본 발명을 상세하게 설명하였으나, 본 발명은 전술한 실시예에 한정되지 않고, 본 발명의 기술적 사상의 범위 내에서 당분야에서 통상의 지식을 가진자에 의하여 여러 가지 변형이 가능하다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, It is possible.

110: 작업 관리부
120: 네임 노드부
130: 처리 노드부
140: HDFS부
150: 사용자 처리부
110:
120: Name node unit
130: Processing node unit
140: HDFS section
150:

Claims (12)

다수의 지식 베이스를 하둡 분산 파일 시스템(HDFS) 형태로 저장하는 HDFS부;
둘 이상의 처리 노드부에 각각 태스크(Task)를 할당하는 작업 관리부; 및
할당된 태스크에 기초하여 상기 HDFS부로부터 수신된 지식 베이스에 대해 추론 작업을 수행하여 확장된 지식 베이스를 산출하고, 산출된 확장된 지식 베이스를 HDFS부에 저장하는 둘 이상의 처리 노드부;
를 포함하고,
상기 수신된 지식 베이스에 포함된 문자열 형태의 각 트리플 문장(Triple Statement)은 점 대수 이론과 같은 하나의 시간 점 또는 하나의 시간 간격으로 구성된 두 개의 시간 이벤트 사이의 순서 관계를 나타내는 시간 프로퍼티를 포함하는 대규모 병렬 정성 시간 추론 장치.
An HDFS unit for storing a plurality of knowledge bases in the form of a Hadoop Distributed File System (HDFS);
A task management unit for assigning a task to each of the two or more processing node units; And
At least two processing node units for performing an inference operation on the knowledge base received from the HDFS unit based on the assigned task to calculate an expanded knowledge base and storing the calculated expanded knowledge base in the HDFS unit;
Lt; / RTI &gt;
Each triple statement in the form of a string contained in the received knowledge base includes a time property indicating an order relation between two time events consisting of one time point such as a point algebra theory or one time interval Massive parallel qualitative time deduction device.
제1항에 있어서,
상기 처리 노드부는
상기 지식 베이스에 대해 사전 인코딩 작업을 수행하고, 인코딩 된 지식 베이스에 대해 역 관계 및 동일 관계 추론(Inverse & Equal Reasoning)을 수행하고, 새로운 사실들이 유도되지 않을 때까지 이행 관계 추론(Transitive Reasoning) 및 관계 정제(Refining)를 반복 수행한 후, 추론이 완료된 지식 베이스를 HDFS부에 저장하는 것을 특징으로 하는 대규모 병렬 정성 시간 추론 장치.
The method according to claim 1,
The processing node unit
Performing a pre-encoding operation on the knowledge base, performing an inverse & equality Reasoning on the encoded knowledge base, and performing Transitive Reasoning &lt; RTI ID = 0.0 &gt; Wherein the refining is performed repeatedly, and then the inferred knowledge base is stored in the HDFS unit.
제2항에 있어서,
상기 처리 노드부는 디코딩 작업을 통해 지식 베이스를 텍스트 형태로 변환하고, 텍스트 형태로 변환된 지식 베이스를 HDFS부에 저장하는 것을 특징으로 하는 대규모 병렬 정성 시간 추론 장치.
3. The method of claim 2,
Wherein the processing node unit converts the knowledge base into a text form through a decoding operation, and stores the knowledge base converted into a text form into the HDFS unit.
제2항에 있어서,
상기 처리 노드부는,
지식 베이스에 포함된 문자열 형태의 각 트리플 문장(Triple Statement)을 숫자 형태의 주어 식별자(Subject ID), 술어 식별자(predicate ID) 및 목적어 식별자(object ID)의 조합으로 변환하여 인코딩 작업을 수행하는 것을 특징으로 하는 대규모 병렬 정성 시간 추론 장치.
3. The method of claim 2,
The processing node unit,
It is necessary to convert each triple statement in the form of a string included in the knowledge base into a combination of a numerical subject ID, a predicate ID, and an object identifier (object ID) Massively parallel qualitative time deduction device.
제2항에 있어서,
상기 처리 노드부는 이행 관계 추론을 통해 정의된 이행 관계 추론 규칙을 지식 베이스에 적용하며, 이행 관계 추론을 통해 이접 관계(disjunctive relation)의 집합을 축소하는 것을 특징으로 하는 대규모 병렬 정성 시간 추론 장치.
3. The method of claim 2,
Wherein the processing node unit applies the migration relationship reasoning rules defined through the migration relationship inference to the knowledge base and reduces the set of disjunctive relations through the migration relationship inference.
제2항에 있어서,
상기 처리 노드부는 관계 정제 작업을 통해 추론된 사실 사이의 모순을 체크하고 인접 관계 사실을 정제하는 것을 특징으로 하는 대규모 병렬 정성 시간 추론 장치.
3. The method of claim 2,
Wherein the processing node unit checks the contradiction between the facts inferred through the relationship refining operation and refines the adjacency relationship fact.
제2항에 있어서,
상기 처리 노드부는 지식 베이스를 구성하는 트리플 문장을 주어, 술어 및 목적어 중에서 적어도 하나 이상을 포함하는 구성 요소 별로 분해하고, 각 구성 요소의 통합 자원 식별자(URI)에 고유한 식별자를 부여하여 사전에 등록하고, 동시에 각 구성 요소의 통합 자원 식별자를 사전에 등록된 고유 식별자로 변환한 후, 변환된 구성 요소의 식별자를 결합하여 간결한 트리플 문장을 재구성하는 것을 특징으로 하는 대규모 병렬 정성 시간 추론 장치.
3. The method of claim 2,
The processing node unit disassembles each constituent element including at least one of predicates and objects by giving a triple sentence constituting a knowledge base, assigns a unique identifier to the unified resource identifier (URI) of each constituent element, And concurrently reconstructing a concise triple sentence by converting an integrated resource identifier of each constituent element into a previously registered unique identifier and combining the identifiers of the converted constituent elements.
제2항에 있어서
상기 처리 노드부는,
인코딩된 지식 베이스에 대해 역 관계 및 동일 관계를 동시에 추론하는 것을 특징으로 하는 대규모 병렬 정성 시간 추론 장치.
The method according to claim 2, wherein
The processing node unit,
And simultaneously infer the inverse relation and the same relation to the encoded knowledge base.
제1항에 따른 대규모 병렬 정성 시간 추론 장치를 이용한 병렬 정성 시간 추론 방법에 있어서,
할당된 태스크에 따라 지식 베이스를 인코딩하는 단계;
인코딩 된 지식 베이스에 대해 역 관계 및 동일 관계 추론(Inverse & Equal Reasoning)을 수행하는 단계;
새로운 사실들이 유도되지 않을 때까지 이행 관계 추론(Transitive Reasoning) 및 관계 정제(Refining)를 반복 수행하는 단계; 및
추론이 완료된 지식 베이스를 HDFS에 저장하는 단계;
를 포함하며,
상기 지식 베이스에 포함된 문자열 형태의 각 트리플 문장(Triple Statement)은 점 대수 이론과 같은 하나의 시간 점 또는 하나의 시간 간격으로 구성된 두 개의 시간 이벤트 사이의 순서 관계를 나타내는 시간 프로퍼티를 포함하는 것을 특징으로 하는 대규모 병렬 정성 시간 추론 방법.
A parallel qualitative time inference method using the massively parallel qualitative time inference apparatus according to claim 1,
Encoding a knowledge base according to an assigned task;
Performing inverse & Equal Reasoning on the encoded knowledge base;
Repeating Transitive Reasoning and Refining until new facts are not induced; And
Storing the inferred knowledge base in the HDFS;
/ RTI &gt;
Each triple statement in the form of a character string included in the knowledge base includes a time property indicating an order relation between two time events composed of one time point such as the point logarithmic theory or one time interval A large parallel concurrency time inference method.
제9항에 있어서,
추론이 완료된 지식 베이스를 HDFS에 저장하는 단계는 디코딩 작업을 통해 지식 베이스를 텍스트 형태로 변환하고, 텍스트 형태로 변환된 지식 베이스를 HDFS에 저장하는 것을 특징으로 하는 대규모 병렬 정성 시간 추론 방법.
10. The method of claim 9,
Wherein the step of storing the inferred knowledge base in the HDFS comprises converting the knowledge base into a text form through a decoding operation and storing the knowledge base converted into a text form in the HDFS.
제9항에 있어서,
상기 인코딩하는 단계는,
지식 베이스에 포함된 문자열 형태의 각 트리플 문장(Triple Statement)을 숫자 형태의 주어 식별자(Subject ID), 술어 식별자(predicate ID) 및 목적어 식별자(object ID)의 조합으로 변환하여 인코딩 작업을 수행하는 것을 특징으로 하는 대규모 병렬 정성 시간 추론 방법.
10. The method of claim 9,
Wherein the encoding step comprises:
It is necessary to convert each triple statement in the form of a string included in the knowledge base into a combination of a numerical subject ID, a predicate ID, and an object identifier (object ID) A method for massively parallel qualitative time inference.
제9항에 있어서,
상기 관계 정제의 작업은 추론된 사실 사이의 모순을 체크하고 인접 관계 사실을 정제하는 것을 특징으로 하는 대규모 병렬 정성 시간 추론 방법.
10. The method of claim 9,
Wherein the task of the relationship refinement is to check contradictions between inferred facts and to refine adjacency facts.
KR1020160038659A 2016-03-30 2016-03-30 Apparatus and meyhod for large scale parallel temporal reasoning KR101788303B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160038659A KR101788303B1 (en) 2016-03-30 2016-03-30 Apparatus and meyhod for large scale parallel temporal reasoning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160038659A KR101788303B1 (en) 2016-03-30 2016-03-30 Apparatus and meyhod for large scale parallel temporal reasoning

Publications (2)

Publication Number Publication Date
KR20170112102A KR20170112102A (en) 2017-10-12
KR101788303B1 true KR101788303B1 (en) 2017-11-15

Family

ID=60141818

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160038659A KR101788303B1 (en) 2016-03-30 2016-03-30 Apparatus and meyhod for large scale parallel temporal reasoning

Country Status (1)

Country Link
KR (1) KR101788303B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109753242A (en) * 2018-12-10 2019-05-14 航天信息股份有限公司 Based on the method and apparatus that SaltStack realizes HDFS dilatation, storage medium and electronic equipment
CN113360626B (en) * 2021-07-02 2022-02-11 北京容联七陌科技有限公司 Multi-scene mixed question-answer recommendation method for intelligent customer service robot

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101091592B1 (en) 2010-08-17 2011-12-13 숭실대학교산학협력단 System and method for mobile-based ontology reasoning

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101091592B1 (en) 2010-08-17 2011-12-13 숭실대학교산학협력단 System and method for mobile-based ontology reasoning

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"동적 분산병렬 하둡시스템 및 분산추론기에 응용한 서버가상화 빅데이터 플랫폼", 한국데이터정보과학회지 26(5)(pp. 1129-1139), 2015년
"맵리듀스 프레임워크를 이용한 대용량 공간 추론기의 설계 및 구현", 정보처리학회논문지/소프트웨어 및 데이터 공학 제3권 제10호(pp. 397-406), 2014년 10월*

Also Published As

Publication number Publication date
KR20170112102A (en) 2017-10-12

Similar Documents

Publication Publication Date Title
US11763175B2 (en) Systems and methods for semantic inference and reasoning
JP7322119B2 (en) Queries to data sources on the network
Barbierato et al. Performance evaluation of NoSQL big-data applications using multi-formalism models
KR101782704B1 (en) Knowledge capture and discovery system
Kumar Kaliyar Graph databases: A survey
CN101124537B (en) Techniques for knowledge discovery by constructing knowledge correlations using terms
Jabbar et al. A methodology of real-time data fusion for localized big data analytics
Curé et al. Ontology based data integration over document and column family oriented NOSQL
Mami et al. Querying data lakes using spark and presto
WO2017040209A1 (en) Data preparation for data mining
JP2007317189A (en) Retrieval information processing method based on three element model
Banane et al. A new system for massive RDF data management using Big Data query languages Pig, Hive, and Spark
WO2018045610A1 (en) Method and device for executing distributed computing task
Fan et al. Storing and querying fuzzy RDF (S) in HBase databases
Ranganathan et al. Action rules for sentiment analysis on twitter data using spark
CN116108194A (en) Knowledge graph-based search engine method, system, storage medium and electronic equipment
KR101788303B1 (en) Apparatus and meyhod for large scale parallel temporal reasoning
Lin et al. An agent-based approach to reconciling data heterogeneity in cyber-physical systems
Wiederhold The roles of artificial intelligence in information systems
WO2013137903A1 (en) Systems and methods for semantic inference and reasoning
Khashan et al. An adaptive spark-based framework for querying large-scale NoSQL and relational databases
Zavuschak The context analysis and the process of its formation
Kalna et al. MDA transformation process of a PIM logical decision-making from NoSQL database to big data NoSQL PSM
Chen et al. From data reuse to knowledge reuse in web applications: a survey
Brecher et al. Mapping Application Ontologies as a Gateway into OBDA Systems in the Internet of Production

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right