KR102299744B1 - 지식 그래프 중의 데이터 모델을 획득하는 방법, 장치, 기기 및 저장 매체 - Google Patents
지식 그래프 중의 데이터 모델을 획득하는 방법, 장치, 기기 및 저장 매체 Download PDFInfo
- Publication number
- KR102299744B1 KR102299744B1 KR1020200002709A KR20200002709A KR102299744B1 KR 102299744 B1 KR102299744 B1 KR 102299744B1 KR 1020200002709 A KR1020200002709 A KR 1020200002709A KR 20200002709 A KR20200002709 A KR 20200002709A KR 102299744 B1 KR102299744 B1 KR 102299744B1
- Authority
- KR
- South Korea
- Prior art keywords
- type
- data model
- determining
- candidate
- entity
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
- G06N5/025—Extracting rules from data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/211—Schema design and management
- G06F16/212—Schema design and management with details for data modelling support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/288—Entity relationship models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 개시의 실시예는 지식 그래프 중의 데이터 모델을 획득하는 방법, 장치, 기기 및 저장 매체에 관한 것이다. 지식 그래프 중의 데이터 모델을 획득하는 방법은, 엔티티와 객체 사이의 관계를 설명하는 지식 엔트리를 수신하는 단계를 포함한다. 당해 방법은, 엔티티, 관계 및 객체 중의 적어도 하나에 따라 당해 객체의 복수의 후보 유형을 결정하는 단계를 더 포함한다. 당해 방법은, 소정의 규칙에 따라 복수의 후보 유형에서 당해 지식 엔트리에 매칭되는 데이터 모델을 생성하는 객체 유형을 결정하는 단계를 더 포함한다. 또한, 당해 방법은 적어도 당해 객체 유형에 따라 데이터 모델을 생성하는 단계를 더 포함한다. 본 개시의 실시예는 주어-서술어-목적어(SPO) 형식의 지식 엔트리로부터 적합한 객체 유형을 자동으로 귀납하고 마이닝할 수 있는바, 이로써 인건 비용을 효과적으로 낮추면서 지식 그래프 중의 데이터 모델을 고효율적으로 구축할 수 있다. 또한, 당해 방안은 구축된 데이터 모델 중의 객체 유형이 자동으로 적합한 일반화 정도를 가지도록 보장할 수 있다.
Description
본 개시의 실시예는 컴퓨터 분야에 관한 것으로, 더 구체적으로 지식 그래프 중의 데이터 모델을 획득하는 방법, 장치, 기기 및 컴퓨터 판독가능 저장 매체에 관한 것이다.
지식 그래프는 지식 베이스(knowledge base)라고도 하는데, 이는 현실 세계에 존재하는 다양한 엔티티와 개념, 그들 사이의 관계 및 그들 각각의 속성을 설명하는데 사용된다. 현재, 지식 그래프는 검색, 인공 지능, 심층 학습 등 분야에 광법위하게 응용되고 있다. 지식 그래프에서, schema를 사용하여 어느 한 분야를 설명하는 데이터 모델을 설명하는 바, 이는 당해 분야의 엔티티 유형, 당해 엔티티 유형에 연관되는 관계(또는 속성) 및 당해 엔티티 유형과 상술한 관계를 가지는 객체(또는 속성값)의 유형을 포함한다. 예를 들면, 지식 엔트리 '온유(溫柔)의 저자는 오월천(五月天)이다'를 예로 드는 경우, 이에 대응되는 데이터 모델은 '음악-저자-인물'로 표시될 수 있다.
지식 그래프를 구축하는 편의를 위하여, 부동한 소스의 데이터로부터 각 분야의 schema를 마이닝하고 귀납하고자 한다.
본 개시의 예시적인 실시예에 따르면, 지식 그래프 중의 데이터 모델을 획득하는 방안이 제공된다.
본 개시의 제1 측면으로, 지식 그래프 중의 데이터 모델을 획득하는 방법이 제공된다. 당해 방법은 엔티티(entity)와 객체(object) 사이의 관계를 설명하는 지식 엔트리(knowledge entry)를 수신하는 단계를 포함한다. 당해 방법은 엔티티, 관계 및 객체 중의 적어도 하나에 따라 당해 객체의 복수의 후보 유형을 결정하는 단계를 더 포함한다. 당해 방법은 소정의 규칙에 따라 복수의 후보 유형에서 당해 지식 엔트리에 매칭되는 데이터 모델을 생성하기 위한 객체 유형을 결정하는 단계를 더 포함한다. 또한, 당해 방법은 적어도 당해 객체 유형에 따라 데이터 모델을 생성하는 단계를 더 포함한다.
상기 객체의 상기 복수의 후보 유형을 결정하는 단계는,
상기 지식 엔트리에서 상기 관계를 설명하는 단어를 복수의 분사로 분할하는 단계; 및
상기 복수의 분사 중 하나에 따라 상기 객체의 제1 후보 유형을 결정하는 단계; 를 포함할 수 있다.
상기 객체의 상기 복수의 후보 유형을 결정하는 단계는,
상기 지식 엔트리에서 상기 객체를 설명하는 단어의 품사를 결정하는 단계;
상기 품사에 따라 상기 객체가 소정의 비 사물 유형에 매칭되는지 여부를 결정하는 단계; 및
상기 객체가 상기 소정의 비 사물 유형에 매칭된다고 결정된 것에 응답하여, 상기 소정의 비 사물 유형을 상기 객체의 제2 후보 유형으로 결정하는 단계; 를 포함할 수 있다.
상기 소정의 비 사물 유형은 텍스트 유형, 시간 유형, 숫자 유형, 수량 유형 및 열거 유형 중 하나일 수 있다.
상기 객체의 상기 복수의 후보 유형을 결정하는 단계는,
상기 엔티티와 상기 관계를 가지는 객체 유형을 예측하여, 상기 객체의 제3 후보 유형을 결정하는 단계를 포함할 수 있다.
상기 객체의 상기 복수의 후보 유형을 결정하는 단계는,
상기 엔티티의 복수의 엔티티 상위어를 결정하는 단계;
상기 객체의 복수의 객체 상위어를 결정하는 단계;
상기 복수의 엔티티 상위어와 상기 복수의 객체 상위어로부터 상기 지식 엔트리의 의미와 매칭도가 가장 높은 엔티티 상위어와 객체 상위어의 조합을 결정하는 단계; 및
상기 조합 중의 상기 객체 상위어에 따라 상기 객체의 제4 후보 유형을 결정하는 단계; 를 포함할 수 있다.
상기 객체의 상기 복수의 후보 유형을 결정하는 단계는,
상기 지식 엔트리의 의미에 따라 상기 객체가 소정의 객체 유형 집합 중의 객체 유형에 매칭되는지 여부를 결정하는 단계; 및
상기 객체가 상기 소정의 객체 유형 집합 중의 객체 유형에 매칭된다고 결정된 것에 응답하여, 매칭되는 객체 유형을 상기 객체의 제5 후보 유형으로 결정하는 단계; 를 포함할 수 있다.
상기 복수의 후보 유형에서 상기 데이터 모델을 생성하기 위한 상기 객체 유형을 결정하는 단계는,
상기 소정의 규칙에 따라 상기 복수의 후보 유형 중 하나를 상기 데이터 모델을 생성하기 위한 상기 객체 유형으로 선택하는 단계를 포함할 수 있다.
상기 복수의 후보 유형은 적어도 제6 후보 유형과 제7 후보 유형을 포함하고,
상기 복수의 후보 유형에서 상기 데이터 모델을 생성하기 위한 상기 객체 유형을 결정하는 단계는,
상기 제6 후보 유형과 상기 제7 후보 유형의 공동 상위어를 결정하는 단계; 및
상기 공동 상위어에 따라 상기 데이터 모델을 생성하기 위한 상기 객체 유형을 결정하는 단계; 를 포함할 수 있다.
복수의 엔티티와 복수의 객체 사이의 대응 관계를 설명하는 복수의 지식 엔트리를 수신하는 단계;
상기 복수의 지식 엔트리에 매칭되는 복수의 데이터 모델을 생성하는 단계 - 상기 복수의 데이터 모델은 적어도 제1 데이터 모델과 제2 데이터 모델을 포함하고, 상기 제1 데이터 모델은 제1 엔티티 유형과 제1 관계를 가지는 제1 객체 유형을 나타내고, 상기 제2 데이터 모델은 상기 제1 엔티티 유형과 상기 제1 관계를 가지는 제2 객체 유형을 나타냄 - ;
상기 제1 객체 유형이 상기 제2 객체 유형과 상이한 것에 응답하여, 상기 복수의 객체에서 상기 제1 객체 유형에 매칭되는 객체의 제1 개수와 상기 제2 객체 유형에 매칭되는 객체의 제2 개수를 결정하는 단계; 및
상기 제1 개수와 상기 제2 개수에 따라, 상기 제1 데이터 모델과 상기 제2 데이터 모델 중 적어도 하나의 데이터 모델을 유지하는 단계; 를 더 포함할 수 있다.
상기 제1 데이터 모델과 상기 제2 데이터 모델 중 적어도 하나의 데이터 모델을 유지하는 단계는,
상기 제1 객체 유형이 상기 제2 객체 유형의 상위어인 것에 응답하여, 상기 제2 개수와 상기 제1 개수의 비율이 소정의 역치를 초과하는지 여부를 결정하는 단계;
상기 비율이 상기 소정의 역치를 초과하는 것에 응답하여, 상기 제2 데이터 모델을 유지하고 상기 복수의 데이터 모델에서 상기 제1 데이터 모델을 배제하는 단계; 및
상기 비율이 상기 소정의 역치를 초과하지 않는 것에 응답하여, 상기 제1 데이터 모델과 상기 제2 데이터 모델 양자를 유지하는 단계; 를 포함할 수 있다.
본 개시의 제2 측면으로, 지식 그래프 중의 데이터 모델을 획득하는 장치가 제공된다. 당해 장치는, 엔티티와 객체 사이의 관계를 설명하는 지식 엔트리를 수신하도록 구성되는 제1 수신 모듈; 엔티티, 관계 및 객체 중의 적어도 하나에 따라 당해 객체의 복수의 후보 유형을 결정하도록 구성되는 제1 결정 모듈; 소정의 규칙에 따라 복수의 후보 유형에서 당해 지식 엔트리에 매칭되는 데이터 모델을 생성하는 객체 유형을 결정하도록 구성되는 제2 결정 모듈; 및 적어도 당해 객체 유형에 따라 데이터 모델을 생성하도록 구성되는 제1 생성 모듈; 을 포함한다.
상기 제1 결정 모듈은 또한
상기 지식 엔트리에서 상기 관계를 설명하는 단어를 복수의 분사로 분할하고;
상기 복수의 분사 중 하나에 따라 상기 객체의 제1 후보 유형을 결정하도록 구성될 수 있다.
상기 제1 결정 모듈은 또한
상기 지식 엔트리에서 상기 객체를 설명하는 단어의 품사를 결정하고;
상기 품사에 따라 상기 객체가 소정의 비 사물 유형에 매칭되는지 여부를 결정하고;
상기 객체가 상기 소정의 비 사물 유형에 매칭된다고 결정된 것에 응답하여, 상기 소정의 비 사물 유형을 상기 객체의 제2 후보 유형으로 결정하도록 구성될 수 있다.
상기 소정의 비 사물 유형은 텍스트 유형, 시간 유형, 숫자 유형, 수량 유형 및 열거 유형 중 하나일 수 있다.
상기 제1 결정 모듈은 또한
상기 엔티티와 상기 관계를 가지는 객체 유형을 예측하여, 상기 객체의 제3 후보 유형을 결정하도록 구성될 수 있다.
상기 제1 결정 모듈은 또한
상기 엔티티의 복수의 엔티티 상위어를 결정하고;
상기 객체의 복수의 객체 상위어를 결정하고;
상기 복수의 엔티티 상위어와 상기 복수의 객체 상위어로부터 상기 지식 엔트리의 의미와 매칭도가 가장 높은 엔티티 상위어와 객체 상위어의 조합을 결정하고;
상기 조합 중의 상기 객체 상위어에 따라 상기 객체의 제4 후보 유형을 결정하도록 구성될 수 있다.
상기 제1 결정 모듈은 또한
상기 지식 엔트리의 의미에 따라 상기 객체가 소정의 객체 유형 집합 중의 객체 유형에 매칭되는지 여부를 결정하고; 및
상기 객체가 상기 소정의 객체 유형 집합 중의 객체 유형에 매칭된다고 결정된 것에 응답하여, 매칭되는 객체 유형을 상기 객체의 제5 후보 유형으로 결정하도록 구성될 수 있다.
상기 제2 결정 모듈은 또한
상기 소정의 규칙에 따라 상기 복수의 후보 유형 중 하나를 상기 데이터 모델을 생성하기 위한 상기 객체 유형으로 선택하도록 구성될 수 있다.
상기 복수의 후보 유형은 적어도 제6 후보 유형과 제7 후보 유형을 포함하고,
상기 제2 결정 모듈은 또한
상기 제6 후보 유형과 상기 제7 후보 유형의 공동 상위어를 결정하고;
상기 공동 상위어에 따라 상기 데이터 모델을 생성하기 위한 상기 객체 유형을 결정하도록 구성될 수 있다.
복수의 엔티티와 복수의 객체 사이의 대응 관계를 설명하는 복수의 지식 엔트리를 수신하도록 구성되는 제2 수신 모듈;
상기 복수의 지식 엔트리에 매칭되는 복수의 데이터 모델을 생성하도록 구성되는 제2 생성 모듈 - 상기 복수의 데이터 모델은 적어도 제1 데이터 모델과 제2 데이터 모델을 포함하고, 상기 제1 데이터 모델은 제1 엔티티 유형과 제1 관계를 가지는 제1 객체 유형을 나타내고, 상기 제2 데이터 모델은 상기 제1 엔티티 유형과 상기 제1 관계를 가지는 제2 객체 유형을 나타냄 - ;
상기 제1 객체 유형이 상기 제2 객체 유형과 상이한 것에 응답하여, 상기 복수의 객체에서 상기 제1 객체 유형에 매칭되는 객체의 제1 개수와 상기 제2 객체 유형에 매칭되는 객체의 제2 개수를 결정하도록 구성되는 제3 결정 모듈; 및
상기 제1 개수와 상기 제2 개수에 따라, 상기 제1 데이터 모델과 상기 제2 데이터 모델 중 적어도 하나의 데이터 모델을 유지하도록 구성되는 유지 모듈; 을 더 포함할 수 있다.
상기 유지 모듈은 또한
상기 제1 객체 유형이 상기 제2 객체 유형의 상위어인 것에 응답하여, 상기 제2 개수와 상기 제1 개수의 비율이 소정의 역치를 초과하는지 여부를 결정하고;
상기 비율이 상기 소정의 역치를 초과하는 것에 응답하여, 상기 제2 데이터 모델을 유지하고 상기 복수의 데이터 모델에서 상기 제1 데이터 모델을 배제하고;
상기 비율이 상기 소정의 역치를 초과하지 않는 것에 응답하여, 상기 제1 데이터 모델과 상기 제2 데이터 모델 양자를 유지하도록 구성될 수 있다.
본 개시의 제3 측면으로, 지식 그래프 중의 데이터 모델을 획득하는 기기가 제공된다. 당해 기기는 하나 또는 복수의 프로세서; 및 하나 또는 복수의 프로그램을 저장하는 저장 장치; 를 포함하는바, 당해 하나 또는 복수의 프로그램이 하나 또는 복수의 프로세서에 의해 실행될 경우, 당해 하나 또는 복수의 프로세서가 본 개시의 제1 측면에 따른 방법을 구현한다.
본 개시의 제4 측면으로, 컴퓨터 프로그램이 저장되어 있는 컴퓨터 판독가능 저장 매체가 제공되는바, 당해 프로그램이 프로세서에 의해 실행될 경우, 본 개시의 제1 측면에 따른 방법이 구현된다.
발명 내용 부분에서 설명하는 내용은 본 개시의 실시예의 핵심 또는 중요 특징을 한정하기 위한 것이 아니며 본 개시의 범위를 제한하기 위한 것도 아님을 이해하여야 한다. 본 개시의 기타 특징은 이하의 설명을 통하여 이해하기 쉽게 될 것이다.
첨부 도면을 결부하고 이하 상세한 설명을 참조하면, 본 개시의 각 실시예의 상술한 및 기타의 특징, 이점 및 측면은 더욱 분명해질 것이다. 첨부 도면에서, 동일 또는 유사한 도면 부호는 동일 또는 유사한 요소를 표시하는바, 여기서:
도1은 본 개시의 실시예에 따른 예시 시스템의 블록도를 도시한다.
도2는 본 개시의 실시예에 따른 지식 그래프 중의 데이터 모델을 획득하는 방법의 흐름도를 도시한다.
도3은 본 개시의 실시예에 따른 데이터 모델을 생성하는 객체 유형을 결정하는 예시적인 과정의 블록도를 도시한다.
도4는 본 개시의 실시예에 따른 복수의 후보 객체 유형에서 데이터 모델을 생성하는 객체 유형을 결정하는 예시 규칙의 흐름도를 도시한다.
도5는 본 개시의 실시예에 따른 지식 그래프 중의 데이터 모델을 획득하는 방법의 흐름도를 도시한다.
도6은 본 개시의 실시예에 따른 지식 그래프 중의 데이터 모델을 획득하는 장치의 블록도를 도시한다.
도7은 본 개시의 실시예를 실시 가능한 컴퓨팅 기기의 블록도를 도시한다.
도1은 본 개시의 실시예에 따른 예시 시스템의 블록도를 도시한다.
도2는 본 개시의 실시예에 따른 지식 그래프 중의 데이터 모델을 획득하는 방법의 흐름도를 도시한다.
도3은 본 개시의 실시예에 따른 데이터 모델을 생성하는 객체 유형을 결정하는 예시적인 과정의 블록도를 도시한다.
도4는 본 개시의 실시예에 따른 복수의 후보 객체 유형에서 데이터 모델을 생성하는 객체 유형을 결정하는 예시 규칙의 흐름도를 도시한다.
도5는 본 개시의 실시예에 따른 지식 그래프 중의 데이터 모델을 획득하는 방법의 흐름도를 도시한다.
도6은 본 개시의 실시예에 따른 지식 그래프 중의 데이터 모델을 획득하는 장치의 블록도를 도시한다.
도7은 본 개시의 실시예를 실시 가능한 컴퓨팅 기기의 블록도를 도시한다.
아래, 첨부 도면을 참조하여 본 개시의 실시예에 대해 더 상세하게 설명하고자 한다. 비록 첨부 도면에 본 개시의 어떤 실시예가 도시되었지만, 본 개시는 여러 가지 형식으로 구현 가능한 것으로, 여기서 서술하는 실시예에 한정되는 것으로 해석되어서는 안되고, 반대로, 이러한 실시예를 제공하는 것은 본 개시를 더욱 투철하게 그리고 완전하게 이해시키기 위한 것임을 이해하여야 한다. 본 개시의 첨부 도면 및 실시예는 예시적 작용을 위한 것으로, 본 개시의 보호 범위를 제한하기 위한 것이 아님을 이해하여야 한다.
본 개시의 실시예의 설명에서, 전문 용어 '포함' 및 그 유사 용어는 개방적 포괄, 즉, '포함하나 이에 한정되지 않음'으로 이해하여야 한다. 전문 용어 '에 따라'는 '적어도 부분적으로 ...에 따라'로 이해하여야 한다. 전문 용어 '하나의 실시예' 또는 '당해 실시예'는 '적어도 하나의 실시예'로 이해하여야 한다. 전문 용어 '제1', '제2' 등은 부동한 또는 동일한 대상을 지칭할 수 있다. 후술은 또한, 기타의 명확한 및 묵시적인 정의를 포함할 수 있다.
상술한 바와 같이, 지식 그래프에서, schema를 사용하여 어느 한 분야를 설명하는 데이터 모델을 설명하는 바, 이는 당해 분야의 엔티티 유형, 당해 엔티티 유형에 연관되는 관계(또는 속성) 및 당해 엔티티 유형과 상술한 관계를 가지는 객체(또는 속성값)의 유형을 포함한다. 여기서 '엔티티 유형'은 엔티티가 속하는 분류를 지칭하는바, 통상적으로는 엔티티를 설명하는 단어의 상위어를 이용하여 표시할 수 있다. 여기서 '객체의 유형'은 엔티티와 연관이 생기는 객체(예를 들면, 당해 엔티티의 속성 값, 또는 당해 엔티티와 어떠한 관계를 가지는 다른 엔티티)가 속하는 분류를 지칭하는바, 통상적으로는 객체를 설명하는 단어의 상위어를 이용하여 표시할 수 있다.
주어-서술어-목적어(SPO)의 형식인 지식 엔트리'온유(溫柔)의 저자는 오월천(五月天)이다'를 예로 들면, 이는, 엔티티를 설명하는 주어 '온유(溫柔)', 관계를 설명하는 서술어 '저자' 및 객체를 설명하는 목적어 '오월천(五月天)'을 포함한다. 당해 예시에서, 엔티티 '온유(溫柔)'의 유형(본 명세서에서는 '엔티티 유형' 또는 Stype로 지칭되기도 함)은 예를 들면 '음악'이고, 관계는 예를 들면 '저자'이고, 객체 '오월천(五月天)'의 유형(본 명세서에서는 '객체 유형' 또는 Otype로 지칭되기도 함)은 예를 들면 '인물'이다. 따라서, 지식 엔트리 '온유(溫柔)의 저자는 오월천(五月天)이다'에 대응되는 데이터 모델(즉, schema)은 '음악-저자-인물'로 표시될 수 있다.
지식 그래프를 구축하는 편의를 위하여, 부동한 소스에서 오는 지식 엔트리로부터 각 분야의 데이터 모델을 마이닝하고 귀납하고자 한다. 그러나, 동일한 객체에는 복수의 상위어가 존재할 수 있는바(예를 들면, 상술한 예시에서 객체 '오월천(五月天)'의 상위어는 뮤지션, 인물 또는 사물일 수 있음), 즉 동일한 지식 엔트리에 대응되는 객체 유형은 하나뿐이 아닐 수 있다. 이러한 경우, 적합한 데이터 모델을 구축하기 위하여, 지식 엔트리의 의미에 가장 잘 매칭되는 객체 유형을 결정하여야 한다. 또한, 결정된 객체 유형의 일반화 정도는 적합하여야 하는바 지나치게 일반화되거나 지나치게 상세화되지 않아야 한다.
전통적인 방안은 통상적으로 수동 방식을 이용하여 데이터 모델 중의 객체 유형을 편집하거나 기존의 데이터 모델 중의 객체 유형을 재사용한다. 이러한 방안은 모두 서로 다른 정도로 외부 의존성을 가지게 된다는 것을 보아낼 수 있다.
본 개시의 실시예에 따르면, 지식 그래프 중의 데이터 모델을 획득하는 방안이 제공된다. 당해 방안은 SPO 형식의 지식 엔트리로부터 적합한 객체 유형을 자동으로 귀납하고 마이닝할 수 있는바, 이로써 인건 비용을 효과적으로 낮추면서 지식 그래프 중의 데이터 모델을 고효율적으로 구축할 수 있다. 전통적인 방안 중의 외부 의존성을 제거할 수 있는 것 외에도 당해 방안은 구축된 데이터 모델 중의 객체 유형이 자동으로 적합한 일반화 정도를 가지도록 보장할 수 있다.
아래, 첨부 도면을 참조하여 본 개시의 실시예를 구체적으로 설명하고자 한다.
도1은 본 개시의 실시예에 따른 예시 시스템(100)의 블록도를 도시한다. 도1에 도시한 바와 같이, 예시 시스템(100)은 전반적으로 모델 획득 장치(120)를 포함할 수 있다. 도1은 시스템(100)의 구조와 기능을 설명함에 있어서의 예시적인 목적을 위한 것일 뿐, 본 개시의 범위에 대한 어떠한 한정을 암시하는 것은 아니다. 본 개시의 실시예는 또한 부동한 구조 및/또는 기능을 구비하는 환경에 응용될 수 있다.
모델 획득 장치(120)는 복수의 데이터 소스로부터 입력 데이터(110)를 수신할 수 있다. 도1에 도시한 바와 같이, 입력 데이터(110)는 예를 들어 SPO 형식의 지식 엔트리(111)을 포함할 수 있다. 지식 엔트리(111)의 예시는 예를 들면 '온유(溫柔)의 저자는 오월천(五月天)이다'일 수 있는바, 이는 엔티티 '온유(溫柔)'와의 관계는 '저자'의 다른 엔티티인 '오월천(五月天)'임을 설명한다. 지식 엔트리(111)의 예시는 또 예를 들어 '장학우(張學友)의 생일은 7월10일이다'일 수 있는바, 이는 엔티티 '장학우(張學友)'의 속성 '생일'의 속성값이 '7월 10일'임을 설명한다. 본 명세서에서, 엔티티의 속성 값 또는 당해 엔티티와 어떠한 관계를 가지는 다른 엔티티를 '객체'로 총칭하는바, 예를 들면 상기의 예시 중의 '오월천(五月天)'과 '7월 10일'이다.
모델 획득 장치(120)는 지식 엔트리(111)에 매칭되는 데이터 모델(130)을 생성할 수 있다. 도1에 도시한 바와 같이, 데이터 모델(130)은 엔티티 유형(131), 관계(132) 및 객체 유형(133)을 포함할 수 있다. 지식 엔트리 '온유(溫柔)의 저자는 오월천(五月天)이다'를 예로 드는 경우, 그 엔티티 유형은 예를 들어 '음악'이고 관계는 '저자'이며 객체 유형은 예를 들어 '인물'인바, 따라서 이에 매칭되는 데이터 모델은 '음악-저자-인물'로 표시될 수 있다. 지식 엔트리 '장학우(張學友)의 생일은 7월10일이다'를 예로 드는 경우, 그 엔티티 유형은 예를 들어 '인물'이고 관계는 '생일'이며 객체 유형은 예를 들어 '시간'인바, 따라서 이에 매칭되는 데이터 모델은 '인물-생일-시간'으로 표시될 수 있다.
상술한 바와 같이, 지식 엔트리(111)에 매칭되는 데이터 모델(130)을 획득하기 위하여, 모델 획득 장치(120)는 지식 엔트리(111)에 대응되는 엔티티 유형(131), 관계(132) 및 객체 유형(133)를 결정하여야 한다. 예를 들면, 모델 획득 장치(120)는 임의의 이미 알려졌거나 앞으로 개발될 방법 또는 기술을 이용하여 엔티티 유형(131)과 관계(132)를 결정할 수도 있는바, 상세한 설명은 생략하기로 한다. 아래, 나아가 첨부 도면을 결부하여 모델 획득 장치(120)가 지식 엔트리(111)에 대응되는 객체 유형(133)을 결정하는 것에 대해 상세히 설명하고자 한다.
도2는 본 개시의 실시예에 따른 지식 그래프 중의 데이터 모델을 획득하는 방법(200)의 흐름도를 도시한다. 예를 들면, 방법(200)은 도1에 도시한 모델 획득 장치(120)에 의해 수행될 수 있다. 아래, 도1을 결부하여 방법(200)을 상세히 설명하고자 한다. 방법(200)에 있어서 미도시된 추가 단계가 더 포함되거나 및/또는 도시된 단계가 생략될 수도 있음을 이해하여야 한다. 본 개시의 범위는 이러한 측면에서 한정되지 않는다.
단계210에서, 모델 획득 장치(120)는 엔티티와 객체 사이의 관계를 설명하는 지식 엔트리(111)를 수신한다. 지식 엔트리 '온유(溫柔)의 저자는 오월천(五月天)이다'를 예로 들면, 이는 엔티티 '온유(溫柔)' 와의 관계가 '저자'의 객체 '오월천(五月天)'임을 설명한다.
단계220에서, 모델 획득 장치(120)엔티티, 관계 및 객체 중의 적어도 하나에 따라 당해 객체의 복수의 후보 유형을 결정한다.
도3은 본 개시의 실시예에 따른 데이터 모델을 생성하는 객체 유형을 결정하는 예시적인 과정(300)의 블록도를 도시한다. 예를 들면, 도3은 모델 획득 장치(120)에 의하여 결정되는, 지식 엔트리(111) 중의 객체에 대응되는 복수의 후보 객체 유형(310-1, 310-2...310-5)('후보 객체 유형(310)' 또는 '후보 유형(310)'으로 총칭됨)을 도시한다. 아래 도3을 결부하여 단계220을 상세히 설명하고자 한다. 비록 도3에는 지식 엔트리(111)에 대응되는 5개의 후보 객체 유형을 도시하였지만, 이는 단지 예시의 목적일 뿐, 본 개시의 범위을 한정하고자 하는 것이 아니다. 모델 획득 장치(120)는 도3에 도시한 개수보다 많거나 또는 적은 후보 객체 유형을 결정할 수 있음을 이해하여야 한다.
일부 실시예에서, 모델 획득 장치(120)는 지식 엔트리(111)에서 관계를 설명하는 단어(서술어로 지칭되기도 함)를 복수의 분사(分늦)로 분할하고 복수의 분사 중 하나에 따라 객체의 제1 후보 유형(310-1)을 결정할 수 있다.
예를 들어, 지식 엔트리 '맥도날드 영업 시간은 0:00-24:00이다'를 예로 들면, 서술어는 '영업 시간'이다. 예를 들어, 모델 획득 장치(120)는 서술어 '영업 시간'을 '영업'과 '시간' 2개의 분사로 분할할 수 있는바, 여기서 '영업'은 형용사이고 '시간'은 명사이다. 모델 획득 장치(120)는 명사 '시간'에 따라 객체 '0:00-24:00'의 후보 유형을 결정할 수 있는바, 예를 들면 '시간'이다. 추가로, 일부 실시예에서, 모델 획득 장치(120)에는 예를 들어 소정 객체 유형 집합이 구성되어 있을 수 있다. 예를 들면, 명사 '시간'이 소정 객체 유형 집합 중의 어느 한 소정 객체 유형에 매칭되는 경우에만, 모델 획득 장치(120)는 명사 '시간'을 객체 '0:00-24:00'의 후보 유형으로 결정한다.
추가로 또는 대안으로, 일부 실시예에서, 모델 획득 장치(120)는 당해 객체가 소정의 비 사물 유형에 매칭되는지 여부를 결정할 수 있다. 모델 획득 장치(120)에 의해 지식 엔트리 중의 객체가 소정의 비 사물 유형에 매칭된다고 결정되는 경우, 모델 획득 장치(120)는 당해 소정의 비 사물 유형을 객체의 제2 후보 유형(310-2)으로 결정할 수 있다. 일부 실시예에서, 모델 획득 장치(120)는 객체를 설명하는 단어(즉, SPO 중의 목적어)의 품사를 분석함으로써 당해 객체가 소정의 비 사물 유형에 매칭되는지 여부를 결정할 수 있다. 예를 들면, 소정의 비 사물 유형은, 텍스트 유형(예를 들면, 통합 자원 위치자(uniform resource locator) 등), 시간 유형(예를 들면, 날짜 또는 시간 구간 등), 숫자 유형(예를 들면, 플로트, 인트 등), 수량(숫자와 단위로 이루어지는바, 예를 들면 8개, 6마리, 2일 등), 열거 유형(예를 들어 관계 열거, 인덱스 열거, 값 유형 열거 또는 불리언(Boolean) 열거 등) 중의 하나일 수 있다.
예를 들어, 상술한 지식 엔트리 '맥도날드 영업 시간은 0:00-24:00이다'를 예로 들면, 객체 '0:00-24:00'에 대한 품사 분석을 통해 그것이 가리키는 시간 구간을 결정할 수 있는바, 이는 상술한 비 사물 유형 중의 '시간 유형'에 매칭된다. 따라서, 모델 획득 장치(120)는 '시간'을 객체 '0:00-24:00'의 후보 유형으로 결정할 수 있다. 또 예를 들어, 가령 어느 한 지식 엔트리의 객체가 '100'이라면, 이에 대한 품사 분석을 통해 이의 유형이 상술한 비 사물 유형 중의 '숫자 유형'임을 결정할 수 있다. 따라서, 모델 획득 장치(120)는 '숫자'는 객체 '100'의 후보 유형으로 결정할 수 있다.
추가로 또는 대안으로, 일부 실시예에서, 모델 획득 장치(120)는 지식 엔트리(111) 중의 엔티티와 상기의 관계를 가지는 객체 유형을 예측함으로써 지식 엔트리(111) 중의 객체의 제3 후보 유형(310-3)을 결정할 수 있다.
예를 들어, 가령 지식 엔트리의 주어와 서술어(즉, 엔티티와 관계)가 '자동차의 속도'라면, 모델 획득 장치(120)는 이에 연관되는 객체가 'xxx킬로미터 매 시간'일 수 있다고 예측함으로써 '자동차의 속도'에 연관되는 객체 유형이 '수량'일 수 있다고 결정할 수 있다. 모델 획득 장치(120)는 임의의 이미 알려졌거나 앞으로 개발될 예측 도구를 이용함으로써 지식 엔트리 중의 주어와 서술어 양자에 따라 객체의 후보 유형을 예측할 수도 있음을 이해하여야 한다.
추가로 또는 대안으로, 일부 실시예에서, 모델 획득 장치(120)는 지식 엔트리의 의미에 따라 당해 의미에 가장 잘 매칭되는 객체 유형을 제4 후보 객체 유형(310-4)으로 결정할 수 있다. 일부 실시예에서, 모델 획득 장치(120)는 엔티티(즉, SPO 중의 주어)의 복수의 엔티티 상위어를 결정할 수 있고 또한 객체(즉, SPO 중의 목적어)의 복수의 객체 상위어를 결정할 수 있다. 다음, 모델 획득 장치(120)는 복수의 엔티티 상위어와 복수의 객체 상위어로부터 당해 지식 엔트리의 의미와 매칭도가 가장 높은 엔티티 상위어와 객체 상위어의 조합을 결정할 수 있다. 모델 획득 장치(120)는 나아가 당해 조합 중의 객체 상위어를 객체의 후보 유형으로 결정할 수 있다.
지식 엔트리 '온유(溫柔)의 가수는 오월천(五月天)이다'를 예로 들면, 엔티티 '온유(溫柔)'의 상위어는 '음악', '영화' 등일 수 있고, 객체 '오월천(五月天)'의 상위어는 '뮤지션', '레스토랑', '장소' 등일 수 있다. 그러나, 당해 지식 엔트리의 의미에 따르면, 모델 획득 장치(120)는 엔티티 상위어 '음악'과 객체 상위어 '뮤지션'의 조합이 당해 지식 엔트리의 의미에 가장 잘 매칭된다고 결정할 수 있다. 따라서, 모델 획득 장치(120)는 '뮤지션'을 객체 '오월천(五月天)'의 후보 유형으로 결정할 수 있다.
추가로 또는 대안으로, 일부 실시예에서, 모델 획득 장치(120)에는 소정 객체 유형 집합이 구성되어 있을 수 있다. 모델 획득 장치(120)는 지식 엔트리의 의미에 따라 지식 엔트리 중의 객체가 소정 객체 유형 집합 중의 객체 유형에 매칭되는지 여부를 결정할 수 있다. 모델 획득 장치(120)에 의해 지식 엔트리 중의 객체가 소정 객체 유형 집합 중의 어느 한 객체 유형에 매칭된다고 결정되는 경우, 모델 획득 장치(120)는 매칭되는 객체 유형을 객체의 제5 후보 유형(310-5)으로 결정할 수 있다.
예를 들어, 여전히 지식 엔트리 '온유(溫柔)의 가수는 오월천(五月天)이다'를 예로 드는 경우, 소정 객체 유형 집합에 객체 유형 '인물'만 포함되고 객체 유형 '뮤지션'이 포함되지 않는다면 모델 획득 장치(120)는 객체 유형' 인물'을 객체 '오월천(五月天)'의 후보 유형으로 결정할 수 있다.
상술한 바는 단지 지식 엔트리 중의 객체의 후보 유형을 결정하는 몇몇 예시적인 방식을 열거한 것일 뿐이다. 본 개시의 실시예는 또한 기타의 방식 또는 도구를 이용하여 지식 엔트리 중의 객체의 후보 유형을 결정할 수 있는 것으로, 위에서 열거하는 예시에 한정되는 것이 아님을 이해하여야 한다.
단계230에서, 모델 획득 장치(120)는 소정의 규칙에 따라 복수의 후보 유형에서 지식 엔트리에 매칭되는 데이터 모델을 생성하는 객체 유형을 결정한다. 예를 들면, 도3에 도시한 바와 같이, 모델 획득 장치(120)는 규칙(320)에 따라 복수의 후보 유형(310) 중에서 지식 엔트리(111)에 대응되는 객체 유형(133)을 결정한다. 일부 실시예에서, 모델 획득 장치(120)는 규칙(320)에 따라 복수의 후보 유형(310) 중 하나를 객체 유형(133)으로 선택할 수 있다. 추가로 또는 대안으로, 일부 실시예에서, 모델 획득 장치(120)는 복수의 후보 유형(310) 중의 적어도 일부의 후보 유형을 조합함으로써 객체 유형(133)을 결정할 수 있다.
도4는 본 개시의 실시예에 따른 예시 규칙(320)의 흐름도를 도시한다. 도4는 단지 도3에 도시한 규칙(320)의 한 예시적인 구현 방식을 도시한 것임을 이해할 수 있다. 다른 실시예에서는 기타 규칙도 실행 가능한 것이다.
도4에 도시한 바와 같이, 단계(401)에서 모델 획득 장치(120)는제1 후보 유형(310-1)이 존재하는지 여부를 결정할 수 있다. 예를 들면, 상술한 바와 같이, 제1 후보 유형(310-1)은 지식 엔트리 중의 서술어를 분사화하여 결정된 후보 객체 유형일 수 있다. 제1 후보 유형(310-1)이 존재하는 경우, 단계(402)에서 모델 획득 장치(120)는 제1 후보 유형(310-1)을 객체 유형(133)으로 출력할 수 있다.
제1 후보 유형(310-1)이 존재하지 않는 경우, 단계(403)에서 모델 획득 장치(120)는 제2 후보 유형(310-2)이 존재하는지 여부를 결정할 수 있다. 예를 들면, 상술한 바와 같이, 제2 후보 유형(310-2)은 지식 엔트리 중의 목적어의 품사에 따라 결정된 비 사물 유형일 수 있다. 제2 후보 유형(310-2)이 존재하는 경우, 단계(404)에서 모델 획득 장치(120)는 제2 후보 유형(310-2)을 객체 유형(133)으로 출력할 수 있다.
제2 후보 유형(310-2)이 존재하지 않는 경우, 단계(405)에서 모델 획득 장치(120)는 제3 후보 유형(310-3)이 존재하는지 여부를 결정할 수 있고 또한 단계(406)에서 모델 획득 장치(120)는 제4 후보 유형(310-4)이 존재하는지 여부를 결정할 수 있다. 예를 들면, 상술한 바와 같이, 제3 후보 유형(310-3)은 지식 엔트리 중의 주어와 서술어 양자에 따라 예측된 객체 유형일 수 있고, 제4 후보 유형(310-4)은 지식 엔트리의 의미에 따라 엔티티 상위어 및 객체 상위어에 대해 주석함으로써 결정된 객체 유형일 수 있다. 제4 후보 유형(310-4)이 존재하지 않는 경우, 단계(407)에서 모델 획득 장치(120)는 나아가 제5 후보 유형(310-5)이 존재하는지 여부를 결정할 수 있다. 예를 들면, 상술한 바와 같이, 제5 후보 유형(310-5)은 지식 엔트리의 의미에 따라 소정 객체 유형 집합 중의 객체 유형과의 매칭으로써 결정된 객체 유형일 수 있다.
다음, 단계(408)에서 모델 획득 장치(120)는 제3 후보 유형(310-3), 제4 후보 유형(310-4) 및/또는 제5 후보 유형(310-5) 중에 오직 하나의 후보 유형만 존재하는 것인지를 결정할 수 있다. 만약 Yes라면, 단계(409)에서 모델 획득 장치(120)는 당해 유일한 후보 유형을 객체 유형(133)으로 출력할 수 있다.
모델 획득 장치(120)에 의하여 제3 후보 유형(310-3)과 제4 후보 유형(310-4)이 동시에 존재한다고 결정되는 경우, 또는 제3 후보 유형(310-3)과 제5 후보 유형(310-5)이 동시에 존재하다고 결정되는 경우, 단계(410)에서 모델 획득 장치(120)는 나아가 존재하는 복수의 후보 유형 중에 비 사물 유형이 존재하는지 여부를 결정할 수 있다. 만약 Yes라면, 단계(411)에서 모델 획득 장치(120)는 당해 비 사물 유형은 객체 유형(133)으로 출력할 수 있다. 즉, 비 사물 유형은 우선적으로 선택될 수 있다.
추가로 또는 대안으로, 일부 실시예에서, 모델 획득 장치(120)에 의하여 존재하는 복수의 후보 유형 중에 복수의 비 사물 유형이 존재한다고 결정되는 경우, 모델 획득 장치(120)는 복수의 비 사물 유형의 소정 우선 순위에 따라 우선 순위가 가장 높은 비 사물 유형을 출력할 수 있다. 일부 실시예에서, 복수의 비 사물 유형의 우선 순위의 순서는 예를 들어 텍스트 > 숫자 > 수량 > 시간 > 열거일 수 있다. 다른 실시예에서, 복수의 비 사물 유형의 우선 순위의 순서는 상기의 순서와 다를 수 있음을 이해하여야 한다.
모델 획득 장치(120)에 의하여 존재하는 복수의 후보 유형 중에 비 사물 유형이 존재하지 않는다고 결정되는 경우, 단계(412)에서 모델 획득 장치(120)는 나아가 존재하는 복수의 후보 유형이 조합될 수 있을지를 결정할 수 있다. 예를 들면, 모델 획득 장치(120)는 존재하는 복수의 후보 유형에 공동 상위어가 존재하는지 여부('조합 결과'라고도 지칭됨)를 결정할 수 있다. 예를 들면, '인물'과 '영화'의 공동 상위어는 '사물'일 수 있다. 모델 획득 장치(120)에 의하여 복수의 후보 유형에 공동 상위어가 존재한다고 결정되는 경우, 단계(413))에서 모델 획득 장치(120)는 당해 공동 상위어를 객체 유형(133)으로 출력할 수 있다.
이러한 방식으로, 모델 획득 장치(120)는 데이터 모델(130)을 생성하는 객체 유형(133)을 결정할 수 있다.
도2로 돌아가면, 단계240에서, 모델 획득 장치(120)는 적어도 객체 유형(133)에 따라 데이터 모델(130)을 생성한다. 일부 실시예에서, 예를 들면, 모델 획득 장치(120)는 임의의 이미 알려졌거나 앞으로 개발될 방법 또는 기술을 이용하여 엔티티 유형(131)과 관계(132)를 결정할 수 있다. 모델 획득 장치(120)는 엔티티 유형(131), 관계(132) 및 객체 유형(133)을 조합함으로써 지식 엔트리(111)에 매칭되는 데이터 모델(130)을 생성할 수 있다.
모델 획득 장치(120)는 부동한 데이터 소스에서 오는 복수의 부동한 지식 엔트리에 대하여, 도2에 도시한 방법(200)을 응용하여 복수의 지식 엔트리에 매칭되는 복수의 데이터 모델을 결정할 수 있다. 그러나, 결정된 복수의 데이터 모델 중에는 같은 엔티티 유형 및 관계를 가지지만 부동한 객체 유형을 가지는 몇몇 데이터 모델이 존재할 수 있다. 일부 경우에는, 이러한 데이터 모델은 합병될 수 있는바, 이로써 구축된 데이터 모델에서 객체 유형의 일반화 정도가 적합하도록 보장되고 지나치게 일반화되거나 지나치게 상세화되지 않도록 한다. 아래 도5를 결부하여 이러한 시나리오에 대한 처리에 대하여 상세히 설명하고자 한다.
도5는 본 개시의 실시예에 따른 지식 그래프 중의 데이터 모델을 획득하는 방법(500)의 흐름도를 도시한다. 예를 들면, 방법(500)은 도1에 도시한 모델 획득 장치(120)에 의하여 수행될 수 있다. 방법(500) 에 있어서 미도시된 추가 단계가 더 포함되거나 및/또는 도시된 단계가 생략될 수도 있음을 이해하여야 한다. 본 개시의 범위는 이러한 측면에서 한정되지 않는다.
단계510에서, 모델 획득 장치(120)는 복수의 엔티티와 복수의 객체 사이의 대응 관계를 설명하는 복수의 지식 엔트리를 수신할 수 있다. 다음, 단계520에서, 모델 획득 장치(120)는 상기 복수의 지식 엔트리에 매칭되는 복수의 데이터 모델을 생성할 수 있다.
일부 실시예에서, 모델 획득 장치(120)는 수신된 복수의 지식 엔트리 중의 각 지식 엔트리에 대해 도2에 도시한 방법(200)을 응용하여, 하나의 대응되는 데이터 모델을 생성할 수 있다. 모델 획득 장치(120)는 나아가, 생성된 데이터 모델에 대한 중복 제거를 통해, 복수의 지식 엔트리에 매칭되는 복수의 부동한 데이터 모델을 획득할 수 있다.
일부 실시예에서, 모델 획득 장치(120)에 의하여 결정된 복수의 데이터 모델은 예를 들어 제1 데이터 모델과 제2 데이터 모델을 포함할 수 있는바, 여기서 제1 데이터 모델은 제1 엔티티 유형과 제1 관계를 가지는 제1 객체 유형을 나타내고 제2 데이터 모델은 제1 엔티티 유형과 제1 관계를 가지는 제2 객체 유형을 나타낸다. 예를 들면, 제1 데이터 모델의 예시는 '음악-저자-인물'이고 제2 데이터 모델의 예시는 '음악-저자-뮤지션'인바, 양자의 엔티티 유형은 모두 '음악'이고 관계는 모두 '저자'이며 객체 유형은 각각 '인물'(즉, 제1 객체 유형)과 '뮤지션'(즉, 제2 객체 유형)이다.
단계530에서, 모델 획득 장치(120)는 상술한 제1 데이터 모델 중의 제1 객체 유형과 제2 데이터 모델 중의 제2 객체 유형이 동일한지를 결정할 수 있다. 부동한 경우, 단계540에서, 모델 획득 장치(120)는 복수의 지식 엔트리에 관련된 복수의 객체에서 제1 객체 유형에 매칭되는 객체의 제1 개수 및 제2 객체 유형에 매칭되는 객체의 제2 개수를 결정할 수 있다.
일부 실시예에서, 모델 획득 장치(120)는 수신된 복수의 지식 엔트리에 관련되는 모든 객체에 대해 중복 제거를 수행하여, 복수의 지식 엔트리에 관련되는 비 중복 객체의 전체 개수를 결정할 수 있다. 다음, 모델 획득 장치(120)는 나아가 제1 객체 유형(즉, '인물')에 포괄되는 객체의 제1 개수 및 제2 객체 유형(즉, '뮤지션')에 포괄되는 객체의 제2 개수를 결정할 수 있다. 예를 들면, 여기서 제1 객체 유형 '인물'에 포괄되는 객체의 개수가 101이고 제2 객체 유형 '뮤지션'에 포괄되는 객체의 개수가 100이라고 가설한다.
단계550에서, 모델 획득 장치(120)는 제1 개수와 제2 개수에 따라, 제1 데이터모델과 제2 데이터 모델 중 적어도 하나의 모델을 유지할 수 있다.
예를 들면, 상술한 예시에서, 제1 객체 유형 '인물'은 제2 객체 유형 '뮤지션'의 상위어이다. 일부 실시예에서, 제1 객체 유형이 제2 객체 유형의 상위어인 경우, 모델 획득 장치(120)는 제2 개수와 제1 개수의 비율이 소정의 역치를 초과하는지 여부를 결정할 수 있다. 비율이 소정의 역치를 초과하는 경우, 모델 획득 장치(120)는 제2 객체 유형을 나타내는 제2 데이터 모델만을 유지하고, 복수의 데이터 모델에서 제1 객체 유형을 나타내는 제1 데이터 모델을 배제할 수 있다. 상술한 예시를 예로 들면, 제2 개수와 제1 개수의 비율이 예를 들어 100/101이고 가령 소정의 역치가 예를 들어 0.8(또는 기타 수치)이면 100/101>0.8이다. 이러한 경우, 모델 획득 장치(120)는 복수의 데이터 모델에서 제1 데이터 모델 '음악-저자-인물'을 배제하고 제2 데이터 모델 '음악-저자-뮤지션'만을 유지할 수 있다. 추가로 또는 대안으로, 일부 실시예에서, 제2 개수와 제1 개수의 비율이 소정의 역치를 초과하지 않는 경우, 모델 획득 장치(120)는 제1 데이터 모델과 제2 데이터 모델 양자를 유지할 수 있다.
일부 실시예에서, 모델 획득 장치(120)는 단계520에서 결정된 복수의 데이터 모델에 대해 단계530 내지 단계550의 조작을 반복적으로(iteratively) 수행할 수 있는바, 이로써 구축된 데이터 모델에서 객체 유형의 일반화 정도가 적합하도록 보장하여 지나치게 일반화되거나 지나치게 상세화되지 않도록 한다.
상기의 설명으로, 본 개시의 실시예는 지식 그래프 중의 데이터 모델을 획득하는 방안을 제공한다는 것을 보아낼 수 있다. 당해 방안은 SPO 형식의 지식 엔트리로부터 적합한 객체 유형을 자동으로 귀납하고 마이닝할 수 있는바, 이로써 인건 비용을 효과적으로 낮추면서 지식 그래프 중의 데이터 모델을 고효율적으로 구축할 수 있다. 전통적인 방안 중의 외부 의존성을 제거할 수 있는 것 외에도 당해 방안은 구축된 데이터 모델 중의 객체 유형이 자동으로 적합한 일반화 정도를 가지도록 보장할 수 있다.
도6은 본 개시의 실시예에 따른 지식 그래프 중의 데이터 모델을 획득하는 장치(600)의 개략적인 블록도를 도시한다. 당해 장치(600)는 도1에 도시한 모델 획득 장치(120)를 구현할 수 있다. 도6에 도시한 바와 같이, 장치(600)는, 엔티티와 객체 사이의 관계를 설명하는 지식 엔트리를 수신하도록 구성되는 제1 수신 모듈(610); 엔티티, 관계 및 객체 중의 적어도 하나에 따라 당해 객체의 복수의 후보 유형을 결정하도록 구성되는 제1 결정 모듈(620); 소정의 규칙에 따라 복수의 후보 유형에서 당해 지식 엔트리에 매칭되는 데이터 모델을 생성하는 객체 유형을 결정하도록 구성되는 제2 결정 모듈(630); 및 적어도 당해 객체 유형에 따라 데이터 모델을 생성하도록 구성되는 제1 생성 모듈(640); 을 포함할 수 있다.
일부 실시예에서, 제1 결정 모듈(620)은 또한, 지식 엔트리에서 관계를 설명하는 단어를 복수의 분사로 분할하고; 복수의 분사 중 하나에 따라 객체의 제1 후보 유형을 결정하도록 구성된다.
일부 실시예에서, 제1 결정 모듈(620)은 또한, 지식 엔트리 중에서 객체를 설명하는 단어의 품사를 결정하고; 당해 품사에 따라 객체가 소정의 비 사물 유형에 매칭되는지 여부를 결정하고; 객체가 소정의 비 사물 유형에 매칭된다고 결정된 것에 응답하여, 당해 소정의 비 사물 유형을 객체의 제2 후보 유형으로 결정하도록 구성된다.
일부 실시예에서, 소정의 비 사물 유형은 텍스트 유형, 시간 유형, 숫자 유형, 수량 유형 및 열거 유형 중의 하나이다.
일부 실시예에서, 제1 결정 모듈(620)은 또한, 엔티티와 관계를 가지는 객체 유형을 예측하여, 객체의 제3 후보 유형을 결정하도록 구성된다.
일부 실시예에서, 제1 결정 모듈(620)은 또한, 엔티티의 복수의 엔티티 상위어를 결정하고; 객체의 복수의 객체 상위어를 결정하고; 복수의 엔티티 상위어와 복수의 객체 상위어로부터 당해 지식 엔트리의 의미와 매칭도가 가장 높은 엔티티 상위어와 객체 상위어의 조합을 결정하고; 당해 조합 중의 객체 상위어에 따라 객체의 제4 후보 유형을 결정하도록 구성된다.
일부 실시예에서, 제1 결정 모듈(620)은 또한, 지식 엔트리의 의미에 따라 객체가 소정 객체 유형 집합 중의 객체 유형에 매칭되는지 여부를 결정하고; 객체가 소정 객체 유형 집합 중의 객체 유형에 매칭된고 결정된 것에 응답하여, 매칭되는 객체 유형을 객체의 제5 후보 유형으로 결정하도록 구성된다.
일부 실시예에서, 제2 결정 모듈(630)은 또한, 소정의 규칙에 따라 복수의 후보 유형 중 하나를 데이터 모델을 생성하는 객체 유형으로 선택하도록 구성된다.
일부 실시예에서, 복수의 후보 유형은 적어도 제6 후보 유형과 제7 후보 유형을 포함하고, 제2 결정 모듈(630)은 또한, 제6 후보 유형과 제7 후보 유형의 공동 상위어를 결정하고; 공동 상위어에 따라 데이터 모델을 생성하는 객체 유형을 결정하도록 구성된다.
일부 실시예에서, 장치(600)는, 복수의 엔티티와 복수의 객체 사이의 대응 관계를 설명하는 복수의 지식 엔트리를 수신하도록 구성되는 제2 수신 모듈; 복수의 지식 엔트리에 매칭되는 복수의 데이터 모델을 생성하도록 구성되는 제2 생성 모듈 - 복수의 데이터 모델은 적어도 제1 데이터 모델과 제2 데이터 모델을 포함하고, 제1 데이터 모델은 제1 엔티티 유형과 제1 관계를 가지는 제1 객체 유형을 나타내고, 제2 데이터 모델은 제1 엔티티 유형과 제1 관계를 가지는 제2 객체 유형을 나타냄 - ; 제1 객체 유형이 제2 객체 유형과 상이한 것에 응답하여, 복수의 객체에서 제1 객체 유형에 매칭되는 객체의 제1 개수와 제2 객체 유형에 매칭되는 객체의 제2 개수를 결정하도록 구성되는 제3 결정 모듈; 및 제1 개수와 제2 개수에 따라, 제1 데이터 모델과 제2 데이터 모델 중 적어도 하나의 데이터 모델을 유지하도록 구성되는 유지 모듈; 을 더 포함한다.
일부 실시예에서, 유지 모듈은 또한, 제1 객체 유형이 제2 객체 유형의 상위어인 것에 응답하여, 제2 개수와 제1 개수의 비율이 소정의 역치를 초과하는지 여부를 결정하고; 당해 비율이 소정의 역치를 초과한 것에 응답하여, 제2 데이터 모델을 유지하고 복수의 데이터 모델에서 제1 데이터 모델을 배제하고; 당해 비율이 소정의 역치를 초과하지 않는 것에 응답하여, 제1 데이터 모델와 제2 데이터 모델 양자를 유지도록 구성된다.
장치(600)에 있어서 기재되는 각 모듈은, 각각 도2를 참조하여 설명된 방법(200) 및/또는 도5를 참조하여 설명된 방법(500) 중의 각각의 단계에 대응되고, 방법(200) 및/또는 방법(500) 중의 대응되는 조작 및 특징과 동일한 효과를 가진다는 것을 이해하여야 하는바, 구체적인 디테일에 대한 상세한 설명은 생략하기로 한다.
또한, 장치(600)에 포함되는 모듈 및/또는 유닛은 여러 가지 방식을 이용하여 구현할 수 있는바, 소프트웨어, 하드웨어, 펌웨어 또는 이들의 임의 조합이 포함된다. 일부 실시예에서, 하나 또는 복수의 유닛은 소프트웨어 및/또는 펌웨어를 사용하여 구현할 수 있는바, 예를 들어 저장 매체에 저장되는 기계 실행 가능 명령어이다. 기계 실행 가능 명령어 이외에 또는 그 대안으로, 장치(600) 중의 일부 또는 전부의 유닛은 적어도 부분적으로 하나 또는 복수의 하드웨어 논리 컴포넌트로 구현될 수 있다. 제한이 아닌 예시로서, 사용 가능한 시범 유형의 하드웨어 논리 컴포넌트는 필드 프로그램 가능 게이트 어레이(FPGA), 주문형 집적 회로(ASIC), 특정 용도 표준 제품(ASSP), 시스템 온 칩(SOC), 복합 프로그래머블 논리 디바이스(CPLD) 등을 포함한다 .
도6에 도시한 이러한 모듈 및/또는 유닛은 일부 또는 전부가 하드웨어 모듈, 소프트웨어 모듈, 펌웨어 모듈 또는 이들의 임의 조합으로 구현될 수 있다. 특별히, 어떤 실시예에서, 상기에서 설명된 흐름, 방법 또는 과정은 저장 시스템 또는 저장 시스템에 대응되는 호스트 컴퓨터 또는 저장 시스템으로부터 독립되는 기타 컴퓨팅 기기 중의 하드웨어에 의해 구현될 수 있다.
도7은 본 개시의 실시예를 구현 가능한 예시 기기(700)의 개략적 블록도를 도시한다. 기기(700)는 도1에 도시한 모델 획득 장치(120)를 구현할 수 있다. 도시한 바와 같이, 기기(700)는 중앙 처리 유닛(CPU)(701)을 포함하는바, 이는 읽기 전용 메모리(ROM)(702)에 저장된 컴퓨터 프로그램 명령어 또는 저장 유닛(808)로부터 랜덤 액세스 메모리(RAM)(703)에 로딩된 컴퓨터 프로그램 명령어에 따라 여러 가지 적당한 동작과 처리를 실행한다. RAM(703)에는 또한 기기(700) 조작에 필요한 여러 가지 프로그램과 데이터를 저장할 수 있다. CPU(701), ROM(702) 및 RAM(703)는 버스(704)를 통해 서로 연결된다. 입력/출력(I/O) 인터페이스(705)도 버스(704)에 연결된다.
기기(700) 중의 복수의 부품은 I/O 인터페이스(705)에 연결되는바, 입력 유닛(706), 예를 들어 키보드, 마우스 등; 출력 유닛(707), 예를 들어 여러 가지 유형의 디스플레이, 스피커 등; 저장 유닛(708), 예를 들어 자기 디스크, 광디스크 등; 및 통신 유닛(709), 예를 들어 네트워크 카드, 모뎀, 무선 통신 송수신기 등을 포함한다. 통신 유닛(709)은 기기(700)가 인터넷과 같은 컴퓨터 네트워크 및/또는 여러 가지 전기 통신 네트워크를 통하여 기타 기기와 정보/데이터를 교환하도록 허용한다.
CPU(701)은 상기에서 설명된 각각의 방법 및 처리를 실행하는바, 예를 들어 방법(200 및/또는 500)이다. 예를 들어, 일부 실시예에서, 방법(200) 및/또는 방법(500)은 컴퓨터 소프트웨어 프로그램으로 구현될 수 있는바, 이는 기계 판독 가능 저장 매체, 예를 들어 저장 유닛(708)에 유형적으로 포함된다. 일부 실시예에서, 컴퓨터 프로그램의 일부 또는 전부가 ROM(702) 및/또는 통신 유닛(709)을 통하여 기기(700)에 로딩 및/또는 설치될 수 있다. 컴퓨터 프로그램이 RAM(703)에 로딩되어 CPU(701)에 의해 실행될 시, 상기에서 설명된 방법(200 및/또는 500)의 하나 또는 복수의 단계를 실행할 수 있다. 대안적으로, 기타 실시예에서, CPU(701)는 기타 임의의 적당한 방식을 통해(예를 들어, 펌웨어의 도움으로) 방법(200 및/또는 500)을 실행하도록 구성될 수 있다.
본 명세서에서 위에서 설명된 기능은 적어도 일부가 하나 또는 복수의 하드웨어 논리 부품에 의하여 수행될 수 있다. 예를 들러,비한정적으로,사용 가능한 시범 유형의 하드웨어 논리 부품은 필드 프로그램 가능 게이트 어레이(FPGA), 주문형 집적 회로(ASIC), 특정 용도 표준 제품(ASSP), 시스템 온 칩(SOC), 복합 프로그래머블 논리 디바이스(CPLD) 등을 포함한다.
본 개시의 방법을 구현하기 위한 프로그램 코드는 하나 또는 복수의 프로그래밍 언어의 임의의 조합을 적용하여 작성할 수 있다. 이러한 프로그램 코드는 범용 컴퓨터, 전용 컴퓨터 또는 기타 프로그램 가능 데이터 처리 장치의 프로세서 또는 제어기에 제공되어 프로그램 코드가 프로세서 또는 제어기에 의해 실행될 시 흐름도 및/또는 블록도에 규정한 기능/조작이 구현되도록 할 수 있다. 프로그램 코드는 기계에서 전부 실행되거나, 기계에서 일부 실행되거나, 독립적인 소프트웨어 패키지로서 일부는 기계에서 실행되고 일부는 원격 기계에서 실행되거나, 혹은 원격 기계 또는 서버에서 전부 실행될 수 있다.
본 개시의 전반 서술에서, 기계 판독 가능 저장 매체는 유형의 저장 매체일 수 있는바, 이는, 명령어 실행 시스템, 장치 또는 기기에 사용하기 위한, 또는 명령어 실행 시스템, 장치 또는 기기와 결합하여 사용하기 위한 프로그램을 포함 또는 저장할 수 있다. 기계 판독 가능 저장 매체는 기계 판독 가능 신호 저장 매체 또는 기계 판독 가능 저장 매체일 수 있다. 기계 판독 가능 저장 매체는 전자의, 자성의, 광학의, 전자기의, 적외선의 또는 반도체의 시스템, 장치 또는 기기, 또는 상술한 내용의 임의의 적합한 조합을 포함할 수 있으나 이에 한정되지 않는다. 기계 판독 가능 저장 매체의 더 구체적인 예시는 하나 또는 복수의 선에 따른 전기 연결, 휴대형 컴퓨터 디스크, 하드 디스크, 랜덤 액세스 메모리(RAM), 읽기 전용 메모리(ROM), 소거 및 프로그램 가능 읽기 전용 메모리(EPROM) 또는 플래시 메모리, 광섬유, 휴대용 콤팩트 디스크 읽기 전용 메모리(CD-ROM), 광학 저장 기기, 자기 저장 기기, 또는 상술한 내용의 임의의 적합한 조합을 포함하게 된다.
이 외에, 비록 각 조작을 묘사함에 있어서 특정 순서를 적용하였지만, 이러한 조작이 도시된 특정 순서로 또는 순차적 순서로 실행되어야 하거나, 또는 모든 도시한 조작이 실행되어야 하는 것으로, 이로써 기대하는 결과를 취득하기 위한 것임을 이해하여야 한다. 일정한 환경에서는, 다중 태스크 및 병렬 처리가 유익할 수 있다. 마찬가지로, 비록 상기의 서술에는 약간의 구체 구현 디테일이 포함되지만, 이러한 것은 본 개시의 범위에 대한 제한으로 해석되어서는 안된다. 단독의 실시예의 전반 서술에서 설명되는 어떤 특징 또한, 조합 가능하게 하나의 구현에 구현될 수 있다. 반대로, 하나의 구현의 전반 서술에서 설명되는 여러 가지 특징도 단독으로 또는 임의의 적합한 서브조합의 방식으로 복수의 실시예에 의해 구현될 수 있다.
비록 이미 구조적 특징 및/또는 방법론적 동작에 특정된 언어를 적용하여 본 주제에 대해 설명하였지만, 첨부된 특허청구범위가 한정하는 주제는 위에서 설명한 특정 특징 또는 동작에 한정되는 것이 아님을 이해하여야 한다. 반대로, 위에서 설명한 특정 특징 및 동작은 단지 특허청구범위의 예시 형식을 구현하는 것일 뿐이다.
Claims (24)
- 지식 그래프 중의 데이터 모델을 획득하는 방법에 있어서,
제1 수신 모듈이 엔티티와 객체 사이의 관계를 설명하는 지식 엔트리를 수신하는 단계;
제1 결정 모듈이 상기 엔티티, 상기 관계 및 상기 객체 중의 적어도 하나에 따라 상기 객체의 복수의 후보 유형을 결정하는 단계;
제2 결정 모듈이 소정의 규칙에 따라 상기 복수의 후보 유형에서 상기 지식 엔트리에 매칭되는 데이터 모델을 생성하기 위한 객체 유형을 결정하는 단계; 및
제1 생성 모듈이 적어도 상기 객체 유형에 따라 상기 데이터 모델을 생성하는 단계; 를 포함하고,
상기 복수의 후보 유형은 적어도 제6 후보 유형과 제7 후보 유형을 포함하고,
상기 복수의 후보 유형에서 상기 데이터 모델을 생성하기 위한 상기 객체 유형을 결정하는 단계는,
상기 제2 결정 모듈이 상기 제6 후보 유형과 상기 제7 후보 유형의 공동 상위어를 결정하는 단계; 및
상기 제2 결정 모듈이 상기 공동 상위어에 따라 상기 데이터 모델을 생성하기 위한 상기 객체 유형을 결정하는 단계; 를 포함하는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 방법. - 제1항에 있어서,
상기 객체의 상기 복수의 후보 유형을 결정하는 단계는,
상기 제1 결정 모듈이 상기 지식 엔트리에서 상기 관계를 설명하는 단어를 복수의 분사로 분할하는 단계; 및
상기 제1 결정 모듈이 상기 복수의 분사 중 하나에 따라 상기 객체의 제1 후보 유형을 결정하는 단계; 를 포함하는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 방법. - 제1항에 있어서,
상기 객체의 상기 복수의 후보 유형을 결정하는 단계는,
상기 제1 결정 모듈이 상기 지식 엔트리에서 상기 객체를 설명하는 단어의 품사를 결정하는 단계;
상기 제1 결정 모듈이 상기 품사에 따라 상기 객체가 소정의 비 사물 유형에 매칭되는지 여부를 결정하는 단계; 및
상기 제1 결정 모듈이 상기 객체가 상기 소정의 비 사물 유형에 매칭된다고 결정된 것에 응답하여, 상기 소정의 비 사물 유형을 상기 객체의 제2 후보 유형으로 결정하는 단계; 를 포함하는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 방법. - 제3항에 있어서,
상기 소정의 비 사물 유형은 텍스트 유형, 시간 유형, 숫자 유형, 수량 유형 및 열거 유형 중 하나인,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 방법. - 제1항에 있어서,
상기 객체의 상기 복수의 후보 유형을 결정하는 단계는,
상기 제1 결정 모듈이 상기 엔티티와 상기 관계를 가지는 객체 유형을 예측하여, 상기 객체의 제3 후보 유형을 결정하는 단계를 포함하는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 방법. - 제1항에 있어서,
상기 객체의 상기 복수의 후보 유형을 결정하는 단계는,
상기 제1 결정 모듈이 상기 엔티티의 복수의 엔티티 상위어를 결정하는 단계;
상기 제1 결정 모듈이 상기 객체의 복수의 객체 상위어를 결정하는 단계;
상기 제1 결정 모듈이 상기 복수의 엔티티 상위어와 상기 복수의 객체 상위어로부터 상기 지식 엔트리의 의미와 매칭도가 가장 높은 엔티티 상위어와 객체 상위어의 조합을 결정하는 단계; 및
상기 제1 결정 모듈이 상기 조합 중의 상기 객체 상위어에 따라 상기 객체의 제4 후보 유형을 결정하는 단계; 를 포함하는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 방법. - 제1항에 있어서,
상기 객체의 상기 복수의 후보 유형을 결정하는 단계는,
상기 제1 결정 모듈이 상기 지식 엔트리의 의미에 따라 상기 객체가 소정의 객체 유형 집합 중의 객체 유형에 매칭되는지 여부를 결정하는 단계; 및
상기 제1 결정 모듈이 상기 객체가 상기 소정의 객체 유형 집합 중의 객체 유형에 매칭된다고 결정된 것에 응답하여, 매칭되는 객체 유형을 상기 객체의 제5 후보 유형으로 결정하는 단계; 를 포함하는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 방법. - 제1항에 있어서,
상기 복수의 후보 유형에서 상기 데이터 모델을 생성하기 위한 상기 객체 유형을 결정하는 단계는,
상기 제2 결정 모듈이 상기 소정의 규칙에 따라 상기 복수의 후보 유형 중 하나를 상기 데이터 모델을 생성하기 위한 상기 객체 유형으로 선택하는 단계를 포함하는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 방법. - 삭제
- 제1항에 있어서,
제2 수신 모듈이 복수의 엔티티와 복수의 객체 사이의 대응 관계를 설명하는 복수의 지식 엔트리를 수신하는 단계;
제2 생성 모듈이 상기 복수의 지식 엔트리에 매칭되는 복수의 데이터 모델을 생성하는 단계 - 상기 복수의 데이터 모델은 적어도 제1 데이터 모델과 제2 데이터 모델을 포함하고, 상기 제1 데이터 모델은 제1 엔티티 유형과 제1 관계를 가지는 제1 객체 유형을 나타내고, 상기 제2 데이터 모델은 상기 제1 엔티티 유형과 상기 제1 관계를 가지는 제2 객체 유형을 나타냄 - ;
제3 결정 모듈이 상기 제1 객체 유형이 상기 제2 객체 유형과 상이한 것에 응답하여, 상기 복수의 객체에서 상기 제1 객체 유형에 매칭되는 객체의 제1 개수와 상기 제2 객체 유형에 매칭되는 객체의 제2 개수를 결정하는 단계; 및
유지 모듈이 상기 제1 개수와 상기 제2 개수에 따라, 상기 제1 데이터 모델과 상기 제2 데이터 모델 중 적어도 하나의 데이터 모델을 유지하는 단계; 를 더 포함하는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 방법. - 제10항에 있어서,
상기 제1 데이터 모델과 상기 제2 데이터 모델 중 적어도 하나의 데이터 모델을 유지하는 단계는,
상기 유지 모듈이 상기 제1 객체 유형이 상기 제2 객체 유형의 상위어인 것에 응답하여, 상기 제2 개수와 상기 제1 개수의 비율이 소정의 역치를 초과하는지 여부를 결정하는 단계;
상기 유지 모듈이 상기 비율이 상기 소정의 역치를 초과하는 것에 응답하여, 상기 제2 데이터 모델을 유지하고 상기 복수의 데이터 모델에서 상기 제1 데이터 모델을 배제하는 단계; 및
상기 유지 모듈이 상기 비율이 상기 소정의 역치를 초과하지 않는 것에 응답하여, 상기 제1 데이터 모델과 상기 제2 데이터 모델 양자를 유지하는 단계; 를 포함하는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 방법. - 지식 그래프 중의 데이터 모델을 획득하는 장치에 있어서,
엔티티와 객체 사이의 관계를 설명하는 지식 엔트리를 수신하도록 구성되는 제1 수신 모듈;
상기 엔티티, 상기 관계 및 상기 객체 중의 적어도 하나에 따라 상기 객체의 복수의 후보 유형을 결정하도록 구성되는 제1 결정 모듈;
소정의 규칙에 따라 상기 복수의 후보 유형에서 상기 지식 엔트리에 대응되는 객체 유형을 결정하도록 구성되는 제2 결정 모듈; 및
적어도 상기 객체 유형에 따라 상기 데이터 모델을 생성하도록 구성되는 제1 생성 모듈; 을 포함하고,
상기 복수의 후보 유형은 적어도 제6 후보 유형과 제7 후보 유형을 포함하고,
상기 제2 결정 모듈은 또한
상기 제6 후보 유형과 상기 제7 후보 유형의 공동 상위어를 결정하고;
상기 공동 상위어에 따라 상기 데이터 모델을 생성하기 위한 상기 객체 유형을 결정하도록 구성되는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 장치. - 제12항에 있어서,
상기 제1 결정 모듈은 또한
상기 지식 엔트리에서 상기 관계를 설명하는 단어를 복수의 분사로 분할하고;
상기 복수의 분사 중 하나에 따라 상기 객체의 제1 후보 유형을 결정하도록 구성되는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 장치. - 제12항에 있어서,
상기 제1 결정 모듈은 또한
상기 지식 엔트리에서 상기 객체를 설명하는 단어의 품사를 결정하고;
상기 품사에 따라 상기 객체가 소정의 비 사물 유형에 매칭되는지 여부를 결정하고;
상기 객체가 상기 소정의 비 사물 유형에 매칭된다고 결정된 것에 응답하여, 상기 소정의 비 사물 유형을 상기 객체의 제2 후보 유형으로 결정하도록 구성되는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 장치. - 제14항에 있어서,
상기 소정의 비 사물 유형은 텍스트 유형, 시간 유형, 숫자 유형, 수량 유형 및 열거 유형 중 하나인,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 장치. - 제12항에 있어서,
상기 제1 결정 모듈은 또한
상기 엔티티와 상기 관계를 가지는 객체 유형을 예측하여, 상기 객체의 제3 후보 유형을 결정하도록 구성되는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 장치. - 제12항에 있어서,
상기 제1 결정 모듈은 또한
상기 엔티티의 복수의 엔티티 상위어를 결정하고;
상기 객체의 복수의 객체 상위어를 결정하고;
상기 복수의 엔티티 상위어와 상기 복수의 객체 상위어로부터 상기 지식 엔트리의 의미와 매칭도가 가장 높은 엔티티 상위어와 객체 상위어의 조합을 결정하고;
상기 조합 중의 상기 객체 상위어에 따라 상기 객체의 제4 후보 유형을 결정하도록 구성되는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 장치. - 제12항에 있어서,
상기 제1 결정 모듈은 또한
상기 지식 엔트리의 의미에 따라 상기 객체가 소정의 객체 유형 집합 중의 객체 유형에 매칭되는지 여부를 결정하고; 및
상기 객체가 상기 소정의 객체 유형 집합 중의 객체 유형에 매칭된다고 결정된 것에 응답하여, 매칭되는 객체 유형을 상기 객체의 제5 후보 유형으로 결정하도록 구성되는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 장치. - 제12항에 있어서,
상기 제2 결정 모듈은 또한
상기 소정의 규칙에 따라 상기 복수의 후보 유형 중 하나를 상기 데이터 모델을 생성하기 위한 상기 객체 유형으로 선택하도록 구성되는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 장치. - 삭제
- 제12항에 있어서,
복수의 엔티티와 복수의 객체 사이의 대응 관계를 설명하는 복수의 지식 엔트리를 수신하도록 구성되는 제2 수신 모듈;
상기 복수의 지식 엔트리에 매칭되는 복수의 데이터 모델을 생성하도록 구성되는 제2 생성 모듈 - 상기 복수의 데이터 모델은 적어도 제1 데이터 모델과 제2 데이터 모델을 포함하고, 상기 제1 데이터 모델은 제1 엔티티 유형과 제1 관계를 가지는 제1 객체 유형을 나타내고, 상기 제2 데이터 모델은 상기 제1 엔티티 유형과 상기 제1 관계를 가지는 제2 객체 유형을 나타냄 - ;
상기 제1 객체 유형이 상기 제2 객체 유형과 상이한 것에 응답하여, 상기 복수의 객체에서 상기 제1 객체 유형에 매칭되는 객체의 제1 개수와 상기 제2 객체 유형에 매칭되는 객체의 제2 개수를 결정하도록 구성되는 제3 결정 모듈; 및
상기 제1 개수와 상기 제2 개수에 따라, 상기 제1 데이터 모델과 상기 제2 데이터 모델 중 적어도 하나의 데이터 모델을 유지하도록 구성되는 유지 모듈; 을 더 포함하는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 장치. - 제21항에 있어서,
상기 유지 모듈은 또한
상기 제1 객체 유형이 상기 제2 객체 유형의 상위어인 것에 응답하여, 상기 제2 개수와 상기 제1 개수의 비율이 소정의 역치를 초과하는지 여부를 결정하고;
상기 비율이 상기 소정의 역치를 초과하는 것에 응답하여, 상기 제2 데이터 모델을 유지하고 상기 복수의 데이터 모델에서 상기 제1 데이터 모델을 배제하고;
상기 비율이 상기 소정의 역치를 초과하지 않는 것에 응답하여, 상기 제1 데이터 모델과 상기 제2 데이터 모델 양자를 유지하도록 구성되는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 장치. - 지식 그래프 중의 데이터 모델을 획득하는 기기에 있어서,
하나 또는 복수의 프로세서; 및
하나 또는 복수의 프로그램을 저장하는 저장 장치; 를 포함하고,
상기 하나 또는 복수의 프로그램이 상기 하나 또는 복수의 프로세서에 의해 실행될 경우, 상기 하나 또는 복수의 프로세서가 제1항 내지 제8항, 제10항 및 제11항 중 어느 한 항의 방법을 구현하는,
것을 특징으로 하는 지식 그래프 중의 데이터 모델을 획득하는 기기. - 컴퓨터 프로그램이 저장되어 있는 컴퓨터 판독가능 저장 매체에 있어서,
상기 프로그램이 프로세서에 의해 실행될 경우, 제1항 내지 제8항, 제10항 및 제11항 중 어느 한 항의 방법이 구현되는,
것을 특징으로 하는 컴퓨터 판독가능 저장 매체.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910081843.1A CN109815343B (zh) | 2019-01-28 | 2019-01-28 | 获得知识图谱中的数据模型的方法、装置、设备和介质 |
CN201910081843.1 | 2019-01-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200093441A KR20200093441A (ko) | 2020-08-05 |
KR102299744B1 true KR102299744B1 (ko) | 2021-09-08 |
Family
ID=66605613
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200002709A KR102299744B1 (ko) | 2019-01-28 | 2020-01-08 | 지식 그래프 중의 데이터 모델을 획득하는 방법, 장치, 기기 및 저장 매체 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11556812B2 (ko) |
EP (1) | EP3686749A1 (ko) |
JP (1) | JP6933736B2 (ko) |
KR (1) | KR102299744B1 (ko) |
CN (1) | CN109815343B (ko) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102273136B1 (ko) * | 2019-10-17 | 2021-07-02 | 연세대학교 산학협력단 | 멀티 홉 이웃을 이용한 제로샷 지식 그래프 완성 방법 및 장치 |
CN111274379B (zh) * | 2020-01-15 | 2023-08-29 | 北京百度网讯科技有限公司 | 一种spo的选择方法、装置、电子设备及存储介质 |
US11853904B2 (en) * | 2020-03-26 | 2023-12-26 | Accenture Global Solutions Limited | Agnostic creation, version control, and contextual query of knowledge graph |
JP7001795B1 (ja) | 2020-11-13 | 2022-01-20 | 株式会社ネクスティエレクトロニクス | シミュレーション用のデータ生成装置、方法及びコンピュータプログラム |
CN112732940B (zh) * | 2021-01-15 | 2023-07-14 | 医渡云(北京)技术有限公司 | 基于模型的医学知识图谱的推理方法、装置、设备及介质 |
CN117371529B (zh) * | 2023-12-07 | 2024-04-05 | 北京市农林科学院信息技术研究中心 | 作物表型数据知识图谱生成方法、装置、电子设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130262449A1 (en) | 2012-04-02 | 2013-10-03 | Playence GmBH | System and method for search refinement using knowledge model |
KR101644044B1 (ko) * | 2015-02-24 | 2016-08-01 | 한국과학기술원 | 개념 및 관계 의역 시스템 및 방법 |
US20170032249A1 (en) | 2015-07-30 | 2017-02-02 | Tata Consultancy Serivces Limited | Automatic Entity Relationship (ER) Model Generation for Services as Software |
KR101988396B1 (ko) | 2017-12-20 | 2019-06-12 | 주식회사 솔트룩스 | 자연어 질의로부터 지식 베이스에 대한 쿼리 생성 및 리소스 랭킹을 위한 시스템 및 이를 포함하는 질의 응답 시스템 |
KR101987915B1 (ko) | 2017-12-22 | 2019-06-12 | 주식회사 솔트룩스 | 자연어 질의로부터 지식 베이스에 대한 쿼리의 생성에 사용되는 템플릿을 생성하는 시스템 및 이를 포함하는 질의 응답 시스템 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004036497A (ja) | 2002-07-03 | 2004-02-05 | Nissan Motor Co Ltd | 排ガス浄化方法 |
EP1560158A1 (en) * | 2002-10-18 | 2005-08-03 | Japan Science and Technology Agency | Learning/thinking machine and learning/thinking method based on structured knowledge, computer system, and information generation method |
US8078646B2 (en) * | 2008-08-08 | 2011-12-13 | Oracle International Corporation | Representing and manipulating RDF data in a relational database management system |
JP2011108085A (ja) * | 2009-11-19 | 2011-06-02 | Nippon Hoso Kyokai <Nhk> | 知識構築装置およびプログラム |
AU2011350109A1 (en) * | 2010-12-30 | 2013-07-18 | Primal Fusion Inc. | System and method for using a knowledge representation to provide information based on environmental inputs |
CN102495892A (zh) * | 2011-12-09 | 2012-06-13 | 北京大学 | 一种网页信息抽取方法 |
CN106716402B (zh) * | 2014-05-12 | 2020-08-11 | 销售力网络公司 | 以实体为中心的知识发现 |
US20160098645A1 (en) * | 2014-10-02 | 2016-04-07 | Microsoft Corporation | High-precision limited supervision relationship extractor |
US10127274B2 (en) * | 2016-02-08 | 2018-11-13 | Taiger Spain Sl | System and method for querying questions and answers |
DE102016223193A1 (de) * | 2016-11-23 | 2018-05-24 | Fujitsu Limited | Verfahren und Vorrichtung zum Komplettieren eines Wissensgraphen |
JP6705763B2 (ja) * | 2017-03-16 | 2020-06-03 | ヤフー株式会社 | 生成装置、生成方法および生成プログラム |
CN108182245A (zh) * | 2017-12-28 | 2018-06-19 | 北京锐安科技有限公司 | 人对象属性分类知识图谱的构建方法及装置 |
CN108153901B (zh) * | 2018-01-16 | 2022-04-19 | 北京百度网讯科技有限公司 | 基于知识图谱的信息推送方法和装置 |
-
2019
- 2019-01-28 CN CN201910081843.1A patent/CN109815343B/zh active Active
-
2020
- 2020-01-08 KR KR1020200002709A patent/KR102299744B1/ko active IP Right Grant
- 2020-01-10 JP JP2020002943A patent/JP6933736B2/ja active Active
- 2020-01-22 US US16/749,029 patent/US11556812B2/en active Active
- 2020-01-24 EP EP20153635.6A patent/EP3686749A1/en not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130262449A1 (en) | 2012-04-02 | 2013-10-03 | Playence GmBH | System and method for search refinement using knowledge model |
KR101644044B1 (ko) * | 2015-02-24 | 2016-08-01 | 한국과학기술원 | 개념 및 관계 의역 시스템 및 방법 |
US20170032249A1 (en) | 2015-07-30 | 2017-02-02 | Tata Consultancy Serivces Limited | Automatic Entity Relationship (ER) Model Generation for Services as Software |
KR101988396B1 (ko) | 2017-12-20 | 2019-06-12 | 주식회사 솔트룩스 | 자연어 질의로부터 지식 베이스에 대한 쿼리 생성 및 리소스 랭킹을 위한 시스템 및 이를 포함하는 질의 응답 시스템 |
KR101987915B1 (ko) | 2017-12-22 | 2019-06-12 | 주식회사 솔트룩스 | 자연어 질의로부터 지식 베이스에 대한 쿼리의 생성에 사용되는 템플릿을 생성하는 시스템 및 이를 포함하는 질의 응답 시스템 |
Non-Patent Citations (1)
Title |
---|
Kertkeidkachorn, Natthawut, and Ryutaro Ichise. An automatic knowledge graph creation framework from natural language text. IEICE TRANSACTIONS on Information and Systems 101.1. 2018.* |
Also Published As
Publication number | Publication date |
---|---|
US11556812B2 (en) | 2023-01-17 |
CN109815343A (zh) | 2019-05-28 |
JP2020119544A (ja) | 2020-08-06 |
KR20200093441A (ko) | 2020-08-05 |
US20200242490A1 (en) | 2020-07-30 |
CN109815343B (zh) | 2021-01-22 |
EP3686749A1 (en) | 2020-07-29 |
JP6933736B2 (ja) | 2021-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102299744B1 (ko) | 지식 그래프 중의 데이터 모델을 획득하는 방법, 장치, 기기 및 저장 매체 | |
US10963794B2 (en) | Concept analysis operations utilizing accelerators | |
CN106897343B (zh) | 执行计划的查找方法、存储方法及装置 | |
US20170083569A1 (en) | Natural language interface to databases | |
US10042921B2 (en) | Robust and readily domain-adaptable natural language interface to databases | |
JP2011258184A (ja) | コンピュータ解析のためにテキスト文書を表現するためのグラフィカル・モデル | |
Fichte et al. | Backdoors to normality for disjunctive logic programs | |
US11501111B2 (en) | Learning models for entity resolution using active learning | |
EP3387525B1 (en) | Learning from input patterns in programing-by-example | |
CN113282762A (zh) | 知识图谱构建方法、装置、电子设备和存储介质 | |
EP3407204A1 (en) | Methods and systems for translating natural language requirements to a semantic modeling language statement | |
Mahmood et al. | A semantic approach for traceability link recovery in aerospace requirements management system | |
US10296585B2 (en) | Assisted free form decision definition using rules vocabulary | |
US20200174760A1 (en) | Automatic code generation | |
US11120060B2 (en) | Efficient resolution of syntactic patterns in question and answer (QA) pairs in an n-ary focus cognitive QA system | |
WO2020024887A1 (en) | Graph functional dependency checking | |
US10169074B2 (en) | Model driven optimization of annotator execution in question answering system | |
Göbelbecker | Assisting with goal formulation for domain independent planning | |
Charbel et al. | Hybrid molecule-based information retrieval | |
US20230306204A1 (en) | Mining asynchronous support conversation using attributed directly follows graphing | |
US20160019292A1 (en) | Observation-based query interpretation model modification | |
Steinhorst et al. | Supporting enterprise transformation using a universal model analysis approach | |
Nirfarake et al. | Conversion of Natural Language to SQL Query | |
Ackermann et al. | Natural language generation for declarative process models | |
Dabholkar | NAMED ENTITY RECOGNITION AND CLASSIFICATION FOR NATURAL LANGUAGE INPUTS AT SCALE |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |