KR102212310B1 - 오류 트리플 검출 시스템 및 방법 - Google Patents

오류 트리플 검출 시스템 및 방법 Download PDF

Info

Publication number
KR102212310B1
KR102212310B1 KR1020190042525A KR20190042525A KR102212310B1 KR 102212310 B1 KR102212310 B1 KR 102212310B1 KR 1020190042525 A KR1020190042525 A KR 1020190042525A KR 20190042525 A KR20190042525 A KR 20190042525A KR 102212310 B1 KR102212310 B1 KR 102212310B1
Authority
KR
South Korea
Prior art keywords
model
triple
embedding
error
vector
Prior art date
Application number
KR1020190042525A
Other languages
English (en)
Other versions
KR20200067713A (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 US16/696,476 priority Critical patent/US11562133B2/en
Publication of KR20200067713A publication Critical patent/KR20200067713A/ko
Application granted granted Critical
Publication of KR102212310B1 publication Critical patent/KR102212310B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/217Database tuning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2325Non-hierarchical techniques using vector quantisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06K9/6223
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/042Knowledge-based neural networks; Logical representations of neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Quality & Reliability (AREA)
  • Probability & Statistics with Applications (AREA)
  • Medical Informatics (AREA)
  • Machine Translation (AREA)

Abstract

본 발명의 일 실시예에 따르면, 지식 베이스 내에서 타겟 트리플(subject, type, object)을 선정하는 트리플 선정부; 상기 타겟 트리플내에 포함된 개체를 공유하는 대상 트리플을 연결하여 문장 모델을 생성하는 샘플링부; 상기 문장 모델을 벡터 공간에 임베딩하여 학습 개체 백터(entity vector)를 생성하고 임베딩 모델을 구축하는 모델 구축부; 및 상기 임베딩 모델에 테스트 트리플을 입력하여 오류 트리플을 검출하는 오류 트리플 검출부를 포함하는 오류 트리플 검출 시스템을 제공한다.

Description

오류 트리플 검출 시스템 및 방법{System and method for detecting of Incorrect Triple}
본 발명은 오류 트리플 검출 시스템 및 방법에 관한 것으로 더욱 구체적으로는 임베딩 모델을 기반으로 한 지식 베이스의 오류 트리플 검출 시스템 및 방법에 관한 것이다.
기존 연구 및 종래 기술들의 경우 모순 규칙, 중복 규칙과 같이 구조적 특징을 이용하여 규칙을 정의하고 이를 기반으로 비일관성을 탐지하는 연구들이 존재한다. 종래 기술에 의하면, 규칙의 전제부가 같고 결론부가 부정의 관계의 있는 경우, 두 규칙의 전제부가 같고 결론부가 다른 경우 등을 규칙으로 정의하여 일관성이 없는 지식베이스의 오류를 검출한다.
이러한 종래 기술들은 지식베이스의 비일관성을 탐지할 수 있는 규칙들을 정의하고, 이를 기반으로 잘못된 결과를 초래할 수 있는 지식들을 찾아낼 수 있다. 그러나 이러한 종래 기술은 비일관성에 대한 문제의 해결이 가능하지만, 이외의 지식베이스 오류를 검출하기 위한 모든 규칙들을 직접 정의하고 검증하는 것이 불가능하다는 문제가 있다.
(특허문헌 1) KR10-2018-0092194 A
(특허문헌 2) KR10-2019-0033269 A
(특허문헌 3) KR10-2017-0101609 A
본 발명이 이루고자 하는 기술적 과제는 지식베이스의 오류를 검출하여 기존 지식서비스의 품질 및 성능을 향상시킬 수 있는 오류 트리플 검출 방법을 제공하는데 있다.
또한, 지식베이스로부터 새로운 지식을 추론하는 작업의 정확도를 증가시킬 수 있는 오류 트리플 검출 방법을 제공하는데 있다.
또한, 지식베이스를 사용하는 인공지능의 다양한 서비스 분야에서 활용될 수 있는 오류 트리플 검출 방법을 제공하는데 있다.
본 발명의 일 실시예에 따르면, 지식 베이스 내에서 타겟 트리플(subject, type, object)을 선정하는 트리플 선정부; 상기 타겟 트리플내에 포함된 개체를 공유하는 대상 트리플을 연결하여 문장 모델을 생성하는 샘플링부; 상기 문장 모델을 벡터 공간에 임베딩하여 학습 개체 백터(entity vector)를 생성하고 임베딩 모델 및 릴레이션 모델 중 적어도 하나를 구축하는 모델 구축부; 및 상기 임베딩 모델에 테스트 트리플을 입력하여 오류 트리플을 검출하는 오류 트리플 검출부를 포함하는 오류 트리플 검출 시스템을 제공한다.
상기 샘플링부는 상기 대상 트리플의 개체를 제거하여 상기 문장 모델을 생성할 수 있다.
상기 샘플링부는 상기 타겟 트리플의 개체별로 릴레이션 개수를 상이하게 설정할 수 있다.
상기 임베딩 모델상에서 관련 없는 개체를 필터링하는 필터링부를 더 포함할 수 있다.
상기 모델 구축부는 상기 학습 개체 벡터를 이용하여 클러스터링을 수행하여 상기 임베딩 모델을 구축할 수 있다.
상기 모델 구축부는 K-means클러스터링 방식을 적용하여 상기 임베딩 모델을 구축할 수 있다.
상기 모델 구축부는 K 클러스터 범위에 임계값을 적용하여 상기 임베딩 모델을 정규화할 수 있다.
상기 오류 트리플 검출부는 상기 K클러스터 범위에 포함되지 않은 테스트 트리플을 오류 트리플로 검출할 수 있다.
상기 모델 구축부는 Skip-gram 및 Glove 중 적어도 하나의 방식으로 상기 문장 모델을 벡터 공간에 임베딩할 수 있다.
상기 모델 구축부는 상기 학습 개체 벡터를 TransE, TransR, NTN, HolE 중 적어도 하나를 통하여 학습하여 상기 릴레이션 모델을 구축할 수 있다.
본 발명인 오류 트리플 검출 시스템은 지식베이스의 오류를 검출하여 기존 지식서비스의 품질 및 성능을 향상시킬 수 있다.
또한, 지식베이스로부터 새로운 지식을 추론하는 작업의 정확도를 증가시킬 수 있다.
또한, 지식베이스를 사용하는 인공지능의 다양한 서비스 분야에서 활용될 수 있다.
도1은 본 발명의 실시예에 따른 임베딩 모델 기반 지식베이스의 오류 트리플 검출 방법의 진행 흐름도를 나타낸다.
도2는 본 발명의 실시예에 따른 클러스터링을 사용한 임베딩 모델을 나타낸다.
도3 내지 도 10은 본 발명의 실시예에 따른 오류 트리플 검출 시스템의 동작을 설명하기 위한 도면이다.
도11 내지 도13은 본 발명의 실시예에 따른 오류 트리플 검출 시스템의 오류 검출 실험 결과를 설명하기 위한 도면이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다.
다만, 본 발명의 기술 사상은 설명되는 일부 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있고, 본 발명의 기술 사상 범위 내에서라면, 실시 예들간 그 구성 요소들 중 하나 이상을 선택적으로 결합, 치환하여 사용할 수 있다.
또한, 본 발명의 실시예에서 사용되는 용어(기술 및 과학적 용어를 포함)는, 명백하게 특별히 정의되어 기술되지 않는 한, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 일반적으로 이해될 수 있는 의미로 해석될 수 있으며, 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미를 고려하여 그 의미를 해석할 수 있을 것이다.
또한, 본 발명의 실시예에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다.
본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함할 수 있고, "A 및(와) B, C 중 적어도 하나(또는 한 개 이상)"로 기재되는 경우 A, B, C로 조합할 수 있는 모든 조합 중 하나 이상을 포함할 수 있다.
또한, 본 발명의 실시 예의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다.
이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등으로 한정되지 않는다.
그리고, 어떤 구성 요소가 다른 구성요소에 '연결', '결합' 또는 '접속'된다고 기재된 경우, 그 구성 요소는 그 다른 구성 요소에 직접적으로 연결, 결합 또는 접속되는 경우뿐만 아니라, 그 구성 요소와 그 다른 구성 요소 사이에 있는 또 다른 구성 요소로 인해 '연결', '결합' 또는 '접속' 되는 경우도 포함할 수 있다.
또한, 각 구성 요소의 "상(위) 또는 하(아래)"에 형성 또는 배치되는 것으로 기재되는 경우, 상(위) 또는 하(아래)는 두 개의 구성 요소들이 서로 직접 접촉되는 경우뿐만 아니라 하나 이상의 또 다른 구성 요소가 두 개의 구성 요소들 사이에 형성 또는 배치되는 경우도 포함한다. 또한, "상(위) 또는 하(아래)"으로 표현되는 경우 하나의 구성 요소를 기준으로 위쪽 방향뿐만 아니라 아래쪽 방향의 의미도 포함할 수 있다.
이하, 첨부된 도면을 참조하여 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 대응하는 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
도1은 본 발명의 실시예에 따른 오류 트리플 검출 시스템의 구성 블록도이다.
도1을 참조하면, 본 발명의 실시예에 따른 오류 트리플 검출 시스템(10)은 트리플 선정부(11), 샘플링부(12), 모델 구축부(13), 필터링부(14), 오류 트리플 검출부(15)를 포함하여 구성될 수 있다.
트리플 선정부(11)는 지식 베이스 내에서 타겟 트리플을 선정할 수 있다. 지식 베이스(Knowledge Base)에는 대용량의 데이터가 트리플 형태로 저장되어 있다. 지식 베이스는 데이터의 비정형적 관계를 표현할 수 있는 효과적인 수단이며, 다양한 인공지능 기술에 접목되고 있다.
대표적인 지식 베이스로 YAGO와 Freebase, DBpedia가 존재하며, 온톨로지의 형태로 사용된다. 온톨로지는 RDF, RDF-S, OWL의 수준으로 표현된다. RDF는 <Subject, Property, Object>로 구성되어 있는 그래프 모델을 사용하고 있고, Subject와 Object는 인스턴스로 URI로 표현된 리소스를 사용하며, Property는 Subject와 Object의 관계를 나타내는데 사용한다. RDFS와 OWL은 RDF의 표현력을 확장한 것으로 스키마가 존재하게 되고, 온톨로지 설계 시 자원을 표현하는 데에 있어서 다양한 방법이 존재한다. 이와 같이 온톨로지를 통한 데이터 표현 방식은 컴퓨터로 하여금 트리플로 표현된 개념을 이해하고 지식처리를 가능하게 한다. 지식 베이스는 위키피디아와 같은 웹 상의 지식 정보를 트리플로 변환하여 수집한다.
실시예에서 트리플은 개체 Subject, Property, Object를 포함하여 구성될 수 있다.
샘플링부(12)는 타겟 트리플내에 포함된 개체를 공유하는 대상 트리플을 연결하여 문장 모델을 생성할 수 있다. 샘플링부(12)는 타겟 트리플을 문장(Sentence)화 하여 문장 모델을 생성할 수 있다.
샘플링부(12)는 대상 트리플의 개체를 제거하여 문장 모델을 생성할 수 있다. 이 때, 샘플링부(12)는 타겟 트리플의 개체별로 릴레이션 개수를 상이하게 설정할 수 있다. 지식베이스 내에 지식 정보는 트리플 형태로 저장되어 있는데, 샘플링부(12)는 타겟 트리플을 샘플링 하여 RDF-Sentence로 생성할 수 있다. RDF-Sentence는 타겟 샘플리을 중심으로, 트리플간의 공유하는 개체(entity)를 연결하여 문장 형태로 만드는 것이다. 도2와 같이 샘플링 한 트리플 중 ‘Kim type Person’ 이라는 트리플이 있을 때, 먼저 해당 트리플의 Subject 인 ‘Kim’을 Subject로 가지는 트리플을 지식베이스 내에서 찾아 연결하게 된다. 그리고 Object인 ‘Person’을 Object로 가지는 트리플을 찾아 연결하여, 연결 트리플(Linked Triple) 형태로 만들게 된다. 샘플링부(12)는 Subject로 연결되는 Walk는 5개의 릴레이션, Object로 연결되는 Walk는 2개의 릴레이션으로 설정하여 타겟 트리플과 관계없는 트리플의 연결을 제한할 수 있다.
실시예에 따른 오류 검출 시스템은 각 트리플의 개체 특징을 분류하여 오류 트리플을 검출한다. 기존의 RDF-Sentence를 사용한 방법은 각 트리플을 연결하는 릴레이션 사이에 타겟 트리플과 관계없는 개체가 포함되어 효과적인 임베딩에 한계점이 존재한다. 따라서, 본 발명의 실시예에서는 RDF-Sentence를 변형시킨 문장 모델인 Property Sentence 방식을 적용한다. Property Sentence는 RDF-Sentence에서 기준이 되는 타겟 트리플을 제외한 나머지 연결된 트리플의 개체를 제거하고 릴레이션만 포함한 Sentence이다. 이와 같은 방법은 각 타겟 트리플의 개체에 특징점을 극대화 할 수 있고, 임베딩이 효과적으로 이루어져 클러스터링에 도움을 주게 된다.
모델 구축부(13)는 문장 모델을 벡터 공간에 임베딩하여 학습 개체 백터(entity vector)를 생성하고 임베딩 모델 및 릴레이션 모델 중 적어도 하나를 구축할 수 잇다.
모델 구축부(13)는 Skip-gram 및 Glove 중 적어도 하나의 방식으로 문장 모델을 벡터 공간에 임베딩할 수 있다. 모델 구축부(13)는 샘플링부(12)에서 생성한 문장 모델에 대해 Skip-gram, Glove를 사용해 임베딩을 진행하여 개체 벡터를 생성하고 임베딩 모델 및 릴레이션 모델을 구축할 수 있다.
Skip-gram 모델은 문장이 주어졌을 때, 주어진 중심 단어(Target Word) 주위에 등장하는 단어(Context Word)들의 등장 여부를 유추해내는 것이다. Skip-gram은 서로 유사한 단어일수록 가까운 거리에 위치하도록 뉴럴 네트워크를 사용하여 각 단어에 해당하는 벡터 값을 학습하는 것이다. Skip-gram은 문장이 주어지면 Window Size Parameter를 사용하여 중심단어로부터 Window Size 만큼의 주변 단어와 쌍을 이루어 학습을 진행하게 된다.
Glove는 문장 내 전체 단어의 통계정보를 활용하지 못하는 Word2vec(Skip-gram, CBOW)의 단점을 보완한 알고리즘이다. Glove 알고리즘은 Count 기반 모델로, 문장 내 단어의 출현 빈도 통계 정보를 활용하기 때문에, 임베딩 된 두 단어의 내적 값이 코사인 유사도가 되도록 하는 Skip-gram과는 달리 두 단어 벡터의 내적값이 문장 전체에서 동시 등장 확률의 로그 값이 되도록 한다.
모델 구축부(13)는 학습 개체 벡터를 이용하여 클러스터링을 수행하여 임베딩 모델을 구축할 수 있다. 예를 들면, 모델 구축부(13)는 K-means클러스터링 방식을 적용하여 임베딩 모델을 구축할 수 있다. 또한, 모델 구축부(13)는 K 클러스터 범위에 임계값을 적용하여 임베딩 모델을 정규화할 수 있다.
또는, 모델 구축부(13)는 학습 개체 벡터를 TransE, TransR, NTN, HolE 중 적어도 하나를 통하여 학습하여 릴레이션 모델을 구축할 수 있다.
필터링부(14)는 임베딩 모델상에서 관련 없는 개체를 필터링할 수 있다.
오류 트리플 검출부(15)는 임베딩 모델에 테스트 트리플을 입력하여 오류 트리플을 검출할 수 있다. 오류 트리플 검출부(15)는 K클러스터 범위에 포함되지 않은 테스트 트리플을 오류 트리플로 검출할 수 있다.
도3 내지 도 10은 본 발명의 실시예에 따른 오류 트리플 검출 시스템의 동작을 설명하기 위한 도면이다.
먼저, 임베딩 모델을 이용한 오류 트리플 검출 방법을 설명하기로 한다. 본에 실시예에 따르면, 학습 개체 벡터에 K-means 클러스터링과 임계값(Threshold)를 적용하여 임베딩 모델을 생성하고, 테스트 개체 벡터를 입력으로 하여 오류 트리플 을 검출하게 된다.
먼저, 문장 모델을 임베딩하여 생성된 개체 벡터를 학습 개체 벡터와 테스트 개체 벡터로 구분한다.
도 3은 문장 모델을 임베딩 했을 때의 벡터 공간을 표현한 것이다. 문장의 각 단어를 벡터화하여 생성된 단어 벡터는 방향성을 가지고 있기 때문에 도 3과 같이 공간에 표현될 수 있다.
실시예에서 모델 구축부(13)는 2차원이 아닌 수백차원의 공간에 벡터를 임베딩 한다. 차원이 높을수록 각 단어 벡터의 임베딩이 더 잘 형성될 수 있다. 또한, 본 실시예에서 제안하는 방법의 특성상 임베딩이 실험 성능에 큰 차이를 주는 요소이기 때문에 문장 모델을 사용하여 각 단어의 특징에 노이즈가 되는 관련 없는 단어를 임베딩에서 제외함으로써 단어의 특징을 극대화 할 수 있다. 이렇게 생성된 임베딩 공간에서 벡터 연산을 통해 오류 트리플을 검출하는 모델을 생성할 수 있다.
도 4는 모델 생성 방법의 설명을 위해 2차원 벡터 공간으로 표현한 그림이다. 도 4에서 +는 테스트 개체 벡터의 참(Correct) 개체 벡터이며, -는 거짓(Incorrect) 개체 벡터를 의미한다. *는 학습 개체 벡터의 참 트리플(Correct Triple)이다. 모델 구축부(13)는 해당 학습 개체 벡터를 사용하여 K-means 클러스터링을 수행한다. 도 5는 학습 개체 벡터에 K-means 알고리즘을 사용하여 중심점(Centroid Point)를 구한 것이다. 이렇게 얻은 K-means 알고리즘을 사용하여 각 k개의 클러스터의 중심점과 클러스터 내에 포함된 개체 벡터 정보를 얻어 클러스터의 범위를 구한다. 도 6은 각 k개의 클러스터의 중심점과 클러스터 내 개체 벡터 중 중심점으로부터 가장 먼 거리의 개체 벡터를 연결하여 클러스터의 범위를 설정하였다. 실시예에서 거리계산에 사용한 알고리즘은 K-means로 클러스터링을 진행할 때 사용하는 Euclidean Distance를 사용하였다. 도 7과 같이 학습 임베딩 벡터를 통해 생성된 임베딩 모델에 테스트 개체 벡터를 사용하여 실험을 진행하여 오류 트리플을 검출할 수 있다.
그러나, 위 방법을 사용한 임베딩 모델은 모든 클러스터 내에 학습 개체 벡터의 참 개체(*)가 전부 포함되는 것을 확인할 수 있다. 즉, 이는 학습 데이터에 대해 과적합(Overfitting)한 모델이 생성되었음을 의미한다. 과적합 모델은 테스트 실험을 진행할 경우 오류 트리플 검출 성능이 떨어질 수 있다.
본 실시예에서는 이를 해결하기 위해 클러스터 범위에 임계값(δ)를 적용하여 모델의 정규화 작업을 수행한다. 모델 구축부(13)는, 도 8과 같이 k 클러스터 범위 r에 임계값을 곱해가며 최적의 Error Base F1-measure를 얻는 모델을 생성한다. ‘+’는 학습 임베딩 벡터의 참 트리플(Correct Triple)의 단어 벡터를 의미하며, ‘-’는 학습 임베딩 벡터의 거짓 트리플(Incorrect Triple)의 단어 벡터를 의미한다. 임계값을 적용함으로써, 참 트리플과 거짓 트리플을 가장 잘 분류할 수 있는 범위를 찾아 모델을 생성할 수 있다.
예를 들어 Person을 type으로 갖는 트리플 중 거짓 트리플을 검출하는 실험을 진행할 때, ‘+’는 Person인 개체 벡터, ‘-’는 Person이 아닌 다른 클래스를 가지는 개체 벡터가 된다. 범위 내에 해당하는 ‘+’ 개체 벡터는 True Positive이고, 해당하지 못하는 ‘+’ 개체 벡터는 False Negative 다. 또한 범위 내에 해당하는 ‘-’ 개체 벡터는 False Positive에 해당되며, 범위 밖에 해당하는 ‘-’ 개체 벡터는 True Negative다. 이 네 가지를 사용한 검증 방법을 통해 최적의 결과를 얻을 수 있는 임계값을 구하여 모델을 생성할 수 있다.
다음으로, 릴레이션 모델을 활용한 오류 트리플 검출 방식을 설명하기로 한다. 릴레이션 모델은 트리플과 개체 벡터를 입력으로 다양한 지식완성 모델을 통해 릴레이션 모델을 구축하여 오류 트리플을 검출하는 방식이다. 실시예에서는 오류 트리플 검출을 위해 싱글 릴레이션 모델과 앙상블 모델이 적용되었다. 싱글 릴레이션 모델은 학습 개체 벡터를 TransE, TransR, NTN, HolE 4가지 지식 완성 모델을 통해 학습하여 릴레이션 모델을 구축하였고, Development 데이터 셋을 통해 트리플 분류 임계값을 산출한다. 이와 같이 구축된 4가지 릴레이션 모델에 테스트 개체 벡터를 입력하여 오류 트리플 검출을 수행한다.
도9와 도 10은 학습 데이터를 통해 구축된 릴레이션 모델에 대하여 실험 데이터로 3개의 트리플 (e1, type, person), (e2, type, person), (e3, type, person)이 주어지는 경우를 표현한 것이다.
도 9는 TransE를 통한 오류 트리플을 검출하는 방법이며 트리플이 주어졌을 때, 임베딩 공간에 개체를 벡터로 표현하게 되고, 표현된 벡터간의 연산을 통해 트리플의 스코어를 측정하게 된다. 두 개의 개체 e1과 e2의 경우, 임계값 범위를 의미하는 점선으로 표현된 원안에 존재하는 것을 볼 수 있고, 개체 e3는 원의 외부에 존재하는 것을 볼 수 있다.
아래 수학식 1은 이러한 경우를 수식으로 표현한 것이다. 결과적으로 (e3, type, Person) 트리플은 임계값보다 큰 값의 스코어를 도출하므로 오류 트리플로 검출된다.
Figure 112019037247793-pat00001
도 10은 TransE를 개선한 TransR의 오류 트리플 검출 방법이다. TransE와는 다르게 벡터를 표현하는데 새로운 파라미터인 Mr매트릭스가 존재한다. Mr매트릭스는 릴레이션 별로 생성하여 사용하게 되며, 이는 개체를 각 릴레이션 공간에 맵핑하는 용도로 활용한다. 앞선 TransE와 동일하게 학습된 릴레이션 모델을 rtype 으로 표현하였고, 점선으로 표현된 원은 Development데이터 셋을 통해 구한 임계값의 범위를 의미한다. Mre3이 임계값 범위 밖에 있는 것을 볼 수 있는데, 이에 따라서 e3이 오류 트리플로 검출된다. 각 개체의 자리에 개체와 Mr 매트릭스의 곱셈을 통해 구한 벡터를 적용한다. 이를 통해 트리플의 스코어를 계산하여 참(Correct), 거짓(Incorrect)으로 분류하고, 오류 트리플을 검출한다.
HolE와 NTN 모델의 경우 각각의 스코어 함수를 통해 계산된 트리플의 스코어를 통해 트리플 분류를 수행하여 오류 트리플을 검출한다.
결과적으로 릴레이션 모델링을 활용한 오류 트리플 검출 방안은 트리플과 개체 벡터를 입력으로 하며 릴레이션에 따른 분류 모델을 학습하여 구축하는 것으로 시작한다. TransE, TransR, HolE, NTN 4가지 릴레이션 싱글 모델링 알고리즘을 사용하여 구축된 각 모델마다 존재하는 파라미터를 학습하고, 이렇게 학습된 모델을 통해 오류 트리플을 검출한다.
앙상블 모델은 4가지의 싱글 릴레이션 모델의 예측 결과를 Count 기반으로 종합하여 오류 트리플을 검출한다. 앙상블 모델은 M1, M2, M3, M4 총 4가지로, M1은 4개의 싱글 릴레이션 모델 중 1개의 모델이 거짓(False)이라고 예측한 트리플을 오류 트리플로 검출하고, M2는 4개의 모델 중 2개의 모델이 거짓이라고 예측한 트리플을 오류 트리플로 검출한 것이며, M3은 4개의 모델 중 3개의 모델이 거짓이라고 예측한 트리플을 오류 트리플이라고 예측한 것이다. 마지막으로 M4는 4개의 모델 중 4개의 모델이 거짓이라고 예측한 트리플을 오류 트리플로 검출한다. 즉, M1은 오류 트리플이 검출될 조건이 가장 쉽고, M4로 갈수록 검출 조건이 까다로워진다.
도11 내지 도13은 본 발명의 실시예에 따른 오류 트리플 검출 시스템의 오류 검출 실험 결과를 설명하기 위한 도면이다.
실시예에서 오류 트리플 검출 실험을 위해 대표적인 지식베이스인 FreeBase, DBPedia. WiseKB 데이터를 사용했으며, 임베딩 모델과 릴레이션 모델, 임베딩 앙상블 모델, 릴레이션 앙상블 모델을 사용하여 각 지식 베이스의 데이터별 오류 트리플을 검출하고 모델 검증 기법을 사용하여 결과를 비교하였다.
도 11은 실시예에 따른 오류 트리플 검출의 동작 흐름을 도식화 한 것이며, 각 지식베이스 별로 오류 트리플을 검출할 Source Class 두 가지와 각 Source Class 별로 다른 Similar Class를 선정하는 것으로 시작하였다. 모델 학습에 사용될 트리플은 전체 트리플이 아닌 Partial 트리플을 사용하였으며, 이는 Source Class를 type으로 가지는 트리플 20,000개, Similar Class를 type으로 가지는 트리플 5,000개로 구성된다.
또한 테스트에 사용할 데이터 셋은 Source Class를 type으로 가지는 트리플 10,000개를 샘플링 하고 그 중 5,000개를 랜덤 샘플링하였고, Similar Class를type으로 가지는 트리플 5,000개를 샘플링한 총 10,000개의 트리플 데이터이며, 각 모델별로 테스트 데이터 10,000개 중 몇 개의 오류 트리플을 검출하는지 확인하였다.
본 실험을 위해 샘플링 한 총 40,000개의 트리플을 사용하여 Property Sentence를 생성하는 문장 모델 생성(Sentence Generation) 과정을 거친다. 이 과정은 각 트리플의 개체별로 벡터를 생성하기 위한 과정이다, 각 트리플마다 500개씩 Sentence를 생성하기 때문에 총 20,000,000만 줄의 Sentence가 생성되며, 해당 Sentence에 Skipgram, Glove를 사용하여 임베딩을 진행하였다. 이렇게 생성된 임베딩 벡터에 K-means 알고리즘을 사용하여 클러스터링을 수행하여 임베딩 모델을 생성한다. 생성된 클러스터에 임계값을 적용하여 모델 최적화 작업을 진행하였다. 임계값은 생성된 클러스터 범위에 적용될 1보다 작은 실수 값으로, 학습 데이터 기준으로 생성된 클러스터 범위에 곱해 가장 높은 모델 평가 지표를 얻을 때까지 클러스터 범위를 줄여 나가며 모델을 생성하였다.
이렇게 생성된 임베딩 모델과 임베딩 앙상블 모델을 검증하고 결과를 비교하였다. 임베딩 앙상블 모델은 두 임베딩 알고리즘인 Skip-gram과 Glove 둘 중 하나라도 거짓(False)으로 예측한 트리플을 오류 트리플로 검출하는 것이다.
또한 앞서 설명한 임베딩 모델 방식과 비교할 릴레이션 모델은 데이터 셋을 Training, Dev, Test Data로 나누는 데이터 준비과정을 거친 후 실험을 진행하였다. Training Data를 사용하여 모델 학습을 진행하며, Dev Data를 사용하여 스코어 임계값(Score Threshold)을 산출한다. 이렇게 생성된 모델과 임계값을 통하여 Test Data로 검출 실험을 진행하였다. 사용된 릴레이션 모델링 알고리즘은 TransE, TransR, NTN, HolE 네 가지를 사용하여 학습하였으며, 단일 릴레이션 모델과 릴레이션 앙상블 모델을 검증하고 결과를 비교하였다.
임베딩 모델 방식과 릴레이션 모델 방식 모두 오류 트리플의 검출을 위한 모델을 생성하는 것이기 때문에, True Negative 기준의 Precision과 Recall, F1-measure를 사용하여 각 모델을 검증하였으며, 표준 결과를 얻기 위해 실험 데이터 셋을 랜덤 샘플링 하여 10번씩 실험을 진행하였고, 평균을 내어 두 실험의 결과를 비교하였다.
Figure 112019037247793-pat00002
실험을 위한 데이터는 3가지 지식 베이스로부터 Partial지식 베이스를 추출하여 구축한다. 표 1은 실험에 사용하는 3가지 지식 베이스의 통계값이다. 각 지식 베이스는 대용량 지식 베이스로 기존의 존재하는 지식 베이스에 정제작업을 수행하여 구축하였다.
Figure 112019037247793-pat00003
표 2는 각 실험 데이터 셋을 구축하기 위해 선정한 Target Class와 Similar Class를 보여준다. Target Class Triple은 오류 트리플 검출 실험의 대상이 되는클래스를 가지는 트리플이며 각 40,000개씩 샘플링 하였고, Similar Class Triple은 학습에 도움을 주기 위한 클래스의 트리플로 2,000개씩 샘플링 하여 총 10,000개의 Similar Class Triple을 사용한다. 포함된 오류 트리플은 type이 Person인 트리플 중 <부산> <type> <Person>과 같이 잘못된 트리플이 포함되어 있다. 사용되는 트리플의 수가 많을수록 벡터공간에 임베딩이 잘되기 때문에 각 지식베이스 내 트리플 중 클래스가 일정 수 이상 존재하는 (2,000개) 트리플을 임의로 선정하였다.
Figure 112019037247793-pat00004
먼저, 임베딩 검출 모델인 Skip-gram과 Glove 모델은 클러스터링 후 임계값을 통해 모델 최적화 작업을 진행하여 모델을 구축한다. 표 3은 도 8에 설명한 것과 같이 6가지 실험 데이터 셋에 대해 0.6부터 0.98의 임계값을 적용하여 얻은 최적의 임계값이다.
도 12는 임계값이 변화함에 따라 Test 셋에 대한 모델의 성능을 그래프로 표현한 예시이다. 첫 번째 그림은 Skip-gram 임베딩 벡터에서 임계값별 평가지표를 표현한 것이며, 두 번째 그림은 Glove를 사용한 임베딩 벡터에서의 임계값별 평가 지표를 표현한 것이다. 그림에 표현된 Precision과 Recall 수치에 따라 F-Error가 결정되기 때문에 Precision이나 Recall수치가 한쪽으로만 편향되지 않도록 최적의 F-Error를 갖는 Threshold를 구하였다.
Skip-gram과 Glove 두 모델에서 모두 임계값이 증가함에 따라서 Precision은 증가하고 Recall은 감소하는 것을 볼 수 있다. 임계값이 크다는 것은 클러스터의 범위가 넓은 것을 의미하므로, 많은 Negative 셋을 커버하지 못하는 문제가 발생하기 때문에 Precision값은 높아지지만 그에 반해 Recall 값이 크게 줄어드는 현상을 보이고 있다. 때문에 최적의 Precision과 Recall을 얻을 수 있는 임계값을 선정하여 모델에 적용하였다.
도 13은 Freebase의 Target Class가 Person인 데이터를 릴레이션 모델링을 통해 오류 트리플 검출 실험을 수행한 결과에 대한 Precision-Recall Curve이다. 검출 모델로는 TransE, TransR, HolE, NTN 4가지 싱글 릴레이션 모델과 릴레이션 모델링의 앙상블 모델을 활용하였다. Precisoion Recall Curve는 더 넓은 범위를 가지는 모델이 좋은 모델을 의미하는데, 결과로는 싱글 릴레이션 모델링 중에서 TransR이 가장 높은 성능을 보이고 있고, NTN 모델이 가장 낮은 성능을 보이고 있다. 싱글 릴레이션 모델링의 특징으로 HolE 모델은 다른 모델에 비해, Precision이 낮고 Recall이 높은 모델임을 보여주고 있다. 또한, 모델의 성능을 향상시키기 위해 앙상블 모델을 구축하여 TransR 모델보다 좋은 성능을 얻을 수 있었다.
Figure 112019037247793-pat00005
표 4는 3가지 데이터 셋에 대한 11개의 모든 검출 모델에 대한 실험 결과를 보여준다. 각 데이터 셋에서 3가지 평가 지표 중 가장 좋은 성능을 보이는 모델의 값을 굵게 표시하였다. 모든 데이터 셋에서 첫 번째 평가 지표인 Precision은 릴레이션 앙상블 모델의 Model 4에서 가장 높은 성능을 보였으며, 다음 평가 지표인 Recall은 임베딩 앙상블 모델이 가장 높은 성능을 보였다. 마지막 평가 지표인 F-Score는 릴레이션 앙상블 모델링의 Model 2에서 가장 높은 성능을 보이고 있다. 이는 릴레이션 싱글 모델링의 결과를 균형 잡히게 앙상블하여 높은 Precision과 Recall을 얻게 되어 높은 F-Score 성능을 가지게 된다. 결과적으로 본 논문에서 제안하는 릴레이션 앙상블 모델링의 Model 2와 임베딩 앙상블 모델이 다른 싱글 모델링 보다 좋은 성능을 보여 지식 베이스의 오류 트리플 검출에 효과적인 모델로 볼 수 있다.
Figure 112019037247793-pat00006
표 5는 임베딩 시간과 각 모델의 모델링 소요 시간 비교 표이다. FreeBase, DBPedia, WiseKB 3가지 실험 데이터 셋에 대하여 모두 표현하였지만, 3 데이터 셋 모두 실험 데이터의 트리플과 엔티티의 크기가 동일하여 소요 시간이 같은 결과를 얻었다. 각 모델은 임베딩 시간으로 Skip-gram은 평균적으로 9시간, Glove는 6시간이 소요되었다. 모델링 시간으로 Skip-gram과 Glove 모델링의 경우 클러스터링 시간이고, 릴레이션 모델링은 학습 시간을 측정하였다. 앙상블 모델의 경우 앙상블을 위한 각 싱글 모델들의 클러스터링 시간과 학습 시간의 총 합을 통해 계산하였다. 임베딩 모델인 Skip-gram과 Glove 모델링 시간은 약 3시간이 소요되고, 릴레이션 모델인 NTN의 경우 약 9시간으로 4개의 싱글 릴레이션 모델 중 가장 많은 시간이 소요되고 있다. NTN은 파라미터가 가장 많은 텐서 네트워크를 사용하는 신경망 구조의 모델로서 학습에 가장 오랜 시간이 걸린다. 또한 임베딩 앙상블 모델은 약 6시간, 릴레이션 앙상블 모델은 약 11시간의 모델링 시간이 소요 되었다. 결과적으로 앙상블 모델은 싱글 모델 보다 성능은 높지만, 모델링 시간이 싱글 모델링에 비해 오랜 시간이 소요되는 것을 볼 수 있다. 또한 릴레이션 앙상블 모델링이 임베딩 앙상블 모델링보다 오랜 시간을 소요하는 것을 볼 수 있다.
결론적으로, 임베딩 앙상블 모델이 다른 모델들 보다 Recall이 가장 높은 것을 확인할 수 있었으며, 릴레이션 모델을 사용한 앙상블 결과 중 M4 방식이 가장 높은 Precision을 얻는 것을 확인할 수 있었다. 전체적인 오류 트리플 검출 성능 면에서는 M2 앙상블 모델이 가장 높은 것을 확인하였다. 학습 속도 측면에서는 임베딩 모델을 사용한 앙상블 결과가 릴레이션 모델 앙상블 보다 학습 시간을 적게 요구하는 것을 확인하였다.
본 실시예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(field-programmable gate array) 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (10)

  1. 지식 베이스 내에서 임의의 타겟 트리플(subject, property, object)을 선정하는 트리플 선정부;
    상기 타겟 트리플내에 포함된 개체를 공유하는 대상 트리플을 연결하여 문장 모델을 생성하는 샘플링부;
    상기 문장 모델을 벡터 공간에 임베딩하여 학습 개체 벡터(entity vector)를 생성하고 임베딩 모델 및 릴레이션 모델을 구축하는 모델 구축부; 및
    상기 임베딩 모델 및 릴레이션 모델에 테스트 트리플을 입력하여 오류 트리플을 검출하는 오류 트리플 검출부를 포함하며,
    상기 모델 구축부는 Glove방식으로 상기 문장 모델을 벡터 공간에 임베딩하여 상기 학습 개체 벡터를 생성하고, 상기 학습 개체 벡터를 K-means클러스터링 방식에 적용하여 상기 임베딩 모델을 구축한 후, K 클러스터 범위에 임계값을 적용하여 상기 임베딩 모델을 정규화하며,
    상기 오류 트리플 검출부는 상기 K클러스터 범위에 포함되지 않은 테스트 트리플을 오류 트리플로 검출하는 오류 트리플 검출 시스템.
  2. 제1항에 있어서,
    상기 샘플링부는 상기 대상 트리플의 개체를 제거하여 상기 문장 모델을 생성하는 오류 트리플 검출 시스템.
  3. 제2항에 있어서,
    상기 샘플링부는 상기 타겟 트리플의 개체별로 릴레이션 개수를 상이하게 설정하는 오류 트리플 검출 시스템.
  4. 제1항에 있어서,
    상기 임베딩 모델상에서 관련 없는 개체를 필터링하는 필터링부를 더 포함하는 오류 트리플 검출 시스템.
  5. 제1항에 있어서,
    상기 모델 구축부는 상기 학습 개체 벡터를 이용하여 클러스터링을 수행하여 상기 임베딩 모델을 구축하는 오류 트리플 검출 시스템.
  6. 제5항에 있어서,
    상기 모델 구축부는 K-means클러스터링 방식을 적용하여 상기 임베딩 모델을 구축하는 오류 트리플 검출 시스템.
  7. 제5항에 있어서,
    상기 모델 구축부는 K 클러스터 범위에 임계값을 적용하여 상기 임베딩 모델을 정규화하는 오류 트리플 검출 시스템.
  8. 제7항에 있어서,
    상기 오류 트리플 검출부는 상기 K클러스터 범위에 포함되지 않은 테스트 트리플을 오류 트리플로 검출하는 오류 트리플 검출 시스템.
  9. 제1항에 있어서,
    상기 모델 구축부는 상기 K 클러스터 범위에 0.61 내지 0.74의 임계값을 적용하여 상기 임베딩 모델을 정규화하는 오류 트리플 검출 시스템.
  10. 제1항에 있어서,
    상기 모델 구축부는 상기 학습 개체 벡터를 TransE, TransR, NTN, HolE 중 적어도 하나를 통하여 학습하여 상기 릴레이션 모델을 구축하는 오류 트리플 검출 시스템.
KR1020190042525A 2018-12-04 2019-04-11 오류 트리플 검출 시스템 및 방법 KR102212310B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/696,476 US11562133B2 (en) 2018-12-04 2019-11-26 System and method for detecting incorrect triple

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20180154139 2018-12-04
KR1020180154139 2018-12-04

Publications (2)

Publication Number Publication Date
KR20200067713A KR20200067713A (ko) 2020-06-12
KR102212310B1 true KR102212310B1 (ko) 2021-02-05

Family

ID=71088241

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190042525A KR102212310B1 (ko) 2018-12-04 2019-04-11 오류 트리플 검출 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102212310B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117591657B (zh) * 2023-12-22 2024-05-07 宿迁乐享知途网络科技有限公司 一种基于ai的智能对话管理***及方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011227688A (ja) 2010-04-20 2011-11-10 Univ Of Tokyo テキストコーパスにおける2つのエンティティ間の関係抽出方法及び装置
JP2018142188A (ja) 2017-02-28 2018-09-13 富士通株式会社 解析プログラム、解析方法および解析装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101835345B1 (ko) * 2016-02-29 2018-03-07 경기대학교 산학협력단 지식베이스 기반의 개념그래프 확장 시스템
KR101914853B1 (ko) * 2017-02-08 2018-11-02 경북대학교 산학협력단 논리적 속성이 반영된 지식 그래프 임베딩 방법 및 시스템, 이를 수행하기 위한 기록매체
KR20180094664A (ko) * 2017-02-16 2018-08-24 포항공과대학교 산학협력단 텍스트 데이터로부터 정보를 추출하기 위한 정보 추출 방법 및 장치
KR101983455B1 (ko) * 2017-09-21 2019-05-28 숭실대학교산학협력단 지식베이스 구축 방법 및 그 서버

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011227688A (ja) 2010-04-20 2011-11-10 Univ Of Tokyo テキストコーパスにおける2つのエンティティ間の関係抽出方法及び装置
JP2018142188A (ja) 2017-02-28 2018-09-13 富士通株式会社 解析プログラム、解析方法および解析装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
홍지훈 등, "지식베이스 임베딩 및 관계 모델을 활용한 오류 트리플 검출", 정보과학회논문지 46(2), pp131-140, 2019.2
홍지훈, "임베딩 모델 기반 지식베이스의 Incorrect Triple 검출 기법", 숭실대학교 석사논문 (2018.08.31.)

Also Published As

Publication number Publication date
KR20200067713A (ko) 2020-06-12

Similar Documents

Publication Publication Date Title
CN110070141B (zh) 一种网络入侵检测方法
Lucca et al. CC-integrals: Choquet-like copula-based aggregation functions and its application in fuzzy rule-based classification systems
Krishnaiah et al. Survey of classification techniques in data mining
Urbanowicz et al. An analysis pipeline with statistical and visualization-guided knowledge discovery for michigan-style learning classifier systems
Agusta Modified balanced random forest for improving imbalanced data prediction
Liu et al. Malware classification using gray-scale images and ensemble learning
CN113177132A (zh) 基于联合语义矩阵的深度跨模态哈希的图像检索方法
CN113887580B (zh) 一种考虑多粒度类相关性的对比式开放集图像识别方法及装置
Wang et al. Imbalance data processing strategy for protein interaction sites prediction
Satyanarayana et al. Survey of classification techniques in data mining
US11562133B2 (en) System and method for detecting incorrect triple
CN113764034B (zh) 基因组序列中潜在bgc的预测方法、装置、设备及介质
Wang et al. Ppisb: a novel network-based algorithm of predicting protein-protein interactions with mixed membership stochastic blockmodel
CN111400713B (zh) 基于操作码邻接图特征的恶意软件族群分类方法
CN111310185B (zh) 一种基于改进stacking算法的Android恶意软件检测方法
CN115577357A (zh) 一种基于堆叠集成技术的Android恶意软件检测方法
Jinyin et al. Fast density clustering algorithm for numerical data and categorical data
CN115114484A (zh) 异常事件检测方法、装置、计算机设备和存储介质
CN115206423A (zh) 基于标签指导的蛋白质作用关系预测方法
Mostafa et al. A machine learning ensemble classifier for prediction of Brain Strokes
Boutorh et al. Classication of SNPs for breast cancer diagnosis using neural-network-based association rules
KR102212310B1 (ko) 오류 트리플 검출 시스템 및 방법
CN106844338B (zh) 基于属性间依赖关系的网络表格的实体列的检测方法
Ismaili et al. A supervised methodology to measure the variables contribution to a clustering
CN117521063A (zh) 基于残差神经网络并结合迁移学习的恶意软件检测方法及装置

Legal Events

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