KR20220030088A - Apparatus, method and system for determining answer regarding question - Google Patents
Apparatus, method and system for determining answer regarding question Download PDFInfo
- Publication number
- KR20220030088A KR20220030088A KR1020200111846A KR20200111846A KR20220030088A KR 20220030088 A KR20220030088 A KR 20220030088A KR 1020200111846 A KR1020200111846 A KR 1020200111846A KR 20200111846 A KR20200111846 A KR 20200111846A KR 20220030088 A KR20220030088 A KR 20220030088A
- Authority
- KR
- South Korea
- Prior art keywords
- graph
- embedding
- query
- response
- language
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Abstract
Description
본 발명은 질의에 대한 응답 결정 장치, 방법 및 시스템에 관한 것이다.The present invention relates to an apparatus, method and system for determining a response to a query.
최근에는 인공지능 스피커 장치나 스마트폰에 탑재되는 인공지능 애플리케이션과 같이, 화자가 자연어로 질의하면 이에 대해 적절한 답변을 획득하여 응답하는 기술이 제시되고 있다. 그러나, 화자가 언급한 자연어 질문을 분석하고 질문에 알맞은 답변을 제공하는 것은 원활하게 이루어지지 않는다. 이는 자연어 그 자체에 대한 인식 및 분석 외에도, 질의 또는 대화 맥락에 부합되는 상식도 요구하기 때문이다. 적절한 응답을 위해 요구되는 상식을 추론할 수 있는 자연어 처리 모델 개발을 위해 상식 질의 응답(Commonsense QA)이 이용되기도 한다. 상식 질의 응답은 상식 질의 및 선택지를 포함하여 이루어진 데이터셋을 의미한다. 이와 같은 상식 정보에 대한 질의 응답 처리를 위해 기존에 다양한 모델이 제시되었으나, 이들 모델은 주어진 질의에 대한 부적합한 응답을 결정하는 경우도 많다는 문제점이 있을 뿐만 아니라 이들 모델이 부적합한 응답을 결정한 이유를 용이하게 파악하기 어려웠다는 문제점도 있었다.Recently, such as an artificial intelligence application mounted on an artificial intelligence speaker device or a smart phone, when a speaker asks a question in natural language, a technology that obtains an appropriate answer and responds to it has been proposed. However, it is not possible to analyze the natural language question mentioned by the speaker and provide an appropriate answer to the question. This is because, in addition to the recognition and analysis of natural language itself, it requires common sense that fits the context of a query or conversation. Commonsense QA is sometimes used to develop a natural language processing model that can infer common sense required for an appropriate response. Common sense question and answer refers to a dataset that includes common sense questions and options. Various models have been proposed in the past to process questions and answers to common sense information, but these models have a problem in that they often determine inappropriate responses to a given question, as well as the reasons why these models determine inappropriate responses. There was also the problem that it was difficult to understand.
본 발명은 주어진 질의에 대해 적절한 응답(정답)을 결정하면서도 보다 용이하게 응답 결정 과정을 해석할 수 있는 질의에 대한 응답 결정 장치, 방법 및 시스템을 제공하는 것을 해결하고자 하는 과제로 한다.An object of the present invention is to provide an apparatus, method, and system for determining a response to a question that can more easily interpret a response determination process while determining an appropriate response (correct answer) to a given question.
상술한 과제를 해결하기 위하여 질의에 대한 응답 결정 장치, 응답 결정 방법 및 응답 결정 시스템이 제공된다.In order to solve the above problems, an apparatus for determining a response to a query, a method for determining a response, and a system for determining a response are provided.
응답 결정 장치는 질의에 대해 통합 그래프를 생성하는 그래프 생성부, 상기 그래프에 대한 그래프 임베딩을 생성하는 그래프 인코더, 상기 질의에 대한 언어 임베딩을 생성하는 텍스트 인코더 및 상기 그래프 임베딩 및 상기 언어 임베딩을 접합한 후, 학습을 수행하여 상기 질의에 대한 응답을 결정하는 결과 획득부를 포함할 수 있다.The response determination device includes a graph generator that generates an integrated graph for a query, a graph encoder that generates a graph embedding for the graph, a text encoder that generates a language embedding for the query, and a combination of the graph embedding and the language embedding. Then, it may include a result obtaining unit that determines a response to the query by performing the learning.
상기 그래프 생성부는 질의를 추상적 의미 표현 그래프로 변환하고, 질의에 대한 컨셉넷 그래프를 색인함으로써 상기 통합 그래프를 생성할 수 있다.The graph generator may generate the integrated graph by converting a query into an abstract semantic expression graph and indexing the conceptnet graph for the query.
상기 그래프 인코더는 상기 통합 그래프의 적어도 하나의 경로를 기반으로 관계 임베딩을 획득하고, 상기 통합 그래프의 적어도 하나의 노드를 기반으로 노드 임베딩을 획득하고, 상기 관계 임베딩 및 노드 임베딩을 접합하여 접합된 임베딩을 획득할 수 있다.The graph encoder obtains relational embeddings based on at least one path of the integrated graph, obtains node embeddings based on at least one node of the integrated graph, and splices the relation embeddings and node embeddings to obtain a spliced embedding. can be obtained.
상기 그래프 인코더는 접합된 임베딩을 기반으로 학습을 수행하여 상기 그래프 임베딩을 획득할 수 있다.The graph encoder may acquire the graph embedding by performing learning based on the joint embedding.
상기 텍스트 인코더는 학습 모델을 기반으로 질의에 대한 언어 임베딩을 획득하되, 상기 학습 모델은 버트 또는 엑스엘넷을 포함할 수 있다.The text encoder obtains a language embedding for a query based on a learning model, but the learning model may include a vert or XLNet.
응답 결정 시스템은, 질의를 입력받는 단말 장치 및 상기 단말 장치와 통신 가능하게 연결되고 상기 질의에 대응하는 응답을 획득하는 서버 장치를 포함하되, 상기 단말 장치 및 상기 서버 장치 중 적어도 하나는, 질의에 대해 통합 그래프를 생성하거나, 상기 그래프에 대한 그래프 임베딩을 생성하거나, 상기 질의에 대한 언어 임베딩을 생성하고, 상기 서버 장치는 상기 그래프 임베딩 및 상기 언어 임베딩을 접합한 후, 학습을 수행하여 상기 질의에 대한 응답을 결정할 수 있다.The response determination system includes a terminal device receiving a query and a server device communicatively connected to the terminal device and obtaining a response corresponding to the query, wherein at least one of the terminal device and the server device responds to the query. For generating an integrated graph for the graph, generating a graph embedding for the graph, or generating a language embedding for the query, the server device concatenates the graph embedding and the language embedding, and then performs learning to respond to the query. You can decide on a response.
응답 결정 방법은 질의에 대해 통합 그래프를 생성하는 단계, 상기 그래프에 대한 그래프 임베딩을 생성하는 단계, 상기 질의에 대한 언어 임베딩을 생성하는 단계, 상기 그래프 임베딩 및 상기 언어 임베딩을 접합하는 단계 및 학습을 수행하여 상기 질의에 대한 응답을 결정하는 단계를 포함할 수 있다.The response determination method comprises the steps of generating an integrated graph for a query, generating a graph embedding for the graph, generating a language embedding for the query, concatenating the graph embedding and the language embedding, and learning and determining an answer to the query by performing the method.
상기 질의에 대해 통합 그래프를 생성하는 단계는 질의를 추상적 의미 표현 그래프로 변환하고, 질의에 대한 컨셉넷 그래프를 색인함으로써 통합 그래프를 생성하는 단계를 포함할 수 있다.The generating of the integrated graph for the query may include generating the integrated graph by converting the query into an abstract semantic expression graph and indexing the conceptnet graph for the query.
상기 그래프에 대한 그래프 임베딩을 생성하는 단계는 상기 통합 그래프의 적어도 하나의 경로를 기반으로 관계 임베딩을 획득하는 단계, 상기 통합 그래프의 적어도 하나의 노드를 기반으로 노드 임베딩을 획득하는 단계, 상기 관계 임베딩 및 노드 임베딩을 접합하여 접합된 임베딩을 획득하는 단계 및 접합된 임베딩을 기반으로 학습을 수행하여 상기 그래프 임베딩을 획득하는 단계를 포함할 수 있다.Generating the graph embeddings for the graph may include: obtaining relation embeddings based on at least one path of the integrated graph; obtaining node embeddings based on at least one node of the integrated graph; the relation embeddings and concatenating node embeddings to obtain jointed embeddings, and performing learning based on the jointed embeddings to obtain the graph embeddings.
상기 질의에 대한 언어 임베딩을 생성하는 단계는 학습 모델을 기반으로 질의에 대한 언어 임베딩을 획득하는 단계를 포함하되, 상기 학습 모델은 버트 또는 엑스엘넷을 포함할 수 있다.The generating of the language embedding for the query may include obtaining the language embedding for the query based on a learning model, wherein the learning model may include a vert or XLNet.
상술한 질의에 대한 응답 결정 장치, 방법 및 시스템에 의하면, 주어진 질의에 대해 보다 정확한 응답을 신속하게 결정할 수 있게 된다.According to the above-described apparatus, method, and system for determining a response to a query, it is possible to quickly determine a more accurate response to a given query.
상술한 질의에 대한 응답 결정 장치, 방법 및 시스템에 의하면, 상식적인 정보에 대한 질의에 대해 답변을 보다 정확하고 신속하게 검색하여 출력할 수 있게 되는 효과도 얻을 수 있다.According to the above-described apparatus, method, and system for determining answers to questions, it is possible to obtain an effect of more accurately and quickly searching for and outputting answers to questions for common-sense information.
상술한 질의에 대한 응답 결정 장치, 방법 및 시스템에 의하면, 질의에 대한 응답이 어떠한 과정으로 또는 어떠한 이유로 결정되었는지 보다 용이하게 해석 및 설명할 수 있게 된다.According to the above-described apparatus, method, and system for determining a response to a query, it is possible to more easily interpret and explain by what process or for what reason a response to a query is determined.
상술한 질의에 대한 응답 결정 장치, 방법 및 시스템에 의하면, 인공 지능 스피커나 인공지능 개인비서 장치나 프로그램 등과 같이 질의 답변이 가능한 장치가 사용자의 질의에 대해 어떻게 답을 찾게 되었는지를 용이하게 파악할 수 있게 되어, 장치와 사람 간의 보다 합리적인 대화가 가능해지고, 이에 따라 장치는 필요한 정보를 더욱 신속하고 정확하게 알려줄 수 있게 된다.According to the above-described apparatus, method and system for determining an answer to a query, a device capable of answering a question, such as an artificial intelligence speaker or an artificial intelligence personal assistant device or program, can easily understand how a device that can answer a question finds an answer to a user's query Thus, a more rational conversation between the device and the person is possible, and accordingly, the device can provide necessary information more quickly and accurately.
도 1은 질의에 대한 응답 결정 장치의 일 실시예에 대한 블록도이다.
도 2는 프로세서의 일 실시예에 대한 블록도이다.
도 3은 추상적 의미 표현(AMR) 그래프의 일례를 도시한 도면이다.
도 4는 통합 그래프의 일례를 도시한 도면이다.
도 5는 질의에 대한 응답 결정 시스템의 일 실시예에 대한 도면이다.
도 6은 질의에 대한 응답 결정 방법의 일 실시예에 대한 흐름도이다.1 is a block diagram of an embodiment of an apparatus for determining a response to an inquiry.
2 is a block diagram of one embodiment of a processor.
3 is a diagram illustrating an example of an abstract semantic representation (AMR) graph.
4 is a diagram illustrating an example of an integrated graph.
5 is a diagram of an embodiment of a system for determining a response to a query;
6 is a flowchart of an embodiment of a method for determining a response to a query.
이하 명세서 전체에서 동일 참조 부호는 특별한 사정이 없는 한 동일 구성요소를 지칭한다. 이하에서 사용되는 '부'가 부가된 용어는, 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예에 따라 하나의 '부'가 하나의 물리적 또는 논리적 부품으로 구현되거나, 복수의 '부'가 하나의 물리적 또는 논리적 부품으로 구현되거나, 하나의 '부'가 복수의 물리적 또는 논리적 부품들로 구현되는 것도 가능하다.In the following specification, the same reference numerals refer to the same components unless otherwise specified. A term to which a 'unit' is added used below may be implemented in software or hardware, and according to an embodiment, one 'unit' may be implemented as one physical or logical part, or a plurality of 'units' may be implemented as one It is also possible to be implemented with physical or logical parts, or one 'unit' may be implemented with a plurality of physical or logical parts.
명세서 전체에서 어떤 부분이 다른 부분과 연결되어 있다고 할 때, 이는 어떤 부분과 다른 부분에 따라서 물리적 연결을 의미할 수도 있고, 또는 전기적으로 연결된 것을 의미할 수도 있다. 또한, 어떤 부분이 다른 부분을 포함한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 부분 이외의 또 다른 부분을 제외하는 것이 아니며, 설계자의 선택에 따라서 또 다른 부분을 더 포함할 수 있음을 의미한다.Throughout the specification, when it is said that a certain part is connected to another part, it may mean a physical connection or electrically connected according to a certain part and another part. In addition, when it is said that a part includes another part, this does not exclude another part other than the other part unless otherwise stated, and it means that another part may be further included according to the designer's choice do.
'제1'이나 '제2' 등의 용어는 하나의 부분을 다른 부분으로부터 구별하기 위해 사용되는 것으로, 특별한 기재가 없는 이상 이들이 순차적인 표현을 의미하는 것은 아니다. 또한 단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함할 수 있다.Terms such as 'first' or 'second' are used to distinguish one part from another, and unless otherwise specified, they do not mean sequential expressions. Also, the singular expression may include the plural expression unless the context clearly dictates otherwise.
이하, 도 1 내지 도 4를 참조하여 질의에 대한 응답 결정 장치의 여러 실시예에 대해서 설명하도록 한다.Hereinafter, various embodiments of an apparatus for determining a response to a query will be described with reference to FIGS. 1 to 4 .
도 1은 질의에 대한 응답 결정 장치의 일 실시예에 대한 블록도이다.1 is a block diagram of an embodiment of an apparatus for determining a response to an inquiry.
도 1에 도시된 응답 결정 장치(100)는 데이터를 수신하고 이에 대한 소정의 연산 처리가 가능한 적어도 하나의 정보 처리 장치를 이용하여 구현될 수 있다. 여기서, 적어도 하나의 정보 처리 장치는, 인공 지능 응답 장치(일례로 인공 지능 스피커 등), 스마트 폰, 태블릿 피씨, 스마트 시계, 휴대용 게임기, 두부 장착형 디스플레이(HMD, Head Mounted Display) 장치, 내비게이션 장치, 개인용 디지털 보조기(PDA), 데스크톱 컴퓨터, 랩톱 컴퓨터, 디지털 텔레비전, 셋톱 박스, 가전 기기, 차량, 유인 비행체, 무인 비행체, 로봇, 산업용 기계 및/또는 질의에 대한 응답을 결정하기 위해 특별히 고안된 전자 장치 등을 포함할 수 있으나, 이에 한정되는 것은 아니며, 설계자가 고려 가능한 다양한 장치가 상술한 응답 결정 장치(100)로 이용될 수 있다.The response determining apparatus 100 illustrated in FIG. 1 may be implemented using at least one information processing apparatus capable of receiving data and performing a predetermined arithmetic process on it. Here, the at least one information processing device includes an artificial intelligence response device (for example, an artificial intelligence speaker, etc.), a smart phone, a tablet PC, a smart watch, a portable game machine, a head mounted display (HMD, Head Mounted Display) device, a navigation device, Personal digital assistants (PDAs), desktop computers, laptop computers, digital televisions, set-top boxes, consumer electronics, vehicles, manned vehicles, unmanned aerial vehicles, robots, industrial machines and/or electronic devices specifically designed to determine responses to queries, etc. may include, but is not limited thereto, and various devices that a designer can consider may be used as the above-described response determining device 100 .
일 실시예에 있어서, 응답 결정 장치(100)는, 도 1에 도시된 바와 같이, 입력부(101), 출력부(102), 저장부(103) 및 프로세서(102)를 포함할 수 있다. 실시예에 따라서, 입력부(101), 출력부(102) 및 저장부(103) 중 적어도 하나는 생략될 수도 있다.In an embodiment, the response determining apparatus 100 may include an
입력부(101)는 사용자나 외부 장치 등으로부터 적어도 하나의 질의를 입력받을 수 있으며, 실시예에 따라 적어도 하나의 질의 각각에 대응하여 마련된 다수의 선택지도 동시에 또는 순차적으로 더 입력받을 수도 있다. 여기서, 질의는 텍스트(문자, 기호, 숫자 및/또는 도형 등을 적어도 하나 포함 가능함), 음향(일례로 음성을 포함 가능함), 이미지 및/또는 이외 질문을 나타낼 수 있는 다양한 표현 체계 등으로 형성된 것일 수 있다. 마찬가지로 선택지도 텍스트, 음향, 이미지 및/또는 소정의 표현 체계 등으로 형성된 것일 수 있다. 질의 및 선택지는 서로 동일한 표현 체계, 일례로 텍스트로 형성된 것일 수도 있고, 또는 서로 상이한 표현 체계로 형성된 것일 수도 있다. 질의는 상식 질문(Commonsense Question)을 포함할 수 있다. 다수의 선택지는 질의에 대해 미리 제시된 답을 포함하며, 다수의 선택지 중 적어도 하나는 질의에 알맞은 답일 수 있다. 일 실시예에 의하면, 입력부(101)는 질의 및 선택지를 포함하는 상식 질의 응답을 수신할 수도 있다. 상식 질의 응답은 정답의 예측을 위해 다양한 유형의 상식(commonsense)을 요구하는 다지선다형 질의 응답 데이터셋을 의미한다. 즉, 상식 질의 응답은, 질문과 이에 대응하는 적어도 둘 이상의 선택지를 포함하는 데이터들의 집합이되, 상식을 이용해야 적어도 둘 이상의 선택지 중 정답에 해당하는 선택지를 결정할 수 있는 것을 의미한다. 이외에도 입력부(101)는 응답 결정 장치(100)의 동작에 필요한 적어도 하나의 데이터, 애플리케이션(소프트웨어, 프로그램 또는 앱 등으로 표현 가능함) 및/또는 명령이나 지시 등을 사용자, 설계자 또는 외부 장치로부터 수신할 수도 있다. 입력부(101)는, 예를 들어, 키보드 장치, 마우스 장치, 그래픽 태블릿, 마이크로폰, 터치 스크린, 터치 패드, 트랙볼, 트랙패드, 데이터 입출력 단자(USB 단자 등) 및/또는 유선 또는 무선 통신 모듈 등을 이용해 구현 가능하나, 이에 한정되는 것은 아니다.The
출력부(102)는 프로세서(110)의 처리 과정에서 획득한 데이터 또는 프로세서(110)의 처리 결과를 외부에 시각적 또는 청각적으로 출력함으로써 처리 결과를 사용자, 설계자 또는 외부 장치에 제공할 수 있다. 예를 들어, 출력부(102)는 선택지 중에서 정답으로 결정된 선택지에 대한 정보를 출력할 수도 있고 및/또는 처리 과정에서 획득한 데이터나 그래프 등을 출력할 수도 있다. 또한, 출력부(102)는 질의나 질의에 대해 사전에 미리 마련된 적어도 하나의 선택지를 더 출력할 수도 있다. 출력부(102)는, 처리 결과나 처리 과정에서 획득한 데이터를 시각적으로 또는 청각적으로 출력할 수 있으며, 예를 들어, 처리 결과나 데이터 등을 텍스트나 화상 등과 같은 시각적 형태로 외부로 출력할 수도 있다. 출력부(102)는 예를 들어 음극선관, 디스플레이 패널, 스피커 장치, 데이터 입출력 단자 및/또는 유선 또는 무선 통신 모듈 등을 이용하여 구현될 수 있되, 이외에도 설계자의 선택에 따라 다양한 장치나 부품을 이용하여 구현될 수 있다. The output unit 102 may provide the processing result to a user, a designer, or an external device by visually or aurally outputting data acquired in the process of the
저장부(103)는, 입력부(101), 출력부(102) 및 프로세서(110) 중 적어도 하나와 전기적으로 연결되고, 응답 결정 장치(100)의 전반적인 동작이나 프로세서(110)의 개별적인 동작에 필요한 하나 이상의 애플리케이션 또는 데이터 등을 일시적 또는 비일시적으로 저장할 수 있도록 마련된다. 예를 들어, 저장부(103)는 입력부(101)를 통해 입력된 질의나, 질의에 대해 사전에 마련된 적어도 하나의 선택지나, 그래프 생성부(111)에 의해 생성된 추상적 의미 표상(AMR: Abstract Meaning Representation) 그래프나, 추상적 의미 표상 그래프에 컨셉넷(ConceptNet)을 부가하여 획득한 통합 그래프나, 그래프 인코더(도 2의 112)에 의해 획득된 그래프 임베딩(Graph embedding) 결과나, 텍스트 인코더(도 2의 117)에 의해 획득된 표현 임베딩 결과나, 최종적으로 획득한 결과(일례로 선택지 중 적어도 하나에 대한 선택 결과) 등을 일시적 또는 비일시적으로 저장할 수 있다. 또한, 저장부(103)는 통합 그래프 생성이나 결과 획득 등을 수행하기 위한 하나 이상의 애플리케이션도 저장할 수 있으며, 애플리케이션의 구동에 필요한 적어도 하나의 학습 모델 등도 저장하고 있을 수 있다. 여기서, 애플리케이션은 설계자에 의해 직접 작성 및 입력되어 저장부(103)에 저장된 것일 수도 있고, 또는 유선 또는 무선 통신 네트워크를 통해 접속 가능한 유통망(일례로 전자 소프트웨어 유통망(ESD: Electronic Software Distribution)을 통하여 획득 또는 갱신된 것일 수도 있다. 저장부(102)는, 예를 들어, 주기억장치 및 보조기억장치 중 적어도 하나를 포함할 수 있으며, 보조기억장치는, 예를 들어, 플래시 메모리, 솔리드 스테이트 드라이브(SSD), 하드디스크 드라이브(HDD), 디브이디(DVD), SD 카드 및/또는 콤팩트 디스크(CD) 등을 포함할 수 있다.The storage unit 103 is electrically connected to at least one of the
프로세서(110)는 응답 결정 장치(100)의 동작 전반에 필요한 연산, 판단, 처리 및/또는 제어 동작 등을 수행하거나 또는 입력된 질의에 대한 정답을 결정하기 위한 적어도 하나의 동작을 수행하기 위해 마련된 것일 수 있다. 이 경우, 프로세서(110)는 저장부(103)에 저장된 애플리케이션을 구동시켜 소정의 동작을 수행할 수도 있다. 프로세서(110)는, 예를 들어, 중앙 처리 장치(CPU, Central Processing Unit), 마이크로 컨트롤러 유닛(MCU, Micro Controller Unit), 애플리케이션 프로세서(AP, Application Processor), 전자 제어 유닛(ECU, Electronic Controlling Unit) 및/또는 각종 연산 및 제어 처리가 가능한 적어도 반도체 기반 전자 장치 등을 이용하여 구현될 수 있다. 프로세서(110)의 구체적인 동작에 대해선 후술하도록 한다.The
도 2는 프로세서의 일 실시예에 대한 블록도이다.2 is a block diagram of one embodiment of a processor.
도 2에 도시된 바에 의하면, 프로세서(110)는 그래프 생성부(111), 그래프 인코더(112), 텍스트 인코더(117) 및 결과 획득부(119)를 포함할 수 있다. 그래프 생성부(111), 그래프 인코더(112), 텍스트 인코더(117) 및 결과 획득부(119) 중 적어도 둘은 논리적으로 구분되는 것일 수도 있고 물리적으로 구분되는 것일 수도 있다. 물리적으로 구분되는 경우, 그래프 생성부(111), 그래프 인코더(112), 텍스트 인코더(117) 및 결과 획득부(119) 중 적어도 하나는 별도로 분리된 프로세서를 이용하여 구현될 수도 있다.As shown in FIG. 2 , the
입력부(101)를 통해, 문장 등을 포함하는 텍스트로 형성된 질의가 입력되면, 질의는 그래프 생성부(111) 및 텍스트 인코더(117)로 각각 입력될 수 있다. 질의와 더불어 적어도 하나의 선택지가 입력된 경우, 적어도 하나의 선택지는, 질의와 동시에 또는 순차적으로, 그래프 생성부(111) 및 텍스트 인코더(117) 중 적어도 하나로 입력될 수 있다. 그래프 생성부(111)는 입력된 질의를 기반으로 통합 그래프를 생성할 수 있고, 텍스트 인코더(117)는 질의에 대한 의미 표현을 추출할 수 있다.When a query formed of text including sentences is input through the
도 3은 추상적 의미 표현(AMR) 그래프의 일례를 도시한 도면이고, 도 4는 통합 그래프의 일례를 도시한 도면이다.3 is a diagram illustrating an example of an abstract semantic representation (AMR) graph, and FIG. 4 is a diagram illustrating an example of an integrated graph.
구체적으로 그래프 생성부(111)는 도 3에 도시된 바와 같은 문장 형태의 질의(90)가 입력되면, 문장 형태의 질의(90)를 추상적 의미 표상 그래프(91, AMR graph)로 변환할 수 있다. 추상적 의미 표상은 의미론적 표상 언어로, 단어나 문장 등을 구조화된 그래프 형태로 나타내는 기술을 의미한다. 추상적 의미 표상 그래프(91)는, 하나 또는 여러 문장 내의 명제적 의미를 기반으로 하나의 문장 또는 여러 문장을 변환하여 획득한 단일 루트를 가지며 표지가 부착되고 방향성이 존재하는 비순환 그래프(single-rooted, labeled, directed and acyclic graph)를 의미한다. 추상적 의미 표상 그래프(91)에서는 문장(90) 내의 행위(이벤트), 행위자(설명자) 및 행위의 대상(설명되는 대상) 중 적어도 하나가 관계에 따라서 연결되어 표현될 수 있다. 예를 들어, 도 3에 도시된 바와 같이 [소년이 가고 싶다(A boy wants to go)]라는 문장(90)이 입력된 경우, 문장(90)은 이벤트(i0), 행위자(s0) 및 행위 대상(s1)을 포함할 수 있다. 이 경우, 문장(90)에 대응하는 추상적 의미 표상은, 제1 지점(e)으로부터 각각의 지점(p0, p1)으로 향하여 형성된 적어도 하나의 화살표와, 각각의 지점(e, p0, p1)으로부터 구체적인 예시(instance)로 향하여 형성된 적어도 하나의 화살표를 포함하여 형성될 수 있다. 여기서, 제1 지점(e)에서 각각의 지점(p0, p1)으로 향하는 각각의 화살표는, 예를 들어, 행위자(ARG0) 및 행위의 대상(ARG1)으로 연결될 수 있다. 또한, 각각의 지점(e, p0, p1)으로부터 각각의 지점(e, p0, p1)에 대응하는 구체적 예시까지 적어도 하나의 화살표가 더 형성될 수 있다. 예를 들어, 제1 지점(e)에는 문장(90) 내의 이벤트(i0, 일례로 [원한다(want)])로 향하는 화살표가 형성되고, 행위자(ARG0)를 지시하는 화살표의 말단에 위치한 제2 지점(p0)에는 문장(90) 내의 행위자(s0, 일례로 [소년(boy)]로 향하는 화살표가 형성되며, 행위의 대상(ARG1)을 지시하는 화살표의 말단에 위치한 제3 지점(p1)에는 문장(90) 내의 행위 대상(s1, 일례로 [간다(go)]로 향하는 화살표가 형성될 수 있다. 이와 같은 방법으로 적어도 하나의 질의(90)에 대응하는 적어도 하나의 추상적 의미 표상 그래프(91)가 획득될 수 있게 된다. 실시예에 따라, 질의뿐만 아니라 질의에 대한 적어도 하나의 선택지에 대한 추상적 의미 표상 그래프도 함께 생성될 수도 있다.Specifically, when the query 90 in the form of a sentence as shown in FIG. 3 is input, the
또한, 그래프 생성부(111)는 획득한 적어도 하나의 추상적 의미 표상 그래프(91)에 질의에 대한 컨셉넷 그래프를 색인함으로써 도 4에 도시된 바와 같은 통합 그래프(92)를 생성 및 획득할 수 있다. 여기서, 컵셉넷은 의미론적 네트워크(semantic network)로, 보다 구체적으로는 개념(Concept, 명사구, 동사구 또는 형용사 구 등 상호 관련된 자연어구 등)을 노드로 표현하고, 각각의 개념에 대응하는 복수의 노드를 복수의 노드 간의 관계를 나타내는 경로(선분)로 연결하여 네트워크 형태로 표현한 것을 의미한다. 컵셉넷은 소정의 데이터베이스, 일례로 오픈 마인드 상식(OMCS: Open Mind Common Sense) 데이터베이스를 기반으로 생성된 것일 수 있다. 보다 구체적으로 예를 들어, 도 4에 도시된 바를 참조하면, 문장(90) 내의 이벤트(i0)에 대응하여 노드(ni)가 마련되고, 이벤트(i0)에 대한 노드(ni)는, 노드(ni, n0) 상호 간의 관계(ARG0)를 나타내는 경로를 통해 문장(90) 내의 행위자(s0)에 대한 노드(n0)와 연결된다. 또한, 이벤트(i0)에 대한 노드(ni)는, 이벤트(i0)와 특정한 관계를 갖는 단어나 문장(일례로 [요구(demand)])에 대응하는 다른 노드(ni1)에 소정의 경로(IsWayOf)를 통해 연결될 수도 있다. 행위자(s0)에 대한 노드(n0)는, 행위자(s0)와 문장(90) 내의 행위 대상(s1)에 대응하는 노드(n1)와 이들 양자(n0, n1)의 관계를 나타내는 경로(ARG1)를 통해 연결될 수 있다. 이외에도 행위자(s0)에 대한 노드(n0)는 행위자(s0)의 상위 개념의 관계를 갖는 단어나 문장에 대한 노드(n01, 예를 들어 [사람(man)])에 관계(상하위 개념)에 대응하는 경로(IsATypeOF)를 통해 연결되거나, 반의어 관계를 갖는 단어나 문장에 대한 노드(n02, 예를 들어 [소녀(girl)])에 대응하는 경로(Antonym)를 통해 연결되거나, 동의어 관계를 갖는 단어나 문장에 대응하는 노드(n03, 예를 들어 [남자 아이(male child)]) 등에도 동의어에 대응하는 경로(Synonym)로 연결될 수 있다. 마찬가지로 행위의 대상(s1)에 대한 노드(n1) 역시 행위자(s0)에 대한 노드(n0) 이외에도 행위의 대상(s1)과 관련된 소정의 개념(IsRelatedTo, 예를 들어 [떠나다(leave)])에 대한 노드(n10) 등과 연결될 수 있다. 이와 같은 방법에 따라서 질의(90) 및/또는 질의(90)에 대한 적어도 하나의 선택지에 대응하는 적어도 하나의 통합적 그래프(92)가 생성될 수 있게 된다.In addition, the
그래프 생성부(111)는 도 3에 도시된 바와 같이 통합적 그래프(92)를 그래프 인코더(112)로 전달할 수 있다.The
그래픽 인코더(112)는 통합 그래프(92)의 의미 정보들을, 결과 획득부(119)에 의해 처리되는 학습 모델에 임베딩 형태로 입력할 수 있도록 그래프 임베딩을 수행할 수 있다. 임베딩은 학습의 수행 전에 입력 데이터를 적어도 하나의 벡터의 형식으로 변환하는 것을 의미하며, 그래프 임베딩은 그래프 생성부(111)가 획득한 통합적 그래프(92)를 벡터의 형태로 변환하는 것을 의미한다. 이 경우, 획득되는 벡터는 일 이상의 차원으로 이루어진 것일 수 있으며, 벡터 내의 각각의 원소는 수치적으로 표현될 수도 있다.The graphic encoder 112 may perform graph embedding so that semantic information of the
일 실시예에 의하면, 그래픽 인코더(112)는 관계 임베딩 처리부(113), 노드 임베딩 처리부(114), 접합부(115) 및 학습부(116)를 포함할 수 있다.According to an embodiment, the graphic encoder 112 may include a relation embedding processing unit 113 , a node embedding processing unit 114 , a
관계 임베딩 처리부(113)는 각각의 노드(ni, n0, n1)에서 다른 노드(ni, ni1, n0, n01, n02, n03, n1, n10)로의 경로(ARG0, ARG1, IsWayOf, IsATypeOf, Antonym, Synonym, IsRelatedTo) 중 적어도 하나를 검색하여 획득한 후, 각각의 획득한 적어도 하나의 경로를 기반으로 관계 임베딩을 획득할 수 있다. 일 실시예에 의하면, 관계 임베딩 처리부(113)는 각각의 경로로부터 관계 임베딩을 획득하기 위해 소정의 학습 모델을 이용할 수 있다. 이 경우, 각각의 경로는 학습 모델의 입력 값으로 이용될 수 있다. 관계 임베딩 처리부(113)가 이용하는 학습 모델은, 예를 들어, 장단기 메모리(LSTM: Long short term memory), 순환 신경망(RNN: Recurrent Neural Network) 또는 게이트 처리된 순환 유닛(GRU: Gated Recurrent Unit) 등과 같이 설계자가 임베딩을 위해 고려 가능한 적어도 하나의 학습 모델을 포함할 수 있다. 관계 임베딩은 접합부(115)로 전달될 수 있다.The relationship embedding processing unit 113 is configured to provide a path (ARG0, ARG1, IsWayOf, IsATypeOf, Antonym, Synonym, IsRelatedTo), after searching for and obtaining at least one, relation embedding may be obtained based on each obtained at least one path. According to an embodiment, the relation embedding processing unit 113 may use a predetermined learning model to obtain relation embeddings from each path. In this case, each path may be used as an input value of the learning model. The learning model used by the relation embedding processing unit 113 is, for example, a long short term memory (LSTM), a recurrent neural network (RNN), or a gated recurrent unit (GRU), etc. Likewise, the designer may include at least one learning model that can be considered for embedding. The relationship embedding may be passed to the
노드 임베딩 처리부(114)는, 각각의 노드(ni, n0, n1)를 기반으로 각각의 노드(ni, n0, n1)에 대응하는 노드 임베딩을 획득할 수 있다. 일 실시예에 의하면, 노드 임베딩 처리부(114)는 노드 임베딩의 획득을 위해 단어 표상을 위한 전역적 벡터(GloVe: Global Vectors for Word Representation) 방법을 이용할 수도 있다. 노드 임베딩의 획득은, 실시예에 따라 관계 임베딩의 획득과 동시에, 선행하여 또는 후행하여 수행될 수 있고, 관계 임베딩의 획득과 독립적으로 수행될 수도 있다. 노드 임베딩은 접합부(115)로 전달될 수 있다.The node embedding processing unit 114 may obtain a node embedding corresponding to each node ni, n0, n1 based on each node ni, n0, n1. According to an embodiment, the node embedding processing unit 114 may use a Global Vectors for Word Representation (GloVe) method to obtain node embeddings. Acquisition of the node embedding may be performed simultaneously with, preceding, or following the obtaining of the relation embedding according to an embodiment, or may be performed independently of the obtaining of the relation embedding. The node embedding may be passed to the
접합부(115)는 관계 임베딩 처리부(113)가 출력한 관계 임베딩 및 노드 임베딩 처리부(114)가 출력한 노드 임베딩을 수신하고 관계 임베딩 및 노드 임베딩을 접합(concatenation)시켜 접합된 임베딩을 획득할 수 있다. 접합된 임베딩은 학습부(116)로 전달될 수 있다.The
학습부(116)는 접합된 임베딩에 대해 학습을 수행하여 그래프 임베딩을 획득할 수 있다. 구체적으로 학습부(116)는 접합된 임베딩을 입력 값으로 하여 학습 모델을 처리하고, 학습 모델의 처리 결과에 따라서 그래프 임베딩을 획득할 수 있다. 여기서, 학습 모델은, 예를 들어, 자기 집중(Self-Attention)을 채용한 학습 모델, 일례로 트랜스포머(transformer) 모델을 포함할 수 있다.The
텍스트 인코더(117)는 입력부(101)로부터 질의(90)를 수신하고 수신한 질의(90)에 대한 언어 임베딩을 획득할 수 있다. 필요에 따라, 텍스트 인코더(117)는 질의(90)에 대해 마련된 적어도 하나의 선택지를 더 수신한 후, 수신한 적어도 하나의 선택지에 대한 언어 임베딩도 획득할 수 있다. 이 경우, 텍스트 인코더(117)는 사전에 훈련된 적어도 하나의 학습 모델을 이용하여 질의(90)나 선택지에 대한 언어 임베딩을 획득할 수 있으며, 실시예에 따라 질의(90) 및 선택지에 동일한 학습 모델을 적용하여 각각에 대한 언어 임베딩을 획득할 수도 있고, 각각에 서로 상이한 학습 모델을 적용하여 각각에 대한 언어 임베딩을 획득할 수도 있다. 이 경우, 이용되는 학습 모델은, 예를 들어, 버트(BERT: Bidirectional Encoder Representations from Transformers)나 엑스엘넷(XLNet) 등을 포함할 수 있다. 실시예에 따라서, 질의(90) 및 질의(90)에 관한 선택지에 대한 임베딩을 함께 얻기 위해, 텍스트 인코더(117)는 질의(90) 및 선택지를 구분하기 위한 식별자를 질의(90) 및 선택지 사이에 삽입하여 결합한 후 학습 모델에 입력할 수도 있다. 예를 들어, 학습 모델로 버트를 이용하는 경우, 질의(90) 및 선택지를 결합하되, 질의(90) 및 선택지 사이에 문장을 구분짓는 [SEP] 토큰을 삽입한 후, 이를 버트에 입력함으로써 의미 표현을 추출하고, 이에 따라 언어 임베딩을 획득할 수도 있다. 예시의 경우, 질의(90)의 전단에는 문장의 시작을 나타내기 위한 [CLS] 토큰이 더 부가될 수도 있다.The
상술한 바와 같이 획득된 그래프 임베딩 및 언어 임베딩은 결과 획득부(119)로 전달될 수 있다. 결과 획득부(119)는 그래프 임베딩 및 언어 임베딩을 접합시킨 후, 학습 모델을 기반으로 질의에 대해 정답으로 판단될 수 있는 응답을 결정할 수 있다. 예를 들어, 결과 획득부(119)는 적어도 하나의 선택지 중에서 질의에 대해 정답으로 인정되는 선택지를 하나 이상 선택하여 결정할 수 있다. 결과 획득부(119)는 학습 모델을 이용하여 수행될 수 있다. 학습 모델은 적어도 하나의 선형 층을 포함하고 있을 수 있다. 필요에 따라 학습 모델은 정규화된 지수 함수(normalized exponential function)인 소프트맥스(Softmax) 함수를 포함하여 마련된 것일 수도 있다. 실시예에 따라, 결과 획득부(119)의 학습 모델은 트랜스포머, 장단기메모리, 순환 신경망, 심층 신경망(DNN: Deep Neural Network), 콘볼루션 신경망(CNN: Convolution Neural Network), 심층 신뢰 신경망(DBN: Deep Belief Network) 또는 심층 강화 학습(Deep reinforcement learning) 모델 등을 포함할 수도 있다.The graph embedding and language embedding obtained as described above may be transmitted to the
결과 획득부(119)가 획득한 결과(일례로 정답인 응답이나 적어도 하나의 선택지 중 정답으로 인정된 적어도 하나의 선택지)는 출력부(102)로 전달될 수 있으며, 출력부(120)는 이를 시각적 또는 청각적으로 외부로 출력할 수 있다.The result obtained by the result acquisition unit 119 (for example, at least one of the correct answers or at least one option recognized as the correct answer) may be transmitted to the output unit 102, and the output unit 120 It can be output visually or audibly.
일 실시예에 의하면, 상술한 프로세서(110), 그래프 생성부(111) 또는 그래프 인코더(112)의 동작 과정에서 입력된 질의의 해결을 위해 그래프의 어느 부분이 이용되는지를 확인하기 위해 주의 집중 가중치(Attention weight)가 더 이용될 수도 있다. 주의 집중 가중치를 부가하는 경우, 프로세서(110)의 동작을 해석할 수 있게 되며, 이에 따라 질의에 대한 응답이 어떠한 과정으로 또는 어떠한 이유로 결정되었는지 보다 용이하게 해석 및 설명할 수 있게 된다.According to an embodiment, the attention-focusing weight is used to determine which part of the graph is used to resolve a query input during the operation of the above-described
이하, 도 5를 참조하여 질의에 대한 응답 결정 시스템의 일 실시예에 대해서 설명하도록 한다.Hereinafter, an embodiment of a system for determining a response to a query will be described with reference to FIG. 5 .
도 5는 질의에 대한 응답 결정 시스템의 일 실시예에 대한 도면이다.5 is a diagram of an embodiment of a system for determining a response to a query;
도 5에 도시된 바에 의하면, 응답 결정 시스템(200)은 일 실시예에 있어서 적어도 하나의 단말 장치(210)와, 적어도 하나의 단말 장치(210)와 유선 및/또는 무선 통신 네트워크(201)를 통해 통신 가능하게 연결된 서버 장치(220)를 포함할 수 있다.As shown in FIG. 5 , the
적어도 하나의 단말 장치(210)는 사용자 또는 설계자 등으로부터 질의를 수신하거나 또는 질의와 질의에 대응하는 적어도 하나의 선택지를 수신받을 수 있다. 일 실시예에 의하면, 적어도 하나의 단말 장치(210)는, 수신한 질의를 서버 장치(220)로 전송하거나 또는 질의 및 선택지를 서버 장치(220)로 전송할 수도 있다. 다른 실시예에 의하면, 적어도 하나의 단말 장치(210)는 상술한 그래프 생성부(110), 그래프 인코더(112) 및 텍스트 인코더(117) 중 적어도 하나의 동작을 수행하고, 동작에 따른 결과(예를 들어, 통합 그래프(92), 그래프 임베딩 및 언어 임베딩 중 적어도 하나)를 서버 장치(220)로 전송할 수도 있다. 적어도 하나의 단말 장치(210)는 서버 장치(220)가 전송한 결과(예를 들어, 질의에 대해 정답으로 판단된 응답 또는 적어도 하나의 선택지 중 정답으로 판단된 선택지에 대한 정보 등)을 수신할 수도 있으며, 수신 결과를 디스플레이나 스피커 장치 등을 통해 외부로 출력할 수도 있다. 적어도 하나의 단말 장치(210)는, 예를 들어, 인공 지능 응답 장치, 스마트 폰, 태블릿 피씨, 스마트 시계, 디지털 텔레비전, 데스크톱 컴퓨터, 랩톱 컴퓨터, 두부 장착형 디스플레이 장치, 내비게이션 장치, 휴대용 게임기, 가전 기기, 로봇 및/또는 이외 정보의 입력 및 서버 장치(220)와의 통신이 가능한 소정의 전자 장치를 포함할 수 있다.The at least one
서버 장치(220)는 단말 장치(210)로부터 질의를 수신하거나, 질의 및 선택지를 수신하거나, 또는 단말 장치(210)의 연산 처리 결과(예를 들어, 통합 그래프(92), 그래프 임베딩 및 언어 임베딩 중 적어도 하나 등)을 수신하고, 수신한 데이터에 따라서 적절한 처리 동작을 수행하여 결과(예를 들어, 질의에 대해 정답으로 판단된 응답 및/또는 적어도 하나의 선택지 중 정답으로 판단된 선택지를 포함하는 응답 등)를 획득할 수 있다. 서버 장치(220)는 상술한 결과 획득부(119)의 동작을 수행할 수도 있고, 단말 장치(210)로부터 수신한 데이터의 종류에 따라서, 상술한 그래프 생성부(110), 그래프 인코더(112) 및 텍스트 인코더(117) 중 적어도 하나의 동작을 더 수행할 수도 있다. 서버 장치(220)는 하나 또는 둘 이상의 서버용 컴퓨팅 장치를 이용하여 구현될 수도 있다. 둘 이상의 서버용 컴퓨터 장치를 이용하여 구현된 경우, 각각의 서버용 컴퓨터 장치는 서로 동일한 동작을 수행할 수도 있고, 서로 상이한 동작을 수행할 수도 있다. 후자의 경우, 예를 들어, 하나의 서버용 컴퓨터는 통합 그래프 생성 및 그래프 임베딩 획득 동작을 수행하고, 다른 서버용 컴퓨터는 언어 임베딩 획득 및 최종 결과 획득 동작 등을 수행하도록 설계될 수도 있다. 이외에도 서버 장치(220)는 데스크톱 컴퓨터, 랩톱 컴퓨터 또는 셋톱 박스 등을 이용하여 구현될 수도 있다.The
이하, 도 6을 참조하여 질의에 대한 응답 결정 방법의 일 실시예를 설명하도록 한다.Hereinafter, an embodiment of a method for determining a response to a query will be described with reference to FIG. 6 .
도 6은 질의에 대한 응답 결정 방법의 일 실시예에 대한 흐름도이다.6 is a flowchart of an embodiment of a method for determining a response to a query.
도 6에 도시된 응답 결정 방법의 일 실시예에 의하면, 먼저 질의가 입력될 수 있다(300). 이 경우, 질의와 더불어 질의에 대한 적어도 하나의 선택지도 입력될 수 있되, 적어도 하나의 선택지는 질의에 대해 정답인 선택지를 적어도 하나 포함할 수 있다.According to an embodiment of the method for determining a response shown in FIG. 6 , a query may be input first ( 300 ). In this case, at least one option for the query may be input together with the query, and the at least one option may include at least one option that is the correct answer for the query.
질의가 입력되면, 질의에 대한 통합 그래프가 생성되거나 또는 질의 및 선택지 각각에 대한 통합 그래프가 생성될 수 있다(302 내지 306). 통합 그래프의 생성은, 일 실시예에 의하면, 질의나 선택지를 변환하여 추상적 의미 표상 그래프를 획득하고(302), 획득한 추상적 의미 표상 그래프에 컨셉넷 그래프를 색인하여(304), 최종적으로 통합 그래프를 획득할 수도 있다(306).When a query is input, an integrated graph for the query may be generated or an integrated graph for each of the query and the options may be generated ( 302 to 306 ). According to one embodiment, the generation of the integrated graph is obtained by converting a query or a choice to obtain an abstract semantic representation graph (302), indexing the conceptnet graph to the obtained abstract semantic representation graph (304), and finally the integrated graph may be obtained (306).
통합 그래프가 획득되면, 통합 그래프에 대한 그래프 임베딩이 획득될 수 있다(308 내지 312). 구체적으로 그래프 임베딩의 획득은, 통합 그래프에 대한 관계 임베딩 및 노드 임베딩을 각각 획득한 후(308), 획득한 관계 임베딩 및 노드 임베딩을 접합하여 접합된 임베딩을 획득하고(310), 획득한 접합된 임베딩에 대한 학습을 수행함으로써 수행될 수 있다(312). 여기서, 관계 임베딩의 획득은, 실시예에 따라, 장단기 메모리, 순환 신경망 또는 게이트 처리된 순환 유닛 등의 학습 모델을 이용하여 수행될 수 있고, 노드 임베딩의 획득은 단어 표상을 위한 전역적 벡터 방법 등을 이용하여 수행될 수 있다. 또한, 접합된 임베딩에 대한 학습은, 트랜스포머와 같은 자기 집중을 채용한 학습 모델을 이용하여 수행될 수도 있다.Once the integrated graph is obtained, graph embeddings for the integrated graph may be obtained (308-312). Specifically, the acquisition of the graph embedding is performed after acquiring the relationship embedding and the node embedding for the integrated graph (308), respectively, and then joining the acquired relationship embedding and the node embedding to obtain the jointed embedding (310), and the obtained jointed embedding is obtained (310). It may be performed by performing learning on embedding (312). Here, the acquisition of the relation embedding may be performed using a learning model such as a long-term memory, a recurrent neural network, or a gated cyclic unit, according to an embodiment, and the acquisition of the node embedding is a global vector method for word representation, etc. can be performed using In addition, learning about the spliced embedding may be performed using a learning model employing magnetic concentration, such as a transformer.
한편, 통합 그래프의 획득 내지 그래프 임베딩 획득(302 내지 312)과 독립적으로 또는 비독립적으로 언어 임베딩 처리(320)가 더 수행될 수 있다. 언어 임베딩 처리(320)는, 예를 들어, 버트나 엑스엘넷 등과 같은 학습 모델을 기반으로 수행 가능하다. 언어 임베딩 처리(320)에 따라 언어 임베딩이 획득될 수 있다.Meanwhile, the
그래프 임베딩 및 언어 임베딩이 획득되면, 그래픽 임베딩 및 언어 임베딩이 접합될 수 있다(330).Once the graph embedding and the language embedding are obtained, the graphics embedding and the language embedding may be joined ( 330 ).
그래픽 임베딩 및 언어 임베딩이 접합된 결과는 적어도 하나의 학습 모델에 입력될 수 있으며, 학습 모델의 처리 결과에 따라 질의에 대한 응답(즉, 정답인 응답)이 결정될 수 있다(332). 여기서, 학습 모델은 적어도 하나의 선형 층을 포함할 수 있으며, 실시예에 따라서, 소프트맥스 함수를 포함하여 구현된 것일 수도 있다. 또한, 그래픽 임베딩 및 언어 임베딩이 접합된 결과가 입력되는 적어도 하나의 학습 모델은, 트랜스포머나, 장단기 메모리 등을 이용하여 구현될 수도 있다.A result of combining graphic embedding and language embedding may be input to at least one learning model, and a response to a query (ie, a correct answer) may be determined according to a processing result of the learning model ( 332 ). Here, the learning model may include at least one linear layer, and according to an embodiment, it may be implemented including a softmax function. In addition, at least one learning model to which a result of combining graphic embedding and language embedding is input may be implemented using a transformer, a short-term memory, or the like.
상술한 실시예에 따른 질의에 대한 응답 결정 방법은, 컴퓨터 장치에 의해 구동될 수 있는 프로그램의 형태로 구현될 수 있다. 여기서 프로그램은, 프로그램 명령, 데이터 파일 및 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 프로그램은 기계어 코드나 고급 언어 코드를 이용하여 설계 및 제작된 것일 수 있다. 프로그램은 상술한 방법을 구현하기 위하여 특별히 설계된 것일 수도 있고, 컴퓨터 소프트웨어 분야에서 통상의 기술자에게 기 공지되어 사용 가능한 각종 함수나 정의를 이용하여 구현된 것일 수도 있다. 또한, 여기서, 컴퓨터 장치는, 프로그램의 기능을 실현 가능하게 하는 프로세서나 메모리 등을 포함하여 구현된 것일 수 있으며, 필요에 따라 통신 장치를 더 포함할 수도 있다.The method for determining an answer to a query according to the above-described embodiment may be implemented in the form of a program that can be driven by a computer device. Here, the program may include program instructions, data files, and data structures alone or in combination. The program may be designed and manufactured using machine code or high-level language code. The program may be specially designed to implement the above-described method, or may be implemented using various functions or definitions that are known and available to those skilled in the art of computer software. Also, here, the computer device may be implemented including a processor or memory that enables the function of the program to be realized, and may further include a communication device if necessary.
상술한 질의에 대한 응답 결정 방법을 구현하기 위한 프로그램은, 컴퓨터에 의해 판독 가능한 기록 매체에 기록될 수 있다. 컴퓨터에 의해 판독 가능한 기록 매체는, 예를 들어, 솔리드 스테이트 드라이브(SSD), 롬, 램 또는 플래시 메모리 등과 같은 반도체 저장 장치, 하드 디스크나 플로피 디스크 등과 같은 자기 디스크 저장 매체, 콤팩트 디스크나 디브이디 등과 같은 광 기록 매체, 플롭티컬 디스크 등과 같은 자기-광 기록 매체 및 자기 테이프 등 컴퓨터 등의 호출에 따라 실행되는 특정 프로그램을 저장 가능한 적어도 한 종류의 물리적 장치를 포함할 수 있다.A program for implementing the above-described method for determining an answer to a query may be recorded in a computer-readable recording medium. The computer-readable recording medium is, for example, a semiconductor storage device such as a solid state drive (SSD), ROM, RAM or flash memory, a magnetic disk storage medium such as a hard disk or floppy disk, a compact disk or DVD, etc. It may include at least one type of physical device capable of storing a specific program executed in response to a call of a computer, such as an optical recording medium, a magneto-optical recording medium such as a floppy disk, and a magnetic tape.
이상 질의에 대한 응답 결정 장치, 질의에 대한 응답 결정 방법 및 질의에 대한 응답 결정 시스템에 대해 설명하였으나, 질의에 대한 응답 결정 장치, 방법 및 시스템은 오직 상술한 실시예에 한정되는 것은 아니다. 해당 기술 분야에서 통상의 지식을 가진 자가 상술한 실시예를 기초로 수정 및 변형하여 구현 가능한 다양한 장치, 방법이나 시스템 역시 상술한 질의에 대한 응답 결정 장치, 방법 및 시스템의 일 실시예로 인정될 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성 요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나 다른 구성 요소 또는 균등물에 의하여 대치되거나 또는 치환되더라도 상술한 질의에 대한 응답 결정 장치, 질의에 대한 응답 결정 방법 및 질의에 대한 응답 결정 시스템의 일 실시예가 될 수 있다.The apparatus for determining a response to a query, a method for determining a response to a query, and a system for determining a response to a query have been described above, but the apparatus, method, and system for determining a response to a query are not limited to the above-described embodiment. Various devices, methods or systems that can be implemented by those skilled in the art by modifying and modifying based on the above-described embodiments may also be recognized as an embodiment of the device, method, and system for determining a response to the above-mentioned inquiry. there is. For example, the described techniques are performed in an order different from the described method, and/or the described components of the system, structure, apparatus, circuit, etc., are combined or combined in a different form than the described method, or other components or Even if it is replaced or substituted by equivalents, it may be an embodiment of the above-described apparatus for determining a response to a query, a method for determining a response to a query, and a system for determining a response to a query.
100: 응답 결정 장치
101: 입력부
102: 출력부
103: 저장부
110: 프로세서
111: 그래프 생성부
112: 그래프 인코더
113: 관계 임베딩 처리부
114: 노드 임베딩 처리부
115: 접합부
116: 학습부
117: 텍스트 인코더
119: 결과 획득부 100: response determining device 101: input unit
102: output unit 103: storage unit
110: processor 111: graph generating unit
112: graph encoder 113: relation embedding processing unit
114: node embedding processing unit 115: junction
116: learning unit 117: text encoder
119: result acquisition unit
Claims (10)
상기 그래프에 대한 그래프 임베딩을 생성하는 그래프 인코더;
상기 질의에 대한 언어 임베딩을 생성하는 텍스트 인코더; 및
상기 그래프 임베딩 및 상기 언어 임베딩을 접합한 후, 학습을 수행하여 상기 질의에 대한 응답을 결정하는 결과 획득부;를 포함하는 응답 결정 장치.a graph generating unit that generates an integrated graph for the query;
a graph encoder for generating graph embeddings for the graph;
a text encoder for generating language embeddings for the query; and
and a result obtaining unit configured to determine a response to the query by performing learning after joining the graph embedding and the language embedding.
상기 그래프 생성부는, 질의를 추상적 의미 표현 그래프로 변환하고, 질의에 대한 컨셉넷 그래프를 색인함으로써 상기 통합 그래프를 생성하는 응답 결정 장치.According to claim 1,
The graph generating unit converts a query into an abstract semantic expression graph and generates the integrated graph by indexing the conceptnet graph for the query.
상기 그래프 인코더는, 상기 통합 그래프의 적어도 하나의 경로를 기반으로 관계 임베딩을 획득하고, 상기 통합 그래프의 적어도 하나의 노드를 기반으로 노드 임베딩을 획득하고, 상기 관계 임베딩 및 노드 임베딩을 접합하여 접합된 임베딩을 획득하는 응답 결정 장치.According to claim 1,
The graph encoder obtains a relation embedding based on at least one path of the integrated graph, obtains a node embedding based on at least one node of the integrated graph, and splices the relation embedding and the node embedding. A response determining device for obtaining an embedding.
상기 그래프 인코더는, 접합된 임베딩을 기반으로 학습을 수행하여 상기 그래프 임베딩을 획득하는 응답 결정 장치.4. The method of claim 3,
The graph encoder performs learning based on the joint embedding to obtain the graph embedding.
상기 텍스트 인코더는, 학습 모델을 기반으로 질의에 대한 언어 임베딩을 획득하되, 상기 학습 모델은 버트 또는 엑스엘넷을 포함하는 응답 결정 장치.According to claim 1,
The text encoder obtains a language embedding for a query based on a learning model, wherein the learning model includes a vert or XLNet.
상기 단말 장치와 통신 가능하게 연결되고 상기 질의에 대응하는 응답을 획득하는 서버 장치;를 포함하되,
상기 단말 장치 및 상기 서버 장치 중 적어도 하나는, 질의에 대해 통합 그래프를 생성하거나, 상기 그래프에 대한 그래프 임베딩을 생성하거나, 상기 질의에 대한 언어 임베딩을 생성하고,
상기 서버 장치는 상기 그래프 임베딩 및 상기 언어 임베딩을 접합한 후, 학습을 수행하여 상기 질의에 대한 응답을 결정하는 응답 결정 시스템.a terminal device for receiving a query; and
A server device communicatively connected to the terminal device and configured to obtain a response corresponding to the query; including,
At least one of the terminal device and the server device generates an integrated graph for a query, a graph embedding for the graph, or a language embedding for the query,
and the server device joins the graph embedding and the language embedding, and then performs learning to determine a response to the query.
상기 그래프에 대한 그래프 임베딩을 생성하는 단계;
상기 질의에 대한 언어 임베딩을 생성하는 단계;
상기 그래프 임베딩 및 상기 언어 임베딩을 접합하는 단계; 및
학습을 수행하여 상기 질의에 대한 응답을 결정하는 단계;를 포함하는 응답 결정 방법.generating an aggregation graph for the query;
generating a graph embedding for the graph;
generating a language embedding for the query;
concatenating the graph embedding and the language embedding; and
Response determination method comprising; determining a response to the query by performing learning.
상기 질의에 대해 통합 그래프를 생성하는 단계는,
질의를 추상적 의미 표현 그래프로 변환하고, 질의에 대한 컨셉넷 그래프를 색인함으로써 통합 그래프를 생성하는 단계;를 포함하는 응답 결정 방법.8. The method of claim 7,
The step of generating an integrated graph for the query comprises:
A method for determining a response, comprising: converting a query into an abstract semantic expression graph, and indexing the ConceptNet graph for the query to generate an integrated graph.
상기 그래프에 대한 그래프 임베딩을 생성하는 단계는,
상기 통합 그래프의 적어도 하나의 경로를 기반으로 관계 임베딩을 획득하는 단계;
상기 통합 그래프의 적어도 하나의 노드를 기반으로 노드 임베딩을 획득하는 단계;
상기 관계 임베딩 및 노드 임베딩을 접합하여 접합된 임베딩을 획득하는 단계; 및
접합된 임베딩을 기반으로 학습을 수행하여 상기 그래프 임베딩을 획득하는 단계;를 포함하는 응답 결정 방법.8. The method of claim 7,
Creating a graph embedding for the graph includes:
obtaining relationship embeddings based on at least one path of the integrated graph;
obtaining node embeddings based on at least one node of the integrated graph;
concatenating the relation embedding and the node embedding to obtain a joined embedding; and
A response determination method comprising a; performing learning based on the joint embedding to obtain the graph embedding.
상기 질의에 대한 언어 임베딩을 생성하는 단계는,
학습 모델을 기반으로 질의에 대한 언어 임베딩을 획득하는 단계;를 포함하되, 상기 학습 모델은 버트 또는 엑스엘넷을 포함하는 응답 결정 방법.8. The method of claim 7,
The step of generating a language embedding for the query comprises:
Acquiring language embeddings for a query based on a learning model; wherein the learning model includes a vert or XLNet.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200111846A KR102526501B1 (en) | 2020-09-02 | 2020-09-02 | Apparatus, method and system for determining answer regarding question |
PCT/KR2021/011861 WO2022050724A1 (en) | 2020-09-02 | 2021-09-02 | Device, method, and system for determining responses to inquiries |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200111846A KR102526501B1 (en) | 2020-09-02 | 2020-09-02 | Apparatus, method and system for determining answer regarding question |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220030088A true KR20220030088A (en) | 2022-03-10 |
KR102526501B1 KR102526501B1 (en) | 2023-04-27 |
Family
ID=80491237
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200111846A KR102526501B1 (en) | 2020-09-02 | 2020-09-02 | Apparatus, method and system for determining answer regarding question |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR102526501B1 (en) |
WO (1) | WO2022050724A1 (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160102871A (en) | 2015-02-23 | 2016-08-31 | 건국대학교 산학협력단 | Method of constructing meta knowledge based database for user qa |
KR20170043582A (en) | 2015-05-21 | 2017-04-21 | 바이두 유에스에이 엘엘씨 | Multilingual image question answering |
KR20190074828A (en) | 2017-12-20 | 2019-06-28 | 주식회사 솔트룩스 | Automatic Question-Answering system having mutiple Question-Answering modules |
KR102039294B1 (en) | 2019-03-25 | 2019-10-31 | 김보언 | Method, apparatus and program for obtaining place of the invention trips through answer based on artificial intelligence |
US20200057946A1 (en) * | 2018-08-16 | 2020-02-20 | Oracle International Corporation | Techniques for building a knowledge graph in limited knowledge domains |
KR20200062521A (en) * | 2018-11-27 | 2020-06-04 | 한국과학기술원 | Apparatus and method for answering question based on conceptual graph |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101686068B1 (en) * | 2015-02-24 | 2016-12-14 | 한국과학기술원 | Method and system for answer extraction using conceptual graph matching |
US10467268B2 (en) * | 2015-06-02 | 2019-11-05 | International Business Machines Corporation | Utilizing word embeddings for term matching in question answering systems |
KR20180092808A (en) * | 2017-02-08 | 2018-08-20 | 한국과학기술원 | System for query response based on conceptual graph and method for an efficient context search using the same |
-
2020
- 2020-09-02 KR KR1020200111846A patent/KR102526501B1/en active IP Right Grant
-
2021
- 2021-09-02 WO PCT/KR2021/011861 patent/WO2022050724A1/en active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160102871A (en) | 2015-02-23 | 2016-08-31 | 건국대학교 산학협력단 | Method of constructing meta knowledge based database for user qa |
KR20170043582A (en) | 2015-05-21 | 2017-04-21 | 바이두 유에스에이 엘엘씨 | Multilingual image question answering |
KR20190074828A (en) | 2017-12-20 | 2019-06-28 | 주식회사 솔트룩스 | Automatic Question-Answering system having mutiple Question-Answering modules |
US20200057946A1 (en) * | 2018-08-16 | 2020-02-20 | Oracle International Corporation | Techniques for building a knowledge graph in limited knowledge domains |
KR20200062521A (en) * | 2018-11-27 | 2020-06-04 | 한국과학기술원 | Apparatus and method for answering question based on conceptual graph |
KR102039294B1 (en) | 2019-03-25 | 2019-10-31 | 김보언 | Method, apparatus and program for obtaining place of the invention trips through answer based on artificial intelligence |
Non-Patent Citations (2)
Title |
---|
이동헌 외 6인, BERT를 이용한 한국어 기계 독해, 2019년 한국컴퓨터종합학술대회 논문집, pp. 557-559, 2019.06.* * |
최병민, 상식 질의응답 모델을 위한 알버트 기반 텍스트 인코더와 지식 그래프 인코더의 결합, 서울대학교 대학원 컴퓨터공학부 공학석사 학위논문, 2020.08. 1부.* * |
Also Published As
Publication number | Publication date |
---|---|
WO2022050724A1 (en) | 2022-03-10 |
KR102526501B1 (en) | 2023-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11568855B2 (en) | System and method for defining dialog intents and building zero-shot intent recognition models | |
CN108846130B (en) | Question text generation method, device, equipment and medium | |
WO2019200923A1 (en) | Pinyin-based semantic recognition method and device and human-machine conversation system | |
US20170206797A1 (en) | Educational teaching system and method utilizing interactive avatars with learning manager and authoring manager functions | |
US9805718B2 (en) | Clarifying natural language input using targeted questions | |
CN108763535B (en) | Information acquisition method and device | |
US11769018B2 (en) | System and method for temporal attention behavioral analysis of multi-modal conversations in a question and answer system | |
WO2007087682A1 (en) | Human-like response emulator | |
JP2022039973A (en) | Method and apparatus for quality control, electronic device, storage medium, and computer program | |
Nguyen et al. | Ontology-based integration of knowledge base for building an intelligent searching chatbot. | |
CN110678882A (en) | Selecting answer spans from electronic documents using machine learning | |
CN116860949A (en) | Question-answering processing method, device, system, computing equipment and computer storage medium | |
CN112232066A (en) | Teaching outline generation method and device, storage medium and electronic equipment | |
CN115394321A (en) | Audio emotion recognition method, device, equipment, storage medium and product | |
CN112069813B (en) | Text processing method, device, equipment and computer readable storage medium | |
KR102526501B1 (en) | Apparatus, method and system for determining answer regarding question | |
CN114970666B (en) | Spoken language processing method and device, electronic equipment and storage medium | |
CN116662496A (en) | Information extraction method, and method and device for training question-answering processing model | |
CN116186219A (en) | Man-machine dialogue interaction method, system and storage medium | |
CN111401069A (en) | Intention recognition method and intention recognition device for conversation text and terminal | |
WO2019026716A1 (en) | Information processing device and information processing method | |
CN115130461A (en) | Text matching method and device, electronic equipment and storage medium | |
Dsouza et al. | Advancement in communication using natural language based videobot system | |
CN115408500A (en) | Question-answer consistency evaluation method and device, electronic equipment and medium | |
CN112560431A (en) | Method, apparatus, device, storage medium, and computer program product for generating test question tutoring information |
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 |