KR102427368B1 - Method for recommendating candidate of knowledge graph using semi-structured data and apparatus implementing the same method - Google Patents

Method for recommendating candidate of knowledge graph using semi-structured data and apparatus implementing the same method Download PDF

Info

Publication number
KR102427368B1
KR102427368B1 KR1020210152687A KR20210152687A KR102427368B1 KR 102427368 B1 KR102427368 B1 KR 102427368B1 KR 1020210152687 A KR1020210152687 A KR 1020210152687A KR 20210152687 A KR20210152687 A KR 20210152687A KR 102427368 B1 KR102427368 B1 KR 102427368B1
Authority
KR
South Korea
Prior art keywords
knowledge graph
data
information
candidate
semi
Prior art date
Application number
KR1020210152687A
Other languages
Korean (ko)
Inventor
임철수
박민우
손지성
심형섭
강지순
최기석
이행곤
Original Assignee
한국과학기술정보연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술정보연구원 filed Critical 한국과학기술정보연구원
Priority to KR1020210152687A priority Critical patent/KR102427368B1/en
Application granted granted Critical
Publication of KR102427368B1 publication Critical patent/KR102427368B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • 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/34Browsing; Visualisation therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Abstract

According to one embodiment of the present invention, a method performed by a computing device includes: a step of extracting column item data identified as a plurality of columns from semi-structured data; and a step of outputting a candidate group of a knowledge graph organized with a plurality of nodes and edges presenting relations between the plurality of nodes by inputting the extracted column item data to a knowledge graph candidate recommendation model. The knowledge graph candidate recommendation model is generated by performing machine learning using learning data including knowledge graph information.

Description

반 구조화 데이터를 이용한 지식그래프 후보 추천 방법, 그리고 이를 구현하기 위한 장치{METHOD FOR RECOMMENDATING CANDIDATE OF KNOWLEDGE GRAPH USING SEMI-STRUCTURED DATA AND APPARATUS IMPLEMENTING THE SAME METHOD} A method for recommending knowledge graph candidates using semi-structured data, and an apparatus for implementing the same

본 발명은 반 구조화 데이터를 이용한 지식그래프 후보 추천 방법, 그리고 이를 구현하기 위한 장치에 관한 것으로서, 보다 자세하게는, 인공지능 알고리즘을 이용하여 반 구조화(semi-structured) 데이터를 표출할 수 있는 지식 그래프를 생성하기 위한 반 구조화 데이터를 이용한 지식그래프 후보 추천 방법, 그리고 이를 구현하기 위한 장치에 관한 것이다. The present invention relates to a knowledge graph candidate recommendation method using semi-structured data, and an apparatus for implementing the same, and more particularly, to a knowledge graph capable of expressing semi-structured data using an artificial intelligence algorithm. It relates to a knowledge graph candidate recommendation method using semi-structured data for generating, and an apparatus for implementing the same.

데이터가 개방되어 공유되는 공공 데이터셋의 경우, 데이터 내에 포함된 관계 또는 속성을 수작업으로 정의하여 변환 규칙을 작성하고, 이에 따라 데이터에 포함된 관계 또는 속성을 LOD(Linked Open Data)로 변환하여 사용해 왔다. In the case of public datasets in which data is open and shared, a transformation rule is created by manually defining the relationships or properties included in the data, and the relationships or properties included in the data are converted into LOD (Linked Open Data) and used accordingly. come.

또한, 종래에는 데이터에 포함된 관계성을 분석하기 위해, 원시 데이터셋에 내재된 관계 또는 속성을 사람이 수작업으로 정의하고 변환 규칙을 작성하여 지식 그래프를 구축하고, 이를 이용하여 정보를 검색 및 추론을 하는데 활용되고 있다. In addition, in the prior art, in order to analyze the relationship included in the data, a person manually defines the relationship or property inherent in the raw data set, writes a transformation rule, builds a knowledge graph, and uses this to search and infer information is being used to

그러나, 이러한 방식은 수작업에 의존하므로 데이터에 내재된 관계 또는 속성 정보를 도출함에 있어 정확성 및 신뢰도가 떨어지고, 데이터에 포함된 관계 또는 속성 정보를 학습데이터로 활용하거나 기존에 축적된 정보를 활용하지 못하는 문제점이 있다.However, since this method relies on manual work, the accuracy and reliability of deriving the relationship or attribute information inherent in the data is low, and it is difficult to use the relationship or attribute information included in the data as learning data or to utilize the previously accumulated information. There is a problem.

또한, 신규 데이터셋의 입력 시, 신규 데이터셋에 포함된 컬럼의 명칭이 기존에 구축되어 있는 지식 그래프 상에 존재하지 않는 경우 해당 컬럼에 대응하는 노드를 매칭시키기가 어렵다. 더구나, 노드가 적절하게 매칭되지 않는 경우 해당 컬럼과 관련성이 높은 노드를 정의하는데 어려움이 있다.Also, when a new data set is input, if the name of a column included in the new data set does not exist on an existing knowledge graph, it is difficult to match a node corresponding to the corresponding column. Moreover, if the nodes are not properly matched, it is difficult to define a node that is highly related to the corresponding column.

이에, 원시 데이터셋을 이용한 지식 그래프를 구축함에 있어, 데이터에 내재된 관계성을 좀더 정확하게 반영하여 지식 그래프를 생성할 수 있는 기술이 요구된다.Accordingly, in constructing a knowledge graph using a raw data set, a technology capable of generating a knowledge graph by reflecting the relationship inherent in data more accurately is required.

특허공개공보 제10-2019-0114916호(2019.10.10. 공개)Patent Publication No. 10-2019-0114916 (published on October 10, 2019)

본 발명이 해결하고자 하는 기술적 과제는, 반 구조화된 데이터를 이용하여 AI 알고리즘을 통해 컬럼 간의 관계를 생성하고, 이를 기반으로 정확도가 높은 지식 그래프의 후보군을 제공할 수 있는 반 구조화 데이터를 이용한 지식그래프 후보 추천 방법, 그리고 이를 구현하기 위한 장치를 제공하는 것이다.The technical problem to be solved by the present invention is to create a relationship between columns through an AI algorithm using semi-structured data, and based on this, a knowledge graph using semi-structured data that can provide a candidate group of a knowledge graph with high accuracy It is to provide a candidate recommendation method, and an apparatus for implementing the same.

본 발명이 해결하고자 하는 다른 기술적 과제는, 기존에 축적된 데이터의 관계 정보를 학습 데이터로 활용함에 의해, 보다 정교한 지식 그래프 후보 추천 모델을 생성할 수 있는 반 구조화 데이터를 이용한 지식그래프 후보 추천 방법, 그리고 이를 구현하기 위한 장치를 제공하는 것이다.Another technical problem to be solved by the present invention is a knowledge graph candidate recommendation method using semi-structured data that can generate a more sophisticated knowledge graph candidate recommendation model by using relationship information of previously accumulated data as learning data, And to provide a device for implementing this.

본 발명이 해결하고자 하는 또 다른 기술적 과제는, 신규 데이터셋이 입력되는 경우, 신규 데이터셋에 포함된 컬럼을 기존에 구축되어 있는 지식 그래프의 노드 및 연결선에 매칭시킬 수 있는 반 구조화 데이터를 이용한 지식그래프 후보 추천 방법, 그리고 이를 구현하기 위한 장치를 제공하는 것이다.Another technical problem to be solved by the present invention is knowledge using semi-structured data that can match the columns included in the new dataset to the nodes and connecting lines of the existing knowledge graph when a new dataset is input. A graph candidate recommendation method and an apparatus for implementing the same are provided.

본 발명이 해결하고자 하는 또 다른 기술적 과제는, 반 구조화 데이터를 이용하여 지식 그래프를 생성 시, 시각화 된 사용자 인터페이스를 통해 지식 그래프의 수정 및 탐색이 용이한 반 구조화 데이터를 이용한 지식그래프 후보 추천 방법, 그리고 이를 구현하기 위한 장치를 제공하는 것이다.Another technical problem to be solved by the present invention is a knowledge graph candidate recommendation method using semi-structured data that makes it easy to modify and search the knowledge graph through a visualized user interface when generating a knowledge graph using semi-structured data, And to provide a device for implementing this.

본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 개시의 기술분야에서의 통상의 기술자에게 명확하게 이해될 수 있을 것이다. The technical problems of the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the description below.

상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 컴퓨팅 장치에 의해 수행되는 방법은, 반 구조화(semi-structured) 데이터로부터 복수 개의 컬럼으로 식별되는 컬럼 항목 데이터를 추출하는 단계, 및 상기 추출된 컬럼 항목 데이터를 지식 그래프 후보 추천 모델에 입력하여 복수의 노드(node) 및 상기 복수의 노드 간 관계를 나타내는 연결선(edge)으로 구성된 지식 그래프의 후보군을 출력하는 단계를 포함하고, 상기 지식 그래프 후보 추천 모델은, 지식 그래프 정보를 포함하는 학습 데이터를 이용한 기계 학습을 수행하여 생성된 것이다.In order to solve the above technical problem, a method performed by a computing device according to an embodiment of the present invention includes extracting column item data identified as a plurality of columns from semi-structured data, and the and inputting the extracted column item data into a knowledge graph candidate recommendation model to output a candidate group of a knowledge graph consisting of a plurality of nodes and an edge representing a relationship between the plurality of nodes, the knowledge graph The candidate recommendation model is generated by performing machine learning using learning data including knowledge graph information.

일 실시예로서, 상기 반 구조화(semi-structured) 데이터로부터 복수 개의 컬럼으로 식별되는 컬럼 항목 데이터를 추출하는 단계는, 상기 반 구조화 데이터에서 식별되는 각 컬럼의 명칭을 유사어 또는 관련어 사전 정보를 이용하여 표준화하는 단계를 포함할 수 있다.As an embodiment, the step of extracting column item data identified as a plurality of columns from the semi-structured data may include changing the name of each column identified in the semi-structured data using synonyms or related word dictionary information. Standardization may be included.

일 실시예로서, 상기 컬럼 항목 데이터를 이용하여 유사도에 기반한 클러스터링을 수행하는 단계는, 상기 컬럼 항목 데이터의 데이터셋 명칭, 컬럼 명칭, 및 로우(Raw) 데이터를 이용하여 클러스터링을 수행하는 단계를 포함할 수 있다.As an embodiment, performing clustering based on the similarity using the column item data includes performing clustering using a dataset name, a column name, and raw data of the column item data. can do.

일 실시예로서, 상기 추출된 컬럼 항목 데이터를 지식 그래프 후보 추천 모델에 입력하여 복수의 노드(node) 및 상기 복수의 노드 간 관계를 나타내는 연결선(edge)으로 구성된 지식 그래프의 후보군을 출력하는 단계는, 전문가의 추천 관계 정보를 입력 받는 단계, 상기 전문가의 추천 관계 정보와 상기 클러스터링 수행 결과를 이용하여 동일 데이터셋 내부의 관계 또는 데이터셋 간의 관계에 관한 정보를 생성하는 단계, 및 상기 생성된 동일 데이터셋 내부의 관계 또는 데이터셋 간의 관계에 관한 정보를 이용하여 상기 지식 그래프의 후보군을 생성하는 단계를 포함할 수 있다.As an embodiment, the step of inputting the extracted column item data into a knowledge graph candidate recommendation model and outputting a candidate group of a knowledge graph consisting of a plurality of nodes and an edge indicating a relationship between the plurality of nodes includes: , receiving expert recommendation relationship information, generating information about a relationship within the same dataset or a relationship between datasets using the expert recommendation relationship information and the clustering performance result, and the generated same data The method may include generating a candidate group of the knowledge graph by using information about a relationship within a set or a relationship between data sets.

