KR20220017655A - System and method for retrieving information using voice recognition and computer program for the same - Google Patents
System and method for retrieving information using voice recognition and computer program for the same Download PDFInfo
- Publication number
- KR20220017655A KR20220017655A KR1020200097891A KR20200097891A KR20220017655A KR 20220017655 A KR20220017655 A KR 20220017655A KR 1020200097891 A KR1020200097891 A KR 1020200097891A KR 20200097891 A KR20200097891 A KR 20200097891A KR 20220017655 A KR20220017655 A KR 20220017655A
- Authority
- KR
- South Korea
- Prior art keywords
- voice input
- input data
- information retrieval
- query
- data
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 46
- 238000004590 computer program Methods 0.000 title claims description 6
- 230000004044 response Effects 0.000 claims abstract description 27
- 238000004891 communication Methods 0.000 claims abstract description 11
- 238000003672 processing method Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 description 10
- 238000012545 processing Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007790 scraping Methods 0.000 description 1
- 230000033772 system development Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3325—Reformulation based on results of preceding query
- G06F16/3326—Reformulation based on results of preceding query using relevance feedback from the user, e.g. relevance feedback on documents, documents sets, document terms or passages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3334—Selection or weighting of terms from queries, including natural language queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3335—Syntactic pre-processing, e.g. stopword elimination, stemming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/338—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L2015/081—Search algorithms, e.g. Baum-Welch or Viterbi
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
실시예들은 정보 검색 시스템 및 방법과 이를 위한 컴퓨터 프로그램에 관한 것이다. 보다 상세하게는, 실시예들은 음성 인식을 주된 인터페이스로 활용하여 정보를 검색하는 정보 검색 시스템과 방법에 있어서, 사용자의 다양한 질문이 동일한 기능으로 수렴될 수 있는 음성 인식의 특징을 고려하여, 사용자의 음성 입력을 대표질의 및 조건절 형태로 정리하여 정보를 검색함으로써 원활한 음성 인식 활용을 가능하게 하는 기술에 대한 것이다. Embodiments relate to an information retrieval system and method and a computer program therefor. More specifically, the embodiments provide an information retrieval system and method for retrieving information using voice recognition as a main interface, in consideration of the characteristics of voice recognition in which various questions of the user can be converged into the same function, the user's It is about a technology that enables the smooth use of voice recognition by arranging voice input in the form of representative queries and conditional clauses and searching for information.
기업 대 기업간(Business to Business; B2B) 전자상거래 데이터와 같은 B2B 정보 검색은, 통상의 정보 검색과 달리 인증키를 가진 특정인만 데이터에 접근할 수 있는 점에서 폐쇄성을 특징으로 한다. 이처럼 폐쇄적인 데이터에 접근하여 이를 활용하기 위해, 스크래핑(scraping)을 통한 정보 조회나, 사전에 협의된 API(Application Programming Interface)를 이용한 정보 조회 등의 방법이 사용될 수 있다. B2B information retrieval such as business to business (B2B) e-commerce data is characterized by closedness in that only a specific person with an authentication key can access data, unlike normal information retrieval. In order to access and utilize such closed data, methods such as information inquiry through scraping or information inquiry using an API (Application Programming Interface) agreed upon in advance may be used.
B2B 정보 검색 서비스의 경우 어떤 방식으로 데이터를 가져오는지에 따라 서비스의 특징이 달라지며, 데이터의 적시성이나 2차 가공 가능성도 달라지게 된다. 특히, 모바일 장치를 이용하는 경우나 음성 인식을 이용하는 경우에는 인터페이스의 특징 상 사용자에게 제공할 수 있는 정보의 양이 한정되어 있으며, 따라서 어떠한 정보를 어떤 방식으로 가져오는지가 서비스의 특징을 규정하는 중요한 선택이 된다. In the case of a B2B information retrieval service, the characteristics of the service change depending on how data is retrieved, and the timeliness of the data and the possibility of secondary processing also change. In particular, in the case of using a mobile device or using voice recognition, the amount of information that can be provided to the user is limited due to the characteristics of the interface. becomes this
음성 인식을 주된 인터페이스로 활용하는 서비스의 경우, 한정된 정보 내에서 서비스의 기능을 구현하려면 음성 인식을 통해 어떤 기능을 수행 가능한지 사용자에게 설명을 제공할 필요가 있고, 또한 사용자의 다양한 발화가 기능적으로는 동일한 기능으로 수렴되는 경우가 많은 특징이 있다. 그러나, 종래의 B2B 정보 검색 서비스는 음성 인식 인터페이스의 특징을 고려하여 정보의 검색 및 제공 과정이 설계되어 있지 않아 음성에 기반한 원활한 사용이 어려운 한계를 가져 왔다. In the case of a service that uses voice recognition as its main interface, in order to implement the function of the service within limited information, it is necessary to provide an explanation to the user of what functions can be performed through voice recognition. There are many features that converge to the same function. However, since the conventional B2B information retrieval service is not designed for information retrieval and provision in consideration of the characteristics of the voice recognition interface, it is difficult to use it smoothly based on voice.
본 발명의 일 측면에 따르면, 동일한 기능으로 수렴되는 사용자의 다양한 질문에 상응하는 대표질의를 설정하고, 사용자의 음성 입력을 대표질의 및 조건절 형태로 정리하여 정보를 검색함으로써 원활한 음성 인식 활용을 가능하게 하는 정보 검색 시스템 및 방법과 이를 위한 컴퓨터 프로그램을 제공할 수 있다. According to one aspect of the present invention, it is possible to use voice recognition smoothly by setting representative queries corresponding to various questions of the user converging to the same function, and arranging the user's voice input in the form of representative queries and conditional clauses to retrieve information. It is possible to provide an information retrieval system and method and a computer program for the same.
본 발명의 일 측면에 따른 정보 검색 시스템은, 음성 입력 데이터로부터 탐지되며 미리 설정된 하나 이상의 속성어 중 호출 데이터를 정의하는 속성어를 이용하여 상기 음성 입력 데이터를 미리 설정된 복수의 대표질의 중 어느 하나에 대응시키도록 구성된 대표질의 결정부, 및 상기 음성 입력 데이터로부터 탐지된 속성어 중 검색 조건을 정의하는 속성어를 이용하여 상기 음성 입력 데이터에 상응하는 조건절을 생성하도록 구성된 조건절 결정부를 포함하는 질의 인식부; 상기 음성 입력 데이터에 상응하는 상기 대표질의 및 상기 조건절을 이용하여 데이터베이스로부터 정보를 검색하기 위한 쿼리(query)문을 생성하도록 구성된 쿼리 생성부; 및 상기 쿼리문을 이용하여 상기 데이터베이스를 검색함으로써 상기 음성 입력 데이터에 상응하는 응답 데이터를 수신하도록 구성된 통신부를 포함한다. The information retrieval system according to an aspect of the present invention provides the voice input data to any one of a plurality of preset representative queries by using an attribute word that is detected from voice input data and defines call data among one or more preset attribute words. A query recognition unit comprising: a representative query determining unit configured to match; and a conditional clause determining unit configured to generate a conditional clause corresponding to the voice input data by using an attribute defining a search condition among attribute words detected from the voice input data ; a query generator configured to generate a query statement for retrieving information from a database by using the representative query corresponding to the voice input data and the conditional clause; and a communication unit configured to receive response data corresponding to the voice input data by searching the database using the query statement.
일 실시예에서, 상기 복수 개의 대표질의는 동일한 호출 데이터에 대하여 서로 상이한 가공 방식을 정의하는 대표질의들을 포함한다. 이때, 상기 대표질의 결정부는, 상기 음성 입력 데이터로부터 탐지된 속성어 중 가공 방식을 정의한 속성어를 이용하여, 상기 음성 입력 데이터를 상기 서로 상이한 가공 방식을 정의하는 대표질의들 중 어느 하나에 대응시키도록 더 구성된다. In an embodiment, the plurality of representative queries includes representative queries defining different processing methods for the same call data. In this case, the representative query determining unit is configured to correspond the voice input data to any one of the representative queries defining the different processing methods by using an attribute defining a processing method among attribute words detected from the voice input data. The list is further structured.
일 실시예에서, 상기 정보 검색 시스템은 상기 데이터베이스로부터 거래 데이터를 검색하도록 더 구성된다. 이때, 상기 조건절 결정부는, 상기 음성 입력 데이터로부터 탐지된 속성어 중 거래처, 거래 시간, 및 거래 금액 중 하나 이상을 정의하는 속성어를 탐지하여 상기 조건절을 생성하도록 더 구성된다. In an embodiment, the information retrieval system is further configured to retrieve transaction data from the database. In this case, the conditional clause determining unit is further configured to generate the conditional clause by detecting an attribute defining at least one of a customer, a transaction time, and a transaction amount among the attribute words detected from the voice input data.
일 실시예에 따른 정보 검색 시스템은, 사용자가 정보 검색을 위한 상기 데이터베이스를 선택할 수 있는 사용자 인터페이스를 제공하도록 구성된 데이터 연결부를 더 포함한다. The information retrieval system according to an embodiment further includes a data connection unit configured to provide a user interface through which a user can select the database for information retrieval.
일 실시예에서, 상기 데이터 연결부는, 상기 대표질의 또는 상기 대표질의에 대해 미리 설정된 카테고리에 상응하는 상기 데이터베이스로부터 정보를 수신할 수 없는 것에 대한 응답으로 상기 사용자 인터페이스를 제공하도록 더 구성된다. In an embodiment, the data connection unit is further configured to provide the user interface in response to not being able to receive information from the database corresponding to the representative query or a category preset for the representative query.
일 실시예에 따른 정보 검색 시스템은, 상기 음성 입력 데이터를 수신하고, 상기 음성 입력 데이터로부터 상기 하나 이상의 속성어를 탐지하도록 구성된 입력부를 더 포함한다.The information retrieval system according to an embodiment further includes an input unit configured to receive the voice input data and detect the one or more attribute words from the voice input data.
본 발명의 또 다른 측면에 따른 정보 검색 방법은, 정보 검색 시스템이, 사용자의 음성 입력 데이터로부터 탐지되며 미리 설정된 하나 이상의 속성어 중 호출 데이터를 정의하는 속성어를 이용하여 상기 음성 입력 데이터를 미리 설정된 복수의 대표질의 중 어느 하나에 대응시키는 단계; 상기 정보 검색 시스템이, 상기 음성 입력 데이터로부터 탐지된 속성어 중 검색 조건을 정의하는 속성어를 이용하여 상기 음성 입력 데이터에 상응하는 조건절을 생성하는 단계; 상기 정보 검색 시스템이, 상기 음성 입력 데이터에 상응하는 상기 대표질의 및 상기 조건절을 이용하여 데이터베이스로부터 정보를 검색하기 위한 쿼리문을 생성하는 단계; 및 상기 정보 검색 시스템이, 상기 쿼리문을 이용하여 상기 데이터베이스를 검색함으로써 상기 음성 입력 데이터에 상응하는 응답 데이터를 수신하는 단계를 포함한다. In an information retrieval method according to another aspect of the present invention, the information retrieval system sets the voice input data in advance by using an attribute word that is detected from the user's voice input data and defines call data among one or more preset attribute words. Corresponding to any one of a plurality of representative queries; generating, by the information retrieval system, a conditional clause corresponding to the voice input data by using an attribute defining a search condition among attribute words detected from the voice input data; generating, by the information retrieval system, a query for retrieving information from a database using the representative query and the conditional clause corresponding to the voice input data; and receiving, by the information retrieval system, response data corresponding to the voice input data by searching the database using the query statement.
일 실시예에서, 상기 복수 개의 대표질의는 동일한 호출 데이터에 대하여 서로 상이한 가공 방식을 정의하는 대표질의들을 포함하고, 상기 복수의 대표질의 중 어느 하나에 대응시키는 단계는, 상기 정보 검색 시스템이, 상기 음성 입력 데이터로부터 탐지된 속성어 중 가공 방식을 정의한 속성어를 이용하여 상기 음성 입력 데이터를 상기 서로 상이한 가공 방식을 정의하는 대표질의들 중 어느 하나에 대응시키는 단계를 포함한다.In an embodiment, the plurality of representative queries includes representative queries that define different processing methods for the same call data, and the step of corresponding to any one of the plurality of representative queries includes, by the information retrieval system, the and matching the voice input data to any one of representative queries defining the different processing methods by using an attribute defining a processing method among attribute words detected from the voice input data.
일 실시예에서, 상기 데이터베이스는 거래 데이터를 제공하도록 더 구성되며, 상기 조건절을 생성하는 단계는, 상기 정보 검색 시스템이, 상기 음성 입력 데이터로부터 탐지된 속성어 중 거래처, 거래 시간, 및 거래 금액 중 하나 이상을 정의하는 속성어를 탐지하여 상기 조건절을 생성하는 단계를 포함한다.In an embodiment, the database is further configured to provide transaction data, and the generating of the conditional clause includes, by the information retrieval system, among attribute words detected from the voice input data, a customer, a transaction time, and a transaction amount. and generating the conditional clause by detecting attribute words defining one or more.
일 실시예에 따른 정보 검색 방법은, 상기 정보 검색 시스템이, 사용자가 정보 검색을 위한 상기 데이터베이스를 선택할 수 있는 사용자 인터페이스를 제공하는 단계를 더 포함한다.The information retrieval method according to an embodiment further includes, by the information retrieval system, providing a user interface through which a user can select the database for information retrieval.
일 실시예에서, 상기 사용자 인터페이스를 제공하는 단계는, 상기 정보 검색 시스템이, 상기 대표질의 또는 상기 대표질의에 대해 미리 설정된 카테고리에 상응하는 상기 데이터베이스로부터 정보를 수신할 수 없는 것에 대한 응답으로 수행된다.In one embodiment, the providing of the user interface is performed in response to the information retrieval system being unable to receive information from the database corresponding to the representative query or a category preset for the representative query. .
일 실시예에 따른 정보 검색 방법은, 상기 음성 입력 데이터를 미리 설정된 복수의 대표질의 중 어느 하나에 대응시키는 단계 전에, 상기 정보 검색 시스템이, 상기 음성 입력 데이터를 수신하는 단계; 및 상기 정보 검색 시스템이, 상기 음성 입력 데이터로부터 상기 하나 이상의 속성어를 탐지하는 단계를 더 포함한다.The information retrieval method according to an embodiment includes, before the step of matching the voice input data to any one of a plurality of preset representative queries, the information retrieval system comprising: receiving the voice input data; and detecting, by the information retrieval system, the one or more attribute words from the voice input data.
본 발명의 일 측면에 컴퓨터 프로그램은, 하드웨어와 결합되어 전술한 실시예들에 따른 정보 검색 방법을 실행하기 위한 것으로서 컴퓨터로 판독 가능한 기록매체에 저장될 수 있다. In one aspect of the present invention, the computer program is combined with hardware to execute the information retrieval method according to the above-described embodiments, and may be stored in a computer-readable recording medium.
본 발명의 일 측면에 따른 정보 검색 시스템 및 방법에 의하면, 사용자 발화의 측면에서 음성 인식 활용을 위한 최소한의 가이드가 되고 기능적으로는 기능에 대한 분기 단위가 되는 대표질의를 설정하여, 사용자의 음성 입력을 대표질의 및 조건절 형태로 정리하여 정보를 검색함으로써 원활한 음성 인식 활용이 가능하게 할 수 있는 이점이 있다. 상기 정보 검색 시스템 및 방법은, 기업 대 기업간(Business to Business; B2B) 전자상거래 데이터와 같은 B2B 정보 검색에 유용하게 활용될 수 있다. According to the information retrieval system and method according to an aspect of the present invention, a representative query serving as a minimum guide for voice recognition utilization in terms of user utterance and functionally a branch unit for a function is set, and the user's voice input It has the advantage of enabling smooth voice recognition use by retrieving information by arranging it in the form of representative queries and conditional clauses. The information retrieval system and method may be usefully utilized for retrieving B2B information such as business to business (B2B) e-commerce data.
또한, 본 발명의 일 측면에 따른 정보 검색 시스템 및 방법에서는, 사용자가 정보를 검색함에 있어서 정보를 얻기 위한 데이터의 출처를 선택할 수 있다. 기존의 금융기관 시스템 또는 클라우드(cloud) 시스템은 저장된 데이터의 적시성이 떨어지며, 기존의 전사적 자원관리(Enterprise Resource Planning; ERP) 시스템이나 API(Application Programming Interface)를 이용한 정보 검색 방식은 저장된 정보의 2차 가공이 어려운 단점이 있어 왔다. 그러나 본 발명의 일 측면에 따른 정보 검색 시스템 및 방법에 의하면, 검색하고자 하는 정보에 따라 사용자가 데이터 출처를 직접 선택함으로써, 사용자의 필요에 맞는 서비스를 제공할 수 있는 이점이 있다. In addition, in the information retrieval system and method according to an aspect of the present invention, a user can select a data source for obtaining information when searching for information. Existing financial institution systems or cloud systems have poor timeliness of stored data, and information retrieval methods using the existing Enterprise Resource Planning (ERP) system or API (Application Programming Interface) are secondary to stored information. There has been a disadvantage that it is difficult to process. However, according to the information retrieval system and method according to an aspect of the present invention, there is an advantage in that the user can directly select a data source according to the information to be retrieved, thereby providing a service that meets the user's needs.
도 1은 일 실시예에 따른 정보 검색 시스템의 개략적인 블록도이다.
도 2는 일 실시예에 따른 정보 검색 방법의 각 단계를 나타내는 순서도이다.
도 3은 일 실시예에 따른 정보 검색 시스템에 의하여 사용자 장치상에 표시되는 사용자 인터페이스의 일 예를 나타내는 이미지이다.
도 4a 및 4b는 일 실시예에 따른 정보 검색 시스템에 의한 데이터 연결을 위하여 사용자 장치상에 표시되는 사용자 인터페이스의 일 예를 나타내는 이미지이다.
도 5a 및 5b는 일 실시예에 따른 정보 검색 시스템에 의한 질의 수신 및 응답 제공 시 사용자 장치상에 표시되는 사용자 인터페이스의 일 예를 나타내는 이미지이다.1 is a schematic block diagram of an information retrieval system according to an embodiment.
2 is a flowchart illustrating each step of an information retrieval method according to an embodiment.
3 is an image illustrating an example of a user interface displayed on a user device by an information retrieval system according to an embodiment.
4A and 4B are images illustrating an example of a user interface displayed on a user device for data connection by an information retrieval system according to an embodiment.
5A and 5B are images illustrating an example of a user interface displayed on a user device when a query is received and a response is provided by the information retrieval system according to an exemplary embodiment.
이하에서, 도면을 참조하여 본 발명의 실시예들에 대하여 상세히 살펴본다.Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
도 1은 일 실시예에 따른 정보 검색 시스템의 개략적인 블록도이다.1 is a schematic block diagram of an information retrieval system according to an embodiment.
도 1을 참조하면, 본 실시예에 따른 정보 검색 시스템(3)은 사용자 장치(1) 및 데이터베이스 서버(2)와 통신하며 동작하며, 사용자 장치(1)로부터 수신된 정보 검색 요청에 대한 대응으로 데이터베이스 서버(2)에서 필요한 정보를 조회하여 사용자 장치(1)에 제공하도록 구성된다. 도면에 도시된 사용자 장치(1) 및 데이터베이스 서버(2)의 수는 단지 예시적인 것으로서, 정보 검색 시스템(3)과 관련하여 동작하는 사용자 또는 장치의 수를 제한하는 것이 아니라는 점이 통상의 기술자에게 용이하게 이해될 것이다. Referring to FIG. 1 , an
일 실시예에서, 정보 검색 시스템(3)은 사용자가 사용자 장치(1)를 이용하여 이에 접속하도록 구성된 서버로서, 사용자는 스마트폰(smartphone) 등 이동 통신 단말기, 개인용 컴퓨터(personal computer), 노트북(notebook) 컴퓨터, PDA(personal digital assistant), 태블릿(tablet) 컴퓨터, IPTV(Internet Protocol Television) 등을 위한 셋톱박스(set-top box), 인공지능(Artificial Intelligence) 스피커, 또는 네트워크 서버 등 임의의 컴퓨팅 장치인 사용자 장치 (1)에서 유선 및/또는 무선 네트워크를 통하여 정보 검색 시스템(3)에 접속할 수 있다. In one embodiment, the
예를 들어, 정보 검색 시스템(3)은 사용자 장치(1) 상에서 실행되는 애플리케이션(또는, 앱(app))의 동작을 가능하게 하는 애플리케이션 서비스 서버(application service server)일 수 있다. 또는, 정보 검색 시스템(3)은 사용자 장치(1) 상에서 실행되는 웹 브라우저(web browser)에 의하여 접근 가능한 웹 페이지(web page)를 제공하는 웹 서버(web server)일 수도 있다. 그러나 이는 예시적인 것으로서, 다른 실시예에서는 정보 검색 시스템(3) 자체가 서버가 아니라 스마트폰 등 사용자 장치의 형태로 구현될 수 있으며, 이 경우 도 1에 도시된 사용자 장치(1)는 생략될 수 있다. For example, the
본 명세서에 기재된 장치들은 전적으로 하드웨어이거나, 또는 부분적으로 하드웨어이고 부분적으로 소프트웨어인 측면을 가질 수 있다. 예컨대, 사용자 장치(1), 데이터베이스 서버(2), 및 정보 검색 시스템(3)은 특정 형식 및 내용의 데이터를 전자통신 방식으로 주고받기 위한 장치 및 이에 관련된 소프트웨어를 통칭할 수 있다. 본 명세서에서 "부(unit)", "모듈(module)", "서버", "시스템", "플랫폼", "장치" 또는 "단말" 등의 용어는 하드웨어 및 해당 하드웨어에 의해 구동되는 소프트웨어의 조합을 지칭하는 것으로 의도된다. 예를 들어, 여기서 하드웨어는 CPU 또는 다른 프로세서(processor)를 포함하는 데이터 처리 기기일 수 있다. 또한, 하드웨어에 의해 구동되는 소프트웨어는 실행중인 프로세스, 객체(object), 실행파일(executable), 실행 스레드(thread of execution), 프로그램(program) 등을 지칭할 수 있다.The devices described herein may be wholly hardware, or may have aspects that are partly hardware and partly software. For example, the user device 1 , the
데이터베이스 서버(2)는 데이터베이스를 저장하며 정보 검색 시스템(3)으로부터 수신된 요청에 따라 데이터베이스의 특정 정보를 응답 데이터로 제공하기 위한 서버이다. 정보 검색 시스템(3)을 통하여 기업 대 기업간(Business to Business; B2B) 전자상거래 데이터와 같은 B2B 정보에 대한 검색을 수행하는 경우, 데이터베이스 서버(2)는 해당 기업의 계좌가 개설된 은행 서버, 해당 기업이 카드를 발급받은 카드사 서버 등 금융기관 서버일 수 있다. 또는, 데이터베이스 서버(2)는 기업의 전사적 자원관리(Enterprise Resource Planning; ERP) 시스템 또는 그 외 재무 관리 기능을 수행하는 시스템과 같이 기업이 자체적으로 사용하는 서버일 수도 있다. 이처럼 기업이 자체적으로 사용하는 서버는 기업 내부망에 위치할 수 있으나 이에 한정되는 것은 아니며, 클라우드(cloud) 서버의 형태로 구현될 수도 있다. The
일 실시예에서, 정보 검색 시스템(3)은 질의 인식부(33), 쿼리(query) 생성부(34) 및 통신부(35)를 포함한다. 일 실시예에서, 정보 검색 시스템(3)은 입력부(31)를 더 포함할 수 있다. 또한 일 실시예에서, 정보 검색 시스템(3)은 데이터 연결부(32)를 더 포함할 수 있다. 나아가 일 실시예에서, 정보 검색 시스템(3)의 질의 인식부(33)는 대표질의 결정부(331) 및 조건절 생성부(332)를 포함할 수 있다. In one embodiment, the
본 명세서에서 정보 검색 시스템(3)을 구성하는 각각의 부는 반드시 물리적으로 구분되는 별개의 구성요소를 지칭하는 것으로 의도되지 않는다. 즉, 도 1에서 정보 검색 시스템(3)의 각 부(31-35)는 서로 구분되는 별개의 블록으로 도시되었으나, 이는 정보 검색 시스템(3)을 이에 의해 실행되는 동작에 의해 기능적으로 구분한 것이다. 실시예에 따라서는 전술한 각 부(31-35) 중 일부 또는 전부가 동일한 하나의 장치 내에 집적화될 수 있으며, 또는 하나 이상의 부가 다른 부와 물리적으로 구분되는 별개의 장치로 구현될 수도 있다. 예컨대, 정보 검색 시스템(3)의 각 부는 분산 컴퓨팅 환경 하에서 서로 통신 가능하게 연결된 컴포넌트들일 수도 있다. In this specification, each part constituting the
실시예들에 따른 정보 검색 시스템(3)은, 사용자의 음성 입력 데이터로부터 탐지된 하나 이상의 속성어를 이용하여 사용자의 질의 내용을 분석하고 이에 상응하는 정보를 제공하도록 구성된다. 이때, 사용자의 음성 입력 데이터를 수신하는 과정 및/또는 음성 입력 데이터로부터 사전에 설정된 속성어를 탐지하는 과정은, 정보 검색 시스템(3)에 의하여 자체적으로 수행되거나, 또는 외부 서버에 구비되거나 외부 서버와 통신하는 별도의 음성 인식 모듈(미도시)을 이용하여 수행될 수 있다. 예를 들어, 정보 검색 시스템(3)의 운영자가 아닌 다른 사업자가 제공하는 음성 인식 서비스를 부분적으로 이용하여 속성어 탐지가 이루어질 수도 있다.The
일 실시예에서 정보 검색 시스템(3)이 자체적으로 음성 입력 데이터를 처리하는 경우, 정보 검색 시스템(3)의 입력부(31)는 사용자 장치(1)로부터 사용자의 음성 입력 데이터를 수신할 수 있다. 또한 입력부(31)는 음성 입력 데이터로부터 미리 설정된 하나 이상의 속성어를 탐지할 수 있다. 이상의 동작을 위하여, 사용자 장치(1)에는 마이크와 같은 음성 입력 수단이 구비되며, 입력부(31)는 사용자 장치(1)의 음성 입력 수단을 통해 입력된 음성 입력 데이터를 유선 및/또는 무선 네트워크를 통하여 수신할 수 있다. In an embodiment, when the
또는, 정보 검색 시스템(3) 자체가 스마트폰 등 사용자 장치로 구현되는 경우, 입력부(31)는 마이크와 같은 음성 입력 수단과 해당 음성 입력 수단을 통해 입력된 음성 입력 데이터에 대한 처리를 수행하기 위한 프로세서를 포함할 수도 있다.Alternatively, when the
그러나, 다른 실시예에서 별도의 음성 인식 모듈을 이용하는 경우, 정보 검색 시스템(3)은 사용자의 음성 입력 데이터가 별도의 음성 인식 모듈에 의하여 처리된 결과를 수신하고 이를 기반으로 동작할 수도 있다. 예를 들어, 정보 검색 시스템(3)은 사용자의 음성 입력 데이터가 텍스트 형태로 변환된 데이터를 외부 음성 인식 서비스로부터 수신할 수 있다. 또는, 정보 검색 시스템(3)은 음성 입력 데이터로부터 미리 설정된 하나 이상의 속성어가 탐지된 결과를 외부 음성 인식 서비스로부터 수신할 수도 있으며, 이를 위하여 탐지하고자 하는 속성어에 대한 정보를 사전에 외부 음성 인식 서비스에 전달할 수도 있다.However, in another embodiment, when a separate voice recognition module is used, the
음성 입력 데이터로부터 인식되는 속성어는, 음성 입력 데이터를 미리 설정된 대표질의와 연관시키며, 또한 사용자가 조회하고자 하는 정보의 세부 속성을 정의하기 위한 단어들일 수 있다. 속성어는 사용자가 호출하는 데이터를 정의하는 단어, 호출할 데이터의 가공 방식을 정의하는 단어, 또는/또한 검색할 데이터의 개체명/시간 범위/값의 범위 등 거래 조건을 정의하는 단어를 포함할 수 있다. 예를 들어, 호출 데이터는 B2B 전자상거래 데이터와 같은 정보일 수 있고, 가공 방식은 호출 데이터의 객단, 평균 등 원본 데이터로부터 호출 데이터를 얻기 위한 연산 방식을 정의하는 정보이며, 검색 조건은 호출할 데이터의 거래처, 거래 시간, 및 거래 금액 등을 지정하는 정보일 수 있다. The attribute words recognized from the voice input data may be words for associating the voice input data with a preset representative query and defining detailed attributes of information that the user wants to inquire. Attribute words may include words that define the data to be called by the user, words that define how the data to be called will be processed, or/or words that define the terms of the transaction, such as the entity name/time range/range of values of the data to be retrieved. have. For example, the call data may be information such as B2B e-commerce data, the processing method is information defining an operation method for obtaining call data from the original data, such as the number of customers and averages of the call data, and the search condition is the data to be called may be information designating a customer, a transaction time, and a transaction amount of .
질의 인식부(33)는, 입력부(31)에 의하여 인식되거나 또는 외부 음성 인식 서비스를 이용하여 수신된 속성어를 기반으로 하여, 음성 입력 데이터를 데이터베이스에 저장된 정보의 검색에 적합한 형태로 정리하는 역할을 한다. 일 실시예에서, 질의 인식부(33)의 대표질의 결정부(331)는, 음성 입력 데이터로부터 탐지된 속성어 중 호출 데이터를 정의하는 속성어를 이용하여 음성 입력 데이터를 미리 설정된 복수의 대표질의 중 어느 하나에 대응시킬 수 있다. 또한, 질의 인식부(33)의 조건절 생성부(332)는, 음성 입력 데이터로부터 탐지된 속성어 중 검색 조건을 정의하는 속성어를 이용하여 음성 입력 데이터에 상응하는 조건절을 생성할 수 있다. The
쿼리 생성부(34)는, 질의 인식부(33)에 의하여 음성 입력 데이터에 상응하는 것으로 결정된 대표질의 및 조건절을 이용하여, 데이터베이스 서버(2)에 저장되어 있는 데이터베이스로부터 사용자가 요청한 정보를 검색하는데 필요한 쿼리문을 생성하도록 구성된다. 쿼리문의 구체적인 형태는 데이터베이스의 유형에 따라 다양할 수 있으며, 이에 대해서는 상세히 후술한다. The
통신부(35)는, 쿼리 생성부(34)에 의하여 생성된 쿼리문을 유선 및/또는 무선 네트워크를 통하여 상응하는 데이터베이스 서버(2)에 전송하고, 데이터베이스 서버(2)로부터 이에 대한 응답 데이터를 수신함으로써 데이터베이스 서버(2)의 데이터베이스로부터 필요한 정보를 조회하는 역할을 한다. 또한, 통신부(35)는 데이터베이스 서버(2)로부터 조회된 정보(즉, 응답 데이터)를 유선 및/또는 무선 네트워크를 통하여 사용자 장치(1)에 전송할 수도 있다. 그러나, 이는 예시적인 것으로서, 다른 실시예에서 정보 검색 시스템(3) 자체가 스마트폰 등 사용자 장치로 구현되는 경우, 응답 데이터를 사용자 장치(1)에 전송하는 과정은 필요치 않으며, 조회된 정보를 스마트폰 등 사용자 장치에 구비된 출력 수단(예컨대, 디스플레이 장치)을 통하여 출력함으로써 사용자에게 제시할 수도 있다. The
한편, 사용자가 조회하고자 하는 정보가 B2B 정보와 같이 인증키를 가진 특정인만 데이터에 접근할 수 있는 폐쇄적인 정보일 경우, 데이터 연결부(32)는 사용자로부터 데이터 접근을 위한 인증정보를 수신하고, 수신된 인증정보를 이용하여 해당하는 데이터베이스 서버(2)에 사용자 인증을 수행함으로써 조회가 필요한 데이터베이스와 정보 검색 시스템(3)의 연결을 수행할 수도 있다. On the other hand, when the information that the user wants to inquire is closed information such as B2B information that only a specific person with an authentication key can access data, the
예를 들어, 데이터베이스 서버(2)는 기업의 금융정보가 관리되는 은행 등 금융기관 서버나, 기업의 ERP 시스템 또는 그 외 재무 관리 기능을 수행하는 시스템일 수 있으며, 데이터 연결부(3)가 이들 시스템에 대하여 인증 정보를 이용한 사용자 인증을 수행하면, 통신부(35)는 스크래핑(scraping) 방식 또는 사전에 정의된 API(Application Programming Interface)를 이용한 조회 방식으로 데이터베이스 서버(2)로부터 필요한 정보를 수신할 수 있다. For example, the
데이터 연결부(32)에 의한 데이터베이스와의 연결은, 사용자의 정보 조회 요청 전에 미리 수행될 수도 있으며, 또는 사용자의 요청에 따른 정보의 검색 개시 시점 또는 검색 도중의 특정 시점에 수행될 수도 있다. 예를 들어, 사용자 개인의 인증정보를 필요로 하지 않는 기업의 ERP 시스템 또는 그 외 재무 관리 기능을 수행하는 시스템 등과의 연결은 사용자의 조회 요청 전에 미리 이루어질 수도 있다.The connection to the database by the
도 2는 일 실시예에 따른 정보 검색 방법의 각 단계를 나타내는 순서도이다. 본 발명의 실시예들에 따른 정보 검색 방법은, 도 1을 참조하여 전술한 실시예들에 따른 정보 검색 시스템을 이용하여 수행될 수 있다. 이하에서는, 설명의 편의를 위하여 도 1 및 도 2를 참조하여 본 실시예에 따른 정보 검색 방법에 대하여 설명한다. 2 is a flowchart illustrating each step of an information retrieval method according to an embodiment. The information retrieval method according to the embodiments of the present invention may be performed using the information retrieval system according to the embodiments described above with reference to FIG. 1 . Hereinafter, an information retrieval method according to the present embodiment will be described with reference to FIGS. 1 and 2 for convenience of description.
사용자가 사용자 장치(1) 상의 앱이나 웹 브라우저 등을 이용하여 정보 검색 시스템(3)에 접속하거나, 또는 정보 검색 시스템(3) 자체가 사용자 장치 형태로 구현되며 사용자가 정보 검색을 위한 앱 등을 실행하는 경우, 정보 검색 시스템(3)의 입력부(31)가 사용자의 음성 입력 데이터를 수신할 수 있다(S5). 음성 입력 데이터를 수신하기 위하여 정보 검색 시스템(3)은 사용자에게 소정의 사용자 인터페이스(User Interface; UI)를 제공할 수 있으며, 도 3은 일 실시예에 따른 정보 검색 시스템(3)에 의하여 사용자 장치상에 표시되는 UI의 일 예를 나타낸다. A user accesses the
도 3에 도시된 것과 같이, 사용자가 정보 검색 시스템(3)에 자주 하는 질의 내용이나, 정보 검색 시스템(3)을 통하여 정보 검색이 수행될 수 있는 전체 질의 내용, 및/또는 정보 검색 시스템(3) 통해 검색될 수 있는 정보 중 특정 데이터 종류(예컨대, 금융, 매출/매입, 거래처, 영업/마케팅 등)에 연관된 질의 내용 등이 최소한의 가이드(guide) 역할을 하기 위한 정보로서 사용자에게 표시될 수 있다. As shown in FIG. 3 , the contents of a query frequently made by a user to the
다시 도 1 및 도 2를 참조하면, 정보 검색 시스템(3)에 사전에 연결된 데이터베이스가 존재하지 않는 경우, 정보 검색 시스템(3)은 사용자의 음성 입력을 수신하기에 앞서 데이터베이스에 대한 연결을 수행할 수도 있다. 이를 위하여, 정보 검색 시스템(3)에 사전에 연결된 데이터베이스가 존재하는지 확인 후(S1), 연결된 데이터베이스가 없는 경우 데이터 연결부(32)는 새로 연결할 데이터베이스 서버(2)(즉, 데이터 소스(source))에 대한 사용자의 선택 정보를 수신하고(S2), 해당 데이터베이스 서버(2)로부터 정보를 조회하는데 필요한 인증정보를 사용자로부터 입력받아(S3), 입력된 인증정보를 이용하여 데이터베이스 서버(2)에 대한 연결을 수행할 수 있다. 1 and 2 again, if there is no database connected in advance to the
도 4a 및 4b는 일 실시예에 따른 정보 검색 시스템에 의한 데이터 연결을 위하여 사용자 장치상에 표시되는 사용자 인터페이스의 일 예를 나타내는 이미지이다.4A and 4B are images illustrating an example of a user interface displayed on a user device for data connection by an information retrieval system according to an embodiment.
도 4a에 도시된 것과 같이, 정보 검색 시스템(3)에 사전에 연결된 데이터베이스가 없을 경우 데이터베이스 서버(2)의 연결을 위한 인터페이스 요소(401)를 사용자에게 제시할 수 있다. 또한, 이때 데이터 연결 시 사용자가 검색할 수 있는 정보의 예시를 나타내는 인터페이스 요소(402)나, 또는/또한 사용자가 정보 검색 시스템(3)을 통하여 정보를 검색하기 위한 음성 입력의 형태를 예시하는 사용자 인터페이스 요소(403) 등이 사용자에게 함께 제시될 수도 있다. As shown in FIG. 4A , when there is no database connected in advance to the
사용자가 데이터베이스 서버(2) 연결을 위한 인터페이스 요소(401)를 선택하면, 도 4b에 도시된 것과 같이 정보 검색 시스템(3)에 이미 등록된 하나 이상의 인증정보(예컨대, 공인인증서 목록) 중 어느 하나를 선택할 수 있도록 하는 인터페이스 요소(411), 및 새로운 인증정보를 정보 검색 시스템(3)에 업로드하게 하기 위한 인터페이스 요소(412) 등이 사용자에게 제시될 수 있다. 사용자가 기 등록된 인증정보를 선택하거나 새로운 인증정보를 선택하고 필요한 비밀번호 등을 입력하면, 정보 검색 시스템(3)은 이를 이용하여 인증정보에 해당하는 데이터베이스 서버(2)와의 연결을 수행할 수 있다. When the user selects the
도면에서는 인증정보로서 공인인증서가 예시되었으나, 이에 한정되는 것은 아니며, 다른 실시예에서 인증정보는 은행, 카드사 등 금융기관 서버나 기업의 ERP 시스템 또는 재무 관리 시스템 등으로부터 필요한 정보를 얻기 위해 사용자 검증에 사용되는 임의의 정보를 지칭하는 것으로서, 예컨대, 카드사 또는 은행 홈페이지 사용자 ID 및 비밀번호, 기업 내부 전산망 또는 시스템에 대한 사용자 ID 및 비밀번호 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. In the drawing, an accredited certificate is exemplified as authentication information, but the present invention is not limited thereto. In another embodiment, authentication information is used for user verification in order to obtain necessary information from a server of a financial institution such as a bank or a credit card company, an ERP system or a financial management system of a company, etc. As a reference to any information used, for example, it may include, but is not limited to, a card company or bank homepage user ID and password, and a user ID and password for an internal computer network or system of the company.
다시 도 1 및 도 2를 참조하면, 사용자의 음성 입력 데이터가 입력된 후 사용자가 요청한 정보의 조회에 필요한 데이터베이스 서버(4)와 정보 검색 시스템(3) 사이의 연결 과정(S1 내지 S4)이 수행될 수도 있다. 그러나 이는 예시적인 것으로서, 다른 실시예에서 데이터베이스 연결을 위한 이상의 동작(S1 내지 S4)은, 사용자가 사용자 장치(1)를 이용하여 정보 검색 시스템(3)에 접속하는 것 또는 사용자 장치 형태로 구현된 정보 검색 시스템(3)에서 정보 검색을 위한 애플리케이션이 실행되는 것에 대한 응답으로 수행될 수도 있다. 1 and 2 again, after the user's voice input data is input, the connection process (S1 to S4) between the database server 4 and the
사용자의 음성 입력 데이터가 수신되면(S5), 입력부(31)는 음성 입력 데이터를 분석하여 음성 입력에 포함된 하나 이상의 속성어를 탐지할 수 있다(S6). 이상의 동작은, 음성 입력 데이터를 공지된 또는 향후 개발될 임의의 방법에 의하여 텍스트(text) 형태로 변환하고, 변환된 텍스트에서 미리 설정된 속성어에 해당하는 단어를 검색하는 방식으로 이루어질 수 있으나, 이에 한정되는 것은 아니다. When the user's voice input data is received (S5), the
다음으로, 질의 인식부(33)는 음성 입력 데이터로부터 탐지된 속성어들을 이용하여 음성 입력 데이터에 상응하는 대표질의를 결정할 수 있다(S7-1). 또한, 음성 입력 데이터가 대표질의와 동일한 내용을 질의하는 것만이 아니라 더 상세한 검색 조건을 지정한 것일 경우, 질의 인식부(33)는 음성 입력 데이터에 상응하는 조건절을 더 생성할 수도 있다(S7-2). Next, the
이때, 대표질의는 사용자가 호출하고자 하는 데이터를 정의하는 입력을 의미하는 것으로서, 호출 데이터별로 사전에 설정될 수 있고, 하나 또는 복수의 속성어에 의해 정의될 수 있다. 또한, 추가적으로 대표질의를 통하여 금액, 내역, 현황, 객단, 평균, 예상, 최고, 최저 등 호출되는 데이터에 대한 가공 방식을 더 정의할 수도 있다. 나아가, 각각의 대표질의에는 이에 의해 호출되는 정보의 유형을 정의하는 미리 설정된 카테고리가 부여될 수도 있다.In this case, the representative query refers to an input that defines data that the user wants to call, and may be set in advance for each call data, and may be defined by one or a plurality of attribute words. In addition, it is also possible to further define a processing method for data called, such as amount, details, status, number of customers, average, expected, highest, lowest, etc. through a representative query. Furthermore, each representative query may be given a preset category defining the type of information called by it.
예컨대, 일 실시예에 따른 정보 검색 시스템(3)에서 미리 설정된 대표질의 목록은 아래의 표 1과 같다. For example, a list of representative queries preset in the
상기 표 1에 기재된 것과 같이, 질의 인식부(33)는 호출 데이터를 정의하는 속성어들을 인식함으로써 음성 입력 데이터를 대표질의에 대응시킬 수 있다. 이때, 대표질의는 복수 개의 속성어의 조합에 상응하는 것일 수도 있다. 예를 들어, "입출", "손익", "입금", "출금", "통장", "카드", "매출", "매입", "결제", "현금영수증", "미수금", "미지급금", "거래처", "고객" 등과 같이 데이터의 종류를 정의하는 속성어에 대하여 대표질의가 정의될 수도 있으며, 또한 이러한 속성어에 더하여 "내역", "잔고", "금액", "수", "예정액" 등과 같이 데이터의 가공 방식을 정의하는 속성어를 더 조합한 것에 대하여 대표질의가 정의될 수도 있다. As shown in Table 1, the
한편, 조건절은 호출 데이터 중 사용자가 검색을 원하는 세부 데이터를 특정하기 위한 검색 조건을 정의하는 것으로서, 데이터의 개체명, 시간 범위, 값의 범위 등을 정의하는 것일 수 있다. 예컨대, 상거래 데이터의 경우 거래처 또는 은행명, 거래시간, 거래금액 등이 전술한 조건절에 대응될 수 있다. Meanwhile, the conditional clause defines a search condition for specifying detailed data that the user wants to search among the call data, and may define an object name, a time range, a range of values, and the like of data. For example, in the case of commerce data, the name of a customer or bank, a transaction time, a transaction amount, etc. may correspond to the above-described conditional clause.
이하의 표 2 내지 표 4는 음성 입력 데이터로부터 탐지된 속성어들을 대표질의와 조건절로 구분한 것을 예시한다. 표 2 내지 표 4에 나타난 것과 같이, "세금계산서", "카드", "매출"과 같이 호출 데이터 종류를 정의하는 속성어 및 "평균", "객단", "예정"과 같이 데이터의 가공 방식을 정의하는 속성어는 대표질의 부분에 해당된다. 또한, "2월", "10만원 초과", "웹케시"(거래처, 은행 등 개체명) 등 검색 조건을 정의하는 속성어는 조건절 부분에 해당된다. Tables 2 to 4 below exemplify the division of attribute words detected from voice input data into representative queries and conditional clauses. As shown in Tables 2 to 4, attribute words defining the type of call data such as “tax invoice”, “card”, and “sales” and data processing method such as “average”, “number of customers” and “planned” The attribute word defining In addition, attribute words that define search conditions, such as "February", "more than 100,000 won", and "Webcash" (names of entities such as customers and banks), fall under the conditional clause.
질의 인식부(33)는, 이상과 같이 분류된 각 속성어를 이용하여 음성 입력 데이터를 미리 설정된 대표질의 중 어느 하나에 대응시키고, 대응된 대표질의와 조건절에 해당하는 속성어들을 이용하여 세부질의를 생성할 수 있다. 따라서, 전술한 표 2 내지 표 4에 예시된 속성어의 조합은 각각 서로 상이한 세부질의에 대응되며, 이러한 세부질의는 정보 검색 시스템(3)에 의한 데이터 획득에 관련된 세부기능에 해당된다.The
예를 들어, 개체명으로서 은행명, 카드사명, 및 거래처명을 조건절로 하는 경우, 다양한 대표질의에 대하여 조건절과의 결합을 통하여 생성되는 세부질의의 예시는 아래의 표 5와 같다. For example, when a bank name, credit card company name, and customer name are conditional clauses as entity names, examples of detailed queries generated by combining with conditional clauses for various representative queries are shown in Table 5 below.
OO 통장 입출금액은?OO Bank deposit and withdrawal details? / OO Bank passbook deposit and withdrawal details? /
OO What is the deposit/withdrawal amount?
OO은행 들어온 돈 얼마야?OO What is the deposit history? / OO bank deposit amount /
How much money did you get from OO Bank?
잔고는?company passbook
balance?
OO 통장에 얼마 있어?OO What is the account balance? / OO Bank Company passbook balance? /
OO How much is in your bank account?
금액은?paying credit card
the amount?
내역은?card use
history?
OO 카드 사용 금액OO card usage history? / How much did you spend on the OO card? /
OO card usage amount
다음으로, 쿼리 생성부(34)는 질의 인식부(33)에 의하여 결정된 대표질의 및 조건절을 토대로 해당 내용을 데이터베이스 서버(2)에서 조회하기 위한 쿼리문을 생성할 수 있다(S12). 쿼리문의 구체적인 형태는 데이터베이스 서버(2)에 저장된 데이터베이스의 형식, 예컨대, 데이터베이스가 계층형 데이터베이스인지, 네트워크형 데이터베이스인지, 관계형 데이터베이스인지, NoSQL 데이터베이스인지 등에 따라 결정될 수 있고, 특정 형태로 한정되지 않는다. Next, the
또한 일 실시예에서, 정보 검색 시스템(3)이 API 기반의 통신을 통하여 데이터베이스 서버(2)와 통신하도록 구성되는 경우, 쿼리 생성부(34)에 의하여 생성되는 쿼리문이란 세부질의에 해당하는 데이터를 데이터베이스 서버(2)로부터 수신하기 위하여 데이터베이스 서버(2)가 사전에 정의하고 있는 API의 문법에 따라 데이터를 요청하는 데이터 패킷을 지칭하는 것일 수도 있다. Also, in one embodiment, when the
일 실시예에서는, 동일한 조건절이라도, 해당 조건절과 대표질의의 조합으로 정의되는 세부질의에 의해 조회할 데이터의 값은 해당 조건절과 조합되는 대표질의의 종류에 따라 상이할 수 있다. 예컨대, 이하의 표 6은 시간 조건절이 다양한 대표질의와 조합되었을 경우 조건절의 내용이 검색 결과에 어떻게 영향을 미치는지를 나타낸다. In an embodiment, even with the same conditional clause, the value of data to be searched by a detailed query defined by a combination of the corresponding conditional clause and the representative query may be different depending on the type of the representative query combined with the corresponding conditional clause. For example, Table 6 below shows how the content of the conditional clause affects the search results when the time conditional clause is combined with various representative queries.
표 6에서 시간 조건절은 시간명사(예컨대, 당일, 전일, 전주, 전월, 금주, 금월 등), 특정 월을 나타내는 표현, 및/또는 특정 일을 나타내는 표현에 의하여 정의된다. 이때, 동일한 시간 조건절이라도 이를 이용하여 쿼리될 데이터의 값은 시간 조건절과 조합되는 대표질의의 종류에 따라 달라지는 경우가 있을 수 있다. 그러나 하기 표 6에 기재된 내용은 예시적인 것으로서, 조건절을 이용하여 쿼리될 데이터의 구체적인 값은 실시예에 따라 변경될 수 있다.In Table 6, the temporal conditional clause is defined by a temporal noun (eg, day, previous day, previous week, previous month, this week, this month, etc.), an expression representing a specific month, and/or an expression representing a specific day. In this case, even in the same time conditional clause, the value of data to be queried using the time conditional clause may vary depending on the type of representative query combined with the time conditional clause. However, the contents described in Table 6 below are exemplary, and specific values of data to be queried using a conditional clause may be changed according to embodiments.
명사noun
현금영수증/Cash receipts/
세금계산서Tax bill
미지급unpaid
(입금 예정)(to be deposited)
(당일)full day
(day)
(당일)full day
(day)
(금월이면
전일 기준)As of the end of the month A
(If this month
as of the previous day)
(B일이 당일 이후이면
전월 B일 조회)B of this month
(If date B is after the same day,
Viewed on B of the previous month)
B일this month
day B
B일this month
day B
B일this month
day B
B일this month
day B
(A월B일이 당일 이후이면 작년 A월B일 조회)A month B
(If A/B is after the same day, look up A/B of last year)
B일A month
day B
B일A month
day B
B일A month
day B
예를 들어, "당일"이라는 시간명사가 조건절로 입력된 경우 월 또는 일에 대한 입력은 무시하고 "당일"을 조건절로 세부조회가 이루어지는데, 조건절이 "당일"로 동일하더라도 대표질의가 정의하는 호출 데이터가 통장 잔고인지, 입출금 내역인지, 카드결제금액 또는 현금영수증 또는 세금계산서인지, 미수금 또는 미지급 내역인지, 또는 카드 매출 또는 입금 예정액인지에 따라 조회할 데이터가 상이하게 된다. 유효한 데이터를 조회할 필요가 있는 입금 예정액이 호출 데이터일 경우 조건절이 "당일"일 경우 당일의 데이터 값을 조회하지만, 호출 데이터가 그 외 다른 종류의 데이터일 경우에는 조건절이 "당일"일 경우 실제로는 전일의 데이터를 조회할 수 있다. For example, if the time noun “on the day” is entered as a conditional clause, the input for month or day is ignored and a detailed search is made using “the day” as a conditional clause. The data to be inquired differs depending on whether the call data is the bankbook balance, deposit and withdrawal details, card payment amount, cash receipts or tax invoices, accounts receivable or non-payment details, or card sales or planned deposits. If the expected deposit amount that needs to be inquired for valid data is call data, if the conditional clause is “same day”, the data value of the day is inquired. can search the previous day's data.
또 다른 예로, 조건절이 "금주" 또는 "금월"의 검색 시간을 정의하고 있는 경우 카드결제금액 또는 현금영수증 또는 세금계산서, 미수금 또는 미지급 내역, 카드 매출 또는 입금 예정액 등의 호출 데이터에 대해서는 "금주" 또는 "금월"의 데이터를 조회하지만, 통장 잔고 또는 입출금 내역의 호출 데이터에 대해서는 조건절이 "금주" 또는 "금월"일 경우 전일 기준으로 데이터를 제공할 수 있다. As another example, if the conditional clause defines the search time of "this week" or "this month", "this week" for calling data such as card payment amount or cash receipt or tax invoice, receivable or non-payment history, card sales or expected amount to be deposited Alternatively, data for “this month” is inquired, but for call data of bankbook balance or deposit and withdrawal details, if the conditional clause is “this week” or “this month”, data can be provided based on the previous day.
일 실시예에서는, 동일한 원리가 검색 시간에 대한 조건절이 없는 경우에도 적용되어, 대표질의가 정의하는 호출 데이터의 종류에 따라 검색 시간을 정의하지 않을 경우 제공되는 데이터의 기준 시점이 상이할 수 있다. 예를 들어, 시간 조건절이 없을 경우 통장 잔고나 카드 매출은 전일 기준으로 데이터를 제공하고, 카드결제금액/현금영수증/세금계산서는 금월 기준으로 데이터를 제공하며, 미수금/미지급금은 현재 기준으로 데이터를 제공하고, 입출금 내역은 과거 7일의 데이터를 제공할 수 있다. In one embodiment, the same principle is applied even when there is no conditional clause for the search time, and when the search time is not defined according to the type of call data defined by the representative query, the reference time of the provided data may be different. For example, if there is no time conditional, the bankbook balance or card sales data is provided on the basis of the previous day, card payment amount/cash receipt/tax invoice data is provided as of the current month, and accounts receivable/accrued data are provided on the current basis. It can provide data of the past 7 days for deposit and withdrawal details.
이상에서는, 조건절과 조합되는 대표질의의 종류에 따라 동일한 조건절에 의한 데이터의 검색 조건이 상이한 실시예를 시간 조건절을 예시로 하여 설명하였으나, 동일한 원리가 개체명 또는 값의 범위 등 다른 조건절에 대해서도 적용될 수 있다. In the above, an embodiment in which data retrieval conditions by the same conditional clause are different according to the type of representative query combined with the conditional clause have been described using the time conditional clause as an example. can
또한, 본 명세서에 기재된 속성어와 이를 통해 정의되는 조건절 및 대표질의의 형태는 단지 예시적인 것으로서, 이는 실시예들에 따른 정보 검색 시스템(3)에 의하여 이용되는 속성어, 조건절 및 대표질의의 형태나 이에 의하여 조회 가능한 데이터의 형식 및 종류를 한정하는 것이 아니라는 점이 통상의 기술자에게 용이하게 이해될 것이다. In addition, the attribute words described in this specification and the form of the conditional clause and the representative query defined therethrough are merely exemplary, and these are the attributes of the attribute word, the conditional clause and the representative query used by the
일 실시예에서, 정보 검색 시스템(3)은 정보의 검색을 위한 쿼리문을 생성하기에 앞서, 해당 정보를 획득하기 위한 데이터베이스에 정보 검색 시스템(3)이 연결되어 있는지 여부를 탐지하고(S8), 해당 데이터베이스에 정보 검색 시스템(3)이 연결되어 있지 않을 경우 데이터 연결부(32)를 통한 데이터베이스 서버(2)와의 연결 과정(S9 내지 S11)을 더 수행할 수도 있다. 예를 들어, 사용자가 카드 사용 내역을 조회하기를 원하지만 정보 검색 시스템(3)이 카드사 서버와 연결되어 있지 않을 경우, 데이터 연결부(32)를 통해 카드사 서버에 대한 연결을 수행할 수 있다. In an embodiment, the
데이터베이스 서버(2)와의 연결 과정(S9 내지 S11)은 도 2 내지 도 4를 참조하여 전술한 연결 과정과 동일하므로, 설명의 중복을 피하기 위하여 자세한 설명은 생략한다. Since the connection process (S9 to S11) with the
통신부(35)는 쿼리 생성부(34)에 의하여 생성된 쿼리문을 데이터베이스 서버(2)에 전송함으로써, 사용자가 요청한 정보를 획득하기 위하여 필요한 데이터베이스 서버(2)를 호출하고, 데이터베이스 서버(2)로부터 호출에 대한 응답 데이터를 수신할 수 있다(S13). 또한, 통신부(35)는 데이터베이스 서버(2)로부터 수신된 응답 데이터를 사용자에게 제공할 수 있다(S14). The
이상에서 살펴본 실시예들에 따른 정보 검색 시스템(3) 및 정보 검색 방법에 의하면, 정보 검색 시스템(3)의 개발에 있어서 대표질의를 사용함으로써 쿼리가 간단해지므로 개발이 용이해지는 이점이 있다. 즉, 다양한 발화에 대해 모두 쿼리문을 생성할 필요 없이 각각의 대표질의에 상응하는 기본 쿼리문을 생성하고, 세부질의 내용에 해당하는 조건절 부분은 기본 쿼리문에 부가되는 구문의 형태로 작성함으로써 종래에 비해 시스템 개발이 용이하게 된다.According to the
또한, 실시예들에 따른 정보 검색 시스템(3) 및 정보 검색 방법에 의하면, 사용자 인터페이스의 측면에서 무수히 많은 세부질의들을 대표질의로 묶어서 사용자가 인지하도록 할 수 있는 이점이 있다. 예컨대, "회사 통장 잔고는?" 이라는 대표질의에는 "OO 은행 통장 잔고", "OO 통장 잔고", "어제 통장 잔고"와 같은 다양한 세부질의가 포함될 수 있는데, 대표질의 개념을 사용함으로써 사용자가 대표질의 및 이에 상응하는 다양한 세부질의를 쉽게 인식하고 정보 검색 시스템(3)을 활용하게 쉽도록 할 수 있다.In addition, according to the
나아가, 사용자의 발화 형태가 무수히 다양한 음성 인식의 특성 상 어쩔 수 없이 처리를 할 수 없는 발화가 있을 수 밖에 없는데, 실시예들에 따른 정보 검색 시스템(3) 및 정보 검색 방법을 이용하면 대표질의를 활용함으로써 응답의 정확도를 높이고 처리할 수 없는 발화에 대해서도 최대한 사용자의 의도에 부합하는 응답을 제공할 수 있다. 예컨대, "회사 통장 잔고는?"과 "내일 통장 잔고는?"을 각각 완전히 다른 발화로 보고 처리하는 경우(즉, 대표질의를 사용하지 않는 경우), "내일 통장 잔고는?"에 대해 따로 쿼리문이 설정되어 있지 않다면 사용자의 발화에 대해 아무런 응답을 제공할 수 없다. 그러나, 실시예들에서는 대표질의 개념을 사용하여 "내일 통장 잔고는?" 이라는 질의를 "회사 통장 잔고는?"이라는 대표질의에 속하는 세부질의로 처리할 수 있다. 이 경우, 내일의 통장 잔고 데이터는 있을 수 없으므로 사용자가 요청한 그대로의 데이터는 제공할 수 없으나, 사용자의 의도에 최대한 근접한 정보, 예컨대, 오늘 통장 잔고 데이터를 응답으로 제공할 수 있는 이점이 있다.Furthermore, due to the nature of speech recognition in which the user's speech types are innumerable, there are inevitably speeches that cannot be processed. By using the
도 5a 및 5b는 일 실시예에 따른 정보 검색 시스템에 의한 질의 수신 및 응답 제공 시 사용자 장치상에 표시되는 사용자 인터페이스의 일 예를 나타내는 이미지이다. 5A and 5B are images illustrating an example of a user interface displayed on a user device when a query is received and a response is provided by the information retrieval system according to an exemplary embodiment.
도 5a를 참조하면, 사용자가 사용자 장치(1) 상의 앱이나 웹 브라우저 등을 이용하여 정보 검색 시스템(3)에 접속하거나, 또는 정보 검색 시스템(3) 자체가 사용자 장치 형태로 구현되며 사용자가 정보 검색을 위한 앱 등을 실행한 후 음성을 입력하면, 사용자가 발화한 내용(예컨대, "이번 달 통장 잔액은?")과 이에 대한 시스템의 안내 정보(예컨대, "통장 잔액을 알려드릴게요")가 인터페이스 요소(501)로서 표시될 수 있다. 이때 안내 정보는, 사용자가 요청한 데이터에 대한 검색 결과와는 상이한 것으로서, 검색 결과를 표시하기 전까지 일시적으로 표시되는 안내 문구나 요청 사항 등을 의미한다. Referring to FIG. 5A , when a user accesses the
일 실시예에서는, 사용자가 요청한 정보에 대한 검색의 진행 상황을 나타내는 인터페이스 요소(502)가 더 표시될 수도 있다. 예를 들어, 인터페이스 요소(502)는 정보 검색 시스템(3)에 의한 정보의 획득 진행상황 및/또는 사용자가 자신이 요청한 정보를 확인할 수 있게 되기까지 남은 시간 등을 진행 바(progress bar), 카운트다운(countdown) 등 다양한 형태로 표시하는 역할을 하며, 특정 형태로 한정되지 않는다. In an embodiment, an
사용자가 요청한 정보에 대한 검색이 완료되면, 도 5b에 도시된 것과 같이, 요청에 따라 데이터베이스에 대한 쿼리를 수행함으로써 얻어진 응답 데이터가 검색 결과로서 인터페이스 요소(511, 512)를 통하여 사용자에게 제시될 수 있다. 도 5b의 인터페이스 요소(511)는 사용자의 음성 입력에 직접적으로 상응하는 응답 데이터로서, 예컨대 음성 입력이 "이번 달 통장 잔액은?"일 경우 인터페이스 요소(511)를 통하여 사용자가 보유한 통장 잔액이 표시될 수 있다. When the search for the information requested by the user is completed, as shown in FIG. 5B , response data obtained by performing a query to the database according to the request may be presented to the user through the
한편, 도 5b의 인터페이스 요소(512)는 사용자의 음성 입력에 대한 직접적인 답변이 아니더라도 답변에 대한 응답 데이터를 세분화하거나 또는 응답 데이터에 대한 2차 가공을 실시하는 등에 의하여 생성되는 추가적인 관련 정보를 의미한다. 예를 들어, "이번 달 통장 잔액은?" 이라는 질문을 발화한 사용자에 대하여 사전에 등록되어 있는 계좌 번호가 복수 개 있을 경우, 인터페이스 요소(511)를 통해서는 사용자가 보유한 계좌의 잔액들을 모두 합산한 총 잔액이 표시되며, 인터페이스 요소(512)를 통해서는 사용자가 보유한 다수의 계좌 각각의 잔액이 표시될 수 있다. On the other hand, the
이상에서 설명한 실시예들에 따른 정보 검색 방법에 의한 동작은 적어도 부분적으로 컴퓨터 프로그램으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 실시예들에 따른 방법에 의한 동작을 구현하기 위한 프로그램이 기록되고 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 또한, 본 실시예를 구현하기 위한 기능적인 프로그램, 코드 및 코드 세그먼트(segment)들은 본 실시예가 속하는 기술 분야의 통상의 기술자에 의해 용이하게 이해될 수 있을 것이다.The operation by the information retrieval method according to the embodiments described above may be implemented at least partially as a computer program and recorded in a computer-readable recording medium. A computer-readable recording medium in which a program for implementing the operation according to the method according to the embodiments is recorded includes all types of recording devices in which computer-readable data is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, and optical data storage device. In addition, the computer-readable recording medium may be distributed in a network-connected computer system, and the computer-readable code may be stored and executed in a distributed manner. In addition, functional programs, codes, and code segments for implementing the present embodiment may be easily understood by those skilled in the art to which the present embodiment belongs.
이상에서 살펴본 본 발명은 도면에 도시된 실시예들을 참고로 하여 설명하였으나 이는 예시적인 것에 불과하며 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 실시예의 변형이 가능하다는 점을 이해할 것이다. 그러나, 이와 같은 변형은 본 발명의 기술적 보호범위 내에 있다고 보아야 한다. Although the present invention as described above has been described with reference to the embodiments shown in the drawings, it will be understood that these are merely exemplary, and that various modifications and variations of the embodiments are possible therefrom by those of ordinary skill in the art. However, such modifications should be considered to be within the technical protection scope of the present invention.
Claims (13)
상기 음성 입력 데이터에 상응하는 상기 대표질의 및 상기 조건절을 이용하여 데이터베이스로부터 정보를 검색하기 위한 쿼리문을 생성하도록 구성된 쿼리 생성부; 및
상기 쿼리문을 이용하여 상기 데이터베이스를 검색함으로써 상기 음성 입력 데이터에 상응하는 응답 데이터를 수신하도록 구성된 통신부를 포함하는 정보 검색 시스템.
a representative query determiner configured to match the voice input data to any one of a plurality of preset representative queries by using an attribute word that is detected from the voice input data and defines call data among one or more preset attribute words; and a query recognition unit including a conditional clause determining unit configured to generate a conditional clause corresponding to the voice input data by using an attribute defining a search condition among attribute words detected from the input data;
a query generator configured to generate a query for retrieving information from a database using the representative query corresponding to the voice input data and the conditional clause; and
and a communication unit configured to receive response data corresponding to the voice input data by searching the database using the query statement.
상기 복수 개의 대표질의는 동일한 호출 데이터에 대하여 서로 상이한 가공 방식을 정의하는 대표질의들을 포함하며,
상기 대표질의 결정부는, 상기 음성 입력 데이터로부터 탐지된 속성어 중 가공 방식을 정의한 속성어를 이용하여, 상기 음성 입력 데이터를 상기 서로 상이한 가공 방식을 정의하는 대표질의들 중 어느 하나에 대응시키도록 더 구성된 정보 검색 시스템.
According to claim 1,
The plurality of representative queries includes representative queries defining different processing methods for the same call data,
The representative query determining unit is further configured to match the voice input data to any one of the representative queries defining the different processing methods using an attribute defining a processing method among attribute words detected from the voice input data. A configured information retrieval system.
상기 정보 검색 시스템은 상기 데이터베이스로부터 거래 데이터를 검색하도록 더 구성되며,
상기 조건절 결정부는, 상기 음성 입력 데이터로부터 탐지된 속성어 중 거래처, 거래 시간, 및 거래 금액 중 하나 이상을 정의하는 속성어를 탐지하여 상기 조건절을 생성하도록 더 구성된 정보 검색 시스템.
According to claim 1,
the information retrieval system is further configured to retrieve transaction data from the database,
The conditional clause determining unit is further configured to generate the conditional clause by detecting an attribute defining at least one of a customer, a transaction time, and a transaction amount among attribute words detected from the voice input data.
사용자가 정보 검색을 위한 상기 데이터베이스를 선택할 수 있는 사용자 인터페이스를 제공하도록 구성된 데이터 연결부를 더 포함하는 정보 검색 시스템.
According to claim 1,
and a data connection configured to provide a user interface through which a user can select the database for information retrieval.
상기 데이터 연결부는, 상기 대표질의 또는 상기 대표질의에 대해 미리 설정된 카테고리에 상응하는 상기 데이터베이스로부터 정보를 수신할 수 없는 것에 대한 응답으로 상기 사용자 인터페이스를 제공하도록 더 구성된 정보 검색 시스템.
5. The method of claim 4,
The data connection unit is further configured to provide the user interface in response to not being able to receive information from the database corresponding to the representative query or a category preset for the representative query.
상기 음성 입력 데이터를 수신하고, 상기 음성 입력 데이터로부터 상기 하나 이상의 속성어를 탐지하도록 구성된 입력부를 더 포함하는 정보 검색 시스템.
According to claim 1,
and an input unit configured to receive the voice input data and to detect the one or more attribute words from the voice input data.
상기 정보 검색 시스템이, 상기 음성 입력 데이터로부터 미리 설정된 하나 이상의 속성어를 탐지하는 단계;
상기 정보 검색 시스템이, 상기 음성 입력 데이터로부터 탐지된 속성어 중 호출 데이터를 정의하는 속성어를 이용하여 상기 음성 입력 데이터를 미리 설정된 복수의 대표질의 중 어느 하나에 대응시키는 단계;
상기 정보 검색 시스템이, 상기 음성 입력 데이터로부터 탐지된 속성어 중 검색 조건을 정의하는 속성어를 이용하여 상기 음성 입력 데이터에 상응하는 조건절을 생성하는 단계;
상기 정보 검색 시스템이, 상기 음성 입력 데이터에 상응하는 상기 대표질의 및 상기 조건절을 이용하여 데이터베이스로부터 정보를 검색하기 위한 쿼리문을 생성하는 단계; 및
상기 정보 검색 시스템이, 상기 쿼리문을 이용하여 상기 데이터베이스를 검색함으로써 상기 음성 입력 데이터에 상응하는 응답 데이터를 수신하는 단계를 포함하는 정보 검색 방법.
receiving, by the information retrieval system, the user's voice input data;
detecting, by the information retrieval system, one or more preset attribute words from the voice input data;
matching, by the information retrieval system, the voice input data to any one of a plurality of preset representative queries by using an attribute defining call data among attribute words detected from the voice input data;
generating, by the information retrieval system, a conditional clause corresponding to the voice input data by using an attribute defining a search condition among attribute words detected from the voice input data;
generating, by the information retrieval system, a query for retrieving information from a database using the representative query and the conditional clause corresponding to the voice input data; and
and receiving, by the information retrieval system, response data corresponding to the voice input data by searching the database using the query statement.
상기 복수 개의 대표질의는 동일한 호출 데이터에 대하여 서로 상이한 가공 방식을 정의하는 대표질의들을 포함하며,
상기 복수의 대표질의 중 어느 하나에 대응시키는 단계는, 상기 정보 검색 시스템이, 상기 음성 입력 데이터로부터 탐지된 속성어 중 가공 방식을 정의한 속성어를 이용하여 상기 음성 입력 데이터를 상기 서로 상이한 가공 방식을 정의하는 대표질의들 중 어느 하나에 대응시키는 단계를 포함하는 정보 검색 방법.
8. The method of claim 7,
The plurality of representative queries includes representative queries defining different processing methods for the same call data,
Corresponding to any one of the plurality of representative queries includes, in the information retrieval system, the different processing methods for the voice input data by using an attribute defining a processing method among attribute words detected from the voice input data. An information retrieval method comprising the step of matching any one of the defining representative queries.
상기 데이터베이스는 거래 데이터를 제공하도록 더 구성되며,
상기 조건절을 생성하는 단계는, 상기 정보 검색 시스템이, 상기 음성 입력 데이터로부터 탐지된 속성어 중 거래처, 거래 시간, 및 거래 금액 중 하나 이상을 정의하는 속성어를 탐지하여 상기 조건절을 생성하는 단계를 포함하는 정보 검색 방법.
8. The method of claim 7,
the database is further configured to provide transaction data,
The generating of the conditional clause includes, by the information retrieval system, detecting, by the information retrieval system, an attribute defining at least one of a customer, a transaction time, and a transaction amount among attribute words detected from the voice input data and generating the conditional clause. How to retrieve information that contains.
상기 정보 검색 시스템이, 사용자가 정보 검색을 위한 상기 데이터베이스를 선택할 수 있는 사용자 인터페이스를 제공하는 단계를 더 포함하는 정보 검색 방법.
8. The method of claim 7,
The information retrieval method further comprising the step of providing, by the information retrieval system, a user interface through which a user can select the database for information retrieval.
상기 사용자 인터페이스를 제공하는 단계는, 상기 정보 검색 시스템이, 상기 대표질의 또는 상기 대표질의에 대해 미리 설정된 카테고리에 상응하는 상기 데이터베이스로부터 정보를 수신할 수 없는 것에 대한 응답으로 수행되는 정보 검색 방법.
11. The method of claim 10,
The providing of the user interface is performed in response to the information retrieval system being unable to receive information from the database corresponding to the representative query or a category preset for the representative query.
상기 음성 입력 데이터를 미리 설정된 복수의 대표질의 중 어느 하나에 대응시키는 단계 전에,
상기 정보 검색 시스템이, 상기 음성 입력 데이터를 수신하는 단계; 및
상기 정보 검색 시스템이, 상기 음성 입력 데이터로부터 상기 하나 이상의 속성어를 탐지하는 단계를 더 포함하는 정보 검색 방법.
8. The method of claim 7,
Before the step of matching the voice input data to any one of a plurality of preset representative queries,
receiving, by the information retrieval system, the voice input data; and
The information retrieval method further comprising the step of detecting, by the information retrieval system, the one or more attribute words from the voice input data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200097891A KR102422910B1 (en) | 2020-08-05 | 2020-08-05 | System and method for retrieving information using voice recognition and computer program for the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200097891A KR102422910B1 (en) | 2020-08-05 | 2020-08-05 | System and method for retrieving information using voice recognition and computer program for the same |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220017655A true KR20220017655A (en) | 2022-02-14 |
KR102422910B1 KR102422910B1 (en) | 2022-07-20 |
Family
ID=80253874
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200097891A KR102422910B1 (en) | 2020-08-05 | 2020-08-05 | System and method for retrieving information using voice recognition and computer program for the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102422910B1 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120077830A (en) * | 2010-12-31 | 2012-07-10 | (주)네오위즈게임즈 | Method, device and server for providing automated information extraction service |
KR101427040B1 (en) * | 2013-03-22 | 2014-08-05 | 박동기 | transaction information input system for a smart device using speech recognition and information input method for asset management using thereof |
KR101860269B1 (en) | 2017-08-21 | 2018-05-23 | 이지스엔터프라이즈 주식회사 | Server and method for interactive voice interface-based automatic transfer processing |
KR20190123708A (en) * | 2019-10-24 | 2019-11-01 | 주식회사 카카오 | Server, device and method for providing instant messeging service by using relay chatbot |
KR20200014046A (en) * | 2018-07-31 | 2020-02-10 | 주식회사 포티투마루 | Device and Method for Machine Reading Comprehension Question and Answer |
-
2020
- 2020-08-05 KR KR1020200097891A patent/KR102422910B1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120077830A (en) * | 2010-12-31 | 2012-07-10 | (주)네오위즈게임즈 | Method, device and server for providing automated information extraction service |
KR101427040B1 (en) * | 2013-03-22 | 2014-08-05 | 박동기 | transaction information input system for a smart device using speech recognition and information input method for asset management using thereof |
KR101860269B1 (en) | 2017-08-21 | 2018-05-23 | 이지스엔터프라이즈 주식회사 | Server and method for interactive voice interface-based automatic transfer processing |
KR20200014046A (en) * | 2018-07-31 | 2020-02-10 | 주식회사 포티투마루 | Device and Method for Machine Reading Comprehension Question and Answer |
KR20190123708A (en) * | 2019-10-24 | 2019-11-01 | 주식회사 카카오 | Server, device and method for providing instant messeging service by using relay chatbot |
Also Published As
Publication number | Publication date |
---|---|
KR102422910B1 (en) | 2022-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2926931C (en) | Generating integrated data records by correlating source data records from disparate data sources | |
US8626617B1 (en) | Method and system for identifying fixed asset transactions from multiple financial transactions | |
US8442881B2 (en) | Systems and methods of processing and classifying a financial transaction | |
US20210133706A1 (en) | Automatic generation and population of digital interfaces based on adaptively processed image data | |
US20150149354A1 (en) | Real-Time Data Recognition and User Interface Field Updating During Voice Entry | |
US8626769B1 (en) | Community contributed rules in online accounting systems | |
US20140279303A1 (en) | Image capture and processing for financial transactions | |
US20160027124A1 (en) | Thematic Repositories for Transaction Management | |
US11769509B2 (en) | Speech-based contextual delivery of content | |
US10572607B1 (en) | Translating transaction descriptions using machine learning | |
US11461681B2 (en) | System and method for multi-modality soft-agent for query population and information mining | |
AU2018204672B2 (en) | System and method for processing a digital transaction | |
CN111382279A (en) | Order examination method and device | |
US11601390B2 (en) | System and method for tagging data | |
US9087389B2 (en) | Reducing image size at point of capture | |
KR102422910B1 (en) | System and method for retrieving information using voice recognition and computer program for the same | |
US9483660B2 (en) | Enterprise content management platform validator | |
US9741079B2 (en) | Method and apparatus for replicating and analyzing databases | |
US20210304284A1 (en) | Determining user spending propensities for smart recommendations | |
US20210334868A1 (en) | Using scenarios to mitigate seller risk to enter online platforms | |
US11328350B1 (en) | Systems and methods for payee identification via camera | |
TW202307759A (en) | Automatic bookkeeping system and automatic bookkeeping method based on user feedback | |
CN113192511A (en) | Information input method, information input device, electronic device, and storage medium | |
TWM592130U (en) | Big data analysis system for customer service | |
TW202101423A (en) | System and method of triggering financial service with voice |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) |