KR20190134039A - Voice input processing method and apparatus thereof - Google Patents

Voice input processing method and apparatus thereof Download PDF

Info

Publication number
KR20190134039A
KR20190134039A KR1020180059186A KR20180059186A KR20190134039A KR 20190134039 A KR20190134039 A KR 20190134039A KR 1020180059186 A KR1020180059186 A KR 1020180059186A KR 20180059186 A KR20180059186 A KR 20180059186A KR 20190134039 A KR20190134039 A KR 20190134039A
Authority
KR
South Korea
Prior art keywords
keyword
field
input
reserved word
controller
Prior art date
Application number
KR1020180059186A
Other languages
Korean (ko)
Other versions
KR102184962B1 (en
Inventor
도준웅
Original Assignee
주식회사 마이셀럽스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 마이셀럽스 filed Critical 주식회사 마이셀럽스
Priority to KR1020180059186A priority Critical patent/KR102184962B1/en
Publication of KR20190134039A publication Critical patent/KR20190134039A/en
Application granted granted Critical
Publication of KR102184962B1 publication Critical patent/KR102184962B1/en

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/63Querying
    • G06F16/638Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit

Abstract

The present invention relates to a method and an apparatus for processing a voice input. More specifically, the method and apparatus convert a sentence or a phrase inputted by a voice from a user into a text, search for keytalk in the converted text, and provide information related to the field of the searched keytalk. The apparatus comprises: a display unit; an input unit; and a control unit.

Description

음성입력 처리 방법 및 장치{VOICE INPUT PROCESSING METHOD AND APPARATUS THEREOF}Voice input processing method and apparatus {VOICE INPUT PROCESSING METHOD AND APPARATUS THEREOF}

본 발명은 음성입력 처리 방법 및 장치에 관한 것으로, 보다 상세하게는 사용자로부터 음성으로 입력받은 문장 또는 구문을 텍스트로 변환한 후 변환된 텍스트에서 키토크를 검색하고 검색된 키토크의 분야와 관련된 정보를 제공하는 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for processing a voice input, and more particularly, converts a sentence or phrase input by voice from a user into text, searches for a key talk in the converted text, and retrieves information related to the field of the searched key talk. The present invention relates to a method and an apparatus.

종래의 검색 방식에 따르면, 사용자는 검색 창에 검색 키워드를 입력하여 원하는 웹 문서 등을 검색하여 찾을 수 있다. 예를 들어 사용자는 영화 제목 "인터스텔라"를 검색창에 입력하여 영화 "인터스텔라"에 관한 정보를 검색할 수 있다. 다만 사용자가 자신이 찾으려는 영화 제목을 기억하지 못할 경우 다른 방식의 정보 제공이 요구된다. 사용자는 예를 들어 자신이 찾으려는 영화에 출연한 배우나 해당 영화의 감독, 제작자 등을 키워드로 입력하여 검색을 시도할 수 있다. 영화 정보 사이트나 영화 리뷰 사이트에는 영화 정보와 함께 출연진 정보도 제공되는 경우가 많으므로, 운이 나쁘지 않다면 사용자는 배우, 감독, 제작자 등을 키워드로 하여 원하는 영화를 찾을 수도 있을 것이다. According to a conventional search method, a user may search for and find a desired web document by inputting a search keyword in a search window. For example, a user may enter the movie title "Interstellar" into the search box to retrieve information about the movie "Interstellar". However, if the user does not remember the title of the movie he is looking for, it is required to provide information in a different manner. For example, a user may attempt to search by entering an actor who appeared in a movie he is looking for, a director, a producer, etc. of the movie as a keyword. Movie information sites or movie review sites are often provided with the cast information along with the movie information, so if not fortunate, the user may be able to find a desired movie by keyword, such as actor, director, producer.

그런데 더 나아가, 이와 같이 정형화된 정보가 아닌 비정형적 언어, 예를 들어 감정 언어에 기반한 정보 제공이라면 종래의 검색 방식을 사용할 수 없다. 예를 들어 "재미있는 영화" 또는 "슬플 때 보는 영화" 등의 검색어에 대해서 종래 검색엔진들이 제공하는 응답은 누군가가 "재미있는 영화" 또는 "슬플 때 보는 영화"라는 키워드를 포함하여 작성해 둔 문서를 검색하는 것에 불과할 것이다. 하지만 비정형적 언어는 출연 배우, (정형화된) 영화 장르, 개봉 년도 등 정형화된 정보와는 다른 방식의 접근이 필요하다. 누군가가 "재미있는 영화" 또는 "슬플 때 보는 영화"라는 키워드를 포함하여 작성해 두지 않았더라도, 실제로 많은 사람들이 "재미있다"거나 "슬플 때 보면 좋다"고 느낄 수 있는 영화들이 있을 수 있다. 더 나아가 영화 외의 다른 분야에 대해서도, 정형화되지 않은 언어를 이용한 정보 제공 요청에 대해서 다른 접근이 필요할 수 있다.However, if the information is provided based on an atypical language, for example, an emotional language, rather than the standardized information, the conventional search method cannot be used. For example, a traditional search engine's response to a search query such as "fun movie" or "movie when watching sad" will search for documents that someone has written containing the keywords "fun movie" or "movie when watching sad." It will only be. However, atypical language requires a different approach from the standardized information such as actors, (formal) movie genres, and release years. Even if someone didn't include the keyword "funny movies" or "movies when sad," there may be movies that many people may find "fun" or "good when sad." Furthermore, other areas besides film may require different approaches to requests for information provision using unstructured languages.

예를 들어 사용자가"분위기 있고 조용한"이라고 검색어를 입력한 경우, 사용자는 "분위기 있고 조용한" 맛집을 원할수도 있고, "분위기 있고 조용한" 숙박시설을 원할수도 있으므로 정형화되지 않은 언어를 이용한 정보 제공 요청에 대하여 분야별로 정보가 정리되어 제공될 필요가 있다.For example, if a user enters the search term "ambient and quiet," the user may want a restaurant that is "atmosphere and quiet," or may want a "ambient and quiet" accommodation. The information needs to be organized and provided for each field.

또한 일단 분야가 결정되어 사용자가 그 분야에서 새롭게 검색하거나 기존의 검색어와 결합하여 그 분야에 대해 검색하고자 하는 경우, 사용자로부터 새로운 검색어를 입력받아 해당 분야에 대해서 검색을 수행하거나 기존의 검색어와 결합하여 해당 분야에 대해서 검색을 수행하여 그 결과가 사용자에게 제공될 필요가 있다. In addition, once a field is determined and the user wants to search for the new field in the field or combine it with an existing search term, the user receives a new term from the user and searches for the field or combines with the existing search term. It is necessary to perform a search on the relevant field and provide the result to the user.

본 발명은 사용자로부터 음성으로 입력받은 문장 또는 구문을 텍스트로 변환한 후 변환된 텍스트에서 키토크를 검색하고 검색된 키토크의 분야와 관련된 정보를 제공하는 방법 및 장치를 제공하기 위한 것이다.The present invention is to provide a method and apparatus for converting a sentence or phrase input by voice from a user into text, searching for keytalk in the converted text, and providing information related to the field of the searched keytalk.

본 발명의 일 실시예에 따른 음성 입력 처리 장치는, 음성 입력을 수신하기 위한 통합 입력 버튼을 표시하는 표시부; 상기 통합 입력 버튼이 선택되면 사용자로부터 상기 음성 입력을 수신하는 입력부; 상기 입력된 음성을 텍스트로 변환하고 상기 텍스트에서 키토크 및 분야 관련 단어를 추출하고 상기 키토크와 관련된 정보를 정보 제공 장치에 요청하는 제어부;를 포함하며, 상기 키토크와 관련된 정보는 분야별로 표시된다.An apparatus for processing voice input according to an embodiment of the present invention includes a display unit for displaying an integrated input button for receiving a voice input; An input unit configured to receive the voice input from a user when the integrated input button is selected; And a controller for converting the input voice into text, extracting a key talk and a field related word from the text, and requesting an information providing device for information related to the key talk, wherein the information related to the key talk is displayed for each field. do.

상기 키토크는 분야별로 설정된다.The key torque is set for each field.

상기 키토크와 관련된 정보는 상기 분야와 상기 분야에 해당하는 정보에 대한 전체보기버튼과 함께 표시된다.The information related to the key talk is displayed together with the overview button for the field and information corresponding to the field.

상기 분야를 선택하거나 상기 전체보기버튼을 선택하면 상기 분야의 모든 정보와 재검색 버튼 및 추가 입력 검색 버튼이 추가로 표시된다.If the field is selected or the view all button is selected, all the information of the field and the rescan button and the additional input search button are additionally displayed.

상기 입력부는 상기 재검색 버튼 또는 상기 추가 입력 검색 버튼이 선택되면 상기 사용자로부터 음성 입력을 수신한다.The input unit receives a voice input from the user when the re-search button or the additional input search button is selected.

상기 재검색 버튼이 선택되면 상기 제어부는 상기 입력된 음성을 텍스트로 변환하고 상기 텍스트에서 키토크를 추출한다.When the rescan button is selected, the controller converts the input voice into text and extracts key talk from the text.

상기 제어부는 상기 분야에서 상기 키토크와 관련된 정보를 상기 정보 제공 장치에 요청한다.The controller requests the information providing apparatus for information related to the key talk in the field.

상기 추가 입력 검색 버튼이 선택되면 상기 제어부는 상기 입력된 음성을 텍스트로 변환하고 상기 텍스트에서 추가 키토크를 추출한다.When the additional input search button is selected, the controller converts the input voice into text and extracts additional key talk from the text.

상기 제어부는 상기 분야에서 상기 키토크 및 상기 추가 키토크와 관련된 정보를 상기 정보 제공 장치에 요청한다.The controller requests the information providing apparatus for information related to the key talk and the additional key talk in the field.

본 발명의 일 실시예에 따른 음성 입력 처리 방법은, 음성 입력을 수신하기 위한 통합 입력 버튼을 표시하는 단계; 상기 통합 입력 버튼이 선택되면 사용자로부터 상기 음성 입력을 수신하는 단계; 상기 입력된 음성을 텍스트로 변환하고 상기 텍스트에서 키토크 및 분야 관련 단어를 추출하고 상기 키토크와 관련된 정보를 정보 제공 장치에 요청하는 단계;를 포함하며, 상기 키토크와 관련된 정보는 분야별로 표시된다.A voice input processing method according to an embodiment of the present invention includes: displaying an integrated input button for receiving a voice input; Receiving the voice input from a user when the integrated input button is selected; Converting the input voice into text, extracting a keytalk and a field related word from the text, and requesting an information providing device for information related to the keytalk, wherein the information related to the keytalk is displayed for each field. do.

상기 키토크는 분야별로 설정된다.The key torque is set for each field.

상기 키토크와 관련된 정보는 상기 분야와 상기 분야에 해당하는 정보에 대한 전체보기버튼과 함께 표시된다.The information related to the key talk is displayed together with the overview button for the field and information corresponding to the field.

상기 분야를 선택하거나 상기 전체보기버튼을 선택하면 상기 분야의 모든 정보와 재검색 버튼 및 추가 입력 검색 버튼이 추가로 표시된다.If the field is selected or the view all button is selected, all the information of the field and the rescan button and the additional input search button are additionally displayed.

상기 재검색 버튼 또는 상기 추가 입력 검색 버튼이 선택되면 상기 사용자로부터 음성 입력을 수신한다.When the re-search button or the additional input search button is selected, a voice input is received from the user.

상기 재검색 버튼이 선택되면 상기 입력된 음성을 텍스트로 변환하고 상기 텍스트에서 키토크를 추출한다.When the rescan button is selected, the input voice is converted into text and key talk is extracted from the text.

상기 분야에서 상기 키토크와 관련된 정보를 상기 정보 제공 장치에 요청한다.Requests information related to the key talk from the field to the information providing device.

상기 추가 입력 검색 버튼이 선택되면 상기 입력된 음성을 텍스트로 변환하고 상기 텍스트에서 추가 키토크를 추출한다.When the additional input search button is selected, the input voice is converted into text and additional key talk is extracted from the text.

상기 분야에서 상기 키토크 및 상기 추가 키토크와 관련된 정보를 상기 정보 제공 장치에 요청한다.In the field, the information providing apparatus requests information related to the key talk and the additional key talk.

본 발명의 일 실시예에 따른 음성 입력 처리 방법 및 장치는, 사용자로부터 수신한 음성에서 키토크를 추출하고, 추출된 키토크를 이용하여 검색을 수행하고 그 결과를 분야별로 제공할 수 있다.The voice input processing method and apparatus according to an embodiment of the present invention may extract a key talk from a voice received from a user, perform a search using the extracted key talk, and provide the result by field.

본 발명의 일 실시예에 따른 음성 입력 처리 방법 및 장치는, 사용자가 분야를 선택하고 사용자로부터 새로운 음성을 수신하고 수신한 음성에서 키토크를 추출한 후 사용자가 선택한 분야에서 추출된 키토크를 이용하여 새로운 검색을 수행하고 그 결과를 제공할 수 있다.The voice input processing method and apparatus according to an embodiment of the present invention may be performed by selecting a field, receiving a new voice from the user, extracting a key talk from the received voice, and then using the key torque extracted from the field selected by the user. You can perform a new search and provide the results.

본 발명의 일 실시예에 따른 음성 입력 처리 방법 및 장치는, 사용자가 분야를 선택하고 사용자로부터 새로운 음성을 수신하고 수신한 음성에서 키토크를 추출한 후 사용자가 선택한 분야에서 기존의 키토크와 추출된 키토크를 이용하여 새로운 검색을 수행하고 그 결과를 제공할 수 있다.In the voice input processing method and apparatus according to an embodiment of the present invention, a user selects a field, receives a new voice from the user, extracts a key talk from the received voice, and then extracts the existing keytalk from the field selected by the user. Keytalk can be used to perform new searches and provide results.

도 1은 본 명세서의 일 실시 예에 따르는 속성 언어를 이용한 정보 제공 시스템의 망 구성도이다.
도 2는 본 명세서의 일 실시 예에 따르는 단말(200)의 블록구성도이다.
도 3은 본 명세서의 일 실시 예에 따르는 정보 제공 장치(300)의 블록구성도이다.
도 4는 본 명세서의 일 실시 예에 따르는 정보 제공 인터페이스를 통한 정보 제공 과정의 순서도이다.
도 5는 본 명세서의 일 실시 예에 따르는 단계 910의 상세순서도이다.
도 6은 본 명세서의 일 실시 예에 따르는 단계 510의 상세 순서도이다.
도 7은 본 명세서의 일 실시 예에 따르는 단계 530의 상세 순서도이다.
도 8은 본 명세서의 다른 실시 예에 따르는 정보 제공 과정의 순서도이다.
도 9는 본 명세서의 일 실시 예에 따르는 정보 제공 과정의 순서도이다.
도 10은 본 명세서의 일 실시 예에 따르는 저장된 객체-키워드 연관도의 예시이다.
도 11은 본 명세서의 일 실시 예에 따르는 기본 예약어-키워드 연관도의 예시이다.
도 12는 본 명세서의 일 실시 예에 따르는 단계 940의 상세 순서도이다.
도 13은 본 명세서의 다른 실시 예에 따르는 정보 제공 과정의 순서도이다.
도 14는 본 명세서의 또 다른 실시 예에 따르는 정보 제공 과정의 순서도이다.
도 15는 본 명세서의 제1 실시 예에 따르는 단계 1340의 상세 순서도이다.
도 16은 본 명세서의 다른 실시 예에 따르는 단계 1340의 상세 순서도이다.
도 17은 본 명세서의 또 다른 실시 예에 따르는 단계 1340의 상세 순서도이다.
도 18은 본 명세서의 변형 예에 따르는 단계 1320의 상세 순서도이다.
도 19는 단계 1840에서 제공되는 인터페이스 정보에 따라 생성된 인터페이스(1900)의 예시이다.
도 20은 본 명세서의 일 실시 예에 따르는 용어 계층을 나타낸 도면이다.
도 21은 본 발명의 일 실시예에 따른 가상 입력 인터페이스 프로그램 설치 과정의 순서도이다.
도 22는 본 발명의 일 실시예에 따른 음성입력 처리 방법을 수행하는 패키지의 인터페이스 페이지를 나타내는 도면이다.
도 23은 도 22의 통합 음성 입력 버튼을 선택하고 음성을 입력한 결과를 표시하는 인터페이스 페이지를 나타내는 도면이다.
도 24는 도 23의 결과표시부에서 전체표시버튼이 선택된 경우 표시되는 인터페이스 페이지를 나타내는 도면이다.
도 25는 본 발명의 일 실시예에 따른 음성입력 처리 방법을 나타내는 순서도이다.
1 is a network diagram of an information providing system using an attribute language according to an embodiment of the present specification.
2 is a block diagram of a terminal 200 according to an embodiment of the present disclosure.
3 is a block diagram of an information providing apparatus 300 according to an exemplary embodiment.
4 is a flowchart illustrating an information providing process through an information providing interface according to an exemplary embodiment of the present specification.
5 is a detailed flowchart of step 910 according to an embodiment of the present disclosure.
6 is a detailed flowchart of step 510 according to an embodiment of the present disclosure.
7 is a detailed flowchart of step 530 according to an embodiment of the present disclosure.
8 is a flowchart illustrating an information providing process according to another exemplary embodiment of the present specification.
9 is a flowchart illustrating an information providing process according to an exemplary embodiment of the present specification.
10 is an illustration of a stored object-keyword association diagram according to one embodiment of the present disclosure.
11 is an illustration of a basic reserved word-keyword association according to one embodiment of the present specification.
12 is a detailed flowchart of step 940 according to one embodiment of the present specification.
13 is a flowchart illustrating an information providing process according to another exemplary embodiment of the present specification.
14 is a flowchart illustrating an information providing process according to another embodiment of the present specification.
15 is a detailed flowchart of step 1340 according to the first embodiment of the present specification.
16 is a detailed flowchart of step 1340 according to another embodiment of the present disclosure.
17 is a detailed flowchart of step 1340 according to another embodiment of the present disclosure.
18 is a detailed flowchart of step 1320 according to a modification of the present specification.
19 is an example of an interface 1900 generated according to the interface information provided in step 1840.
20 is a diagram illustrating a term hierarchy according to an embodiment of the present specification.
21 is a flowchart illustrating a virtual input interface program installation process according to an embodiment of the present invention.
22 is a diagram illustrating an interface page of a package that performs a voice input processing method according to an embodiment of the present invention.
FIG. 23 is a diagram illustrating an interface page displaying a result of inputting a voice by selecting the integrated voice input button of FIG. 22.
FIG. 24 is a diagram illustrating an interface page displayed when the entire display button is selected in the result display unit of FIG. 23.
25 is a flowchart illustrating a voice input processing method according to an embodiment of the present invention.

이하, 본 명세서의 실시 예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.

실시 예를 설명함에 있어서 본 명세서가 속하는 기술 분야에 익히 알려져 있고 본 명세서와 직접적으로 관련이 없는 기술 내용에 대해서는 설명을 생략한다. 이는 불필요한 설명을 생략함으로써 본 명세서의 요지를 흐리지 않고 더욱 명확히 전달하기 위함이다.In describing the embodiments, descriptions of technical contents that are well known in the art to which the present disclosure belongs and are not directly related to the present specification will be omitted. This is to more clearly communicate without obscure the subject matter of the present specification by omitting unnecessary description.

마찬가지 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 개략적으로 도시되었다. 또한, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다. 각 도면에서 동일한 또는 대응하는 구성요소에는 동일한 참조 번호를 부여하였다.For the same reason, in the accompanying drawings, some components are exaggerated, omitted or schematically illustrated. In addition, the size of each component does not fully reflect the actual size. The same or corresponding components in each drawing are given the same reference numerals.

이하, 도면들을 참고하여 본 명세서의 실시 예들에 대해 설명하도록 한다.Hereinafter, embodiments of the present disclosure will be described with reference to the drawings.

본 명세서의 일부 실시 예에 따르면 예약어는 다른 키워드들과의 연관도 정보를 통해 표현, 정의되거나 그 특성, 활용방식, 성질 등이 표현, 정의될 수 있는 문자열을 의미할 수 있다. 하지만 다른 방식, 예를 들어 관리자의 수동 입력에 따라 정의/표현되는 예약어가 본 발명에 적용되는 것도 가능하다. 연관도 정보의 상세한 구성은 후술한다. 예약어는 토크(talk)의 키(key)가 된다는 의미에서 키토크(keytalk)TM라고 지칭될 수도 있다.According to some embodiments of the present disclosure, the reserved word may refer to a string that may be expressed or defined through relevance information with other keywords, or that may be expressed and defined in its characteristics, usage, and properties. However, it is also possible to apply a reserved word defined / expressed according to another method, for example, by an administrator's manual input. The detailed configuration of the association information will be described later. The reserved word may also be referred to as keytalk TM in the sense of being a key of talk.

도 1은 본 명세서의 일 실시 예에 따르는 속성 언어를 이용한 정보 제공 시스템의 망 구성도이다.1 is a network diagram of an information providing system using an attribute language according to an embodiment of the present specification.

도 1을 참조하면, 본 명세서의 일 실시 예에 따르는 정보 제공 시스템은 단말(200), 정보 제공 장치(300) 및 통신망(150)을 포함할 수 있다.Referring to FIG. 1, an information providing system according to an exemplary embodiment of the present specification may include a terminal 200, an information providing apparatus 300, and a communication network 150.

단말(200)은 예를 들어 스마트폰, PDA, 태블릿 PC, 노트북 컴퓨터, 랩탑 컴퓨터, 개인용 컴퓨터 기타 통신을 수행하고 사용자의 입력을 수신하고 화면을 출력할 수 있는 전자적 기기 또는 이와 유사한 기기로써 구현될 수 있다.The terminal 200 may be implemented as, for example, an electronic device or a similar device that performs a smartphone, a PDA, a tablet PC, a notebook computer, a laptop computer, a personal computer, or other communication, receives a user input, and outputs a screen. Can be.

정보 제공 장치(300)는 예를 들어 워크스테이션, 서버, 일반용 컴퓨터, 기타 통신을 수행할 수 있는 전자적 기기 또는 이와 유사한 기기로써 구현될 수 있다.The information providing apparatus 300 may be implemented as, for example, a workstation, a server, a general purpose computer, an electronic device capable of performing other communication, or a similar device.

단말(200)과 정보 제공 장치(300)는 통신망(150)을 통해 연결되며 통신망(150)을 통해 서로 통신한다.The terminal 200 and the information providing apparatus 300 are connected through the communication network 150 and communicate with each other through the communication network 150.

통신망(150)은 예를 들어 LTE(Long Term Evolution), LTE-A(LTE-Advanced), WI-FI, LAN(Local Area Network), WAN(Wide Area Network), CDMA(Code Division Multiple Access), TDMA(Time Division Multiple Access), WiBro(Wireless Broadband), GSM(Global System for Mobile Communications) 기타 과거, 현재에 개발되었거나 향후 사용 가능하게 되는 통신 방식 중 적어도 일부를 이용하여 구현될 수 있다. 이하에서는 편의를 위해 통신망(150)을 언급하지 않고 단말(200)과 정보 제공 장치(300)가 직접 통신하는 것처럼 설명한다.The communication network 150 may be, for example, Long Term Evolution (LTE), LTE-Advanced (LTE-A), WI-FI, Local Area Network (LAN), Wide Area Network (WAN), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Wireless Broadband (WiBro), Global System for Mobile Communications (GSM) and the like may be implemented using at least some of the past, present and future communication schemes. Hereinafter, for convenience, the terminal 200 and the information providing apparatus 300 will be described as if they directly communicate without referring to the communication network 150.

단말(200)과 정보 제공 장치(300)의 구체적인 동작 및 구성에 대해서는 도 2 내지 도 8을 참조하여 후술한다.Detailed operations and configurations of the terminal 200 and the information providing apparatus 300 will be described later with reference to FIGS. 2 to 8.

도 2는 본 명세서의 일 실시 예에 따르는 단말(200)의 블록구성도이다.2 is a block diagram of a terminal 200 according to an embodiment of the present disclosure.

도 2를 참조하면 본 명세서의 일 실시 예에 따르는 단말(200)은 입력부(210), 표시부(220), 통신부(230), 저장부(240) 및 제어부(250)를 포함할 수 있다. Referring to FIG. 2, the terminal 200 according to an exemplary embodiment of the present specification may include an input unit 210, a display unit 220, a communication unit 230, a storage unit 240, and a controller 250.

입력부(210)는 사용자의 입력 동작을 입력 신호로 변환하여 제어부(250)에게 송신한다. 입력부(210)는 예를 들어 키보드, 마우스, 터치스크린 상의 터치센서, 터치패드, 키패드, 음성 입력, 기타 현재, 과거에 가능하거나 미래에 가능해질 입력 처리 장치들로써 구현될 수 있다. 입력부(210)는 예를 들어 사용자의 정보 제공 요청 입력을 수신하여 제어부(250)에게 전달할 수 있다.The input unit 210 converts a user's input operation into an input signal and transmits the input signal to the controller 250. The input unit 210 may be implemented as, for example, a keyboard, a mouse, a touch sensor on a touch screen, a touch pad, a keypad, a voice input, and other input processing devices that may be available in the present, the past, or the future. The input unit 210 may receive, for example, a user's information input request input and transmit the received information to the controller 250.

표시부(220)는 제어부(250)의 제어에 따라 화면을 출력한다. 표시부(220)는 예를 들어 LCD(액정표시장치), LED(발광 다이오드), OLED(유기 발광 다이오드), 프로젝터, 기타 현재, 과거에 가능하거나 미래에 가능해질 표시 장치들로써 구현될 수 있다. 표시부(220)는 예를 들어 정보 제공을 위한 인터페이스 페이지나 정보 제공 결과 페이지를 표시할 수 있다. 실시 예에 따라서는 화면 출력 대신 음성 출력이나 진동 등 기타 사용자에게 정보를 전달할 수 있는 다른 방식을 사용하는 구성부가 표시부(220) 대신 사용될 수도 있다.The display unit 220 outputs a screen under the control of the controller 250. The display unit 220 may be implemented as, for example, LCDs (liquid crystal displays), LEDs (light emitting diodes), OLEDs (organic light emitting diodes), projectors, and other display devices that may be available now, in the past, or in the future. The display unit 220 may display, for example, an interface page for providing information or an information providing result page. According to an exemplary embodiment, the display unit 220 may be used in place of the display unit 220 using a different method of transmitting information to other users such as voice output or vibration instead of the screen output.

통신부(230)는 정보 제공 장치(300) 및/또는 기타 외부 장치와 데이터를 주고받는다. 통신부(230)는 정보 제공 장치(300)로부터 수신한 데이터를 제어부(250)에게 전달한다. 또한 통신부(230)는 제어부(250)의 제어에 따라 데이터를 정보 제공 장치(300)에게 전달한다. 통신부(230)가 사용하는 통신 기술은 통신망(150)의 유형이나 기타 사정에 따라 달라질 수 있다.The communication unit 230 exchanges data with the information providing device 300 and / or other external device. The communicator 230 transmits the data received from the information providing apparatus 300 to the controller 250. In addition, the communication unit 230 transmits data to the information providing apparatus 300 under the control of the control unit 250. The communication technology used by the communication unit 230 may vary depending on the type or other circumstances of the communication network 150.

저장부(240)는 제어부(250)의 제어에 따라 데이터를 저장하고 요청된 데이터를 제어부(250)에게 전달한다.The storage unit 240 stores data under the control of the controller 250 and transmits the requested data to the controller 250.

제어부(250)는 단말(200)의 전반적인 동작과 각 구성부를 제어한다. 제어부(250)는 특히 후술하는 바와 같이 입력부(210)로부터 입력된 정보에 따라 정보 제공 요청, 기타 데이터를 정보 제공 장치(300)에게 송신하고, 정보 제공 장치(300)로부터 수신한 페이지 정보에 따라 결과 페이지 및/또는 인터페이스 페이지를 표시부(220)를 통해 표시한다.The controller 250 controls the overall operation of the terminal 200 and each component. In particular, the controller 250 transmits an information providing request and other data to the information providing apparatus 300 according to the information input from the input unit 210 as described below, and according to the page information received from the information providing apparatus 300. The result page and / or the interface page are displayed on the display unit 220.

제어부(250)가 수행하는 동작은 물리적으로 분리돼 있는 여러 연산 장치에 의하여 분산 처리될 수 있다. 제어부(250)가 수행하는 동작 중 일부는 제1 서버가 수행하고 다른 동작은 제2 서버가 수행하는 방식도 가능하다. 이 경우 제어부(250)는 물리적으로 분리돼 있는 연산 장치의 총합으로써 구현될 수 있다.Operations performed by the controller 250 may be distributed by various computing devices that are physically separated. Some of the operations performed by the controller 250 may be performed by the first server, and other operations may be performed by the second server. In this case, the controller 250 may be implemented as a total of physically separated computing devices.

저장부(240)는 물리적으로 분리돼 있는 저장장치의 총합으로 구현될 수도 있다.The storage unit 240 may be implemented as a total of physically separated storage devices.

제어부(250)나 저장부(240)가 물리적으로 분리돼 있는 여러 장치의 총합으로 구현되는 경우 여러 장치들 사이의 통신이 필요할 수 있다. 여기서는 설명의 단순화를 위하여 저장부(240)나 제어부(250)가 하나의 객체로 구현된 경우를 가정하여 설명할 것이다.When the control unit 250 or the storage unit 240 is implemented as a total of several physically separated devices, communication between the various devices may be required. For simplicity, the description will be given on the assumption that the storage unit 240 or the controller 250 is implemented as a single object.

단말(200)이 데이터를 송수신하는 경우 관점에 따라 제어부(250)의 제어에 따라 통신부(230)가 데이터를 송수신한다고 표현할 수도 있고, 제어부(250)가 통신부(230)를 제어하여 데이터를 송수신한다고 표현할 수도 있다. When the terminal 200 transmits / receives data, the communication unit 230 may transmit or receive data according to the control of the control unit 250 according to a viewpoint, or the control unit 250 controls the communication unit 230 to transmit / receive data. You can also express it.

단말(200)의 각 구성부의 구체적인 동작에 대해서는 도 4 내지 도 8을 참조하여 후술한다.A detailed operation of each component of the terminal 200 will be described later with reference to FIGS. 4 to 8.

도 3은 본 명세서의 일 실시 예에 따르는 정보 제공 장치(300)의 블록구성도이다.3 is a block diagram of an information providing apparatus 300 according to an exemplary embodiment.

도 3을 참조하면 본 명세서의 일 실시 예에 따르는 정보 제공 장치(300)는 통신부(310), 제어부(320) 및 저장부(330)를 포함할 수 있다.Referring to FIG. 3, the information providing apparatus 300 according to an embodiment of the present specification may include a communication unit 310, a control unit 320, and a storage unit 330.

통신부(310)는 단말(200) 및/또는 기타 외부 장치와 데이터를 주고받는다. 통신부(310)는 단말(200)로부터 수신한 데이터를 제어부(320)에게 전달한다. 또한 통신부(310)는 제어부(320)의 제어에 따라 데이터를 단말(200)에게 전달한다. 통신부(310)가 사용하는 통신 기술은 통신망(150)의 유형이나 기타 사정에 따라 달라질 수 있다.The communication unit 310 exchanges data with the terminal 200 and / or other external device. The communicator 310 transmits the data received from the terminal 200 to the controller 320. In addition, the communication unit 310 transmits data to the terminal 200 under the control of the control unit 320. The communication technology used by the communication unit 310 may vary depending on the type or other circumstances of the communication network 150.

저장부(330)는 제어부(320)의 제어에 따라 데이터를 저장하고 제어부(320)로부터 요청된 데이터를 제어부(320)에게 전달한다.The storage unit 330 stores data under the control of the controller 320 and transmits the data requested from the controller 320 to the controller 320.

제어부(320)는 정보 제공 장치(300)의 전반적인 동작과 각 구성부를 제어한다. 제어부(320)는 특히 후술하는 바와 같이 인터페이스 페이지 요청, 정보 제공 결과 페이지 요청, 기타 데이터를 통신부(310)를 통해 수신하면 저장부(330)로부터 필요한 데이터를 불러오고(load) 페이지 정보를 생성하여 페이지 정보를 통신부(310)를 통해 단말기(200)에게 전달한다.The controller 320 controls the overall operation of the information providing apparatus 300 and each component. In particular, when receiving the interface page request, the information providing result page request, and other data through the communication unit 310, the controller 320 loads necessary data from the storage unit 330 and generates page information as described below. The page information is transmitted to the terminal 200 through the communication unit 310.

정보 제공 장치(300)가 데이터를 송수신하는 경우 관점에 따라 제어부(320)의 제어에 따라 통신부(310)가 데이터를 송수신한다고 표현할 수도 있고, 제어부(320)가 통신부(310)를 제어하여 데이터를 송수신한다고 표현할 수도 있다.When the information providing device 300 transmits / receives data, the communication unit 310 may express that the data is transmitted / received according to the control of the control unit 320 according to a viewpoint, or the control unit 320 controls the communication unit 310 to transmit the data. It can also be expressed as sending and receiving.

한편 저장부(330)는 단말(200)에 사용자가 입력한 입력어에서 예약어를 검색하여 예약어를 시각적으로 구분하기 위한 프로그램 코드, 및/또는 그 프로그램을 설치하기 위한 설치 패키지(설치 프로그램 코드)를 저장한다. 이하 단말(200)에 사용자가 입력한 입력어에서 예약어를 검색하여 예약어를 시각적으로 구분하기 위한 프로그램 코드, 및/또는 그 프로그램을 설치하기 위한 설치 패키지(설치 프로그램 코드)를 가상 입력 인터페이스 프로그램이라 칭한다.The storage unit 330 may search for a reserved word from an input word input by a user in the terminal 200 to program code for visually distinguishing the reserved word, and / or an installation package (installation program code) for installing the program. Save it. Hereinafter, a program code for searching for a reserved word from an input word input by a user in the terminal 200 and visually distinguishing the reserved word, and / or an installation package (installation program code) for installing the program is called a virtual input interface program. .

정보 제공 장치(300)을 개발하는 개발자 또는 관리자는 가상 입력 인터페이스 프로그램을 저장부(330)에 저장할 수 있다. 정보 제공 장치(300)가 통신부(310)를 통해 가상 입력 인터페이스 프로그램을 요청하는 요청 메시지를 수신하면 제어부(320)는 통신부(310)를 통해 가상 입력 인터페이스 프로그램을 단말(200)에 전달한다.A developer or administrator who develops the information providing apparatus 300 may store a virtual input interface program in the storage 330. When the information providing device 300 receives the request message for requesting the virtual input interface program through the communication unit 310, the controller 320 transmits the virtual input interface program to the terminal 200 through the communication unit 310.

정보 제공 장치(300)의 각 구성부의 구체적인 동작에 대해서는 도 4 내지 도 8을 참조하여 후술한다.A detailed operation of each component of the information providing apparatus 300 will be described later with reference to FIGS. 4 to 8.

다른 실시 예에 따르면 시각적으로 정보를 제공하기 위한 페이지 대신 음성이나 다른 방식으로 정보를 제공하기 위한 데이터가 송수신될 수 있다.According to another exemplary embodiment, data for providing information in a voice or other manner may be transmitted or received instead of a page for visually providing information.

도 4는 본 명세서의 일 실시 예에 따르는 정보 제공 인터페이스를 통한 정보 제공 과정의 순서도이다. 4 is a flowchart illustrating an information providing process through an information providing interface according to an exemplary embodiment of the present specification.

단계 410에서 정보 제공 장치(300)의 제어부(320)는 인터페이스 페이지 정보를 생성한다. 인터페이스 페이지 정보는 인터페이스 페이지를 생성하기 위해 필요한 정보이다. 인터페이스 페이지는 사용자의 입력을 유도하고 사용자의 입력을 수신하여 정보 제공 장치(300)에게 전달하기 위한 페이지이다. 예를 들어 인터페이스 페이지 정보는 HTML 문서 또는 기타 마크업 언어 문서 형태가 될 수 있다. 다른 실시 예에서, 단말(200)이 인터페이스 페이지의 서식 정보를 미리 가지고 있으며, 컨텐츠에 해당하는 사항만이 정보 제공 장치(300)로부터 단말(200)에 전달될 수도 있다. 이하에서는 편의를 위해 인터페이스 페이지 정보 또는 기타의 페이지 정보는 HTML 문서 형식으로 전달된다고 가정하고 설명한다. 하지만 본 명세서의 권리 범위가 여기에 한정되는 것은 아니다. In operation 410, the controller 320 of the information providing apparatus 300 generates interface page information. The interface page information is information necessary for generating an interface page. The interface page is a page for inducing a user's input, receiving the user's input, and delivering the input to the information providing apparatus 300. For example, the interface page information may be in the form of an HTML document or other markup language document. In another embodiment, the terminal 200 may have the form information of the interface page in advance, and only the content corresponding to the content may be transmitted from the information providing apparatus 300 to the terminal 200. In the following description, it is assumed that interface page information or other page information is transmitted in an HTML document format for convenience. However, the scope of the present specification is not limited thereto.

단계 420에서 정보 제공 장치(300)의 통신부(310)는 인터페이스 페이지 정보를 단말(200)에게 전달한다.In operation 420, the communication unit 310 of the information providing apparatus 300 transmits interface page information to the terminal 200.

단계 430에서 단말(200)의 제어부(250)는 인터페이스 페이지 정보를 이용하여 인터페이스 페이지를 구성한다. 예를 들어 제어부(250)은 웹 브라우저를 구동하여 HTML 문서를 해석하여 웹 페이지의 형태로 인터페이스 페이지를 구성할 수 있다. 웹 브라우저 대신 별도의 애플리케이션이 사용될 수도 있다.In step 430, the controller 250 of the terminal 200 configures the interface page using the interface page information. For example, the controller 250 may configure an interface page in the form of a web page by interpreting an HTML document by driving a web browser. A separate application may be used instead of a web browser.

단계 440에서 단말(200)의 표시부(220)는 사용자(400)에게 인터페이스 페이지를 표시한다. 인터페이스 페이지는 예를 들어 사용자(400)가 정보 제공을 요청하고, 정보 제공을 위한 키워드를 입력 및/또는 선택하고 기타 정보 제공을 위한 설정을 할 수 있는 인터페이스를 포함할 수 있다.In operation 440, the display unit 220 of the terminal 200 displays an interface page to the user 400. The interface page may include, for example, an interface that allows the user 400 to request information, input and / or select a keyword for providing the information, and configure settings for providing other information.

단계 450에서 단말(200)의 입력부(210)는 인터페이스 페이지를 통해 입력된 사용자(400)의 선택 입력을 수신하여 제어부(250)에 전달한다. In operation 450, the input unit 210 of the terminal 200 receives a selection input of the user 400 input through the interface page and transmits the selection input to the controller 250.

단계 460에서 단말(200)의 통신부(230)는 제어부(250)의 제어에 따라 사용자의 선택 입력을 식별할 수 있는 입력 정보를 정보 제공 장치(300)에게 전달한다.In operation 460, the communication unit 230 of the terminal 200 transmits input information for identifying a user's selection input to the information providing apparatus 300 under the control of the controller 250.

단계 470에서 정보 제공 장치(300)의 제어부(320)는 사용자의 입력(예를 들어, 키워드 및/또는 기타 정보 제공 설정)을 이용하여 결과 페이지 정보를 생성한다. 결과 페이지 정보를 생성하는 위한 준비과정과 결과 페이지 정보를 생성하는 과정에 대해서는 도 5 내지 도 8을 참조하여 후술한다. 결과 페이지 정보는 예를 들어 HTML 문서 형식 및/또는 이미지 형식으로 구성될 수 있다.In operation 470, the controller 320 of the information providing apparatus 300 generates result page information using a user input (eg, a keyword and / or other information provision setting). A preparation process for generating result page information and a process for generating result page information will be described later with reference to FIGS. 5 to 8. The result page information may be configured, for example, in HTML document format and / or image format.

단계 480에서 정보 제공 장치(300)의 통신부(310)는 결과 페이지 정보를 단말(200)에게 전달한다.In operation 480, the communication unit 310 of the information providing apparatus 300 transmits the result page information to the terminal 200.

단계 490에서 단말(200)의 제어부(250)는 통신부(230)가 수신한 결과 페이지 정보를 이용하여 결과 페이지를 구성한다. 예를 들어 제어부(250)는 HTML형식의 결과 페이지 정보를 해석하여 결과 페이지를 구성할 수 있다. In operation 490, the control unit 250 of the terminal 200 configures a result page using the result page information received by the communication unit 230. For example, the controller 250 may configure the result page by interpreting the result page information in the HTML format.

단계 495에서 단말(200)의 표시부(220)는 결과 페이지를 사용자(400)에게 제공한다.In operation 495, the display unit 220 of the terminal 200 provides a result page to the user 400.

도 4의 실시 예에서 사용자에게 시각적 형태의 페이지를 제공하는 것을 가정하였으나, 음성을 통해 인터페이스나 결과 정보를 제공하는 것도 가능하다. 이 경우 표시부(220) 대신 음성 출력부가 이용될 수 있을 것이다. 시각적/청각적 방식 대신 현재 가능하거나 미래에 가능해질 다른 방식의 인터페이스 방식이 사용자(400)와의 관계에서 사용될 수도 있다. 이 경우 정보 제공 장치(300)는 인터페이스 방식에 맞도록 페이지 정보 대신 다른 방식으로 변환된 정보를 단말(200)에게 제공할 수 있다.In the embodiment of FIG. 4, it is assumed that a page in a visual form is provided to the user, but it is also possible to provide an interface or result information through voice. In this case, the voice output unit may be used instead of the display unit 220. Instead of a visual / acoustic approach, other currently available or future ways of interface may be used in the relationship with the user 400. In this case, the information providing apparatus 300 may provide the terminal 200 with information converted in another manner instead of page information so as to conform to the interface method.

도 5 이후의 실시 예에서 사용자(400)는 자신이 관심을 가지는 특정 관심 분야의 객체에 관한 정보를 제공받고자 한다. 하지만 본 명세서의 권리 범위가 이에 한정되는 것은 아니다.In an embodiment after FIG. 5, the user 400 wants to be provided with information about an object of a particular interest field of interest. However, the scope of the present specification is not limited thereto.

관심 분야는 예를 들어 객체의 유형이 될 수 있다. 예를 들어 관심 분야가 '유명인' 이라면 이 관심 분야에 해당하는 객체는 '유시민', '유재석', '테일러 스위프트' 등을 포함할 수 있다. 예를 들어 관심 분야가 '영화'라면 이 관심 분야에 해당하는 객체는 '덩케르크', '스파이더맨: 홈커밍', '슈퍼배드 3' 등을 포함할 수 있다. 예를 들어 관심 분야가 '방송 프로그램' 이라면 이 관심 분야에 해당하는 객체는 '무한도전', '아메리칸 아이돌', '왕좌의 게임' 등을 포함할 수 있다.The field of interest can be, for example, the type of object. For example, if the area of interest is 'celebrity', the objects corresponding to the area of interest may include 'simin', 'yujaeseok', 'taylor swift' and the like. For example, if your area of interest is "movies," your objects of interest may include "Dunkerk," "Spider-Man: Homecoming," and "Superbad 3." For example, if the field of interest is a 'broadcast program', objects corresponding to this field of interest may include 'Infinite Challenge', 'American Idol', and 'Game of Thrones'.

이하의 실시 예들에서 키워드들 간의 관계(연관도/가중치 등등)를 평가하기 위해 문서가 수집된다. 수집된 문서는 모두 동등한 가치를 가지는 것으로 평가될 수도 있고, 최신의 문서가 더 높은 가치를 가지는 것으로 평가될 수도 있다. 즉, 평가 시점 기준 문서의 나이와 그 문서 내에 등장하는 키워드들 간의 연관도는 음의 상관관계를 가질 수 있다.In the following embodiments, a document is collected to evaluate the relationship (association / weighting, etc.) between keywords. The collected documents may all be valued as having an equal value, and newer documents may be rated as having higher value. That is, the correlation between the age of the evaluation point reference document and the keywords appearing in the document may have a negative correlation.

후술하는 도 5 이후의 과정에서도 문서의 최신성에 따라 가치가 달리 평가될 수 있다. 예를 들어 평가 시점 기준 1일 지난 문서에 두 키워드가 함께 등장한 경우가, 평가 시점 기준 10일 지난 문서에 두 키워드가 함께 등장한 경우에 비해 10배 더 높은 연관도로 평가될 수 있다. 문서의 나이는 예를 들어 초단위/분단위/시간 단위로 평가되거나 일 단위/월 단위/연 단위 등으로 평가될 수도 있다. 제어부(320)는 문서의 나이가 반영되기 전 평가된 해당 문서에 의하나 부분 연관도 값을 문서의 나이로 나누어 문서 나이가 반영된 부분 연관도를 추출하고, 이러한 부분 연관도를 누적하여 두 키워드 사이의 연관도를 추출할 수 있다. In the process subsequent to FIG. 5 to be described later, values may be evaluated differently according to the freshness of the document. For example, the case where two keywords appear together in a document one day after the evaluation point may be evaluated as 10 times higher as compared with the case where two keywords appear together in the document 10 days after the evaluation point. The age of the document may be evaluated in units of seconds / minutes / hours or in units of days / months / years, for example. The control unit 320 extracts the partial association degree reflecting the document age by dividing the partial association value by the age of the document based on the corresponding document evaluated before the age of the document is reflected, and accumulating the partial association degree between the two keywords. The association of can be extracted.

문서의 나이를 확인하기 위한 문서의 생성 시점은 예를 들어 문서 내에 포함된 게시 시점 및/또는 메타데이터를 이용하여 파악하거나, 주기적인 크롤링을 통해, 이전의 크롤링에 발견되지 않은 문서가 새로 발견되는 경우 새로운 크롤링 시점에 신규 문서가 추가된 것으로 파악할 수도 있다.When a document is generated to check the age of the document, for example, the publication time and / or metadata included in the document may be determined, or periodically crawled to discover a new document not found in a previous crawl. In this case, new documents may be added at the time of the new crawl.

도 9는 본 명세서의 일 실시 예에 따르는 정보 제공 과정의 순서도이다.9 is a flowchart illustrating an information providing process according to an exemplary embodiment of the present specification.

단계 910에서 제어부(320)는 객체 항목과 대표 속성 키워드 쌍에 대응하는 객체-키워드 연관도를 저장부(330)에 저장한다.In operation 910, the controller 320 stores the object-keyword association degree corresponding to the object item and the representative attribute keyword pair in the storage unit 330.

도 10은 본 명세서의 일 실시 예에 따르는 저장된 객체-키워드 연관도의 예시이다.10 is an illustration of a stored object-keyword association diagram according to one embodiment of the present disclosure.

도 10의 실시 예에서 객체 항목은 모두 m개(i1 내지 im)가 있고 대표 속성 키워드는 모두 n개(k1 내지 kn)가 있다. In the embodiment of FIG. 10, there are m object items (i 1 to i m ), and there are n object attributes keywords (k 1 to k n ).

예를 들어 객체 항목 i5와 대표 속성 키워드 k3의 객체-키워드 연관도는 w5,3이 된다. For example, the object-keyword association degree of the object item i 5 and the representative attribute keyword k 3 is w 5,3 .

단계 910의 과정은 예를 들어 도 5 내지 도 8의 실시 예들 중 일부에 따라 수행되거나 이와 유사한 과정, 또는 이에 상응하는 과정으로 수행될 수 있다. 다른 실시 예에 따르면 단계 910의 과정은 관리자의 입력으로 수행되거나 외부 시스템에서 결정된 객체-키워드 연관도를 네트워크 또는 저장매체를 통해 전달받아 수행될 수 있다.The process of step 910 may be performed, for example, according to some of the embodiments of FIGS. 5 to 8, or a similar process, or a corresponding process. According to another embodiment of the present disclosure, the process of step 910 may be performed by input of an administrator or by receiving an object-keyword association degree determined by an external system through a network or a storage medium.

도 5는 본 명세서의 일 실시 예에 따르는 단계 910의 상세순서도이다.5 is a detailed flowchart of step 910 according to an embodiment of the present disclosure.

도 5를 참조하면, 단계 510에서 제어부(320)는 제1 집합 문서들로부터 대표 속성 키워드 후보집합을 추출한다. 제어부(320)는 예를 들어 제1 집합 문서 중 관심 분야에 해당하는 문서에 자주 등장하는 키워드들을 대표 속성 키워드 후보집합으로 수집할 수 있다. Referring to FIG. 5, in step 510, the controller 320 extracts the representative attribute keyword candidate set from the first set documents. The controller 320 may collect, for example, keywords that frequently appear in documents corresponding to the field of interest in the first set of documents as representative attribute keyword candidate sets.

도 6은 본 명세서의 일 실시 예에 따르는 단계 510의 상세 순서도이다.6 is a detailed flowchart of step 510 according to an embodiment of the present disclosure.

제어부(320)는 특정 분야에 속하는 객체 항목을 나타내는 객체 키워드와 같은 문서에 등장하는 키워드들 및 특정 분야를 나타내는 분야 키워드와 같은 문서에 등장하는 키워드들을 제1 속성 키워드 후보집합 및 제2 속성 키워드 후보집합으로 설정할 수 있다. The control unit 320 selects keywords appearing in a document, such as an object keyword representing an object item belonging to a specific field, and keywords appearing in a document, such as a field keyword indicating a specific field, of the first attribute keyword candidate set and the second attribute keyword candidate. Can be set as a set.

예를 들어 정보 제공 서비스를 제공하려는 관심 분야가 유명인이라면, 분야 키워드는 '유명인', '연예인', '영화배우', '스타', '셀럽', 'celeb' 등을 포함할 수 있다. 분야 키워드는 관리자에 의하여 설정되거나 제어부(320)에 의하여 추천, 설정될 수 있다. 제어부(320)는 일부 분야 키워드들을 획득한 뒤 이 분야 키워드들과의 연관도가 미리 설정된 값 이상으로 분석된 유사 키워드를 추가적 분야 키워드로 추천/설정할 수 있다.For example, if the field of interest is a celebrity, the field keyword may include 'celebrity', 'celebrity', 'movie actor', 'star', 'celeb', 'celeb' and the like. The field keyword may be set by the administrator or recommended and set by the controller 320. The controller 320 may recommend / set a similar keyword, which is obtained by obtaining some field keywords and analyzed similarity with the field keywords more than a preset value, as an additional field keyword.

정보 제공 서비스를 제공하려는 관심 분야가 유명인이라면, 객체 키워드는 해당 관심 분야에 속하는 개별 인물이 될 수 있다. 예를 들어 "유재석", "테일러 스위프트", "스테판 커리" 등이 관심 분야 유명인에 해당하는 객체 키워드가 될 수 있다. If the field of interest is a celebrity for providing the information providing service, the object keyword may be an individual person belonging to the field of interest. For example, "Yoo Jae-seok", "Taylor Swift", "Stephan Curry", etc. may be an object keyword corresponding to a celebrity of interest.

분야 키워드와 객체 키워드의 관계를 설명하자면, 예를 들어 분야 키워드가 객체 키워드의 속성 또는 유형에 해당할 수 있다. 분야 키워드가 집합을 나타낸다면 객체 키워드는 그 집합에 속하는 원소들을 나타내는 것이 될 수 있다.To describe the relationship between the field keyword and the object keyword, for example, the field keyword may correspond to an attribute or type of the object keyword. If the field keyword represents a set, the object keyword can be an element representing the set.

객체 키워드는 관리자에 의해 설정되거나, 분야 키워드와 비슷한 방식으로 선정될 수 있다. 또 다른 실시 예에 따르면 제어부(320)는 수집된 문서들의 문맥을 분석하여 상기 분야 키워드가 나타내는 집합에 속하는 원소로 판단되는 키워드들을 객체 키워드로 선정할 수 있다. The object keyword may be set by an administrator or selected in a manner similar to the field keyword. According to another embodiment, the controller 320 may analyze the context of the collected documents and select keywords determined as elements belonging to the set represented by the field keyword as object keywords.

인기 객체 키워드와 비인기 객체 키워드는 해당 객체 키워드의 검색/수집량에 따라 구분될 수 있다. 제어부(320)는 각 객체 키워드가 포함된 문서를 검색/수집하고 수집량이 특정 문턱값 이상인 객체 키워드를 인기 객체 키워드로 설정하고 나머지 객체 키워드를 비인기 객체 키워드로 설정할 수 있다.The popular object keyword and the less popular object keyword may be classified according to the search / collection amount of the corresponding object keyword. The controller 320 may search / collect documents containing each object keyword, set an object keyword having a collection amount more than a specific threshold value as a popular object keyword, and set the remaining object keywords as non-popular object keywords.

인기 분야 키워드와 비인기 분야 키워드는 해당 분야 키워드의 검색/수집량에 따라 구분될 수 있다. 제어부(320)는 각 분야 키워드가 포함된 문서를 검색/수집하고 수집량이 특정 문턱값 이상인 분야 키워드를 인기 분야 키워드로 설정하고 나머지 분야 키워드를 비인기 분야 키워드로 설정할 수 있다. 다만 인기 객체 키워드와 비인기 객체 키워드를 구분하는 문턱값과 인기 분야 키워드-비인기 분야 키워드를 구분하는 문턱값은 서로 다른 값이 될 수 있다. 이하에서 편의를 위해 인기 객체 키워드와 인기 분야 키워드를 통틀어 인기 분야객체 키워드라고 칭한다. 또한 편의를 위해 비인기 객체 키워드와 비인기 분야 키워드를 통틀어 비인기 분야객체 키워드라고 칭한다.Popular field keywords and non-popular field keywords may be classified according to search / collection amounts of corresponding field keywords. The controller 320 may search / collect documents containing respective field keywords, set a field keyword having a collection amount equal to or more than a specific threshold, as a popular field keyword, and set the remaining field keywords as non-popular field keywords. However, a threshold for distinguishing a popular object keyword and a non-popular object keyword and a threshold for distinguishing a popular field keyword from an unpopular field keyword may be different values. For convenience, the popular object keyword and the popular field keyword are collectively referred to as popular field object keywords for convenience. Also, for convenience, both non-popular object keywords and non-popular field keywords are referred to as non-popular field object keywords.

변형 실시 예에서는 인기 분야객체 키워드 대신 인기 분야 키워드 또는 인기 객체 키워드만이 사용될 수도 있다. 변형 실시 예에서는 비인기 분야객체 키워드 대신 비인기 분야 키워드 또는 비인기 객체 키워드만이 사용될 수도 있다.In a modified embodiment, only the popular field keyword or the popular object keyword may be used instead of the popular field object keyword. In a modified embodiment, only the non-popular field keyword or the non-popular object keyword may be used instead of the non-popular field object keyword.

단계 610에서 제어부(320)는 인기 분야객체 키워드와 같은 문서에 함께 등장하는 키워드들을 제1 속성 키워드 후보집합으로 설정한다.In operation 610, the controller 320 sets keywords appearing together in a document such as a popular field object keyword as a first attribute keyword candidate set.

제어부(320)는 인기 분야객체 키워드가 포함된 문서들을 검색/수집하고, 수집된 문서에 포함된 키워드들을 제1 속성 키워드 후보집합으로 설정할 수 있다. 다른 실시 예에 따르면 제어부(320)는 수집된 문서에 포함된 키워드들 중 분야 키워드 및 객체 키워드를 제1 속성 키워드 후보집합에서 제외할 수 있다. 아울러 제어부(320)는 미리 설정된 의미 없는 키워드, 예를 들어 조사/관사 등을 제1 속성 키워드 후보집합에서 제외할 수 있다. 또 다른 실시 예에 따르면 제어부(320)는 수집된 문서에 포함된 키워드들 중 미리 설정된 사전(dictionary)에 등록된 키워드를 제1 속성 키워드 후보집합에 포함시킬 수 있다.The controller 320 may search / collect documents including the popular field object keyword and set keywords included in the collected document as the first attribute keyword candidate set. According to another embodiment, the controller 320 may exclude the field keyword and the object keyword among the keywords included in the collected document from the first attribute keyword candidate set. In addition, the controller 320 may exclude a meaningless keyword, for example, a survey / article, that is set in advance from the first attribute keyword candidate set. According to another embodiment, the controller 320 may include a keyword registered in a preset dictionary among the keywords included in the collected document in the first attribute keyword candidate set.

또 다른 실시 예에 따르면, 제어부(320)는 인기 분야객체 키워드가 포함된 문서를 검색/수집하고, 수집된 문서에서 인기 분야객체 키워드 또는 그 키워드가 포함된 문장으로부터 미리 설정된 거리 이내에 배치된 키워드들을 제1 속성 키워드 후보집합에 포함시킬 수도 있다. 또 다른 실시 예에 따르면, 제어부(320)는 인기 분야객체 키워드가 포함된 문서를 검색/수집하고, 문맥을 분석하여 인기 분야객체 키워드를 수식/설명하는 용도로 사용된 키워드들을 제1 속성 키워드 후보집합에 포함시킬 수도 있다.According to another embodiment, the controller 320 searches / collects a document including a popular field object keyword, and searches keywords collected within a predetermined distance from the popular field object keyword or a sentence including the keyword in the collected document. It can also be included in the first attribute keyword candidate set. According to another exemplary embodiment, the controller 320 may search / collect a document including a popular field object keyword, analyze a context, and select keywords used for the purpose of modifying / explaining a popular field object keyword as the first attribute keyword candidate. It can also be included in a set.

키워드 사이의 거리 또는 키워드와 문장 사이의 거리는 예를 들어 두 키워드 또는 키워드와 문장 사이에 위치하는 문장의 개수, 두 키워드 또는 키워드와 문장 사이에 위치하는 단어의 개수, 두 키워드 또는 키워드와 문장 사이에 위치하는 어절의 개수, 두 키워드 또는 키워드와 문장 사이에 문자의 개수 중 어느 하나 이상을 기준으로 판단될 수 있다.The distance between keywords or the distance between a keyword and a sentence may be, for example, the number of words placed between two keywords or keywords and sentences, the number of words placed between two keywords or keywords and sentences, the distance between two keywords or keywords and sentences, It may be determined based on any one or more of the number of words located, two keywords, or the number of characters between the keyword and the sentence.

제어부(320)는 키워드 분석을 위해 형태소 분석을 먼저 수행할 수 있다.The controller 320 may first perform morphological analysis for keyword analysis.

단계 620에서 제어부(320)는 비인기 분야객체 키워드와 같은 문서에 함께 등장하는 키워드들을 제2 속성 키워드 후보집합으로 설정한다. In operation 620, the controller 320 sets keywords appearing together in a document such as an unpopular field object keyword as a second attribute keyword candidate set.

제어부(320)는 비인기 분야객체 키워드가 포함된 문서를 검색/수집하고, 수집된 문서에 포함된 키워드들을 제2 속성 키워드 후보집합으로 설정할 수 있다. 다른 실시 예에 따르면 제어부(320)는 수집된 문서에 포함된 키워드들 중 분야 키워드 및 객체 키워드를 제2 속성 키워드 후보집합에서 제외할 수 있다. 아울러 제어부(320)는 미리 설정된 의미 없는 키워드, 예를 들어 조사/관사 등을 제2 속성 키워드 후보집합에서 제외할 수 있다. 또 다른 실시 예에 따르면 제어부(320)는 수집된 문서에 포함된 키워드들 중 미리 설정된 사전(dictionary)에 등록된 키워드를 제2 속성 키워드 후보집합에 포함시킬 수 있다.The controller 320 may search / collect a document including a non-popular field object keyword and set keywords included in the collected document as a second attribute keyword candidate set. According to another embodiment, the controller 320 may exclude the field keyword and the object keyword among the keywords included in the collected document from the second attribute keyword candidate set. In addition, the controller 320 may exclude a meaningless keyword, for example, a survey / article, that is set in advance from the second attribute keyword candidate set. According to another embodiment, the controller 320 may include, in the second attribute keyword candidate set, a keyword registered in a preset dictionary among keywords included in the collected document.

또 다른 실시 예에 따르면, 제어부(320)는 비인기 분야객체 키워드가 포함된 문서를 검색/수집하고, 수집된 문서에서 비인기 분야객체 키워드 또는 그 키워드가 포함된 문장으로부터 미리 설정된 거리 이내에 배치된 키워드들을 제2 속성 키워드 후보집합에 포함시킬 수도 있다. 또 다른 실시 예에 따르면, 제어부(320)는 비인기 분야객체 키워드가 포함된 문서를 검색/수집하고, 문맥을 분석하여 비인기 분야객체 키워드를 수식/설명하는 용도로 사용된 키워드들을 제2 속성 키워드 후보집합에 포함시킬 수도 있다.According to another embodiment, the controller 320 searches / collects a document including a non-popular field object keyword, and searches keywords collected within a predetermined distance from the non-popular field object keyword or a sentence including the keyword in the collected document. It may also be included in the second attribute keyword candidate set. According to another exemplary embodiment, the controller 320 may search for / collect a document including a non-popular field object keyword, analyze the context, and select keywords used to modify / explain the non-popular field object keyword as the second attribute keyword candidate. It can also be included in a set.

키워드 사이의 거리 또는 키워드와 문장 사이의 거리는 예를 들어 두 키워드 또는 키워드와 문장 사이에 위치하는 문장의 개수, 두 키워드 또는 키워드와 문장 사이에 위치하는 단어의 개수, 두 키워드 또는 키워드와 문장 사이에 위치하는 어절의 개수, 두 키워드 또는 키워드와 문장 사이에 문자의 개수 중 어느 하나 이상을 기준으로 판단될 수 있다.The distance between keywords or the distance between a keyword and a sentence may be, for example, the number of words placed between two keywords or keywords and sentences, the number of words placed between two keywords or keywords and sentences, the distance between two keywords or keywords and sentences, It may be determined based on any one or more of the number of words located, two keywords, or the number of characters between the keyword and the sentence.

제어부(320)는 키워드 분석을 위해 형태소 분석을 먼저 수행할 수 있다.The controller 320 may first perform morphological analysis for keyword analysis.

단계 630에서 제어부(320)는 상기 제1 속성 키워드 후보집합 및 상기 제2 속성 키워드 후보집합 모두에 속한 키워드들을 상기 대표 속성 키워드 후보집합으로 설정할 수 있다. 즉, 인기 분야객체 키워드를 수식하는 표현으로도 쓰이면서 비인기 분야객체 키워드를 수식하는 표현으로도 쓰이는 키워드들이 대표 속성 키워드 후보집합에 수집될 수 있다.In operation 630, the controller 320 may set keywords belonging to both the first attribute keyword candidate set and the second attribute keyword candidate set as the representative attribute keyword candidate set. That is, keywords used as expressions for modifying popular field object keywords and used as expressions for modifying non-popular field object keywords may be collected in the representative attribute keyword candidate set.

다른 실시 예에 따르면, 단계 510에서 제어부(320)는 인기/비인기 여부에 관계 없이 객체 키워드 및/또는 분야 키워드와 함께 등장하는 키워드들을 대표 속성 키워드 후보집합에 포함시킬 수도 있다.According to another embodiment, in operation 510, the controller 320 may include keywords appearing together with the object keyword and / or the field keyword in the representative attribute keyword candidate set regardless of popularity / unpopularity.

도 5로 돌아가서, 단계 520에서 제어부(320)는 제2 집합 문서들로부터 대표 속성 키워드 후보집합에 포함되는 각 대표 속성 키워드와 연관된 둘 이상의 하위 키워드들을 추출한다. 5, in operation 520, the controller 320 extracts two or more sub keywords associated with each representative attribute keyword included in the representative attribute keyword candidate set from the second set of documents.

단계 520의 하위 키워드 추출에 사용되는 제2 집합 문서와 단계 510의 대표 속성 키워드 후보집합 추출에 사용되는 제1 집합 문서는 서로 다른 문서 집합일 수도 있고 서로 같은 문서 집합일 수도 있다. 예를 들어, 제1 집합 문서는 수집 가능한 문서 전부를 포함하는 집합이고, 제2 집합 문서는 정보 제공 서비스를 제공하고자 하는 특정 관심 분야가 주요한 키워드로 사용된 문서들만을 포함하는 집합이 될 수 있다. 제어부(320)는 수집 가능한 문서들을 분석하여 자주 등장하는 키워드들을 기반으로 각 문서가 정보 제공 서비스를 제공하고자 하는 특정 관심 분야가 주요한 키워드로 사용된 문서인지 분석할 수 있다. 다른 실시 예에 따르면 제1 집합 문서 및 제2 집합 문서 모두 수집 가능한 관련문서 전부를 포함하는 집합이 될 수 있다. 또 다른 실시 예에 따르면, 제1 집합 문서는 수집 가능한 관련문서 전부를 포함하는 집합이고 제2 집합 문서는 정보 제공 서비스를 제공하고자 하는 특정 관심분야에 관련된 문서만을 포함하는 집합이 될 수 있다. 또 다른 실시 예에 따르면 제2 집합 문서는 수집 가능한 관련문서 전부를 포함하는 집합이고 제1 집합 문서는 정보 제공 서비스를 제공하고자 하는 특정 관심분야에 관련된 문서만을 포함하는 집합이 될 수 있다. The second set document used for extracting the lower keyword in step 520 and the first set document used for extracting the representative attribute keyword candidate set in step 510 may be different document sets or the same document set. For example, the first aggregated document may be a collection including all collectable documents, and the second aggregated document may be a collection including only documents in which a specific area of interest for which an information providing service is to be used as a key keyword. . The controller 320 may analyze the collectable documents and analyze whether each document is a document used as a main keyword for a specific field of interest to provide an information service based on frequently appearing keywords. According to another embodiment, both the first and second aggregated documents may be a collective including all of the related documents that can be collected. According to another embodiment, the first aggregated document may be a collection including all collectable related documents, and the second aggregated document may be a collection including only documents related to a specific area of interest for which an information providing service is to be provided. According to another exemplary embodiment, the second aggregated document may be a collection including all collectable related documents, and the first aggregated document may be a collection including only documents related to a specific area of interest for which an information providing service is to be provided.

단계 520을 위해, 제어부(320)는 예를 들어, 정보 제공 서비스를 제공하고자 하는 특정 관심분야에 관련된 문서만을 포함하는 집합을 생성하기 위해 해당 관심분야 자체를 나타내는 분야 키워드를 포함하는 문서들 및/또는 해당 관심분야에 속하는 객체 키워드를 포함하는 문서들을 수집하고, 그들 중 분야 키워드/객체 키워드의 비중이 미리 설정된 값 이상인 문서들을 추출하여 특정 관심분야에 관련된 문서만을 포함하는 집합을 생성할 수 있다. 분야 키워드/객체 키워드의 비중은 분야 키워드/객체 키워드의 등장 빈도나 등장 위치, 문맥 등을 통해 판단할 수 있다. 예를 들어 분야 키워드/객체 키워드가 자주 등장하거나 분야 키워드/객체 키워드가 해당 문서의 타이틀로 사용되거나 큰 글자 또는 강조를 위한 글자체로 표시되는 문서는 특정 관심분야에 관련된 문서로 분류할 수 있을 것이다.For step 520, the control unit 320 may include, for example, documents including a field keyword indicating the field of interest itself so as to generate a set including only documents related to a specific field of interest for which the information providing service is to be provided; Alternatively, documents including object keywords belonging to the corresponding interest may be collected, and documents having a specific gravity or more of the field keywords / object keywords among them may be extracted to generate a set including only documents related to a specific interest. The weight of the field keyword / object keyword may be determined based on the frequency of occurrence of the field keyword / object keyword, the appearance position, and the context. For example, a document in which a field keyword / object keyword frequently appears, a field keyword / object keyword is used as a title of the document, or displayed in large letters or a typeface for emphasis may be classified as a document related to a particular interest.

단계 520에서 제어부(320)는 예를 들어 상기 제2 집합 문서 중 적어도 일부를 분석하여 각 대표 속성 키워드와 가장 연관도가 높은 하위 키워드들을 미리 설정된 개수만큼 추출하여 각 대표 속성 키워드와 연관된 둘 이상의 하위 키워드들을 추출할 수 있다.In operation 520, the controller 320 may analyze, for example, at least a portion of the second set of documents to extract a predetermined number of sub keywords most relevant to each representative attribute keyword, and to extract two or more subordinate items associated with each representative attribute keyword. You can extract keywords.

제어부(320)는 예를 들어 하위 키워드가 대표 속성 키워드와 동일 또는 유사한 문맥에 등장하는 빈도를 고려하여 대표 속성 키워드와 하위 키워드 사이의 연관도를 판단할 수 있다. 예를 들어 특정 문장에서 키워드 A의 주변에 등장하는 단어들은 다른 문서에서도 키워드 A와 연관된 단어의 주변에 등장할 수 있으리라고 볼 수 있다. For example, the controller 320 may determine the degree of association between the representative attribute keyword and the lower keyword in consideration of the frequency of the lower keyword appearing in the same or similar context as the representative attribute keyword. For example, words appearing around keyword A in a particular sentence may appear around words associated with keyword A in other documents.

"큰 맘 먹고 여행을 갔으나 7월이라 날씨가 너무 더워서 고생했다.""I went on a trip with a big heart, but I suffered because the weather was so hot in July."

"큰 맘 먹고 여행을 갔으나 7월이라 날씨가 너무 습해서 고생했다.""I went on a trip with a big heart, but the weather was too humid for July."

위 두 문장을 살펴보면 같은 문맥에서 "더워서"라는 단어가 "습해서"라는 단어로 대체되었다. 제어부(320)는 "덥다"와 "습하다"가 서로 연관된 단어라는 것을 유추할 수 있다.Looking at the above two sentences, the word "hot" is replaced with "wet" in the same context. The controller 320 may infer that "hot" and "wet" are words associated with each other.

"큰 맘 먹고 여행을 갔으나 7월이라 날씨가 너무 더워서 고생했다.""I went on a trip with a big heart, but I suffered because the weather was so hot in July."

"큰 맘 먹고 휴가를 갔으나 7월이라 날씨가 너무 더워서 고생했다.""I went on vacation after eating a big heart, but I suffered because the weather was so hot in July."

마찬가지로 제어부(320)는 위 두 문장을 통해 "여행"과 "휴가"가 연관된 단어라는 것을 유추할 수 있다.Similarly, the control unit 320 may infer that the words "travel" and "vacation" are related words through the above two sentences.

"큰 맘 먹고 여행을 갔으나 7월이라 날씨가 너무 더워서 고생했다.""I went on a trip with a big heart, but I suffered because the weather was so hot in July."

"큰 맘 먹고 여행을 갔으나 8월이라 날씨가 너무 더워서 고생했다.""I went on a trip with a big heart, but I suffered because the weather was so hot in August."

마찬가지로 제어부(320)는 위 두 문장을 통해 "7월"과 "8월"이 연관된 단어라는 것을 유추할 수 있다.Similarly, the control unit 320 may infer that the words "July" and "August" are related through the above two sentences.

제어부(320)는 이전에 수집된 문서들을 통해 "덥다"와 "습하다"가 서로 연관된 단어이고 "7월"과 "8월"이 서로 연관된 단어이며 "여행"과 "휴가"가 서로 연관된 단어임을 저장해 둘 수 있다 이후 아래와 같은 문장을 수집한다고 가정한다.The controller 320 indicates that words "hot" and "wet" are related words, "July" and "August" are related words, and "travel" and "vacation" are words related to each other through previously collected documents. You can save it.

"큰 맘 먹고 휴가를 갔으나 7월이라 날씨가 너무 습해서 고생했다.""I went on vacation with a big heart, but the weather was too humid for July."

"큰 맘 먹고 여행을 갔으나 8월이라 날씨가 너무 더워서 힘들었다.""I went on a trip with a big heart but it was hard because the weather was so hot in August."

두 문장이 동일한 문맥은 아니지만 덥다"와 "습하다"가 서로 연관된 단어이고 "7월"과 "8월"이 서로 연관된 단어이며 "여행"과 "휴가"가 서로 연관된 단어임을 알고 있다면, 제어부(320)는 위 문장을 통해 "고생했다"와 "힘들었다" 역시 연관된 단어임을 학습할 수 있을 것이다.If the two sentences are not in the same context but know that "hot" and "wet" are related words, "July" and "August" are related words, and "travel" and "vacation" are words related to each other, the control unit 320 ) Can be learned from the above sentence that "toil" and "tough" are also related words.

동일/유사한 문맥에 등장하는 빈도가 높은 키워드 쌍은 서로 연관도가 높은 것으로 판단할 수 있다. 아울러 두 키워드가 등장하는 문맥의 유사도가 높을수록 두 키워드 사이의 연관도가 높은 것으로 판단할 수 있다. 제어부(320)는 수집되는 문서들을 이용해 학습을 진행하여 키워드들 사이의 연관도를 설정하고, 설정된 키워드 간 연관도와 문장의 문맥을 이용하여 해당 문장에서 등장하는 키워드들의 연관도를 설정하는 식으로 키워드 간 연관도 판단의 정확성을 높일 수 있다.Keyword pairs with high frequency appearing in the same / similar context may be determined to be highly related to each other. In addition, it may be determined that the higher the similarity of the context in which the two keywords appear, the higher the correlation between the two keywords. The controller 320 proceeds with learning using the collected documents to set the degree of association between keywords, and sets the degree of association between keywords appearing in the sentence using the context between the set keywords and the context. The correlation between the two can increase the accuracy of the judgment.

이와 유사한 학습 방식으로 NNLM(Neural Net Language Model), RNNLM(Recurrent Neural Net Language Model), word2vec, 스킵그램(skipgram) 및 CBOW(Continuous Bag-of-Words)방식이 알려져 있다. 특히 word2vec을 이용할 경우 word2vec은 문서들을 이용해 학습하여 각 키워드들을 벡터에 대응시키고, 두 키워드 사이의 유사도는 두 벡터의 코사인 유사도 계산을 통해 파악할 수 있다.Similar learning methods are known as the Neural Net Language Model (NNLM), Recurrent Neural Net Language Model (RNNNLM), word2vec, skipgram, and Continuous Bag-of-Words (CBOW). In particular, when using word2vec, word2vec learns from documents and maps each keyword to a vector, and the similarity between two keywords can be determined by calculating the cosine similarity of the two vectors.

이러한 방식 또는 유사한 방식으로, 제어부(320)는 제2 집합 문서 중 적어도 일부를 분석하여 각 대표 속성 키워드와 가장 연관도가 높은 하위 키워드들을 미리 설정된 개수만큼 추출할 수 있다.In this manner or in a similar manner, the controller 320 may analyze at least a portion of the second set of documents to extract a predetermined number of lower keywords most relevant to each representative attribute keyword.

단계 530에서 제어부(320)는 상기 제2 집합 문서들로부터 상기 대표 속성 키워드 후보집합 내 각 대표 속성 키워드와 하위 키워드 쌍에 대응되는 연관 가중치를 추출할 수 있다.In operation 530, the controller 320 may extract an association weight corresponding to each representative attribute keyword and a lower keyword pair in the representative attribute keyword candidate set from the second set of documents.

도 7은 본 명세서의 일 실시 예에 따르는 단계 530의 상세 순서도이다.7 is a detailed flowchart of step 530 according to an embodiment of the present disclosure.

단계 710에서 제어부(320)는 상기 제2 집합 문서 중 적어도 일부를 분석하여 상기 하위 키워드들 사이의 상호 연관도를 추출할 수 있다. 예를 들어 대표 속성 키워드 A1에 대해 연관된 하위 키워드로서 수집된 것이 B11 내지 B150의 50개 하위 키워드라고 가정한다. 이 경우 제어부(320)는 이들 50개 하위 키워드들에 대해 두 하위 키워드가 같은 문서에 함께 등장하는 빈도를 이용하여 두 하위 키워드 사이의 상호 연관도를 추출할 수 있다. B11 과 B12가 같은 문서에 등장하는 빈도에 따라 B11 과 B12 사이의 상호 연관도가 결정된다. 다른 실시 예에 따르면 B11 과 B12 같은 문서에 등장하는 빈도가 상호 연관도에 영향을 주는 것에 더하여, B11 과 B12가 같은 문서에 등장하는 경우 두 키워드 B11 과 B12 사이의 거리(또는 두 키워드가 등장하는 문장 사이의 거리)가 가까울수록 높은 상호 연관도가 인정될 수 있다. 비슷한 방식으로 하위 키워드들 사이의 상호 연관도가 추출될 수 있다. 키워드 사이의 거리 또는 키워드와 문장 사이의 거리는 예를 들어 두 키워드 또는 키워드와 문장 사이에 위치하는 문장의 개수, 두 키워드 또는 키워드와 문장 사이에 위치하는 단어의 개수, 두 키워드 또는 키워드와 문장 사이에 위치하는 어절의 개수, 두 키워드 또는 키워드와 문장 사이에 위치하는 문자의 개수 중 어느 하나 이상을 기준으로 판단될 수 있다.In operation 710, the controller 320 may analyze at least some of the second aggregated documents to extract the degree of correlation between the sub-keywords. For example, assume that 50 collected sub keywords B1 1 to B1 50 are collected as associated sub keywords for the representative attribute keyword A1. In this case, the controller 320 may extract the correlation between the two sub keywords using the frequency of the two sub keywords appearing together in the same document for the 50 sub keywords. B1 is also interconnected between the first B1 and B1 2 and B1 is determined in accordance with the first frequency to the second appearing in the same document. According to another embodiment B1 1 and B1 2 is The distance between the addition to the frequency appearing in the same document that affects the degree interrelated, B1 1 and B1 if the two appeared in the same document both keywords B1 1 and B1 distance between two (or a statement that both keywords appear ), The higher the correlation can be recognized. In a similar manner, the correlation between the sub keywords can be extracted. The distance between keywords or the distance between a keyword and a sentence may be, for example, the number of sentences placed between two keywords or keywords and sentences, the number of words placed between two keywords or keywords and sentences, and the distance between two keywords or keywords and sentences. It may be determined based on any one or more of the number of words located, two keywords, or the number of words located between the keyword and the sentence.

단계 720에서 제어부(320)는 상기 하위 키워드들 사이의 상호 연관도를 기초로 각 대표 속성 키워드와 하위 키워드 간의 연관 가중치를 추출할 수 있다. 제어부(320)는 예를 들어, 각 대표 속성 키워드에 상응하는 하위 키워드 집합에 대하여, 상기 하위 키워드 집합 내의 특정 하위 키워드와 상기 하위 키워드 집합 내의 다른 하위 키워드 간의 상호 연관도와, 상기 특정 하위 키워드와 상기 대표 속성 키워드 사이의 연관 가중치가, 서로 양의 상관관계를 가지도록 상기 특정 하위 키워드와 상기 대표 속성 키워드 사이의 연관 가중치를 설정할 수 있다.In operation 720, the controller 320 may extract an association weight between each representative attribute keyword and the lower keyword based on the degree of correlation between the lower keywords. For example, the control unit 320 may include a correlation between the specific sub-keyword in the sub-keyword set and other sub-keywords in the sub-keyword set with respect to a sub-keyword set corresponding to each representative attribute keyword, and the specific sub-keyword and the An association weight between the specific sub-keyword and the representative attribute keyword may be set such that the association weight between the representative attribute keywords has a positive correlation with each other.

예를 들어 대표 속성 키워드 A1의 하위 키워드 B11과 A1의 다른 하위 키워드들 (B12 내지 B150) 사이의 상호 연관도가 높을 수록 A1과 B11사이의 연관 가중치가 높게 설정될 수 있다. 예를 들면, B11과 A1의 다른 하위 키워드들 (B12 내지 B150) 사이의 상호 연관도 산술평균(또는 총합)이 B11과 A1 사이의 연관 가중치가 될 수 있다. 단순한 산술평균 대신 기하 평균/조화 평균이 사용될 수도 있다. 하위 키워드 B11과 A1의 다른 하위 키워드들 (B12 내지 B150) 사이의 상호 연관도 중 가장 높은 2개(예시)와 가장 낮은 2개(예시)를 제외하고 평균을 구하는 절삭 평균이 사용될 수도 있다. 상호 연관도의 산술 평균 대신 중앙값(median)이 사용될 수도 있다.For example, as the degree of correlation between the sub keywords B1 1 of the representative attribute keyword A1 and the other sub keywords B1 2 to B1 50 of A1 is higher, an association weight between A1 and B1 1 may be set higher. For example, keywords of the other sub-B1 1 and A1 (B1 B1 2 to 50) is also the arithmetic mean (or total) correlation between this association may be a weight between 1 and B1 A1. The geometric mean / harmonic mean may be used instead of the simple arithmetic mean. A cutting mean that is averaged may be used except for the highest two (example) and the lowest two (example) of the correlation between the sub keywords B1 1 and the other sub keywords B1 2 through B1 50 . have. Instead of the arithmetic mean of the correlation, a median may be used.

일부 실시 예에 따르면, A1에 대한 B11의 연관 가중치를 계산하기 위해서 사용되는 "B11과 B12 같은 문서에 등장하는 빈도"는 단순히 B11과 B12 같이 등장하는(또는 같은 문장에 등장하는, 또는 근접하여 등장하는) 문서의 개수에 따라 달라지는 것이 아니라, B11과 B12 같이 등장하는(또는 같은 문장에 등장하는, 또는 근접하여 등장하는) 문서의 개수를 B11이 등장하는 문서의 개수 및/또는 B12이 등장하는 문서의 개수로 나누어 구할 수 있다. 유사한 방식으로 "B11과 B12 같은 문서에 등장하는 빈도"는 B11과 B12 같이 등장하는(또는 같은 문장에 등장하는, 또는 근접하여 등장하는) 문서의 개수와 양의 상관관계를 가지고 B11이 등장하는 문서의 개수 및/또는 B12이 등장하는 문서의 개수와 음의 상관관계를 가지도록 설정될 수 있다. 단순하게 흔히 사용되는 단어가 대표 속성 키워드 A1에 높은 연관 가중치를 가지는 것을 방지하기 위한 일종의 노멀라이제이션(normalization)이다.According to some embodiments, B1 to A1OneUsed to calculate the associative weight of "B1"OneAnd B12end How often they appear in the same article "simplyOneAnd B12end Does not depend on the number of documents that appear together (or appear in the same sentence, or appear in close proximity), but B1OneAnd B12end B1 counts the number of documents that appear together (or appear in the same sentence, or appear in close proximity).OneThe number of documents in which it appears and / or B12It can be obtained by dividing by the number of documents appearing. In a similar way, "B1OneAnd B12end Frequency in the same document "OneAnd B12end B1 with a positive correlation with the number of documents that appear together (or in the same sentence, or appear in close proximity)OneThe number of documents in which it appears and / or B12It can be set to have a negative correlation with the number of documents appearing. It is a kind of normalization to prevent a simple commonly used word from having a high associative weight on the representative attribute keyword A1.

도 5로 돌아와서, 단계 540에서 제어부(320)는 상기 제1 집합 문서들로부터 객체 항목과 하위 키워드 간의 하위 연관도를 추출할 수 있다. Returning to FIG. 5, in operation 540, the controller 320 may extract a sub association between an object item and a sub keyword from the first set of documents.

제1 집합 문서들 중에서 객체 항목을 나타내는 객체 키워드(예를 들어 "테일러 스위프트")와 같은 문서, 또는 같은 문장 또는 근접한 문장에 자주 등장한 하위 키워드들은 해당 객체 항목과 연관된 것으로 판단할 수 있다. 제어부(320)는 해당 객체 항목의 객체 키워드가 등장한 문서를 수집하고, 그 문서들 내에 함께 등장한 빈도에 따라 하위 키워드와 객체 키워드 사이의 하위 연관도를 추출할 수 있다. 특히 제어부(320)는 하위 키워드가 객체 키워드와 같은 문장에 등장하면 하위 키워드가 객체 키워드와 다른 문장에 등장한 경우에 비해 하위 키워드와 객체 항목 사이의 연관도가 더 높은 것으로 설정할 수 있다. Among the first set of documents, a document such as an object keyword representing an object item (for example, "Taylor Swift"), or sub keywords frequently appearing in the same sentence or a close sentence may be determined to be associated with the object item. The controller 320 may collect documents in which an object keyword of the corresponding object item appears, and extract a lower degree of association between the lower keyword and the object keyword according to the frequency of appearing together in the documents. In particular, when the sub-keyword appears in the same sentence as the object keyword, the controller 320 may set a higher degree of association between the sub-keyword and the object item than when the sub-keyword appears in the other sentence.

제어부(320)는 하위 키워드가 등장한 문장이 객체 키워드가 등장한 문장과 근접할 수록 하위 키워드와 해당 객체 키워드의 객체 항목 사이의 연관도가 더 높은 것으로 설정할 수 있다. 두 문장의 근접도는 예를 들어 두 문장 사이에 위치하는 문장의 개수, 두 문장 사이에 위치하는 단어의 개수, 두 문장 사이에 위치하는 어절의 개수, 두 문장 사이에 위치하는 문자의 개수 중 어느 하나 이상을 기준으로 판단될 수 있다. The control unit 320 may set that the closer the sentence in which the lower keyword appears is to the sentence in which the object keyword appears, the higher the degree of association between the lower keyword and the object item of the corresponding object keyword is. For example, the proximity of two sentences may include, for example, the number of sentences between two sentences, the number of words between two sentences, the number of words between two sentences, and the number of characters between two sentences. It may be determined based on one or more.

제어부(320)는 하위 키워드가 등장한 위치가 객체 키워드가 등장한 위치와 근접할 수록 하위 키워드와 해당 객체 키워드의 객체 항목 사이의 연관도가 더 높은 것으로 설정할 수 있다. 하위 키워드와 객체 키워드 사이의 근접도는 예를 들어 하위 키워드와 객체 키워드 사이에 위치하는 문장의 개수, 하위 키워드와 객체 키워드 사이에 위치하는 단어의 개수, 하위 키워드와 객체 키워드 사이에 위치하는 어절의 개수, 하위 키워드와 객체 키워드 사이에 위치하는 문자의 개수 중 어느 하나 이상을 기준으로 판단될 수 있다.The control unit 320 may set the higher degree of association between the lower keyword and the object item of the corresponding object keyword as the position where the lower keyword appears is closer to the position where the object keyword appears. The proximity between the subkeyword and the object keyword is, for example, the number of sentences located between the subkeyword and the object keyword, the number of words located between the subkeyword and the object keyword, and the word between the subkeyword and the object keyword. It may be determined based on any one or more of the number, the number of characters located between the lower keyword and the object keyword.

단계 550에서 제어부(320)는 단계 540의 하위 연관도 및 단계 530의 연관 가중치를 이용하여 상기 객체 항목과 상기 각 대표 속성 키워드 간의 객체-키워드 연관도를 추출할 수 있다.In operation 550, the controller 320 may extract an object-keyword relation between the object item and each representative attribute keyword using the sub-association of operation 540 and the association weight of operation 530.

예를 들어 객체 항목 C와 대표 속성 키워드 A1 사이의 객체-키워드 연관도는 C와 A1의 하위 키워드들 (예를 들어 B11 내지 B150) 사이의 하위 연관도 및 각 하위 키워드들의 연관 가중치를 이용하여 추출될 수 있다. 예를 들어 객체 항목 C와 대표 속성 키워드 A1 사이의 객체-키워드 연관도는, 객체 항목 C와 B11 내지 B150 사이의 하위 연관도가 높을수록 높게 설정될 수 있다. For example, the object-keyword association between object entry C and representative attribute keyword A1 uses the subassociation between C and A1 subkeywords (eg B1 1 through B1 50 ) and the association weight of each subkeyword. Can be extracted. For example, the object-keyword association between the object item C and the representative attribute keyword A1 may be set higher as the lower degree of association between the object item C and B1 1 to B1 50 is higher.

아울러 A1과의 관계에서 연관 가중치가 더 높은 하위 키워드에 대해서 객체 항목 C와의 하위 연관도가 높다면, 연관 가중치가 더 낮은 하위 키워드에 대해서 하위 연관도가 높은 경우에 비하여 객체 C와 대표 속성 키워드 A1 사이의 객체-키워드 연관도가 더 높게 설정될 수 있다. 예를 들어 표 1의 경우가 표 2의 경우보다 연관 가중치 높은 쪽(B11)의 하위 연관도가 높으므로, 표 1의 경우가 표 2의 경우보다 객체 C와 대표 속성 키워드 A1 사이의 객체-키워드 연관도가 높게 설정될 수 있다.In addition, if a subkey with a higher association weight has a higher subassociation with the object item C in relation to A1, an object C and a representative attribute keyword A1 than a case where the subkey with a low association weight have a high subassociation is higher. The object-keyword association between can be set higher. For example, in the case of Table 1 , the lower association of the side with higher association weight (B1 1 ) is higher than that of Table 2, so the case of Table 1 is the object-object between the object C and the representative attribute keyword A1 than the case of Table 2. Keyword relevance may be set high.

A1과의 연관 가중치Association weight with A1 C와의 하위 연관도Subassociation with C B11 B1 1 0.50.5 0.50.5 B12 B1 2 0.20.2 0.20.2

A1과의 연관 가중치Association weight with A1 C와의 하위 연관도Subassociation with C B11 B1 1 0.20.2 0.50.5 B12 B1 2 0.50.5 0.20.2

일 실시 예에 따르면 각 하위 키워드에 대응되는 연관가중치 및 하위 연관도를 곱한 값의 총합으로 (또는 이 총합을 이용하여) 객체 C와 대표 속성 키워드 A1 사이의 객체-키워드 연관도를 구할 수도 있다. 표 1의 경우 0.5×0.5+0.2×0.2=0.29가 되고, 표 2의 경우 0.2×0.5+0.5×0.2=0.20이 되므로, 표 1의 경우가 표 2의 경우보다 객체 C와 대표 속성 키워드 A1 사이의 객체-키워드 연관도가 높게 설정될 수 있다. 상술한 객체-키워드 연관도 산정 방식은 예시적인 것에 불과하고, 단계 540의 C와의 하위 연관도 및 단계 530의 A1과의 연관 가중치가 C 및 A1 사이의 객체-키워드 연관도와 양의 상관관계에 있다면 다른 방식이 사용되어도 무방하다.According to an embodiment of the present disclosure, an object-keyword correlation between the object C and the representative attribute keyword A1 may be obtained as a sum (or using the sum) of a product obtained by multiplying an association weight corresponding to each sub keyword and a sub association degree. In Table 1, 0.5 × 0.5 + 0.2 × 0.2 = 0.29, and in Table 2, 0.2 × 0.5 + 0.5 × 0.2 = 0.20, so that Table 1 is more between object C and representative attribute keyword A1 than in Table 2. The object-keyword association of may be set high. The above-described object-keyword association calculation method is merely exemplary, provided that the sub-association with C in step 540 and the association weight with A1 in step 530 are positively correlated with the object-keyword association between C and A1. Other methods may be used.

이후 통신부(310)가 특정 대표 속성 키워드와 연관된 정보 제공 요청을 수신하면, 제어부(320)는 단계 550에서 추출한 객체-키워드 연관도를 기반으로 결과 항목을 통신부(310)를 통해 제공할 수 있다. 예를 들어 어느 하나의 대표 속성 키워드를 포함한 정보 제공 요청을 수신한 경우 제어부(320)는 해당 대표 속성 키워드와의 관계에서 객체-키워드 연관도가 가장 높은 순서대로 객체 항목에 관한 정보를 제공할 수 있다. Thereafter, when the communication unit 310 receives the information providing request associated with the specific representative attribute keyword, the controller 320 may provide the result item through the communication unit 310 based on the object-keyword association degree extracted in step 550. For example, when receiving a request for providing an information including one representative attribute keyword, the controller 320 may provide information about an object item in the order of highest object-keyword association in relation to the representative attribute keyword. have.

다른 실시 예에서, 둘 이상의 대표 속성 키워드 및 그에 대응되는 가중치를 포함한 정보 제공 요청을 수신한 경우 제어부(320)는 각 객체 항목에 대해 정보 제공 요청에 포함된 대표 속성 키워드들과의 객체-키워드 연관도에 가중치를 곱한(또는 이와 유사하게 가중치를 부가한) 값의 총합(또는 평균)이 가장 높은 순서대로 객체 항목에 관한 정보를 제공할 수 있다.In another embodiment, when receiving an information providing request including two or more representative attribute keywords and corresponding weights, the controller 320 associates object-keywords with the representative attribute keywords included in the information providing request for each object item. The sum (or average) of the values multiplied by the weight (or similarly weighted) may provide information about the object item in the highest order.

도 8은 본 명세서의 다른 실시 예에 따르는 정보 제공 과정의 순서도이다.8 is a flowchart illustrating an information providing process according to another exemplary embodiment of the present specification.

도 8의 실시 예는 도 5의 실시 예와 동일한 과정들에 더해서 단계 520과 단계 530의 사이에 두 단계들(523, 526)을 더 포함하고 있다. 여기서는 중복된 설명을 피하고 단계 523 및 단계 526에 대해서만 설명한다.The embodiment of FIG. 8 further includes two steps 523 and 526 between steps 520 and 530 in addition to the same processes as the embodiment of FIG. 5. Here, only the steps 523 and 526 will be described and the description thereof will be avoided.

단계 523에서 제어부(320)는, 단계 520에서 추출된 하위 키워드들 각각이, 감정 언어(감정어)에 해당하는지 판단한다. 이를 위해 저장부(330) 또는 외부 서버가 감정어 사전(dictionary)를 보유할 수 있다. 감정어 사전은 어떤 단어(키워드)가 감정어인지 여부를 판단하기 위한 도구로서, 예를 들어 감정어 목록을 보유할 수 있다. 감정어 목록에 포함된 키워드는 감정어라고 할 수 있고, 그렇지 않은 키워드는 감정어가 아니라고 판단할 수 있다. 다만 이러한 판단은 사전적 의미에 기반한 것이고, 시대에 따라 변하는 대중의 단어 사용을 반영하지 못할 수 있다. 따라서 제어부(320)는 대표 속성 키워드 자체의 감정어 여부를 판단하지 않고, 대표 속성 키워드에 연관된 하위 키워드들의 감정어 여부를 기준으로 대표 속성 키워드를 활용할지 여부를 판단한다.In operation 523, the controller 320 determines whether each of the lower keywords extracted in operation 520 corresponds to an emotional language (emotional language). To this end, the storage unit 330 or an external server may hold an emotional dictionary. An emotional word dictionary is a tool for determining whether a word (keyword) is an emotional word, and for example, may hold a list of emotional words. Keywords included in the list of emotional words may be called an emotional word, and keywords that are not included in the emotional word list may not be determined. However, these judgments are based on a dictionary meaning and may not reflect the use of the word of the public that changes with the times. Accordingly, the controller 320 determines whether to use the representative attribute keyword based on whether the representative keywords of the sub-keywords associated with the representative attribute keyword are determined, without determining whether the representative attribute keyword itself is an emotional word.

다른 실시 예에서 제어부(320)는 감정어 사전에 감정어인 것으로 등록된, 미리 설정된 수 이상의 단어와 연관도가 높은(미리 설정된 값 이상인) 것으로 학습된 다른 단어를 감정어 사전에 추가할 수 있다.In another exemplary embodiment, the controller 320 may add another word learned to be highly related (more than a preset value) to the emotional word dictionary registered as the emotional word in the emotional word dictionary.

단계 526에서 제어부(320)는 연관된 하위 키워드의 감정 언어 비율(또는 숫자)이 높은 순서대로 미리 설정된 개수의 대표 속성 키워드만을 대표 속성 키워드 후보집합 내에 남기고 나머지를 제거할 수 있다. 이러한 과정을 통해 감정 언어와 거리가 먼 키워드가 감정 언어처럼 취급되는 것을 방지할 수 있다.In operation 526, the controller 320 may leave only the predetermined number of representative attribute keywords in the representative attribute keyword candidate set and remove the remainder in the order of the high emotional language ratio (or number) of the associated lower keywords. This process prevents keywords that are far from the emotional language to be treated like the emotional language.

도 9로 돌아와서, 단계 920에서 제어부(320)는 예약어와 대표 속성 키워드 쌍에 대응하는 기본 예약어-키워드 연관도를 저장부(330)에 저장한다.9, in operation 920, the controller 320 stores the basic reserved word-keyword association degree corresponding to the reserved word and the representative attribute keyword pair in the storage unit 330.

예약어는 대표 속성 키워드들의 가중치로 표현될 수 있는 표현들을 포함할 수 있다. 예를 들어, "심심해"도 예약어가 될 수 있고, "예쁜"도 예약어가 될 수 있다. The reserved word may include expressions that may be expressed as weights of the representative attribute keywords. For example, "bored" can also be a reserved word, and "pretty" can be a reserved word.

예약어 "심심해"에 대하여 기본 예약어-키워드 연관도가 높은 대표 속성 키워드는 예를 들어 "재미있는", "흥미진진한", "시간때우기용" 등 심심한 상황을 해결할 수 있는 대표 속성 키워드들을 포함할 수 있다. Representative keyword with high basic reserved word-keyword correlation for reserved word "bored" may include representative attribute keywords that can solve boring situations such as "fun", "interesting", "for time out", and the like. .

예약어 "예쁜"에 대하여 기본 예약어-키워드 연관도가 높은 대표 속성 키워드는 예를 들어 "아름다운", "귀여운", "눈길을 끄는" 등의 "예쁜"과 유사하거나 "예쁜"을 설명하는 대표 속성 키워드들을 포함할 수 있다.Regarding the Reserved Word "Pretty" A representative attribute keyword with a high basic reserved word-keyword association is a representative attribute that describes, for example, "pretty" or similar to "pretty" such as "beautiful", "cute", "eye-catching". May include keywords.

단계 920의 과정은 예를 들어 관리자의 입력으로 수행되거나 외부 시스템에서 결정된 기본 예약어-키워드 연관도를 네트워크 또는 저장매체를 통해 전달받아 수행될 수 있다. 다른 실시 예에 따르면 단계 920의 과정은 인터넷, SNS, 뉴스 등 수집 가능한 문서들을 분석하여 도 5 내지 도 8의 과정과 비슷한 방식으로 수행될 수도 있다. 아울러 단계 920의 과정은 후술하는 바와 같이 사용자의 피드백을 반영하는 과정을 포함할 수 있다. For example, the process of step 920 may be performed by input of an administrator or by receiving a basic reserved word-keyword association degree determined by an external system through a network or a storage medium. According to another embodiment, the process of step 920 may be performed in a manner similar to that of FIGS. 5 to 8 by analyzing collectable documents such as the Internet, SNS, and news. In addition, the process of step 920 may include a process of reflecting user feedback as described below.

단계 920의 과정은 도 15 내지 도 17 중 어느 하나를 참조하여 후술하는 방식으로 수행될 수도 있다.The process of step 920 may be performed in a manner described below with reference to any one of FIGS. 15 to 17.

도 11은 본 명세서의 일 실시 예에 따르는 기본 예약어-키워드 연관도의 예시이다.11 is an illustration of a basic reserved word-keyword association according to one embodiment of the present specification.

도 11의 실시 예에서 예약어는 모두 q개(C1 내지 Cq)가 있고 대표 속성 키워드는 모두 n개(k1 내지 kn)가 있다. In the embodiment of FIG. 11, there are q reserved words (C 1 to C q ), and there are n representative attribute keywords (k 1 to k n ).

예를 들어 예약어 C5와 대표 속성 키워드 k3의 기본 예약어-키워드 연관도는 v3,5이 된다.For example, the basic reserved word-keyword association degree of the reserved word C 5 and the representative attribute keyword k 3 is v 3,5 .

단계 930에서 통신부(310)가 단말(200)로부터 수신 예약어를 수신하여 획득하고 수신 예약어를 제어부(320)에게 전달한다.In operation 930, the communicator 310 receives and acquires a reserved reserved word from the terminal 200, and transmits the received reserved word to the controller 320.

수신 예약어는 단말(200)이 검색 사용자로부터 수신한 예약어이다. 단말(200)은 음성 입력을 전기적 신호(음성 신호)로 변환하여 검색 장치(300)에게 전달할 수 있다. 검색 장치(300)의 제어부(320)는 음성 신호를 분석하여 텍스트로 변환하고 변환 텍스트를 예약어에 매칭시킬 수 있다. 제어부(320)는 또한 음성 신호를 분석하여 음성의 억양이나 높낮이, 빠르기, 호흡 상태 등을 분석하여 정황 정보로서 활용할 수도 있다.The reserved reserved word is a reserved word received by the terminal 200 from the search user. The terminal 200 may convert the voice input into an electrical signal (voice signal) and transmit the converted voice signal to the search apparatus 300. The controller 320 of the search apparatus 300 may analyze the voice signal, convert the voice signal into text, and match the converted text with the reserved word. The controller 320 may also analyze the speech signal and analyze the speech intonation, height, speed, respiratory state, and the like, and use the context information.

다른 실시 예에 따르면 단말(200)은 음성 입력을 텍스트로 변환하여 변환 텍스트를 검색 장치(300)에게 전달할 수 있다. 단말(200)은 수신한 음성 입력의 억양이나 높낮이, 빠르기, 호흡 상태 등을 분석하여 분석 정보를 검색 장치(300)에게 전달할 수 있다. 검색 장치(300)는 분석 정보를 일종의 정황 정보로서 활용할 수도 있다.According to another exemplary embodiment, the terminal 200 may convert the voice input into text and transmit the converted text to the search apparatus 300. The terminal 200 may analyze the intonation, the height, the speed, the breathing state, etc. of the received voice input and transmit the analysis information to the search apparatus 300. The search apparatus 300 may utilize the analysis information as a kind of context information.

단계 940에서 제어부(320)는 객체-키워드 연관도 및 기본 예약어-키워드 연관도를 이용하여 상기 수신 예약어와 각 객체 항목 쌍에 대응하는 예약어-객체 연관도를 획득한다.In operation 940, the controller 320 obtains the reserved word-object association corresponding to the received reserved word and each object item pair by using the object-keyword association and the basic reserved word-keyword association.

도 12는 본 명세서의 일 실시 예에 따르는 단계 940의 상세 순서도이다.12 is a detailed flowchart of step 940 according to one embodiment of the present specification.

도 12를 참조하면 단계 1210에서 제어부(320)는 수신 예약어에 대한 각 객체 항목 및 대표 속성 키워드 쌍에 상응하는 조정 객체-키워드 연관도를 획득한다. Referring to FIG. 12, in operation 1210, the controller 320 obtains a coordinated object-keyword association corresponding to each object item and representative attribute keyword pair for a reserved reserved word.

일 실시 예에 따르면 제어부(320)는 각 객체 항목 및 대표 속성 키워드 쌍에 대하여 상기 객체 항목 및 상기 대표 속성 키워드 쌍에 상응하는 객체-키워드 연관도에 상기 수신 예약어 및 상기 대표 속성 키워드 쌍에 상응하는 기본 예약어-키워드 연관도를 적용하여 상기 수신 예약어에 대한 각 객체 항목 및 대표 속성 키워드 쌍에 상응하는 조정 객체-키워드 연관도를 획득할 수 있다. According to an embodiment of the present disclosure, the controller 320 may correspond to the received reserved word and the representative attribute keyword pair in an object-keyword association degree corresponding to the object item and the representative attribute keyword pair for each object item and the representative attribute keyword pair. By applying a basic reserved word-keyword association, the adjusted object-keyword association corresponding to each object item and representative attribute keyword pair for the received reserved word may be obtained.

특히 제어부(320)는 각 객체 항목 및 대표 속성 키워드 쌍에 대하여 상기 객체 항목 및 상기 대표 속성 키워드 쌍에 상응하는 객체-키워드 연관도에 상기 수신 예약어 및 상기 대표 속성 키워드 쌍에 상응하는 기본 예약어-키워드 연관도를 곱한 값을 이용하여 상기 수신 예약어에 대한 각 객체 항목 및 대표 속성 키워드 쌍에 상응하는 조정 객체-키워드 연관도를 획득할 수 있다. In particular, the control unit 320 is a basic reserved word-keyword corresponding to the received reserved word and the representative attribute keyword pair in the object-keyword association degree corresponding to the object item and the representative attribute keyword pair for each object item and the representative attribute keyword pair. The adjusted object-keyword association degree corresponding to each object item and representative attribute keyword pair for the reserved reserved word may be obtained using the value multiplied by the degree of association.

또한 제어부(320)는 각 객체 항목 및 대표 속성 키워드 쌍에 대하여 상기 객체 항목 및 상기 대표 속성 키워드 쌍에 상응하는 객체-키워드 연관도와 양의 상관 관계를 가지고, 상기 수신 예약어 및 상기 대표 속성 키워드 쌍에 상응하는 기본 예약어-키워드 연관도와 양의 상관 관계를 가지도록 상기 수신 예약어에 대한, 각 객체 항목 및 대표 속성 키워드 쌍에 상응하는 조정 객체-키워드 연관도를 설정할 수도 있다. In addition, the control unit 320 has a positive correlation with the object-keyword association corresponding to the object item and the representative attribute keyword pair for each object item and the representative attribute keyword pair, and is applied to the received reserved word and the representative attribute keyword pair. Coordinated object-keyword associations may also be set for the received reserved words, corresponding to each object item and representative attribute keyword pair, to have a positive correlation with the corresponding basic reserved word-keyword association.

본 명세서에서 객체-키워드 연관도, 기본 예약어-키워드 연관도, 조정 객체-키워드 연관도, 기본 예약어-하위 키워드 연관도와 기타 연관관계를 나타내는 값은 모두 값이 클수록 더 연관관계가 긴밀한 값인 것으로 가정하였다. 다른 실시 예에서 일부 연관도 값은 연관도 값이 작을수록 연관관계가 긴밀하고 다른 연관도 값은 연관도 값이 클수록 연관관계가 긴밀한 경우에는 그에 맞도록 양의 상관관계-음의 상관관계가 적절히 대체하여 사용될 수 있을 것이다.In this specification, the values representing the object-keyword association, the basic reserved word-keyword association, the adjusted object-keyword association, the basic reserved word-subkeyword association, and other associations are all assumed to be closer to each other. . In other embodiments, a small correlation value may have a close correlation, while another association value may have a higher correlation value, so that a positive correlation-negative correlation may be appropriate. It may be used as an alternative.

예를 들어 제어부(320)는 수신 예약어가 C2일 때 객체 항목 i4 및 대표 속성 키워드 k3 쌍에 상응하는 조정 객체-키워드 연관도를 획득하기 위해서 객체 항목 i4 및 대표 속성 키워드 k3 쌍에 상응하는 객체-연관도 w4,3에 수신 예약어 C2 및 대표 속성 키워드 k3 쌍에 상응하는 기본 예약어-키워드 연관도 v3,4를 적용하여 조정 객체-키워드 연관도를 획득할 수 있다. For example, the controller 320 may acquire the object item i 4 and the representative attribute keyword k 3 pairs to obtain the adjusted object-keyword association corresponding to the object item i 4 and the representative attribute keyword k 3 pair when the reception reserved word is C 2 . by applying the FIG v 3,4 keyword associated adjustment object-default reserved word corresponding to the received reserved Relevancy C 2 and k 3 represent attribute keyword pairs to 4,3 w - equivalent to the object that is able to obtain the keyword associated .

특히 연관도의 적용 방식은 객체-연관도와 기본 예약어-키워드 연관도를 곱하는 방식이 될 수 있다. 예를 들어 제어부(320)는 수신 예약어가 C2일 때 객체 항목 i4 및 대표 속성 키워드 k3 쌍에 상응하는 조정 객체-키워드 연관도를 획득하기 위해서 객체 항목 i4 및 대표 속성 키워드 k3 쌍에 상응하는 객체-연관도 w4,3에 수신 예약어 C2 및 대표 속성 키워드 k3 쌍에 상응하는 기본 예약어-키워드 연관도 v3,2를 곱한 값인 (w4,3Хv3, 2)를 이용하여 조정 객체-키워드 연관도를 획득할 수 있다. 다른 실시 예에서 제어부(320)는 곱하기 대신 조정 객체-키워드 연관도가 w4,3 및 v3,2과 양의 상관 관계를 가지도록 하는 다른 연산/이용 방식을 적용한 함수 f(w4,3, v3, 2)를 활용하여 조정 객체-키워드 연관도를 획득할 수도 있다. 또한 (w4,3Хv3,2)를 조정 객체-키워드 연관도로써 활용하는 방법 및 (w4,3Хv3, 2)에 기타 요인에 기반한 보정을 가하여 조정 객체-키워드 연관도로써 활용하는 방법 모두 활용될 수 있다.In particular, the method of applying association may be a method of multiplying object-association with basic reserved word-keyword association. For example, the controller 320 may acquire the object item i 4 and the representative attribute keyword k 3 pairs to obtain the adjusted object-keyword association corresponding to the object item i 4 and the representative attribute keyword k 3 pair when the reception reserved word is C 2 . corresponding to the object - more even base the reserved word corresponding to the received reserved words C 2 and k 3 represent attribute keyword pairs to w 4,3-keyword Relevancy v the value (w 4,3 Хv 3, 2), multiplied by the 3,2 Can be used to obtain a coordination object-keyword association. In another embodiment, the control unit 320 may apply a function f (w 4,3 ) to which the adjustment object-keyword correlation has a positive correlation with w 4,3 and v 3,2 instead of multiplying. , v 3, 2 ) may be used to obtain a coordination object-keyword association. In addition, (w 4,3 Хv 3,2 ) can be used as a coordinating object-keyword association and (w 4,3 Хv 3, 2 ) is applied as a coordinating object-keyword association by applying corrections based on other factors. Both methods can be used.

