KR102179025B1 - 문서의 컨텍스트 이상문장 검출장치, 이를 위한 방법 및 이 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체 - Google Patents

문서의 컨텍스트 이상문장 검출장치, 이를 위한 방법 및 이 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체 Download PDF

Info

Publication number
KR102179025B1
KR102179025B1 KR1020180162214A KR20180162214A KR102179025B1 KR 102179025 B1 KR102179025 B1 KR 102179025B1 KR 1020180162214 A KR1020180162214 A KR 1020180162214A KR 20180162214 A KR20180162214 A KR 20180162214A KR 102179025 B1 KR102179025 B1 KR 102179025B1
Authority
KR
South Korea
Prior art keywords
context
neural network
sentences
embedding
sentence
Prior art date
Application number
KR1020180162214A
Other languages
English (en)
Other versions
KR20200080368A (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 KR1020180162214A priority Critical patent/KR102179025B1/ko
Priority to PCT/KR2019/015553 priority patent/WO2020122440A1/ko
Priority to US17/413,825 priority patent/US11727703B2/en
Publication of KR20200080368A publication Critical patent/KR20200080368A/ko
Application granted granted Critical
Publication of KR102179025B1 publication Critical patent/KR102179025B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/226Validation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • 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
    • 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
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/768Arrangements for image or video recognition or understanding using pattern recognition or machine learning using context analysis, e.g. recognition aided by known co-occurring patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/196Recognition using electronic means using sequential comparisons of the image signals with a plurality of references
    • G06V30/1983Syntactic or structural pattern recognition, e.g. symbolic string recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Multimedia (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

문서 내에 컨텍스트가 상이한 이상문장이 존재하는지 여부를 검출하는 장치 및 방법이 개시된다. 본 발명에 따른 문서의 컨텍스트 이상문장 검출장치는, 문서데이터를 구성하는 개별 문장을 일정한 규칙(함수)에 의하여 인코딩하여 인코딩벡터를 생성하는 문장인코더와, 생성된 인코딩벡터를 대응하는 임베딩벡터로 변환하는 컨텍스트 임베더 신경망과, 일련의 임베딩벡터시퀀스로 변환된 문서데이터 내에 이상문장이 존재하는지 여부를 탐지하는 컨텍스트 이상탐지기 신경망을 포함한다.

Description

문서의 컨텍스트 이상문장 검출장치, 이를 위한 방법 및 이 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체{An apparatus for detecting context anomalies in documents, a method thereof and computer recordable medium storing program to perform the method}
본 발명은 주어진 문서 내에서 컨텍스트가 상이한 이상 부분을 검출하기 위한 장치 및 이 장치를 이용하여 문서 내에 컨텍스트가 상이한 이상 부분을 검출하는 방법에 관한 것이다.
딥러닝 기술을 이용하여 문서 내에서의 문맥을 학습하는 시도가 학계에 발표되고 있는데, 그 중 대표적인 기법으로 CoVe(McCann, Bryan, et al., NIPS 2017), ELMo(Peters, Matthew E., et al., arXiv 2018) 등이 있다. 이러한 기법들은 모두 문서 내의 문맥을 학습하기 위한 방법으로서 순환신경망(RNN)을 이용하는데, 이전 문장의 시퀀스를 문맥으로 하여 다음에 올 문장을 예측하는 순차적인 형태를 학습하는 모델이라고 할 수 있다. 따라서, 이들 모델들은 순차적인 입력들이 나타날 확률은 계산할 수 있지만, 어떤 문장들이 하나의 문맥을 형성하고 있는지, 그리고 어떤 문장에서 문맥이 변화하는지를 판단할 수 없다.
한편, 문서는 단위 문장들과, 복수의 문장들에 의해 형성된 문단으로 구성되어 있는데, 문서 내에서 다른 부분(예컨대, 복수의 문장들 또는 이들에 의해 형성된 복수의 문단들)과 컨택스트가 상이한 부분을 이상치(Anomaly)로 보고, 주어진 문서 내에서 이상치(즉, 이상문장)를 검출하는 방법이 개발되고 있다. 여기서, 컨텍스트는 임의의 문장들 사이에 공유되는 속성을 의미하는데, 주어진 문서를 구성하는 복수의 문장들 사이에 컨텍스트를 나타내는 정보가 포함되어 있다고 가정하고, 컨텍스트 정보를 활용하여 이상치를 탐지하게 된다. 기존의 이상치 탐지 기술에서는 다음의 두가지 방법으로 컨텍스트 정보를 활용하고 있다.
첫번째 방법은 컨텍스트 정보의 분류를 위해 필요한 특징을 추출하는 방법이다. 즉, 주어진 문서를 전처리하여 컨텍스트 정보를 반영한 메타데이터를 부여하고, 문서와 메타데이터를 같이 활용하여 이상치를 탐지하는 방법이다. 이 방법에서 사용되는 전처리 단계는, 일반적인 언어 처리에서 사용되는 처리(예컨대, 품사 태깅, 명사 추출 등)와 함께, 컨텍스트 정보를 고려한 처리(예컨대, 명사 추출시 특정 컨텍스트 정보를 반영한 사전 반영, 커스텀룰 반영 등)를 수행한다.
두번째 방법은 컨텍스트 정보를 명시적으로 분류하는 방법이다. 즉, 사전에 처리할 컨텍스트의 범주를 정의하고, 입력으로부터 각 문장 별로 컨텍스트를 분류한 후, 이를 활용하여 이상치를 탐지한다. 예컨대, 주어진 문서가 뉴스 문서라고 가정하면, 컨텍스트 범주는 뉴스의 카테고리, 예컨대, 스포츠, 정치, 경제, 연예 등이 되고, 문서 내에서 카테고리의 범주가 다른 문장이 출현하면 이를 이상치(즉, 이상문장)로 탐지한다.
그러나, 상술한 이상치 탐지 기술은 다음과 같은 문제점을 가진다. 즉, 컨텍스트 정보를 활용할 때 전처리를 통해 메타데이터를 부여하는 경우, 일반적인 언어 처리 방식으로 추가되는 특징들은 추가적인 정보를 제공하기는 하지만 특정 컨텍스트 정보를 충분히 반영하기에 부족하고, 또한 컨텍스트를 고려한 처리 방식으로 추가되는 특징들은 사전 또는 커스텀룰 등의 유지 및 보수에 추가적인 비용이 소요된다. 또한, 컨텍스트를 명시적으로 분류하는 경우에도, 문서 내에서 복잡한 컨텍스트를 분류하기 위한 학습데이터를 만드는 것이 곤란하다.
본 발명은 상술한 종래기술의 문제점을 해결하고자 한 것으로서, 문서 내에서 이상치를 탐지하기 위하여 사용되는 컨텍스트 정보를 사람이 미리 설정한 규칙을 통해 추출하지 않고, 주어진 문서데이터로부터 각 문장들 사이에 공유되는 속성인 컨텍스트 정보를 인공신경망을 통해 추출하도록 함으로써 문서의 컨텍스트 이상문장을 검출할 수 있는 장치, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체를 제공하는 것을 목적으로 한다.
본 발명의 일측면에 따르면, 문서데이터가 입력되면 상기 문서데이터에 포함된 복수의 문장 각각을 인코딩하여 복수의 인코딩벡터로 이루어진 인코딩벡터시퀀스를 생성하는 문장인코더; 상기 인코딩벡터시퀀스에 포함된 상기 복수의 인코딩벡터 각각에 대응하는 복수의 컨텍스트 임베딩벡터로 변환하여 임베딩벡터시퀀스를 생성하는 컨텍스트 임베더 신경망; 상기 임베딩벡터시퀀스로부터 상기 문서데이터 내에 컨텍스트 이상문장이 존재하는지 여부를 나타내는 결과값을 산출하는 컨텍스트 이상탐지기 신경망; 상기 문서데이터가 학습데이터이면 상기 컨텍스트 이상탐지기 신경망에 의해 산출된 상기 결과값이 상기 학습데이터 내에 이상문장이 존재하는지 여부를 나타내는 기대값과의 차이가 일정 범위 내에 속하도록 상기 컨텍스트 이상탐지기 신경망을 학습시키는 탐지기 학습부; 및 상기 문서데이터가 의심데이터이면 상기 컨텍스트 이상탐지기 신경망에 의해 산출된 상기 결과값을 기초로 상기 의심데이터 내에 이상문장이 존재하는지 여부를 판별하는 탐지부;를 포함하는 문서의 컨텍스트 이상문장 검출장치로 구현될 수 있다.
여기서, 본 발명에 따른 장치는, 상기 문장인코더에 의해 생성된 상기 인코딩벡터시퀀스로부터 선택된 2 이상의 문장에 대응하는 인코딩벡터쌍 및 상기 2 이상의 문장 사이의 컨텍스트 일치여부를 나타내는 기준값을 포함하는 컨텍스트학습데이터를 생성하는 문장샘플링모듈; 상기 컨텍스트학습데이터에 포함된 상기 인코딩벡터쌍을 상기 컨텍스트 임베더 신경망에 의해 대응하는 임베딩벡터쌍으로 생성할 때, 상기 임베딩벡터쌍 사이의 거리값을 산출하는 거리학습신경망; 상기 거리학습신경망에 의해 산출된 상기 임베딩벡터쌍 사이의 상기 거리값이 상기 컨텍스트학습데이터에 포함된 상기 기준값과의 차이가 일정 범위 내에 속하도록 상기 컨텍스트 임베더 신경망을 학습시키는 임베더 학습부;를 더 포함할 수 있다.
전술한 상기 2 이상의 문장 사이의 컨텍스트 일치여부를 나타내는 기준값은, 상기 2 이상의 문장이 상기 문서데이터 내에서 서로 인접하게 배치되어 있는지 여부, 상기 2이상의 문장이 상기 문서데이터 내에서 동일한 문단에 속하는지 여부, 또는 상기 2 이상의 문장이 동일한 카테고리에 속하는지 여부를 기초로 설정될 수 있다.
본 발명의 다른 측면에 따르면, 문서데이터가 입력되면 문장인코더가 상기 문서데이터에 포함된 복수의 문장 각각을 인코딩하여 복수의 인코딩벡터로 이루어진 인코딩벡터시퀀스를 생성하는 제1 단계; 컨텍스트 임베더 신경망이 상기 인코딩벡터시퀀스에 포함된 상기 복수의 인코딩벡터 각각에 대응하는 복수의 컨텍스트 임베딩벡터로 변환하여 임베딩벡터시퀀스를 생성하는 제2 단계; 컨텍스트 이상탐지기 신경망이 상기 임베딩벡터시퀀스로부터 상기 문서데이터 내에 컨텍스트 이상문장이 존재하는지 여부를 나타내는 결과값을 산출하는 제3 단계; 상기 문서데이터가 의심데이터이면, 탐지부가 상기 컨텍스트 이상탐지기 신경망에 의해 산출된 상기 결과값을 기초로 상기 의심데이터 내에 이상문장이 존재하는지 여부를 판별하는 제4 단계;를 포함하는, 문서의 컨텍스트 이상문장 검출방법으로 구현될 수 있다.
전술한 방법에 있어서, 상기 제4 단계 이전에, 상기 문서데이터가 학습데이터이면, 탐지기 학습부가 상기 컨텍스트 이상탐지기 신경망에 의해 산출된 상기 결과값이 상기 학습데이터 내에 이상문장이 존재하는지 여부를 나타내는 기대값과 동일한 값을 갖도록 상기 컨텍스트 이상탐지기 신경망을 학습시키는 단계를 더 포함할 수 있다.
아울러, 상기 제2 단계 이전에, 문장샘플링모듈이 상기 문장인코더에 의해 생성된 상기 인코딩벡터시퀀스로부터 선택된 2 이상의 문장에 대응하는 인코딩벡터쌍 및 상기 2 이상의 문장 사이의 컨텍스트 일치여부를 나타내는 기준값을 포함하는 컨텍스트학습데이터를 생성하는 단계; 상기 컨텍스트학습데이터에 포함된 상기 인코딩벡터쌍 각각을 상기 컨텍스트 임베더 신경망에 의해 대응하는 임베딩벡터쌍으로 생성할 때, 거리학습신경망이 상기 임베딩벡터쌍 사이의 거리값을 산출하는 단계; 및 임베더 학습부가 상기 거리학습신경망에 의해 산출된 상기 임베딩벡터쌍 사이의 상기 거리값이 상기 컨텍스트학습데이터에 포함된 상기 기준값과 일정한 범위 내에 속하도록 상기 컨텍스트 임베더 신경망을 학습시키는 단계;를 더 포함할 수 있다.
상기 2 이상의 문장 사이의 컨텍스트 일치여부를 나타내는 기준값은, 상기 2 이상의 문장이 상기 문서데이터 내에서 서로 인접하게 배치된 경우이거나, 상기 2이상의 문장이 상기 문서데이터 내에서 동일한 문단에 속하는 경우이거나, 또는 상기 2 이상의 문장이 동일한 카테고리에 속하는 경우에, 상기 2 이상의 문장들 사이에 컨텍스트가 일치하는 것으로 설정될 수 있다.
본 발명의 또 다른 측면에 따르면, 전술한 문서의 컨텍스트 이상문장 검출방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체로 구현될 수 있다.
본 발명에 따르면, 입력된 문서 내에 문맥이 상이한 이상문장이 존재하는지여부를 검출하는데 사용하는 컨텍스트 정보를 추출함에 있어서, 종래기술과 달리 미리 정한 규칙을 통해 추출하지 않고, 주어진 데이터로부터 거리기반 심층신경망 모델에 의해 학습되도록 한다. 이를 통해 사람이 구분하기 어려운 컨텍스트 정보를 이상치 탐지 시에 반영할 수도 있고, 심층신경망을 통해 데이터로부터 컨텍스트를 판단하기 위한 정보들을 직접 추출할 수 있다. 따라서, 본 발명에 따른 장치 및 방법을 이용하면, 종래에 컨텍스트를 반영하기 위해 사용된 사전, 커스텀룰, 카테고리 분류 등을 요구하지 않으므로, 이에 수반되었던 유지 및 보수 비용을 절감할 수 있다. 또한, 본 발명은 입력된 문서 내에서 컨텍스트가 상이한 이상문장을 검출할 수 있으므로, 가짜뉴스를 탐지하거나, 챗봇에서 제공하는 문장이 적절한지 확인하거나, 논문 등의 표절여부를 판별하거나, 논술 또는 작문 내용 중 교정이 필요한 문장을 검출하는 등, 다양한 분야에 효과적으로 적용될 수 있다.
도 1은 본 발명의 일 실시예에 따른 문서의 컨텍스트 이상문장 검출장치의 전체 구성을 도시한 블록도이다.
도 2는 컨텍스트 임베더 신경망을 학습시키기 위한 임베더 학습부의 구성을 도시한 블록도이다.
도 3은 문서데이터에 포함된 문장에 대응하여 변환된 인코딩벡터 및 임베딩벡터 사이의 관계를 벡터 공간을 이용하여 설명한 예시도이다.
본 발명의 상세한 설명에 앞서, 이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 실시예에 불과할 뿐, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 이때, 첨부된 도면에서 동일한 구성 요소는 가능한 동일한 부호로 나타내고 있음을 유의해야 한다. 또한, 본 발명의 요지를 흐리게 할 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략할 것이다. 마찬가지의 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 또는 개략적으로 도시되었으며, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다.
도 1은 본 발명의 일 실시예에 따른 문서의 컨텍스트 이상문장 검출장치의 전체 구성을 도시한 블록도이고, 도 2는 컨텍스트 임베더 신경망을 학습시키기 위한 임베더 학습부의 구성을 도시한 블록도이며, 도 3은 문서데이터에 포함된 문장에 대응하여 변환된 인코딩벡터 및 컨텍스트 임베더 신경망에 의해 생성된 임베딩벡터 사이의 관계를 벡터 공간을 이용하여 설명한 예시도이다. 이하에서는 도 1 내지 3을 참조하여, 본 발명에 따른 문서의 컨텍스트 이상문장 검출장치 및 이를 이용한 문서의 컨텍스트 이상문장 검출방법에 대해 자세히 설명한다.
본 발명에 따른 문서의 컨텍스트 이상문장 검출장치는, 문서데이터를 구성하는 개별 문장을 일정한 규칙(함수)에 의하여 인코딩하여 인코딩벡터를 생성하는 문장인코더(10)와, 생성된 인코딩벡터를 대응하는 임베딩벡터로 변환하는 컨텍스트 임베더 신경망(32)과, 일련의 임베딩벡터시퀀스로 변환된 문서데이터 내에 이상문장이 존재하는지 여부를 탐지하는 컨텍스트 이상탐지기 신경망(40)을 포함하여 구성된다. 이외에도, 본 발명에 따른 장치는, 컨텍스트 임베더 신경망(32)을 학습시키기 위한 임베더 학습부(30), 컨텍스트 이상탐지기 신경망(40)을 학습시키기 위한 탐지기 학습부(41), 및 컨텍스트 이상탐지기 신경망(40)에 의해 산출된 결과값을 기초로 문서데이터 내에 이상문장이 존재하는지 여부를 판별하는 탐지부(42)를 포함할 수 있다.
문장인코더(10)는 임의의 문서데이터가 입력되면 해당 문서데이터에 포함된 복수의 문장 각각을 인코딩하여 대응하는 복수의 인코딩벡터로 변환한다. 인코딩벡터는 각각 해당 문장에 대하여 벡터로 변환된 값으로서, 일정한 규칙으로 인코딩된 수치데이터를 의미한다. 따라서, 문장인코더(10)에 문서데이터가 입력되면, 문서데이터를 구성하는 개별 문장이 대응하는 인코딩벡터로 변환되며, 따라서 복수의 문장을 포함하는 문서데이터는 각각의 문장에 대응하는 인코딩벡터들의 집합인 인코딩벡터시퀀스로 변환될 수 있다.
이렇게 변환된 인코딩벡터시퀀스는 컨텍스트 임베더 신경망(32)에 의해 임베딩벡터시퀀스로 변환된다. 여기서, 임베딩벡터시퀀스는 인코딩벡터시퀀스에 포함된 각각의 인코딩벡터가 이에 대응하는 컨텍스트 임베딩벡터로 변환되어 이루어진 임베딩벡터들의 집합을 의미한다. 컨텍스트 임베더 신경망(32)은 임베더 학습부(30)에 의해 미리 학습된 신경망을 이용한다.
즉, 컨텍스트 임베더 신경망(32)은 입력된 인코딩벡터를 이용하여 일정한 규칙(즉, 함수)에 의해 임베딩벡터로 변환하는데, 도 2를 참조하여 컨텍스트 임베더 신경망(32)의 학습 방법을 설명하면 다음과 같다.
임베더 학습데이터(즉, 문서데이터)가 입력되면 문장인코더(10)는 앞에서 설명한 방식으로 인코딩벡터시퀀스를 생성한다. 이렇게 생성된 인코딩벡터시퀀스는 복수의 인코딩벡터를 포함하는데, 문장샘플링모듈(20)은 인코딩벡터시퀀스로부터 2개의 인코딩벡터를 추출하여 컨텍스트학습데이터를 생성한다. 여기서, 컨텍스트학습데이터는 추출된 두개의 인코딩벡터(s1, s2)와 함께 대응하는 2개의 문장 사이의 컨텍스트 일치여부를 나타내는 기준값(d)을 포함한다.
컨텍스트학습데이터는 예컨대 (s1, s2, d)와 같이 구성될 수 있다. 여기서, s1 및 s2는 문장샘플링모듈(20)에 의해 선택된 2개의 인코딩벡터를 의미한다. 아울러, 기준값(d)는 두 문장 사이의 거리를 나타내는 값으로서 학습하고자 하는 학습데이터(즉, 문서) 내에서의 컨텍스트에 따라 결정된다.
더 구체적으로 설명하면, 컨텍스트는 "하나의 문장이 다른 문장들 사이에 공유되는 속성"을 의미한다. 컨텍스트는 다양한 방법으로 설정될 수 있는데, 예컨대, 문서 내에서 서로 인접한 문장을 같은 컨텍스트로 간주하고자 하는 경우, 컨텍스트 일치 여부를 나타내는 기준값(d)는 [식 1]과 같이 결정될 수 있다.
[식 1]
Figure 112018125978184-pat00001
여기서, 함수 adjacent(s1, s2)는 두 문장의 인코딩벡터가 입력되면 두 문장의 인접여부를 반환하는 함수이다. 즉, 문장샘플링모듈(20)은 문장인코더(10)에 의해서 생성된 인코딩벡터시퀀스 (s1, s2, …, sN)로부터 임의의 인코딩벡터를 추출하면서, 추출된 인코딩벡터들 사이의 인접거리에 대한 기준값을 함께 생성한다. 예컨대, 서로 이웃하는 2개의 문장에 대응하는 인코딩벡터 s1 및 s2를 추출할 때, s1 및 s2가 서로 이웃한 문장에 대응하는 인코딩벡터인 경우 기준값(d)을 "0"으로 설정하고, 그렇지 않은 경우 기준값(d)을 "1"로 설정한다.
다른 예로서, 컨텍스트를 문서의 문단으로 간주할 경우(즉, 같은 문단에 포함된 문장을 같은 컨텍스트로 간주할 경우), 기준값(d)은 [식 2]와 같이, 인코딩벡터를 받아 해당 문장의 문단 값을 반환하는 함수인 paragraph(s)를 이용한다. 즉, s1 및 s2에 대응하는 2개의 문장이 같은 문단에 속하는 경우 기준값(d)은 "0"으로 설정되고, 반대로 다른 문단에 속하는 경우 기준값(d)은 "1"로 설정된다.
[식 2]
Figure 112018125978184-pat00002
또한, 컨텍스트를 문서의 카테고리로 간주할 경우(즉, 같은 카테고리의 문장을 같은 컨텍스트로 간주할 경우), 기준값(d)은 [식 3]과 같이, 인코딩벡터를 받아 대응하는 문장의 카테고리 값을 반환하는 함수인 category(s)를 이용하여 설정될 수 있다. 예를 들어, s1 및 s2가 "스포츠"에 대한 뉴스 기사인 임베더 학습데이터로부터 추출된 문장에 대응하는 인코딩벡터인 경우 기준값(d)은 "0"으로 설정된다. 반대로, s1은 "스포츠"에 대한 뉴스 기사로부터 추출된 문장에 대응하는 인코딩벡터이고, s2는 "정치"에 대한 뉴스 기사로부터 추출된 문장에 대응하는 인코딩벡터인 경우, 기준값(d)은 "1"로 설정될 수 있다.
[식 3]
Figure 112018125978184-pat00003
다음으로, 임베더 학습부(30)는, 컨텍스트 임베더 신경망(즉, 인코딩벡터를 임베딩벡터로 변환하는 신경망) 및 거리학습신경망(31)을 학습시킨다. 예컨대, 도 2에서 보듯이, 컨텍스트학습데이터에 포함된 인코딩벡터쌍 s1 및 s2는 제1 컨텍스트 임베더 신경망(32a) 및 제2 컨텍스트 임베더 신경망(32b)에 의해 각각 임베딩벡터쌍 h1 및 h2로 변환된다. 여기서, 임베딩벡터의 생성에 사용되는 제1 및 제2 컨텍스트 임베더 신경망(32a 및 32b)은 각각 복수의 연산을 포함하는 복수의 계층을 포함하여 구성되며, 연산을 수행하는 복수의 계층 중 하나 이상의 계층에 가중치(W)를 포함하여 각 단계의 연산에 사용된다. 임베딩벡터의 생성에 사용되는 제1 및 제2 컨텍스트 임베더 신경망(32a 및 32b)은, 완전 연결 형식의 신경망(Fully-connected neural network), 컨볼루션 신경망(Convolutional neural network), 순환신경망(Recurrent neural network) 등을 이용할 수 있다. 또한, 제1 및 제2 컨텍스트 임베더 신경망(32a 및 32b)은 설명의 편의상 구분하여 도시하였으나, 실질적으로 동일한 신경망으로 구성된다. 아울러, 임베더 학습부(30)에 의해 학습된 컨텍스트 임베더 신경망(32a 및 32b)이 최종적으로 학습된 후에, 앞에서 설명한 컨텍스트 임베더 신경망(32)으로서 사용된다.
한편, 거리학습신경망(31)은 임베딩벡터쌍(h1, h2)을 입력받아 임베딩벡터쌍(h1, h2) 사이의 거리값을 산출한다. 거리학습신경망(31)도 복수의 연산을 수행하는 복수의 계층을 포함하도록 구성되며, 연산을 수행하는 복수의 계층 중 하나 이상의 계층에 가중치를 포함하여 각 단계의 연산에 사용된다. 거리학습신경망(310)으로서, 완전 연결 형식의 신경망(Fully-connected neural network), 컨볼루션 신경망(Convolutional neural network), 순환신경망(Recurrent neural network) 등을 이용할 수 있다.
임베더 학습부(30)는 컨텍스트 임베더 신경망(32a, 32b) 및 거리학습신경망(31)을 역전파 알고리즘을 이용하여 학습시키게 된다. 예컨대, 컨텍스트 임베더 신경망(32a, 32b)에 의해 생성된 임베딩벡터쌍에 대하여, 거리학습신경망(31)에 의해 산출된 출력층의 거리값을 컨텍스트학습데이터에 포함된 기준값(d)과 비교하여 양자의 차이를 최소화하도록 가중치(W)를 산출한다. 출력층의 거리값과 설정된 기준값과의 차이가 일정한 범위 내에 속할 때가지 가중치(W)를 산출하는 과정을 학습이라고 칭한다.
임베더 학습부(30)에 의해 최종적으로 학습된 컨텍스트 임베더 신경망(32)은, 컨텍스트가 동일한 문장들에 대한 임베딩벡터들은 컨텍스트 임베딩 벡터 공간 상에서의 거리가 상대적으로 인접하도록 임베딩벡터를 생성하고, 반대로 컨텍스트가 다른 문장들에 대한 임베딩벡터들은 컨텍스트 임베딩 벡터 공간상에서의 거리가 상대적으로 멀어지도록 임베딩벡터를 생성한다. 즉, 도 3에서 보듯이, 4개의 문장들에 각각 대응되는 인코딩벡터쌍(s1, s2, s3, s4)이 컨텍스트 임베더 신경망(32)에 의해 임베딩벡터쌍(h1, h2, h3, h4)으로 생성될 때, 컨텍스트가 동일한 인코딩벡터들에 대응되는 임베딩벡터들은 콘텍스트 임베딩벡터 공간 상에서 서로 인접한 거리를 갖게 된다. 예컨대, 컨텍스트를 문서의 카테고리로 간주하여 학습시킨 경우, 컨텍스트가 '스포츠'인 s1 및 s2에 대응되는 임베딩벡터 h1 및 h2는 벡터 공간 상에서 서로 인접한 거리를 갖게 되고, 컨텍스트가 '정치'인 s3 및 s4에 대응되는 임베딩벡터 h3 및 h4는 벡터 공간 상에서 서로 인접한 거리를 갖게 된다. 반대로, 컨텍스트가 '스포츠'인 s1에 대응되는 임베딩벡터 h1과, 컨텍스트가 '정치'인 s3에 대응되는 임베딩벡터 h3는 벡터 공간 상에서 상대적으로 거리가 멀어지게 된다. 다시 말해서, 임의의 문장에 대한 인코딩벡터가 입력되면, 컨텍스트 임베더 신경망(32)은 컨텍스트가 동일한 문장들에 대해서는 벡터 공간 상에서 서로 인접하도록 임베딩벡터를 생성하고, 반대로 컨텍스트가 다른 문장들에 대해서는 벡터 공간 상에서 상대적으로 거리가 멀어지도록 임베딩벡터를 생성한다.
상술한 임베더 학습부(30)는 2 이상의 문장들에 대하여 동시에 학습하는 것도 가능하다. 또한, 컨텍스트학습데이터가 "((s1, s2, 0), (s2, s3, 1))"과 같이 같은 기준값(d)을 갖는 인코딩벡터쌍과 다른 기준값(d)을 갖는 인코딩벡터쌍을 포함하도록 할 수 있으며, 임베터 학습부(30)가 이와 같이 복수의 인코딩벡터쌍 대해 동시에 학습하는 것도 가능하다.
다시 도 1로 돌아가서, 위와 같이 학습된 컨텍스트 임베더 신경망(32)에 의해 생성된 임베딩벡터시퀀스를 이용하여, 입력된 문서데이터에 컨텍스트 이상문장이 존재하는지 여부를 나타내는 결과값을 산출하도록 컨텍스트 이상탐지기 신경망(40)을 학습시킨다. 컨텍스트 이상탐지기 신경망(40)으로는, 완전 연결 형식의 신경망(Fully-connected neural network), 컨볼루션 신경망(Convolutional neural network), 순환신경망(Recurrent neural network) 등을 이용할 수 있다.
문장인코더(10)에 학습데이터(D1)를 입력하여 생성된 인코딩벡터시퀀스(10a) "(s1, s2, …, sN)"는 컨텍스트 임베더 신경망(32)에 의해 임베딩벡터시퀀스(11a) "(h1, h2, …, hN)"로 변환된다. 탐지기 학습부(41)는 학습데이터(D1)에 대한 임베딩벡터시퀀스(11a)를 컨텍스트 이상탐지기 신경망(40)에 입력하여, 신경망(40)에 의해 산출된 결과값이 학습데이터(D1) 내에 이상문장이 존재하는지 여부를 나타내는 기대값(y)과 동일한 값을 갖도록 학습시킨다.
예컨대, 학습데이터(D1)로는 '이상문장이 포함되지 않은 문서'(즉, '정상문서') 또는 '이상문장이 포함된 문서'(즉, '이상문서')를 이용할 수 있다. 일례로, 컨텍스트를 문서의 문단으로 정의하여 컨텍스트 임베더 신경망(32)을 학습시킨 경우, 문맥이 잘짜여진 문서를 학습데이터(D1)를 이용하여 문장인코더(10)에 의해 생성된 인코딩벡터시퀀스 (s1, s2, …, s11, s12, …, sN)는 '정상문서'에 대한 인코딩벡터시퀀스로 이용할 수 있다. 한편, 문단이 서로 다른 s2 및 s12를 도치시킨 인코딩벡터시퀀스 (s1, s12, …, s11, s2, …, sN)는 '이상문서'에 대한 인코딩벡터시퀀스로 이용할 수 있다. 이 경우, 컨텍스트 임베더 신경망(32)에 의해 생성된 '이상문서'에 대한 임베딩벡터시퀀스 (h1, h12, …, h11, h2, …, hN)에서 h12는 동일한 문단에 속하는 다른 임베딩벡터들(h1, h3 내지 h10)과 벡터 공간 상에서 상대적으로 거리가 먼 벡터로 생성된다.
탐지기 학습부(41)는 '정상문서'에 대한 임베딩벡터시퀀스 (h1, h2, …, h11, h12, …, hN)에 대한 기대값을 '0'으로 설정하고, '이상문서'에 대한 임베딩벡터시퀀스 (h1, h12, …, h11, h2, …, hN)에 대한 기대값을 '1'로 설정한다. 그 후, 서로 다른 임베딩벡터시퀀스를 컨텍스트 이상탐지기 신경망(40)에 입력하여 산출된 결과값(y)이 이상문장이 존재하는지 여부를 나타내는 기대값과의 차이가 최소화되도록 역전파 알고리즘을 이용하여 가중치를 산출하고, 산출된 가중치를 복수의 연산을 수행하는 각 계층에 적용하는 방식으로 컨텍스트 이상탐지기 신경망(40)을 학습시킨다. 컨텍스트 이상탐지기 신경망(40)은 결과값 및 기대값과의 차이가 일정한 범위 내에 속하도록 학습되며, 이에 의해 이상문장이 없는 정상문서에 대한 임베딩벡터시퀀스에 대해서는 기대값 "0"에 근접한 결과값(y)을 출력하게 되고, 반대로 이상문장을 포함하는 이상문서에 대한 임베딩벡터시퀀스에 대해서는 기대값 '1'에 근접한 결과값(y)을 출력하게 된다. 이렇게 학습된 컨텍스트 이상탐지기 신경망(40)을 이용하여, 문서데이터 내에 이상문장이 존재하는지 여부를 판별하게 된다.
즉, 최종적으로 잘 학습된 컨텍스트 임베더 신경망(32) 및 컨텍스트 이상탐지기 신경망(40)을 이용하여, 의심데이터(D2) 내에 이상문장이 존재하는지 여부를 판별할 수 있다. 예컨대, 의심데이터(D2)를 입력하여 문장인코더(10)에 의해 인코딩벡터시퀀스(10b)를 생성하고, 생성된 인코딩벡터시퀀스(10b)를 컨텍스트 임베더 신경망(32)에 의해 임베딩벡터시퀀스(11b)로 변환한 다음, 컨텍스트 이상탐지기 신경망(40)이 임베딩벡터시퀀스(11b)로부터 의심데이터(D2) 내에 컨텍스트 이상문장이 존재하는 여부를 나타내는 결과값(y)를 산출하게 되고, 이렇게 산출된 결과값(y)을 기초로 탐지부(42)가 의심데이터(D2) 내에 이상문장이 존재하는지 여부를 판별하게 된다.
상술한 문서의 컨텍스트 이상문장 검출장치 및 이를 이용한 검출방법은 다양한 용도로 사용될 수 있다. 일례로, 원래 기사의 내용을 수정하거나 추가하는 방식으로 만들어진 가짜 뉴스는, 수정된 부분이 기존 문맥(즉, 컨텍스트)과 어울리지 않는 이상문장이 포함되어 있으므로, 수집된 뉴스 기사들 중에서 가짜 뉴스를 판정하는 데에 이용될 수 있다. 또한, 챗봇(Chatter robot)의 경우, 현재 대화하고 있는 문맥에 맞는 문장을 만드는 것이 중요한데, 챗봇 알고리즘에서 제공하는 문장이 현재 문맥과 어울리는지 확인하거나, 혹은 대화의 문맥이 바뀌는지 여부를 탐지하는 데에 사용될 수도 있다. 나아가, 논문 등의 표절 여부를 탐지하는 데에도 이용될 수 있다. 예컨대, 타인이 쓴 문장을 본인이 작성한 문장들 속에 삽입하는 경우, 표절된 문장의 내용은 다른 주변 문장들과 문맥이 상이할 것이므로, 이상문장이 포함된 논문을 표절 논문으로 간주할 수 있다. 또한, 논술, 작문 등에서 문맥의 흐름에 맞지 않는 문장을 이상문장으로 검출하여 문장을 교정하거나 문맥에 맞게 문단을 자동으로 구분해 줄 수도 있다.
한편, 앞서 설명된 본 발명의 실시예에 따른 문서의 컨텍스트 이상문장 검출방법은, 다양한 컴퓨터수단을 통하여 판독 가능한 프로그램 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 와이어뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 와이어를 포함할 수 있다.
이상 본 발명을 몇 가지 바람직한 실시예를 사용하여 설명하였으나, 이들 실시예는 예시적인 것이며 한정적인 것이 아니다. 이와 같이, 본 발명이 속하는 기술분야에서 통상의 지식을 지닌 자라면 본 발명의 사상과 첨부된 특허청구범위에 제시된 권리범위에서 벗어나지 않으면서 균등론에 따라 다양한 변화와 수정을 가할 수 있음을 이해할 것이다.

Claims (12)

  1. 문서데이터가 입력되면 상기 문서데이터에 포함된 복수의 문장 각각을 인코딩하여 복수의 인코딩벡터로 이루어진 인코딩벡터시퀀스를 생성하는 문장인코더;
    상기 문장인코더에 의해 생성된 상기 인코딩벡터시퀀스로부터 선택된 2 이상의 문장에 대응하는 인코딩벡터쌍 및 상기 2 이상의 문장 사이의 컨텍스트 일치여부를 나타내는 기준값을 포함하는 컨텍스트학습데이터를 생성하는 문장샘플링모듈;
    상기 인코딩벡터시퀀스에 포함된 상기 복수의 인코딩벡터 각각에 대응하는 복수의 컨텍스트 임베딩벡터로 변환하여 임베딩벡터시퀀스를 생성하는 컨텍스트 임베더 신경망;
    상기 컨텍스트학습데이터에 포함된 상기 인코딩벡터쌍을 상기 컨텍스트 임베더 신경망에 의해 대응하는 임베딩벡터쌍으로 생성할 때, 상기 임베딩벡터쌍 사이의 거리값을 산출하는 거리학습신경망;
    상기 거리학습신경망에 의해 산출된 상기 임베딩벡터쌍 사이의 상기 거리값이 상기 컨텍스트학습데이터에 포함된 상기 기준값과의 차이가 일정한 범위 내에 속하도록 상기 컨텍스트 임베더 신경망을 학습시키는 임베더 학습부;
    상기 임베딩벡터시퀀스로부터 상기 문서데이터 내에 컨텍스트 이상문장이 존재하는지 여부를 나타내는 결과값을 산출하는 컨텍스트 이상탐지기 신경망;
    상기 문서데이터가 학습데이터이면 상기 컨텍스트 이상탐지기 신경망에 의해 산출된 상기 결과값이 상기 학습데이터 내에 이상문장이 존재하는지 여부를 나타내는 기대값과의 차이가 일정한 범위 내에 속하도록 상기 컨텍스트 이상탐지기 신경망을 학습시키는 탐지기 학습부; 및
    상기 문서데이터가 의심데이터이면 상기 컨텍스트 이상탐지기 신경망에 의해 산출된 상기 결과값을 기초로 상기 의심데이터 내에 이상문장이 존재하는지 여부를 판별하는 탐지부;를 포함하는, 문서의 컨텍스트 이상문장 검출장치.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 2 이상의 문장 사이의 컨텍스트 일치여부를 나타내는 상기 기준값은, 상기 2 이상의 문장이 상기 문서데이터 내에서 서로 인접하게 배치되어 있는지 여부를 기초로 설정되는 것을 특징으로 하는, 문서의 컨텍스트 이상문장 검출장치.
  4. 제 1 항에 있어서,
    상기 2 이상의 문장 사이의 컨텍스트 일치여부를 나타내는 상기 기준값은, 상기 2 이상의 문장이 상기 문서데이터 내에서 동일한 문단에 속하는지 여부를 기초로 설정되는 것을 특징으로 하는, 문서의 컨텍스트 이상문장 검출장치.
  5. 제 1 항에 있어서,
    상기 2 이상의 문장 사이의 컨텍스트 일치여부를 나타내는 상기 기준값은, 상기 2 이상의 문장이 동일한 카테고리에 속하는지 여부를 기초로 설정되는 것을 특징으로 하는, 문서의 컨텍스트 이상문장 검출장치.
  6. 문서데이터가 입력되면 문장인코더가 상기 문서데이터에 포함된 복수의 문장 각각을 인코딩하여 복수의 인코딩벡터로 이루어진 인코딩벡터시퀀스를 생성하는 제1 단계;
    문장샘플링모듈이 상기 문장인코더에 의해 생성된 상기 인코딩벡터시퀀스로부터 선택된 2 이상의 문장에 대응하는 인코딩벡터쌍 및 상기 2 이상의 문장 사이의 컨텍스트 일치여부를 나타내는 기준값을 포함하는 컨텍스트학습데이터를 생성하는 제2 단계;
    컨텍스트 임베더 신경망이 상기 인코딩벡터시퀀스에 포함된 상기 복수의 인코딩벡터 각각에 대응하는 복수의 컨텍스트 임베딩벡터로 변환하여 임베딩벡터시퀀스를 생성하는 제3 단계;
    거리학습신경망이 상기 컨텍스트학습데이터에 포함된 상기 인코딩벡터쌍을 상기 컨텍스트 임베더 신경망에 의해 대응하는 임베딩벡터쌍으로 생성할 때 상기 임베딩벡터쌍 사이의 거리값을 산출하는 제4 단계;
    임베더 학습부가 상기 거리학습신경망에 의해 산출된 상기 임베딩벡터쌍 사이의 상기 거리값이 상기 컨텍스트학습데이터에 포함된 상기 기준값과의 차이가 일정한 범위 내에 속하도록 상기 컨텍스트 임베더 신경망을 학습시키는 제5 단계;
    컨텍스트 이상탐지기 신경망이 상기 임베딩벡터시퀀스로부터 상기 문서데이터 내에 컨텍스트 이상문장이 존재하는지 여부를 나타내는 결과값을 산출하는 제6 단계;
    상기 문서데이터가 학습데이터이면, 탐지기 학습부가 상기 컨텍스트 이상탐지기 신경망에 의해 산출된 상기 결과값이 상기 학습데이터 내에 이상문장이 존재하는지 여부를 나타내는 기대값과의 차이가 일정한 범위 내에 속하도록 상기 컨텍스트 이상탐지기 신경망을 학습시키는 제7 단계;
    상기 문서데이터가 의심데이터이면, 탐지부가 상기 컨텍스트 이상탐지기 신경망에 의해 산출된 상기 결과값을 기초로 상기 의심데이터 내에 이상문장이 존재하는지 여부를 판별하는 제8 단계;를 포함하는, 문서의 컨텍스트 이상문장 검출방법.
  7. 삭제
  8. 삭제
  9. 제 6 항에 있어서,
    상기 2 이상의 문장 사이의 컨텍스트 일치여부를 나타내는 상기 기준값은, 상기 2 이상의 문장이 상기 문서데이터 내에서 서로 인접하게 배치되어 있는지 여부를 기초로 설정되는 것을 특징으로 하는, 문서의 컨텍스트 이상문장 검출방법.
  10. 제 6 항에 있어서,
    상기 2 이상의 문장 사이의 컨텍스트 일치여부를 나타내는 상기 기준값은, 상기 2 이상의 문장이 상기 문서데이터 내에서 동일한 문단에 속하는지 여부를 기초로 설정되는 것을 특징으로 하는, 문서의 컨텍스트 이상문장 검출방법.
  11. 제 6 항에 있어서,
    상기 2 이상의 문장 사이의 컨텍스트 일치여부를 나타내는 상기 기준값은, 상기 2 이상의 문장이 동일한 카테고리에 속하는지 여부를 기초로 설정되는 것을 특징으로 하는, 문서의 컨텍스트 이상문장 검출방법.
  12. 컴퓨터에서 제 6 항, 제 9 항 내지 제 11 항 중 어느 한 항에 따른 문서의 컨텍스트 이상문장 검출방법을 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체.
KR1020180162214A 2018-12-14 2018-12-14 문서의 컨텍스트 이상문장 검출장치, 이를 위한 방법 및 이 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체 KR102179025B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020180162214A KR102179025B1 (ko) 2018-12-14 2018-12-14 문서의 컨텍스트 이상문장 검출장치, 이를 위한 방법 및 이 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체
PCT/KR2019/015553 WO2020122440A1 (ko) 2018-12-14 2019-11-14 문서의 컨텍스트 이상문장 검출장치, 이를 위한 방법 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체
US17/413,825 US11727703B2 (en) 2018-12-14 2019-11-14 Apparatus for detecting contextually-anomalous sentence in document, method therefor, and computer-readable recording medium having program for performing same method recorded thereon

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180162214A KR102179025B1 (ko) 2018-12-14 2018-12-14 문서의 컨텍스트 이상문장 검출장치, 이를 위한 방법 및 이 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체

Publications (2)

Publication Number Publication Date
KR20200080368A KR20200080368A (ko) 2020-07-07
KR102179025B1 true KR102179025B1 (ko) 2020-11-16

Family

ID=71075652

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180162214A KR102179025B1 (ko) 2018-12-14 2018-12-14 문서의 컨텍스트 이상문장 검출장치, 이를 위한 방법 및 이 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체

Country Status (3)

Country Link
US (1) US11727703B2 (ko)
KR (1) KR102179025B1 (ko)
WO (1) WO2020122440A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210365965A1 (en) * 2020-05-25 2021-11-25 Microsoft Technology Licensing, Llc Self-supervised system generating embeddings representing sequenced activity

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100474359B1 (ko) * 2002-12-12 2005-03-10 한국전자통신연구원 키워드 기반 N-gram 언어모델 구축 방법
US7720675B2 (en) * 2003-10-27 2010-05-18 Educational Testing Service Method and system for determining text coherence
US8036464B2 (en) * 2007-09-07 2011-10-11 Satyam Computer Services Limited System and method for automatic segmentation of ASR transcripts
US8892421B2 (en) * 2010-12-08 2014-11-18 Educational Testing Service Computer-implemented systems and methods for determining a difficulty level of a text
US9158841B2 (en) * 2011-06-15 2015-10-13 The University Of Memphis Research Foundation Methods of evaluating semantic differences, methods of identifying related sets of items in semantic spaces, and systems and computer program products for implementing the same
KR101669339B1 (ko) * 2014-11-27 2016-10-25 강원대학교산학협력단 채팅 말뭉치 구축 방법 및 채팅 말뭉치 구축 시스템
US9842105B2 (en) 2015-04-16 2017-12-12 Apple Inc. Parsimonious continuous-space phrase representations for natural language processing
GB201511887D0 (en) * 2015-07-07 2015-08-19 Touchtype Ltd Improved artificial neural network for language modelling and prediction
US10831762B2 (en) * 2015-11-06 2020-11-10 International Business Machines Corporation Extracting and denoising concept mentions using distributed representations of concepts
KR20180092808A (ko) 2017-02-08 2018-08-20 한국과학기술원 개념 그래프 기반 질의응답 시스템 및 이를 이용한 문맥 검색 방법
KR102199067B1 (ko) * 2018-01-11 2021-01-06 네오사피엔스 주식회사 다중 언어 텍스트-음성 합성 방법
US11270072B2 (en) * 2018-10-31 2022-03-08 Royal Bank Of Canada System and method for cross-domain transferable neural coherence model
US11604926B2 (en) * 2019-02-21 2023-03-14 Ramaswamy Venkateshwaran Method and system of creating and summarizing unstructured natural language sentence clusters for efficient tagging
US11106789B2 (en) * 2019-03-05 2021-08-31 Microsoft Technology Licensing, Llc Dynamic cybersecurity detection of sequence anomalies

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
S. Chopra et al., Towards Automatic Identification of Fake News: Headline-Article Stance Detection with LSTM Attention Models, Stanford CS224d Deep Learning for NLP final project (2017)
Y. Seo et al., FaGoN: Fake News Detection model using Grammatic Transformation on Neural Network, proceeding on 2018 KICSS (2018.11.15.) 1부.*
이동호 외, 딥러닝 기법을 이용한 가짜뉴스 탐지, 2018년 춘계학술발표대회 논문집 제25권제1호 pp.384-387 (2018.05.)*
임근영 외, 딥러닝과 Char2Vec을 이용한 문장 유사도 판별, 한국정보통신학회논문지 Vol.22 No.10, pp.1300-1306 (2018.10)

Also Published As

Publication number Publication date
KR20200080368A (ko) 2020-07-07
WO2020122440A1 (ko) 2020-06-18
US20220027608A1 (en) 2022-01-27
US11727703B2 (en) 2023-08-15

Similar Documents

Publication Publication Date Title
Wu et al. Neural Chinese named entity recognition via CNN-LSTM-CRF and joint training with word segmentation
Ramay et al. Deep neural network-based severity prediction of bug reports
CN108984724B (zh) 利用高维表示提高特定属性情感分类准确率方法
US10635858B2 (en) Electronic message classification and delivery using a neural network architecture
CN112084331A (zh) 文本处理、模型训练方法、装置、计算机设备和存储介质
CN109977416A (zh) 一种多层次自然语言反垃圾文本方法及系统
Xie et al. Attention-based dense LSTM for speech emotion recognition
CN112528637B (zh) 文本处理模型训练方法、装置、计算机设备和存储介质
Xue et al. A better way to attend: Attention with trees for video question answering
KR20200052453A (ko) 딥러닝 모델 학습 장치 및 방법
CN113678149A (zh) 用于对注释和编辑关系进行建模的架构
CN112287100A (zh) 文本识别方法、拼写纠错方法及语音识别方法
CN114443899A (zh) 视频分类方法、装置、设备及介质
CN108763230B (zh) 利用外部信息的神经机器翻译方法
Fang et al. A method of automatic text summarisation based on long short-term memory
KR102179025B1 (ko) 문서의 컨텍스트 이상문장 검출장치, 이를 위한 방법 및 이 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체
Gong et al. What is the intended usage context of this model? An exploratory study of pre-trained models on various model repositories
CN115603964A (zh) 邮件检测方法和装置、计算机可读存储介质
CN115186085A (zh) 回复内容处理方法以及媒体内容互动内容的交互方法
US11347928B2 (en) Detecting and processing sections spanning processed document partitions
KR20230014034A (ko) 분류 정확도 향상을 위한 선택적 마스킹 기반 추가 사전 학습 방법 및 장치
Campbell et al. Detecting Artificial Intelligence: A New Cyberarms Race Begins
Wang et al. Semantic place prediction with user attribute in social media
WO2020058120A1 (en) Method and apparatus for determining existence of dependence violation, electronic device, medium and program
KR102491451B1 (ko) 심층 신경망 기반의 악성코드 탐지 분류체계의 유사도를 반영하는 시그니처 생성 장치, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant