KR20230077588A - Method of classifying intention of various question and searching answers of financial domain based on financial term language model and system impelemting thereof - Google Patents

Method of classifying intention of various question and searching answers of financial domain based on financial term language model and system impelemting thereof Download PDF

Info

Publication number
KR20230077588A
KR20230077588A KR1020220020842A KR20220020842A KR20230077588A KR 20230077588 A KR20230077588 A KR 20230077588A KR 1020220020842 A KR1020220020842 A KR 1020220020842A KR 20220020842 A KR20220020842 A KR 20220020842A KR 20230077588 A KR20230077588 A KR 20230077588A
Authority
KR
South Korea
Prior art keywords
financial
processor
dictionary
learning
language model
Prior art date
Application number
KR1020220020842A
Other languages
Korean (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 아일리스프런티어 주식회사
Publication of KR20230077588A publication Critical patent/KR20230077588A/en

Links

Images

Classifications

    • 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/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • 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/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • 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/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/232Orthographic correction, e.g. spell checking or vowelisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • 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
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

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

Abstract

본 발명은 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 방법 및 시스템에 관한 것으로 본 발명의 일 실시예에 의한 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 방법은 시스템의 프로세서가 제1입력 데이터를 이용하여 비지도학습 기반 개체명을 추출하는 단계와 프로세서가 추출한 개체명을 시스템의 데이터베이스에 저장하는 단계와 프로세서가 데이터베이스에 저장된 개체명을 제1입력 데이터 또는 제2입력 데이터의 전처리된 결과에 적용하여 토크나이징을 수행하는 단계와 프로세서가 토크나이징된 결과에 기반하여 금융용어 사전을 포함한 언어 모델을 구축하여 데이터베이스에 저장하는 단계를 포함한다. The present invention relates to a method and system for classifying intentions for various queries in a financial domain and retrieving answers based on a financial terminology model, and in relation to a financial terminology language model according to an embodiment of the present invention. A method of classifying intentions and searching for answers to various queries includes extracting, by a processor of the system, an entity name based on unsupervised learning using first input data, and storing the entity name extracted by the processor in a database of the system. and a processor performing tokenization by applying the object name stored in the database to the preprocessed result of the first input data or the second input data, and a language model including a dictionary of financial terms based on the result of the tokenization by the processor It includes the step of constructing and storing in a database.

Figure P1020220020842
Figure P1020220020842

Description

금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 방법 및 시스템{METHOD OF CLASSIFYING INTENTION OF VARIOUS QUESTION AND SEARCHING ANSWERS OF FINANCIAL DOMAIN BASED ON FINANCIAL TERM LANGUAGE MODEL AND SYSTEM IMPELEMTING THEREOF}METHOD OF CLASSIFYING INTENTION OF VARIOUS QUESTION AND SEARCHING ANSWERS OF FINANCIAL DOMAIN BASED ON FINANCIAL TERM LANGUAGE MODEL AND SYSTEM IMPELEMTING THEREOF }

본 발명은 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 방법 및 시스템에 관한 것이다.The present invention relates to a method and system for classifying intentions for various queries in the financial domain and retrieving answers based on a financial term language model.

금융과 관련하여 정보를 제공하는 영역은 일반 지식 영역과 달리 전문적인 용어와 약어들을 처리하는 기술이 필요하다. 특히, 다양한 기사와 보고서 등은 양질의 금융 정보를 제공하므로 이를 토대로 하여 금융 정보를 효과적으로 제공하는 것이 필요하다. Unlike the general knowledge area, the area that provides information related to finance requires skills to process specialized terms and abbreviations. In particular, since various articles and reports provide high-quality financial information, it is necessary to effectively provide financial information based on them.

종래에 챗봇을 이용하여 지식 정보를 제공하건 지식 정보에 대한 질의 응답을 제공하는 기술은 형태소나 단어 패턴을 기반으로 지식을 검색하기 때문에, 학습 데이터에 없는 새로운 질의에 대해서는 답변을 제공할 수 없었으며, 데이터베이스에 한정된 정보만을 제공하는 한계가 있었다. Conventionally, technology for providing knowledge information using chatbots or providing query responses for knowledge information searches for knowledge based on morphemes or word patterns, so it could not provide answers to new queries that are not in the training data. However, there was a limitation in providing only limited information to the database.

이에, 금융에 특화된 용어를 기반으로 정보를 처리하고 질문의 의도를 분류하여 답변을 제공하는 방안이 요청된다. Accordingly, a method of processing information based on terms specific to finance and classifying the intention of a question to provide an answer is requested.

본 명세서는 응용 도메인 특화 사전학습 언어모델의 학습 및 해당 모델을 이용한 기계학습 기반의 분류 모델과 기계 독해 모델을 도입한 방법론을 적용하여 입력 금융 텍스트를 심층 분석하여 정보를 제공하고자 한다. This specification intends to provide information by in-depth analysis of input financial text by applying a methodology that introduces a machine learning-based classification model and a machine reading comprehension model using application domain-specific pre-learning language model learning and the corresponding model.

본 명세서는 텍스트 추론 기술을 적용한 인공지능 금융 전문가 시스템을 구축하고자 한다. This specification aims to build an artificial intelligence financial expert system applying text reasoning technology.

본 명세서는 질문의 의도를 분류하고 관련된 실시간 금융 텍스트 정보를 추출하여 해당 문서에서 답변을 검색하고자 한다.This specification seeks to search for an answer in the document by classifying the intent of the question and extracting related real-time financial text information.

본 발명이 해결하고자 하는 과제는 이상에서 언급한 과제들로 제한되지 않으며, 여기서 언급되지 않은 또 다른 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problem to be solved by the present invention is not limited to the above-mentioned problems, and other problems not mentioned herein will be clearly understood by those skilled in the art from the following description.

본 발명의 일 실시예에 의한 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 방법은 시스템의 프로세서가 제1입력 데이터를 이용하여 비지도학습 기반 개체명을 추출하는 단계와 프로세서가 추출한 개체명을 시스템의 데이터베이스에 저장하는 단계와 프로세서가 데이터베이스에 저장된 개체명을 제1입력 데이터 또는 제2입력 데이터의 전처리된 결과에 적용하여 토크나이징을 수행하는 단계와 프로세서가 토크나이징된 결과에 기반하여 금융용어 사전을 포함한 언어 모델을 구축하여 데이터베이스에 저장하는 단계를 포함한다. A method for classifying intentions for various queries in the financial domain and searching for answers based on a financial terminology model according to an embodiment of the present invention is a method in which a processor of a system uses first input data to provide an unsupervised learning-based entity name. Extracting and storing the extracted object name in the database of the system by the processor, and performing tokenization by the processor by applying the object name stored in the database to the preprocessed result of the first input data or the second input data. and constructing, by the processor, a language model including a dictionary of financial terms based on the tokenized result and storing it in a database.

본 발명의 일 실시예에 의한 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 시스템은 입력 데이터, 입력 데이터베이스를 이용하여 정보를 처리하는 프로세서와 프로세서가 생성한 정보를 저장하는 데이터베이스를 포함한다. A system for classifying intentions for various queries in the financial domain and searching for answers based on a financial terminology model according to an embodiment of the present invention is generated by a processor processing information using input data and an input database and the processor A database that stores information.

본 발명의 일 실시예에 의한 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 시스템은 프로세서가 제1입력 데이터를 이용하여 비지도학습 기반 개체명을 추출하고, 추출한 개체명을 데이터베이스에 저장하며, 프로세서가 데이터베이스에 저장된 개체명을 제1입력 데이터 또는 제2입력 데이터의 전처리된 결과에 적용하여 토크나이징을 수행하며, 프로세서가 토크나이징된 결과에 기반하여 금융용어 사전을 포함한 언어 모델을 구축하여 데이터베이스에 저장한다. In the system for classifying intentions for various queries in the financial domain and searching for answers based on a financial term language model according to an embodiment of the present invention, a processor extracts an unsupervised learning-based entity name using first input data. and stores the extracted object name in the database, and the processor performs tokenization by applying the object name stored in the database to the preprocessed result of the first input data or the second input data, and the processor performs tokenization on the tokenized result Based on this, a language model including a dictionary of financial terms is built and stored in the database.

본 발명의 실시예를 구현할 경우 응용 도메인 특화 사전학습 언어모델의 학습 및 해당 모델을 이용한 기계학습 기반의 분류 모델과 기계 독해 모델을 도입한 방법론을 적용하여 입력 금융 텍스트를 심층 분석하여 정보를 제공할 수 있다. When the embodiment of the present invention is implemented, information is provided by in-depth analysis of input financial text by applying a methodology that introduces a machine learning-based classification model and a machine reading comprehension model using application domain-specific pre-learning language model learning and the corresponding model. can

본 발명의 실시예를 구현할 경우 텍스트 추론 기술을 적용한 인공지능 금융 전문가 시스템을 구축할 수 있다. When implementing an embodiment of the present invention, an artificial intelligence financial expert system to which text inference technology is applied may be constructed.

본 발명의 실시예를 구현할 경우 질문의 의도를 분류하고 관련된 실시간 금융 텍스트 정보를 추출하여 해당 문서에서 답변을 검색할 수 있다.When implementing an embodiment of the present invention, the intention of the question is classified, related real-time financial text information is extracted, and an answer can be searched for in the document.

본 발명이 제공하는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 여기서 언급되지 않은 또 다른 효과들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The effects provided by the present invention are not limited to the effects mentioned above, and other effects not mentioned herein will be clearly understood by those skilled in the art from the description below.

도 1은 본 발명의 실시 예에 따른 지도학습 및 기계독해 방법론을 이용한 질의 답변 검색 시스템을 나타내는 흐름도이다.
도 2는 본 발명의 실시 예에 따른 비지도학습 기반 개체명 추출 단계에 관한 상세 흐름도이다.
도 3은 본 발명의 실시 예에 따른 전이학습을 위한 금융 단어 및 문장 임베딩에 대한 상세 흐름도이다.
도 4는 본 발명의 실시예에 따라 지도학습 기반 분류 모델 학습 및 이용 단계(S300)의 구체적인 수행 방법에 관한 상세 흐름도이다.
도 5는 본 발명의 실시 예에 따른 기계독해 모델 학습 및 이용 단계에 관한 상세 흐름도이다.
도 6은 본 발명의 실시 에에 따른 기계독해 학습세트 생성 모듈에 관한 상세 흐름도이다.
도 7은 본 발명의 실시 예에 따른 개체명 기반 문서 필터링 및 제목 임베딩 비교에 관한 상세 흐름도이다.
도 8은 본 발명의 일 실시예에 의한 인공지능 금융 전문가 시스템의 구성을 보여주는 도면이다.
도 9는 본 발명의 일 실시예에 의한 S100, S200, S500, S600의 과정을 통합하여 제시한 도면이다.
도 10은 본 발명의 일 실시예에 의한 임베딩 모델과 학습 데이터를 적용하여 S300 및 S400의 프로세스를 수행하는 과정을 보여주는 도면이다.
도 11은 본 발명의 실시 예에 따른 지도학습 분류 모델 및 기계 학습 시 사용하는 입력과 출력에 관한 설명을 도시한 도면이다.
도 12는 본 발명의 실시 예에 따른 기계독해 모델 학습 시 사용하는 입력과 출력에 관한 설명을 도시한 도면이다.
도 13은 본 발명에 기재된 발명의 주요 실시예를 포함하는 챗봇 시스템의 전체적인 구성도이다.
도 14는 본 발명의 일 실시예에 의한 금융 도메인 언어처리를 위한 금융정보 자동 추출과정을 보여주는 도면이다.
도 15는 본 발명의 일 실시예에 의한 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 과정을 도시한 도면이다.
도 16은 본 발명의 일 실시예에 의한 리토크나이징을 수행하는 과정을 상세히 보여주는 도면이다.
도 17은 본 발명의 일 실시예에 의한 금융용어 기반 리토크나이징을 수행하는 예시를 보여주는 도면이다.
1 is a flowchart illustrating a question answer search system using supervised learning and machine reading comprehension methodologies according to an embodiment of the present invention.
2 is a detailed flowchart of an entity name extraction step based on unsupervised learning according to an embodiment of the present invention.
3 is a detailed flowchart of embedding financial words and sentences for transfer learning according to an embodiment of the present invention.
4 is a detailed flowchart of a specific method of performing the supervised learning-based classification model learning and using step (S300) according to an embodiment of the present invention.
5 is a detailed flowchart illustrating a step of learning and using a machine reading comprehension model according to an embodiment of the present invention.
6 is a detailed flowchart of a machine reading comprehension training set generating module according to an embodiment of the present invention.
7 is a detailed flowchart of object name-based document filtering and title embedding comparison according to an embodiment of the present invention.
8 is a diagram showing the configuration of an artificial intelligence financial expert system according to an embodiment of the present invention.
9 is a diagram showing the integrated processes of S100, S200, S500, and S600 according to an embodiment of the present invention.
10 is a diagram showing a process of performing the processes of S300 and S400 by applying an embedding model and learning data according to an embodiment of the present invention.
11 is a diagram illustrating a supervised learning classification model according to an embodiment of the present invention and an explanation of inputs and outputs used in machine learning.
12 is a diagram illustrating input and output used when learning a machine reading comprehension model according to an embodiment of the present invention.
13 is an overall configuration diagram of a chatbot system including the main embodiments of the invention described in the present invention.
14 is a diagram showing a process of automatically extracting financial information for language processing in the financial domain according to an embodiment of the present invention.
15 is a diagram illustrating a process of classifying intentions for various queries in the financial domain and searching for answers based on a financial term language model according to an embodiment of the present invention.
16 is a diagram showing in detail a process of performing retorquenizing according to an embodiment of the present invention.
17 is a diagram showing an example of performing financial term-based retalking according to an embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다.Advantages and features of the present invention, and methods of achieving them, will become clear with reference to the detailed description of the following embodiments taken in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below and will be implemented in various forms different from each other, only these embodiments make the disclosure of the present invention complete, and common knowledge in the art to which the present invention pertains. It is provided to completely inform the person who has the scope of the invention, and the present invention is only defined by the scope of the claims. Like reference numbers designate like elements throughout the specification.

본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시 예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시 예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시 예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예롤 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The detailed description of the present invention refers to the accompanying drawings which illustrate, by way of illustration, specific embodiments in which the present invention may be practiced. These embodiments are described in sufficient detail to enable any person skilled in the art to practice the present invention. It should be understood that the various embodiments of the present invention are different, but need not be mutually exclusive. For example, specific shapes, structures, and characteristics described herein may be implemented in relation to one embodiment to another without departing from the spirit and scope of the invention. Additionally, it should be understood that the location or arrangement of individual components within each disclosed embodiment may be changed without departing from the spirit and scope of the invention.

따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.Accordingly, the detailed description set forth below is not to be taken in a limiting sense, and the scope of the present invention, if properly described, is limited only by the appended claims, along with all equivalents as claimed by those claims. Like reference numbers in the drawings indicate the same or similar function throughout the various aspects.

이하, 실시간 투자 자문 챗봇 서비스를 위한 텍스트 심층 이해 기반 인공지능 금융 전문가 시스템에 대해 살펴본다 Below, we look at an artificial intelligence financial expert system based on deep understanding of text for real-time investment advisory chatbot service.

일 실시예로, 금융 지식베이스와 말뭉치 학습을 통해 도메인에 특화된 사전학습 모델을 구축하고, 해당 모델을 적용한 의도분류 기술 및 기계독해 기술에 기반한 심층 텍스트 이해 기술을 적용하여 인공지능 투자 자문 서비스를 제공하는 방법 및 이를 위한 장치에 대해 살펴본다. In one embodiment, a domain-specific pre-learning model is built through financial knowledge base and corpus learning, and artificial intelligence investment advisory services are provided by applying deep text understanding technology based on intent classification technology and machine reading comprehension technology to which the model is applied. Let's take a look at how to do it and the device for it.

특정 분야의 정보를 제공하기 위한 대화 시스템은 지식베이스 검색을 위한 질의로 규정하기 위해 사용자가 입력한 텍스트에서 질의문을 추출하고 패턴을 분석하여 대화 상태를 설계하고 추적하는 과정으로 구성된다. A dialog system for providing information in a specific field consists of a process of designing and tracking a conversation state by extracting a query sentence from a text input by a user and analyzing a pattern in order to define it as a query for knowledge base search.

또한, 정보를 제공하고자 하는 분야의 서비스의 목적에 적합하게, 시스템의 규모와 기능 범위를 한정할 수 있다. 그리고 지식 DB에 해당 분야의 준비된 지식을 보유하여 사용자가 입력한 질의에 답변을 제공할 수 있다. In addition, the scale and functional scope of the system may be limited to suit the purpose of the service in the field to provide information. In addition, it is possible to provide an answer to a query entered by a user by retaining prepared knowledge in the corresponding field in the knowledge DB.

종래 기술들은 지식베이스에 미리 정의한 사용자 예상 질의를 포함하여 구축하며, 해당 지식베이스 내에서 매칭되는 질의를 검색하여 답변을 제공하는 방식을 사용한다. Conventional technologies use a method of constructing a knowledge base by including a predefined user-expected query, searching for a matching query within the knowledge base, and providing an answer.

그러나 일반적으로 미리 정의된 질의 내에서만 질문을 입력하지 않기 때문에 미리 정의되지 않은 질의에 대해서는 답변을 제공하지 못하거나 엉뚱한 답변을 제공할 가능성이 많다. However, since questions are generally not entered only within a predefined query, there is a high possibility that an answer may not be provided or an incorrect answer may be provided to a query that is not predefined.

이는 단어 수준의 개체명 질의어를 사용하는 것에서 기인한다. 단어 단위의 질의어를 사용하는 방식에서는 유사어라는 관계가 사전에 정의되어 있지 않은 다른 단어에 대해서는 의미 파악에 한계가 있다. 또한 사전에 없는 단어의 경우에는 OOV(Out-Of-Vocabulary) 문제가 발생하게 되어 형태소 분석 과정에서도 문제가 발생될 가능성이 크다.This is due to the use of a word-level entity name query. In the method of using a word-by-word query, there is a limit to grasping the meaning of other words for which a relation called a synonym is not defined in advance. In addition, in the case of a word not in the dictionary, an Out-Of-Vocabulary (OOV) problem occurs, which is highly likely to cause a problem in the morphological analysis process.

또한 규칙베이스를 이용한 질의 검색 방법은 해당 질의와 매칭되는 지식이 지식베이스 내에 없으면 답변을 제공하기 어려울 뿐만 아니라 유사 질의 패턴 등의 지식베이스를 지속적으로 추가해주어야 한다는 한계가 있다.In addition, the query retrieval method using the rulebase has limitations in that it is difficult to provide an answer if knowledge matching the query is not in the knowledge base, and that knowledge bases such as similar query patterns must be continuously added.

미응답 질의에 대하여 지속적으로 지식베이스를 관리할 수 있지만 질의를 검색하는 지식베이스는 한정적이며 실시간으로 업데이트되는 정보를 답변에 담기 어렵다는 한계를 지니고 있다. 또한 지식 구축과정의 질과 양에서 한계가 있을 뿐만 아니라, 낮은 빈도로 등장하는 지식, 시간이 지남에 따라 추가되거나 변경되는 지식 등 규모와 변동성이 큰 목적지향 대화시스템의 지식베이스를 모델링하거나 유지 보수하는 것은 한계가 있다. Although it is possible to continuously manage the knowledge base for unanswered queries, the knowledge base for searching queries is limited and has limitations in that it is difficult to include real-time updated information in answers. In addition, there are limitations in the quality and quantity of the knowledge building process, as well as modeling or maintaining the knowledge base of a goal-oriented conversation system with large scale and variability, such as knowledge that appears infrequently and knowledge that is added or changed over time. There is a limit to what to do.

사용자 입력에 대해서 형태소 또는 키워드 분석을 하여 미리 구축한 동의어, 상하위어, 그래프 등의 추가적인 지식을 가진 시소러스나 온톨로지와 같은 금융 지식베이스에 기반하여 적절한 정보나 답변을 제공하는 방식을 취하는 방법에 있어서 응용 도메인에 따른 추가 지식을 구축을 하는데 한계가 존재하며 외부 지식베이스와의 연동성에도 문제가 있다. Applied in a method of providing appropriate information or answers based on a financial knowledge base such as a thesaurus or ontology with additional knowledge such as pre-built synonyms, top and bottom words, and graphs by analyzing morphemes or keywords for user input There are limitations in constructing additional knowledge according to domains, and there are problems with interoperability with external knowledge bases.

따라서, 본 명세서에서는 질의어 검색 및 지식베이스 구축의 한계를 극복하기 위해서, 사용자 입력을 언어학적 분석 방법론을 통해 질의어를 확장하여 지식 내에서 유사성이 높은 지식을 검색한다. Therefore, in the present specification, in order to overcome the limitations of query search and knowledge base construction, knowledge with high similarity is retrieved within knowledge by expanding the query through a linguistic analysis methodology of user input.

또한, 형태소나 질의 패턴과 같은 언어학적 자질 및 지식 기반 대화 시스템 및 챗봇 서비스의 지식 구축 문제 및 성능 한계를 극복하고, 추가적으로 외부 경제 지표, 통계 자료 등 실시간 맞춤형 금융 정보를 제공하는 실시간 투자 자문 챗봇 서비스를 개발하는 것이 필요하다. In addition, real-time investment advisory chatbot service that overcomes linguistic qualities such as morphemes and query patterns and knowledge-based conversation systems and knowledge building problems and performance limitations of chatbot services, and provides real-time customized financial information such as external economic indicators and statistical data. It is necessary to develop

이를 위해, 본 명세서에서는 응용 도메인 특화 사전학습 언어모델의 학습 및 해당 모델을 이용한 기계학습 기반의 분류 모델과 기계 독해 모델을 도입한 방법론을 적용한다. 본 명세서의 실시예를 적용할 경우, 입력 금융 텍스트를 심층 이해하고, 텍스트 추론 기술을 적용한 인공지능 금융 전문가 시스템을 구축한다. 이를 통해 의도를 분류하고 관련된 실시간 금융 텍스트 정보를 추출하여 해당 문서에서 답변을 검색한다.To this end, in this specification, a methodology that introduces a machine learning-based classification model and a machine reading comprehension model using application domain-specific pretraining language model learning and the corresponding model is applied. When the embodiments of the present specification are applied, an artificial intelligence financial expert system to which an input financial text is deeply understood and text inference technology is applied is constructed. Through this, it categorizes the intention, extracts related real-time financial text information, and searches for answers in the document.

본 발명의 실시 형태에 따른, 비지도학습 기반 개체명 추출 단계; 전이학습을 위한 단어 및 문장 임베딩 단계; 지도학습 기반 의도분류 모델 학습 및 이용 단계; 기계독해 모델 학습 및 이용 단계; 기계독해 학습세트 생성 단계; 및 개체명 기반 문서 필터링 및 제목 임베딩 비교 단계를 포함한다.According to an embodiment of the present invention, unsupervised learning-based object name extraction step; Embedding words and sentences for transfer learning; Learning and using a supervised learning-based intent classification model; Learning and using machine reading comprehension models; generating a learning set for machine reading comprehension; and entity name-based document filtering and subject embedding comparison.

일 실시예에 따르면, 비지도 학습 기반 개체명 추출 단계는 말뭉치 문장 전처리 단계; 초/중/종성 분리 및 알파벳 대문자화 단계; 내부단어 분리 단계;를 포함할 수 있다.According to an embodiment, the step of extracting entity names based on unsupervised learning may include preprocessing a corpus of sentences; Secondary/middle/final separation and capitalization of the alphabet; Internal word separation step; may include.

일 실시예에 따르면, 전이학습을 위한 단어 및 문장 임베딩 단계는 말뭉치 문장 전처리 단계; 비지도 학습 기반 토크나이저 적용 단계; 사전학습 언어모델 구축 단계;를 포함할 수 있다.According to an embodiment, the step of embedding words and sentences for transfer learning may include a preprocessing step of corpus sentences; applying an unsupervised learning-based tokenizer; A step of building a pre-learning language model; may be included.

일 실시예에 따르면 지도학습 기반 의도분류 모델 학습 및 이용 단계는 금융 관련 질문 입력 토크나이징 단계; 입력 질문 임베딩 단계; 지도학습 기반 분류모델 구축 단계;를 포함할 수 있다.According to an embodiment, the step of learning and using a supervised learning-based intention classification model includes the step of tokenizing a financial-related question input; Input question embedding step; Building a supervised learning-based classification model; may include.

일 실시예에 따르면 기계독해 모델 학습 및 이용 단계는 기계독해 입력 데이터 전처리 단계; 입력 질문/문서 임베딩 단계; 기계독해 모델 구축 단계;를 포함할 수 있다.According to an embodiment, the step of learning and using the machine reading comprehension model may include preprocessing the machine reading comprehension input data; input question/document embedding step; It may include; building a machine reading comprehension model.

일 실시예에 따르면 기계독해 학습세트 생성 단계는 추가 피쳐 생성 단계; 데이터 구조 변환 단계;를 포함할 수 있다.According to an embodiment, the generating of the machine reading comprehension training set includes generating an additional feature; Data structure conversion step; may include.

일 실시예에 따르면 개체명 기반 문서 필터링 및 제목 임베딩 비교 단계는 개체명 기반 문서 필터링 단계; 금융 문서 제목/의도 간 임베딩 비교 단계;를 포함할 수 있다.According to an embodiment, the entity name-based document filtering and title embedding comparison step may include entity name-based document filtering step; It may include; embedding comparison step between titles/intentions of financial documents.

이하, 첨부되는 도면을 참조하여 본 발명의 실시 형태에 따른 지도학습 및 기계독해 방법론을 이용한 질의 답변 검색 방법을 설명한다.Hereinafter, a question answer search method using a supervised learning and machine reading comprehension methodology according to an embodiment of the present invention will be described with reference to the accompanying drawings.

도 1은 본 발명의 실시 예에 따른 지도학습 및 기계독해 방법론을 이용한 질의 답변 검색 시스템을 나타내는 흐름도이다.1 is a flowchart illustrating a question answer search system using supervised learning and machine reading comprehension methodologies according to an embodiment of the present invention.

도 1은 일 실시예에 따른 본 발명의 대표도이며, 본 발명은 금융 도메인에서 발생하는 다양한 질의에 대응하여 의도를 분류하고 답변을 검색하는 기술을 일 실시예로 제시한다. 비지도학습 기반 개체명 추출 단계(S100); 전이학습을 위한 단어 및 문장 임베딩 단계(S200); 지도학습 기반 의도분류 모델 학습 및 이용 단계(S300); 기계독해 모델 학습 및 이용 단계(S400); 기계독해 학습세트 생성 단계(S500); 및 개체명 기반 문서 필터링 및 제목 임베딩 비교 단계(S600)를 포함한다.1 is a representative diagram of the present invention according to an embodiment, and the present invention presents a technique for classifying intentions and searching for answers in response to various queries occurring in the financial domain as an embodiment. unsupervised learning-based object name extraction step (S100); Embedding words and sentences for transfer learning (S200); Learning and using a supervised learning-based intention classification model (S300); machine reading comprehension model learning and use step (S400); Creating a learning set for machine reading comprehension (S500); and entity name-based document filtering and title embedding comparison step (S600).

도 1을 참조하면 개체명 사전 구축하는 부분은 형태소 분석 및 비지도 학습을 통한 도메인/말뭉치 특화 토크나이저 모델을 학습하는 방법을 사용하였다. 상기 추출된 개체명(S100)을 기반으로 하는 언어모델로 임베딩(S200)하는 과정에서 비지도 학습 모델을 이용하고, 이를 입력으로 이용하는 지도학습 모델을 기반으로 의도를 분류한다. Referring to FIG. 1, a method of learning a domain/corpus-specific tokenizer model through morpheme analysis and unsupervised learning was used for the entity name dictionary construction part. In the process of embedding (S200) into a language model based on the extracted entity name (S100), an unsupervised learning model is used, and the intention is classified based on the supervised learning model using this as an input.

상기 개체명 사전과 지도학습 모델을 통해 추출된 개체명과 분류 의도는 개체명 기반 문서 필터링 및 제목 임베딩 비교에 사용되어 관련 금융문서를 추출하고 해당 금융문서는 기계독해 모델의 입력 정보로 사용되어 답변 추출된다. 또한 별도로 기계독해 모델 학습 세트 생성 모듈(S500)을 통해 기계독해 학습이 가능한 구조 형태로 데이터를 구축한다. The entity name and classification intention extracted through the entity name dictionary and supervised learning model are used for entity name-based document filtering and title embedding comparison to extract related financial documents, and the financial documents are used as input information for the machine reading comprehension model to extract answers. do. In addition, through a separate machine reading comprehension model training set generation module (S500), data is constructed in a structure capable of machine reading comprehension learning.

금융특화 원시 말뭉치는 비지도학습기반 개체명 추출(S100)과 전이학습을 위한 단어 및 문장 임베딩(S200) 과정에 이용된다. 그리고 금융 질의 세트와 S200의 결과를 입력받은 지도학습기반 의도분류모델학습 및 이용(S300) 결과는 의도 분류 결과를 생성하고 답변을 생성한다. The financial-specific raw corpus is used in the process of unsupervised learning-based object name extraction (S100) and word and sentence embedding for transfer learning (S200). In addition, the result of learning and using the supervised learning-based intention classification model (S300) receiving the financial query set and the result of S200 generates an intention classification result and an answer.

한편, 금융특화 원시 말뭉치는 금융관련 질문/답변과 금융특화 문서와 결합하여 기계독해 학습세트 생성 모듈(S500)에 입력된다. 또한, 대규모 비즈니스 데이터베이스에서 개체명 기반 문서 필터링 및 제목 임베딩 비교(S600)에 의해 질문 연관 문서를 생성한다. S500 및 질문 연관 문서는 다시 기계독해 모델 학습 및 이용(S400) 프로세스에 입력되어 답변 추출 결과를 생성한다. On the other hand, the finance-specific raw corpus is input to the machine reading comprehension learning set generation module (S500) after being combined with finance-related questions/answers and finance-specific documents. In addition, question-related documents are generated by object name-based document filtering and title embedding comparison (S600) in a large-scale business database. S500 and the question-related documents are input again to the machine reading comprehension model learning and use (S400) process to generate an answer extraction result.

도 1의 프로세스에서 S100 ~ S600의 과정에 대해 상세하게 살펴본다. 각 프로세스는 후술할 시스템(1000)의 프로세서(1500)가 수행한다. The processes of S100 to S600 in the process of FIG. 1 will be described in detail. Each process is performed by the processor 1500 of the system 1000 to be described later.

도 2는 본 발명의 실시 예에 따른 비지도학습 기반 개체명 추출 단계에 관한 상세 흐름도이다. 도 2는 S100 단계의 구체적인 수행 방법을 보여준다. 2 is a detailed flowchart of an entity name extraction step based on unsupervised learning according to an embodiment of the present invention. 2 shows a specific method of performing step S100.

도 2를 참조하면, 예시적인 실시예에 따른 말뭉치 문장을 전처리하는 단계(S110), 초/중/종성을 분리하고 및 알파벳 대문자화 단계(S120), 내부단어 분리 단계(S130)를 포함할 수 있다. 다른 실시예로, 개체명 사전이 소문자로 구성된 경우, 알파벳 소문자화 단계를 수행할 수 있다. Referring to FIG. 2 , the steps of preprocessing the corpus sentences (S110), separating the initial/middle/final letters and capitalizing the alphabet (S120), and separating internal words (S130) according to an exemplary embodiment may be included. there is. In another embodiment, when the entity name dictionary is composed of lowercase letters, the alphabet lowercase step may be performed.

도 2를 참조하면 이 발명에 적용된 비지도 학습 기반의 토크나이저 학습 방식은 프로세서(1500)가 주어진 말뭉치에서 빈번히 결합하여 사용된 음절(글자) 패턴을 학습하여 복합어 및 개체명의 경계를 자동으로 학습한다. Referring to FIG. 2, in the unsupervised learning-based tokenizer learning method applied to this invention, the processor 1500 learns frequently combined and used syllable (letter) patterns in a given corpus to automatically learn the boundaries of compound words and object names. .

이 같은 방법을 경계 인식(Span detection)이라고 한다. 이 방법을 적용하기 위해서는 단순하게 특정 도메인의 말뭉치(뉴스 기사, 공문서 등)를 수집할 수 있다. 또한, 다른 실시예에 의하면, 학습 데이터의 표현 자체를 이용하여 모델을 구축할 수도 있다. This method is called span detection. To apply this method, corpus (news articles, official documents, etc.) of a specific domain can be simply collected. In addition, according to another embodiment, a model may be constructed using the representation of learning data itself.

이 학습 방법을 통해 구축된 토크나이저의 가장 큰 장점은 자동으로 색인어 지식을 구축할 수 있으며, 새로운 색인어 추가의 경우, 해당 색인어를 사용한 문장만 추가하면 추출될 수 있다는 점이다. 또한, 중간 결과물이 기존의 색인어 지식과 비슷한 형태로 생성되기 때문에 기존의 색인어 지식과 결합도 비교적 쉽다. The biggest advantage of the tokenizer built through this learning method is that it can automatically build index word knowledge, and in the case of adding a new index word, it can be extracted by adding only the sentence using the index word. In addition, since intermediate results are generated in a form similar to existing index word knowledge, it is relatively easy to combine with existing index word knowledge.

또한 프로세서(1500)는 기존의 색인어 지식이나 형태소 분석기에 독립적으로 학습을 적용할 수 있다. 프로세서(1500)는 복합 명사, 조사, 어미 처리에 있어서 토크나이징을 수행하기 때문에 띄어쓰기에 무관하게 입력을 처리하여 분석할 수 있게 되며, 형태소 분석의 성능에 따라 결과가 나빠지지 않는다. In addition, the processor 1500 may independently apply learning to existing index word knowledge or morpheme analyzers. Since the processor 1500 performs tokenization in processing compound nouns, postpositions, and suffixes, it is possible to process and analyze inputs regardless of spacing, and results do not deteriorate depending on the performance of morpheme analysis.

그리고 프로세서(1500)는 서브 워드 분리 알고리즘을 적용하여 토큰 내에서도 유사한 표현 패턴을 내부 정보로 학습하기 때문에 색인어 지식이 없는(Out-of-Vocaburary) 경우에도 학습을 수행할 수 있다.. 또한, 형태소 분석기를 사용하지 않고도, 프로세서(1500)는 학습 및 색인어추출 성능을 개선할 수 있는데, 1초에 약 15,000 문장의 토크나이징이 가능하다.In addition, since the processor 1500 applies a subword separation algorithm to learn a similar expression pattern as internal information even within a token, learning can be performed even when there is no index word knowledge (Out-of-Vocaburary). In addition, the morpheme analyzer Without using , the processor 1500 can improve learning and index word extraction performance, and can tokenize about 15,000 sentences per second.

도 3은 본 발명의 실시 예에 따른 전이학습을 위한 금융 단어 및 문장 임베딩에 대한 상세 흐름도이다. 의도분류 및 기계독해를 위한 단어 및 문장 임베딩 단계(S200)의 구체적인 수행 방법에 대한 상세 흐름도이다. 도 3의 실시예는 금융 말뭉치를 전처리하고 주요 개체명 사전과 응용 도메인에 특화된 개체명을 포함하는 토크나이저가 적용되어 사전학습 언어모델을 학습하는 과정을 보여준다. 3 is a detailed flowchart of embedding financial words and sentences for transfer learning according to an embodiment of the present invention. This is a detailed flowchart of a specific execution method of the word and sentence embedding step (S200) for intention classification and machine reading comprehension. The embodiment of FIG. 3 shows a process of pre-processing a financial corpus and learning a pre-learning language model by applying a tokenizer including a main entity name dictionary and an entity name specific to an application domain.

도 3을 참조하면, 예시적인 실시예에 따른 말뭉치 문장 전처리 단계(S210), 비지도 학습 기반 토크나이저 적용 단계(S220), 사전학습 언어모델 구축 단계(S230)를 포함할 수 있다.Referring to FIG. 3 , a corpus sentence preprocessing step (S210), an unsupervised learning-based tokenizer application step (S220), and a pretrained language model construction step (S230) may be included according to an exemplary embodiment.

예시적인 실시예에 따른 상기 문장 전처리 단계(S210)에서 프로세서(1500)는 입력 데이터를 분석하면서 전처리 과정을 수행한다. 알파벳 입력의 경우 반각 대문자로 일괄 처리하할 수 있으며, 프로세서(1500)는, 보다 나은 문장 임베딩을 위해 일정 길이 이상의 문단은 문장을 분리하는 작업을 수행한다. In the sentence preprocessing step (S210) according to an exemplary embodiment, the processor 1500 performs a preprocessing process while analyzing input data. In the case of alphabet input, it is possible to batch process half-width capital letters, and the processor 1500 performs an operation of separating sentences from paragraphs of a certain length or more for better sentence embedding.

또한 띄어쓰기 및 오탈자 보정을 통해 OOV(Out of Vocabulary) 문제를 미리 방지한다. 이를 통해 프로세서(1500)는 임베딩에서의 학습 성능을 개선할 수 있을 뿐만 아니라, 지도학습 기반 분류 모델 학습 및 이용 단계(S300)에서의 분류 정확도를 향상시킬 수 있다.In addition, OOV (Out of Vocabulary) problems are prevented in advance by correcting spaces and misspellings. Through this, the processor 1500 can improve not only the learning performance in embedding, but also the classification accuracy in the step of learning and using a supervised learning-based classification model (S300).

도 2 및 3의 프로세스를 이용하면 금융용어 사전을 제공할 수 있다. 자체 형태소 분석기 및 사전을 기반으로 하며 또한 리토크나이징을 이용하여 금융용어를 임베딩시킬 수 있다. 도 2 및 도 3에서 말뭉치 토크나이징을 수행함에 있어서 리토크나이징을 적용한다. 이는 금융 용어 사전 우선으로 금융 용어나 핵심 단어가 분리되지 않도록 처리한다. Using the process of FIGS. 2 and 3, a dictionary of financial terms can be provided. It is based on its own morpheme analyzer and dictionary, and can also embed financial terms using retalking. In performing corpus tokenization in FIGS. 2 and 3 , retalking is applied. This is processed so that financial terms or key words are not separated by prioritizing the financial terminology dictionary.

도 4는 본 발명의 실시 예에 따른 지도학습 기반 의도분류 모델 학습 및 이용 단계에 관한 상세 흐름도이다.4 is a detailed flowchart illustrating a step of learning and using a supervised learning-based intent classification model according to an embodiment of the present invention.

도 4는 본 발명의 실시예에 따라 지도학습 기반 분류 모델 학습 및 이용 단계(S300)의 구체적인 수행 방법에 관한 상세 흐름도이다. 도 4의 실시예는 학습된 사전학습 언어 모델을 기반으로 정의된 금융 도메인 질의와 답변을 통해 의도분류 모델을 학습하여 금융 의도 분류 모델을 구현하고, 새로운 실시간 금융 질의 입력으로부터 파악된 의도를 도출하는 과정을 보여준다. 4 is a detailed flowchart of a specific method of performing the supervised learning-based classification model learning and using step (S300) according to an embodiment of the present invention. The embodiment of FIG. 4 implements a financial intent classification model by learning an intent classification model through a financial domain query and answer defined based on a learned pre-learning language model, and derives an intention identified from a new real-time financial query input. show the process

도 4를 참조하면, 예시적인 실시예에 따른 금융 관련 입력질문 토크나이징 단계(S310), 입력 질문 임베딩 단계(S320), 지도학습 기반 분류모델 학습 단계(S330); 입력 질문 의도 분류 단계(S340)를 포함할 수 있다.Referring to FIG. 4 , according to an exemplary embodiment, tokenizing input questions related to finance (S310), embedding input questions (S320), learning a classification model based on supervised learning (S330); An input question intention classification step (S340) may be included.

예시적인 실시예에 따른 금융 관련 입력질문 토크나이징 단계(S310)에서 프로세서(1500)는 입력 질문에 대해 상기 비지도 학습 기반 개체명 추출 단계(S100)에서 추출된 개체명 사전을 기반으로 토크나이징을 수행한다. In the tokenizing financial-related input question step (S310) according to an exemplary embodiment, the processor 1500 tokenizes the input question based on the entity name dictionary extracted in the unsupervised learning-based entity name extraction step (S100). perform the jing

예시적인 실시예에 따른 입력 질문 임베딩 단계(S320)에서 프로세서(1500)는 상기 사전학습 언어모델 구축 단계(S230)에서 학습된 언어모델을 기반으로 입력 문장에 대한 임베딩 정보를 가져올 수 있다. 이를 통해 입력 문장은 연산이 가능한 실수 벡터 형태로 변환되고 지도학습 분류모델 및 기계독해 모델에서 사용되는 입력 정보를 생성할 수 있게 된다. In the step of embedding an input question (S320) according to an exemplary embodiment, the processor 1500 may bring embedding information for an input sentence based on the language model learned in the step of constructing the pretrained language model (S230). Through this, the input sentence is converted into a real vector form that can be operated, and input information used in the supervised learning classification model and the machine reading comprehension model can be generated.

예시적인 실시예에 따른 지도학습 기반 분류모델 학습 단계(S330)에서 프로세서(1500)는 상기 입력 질문 임베딩 단계(S320)에서 변환된 문장 임베딩 결과와 의도를 지도학습 하는 과정을 거친다. 이 과정을 통해 금융 질의 의도분류 모델을 구축할 수 있다.In the supervised learning-based classification model learning step (S330) according to an exemplary embodiment, the processor 1500 undergoes a process of supervising the sentence embedding result and intention converted in the input question embedding step (S320). Through this process, a financial quality intention classification model can be constructed.

예시적인 실시예에 따른 입력 질문 의도 분류 단계(S340)에서 프로세서(1500)는 입력 문장을 임베딩하는 과정을 거쳐 입력 벡터를 만들고 지도학습된 의도 분류 모델로 각 의도 별 확률이 계산이 되어 가장 신뢰도가 높은 의도 순서대로 분류 결과를 예측할 수 있다. 해당 과정에서 일정 신뢰도 이상의 결과가 나오지 않는 경우는 상기 기계독해 모델 학습 및 이용 단계(S400)를 활용하여 질문과 관련되는 문서를 검색하여 해당 문서에서 질문에 대한 답변을 검색하여 챗봇 시스템의 응답률을 제고할 수 있다.In the input question intent classification step (S340) according to an exemplary embodiment, the processor 1500 creates an input vector through a process of embedding an input sentence, and calculates a probability for each intent with a supervised intent classification model, so that the most reliable Classification results can be predicted in order of high intent. If the result does not exceed a certain level of reliability in the process, the machine reading comprehension model training and use step (S400) is used to search for documents related to the question, and the answer to the question is retrieved from the document to improve the response rate of the chatbot system can do.

도 5는 본 발명의 실시 예에 따른 기계독해 모델 학습 및 이용 단계에 관한 상세 흐름도이다.5 is a detailed flowchart illustrating a step of learning and using a machine reading comprehension model according to an embodiment of the present invention.

도 5는 본 발명의 실시예에 따라 기계독해 학습 및 이용 단계(S400)의 구체적인 수행 방법에 관한 상세 흐름도이다. 도 5의 실시예는 금융 문서와 질문을 기계독해 모델 학습에 입력형태로 변환하는 전처리를 진행한 후 기계독해 모델을 학습하여 금융 기계독해 모델을 구현하여, 새로운 금융문서에서 답변을 검색하여 추출하는 과정을 보여준다. 5 is a detailed flowchart of a specific execution method of learning and using machine reading comprehension (S400) according to an embodiment of the present invention. The embodiment of FIG. 5 implements a financial machine reading comprehension model by learning a machine reading comprehension model after performing preprocessing of converting financial documents and questions into an input form for machine reading model learning, and then searching for and extracting answers from new financial documents. show the process

도 5를 참조하면, 예시적인 실시예에 따른 기계독해 입력 데이터 전처리 단계(S410), 입력 질문/문서 임베딩 단계(S420), 기계독해 모델 학습 단계(S430); 답변 검색 단계(S440)를 포함할 수 있다.Referring to FIG. 5 , preprocessing of input data for machine reading comprehension (S410), embedding an input question/document (S420), and learning a machine reading comprehension model (S430) according to an exemplary embodiment; An answer search step (S440) may be included.

예시적인 실시예에 따른 기계독해 입력 데이터 전처리 단계(S410)에서 프로세서(1500)는 입력 질문과 관련 문서를 통해 질문/문서 임베딩 단계(S420)의 입력 정보로 사용 가능한 형태로 변환을 수행한다. 해당 과정에서 질문과 문서 내용은 구분자를 기준으로 하나의 데이터로 취합된다.In the machine reading comprehension input data pre-processing step S410 according to an exemplary embodiment, the processor 1500 converts the input question and related document into a form usable as input information of the question/document embedding step S420. In this process, the questions and document contents are collected as one data based on the separator.

예시적인 실시예에 따른 입력 질문/문서 임베딩 단계(S420)에서 프로세서(1500)는 상기 입력 질문 임베딩 단계(S320)와 동일하게 상기 사전학습 언어모델 구축 단계(S230)에서 학습된 언어모델을 기반으로 입력 질문/문서에 대해 임베딩 정보를 가져와서 기계독해 모델에서 사용되는 입력 정보를 생성할 수 있다. In the input question/document embedding step (S420) according to an exemplary embodiment, the processor 1500, in the same manner as the input question embedding step (S320), builds the pre-learning language model based on the language model learned in the step (S230). Input information used in the machine reading comprehension model can be generated by importing the embedding information for the input question/document.

예시적인 실시예에 따른 기계독해 모델 학습 단계(S430)에서 프로세서(1500)는 상기 질문/문서 임베딩 단계(S420)에서 변환된 임베딩 결과와 의도를 지도학습 하는 과정을 거친다. 이 과정을 통해 금융 문서 내 질의에 대한 답변을 검색하는 기계독해 모델을 구축할 수 있다.In the machine reading comprehension model learning step (S430) according to an exemplary embodiment, the processor 1500 undergoes a process of supervising the embedding result and intention converted in the question/document embedding step (S420). Through this process, it is possible to build a machine reading comprehension model that searches for answers to queries in financial documents.

예시적인 실시예에 따른 답변 검색 단계(S440)에서 프로세서(1500)는 입력 질문/문서를 임베딩하는 과정을 거쳐 입력 벡터를 만들고 학습된 금융문서 기계독해 모델로 검색 답변 결과를 예측할 수 있다. In the answer search step (S440) according to an exemplary embodiment, the processor 1500 may create an input vector through a process of embedding an input question/document and predict a search answer result using the learned financial document machine reading comprehension model.

도 6은 본 발명의 실시 에에 따른 기계독해 학습세트 생성 모듈에 관한 상세 흐름도이다.6 is a detailed flowchart of a machine reading comprehension training set generating module according to an embodiment of the present invention.

도 6은 본 발명의 실시예에 따라 도 1의 기계독해 학습세트 생성 모듈(S500)의 구체적인 수행 방법에 관한 상세 흐름도이다. 도 6의 실시예는 금융 문서와 질의/답변을 입력받아 답변 위치 및 길이 등의 새로운 피쳐를 추가하고 기계독해 모델 학습의 입력 형태로 변환하여 기계독해 학습 세트를 생성한다. 6 is a detailed flowchart of a method of performing the machine reading comprehension training set generation module (S500) of FIG. 1 according to an embodiment of the present invention. The embodiment of FIG. 6 generates a machine reading comprehension learning set by receiving a financial document and a question/answer, adding new features such as answer position and length, and converting them into an input form for machine reading comprehension model learning.

예시적인 실시예에 따른 추가 피쳐 생성 단계(S510)에서 프로세서(1500)는 금융 질의답변과 금융 문서를 통해서 해당 금융 문서에서 기계독해 모델 학습 단계(S430)의 입력 정보로 사용 가능한 형태로 변환에 필요한 답변의 위치, 답변 길이를 피쳐로 추가로 생성하는 과정을 수행한다.In the additional feature generation step (S510) according to an exemplary embodiment, the processor 1500 performs a necessary conversion from the corresponding financial document to a form usable as input information in the machine reading comprehension model learning step (S430) through financial questions and answers and financial documents. Performs the process of additionally generating the location of the answer and the length of the answer as features.

예시적인 실시예에 따라 데이터 구조 변환 단계(S520)에서 프로세서(1500)는 상기 추가 피쳐 생성 단계(S510)에서 생성된 데이터를 기계독해 모델 학습 단계(S430)의 입력 정보로 사용 가능한 구조의 dict 형태로 변환하는 작업을 수행한다. 그 결과 프로세서(1500)는 학습 데이터를 생성할 수 있다. According to an exemplary embodiment, in the data structure conversion step (S520), the processor 1500 machine-reads the data generated in the additional feature generation step (S510) and uses it as input information in the model learning step (S430). to do the conversion. As a result, the processor 1500 may generate learning data.

도 7은 본 발명의 실시 예에 따른 개체명 기반 문서 필터링 및 제목 임베딩 비교에 관한 상세 흐름도이다.7 is a detailed flowchart of object name-based document filtering and title embedding comparison according to an embodiment of the present invention.

도 7은 본 발명의 실시예에 따라 도 1의 개체명 기반 문서 필터링 및 제목 임베딩 비교 단계(S600)의 구체적인 수행 방법에 관한 상세 흐름도이다. 도 7의 실시예는 입력된 질의에 대해서 주요 개체명을 추출하고 해당 개체명을 포함하는 금융문서를 1차적으로 필터링하여 해당 문서의 제목과 질의의 임베딩을 비교하여 가장 연관성이 높은 문서를 추출하는 과정을 보여준다. FIG. 7 is a detailed flowchart of a specific method of performing the entity name-based document filtering and title embedding comparison step (S600) of FIG. 1 according to an embodiment of the present invention. The embodiment of FIG. 7 extracts the main entity name for the input query, first filters the financial document including the entity name, compares the title of the document and the embedding of the query, and extracts the most relevant document. show the process

예시적인 실시예에 따른 개체명 기반 문서 필터링 단계(S610)에서 프로세서(1500)는 입력 질문에 포함된 주요 개체명을 기준으로 문서 제목에 해당 주요 개체명 포함 여부를 판단하여 1차적으로 필터링하는 과정을 수행한다. In the entity name-based document filtering step (S610) according to an exemplary embodiment, the processor 1500 primarily filters by determining whether the document title includes the principal entity name based on the principal entity name included in the input question. Do it.

예시적인 실시예에 따른 금융 문서 제목-질문 간 임베딩 비교 단계(S620)에서 프로세서(1500)는 상기 개체명 기반 문서 필터링 단계(S610)에서 1차적으로 필터링된 문서 제목과 질문을 상기 사전학습 언어모델 구축 단계(S230)에서 학습된 언어모델을 기반으로 입력 질문/문서에 대해 임베딩 정보를 가져와서 비교하여 가장 질문과 유사도와 연관도가 높은 문서를 추출하는 과정을 수행한다. 도 7의 수행 결과 다수의 후보 금융 문서에서 연관성이 높은 금융 문서만 추출될 수 있다.In the embedding comparison between financial document titles and questions (S620) according to an exemplary embodiment, the processor 1500 converts the document title and question primarily filtered in the object name-based document filtering step (S610) to the pre-learning language model. Based on the language model learned in the construction step (S230), embedding information for the input question/document is fetched and compared, and a document having the highest similarity and relation to the question is extracted. As a result of the execution of FIG. 7 , only financial documents with high relevance may be extracted from a plurality of candidate financial documents.

도 8은 본 발명의 일 실시예에 의한 인공지능 금융 전문가 시스템의 구성을 보여주는 도면이다. 시스템(1000)은 입력 데이터(1100)와 입력 데이터베이스(1200)를 이용하여 금융 전문 특화된 학습 모델을 구축하고 이를 기반으로 의도 분류 및 기계 독해에 기반하여 심층 텍스트 이해를 통해 결과(1300)를 산출한다. 프로세서(1500)는 전술한 과정들을 수행하며 데이터베이스(1900)는 전술한 과정에서 산출된 개체명 사전, 학습 데이터, 임베딩 모델 등을 저장한다. 8 is a diagram showing the configuration of an artificial intelligence financial expert system according to an embodiment of the present invention. The system 1000 builds a financial specialized learning model using the input data 1100 and the input database 1200, and calculates a result 1300 through deep text understanding based on intent classification and machine reading comprehension based on this. . The processor 1500 performs the above processes, and the database 1900 stores the entity dictionary, learning data, embedding model, and the like calculated in the above process.

입력 데이터(1100)는 금융 특화 원시 말뭉치, 금융 질의 답변, 금융 관련 질문, 금융 문서 등을 일 실시예로 한다. The input data 1100 includes, for example, a finance-specific raw corpus, a finance query answer, a finance-related question, a financial document, and the like.

입력 데이터베이스(1200)는 대규모 비즈니스 데이터베이스, 금융질의세트, 금융기계독해 학습세트 등을 일 실시예로 한다. An example of the input database 1200 is a large-scale business database, a financial query set, a financial machine reading comprehension set, and the like.

도 8의 시스템은 실시간 금융텍스트 심층 이해 및 외부 지식베이스 활용을 위한 기계학습 기반 챗봇 시스템을 구현한 것이며 전술한 도 1 내지 도 7의 실시예에서 제시하는 프로세스를 구현한다. The system of FIG. 8 implements a machine learning-based chatbot system for in-depth understanding of real-time financial text and utilization of an external knowledge base, and implements the processes presented in the embodiments of FIGS. 1 to 7 described above.

도 8의 시스템은 금융도메인 언어처리를 위해 AI 애널리스트 지원 서비스 구현을 위한 대규모 비즈니스 데이터 수집하고 금융 도메인 데이터분석 및 자연어처리를 위한 기반지식을 금융용어 사전으로 구축한다. The system of FIG. 8 collects large-scale business data for implementing AI analyst support services for language processing in the financial domain, and builds base knowledge for data analysis and natural language processing in the financial domain into a dictionary of financial terms.

도 8의 시스템은 비정형 데이터로부터 금융 특화 인과관계 추출하기 위해 비정형 금융 정보 요약 기술 개발 및 자연어처리 기반 인과 관계 분석한다. The system of FIG. 8 develops unstructured financial information summary technology and analyzes causal relationships based on natural language processing in order to extract financial-specific causal relationships from unstructured data.

도 8의 시스템은 금융도메인 사전학습 언어모델을 구축하기 위해 금융정보의 실시간 텍스트 이해를 위한 학습모델을 구축하고, 실시간 금융정보 지원을 위한 학습모델을 고도화한다. 또한, 금융 도메인의 세부 영역에 따라 도 8의 시스템의 사전 학습 언어 모델을 경량화할 수 있고, 응용 도메인 특화 어휘 지식을 정제할 수 있다. The system of FIG. 8 builds a learning model for real-time text understanding of financial information in order to build a pre-learning language model for the financial domain, and advances the learning model for real-time financial information support. In addition, the pre-learning language model of the system of FIG. 8 can be lightened according to the detailed area of the financial domain, and the application domain-specific vocabulary knowledge can be refined.

도 8의 시스템은 금융 전문용어를 의미기반으로 처리하기 위해 의미 기반(긍/부정, 중요도, 하이라이트) 분석 모듈을 포함할 수 있다. The system of FIG. 8 may include a semantic-based (positive/negative, importance, highlight) analysis module to process financial terminology based on semantics.

도 8의 시스템은 금융도메인 사전학습 모델 기반으로 질의응답에 특화하여 답변과 의도 분류를 수행하기 위해 실시간 텍스트 이해를 위한 오픈소스 기반 기계독해 엔진을 포함할 수 있다. 아울러, 금융 전문가 수준의 투자정보 지원을 위한 질의응답 및 기계독해를 고도화시킬 수 있다. The system of FIG. 8 may include an open-source based machine reading comprehension engine for real-time text understanding in order to perform classification of answers and intentions specifically for question and answer based on a financial domain pre-learning model. In addition, Q&A and machine reading comprehension can be advanced to support investment information at the level of financial experts.

도 9는 본 발명의 일 실시예에 의한 S100, S200, S500, S600의 과정을 통합하여 제시한 도면이다. 프로세서(1500)는 S100, S200의 프로세스를 수행하여 임베딩 모델을 생성한다. 그리고 프로세서(1500)는 S500의 프로세스를 수행하여 학습 데이터를 생성한다. 9 is a diagram showing the integrated processes of S100, S200, S500, and S600 according to an embodiment of the present invention. The processor 1500 generates an embedding model by performing the processes of S100 and S200. Then, the processor 1500 generates learning data by performing the process of S500.

아울러, 프로세서(1500)는 S600 과정에서 개체명 사전과 대규모 비즈니스 데이터베이스를 이용하여 문서 필터링(S610)및 임베딩 비교(S620)를 수행하여 질문과 유사도가 높은 문서를 최종적으로 추출한다. In addition, the processor 1500 performs document filtering (S610) and embedding comparison (S620) using the entity name dictionary and large-scale business database in step S600 to finally extract documents having a high similarity to the question.

대규모 비즈니스 데이터는 국내외 뉴스, 정책 자료, 공시 자료, 기술 자료, 연구보고서 등을 수집한 결과이며, 이들은 비정형 데이터를 일 실시예로 한다. Large-scale business data is the result of collecting domestic and foreign news, policy data, public announcement data, technical data, research reports, etc., and these are unstructured data as an example.

도 10은 본 발명의 일 실시예에 의한 임베딩 모델과 학습 데이터를 적용하여 S300 및 S400의 프로세스를 수행하는 과정을 보여주는 도면이다. 10 is a diagram showing a process of performing the processes of S300 and S400 by applying an embedding model and learning data according to an embodiment of the present invention.

도 5 및 도 6의 프로세스를 통합하여 살펴본다. S310 및 S410은 금융 질의 세트 또는 금융 기계 독해 학습 세트와 학습 데이터를 이용하여 입력된 금융 관련 질문(또는 S410의 경우 금융문서 또는 도 8의 추출 문서와 함께 입력된 금융 관련 질문)을 전처리하는 과정이다(S11).The process of FIGS. 5 and 6 will be integrated and reviewed. S310 and S410 are processes of preprocessing an input finance-related question (or, in the case of S410, a finance-related question input together with a financial document or an extracted document of FIG. 8) using a financial query set or a financial machine reading comprehension training set and learning data. (S11).

프로세서(1500)는 S11의 처리된 결과에 임베딩 모델을 적용하여 입력된 질문이나 문서를 임베딩한다(S320, S420)(S12). 이를 기반으로 프로세서(1500)는 지도 학습 기반 분류 모델을 구축(S330)하여 금융 질의 의도 분류 모델을 생성할 수 있다(S13). 또는, 프로세서(1500)는 기계 독해 모델 학습을 수행하여(S430)하여 금융 문서 기계 독해 모델을 생성할 수 있다(S13).The processor 1500 applies the embedding model to the processed result of S11 to embed the input question or document (S320, S420) (S12). Based on this, the processor 1500 may build a supervised learning-based classification model (S330) to generate a financial query intent classification model (S13). Alternatively, the processor 1500 may perform machine reading comprehension model learning (S430) to generate a financial document machine reading comprehension model (S13).

그 결과 프로세서(1500)는 S14와 같이 입력된 질문의 의도를 분류하여(S340) 의도 분류 결과 및 답변을 생성한다. As a result, the processor 1500 classifies the intention of the input question as in S14 (S340) and generates an intention classification result and an answer.

또는, 프로세서(1500)는 S14와 같이 입력된 금융 관련 질문에 대한 답변을 검색하여 답변 추출 결과를 생성한다. Alternatively, the processor 1500 searches for an answer to the input finance-related question as in S14 and generates an answer extraction result.

전술한 실시예를 적용할 경우 리토크나이징을 적용하여 금융용어의 임베딩 효과를 높이도록 기술을 적용할 수 있다. When the above-described embodiment is applied, a technique can be applied to increase the embedding effect of financial terms by applying retalking.

예를 들어, 금융용어를 사전에 준비하고 이를 자체 형태소 분석기 및 사전 기반으로 처리하여 금융용어의 처리 과정에서 특정 용어가 사라지거나 혹은 분리되는 문제를 해결할 수 있다. For example, by preparing financial terms in advance and processing them based on its own morpheme analyzer and dictionary, it is possible to solve a problem in which specific terms disappear or are separated in the process of processing financial terms.

또한 말뭉치를 토크나이징(tokenizing)하는 과정에서 리토크나이징을 적용한다. 즉, 금융 용어 사전을 우선으로 하여 금융용어나 핵심 단어가 분리되지 않도록 처리할 수 있다. In addition, retalking is applied in the process of tokenizing the corpus. That is, it is possible to prioritize the financial terminology dictionary so that financial terms or key words are not separated.

아울러, 전술한 실시예를 적용할 경우 응답률 제고를 위한 외부 실시간 데이터베이스 활용 정답 검색 기술을 적용할 수 있다. In addition, when the above-described embodiment is applied, a correct answer search technology using an external real-time database can be applied to increase the response rate.

기존 질의 지식 데이터베이스에서 검색할 경우 확률 임계치가 낮은 질의에 대해서 외부 실시간 크롤링 데이터베이스를 사용하여 하기의 프로세스를 따를 수 있다. 즉, 외부 실시간 크롤링 데이터베이스에서 유사 문서 검색한다. 그리고, 관련 문서에 기계독해 모델을 통해 질의를 던져 가장 확률이 높은 답변을 찾아 응답으로 채택한다. When searching in the existing query knowledge database, the following process may be followed for a query having a low probability threshold using an external real-time crawling database. That is, similar documents are searched in an external real-time crawling database. Then, a query is queried to the related document through a machine reading comprehension model, and the answer with the highest probability is found and adopted as a response.

프로세서(1500)는 학습을 수행하고 모델을 생성하거나 이를 기반으로 필터링, 비교, 분류 등을 수행하는 모듈을 포함할 수 있다. The processor 1500 may include a module that performs learning, creates a model, or performs filtering, comparison, classification, and the like based thereon.

도 10의 실시예는 비정형 금융 정보의 요약 기술 및 자연어처리 기반 인과관계 분석을 더 포함할 수 있다. 도 8의 시스템(1000)은 금융 관련 뉴스기사 말뭉치 통한 시황 및 주식 종목별로 요약 데이터를 생성할 수 있다. 아울러, 도 8의 시스템(1000)은 문맥/의미역 기반 상호참조 관계를 분석하고 인과 지식 그래프를 구축할 수 있다. The embodiment of FIG. 10 may further include a summary description of unstructured financial information and a causal relationship analysis based on natural language processing. The system 1000 of FIG. 8 may generate summary data for each market condition and each stock item through a corpus of finance-related news articles. In addition, the system 1000 of FIG. 8 may analyze context/semantic role-based cross-reference relationships and construct a causal knowledge graph.

그 결과 도 8의 시스템(1000)은 의미 분석(긍/부정, 중요도, 하이라이트)기반 대화 처리를 수행하고, 그래프 지식 기반 인과 분석 결과를 생성하여 질문에 답변을 제공할 수 있다.As a result, the system 1000 of FIG. 8 may perform semantic analysis (positive/negative, importance, highlight)-based conversation processing, generate graph knowledge-based causal analysis results, and provide answers to questions.

한편, 도 8의 시스템(1000)은 오픈소스 기반 기계독해 엔진을 더 포함할 수 있다. 이는 공개 사전학습 언어모델 기반 질의-응답을 산출하여 질의에 대응하는 응답을 제공하는데 기계독해 엔진은 오픈소스 기반 금융 도메인 특화 기계독해 기능을 제공할 수 있다. Meanwhile, the system 1000 of FIG. 8 may further include an open source based machine reading comprehension engine. This calculates a query-response based on an open pre-learning language model and provides a response corresponding to the query.

질의-응답 및 기계독해 성능을 높이기 위해 도 8의 시스템(1000)은 금융도메인 특화 말뭉치 기반 질의응답 지식 자동 추출 모듈을 더 포함할 수 있다. 그리고 도 8의 시스템(1000)은 응용도메인 특화 사전학습 언어모델을 이용한 기계독해 기반 클로즈 도메인(Close-Domain) 질의응답 엔진을 더 포함할 수 있다. In order to improve performance of question-answering and machine reading comprehension, the system 1000 of FIG. 8 may further include a financial domain-specific corpus-based question-answering knowledge automatic extraction module. In addition, the system 1000 of FIG. 8 may further include a close-domain question-answering engine based on machine reading comprehension using a pre-learning language model specific to an application domain.

도 11은 본 발명의 실시 예에 따른 지도학습 분류 모델 및 기계 학습 시 사용하는 입력과 출력에 관한 설명을 도시한 도면이다. 도 11은 사용자 입력 정보의 종류와 형태가 무엇인지 보여준다.11 is a diagram illustrating a supervised learning classification model according to an embodiment of the present invention and an explanation of inputs and outputs used in machine learning. 11 shows the types and forms of user input information.

도 11은 상기 지도학습 기반 분류 모델 학습 및 이용 단계(S300)에서 실시 예에 따른 지도학습 기반 분류 모델 학습 시 사용하는 입력과 출력에 관한 설명 그림으로, 사용자 입력 정보의 종류와 형태가 무엇인지 보여준다.11 is an explanatory diagram of inputs and outputs used when learning a supervised learning-based classification model according to an embodiment in the supervised learning-based classification model learning and using step (S300), showing the type and form of user input information. .

도 12는 본 발명의 실시 예에 따른 기계독해 모델 학습 시 사용하는 입력과 출력에 관한 설명을 도시한 도면이다. 도 12는 입력 정보의 종류와 형태가 무엇인지 보여준다.12 is a diagram illustrating input and output used when learning a machine reading comprehension model according to an embodiment of the present invention. 12 shows what types and forms of input information are.

도 12는 상기 기계독해 모델 학습 및 이용 단계(S400)에서 실시 예에 따른 기계독해 모델 학습 시 사용하는 입력과 출력에 관한 설명 그림으로, 입력 및 출력 정보의 종류와 형태가 무엇인지 보여준다.12 is an explanatory diagram of inputs and outputs used when learning a machine reading comprehension model according to an embodiment in the machine reading comprehension model learning and use step (S400), showing the types and forms of input and output information.

도 13은 본 발명에 기재된 발명의 주요 실시예를 포함하는 챗봇 시스템의 전체적인 구성도이다.13 is an overall configuration diagram of a chatbot system including the main embodiments of the invention described in the present invention.

도 13은 본 발명의 주요 실시예에 따라 지도학습 및 기계독해 방법론을 이용한 질의 답변 검색 시스템의 전체적인 구성도이다. 13 is an overall configuration diagram of a question answer search system using supervised learning and machine reading comprehension methodologies according to a main embodiment of the present invention.

도 13은 전술한 S100~S600의 각 프로세스들을 수행하는 프로세서(1500)의 세부 구성요소들을 도시한 도면이다. 전처리 작업인 도메인/말뭉치 특화 토크나이저 학습 모델(1510)과 금융특화 사전학습 모델(1520)이다. FIG. 13 is a diagram showing detailed components of the processor 1500 performing each of the processes of S100 to S600 described above. These are the domain/corpus-specific tokenizer learning model (1510) and the financial-specific pre-learning model (1520), which are preprocessing tasks.

또한, 프로세서(1500)의 금융텍스트 의도분류 모델(1530)은 질문의 의도를 분류하고 해당 질문의 답변을 출력할 수 있다. In addition, the financial text intent classification model 1530 of the processor 1500 may classify the intent of the question and output an answer to the question.

또한, 프로세서(1500)의 관련 금융문서 추출 모듈(1560)은 문서 필터링 모듈(S610)과 임베딩 비교 모듈(S620)에 의한 작업 결과인 추출 문서를 기계 독해 모델(1540)에 입력한다. 기계독해 모델(S430)은 질문에 대해 답변을 출력한다. In addition, the related financial document extraction module 1560 of the processor 1500 inputs the extracted document, which is the result of the work performed by the document filtering module S610 and the embedding comparison module S620, to the machine reading comprehension model 1540. The machine reading comprehension model S430 outputs an answer to the question.

답변을 출력하는 최종 모델은 기계독해 모델(1540) 및 금융텍스트 의도 분류 모델(1530)이다. The final models that output answers are the machine reading comprehension model 1540 and the financial text intent classification model 1530.

도 14는 본 발명의 일 실시예에 의한 금융 도메인 언어처리를 위한 금융정보 자동 추출과정을 보여주는 도면이다. 금융도메인 언어처리에 특화하여 적용할 수 있다. 말뭉치 데이터는 애널리스트 리서치 보고서, 경제시황 보고서, 경제기사 등을 포함한다. 프로세서(1500)는 형태소 분석을 수행하du 키워드 및 복합어 사전을 구축한다. 그리고 사전을 고도화하기 위해 동의어 지식을 구축하고, 신규 개체명을 등록한다. 동의어는 동일 의미의 다른 표현으로 키워드 상 동의어로 처리할 수 있다. 신규 개체명을 등록할 경우 서로 관련된 단어들을 결합하여 등록할 수 있다. 14 is a diagram showing a process of automatically extracting financial information for language processing in the financial domain according to an embodiment of the present invention. It can be applied by specializing in language processing in the financial domain. Corpus data includes analyst research reports, economic market reports, and economic articles. The processor 1500 performs morpheme analysis and builds a dictionary of keywords and compound words. In order to advance the dictionary, knowledge of synonyms is built and new entity names are registered. Synonyms can be treated as synonyms on keywords with different expressions of the same meaning. When registering a new entity name, words related to each other can be combined and registered.

또한, 시스템(1000)은 실시간 금융 텍스트 이해 위한 학습모델을 구축할 수 있다. 금융도메인 특화 사전학습 언어모델을 구성하고 공개 사전학습 언어모델을 이용하여 응용 태스크 성능을 비교할 수 있다. 시스템(1000)은 도메인 특화된 말뭉치 데이터와 금융 도메인에 특화된 사전 학습 모델을 결합하고 언어모델을 인코더 학습시킬 수 있다. 특히, 말뭉치 데이터는 전화 상담이나 채팅 상담에서 생성된 데이터를 포함하며, 시스템(1000)은 이들을 전처리하여 문장을 학습시킬 수 있다. In addition, the system 1000 may build a learning model for real-time financial text understanding. A financial domain-specific pre-learning language model can be constructed and application task performance can be compared using the open pre-learning language model. The system 1000 may combine domain-specific corpus data and a pre-learning model specific to the financial domain and perform encoder training on the language model. In particular, the corpus data includes data generated from phone counseling or chatting counseling, and the system 1000 may pre-process them to learn sentences.

도 15는 본 발명의 일 실시예에 의한 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 과정을 도시한 도면이다. 15 is a diagram illustrating a process of classifying intentions for various queries in the financial domain and searching for answers based on a financial term language model according to an embodiment of the present invention.

전술한 실시예를 정리하면 다음과 같다. The foregoing embodiments are summarized as follows.

시스템(1000)의 프로세서(1500)가 제1입력 데이터를 이용하여 비지도학습 기반 개체명을 추출한다(S710). The processor 1500 of the system 1000 extracts an entity name based on unsupervised learning using the first input data (S710).

프로세서(1500)가 추출한 개체명을 시스템(1000)의 데이터베이스(1900)에 저장한다(S720). The entity name extracted by the processor 1500 is stored in the database 1900 of the system 1000 (S720).

프로세서(1500)가 데이터베이스(1900)에 저장된 개체명을 제1입력 데이터 또는 제2입력 데이터의 전처리된 결과에 적용하여 토크나이징을 수행한다(S730). 제1입력 데이터 및 제2입력 데이터는 시간차이를 두고 입력된 말뭉치 데이터를 일 실시예로 한다. 말뭉치 데이터는 금융 특화 원시 말뭉치 데이터를 일 실시예로 한다. 또는 제1입력 데이터는 말뭉치 데이터이고 제2입력 데이터는 질문 데이터인 것을 일 실시예로 한다. The processor 1500 performs tokenization by applying the object name stored in the database 1900 to the preprocessed result of the first input data or the second input data (S730). The first input data and the second input data are corpus data input with a time difference as an example. The corpus data is finance-specific raw corpus data as an example. Alternatively, as an embodiment, the first input data is corpus data and the second input data is question data.

개체명을 추출함에 있어서, 프로세서(1500)는 말뭉치에 포함된 문장을 전처리하여 초성과 중성과 종성으로 분리한 후, 문장에 포함된 알파벳을 대문자 또는 소문자로 일괄 변환하여 단어를 분리할 수 있다. 또한, 단어를 분리하는 과정에서 개체명 사전 및 금융 용어 사전에 포함된 단어는 하나의 단어로 처리하는 리토크나이징을 수행할 수 있다. In extracting entity names, the processor 1500 preprocesses sentences included in the corpus to separate them into initial consonants, neutral consonants, and final consonants, and then converts alphabets included in the sentences into uppercase or lowercase letters to separate words. Also, in the process of separating words, words included in the entity name dictionary and the financial terminology dictionary may be treated as a single word, and retalking may be performed.

프로세서(1500)가 토크나이징된 결과에 기반하여 금융용어 사전을 포함한 언어 모델을 구축하여 상기 데이터베이스에 저장한다(S740). The processor 1500 builds a language model including a dictionary of financial terms based on the tokenized result and stores it in the database (S740).

이후, 프로세서(1500)는 다수의 후보 금융 문서에 개체명 사전을 적용하여 문서를 필터링하여 하나 이상의 금융 문서를 추출한 결과 및 프로세서(1500)가 말뭉치에서 추출한 금융 질의 답변 문서를 이용하여 학습 데이터를 생성할 수 있다(S750).Thereafter, the processor 1500 generates training data using a result of extracting one or more financial documents by applying entity name dictionary to a plurality of candidate financial documents and filtering the documents, and the financial query answer document extracted by the processor 1500 from the corpus. It can be done (S750).

한편, 프로세서(1500)는 질문 데이터를 입력 데이터로 입력받은 후 질문 데이터에 대응하여 의도를 분류하거나 답변을 생성할 수 있다(S760). Meanwhile, after receiving question data as input data, the processor 1500 may classify intentions or generate answers corresponding to the question data (S760).

보다 상세히, 개체명을 추출하는 단계 또는 토크나이징을 수행하는 단계에서 프로세서(1500)는 데이터베이스(1900)에 저장된 개체명 사전 또는 금융용어 사전에 포함된 단어는 분리하지 않고 하나의 단어로 처리하는 리토크나이징을 수행할 수 있다. 또한, 이들 단어 사이에 스페이스(공백) 등 빈 공간이 있거나 기호 등이 포함된 경우 프로세서(1500)는 이를 수정하여 처리한다. In more detail, in the step of extracting the entity name or performing tokenization, the processor 1500 processes the word included in the entity name dictionary or financial term dictionary stored in the database 1900 as one word without separating it. Retonizing can be performed. In addition, if there is an empty space such as a space (blank) between these words or a symbol is included, the processor 1500 corrects and processes it.

예를 들어 "삼전주가" 라는 단어가 개체명 사전 또는 금융용어 사전에 포함된 경우, 말뭉치에서 "삼성 주가" 라거나 "삼성주 가" 와 같이 스페이스가 포함된 경우에 프로세서(1500)는 해당 단어를 하나의 단어로 처리하도록 리토크나이징을 수행할 수 있다. For example, if the word “Samjeonjuju” is included in the entity name dictionary or the financial terminology dictionary, and if a space is included, such as “Samsung stock price” or “Samsung stock price” in the corpus, the processor 1500 selects the word Retalking can be performed to treat it as a single word.

또한, 프로세서(1500)는 순차적으로 입력 데이터를 처리할 수 있다. 예를 들어, 다수의 말뭉치 데이터가 있으며, 제1 및 제2 입력 데이터가 모두 금융 특화 원시 말뭉치 데이터인 실시예를 살펴본다. 프로세서(1500)는 제1입력 데이터를 처리하여 개체명 사전 또는 금융용어 사전에 단어를 추가한 후, 새로운 제2입력 데이터를 처리하여 특정한 단어를 식별한다. 그리고 식별한 단어가 개체명 사전 또는 금융용어 사전에 없을 경우 이를 추가한다. Also, the processor 1500 may sequentially process input data. For example, an embodiment in which there is a plurality of corpus data and both the first and second input data are finance-specific raw corpus data will be described. The processor 1500 processes the first input data to add a word to the entity name dictionary or the financial term dictionary, and then processes the new second input data to identify a specific word. And, if the identified word does not exist in the entity name dictionary or financial term dictionary, it is added.

즉, 프로세서(1500)는 말뭉치에서 개체명 사전 또는 금융용어 사전에 포함되지 않는 단어를 식별하여 개체명 사전 또는 금융용어 사전에 추가하는 과정을 반복하여 수행할 수 있다. That is, the processor 1500 may repeatedly perform a process of identifying words not included in the entity dictionary or financial term dictionary from the corpus and adding them to the entity dictionary or financial term dictionary.

또한, 프로세서(1500)는 앞서 도 9의 S510, S520 과정을 수행할 수 있다. 예를 들어, 프로세서(1500)는 다수의 후보 금융 문서에 개체명 사전을 적용하여 문서를 필터링하여 하나 이상의 금융 문서를 추출한다. 또한, 프로세서(1500)는 말뭉치에서 추출한 금융 질의 답변 문서를 이용하여 학습 데이터를 생성한다. Also, the processor 1500 may perform steps S510 and S520 of FIG. 9 . For example, processor 1500 extracts one or more financial documents by applying entity name dictionaries to a number of candidate financial documents to filter the documents. Also, the processor 1500 generates learning data by using the financial question answer document extracted from the corpus.

금융 질의 답변 문서는 금융 질의 및 이에 대응하는 금융 답변을 포함하는 문서이다. The financial query answer document is a document including a financial query and a corresponding financial answer.

프로세서(1500)는 금융 질의 답변 문서에 포함된 답변의 위치 또는 답변의 길이에 따라 피쳐를 생성할 수 있으며 이는 학습 데이터에 반영된다. The processor 1500 may create a feature according to the position or length of the answer included in the financial query answer document, which is reflected in the training data.

이후, 프로세서(1500)는 질문 데이터를 입력받은 후, 이에 대해 의도를 분류하거나 답변을 생성할 수 있다. Then, after receiving question data, the processor 1500 may classify intentions or generate answers.

일 실시예로, 프로세서(1500)는 개체명 사전, 언어 모델 및 학습 데이터를 질문 데이터에 적용하여 질문 데이터의 질문의 의도를 분류하여 출력할 수 있다. As an embodiment, the processor 1500 may apply the entity name dictionary, language model, and learning data to question data to classify and output question intentions of the question data.

다른 실시예로, 프로세서(1500)는 개체명 사전, 언어 모델 및 학습 데이터를 질문 데이터에 적용하여 질문 데이터의 답변을 생성하여 출력할 수 있다. 이때, 프로세서(1500)는 질문의 의도를 분류하고 그 결과를 이용하여 질문 데이터의 답변을 생성할 수 있다. As another embodiment, the processor 1500 may generate and output an answer of the question data by applying the entity name dictionary, the language model, and the learning data to the question data. In this case, the processor 1500 may classify the intention of the question and generate an answer of the question data using the result.

도 16은 본 발명의 일 실시예에 의한 리토크나이징을 수행하는 과정을 상세히 보여주는 도면이다. 16 is a diagram showing in detail a process of performing retorquenizing according to an embodiment of the present invention.

도 16은 도 15의 S730 과정을 상세히 제시한다. 16 shows the process S730 of FIG. 15 in detail.

금융 특허 원시 말뭉치에서 S110/S120/S130을 통해 개체명 사전(1910)을 생성할 수 있다. 이때, 개체명 사전(1910)은 말뭉치에 기반한다. An object name dictionary 1910 may be generated from the original financial patent corpus through S110/S120/S130. At this time, the entity name dictionary 1910 is based on a corpus.

그리고 비지도 학습 기반 토크나이저를 적용한 결과(S220), 입력된 문장이나 문서 등에 대해 토크나이징 결과를 생성할 수 있다(S731, S732). In addition, a result of applying the tokenizer based on unsupervised learning (S220) and a tokenizing result for an input sentence or document may be generated (S731 and S732).

또한, 입력된 문장이나 문서 등에 대해 형태소 분석 POS(Part-Of-Speech)를 수행할 수 있으며(S731, S735), 이때, 자체 보유 금융 용어 사전(1920)이 적용되어 형태소 분석 POS는 리토크나이징 결과를 산출한다(S736). In addition, morpheme analysis POS (Part-Of-Speech) can be performed on the input sentence or document (S731, S735). The result is calculated (S736).

그 결과, 금융과 관련된 주요 단어들이 분리되지 않고 단어로 식별가능하게 토크나이징된 결과가 산출된다. As a result, key words related to finance are tokenized to be identifiable as words without being separated.

도 17은 본 발명의 일 실시예에 의한 금융용어 기반 리토크나이징을 수행하는 예시를 보여주는 도면이다. 17 is a diagram showing an example of performing financial term-based retalking according to an embodiment of the present invention.

도 17은 도 16의 S732 및 S736의 결과를 보여준다. 17 shows the results of S732 and S736 of FIG. 16 .

S731a와 같이 "오티피카드를 분실했는데 이체한도를 상향하려면 인터넷뱅킹 앱에서 가능한가요"라는 문장이 입력된다. 이때, 내부 단어 분리를 통한 사전을 적용하여 토크나이징을 수행한 결과는 S732a와 같다. As in S731a, the sentence "I lost my OTP card, but is it possible to increase the transfer limit in the Internet banking app?" is entered. At this time, the result of performing tokenization by applying a dictionary through internal word separation is the same as S732a.

S732a를 상세히 살펴보면, 시스템은 내부의 사전을 적용하여, S731a와 같이 입력된 문장에 포함된 각각의 단어들을 확인하고 토크나이징 한다. 예를 들어 사전에 포함된 단어들은 "신, 한, 오티피, 카드, 분실, 이체, 한도, 상향, 를, 하려면, 인터넷, 뱅킹, 앱, 에서, 가능" 와 같으며 이들 단어들은 토큰화된 단어이다. Examining S732a in detail, the system applies an internal dictionary to check and tokenize each word included in the input sentence as in S731a. For example, the words included in the dictionary are "God, Han, OTP, card, lost, transfer, limit, upward, to, internet, banking, app, from, possible", and these words are tokenized It is a word.

S732a는 사전(1910a)을 적용한 결과, "신 #한 오티피 #카드 #를 분실 #했는데 이체 #한도 를 상향 #하려면 인터넷 #뱅킹 #앱 #에서 가능 #한가요"와 같이 토큰화된 결과를 산출한 것이다. 전술한 사전을 적용한 결과, "#한"이 별도로 분리한 결과를 보여준다. 마찬가지로 S732a는 "오티피 #카드", "이체 #한도", "인터넷 #뱅킹" 등과 같이 금융에서 유의미하게 하나로 묶어서 사용되는 단어들이 분리된 결과를 보여준다. As a result of applying the dictionary (1910a), S732a produces a tokenized result such as "I have lost # a new OTP # card, but if I want to increase the transfer # limit, # is it possible in the Internet #banking #app #?" will be. As a result of applying the aforementioned dictionary, "#Han" shows a separate result. Similarly, S732a shows the result of separating words that are meaningfully grouped together in finance, such as "OTP #card", "transfer #limit", and "Internet #banking".

금융용어들이 낱개의 단어로 분리되는 것을 막기 위해, 시스템은 토큰화된 단어들에 대해 금융용어 사전(1920a)을 이용하여 금융 용어 우선 토크나이징을 수행한다. 그 결과 S736a와 같이 "신한", "오티피카드", "이체한도", "인터넷뱅킹" 등의 단어들이 하나의 단어가 되어 낱개의 글자로 분리되지 않도록 한다. To prevent financial terms from being split into individual words, the system performs financial term-first tokenization on the tokenized words using the financial term dictionary 1920a. As a result, as in S736a, words such as "Shinhan", "OTP Card", "transfer limit", and "Internet banking" become one word so that they are not separated into individual letters.

한편, 시스템은 "신한", "오티피카드", 이체한도", "인터넷뱅킹" 등의 단어들은 다시 토큰 id를 구성하기 위해 해당 개체명을 사전에 추가하는 프로세스를 수행한다(S739). 이와 같은 과정으로 금융 용어 사전에 포함된 단어들이 사전에 지속적으로 추가되며, 금융 용어가 분리되지 않고 유의미하게 하나의 단어로 구성될 수 있으며, 이에 따라 시스템은 입력된 문장이나 문서에 적합한 정보를 제공할 수 있다. On the other hand, the system performs a process of adding the corresponding object names to the dictionary in order to construct the token id again for words such as "Shinhan", "OTP Card", "transfer limit", and "Internet banking" (S739). As a process, the words included in the financial terminology dictionary are continuously added to the dictionary, and the financial terms can be meaningfully composed of one word without being separated, and accordingly, the system can provide information suitable for the input sentence or document. there is.

시스템 또는 시스템을 구성하는 프로세서는 금융기관의 고유 명사, 카드 명칭, 프로모션 명칭, 금융 서비스 명칭을 금융용어 사전에 포함시키는 작업을 주기적으로 또는 실시간으로 수행할 수 있다. 예를 들어 시스템은 각각의 금융기관들 또는 거래 계약을 체결한 금융기관들로부터 주기적으로 또는 실시간으로 금융 서비스에 관한 신규 프로모션 정보가 포함된 문서 또는 금융 서비스(보험, 증권, 펀드 등의 다양한 금융 서비스를 포함)의 소개 또는 서비스 런칭을 홍보하는 문서, 또는 신규 카드 명칭에 대한 홍보 문서 등을 수신한다. The system or a processor constituting the system may periodically or in real time perform an operation of including proper nouns of financial institutions, card names, promotion names, and financial service names in the financial terminology dictionary. For example, the system provides documents or financial services (various financial services such as insurance, securities, and funds) containing new promotional information about financial services periodically or in real time from each financial institution or financial institutions that have entered into a transaction contract. Including) receives a document promoting the introduction or service launch, or a publicity document for a new card name.

그리고 시스템 또는 시스템을 구성하는 프로세서는 수신한 문서에서 제목에 포함되었거나, 키워드로 분류되었거나, 혹은 개체명 사전에는 없으나 반복 등장하는 단어들을 금융용어 사전에 포함시킨다. In addition, the system or the processor constituting the system includes words that are included in the title of the received document, classified as keywords, or that do not appear in the entity dictionary but appear repeatedly, in the dictionary of financial terms.

그 결과, 새로운 금융 용어들이 실시간 또는 주기적으로 금융용어 사전에서 업데이트 될 수 있으므로, 추후 관련된 질문이나 상담에 대해 정확한 답변을 생성할 수 있다. As a result, since new financial terms can be updated in the financial terminology dictionary in real time or periodically, accurate answers to questions or consultations related to the future can be generated.

아울러, 전술한 수신 문서들에는 관련 금융 용어들에 대한 설명이 포함되어 있으므로, 시스템 또는 시스템을 구성하는 프로세서는 수신한 문서를 파싱하여 답변 또는 설명에 해당하는 내용들을 추후 답변으로 이용할 수 있도록 한다. In addition, since the above-described received documents include explanations of related financial terms, the system or a processor constituting the system parses the received documents so that the contents corresponding to the answers or explanations can be used as answers later.

또한, 시스템은 금융용어 사전을 유지하면서, 특정 금융기관에 한정된 단어들에 대해서는 지속적으로 관리를 하여, 다른 금융기관에 서비스를 제공할 경우, 해당 단어들은 일반적인 단어로 판단하도록 한다. In addition, while maintaining a dictionary of financial terms, the system continuously manages words limited to a specific financial institution, so that when services are provided to other financial institutions, the words are determined as general words.

예를 들어, 표 1과 같이 금융용어 사전에는 각 금융기관별로 코드 번호를 할당하여 저장한다. For example, as shown in Table 1, a code number is allocated and stored for each financial institution in the financial terminology dictionary.

단어word CodeCode K은행K bank 0012300123 K은행플러스보험K Bank Plus Insurance 0012300123 C은행C bank 0032100321 C은행해피펀드C Bank Happy Fund 0032100321

그리고 시스템은 K은행 관련하여 답변을 생성하거나 의도를 분류할 경우에는 코드 값이 "00123"인 단어들을 금융용어로 처리한다. 또한, 시스템은 K은행 관련하여 답변을 생성하거나 의도를 분류할 경우에는 C은행 관련한 코드 값이 "00321"인 단어들은 금융용어가 아닌 것으로 처리한다. In addition, when generating an answer or classifying an intention in relation to K bank, the system processes words having a code value of “00123” as financial terms. In addition, when generating an answer or classifying an intention related to Bank K, the system treats words having a code value of “00321” related to Bank C as non-financial terms.

그 결과 시스템은 K은행에 관련할 경우 해당 금융기관이 제공하는 서비스에 특화하여 답변을 생성하거나 의도를 분류할 수 있다. As a result, the system can generate an answer or classify intentions specific to the service provided by the financial institution in relation to K bank.

마찬가지로 C은행 관련하여 답변을 생성하거나 의도를 분류할 경우에는 코드 값이 "00321"인 단어들을 금융용어로 처리한다. 또한, 시스템은 C은행 관련하여 답변을 생성하거나 의도를 분류할 경우에는 K은행 관련한 코드 값이 "00123"인 단어들은 금융용어가 아닌 것으로 처리한다.Similarly, when generating an answer or classifying an intention in relation to Bank C, words having a code value of “00321” are treated as financial terms. In addition, when generating an answer or classifying an intention in relation to Bank C, the system treats words having a code value of “00123” in relation to Bank K as non-financial terms.

그 결과 시스템은 C은행에 관련할 경우 해당 금융기관이 제공하는 서비스에 특화하여 답변을 생성하거나 의도를 분류할 수 있다. As a result, the system can generate an answer or classify intent when it relates to Bank C, specific to the services provided by that financial institution.

전술한 실시예와 같이 금융용어사전에 관련 금융기관 코드를 포함시킴으로써, 금융기관에 특화한 서비스를 제공할 수 있다. As in the above-described embodiment, by including the relevant financial institution code in the financial terminology dictionary, it is possible to provide a service specialized to a financial institution.

정리하면, 시스템은 K은행과 관련한 답변 생성/의도 분류의 경우에는 K은행에서 고유하게 사용하는 금융용어들을 반영하므로 정확도를 높일 수 있다. C은행에 대해서도 마찬가지이다. In summary, in the case of answer generation/intention classification related to K bank, the system reflects the financial terms uniquely used by K bank, so accuracy can be increased. The same goes for Bank C.

또한, 동일한 금융용어들을 다수의 금융기관이 사용할 경우, 시스템은 해당 단어는 특정 금융기관의 금융용어로 처리하지 않고, 일반적인 금융용어로 처리한다. 예를 들어, 표 1에서 "해피펀드"라는 단어가 다수의 금융기관에서 사용할 경우, "해피펀드"라는 단어 자체를 범용적인 금융용어로 처리하도록 시스템이 해당 단어에 대해 금융기관 코드를 삭제할 수 있다.In addition, when a plurality of financial institutions use the same financial terms, the system does not process the words as financial terms of a specific financial institution, but processes them as general financial terms. For example, in Table 1, if the word "Happy Fund" is used by a number of financial institutions, the system can delete the financial institution code for the word so that the word "Happy Fund" itself is treated as a general financial term. .

전술한 실시예를 구현할 경우, 종래의 목적지향 대화시스템 및 챗봇 시스템의 지식베이스 구축의 한계와 검색 기반질의 응답 시스템의 성능의 한계를 보완할 수 있다. 최근 다양한 공공, 유통 등 다양한 응용 도메인에서 고객 상담, 직원용 챗봇, RPA 서비스 등 목적지향 대화시스템 및 질의 응답 시스템을 이용한 챗봇 서비스가 많아졌고, 응용 도메인에 따른 지식 데이터베이스 구축 및 관리에 한계 및 어려움이 드러나고 있어 본 발명의 실시예를 적용할 경우 또는 이를 응용하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 답변을 검색할 수 있는 서비스를 제공할 수 있다. In the case of implementing the above-described embodiment, it is possible to supplement the limitations of building a knowledge base of a conventional destination-oriented conversation system and chatbot system and the performance limitations of a search-based question-answering system. Recently, chatbot services using destination-oriented conversation systems and question and answer systems such as customer consultation, employee chatbots, and RPA services have increased in various application domains such as public and distribution, and there are limitations and difficulties in building and managing knowledge databases according to application domains. Therefore, when an embodiment of the present invention is applied or applied, a service capable of classifying intentions for various queries in the financial domain and searching for answers can be provided.

본 발명의 시스템(1000)은 비정형 텍스트가 입력되면 이를 분석함에 있어서, 질의어, 개체명 등을 분석하는데 적용할 기본 사전을 데이터베이스(1900)에 포함한다. 프로세서(1500)는 비지도 학습 기반의 어휘 분절(토크나이저) 학습 방법을 적용하였으며, 이를 통해 질의어/색인어 사전의 특성을 가지는 개체명 사전을 응용 도메인에 특화하여 최적으로 제공할 수 있다. The system 1000 of the present invention includes in the database 1900 a basic dictionary to be applied to analyze a query word, object name, etc., in analyzing unstructured text input. The processor 1500 applies an unsupervised learning-based lexical segmentation (tokenizer) learning method, and through this, it is possible to optimally provide an entity dictionary having the characteristics of a query/index word dictionary specialized for an application domain.

본 발명의 시스템(1000)은 금융 도메인 말뭉치를 추가로 수집하고 사전학습 언어모델 학습을 통해 금융권에 특화된 언어 모델을 구축하여, 관련(금융/투자) 복잡한 전처리나 지식 구축 작업을 최소화하고 응용 도메인의 다양한 서비스에 공통적으로 이용하기 위한 입력 처리 절차를 제공할 수 있다. 또한, 본 발명의 시스템(1000)은 질문 분류, 텍스트 추론 등 심층 텍스트 이해 및 기계독해 등의 프로세스를 제공하여 성능의 최적화를 가능하게 한다. The system 1000 of the present invention additionally collects the financial domain corpus and builds a language model specialized for the financial sector through pre-learning language model learning, minimizing related (financial/investment) complex preprocessing or knowledge building work, and An input processing procedure for common use in various services can be provided. In addition, the system 1000 of the present invention enables performance optimization by providing processes such as deep text understanding and machine reading comprehension, such as question classification and text reasoning.

또한, 본 발명의 시스템(1000)은 지도학습 기반 의도분류 모델을 적용하여, 고객의 질의에 대한 의도를 분류할 수 있다. 의도 분류 모델을 구축하여 오분류/미분류 사례에 대한 추가 학습 프로세스를 구현하여 기존 분류 모델의 성능을 최소한의 노력으로 개선할 수 있는 시스템을 구성하였다. In addition, the system 1000 of the present invention may classify the intention of the customer's query by applying a supervised learning-based intention classification model. By building an intent classification model and implementing an additional learning process for misclassified/unclassified cases, we constructed a system that can improve the performance of an existing classification model with minimal effort.

또한, 본 발명의 시스템(1000)은 입력에 대한 의미 및 내재적 정보에 기반한 텍스트 추론 기술을 적용하여, 의도분류 모델에서 답을 찾지 못하는 경우에도 유사한 절의나 문서를 검색할 수 있는 기능을 추가하여 지식 데이터베이스에 정의되지 않은 질의에 대한 답변에 대한 응답률을 개선할 수 있다.In addition, the system 1000 of the present invention applies text reasoning technology based on semantic and intrinsic information to input, and adds a function to search for similar clauses or documents even when an answer cannot be found in the intent classification model, thereby providing knowledge The response rate for answers to queries not defined in the database can be improved.

또한, 본 발명의 시스템(1000)은 정확한 문서 색인, 신속한 검색을 통해 실시간으로 외부 지식 베이스의 관련 문서를 검색하거나 문서에서 미리 정의되지 않은 질의에 대한 답변을 자동으로 추출하여 질의응답의 결과로 제공할 수 있다. In addition, the system 1000 of the present invention searches related documents in an external knowledge base in real time through accurate document index and rapid search, or automatically extracts answers to undefined questions from documents and provides them as a result of a question and answer. can do.