단계 1220에서 제어부(320)는 특정 객체 항목에 대한 상기 조정 객체-키워드 연관도를 누적한 값을 이용하여 예약어-객체 연관도를 획득할 수 있다. 예를 들어 제어부(320)는 특정 객체 항목에 대한 상기 조정 객체-키워드 연관도의 누적값과 양의 상관 관계를 가지도록 상기 수신 예약어 및 상기 특정 객체 항목 쌍에 상응하는 상기 예약어-객체 연관도를 설정할 수 있다. 객체 항목 i4 및 수신 예약어 C2 쌍에 상응하는 예약어-객체 연관도는 예를 들어

Figure pat00001
를 이용하여 획득될 수 있다. f(w4,j,vj,2)는 객체 항목 i4 및 수신 예약어 C2, 키워드 kj에 대응하는 조정 객체-키워드 연관도이다.In operation 1220, the controller 320 may obtain a reserved word-object association degree by using the accumulated value of the adjusted object-keyword association degree for a specific object item. For example, the controller 320 may generate the reserved word-object association degree corresponding to the received reserved word and the specific object item pair so as to have a positive correlation with a cumulative value of the adjusted object-keyword association degree for a specific object item. Can be set. The reserved word-object associations corresponding to the pair of object items i 4 and received reserved words C 2 , for example
Figure pat00001
It can be obtained using. f (w 4, j , v j, 2 ) is a coordinated object-keyword association corresponding to the object item i 4 and the reception reserved word C 2 , the keyword k j .

예를 들어 객체 항목 i4 및 수신 예약어 C2 쌍에 대응하는 예약어-객체 연관도는

Figure pat00002
이 될 수 있다. 다른 예에서 객체 항목 i4 및 수신 예약어 C2 쌍에 대응하는 예약어-객체 연관도는
Figure pat00003
에 대해 기타 요인에 의한 보정을 가한 값이 될 수 있다.For example, the reserved word-object associations that correspond to the object item i 4 and incoming reserved word C 2 pairs are
Figure pat00002
This can be In another example, the reserved word-object associations that correspond to object item i 4 and incoming reserved word C 2 pairs are
Figure pat00003
It can be a value that is corrected by other factors for.

도 9로 돌아와서 단계 950에서 제어부(320)는 수신 예약어에 대응하는 예약어-객체 연관도에 따라 객체 항목을 제공할 수 있다. 예를 들어 수신 예약어 C2에 대응하는 예약어-객체 연관도가 아래 표 3과 같다면 제어부(320)는 표 4의 순서로 객체 항목을 제공할 수 있다.9, in operation 950, the controller 320 may provide an object item according to the reserved word-object association degree corresponding to the received reserved word. For example, if the reserved word-object association corresponding to the received reserved word C 2 is as shown in Table 3 below, the controller 320 may provide the object items in the order of Table 4 below.

