WO2012165929A2 - 웹을 이용한 정보 검색 방법 및 이를 사용하는 음성 대화 방법 - Google Patents

웹을 이용한 정보 검색 방법 및 이를 사용하는 음성 대화 방법 Download PDF

Info

Publication number
WO2012165929A2
WO2012165929A2 PCT/KR2012/004405 KR2012004405W WO2012165929A2 WO 2012165929 A2 WO2012165929 A2 WO 2012165929A2 KR 2012004405 W KR2012004405 W KR 2012004405W WO 2012165929 A2 WO2012165929 A2 WO 2012165929A2
Authority
WO
WIPO (PCT)
Prior art keywords
vector space
vector
database
extended
basic
Prior art date
Application number
PCT/KR2012/004405
Other languages
English (en)
French (fr)
Other versions
WO2012165929A3 (ko
Inventor
이근배
김석환
김경덕
이동현
최준휘
Original Assignee
포항공과대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 포항공과대학교 산학협력단 filed Critical 포항공과대학교 산학협력단
Priority to CN201280026904.0A priority Critical patent/CN103562919B/zh
Priority to US14/123,449 priority patent/US9213746B2/en
Priority to EP12792843.0A priority patent/EP2717176A4/en
Publication of WO2012165929A2 publication Critical patent/WO2012165929A2/ko
Publication of WO2012165929A3 publication Critical patent/WO2012165929A3/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3347Query execution using vector based model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • G10L13/027Concept to speech synthesisers; Generation of natural phrases from machine-based concepts
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems

Definitions

  • the present invention relates to a retrieval method, and more particularly, to an information retrieval method using the web and a voice conversation method using the same that can perform information retrieval more effectively using the web.
  • Information retrieval is to give an appropriate response to a user's query based on specific knowledge information.
  • an information search may access a knowledge information database containing a schedule of TV programs and give a response to the user's query.
  • the knowledge information database used in the existing search method is mainly stored in the form of relational database, and in this case, there is a problem in that an appropriate item cannot be found if the user does not speak the information stored in the database. .
  • complex queries that require semantic reasoning tend not to show an appropriate response.
  • An object of the present invention for solving the above problems is to provide an information retrieval method using the web that can provide a more improved response to the user query using the web to the user query.
  • Another object of the present invention for solving the above problems is to use an information retrieval method using the web that can provide a more improved response to the user query in the speech form using the web for the user query in the speech form It is to provide a voice conversation method.
  • an information retrieval method using the web the information retrieval method using the web of the information retrieval system, for at least one of the provided user query and language analysis results
  • a vector corresponding to the extended word vector in a vector spatial database An extended search step of searching for a space, and a step of searching for knowledge information based on the vector searched in the basic search step or the extended search step.
  • Voice communication method using a web information retrieval method for achieving another object of the present invention is a voice communication method using the information retrieval method using the web of the information retrieval system,
  • a speech recognition step of converting a user query provided in a speech form into a text form
  • a language analysis step of performing a language analysis on the user query converted into a text form
  • at least one of the converted user query and the language analysis result
  • a basic word vector is generated, a vector space corresponding to the basic word vector is searched in a vector space database using the basic word vector, and the similarity between the basic word vector and the searched vector space is equal to or less than a preset criterion.
  • At least one of the user query and the language analysis result is a voice communication method using the information retrieval method using the web of the information retrieval system,
  • a speech recognition step of converting a user query provided in a speech form into a text form
  • a language analysis step of performing a language analysis on the user query converted into a text form
  • An information retrieval step using a web for retrieving knowledge information based on a vector space, a response generation step of converting the retrieved knowledge information into a response corresponding to the query of the user, and a voice synthesis step of converting the response into a voice form It includes.
  • the information retrieval method using the web and the voice conversation method using the same provide a better search result for the user query by extending the knowledge information and the user query information using the web for information retrieval. can do.
  • FIG. 1 is a flowchart illustrating an information retrieval method using the web according to an embodiment of the present invention.
  • FIG. 2 is a flowchart illustrating a basic search process in an information search method using the web according to an embodiment of the present invention.
  • FIG. 3 is a flowchart illustrating an extended retrieval process of an information retrieval method using the web according to an embodiment of the present invention.
  • FIG. 4 is a flowchart illustrating a process of forming a vector space database in an information retrieval method using the web according to an embodiment of the present invention.
  • FIG. 5 is a flowchart illustrating a voice conversation method using an information retrieval method using the web according to an embodiment of the present invention.
  • first, second, A, and B may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.
  • the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component.
  • the information retrieval method using the web and the voice conversation method using the same may be implemented as a system including at least one server, and the system includes at least one server and a plurality of user terminals. Can be.
  • the at least one server and the plurality of user terminals may be directly connected, or may be interconnected through a wired or wireless network.
  • the server may be a web server or the like, and the user terminal may communicate with the server, such as a portable multimedia player (PMP), a notebook computer, a DTV, a smart phone, and an information processing function. It may be a variety of terminals provided with.
  • an information retrieval system for convenience of explanation.
  • FIG. 1 is a flowchart illustrating a voice conversation method using an information retrieval method using the web according to an embodiment of the present invention.
  • the voice conversation method using the information retrieval method using the web may include receiving a user query in a voice form (S100), converting the user query in a voice form into a text form (S200), Performing a language analysis on the user query converted into the text form (S300), an information retrieval step using the web to search for information by receiving at least one of the user query and the language analysis result (S400); A response generating step (S500) of generating a response by converting the result retrieved in the information retrieval step using the web into a response corresponding to the user query, and a speech synthesis step (S600) of converting the response into a voice form.
  • the response may mean a response corresponding to the user query.
  • a user utters a query in a voice form, converts the voice user query into a text user query, and generates a language for the user query converted into the text form.
  • the search is performed, and a web search is performed using at least one of a language analysis result, which is a result of the language analysis, and the user query in text form, to search for an appropriate response to the user query.
  • the search result is converted into a response corresponding to the user query, and the response is converted into a response in a voice form to provide a response to the user query.
  • FIG. 2 is a flowchart illustrating an information retrieval method using the web according to an embodiment of the present invention
  • FIG. 3 is a flowchart illustrating a basic retrieval process of an information retrieval method using the web according to an embodiment of the present invention
  • FIG. I s a flowchart illustrating an extended retrieval process of an information retrieval method using the web according to an embodiment of the present invention
  • FIG. 5 illustrates a process of forming a vector space database among the information retrieval method using the web according to an embodiment of the present invention. It is a flow chart.
  • the information retrieval method using the web (S400) is provided with at least one of a user query and a language analysis result for the user query to search for knowledge information stored in the knowledge information database 1000 to search a user query. It may provide a response corresponding to.
  • the linguistic analysis may refer to linguistic analysis techniques such as morphological analysis, syntax analysis, semantic analysis, and the like.
  • the language analysis result may include speech acts, driving, and structural information.
  • the dialogue act does not necessarily correspond to a sentence type, but generally represents sentence type information such as a statement, a question, a request statement, and the main action may include, for example, turning on a TV, turning off a TV, or searching for a program. It may mean semantic information indicating a desired behavior of the user, and the structure information may mean, for example, entity name information that appears in a user's query such as a genre, a program name, a channel name, a start time, and a cast member.
  • the user query may mean that the user speech in text form or the user speech input in speech form is converted into text form.
  • the information retrieval method using the web receives at least one of a user query and a language analysis result (S410).
  • a basic word vector for generating at least one of the provided user query and the language analysis result, and searching for a vector space corresponding to the basic word vector in the vector space database 2000 using the basic word vector The search is performed (S420).
  • the vector space database 2000 determines whether the search result corresponding to the basic word vector or whether the basic search score is less than or equal to a preset reference score (S430).
  • the reference score may be set variously according to the design of the system.
  • the extended search is performed (S440).
  • the extended search step (S440) first, a search keyword associated with at least one of the user query and the language analysis result is generated to perform a web search, and then an extended word vector for the searched web document is generated, and the generated expansion is performed.
  • the vector space database 2000 searches for a vector space corresponding to the extended word vector using the word vector.
  • the knowledge information stored in the knowledge information database corresponding to the vector space searched in the basic search step or the extended search step is output as a search result.
  • the information retrieval method using the web further comprises the step of generating a vector space (Vector Space) for the knowledge information stored in the knowledge information database 1000 and storing it in the vector space database 2000 (S450) Can be configured.
  • Vector Space Vector Space
  • the step of generating the vector space and storing it in the vector space database is preferably performed before the basic search or extended search step, but is not limited thereto and may be performed regardless of the order of steps S410 to S440. .
  • the basic word vector means a vector space for at least one of the user query and the language analysis result of the user query
  • the extended word vector is a search keyword associated with at least one of the user query and the language analysis result of the user query.
  • the word may be a single word, a keyword, a phrase, and the like, and the meaning of the word may vary according to an application.
  • the step of receiving the user query and language analysis result (S410) may mean that the user query in a text form and the language analysis result including the above-described speech act, driving and rescue information may be provided.
  • the basic search step (S420) generates a basic word vector for at least one of the provided user query and the language analysis result (S421), and uses the basic word vector to perform the vector space database.
  • a vector space corresponding to the basic word vector may be searched for.
  • the basic word vector may mean a vector space formed using at least one of the user query and the language analysis result.
  • the determining may include determining whether the vector space corresponding to the basic word vector or the basic search score is less than or equal to a preset reference score among the vector spaces stored in the vector space database 2000. have.
  • the determining step (S430) since the extended search step performs a search using the web, if the response time can be processed through the basic search step because the response time is later than the basic search step, only the basic search step can be performed.
  • the function of judging can be performed.
  • the basic search score may mean that the degree of correspondence between the basic word vector and the vector space stored in the vector space database 2000 is quantified, and the basic search score may be various scores such as cosine similarity. It can be calculated through the calculation method. In addition, the cosine similarity may be calculated through Equation 1.
  • Equation 1 S is cosine similarity
  • a and B are vector spaces
  • ⁇ A and B are the absolute values (size) of the vector space.
  • the degree of correspondence may be further increased by assigning differential weights depending on whether the structure information of the basic word vector shown in the language analysis result and the structure information of the vector space stored in the vector space database 2000 are the same.
  • the extended search step (S440) when there is no vector space corresponding to the basic word vector in the vector space database 2000, or when the basic search score is less than or equal to a preset reference score, at least one of the user query and the language analysis result.
  • Generating a search keyword associated with the web document (S441) performing a web search (S443), generating an extended word vector for the searched web document (S444), and storing the search keyword in the vector space database 2000 using the extended word vector.
  • a vector space corresponding to the extended word vector may be searched in the vector space (S445).
  • the search keyword may include at least one important field of the user query and the language analysis result.
  • the determination of the important field may be a field that the user finds the most and is representative, and may be determined heuristically.
  • the reason for considering the user query in the generation of the search keyword is to consider a case in which an important word may not appear in the language analysis result. For example, if the user query is "Let's have a fun movie,” "interesting" is an important word, but may not appear in the language analysis results.
  • a web search may be performed using the search keyword (S443), and an extended word vector of the searched web document may be generated (S444).
  • the extended word vector may mean forming a vector space for each word in the searched web document.
  • the vector space corresponding to the extended word vector may be searched among the vector spaces stored in the vector space database 2000 using the extended word vector.
  • the determination of whether the corresponding vector space is the vector space corresponding to the case where the extended search score is greater than or equal to a preset reference score may be performed, and the information corresponding to the searched vector space may be sorted in ascending order of the extended search score. have.
  • the extended search score may be calculated as a similarity between the extended word vector and the vector space stored in the vector space database, and the weights are differentially weighted according to a method of forming the extended word vector and the vector space stored in the vector space database. Can be set.
  • the extended search score may be calculated through Equation 2.
  • Equation 2 Is a basic word vector generated from the linguistic analysis before the web search, Is a base word vector generated from a user query before web search, Is an expanded word vector generated from the linguistic analysis after the web search, Denotes an extended word vector generated from a user query after a web search.
  • Is a weight when the extended word vector generated from the linguistic analysis result corresponds to the vector space stored in the vector space basic database 2100 Is a weight when the extended word vector generated from the user query corresponds to the vector space stored in the vector space basic database 2100, Is a weight when the extended word vector generated from the language analysis result corresponds to the vector space stored in the vector space expansion database 2200, Is a weight when the extended word vector generated from the user query corresponds to the vector space stored in the vector space expansion database 2200, and the weights may be changed according to the expansion word vector and the vector space formation method of the vector space database. And can be set differentially.
  • ⁇ 1 , ⁇ The weight can be set to a value where 2 is greater than ⁇ 1 and ⁇ 2 .
  • ⁇ 1 may be set to a value larger than ⁇ 2 , and ⁇ 1 may be greater than ⁇ 2 .
  • Generating the vector space and storing it in the vector space database 2000 stores the basic vector space in which the knowledge information stored in the knowledge information database 1000 is a vector space in the vector space basic database 2100.
  • step S451 and extracting a keyword from the knowledge information stored in the knowledge information database 1000, and performing a web search with the extracted keywords (S452) to form an extended vector space from the searched web document the extended vector space It may be configured to include a step (S453) for storing in the vector space expansion database 2200.
  • the basic vector space may include a vector space and structure information generated by pre-stored for each word from a document stored in the knowledge information database 1000.
  • ⁇ Park Ji Sung Manchester United game is stored in entry ID 10 of the knowledge information database 1000
  • ⁇ Park Ji Sung, 10, 0.3>, ⁇ Manchester, 10, 0.2>, ⁇ United, 10, 0.1 >, ⁇ Match, 10, 0.1> may be stored in the vector space basic database 2100.
  • “Park Ji-sung” may mean a word
  • "10” may mean an entry ID in which a word is stored
  • "0.3” may mean a weight for a word.
  • the structure information may refer to field information to which a word belongs, and the structure information may be, for example, a column name in the knowledge information database 1000 and an entity name in a language analysis result of a user query. Can be.
  • the structure information may be used as additional information to the basic search score used in the basic search step (S420).
  • the weight for each word of knowledge information stored in the knowledge information database 1000 may be calculated through Equation 3, which is a product of word frequency (TF) and inverse document frequency (IDF). have.
  • Word frequency in Equation (3) Is the document ( ) Shows how many words ) Documents ( ) Is the total number of words ( Calculated by dividing by), and reverse document frequency ( ) Is the total number of documents ( ) Divided by the number of documents in which the word appears ( ) Is calculated as the logarithm of.
  • the vector space expansion database 2200 extracts a keyword from the knowledge information stored in the knowledge information database 1000, performs a search through the web using the extracted keyword (S452), and each word in the searched document.
  • An extended vector space may be formed with respect to (S453).
  • an important field of the knowledge information stored in the knowledge information database 1000 may be used, and the determination of the important field may be a field that the user finds the most, is representative, and may be determined heuristically. .
  • the web document may include information that is lacking in the knowledge information stored in the knowledge information database 1000 to supplement the knowledge information.
  • the information about the "Asian Cup" which is the knowledge information stored in the knowledge information database, may be expanded by obtaining additional information such as "Cho Gwang-rae” and "Park Ji-sung" through a web search.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

웹을 이용한 정보 검색 방법 및 이를 사용하는 음성 대화 방법은 제공된 사용자 질의 및 언어 분석 결과 중 적어도 하나에 대한 기본 단어 벡터를 생성하고, 기본 단어 벡터를 이용하여 벡터 공간 데이터베이스에서 기본 단어 벡터에 대응되는 벡터 공간을 검색한 후, 기본 단어 벡터와 검색된 벡터 공간과의 유사도가 미리 설정된 기준 이하인 경우, 사용자 질의 및 언어 분석 결과 중 적어도 하나를 이용하여 수행된 웹 검색 결과로부터, 생성한 확장 단어 벡터를 이용하여 벡터 공간 데이터베이스에서 확장 단어 벡터에 대응되는 벡터 공간을 검색하고, 기본 검색 단계 또는 확장 검색 단계에서 검색된 벡터 공간에 기초하여 지식 정보를 검색한다. 따라서, 사용자 질의에 대하여 보다 나은 검색 결과를 제공할 수 있다.

Description

웹을 이용한 정보 검색 방법 및 이를 사용하는 음성 대화 방법
본 발명은 검색 방법에 관한 것으로, 더욱 상세하게는 웹을 이용하여 정보 검색을 보다 효과적으로 수행할 수 있는 웹을 이용한 정보 검색 방법 및 이를 사용하는 음성 대화 방법에 관한 것이다.
정보 검색은 특정 지식 정보를 바탕으로 사용자의 질의에 대해 적절한 응답을 내어주는 것이다. 예를 들어, 스마트 TV 시스템에서 사용자가 특정 프로그램을 찾는 질의를 했을 때, 정보 검색을 통해 TV 프로그램 일정을 담고 있는 지식 정보 데이터베이스에 접근하여 사용자의 질의에 대한 응답을 내어 줄 수 있다. 그러나, 기존의 검색 방법에서 사용되는 지식 정보 데이터베이스는 주로 관계형 데이터베이스 형태로 저장이 되며, 이 경우에 사용자가 특정 정보에 대해 데이터베이스에 저장된 형태로 발화하지 않은 경우 적절한 항목을 찾아낼 수 없는 문제가 있다. 또한, 의미적인 추론이 필요한 복잡한 형태의 질의인 경우에는 적절한 응답을 나타내지 못하는 경향이 있다. 예를 들어 스마트 TV에서 ‘박지성 경기 보자’라는 사용자 질의에 대해 TV 스케쥴에 저장된 ‘아시안컵’이라는 검색 결과를 내지 못한다. 왜냐하면‘아시안컵’항목에는 박지성과 관련된 정보가 포함되어 있지 않기 때문이다. 이를 제대로 수행하려면 박지성이 아시안컵에 참석하고 있다는 정보가 추가로 필요하다. 이런 의미적인 부분을 고려하기 위한 접근 방법으로 온톨로지를 활용하는 경우가 있으나, 온톨로지를 구축하고 관리하는 것은 매우 힘든 작업이며 지식 정보와 관련된 질의를 추론하기 위한 수많은 온톨로지를 구축하는 것은 불가능하다. 또한, 실시간으로 변화하는 정보를 반영하는 것에도 한계가 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 사용자 질의에 대해 웹을 이용하여 사용자 질의에 대한 보다 향상된 응답을 제공할 수 있는 웹을 이용한 정보 검색 방법을 제공하는데 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, 음성 형태의 사용자 질의에 대해 웹을 이용하여 사용자 질의에 대한 보다 향상된 응답을 음성 형태로 제공할 수 있는 웹을 이용한 정보 검색 방법을 사용하는 음성 대화 방법을 제공하는데 있다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기한 본 발명의 목적을 달성하기 위한 본 발명의 일 측면에 따른 웹을 이용한 정보 검색 방법은, 정보 검색 시스템의 웹을 이용한 정보 검색 방법에 있어서, 제공된 사용자 질의 및 언어 분석 결과 중 적어도 하나에 대한 기본 단어 벡터를 생성하고, 상기 기본 단어 벡터를 이용하여 벡터 공간 데이터베이스에서 상기 기본 단어 벡터에 대응되는 벡터 공간을 검색하는 기본 검색 단계와, 상기 기본 단어 벡터와 검색된 상기 벡터 공간과의 유사도를 판단하는 단계와, 상기 유사도가 미리 설정된 기준 이하인 경우, 상기 사용자 질의 및 상기 언어 분석 결과 중 적어도 하나를 이용하여 수행된 웹 검색 결과로부터, 확장 단어 벡터를 생성하고, 생성된 상기 확장 단어 벡터를 이용하여 상기 벡터 공간 데이터베이스에서 상기 확장 단어 벡터에 대응되는 벡터 공간을 검색하는 확장 검색 단계와, 상기 기본 검색 단계 또는 상기 확장 검색 단계에서 검색된 상기 벡터 공간에 기초하여 지식 정보를 검색하는 단계를 포함한다.
상기한 본 발명의 다른 목적을 달성하기 위한 본 발명의 일 측면에 따른 웹을 이용한 정보 검색 방법을 사용하는 음성 대화 방법은 정보 검색 시스템의 웹을 이용한 정보 검색 방법을 사용하는 음성 대화 방법에 있어서, 제공된 음성 형태의 사용자 질의를 텍스트 형태로 변환하는 음성 인식 단계와, 상기 텍스트 형태로 변환된 사용자 질의에 언어 분석을 수행하는 언어 분석 단계와, 변환된 상기 사용자 질의 및 상기 언어 분석 결과 중 적어도 하나에 대한 기본 단어 벡터를 생성하고, 상기 기본 단어 벡터를 이용하여 벡터 공간 데이터베이스에서 상기 기본 단어 벡터에 대응되는 벡터 공간을 검색한 후, 상기 기본 단어 벡터와 검색된 상기 벡터 공간과의 유사도가 미리 설정된 기준 이하인 경우, 상기 사용자 질의 및 상기 언어 분석 결과 중 적어도 하나를 이용하여 수행된 웹 검색 결과로부터, 생성한 확장 단어 벡터를 이용하여 상기 벡터 공간 데이터베이스에서 상기 확장 단어 벡터에 대응되는 벡터 공간을 검색하고, 상기 기본 단어 벡터 또는 상기 확장 단어 벡터에 대응되어 검색된 상기 벡터 공간에 기초하여 지식 정보를 검색하는 웹을 이용한 정보 검색 단계와, 검색된 상기 지식 정보를 상기 사용자의 질의에 대응되는 응답으로 변환하는 응답 생성 단계와, 상기 응답을 음성 형태로 변환하는 음성 합성 단계를 포함한다.
상기와 같은 본 발명에 따른 웹을 이용한 정보 검색 방법 및 이를 사용하는 음성 대화 방법은 정보 검색을 위해 웹을 활용하여 지식 정보 및 사용자 질의에 관한 정보를 확장함으로써 사용자 질의에 대하여 보다 나은 검색 결과를 제공할 수 있다.
또한, 정보 확장이 웹을 통하여 수행되므로 사람의 개입이 필요 없고, 기존의 벡터 공간 모델을 이용할 수 있고, 최근에 성행하는 Q&A나 소셜 네트워크 정보 등 수많은 정보들이 실시간으로 반영되므로 추론 및 추천 기능의 수행이 가능한 장점이 있다.
도 1은 본 발명의 일 실시예에 따른 웹을 이용한 정보 검색 방법을 나타내는 흐름도이다.
도 2는 본 발명의 일 실시예에 따른 웹을 이용한 정보 검색 방법 중 기본 검색 과정을 나타내는 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 웹을 이용한 정보 검색 방법 중 확장 검색 과정을 나타내는 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 웹을 이용한 정보 검색 방법 중 벡터 공간 데이터베이스를 형성 과정을 나타내는 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 웹을 이용한 정보 검색 방법을 사용한 음성 대화 방법을 나타내는 흐름도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 발명의 실시예에서, 웹을 이용한 정보 검색 방법 및 이를 사용한 음성 대화 방법은 적어도 하나의 서버를 포함하는 시스템으로 구현될 수 있고, 상기 시스템에는 적어도 하나의 서버와 다수의 사용자 단말이 포함될 수 있다.
상기 적어도 하나의 서버와 다수의 사용자 단말은 직접적으로 연결될 수도 있고, 유선 또는 무선 네트워크를 통하여 상호 연결될 수 있다. 또한, 상기 서버는 웹 서버(Web Server) 등이 될 수 있고, 상기 사용자 단말은 PMP(Portable Multimedia Player), 노트북, DTV, 스마트 폰(Smart Phone) 등 상기 서버와 통신이 가능하고, 정보 처리 기능을 구비한 다양한 단말이 될 수 있다.
이하, 본 발명의 실시예에서는 설명의 편의를 위하여 상기 웹을 이용한 정보 검색 방법 및 이를 사용한 음성 대화 방법을 수행하는 시스템을 정보 검색 시스템이라 지칭한다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 웹을 이용한 정보 검색 방법을 사용한 음성 대화 방법을 나타내는 흐름도이다.
도 1을 참조하면, 웹을 이용한 정보 검색 방법을 사용한 음성 대화 방법은 음성 형태의 사용자 질의를 제공받는 단계(S100)와, 상기 음성 형태의 사용자 질의를 텍스트 형태로 변환하는 단계(S200)와, 상기 텍스트 형태로 변환된 사용자 질의에 언어 분석을 수행하는 단계(S300)와, 상기 사용자 질의 및 상기 언어 분석 결과 중 적어도 하나를 제공받아 정보 검색을 하는 웹을 이용한 정보 검색 단계(S400)와, 상기 웹을 이용한 정보 검색 단계에서 검색된 결과를 상기 사용자 질의에 대응되는 응답으로 변환하여 응답을 생성하는 응답 생성 단계(S500)와, 상기 응답을 음성 형태로 변환하는 음성 합성 단계(S600)를 포함한다. 상기 응답은 상기 사용자 질의에 대응되는 응답을 의미할 수 있다.
상기 웹을 이용한 정보 검색 방법을 사용한 음성 대화 방법은 사용자가 음성 형태로 질의를 발화하고, 상기 음성 형태의 사용자 질의를 텍스트 형태의 사용자 질의로 변환하고, 상기 텍스트 형태로 변환된 사용자 질의에 대하여 언어 분석을 수행하며, 상기 언어 분석을 수행한 결과인 언어 분석 결과 및 텍스트 형태의 상기 사용자 질의 중 적어도 하나를 이용하여 웹 검색을 수행하여 상기 사용자 질의에 대한 적절한 응답을 검색한다. 상기 검색된 결과를 상기 사용자 질의에 대응되는 응답으로 변환하고, 상기 응답을 음성 형태의 응답으로 변환하여 사용자 질의에 대한 응답을 제공하는 기능을 수행한다. 상기 웹을 이용한 정보 검색 단계(S400)에 대하여 이하에서 구체적으로 설명한다.
도 2는 본 발명의 일 실시예에 따른 웹을 이용한 정보 검색 방법을 나타내는 흐름도이고, 도 3은 본 발명의 일 실시예에 따른 웹을 이용한 정보 검색 방법 중 기본 검색 과정을 나타내는 흐름도이고, 도 4는 본 발명의 일 실시예에 따른 웹을 이용한 정보 검색 방법 중 확장 검색 과정을 나타내는 흐름도이고, 도 5는 본 발명의 일 실시예에 따른 웹을 이용한 정보 검색 방법 중 벡터 공간 데이터베이스를 형성 과정을 나타내는 흐름도이다.
도 2 내지 도 5를 참조하면, 웹을 이용한 정보 검색 방법(S400)은 사용자 질의 및 사용자 질의에 대한 언어 분석 결과 중 적어도 하나를 제공받아 지식 정보 데이터베이스(1000)에 저장된 지식 정보를 검색하여 사용자 질의에 대응되는 응답을 제공할 수 있다.
상기 언어 분석은 형태소 분석, 구문 분석, 의미 분석 등의 언어 분석 기법을 의미할 수 있다.
상기 언어 분석 결과는 화행, 주행 및 구조적 정보가 포함될 수 있다. 상기 화행(Dialog Act)은 반드시 문형과 일치하지는 않으나, 일반적으로 서술문, 의문문, 요청문 등의 문형 정보를 나타내며, 상기 주행(Main Action)은 예를 들어, TV 켜기, TV 끄기, 프로그램 찾기 등의 사용자가 원하는 행위를 나타내는 의미적인 정보를 의미하며, 상기 구조 정보는 예를 들어, 장르, 프로그램명, 채널명, 시작시간, 출연진 등의 사용자의 질의에 나타나는 개체명 정보를 의미할 수 있다. 또한, 상기 사용자 질의는 텍스트 형태의 사용자 발화 또는 음성 형태로 입력된 사용자 발화를 텍스트 형태로 변환된 것을 의미할 수 있다.
도 2를 참조하면, 웹을 이용한 정보 검색 방법(S400)은 사용자 질의 및 언어 분석 결과 중 적어도 하나를 제공 받는다(S410).
제공받은 상기 사용자 질의 및 상기 언어 분석 결과 중 적어도 하나에 대한 기본 단어 벡터를 생성하고, 상기 기본 단어 벡터를 이용하여 상기 벡터 공간 데이터베이스(2000)에서 상기 기본 단어 벡터에 대응되는 벡터 공간을 검색하는 기본 검색을 수행한다(S420).
상기 벡터 공간 데이터베이스(2000)에서 상기 기본 단어 벡터에 대응되는 검색 결과 유무 또는 기본 검색 점수가 미리 설정된 기준 점수 이하인지를 판단한다(S430). 상기 기준 점수는 시스템의 설계에 따라 다양하게 설정될 수 있다.
판단 결과 상기 벡터 공간 데이터베이스(2000)에서 상기 기본 단어 벡터에 대응되는 검색 결과가 없거나, 상기 기본 검색 점수가 상기 기준 점수 이하인 경우에 확장 검색을 수행한다(S440).
상기 확장 검색 단계(S440)에서는 먼저 상기 사용자 질의 및 상기 언어 분석 결과 중 적어도 하나와 관련된 검색 키워드를 생성하여 웹 검색을 수행한 후, 검색된 웹 문서에 대한 확장 단어 벡터를 생성하고, 상기 생성된 확장 단어 벡터를 이용하여 벡터 공간 데이터베이스(2000)에서 상기 확장 단어 벡터에 대응되는 벡터 공간을 검색한다.
상기 기본 검색 단계 또는 상기 확장 검색 단계에서 검색된 상기 벡터 공간에 대응되는 상기 지식 정보 데이터베이스에 저장된 지식 정보를 검색 결과로 출력한다.
또한, 웹을 이용한 정보 검색 방법(S400)은 지식 정보 데이터베이스(1000)에 저장된 지식 정보에 대한 벡터 공간(Vector Space)을 생성하여 벡터 공간 데이터베이스(2000)에 저장하는 단계(S450)를 더 포함하여 구성될 수 있다.
여기서, 상기 벡터 공간을 생성하여 벡터 공간 데이터베이스에 저장하는 단계는 기본 검색 또는 확장 검색 단계 이전에 수행되는 것이 바람직하나, 여기에 한정되는 것은 아니며 상기 단계 S410 내지 S440의 순서와 무관하게 수행될 수도 있다.
상기 기본 단어 벡터는 상기 사용자 질의 및 상기 사용자 질의의 언어 분석 결과 중 적어도 하나에 대한 벡터 공간을 의미하고, 상기 확장 단어 벡터는 상기 사용자 질의 및 상기 사용자 질의의 언어 분석 결과 중 적어도 하나와 관련된 검색 키워드를 생성하여 웹 검색을 통하여 검색된 웹 문서에 포함된 단어들에 대한 벡터 공간을 의미한다.
또한, 상기 단어는 하나의 단어, 키워드, 구(句) 등이 될 수 있으며, 상기 단어의 의미는 응용 분야에 따라 달라질 수 있다.
상기 사용자 질의 및 언어 분석 결과를 제공받는 단계(S410)는 텍스트 형태의 사용자 질의와, 상술한 화행, 주행 및 구조 정보가 포함될 수 있는 언어 분석 결과를 제공받는 것을 의미할 수 있다.
도 3을 참조하면, 상기 기본 검색 단계(S420)는 제공받은 상기 사용자 질의 및 상기 언어 분석 결과 중 적어도 하나에 대한 기본 단어 벡터를 생성하고(S421), 상기 기본 단어 벡터를 이용하여 상기 벡터 공간 데이터베이스(2000)에서 상기 기본 단어 벡터에 대응되는 벡터 공간을 검색할 수 있다(S422). 상기 기본 단어 벡터는 상기 사용자 질의 및 상기 언어 분석 결과 중 적어도 하나를 사용하여 형성된 벡터 공간을 의미할 수 있다.
상기 판단하는 단계(S430)는 상기 벡터 공간 데이터베이스(2000)에 저장된 벡터 공간 중에 상기 기본 단어 벡터와 대응되는 벡터 공간의 유무 또는 기본 검색 점수가 미리 설정된 기준 점수 이하인지를 판단하는 기능을 수행할 수 있다. 또한, 상기 판단하는 단계(S430)는 확장 검색 단계가 웹을 이용한 검색을 수행하므로 응답시간이 상기 기본 검색 단계보다 늦기 때문에 상기 기본 검색 단계를 통하여 처리할 수 있는 경우는 상기 기본 검색 단계만을 수행할 수 있도록 판단하는 기능을 수행할 수 있다. 상기 기본 검색 점수는 상기 기본 단어 벡터와 상기 벡터 공간 데이터베이스(2000)에 저장된 벡터 공간과의 대응되는 정도를 수치화한 것을 의미할 수 있고, 상기 기본 검색 점수는 코사인 유사도(Cosine Similarity) 등의 다양한 점수 계산 방법을 통해 산출될 수 있다. 또한, 상기 코사인 유사도는 수학식 1을 통해 산출될 수 있다.
수학식 1
Figure PCTKR2012004405-appb-M000001
상기의 수학식 1에서, S는 코사인 유사도, A와 B는 벡터 공간, ∥A∥와 ∥B∥는 벡터 공간의 절대값(크기)을 의미한다.
또한, 상기 언어 분석 결과에서 나타난 기본 단어 벡터의 구조 정보와 상기 벡터 공간 데이터베이스(2000)에 저장된 벡터 공간의 구조 정보가 동일한지 여부에 따라 차등된 가중치를 부여하여 대응되는 정도를 더 높일 수 있다.
예를 들어, 사용자의 질의가 "아시안컵 축구 좀 보자", 사용자 질의에 대한 언어 분석 결과가 "TITLE: 아시안컵 축구"인 경우에 기본 단어 벡터는 <(TITLE: 아시안컵, 0.5)>, <(TITLE: 축구, 0.5)>로 생성되고, 상기 벡터 공간 데이터베이스(2000)에 저장된 벡터 공간의 각 필드가 <(TITLE: 아시안컵, 0.2)>, <(CATEGORY: 축구, 0.3)>인 경우에 코사인 유사도를 사용하면, 기본 검색 점수가 (0.5×0.2+0.5×0.3)/(0.707+0.361)=0.234로 계산되고, 만약, 구조 정보에 대한 가중치를 구조 정보가 같은 경우에는 0.7, 다른 경우에는 0.3으로 설정한 경우에 상기 구조 정보를 고려한 기본 검색 점수는 (0.5×0.2×0.7+0.5×0.3×0.3)/(0.707+0.361) =0.108로 계산된다.
상기 확장 검색 단계(S440)는 벡터 공간 데이터베이스(2000)에서 상기 기본 단어 벡터와 대응되는 벡터 공간이 없거나, 상기 기본 검색 점수가 미리 설정된 기준 점수 이하인 경우, 상기 사용자 질의 및 상기 언어 분석 결과 중 적어도 하나와 관련된 검색 키워드를 생성(S441)하여, 웹 검색을 수행하고(S443), 검색된 웹 문서에 대한 확장 단어 벡터를 생성하고(S444), 상기 확장 단어 벡터를 이용하여 벡터 공간 데이터베이스(2000)에 저장된 벡터 공간 중에 상기 확장 단어 벡터와 대응되는 벡터 공간을 검색할 수 있다(S445). 상기 검색 키워드는 상기 사용자 질의 및 상기 언어 분석 결과 중 적어도 하나의 중요한 필드를 상기 검색 키워드로 사용할 수 있으며, 상기 중요한 필드의 결정은 사용자가 가장 많이 찾고 대표성이 있는 필드일 수 있으며, 휴리스틱(Heuristic)하게 결정될 수 있다. 여기서, 상기 사용자 질의를 검색 키워드의 생성에 고려하는 이유는 중요한 단어임에도 언어 분석 결과에 나타나지 않을 수 있는 경우를 고려하기 위한 것이다. 예를 들어, 사용자 질의가 "재미있는 영화 좀 보자"인 경우에 "재미있는"은 중요한 단어임에도 언어 분석 결과에 나타나지 않을 수 있기 때문이다.
상기 검색 키워드를 사용하여 웹 검색을 수행하고(S443), 검색된 웹 문서에 대한 확장 단어 벡터를 생성할 수 있다(S444). 상기 확장 단어 벡터는 검색된 웹 문서에서 각각의 단어에 대해 벡터 공간을 형성하는 것을 의미할 수 있다. 상기 확장 단어 벡터를 사용하여 상기 벡터 공간 데이터베이스(2000)에 저장된 벡터 공간 중에 상기 확장 단어 벡터와 대응되는 벡터 공간을 검색할 수 있다. 상기 대응되는 벡터 공간인지의 판단은 확장 검색 점수가 미리 설정된 기준 점수 이상인 경우에 대응되는 벡터 공간으로 판단할 수 있으며, 상기 확장 검색 점수가 높은 순으로 상기 검색된 벡터 공간에 대응되는 정보를 정렬시킬 수 있다.
상기 확장 검색 점수는 상기 확장 단어 벡터와 상기 벡터 공간 데이터베이스에 저장된 벡터 공간과의 유사도로 산출될 수 있으며, 상기 확장 단어 벡터와 상기 벡터 공간 데이터베이스에 저장된 벡터 공간의 형성 방식에 따라 가중치를 차등적으로 설정할 수 있다.
구체적으로, 상기 확장 검색 점수는 수학식 2를 통하여 산출될 수 있다.
수학식 2
Figure PCTKR2012004405-appb-M000002
상기 수학식 2에서
Figure PCTKR2012004405-appb-I000001
는 웹 검색 전의 언어 분석 결과로부터 생성한 기본 단어 벡터,
Figure PCTKR2012004405-appb-I000002
는 웹 검색 전의 사용자 질의로부터 생성한 기본 단어 벡터,
Figure PCTKR2012004405-appb-I000003
는 웹 검색 후의 언어 분석 결과로부터 생성한 확장 단어 벡터,
Figure PCTKR2012004405-appb-I000004
는 웹 검색 후의 사용자 질의로부터 생성한 확장 단어 벡터를 의미한다.
또한,
Figure PCTKR2012004405-appb-I000005
는 벡터 공간 기본 데이터베이스(2100)에 저장된 지식 정보 데이터베이스(1000)에 저장된 지식 정보의 각 필드에 대한 벡터 공간,
Figure PCTKR2012004405-appb-I000006
는 벡터 공간 확장 데이터베이스(2200)에서 검색된 문서의 각 필드에 대한 단어 벡터를 의미한다.
또한,
Figure PCTKR2012004405-appb-I000007
는 언어 분석 결과로부터 생성된 확장 단어 벡터가 벡터 공간 기본 데이터베이스(2100)에 저장된 벡터 공간에 대응되는 경우의 가중치이고,
Figure PCTKR2012004405-appb-I000008
는 사용자 질의로부터 생성된 확장 단어 벡터가 벡터 공간 기본 데이터베이스(2100)에 저장된 벡터 공간에 대응되는 경우의 가중치이고,
Figure PCTKR2012004405-appb-I000009
는 언어 분석 결과로부터 생성된 확장 단어 벡터가 벡터 공간 확장 데이터베이스(2200)에 저장된 벡터 공간에 대응되는 경우의 가중치이고,
Figure PCTKR2012004405-appb-I000010
는 사용자 질의로부터 생성된 확장 단어 벡터가 벡터 공간 확장 데이터베이스(2200)에 저장된 벡터 공간에 대응되는 경우의 가중치이고, 상기 가중치들은 확장 단어 벡터와 벡터 공간 데이터베이스의 벡터 공간의 형성 방식에 따라 변경될 수 있고, 차등적으로 설정될 수 있다.
예를 들어, 웹 검색을 거치지 않은 벡터 공간 기본 데이터베이스(2100)에 저장된 벡터 공간의 신뢰도가 웹 검색을 거친 벡터 공간 확장 데이터베이스(2200)에 저장된 벡터 공간의 신뢰도보다 높다고 볼 수 있기 때문에 α1 , α2가 β1, β2보다 큰 값으로 가중치를 설정할 수 있다.
또한, 언어 분석 결과에서의 키워드가 사용자 질의에서의 키워드보다 중요하다고 볼 수 있기 때문에 α1 는 α2, β1는 β2 보다 큰 값으로 설정될 수 있다.
상기 벡터 공간을 생성하여 벡터 공간 데이터베이스(2000)에 저장하는 단계(S450)는 지식 정보 데이터베이스(1000)에 저장된 지식 정보를 벡터 공간으로 형성한 기본 벡터 공간을 벡터 공간 기본 데이터베이스(2100)에 저장하는 단계(S451)와, 지식 정보 데이터베이스(1000)에 저장된 지식 정보에서 키워드를 추출하고, 상기 추출된 키워드로 웹 검색을 수행(S452)하여 검색된 웹 문서로부터 확장 벡터 공간을 형성하고, 상기 확장 벡터 공간을 벡터 공간 확장 데이터베이스(2200)에 저장하는 단계(S453)를 포함하여 구성될 수 있다.
상기 기본 벡터 공간은 지식 정보 데이터베이스(1000)에 저장된 문서로부터 각각의 단어들에 대해 미리 저장하여 생성된 벡터 공간(Vector Space), 구조 정보를 포함할 수 있다.
예를 들어, 지식 정보 데이터베이스(1000)의 엔트리 ID 10번에 "박지성 맨체스터 유나이티드 경기"라는 문서가 저장된 경우에 <박지성, 10, 0.3>, <맨체스터, 10, 0.2>, <유나이티드, 10, 0.1>, <경기, 10, 0.1>의 기본 벡터 공간이 벡터 공간 기본 데이터베이스(2100)에 저장될 수 있다. 여기서, "박지성"은 단어를 의미하고, "10"은 단어가 저장된 엔트리 ID를 의미하고, "0.3"은 단어에 대한 가중치를 의미할 수 있다. 상기 구조 정보는 단어가 속한 필드 정보를 의미할 수 있고, 상기 구조 정보는 예를 들어, 지식 정보 데이터베이스(1000)에서는 컬럼(column) 명이 될 수 있고, 사용자 질의에 대한 언어 분석 결과에서는 개체명이 될 수 있다. 또한, 상기 구조 정보는 상기 기본 검색 단계(S420)에서 사용되는 기본 검색 점수에 추가 정보로서 사용될 수 있다.
예를 들어, 지식 정보 데이터베이스(1000)에서 "출연진" 정보와 언어 분석 결과에서 "출연진"으로 검색된 경우에 보다 높은 가중치를 줄 수 있다.
상기 지식 정보 데이터베이스(1000)에 저장된 지식 정보의 각 단어에 대한 상기 가중치는 단어 빈도(TF: Term Frequency)와 역 문서 빈도(IDF: Inverse Document Frequency)의 곱 연산인 수학식 3을 통하여 산출될 수 있다.
[규칙 제91조에 의한 정정 17.07.2012] 
수학식 3
Figure WO-DOC-MATHS-1
[규칙 제91조에 의한 정정 17.07.2012] 
상기 수학식 3에서 단어 빈도(
Figure WO-DOC-MATHS-2
)는 문서(
Figure WO-DOC-MATHS-3
)에서 특정 단어가 나타난 개수(
Figure WO-DOC-MATHS-4
)를 문서(
Figure WO-DOC-MATHS-5
)의 전체 단어 개수(
Figure WO-DOC-MATHS-6
)로 나누어 계산되며, 역 문서 빈도(
Figure WO-DOC-MATHS-7
)는 전체 문서의 개수(
Figure WO-DOC-MATHS-8
)를 단어가 나타난 문서 개수로 나눈것(
Figure WO-DOC-MATHS-9
)의 로그 값으로 계산된다.
상기 벡터 공간 확장 데이터베이스(2200)는 상기 지식 정보 데이터베이스(1000)에 저장된 지식 정보에서 키워드를 추출하고, 상기 추출된 키워드를 사용하여 웹을 통하여 검색을 수행하고(S452), 검색된 문서에서 각각의 단어에 대해 확장 벡터 공간을 형성할 수 있다(S453).
상기 키워드로는 지식 정보 데이터베이스(1000)에 저장된 지식 정보의 중요한 필드를 사용할 수 있으며, 상기 중요한 필드의 결정은 사용자가 가장 많이 찾고, 대표성이 있는 필드일 수 있으며, 휴리스틱(Heuristic)하게 결정될 수 있다.
예를 들어, TV 일정 도메인의 경우 프로그램 제목, 도서 검색의 경우 책의 제목이 중요한 필드로서 키워드로 사용될 수 있다. 웹 문서는 지식 정보 데이터베이스(1000)에 저장된 지식 정보에서 부족한 정보를 포함할 수 있어 상기 지식 정보를 보충할 수 있다. 예를 들어, 지식 정보 데이터베이스에 저장된 지식 정보인 "아시안컵"에 관한 정보는 웹 검색을 통하여 "조광래", "박지성" 등의 추가 정보를 획득하여 확장될 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (14)

  1. 정보 검색 시스템의 웹을 이용한 정보 검색 방법에 있어서,
    제공된 사용자 질의 및 언어 분석 결과 중 적어도 하나에 대한 기본 단어 벡터를 생성하고, 상기 기본 단어 벡터를 이용하여 벡터 공간 데이터베이스에서 상기 기본 단어 벡터에 대응되는 벡터 공간을 검색하는 기본 검색 단계;
    상기 기본 단어 벡터와 검색된 상기 벡터 공간과의 유사도를 판단하는 단계;
    상기 유사도가 미리 설정된 기준 이하인 경우, 상기 사용자 질의 및 상기 언어 분석 결과 중 적어도 하나를 이용하여 수행된 웹 검색 결과로부터, 확장 단어 벡터를 생성하고, 생성된 상기 확장 단어 벡터를 이용하여 상기 벡터 공간 데이터베이스에서 상기 확장 단어 벡터에 대응되는 벡터 공간을 검색하는 확장 검색 단계; 및
    상기 기본 검색 단계 또는 상기 확장 검색 단계에서 검색된 상기 벡터 공간에 기초하여 지식 정보를 검색하는 단계를 포함하는 웹을 이용한 정보 검색 방법.
  2. 제1항에 있어서,
    상기 기본 단어 벡터, 상기 확장 단어 벡터 및 상기 벡터 공간 데이터베이스에 저장된 벡터 공간은 단어, 가중치 정보 필드 및 구조 정보 필드 중 적어도 하나를 포함하는 것을 특징으로 하는 웹을 이용한 정보 검색 방법.
  3. 제1항에 있어서,
    상기 벡터 공간 데이터베이스는,
    상기 지식 정보를 벡터 공간으로 형성한 벡터 공간 기본 데이터베이스; 및
    상기 지식 정보를 이용하여 수행된 웹 검색 결과로부터 벡터 공간을 형성한 벡터 공간 확장 데이터베이스를 포함하는 것을 특징으로 하는 웹을 이용한 정보 검색 방법.
  4. 제1항에 있어서,
    상기 지식 정보를 검색하는 단계는,
    상기 확장 단어 벡터와 상기 검색된 적어도 하나의 벡터 공간과의 확장 검색 점수를 산출하고, 상기 확장 검색 점수에 따라 정렬하는 단계를 포함하는 것을 특징으로 하는 웹을 이용한 정보 검색 방법.
  5. 제4항에 있어서,
    상기 확장 검색 점수의 산출시에,
    상기 언어 분석 결과 또는 상기 사용자 질의로부터 생성되는 상기 확장 단어 벡터 및 벡터 공간 기본 데이터베이스와 벡터 공간 확장 데이터베이스에 저장된 상기 벡터 공간에 따라 가중치를 차등적으로 설정하는 것을 특징으로 하는 웹을 이용한 정보 검색 방법.
  6. 제5항에 있어서,
    상기 가중치는,
    상기 언어 분석 결과로부터 생성된 확장 단어 벡터가 상기 벡터 공간 기본 데이터베이스에 저장된 벡터 공간에 대응되는 경우 및 상기 사용자 질의로부터 생성된 확장 단어 벡터가 상기 벡터 공간 기본 데이터베이스에 저장된 벡터 공간에 대응되는 경우가, 상기 언어 분석 결과로부터 생성된 확장 단어 벡터가 벡터 공간 확장 데이터베이스에 저장된 벡터 공간에 대응되는 경우 및 상기 사용자 질의로부터 생성된 확장 단어 벡터가 벡터 공간 확장 데이터베이스에 저장된 벡터 공간에 대응되는 경우보다 큰 값으로 설정되는 것을 특징으로 하는 웹을 이용한 정보 검색 방법.
  7. 제5항에 있어서,
    상기 가중치는,
    상기 언어 분석 결과로부터 생성된 확장 단어 벡터가 상기 벡터 공간 기본 데이터베이스에 저장된 벡터 공간에 대응되는 경우에는 상기 사용자 질의로부터 생성된 확장 단어 벡터가 상기 벡터 공간 기본 데이터베이스에 저장된 벡터 공간에 대응되는 경우보다 큰 값으로 설정되고, 상기 언어 분석 결과로부터 생성된 확장 단어 벡터가 벡터 공간 확장 데이터베이스에 저장된 벡터 공간에 대응되는 경우에는 상기 사용자 질의로부터 생성된 확장 단어 벡터가 벡터 공간 확장 데이터베이스에 저장된 벡터 공간에 대응되는 경우보다 큰 값으로 설정되는 것을 특징으로 하는 웹을 이용한 정보 검색 방법.
  8. 정보 검색 시스템의 웹을 이용한 정보 검색 방법을 사용하는 음성 대화 방법에 있어서,
    제공된 음성 형태의 사용자 질의를 텍스트 형태로 변환하는 음성 인식 단계;
    상기 텍스트 형태로 변환된 사용자 질의에 언어 분석을 수행하는 언어 분석 단계;
    변환된 상기 사용자 질의 및 상기 언어 분석 결과 중 적어도 하나에 대한 기본 단어 벡터를 생성하고, 상기 기본 단어 벡터를 이용하여 벡터 공간 데이터베이스에서 상기 기본 단어 벡터에 대응되는 벡터 공간을 검색한 후, 상기 기본 단어 벡터와 검색된 상기 벡터 공간과의 유사도가 미리 설정된 기준 이하인 경우, 상기 사용자 질의 및 상기 언어 분석 결과 중 적어도 하나를 이용하여 수행된 웹 검색 결과로부터, 생성한 확장 단어 벡터를 이용하여 상기 벡터 공간 데이터베이스에서 상기 확장 단어 벡터에 대응되는 벡터 공간을 검색하고, 상기 기본 단어 벡터 또는 상기 확장 단어 벡터에 대응되어 검색된 상기 벡터 공간에 기초하여 지식 정보를 검색하는 웹을 이용한 정보 검색 단계;
    검색된 상기 지식 정보를 상기 사용자의 질의에 대응되는 응답으로 변환하는 응답 생성 단계; 및
    상기 응답을 음성 형태로 변환하는 음성 합성 단계를 포함하는 웹을 이용한 정보 검색 방법을 사용한 음성 대화 방법.
  9. 제8항에 있어서,
    상기 기본 단어 벡터, 상기 확장 단어 벡터 및 상기 벡터 공간 데이터베이스에 저장된 벡터 공간은 단어, 가중치 정보 필드 및 구조 정보 필드 중 적어도 하나를 포함하는 것을 특징으로 하는 웹을 이용한 정보 검색 방법을 사용한 음성 대화 방법.
  10. 제8항에 있어서,
    상기 벡터 공간 데이터베이스는,
    상기 지식 정보를 벡터 공간으로 형성한 벡터 공간 기본 데이터베이스; 및
    상기 지식 정보를 이용하여 수행된 웹 검색 결과로부터 벡터 공간을 형성한 벡터 공간 확장 데이터베이스를 포함하는 것을 특징으로 하는 웹을 이용한 정보 검색 방법을 사용한 음성 대화 방법.
  11. 제8항에 있어서,
    상기 지식 정보를 검색하는 단계는,
    상기 확장 단어 벡터와 상기 검색된 적어도 하나의 벡터 공간과의 확장 검색 점수를 산출하고, 상기 확장 검색 점수에 따라 정렬하는 단계를 포함하는 것을 특징으로 하는 웹을 이용한 정보 검색 방법을 사용한 음성 대화 방법.
  12. 제11항에 있어서,
    상기 확장 검색 점수의 산출시에,
    상기 언어 분석 결과 또는 상기 사용자 질의로부터 생성되는 상기 확장 단어 벡터 및 벡터 공간 기본 데이터베이스와 벡터 공간 확장 데이터베이스에 저장된 상기 벡터 공간에 따라 가중치를 차등적으로 설정하는 것을 특징으로 하는 웹을 이용한 정보 검색 방법을 사용한 음성 대화 방법.
  13. 제12항에 있어서,
    상기 가중치는,
    상기 언어 분석 결과로부터 생성된 확장 단어 벡터가 상기 벡터 공간 기본 데이터베이스에 저장된 벡터 공간에 대응되는 경우 및 상기 사용자 질의로부터 생성된 확장 단어 벡터가 상기 벡터 공간 기본 데이터베이스에 저장된 벡터 공간에 대응되는 경우가, 상기 언어 분석 결과로부터 생성된 확장 단어 벡터가 벡터 공간 확장 데이터베이스에 저장된 벡터 공간에 대응되는 경우 및 상기 사용자 질의로부터 생성된 확장 단어 벡터가 벡터 공간 확장 데이터베이스에 저장된 벡터 공간에 대응되는 경우 보다 큰 값으로 설정되는 것을 특징으로 하는 웹을 이용한 정보 검색 방법을 사용한 음성 대화 방법.
  14. 제12항에 있어서,
    상기 가중치는,
    상기 언어 분석 결과로부터 생성된 확장 단어 벡터가 상기 벡터 공간 기본 데이터베이스에 저장된 벡터 공간에 대응되는 경우에는 상기 사용자 질의로부터 생성된 확장 단어 벡터가 상기 벡터 공간 기본 데이터베이스에 저장된 벡터 공간에 대응되는 경우보다 큰 값으로 설정되고, 상기 언어 분석 결과로부터 생성된 확장 단어 벡터가 벡터 공간 확장 데이터베이스에 저장된 벡터 공간에 대응되는 경우에는 상기 사용자 질의로부터 생성된 확장 단어 벡터가 벡터 공간 확장 데이터베이스에 저장된 벡터 공간에 대응되는 경우보다 큰 값으로 설정되는 것을 특징으로 하는 웹을 이용한 정보 검색 방법을 사용한 음성 대화 방법.
PCT/KR2012/004405 2011-06-02 2012-06-04 웹을 이용한 정보 검색 방법 및 이를 사용하는 음성 대화 방법 WO2012165929A2 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201280026904.0A CN103562919B (zh) 2011-06-02 2012-06-04 利用网络的信息检索方法及相应的语音对话方法
US14/123,449 US9213746B2 (en) 2011-06-02 2012-06-04 Method for searching for information using the web and method for voice conversation using same
EP12792843.0A EP2717176A4 (en) 2011-06-02 2012-06-04 METHOD FOR SEARCHING FOR INFORMATION ON THE INTERNET AND LANGUAGE CONVERSION METHOD THEREFOR

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2011-0053400 2011-06-02
KR1020110053400A KR101252397B1 (ko) 2011-06-02 2011-06-02 웹을 이용한 정보 검색 방법 및 이를 사용하는 음성 대화 방법

Publications (2)

Publication Number Publication Date
WO2012165929A2 true WO2012165929A2 (ko) 2012-12-06
WO2012165929A3 WO2012165929A3 (ko) 2013-02-07

Family

ID=47260131

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2012/004405 WO2012165929A2 (ko) 2011-06-02 2012-06-04 웹을 이용한 정보 검색 방법 및 이를 사용하는 음성 대화 방법

Country Status (5)

Country Link
US (1) US9213746B2 (ko)
EP (1) EP2717176A4 (ko)
KR (1) KR101252397B1 (ko)
CN (1) CN103562919B (ko)
WO (1) WO2012165929A2 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103116649A (zh) * 2013-02-28 2013-05-22 用友软件股份有限公司 数据分析系统和数据分析方法
CN109635093A (zh) * 2018-12-17 2019-04-16 北京百度网讯科技有限公司 用于生成回复语句的方法和装置
US10430518B2 (en) 2017-01-22 2019-10-01 Alibaba Group Holding Limited Word vector processing for foreign languages

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150120723A1 (en) * 2013-10-24 2015-04-30 Xerox Corporation Methods and systems for processing speech queries
WO2015102124A1 (ko) * 2013-12-31 2015-07-09 엘지전자 주식회사 대화 서비스 제공 장치 및 방법
JP6400038B2 (ja) * 2016-03-18 2018-10-03 ヤフー株式会社 抽出装置および抽出方法
KR102604552B1 (ko) * 2016-07-15 2023-11-22 삼성전자주식회사 단어 임베딩 방법, 단어 임베딩 장치, 음성 인식 방법 및 음성 인식 장치
JP6787770B2 (ja) * 2016-12-14 2020-11-18 東京都公立大学法人 言語記憶方法及び言語対話システム
CN107993650A (zh) * 2017-11-30 2018-05-04 百度在线网络技术(北京)有限公司 用于生成信息的方法和装置
KR102069076B1 (ko) * 2018-05-11 2020-01-22 경북대학교 산학협력단 대화문장 생성 장치, 이를 포함하는 대화로봇 및 대화문장 생성 방법
US11055329B2 (en) * 2018-05-31 2021-07-06 Microsoft Technology Licensing, Llc Query and information meter for query session
US11615144B2 (en) * 2018-05-31 2023-03-28 Microsoft Technology Licensing, Llc Machine learning query session enhancement
US20200135189A1 (en) * 2018-10-25 2020-04-30 Toshiba Tec Kabushiki Kaisha System and method for integrated printing of voice assistant search results
CN109920430A (zh) * 2019-01-10 2019-06-21 上海言通网络科技有限公司 语音识别语义处理系统及其方法
CN110277086B (zh) * 2019-06-25 2021-11-19 中国科学院自动化研究所 基于电网调度知识图谱的语音合成方法、系统及电子设备
KR20240050164A (ko) 2022-10-11 2024-04-18 재단법인 아산사회복지재단 인공 지능 기반의 의료기기 상담 지원 서비스를 제공하는 방법 및 장치
US12111858B1 (en) * 2023-10-04 2024-10-08 Salesforce, Inc. Database system interaction embedding and indexing for text retrieval and generation

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6480819B1 (en) * 1999-02-25 2002-11-12 Matsushita Electric Industrial Co., Ltd. Automatic search of audio channels by matching viewer-spoken words against closed-caption/audio content for interactive television
KR100467104B1 (ko) * 2001-05-11 2005-01-24 김시환 정보 검색 시스템과 그 방법
KR100792208B1 (ko) * 2005-12-05 2008-01-08 한국전자통신연구원 음성 대화 시스템에서 답변 문장 생성 방법 및 장치
KR100816923B1 (ko) * 2006-04-13 2008-03-26 엘지전자 주식회사 문서 분류 시스템 및 그 방법
CA2653932C (en) * 2006-06-02 2013-03-19 Telcordia Technologies, Inc. Concept based cross media indexing and retrieval of speech documents
KR100862583B1 (ko) * 2007-08-20 2008-10-09 인하대학교 산학협력단 의사연관피드백과 비음수 행렬 분해를 이용한 문서요약장치 및 방법
KR101300839B1 (ko) * 2007-12-18 2013-09-10 삼성전자주식회사 음성 검색어 확장 방법 및 시스템
US7809715B2 (en) * 2008-04-15 2010-10-05 Yahoo! Inc. Abbreviation handling in web search
KR101289081B1 (ko) * 2009-09-10 2013-07-22 한국전자통신연구원 음성 인터페이스를 이용한 iptv 시스템 및 서비스 방법
US8630860B1 (en) * 2011-03-03 2014-01-14 Nuance Communications, Inc. Speaker and call characteristic sensitive open voice search

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
None
See also references of EP2717176A4

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103116649A (zh) * 2013-02-28 2013-05-22 用友软件股份有限公司 数据分析系统和数据分析方法
CN103116649B (zh) * 2013-02-28 2016-09-14 用友网络科技股份有限公司 数据分析系统和数据分析方法
US10430518B2 (en) 2017-01-22 2019-10-01 Alibaba Group Holding Limited Word vector processing for foreign languages
US10878199B2 (en) 2017-01-22 2020-12-29 Advanced New Technologies Co., Ltd. Word vector processing for foreign languages
CN109635093A (zh) * 2018-12-17 2019-04-16 北京百度网讯科技有限公司 用于生成回复语句的方法和装置
CN109635093B (zh) * 2018-12-17 2022-05-27 北京百度网讯科技有限公司 用于生成回复语句的方法和装置

Also Published As

Publication number Publication date
KR101252397B1 (ko) 2013-04-08
US9213746B2 (en) 2015-12-15
CN103562919A (zh) 2014-02-05
KR20120135449A (ko) 2012-12-14
US20140108389A1 (en) 2014-04-17
CN103562919B (zh) 2017-02-15
WO2012165929A3 (ko) 2013-02-07
EP2717176A4 (en) 2015-02-25
EP2717176A2 (en) 2014-04-09

Similar Documents

Publication Publication Date Title
WO2012165929A2 (ko) 웹을 이용한 정보 검색 방법 및 이를 사용하는 음성 대화 방법
JP5825676B2 (ja) ノン・ファクトイド型質問応答システム及びコンピュータプログラム
WO2020122456A1 (ko) 이미지와 텍스트간 유사도 매칭 시스템 및 방법
WO2021100902A1 (ko) 문장 패러프레이즈 인식 기반 대화 시스템 답변 방법
WO2011129481A1 (ko) Rdf 탐색기반 질의응답 서비스 시스템 및 방법
US11875585B2 (en) Semantic cluster formation in deep learning intelligent assistants
US10474747B2 (en) Adjusting time dependent terminology in a question and answer system
CN110096599B (zh) 知识图谱的生成方法及装置
CN110888970B (zh) 文本生成方法、装置、终端和存储介质
CN114880447A (zh) 信息检索方法、装置、设备及存储介质
JP2010267247A (ja) 情報検索装置、情報検索方法、端末装置、およびプログラム
WO2018147543A1 (ko) 개념 그래프 기반 질의응답 시스템 및 이를 이용한 문맥 검색 방법
WO2014148664A1 (ko) 단어의 의미를 기반으로 하는 다국어 검색 시스템, 다국어 검색 방법 및 이를 이용한 이미지 검색 시스템
KR20020010226A (ko) 자연어로 입력된 사용자의 질문을 인공지능 시스템이분석하여 인터넷에 존재하는 정보를 효과적으로 제시하는서비스에 대한방법
CN116775980B (zh) 一种跨模态搜索方法及相关设备
JP4153843B2 (ja) 自然文検索装置、自然文検索方法、自然文検索プログラム及び自然文検索プログラム記憶媒体
JP2010266971A (ja) 端末装置
JP2021144633A (ja) ユーザの関心度に応じて対話内容を切り替える対話装置、プログラム及び方法
JP2010266970A (ja) 情報検索装置、情報検索方法、辞書作成装置、およびプログラム
CN108228885A (zh) 一种通过sql语句查询搜索引擎的方法
WO2016089110A1 (ko) 엔트리 기반 지식자원 생성 장치 및 방법
KR101164292B1 (ko) 양태 분석 장치, 양태 분석 방법, 저장 매체, 정보 제공 시스템, 정보 제공 서비스 서버 및 정보 제공 방법
CN117725153B (zh) 文本匹配方法、装置、电子设备和存储介质
JP2000259627A (ja) 自然言語文関係判定装置、自然言語文関係判定方法およびこれを用いた検索装置、検索方法ならびに記録媒体
JP2685808B2 (ja) 利用者支援型入力文応答処理装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12792843

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 14123449

Country of ref document: US