본 발명의 실시 예에 따른 방법들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.Methods according to embodiments of the present invention may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on the medium may be those specially designed and configured for the present invention or those known and usable to those skilled in computer software.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 전술된 실시예는 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해되어야 하며, 본 발명의 범위는 전술된 상세한 설명보다는 후술될 특허청구범위에 의해 나타내어질 것이다. 그리고 이 특허청구범위의 의미 및 범위는 물론, 그 등가개념으로부터 도출되는 모든 변경 및 변형 가능한 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.As described above, although the present invention has been described by the limited embodiments and drawings, the present invention is not limited to the above embodiments, and those skilled in the art in the field to which the present invention belongs can make various modifications and variations from these descriptions. this is possible It should be understood that the foregoing embodiments are illustrative in all respects and not restrictive, and the scope of the present invention will be indicated by the following claims rather than the foregoing detailed description. And it should be construed that all changes and transformable forms derived from the meaning and scope of the claims, as well as their equivalent concepts, are included in the scope of the present invention.

따라서, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위 및 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments and should not be defined, and should be defined by the following claims and equivalents to these claims.

1000: 시스템 1500: 프로세서
1900: 데이터베이스
1000: system 1500: processor
1900: database

Claims (12)

시스템의 프로세서가 제1입력 데이터를 이용하여 비지도학습 기반 개체명을 추출하는 단계;
상기 프로세서가 상기 추출한 개체명을 상기 시스템의 데이터베이스에 저장하는 단계;
상기 프로세서가 상기 데이터베이스에 저장된 개체명을 상기 제1입력 데이터 또는 제2입력 데이터의 전처리된 결과에 적용하여 토크나이징을 수행하는 단계; 및
상기 프로세서가 토크나이징된 결과에 기반하여 금융용어 사전을 포함한 언어 모델을 구축하여 상기 데이터베이스에 저장하는 단계를 포함하며, 상기 개체명을 추출하는 단계 또는 상기 토크나이징을 수행하는 단계는
상기 프로세서가 상기 데이터베이스에 저장된 개체명 사전 또는 상기 금융용어 사전에 포함된 단어는 분리하지 않고 하나의 단어로 처리하는 단계를 포함하는, 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 방법.
extracting, by a processor of the system, an entity name based on unsupervised learning using first input data;
storing, by the processor, the extracted object name in a database of the system;
performing tokenization by the processor by applying the entity name stored in the database to the preprocessed result of the first input data or the second input data; and
The processor builds a language model including a dictionary of financial terms based on the tokenized result and stores it in the database, and the step of extracting the entity name or the step of performing the tokenizing
The processor determines the intent for various queries in the financial domain based on the financial terminology language model, including the step of processing, by the processor, a word included in the entity name dictionary stored in the database or the financial terminology dictionary as a single word without separating it. How to categorize and search for answers.
제1항에 있어서,
상기 프로세서는 금융기관의 고유 명사, 카드 명칭, 프로모션 명칭, 금융 서비스 명칭을 상기 금융용어 사전에 포함시키는 단계를 더 포함하는, 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 방법.
According to claim 1,
The processor classifies intentions for various queries in the financial domain based on a financial term language model, further comprising the step of including a proper noun of a financial institution, a card name, a promotion name, and a financial service name in the financial term dictionary, and how to search for answers.
제1항에 있어서,
상기 제1 및 제2 입력 데이터는 금융 특화 원시 말뭉치 데이터이며,
상기 프로세서는 상기 말뭉치에서 상기 개체명 사전 또는 상기 금융용어 사전에 포함되지 않는 단어를 식별하여 상기 개체명 사전 또는 상기 금융용어 사전에 추가하는 단계를 포함하는, 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 방법.
According to claim 1,
The first and second input data are financial-specific raw corpus data,
The processor identifies a word not included in the entity dictionary or the financial term dictionary from the corpus and adds it to the entity dictionary or the financial term dictionary, based on the financial term language model. How to categorize intent and retrieve answers to various queries.
제3항에 있어서,
상기 프로세서가 다수의 후보 금융 문서에 상기 개체명 사전을 적용하여 문서를 필터링하여 하나 이상의 금융 문서를 추출한 결과 및 상기 프로세서가 상기 말뭉치에서 추출한 금융 질의 답변 문서를 이용하여 학습 데이터를 생성하는 단계를 더 포함하는, 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 방법.
According to claim 3,
Generating, by the processor, learning data using a result of extracting one or more financial documents by filtering documents by applying the entity name dictionary to a plurality of candidate financial documents and, by the processor, a financial query answer document extracted from the corpus. A method of classifying intentions and retrieving answers to various queries in the financial domain based on a financial terminology model, comprising:
제4항에 있어서,
상기 금융 질의 답변 문서는 금융 질의 및 이에 대응하는 금융 답변을 포함하는 문서이며,
상기 프로세서는 상기 금융 질의 답변 문서에 포함된 상기 답변의 위치 또는 답변의 길이에 따라 피쳐를 생성하는 단계를 더 포함하는, 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 방법.
According to claim 4,
The financial query answer document is a document including a financial query and a corresponding financial answer,
The processor classifies intentions for various queries in the financial domain based on a financial term language model, further comprising generating a feature according to the position of the answer or the length of the answer included in the financial query answer document, and How to search for answers.
제4항에 있어서,
상기 프로세서가 질문 데이터를 입력받는 단계; 및
상기 프로세서는 상기 개체명 사전, 상기 언어 모델 및 상기 학습 데이터를 상기 질문 데이터에 적용하여 상기 질문 데이터의 질문의 의도를 분류하여 출력하는 단계를 더 포함하는, 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 방법.
According to claim 4,
receiving, by the processor, question data; and
The processor applies the entity name dictionary, the language model, and the learning data to the question data to classify and output the intent of the question of the question data, based on the financial terminology language model. How to categorize intent and retrieve answers to various queries.
제4항에 있어서,
상기 프로세서가 질문 데이터를 입력받는 단계; 및
상기 프로세서는 상기 개체명 사전, 상기 언어 모델 및 상기 학습 데이터를 상기 질문 데이터에 적용하여 상기 질문 데이터의 답변을 생성하여 출력하는 단계를 더 포함하는, 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 방법.
According to claim 4,
receiving, by the processor, question data; and
The processor generates and outputs an answer to the question data by applying the entity name dictionary, the language model, and the learning data to the question data, wherein various queries in the financial domain are made based on the financial terminology language model. How to categorize intentions and search for answers.
제1항에 있어서,
상기 제1 및 제2 입력 데이터는 금융 특화 원시 말뭉치이며,
상기 개체명을 추출하는 단계는
상기 프로세서가 상기 말뭉치에 포함된 문장을 전처리하여 초성과 중성과 종성으로 분리한 후, 상기 문장에 포함된 알파벳을 대문자 또는 소문자로 일괄 변환하여 단어를 분리하는 단계를 더 포함하는, 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 방법.
According to claim 1,
The first and second input data are financial-specific raw corpus,
The step of extracting the object name is
The processor pre-processes the sentences included in the corpus to separate them into initial consonants, neutral consonants, and final consonants, and then converts alphabets included in the sentences into uppercase letters or lowercase letters to separate words, further comprising a step of separating words. A method for classifying intentions and retrieving answers for various queries in the financial domain based on
입력 데이터, 입력 데이터베이스를 이용하여 정보를 처리하는 프로세서; 및
상기 프로세서가 생성한 정보를 저장하는 데이터베이스를 포함하며,
상기 프로세서가 제1입력 데이터를 이용하여 비지도학습 기반 개체명을 추출하고, 상기 추출한 개체명을 상기 데이터베이스에 저장하며,
상기 프로세서가 상기 데이터베이스에 저장된 개체명을 상기 제1입력 데이터 또는 제2입력 데이터의 전처리된 결과에 적용하여 토크나이징을 수행하며,
상기 프로세서가 토크나이징된 결과에 기반하여 금융용어 사전을 포함한 언어 모델을 구축하여 상기 데이터베이스에 저장하며, 상기 프로세서는 상기 데이터베이스에 저장된 개체명 사전 또는 상기 금융용어 사전에 포함된 단어는 분리하지 않고 하나의 단어로 처리하는, 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 시스템.
a processor that processes information using input data and an input database; and
A database for storing information generated by the processor,
The processor extracts an unsupervised learning-based entity name using the first input data, and stores the extracted entity name in the database;
The processor performs tokenization by applying the entity name stored in the database to the preprocessed result of the first input data or the second input data,
Based on the tokenized result, the processor builds a language model including a financial terminology dictionary and stores it in the database, and the processor does not separate the entity name dictionary stored in the database or words included in the financial terminology dictionary. A system for classifying intentions for various queries in the financial domain and retrieving answers based on a language model of financial terms that is processed as a single word.
제9항에 있어서,
상기 프로세서는 금융기관의 고유 명사, 카드 명칭, 프로모션 명칭, 금융 서비스 명칭을 상기 금융용어 사전에 포함시키는, 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 시스템.
According to claim 9,
The processor classifies intentions for various queries in the financial domain based on a financial terminology language model that includes proper nouns of financial institutions, card names, promotion names, and financial service names in the financial terminology dictionary, and searches for answers. system.
제9항에 있어서,
상기 제1 및 제2 입력 데이터는 금융 특화 원시 말뭉치 데이터이며,
상기 프로세서는 상기 말뭉치에서 상기 개체명 사전 또는 상기 금융용어 사전에 포함되지 않는 단어를 식별하여 상기 개체명 사전 또는 상기 금융용어 사전에 추가하는, 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 시스템.
According to claim 9,
The first and second input data are financial-specific raw corpus data,
The processor identifies words not included in the entity dictionary or the financial term dictionary from the corpus and adds them to the entity dictionary or the financial term dictionary, based on a financial terminology language model for various queries in the financial domain. A system that categorizes intent and retrieves answers.
제11항에 있어서,
상기 프로세서는 다수의 후보 금융 문서에 상기 개체명 사전을 적용하여 문서를 필터링하여 하나 이상의 금융 문서를 추출한 결과 및 상기 프로세서가 상기 말뭉치에서 추출한 금융 질의 답변 문서를 이용하여 학습 데이터를 생성하는, 금융 용어 언어 모델에 기반하여 금융 도메인의 다양한 질의에 대한 의도를 분류하고 및 답변을 검색하는 시스템.

According to claim 11,
The processor generates learning data using a result of extracting one or more financial documents by filtering documents by applying the entity name dictionary to a plurality of candidate financial documents and a financial query answer document extracted by the processor from the corpus. A system for classifying intentions and retrieving answers for various queries in the financial domain based on language models.

KR1020220020842A 2021-11-25 2022-02-17 Method of classifying intention of various question and searching answers of financial domain based on financial term language model and system impelemting thereof KR20230077588A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210164238 2021-11-25
KR20210164238 2021-11-25

Publications (1)

Publication Number Publication Date
KR20230077588A true KR20230077588A (en) 2023-06-01

Family

ID=86770844

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020220020842A KR20230077588A (en) 2021-11-25 2022-02-17 Method of classifying intention of various question and searching answers of financial domain based on financial term language model and system impelemting thereof
KR1020220020843A KR20230077589A (en) 2021-11-25 2022-02-17 Method of classifying intention of various question and searching answers of financial domain using external databse and system impelemting thereof

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020220020843A KR20230077589A (en) 2021-11-25 2022-02-17 Method of classifying intention of various question and searching answers of financial domain using external databse and system impelemting thereof

Country Status (1)

Country Link
KR (2) KR20230077588A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117892799A (en) * 2024-03-15 2024-04-16 中国科学技术大学 Financial intelligent analysis model training method and system with multi-level tasks as guidance

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117892799A (en) * 2024-03-15 2024-04-16 中国科学技术大学 Financial intelligent analysis model training method and system with multi-level tasks as guidance

Also Published As

Publication number Publication date
KR20230077589A (en) 2023-06-01

Similar Documents

Publication Publication Date Title
Chan et al. A text-based decision support system for financial sequence prediction
Alwaneen et al. Arabic question answering system: a survey
WO2021076606A1 (en) Conceptual, contextual, and semantic-based research system and method
US20150081277A1 (en) System and Method for Automatically Classifying Text using Discourse Analysis
US20050080613A1 (en) System and method for processing text utilizing a suite of disambiguation techniques
US20110213804A1 (en) System for extracting ralation between technical terms in large collection using a verb-based pattern
Kmail et al. An automatic online recruitment system based on exploiting multiple semantic resources and concept-relatedness measures
CN112925918B (en) Question-answer matching system based on disease field knowledge graph
Devi et al. A hybrid document features extraction with clustering based classification framework on large document sets
Alyami et al. Systematic literature review of Arabic aspect-based sentiment analysis
Lahbari et al. Toward a new arabic question answering system.
Kumar et al. A summarization on text mining techniques for information extracting from applications and issues
KR20230077588A (en) Method of classifying intention of various question and searching answers of financial domain based on financial term language model and system impelemting thereof
Benali et al. New approach for Arabic named entity recognition on social media based on feature selection using genetic algorithm
Khaing et al. Stock trend extraction using rule-based and syntactic feature-based relationships between named entities
CN115828854B (en) Efficient table entity linking method based on context disambiguation
Atwan et al. The use of stemming in the Arabic text and its impact on the accuracy of classification
El Vaigh et al. Irisa system for entity detection and linking at clef hipe 2020
KR20220068937A (en) Standard Industrial Classification Based on Machine Learning Approach
El Idrissi Esserhrouchni et al. Learning domain taxonomies: The TaxoLine approach
Loukam et al. Keyphrase extraction from modern standard Arabic texts based on association rules
Maria et al. A new model for Arabic multi-document text summarization
Maheswari et al. Rule based morphological variation removable stemming algorithm
Handayani et al. Sentiment Analysis of Bank BNI User Comments Using the Support Vector Machine Method
Sati et al. Arabic text question answering from an answer retrieval point of view: A survey