객체 항목Object item 수신 예약어와의 예약어-객체 연관도Reserved word-object association with incoming reserved words i1 i 1 0.230.23 i2 i 2 0.330.33 i3 i 3 0.990.99 i4 i 4 0.840.84

순서order 객체 항목Object item 수신 예약어와의 예약어-객체 연관도Reserved word-object association with incoming reserved words 1One i3 i 3 0.990.99 22 i4 i 4 0.840.84 33 i2 i 2 0.330.33 44 i1 i 1 0.230.23

즉, 제어부(320)는 수신 예약어에 대응하는 예약어-객체 연관도가 높은 순서대로 객체 항목을 제공할 수 있다. 객체 항목을 제공받은 단말(200)은 표시부(220)를 통해 객체 항목 i3에 대한 정보를 사용자에게 제공할 수 있다. 단말(200)은 필요에 따라 하위 순서의 다른 객체 항목에 대한 정보도 제공할 수 있다. 단말(200)은 표시부(220) 대신 스피커를 통해 음성으로 객체 항목 i3에 대한 정보를 사용자에게 제공할 수 있다.That is, the controller 320 may provide the object items in the order of the high relevance of the reserved word corresponding to the received reserved word. The terminal 200 provided with the object item may provide information about the object item i 3 to the user through the display unit 220. The terminal 200 may also provide information on other object items in a lower order as necessary. The terminal 200 may provide the user with information about the object item i 3 by using a speaker instead of the display unit 220.

도 13은 본 명세서의 다른 실시 예에 따르는 정보 제공 과정의 순서도이다.13 is a flowchart illustrating an information providing process according to another exemplary embodiment of the present specification.

도 13 내지 도 17의 과정은 도 5 내지 도 12의 과정을 일부 이용하거나 도 5 내지 도 12의 과정을 일부 변경하여 수행될 수도 있다. 도 13 내지 도 17의 과정을 설명하면서 필요한 경우 도 5 내지 도 12에 관한 설명을 원용할 수 있다.13 to 17 may be performed by partially using the processes of FIGS. 5 to 12 or by partially changing the processes of FIGS. 5 to 12. 13 to 17, the descriptions of FIGS. 5 to 12 may be used when necessary.

도 13을 참조하면, 단계 1310에서 제어부(320)는 제1 집합 문서들로부터 대표 속성 키워드 후보집합을 추출한다. 제어부(320)는 예를 들어 제1 집합 문서 중 관심 분야에 해당하는 문서에 자주 등장하는 키워드들을 대표 속성 키워드 후보집합으로 수집할 수 있다. 단계 1310의 과정은 예를 들어 도 5의 단계 510의 과정과 동일 또는 유사하게 진행될 수 있다. 단계 1310의 과정은 도 6의 과정과 동일 또는 유사한 과정을 통해 진행될 수 있다. 도 6의 과정에 대한 설명은 다시 반복하지 않는다.Referring to FIG. 13, in operation 1310, the controller 320 extracts a representative attribute keyword candidate set from first collection documents. The controller 320 may collect, for example, keywords that frequently appear in documents corresponding to the field of interest in the first set of documents as representative attribute keyword candidate sets. The process of step 1310 may proceed, for example, similarly or similarly to the process of step 510 of FIG. 5. The process of step 1310 may be performed through the same or similar process as that of FIG. 6. The description of the process of FIG. 6 is not repeated again.

단계 1320에서 제어부(320)는 예약어 집합을 설정한다. 예를 들어 관리자가 수동으로 입력하여 예약어 집합이 설정될 수 있다. 변형 예에 따르면, 제어부(320)가 예약어로 적합한 어절/구절 등을 예약어 후보로서 설정하고, 예약어 후보 중 하나 이상을 예약어로서 설정할 수 있는 인터페이스를 제공할 수도 있다.In step 1320, the controller 320 sets a reserved word set. For example, the administrator may manually input a set of reserved words. According to a modification, the controller 320 may provide an interface for setting a word / phrase suitable for a reserved word as a reserved word candidate and setting one or more of the reserved word candidates as a reserved word.

도 18은 본 명세서의 변형 예에 따르는 단계 1320의 상세 순서도이다.18 is a detailed flowchart of step 1320 according to a modification of the present specification.

단계 1810에서 제어부(320)는 하나의 언어단위 또는 둘 이상의 연속된 언어단위들의 문서 집합 내 등장 횟수를 획득한다. 여기서 문서 집합은 도 5의 단계 510 과정에서 사용되는 문서 집합과 같은 문서 집합일 수도 있고 다른 문서 집합이 될 수도 있다.In operation 1810, the controller 320 acquires the number of appearances in a document set of one language unit or two or more consecutive language units. The document set may be the same document set as the document set used in step 510 of FIG. 5 or may be another document set.

언어단위는 예를 들어 어절/단어/형태소/음절/문자 중 어느 하나가 될 수 있다. 기타 문장을 구분하는 여러 기준으로 나누어진 단위가 본 실시 예에서의 언어단위가 될 수 있다. The language unit may be, for example, any one of word, word, morpheme, syllable and letter. The unit divided by various criteria for distinguishing other sentences may be a language unit in this embodiment.

제어부(320)는 단계 1810 이전에 문서 집합의 각 문서들이 포함하는 문서들을 어절 단위로 나누어 배열 또는 리스트 등의 형태로 저장할 수 있다. 제어부(320)는 실시 예에 따라 각 어절에서 무의미한 단어, 예를 들어 한국어에서 일부 조사나 '이', '저' 등 지시형용사, 기타 분석에 필요하지 않은 단어들을 어절에서 삭제하거나 배열/리스트에서 제거할 수 있다. 또한 제어부(320)는 실시 예에 따라서 어절이 하나의 단어로 이루어진 경우 해당 단어를 기본형(또는 미리 설정된 형식)으로 전환할 수 있다.The controller 320 may divide the documents included in each document of the document set by word units before storing in the form of an array or a list before step 1810. According to an exemplary embodiment, the controller 320 deletes words that are meaningless in each word, for example, some words in Korean, descriptive adjectives such as 'yi', 'low', or other words that are not necessary for analysis or in words / arrays or lists. Can be removed. In addition, according to an embodiment, when a word consists of one word, the controller 320 may convert the word into a basic form (or a preset form).

변형 예에 따르면 제어부(320)는 단계 1810 이전에 문서 집합의 각 문서들이 포함하는 문서들을 단어 단위로 나누어 배열 또는 리스트 등의 형태로 저장할 수 있다. 제어부(320)는 실시 예에 따라 각 단어를 기본형(또는 미리 설정된 형식)으로 전환할 수 있다. 제어부(320)는 실시 예에 따라 무의미한 단어, 예를 들어 한국어에서 일부 조사나 '이', '저' 등 지시형용사, 기타 분석에 필요하지 않은 단어들을 배열/리스트에서 제거할 수 있다.According to a modified example, the control unit 320 may divide the documents included in each document of the document set in word units and store them in an array or a list before step 1810. According to an embodiment, the controller 320 may convert each word into a basic form (or a preset format). According to an exemplary embodiment, the controller 320 may remove meaningless words, for example, some words in Korean, words which are not necessary for an indication adjective such as 'yi', 'low', or other analysis from the array / list.

제어부(320)가 문서를 형태소 단위로 또는 음절 단위로 또는 문자 단위로 분할하는 변형 예도 가능하다.Modifications are also possible in which the control unit 320 divides a document into morpheme units, syllable units, or character units.

이하의 실시 예에서는 편의를 위해 제어부(320)가 문서를 어절 단위로 분할하고, 각 어절이 언어단위가 되는 것으로 가정한다.In the following embodiments, it is assumed that the controller 320 divides a document into word units for convenience, and each word becomes a language unit.

단일한 언어단위는 예약어가 될 수 있다. 변형 실시 예에 따르면 둘 이상의 연속된 언어단위 또한 예약어가 될 수 있다. 예를 들어 "깔끔한"(단일한 언어 단위)도 예약어가 될 수 있고, "분위기 좋은"(두 개의 연속된 언어단위)도 예약어가 될 수 있다. 다만 둘 이상의 연속된 언어단위는 단일한 언어단위에 비해 자주 나오기 어려우므로 실시 예에 따라 둘 이상의 연속된 언어단위가 예약어로 선정되도록 하기 위해 예약어 선정 시 둘 이상의 연속된 언어단위에 대해 가중치 또는 추가 점수를 줄 수 있다. 변형 예에 따르면, 예약어 선정 시 둘 이상의 연속된 언어단위에 대해 예약어 선정을 위한 기준치를 더 관대하게 설정할 수도 있다. 예를 들어 단일한 언어단위가 적어도 a번 등장하여야 예약어 후보로 추천될 수 있다면 두 개의 연속된 언어단위는 a보다 훨씬 적은 횟수인 b번만 등장하더라도 예약어 후보로 추천되도록 설정될 수 있고 세 개의 연속된 언어단위는 b보다도 적은 c번만 등장하더라도 예약어 후보로 추천되도록 설정될 수도 있다. 이하 본 명세서에서 둘 이상의 연속된 언어단위를 연속 언어단위라 칭한다.A single language unit can be a reserved word. According to a variant embodiment, two or more consecutive language units may also be reserved words. For example, "neat" (single language unit) can be a reserved word, and "good mood" (two consecutive language units) can be a reserved word. However, since two or more consecutive language units are less likely to appear than a single language unit, in order to ensure that two or more consecutive language units are selected as reserved words, weights or additional scores for two or more consecutive language units when selecting reserved words Can be given. According to a modification, when selecting a reserved word, a reference value for selecting the reserved word may be more generously for two or more consecutive language units. For example, if a single language unit appears at least a times before it can be recommended as a reserved word candidate, two consecutive language units can be set to be recommended as reserved word candidates even though only b times appear, which is much less than a. The language unit may be set to be recommended as a reserved word candidate even if only c times appear less than b. In the following description, two or more consecutive language units are referred to as continuous language units.

또한 연속 언어단위가 예약어로 추천/선정되는 경우 그 예약어(후보)에 포함된 언어단위 또는 그 예약어(후보)에 포함되며 예약어(후보)보다 짧은 연속 언어단위들은 예약어로 추천되지 않도록 하거나 예약어로 추천되기 위한 점수 산정 시 감점을 할 수 있다. 유사한 예약어가 여럿 선정되거나 추천되는 것을 방지하기 위한 것이다. 이하에서는 설명을 단순화하기 위해 연속 언어단위에 대한 설명을 생략하지만 단일 언어단위에 대한 설명이 연속 언어단위에 대해서도 똑같이 또는 유사하게 적용될 수 있다.In addition, if consecutive language units are recommended / selected as reserved words, consecutive language units included in the reserved words (candidates) or those reserved words (candidates) and shorter than the reserved words (candidates) should not be recommended as reserved words or recommended as reserved words. Penalties may be deducted when the score is calculated. This is to prevent similar reserved words from being selected or recommended. In the following description, the description of the continuous language unit is omitted to simplify the description, but the description of the single language unit may be equally or similarly applied to the continuous language unit.

단계 1810에서 언어단위의 등장 횟수는 예를 들어 해당 언어단위가 등장한 문서의 수가 될 수 있다. 한 문서에서 여러 번 해당 언어단위가 등장하더라도 등장횟수는 1회만 인정된다. 다른 실시 예에 따르면, 해당 언어단위가 한 문서에서 여러 번 등장할 경우를 모두 등장 횟수로 인정해서 그 등장 횟수가 언어단위의 등장 횟수가 될 수 있다. In operation 1810, the number of appearance of the language unit may be, for example, the number of documents in which the language unit appears. Even if the language unit appears several times in a document, only one occurrence is allowed. According to another embodiment, the case in which the language unit appears several times in a document may be recognized as the number of appearances, and the number of appearances may be the number of appearances of the language unit.

또다른 실시 예에 따르면 한 문서에서 해당 언어단위가 두 번 이상 반복해서 등장하는 경우 두 번째 이후의 등장은 첫 번째 등장에 비해 낮은 값의 등장으로 인정할 수 있다. 또한 한 문서에서 해당 언어단위의 등장이 반복되면 반복될수록 나중의 등장은 더 낮은 점수로 인정될 수 있다. 등장 횟수가 늘어나면 점수가 높아지지만 기울기가 점차 완만해지는 것이다. 예를 들어 등장 횟수의 1/r제곱(r은 1보다 큰 실수(real number))가 해당 문서에서 해당 언어단위의 등장점수로 사용될 수도 있다. 예를 들어 (등장 횟수의 로그 값)+1 (단 등장 횟수가 0인경우 등장점수는 0) 등이 사용될 수도 있다. 또한 한 문서에서 언어단위의 등장점수는 미리 설정된 상한값을 넘지 않도록 제한될 수도 있다. 해당 언어단위의 등장점수를 모든 문서에 대해서 누적한 값이 해당 언어단위의 등장 횟수에 따른 등장점수가 될 수 있을 것이다. 그리고 이러한 등장점수를 단계 1830에서 활용할 수 있다.According to another embodiment, when a language unit appears repeatedly two or more times in a document, the second and subsequent appearances may be recognized as lower appearances than the first appearance. Also, the more repeated the language unit appears in a document, the later appearance can be recognized as a lower score. As the number of appearances increases, the score increases, but the slope gradually decreases. For example, a 1 / r square of the number of appearances (r is a real number greater than 1) may be used as the appearance score of the language unit in the document. For example, (log number of appearances) +1 (where 0 is the number of appearances is 0) may be used. In addition, the appearance score of the language unit in a document may be limited not to exceed a preset upper limit. The cumulative score of the language units for all documents may be the appearance score according to the number of appearances of the language unit. This appearance score may be utilized in step 1830.

이하에서는 편의를 위해 언어단위의 등장 횟수는 해당 언어단위가 등장한 문서의 수인 것으로 가정하고 설명한다.In the following description, for the sake of convenience, the number of appearances of a language unit is assumed to be the number of documents in which the language unit appears.

단계 1820에서 제어부(320)는 언어단위로부터 미리 설정된 거리 이내에 감정어가 위치하는 횟수를 획득한다. 언어단위와 감정어 사이의 거리는 예를 들어 언어단위와 감정어 사이에 위치하는 단어의 개수, 언어단위와 감정어 사이에 위치하는 어절의 개수, 언어단위와 감정어 사이에 위치하는 문자의 개수 중 어느 하나 이상을 기준으로 판단될 수 있다.In operation 1820, the controller 320 obtains a number of times that an emotional word is located within a predetermined distance from a language unit. The distance between a language unit and an emotional word is, for example, the number of words located between the language unit and the emotional word, the number of words located between the language unit and the emotional word, and the number of characters located between the language unit and the emotional word. It may be determined based on any one or more.

또한 언어단위와 감정어가 서로 다른 문장에 속한 경우 언어단위와 감정어 사이에 위치하는 단어/어절/문자 개수와 무관하게 제어부(320)는 감정어가 언어단위로부터 미리 설정된 거리 이내에 위치하지 않는 것으로 판단할 수도 있다. 다른 변형예에 따르면 언어단위와 감정어가 서로 다른 문장에 속한 경우 제어부(320)는 문장에 대한 판단을 배재하여 계산한 거리에 일정한 숫자를 더하여 거리를 계산할 수도 있다. 언어단위와 감정어가 서로 다른 문장에 속하는 경우 서로 연관성이 없을 확률이 비교적 높아지기 때문에 감정어 사이에 위치하는 단어/어절/문자 개수보다 거리를 더 멀게 평가하는 것이 바람직하기 때문이다.Also, if the language unit and the emotional word belong to different sentences, the controller 320 may determine that the emotional word is not located within a predetermined distance from the language unit regardless of the number of words / phrases / characters located between the language unit and the emotional word. It may be. According to another variation, when the language unit and the emotional word belong to different sentences, the controller 320 may calculate the distance by adding a predetermined number to the distance calculated by excluding the judgment on the sentence. This is because it is preferable to evaluate the distance more than the number of words / phrases / letters located between the emotional words because the probability that the language unit and the emotional word belong to different sentences is relatively high.

특정 단어(어절)의 감정어 여부는 미리 등록된 감정어 사전에 조회하여 확인할 수 있다.Whether or not a specific word (word phrase) is an emotional word can be checked by checking a dictionary of registered emotional words.

언어단위로부터 일정 거리 이내에 감정어가 위치하는 횟수는 예를 들어 일정 거리 이내에 해당 언어단위와 감정어가 함께 위치한 문서의 수가 될 수 있다. 한 문서에서 여러 번 해당 언어단위와 감정어가 일정 거리이내에 함께 등장하더라도 등장횟수는 1회만 인정된다. 다른 실시 예에 따르면, 한 문서의 해당 언어단위 중 일정 거리 이내에 감정어가 위치한 언어단위가 여럿인 경우 그 여러 언어단위를 모두 언어단위로부터 일정 거리 이내에 감정어가 위치하는 횟수로 인정할 수 있다. 이하에서는 일정 거리 이내에 감정어가 위치하는 언어단위를 감정어 위치 언어단위라고 칭한다.The number of times an emotional word is located within a certain distance from the language unit may be, for example, the number of documents in which the language unit and the emotional word are located together within a certain distance. Even if the language unit and the appraiser appear together within a certain distance in a document several times, the number of appearances is recognized only once. According to another embodiment of the present disclosure, when multiple language units are located within a certain distance of a corresponding language unit of a document, all of the various language units may be recognized as the number of times the emotional words are located within a certain distance from the language unit. Hereinafter, a language unit in which an emotional word is located within a predetermined distance is referred to as an emotional word location language unit.

또다른 실시 예에 따르면 한 문서에서 감정어 위치 언어단위가 두 번 이상 반복해서 등장하는 경우 두 번째 이후의 등장은 첫 번째 등장에 비해 낮은 값의 등장으로 인정할 수 있다. 또한 한 문서에서 해당 감정어 위치 언어단위의 등장이 반복되면 반복될수록 나중의 등장은 더 낮은 점수로 인정될 수 있다. 등장 횟수가 늘어나면 점수가 높아지지만 기울기가 점차 완만해지는 것이다. 예를 들어 등장 횟수의 1/r제곱(r은 1보다 큰 실수(real number))가 해당 문서에서 해당 감정어 위치 언어단위의 등장점수로 사용될 수도 있다. 예를 들어 (등장 횟수의 로그 값)+1 (단, 등장 횟수가 0인경우 등장점수는 0) 등이 사용될 수도 있다. 또한 한 문서에서 감정어 위치 언어단위의 등장점수는 미리 설정된 상한값을 넘지 않도록 제한될 수도 있다. 해당 감정어 위치 언어단위의 등장점수를 모든 문서에 대해서 누적한 값이 해당 언어단위의 등장 횟수에 따른 등장점수가 될 수 있을 것이다. 그리고 이러한 등장 점수가 단계 1830에서 활용될 수 있다. According to another embodiment, when an emotional language location language unit appears repeatedly two or more times in a document, the second and subsequent appearances may be regarded as lower appearances than the first appearance. In addition, the more repeated the appearance of the corresponding language of language position in the document, the later appearance can be recognized as a lower score. As the number of appearances increases, the score increases, but the slope gradually decreases. For example, a 1 / r square of the number of appearances (r is a real number greater than 1) may be used as the appearance score of the language unit of the location of the corresponding word in the document. For example, (log number of appearances) +1 (where 0 is the number of appearances is 0) may be used. In addition, the appearance score of the language unit of the appraiser position in a document may be limited not to exceed a preset upper limit. A cumulative value of appearance scores of the language unit for all documents may be an appearance score according to the number of appearances of the corresponding language unit. This appearance score can then be utilized in step 1830.

또 다른 실시 예에 따르면 하나의 언어단위에 대하여 일정 거리 이내에 위치하는 감정어의 개수가 많을수록 등장점수를 더 높게 인정할 수도 있다. 아울러 하나의 언어단위에 대하여 더 가까운 거리 내에 감정어가 있는 경우 등장점수를 더 높게 인정할 수도 있다. 또한 하나의 언어단위에 대하여 하나가 아닌 둘 이상의 미리 설정된 개수의 감정어가 있을 경우에만 등장점수(등장횟수)가 인정될 수도 있다. According to another embodiment, as the number of emotional words located within a certain distance with respect to one language unit increases, the appearance score may be recognized higher. In addition, if there is an emotional word within a shorter distance for one language unit, the appearance score may be higher. In addition, the appearance score (number of appearances) may be recognized only when there are two or more preset numbers of emotion words for one language unit.

이하에서는 편의를 위해 감정어 위치 언어단위의 등장 횟수는 해당 언어단위로부터 미리 설정된 거리 이내에 감정어가 등장한 문서의 수인 것으로 가정하고 설명한다.In the following description, for the sake of convenience, the number of appearances of an emotional language position language unit is assumed to be the number of documents in which an emotional word appears within a predetermined distance from the language unit.

단계 1830에서 제어부(320)는 해당 언어단위의 등장 횟수 및 언어단위로부터 일정 거리 이내에 감정어가 위치하는 횟수를 고려하여 예약어 후보를 설정한다.In operation 1830, the controller 320 sets a reserved word candidate in consideration of the number of appearances of the corresponding language unit and the number of times the emotional word is located within a predetermined distance from the language unit.

예를 들어 제어부(320)는 언어단위의 등장횟수 및 일정 거리 이내에 감정어가 위치한 횟수를 곱해서(또는 기타 두 변수에 대해 양의 상관관계를 가지는 연산 방식에 따라) 감정어 점수로 환산할 수 있다. 그리고 점수가 높은 순서대로 미리 설정된 일정한 개수가 예약어 후보로 설정될 수 있다. 또는 미리 설정된 점수 이상에 해당하는 언어단위가 예약어 후보로 설정될 수도 있다.For example, the controller 320 may multiply the number of appearances of the language unit and the number of times the emotional words are located within a predetermined distance (or according to a calculation method having a positive correlation with two other variables) to convert the emotional word scores. The predetermined number may be set as the reserved word candidates in order of increasing score. Alternatively, a language unit corresponding to a predetermined score or more may be set as a reserved word candidate.

언어단위Language unit 등장횟수Appearance 감정어 위치 횟수Appraiser Position Count 점수score 제1 언어단위First language unit 30033003 11221122 33693663369366 제2 언어단위Second language unit 20012001 18201820 36418203641820 제3 언어단위Third language unit 31213121 13001300 40573004057300 제4 언어단위4th language unit 200200 110110 2200022000

표 5의 예시에서는 제3 언어단위->제2 언어단위->제1 언어단위->제4 언어단위 순서로 예약어 후보가 될 수 있다. 제어부(320)가 예약어 후보 2개를 추천한다면 제3 언어단위 및 제2 언어단위가 추천될 것이다. 제어부(320)가 점수 3백만점 이상의 언어단위를 예약어 후보로서 추천한다면 제3 언어단위, 제2 언어단위 및 제1 언어단위가 순서대로 예약어 후보로서 추천될 것이다. 다른 실시 예에 따르면, 제어부(320)는 언어단위의 등장횟수 순서로 제1 개수만큼의 언어단위들을 뽑아낸 뒤 뽑아낸 언어단위들의 일정거리 내에 감정어가 등장한 횟수(또는 감정어 점수)를 기준으로 한 순서대로 일정한 개수의 예약어 후보를 추출해 낼 수 있다. 표 5의 예시에서 등장횟수 순서로 3개의 언어단위를 뽑아낸다면 제1 내지 제3 언어단위가 추출될 수 있다. 감정어 등장 횟수를 기준으로 하면 제2 언어단위, 제3 언어단위 및 제1 언어단위의 순서대로 예약어 후보가 추천될 수 있다.In the example of Table 5, candidates for reserved words may be selected in the order of third language unit-> second language unit-> first language unit-> fourth language unit. If the controller 320 recommends two reserved word candidates, the third language unit and the second language unit may be recommended. If the control unit 320 recommends a language unit having a score of 3 million points or more as a reserved word candidate, the third language unit, the second language unit, and the first language unit are sequentially recommended as reserved word candidates. According to another embodiment of the present disclosure, the controller 320 extracts the first number of language units in order of the number of appearance of the language units, and then based on the number of times that the emotional words appear within a certain distance of the extracted language units (or the score of the emotional words). A predetermined number of reserved word candidates can be extracted in one order. In the example of Table 5, if three language units are extracted in the order of appearance, the first to third language units may be extracted. Based on the number of appearances of the emotional words, the reserved word candidates may be recommended in the order of the second language unit, the third language unit, and the first language unit.

또 다른 실시 예에 따르면, 제어부(320)는 언어단위의 등장횟수 순서로 제1 개수만큼의 언어단위들을 뽑아낸 뒤 뽑아낸 언어단위들의 일정거리 내에 감정어가 등장한 횟수(또는 감정어 점수)를 기준으로 한 순서대로 제2 개수(단, 제2 개수는 제1 개수 미만임)의 예약어 후보를 추출해 낼 수 있다. 표 5의 예시에서 등장횟수 순서로 3개의 언어단위를 뽑아낸다면 제1 내지 제3 언어단위가 추출될 수 있다. 감정어 등장 횟수를 기준으로 2개의 언어단위를 추출한다면 제2 언어단위 및 제3 언어단위의 순서대로 예약어 후보가 추천될 수 있다.According to another embodiment, the controller 320 extracts the first number of language units in order of the number of appearance of the language units, and then based on the number of times that the emotional words appear within a certain distance of the extracted language units (or the score of the emotional words). The reserved word candidates of the second number (where the second number is less than the first number) may be extracted in the order. In the example of Table 5, if three language units are extracted in the order of appearance, the first to third language units may be extracted. If two language units are extracted based on the number of occurrences of an emotional word, reserved word candidates may be recommended in the order of the second language unit and the third language unit.

제어부(320)는 기타 상술한 방식과 유사하거나 다소 상이한 방식으로, 예약어 후보 선택을 위한 점수가 단계 1810의 언어단위의 등장횟수와 양의 상관관계를 가지고 단계 1820의 미리 설정된 거리 이내에 감정어가 위치하는 언어단위의 등장횟수와도 양의 상관관계를 가지도록 예약어 후보 선택을 위한 점수를 설정하고 이 점수를 이용하여 예약어 후보를 추천할 수 있다.The control unit 320 is similar to or slightly different from the above-described method, in which a score for selecting a reserved word candidate is positively correlated with the number of occurrences of the language unit in step 1810, and an emotional word is located within a preset distance in step 1820. A score for selecting a reserved word candidate may be set to have a positive correlation with the number of occurrences of a language unit, and the reserved word candidate may be recommended using this score.

아울러 제어부(320)는 이미 예약어 집합에 포함된 언어단위는 예약어 후보로 추가되지 않도록 처리할 수 있다. 또한, 제어부(320)는 예약어 집합에 포함된 예약어와 실질적으로 동일한 언어단위는 예약어 후보로 추가되지 않도록 처리할 수 있다.In addition, the controller 320 may process a language unit that is already included in the reserved word set to not be added as a reserved word candidate. In addition, the controller 320 may process a language unit that is substantially the same as the reserved word included in the reserved word set so as not to be added as a reserved word candidate.

단계 1840에서 정보 제공 장치(300)는 단말(200)에게 예약어 후보 정보를 포함하는 예약어 선택 인터페이스를 생성하기 위한 인터페이스 정보를 제공한다. 인터페이스 정보는 예를 들어 html형식의 문서가 될 수 있다. 다른 실시 예에 따르면, 인터페이스 정보는 인터페이스를 생성하기 위해 필요한 동적 정보(추천되는 예약어 후보 등)만을 포함하고, 단말(200)은 이러한 동적 정보를 단말(200)에 미리 저장돼 있던 페이지 형태에 반영하는 방식으로 인터페이스를 포함한 페이지를 사용자에게 제공할 수 있다.In operation 1840, the information providing apparatus 300 provides the terminal 200 with interface information for generating a reserved word selection interface including reserved word candidate information. The interface information can be a document in html format, for example. According to another embodiment, the interface information includes only dynamic information (recommended reserved word candidates, etc.) necessary for generating an interface, and the terminal 200 reflects the dynamic information in a page form previously stored in the terminal 200. To provide users with a page with an interface.

제어부(320)는 예약어 후보 정보를 포함하는 예약어 선택 인터페이스를 포함하는 페이지를 생성하기 위한 페이지 정보를 생성하고 통신부(310)가 페이지 정보를 단말(200)에게 제공할 수 있다. 단말(200)은 사용자에게 해당 인터페이스를 포함하는 페이지를 렌더링하여 표시할 수 있다. 변형 실시 예에 따르면 시각적 페이지에 포함된 인터페이스 대신 소리에 의한 인터페이스 또는 현재까지 알려졌거나 미래에 알려질 기술에 의한 인터페이스가 제공될 수도 있다. 아래에서는 편의를 위해 시각적 페이지에 포함된 인터페이스가 제공되는 것으로 가정하고 설명한다.The controller 320 may generate page information for generating a page including a reserved word selection interface including reserved word candidate information, and the communication unit 310 may provide the page information to the terminal 200. The terminal 200 may render and display a page including the corresponding interface to the user. According to a modified embodiment, instead of an interface included in the visual page, an interface by sound or an interface by a technology known or known in the future may be provided. In the following description, it is assumed that an interface included in a visual page is provided for convenience.

도 19는 단계 1840에서 제공되는 인터페이스 정보에 따라 생성된 인터페이스(1900)의 예시이다.19 is an example of an interface 1900 generated according to the interface information provided in step 1840.

도 19를 참조하면, 인터페이스(1900)는 체크박스 열(column)(1910), 예약어 후보 열(1920), 상세보기 열(1930)로 이루어진 표를 포함한다. 또한 인터페이스(1900)는 예약어 추가 버튼(1940), 후보 삭제 버튼(1950), 보관함에 넣기 버튼(1960)을 포함할 수 있다. 사용자는 체크박스 열(1910)에서 원하는 예약어 후보(들)을 선택한 뒤 예약어 추가 버튼(1940), 후보 삭제 버튼(1950), 보관함에 넣기 버튼(1960) 중 어느 하나를 선택하여 예약어 후보를 처리할 수 있다. 어느 하나의 버튼이 선택되면 단말(200)은 사용자의 입력을 변환한 입력 정보를 정보 제공 장치(300)에게 전달할 수 있다. Referring to FIG. 19, the interface 1900 includes a table including a checkbox column 1910, a reserved word candidate column 1920, and a detail view column 1930. In addition, the interface 1900 may include a reserved word add button 1940, a candidate delete button 1950, and a put-in box 1960. The user selects the desired reserved word candidate (s) in the checkbox column 1910 and selects one of the add reserved word button 1940, the delete candidate button 1950, and the put in the archive button 1960 to process the reserved word candidate. Can be. When any one button is selected, the terminal 200 may transmit input information obtained by converting a user's input to the information providing apparatus 300.

정보 제공 장치(300)는 단말(200)로부터 전달받은 입력 정보에 따라 예약어 후보를 처리할 수 있다. 예를 들어, 사용자가 일부 예약어 후보(이하 '선택된 후보')의 체크박스(1910)를 선택하고 예약어 추가 버튼(1940)을 선택하면 이와 관련된 입력 정보를 전달받은 정보 제공 장치(300)의 제어부(320)는 예약어 집합에 선택된 후보들을 추가하고 예약어 후보 집합에서 선택된 후보들을 삭제할 수 있다. 제어부(320)는 향후 예약어 후보 추천 시 예약어 집합에 포함된 언어 단위(들) 및 예약어 집합에 포함된 언어 단위(들)과 실질적으로 동일한 언어단위(들)을 예약어 후보로 추천하지 않도록 제어한다. The information providing apparatus 300 may process the reserved word candidate according to the input information received from the terminal 200. For example, when a user selects a check box 1910 of some reserved word candidates (hereinafter, 'selected candidates') and selects an add reserved word button 1940, the controller of the information providing apparatus 300 that has received input information related thereto ( 320 may add the selected candidates to the reserved word set and delete the selected candidates from the reserved word candidate set. The controller 320 controls not to recommend the language unit (s) included in the reserved word set and the language unit (s) substantially the same as the language unit (s) included in the reserved word set as a reserved word candidate.

다른 예에 따르면, 사용자가 일부 예약어 후보의 체크박스(1910)를 선택하고 예약어 후보 삭제 버튼(1950)을 선택하면 이와 관련된 입력 정보를 전달받은 정보 제공 장치(300)의 제어부(320)는 예약어 제외 집합에 선택된 후보들을 추가하고 예약어 후보 집합에서 선택된 후보들을 삭제할 수 있다. 제어부(320)는 향후 예약어 후보 추천 시 예약어 제외 집합에 포함된 언어 단위(들) 및 예약어 제외 집합에 포함된 언어 단위(들)과 실질적으로 동일한 언어단위(들)을 예약어 후보로 추천하지 않도록 제어한다. According to another example, when a user selects a check box 1910 of some reserved word candidates and selects a reserved word candidate deletion button 1950, the controller 320 of the information providing apparatus 300 that receives the input information related thereto is excluded from the reserved words. Selected candidates may be added to the set and selected candidates may be deleted from the reserved word candidate set. The controller 320 controls not to recommend language unit (s) included in the reserved word exclusion set and language unit (s) substantially the same as the language unit (s) included in the reserved word exclusion set in the future as a reserved word candidate recommendation. do.

또 다른 예에 따르면, 사용자가 일부 예약어 후보의 체크박스(1910)를 선택하고 보관함에 넣기 버튼(1960)을 선택하면 이와 관련된 입력 정보를 전달받은 정보 제공 장치(300)의 제어부(320)는 예약어 후보 보관 집합에 선택된 후보들을 추가하고 예약어 후보 집합에서 선택된 후보들을 삭제할 수 있다. 제어부(320)는 향후 예약어 후보 추천 시 예약어 후보 보관 집합에 포함된 언어 단위(들) 및 예약어 후보 보관 집합에 포함된 언어 단위(들)과 실질적으로 동일한 언어단위(들)을 예약어 후보로 추천하지 않도록 제어한다. According to another example, when a user selects a check box 1910 of a candidate candidate for a reserved word and selects a put button 1960, the controller 320 of the information providing apparatus 300 that receives input information related to the reserved word is a reserved word. Selected candidates may be added to the candidate storage set and selected candidates may be deleted from the reserved word candidate set. The controller 320 may not recommend language unit (s) included in the reserved word candidate storage set and language unit (s) substantially the same as the language unit (s) included in the reserved word candidate storage set when the reserved word candidate is recommended in the future. To prevent it.

버튼들(1940, 1950, 1960) 대신 버튼과 유사한 다른 인터페이스 또는 버튼의 역할을 대신할 수 있는 다른 인터페이스가 활용될 수도 있다.Instead of the buttons 1940, 1950, 1960, another interface similar to the button or another interface that can take the role of the button may be utilized.

또한 제어부(320)는 예약어 집합에서 예약어를 일부 삭제하기 위한 인터페이스를 제공할 수 있다. 제어부(320)는 예약어 제외 집합의 일부 언어단위가 추천에서 제외되지 않도록 예약어 제외 집합에서 언어단위를 제거하기 위한 인터페이스를 제공할 수 있다. 제어부(320)는 예약어 후보 보관 집합의 언어단위를 도 19와 유사한 목록 인터페이스의 형태로 제공하고, 그 목록 인터페이스를 통해 사용자가 예약어 후보 보관 집합의 일부 언어단위를 예약어로 추가하도록 할 수 있다. 또한 사용자는 상기 목록 인터페이스를 통해 예약어 후보 보관 집합의 일부 언어단위를 예약어 제외 집합에 포함되도록 하고 예약어 후보 보관 집합에서 삭제할 수도 있다. 이 경우 해당 언어단위는 더이상 예약어 후보 보관 집합의 목록 인터페이스를 통해 제공되지 않으며 도 19의 인터페이스(1900)를 통해서도 예약어 후보로서 추천되지 않는다. 또한 사용자는 상기 목록 인터페이스를 통해 예약어 후보 보관 집합의 일부 언어단위를 단순히 예약어 후보 보관 집합에서 삭제할 수도 있다. 이 경우 해당 언어단위는 더이상 예약어 후보 보관 집합의 목록 인터페이스를 통해 제공되지 않지만 도 19의 인터페이스(1900)를 통해서 예약어 후보로서 추천될 수는 있다.In addition, the controller 320 may provide an interface for deleting some of the reserved words from the set of reserved words. The controller 320 may provide an interface for removing a language unit from the reserved word exclusion set such that some language units of the reserved word exclusion set are not excluded from the recommendation. The controller 320 may provide a language unit of the reserved word candidate storage set in the form of a list interface similar to that of FIG. 19, and allow the user to add some language units of the reserved word candidate storage set to the reserved word. In addition, the user may include some language units of the reserved word candidate set in the reserved word exclusion set and delete the reserved word candidate set through the list interface. In this case, the corresponding language unit is no longer provided through the list interface of the reserved word candidate storage set and is not recommended as the reserved word candidate through the interface 1900 of FIG. 19. In addition, the user may simply delete some language units of the reserved word candidate storing set from the reserved word candidate storing set through the list interface. In this case, the corresponding language unit is no longer provided through the list interface of the reserved word candidate storage set, but may be recommended as the reserved word candidate through the interface 1900 of FIG. 19.

또한 인터페이스(1900)는 예약어 후보가 한 페이지에 모두 보여지지 못할 경우에 대비하여 페이지 이동을 위한 이전 페이지 버튼(1970) 및/또는 다음 페이지 버튼(1980)을 포함할 수 있다. 이전 페이지 버튼(1970) 및/또는 다음 페이지 버튼(1980)은 실제 후보의 개수 및 현재 페이지 위치에 따라 선택적으로 제공될 수 있다. 아울러 이전 페이지 버튼(1970) 및/또는 다음 페이지 버튼(1980) 대신 스크롤을 통해 확장되는 인터페이스가 제공될 수도 있다. 일부 인터페이스에서는 1910,1920, 1930 항목을 포함하는 표만 스크롤되고 버튼들(1940, 1950, 1960, 1970, 1980)은 스크롤에서 제외될 수도 있다.In addition, the interface 1900 may include a previous page button 1970 and / or a next page button 1980 for moving pages in case the reserved word candidate is not displayed on one page. The previous page button 1970 and / or next page button 1980 may optionally be provided according to the number of actual candidates and the current page position. In addition, an interface that is expanded through scrolling may be provided instead of the previous page button 1970 and / or the next page button 1980. In some interfaces, only tables containing items 1910, 1920, and 1930 may be scrolled and buttons 1940, 1950, 1960, 1970, and 1980 may be excluded from scrolling.

사용자는 상세보기(1930)를 선택하여 예약어 후보가 추천된 배경이나 관련 정보를 상세히 조회할 수도 있다. 상세보기(1930)를 선택하였을 때 제어부(320)가 제공하는 인터페이스는 해당 예약어 후보에 대한 정보 및 해당 예약어 후보를 예약어로 추가하거나 예약어 후보 보관 집합에 추가하거나 예약어 제외 집합에 추가하기 위한 인터페이스를 포함할 수 있다.The user may select the detailed view 1930 to inquire in detail about the background or related information for which the reserved word candidate is recommended. When the detailed view 1930 is selected, the interface provided by the controller 320 includes information about the reserved word candidate and the interface for adding the reserved word candidate to the reserved word, adding to the reserved word candidate storage set, or adding the reserved word exclusion set. can do.

기타 예약어 후보를 관리하기 위한 인터페이스가 제어부(320)에 의하여 단말(200)을 통해 사용자에게 제공될 수 있다.An interface for managing other reserved word candidates may be provided to the user through the terminal 200 by the controller 320.

도 18로 돌아와서, 단계 1850에서 제어부(320)는 예약어를 선택하는 입력에 따라 선택된 예약어 후보를 예약어 집합에 추가할 수 있다. Returning to FIG. 18, in operation 1850, the controller 320 may add the selected reserved word candidate to the set of reserved words according to an input for selecting the reserved word.

도 13으로 돌아와서 단계 1330에서 제어부(320)는 객체 항목과 대표 속성 키워드 쌍에 대응하는 객체-키워드 연관도를 저장한다. Returning to FIG. 13, in operation 1330, the controller 320 stores an object-keyword association corresponding to the object item and the representative attribute keyword pair.

도 10은 본 명세서의 일 실시 예에 따르는 저장된 객체-키워드 연관도의 예시이다.10 is an illustration of a stored object-keyword association diagram according to one embodiment of the present disclosure.

도 10의 실시 예에서 객체 항목은 모두 m개(i1 내지 im)가 있고 대표 속성 키워드는 모두 n개(k1 내지 kn)가 있다. In the embodiment of FIG. 10, there are m object items (i 1 to i m ), and there are n object attributes keywords (k 1 to k n ).

예를 들어 객체 항목 i5와 대표 속성 키워드 k3의 객체-키워드 연관도는 w5,3이 된다. For example, the object-keyword association degree of the object item i 5 and the representative attribute keyword k 3 is w 5,3 .

단계 1330의 과정은 예를 들어 도 5 내지 도 8의 실시 예들 중 일부에 따라 수행되거나 이와 유사한 과정, 또는 이에 상응하는 과정으로 수행될 수 있다. 다른 실시 예에 따르면 단계 1330의 과정은 관리자의 입력으로 수행되거나 외부 시스템에서 결정된 객체-키워드 연관도를 네트워크 또는 저장매체를 통해 전달받아 수행될 수 있다.The process of step 1330 may be performed, for example, according to some of the embodiments of FIGS. 5 to 8, or a similar process, or a corresponding process. According to another embodiment of the present disclosure, the process of step 1330 may be performed by input of an administrator or by receiving an object-keyword association degree determined by an external system through a network or a storage medium.

도 5 내지 도 8의 실시 예에 대해서는 앞서 설명한 바 있으므로 반복된 설명을 생략한다. 다만 도 5 및 도 8의 단계 510에서 수행되는 과정은 도 13의 단계 1310의 과정과 실질적으로 동일하다. 따라서 단계 1330의 과정을 수행함에 있어서 도 5 내지 도 8의 실시 예들이 활용되더라도 단계 510의 과정은 다시 수행되지 않고 단계 1310의 결과가 재활용될 수 있다.Since the embodiments of FIGS. 5 to 8 have been described above, repeated descriptions thereof will be omitted. However, the process performed in step 510 of FIGS. 5 and 8 is substantially the same as the process of step 1310 of FIG. 13. Therefore, even when the embodiments of FIGS. 5 to 8 are used in performing the process of step 1330, the process of step 510 is not performed again and the result of step 1310 may be recycled.

단계 1340에서 제어부(320)는 대표 속성 키워드와 하위 키워드 쌍에 대응되는 연관 가중치 및 예약어와 하위 키워드 쌍에 대응되는 기본 예약어-하위 키워드 연관도를 이용하여 예약어와 대표 속성 키워드 쌍에 대응하는 기본 예약어-키워드 연관도를 저장부(330)에 저장한다. 단계 1340의 과정은 예를 들어 관리자의 입력에 따라 수행되거나 도 15 내지 도 17 중 어느 하나 이상의 실시 예에 따라 수행될 수 있다. In operation 1340, the control unit 320 uses the associated weight corresponding to the representative attribute keyword and the lower keyword pair, and the basic reserved word corresponding to the reserved word and the representative attribute keyword pair using the default reserved word-sub keyword association degree corresponding to the reserved word and the lower keyword pair. Store the keyword association in the storage unit 330. For example, the process of step 1340 may be performed according to an input of an administrator or according to one or more embodiments of FIGS. 15 to 17.

단계 1340의 과정 이전에, 또는 단계 1340의 과정 도중에 하위 키워드가 결정되고, 대표 속성 키워드와 하위 키워드 쌍에 대응되는 연관 가중치가 결정되고, 예약어와 하위 키워드 쌍에 대응되는 기본 예약어-하위 키워드 연관도가 결정되어야 한다. Before the process of step 1340, or during the process of step 1340, the sub-keyword is determined, the association weight corresponding to the representative attribute keyword and the sub-keyword pair is determined, and the default reserved word-sub-keyword association degree corresponding to the reserved word and the sub-keyword pair. Should be determined.

단계 1340의 과정에 사용되는 하위 키워드는 단계 1330의 과정 도중 단계 520이 수행되면서 결정될 수 있다. 이 경우 단계 520의 하위 키워드가 단계 1340에서 사용될 수 있다. 단계 1330에서 하위 키워드가 결정되지 않는 경우 도 5의 단계 520 및 그 이전의 과정과 동일하거나 유사한 과정을 통해 하위 키워드가 결정될 수 있다.The lower keyword used in the process of step 1340 may be determined while step 520 is performed during the process of step 1330. In this case, the subkeyword of step 520 may be used in step 1340. If the lower keyword is not determined in operation 1330, the lower keyword may be determined through the same or similar process as that of the operation 520 and the previous process of FIG. 5.

단계 1340의 과정에 사용되는 연관 가중치는 단계 1330의 과정 도중 단계 530이 수행되면서 결정될 수 있다. 이 경우 단계 530의 연관 가중치가 단계 1340에서 사용될 수 있다. 단계 1330에서 연관가중치가 결정되지 않는 경우 도 5의 단계 530 및 그 이전의 과정과 동일하거나 유사한 과정을 통해 연관 가중치가 결정될 수 있다.The association weight used in the process of step 1340 may be determined while step 530 is performed during the process of step 1330. In this case, the association weight of step 530 may be used in step 1340. If the association weight is not determined in operation 1330, the association weight may be determined through a process that is the same as or similar to that of operation 530 and the process of FIG. 5.

기본 예약어-하위 키워드 연관도는 예를 들어 예약어와 하위 키워드가 동일 또는 유사한 문맥에 등장하는 빈도를 고려하여 산출될 수 있다.The basic reserved word-sub keyword association may be calculated, for example, by considering the frequency of the reserved word and the lower keyword appearing in the same or similar context.

이하 도 15 내지 도 17에 대한 설명에서 예약어 C2과 대표 속성 키워드 k3 사이의 기본 예약어-키워드 연관도 v3,2를 획득하는 예시를 설명한다. 예를 들어 대표 속성 키워드 k3의 하위 키워드들이 B31 내지 B350이라고 가정한다. 예약어, 대표 속성 키워드 및 기본 예약어-키워드 연관도에 대해서는 도 11을 참조하여 상술한 예시를 참조한다. 예약어 Cj 및 하위 키워드 Bgh 쌍에 상응하는 기본 예약어-하위 키워드 연관도는 xj,h라고 표현한다. 하위 키워드 Bgh 및 대표 속성 키워드 kg 쌍에 상응하는 연관 가중치는 yg,h라고 표현한다. 예약어 Cj, 대표 속성 키워드 kg 및 하위 키워드 Bgh 조합에 상응하는 조정 예약어-하위 키워드 연관도는 xj,g,h라고 표현한다.Hereinafter, an example of obtaining the basic reserved word-keyword association degree v 3,2 between the reserved word C 2 and the representative attribute keyword k 3 will be described in the description of FIGS. 15 to 17. For example, it is assumed that sub keywords of the representative attribute keyword k 3 are B3 1 to B3 50 . For a reserved word, a representative attribute keyword, and a basic reserved word-keyword association, refer to the example described above with reference to FIG. 11. A basic reserved word-sub keyword association corresponding to the reserved word C j and the lower keyword Bg h pairs is expressed as x j, h . An association weight corresponding to the lower keyword Bg h and the representative attribute keyword k g pair is expressed as y g, h . The adjusted reserved word-subkey word association degree corresponding to the reserved word C j , the representative attribute keyword k g, and the lower keyword Bg h combination is expressed as x j, g, h .

도 15는 본 명세서의 제1 실시 예에 따르는 단계 1340의 상세 순서도이다.15 is a detailed flowchart of step 1340 according to the first embodiment of the present specification.

도 15를 참조하면, 단계 1510에서 제어부(320)는 기본 예약어-하위 키워드 연관도에 연관 가중치를 적용하여 조정 예약어-하위 키워드 연관도를 획득한다.Referring to FIG. 15, in step 1510, the controller 320 obtains an adjusted reserved word-sub keyword association degree by applying an association weight to a basic reserved word-sub keyword association degree.

단계 1510에서 제어부(320)는 각 예약어 및 하위 키워드 쌍에 대하여 상기 예약어 및 상기 하위 키워드 쌍에 상응하는 기본 예약어-하위 키워드 연관도에 상기 하위 키워드 및 대표 속성 키워드 쌍에 상응하는 연관 가중치를 적용하여 상기 대표 속성 키워드에 대한 각 예약어 및 하위 키워드 쌍에 상응하는 조정 예약어-하위 키워드 연관도를 획득할 수 있다.In operation 1510, the control unit 320 applies an association weight corresponding to the sub-keyword and the representative attribute keyword pair to a basic reserved word-sub-keyword association degree corresponding to the reserved word and the sub-keyword pair for each reserved word and the sub-keyword pair. The adjusted reserved word-sub keyword association degree corresponding to each reserved word and sub keyword pair for the representative attribute keyword may be obtained.

예를 들어 제어부(320)는 예약어가 C2일 때 하위 키워드 B34 및 대표 속성 키워드 k3 쌍에 상응하는 C2 - B34 간 조정 예약어-하위 키워드 연관도를 획득하기 위해서 예약어 C2 및 하위 키워드 B34 쌍에 상응하는 기본 예약어-하위 키워드 연관도 x2,4에 하위 키워드 B34 및 대표 속성 키워드 k3 쌍에 상응하는 연관 가중치 y3,4를 적용하여 조정 예약어-하위 키워드 연관도 x2,3,4를 획득할 수 있다. For example, when the reserved word is C 2 , the controller 320 may include C 2 − − corresponding to the lower keyword B 3 4 and the representative attribute keyword k 3 pair. The sub-keyword Relevancy sub keyword B3 4 and representing the property keywords x 2,4 k 3 ssang-B3 4 between adjustment reserved - to obtain a lower degree keywords associated reserved words C 2 and sub-keyword B3 4 ssang corresponding default reserved for the The adjusted reserved word- subkeyword association degree x 2,3,4 may be obtained by applying the corresponding association weight y 3,4 .

특히 연관 가중치의 적용 방식은 기본 예약어-하위 키워드 연관도 x2,4에 하위 키워드 B34 및 대표 속성 키워드 k3 쌍에 상응하는 연관 가중치 y3,4를 곱하는 방식이 될 수 있다. 예를 들어 제어부(320)는 예약어가 C2일 때 하위 키워드 B34 및 대표 속성 키워드 k3 쌍에 상응하는 C2 - B34 간 조정 예약어-하위 키워드 연관도 x2,3,4를 획득하기 위해서 예약어 C2 및 하위 키워드 B34 쌍에 상응하는 기본 예약어-하위 키워드 연관도 x2,4에 하위 키워드 B34 및 대표 속성 키워드 k3 쌍에 상응하는 연관 가중치 y3,4를 곱한 값인 (x2,4Хy3, 4)를 이용하여 조정 예약어-하위 키워드 연관도 x2,3,4를 획득할 수 있다. 다른 실시 예에서 제어부(320)는 곱하기 대신 조정 예약어-하위 키워드 연관도 x2,3,4가 x2,4 및 y3,4과 양의 상관 관계를 가지도록 하는 다른 연산/이용 방식을 적용한 함수 f(x2, 4,y3 , 4)를 활용하여 조정 예약어-하위 키워드 연관도 x2,3,4를 획득할 수도 있다. 또한 (x2,4Хy3, 4)를 조정 예약어-하위 키워드 연관도 x2,3,4로써 활용하는 방법 및 (x2,4Хy3, 4)에 기타 요인에 기반한 보정을 가하여 조정 예약어-하위 키워드 연관도 x2,3,4로써 활용하는 방법 모두 활용될 수 있다.In particular, the method of applying the association weight may be a method of multiplying the basic reserved word-sub keyword association degree x 2,4 by the association weight y 3,4 corresponding to the lower keyword B3 4 and the representative attribute keyword k 3 pairs. For example, when the reserved word is C 2 , the controller 320 may include C 2 − − corresponding to the lower keyword B 3 4 and the representative attribute keyword k 3 pair. B3 4 -adjusted Reserved word-subkey word association x 2,3,4 in order to obtain reserved keyword C 2 and subkeyword B3 4 base reserved word-subkey word association x 2,4 corresponding to subkeyword B3 4 and representative The adjusted reserved word-subkeyword association degree x 2,3,4 may be obtained using (x 2,4 Хy 3, 4 ), which is a value multiplied by the association weight y 3,4 corresponding to the attribute keyword k 3 pairs. In another embodiment, the control unit 320 may apply another operation / use scheme such that the adjusted reserved word-sub keyword association degree x 2,3,4 has a positive correlation with x 2,4 and y 3,4 instead of multiplication. The adjusted reserved word- subkeyword association degree x 2,3,4 may be obtained using the function f (x 2, 4 , y 3 , 4 ). We can also use (x 2,4 Хy 3, 4 ) as an adjusted reserved word-subkey association x 2,3,4 and add a correction based on other factors to (x 2,4 Хy 3, 4 ) -Any sub-keyword association x 2,3,4 can be used.

단계 1520에서 제어부(320)는 조정 예약어-하위 키워드 연관도 x2, 3,f의 누적값을 이용하여 예약어 C2 및 대표 속성 키워드 k3 간의 기본 예약어-키워드 연관도를 설정할 수 있다. 즉 예약어 C2 및 대표 속성 키워드 k3 간의 기본 예약어-키워드 연관도는

Figure pat00004
가 될 수 있다. 즉, 하위 키워드 B31 내지 B350에 대해 예약어 C2와의 기본 예약어-하위키워드 연관도 x2,f를 구한 뒤 각각에 대해 해당 하위 키워드에 대한 연관 가중치 y3,f를 반영하여 x2, 3,f를 구하고 x2, 3,f를 누적하여 예약어 C2 및 대표 속성 키워드 k3 간의 기본 예약어-키워드 연관도를 구할 수 있다. 다른 실시 예에 따르면, 예약어 C2 및 대표 속성 키워드 k3 간의 기본 예약어-키워드 연관도는
Figure pat00005
에 기타 요인에 의한 보정을 가한 값이 될 수 있다. 다른 실시 예에 따르면, 예약어 C2 및 대표 속성 키워드 k3 간의 기본 예약어-키워드 연관도는
Figure pat00006
과 양의 상관 관계를 가지는 값이 될 수 있다. 여기서는 하나의 대표속성 키워드에 연결돼 있는 하위 키워드가 50개인 것으로 가정하였으나, 대표속성 키워드에 연결돼 있는 하위 키워드의 개수가 달라지면 수식에서 f의 누적 범위가 50이 아닌 다른 값이 될 수 있을 것이다.In operation 1520, the controller 320 may set a basic reserved word-keyword association degree between the reserved word C 2 and the representative attribute keyword k 3 by using the cumulative value of the adjusted reserved word-sub keyword association degree x 2, 3, f . That is, the default reserved word-keyword association between the reserved word C 2 and the representative attribute keyword k 3 is
Figure pat00004
Can be That is, the sub-keyword B3 1 to base the reserved word with the reserved word C 2 for B3 50 - lower keyword Relevancy x 2, after obtaining a f for each reflecting the associated weight y 3, f for its sub-keyword x 2, 3 , to obtain a 2 x f, 3, f by accumulating the reserved words C 2 and the representative keyword attribute default reserved word between k 3 - can be obtained also associated keywords. According to another embodiment, the default reserved word-keyword association between the reserved word C 2 and the representative attribute keyword k 3 is
Figure pat00005
This can be a value added by correction by other factors. According to another embodiment, the default reserved word-keyword association between the reserved word C 2 and the representative attribute keyword k 3 is
Figure pat00006
Can be a positively correlated value. Here, it is assumed that there are 50 sub keywords connected to one representative attribute keyword. However, if the number of sub keywords connected to the representative attribute keyword is different, the cumulative range of f may be different from 50 in the formula.

도 16은 본 명세서의 다른 실시 예에 따르는 단계 1340의 상세 순서도이다. 도 16의 단계 1510, 단계 1520의 과정은 도 15를 참조하여 상술한 과정과 동일하므로 반복하지 않는다. 16 is a detailed flowchart of step 1340 according to another embodiment of the present disclosure. Processes of steps 1510 and 1520 of FIG. 16 are the same as those described above with reference to FIG. 15 and thus will not be repeated.

도 16을 참조하면 단계 1530에서 제어부(320)는 특정 예약어에 대응하는 대표 키워드들 중 상기 예약어와 상기 대응하는 대표 키워드 쌍의 기본 예약어-키워드 연관도가 기준 기본 예약어-키워드 연관도 이하인 대표 키워드에 대한 기본 예약어-키워드 연관도를 삭제할 수 있다. 특정 예약어에 대응하는 대표 키워드들은 상기 특정 예약어와의 관계에서 기본 예약어-키워드 연관도가 설정돼 있는 키워드들을 가리킨다. 기준 기본 예약어-키워드 연관도는 미리 설정돼 있을 수 있다. 다른 실시 예에 따르면 기준 기본 예약어-키워드 연관도는 특정 예약어에 대응하는 기본 예약어-키워드 연관도의 평균값을 이용하여 설정되거나 특정 예약어에 대응하는 기본 예약어-키워드 연관도를 크기 순서대로 배열했을 때 특정 순위의 기본 예약어-키워드 연관도를 이용하여 설정될 수 있다. 기타 특정 예약어에 대응하는 기본 예약어-키워드 연관도들과 양의 상관관계를 가지는 특정 값이 기준 기본 예약어-키워드 연관도가 될 수 있다. 기준 기본 예약어-키워드 연관도는 예약어에 따라 달리 설정될 수도 있고, 모든 예약어에 대해 동일하게 설정될 수도 있다. 기본 예약어-키워드 연관도가 삭제되는 것은 예약어와 대표키워드 사이의 연관도가 없는 것으로 설정되는 것이다. 제어부는 연관도를 0으로 설정할 수도 있고, 기본 예약어-키워드 연관도를 나타내는 리스트(어레이, 기타 자료구조로 대체될 수 있음)에서 상기 예약어와 상기 대응하는 대표 키워드 쌍의 기본 예약어-키워드 연관도에 관한 정보를 삭제하는 방식으로 기본 예약어-키워드 연관도를 삭제할 수도 있다. 기타 기본 예약어-키워드 연관도가 삭제되었음 (또는 연관관계가 삭제되었음)을 알리는 정보를 부가하는 방식이 사용될 수도 있다.Referring to FIG. 16, in operation 1530, the controller 320 may determine a representative keyword whose basic reserved word-keyword association degree of the reserved word and the corresponding representative keyword pair among the representative keywords corresponding to a specific reserved word is equal to or less than a reference basic reserved word-keyword association degree. You can delete the default reserved word-keyword associations. Representative keywords corresponding to a specific reserved word indicate keywords in which a basic reserved word-keyword association degree is set in relation to the specific reserved word. The reference default reserved word-keyword association may be preset. According to another embodiment, the reference basic reserved word-keyword association is set by using an average value of the basic reserved word-keyword association corresponding to the specific reserved word or when the basic reserved word-keyword association corresponding to the specific reserved word is arranged in size order. The default reserved word-keyword association degree of the rank may be set. The reference basic reserved word-keyword association may be a specific value having a positive correlation with the basic reserved word-keyword associations corresponding to other specific reserved words. The reference basic reserved word-keyword association degree may be set differently according to the reserved word or may be set identically for all reserved words. If the default reserved word-keyword association is deleted, it is set as no association between the reserved word and the representative keyword. The control unit may set the association degree to 0, and the base reserved word-keyword association degree of the reserved word and the corresponding representative keyword pair in the list indicating the basic reserved word-keyword association degree (which may be replaced by an array or other data structure). The default reserved word-keyword association may be deleted by deleting the related information. A method of adding information indicating that the other basic reserved word-keyword association has been deleted (or the association has been deleted) may be used.

단계 1530의 과정을 거치면 비교적 미세한 연관도를 가지는 기본 예약어-키워드 연관도가 삭제되어(즉, 연관도가 없는 것으로 설정됨) 지나치게 복잡한 연산을 수행하거나 사용자/관리자에게 실질적으로 의미가 없는 연관관계가 표시되지 않도록 할 수 있다.In step 1530, the default reserved word-keyword association with a relatively fine association is deleted (i.e., set as no association) to perform an overly complex operation or to make the association practically meaningless to the user / administrator. It can be suppressed.

도 17은 본 명세서의 또 다른 실시 예에 따르는 단계 1340의 상세 순서도이다.17 is a detailed flowchart of step 1340 according to another embodiment of the present disclosure.

도 17의 단계 1510, 단계 1520의 과정은 도 15를 참조하여 상술한 과정과 동일하므로 설명을 반복하지 않는다. 도 17의 단계 1530의 과정은 도 16을 참조하여 상술한 과정과 동일하므로 설명을 반복하지 않는다.Processes of steps 1510 and 1520 of FIG. 17 are the same as those described above with reference to FIG. 15, and thus descriptions thereof will not be repeated. Since the process of step 1530 of FIG. 17 is the same as the process described above with reference to FIG. 16, description thereof is not repeated.

단계 1540에서 제어부(320)는 삭제되지 않고 남아 있는 기본 예약어-키워드 연관도를 노멀라이즈 할 수 있다. 예를 들어 특정 대표 속성 키워드에 연결되어 저장된 기본 예약어-키워드 연관도의 평균값을 특정 범위에 포함되도록 하기 위하여 특정 대표 속성 키워드에 연결되어 저장된 기본 예약어-키워드 연관도들에 일정한 계수를 곱하여 상승시키거나 감소시킬 수 있다. 다른 예를 들어, 특정 대표 속성 키워드에 연결되어 저장된 기본 예약어-키워드 연관도의 총합이 특정 범위에 포함되도록 하기 위하여 특정 대표 속성 키워드에 연결되어 저장된 기본 예약어-키워드 연관도들에 일정한 계수를 곱하여 상승시키거나 감소시킬 수 있다. 즉, 어떠한 특정 대표 속성 키워드에 높은 값의 기본 예약어-키워드 연관도가 집중되어 어떠한 예약어를 선택하더라도 해당 특정 대표 속성 키워드만이 추천/사용되거나 특정 대표 속성 키워드가 거의 사용되지 않는 경우를 방지하기 위해 적당한 조정이 수행될 수 있다.In operation 1540, the controller 320 may normalize the basic reserved word-keyword association that remains without being deleted. For example, in order to include the average value of the default reserved word-keyword association associated with a specific representative attribute keyword in a specific range, the default reserved word-keyword association associated with a specific representative attribute keyword is multiplied by a predetermined coefficient or raised. Can be reduced. In another example, the base reserved word-keyword association associated with a specific representative keyword is stored by multiplying by a predetermined coefficient so that the sum of the basic reserved word-keyword associations stored and linked to the specific representative attribute keyword is included in a specific range. Can be reduced or reduced. That is, in order to prevent a case in which a specific representative attribute keyword has a high default reserved word-keyword association, and no reserved word is selected, only that specific representative attribute keyword is recommended / used or a specific representative attribute keyword is rarely used. Appropriate adjustments can be made.

다른 실시 예에 따르면 단계 1540에서 제어부(320)는 기본 예약어-키워드 연관도에 일정 계수를 곱하는 대신 일정 계수를 더하거나 로그, 제곱 등의 연산을 결합하여 노멀라이즈를 수행할 수도 있다. 또다른 실시 예에 따르면 특정 기준값 이상의 기본 예약어-키워드 연관도들만을 일부 감소시키거나 특정 기준값 이하의 기본 예약어-키워드 연관도들만을 일부 상승시키는 방식으로 노멀라이즈를 수행할 수도 있다. According to another embodiment, in step 1540, instead of multiplying the basic reserved word-keyword association by a predetermined coefficient, the controller 320 may add a predetermined coefficient or combine operations such as logarithmic and squared to perform normalization. According to another embodiment, the normalization may be performed by partially reducing only basic reserved word-keyword associations above a certain reference value or partially increasing only basic reserved word-keyword associations below a certain reference value.

또 다른 실시 예에 따르면, 단계 1540에서 제어부(320)는 특정 예약어에 연결되어 저장된 기본 예약어-키워드 연관도의 평균값(또는 총합)을 특정 범위에 포함되도록 노멀라이즈를 수행할 수도 있다.According to another embodiment, in operation 1540, the controller 320 may perform normalization to include an average value (or sum) of basic reserved word-keyword associations stored in connection with a specific reserved word in a specific range.

도 17의 과정 중 단계 1530이 생략되고 기본 예약어-키워드 연관도 노멀라이즈 과정이 수행되는 변형 예도 가능하다.A modified example in which step 1530 is omitted in the process of FIG. 17 and a basic reserved word-keyword association degree normalization process is performed is also possible.

단계 1350에서 통신부(310)가 단말(200)로부터 수신 예약어를 수신하여 획득하고 수신 예약어를 제어부(320)에게 전달한다.In operation 1350, the communication unit 310 receives and acquires a reserved reserved word from the terminal 200, and transmits the reserved reserved word to the control unit 320.

수신 예약어는 단말(200)이 검색 사용자로부터 수신한 예약어이다. 단말(200)은 음성 입력을 전기적 신호(음성 신호)로 변환하여 검색 장치(300)에게 전달할 수 있다. 검색 장치(300)의 제어부(320)는 음성 신호를 분석하여 텍스트로 변환하고 변환 텍스트를 예약어에 매칭시킬 수 있다. 제어부(320)는 또한 음성 신호를 분석하여 음성의 억양이나 높낮이, 빠르기, 호흡 상태 등을 분석하여 정황 정보로서 활용할 수도 있다.The reserved reserved word is a reserved word received by the terminal 200 from the search user. The terminal 200 may convert the voice input into an electrical signal (voice signal) and transmit the converted voice signal to the search apparatus 300. The controller 320 of the search apparatus 300 may analyze the voice signal, convert the voice signal into text, and match the converted text with the reserved word. The controller 320 may also analyze the speech signal and analyze the speech intonation, height, speed, respiratory state, and the like, and use the context information.

다른 실시 예에 따르면 단말(200)은 음성 입력을 텍스트로 변환하여 변환 텍스트를 검색 장치(300)에게 전달할 수 있다. 단말(200)은 수신한 음성 입력의 억양이나 높낮이, 빠르기, 호흡 상태 등을 분석하여 분석 정보를 검색 장치(300)에게 전달할 수 있다. 검색 장치(300)는 분석 정보를 일종의 정황 정보로서 활용할 수도 있다.According to another exemplary embodiment, the terminal 200 may convert the voice input into text and transmit the converted text to the search apparatus 300. The terminal 200 may analyze the intonation, the height, the speed, the breathing state, etc. of the received voice input and transmit the analysis information to the search apparatus 300. The search apparatus 300 may utilize the analysis information as a kind of context information.

단계 1360에서 제어부(320)는 객체-키워드 연관도 및 기본 예약어-키워드 연관도를 이용하여 상기 수신 예약어와 각 객체 항목 쌍에 대응하는 예약어-객체 연관도를 획득한다. 단계 1360의 과정은 도 9의 단계 940의 방식 또는 도 12의 방식에 따라 수행될 수 있다. 동일한 내용의 설명은 생략한다.In operation 1360, the controller 320 obtains a reserved word-object association corresponding to the received reserved word and each object item pair by using an object-keyword association and a basic reserved word-keyword association. The process of step 1360 may be performed according to the method of step 940 of FIG. 9 or the method of FIG. 12. The description of the same content is omitted.

단계 1370에서 제어부(320)는 수신 예약어에 대응하는 예약어-객체 연관도에 따라 객체 항목을 제공할 수 있다. 단계 1370의 과정은 단계 950의 과정과 동일한 방식으로 수행될 수 있다. 동일한 설명은 생략한다.In operation 1370, the controller 320 may provide an object item according to a reserved word-object association degree corresponding to the received reserved word. The process of step 1370 may be performed in the same manner as the process of step 950. The same description is omitted.

도 14는 본 명세서의 또 다른 실시 예에 따르는 정보 제공 과정의 순서도이다.14 is a flowchart illustrating an information providing process according to another embodiment of the present specification.

도 14의 단계 1310, 1320, 1330, 1340, 1350, 1360, 1370은 도 13의 단계 1310, 1320, 1330, 1340, 1350, 1360, 1370과 동일하므로 동일한 설명은 반복하지 않는다.Since steps 1310, 1320, 1330, 1340, 1350, 1360, and 1370 of FIG. 14 are the same as steps 1310, 1320, 1330, 1340, 1350, 1360, and 1370 of FIG. 13, the same description is not repeated.

도 14에서 추가된 단계 1333은 대표 속성 키워드와 하위 키워드가 결정된 이후 어느 시점에라도 수행될 수 있다. 예를 들어 단계 1333은 단계 1330과 동시에/병행하여 수행될 수도 있고 단계 1333의 과정이 단계 1330 도중에 수행될 수도 있다. Step 1333 added in FIG. 14 may be performed at any time after the representative attribute keyword and the lower keyword are determined. For example, step 1333 may be performed concurrently / in parallel with step 1330 and the process of step 1333 may be performed during step 1330.

단계 1333에서 제어부(320)는 대표 속성 키워드와 하위 키워드 간의 연관 가중치를 저장한다. 연관 가중치가 설정되는 과정이 단계 1330에서 수행되지 않는 경우 도 5의 단계 530의 과정과 동일 유사한 과정을 통해 대표 속성 키워드와 하위 키워드 간의 연관 가중치가 설정될 수 있다. 다른 실시 예에 따르면 제어부(320)는 단계 1330에서 설정된 연관 가중치를 불러오는 방식으로 대표 속성 키워드와 하위 키워드 간의 연관 가중치를 저장할 수도 있다.In operation 1333, the controller 320 stores an association weight between the representative attribute keyword and the lower keyword. If the process of setting the association weight is not performed in step 1330, the association weight between the representative attribute keyword and the lower keyword may be set through a process similar to the process of step 530 of FIG. 5. According to another embodiment, the controller 320 may store the association weight between the representative attribute keyword and the lower keyword in a manner of calling the association weight set in operation 1330.

단계 1337에서 제어부(320)는 하위 키워드와 예약어 사이의 기본 예약어-하위키워드 연관도를 획득한다. In operation 1337, the controller 320 obtains a basic reserved word-subkeyword association degree between the lower keyword and the reserved word.

제어부(320)는 예를 들어 하위 키워드가 예약어와 동일 또는 유사한 문맥에 등장하는 빈도를 고려하여 예약어와 하위 키워드 사이의 연관도를 판단할 수 있다. 예를 들어 특정 문장에서 키워드 A의 주변에 등장하는 단어들은 다른 문서에서도 키워드 A와 연관된 단어의 주변에 등장할 수 있으리라고 볼 수 있다. For example, the controller 320 may determine an association degree between the reserved word and the lower keyword in consideration of the frequency of the lower keyword appearing in the same or similar context as the reserved word. For example, words appearing around keyword A in a particular sentence may appear around words associated with keyword A in other documents.

"큰 맘 먹고 여행을 갔으나 7월이라 날씨가 너무 더워서 고생했다.""I went on a trip with a big heart, but I suffered because the weather was so hot in July."

"큰 맘 먹고 여행을 갔으나 7월이라 날씨가 너무 습해서 고생했다.""I went on a trip with a big heart, but the weather was too humid for July."

위 두 문장을 살펴보면 같은 문맥에서 "더워서"라는 단어가 "습해서"라는 단어로 대체되었다. 제어부(320)는 "덥다"와 "습하다"가 서로 연관된 단어라는 것을 유추할 수 있다.Looking at the above two sentences, the word "hot" is replaced with "wet" in the same context. The controller 320 may infer that "hot" and "wet" are words associated with each other.

"큰 맘 먹고 여행을 갔으나 7월이라 날씨가 너무 더워서 고생했다.""I went on a trip with a big heart, but I suffered because the weather was so hot in July."

"큰 맘 먹고 휴가를 갔으나 7월이라 날씨가 너무 더워서 고생했다.""I went on vacation after eating a big heart, but I suffered because the weather was so hot in July."

마찬가지로 제어부(320)는 위 두 문장을 통해 "여행"과 "휴가"가 연관된 단어라는 것을 유추할 수 있다.Similarly, the control unit 320 may infer that the words "travel" and "vacation" are related words through the above two sentences.

"큰 맘 먹고 여행을 갔으나 7월이라 날씨가 너무 더워서 고생했다.""I went on a trip with a big heart, but I suffered because the weather was so hot in July."

"큰 맘 먹고 여행을 갔으나 8월이라 날씨가 너무 더워서 고생했다.""I went on a trip with a big heart, but I suffered because the weather was so hot in August."

마찬가지로 제어부(320)는 위 두 문장을 통해 "7월"과 "8월"이 연관된 단어라는 것을 유추할 수 있다.Similarly, the control unit 320 may infer that the words "July" and "August" are related through the above two sentences.

제어부(320)는 이전에 수집된 문서들을 통해 "덥다"와 "습하다"가 서로 연관된 단어이고 "7월"과 "8월"이 서로 연관된 단어이며 "여행"과 "휴가"가 서로 연관된 단어임을 저장해 둘 수 있다 이후 아래와 같은 문장을 수집한다고 가정한다.The controller 320 indicates that words "hot" and "wet" are related words, "July" and "August" are related words, and "travel" and "vacation" are words related to each other through previously collected documents. You can save it.

"큰 맘 먹고 휴가를 갔으나 7월이라 날씨가 너무 습해서 고생했다.""I went on vacation with a big heart, but the weather was too humid for July."

"큰 맘 먹고 여행을 갔으나 8월이라 날씨가 너무 더워서 힘들었다.""I went on a trip with a big heart but it was hard because the weather was so hot in August."

두 문장이 동일한 문맥은 아니지만 덥다"와 "습하다"가 서로 연관된 단어이고 "7월"과 "8월"이 서로 연관된 단어이며 "여행"과 "휴가"가 서로 연관된 단어임을 알고 있다면, 제어부(320)는 위 문장을 통해 "고생했다"와 "힘들었다" 역시 연관된 단어임을 학습할 수 있을 것이다.If the two sentences are not in the same context but know that "hot" and "wet" are related words, "July" and "August" are related words, and "travel" and "vacation" are words related to each other, the control unit 320 ) Can be learned from the above sentence that "toil" and "tough" are also related words.

동일/유사한 문맥에 등장하는 빈도가 높은 키워드 쌍은 서로 연관도가 높은 것으로 판단할 수 있다. 아울러 두 키워드가 등장하는 문맥의 유사도가 높을수록 두 키워드 사이의 연관도가 높은 것으로 판단할 수 있다. 제어부(320)는 수집되는 문서들을 이용해 학습을 진행하여 키워드들 사이의 연관도를 설정하고, 설정된 키워드 간 연관도와 문장의 문맥을 이용하여 해당 문장에서 등장하는 키워드들의 연관도를 설정하는 식으로 키워드 간 연관도 판단의 정확성을 높일 수 있다.Keyword pairs with high frequency appearing in the same / similar context may be determined to be highly related to each other. In addition, it may be determined that the higher the similarity of the context in which the two keywords appear, the higher the correlation between the two keywords. The controller 320 proceeds with learning using the collected documents to set the degree of association between keywords, and sets the degree of association between keywords appearing in the sentence using the context between the set keywords and the context. The correlation between the two can increase the accuracy of the judgment.

이와 유사한 학습 방식으로 NNLM(Neural Net Language Model), RNNLM(Recurrent Neural Net Language Model), word2vec, 스킵그램(skipgram) 및 CBOW(Continuous Bag-of-Words)방식이 알려져 있다. 특히 word2vec을 이용할 경우 word2vec은 문서들을 이용해 학습하여 각 키워드들을 벡터에 대응시키고, 두 키워드 사이의 유사도는 두 벡터의 코사인 유사도 계산을 통해 파악할 수 있다.Similar learning methods are known as the Neural Net Language Model (NNLM), Recurrent Neural Net Language Model (RNNNLM), word2vec, skipgram, and Continuous Bag-of-Words (CBOW). In particular, when using word2vec, word2vec learns from documents and maps each keyword to a vector, and the similarity between two keywords can be determined by calculating the cosine similarity of the two vectors.

도 20은 본 명세서의 일 실시 예에 따르는 용어 계층을 나타낸 도면이다.20 is a diagram illustrating a term hierarchy according to an embodiment of the present specification.

도 13 또는 도 14의 과정을 완료하면 예약어들(C1~Cq)과 대표 속성 키워드들(k1~kn), 그리고 하위 키워드들(BX1~BX50) 사이의 계층 관계가 설정된다. When the process of FIG. 13 or 14 is completed, a hierarchical relationship between reserved words C 1 to C q , representative attribute keywords k 1 to k n , and sub keywords BX 1 to BX 50 is set. .

예약어와 대표 속성 키워드 사이에는 기본 예약어-키워드 연관도가 설정되고, 대표 속성 키워드와 하위 키워드 사이에는 연관가중치가 설정된다. 이러한 계층관계를 이용해 제어부(320)는 예약어에 따라 알맞은 객체를 추천해 주거나 새로운 예약어 후보를 선정하는 등의 동작을 수행할 수 있다. 또한 도 20의 계층 관계는 새로운 자료가 반영되어 도 13, 도 14와 같은 과정을 반복하면서 학습을 통해 계층 관계가 수정되거나 보완될 수 있다.A basic reserved word-keyword association is set between the reserved word and the representative attribute keyword, and an association weight is set between the representative attribute keyword and the sub-keyword. Using such a hierarchical relationship, the controller 320 may recommend an appropriate object or select a new reserved word candidate according to the reserved word. In addition, the hierarchical relationship of FIG. 20 may reflect new materials, and thus, the hierarchical relationship may be modified or supplemented through learning while repeating the processes of FIGS. 13 and 14.

도 21은 본 발명의 일 실시예에 따른 가상 입력 인터페이스 프로그램 설치 과정의 순서도이다.21 is a flowchart illustrating a virtual input interface program installation process according to an embodiment of the present invention.

단계 2110에서 단말(200)은 정보 제공 장치(300)에게 패키지 요청 메시지를 송신한다. 패키지 요청 메시지는 가상 입력 인터페이스 프로그램을 요청하는 메시지이다. 단계 2120에서 정보 제공 장치(300)는 단말(200)에게 가상 입력 인터페이스 프로그램(패키지)를 전달한다.In step 2110, the terminal 200 transmits a package request message to the information providing apparatus 300. The package request message is a message for requesting a virtual input interface program. In operation 2120, the information providing apparatus 300 delivers a virtual input interface program (package) to the terminal 200.

단계 2130에서 단말(200)은 수신한 가상 입력 인터페이스 프로그램(패키지)을 설치한다. 설치가 불필요하고 수신한 가상 입력 인터페이스 프로그램을 그대로 실행할 수 있는 경우 단계 2130은 생략될 수 있다.In step 2130, the terminal 200 installs the received virtual input interface program (package). If installation is unnecessary and the received virtual input interface program can be executed as it is, step 2130 may be omitted.

도 22는 본 발명의 일 실시예에 따른 음성입력 처리 방법을 수행하는 패키지의 인터페이스 페이지를 나타내는 도면이다.22 is a diagram illustrating an interface page of a package that performs a voice input processing method according to an embodiment of the present invention.

도 4, 도 21 및 도 22 를 참조하면, 본 발명의 일 실시예에 따른 음성입력 처리 방법을 수행하는 인터페이스 페이지는 도 21의 단말에서의 패키지 설치(2130)에 따라 단말에 설치된 패키지의 인터페이스 페이지 일 수 있다.4, 21 and 22, the interface page for performing the voice input processing method according to an embodiment of the present invention is the interface page of the package installed in the terminal in accordance with the package installation 2130 in the terminal of FIG. Can be.

도 22를 참조하면, 본 발명의 일 실시예에 따른 음성 입력 처리 방법을 수행하는 인터페이스 페이지(2200)는 제목표시부(2201), 인기 키토크 표시부(2202), 분야 표시부(2203), 텍스트 입력부(2204) 및 통합 음성 입력 버튼(2205)를 포함한다.Referring to FIG. 22, an interface page 2200 for performing a voice input processing method according to an embodiment of the present invention includes a title display unit 2201, a popular key talk display unit 2202, a field display unit 2203, and a text input unit ( 2204 and integrated voice input button 2205.

단말(200)의 표시부(220)는 인터페이스 페이지(2200)를 표시한다.The display unit 220 of the terminal 200 displays the interface page 2200.

제목표시부(2201)는 패키지의 제목을 표시한다. 또한 제목표시부(2201)는 공지사항이나 키토크에 대한 힌트등을 표시한다. 키토크에 대한 힌트는 각 분야별로 설정된 속성에 대한 설정값과 속성에 대한 키토크일 수 있다.The title display portion 2201 displays the title of the package. In addition, the title display unit 2201 displays a notice or a hint about key talk. The hint for the key talk may be a key value for the property and a setting value for the property set for each field.

예를 들어, 분야가 스타인 경우 속성에 대한 설정값은 외모, 성격, 분위기, 지성미, 특이취향, 신조어 등이고, 외모에 대한 키토크는 "잘생긴", "귀여운", "화려한", "눈부신", "눈에띄는", "예쁜", "우아한", "육감적인", "관능적인", "빛나는", "통통한", "말끔한", "풋풋한", "아름다운" 등일 수 있다.For example, if the field is a star, the set values for the attributes are appearance, personality, mood, intelligence, singularity, coinage, etc., and the keystrokes for appearance are "handsome", "cute", "gorgeous", "dazzling" "," Noticeable "," pretty "," elegant "," sensuous "," sensual "," shiny "," chubby "," clean "," fresh "," beautiful "and the like.

인기 키토크 표시부(2202)는 현재 인기있는 키토크와 키토크가 적용되는 분야를 표시한다. 예를 들어 인기 키토크 표시부(2202)는 키토크 "커플을 위한"과 키토크가 적용되는 분야 "영화"를 함께 표시할 수 있다. 인기 여부는 예를 들어 본 서비스 이용자들의 선택 빈도 또는 타 서비스의 인기검색어 등의 정보를 이용하여 판단할 수 있다. The popular key talk display unit 2202 displays a key key and a field to which the key talk is currently applied. For example, the popular key talk display unit 2202 may display the key talk "for couples" and the field "movie" to which the key talk is applied. Popularity may be determined using, for example, information on the frequency of selection of the service users or popular search words of other services.

분야 표시부(2203)는 분야를 표시한다. 분야는 키토크를 기반으로 정보가 추출되는 항목일 수 있다. 분야는 예를 들어, 스타, 영화, 방송, 웹툰, 맛집, 숙박, 요리, 와인, 아트, 맥주, 여행(국내), 액티비티(국내), 옷, 화장품, 헤어, 선물, 음악, 도서, 쥬얼리, 시계, 패션소품, 아이웨어, 신발, 간편식품, 편의시설, 프랜차이즈음식점, 커피전문점, 가방, 향수 등의 항목일 수 있다. 분야 표시부(2203)는 분야와 함께 분야에 대한 이미지를 함께 표시할 수 있으며, 도면에는 미도시되었으나 사용자가 선택할 수 있는 작은 이미지 또는 글자로 구성된 분야 목록을 표시한다.The field display unit 2203 displays a field. The field may be an item from which information is extracted based on key talk. For example, star, film, broadcasting, webtoon, restaurant, lodging, cooking, wine, art, beer, travel (domestic), activities (domestic), clothes, cosmetics, hair, gifts, music, books, jewelry, Items such as watches, fashion accessories, eyewear, shoes, convenience foods, convenience facilities, franchise restaurants, coffee shops, bags, perfumes, and the like. The field display unit 2203 may display an image of the field together with the field, and displays a field list including a small image or text that is not shown in the drawing but may be selected by the user.

텍스트 입력부(2204)는 음성 대신 사용자로부터 키토크에 대한 텍스트를 입력받거나 사용자가 즐겨찾기로 설정한 키토크를 표시한다.The text input unit 2204 receives the text for the key talk from the user instead of the voice or displays the key talk set by the user as a favorite.

통합 음성 입력 버튼(2205)이 선택되면 본 발명의 일 실시예에 따른 음성입력 처리 방법을 수행하는 패키지가 설치된 단말(200)은 사용자로부터 음성 입력을 수신하기 위한 동작을 수행한다. 즉, 단말(200)의 제어부(250)는 입력부(210)를 작동시키고 표시부(220)를 통해 음성 입력이 작동중임을 표시한다. 예를 들어, 단말(200)은"듣고 있어"등으로 사용자에게 음성 입력이 작동중임을 표시할 수 있다. 입력부(210)는 마이크등의 음성 입력 장치를 포함할 수 있다. 단말(200)의 입력부(210)는 사용자로부터 음성으로 입력어를 입력받으며 입력어는 단어이거나 구문이거나 문장일 수 있다.   When the integrated voice input button 2205 is selected, the terminal 200 in which the package for executing the voice input processing method according to an embodiment of the present invention is installed performs an operation for receiving a voice input from the user. That is, the controller 250 of the terminal 200 operates the input unit 210 and indicates that the voice input is in operation through the display unit 220. For example, the terminal 200 may indicate that the voice input is operating to the user by listening to, for example. The input unit 210 may include a voice input device such as a microphone. The input unit 210 of the terminal 200 receives an input word by voice from a user, and the input word may be a word, a phrase, or a sentence.

패키지가 설치된 단말(200)은 입력된 음성을 인식하고 텍스트로 변환한다. 입력된 음성을 인식하고 텍스트로 변환하는 것은 패키지가 설치된 단말(200)의 제어부(250)에 의해 수행되거나 정보 제공 장치(300)가 단말(200)에 입력된 음성에 대한 데이터를 수신하고 음성을 인식한 후 텍스트로 변환하여 변환된 텍스트를 단말(200)로 송신하는 방식으로 수행될 수도 있다.The terminal 200 installed with the package recognizes the input voice and converts it into text. Recognizing the input voice and converting the input voice into text is performed by the controller 250 of the terminal 200 in which the package is installed or the information providing apparatus 300 receives data about the voice input to the terminal 200 and receives the voice. After recognizing and converting the text, the converted text may be transmitted to the terminal 200.

패키지가 설치된 단말(200)의 제어부(250)는 변환된 텍스트로부터 분야 관련 단어를 추출하거나 키토크를 추출한다. 예를 들어 사용자가 "그 맛있고 깔끔한 맛집 없냐"라고 음성으로 입력한 경우 패키지가 설치된 단말(200)의 제어부(250)는 사용자가 음성으로 입력한 내용에서 키토크 "깔끔한"과 키토크 "맛있는"과 유사한 "맛있고"를 추출하고 분야에 해당하는"맛집"을 추출한다.The control unit 250 of the terminal 200 in which the package is installed extracts a field related word or a key talk from the converted text. For example, if the user inputs a voice saying, "Is there a delicious and clean restaurant", the control unit 250 of the terminal 200 in which the package is installed has a key talk "clean" and a key talk "delicious" in the user input by voice. Extract "delicious" similar to and extract the "delicious" corresponding to the field.

패키지가 설치된 단말(200)은 추출된 키토크를 기반으로 각 분야에 해당하는 정보를 추출한다. 추출되는 정보는 각 분야에 해당하는 객체 정보일 수 있다. The terminal 200 installed with the package extracts information corresponding to each field based on the extracted key talk. The extracted information may be object information corresponding to each field.

단말(200)은 각 분야별로 각 분야에 해당하는 객체 정보를 표시할 수 있다. 예를 들어 분야가 "맛집"인 경우, 정보제공장치(300)가 제공한 "맛집" 분야에서의 맛집 정보가 표시되며, 분야가 "연예인"인 경우 영화배우나 탤런트, 가수 등의 이미지와 이름이 표시될 수 있다.The terminal 200 may display object information corresponding to each field for each field. For example, if the field is "delicious", restaurant information in the "delicious" field provided by the information providing device 300 is displayed, if the field is "celebrity" image and name of the actor, talent, singer, etc. Can be displayed.

도 23은 도 22의 통합 음성 입력 버튼을 선택하고 음성을 입력한 결과를 표시하는 인터페이스 페이지를 나타내는 도면이다.FIG. 23 is a diagram illustrating an interface page displaying a result of inputting a voice by selecting the integrated voice input button of FIG. 22.

인터페이스 페이지(2300)는 결과제목표시부(2301), 추천키토크표시부(2302), 결과표시부(2303), 텍스트 입력부(2204) 및 통합 음성 입력 버튼 (2205)를 포함한다.The interface page 2300 includes a result goal display unit 2301, a recommendation key talk display unit 2302, a result display unit 2303, a text input unit 2204, and an integrated voice input button 2205.

결과제목표시부(2301)는 검색결과임을 나타내는 제목을 표시한다.The result target time section 2301 displays a title indicating that the search result.

텍스트 입력부(2204) 및 통합 음성 입력 버튼(2205)은 도 22에서 설명된 바 있으므로 반복된 설명을 생략한다.Since the text input unit 2204 and the integrated voice input button 2205 have been described with reference to FIG. 22, repeated descriptions thereof will be omitted.

추천키토크표시부(2302)는 추천하는 키토크를 표시한다.The recommended key torque display portion 2302 displays the recommended key torque.

예를 들어, "그 맛있고 깔끔한 맛집 없냐"라고 사용자로부터 음성 입력을 받아 결과를 출력하는 경우, "메뉴가 많은"또는 "근처에 볼거많은"과 같은 키토크가 추천될 수 있다. 또한 추천되는 키토크와 추천되는 분야가 함께 표시될 수 있다.For example, if a user inputs a voice input from a user saying "Is there a delicious and clean restaurant" and outputs a result, a key talk such as "a lot of menus" or "a lot to see nearby" may be recommended. In addition, the recommended key talk and the recommended field may be displayed together.

결과표시부(2303)는 분야표시부(2306)와 전체보기버튼(2037)을 포함한다.The result display unit 2303 includes a field display unit 2306 and a full view button 2037.

분야표시부(2306)는 우선순위별로 배열된 분야와 해당 분야와 관련되어 검색된 객체의 수를 표시한다. 우선순위가 가장 높은 분야가 가장 윗쪽 또는 가장 왼쪽에 배치될 수 있다. 사용자는 각각의 결과표시부(2303)를 터치한 채로 윗쪽으로 스크롤하거나 왼쪽으로 스크롤하여 다른 분야에 대한 결과를 검색할 수 있다.The field display unit 2306 displays a field arranged by priority and the number of objects searched in relation to the field. The highest priority sector may be placed at the top or leftmost. The user may scroll upwards or scroll leftwards while touching each result display unit 2303 to search for results for other fields.

사용자가 입력한 음성 입력에 분야를 직접 가리키는 용어가 있는 경우 해당 분야의 우선순위가 가장 높으므로 해당 분야의 결과표시부가 가장 윗쪽 또는 가장 왼쪽에 배치된다.If there is a term directly pointing to a field in the voice input input by the user, the field has the highest priority, and the result display unit of the field is disposed at the top or left side.

사용자가 입력한 분야 다음에 검색되는 분야 또는 사용자가 입력한 분야가 없는 경우 검색된 분야는 사용자가 입력한 키토크와의 관련성에 따라 배치된다.If there is no field searched after the field input by the user or a field input by the user, the searched field is arranged according to the relevance to the key talk input by the user.

키토크는 각 분야에 대해 모두 별도로 설정된다. 예를 들어, "맛집"이라는 분야에는 "개운한/감칠맛나는/소박한/재미있는/이색적인"등의 키토크가, "스타"라는 분야에는 "빛나는/눈에띄는/예쁜/말끔한/건강미넘치는"등의 키토크가 설정될 수 있다.Keytalk is set separately for each field. For example, in the field of "Gourmet", key talks such as "Refreshing, delicious, simple, fun, exotic," and "Star", in the field, Keytalk can be set.

각각의 분야별로 키토크를 설정하기 위해 사용되는 기초 문서들의 문서풀이 각각의 분야별로 별도로 관리되며 각 분야별로 해당 기초 문서들의 문서풀로부터 키토크, 대표속성키워드, 하위키워드가 각각 추출되어 설정된다. 또는 관리자가 각각의 분야별로 키토크를 설정할 수도 있다. Document pools of basic documents used to set keytalk for each field are managed separately for each field, and keytalk, representative attribute keywords, and subkeywords are extracted and set from document pools of the corresponding base documents for each field. Alternatively, the administrator can set keytalk for each field.

기초 문서들의 문서풀로부터 키토크, 대표속성키워드, 하위키워드가 각각 추출되고 설정되는 방법은 전술한 바와 같으므로 설명을 생략한다.Since the method of extracting and setting the key talk, the representative attribute keyword, and the sub-keyword, respectively, from the document pool of the basic documents is as described above, a description thereof will be omitted.

각 분야의 기초 문서들의 문서풀은 서로 동일할 수도 있고 각 분야별로 다를 수도 있다.Document pools of basic documents in each field may be identical to each other or may be different for each field.

해당 분야에 사용자가 음성으로 입력한 키토크가 많이 설정되어 있을수록 해당 분야가 상위 또는 좌측에 배치된다.As more keytalks are input by the user in the field, the field is placed on the upper or left side.

정보제공장치(300)의 제어부(320)는 각 분야에 대하여 전술한 기본 키토크와 대표 속성 키워드간의 연관도 예약어-키워드 연관도 및 객체와 대표 속성 키워드 간의 연관도 객체-키워드 연관도를 산출하고, 이를 이용하여 키토크와 각 객체 항목 쌍에 대응하는 예약어-객체 연관도를 획득한다.The control unit 320 of the information providing apparatus 300 calculates the association degree reserved word-keyword association degree and the association degree object-keyword association degree between the basic key talk and the representative attribute keyword described above for each field, Using this, keyword and reserved word-object association corresponding to each object item pair are obtained.

정보제공장치(300)의 제어부(320)는 분야별로 획득된 예약어-객체 연관도에 따라 예약어-객체 연관도가 높은 순서대로 객체 항목을 단말(200)에 제공할 수 있다.The controller 320 of the information providing apparatus 300 may provide the object items to the terminal 200 in order of the high degree of the reserved word-object association according to the reserved word-object association degree obtained for each field.

사용자가 전체보기버튼(2307)을 선택하면 해당 분야에 대한 결과가 모두 출력된다.When the user selects the all view button 2307, all the results for the corresponding field are output.

도 24는 도 23의 결과표시부에서 전체표시버튼이 선택된 경우 표시되는 인터페이스 페이지를 나타내는 도면이다.FIG. 24 is a diagram illustrating an interface page displayed when the entire display button is selected in the result display unit of FIG. 23.

인터페이스 페이지(2400)는 분야제목표시부(2401), 추천키토크표시부(2302), 결과표시부(2403), 텍스트 입력부(2204) 및 통합 음성 입력 버튼 (2205), 재검색버튼(2404) 및 추가 입력 검색 버튼(2405), 선택사항표시부(2406)을 포함한다.The interface page 2400 includes a field target time unit 2401, a recommendation key torque display unit 2302, a result display unit 2403, a text input unit 2204 and an integrated voice input button 2205, a rescan button 2404, and additional input search. A button 2405 and a choice display portion 2406 are included.

분야제목표시부(2401)는 결과가 검색된 분야를 표시한다.The field target time section 2401 displays a field in which a result is found.

추천키토크표시부(2302)는 도 23에서 설명된 바 있으므로 반복된 설명을 생략한다.Since the recommended key torque display unit 2302 has been described with reference to FIG. 23, repeated description thereof will be omitted.

선택사항표시부(2406)는 분야에 대한 검색 결과를 사용자가 선택한 선택사항대로 출력하기 위한 선택사항을 표시한다. 예를 들어 선택사항표시부(2406)는 "내주변" 또는 "메뉴", "맛"등의 선택사항을 표시할 수 있는데 "내주변"이 선택되는 경우 내 주변의 맛집을 출력한다. 또한 선택사항으로 "메뉴"가 선택되는 경우 "담백한", "얼큰한", "칼칼한", "고소한", "매운" 등의 항목을 추가적으로 반영한 결과가 출력될 수 있다.The option display unit 2406 displays options for outputting a search result for a field as a user's selection. For example, the option display unit 2406 may display options such as "inside", "menu", "taste", and the like, when "inside" is selected, outputs restaurants around me. In addition, when "menu" is selected as an option, a result of additionally reflecting items such as "light", "ulk", "sharp", "savory", and "spicy" may be output.

선택사항은 분야별로 다를 수 있다. 예를 들어 맛집 분야에는 "메뉴", "맛"등의 선택사항이 표시되나 숙박 분야에는 "숙소타입", "부대시설" 등의 선택사항이 표시될 수 있다. Options may vary by sector. For example, options such as “menu” and “taste” may be displayed in the restaurant area, but options such as “stay type” and “subsidiary facilities” may be displayed in the accommodation field.

이러한 선택 사항은 관리자에 의해 설정되거나 정보제공장치(300)의 제어부(320)에 의하여 설정될 수 있다.These options may be set by the administrator or by the controller 320 of the information providing apparatus 300.

사용자는 재검색버튼(2404)을 선택하여 현재 분야에 해당하는 새로운 키토크를 음성으로 입력할 수 있다. 이 경우 패키지가 설치된 단말(200)의 제어부(250)는 사용자가 입력한 음성을 전술한 바와 같이 텍스트로 변환하고 키토크를 추출하며, 분야에 대한 별도의 판단없이 현재 분야에서만 사용자가 입력한 키토크를 사용하여 정보를 요청하고 출력한다. 예를 들어 현재 분야가 사용자가 "그 맛있고 깔끔한 맛집 없냐"라고 입력하여 출력된 "맛집"분야인 경우, 사용자는 재검색버튼(2404)을 선택하여"얼큰하고 감칠맛나는 찌개"라고 입력하고 패키지가 설치된 단말(200)은 현재의 "맛집" 분야에서 키토크 "얼큰한"과 "감칠맛나는"과 관련된 정보를 정보제공장치(300)에 요청하고 그 결과를 수신하여 출력할 수 있다.The user selects the rescan button 2404 to input a new key talk corresponding to the current field by voice. In this case, the control unit 250 of the terminal 200 in which the package is installed converts the voice input by the user into text as described above, extracts the key torque, and the key input by the user only in the current field without separate judgment on the field. Use torque to request and print information. For example, if the current field is the "Gourmet" field outputted by the user entering "Is there a delicious and neat restaurant", the user selects the rescan button 2404 and enters "big and tasty stew" and the package is installed. The terminal 200 may request the information providing apparatus 300 for information related to the key talks “ulk” and “tasteful” in the current “delicious” field, and receive and output the result.

또한 단말(200)이 사용자가 입력한 음성을 텍스트로 변환하고 키토크를 추출하는 것이 아니라, 사용자가 입력한 음성을 텍스트로 변환하고 변환된 텍스트를 정보 제공 장치(300)에 송신하거나 사용자가 입력한 음성 데이터를 정보 제공 장치(300)에 송신하고 정보 제공 장치(300)가 수신된 음성 데이터를 텍스트로 변환한 후 정보 제공 장치(300)가 단말(200)에 의해 변환된 텍스트 또는 정보 제공 장치(300)가 변환한 텍스트에서 키토크를 추출하고 키토크와 관련된 정보를 검색할 수도 있다.In addition, the terminal 200 does not convert the voice input by the user into text and extracts the key talk, but converts the voice input by the user into text and transmits the converted text to the information providing apparatus 300 or input by the user. Transmitting one voice data to the information providing apparatus 300, the information providing apparatus 300 converts the received voice data into text, and then the information providing apparatus 300 is the text or information providing apparatus converted by the terminal 200 Keytalk may be extracted from the text converted by 300, and information related to the keytalk may be retrieved.

사용자는 추가 입력 검색 버튼(2405)을 선택하여 현재 분야에 해당하는 추가적인 키토크를 음성으로 입력할 수 있다. 이 경우 패키지가 설치된 단말(200)의 제어부(250)는 사용자가 입력한 음성을 전술한 바와 같이 텍스트로 변환하고 키토크를 추출하며, 분야에 대한 별도의 판단없이 현재 분야에서만 사용자가 기존에 입력한 키토크에 사용자가 추가로 입력한 음성에서 추출된 키토크를 추가하여 정보제공장치(300)에 키토크와 관련된 정보를 요청하고 그 결과를 수신하여 출력할 수 있다.The user may select an additional input search button 2405 to input additional key talk corresponding to the current field by voice. In this case, the controller 250 of the terminal 200 in which the package is installed converts the voice input by the user into text as described above, extracts the key talk, and the user inputs the existing field only in the current field without any judgment on the field. By adding a key torque extracted from a voice additionally input by a user to a key talk, the information providing apparatus 300 may request information related to the key talk, and receive and output the result.

예를 들어 현재 분야가 사용자가 "그 맛있고 깔끔한 맛집 없냐"라고 입력하여 출력된 "맛집" 분야인 경우, 사용자는 추가 입력 검색 버튼(2405)을 선택하여 "담백한 국수"라고 추가적으로 입력하고 패키지가 설치된 단말은 현재의 "맛집" 분야에서 키토크 "맛있는", "깔끔한", "담백한" 및 "국수"와 관련된 정보를 추출하여 출력할 수 있다.For example, if the current field is the "Gourmet" field outputted by the user inputting "Is there a delicious and clean restaurant", the user selects the additional input search button 2405 and additionally enters "Plain Noodle" and the package is installed. The terminal may extract and output information related to keytalks "delicious", "clean", "light" and "noodle" in the current "delicious" field.

또한 단말(200)이 사용자가 입력한 음성을 텍스트로 변환하고 키토크를 추출하는 것이 아니라, 사용자가 입력한 음성을 텍스트로 변환하고 변환된 텍스트를 정보 제공 장치(300)에 송신하거나 사용자가 입력한 음성 데이터를 정보 제공 장치(300)에 송신하고 정보 제공 장치(300)가 수신된 음성 데이터를 텍스트로 변환한 후 정보 제공 장치(300)가 단말(200)에 의해 변환된 텍스트 또는 정보 제공 장치(300)가 변환한 텍스트에서 키토크를 추출하고 새롭게 추출된 키토크 및 기존의 키토크와 관련된 정보를 검색할 수도 있다.In addition, the terminal 200 does not convert the voice input by the user into text and extract the key talk, but instead converts the voice input by the user into text and transmits the converted text to the information providing apparatus 300 or input by the user. The text or information providing apparatus converted by the terminal 200 after the voice data is transmitted to the information providing apparatus 300 and the information providing apparatus 300 converts the received voice data into text. The keytor may be extracted from the text converted by 300, and the newly extracted keytalk and information related to the existing keytalk may be searched.

도 25는 본 발명의 일 실시예에 따른 음성입력 처리 방법을 나타내는 순서도이다.25 is a flowchart illustrating a voice input processing method according to an embodiment of the present invention.

도 25를 참조하면, 단계 S2000에서 단말(200)의 제어부(250)는 통합입력버튼이 선택되었는지 판단한다.Referring to FIG. 25, in step S2000, the controller 250 of the terminal 200 determines whether the integrated input button is selected.

통합입력 버튼이 선택되면, 단계 S2501에서 단말(200)의 입력부(210)는 사용자로부터 음성 입력을 수신한다.When the integrated input button is selected, the input unit 210 of the terminal 200 receives a voice input from the user in step S2501.

단계 S2502에서 단말(200)의 제어부(250)는 수신된 음성입력을 텍스트로 변환한다. 또는 단말(200)의 제어부(250)는 수신된 음성입력을 정보 제공 장치(300)에 송신하고 정보 제공 장치(300)가 텍스트로 변환한 결과를 수신하여 키토크를 추출할 수도 있다.In operation S2502, the controller 250 of the terminal 200 converts the received voice input into text. Alternatively, the controller 250 of the terminal 200 may transmit the received voice input to the information providing apparatus 300 and receive a result of the information providing apparatus 300 converted into text to extract key talk.

단계 S2503에서 변환된 텍스트에서 키토크 및 분야 관련 단어를 추출한다.Keytalk and field related words are extracted from the converted text in step S2503.

단계 S2504에서 단말(200)의 제어부(250)는 키토크 관련 정보를 정보 제공 장치(300)에 요청하고 그 결과를 수신하고 단말(200)에 표시한다. 또는 정보 제공 장치(300)가 단말(200)로부터 수신한 음성입력을 텍스트로 변환하고 변환된 텍스트에서 키토크와 분야 관련 단어를 추출하고 추출된 키토크 및 분야와 관련한 정보를 검색한 후 그 결과를 단말(200)로 송신할 수도 있다.In operation S2504, the control unit 250 of the terminal 200 requests the information providing apparatus 300 for key talk related information, receives the result, and displays the result on the terminal 200. Alternatively, the information providing apparatus 300 converts a voice input received from the terminal 200 into text, extracts a keytalk and a field related word from the converted text, searches for information related to the extracted keytalk and the field, and then the result. May be transmitted to the terminal 200.

수신된 결과는 분야별로 표시된다.Received results are displayed by sector.

단계 S2505에서 특정 분야에 속하는 정보 전체보기버튼이 선택되었는지 판단된다. 전체보기버튼이 선택되면 단계 S2506에서 단말(200)의 제어부(300)는 분야에 해당하는 정보를 모두 표시하고 재검색 버튼, 통합 입력 버튼, 추가 입력검색버튼을 표시한다.In operation S2505, it is determined whether the information all view button belonging to the specific field is selected. When the overview button is selected, the control unit 300 of the terminal 200 displays all information corresponding to the field in step S2506 and displays a re-search button, an integrated input button, and an additional input search button.

단계 S2507에서 재검색버튼이 선택되었는지 판단된다.In step S2507, it is determined whether the rescan button is selected.

재검색 버튼이 선택되면 단계 S2508에서 단말(200)은 사용자로부터 음성 입력을 수신한다.If the re-search button is selected, the terminal 200 receives a voice input from the user in step S2508.

단계 S2509에서 단말(200)의 제어부(250)는 입력된 음성입력을 텍스트로 변환하고 키토크를 추출한다. 또는 단말(200)의 제어부(250)는 수신된 음성입력을 정보 제공 장치(300)에 송신하고 정보 제공 장치(300)가 텍스트로 변환한 결과를 수신하여 키토크를 추출할 수도 있다.In step S2509, the control unit 250 of the terminal 200 converts the input voice input into text and extracts the key talk. Alternatively, the controller 250 of the terminal 200 may transmit the received voice input to the information providing apparatus 300 and receive a result of the information providing apparatus 300 converted into text to extract key talk.

단계 S2510에서 단말(200)은 해당 분야에 대하여 추출된 키토크 관련 정보를 정보 제공 장치에 요청하고, 그 결과를 단말(200)에 표시한다. 또는 정보 제공 장치(300)가 단말(200)로부터 수신한 음성입력을 텍스트로 변환하고 변환된 텍스트에서 키토크를 추출하고 해당 분야에서만 추출된 키토크 관련 정보를 검색한 후 그 결과를 단말(200)로 송신할 수도 있다.In operation S2510, the terminal 200 requests the information providing apparatus for the key talk related information extracted for the corresponding field, and displays the result on the terminal 200. Alternatively, the information providing apparatus 300 converts a voice input received from the terminal 200 into text, extracts a keytalk from the converted text, searches for keytalk related information extracted only from a corresponding field, and then outputs the result to the terminal 200. Can also be sent.

단계 S2507에서 재검색 버튼이 선택되지 않은 경우, 단계 S2511에서 추가입력검색버튼이 선택되었는지 판단된다.If the rescan button is not selected in step S2507, it is determined whether the additional input search button is selected in step S2511.

추가입력검색버튼이 선택되면 단계 S2512에서 단말(200)은 사용자로부터 음성 입력을 수신한다.If the additional input search button is selected, the terminal 200 receives a voice input from the user in step S2512.

단계 S2513에서 단말(200)의 제어부(250)는 입력된 음성을 텍스트로 변환하고 키토크를 추출한다. 또는 단말(200)의 제어부(250)는 수신된 음성입력을 정보 제공 장치(300)에 송신하고 정보 제공 장치(300)가 텍스트로 변환한 결과를 수신하여 키토크를 추출할 수도 있다.In step S2513, the control unit 250 of the terminal 200 converts the input voice into text and extracts the key talk. Alternatively, the control unit 250 of the terminal 200 may transmit the received voice input to the information providing apparatus 300 and receive a result of the information providing apparatus 300 converting the text to extract the key talk.

단계 S2514에서 단말(200)은 해당 분야에 대하여 추출된 키토크 및 기존의 키토크와 관련된 정보를 정보제공장치에 요청하고, 그 결과를 단말(200)에 표시한다. 또는 정보 제공 장치(300)가 단말(200)로부터 수신한 음성입력을 텍스트로 변환하고 변환된 텍스트에서 키토크를 추출하고 해당 분야에서만 추출된 키토크 관련 정보를 검색한 후 그 결과를 단말(200)로 송신할 수도 있다.In step S2514, the terminal 200 requests the information providing apparatus for the information related to the extracted key talk and the existing key talk, and displays the result on the terminal 200. Alternatively, the information providing apparatus 300 converts the voice input received from the terminal 200 into text, extracts the key talk from the converted text, searches for the key torque related information extracted only from the corresponding field, and then outputs the result to the terminal 200. Can also be sent.

이 때, 처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.At this point, it will be understood that each block of the flowchart illustrations and combinations of flowchart illustrations may be performed by computer program instructions. These computer program instructions may be mounted on a processor of a general purpose computer, special purpose computer, or other programmable data processing equipment, such that the instructions being performed through the processor of the computer or other programmable data processing equipment are described in the flowchart block (s). It creates a means to perform the functions. These computer program instructions may be stored in a computer usable or computer readable memory that can be directed to a computer or other programmable data processing equipment to implement functionality in a particular manner, and thus the computer usable or computer readable memory. It is also possible for the instructions stored in to produce an article of manufacture containing instruction means for performing the functions described in the flowchart block (s). Computer program instructions may also be mounted on a computer or other programmable data processing equipment, such that a series of operating steps may be performed on the computer or other programmable data processing equipment to create a computer-implemented process to create a computer or other programmable data. Instructions for performing the processing equipment may also provide steps for performing the functions described in the flowchart block (s).

또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.In addition, each block may represent a portion of a module, segment, or code that includes one or more executable instructions for executing a specified logical function (s). It should also be noted that in some alternative implementations, the functions noted in the blocks may occur out of order. For example, the two blocks shown in succession may in fact be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending on the corresponding function.

이 때, 본 실시 예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.In this case, the term '~ part' used in the present embodiment refers to software or a hardware component such as an FPGA or an ASIC, and '~ part' performs certain roles. However, '~' is not meant to be limited to software or hardware. '~ Portion' may be configured to be in an addressable storage medium or may be configured to play one or more processors. Thus, as an example, '~' means components such as software components, object-oriented software components, class components, and task components, and processes, functions, properties, procedures, and the like. Subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables. The functionality provided within the components and the 'parts' may be combined into a smaller number of components and the 'parts' or further separated into additional components and the 'parts'. In addition, the components and '~' may be implemented to play one or more CPUs in the device or secure multimedia card.

본 명세서가 속하는 기술분야의 통상의 지식을 가진 자는 본 명세서가 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 명세서의 범위는 상기 상세한 설명보다는 후술하는 특허청구의 범위에 의하여 나타내어지며, 특허청구의 범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 명세서의 범위에 포함되는 것으로 해석되어야 한다.Those skilled in the art will appreciate that the present disclosure may be embodied in other specific forms without changing the technical spirit or essential features thereof. Therefore, it should be understood that the embodiments described above are exemplary in all respects and not restrictive. The scope of the present specification is indicated by the following claims rather than the detailed description, and all changes or modifications derived from the meaning and scope of the claims and the equivalent concept are included in the scope of the present specification. Should be interpreted.

한편, 본 명세서와 도면에는 본 명세서의 바람직한 실시 예에 대하여 개시하였으며, 비록 특정 용어들이 사용되었으나, 이는 단지 본 명세서의 기술 내용을 쉽게 설명하고 발명의 이해를 돕기 위한 일반적인 의미에서 사용된 것이지, 본 명세서의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시 예 외에도 본 명세서의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 명세서가 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다. On the other hand, the present specification and drawings have been described with respect to the preferred embodiments of the present specification, although specific terms are used, it is only used in a general sense to easily describe the technical content of the present specification and to help the understanding of the invention, It is not intended to limit the scope of the specification. It will be apparent to those skilled in the art that other modifications based on the technical spirit of the present disclosure can be implemented in addition to the embodiments disclosed herein.

Claims (18)

음성 입력을 수신하기 위한 통합 입력 버튼을 표시하는 표시부;
상기 통합 입력 버튼이 선택되면 사용자로부터 상기 음성 입력을 수신하는 입력부;
상기 입력된 음성을 텍스트로 변환하고 상기 텍스트에서 키토크 및 분야 관련 단어를 추출하고 상기 키토크와 관련된 정보를 정보 제공 장치에 요청하는 제어부;를 포함하며,
상기 키토크와 관련된 정보는 분야별로 표시되는 음성 입력 처리 장치.
A display unit displaying an integrated input button for receiving a voice input;
An input unit configured to receive the voice input from a user when the integrated input button is selected;
And a controller for converting the input voice into text, extracting key talk and field-related words from the text, and requesting an information providing device for information related to the key talk.
And the information related to the key talk is displayed for each field.
제 1항에 있어서,
상기 키토크는 분야별로 설정되는 음성 입력 처리 장치.
The method of claim 1,
And the key talk is set for each field.
제 1항에 있어서,
상기 키토크와 관련된 정보는 상기 분야와 상기 분야에 해당하는 정보에 대한 전체보기버튼과 함께 표시되는 음성 입력 처리 장치.
The method of claim 1,
And information related to the key talk is displayed together with a view button for the field and information corresponding to the field.
제 3항에 있어서,
상기 분야를 선택하거나 상기 전체보기버튼을 선택하면 상기 분야의 모든 정보와 재검색 버튼 및 추가 입력 검색 버튼이 추가로 표시되는 음성 입력 처리 장치.
The method of claim 3, wherein
When the field is selected or the all view button is selected, all information, a re-search button, and an additional input search button of the field are additionally displayed.
제 4항에 있어서,
상기 입력부는 상기 재검색 버튼 또는 상기 추가 입력 검색 버튼이 선택되면 상기 사용자로부터 음성 입력을 수신하는 음성 입력 처리 장치.
The method of claim 4, wherein
And the input unit receives a voice input from the user when the re-search button or the additional input search button is selected.
제 5항에 있어서,
상기 재검색 버튼이 선택되면 상기 제어부는 상기 입력된 음성을 텍스트로 변환하고 상기 텍스트에서 키토크를 추출하는 음성 입력 처리 장치.
The method of claim 5,
And when the rescan button is selected, the controller converts the input voice into text and extracts key talk from the text.
제 6항에 있어서,
상기 제어부는 상기 분야에서 상기 키토크와 관련된 정보를 상기 정보 제공 장치에 요청하는 음성 입력 처리 장치.
The method of claim 6,
And the control unit requests the information providing device for information related to the key talk in the field.
제 5항에 있어서,
상기 추가 입력 검색 버튼이 선택되면 상기 제어부는 상기 입력된 음성을 텍스트로 변환하고 상기 텍스트에서 추가 키토크를 추출하는 음성 입력 처리 장치.
The method of claim 5,
And when the additional input search button is selected, the controller converts the input voice into text and extracts additional key talk from the text.
제 8항에 있어서,
상기 제어부는 상기 분야에서 상기 키토크 및 상기 추가 키토크와 관련된 정보를 상기 정보 제공 장치에 요청하는 음성 입력 처리 장치.
The method of claim 8,
And the controller requests the information providing device for information related to the key talk and the additional key talk in the field.
음성 입력을 수신하기 위한 통합 입력 버튼을 표시하는 단계;
상기 통합 입력 버튼이 선택되면 사용자로부터 상기 음성 입력을 수신하는 단계;
상기 입력된 음성을 텍스트로 변환하고 상기 텍스트에서 키토크 및 분야 관련 단어를 추출하고 상기 키토크와 관련된 정보를 정보 제공 장치에 요청하는 단계;를 포함하며,
상기 키토크와 관련된 정보는 분야별로 표시되는 음성 입력 처리 방법.
Displaying an integrated input button for receiving a voice input;
Receiving the voice input from a user when the integrated input button is selected;
Converting the input voice into text, extracting a keytalk and a field related word from the text, and requesting an information providing device for information related to the keytalk;
And the information related to the key talk is displayed for each field.
제 9항에 있어서,
상기 키토크는 분야별로 설정되는 음성 입력 처리 방법.
The method of claim 9,
And the key talk is set for each field.
제 9항에 있어서,
상기 키토크와 관련된 정보는 상기 분야와 상기 분야에 해당하는 정보에 대한 전체보기버튼과 함께 표시되는 음성 입력 처리 방법.
The method of claim 9,
And the information related to the key talk is displayed together with a view button for the field and information corresponding to the field.
제 12항에 있어서,
상기 분야를 선택하거나 상기 전체보기버튼을 선택하면 상기 분야의 모든 정보와 재검색 버튼 및 추가 입력 검색 버튼이 추가로 표시되는 음성 입력 처리 방법.
The method of claim 12,
The voice input processing method of selecting the field or selecting the all view button further displays all information of the field, a research button, and an additional input search button.
제 13항에 있어서,
상기 재검색 버튼 또는 상기 추가 입력 검색 버튼이 선택되면 상기 사용자로부터 음성 입력을 수신하는 음성 입력 처리 방법.
The method of claim 13,
And receiving the voice input from the user when the re-search button or the additional input search button is selected.
제 14항에 있어서,
상기 재검색 버튼이 선택되면 상기 입력된 음성을 텍스트로 변환하고 상기 텍스트에서 키토크를 추출하는 음성 입력 처리 방법.
The method of claim 14,
And when the rescan button is selected, converts the input voice into text and extracts key talk from the text.
제 15항에 있어서,
상기 분야에서 상기 키토크와 관련된 정보를 상기 정보 제공 장치에 요청하는 음성 입력 처리 방법.
The method of claim 15,
The voice input processing method of requesting the information providing device for information related to the key talk in the field.
제 14항에 있어서,
상기 추가 입력 검색 버튼이 선택되면 상기 입력된 음성을 텍스트로 변환하고 상기 텍스트에서 추가 키토크를 추출하는 음성 입력 처리 방법.
The method of claim 14,
And when the additional input search button is selected, converts the input voice into text and extracts additional key talk from the text.
제 17항에 있어서,
상기 분야에서 상기 키토크 및 상기 추가 키토크와 관련된 정보를 상기 정보 제공 장치에 요청하는 음성 입력 처리 방법.
The method of claim 17,
And requesting information related to the key talk and the additional key talk from the field.
KR1020180059186A 2018-05-24 2018-05-24 Voice input processing system and method thereof KR102184962B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180059186A KR102184962B1 (en) 2018-05-24 2018-05-24 Voice input processing system and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180059186A KR102184962B1 (en) 2018-05-24 2018-05-24 Voice input processing system and method thereof

Publications (2)

Publication Number Publication Date
KR20190134039A true KR20190134039A (en) 2019-12-04
KR102184962B1 KR102184962B1 (en) 2020-12-01

Family

ID=69004249

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180059186A KR102184962B1 (en) 2018-05-24 2018-05-24 Voice input processing system and method thereof

Country Status (1)

Country Link
KR (1) KR102184962B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100898340B1 (en) * 2007-12-10 2009-05-20 한국전자통신연구원 Remote controller having speech transmition function, electronic program guide information retrieval system and method by using the same
KR20120039921A (en) * 2010-10-18 2012-04-26 삼성전자주식회사 Method for providing search service and display apparatus applying the same
KR20160084059A (en) * 2015-01-05 2016-07-13 엘지전자 주식회사 Display device for arranging categories using voice recognition searching results, and method thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100898340B1 (en) * 2007-12-10 2009-05-20 한국전자통신연구원 Remote controller having speech transmition function, electronic program guide information retrieval system and method by using the same
KR20120039921A (en) * 2010-10-18 2012-04-26 삼성전자주식회사 Method for providing search service and display apparatus applying the same
KR20160084059A (en) * 2015-01-05 2016-07-13 엘지전자 주식회사 Display device for arranging categories using voice recognition searching results, and method thereof

Also Published As

Publication number Publication date
KR102184962B1 (en) 2020-12-01

Similar Documents

Publication Publication Date Title
US11397740B2 (en) Method and apparatus for providing information by using degree of association between reserved word and attribute language
US11967177B2 (en) Method for managing item recommendation using degree of association between language unit and usage history
US20150160847A1 (en) System and method for searching through a graphic user interface
JP6932162B2 (en) Area-based item recommendation terminal device and item recommendation information provision method.
KR101955920B1 (en) Search method and apparatus using property language
KR102226742B1 (en) Information providing method and apparatus using reserved word
KR20200012252A (en) Apparatus of recommending restaurants related items and method thereof
KR102335408B1 (en) Method and apparatus for managing movie tribute language
KR102279125B1 (en) Terminal and apparatus for providing recommendation information based on preference filter
KR102195691B1 (en) Apparatus of recommending restaurants based on types and drinking volumes of alcohols and method thereof
KR20200006421A (en) Apparatus of recommending hot places based on events and method thereof
KR102184962B1 (en) Voice input processing system and method thereof
KR20200002223A (en) Apparatus for providing distribution of item information based on events and method thereof
US20200341977A1 (en) Method and apparatus for managing attribute language
KR102280345B1 (en) Method and apparatus for managing recommended items using language units
JP2013250608A (en) Store information search system

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant