KR102060486B1 - 시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법 - Google Patents

시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법 Download PDF

Info

Publication number
KR102060486B1
KR102060486B1 KR1020180081230A KR20180081230A KR102060486B1 KR 102060486 B1 KR102060486 B1 KR 102060486B1 KR 1020180081230 A KR1020180081230 A KR 1020180081230A KR 20180081230 A KR20180081230 A KR 20180081230A KR 102060486 B1 KR102060486 B1 KR 102060486B1
Authority
KR
South Korea
Prior art keywords
chatbot
generating
graph database
semantic graph
vertex
Prior art date
Application number
KR1020180081230A
Other languages
English (en)
Inventor
남후람
프로코페브 알렉세이
정명원
Original Assignee
주식회사 아카인텔리전스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 아카인텔리전스 filed Critical 주식회사 아카인텔리전스
Priority to KR1020180081230A priority Critical patent/KR102060486B1/ko
Priority to US16/168,574 priority patent/US11049498B2/en
Application granted granted Critical
Publication of KR102060486B1 publication Critical patent/KR102060486B1/ko

Links

Images

Classifications

    • G06F17/2775
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/322Trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
    • G06F17/175Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method of multidimensional data
    • G06F17/2785
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Algebra (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Machine Translation (AREA)

Abstract

본 발명은 시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법에 관한 것이 개시된다. 상기 방법은, 사용자의 과거의 발언을 이용하여 시맨틱 그래프 데이터베이스를 생성하는 단계: 및 상기 시맨틱 그래프 데이터베이스를 이용하여 상기 사용자의 새로운 발언에 응답하기 위한 챗봇의 발언을 생성하는 단계를 포함하고, 상기 시맨틱 그래프 데이터베이스를 생성하는 단계는, 사용자의 과거의 발언의 하나 이상의 문장에 관한 제1 의존 구문 분석 트리를 생성하는 단계: 소정의 규칙에 따라, 상기 제1 의존 구문 분석 트리의 소정의 복수의 정점을 하나의 정점으로 통합하여 변환된 제1 의존 구문 분석 트리를 생성하는 단계: 변환된 상기 제1 의존 구문 분석 트리로부터 i) 소정의 제1 정점에 상응하는 제1 객체, ii) 소정의 제2 정점에 상응하는 제2 객체, 및 iii) 상기 제1 정점과 상기 제2 정점의 사이의 제3 정점으로서 상기 제1 객체와 상기 제2 객체 간의 관계로 정의된 소정의 하나 이상의 제1 데이터 셋을 추출하는 단계: 및 추출된 상기 하나 이상의 제1 데이터 셋의 제1 객체 및 제2 객체를 정점으로 하고, 상기 제1 객체와 상기 제2 객체 간의 관계를 방향성 간선으로 하는 시맨틱 그래프 데이터베이스를 생성하는 단계를 포함하고, 상기 챗봇의 발언을 생성하는 단계는, 상기 사용자의 새로운 발언의 하나 이상의 문장에 관한 제2 의존 구문 분석 트리를 생성하는 단계: 소정의 규칙에 따라, 상기 제2 의존 구문 분석 트리의 소정의 복수의 정점을 하나의 정점으로 통합하여 변환된 의존 구문 분석 트리를 생성하는 단계: 변환된 상기 제2 의존 구문 분석 트리로부터 i) 소정의 제1 정점에 상응하는 제1 객체, ii) 소정의 제2 정점에 상응하는 제2 객체, 및 iii) 상기 제1 정점과 상기 제2 정점의 사이의 제3 정점으로서 상기 제1 객체와 상기 제2 객체 간의 관계로 정의된 소정의 하나 이상의 제2 데이터 셋을 추출하는 단계: 상기 시맨틱 그래프 데이터베이스 내의 하나 이상의 제1 데이터 셋 중 상기 추출된 하나 이상의 제2 데이터 셋과 매칭되는 하나 이상의 제1 데이터 셋을 하나 이상의 발언 후보 데이터 셋으로 추출하는 단계: 자연어 생성 알고리즘을 이용하여, 추출된 상기 하나 이상의 발언 후보 데이터 셋에 상응하는 하나 이상의 대화 후보 문장을 생성하는 단계: 및 상기 하나 이상의 후보 문장을 이용하여 챗봇의 발언을 생성하는 단계를 포함한다.

Description

시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법{METHOD FOR GENERATING CHATBOT UTTERANCE BASED ON THE SEMANTIC GRAPH DATABASE}
본 발명은 시맨틱 그래프 데이터베이스(Semantic Graph Database) 기반의 챗봇 발언 생성 방법에 관한 것이다.
최근 인간과 챗봇 간 의사소통이 가능하게 하는 자연어 처리에 대한 수요가 개인 비서, 메신저, 금융, 유통 등 다양한 분야에서 증가하고 있다. 실시간으로 자연어를 처리하는 챗봇에 있어서, 사용자와 챗봇의 대화를 통해서 얻어진 전체 대화 로그를 저장하고 사용자의 요구가 있을 때 정보를 처리하는 방법은 처리할 데이터의 양이 많아서 신속한 자연어 처리에 적합하지 않다. 이에 따라, 정보를 체계적으로 저장하고 사용자의 요구가 있을 때 신속하게 정보를 처리할 수 있게 하는 기술이 필요해지고 있다.
공개특허공보 제 10-2017-0099969호, 2017.09.01
본 발명이 해결하고자 하는 과제는 시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법을 제공하는 것이다.
본 발명은 사용자의 발언 전체 로그를 저장 및 검색하여 실시간으로 자연어 처리가 되지 않았던 기존 방법을 개선하고자 체계화 및 조직화된 시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법을 제공한다.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법은, 사용자의 과거의 발언을 이용하여 시맨틱 그래프 데이터베이스를 생성하는 단계; 및 상기 시맨틱 그래프 데이터베이스를 이용하여 상기 사용자의 새로운 발언에 응답하기 위한 챗봇의 발언을 생성하는 단계를 포함하고, 상기 시맨틱 그래프 데이터베이스를 생성하는 단계는, 사용자의 과거의 발언의 하나 이상의 문장에 관한 제1 의존 구문 분석 트리를 생성하는 단계; 소정의 규칙에 따라, 상기 제1 의존 구문 분석 트리의 소정의 복수의 정점을 하나의 정점으로 통합하여 변환된 제1 의존 구문 분석 트리를 생성하는 단계; 변환된 상기 제1 의존 구문 분석 트리로부터 i) 소정의 제1 정점에 상응하는 제1 객체, ii) 소정의 제2 정점에 상응하는 제2 객체, 및 iii) 상기 제1 정점과 상기 제2 정점의 사이의 제3 정점으로서 상기 제1 객체와 상기 제2 객체 간의 관계로 정의된 소정의 하나 이상의 제1 데이터 셋을 추출하는 단계; 및 추출된 상기 하나 이상의 제1 데이터 셋의 제1 객체 및 제2 객체를 정점으로 하고, 상기 제1 객체와 상기 제2 객체 간의 관계를 방향성 간선으로 하는 시맨틱 그래프 데이터베이스를 생성하는 단계를 포함하고, 상기 챗봇의 발언을 생성하는 단계는, 상기 사용자의 새로운 발언의 하나 이상의 문장에 관한 제2 의존 구문 분석 트리를 생성하는 단계; 소정의 규칙에 따라, 상기 제2 의존 구문 분석 트리의 소정의 복수의 정점을 하나의 정점으로 통합하여 변환된 의존 구문 분석 트리를 생성하는 단계; 변환된 상기 제2 의존 구문 분석 트리로부터 i) 소정의 제1 정점에 상응하는 제1 객체, ii) 소정의 제2 정점에 상응하는 제2 객체, 및 iii) 상기 제1 정점과 상기 제2 정점의 사이의 제3 정점으로서 상기 제1 객체와 상기 제2 객체 간의 관계로 정의된 소정의 하나 이상의 제2 데이터 셋을 추출하는 단계; 상기 시맨틱 그래프 데이터베이스 내의 하나 이상의 제1 데이터 셋 중 상기 추출된 하나 이상의 제2 데이터 셋과 매칭되는 하나 이상의 제1 데이터 셋을 하나 이상의 발언 후보 데이터 셋으로 추출하는 단계; 자연어 생성 알고리즘을 이용하여, 추출된 상기 하나 이상의 발언 후보 데이터 셋에 상응하는 하나 이상의 대화 후보 문장을 생성하는 단계; 및 상기 하나 이상의 후보 문장을 이용하여 챗봇의 발언을 생성하는 단계를 포함한다.
일부 실시예에서, 상기 소정의 규칙에 따라, 상기 제1 의존 구문 분석 트리의 복수의 정점을 하나의 정점으로 통합하여 변환된 의존 구문 분석 트리를 생성하는 단계는, 상기 복수의 정점에 상응하는 복수의 단어가 서로 결합하여 하나의 의미를 형성하는 경우, 상기 복수의 정점을 하나의 정점으로 통합한다.
일부 실시예에서, 상기 하나 이상의 제1 데이터 셋의 상기 제1 객체 및 상기 제2 객체는 명사구이고, 상기 제1 객체와 상기 제2 객체 간의 관계는 동사구로 정의된다.
일부 실시예에서, 상기 추출된 상기 하나 이상의 데이터 셋의 제1 객체 및 제2 객체를 정점으로 하고, 상기 제1 객체와 상기 제2 객체 간의 관계를 방향성 간선으로 하는 시맨틱 그래프 데이터베이스를 생성하는 단계는, 상기 방향성 간선이 상기 제1 객체와 상기 제2 객체 간의 관계 정보 및 상기 데이터 셋에 상응하는 문장의 타임 스탬프 정보를 포함한다.
일부 실시예에서, 상기 소정의 규칙에 따라, 상기 제2 의존 구문 분석 트리의 복수의 정점을 하나의 정점으로 통합하여 변환된 의존 구문 분석 트리를 생성하는 단계는, 상기 복수의 정점에 상응하는 복수의 단어가 서로 결합하여 하나의 의미를 형성하는 경우, 상기 복수의 정점을 하나의 정점으로 통합한다.
일부 실시예에서, 상기 하나 이상의 제2 데이터 셋의 상기 제1 객체 및 상기 제2 객체는 명사구이고, 상기 제1 객체와 상기 제2 객체 간의 관계는 동사구로 정의된다.
일부 실시예에서, 상기 시맨틱 그래프 데이터베이스 내의 하나 이상의 제1 데이터 셋 중 상기 추출된 하나 이상의 제2 데이터 셋과 매칭되는 하나 이상의 제1 데이터 셋을 하나 이상의 발언 후보 데이터 셋으로 추출하는 단계는, 3차원 손실 함수를 이용하여 상기 하나 이상의 발언 후보 데이터 셋을 추출한다.
일부 실시예에서, 상기 3차원 손실 함수는 제1 데이터 셋과 제2 데이터 셋을 입력으로 하고, 상기 제1 데이터 셋과 상기 제2 데이터 셋의 각 요소 간의 거리를 반환한다.
일부 실시예에서, 상기 하나 이상의 후보 문장을 이용하여 챗봇의 발언을 생성하는 단계는, 딥러닝 알고리즘을 이용하여, 상기 사용자와 상기 챗봇의 대화의 컨텍스트 및 상기 사용자의 새로운 발언에 대한 상기 하나 이상의 후보 문장의 평가 스코어를 산출하는 단계; 및 상기 평가 스코어가 소정의 기준치 이상인 하나 이상의 후보 문장을 이용하여 챗봇의 발언을 생성하는 단계를 포함한다.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명의 시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법에 의하면, 사용자의 과거의 발언을 시맨틱 그래프 데이터베이스로 임베딩하여 체계화 및 조직화된 방식으로 저장할 수 있다.
또한, 사용자의 발언을 시맨틱 그래프 데이터베이스로 만듦으로써, 불필요한 단어를 저장하지 않게 하거나, 복수의 단어가 서로 결합하여 하나의 의미를 형성하는 경우 하나의 단어 모음으로 저장할 수 있게 된다. 이와 같은 방식으로, 저장할 사용자 과거 발언의 데이터 양을 줄일 수 있어서 사용자의 응답이 필요시 신속하게 사용자 과거 발언을 검색하고 챗봇의 발언을 생성함으로써 사용자와 챗봇의 실시간 대화를 가능하게 한다.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 실시예에 따른 시맨틱 그래프 데이터베이스 기반의 챗봇 발언을 생성하는 방법의 개략적인 순서도이다.
도 2는 본 발명의 실시예에 따른 시맨틱 그래프 데이터베이스를 생성하는 방법의 개략적인 순서도이다.
도 3은 본 발명의 실시예에 따른 의존 구문 분석 트리의 예시도이다.
도 4는 본 발명의 실시예에 따른 시맨틱 그래프 데이터베이스의 예시도이다.
도 5는 본 발명의 실시예에 따른 챗봇의 발언을 생성하는 방법의 개략적인 순서도이다.
도 6은 본 발명의 실시예에 따른 챗봇 서비스 프로그램을 생성하는 컴퓨터 시스템의 개략적인 블록도이다.
도 7은 본 발명의 실시예에 따른 챗봇의 발언을 생성하는 챗봇 시스템을 도시한 도면이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.
도 1은 본 발명의 실시예에 따른 시맨틱 그래프 데이터베이스(200) 기반의 챗봇 발언을 생성하는 방법의 개략적인 순서도이다.
도 1을 참조하면, 시맨틱 그래프 데이터 베이스 기반의 챗봇 발언을 생성하는 방법은, 시맨틱 그래프 데이터베이스(200)를 생성하는 단계(S100), 챗봇의 발언을 생성하는 단계(S200)을 포함한다.
단계 S100에서, 컴퓨터는 사용자의 과거의 발언을 이용하여 시맨틱 그래프 데이터베이스(200)를 생성한다.
단계 S200에서, 컴퓨터는 시맨틱 그래프 데이터베이스(200)를 이용하여 사용자의 새로운 발언에 응답하기 위한 챗봇의 발언을 생성한다.
도 2는 본 발명의 실시예에 따른 시맨틱 그래프 데이터베이스(200)를 생성하는 방법의 개략적인 순서도이다.
도 2을 참조하면, 시맨틱 그래프 데이터베이스(200)를 생성하는 방법은, 제1 의존 구문 분석 트리(100)를 생성하는 단계(S110), 변환된 제1 의존 구문 분석 트리(100)를 생성하는 단계(S120), 제1 데이터 셋을 추출하는 단계(S130), 시맨틱 그래프 데이터베이스(200)를 생성하는 단계(S140)을 포함한다.
단계 S110에서, 컴퓨터는 사용자의 과거의 발언의 하나 이상의 문장에 관한 제1 의존 구문 분석 트리(100)를 생성한다.
의존 구문 분석 트리(100)는 사용자의 과거의 발언의 하나 이상의 문장에 포함되어 있는 복수의 단어를 각각 복수의 정점으로 하고, 복수의 단어 사이의 의존 관계에 따라 복수의 정점을 연결한 것이다.
단어 사이의 의존 관계는, 예를 들어, 표 1과 같이 문장에서 단어와 단어가 문법적 또는 의미적으로 어떤 관계로 되어있는지를 알려준다.
의존 관계 설명 의존 관계 설명
nsubj 문장 주어 det 한정사
dobj 직접 목적어 poss 소유격
iobj 간접 목적어 conj 접속어
ccomp 절의 보어 cc 등위 접속사
nmod 명사의 수식어 compound 합성어
amod 형용사의 수식어 punct 구두점
의존 구문 분석 트리(100)는 본 발명이 속하는 기술분야의 통상의 기술자에게 자명한 사항이며, 이에 관한 상세한 설명은 본 발명의 요지를 흐릴 수 있으므로 이하 생략하기로 한다.
일부 실시예에서는, 제1 의존 구문 분석 트리(100)를 생성하기 전에, 사용자의 과거의 발언의 하나 이상의 문장 중에 대명사와 같이 동일 대상을 나타내는 복수의 단어가 있으면 다른 대상을 나타내는 대명사와 구별할 수 있도록 변환한다. 대명사뿐만 아니라 지시대명사와 제3자를 지칭하는 표현에서도 동일 작업을 수행한다. 예를 들어, "Jane likes apple. She is vegetarian."와 "Alice goes to mountain. She likes hiking."의 문장에서 첫번째 문장의 "She"는 "Jane"을 의미하고 두번째 문장의 "She"는 "Alice"를 의미한다. 이 때 첫번째 문장의 "She"와 두번째 문장의 "She"는 각각 다른 대상을 지시하고 있는 대명사로 구별되므로 각각 별개의 표현이 되도록 변환한다.
일부 실시예에서, 컴퓨터는 "and"(109), "the"(110), "also"(113), "which"(114)와 같은 접속사, 관사, 부사, 한정사 등과 같은 단어도 의존 구문 분석 트리(100)의 한 정점으로 포함시킬 수 있다.
단계 S120에서, 컴퓨터는 소정의 규칙에 따라, 제1 의존 구문 분석 트리(100)의 소정의 복수의 정점을 하나의 정점으로 통합하여 변환된 제1 의존 구문 분석 트리(100)를 생성한다.
일부 실시예에서, 컴퓨터는 제1 의존 구문 분석 트리(100)의 복수의 정점에 상응하는 복수의 단어가 서로 결합하여 하나의 의미를 형성하는 경우, 복수의 정점을 하나의 정점으로 통합한다. 예를 들어, 컴퓨터는 두 단어가 결합하여 합성어를 형성하거나 소유격과 명사가 결합한 형태의 경우 하나의 정점으로 통합한다.
예를 들어, “우리”와 “할머니”가 결합하여 “우리 할머니”로 통합할 수 있다. 또한, “보따리”와 “짐”이 결합하여 “보따리 짐”으로 통합할 수 있다. 또한, “오고”와 “가다”가 결합하여 “오고 가다”로 통합할 수 있다.
의존 구문 분석 트리(100)의 소정의 복수의 정점을 하나의 정점으로 통합하기 위한 규칙의 예가 이에 제한되는 것은 아니며, 예시되지 않은 다른 임의의 규칙이 적용될 수 있다.
단계 S130에서, 컴퓨터는 변환된 제1 의존 구문 분석 트리(100)로부터 i) 소정의 제1 정점에 상응하는 제1 객체, ii) 소정의 제2 정점에 상응하는 제2 객체, 및 iii) 제1 정점과 제2 정점의 사이의 제3 정점으로서 제1 객체와 제2 객체 간의 관계로 정의된 소정의 하나 이상의 제1 데이터 셋을 추출한다.
일부 실시예에서, 하나 이상의 제1 데이터 셋의 제1 객체 및 제2 객체는 명사 또는 명사구로 될 수 있고, 제1 객체와 제2 객체 간의 관계는 동사 또는 동사구로 될 수 있다.
단계 S140에서, 컴퓨터는 추출된 하나 이상의 제1 데이터 셋의 제1 객체 및 제2 객체를 정점으로 하고, 제1 객체와 제2 객체 간의 관계를 방향성 간선으로 하는 시맨틱 그래프 데이터베이스(200)를 생성한다.
일부 실시예에, 방향성 간선은 간선의 방향을 이용하여 향후 만들어지는 문장의 주체를 결정할 수 있다.
일부 실시예에서, 방향성 간선은 제1 객체와 제2 객체 간의 관계 정보 뿐만 아니라 데이터 셋에 상응하는 문장의 타임 스탬프 정보를 포함한다. 예를 들어, 사용자가 데이터 셋에 상응하는 문장을 발언하여 제1 객체와 제2 객체 간의 관계를 정의 내린 시점의 시간 정보가 방향성 간선에 포함되게 할 수 있다.
일부 실시예에서, "and"(109), "the"(110), "also"(113), "which"(114)와 같은 접속사, 관사, 부사, 한정사 등과 같은 단어가 시맨틱 그래프 데이터베이스(200)의 한 정점으로 포함되지 않을 수 있다.
도 3은 본 발명의 실시예에 따른 의존 구문 분석 트리(100)의 예시도이다.
도 3을 참조하면, 예시적인 사용자의 발언인 “My brother and I like the new Star Wars and also Star Trek which are coming out this year."의 의존 구문 분석 트리(100)가 도시된다.
예시적인 의존 구문 분석 트리(100)에서는, “My brother and I like the new Star Wars and also Star Trek which are coming out this year." 문장이 "My"(101), "brother"(102), "and"(109), "I"(105), "like"(103), "the"(110), "new"(111), "Star"(112), "Wars"(106), "and"(109), "also"(113), "Star"(112), "Trek"(107), "which"(114), "are"(115), "coming"(108), "out"(116), "this"(118), "year"(117), "."(104)으로 각각의 단어와 문장의 부호로 나누어진다.
예시적인 의존 구문 분석 트리(100)에서, "My"(101), "brother"(102), "and"(109), "I"(105), "like"(103), "the"(110), "new"(111), "Star"(112), "Wars"(106), "and"(109), "also"(113), "Star"(112), "Trek"(107), "which"(114), "are"(115), "coming"(108), "out"(116), "this"(118), "year"(117), "."(104)의 각각의 단어와 문장의 부호가 정점으로 되고 각각의 단어의 의존 관계가 방향성 간선으로 연결되어 있다. 예를 들어, "My"(101)와 "brother"(102)는 소유격(possessive) 관계를, "brother"(102)와 "I"(105)는 접속어(conjunctive) 관계를, "Star"(112)와 "Wars"(106)는 합성어(compound) 관계를 갖는 것으로 분석되고, 방향성 간선에 의해 연결된다.
상술한 바와 같이, 의존 구문 분석 트리(100)의 소정의 복수의 정점이 하나의 정점으로 통합되어 변환될 수 있다. 예시적인 의존 구문 분석 트리(100)에서, "My"(101)와 "brother"(102)가 결합하여 "My brother"(202)로 통합할 수 있다. 또한, "Star"(112)와 "Trek"(107)이 결합하여 "Star Trek"(204)으로 통합할 수 있다. 또한, "are"(115)와 "coming"(108)과 "out"(116)이 결합하여 "are coming out"으로 통합할 수 있다.
도 4는 본 발명의 실시예에 따른 시맨틱 그래프 데이터베이스(200)의 예시도이다.
도 4을 참조하면, 컴퓨터는 예시적인 사용자의 발언인 “My brother and I like the new Star Wars and also Star Trek which are coming out this year."의 의존 구문 분석 트리(100)에서 데이터 셋을 추출하고, 추출된 데이터 셋을 정점과 방향성 간선으로 하는 시맨틱 그래프 데이터베이스(200)를 생성한다.
일부 실시예에서, 예시적으로 추출된 데이터 셋 중 명사와 명사구인 "I"(105), "Star Wars"(201), "My brother"(202), "Star Trek"(204) 및 "this year"(203)가 시맨틱 그래프 데이터베이스(200)의 각 정점으로 배치된다. 또한, 동사와 동사구인 "like"(103)및 "is coming out"이 시맨틱 그래프 데이터베이스(200)의 각 정점 사이에 방향성 간선으로 배치된다.
일부 실시예에서, "is coming out"의 방향성 간선이 "Star Wars"(201)의 정점으로부터 "this year"(203)의 정점 방향으로 배치되어 있다. 방향성 간선은 문장의 주체를 결정할 수 있기 때문에 "Star Wars"(201)와 "this year"(203)의 정점, "is coming out"의 방향성 간선으로 "Star Wars is coming this year"와 같은 문장을 만들어 낼 수 있다.
일부 실시예에서, 컴퓨터는 방향성 간선에 타임 스탬프와 같은 정보를 포함할 수 있다. 예를 들어, 사용자가 "Star Wars"(201)와 "this year"(203)의 정점이 사용한 시점의 시간 정보가 "is coming out"의 방향성 간선에 포함되게 할 수 있다.
도 5는 본 발명의 실시예에 따른 챗봇의 발언을 생성하는 방법의 개략적인 순서도이다.
도 5를 참조하면, 챗봇의 발언을 생성하는 방법은, 제2 의존 구문 분석 트리(100)를 생성하는 단계(S210), 변환된 의존 구문 분석 트리(100)를 생성하는 단계(S220), 제2 트리플 유닛을 추출하는 단계(S230), 발언 후보 트리플 유닛으로 추출하는 단계(S240), 대화 후보 문장을 생성하는 단계(S250), 챗봇의 발언을 생성하는 단계(S260)을 포함한다.
단계 S210에서, 컴퓨터는 사용자의 새로운 발언의 하나 이상의 문장에 관한 제2 의존 구문 분석 트리(100)를 생성한다.
단계 S220에서, 컴퓨터는 소정의 규칙에 따라, 제2 의존 구문 분석 트리(100)의 소정의 복수의 정점을 하나의 정점으로 통합하여 변환된 의존 구문 분석 트리(100)를 생성한다.
일부 실시예에서, 컴퓨터는 제2 의존 구문 분석 트리(100)의 복수의 정점에 상응하는 복수의 단어가 서로 결합하여 하나의 의미를 형성하는 경우, 복수의 정점을 하나의 정점으로 통합한다. 예를 들어, 두 단어가 결합하여 합성어를 형성하거나 소유격과 명사가 결합한 형태의 경우 하나의 정점으로 통합한다.
일부 실시예에서는, 하나 이상의 제2 데이터 셋의 제1 객체 및 제2 객체는 명사구이고, 제1 객체와 제2 객체 간의 관계는 동사구로 정의될 수 있다.
단계 S230에서, 컴퓨터는 변환된 제2 의존 구문 분석 트리(100)로부터 i) 소정의 제1 정점에 상응하는 제1 객체, ii) 소정의 제2 정점에 상응하는 제2 객체, 및 iii) 제1 정점과 제2 정점의 사이의 제3 정점으로서 제1 객체와 제2 객체 간의 관계로 정의된 소정의 하나 이상의 제2 데이터 셋을 추출한다.
단계 S240에서, 컴퓨터는 시맨틱 그래프 데이터베이스(200) 내의 하나 이상의 제1 데이터 셋 중 추출된 하나 이상의 제2 데이터 셋과 매칭되는 하나 이상의 제1 데이터 셋을 하나 이상의 발언 후보 데이터 셋으로 추출한다.
일부 실시예에서는, 발언 후보 데이터 셋은 3차원 손실 함수를 이용하여 추출된다. 3차원 손실 함수는 제1 데이터 셋과 제2 데이터 셋을 입력으로 하고, 제1 데이터 셋과 제2 데이터 셋의 각 요소 간의 거리를 반환한다.
3차원 손실 함수에 의해 반환되는 각 요소 간의 거리는 [dist1(객체11, 객체21), dist2(관계1, 관계2), dist3(객체12, 객체22)]의 형식으로 표현될 수 있다.
여기서, dist(A, B)는 A와 B의 벡터의 거리를 계산한다. 예를 들어, dist는 내적 공간의 A, B 벡터 간 각도의 코사인 값을 이용하여 측정된 벡터 간의 유사한 정도를 측정하는 코사인 유사도를 계산한다.
객체11은 제1 데이터 셋의 제1 객체이고, 객체21은 제2 데이터 셋의 제1 객체이고, 객체12는 제1 데이터 셋의 제2 객체이고, 객체22는 제2 데이터 셋의 제2 객체이다.
관계1은 제1 데이터 셋에서 제1 객체와 제2 객체 간의 관계이고, 관계2는 제2 데이터 셋에서 제1 객체와 제2 객체 간의 관계이다.
그리고, 손실 함수의 반환 값을 가장 작게 만드는, 예를 들어, dist1, dist2, dist3의 총합이 가장 작은 제1 데이터 셋이 후술하는 대화 후보 문장으로 생성될 후보 데이터 셋으로 선택될 수 있다. 단계 S230에서 복수 개의 제2 데이터 셋이 추출될 경우, 후보 데이터 셋도 복수 개가 추출될 수 있다.
단계 S250에서, 컴퓨터는 자연어 생성(Natural Language Generation) 알고리즘을 이용하여, 추출된 하나 이상의 발언 후보 데이터 셋에 상응하는 하나 이상의 대화 후보 문장을 생성한다. 자연어 생성 알고리즘으로는 본 발명이 속하는 기술분야에서 잘 알려진 다양한 알고리즘이 사용될 수 있다.
단계 S260에서, 컴퓨터는 하나 이상의 후보 문장을 이용하여 챗봇의 발언을 생성한다.
일부 실시예에서, 컴퓨터는 하나 이상의 후보 문장을 이용하여 챗봇의 발언을 생성함에 있어서 딥러닝 알고리즘을 이용하여, 사용자와 챗봇의 대화의 컨텍스트 및 사용자의 새로운 발언에 대한 하나 이상의 후보 문장의 평가 스코어를 산출한다. 컴퓨터는 산출된 평가 스코어가 소정의 기준치 이상인 하나 이상의 후보 문장을 이용하여 챗봇의 발언을 생성한다.
일부 실시예에서, 컴퓨터는 사용자의 새로운 발언에 대해서 사용자와 챗봇의 전체 대화의 컨텍스트 문자열을 만들다. 예를 들어, 컨텍스트 문자열은 전체 대화에서 사용자의 과거 발언으로부터 새로운 발언까지 단어들의 연결일 수 있다.
일부 실시예에서, 컴퓨터는 딥러닝을 이용한 사전에 훈련되어진 스코어 시스템으로 단계 S250에서 생성된 후보 문장의 평가 스코어를 산출한다. 스코어 시스템은, [컨텍스트 문자열, 사용자의 새로운 발언, 후보 문장]의 형식을 입력받아서, 컨텍스트 문자열과 사용자의 새로운 발언을 기준으로 단계 S250에서 생성된 후보 문장의 평가 스코어를 산출한다.
일부 실시예에서, 컴퓨터는 평가 스코어가 높은 후보 문장을 이용하여 챗봇의 발언을 생성할 수 있다.
도 6은 본 발명의 실시예에 따른 챗봇 서비스 프로그램을 생성하는 컴퓨터 시스템(300)의 개략적인 블록도이다.
도 6를 참조하면, 챗봇 서비스 프로그램을 생성하는 컴퓨터 시스템(300)은 메모리(301), 버스(302), 프로세스(303)를 포함한다.
메모리(301)는 상술한 시맨틱 그래프 데이터베이스(200) 기반의 챗봇 발언을 생성하는 방법을 실행시키기 위한 명령어와 데이터를 저장한다.
프로세서(303)는 메모리(301)에 저장되어 있는 명령어와 데이터를 해석하여 연산하고, 챗봇 시스템(400)의 챗봇 엔진으로 출력한다.
버스(302)는 메모리(301)와 프로세서(303)를 연결하여 명령어와 데이터를 전송한다.
도 7은 본 발명의 실시예에 따른 챗봇의 발언을 생성하는 챗봇 시스템(400)을 도시한 도면이다.
도 7를 참조하면, 챗봇의 발언을 생성하는 챗봇 시스템(400)은 사용자 단말기(401), 서비스 서버(402), 챗봇 서버(403)를 포함한다.
서비스 서버(402)는 사용자에게 챗봇 서비스를 제공하고, 사용자 단말기(401)에서 사용자 발언이 입력되면 사용자 발언을 챗봇 서버(403)에 전송한다.
챗봇 서버(403)는 챗봇 엔진, 데이터 베이스를 포함한다. 챗봇 엔진은, 상술한 시맨틱 그래프 데이터베이스(200) 기반의 챗봇 발언을 생성하는 방법으로, 사용자 발언으로부터 챗봇 발언을 생성한다. 데이터 베이스는 서비스 서버로부터 전송된 사용자 발언을 저장하고, 챗봇 발언 생성 시에 챗봇 엔진으로 사용자 발언을 전송한다.
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.
이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.
100 : 의존 구문 분석 트리
200 : 시맨틱 그래프 데이터베이스
300 : 컴퓨터 시스템
400 : 챗봇 시스템

Claims (10)

  1. 컴퓨터에 의해 실행되는 방법으로서,
    사용자의 과거의 발언을 이용하여 시맨틱 그래프 데이터베이스를 생성하는 단계; 및
    상기 시맨틱 그래프 데이터베이스를 이용하여 상기 사용자의 새로운 발언에 응답하기 위한 챗봇의 발언을 생성하는 단계를 포함하고,
    상기 시맨틱 그래프 데이터베이스를 생성하는 단계는,
    사용자의 과거의 발언의 하나 이상의 문장에 관한 제1 의존 구문 분석 트리를 생성하는 단계;
    소정의 규칙에 따라, 상기 제1 의존 구문 분석 트리의 소정의 복수의 정점을 하나의 정점으로 통합하여 변환된 제1 의존 구문 분석 트리를 생성하는 단계;
    변환된 상기 제1 의존 구문 분석 트리로부터 i) 소정의 제1 정점에 상응하는 제1 객체, ii) 소정의 제2 정점에 상응하는 제2 객체, 및 iii) 상기 제1 정점과 상기 제2 정점의 사이의 제3 정점으로서 상기 제1 객체와 상기 제2 객체 간의 관계로 정의된 소정의 하나 이상의 제1 데이터 셋을 추출하는 단계; 및
    추출된 상기 하나 이상의 제1 데이터 셋의 제1 객체 및 제2 객체를 정점으로 하고, 상기 제1 객체와 상기 제2 객체 간의 관계를 방향성 간선으로 하는 시맨틱 그래프 데이터베이스를 생성하는 단계를 포함하고,
    상기 챗봇의 발언을 생성하는 단계는,
    상기 사용자의 새로운 발언의 하나 이상의 문장에 관한 제2 의존 구문 분석 트리를 생성하는 단계;
    소정의 규칙에 따라, 상기 제2 의존 구문 분석 트리의 소정의 복수의 정점을 하나의 정점으로 통합하여 변환된 의존 구문 분석 트리를 생성하는 단계;
    변환된 상기 제2 의존 구문 분석 트리로부터 i) 소정의 제1 정점에 상응하는 제1 객체, ii) 소정의 제2 정점에 상응하는 제2 객체, 및 iii) 상기 제1 정점과 상기 제2 정점의 사이의 제3 정점으로서 상기 제1 객체와 상기 제2 객체 간의 관계로 정의된 소정의 하나 이상의 제2 데이터 셋을 추출하는 단계;
    상기 시맨틱 그래프 데이터베이스 내의 하나 이상의 제1 데이터 셋 중 상기 추출된 하나 이상의 제2 데이터 셋과 매칭되는 하나 이상의 제1 데이터 셋을 하나 이상의 발언 후보 데이터 셋으로 추출하는 단계;
    자연어 생성 알고리즘을 이용하여, 추출된 상기 하나 이상의 발언 후보 데이터 셋에 상응하는 하나 이상의 대화 후보 문장을 생성하는 단계; 및
    상기 하나 이상의 후보 문장을 이용하여 챗봇의 발언을 생성하는 단계를 포함하는 것을 특징으로 하는,
    시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법.
  2. 제1항에 있어서,
    상기 소정의 규칙에 따라, 상기 제1 의존 구문 분석 트리의 복수의 정점을 하나의 정점으로 통합하여 변환된 의존 구문 분석 트리를 생성하는 단계는,
    상기 복수의 정점에 상응하는 복수의 단어가 서로 결합하여 하나의 의미를 형성하는 경우, 상기 복수의 정점을 하나의 정점으로 통합하는,
    시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법.
  3. 제1항에 있어서,
    상기 하나 이상의 제1 데이터 셋의 상기 제1 객체 및 상기 제2 객체는 명사구이고, 상기 제1 객체와 상기 제2 객체 간의 관계는 동사구로 정의되는,
    시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법.
  4. 제1항에 있어서,
    상기 추출된 상기 하나 이상의 데이터 셋의 제1 객체 및 제2 객체를 정점으로 하고, 상기 제1 객체와 상기 제2 객체 간의 관계를 방향성 간선으로 하는 시맨틱 그래프 데이터베이스를 생성하는 단계는,
    상기 방향성 간선이 상기 제1 객체와 상기 제2 객체 간의 관계 정보 및 상기 데이터 셋에 상응하는 문장의 타임 스탬프 정보를 포함하도록 하는,
    시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법.
  5. 제1항에 있어서,
    상기 소정의 규칙에 따라, 상기 제2 의존 구문 분석 트리의 복수의 정점을 하나의 정점으로 통합하여 변환된 의존 구문 분석 트리를 생성하는 단계는,
    상기 복수의 정점에 상응하는 복수의 단어가 서로 결합하여 하나의 의미를 형성하는 경우, 상기 복수의 정점을 하나의 정점으로 통합하는,
    시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법.
  6. 제1항에 있어서,
    상기 하나 이상의 제2 데이터 셋의 상기 제1 객체 및 상기 제2 객체는 명사구이고, 상기 제1 객체와 상기 제2 객체 간의 관계는 동사구로 정의되는,
    시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법.
  7. 제1항에 있어서,
    상기 시맨틱 그래프 데이터베이스 내의 하나 이상의 제1 데이터 셋 중 상기 추출된 하나 이상의 제2 데이터 셋과 매칭되는 하나 이상의 제1 데이터 셋을 하나 이상의 발언 후보 데이터 셋으로 추출하는 단계는,
    3차원 손실 함수를 이용하여 상기 하나 이상의 발언 후보 데이터 셋을 추출하는,
    시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법.
  8. 제7항에 있어서,
    상기 3차원 손실 함수는 제1 데이터 셋과 제2 데이터 셋을 입력으로 하고, 상기 제1 데이터 셋과 상기 제2 데이터 셋의 각 요소 간의 거리를 반환하는,
    시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법.
  9. 제1항에 있어서,
    상기 하나 이상의 후보 문장을 이용하여 챗봇의 발언을 생성하는 단계는,
    딥러닝 알고리즘을 이용하여, 상기 사용자와 상기 챗봇의 대화의 컨텍스트 및 상기 사용자의 새로운 발언에 대한 상기 하나 이상의 후보 문장의 평가 스코어를 산출하는 단계; 및
    상기 평가 스코어가 소정의 기준치 이상인 하나 이상의 후보 문장을 이용하여 챗봇의 발언을 생성하는 단계를 포함하는,
    시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법.
  10. 컴퓨터와 결합되어, 제1항 내지 제9항 중 어느 하나의 항의 시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법을 실행시키기 위하여 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램.
KR1020180081230A 2018-07-12 2018-07-12 시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법 KR102060486B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020180081230A KR102060486B1 (ko) 2018-07-12 2018-07-12 시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법
US16/168,574 US11049498B2 (en) 2018-07-12 2018-10-23 Method for generating chatbot utterance based on semantic graph database

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180081230A KR102060486B1 (ko) 2018-07-12 2018-07-12 시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법

Publications (1)

Publication Number Publication Date
KR102060486B1 true KR102060486B1 (ko) 2019-12-30

Family

ID=69102777

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180081230A KR102060486B1 (ko) 2018-07-12 2018-07-12 시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법

Country Status (2)

Country Link
US (1) US11049498B2 (ko)
KR (1) KR102060486B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220079484A (ko) 2020-12-04 2022-06-13 한국전자통신연구원 대화형 챗봇 시스템 및 이의 지식 그래프 기반 응답 생성 방법

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI666558B (zh) * 2018-11-20 2019-07-21 財團法人資訊工業策進會 語意分析方法、語意分析系統及非暫態電腦可讀取媒體
CN110309289B (zh) * 2019-08-23 2019-12-06 深圳市优必选科技股份有限公司 一种句子生成方法、句子生成装置及智能设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017010517A (ja) 2015-06-25 2017-01-12 バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド 人工知能によるヒューマン・マシン間の知能チャットの方法および装置
KR101832816B1 (ko) 2016-12-12 2018-02-27 동국대학교 산학협력단 질의에 대한 응답 생성 장치 및 방법
JP2018055548A (ja) 2016-09-30 2018-04-05 株式会社Nextremer 対話装置、学習装置、対話方法、学習方法、およびプログラム

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050256700A1 (en) * 2004-05-11 2005-11-17 Moldovan Dan I Natural language question answering system and method utilizing a logic prover
US7809548B2 (en) * 2004-06-14 2010-10-05 University Of North Texas Graph-based ranking algorithms for text processing
US8700404B1 (en) * 2005-08-27 2014-04-15 At&T Intellectual Property Ii, L.P. System and method for using semantic and syntactic graphs for utterance classification
US9069750B2 (en) * 2006-10-10 2015-06-30 Abbyy Infopoisk Llc Method and system for semantic searching of natural language texts
US7899666B2 (en) * 2007-05-04 2011-03-01 Expert System S.P.A. Method and system for automatically extracting relations between concepts included in text
US7953755B2 (en) * 2008-03-24 2011-05-31 Dataura LLC Semantic relational database
US9886950B2 (en) * 2013-09-08 2018-02-06 Intel Corporation Automatic generation of domain models for virtual personal assistants
CN104915340B (zh) * 2014-03-10 2019-09-10 北京大学 自然语言问答方法及装置
US9589305B2 (en) 2014-12-30 2017-03-07 Facebook, Inc. Techniques for graph based natural language processing
US10540400B2 (en) * 2015-06-16 2020-01-21 Business Objects Software, Ltd. Providing suggestions based on user context while exploring a dataset
US10521410B2 (en) * 2015-11-20 2019-12-31 International Business Machines Corporation Semantic graph augmentation for domain adaptation
US10645034B2 (en) * 2016-04-22 2020-05-05 Smartbothub, Inc. System and method for facilitating computer generated conversations with the aid of a digital computer
US20180025726A1 (en) * 2016-07-22 2018-01-25 International Business Machines Corporation Creating coordinated multi-chatbots using natural dialogues by means of knowledge base
US10891326B2 (en) * 2017-01-05 2021-01-12 International Business Machines Corporation Representation of a data analysis using a flow graph
US10599885B2 (en) * 2017-05-10 2020-03-24 Oracle International Corporation Utilizing discourse structure of noisy user-generated content for chatbot learning
US11163957B2 (en) * 2017-06-29 2021-11-02 International Business Machines Corporation Performing semantic graph search
US10776411B2 (en) * 2017-11-07 2020-09-15 International Business Machines Corporation Systematic browsing of automated conversation exchange program knowledge bases
US10636419B2 (en) * 2017-12-06 2020-04-28 Sony Interactive Entertainment Inc. Automatic dialogue design
US10498898B2 (en) * 2017-12-13 2019-12-03 Genesys Telecommunications Laboratories, Inc. Systems and methods for chatbot generation
US11853930B2 (en) * 2017-12-15 2023-12-26 Accenture Global Solutions Limited Dynamic lead generation
US10832002B2 (en) * 2018-05-08 2020-11-10 International Business Machines Corporation System and method for scoring performance of chatbots
US11170161B2 (en) * 2018-05-11 2021-11-09 Citrix Systems, Inc. Generating conversation models from documents

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017010517A (ja) 2015-06-25 2017-01-12 バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド 人工知能によるヒューマン・マシン間の知能チャットの方法および装置
JP2018055548A (ja) 2016-09-30 2018-04-05 株式会社Nextremer 対話装置、学習装置、対話方法、学習方法、およびプログラム
KR101832816B1 (ko) 2016-12-12 2018-02-27 동국대학교 산학협력단 질의에 대한 응답 생성 장치 및 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
김보경 외, 소셜 챗봇 기반 익명 질의응답 시스템, 2017 한국정보기술학회·한국디지털콘텐츠 학회 하계 공동학술대회 논문집, pp.493-495 (2017)
김현기 외, 오픈 도메인 질의응답을 위한 검색문서 제약 및 정답유형 분류 기술, 정보과학회논문지 소프트웨어 및 응용 논문집, 2012.

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220079484A (ko) 2020-12-04 2022-06-13 한국전자통신연구원 대화형 챗봇 시스템 및 이의 지식 그래프 기반 응답 생성 방법

Also Published As

Publication number Publication date
US11049498B2 (en) 2021-06-29
US20200020325A1 (en) 2020-01-16

Similar Documents

Publication Publication Date Title
US10831997B2 (en) Intent classification method and system
Salehi et al. A word embedding approach to predicting the compositionality of multiword expressions
Le et al. Structured output layer neural network language models for speech recognition
KR102060486B1 (ko) 시맨틱 그래프 데이터베이스 기반의 챗봇 발언 생성 방법
CN106610951A (zh) 改进的基于语义分析的文本相似度求解算法
CN104166462A (zh) 一种文字的输入方法和系统
KR20130042839A (ko) 유사문장 검색 장치 및 방법, 유사문장 검색 방법을 실행시키기 위한 프로그램이 기록된 기록매체
JP6955963B2 (ja) 検索装置、類似度算出方法、およびプログラム
US20080208566A1 (en) Automated word-form transformation and part of speech tag assignment
Thadani et al. Sentence compression with joint structural inference
US20220414332A1 (en) Method and system for automatically generating blank-space inference questions for foreign language sentence
JP2009139390A (ja) 情報処理システム、処理方法及びプログラム
Arisoy et al. Discriminative language modeling with linguistic and statistically derived features
US20010029443A1 (en) Machine translation system, machine translation method, and storage medium storing program for executing machine translation method
WO2012153524A1 (ja) 同義表現判定装置、方法及びプログラム
US7752033B2 (en) Text generation method and text generation device
Al-Azzawy et al. Arabic words clustering by using K-means algorithm
Fusayasu et al. Word-error correction of continuous speech recognition based on normalized relevance distance
Devlin et al. Statistical machine translation as a language model for handwriting recognition
Oh et al. Deep-Learning Based Automatic Spontaneous Speech Assessment in a Data-Driven Approach for the 2017 SLaTE CALL Shared Challenge.
KR102117281B1 (ko) 빈도 테이블을 이용한 챗봇 발언 생성 방법
Naptali et al. Topic-dependent language model with voting on noun history
CN110990537A (zh) 一种基于边缘信息和语义信息的句子相似度计算方法
US10964313B2 (en) Word score calculation device, word score calculation method, and computer program product
KR102354898B1 (ko) 한국어 기반 신경망 언어 모델을 위한 어휘 목록 생성 방법 및 장치

Legal Events

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