일 실시예로서, 상기 추출된 컬럼 항목 데이터를 지식 그래프 후보 추천 모델에 입력하여 복수의 노드(node) 및 상기 복수의 노드 간 관계를 나타내는 연결선(edge)으로 구성된 지식 그래프의 후보군을 출력하는 단계는, 상기 클러스터링 수행 결과에 기반하여 상기 컬럼 항목 데이터에 대한 태깅(tagging)을 수행하는 단계, 및 상기 태깅된 데이터를 이용하여 지도 학습 방식으로 상기 컬럼 항목 데이터에 대한 노드 추천 정보를 생성하는 단계를 포함할 수 있다.As an embodiment, the step of inputting the extracted column item data into a knowledge graph candidate recommendation model and outputting a candidate group of a knowledge graph consisting of a plurality of nodes and an edge indicating a relationship between the plurality of nodes includes: , performing tagging on the column item data based on a result of performing the clustering, and generating node recommendation information for the column item data in a supervised learning method using the tagged data. can do.

일 실시예로서, 상기 출력되는 지식 그래프의 후보군에 관한 정보를 상기 학습 데이터에 추가하는 단계를 더 포함할 수 있다. As an embodiment, the method may further include adding information about a candidate group of the output knowledge graph to the learning data.

일 실시예로서, 상기 반 구조화 데이터는, 복수 개의 컬럼으로 구분될 수 있는 타입의 원시 데이터일 수 있다.As an embodiment, the semi-structured data may be raw data of a type that can be divided into a plurality of columns.

일 실시예로서, 상기 출력되는 지식 그래프의 후보군을 시각적으로 표출하는 GUI를 제공하는 단계, 및 상기 GUI에 대한 사용자 입력에 따라 상기 지식 그래프 후보군을 구성하는 상기 복수의 노드 및 연결선에 관한 정보를 수정하는 단계를 더 포함할 수 있다.As an embodiment, providing a GUI for visually expressing the candidate group of the knowledge graph to be output, and correcting information about the plurality of nodes and connection lines constituting the candidate group of the knowledge graph according to a user input to the GUI It may further include the step of

일 실시예로서, 상기 출력되는 지식 그래프의 후보군을 시각적으로 표출하는 GUI를 제공하는 단계, 및 상기 GUI에 대한 사용자 입력에 따라 상기 지식 그래프 후보군을 구성하는 상기 복수의 노드 및 연결선에 관한 정보에 기반한 데이터 탐색 정보를 제공하는 단계를 더 포함할 수 있다.As an embodiment, providing a GUI for visually expressing the candidate group of the knowledge graph to be output, and information about the plurality of nodes and connection lines constituting the candidate group of the knowledge graph according to a user input to the GUI. The method may further include providing data search information.

상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 컴퓨터 판독 가능한 비일시적 기록 매체는, 컴퓨터로 하여금 상기 방법을 수행하도록 하는 컴퓨터 프로그램이 저장된 것이다.In order to solve the above technical problem, a computer-readable non-transitory recording medium according to an embodiment of the present invention stores a computer program for causing a computer to perform the method.

상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 지식그래프 후보 추천 장치는, 외부 서버와 통신하는 통신부, 상기 외부 서버로부터 수집된 지식 그래프 정보를 이용하여 학습 데이터를 생성하고, 상기 학습 데이터를 이용하여 AI 기반 알고리즘을 학습함에 의해 지식 그래프 후보 추천 모델을 생성하는 학습부, 및 반 구조화(semi-structured) 데이터로부터 복수 개의 컬럼으로 식별되는 컬럼 항목 데이터를 추출하고, 상기 추출된 컬럼 항목 데이터를 상기 생성된 지식 그래프 후보 추천 모델에 입력하여 복수의 노드(node) 및 상기 복수의 노드 간 관계를 나타내는 연결선(edge)으로 구성된 지식 그래프의 후보군을 생성하는 지식 그래프 후보 추천부를 포함한다.In order to solve the technical problem, a knowledge graph candidate recommendation apparatus according to an embodiment of the present invention generates learning data using a communication unit communicating with an external server, and knowledge graph information collected from the external server, and A learning unit that generates a knowledge graph candidate recommendation model by learning an AI-based algorithm using data, and extracts column item data identified as a plurality of columns from semi-structured data, and the extracted column item and a knowledge graph candidate recommendation unit configured to input data into the generated knowledge graph candidate recommendation model and generate a candidate group of a knowledge graph including a plurality of nodes and an edge representing a relationship between the plurality of nodes.

일 실시예로서, 상기 지식 그래프 후보 추천부는, 상기 컬럼 항목 데이터를 이용하여 유사도에 기반한 클러스터링을 수행하고, 상기 클러스터링 수행 결과에 기반하여 상기 컬럼 항목 데이터를 최대 확률 값을 가지는 노드 및 연결선에 자동 매칭할 수 있다.As an embodiment, the knowledge graph candidate recommendation unit performs clustering based on similarity using the column item data, and automatically matches the column item data to a node and a connection line having a maximum probability value based on the clustering result. can do.

일 실시예로서, 상기 지식 그래프 후보 추천부는, 전문가의 추천 관계 정보를 수신하고, 상기 전문가의 추천 관계 정보와 상기 클러스터링 수행 결과를 이용하여 동일 데이터셋 내부의 관계 또는 데이터셋 간의 관계에 관한 정보를 생성하고, 상기 생성된 동일 데이터셋 내부의 관계 또는 데이터셋 간의 관계에 관한 정보를 이용하여 상기 지식 그래프의 후보군을 생성할 수 있다.As an embodiment, the knowledge graph candidate recommendation unit receives the expert's recommendation relationship information, and uses the expert's recommendation relationship information and the clustering performance result to provide information on a relationship within the same dataset or a relationship between datasets. The candidate group of the knowledge graph may be generated by using the generated information on the relationship within the same dataset or the relationship between the datasets.

일 실시예로서, 상기 지식 그래프 후보 추천부는, 상기 클러스터링 수행 결과에 기반하여 상기 컬럼 항목 데이터에 대한 태깅(tagging)을 수행하고, 상기 태깅된 데이터를 이용하여 지도 학습 방식으로 상기 컬럼 항목 데이터에 대한 노드 추천 정보를 생성할 수 있다.As an embodiment, the knowledge graph candidate recommendation unit performs tagging on the column item data based on a result of performing the clustering, and performs a supervised learning method on the column item data using the tagged data. Node recommendation information can be generated.

상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 지식그래프 후보 추천 장치는, 하나 이상의 프로세서, 외부장치와 통신하는 통신 인터페이스, 상기 프로세서에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리, 및 상기 컴퓨터 프로그램을 저장하는 스토리지를 포함하되, 상기 컴퓨터 프로그램은, 서버로부터 지식 그래프 후보 추천 모델에 관한 정보를 수신하는 동작, 사용자 입력에 의해 반 구조화(semi-structured) 데이터를 획득하는 동작, 상기 반 구조화 데이터로부터 복수 개의 컬럼으로 식별되는 컬럼 항목 데이터를 추출하는 동작, 및 상기 추출된 컬럼 항목 데이터를 상기 지식 그래프 후보 추천 모델에 입력하여 복수의 노드(node) 및 상기 복수의 노드 간 관계를 나타내는 연결선(edge)으로 구성된 지식 그래프의 후보군을 출력하는 동작을 수행하기 위한 인스트럭션을 포함하고, 상기 지식 그래프 후보 추천 모델은, 지식 그래프 정보를 포함하는 학습 데이터를 이용한 기계 학습을 수행하여 생성된 것이다.In order to solve the above technical problem, the knowledge graph candidate recommendation apparatus according to an embodiment of the present invention includes one or more processors, a communication interface for communicating with an external device, and a memory for loading a computer program executed by the processor. , and storage for storing the computer program, wherein the computer program includes an operation of receiving information about a knowledge graph candidate recommendation model from a server, an operation of acquiring semi-structured data by a user input, extracting column item data identified as a plurality of columns from the semi-structured data, and inputting the extracted column item data into the knowledge graph candidate recommendation model to obtain a plurality of nodes and relationships between the plurality of nodes and instructions for performing an operation of outputting a candidate group of a knowledge graph composed of an edge indicated, wherein the knowledge graph candidate recommendation model is generated by performing machine learning using learning data including knowledge graph information .

도 1은 본 발명의 실시예에 따른 개념도이다.
도 2는 본 발명의 일 실시예에 따른 지식 그래프 후보 추천 장치의 구성을 도시한 블록도이다.
도 3은 본 발명의 다른 실시예에 따른 지식 그래프 후보 추천 장치의 구성을 도시한 블록도이다.
도 4 내지 도 6은 본 발명의 또 다른 실시예에 따른 지식 그래프 후보 추천 방법을 설명하기 위한 순서도이다.
도 7은 본 발명의 몇몇 실시예에 따른 반 구조화된 데이터의 컬럼 간 관계 정보를 도출하여 지식 그래프를 생성하는 예이다.
도 8은 본 발명의 몇몇 실시예에 따른 데이터셋에 포함된 컬럼을 지식 그래프의 노드 및 연결선에 매칭하는 예이다.
도 9는 본 발명의 몇몇 실시예에 따른 방법들을 구현할 수 있는 예시적인 컴퓨팅 장치의 하드웨어 구성도이다.
1 is a conceptual diagram according to an embodiment of the present invention.
2 is a block diagram illustrating a configuration of a knowledge graph candidate recommendation apparatus according to an embodiment of the present invention.
3 is a block diagram illustrating a configuration of a knowledge graph candidate recommendation apparatus according to another embodiment of the present invention.
4 to 6 are flowcharts for explaining a knowledge graph candidate recommendation method according to another embodiment of the present invention.
7 is an example of generating a knowledge graph by deriving relationship information between columns of semi-structured data according to some embodiments of the present invention.
8 is an example of matching columns included in a data set according to some embodiments of the present invention to nodes and connecting lines of a knowledge graph.
9 is a hardware configuration diagram of an exemplary computing device that may implement methods according to some embodiments of the present invention.

이하, 첨부된 도면을 참조하여 본 개시의 바람직한 실시 예들을 상세히 설명한다. 본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 개시의 기술적 사상은 이하의 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 이하의 실시예들은 본 개시의 기술적 사상을 완전하도록 하고, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 본 개시의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시의 기술적 사상은 청구항의 범주에 의해 정의될 뿐이다.Hereinafter, preferred embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. Advantages and features of the present disclosure and methods of achieving them will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the technical spirit of the present disclosure is not limited to the following embodiments, but may be implemented in various different forms, and only the following embodiments complete the technical spirit of the present disclosure, and in the technical field to which the present disclosure belongs It is provided to fully inform those of ordinary skill in the art of the scope of the present disclosure, and the technical spirit of the present disclosure is only defined by the scope of the claims.

각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 개시를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.In adding reference numerals to the components of each drawing, it should be noted that the same components are given the same reference numerals as much as possible even though they are indicated on different drawings. In addition, in describing the present disclosure, if it is determined that a detailed description of a related known configuration or function may obscure the gist of the present disclosure, the detailed description thereof will be omitted.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 개시를 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.Unless otherwise defined, all terms (including technical and scientific terms) used herein may be used with the meaning commonly understood by those of ordinary skill in the art to which this disclosure belongs. In addition, terms defined in a commonly used dictionary are not to be interpreted ideally or excessively unless clearly defined in particular. The terminology used herein is for the purpose of describing the embodiments and is not intended to limit the present disclosure. In this specification, the singular also includes the plural, unless specifically stated otherwise in the phrase.

또한, 본 개시의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In addition, in describing the components of the present disclosure, terms such as first, second, A, B, (a), (b), etc. may be used. These terms are only for distinguishing the elements from other elements, and the essence, order, or order of the elements are not limited by the terms. When it is described that a component is “connected”, “coupled” or “connected” to another component, the component may be directly connected or connected to the other component, but another component is between each component. It should be understood that elements may be “connected,” “coupled,” or “connected.”

명세서에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.As used herein, "comprises" and/or "comprising" refers to the presence of one or more other components, steps, operations and/or elements mentioned. or addition is not excluded.

이하, 본 개시의 몇몇 실시예들에 대하여 첨부된 도면에 따라 상세하게 설명한다.Hereinafter, some embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 개념도이다. 도 1을 참조하면, 본 발명의 실시예에 따른 지식 그래프 후보 추천 장치(1)는 학습 데이터(2)를 이용하여 AI(Artificial Intelligence) 기반 알고리즘(3)에 기초한 머신 러닝(machine learning)을 수행함에 의해 생성되는 지식 그래프 후보 추천 모델(31)을 이용하여 지식 그래프 후보군(5)을 출력할 수 있다. 1 is a conceptual diagram according to an embodiment of the present invention. Referring to FIG. 1 , a knowledge graph candidate recommendation apparatus 1 according to an embodiment of the present invention performs machine learning based on an artificial intelligence (AI) based algorithm 3 using training data 2 . The knowledge graph candidate group 5 may be output using the knowledge graph candidate recommendation model 31 generated by .

도시된 예에서, 학습 데이터(2)는 이전에 구축되었던 지식 그래프에 관한 정보로 구성되고, 학습 데이터(2)를 이용하여 AI 기반 알고리즘(3)을 학습함에 의해 지식 그래프 후보 추천 모델(31)이 생성될 수 있다. 이 때, AI 기반 알고리즘(3)은 클러스터링(clustering)과 같은 비지도 학습(unsupervised learning) 방식, 및 신경망(Neural Network)과 같은 지도 학습(supervised learning) 방식이 모두 적용될 수 있다. 학습 데이터(2)의 학습 과정에서 사용되는 AI 기반 알고리즘(3)은 본 실시예에 의해 제한되지 않고 다양한 방식의 알고리즘이 사용될 수 있다. In the illustrated example, the training data 2 is composed of information about the previously built knowledge graph, and the knowledge graph candidate recommendation model 31 is obtained by learning the AI-based algorithm 3 using the training data 2 . can be created. In this case, the AI-based algorithm 3 may be applied to both an unsupervised learning method such as clustering and a supervised learning method such as a neural network. The AI-based algorithm 3 used in the learning process of the learning data 2 is not limited by this embodiment, and various types of algorithms may be used.

지식 그래프의 후보군 생성을 위해, 입력 정보(4)로서 반 구조화(semi-structured) 데이터가 지식 그래프 후보 추천 모델(31)에 입력되면, 지식 그래프 후보 추천 모델(31)을 이용하여 예측된 결과로서 지식 그래프의 후보군(53)이 출력될 수 있다. 여기서, 입력 정보(4)인 반 구조화 데이터는, 데이터베이스(Database)와 같은 구조화 데이터 및 프리 텍스트(Free-text)와 같은 비 구조화 데이터의 중간 형태이면서 복수 개의 컬럼으로 구분될 수 있는 타입의 원시 데이터(source data)로서, 예컨대 EXCEL(xls), CSV, rest, open API, HTML, XML, RDF(Resource Description Framework), JSON(JavaScript Object Notation) 등의 형식을 가지는 데이터를 포함할 수 있다. When semi-structured data as input information 4 is input to the knowledge graph candidate recommendation model 31 for generation of the candidate group of the knowledge graph, as a result predicted using the knowledge graph candidate recommendation model 31 The candidate group 53 of the knowledge graph may be output. Here, the semi-structured data that is the input information 4 is an intermediate form between structured data such as a database and unstructured data such as free-text, raw data of a type that can be divided into a plurality of columns. As (source data), for example, data having a format such as EXCEL (xls), CSV, rest, open API, HTML, XML, RDF (Resource Description Framework), JSON (JavaScript Object Notation) may be included.

좀더 자세하게는, 반 구조화 데이터는, 반정형 데이터 또는 비정형 데이터라고도 불리는데, 데이터의 형식과 구조가 변경될 수 있는 데이터로서, 데이터의 구조 정보를 데이터와 함께 제공하는 파일 형식의 데이터이다. 반 구조화 데이터는 구조화 데이터처럼 테이블의 행(row)과 열(column)로 구조화되어 있지는 않으나, 파일에 포함된 데이터 구조 정보를 바탕으로 테이블 형태의 데이터 스키마로 변환하고, 데이터를 매핑하여 구조화 데이터로 변환하는 것이 가능한 데이터이다. In more detail, semi-structured data, also called semi-structured data or unstructured data, is data in which the format and structure of data can be changed, and is data in a file format that provides structure information of data together with data. Semi-structured data is not structured into rows and columns of a table like structured data, but it is converted into a table-type data schema based on the data structure information contained in the file, and data is mapped to structured data. It is data that can be transformed.

일 실시예로서, 지식 그래프 후보 추천 장치(1)는 입력 정보(4)로서 입력되는 반 구조화 데이터로부터 복수 개의 컬럼으로 식별되는 컬럼 항목 데이터를 추출할 수 있다. 지식 그래프 후보 추천 장치(1)는 컬럼 항목 데이터를 지식 그래프 후보 추천 모델(31)에 입력하여 복수의 노드 및 노드 간 관계를 나타내는 연결선으로 구성된 지식 그래프 후보군을 출력할 수 있다. As an embodiment, the knowledge graph candidate recommendation apparatus 1 may extract column item data identified as a plurality of columns from the semi-structured data input as the input information 4 . The knowledge graph candidate recommendation apparatus 1 may input column item data into the knowledge graph candidate recommendation model 31 to output a knowledge graph candidate group including a plurality of nodes and connecting lines representing relationships between nodes.

상기와 같은 본 발명의 실시예에 따라, 반 구조화된 데이터를 이용하여 AI 알고리즘을 통해 컬럼 간의 관계를 생성하고, 이를 기반으로 정확도가 높은 지식 그래프의 후보군을 제공할 수 있다. 또한, 기존에 축적된 데이터의 관계 정보를 학습 데이터로 활용함에 의해, 보다 정교한 지식 그래프 후보 추천 모델을 생성할 수 있다.According to the embodiment of the present invention as described above, a relationship between columns is generated through an AI algorithm using semi-structured data, and based on this, a candidate group of a knowledge graph with high accuracy can be provided. In addition, a more sophisticated knowledge graph candidate recommendation model can be generated by using relationship information of previously accumulated data as learning data.

도 2는 본 발명의 일 실시예에 따른 지식 그래프 후보 추천 장치의 구성을 도시한 블록도이다. 도 2를 참조하면, 본 발명의 실시예에 따른 지식 그래프 후보 추천 장치(1)는 학습부(11) 및 지식 그래프 후보 추천부(12)를 포함하고, 외부 서버(20), 및 사용자 단말(10)과 네트워크를 통해 연결될 수 있다. 지식 그래프 후보 추천 장치(1)는 사용자 단말(10)로부터 수신되는 반 구조화 데이터를 이용한 지식 그래프 생성을 위한 모델의 생성 및 분석 요청을 처리하여 그 결과를 제공한다.2 is a block diagram illustrating a configuration of a knowledge graph candidate recommendation apparatus according to an embodiment of the present invention. Referring to FIG. 2 , an apparatus 1 for recommending a knowledge graph candidate according to an embodiment of the present invention includes a learning unit 11 and a knowledge graph candidate recommendation unit 12 , an external server 20 , and a user terminal ( 10) and can be connected through a network. The knowledge graph candidate recommendation apparatus 1 processes a request for generating and analyzing a model for generating a knowledge graph using semi-structured data received from the user terminal 10 and provides the result.

외부 서버(20)는 이전에 구축된 지식 그래프에 관한 정보를 제공하는 서버로 구현될 수 있고, 지식 그래프를 구성하고 있는 복수의 노드 및 노드들 간의 관계를 나타내는 연결선에 관한 정보가 저장되어 관리될 수 있다.The external server 20 may be implemented as a server that provides information on a previously constructed knowledge graph, and information about a plurality of nodes constituting the knowledge graph and a connection line indicating the relationship between the nodes is stored and managed. can

학습부(11)는 수집 모듈(111), 전처리 모듈(112), 및 학습 모듈(113)로 구성되고, 이 중 수집 모듈(111)은 외부 서버(20)로부터 제공되는 이전에 구축된 지식 그래프에 관한 정보를 수집하여 학습 데이터(2)를 구성하고, 이를 데이터베이스에 저장한다. The learning unit 11 is composed of a collection module 111 , a preprocessing module 112 , and a learning module 113 , of which the collection module 111 is a previously constructed knowledge graph provided from the external server 20 . By collecting information about the learning data (2), it is stored in the database.

전처리 모듈(112)은 수집 모듈(111)에 의해 데이터베이스에 저장된 학습 데이터(2)를 읽어 오고, 학습 데이터(2)를 기계 학습이 가능한 형태로 변환한다. The preprocessing module 112 reads the learning data 2 stored in the database by the collection module 111 and converts the learning data 2 into a form capable of machine learning.

학습 모듈(113)은 전처리 모듈(112)에서 전처리가 완료된 학습 데이터(2)를 이용하여 AI 기반 알고리즘(3)에 기반한 기계 학습을 수행하고, 이로부터 지식 그래프 후보 추천 모델(31)을 생성한다. 이 때, 학습을 위해 사용되는 AI 기반 알고리즘(3)으로서 예컨대 클러스터링과 같은 비지도 학습 알고리즘이나, 컨볼루션 신경망(CNN), 심층 신경망(DNN), 및 순환 신경망(RNN)과 같은 지도 학습 알고리즘이 사용될 수 있다.The learning module 113 performs machine learning based on the AI-based algorithm 3 using the training data 2 that has been pre-processed in the pre-processing module 112, and generates a knowledge graph candidate recommendation model 31 therefrom. . At this time, as the AI-based algorithm 3 used for learning, for example, an unsupervised learning algorithm such as clustering, or a supervised learning algorithm such as a convolutional neural network (CNN), a deep neural network (DNN), and a recurrent neural network (RNN) can be used

지식 그래프 후보 추천부(12)는 입력 모듈(121), 전처리 모듈(122), 및 예측 모듈(123)로 구성되고, 사용자 단말(10)로부터 입력되거나 외부 장치로부터 제공되는 반 구조화 데이터를 이용하여 지식 그래프 후보 추천 결과를 출력한다. The knowledge graph candidate recommendation unit 12 is composed of an input module 121 , a preprocessing module 122 , and a prediction module 123 , and uses semi-structured data input from the user terminal 10 or provided from an external device. Outputs the knowledge graph candidate recommendation result.

입력 모듈(121)에서는 사용자 단말(10) 또는 외부 장치로부터 제공되는 반 구조화 데이터가 입력된다. 이 때, 반 구조화 데이터는, 복수 개의 컬럼으로 구분될 수 있는 타입의 원시 데이터로 마련될 수 있다. In the input module 121 , semi-structured data provided from the user terminal 10 or an external device is input. In this case, the semi-structured data may be prepared as raw data of a type that can be divided into a plurality of columns.

전처리 모듈(122)은 입력 모듈(121)에서 입력된 반 구조화 데이터로부터 복수 개의 컬럼으로 식별되는 컬럼 항목 데이터를 추출한다. 이 때, 전처리 모듈(122)은 추출된 컬럼 항목 데이터의 각 컬럼의 명칭을 유사어 또는 관련어 사전 정보를 이용하여 표준화할 수 있다. 예로서, 각 컬럼의 명칭이 '지점', '담당기관', '출처'로 서로 다른 경우에 대해 '기관명'이라는 통일된 명칭을 적용할 수 있다. The pre-processing module 122 extracts column item data identified as a plurality of columns from the semi-structured data input from the input module 121 . In this case, the pre-processing module 122 may standardize the name of each column of the extracted column item data using synonym or related word dictionary information. For example, a unified name of 'organization name' may be applied to a case in which the names of each column are different as 'branch', 'institution in charge', and 'source'.

또한, 전처리 모듈(122)은 추출된 컬럼 항목 데이터의 각 컬럼 간 관계 또는 속성을 정의할 수 있다. 예로서, '침수 피해' 데이터셋과 '호우' 데이터셋 간의 관계를 'has_cause' 관계로 정의하고, '호우' 데이터셋의 속성을 '강우량'으로 정의할 수 있다.Also, the preprocessing module 122 may define a relationship or attribute between each column of the extracted column item data. For example, the relationship between the 'flooding damage' dataset and the 'heavy rain' dataset may be defined as a 'has_cause' relationship, and the property of the 'heavy rain' dataset may be defined as 'rainfall'.

전처리 모듈(122)은 반 구조화 데이터로부터 추출된 컬럼 항목 데이터를 기계 학습이 가능한 형태로 변환한다. 이 때, 컬럼 항목 데이터의 변환 과정은 학습부(11)의 전처리 모듈(112)에서 수행되는 과정과 동일하다. The preprocessing module 122 converts the column item data extracted from the semi-structured data into a form capable of machine learning. In this case, the conversion process of the column item data is the same as the process performed by the pre-processing module 112 of the learning unit 11 .

예측 모듈(123)은 학습 모듈(113)에서 생성된 지식 그래프 후보 추천 모델(31)을 로드하고, 로드 된 지식 그래프 후보 추천 모델(31)에 전처리가 완료된 컬럼 항목 데이터를 입력하여 지식 그래프 후보 추천 모델(31)에 의한 지식 그래프의 후보군(51)을 출력한다. The prediction module 123 loads the knowledge graph candidate recommendation model 31 generated by the learning module 113, and inputs the preprocessed column item data into the loaded knowledge graph candidate recommendation model 31 to recommend the knowledge graph candidate. The candidate group 51 of the knowledge graph by the model 31 is output.

일 실시예로서, 예측 모듈(123)은 컬럼 항목 데이터를 이용하여 유사도에 기반한 클러스터링을 수행하고, 클러스터링의 수행 결과에 기반하여 컬럼 항목 데이터에 대한 태깅(tagging)을 수행할 수 있다. 이 때, 예측 모듈(123)은 태깅된 데이터를 이용하여 지도 학습 방식으로 컬럼 항목 데이터에 대한 노드 추천 정보를 생성할 수 있다. 여기서, 노드 추천 정보는 컬럼 항목 데이터의 각 컬럼에 대응하는 노드에 관한 정보, 또는 지식 그래프 상에 신규로 추가될 노드에 관한 정보를 포함할 수 있다.As an embodiment, the prediction module 123 may perform clustering based on similarity using column item data, and may perform tagging on column item data based on a result of clustering. In this case, the prediction module 123 may generate node recommendation information for column item data in a supervised learning method using the tagged data. Here, the node recommendation information may include information about a node corresponding to each column of column item data or information about a node to be newly added on the knowledge graph.

일 실시예로서, 예측 모듈(123)은 컬럼 항목 데이터를 이용하여 유사도에 기반한 클러스터링을 수행하고, 클러스터링 수행 결과에 기반하여 컬럼 항목 데이터를 최대 확률 값을 가지는 노드 및 연결선에 자동 매칭할 수 있다. 예로서, 기존에 구축되어 있는 지식 그래프를 구성하는 복수의 노드들 중 컬럼 항목 데이터의 각 컬럼에 대해 먼저 최대 확률 값을 가지는 노드를 매칭하고, 매칭된 노드와 연결되어 있는 연결선들 중 최대 확률 값을 가지는 연결선을 매칭하는 방식으로 각 컬럼에 대한 관계 정보를 생성할 수 있다. As an embodiment, the prediction module 123 may perform clustering based on the similarity using the column item data, and automatically match the column item data to the node and the connection line having the maximum probability value based on the clustering performance result. For example, a node having a maximum probability value is first matched for each column of column item data among a plurality of nodes constituting an existing knowledge graph, and a maximum probability value among connecting lines connected to the matched node Relation information for each column can be created by matching the connecting lines with

일 실시예로서, 예측 모듈(123)은 전문가가 추천하는 관계 정보를 추가적으로 입력 받을 수 있고, 입력된 전문가의 추천 관계 정보와 클러스터링의 수행 결과를 이용하여 동일 데이터셋 내부의 관계 또는 데이터셋 간의 관계에 관한 정보를 생성함에 의해 지식 그래프의 후보군을 생성할 수 있다.As an embodiment, the prediction module 123 may additionally receive relationship information recommended by an expert, and a relationship within the same dataset or a relationship between datasets using the inputted expert recommendation relationship information and a result of clustering A candidate group of the knowledge graph can be generated by generating information about

일 실시예로서, 예측 모듈(123)은 출력되는 지식 그래프의 후보군을 시각적으로 표출하는 GUI를 생성하여 사용자 단말(10)로 제공할 수 있다. 이 때, 예측 모듈(123)은 GUI에 대한 사용자 입력에 따라 지식 그래프 후보군을 구성하고 있는 복수의 노드 및 연결선에 관한 정보를 수정할 수 있다. 또한, 예측 모듈(123)은 GUI에 대한 사용자 입력에 따라 지식 그래프 후보군에 대한 데이터 탐색이 요청되면, 지식 그래프 후보군을 구성하고 있는 복수의 노드 및 연결선에 관한 정보에 기반하여 데이터 탐색 정보를 제공할 수 있다.As an embodiment, the prediction module 123 may generate a GUI for visually expressing the candidate group of the output knowledge graph and provide it to the user terminal 10 . In this case, the prediction module 123 may correct information about a plurality of nodes and connection lines constituting the knowledge graph candidate group according to a user input to the GUI. In addition, when data search for the knowledge graph candidate group is requested according to a user input to the GUI, the prediction module 123 provides data search information based on information about a plurality of nodes and connecting lines constituting the knowledge graph candidate group. can

상기와 같은 본 발명의 실시예에 따른 지식 그래프 후보 추천 장치(1)는 지식 그래프 후보 추천을 위한 학습 과정 및 예측 과정을 모두 수행하는 장치로 구현될 수 있다. 이에 따라, 지식 그래프 후보 추천 장치(1)는 반 구조화된 데이터를 이용하여 AI 알고리즘을 통해 컬럼 간의 관계를 생성하고, 이를 기반으로 정확도가 높은 지식 그래프의 후보군을 제공할 수 있다. 또한, 반 구조화 데이터를 이용하여 지식 그래프를 생성 시, 시각화 된 사용자 인터페이스를 통해 지식 그래프의 수정 및 탐색이 용이하도록 할 수 있다.The knowledge graph candidate recommendation apparatus 1 according to the embodiment of the present invention as described above may be implemented as an apparatus that performs both a learning process and a prediction process for recommending a knowledge graph candidate. Accordingly, the knowledge graph candidate recommendation apparatus 1 may generate a relationship between columns through an AI algorithm using semi-structured data, and provide a candidate group of a knowledge graph with high accuracy based on this. In addition, when generating a knowledge graph using semi-structured data, it is possible to facilitate modification and search of the knowledge graph through a visualized user interface.

도 3은 본 발명의 다른 실시예에 따른 지식 그래프 후보 추천 장치의 구성을 도시한 블록도이다. 도 3을 참조하면, 본 발명의 실시예에 따른 지식 그래프 후보 추천 장치(9)는 지식 그래프 후보 추천부(12)를 포함하고, 네트워크를 통해 연결되는 서버(8)와 연결된다. 서버(8)는 학습부(11)를 포함하고, 외부 서버(20)와 네트워크를 통해 연결될 수 있다. 3 is a block diagram illustrating a configuration of a knowledge graph candidate recommendation apparatus according to another embodiment of the present invention. Referring to FIG. 3 , an apparatus 9 for recommending a knowledge graph candidate according to an embodiment of the present invention includes a knowledge graph candidate recommendation unit 12 and is connected to a server 8 connected through a network. The server 8 includes the learning unit 11 and may be connected to the external server 20 through a network.

도시된 예에서, 서버(8)는 기계 학습을 통해 지식 그래프 후보 추천 모델(31)을 생성하는 학습부(11)의 구성을 포함하고, 지식 그래프 후보 추천 장치(9)는 서버(8)에서 생성된 지식 그래프 후보 추천 모델(31)을 이용하여 입력되는 반 구조화 데이터에 대한 지식 그래프 후보군을 생성하는 지식 그래프 후보 추천부(12)의 구성을 포함한다. 이 때, 서버(8)에 포함된 학습부(11)와 지식 그래프 후보 추천 장치(9)에 포함된 지식 그래프 후보 추천부(12)는 도 2에 도시된 지식 그래프 후보 추천 장치(1)에 포함된 학습부(11)와 지식 그래프 후보 추천부(12)에 각각 대응하는 구성이므로, 각 구성이 수행하는 동작에 대한 구체적인 설명은 생략하도록 한다. In the illustrated example, the server 8 includes a configuration of the learning unit 11 that generates the knowledge graph candidate recommendation model 31 through machine learning, and the knowledge graph candidate recommendation device 9 is configured in the server 8 . and a configuration of the knowledge graph candidate recommendation unit 12 for generating a knowledge graph candidate group for the input semi-structured data using the generated knowledge graph candidate recommendation model 31 . At this time, the learning unit 11 included in the server 8 and the knowledge graph candidate recommendation unit 12 included in the knowledge graph candidate recommendation device 9 are connected to the knowledge graph candidate recommendation device 1 shown in FIG. 2 . Since the components respectively correspond to the included learning unit 11 and the knowledge graph candidate recommendation unit 12, detailed descriptions of operations performed by each component will be omitted.

서버(8)는 지식 그래프 후보 추천을 위한 모델을 생성하는 동작을 수행한다. 서버(8)는 외부 서버(20)로부터 제공되는 이전에 구축되어 있는 지식 그래프에 관한 정보를 수집하여 학습 데이터(2)를 구성하고, 이를 이용하여 AI 알고리즘에 기반한 기계 학습을 수행함에 의해 지식 그래프 후보 추천 모델(31)을 생성한다. The server 8 performs an operation of generating a model for recommending a knowledge graph candidate. The server 8 collects information about the previously built knowledge graph provided from the external server 20 to configure the learning data 2, and uses this to perform machine learning based on the AI algorithm to perform machine learning based on the knowledge graph. A candidate recommendation model 31 is generated.

지식 그래프 후보 추천 장치(9)는 사용자로부터 입력되는 반 구조화 데이터에 대한 지식 그래프의 후보군 생성 요청을 처리하고, 그 결과를 화면을 통해 제공한다. The knowledge graph candidate recommendation apparatus 9 processes a request for generating a knowledge graph candidate group for semi-structured data input from a user, and provides the result through a screen.

일 실시예로서, 지식 그래프 후보 추천 장치(9)는 지식 그래프 후보 추천을 위한 모델의 생성 요청을 서버(8)로 전송하고, 서버(8)에서 생성되는 지식 그래프 후보 추천 모델(31)에 관한 정보를 제공받을 수 있다. 지식 그래프 후보 추천 장치(9)는 서버(8)로부터 제공된 지식 그래프 후보 추천 모델(31)을 이용하여 사용자로부터 입력되는 반 구조화 데이터를 이용한 지식 그래프의 후보군을 생성하고, 이를 화면에 표시할 수 있다. As an embodiment, the knowledge graph candidate recommendation apparatus 9 transmits a request for generating a model for recommending a knowledge graph candidate to the server 8 , and relates to the knowledge graph candidate recommendation model 31 generated by the server 8 . information can be provided. The knowledge graph candidate recommendation apparatus 9 may generate a candidate group of the knowledge graph using semi-structured data input from the user using the knowledge graph candidate recommendation model 31 provided from the server 8, and display it on the screen. .

상기와 같은 본 발명의 실시예에 따른 지식 그래프 후보 추천 장치(9)는 지식 그래프의 후보군 생성을 위한 예측 과정만을 수행하고, 예측을 위한 모델을 생성하는 학습 과정은 별도의 서버(8)를 통해 수행될 수 있다. 이에 따라, 지식 그래프의 후보군 생성을 위한 학습 과정 및 예측 과정이 서로 다른 장치에서 수행되므로, 지식 그래프의 후보군을 생성함에 있어 지연되는 시간 없이 높은 성능으로 결과를 제공해줄 수 있다. As described above, the knowledge graph candidate recommendation apparatus 9 according to the embodiment of the present invention performs only a prediction process for generating a candidate group of the knowledge graph, and the learning process for generating a model for prediction is performed through a separate server 8 . can be performed. Accordingly, since the learning process and the prediction process for generating the candidate group of the knowledge graph are performed in different devices, the result can be provided with high performance without delay in generating the candidate group of the knowledge graph.

도 4 내지 도 6은 본 발명의 또 다른 실시예에 따른 지식 그래프 후보 추천 방법을 설명하기 위한 순서도이다. 4 to 6 are flowcharts for explaining a knowledge graph candidate recommendation method according to another embodiment of the present invention.

본 실시예에 따른 지식 그래프 후보 추천 방법은 컴퓨팅 장치(100)에 의하여 실행될 수 있고, 예컨대 지식 그래프 후보 추천 장치(1)에 의해 실행될 수 있다. 본 실시예에 따른 방법을 실행하는 상기 컴퓨팅 장치(100)는 응용 프로그램 실행 환경을 구비한 컴퓨팅 장치일 수 있다. 본 실시예에 따른 방법에 포함되는 일부 동작의 수행 주체에 대한 기재가 생략될 수 있으며, 그러한 경우 그 주체는 상기 컴퓨팅 장치(100)임을 유의한다.The knowledge graph candidate recommendation method according to the present embodiment may be executed by the computing device 100 , for example, by the knowledge graph candidate recommendation device 1 . The computing device 100 executing the method according to the present embodiment may be a computing device having an application program execution environment. Note that the description of the subject performing some operations included in the method according to the present embodiment may be omitted, and in this case, the subject is the computing device 100 .

도 4를 참조하면, 먼저, 동작 S41에서, 반 구조화 데이터로부터 복수 개의 컬럼으로 식별되는 컬럼 항목 데이터가 추출된다. 여기서, 반 구조화 데이터는, 복수 개의 컬럼으로 구분될 수 있는 타입의 원시 데이터로서, 예컨대 EXCEL, CSV 등과 같은 형식의 데이터일 수 있다. Referring to FIG. 4 , first, in operation S41 , column item data identified as a plurality of columns is extracted from the semi-structured data. Here, the semi-structured data is raw data of a type that can be divided into a plurality of columns, and may be, for example, data in a format such as EXCEL or CSV.

일 실시예로서, 동작 S41은, 반 구조화 데이터에서 식별되는 각 컬럼의 명칭을 유사어 또는 관련어 사전 정보를 이용하여 표준화하는 동작을 포함할 수 있다.As an embodiment, operation S41 may include an operation of standardizing the name of each column identified in the semi-structured data using synonym or related word dictionary information.

다음으로, 동작 S42에서, 추출된 컬럼 항목 데이터를 지식 그래프 후보 추천 모델에 입력하여 복수의 노드 및 복수의 노드 간 관계를 나타내는 연결선으로 구성된 지식 그래프의 후보군이 출력된다.Next, in operation S42, the extracted column item data is input to the knowledge graph candidate recommendation model, and a candidate group of the knowledge graph composed of a plurality of nodes and a connection line representing a relationship between the plurality of nodes is output.

일 실시예로서, 동작 S42는, 컬럼 항목 데이터를 이용하여 유사도에 기반한 클러스터링을 수행하는 동작, 및 클러스터링 수행 결과에 기반하여 상기 컬럼 항목 데이터를 최대 확률 값을 가지는 노드 및 연결선에 자동 매칭하는 동작을 포함할 수 있다. 이 때, 컬럼 항목 데이터의 데이터셋 명칭, 컬럼 명칭, 및 로우(Raw) 데이터를 이용하여 클러스터링을 수행할 수 있다. 이에 따라, 신규 데이터셋이 입력되는 경우, 신규 데이터셋에 포함된 컬럼을 기존에 구축되어 있는 지식 그래프의 노드 및 연결선에 매칭시키는 것이 가능하다.As an embodiment, operation S42 includes an operation of performing clustering based on similarity using column item data, and an operation of automatically matching the column item data to a node and a connection line having a maximum probability value based on the clustering execution result. may include In this case, clustering may be performed using a dataset name, a column name, and raw data of column item data. Accordingly, when a new data set is input, it is possible to match the columns included in the new data set with the nodes and connecting lines of the existing knowledge graph.

일 실시예로서, 동작 S42는, 전문가의 추천 관계 정보를 입력 받는 동작, 전문가의 추천 관계 정보와 클러스터링 수행 결과를 이용하여 동일 데이터셋 내부의 관계 또는 데이터셋 간의 관계에 관한 정보를 생성하는 동작, 및 동일 데이터셋 내부의 관계 또는 데이터셋 간의 관계에 관한 정보를 이용하여 지식 그래프의 후보군을 생성하는 동작을 포함할 수 있다.As an embodiment, operation S42 includes an operation of receiving the expert's recommendation relationship information, an operation of generating information on a relationship within the same dataset or a relationship between datasets using the expert's recommendation relationship information and a result of clustering; and generating a candidate group of a knowledge graph by using information about a relationship within the same dataset or a relationship between datasets.

일 실시예로서, 도 5를 참조하면, 동작 S42는, 컬럼 항목 데이터를 이용하여 유사도에 기반한 클러스터링을 수행하는 동작 S421, 클러스터링 수행 결과에 기반하여 상기 컬럼 항목 데이터에 대한 태깅(tagging)을 수행하는 동작 S422, 및 태깅된 데이터를 이용하여 지도 학습 방식으로 상기 컬럼 항목 데이터에 대한 노드 추천 정보를 생성하는 동작 S423을 포함할 수 있다.As an embodiment, referring to FIG. 5 , in operation S42, clustering is performed based on similarity using column item data in operation S421, and tagging is performed on the column item data based on a result of performing clustering. It may include operation S422 and operation S423 of generating node recommendation information for the column item data in a supervised learning method using the tagged data.

일 실시예로서, 상기 방법은, 동작 S42의 수행 결과 출력되는 지식 그래프의 후보군에 관한 정보를 학습 데이터에 추가하는 동작을 더 포함할 수 있다. 이에 따라, AI 기반 알고리즘을 이용하여 생성된 지식 그래프의 후보군에 포함되어 있는 노드들 및 노드들 간 관계 정보를 학습 데이터로 활용함에 의해, 이후에 보다 정교한 지식 그래프 후보 추천 모델을 생성할 수 있다.As an embodiment, the method may further include adding information about a candidate group of a knowledge graph output as a result of performing operation S42 to the learning data. Accordingly, by using the nodes included in the candidate group of the knowledge graph generated using the AI-based algorithm and the relationship information between the nodes as learning data, a more sophisticated knowledge graph candidate recommendation model can be generated later.

일 실시예로서, 상기 방법은, 동작 S42의 수행 결과 출력되는 지식 그래프의 후보군을 시각적으로 표출하는 GUI를 제공하는 동작, 및 GUI에 대한 사용자 입력에 따라 지식 그래프 후보군을 구성하는 복수의 노드 및 연결선에 관한 정보를 수정하는 동작을 더 포함할 수 있다.As an embodiment, the method includes an operation of providing a GUI for visually expressing a candidate group of a knowledge graph output as a result of performing operation S42, and a plurality of nodes and connecting lines constituting a candidate group of a knowledge graph according to a user input to the GUI It may further include an operation of correcting information about the .

일 실시예로서, 도 6을 참조하면, 동작 S42가 수행된 이후의 추가적인 동작으로써 동작 S43 및 동작 S43가 수행될 수 있다.As an embodiment, referring to FIG. 6 , operations S43 and S43 may be performed as additional operations after operation S42 is performed.

동작 S43에서, 동작 S42의 수행 결과 출력되는 지식 그래프의 후보군을 시각적으로 표출하는 GUI가 제공되고, 동작 S44에서, GUI에 대한 사용자 입력에 따라 지식 그래프 후보군을 구성하는 복수의 노드 및 연결선에 관한 정보에 기반한 데이터 탐색 정보가 제공될 수 있다.In operation S43, a GUI for visually expressing the candidate group of the knowledge graph output as a result of the operation S42 is provided, and in operation S44, information on a plurality of nodes and connection lines constituting the knowledge graph candidate group according to a user input to the GUI Based on the data search information may be provided.

상기와 같은 본 발명의 실시예에 따른 방법에 의하면, 반 구조화된 데이터를 이용하여 AI 알고리즘을 통해 컬럼 간의 관계를 생성하고, 이를 기반으로 정확도가 높은 지식 그래프의 후보군을 제공할 수 있다.According to the method according to the embodiment of the present invention as described above, a relationship between columns is generated through an AI algorithm using semi-structured data, and based on this, a candidate group of a knowledge graph with high accuracy can be provided.

도 7은 본 발명의 몇몇 실시예에 따른 반 구조화된 데이터의 컬럼 간 관계 정보를 도출하여 지식 그래프를 생성하는 예이다. 도 7을 참조하면, 지식 그래프 후보 추천 장치(1)는 반 구조화된 데이터셋 A(81)으로부터 지점(83), 주소, 및 피해 금액 등의 복수의 컬럼 항목을 식별하고, 식별된 각 컬럼 항목의 데이터를 추출할 수 있다. 지식 그래프 후보 추천 장치(1)는 데이터셋 A(81)와 동일한 방식으로 반 구조화된 데이터셋 B(82)로부터 지역(84), 날짜, 강우량 등의 복수의 컬럼 항목을 식별하고, 식별된 각 컬럼 항목의 데이터를 추출할 수 있다.7 is an example of generating a knowledge graph by deriving relationship information between columns of semi-structured data according to some embodiments of the present invention. Referring to FIG. 7 , the knowledge graph candidate recommendation apparatus 1 identifies a plurality of column items such as a point 83 , an address, and an amount of damage from the semi-structured dataset A 81 , and each identified column item data can be extracted. The knowledge graph candidate recommendation apparatus 1 identifies a plurality of column items, such as area 84, date, rainfall, etc., from the semi-structured dataset B 82 in the same manner as the dataset A 81, and identifies each You can extract the data of column items.

도시된 예예서, 지식 그래프 후보 추천 장치(1)는 추출되는 데이터셋 A(81)의 컬럼 항목 데이터와 데이터셋 B(82)의 컬럼 항목 데이터를 이용하여 클러스터링을 수행하고, 클러스터링 결과 데이터셋 A(81)와 데이터셋 B(82)를 유사한 데이터셋으로 분류하고, 두 개의 데이터셋 간의 관계 정보를 생성할 수 있다. 이 때, 데이터셋 간의 관계 정보를 생성함에 있어 클러스터링 결과 외에 전문가의 추천 정보가 추가적으로 반영될 수도 있다.In the illustrated example, the knowledge graph candidate recommendation apparatus 1 performs clustering using the extracted column item data of the dataset A (81) and the column item data of the dataset B (82), and the clustering result dataset A (81) and dataset B (82) may be classified as similar datasets, and relationship information between the two datasets may be generated. In this case, in generating relationship information between datasets, expert recommendation information may be additionally reflected in addition to the clustering result.

이에 따라, 두 개의 데이터셋 간의 관계 정보가 생성되면, 데이터셋 A(81)에 대응하는 '침수 피해' 노드(810)와 데이터셋 B(82)에 대응하는 '호우' 노드(820)가 생성되고, 침수 피해' 노드(810)와 '호우' 노드(820) 간 'Has_Cause' 관계를 갖는 연결선이 생성될 수 있다. Accordingly, when the relationship information between the two datasets is generated, a 'flood damage' node 810 corresponding to the dataset A (81) and a 'heavy rain' node 820 corresponding to the dataset B (82) are generated. and a connection line having a 'Has_Cause' relationship between the flood damage' node 810 and the 'heavy rain' node 820 may be generated.

이 때, 관계 정보가 생성된 데이터셋 A(81)의 지점(83) 컬럼과 데이터셋 B(82)의 지역(84) 컬럼을 유사한 컬럼 항목으로 결정하고, 두 개의 컬럼 항목이 동일한 명칭을 가지도록 태깅(tagging)이 수행될 수 있다. At this time, the point 83 column of the dataset A 81 and the region 84 column of the dataset B 82 in which the relationship information is generated are determined as similar column items, and the two column items have the same name. tagging may be performed.

도 8은 본 발명의 몇몇 실시예에 따른 데이터셋에 포함된 컬럼을 지식 그래프의 노드 및 연결선에 매칭하는 예이다. 도 8을 참조하면, 지식 그래프 후보 추천 장치(1)는 AI 기반 알고리즘을 이용하여 지식 그래프가 생성된 상태에서 신규 데이터가 입력되면, 신규 데이터에 포함된 컬럼을 지식 그래프의 노드 및 연결선에 매칭할 수 있다.8 is an example of matching columns included in a data set according to some embodiments of the present invention to nodes and connecting lines of a knowledge graph. Referring to FIG. 8 , when new data is input while the knowledge graph is generated using an AI-based algorithm, the knowledge graph candidate recommendation apparatus 1 matches the columns included in the new data to the nodes and connecting lines of the knowledge graph. can

도시된 예에서, 지식 그래프 후보 추천 장치(1)는 '의료기관' 컬럼(91)을 포함하는 새로운 데이터셋이 입력되면, '의료기관' 컬럼(91)을 지식 그래프에 포함되어 있는 복수의 노드(node)들 중 확률 값이 90%로 최대인 '병원' 노드(921)에 매칭할 수 있다. 또한, 지식 그래프 후보 추천 장치(1)는 '의료기관' 컬럼(91)을 지식 그래프에 포함되어 있는 복수 개의 연결선(edge) 중 확률 값이 80%로 최대인 '병원-도로맵' 연결선(93)에 매칭할 수 있다. 이에 따라, In the illustrated example, when a new dataset including a 'medical institution' column 91 is input, the knowledge graph candidate recommendation apparatus 1 displays the 'medical institution' column 91 to a plurality of nodes included in the knowledge graph. ), it is possible to match the 'hospital' node 921 with the maximum probability value of 90%. In addition, the knowledge graph candidate recommendation device 1 selects the 'medical institution' column 91 from the 'hospital-road map' connection line 93 with a maximum probability value of 80% among a plurality of edges included in the knowledge graph. can be matched to Accordingly,

상기와 같이 본 발명의 일실시예에 의하면, 기존에 구축되어 있는 지식 그래프를 구성하는 복수의 노드들 중 컬럼 항목 데이터의 각 컬럼에 대해 먼저 최대 확률 값을 가지는 노드를 매칭하고, 매칭된 노드와 연결되어 있는 연결선들 중 최대 확률 값을 가지는 연결선을 매칭하는 방식으로 각 컬럼에 대한 관계 정보를 생성할 수 있다.As described above, according to an embodiment of the present invention, a node having a maximum probability value is first matched for each column of column item data among a plurality of nodes constituting an existing knowledge graph, and the matched node is Relation information for each column may be generated by matching the connecting line having the maximum probability value among the connected connecting lines.

도 9는 본 발명의 몇몇 실시예에 따른 방법들을 구현할 수 있는 예시적인 컴퓨팅 장치의 하드웨어 구성도이다. 도 9에 도시된 바와 같이, 컴퓨팅 장치(100)는 하나 이상의 프로세서(101), 버스(107), 네트워크 인터페이스(102), 프로세서(101)에 의하여 수행되는 컴퓨터 프로그램(105)을 로드(load)하는 메모리(103)와, 컴퓨터 프로그램(105)를 저장하는 스토리지(104)를 포함할 수 있다. 다만, 도 9에는 본 발명의 실시예와 관련 있는 구성요소들 만이 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 9에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다. 9 is a hardware configuration diagram of an exemplary computing device that may implement methods according to some embodiments of the present invention. As shown in FIG. 9 , the computing device 100 loads one or more processors 101 , a bus 107 , a network interface 102 , and a computer program 105 executed by the processor 101 . It may include a memory 103 and a storage 104 for storing the computer program (105). However, only the components related to the embodiment of the present invention are shown in FIG. 9 . Accordingly, those skilled in the art to which the present invention pertains can see that other general-purpose components other than the components shown in FIG. 9 may be further included.

프로세서(101)는 컴퓨팅 장치(100)의 각 구성의 전반적인 동작을 제어한다. 프로세서(101)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서 중 적어도 하나를 포함하여 구성될 수 있다. 또한, 프로세서(101)는 본 발명의 다양한 실시예들에 따른 방법/동작을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있다. 컴퓨팅 장치(100)는 하나 이상의 프로세서를 구비할 수 있다.The processor 101 controls the overall operation of each component of the computing device 100 . The processor 101 includes at least one of a central processing unit (CPU), a micro processor unit (MPU), a micro controller unit (MCU), a graphic processing unit (GPU), or any type of processor well known in the art. may be included. In addition, the processor 101 may perform an operation on at least one application or program for executing the method/operation according to various embodiments of the present disclosure. The computing device 100 may include one or more processors.

메모리(103)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(103)는 본 발명의 다양한 실시예들에 따른 방법/동작들을 실행하기 위하여 스토리지(104)로부터 하나 이상의 프로그램(105)을 로드(load) 할 수 있다. 예를 들어, 컴퓨터 프로그램(105)이 메모리(103)에 로드 되면, 로직(또는 모듈)이 메모리(103) 상에 구현될 수 있다. 메모리(103)의 예시는 RAM이 될 수 있으나, 이에 한정되는 것은 아니다.The memory 103 stores various data, commands and/or information. Memory 103 may load one or more programs 105 from storage 104 to execute methods/operations according to various embodiments of the present invention. For example, if the computer program 105 is loaded into the memory 103 , logic (or modules) may be implemented on the memory 103 . An example of the memory 103 may be a RAM, but is not limited thereto.

버스(107)는 컴퓨팅 장치(100)의 구성 요소 간 통신 기능을 제공한다. 버스(107)는 주소 버스(Address Bus), 데이터 버스(Data Bus) 및 제어 버스(Control Bus) 등 다양한 형태의 버스로 구현될 수 있다.The bus 107 provides communication functions between the components of the computing device 100 . The bus 107 may be implemented as various types of buses, such as an address bus, a data bus, and a control bus.

네트워크 인터페이스(102)는 컴퓨팅 장치(100)의 유무선 인터넷 통신을 지원한다. 네트워크 인터페이스(102)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 네트워크 인터페이스(102)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다.The network interface 102 supports wired/wireless Internet communication of the computing device 100 . The network interface 102 may support various communication methods other than Internet communication. To this end, the network interface 102 may be configured to include a communication module well known in the art.

스토리지(104)는 하나 이상의 컴퓨터 프로그램(105)을 비임시적으로 저장할 수 있다. 스토리지(104)는 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다. The storage 104 may store one or more computer programs 105 non-transitory. The storage 104 may include a non-volatile memory such as a flash memory, a hard disk, a removable disk, or any type of computer-readable recording medium well known in the art.

컴퓨터 프로그램(105)은 본 발명의 다양한 실시예들에 따른 방법/동작들이 구현된 하나 이상의 인스트럭션들(instructions)을 포함할 수 있다. 컴퓨터 프로그램(105)이 메모리(103)에 로드 되면, 프로세서(101)는 상기 하나 이상의 인스트럭션들을 실행시킴으로써 본 발명의 다양한 실시예들에 따른 방법/동작들을 수행할 수 있다.The computer program 105 may include one or more instructions in which methods/operations according to various embodiments of the present invention are implemented. When the computer program 105 is loaded into the memory 103 , the processor 101 may execute the one or more instructions to perform methods/operations according to various embodiments of the present invention.

지금까지 도 1 내지 도 9를 참조하여 본 발명의 다양한 실시예들 및 그 실시예들에 따른 효과들을 언급하였다. 본 발명의 기술적 사상에 따른 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.So far, various embodiments of the present invention and effects according to the embodiments have been described with reference to FIGS. 1 to 9 . Effects according to the technical spirit of the present invention are not limited to the above-mentioned effects, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.

지금까지 설명된 본 발명의 기술적 사상은 컴퓨터가 읽을 수 있는 매체 상에 컴퓨터가 읽을 수 있는 코드로 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는, 예를 들어 이동형 기록 매체(CD, DVD, 블루레이 디스크, USB 저장 장치, 이동식 하드 디스크)이거나, 고정식 기록 매체(ROM, RAM, 컴퓨터 구비 형 하드 디스크)일 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체에 기록된 상기 컴퓨터 프로그램은 인터넷 등의 네트워크를 통하여 다른 컴퓨팅 장치에 전송되어 상기 다른 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 다른 컴퓨팅 장치에서 사용될 수 있다.The technical idea of the present invention described so far may be embodied as computer-readable codes on a computer-readable medium. The computer-readable recording medium may be, for example, a removable recording medium (CD, DVD, Blu-ray disk, USB storage device, removable hard disk) or a fixed recording medium (ROM, RAM, computer-equipped hard disk). can The computer program recorded in the computer-readable recording medium may be transmitted to another computing device through a network such as the Internet and installed in the other computing device, thereby being used in the other computing device.

이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명의 기술적 사상이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다.In the above, even if all the components constituting the embodiment of the present invention are described as being combined or operating in combination, the technical spirit of the present invention is not necessarily limited to this embodiment. That is, within the scope of the object of the present invention, all the components may operate by selectively combining one or more.

도면에서 동작들이 특정한 순서로 도시되어 있지만, 반드시 동작들이 도시된 특정한 순서로 또는 순차적 순서로 실행되어야만 하거나 또는 모든 도시 된 동작들이 실행되어야만 원하는 결과를 얻을 수 있는 것으로 이해되어서는 안 된다. 특정 상황에서는, 멀티태스킹 및 병렬 처리가 유리할 수도 있다. 더욱이, 위에 설명한 실시예들에서 다양한 구성들의 분리는 그러한 분리가 반드시 필요한 것으로 이해되어서는 안 되고, 설명된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품으로 패키지 될 수 있음을 이해하여야 한다.Although acts are shown in a specific order in the drawings, it should not be understood that the acts must be performed in the specific order or sequential order shown, or that all shown acts must be performed to obtain a desired result. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of the various components in the embodiments described above should not be construed as necessarily requiring such separation, and the program components and systems described may generally be integrated together into a single software product or packaged into multiple software products. It should be understood that there is

이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 본 발명이 다른 구체적인 형태로도 실시될 수 있다는 것을 이해할 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명에 의해 정의되는 기술적 사상의 권리범위에 포함되는 것으로 해석되어야 할 것이다.Although embodiments of the present invention have been described above with reference to the accompanying drawings, those of ordinary skill in the art to which the present invention pertains can practice the present invention in other specific forms without changing the technical spirit or essential features. can understand that there is Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive. The protection scope of the present invention should be interpreted by the claims below, and all technical ideas within the equivalent range should be interpreted as being included in the scope of the technical ideas defined by the present invention.

Claims (16)

컴퓨팅 장치에 의해 수행되는 반 구조화 데이터를 이용한 지식그래프 후보 추천 방법에 있어서,
반 구조화(semi-structured) 데이터로부터 복수 개의 컬럼으로 식별되는 컬럼 항목 데이터를 추출하는 단계; 및
상기 추출된 컬럼 항목 데이터를 지식 그래프 후보 추천 모델에 입력하고, 상기 지식 그래프 후보 추천 모델의 출력 데이터를 이용하여 상기 추출된 컬럼 항목 데이터에 매칭되는 지식 그래프의 후보 노드(node) 및 후보 연결선(edge)에 대한 정보를 디스플레이하는 단계를 포함하되,
상기 지식 그래프의 후보 노드 및 후보 연결선에 대한 정보를 디스플레이하는 단계는,
상기 컬럼 항목 데이터를 이용하여 유사도에 기반한 클러스터링을 수행하는 단계; 및
상기 클러스터링 수행 결과에 기반하여 상기 컬럼 항목 데이터를 최대 확률 값을 가지는 노드 및 연결선에 자동 매칭하는 단계를 포함하고,
상기 지식 그래프 후보 추천 모델은, 지식 그래프 정보를 포함하는 학습 데이터를 이용한 기계 학습을 수행하여 생성된 것인,
반 구조화 데이터를 이용한 지식그래프 후보 추천 방법.
In the knowledge graph candidate recommendation method using semi-structured data performed by a computing device,
extracting column item data identified by a plurality of columns from semi-structured data; and
The extracted column item data is input to the knowledge graph candidate recommendation model, and candidate nodes and candidate edges of the knowledge graph matched to the extracted column item data using the output data of the knowledge graph candidate recommendation model ) comprising the step of displaying information about,
Displaying information on candidate nodes and candidate connection lines of the knowledge graph comprises:
performing clustering based on similarity using the column item data; and
and automatically matching the column item data to a node and a connecting line having a maximum probability value based on the clustering performance result,
The knowledge graph candidate recommendation model is generated by performing machine learning using learning data including knowledge graph information,
A knowledge graph candidate recommendation method using semi-structured data.
제1 항에 있어서,
상기 반 구조화(semi-structured) 데이터로부터 복수 개의 컬럼으로 식별되는 컬럼 항목 데이터를 추출하는 단계는,
상기 반 구조화 데이터에서 식별되는 각 컬럼의 명칭을 유사어 또는 관련어 사전 정보를 이용하여 표준화하는 단계를 포함하는,
반 구조화 데이터를 이용한 지식그래프 후보 추천 방법.
The method of claim 1,
The step of extracting column item data identified as a plurality of columns from the semi-structured data,
Normalizing the name of each column identified in the semi-structured data using synonym or related word dictionary information;
A knowledge graph candidate recommendation method using semi-structured data.
삭제delete 제1 항에 있어서,
상기 컬럼 항목 데이터를 이용하여 유사도에 기반한 클러스터링을 수행하는 단계는,
상기 컬럼 항목 데이터의 데이터셋 명칭, 컬럼 명칭, 및 로우(Raw) 데이터를 이용하여 클러스터링을 수행하는 단계를 포함하는,
반 구조화 데이터를 이용한 지식그래프 후보 추천 방법.
The method of claim 1,
The step of performing clustering based on the similarity using the column item data includes:
Comprising performing clustering using a dataset name, a column name, and raw data of the column item data,
A knowledge graph candidate recommendation method using semi-structured data.
제1 항에 있어서,
상기 추출된 컬럼 항목 데이터를 지식 그래프 후보 추천 모델에 입력하여 복수의 노드(node) 및 상기 복수의 노드 간 관계를 나타내는 연결선(edge)으로 구성된 지식 그래프의 후보군을 출력하는 단계는,
전문가의 추천 관계 정보를 입력 받는 단계;
상기 전문가의 추천 관계 정보와 상기 클러스터링 수행 결과를 이용하여 동일 데이터셋 내부의 관계 또는 데이터셋 간의 관계에 관한 정보를 생성하는 단계; 및
상기 생성된 동일 데이터셋 내부의 관계 또는 데이터셋 간의 관계에 관한 정보를 이용하여 상기 지식 그래프의 후보군을 생성하는 단계를 포함하는,
반 구조화 데이터를 이용한 지식그래프 후보 추천 방법.
The method of claim 1,
The step of inputting the extracted column item data into a knowledge graph candidate recommendation model and outputting a candidate group of a knowledge graph consisting of a plurality of nodes and an edge indicating a relationship between the plurality of nodes comprises:
receiving an input of expert recommendation relationship information;
generating information on a relationship within the same dataset or a relationship between datasets using the expert's recommendation relationship information and the clustering performance result; and
and generating a candidate group of the knowledge graph by using information about a relationship within the generated same dataset or a relationship between datasets.
A knowledge graph candidate recommendation method using semi-structured data.
제1 항에 있어서,
상기 추출된 컬럼 항목 데이터를 지식 그래프 후보 추천 모델에 입력하여 복수의 노드(node) 및 상기 복수의 노드 간 관계를 나타내는 연결선(edge)으로 구성된 지식 그래프의 후보군을 출력하는 단계는,
상기 클러스터링 수행 결과에 기반하여 상기 컬럼 항목 데이터에 대한 태깅(tagging)을 수행하는 단계; 및
상기 태깅된 데이터를 이용하여 지도 학습 방식으로 상기 컬럼 항목 데이터에 대한 노드 추천 정보를 생성하는 단계를 포함하는,
반 구조화 데이터를 이용한 지식그래프 후보 추천 방법.
The method of claim 1,
The step of inputting the extracted column item data into a knowledge graph candidate recommendation model and outputting a candidate group of a knowledge graph consisting of a plurality of nodes and an edge indicating a relationship between the plurality of nodes comprises:
performing tagging on the column item data based on a result of performing the clustering; and
generating node recommendation information for the column item data in a supervised learning method using the tagged data;
A knowledge graph candidate recommendation method using semi-structured data.
제1 항에 있어서,
상기 출력되는 지식 그래프의 후보군에 관한 정보를 상기 학습 데이터에 추가하는 단계를 더 포함하는,
반 구조화 데이터를 이용한 지식그래프 후보 추천 방법.
The method of claim 1,
Further comprising the step of adding information about the candidate group of the output knowledge graph to the learning data,
A knowledge graph candidate recommendation method using semi-structured data.
제1 항에 있어서,
상기 반 구조화 데이터는, 복수 개의 컬럼으로 구분될 수 있는 타입의 원시 데이터인,
반 구조화 데이터를 이용한 지식그래프 후보 추천 방법.
The method of claim 1,
The semi-structured data is raw data of a type that can be divided into a plurality of columns,
A knowledge graph candidate recommendation method using semi-structured data.
제1 항에 있어서,
상기 출력되는 지식 그래프의 후보군을 시각적으로 표출하는 GUI를 제공하는 단계; 및
상기 GUI에 대한 사용자 입력에 따라 상기 지식 그래프 후보군을 구성하는 상기 복수의 노드 및 연결선에 관한 정보를 수정하는 단계를 더 포함하는,
반 구조화 데이터를 이용한 지식그래프 후보 추천 방법.
The method of claim 1,
providing a GUI for visually expressing the candidate group of the output knowledge graph; and
Further comprising the step of modifying information about the plurality of nodes and connection lines constituting the knowledge graph candidate group according to a user input to the GUI,
A knowledge graph candidate recommendation method using semi-structured data.
제1 항에 있어서,
상기 출력되는 지식 그래프의 후보군을 시각적으로 표출하는 GUI를 제공하는 단계; 및
상기 GUI에 대한 사용자 입력에 따라 상기 지식 그래프 후보군을 구성하는 상기 복수의 노드 및 연결선에 관한 정보에 기반한 데이터 탐색 정보를 제공하는 단계를 더 포함하는,
반 구조화 데이터를 이용한 지식그래프 후보 추천 방법.
The method of claim 1,
providing a GUI for visually expressing the candidate group of the output knowledge graph; and
Further comprising the step of providing data search information based on information on the plurality of nodes and connection lines constituting the knowledge graph candidate group according to a user input to the GUI,
A knowledge graph candidate recommendation method using semi-structured data.
컴퓨터로 하여금 제1 항 내지 제10 항 중 어느 한 항의 방법을 수행하도록 하는 컴퓨터 프로그램이 저장된,
컴퓨터 판독 가능한 비일시적 기록 매체.
A computer program for causing a computer to perform the method of any one of claims 1 to 10 is stored therein,
A computer-readable non-transitory recording medium.
외부 서버와 통신하는 통신부;
상기 외부 서버로부터 수집된 지식 그래프 정보를 이용하여 학습 데이터를 생성하고, 상기 학습 데이터를 이용하여 AI 기반 알고리즘을 학습함에 의해 지식 그래프 후보 추천 모델을 생성하는 학습부; 및
반 구조화(semi-structured) 데이터로부터 복수 개의 컬럼으로 식별되는 컬럼 항목 데이터를 추출하고, 상기 추출된 컬럼 항목 데이터를 상기 생성된 지식 그래프 후보 추천 모델에 입력하고, 상기 지식 그래프 후보 추천 모델의 출력 데이터를 이용하여 상기 추출된 컬럼 항목 데이터에 매칭되는 지식 그래프 후보 노드(node) 및 후보 연결선(edge)에 대한 정보를 디스플레이하는 지식 그래프 후보 추천부를 포함하되,
상기 지식 그래프 후보 추천부는,
상기 컬럼 항목 데이터를 이용하여 유사도에 기반한 클러스터링을 수행하고, 상기 클러스터링 수행 결과에 기반하여 상기 컬럼 항목 데이터를 최대 확률 값을 가지는 노드 및 연결선에 자동 매칭하는,
지식그래프 후보 추천 장치.
a communication unit for communicating with an external server;
a learning unit that generates learning data using the knowledge graph information collected from the external server, and generates a knowledge graph candidate recommendation model by learning an AI-based algorithm using the learning data; and
Extracting column item data identified as a plurality of columns from semi-structured data, inputting the extracted column item data into the generated knowledge graph candidate recommendation model, and output data of the knowledge graph candidate recommendation model A knowledge graph candidate recommendation unit for displaying information on a knowledge graph candidate node and a candidate edge matching the extracted column item data using
The knowledge graph candidate recommendation unit,
performing clustering based on similarity using the column item data, and automatically matching the column item data to a node and a connection line having a maximum probability value based on the clustering result;
Knowledge Graph candidate recommendation device.
삭제delete 제12 항에 있어서,
상기 지식 그래프 후보 추천부는,
전문가의 추천 관계 정보를 수신하고, 상기 전문가의 추천 관계 정보와 상기 클러스터링 수행 결과를 이용하여 동일 데이터셋 내부의 관계 또는 데이터셋 간의 관계에 관한 정보를 생성하고, 상기 생성된 동일 데이터셋 내부의 관계 또는 데이터셋 간의 관계에 관한 정보를 이용하여 상기 지식 그래프의 후보군을 생성하는,
지식그래프 후보 추천 장치.
13. The method of claim 12,
The knowledge graph candidate recommendation unit,
Receives expert recommendation relationship information, generates information about a relationship within the same dataset or a relationship between datasets using the expert recommendation relationship information and the clustering performance result, and generates the generated internal relationship within the same dataset or generating a candidate group of the knowledge graph by using information about a relationship between data sets,
Knowledge Graph candidate recommendation device.
제12 항에 있어서,
상기 지식 그래프 후보 추천부는,
상기 클러스터링 수행 결과에 기반하여 상기 컬럼 항목 데이터에 대한 태깅(tagging)을 수행하고, 상기 태깅된 데이터를 이용하여 지도 학습 방식으로 상기 컬럼 항목 데이터에 대한 노드 추천 정보를 생성하는,
지식그래프 후보 추천 장치.
13. The method of claim 12,
The knowledge graph candidate recommendation unit,
performing tagging on the column item data based on a result of performing the clustering, and generating node recommendation information for the column item data in a supervised learning method using the tagged data,
Knowledge Graph candidate recommendation device.
하나 이상의 프로세서;
외부장치와 통신하는 통신 인터페이스;
상기 프로세서에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리; 및
상기 컴퓨터 프로그램을 저장하는 스토리지를 포함하되,
상기 컴퓨터 프로그램은,
서버로부터 지식 그래프 후보 추천 모델에 관한 정보를 수신하는 동작,
사용자 입력에 의해 반 구조화(semi-structured) 데이터를 획득하는 동작,
상기 반 구조화 데이터로부터 복수 개의 컬럼으로 식별되는 컬럼 항목 데이터를 추출하는 동작,
상기 추출된 컬럼 항목 데이터를 상기 지식 그래프 후보 추천 모델에 입력하고, 상기 지식 그래프 후보 추천 모델의 출력 데이터를 이용하여 상기 추출된 컬럼 항목 데이터에 매칭되는 지식 그래프 후보 노드(node) 및 후보 연결선(edge)에 대한 정보를 디스플레이하는 동작, 및
상기 컬럼 항목 데이터를 이용하여 유사도에 기반한 클러스터링을 수행하고,
상기 클러스터링 수행 결과에 기반하여 상기 컬럼 항목 데이터를 최대 확률 값을 가지는 노드 및 연결선에 자동 매칭하는 동작을 수행하기 위한 인스트럭션을 포함하고,
상기 지식 그래프 후보 추천 모델은, 지식 그래프 정보를 포함하는 학습 데이터를 이용한 기계 학습을 수행하여 생성된 것인,
지식그래프 후보 추천 장치.
one or more processors;
a communication interface for communicating with an external device;
a memory for loading a computer program executed by the processor; and
a storage for storing the computer program;
The computer program is
Receiving information about the knowledge graph candidate recommendation model from the server;
obtaining semi-structured data by user input;
extracting column item data identified by a plurality of columns from the semi-structured data;
The extracted column item data is input to the knowledge graph candidate recommendation model, and knowledge graph candidate nodes and candidate edges matching the extracted column item data using the output data of the knowledge graph candidate recommendation model are used. ) to display information about, and
Clustering is performed based on the similarity using the column item data,
and instructions for automatically matching the column item data to a node and a connecting line having a maximum probability value based on the clustering execution result,
The knowledge graph candidate recommendation model is generated by performing machine learning using learning data including knowledge graph information,
Knowledge Graph candidate recommendation device.
KR1020210152687A 2021-11-09 2021-11-09 Method for recommendating candidate of knowledge graph using semi-structured data and apparatus implementing the same method KR102427368B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210152687A KR102427368B1 (en) 2021-11-09 2021-11-09 Method for recommendating candidate of knowledge graph using semi-structured data and apparatus implementing the same method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210152687A KR102427368B1 (en) 2021-11-09 2021-11-09 Method for recommendating candidate of knowledge graph using semi-structured data and apparatus implementing the same method

Publications (1)

Publication Number Publication Date
KR102427368B1 true KR102427368B1 (en) 2022-08-01

Family

ID=82844331

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210152687A KR102427368B1 (en) 2021-11-09 2021-11-09 Method for recommendating candidate of knowledge graph using semi-structured data and apparatus implementing the same method

Country Status (1)

Country Link
KR (1) KR102427368B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115982429A (en) * 2023-03-21 2023-04-18 中交第四航务工程勘察设计院有限公司 Knowledge management method and system based on flow control
CN116719955A (en) * 2023-08-09 2023-09-08 北京国电通网络技术有限公司 Label labeling information generation method and device, electronic equipment and readable medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190114916A (en) 2018-03-30 2019-10-10 조영화 Method and System for creating and managing the relation based document
WO2020139861A1 (en) * 2018-12-24 2020-07-02 Roam Analytics, Inc. Constructing a knowledge graph employing multiple subgraphs and a linking layer including multiple linking nodes
CN111949828A (en) * 2019-05-17 2020-11-17 南京农业大学 Automatic construction method of rice cultivation mode knowledge graph facing semi-structured form
KR20210063874A (en) * 2019-11-25 2021-06-02 주식회사 데이터마케팅코리아 A method and an apparatus for analyzing marketing information based on knowledge graphs

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190114916A (en) 2018-03-30 2019-10-10 조영화 Method and System for creating and managing the relation based document
WO2020139861A1 (en) * 2018-12-24 2020-07-02 Roam Analytics, Inc. Constructing a knowledge graph employing multiple subgraphs and a linking layer including multiple linking nodes
CN111949828A (en) * 2019-05-17 2020-11-17 南京农业大学 Automatic construction method of rice cultivation mode knowledge graph facing semi-structured form
KR20210063874A (en) * 2019-11-25 2021-06-02 주식회사 데이터마케팅코리아 A method and an apparatus for analyzing marketing information based on knowledge graphs

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115982429A (en) * 2023-03-21 2023-04-18 中交第四航务工程勘察设计院有限公司 Knowledge management method and system based on flow control
CN115982429B (en) * 2023-03-21 2023-08-01 中交第四航务工程勘察设计院有限公司 Knowledge management method and system based on flow control
CN116719955A (en) * 2023-08-09 2023-09-08 北京国电通网络技术有限公司 Label labeling information generation method and device, electronic equipment and readable medium
CN116719955B (en) * 2023-08-09 2023-10-27 北京国电通网络技术有限公司 Label labeling information generation method and device, electronic equipment and readable medium

Similar Documents

Publication Publication Date Title
TWI723528B (en) Computer-executed event risk assessment method and device, computer-readable storage medium and computing equipment
KR102427368B1 (en) Method for recommendating candidate of knowledge graph using semi-structured data and apparatus implementing the same method
US10572822B2 (en) Modular memoization, tracking and train-data management of feature extraction
US11416768B2 (en) Feature processing method and feature processing system for machine learning
US10832012B2 (en) Method executed in translation system and including generation of translated text and generation of parallel translation data
JP7206687B2 (en) API parameter mapping
US20150095015A1 (en) Method and System for Presenting Statistical Data in a Natural Language Format
CN111143578B (en) Method, device and processor for extracting event relationship based on neural network
CN107480435B (en) Automatic search machine learning system and method applied to clinical data
Aurisano et al. Articulate2: Toward a conversational interface for visual data exploration
US10255261B2 (en) Method and apparatus for extracting areas
CN113656590B (en) Industry map construction method and device, electronic equipment and storage medium
KR20150084706A (en) Apparatus for knowledge learning of ontology and method thereof
US20210019456A1 (en) Accelerated simulation setup process using prior knowledge extraction for problem matching
US10546065B2 (en) Information extraction apparatus and method
US20220198358A1 (en) Method for generating user interest profile, electronic device and storage medium
Burgdorf et al. Towards NLP-supported Semantic Data Management
US20190317993A1 (en) Effective classification of text data based on a word appearance frequency
CN114064923A (en) Data processing method and device, electronic equipment and storage medium
CN110309214B (en) Instruction execution method and equipment, storage medium and server thereof
US11281853B2 (en) Ontology creation assistance device
JP2019082860A (en) Generation program, generation method and generation device
CN114970666A (en) Spoken language processing method and device, electronic equipment and storage medium
KR101803095B1 (en) Method and System for providing an expert answer to a natural language question
US20230281392A1 (en) Computer-readable recording medium storing computer program, machine learning method, and natural language processing apparatus

Legal Events

Date Code Title Description
AMND Amendment
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant