CA2530268A1 - A system and method for providing a natural language interface to a database - Google Patents
A system and method for providing a natural language interface to a database Download PDFInfo
- Publication number
- CA2530268A1 CA2530268A1 CA 2530268 CA2530268A CA2530268A1 CA 2530268 A1 CA2530268 A1 CA 2530268A1 CA 2530268 CA2530268 CA 2530268 CA 2530268 A CA2530268 A CA 2530268A CA 2530268 A1 CA2530268 A1 CA 2530268A1
- Authority
- CA
- Canada
- Prior art keywords
- response
- pages
- user
- query
- natural language
- Prior art date
- Legal status (The legal status 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 status listed.)
- Abandoned
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 230000004044 response Effects 0.000 claims abstract description 34
- 230000008569 process Effects 0.000 claims description 5
- 238000010801 machine learning Methods 0.000 claims description 2
- 230000008901 benefit Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 2
- 240000008042 Zea mays Species 0.000 description 1
- 235000005824 Zea mays ssp. parviglumis Nutrition 0.000 description 1
- 235000002017 Zea mays subsp mays Nutrition 0.000 description 1
- 235000005822 corn Nutrition 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 210000003625 skull Anatomy 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9538—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3334—Selection or weighting of terms from queries, including natural language queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/06—Transformation of speech into a non-audible representation, e.g. speech visualisation or speech processing for tactile aids
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Quality & Reliability (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
A system and method for providing a natural language interface to a database or the Internet.
The method provides a response from a database to a natural language query.
The method comprises receiving a user query, extracting key data from the user query, submitting the extracted key data to a data base search engine to retrieve a top n pages from the data base, processing of the top n pages through a natural language dialog engine and providing a response based on processing the top n pages.
The method provides a response from a database to a natural language query.
The method comprises receiving a user query, extracting key data from the user query, submitting the extracted key data to a data base search engine to retrieve a top n pages from the data base, processing of the top n pages through a natural language dialog engine and providing a response based on processing the top n pages.
Description
Attorney Docket 2004-0319 A SYSTEM AND METHOD FOR PROVIDING A NATURAL LANGUAGE
INTERFACE TO A DATABASE
BACKGROUND OF THE INVENTION
1. Field of the Invention (0001) The present invention relates to a system and method of providing a natural language interface to a database such as the Internet.
INTERFACE TO A DATABASE
BACKGROUND OF THE INVENTION
1. Field of the Invention (0001) The present invention relates to a system and method of providing a natural language interface to a database such as the Internet.
2. Introduction (0002) Recently, a large number of web based search engines, such as Yahoo~
and Google ~, have become widely available making it easier to find information over the Internet. The operation of these search engines is shown in FIG. 1 wherein a user with a computing device 102, such as a desktop computer or wireless handheld computing device, has client software such as a web browser that receives text in an input field. The web browser is directed to the website of the search engine (such as www.google.,_ corn) which is transmitted ~rom a search engine server 106 to the computing device 102. The search engine receives the query text and uses a particular search algorithm to search billions of webpages within the World-Wide-Web (~X1WD~ 104.
and Google ~, have become widely available making it easier to find information over the Internet. The operation of these search engines is shown in FIG. 1 wherein a user with a computing device 102, such as a desktop computer or wireless handheld computing device, has client software such as a web browser that receives text in an input field. The web browser is directed to the website of the search engine (such as www.google.,_ corn) which is transmitted ~rom a search engine server 106 to the computing device 102. The search engine receives the query text and uses a particular search algorithm to search billions of webpages within the World-Wide-Web (~X1WD~ 104.
(0003) These search engines came to organize the billions of pages of information on the VtIWW
in such a way as to make them accessible and useful for those who submit queries into the search engine input field. The key technical innovation in the search engines lies in the ability to index all words and phrases in the WWVU and use an efficient information retrieval algorithm along with many computers to be able to instantly find information per the user's request.
in such a way as to make them accessible and useful for those who submit queries into the search engine input field. The key technical innovation in the search engines lies in the ability to index all words and phrases in the WWVU and use an efficient information retrieval algorithm along with many computers to be able to instantly find information per the user's request.
(0004) Finding information about a subject is as simple as typing keywords into an input field.
This is illustrated in FIG. 2. For example, if the user desired to learn information about hurricanes, the user can simply type in the phrase "hurricane" into the search engine input field (202). The query is submitted to a search engine (204) which returns an ordered list of webpages according to the particular search engine algorithm (206). Although searching and Attorney Docket 2004-0319 mining the web has never been any easier, there still remains a manual process fox users need to examine the top five or ten pages from the search to identify the answer to their query.
Therefore, if one is looking to find out what the wind speed is of hurricane Ivan, then typing this question into the Google input field for example could provide an article that states "Hurncane Ivan is gaining speed and power". While this is clearly relevant to the question, and contains the correct key words, it does not answer the query correctly. Although it is natural for humans to think in terms of asking questions, and not merely ke~~vords, and key phrases, humans have certainly become accustomed to operating differently when dealing with standard search engines.
This is illustrated in FIG. 2. For example, if the user desired to learn information about hurricanes, the user can simply type in the phrase "hurricane" into the search engine input field (202). The query is submitted to a search engine (204) which returns an ordered list of webpages according to the particular search engine algorithm (206). Although searching and Attorney Docket 2004-0319 mining the web has never been any easier, there still remains a manual process fox users need to examine the top five or ten pages from the search to identify the answer to their query.
Therefore, if one is looking to find out what the wind speed is of hurricane Ivan, then typing this question into the Google input field for example could provide an article that states "Hurncane Ivan is gaining speed and power". While this is clearly relevant to the question, and contains the correct key words, it does not answer the query correctly. Although it is natural for humans to think in terms of asking questions, and not merely ke~~vords, and key phrases, humans have certainly become accustomed to operating differently when dealing with standard search engines.
[0005] Users typically Type keywords such as Hurricane-speed and then manually search through the relevant documents for the answer to the original question.
Finding the answer typically requires the user to search manually through each page and look for the appropriate answer. When an answer cannot be found, users would normally provide alternative words in the hope of getting a different ranking of Website.
Finding the answer typically requires the user to search manually through each page and look for the appropriate answer. When an answer cannot be found, users would normally provide alternative words in the hope of getting a different ranking of Website.
(0006] Another search engine example will further illustrate the problem of the types of responses delivered from the search query. This example relates to a user who desires to find a specific type of information on a technical computer question or error message. On the WWW, many websites have developed to provide information technology (IT) solutions to specific error messages. These websites house a growing database of content generated by users submitting questions and a technical community providing answers. In this manner, threads of information develop on specific IT problems. The websites then may present a large number of these threads, where each thread includes a particular question or technical issue and the various responses and attempted solutions to the problem. Therefore, when others receive the same error message, they can find the solution to the problem.
[0007] For example, a user may have the Microsoft~ Word application crash with the error message "Winword.exe requested the runtime tern~ination in an unusual way".
The user may submit ke«vords from this error message into the Google search engine and get a response with Attorney Docket 2004-0319 a number of webpages that contain multiple threads dealing with various Microsoft Word problems. The user is then left to search multiple threads of information to find the particular thread that relates to the particular error message. In some cases, there may be hundreds of threads with no mechanism to find the specific answer. Furthermore, access to the threads may be obtained only via a password and subscription to the website. The user can get to the certain website wherein the answer to the query is found but then be faced with multiple interactive threads in which one of the threads holds the answer to the question. But the user cannot identify which is the appropriate thread within the website that contains the answer to the question.
(0008 This illustrates a basic problem with search engines in that they do not provide specific answers to user's questions and are based on non-natural language keyword searching. In this regard the standard search engines in some cases are not useful because they only identify Websites containing many links to other webpages and may not provide controlled access to a deeper layer of information which may hold a specific answer to the user's question.
(0009 Accordingly, what is needed in the art is a system and method of enabling a user to query a data base such as the WWVU and obtain a precise answer to a question.
SUMMARY OF THE INVENTION
(0010 Additional features and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The features and advantages of the invention may be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims.
These and other features of the present invention will become more fully apparent from the following description and appended claims, or may be learned by the practice of the invention as set forth herein.
Attorney Docket 2004-0319 [0011 A system, method and computer-readable media for providing a natural language interface to a database or the Internet are disclosed. The method provides a response from a database to a natural language query. The method comprises receiving a user query, extracting key data from the user query, submitting the extracted key data to a data base search engine to retrieve a top n pages from the data base, processing of the top n pages through a natural language dialog engine and providing a response based on processing the top n pages.
BRIEF DESCRIPTION OF THE DRAWINGS
[0012 In order to describe the manner in which the above-recited and other advantages and features of the invention can be obtained, a more particular description of the invention briefly described above will be rendered by reference to specific embodiments thereof which are illustrated in the appended drawings. Understanding that these drawings depict only typical embodiments of the invention and are not therefore to be considered to be limiting of its scope, the invention will be described and explained with additional specificity and detail through the use of the accompanying drawings in which:
(0013 FIG. 1 illustrates the basic architecture for searching the Internet;
(0014 FIG. 2 illustrates the prior art method of entering a query to a search engine and receiving an ordered response of web pages;
[0015 FIG. 3 illustrates the basic architecture according to an embodiment of the present invention; and [001 G] FIG. 4 illustrates a method embodiment of the invention.
DETAILED DESCRIPTION OF THE INVENTION
[0017) Various embodiments of the invention are discussed in detail below.
While specific implementations are discussed, it should be understood that this is done for illustration purposes Attorney Docket 2004-0319 only. A person skilled in the relevant art will recognize that other components and configurations may be used without parting from the spirit and scope of the invention.
(0018] The present invention relates to systems, methods and computer-readable media for providing a natural language dialog to a database such as the WWVU, a corporate database, a private database or any other database. As can be appreciated, the primary benefit of the invention will be to search the WWVU but there is no restriction unless specifically claimed to that as the searched database. FIG. 3 illustrates an exemplary architecture for the invention. The computing devices and servers shown may include such known hardware components as a central processor, a bus connecting various hardware components, memory, storage means such as a hard disk, random access memory, means for communicating and networking with other computers, and so forth. These components, improvements and variations thereof based on different devices are known to those of skull in the art.
(0019] As shown in FIG. 3, a computing device 302 enables a user to interact with the device 302 as well as other databases such as the WV~1W 104. The computing device 302 may be, for example, a desktop or laptop computer or a handheld wireless device. There is no restriction on the particular configuration of the computing device hardware or the particular means with which it communicates with other computing devices for searching the VUWW or any other database. The compute device runs software that provides a user interface for interacting with the device. In one example, the client software is a browser 314 such as Internet Explorer~ or Mozilla~ wherein a user can direct the browser to a search engine website such as www.google.com. The search engine server 312 serves the webpage to the user on the compute device and when the user inputs a text search, the server 312 uses an algorithm to search billions of webpages from the database 104 and presents an ordered list to the user's browser 314.
(0020] The invention provides for a natural language dialog approach to searching a database.
In one aspect of the invention, the computing device includes a microphone 306 for receiving voice input from the user. An automatic speech recognition (ASR) engine or module 308 Attomev Docket 2004-0319 converts the speech into text 310. While the ASR engine is shown as part of the computing device 302, there is no restriction on where any particular hardware or software component resides. Fox example, the microphone may be separate from the computing device 302 and the ASR module may run on the dialog server 304 instead of the compute device 302.
Those of skill in the art will understand the variations that are possible and contemplated while maintaining the core principles of the invention. It is preferably that a large vocabulary speech recognizes be used as the front-end to the user's request.
[0021 The text is transmitted to a dialog server 304 that extracts key data from the user query.
Various modules may be programmed to perform the steps set forth herein for practicing the invention. Those of skill in the art will understand the programming language and means for creating these various modules. Reference is also made to FIG. 4 as the steps of the method embodiment of the invention are discussed. A benefit from this invention is that the user can provide a natural language speech query that he or she would not otherwise input into a search engine such as www.g_oog_le.com. The user may say, for example, "what was the top speed of hurncane Ivan?". The system receives the user query (402). The extracted key data (404) is preferably key phrases and keywords from the natural language query. This key data may be extracted from various algorithms known to those of skill in the art, such as a variation of Information Retrieval-based methods with TFIDF (Term-frequency Inverse document frequency measure). Examples of the key data in this query could be "top speed" and "hurncane Ivan".
(0022 Once the key data is extracted from the user query, the data (words and/or phrases) are used as input to at least one search engine such as Google (406). In one aspect of the invention, the data is submitted to a plurality of search engines simultaneously or in a particular order or a random order. The results from the search engine search (or search from multiple search engines) identify a top n pages.
Attorney Docket 2004-0319 [0023) The top n pages may be organized or pre-processed by the server 304 to prepare the n pages for processing through a natural language dialog engine (408). One example of such preprocessing would be to automatically manage entry of a user's login name and password to entry fields associated with a website (such as the IT help website discussed above) which enable the system to process the pages viewable by registration only or where any kind of security, restrictions or access steps need to be taken for viewing. This may be an entry based on a previous manual registration by the user or may be an automatic negotiation between the server 304 and the particular website unknown to the end user or as part of a subscription plan in which the user may be automatically charged a certain fee to obtain the one-time access to the data in the website. Websites with restricted or registration-only access may need to be modified to enable negotiation based on a pre-registration or dynamically at the time of the search and response. In other words, some of the top n pages may require some password or other steps necessary to view and gain access to that data for processing and preparing the response.
[0024) A dialog engine as used in the invention may be based on, for example, question and answer technology and is able to process the pages and provide a natural language response to the question asked. Those of skill in the art are aware of such engines in that they are available from such companies as IBM and AT&T Corp. The natural language response may be based, for example, on particular text found within the top n pages. Taking the IT
support example above where the user is presented with hundreds of threads of conversations, a benefit of processing the webpages and links from those webpages as well is that a natural language result can be presented to the user without the need for the user to cull through so many threads to find their answer.
[0025) From the dialog engine processing, a natural language response is generated (410). At this point, there are a number of technologies for presenting that response to the user. For example, the response may be generated as text in which case a text-to-speech module running Attorney Docket 2004-0319 on any computing device within the architecture can "speak" the answer to the user. Or, the user may be presented with the text of the answer in a browser with further organized options to click on the underlying pages where the information was retrieved or to view other websites and so forth.
(0026] In the hurricane example, the user may be presented with the answer either as text or audibly: "The top speed of Hurricane Ivan was 155 miles per hour, more information may be found at this link."
(0027] The invention may operate in both a text-based mode and a speech-based mode. It is further contemplated that a mufti-media presentation may be used to enhance the interaction.
For example, a virtual agent may be the interactive means by which the user speaks to provide the query and from which the response received. In this regard, an aspect of the invention is that it can operate in a dialog mode or an instant messaging mode where the user can chat with a virtual agent to get information or to provide subsequent relates questions on the same topic.
The invention improves the user's ability to receive a specific response to a natural language query that is not possible from the known search engine approach that presents a plurality of webpages that may or may not contain the answer to the user's query.
(0028] In another aspect of the invention, a machine learning algorithm continues to find related documents from the database related to the input query and can expand the search accordingly.
The option to search through these additional documents may be presented to the user via a graphical user interface such as the browser or through a virtual agent.
(0029] Embodiments within the scope of the present invention may also include computer-readable media for carrying or having computer-executable instructions or data structures stored thereon. Such computer-readable media can be any available media that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or anv other medium which can Attomev Docket 2004-0319 be used to carry or store desired program code means in the form of computer-executable instructions or data structures. When information is transferred or provided over a network or another communications connection (either hardwired, wireless, or combination thereof) to a computer, the computer properly views the connection as a computer-readable medium. Thus, any such connection is properly termed a computer-readable medium.
Combinations of the above should also be included within the scope of the computer-readable media.
(0030] Computer-executable instructions include, for example, instructions and data which cause a general purpose computer, special purpose computer, or special purpose processing device to perform a certain function or group of functions. Computer-executable instructions also include program modules that are executed by computers in stand-alone or network environments. Generally, program modules include routines, programs, objects, components, and data structures, etc. that perform particular tasks or implement particular abstract data types.
Computer-executable instructions, associated data structures, and program modules represent examples of the program code means for executing steps of the methods disclosed herein. The particular sequence of such executable instructions or associated data structures represents examples of corresponding acts for implementing the functions described in such steps.
(0031] Those of skill in the art will appreciate that other embodiments of the invention may be practiced in network computing environments with many types of computer system configurations, including personal computers, hand-held devices, multi-processor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like. Embodiments may also be practiced in distributed computing environments where tasks are performed by local and remote processing devices that are linked (either by hardwired links, wireless links, or by a combination thereof] through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
attorney Docket 2004-0319 (0032 Although the above description may contain specific details, they should not be construed as limiting the claims in any way. Other configurations of the described embodiments of the invention are part of the scope of this invention. Accordingly, the appended claims and their legal equivalents should only define the invention, rather than any specific examples given.
The user may submit ke«vords from this error message into the Google search engine and get a response with Attorney Docket 2004-0319 a number of webpages that contain multiple threads dealing with various Microsoft Word problems. The user is then left to search multiple threads of information to find the particular thread that relates to the particular error message. In some cases, there may be hundreds of threads with no mechanism to find the specific answer. Furthermore, access to the threads may be obtained only via a password and subscription to the website. The user can get to the certain website wherein the answer to the query is found but then be faced with multiple interactive threads in which one of the threads holds the answer to the question. But the user cannot identify which is the appropriate thread within the website that contains the answer to the question.
(0008 This illustrates a basic problem with search engines in that they do not provide specific answers to user's questions and are based on non-natural language keyword searching. In this regard the standard search engines in some cases are not useful because they only identify Websites containing many links to other webpages and may not provide controlled access to a deeper layer of information which may hold a specific answer to the user's question.
(0009 Accordingly, what is needed in the art is a system and method of enabling a user to query a data base such as the WWVU and obtain a precise answer to a question.
SUMMARY OF THE INVENTION
(0010 Additional features and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The features and advantages of the invention may be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims.
These and other features of the present invention will become more fully apparent from the following description and appended claims, or may be learned by the practice of the invention as set forth herein.
Attorney Docket 2004-0319 [0011 A system, method and computer-readable media for providing a natural language interface to a database or the Internet are disclosed. The method provides a response from a database to a natural language query. The method comprises receiving a user query, extracting key data from the user query, submitting the extracted key data to a data base search engine to retrieve a top n pages from the data base, processing of the top n pages through a natural language dialog engine and providing a response based on processing the top n pages.
BRIEF DESCRIPTION OF THE DRAWINGS
[0012 In order to describe the manner in which the above-recited and other advantages and features of the invention can be obtained, a more particular description of the invention briefly described above will be rendered by reference to specific embodiments thereof which are illustrated in the appended drawings. Understanding that these drawings depict only typical embodiments of the invention and are not therefore to be considered to be limiting of its scope, the invention will be described and explained with additional specificity and detail through the use of the accompanying drawings in which:
(0013 FIG. 1 illustrates the basic architecture for searching the Internet;
(0014 FIG. 2 illustrates the prior art method of entering a query to a search engine and receiving an ordered response of web pages;
[0015 FIG. 3 illustrates the basic architecture according to an embodiment of the present invention; and [001 G] FIG. 4 illustrates a method embodiment of the invention.
DETAILED DESCRIPTION OF THE INVENTION
[0017) Various embodiments of the invention are discussed in detail below.
While specific implementations are discussed, it should be understood that this is done for illustration purposes Attorney Docket 2004-0319 only. A person skilled in the relevant art will recognize that other components and configurations may be used without parting from the spirit and scope of the invention.
(0018] The present invention relates to systems, methods and computer-readable media for providing a natural language dialog to a database such as the WWVU, a corporate database, a private database or any other database. As can be appreciated, the primary benefit of the invention will be to search the WWVU but there is no restriction unless specifically claimed to that as the searched database. FIG. 3 illustrates an exemplary architecture for the invention. The computing devices and servers shown may include such known hardware components as a central processor, a bus connecting various hardware components, memory, storage means such as a hard disk, random access memory, means for communicating and networking with other computers, and so forth. These components, improvements and variations thereof based on different devices are known to those of skull in the art.
(0019] As shown in FIG. 3, a computing device 302 enables a user to interact with the device 302 as well as other databases such as the WV~1W 104. The computing device 302 may be, for example, a desktop or laptop computer or a handheld wireless device. There is no restriction on the particular configuration of the computing device hardware or the particular means with which it communicates with other computing devices for searching the VUWW or any other database. The compute device runs software that provides a user interface for interacting with the device. In one example, the client software is a browser 314 such as Internet Explorer~ or Mozilla~ wherein a user can direct the browser to a search engine website such as www.google.com. The search engine server 312 serves the webpage to the user on the compute device and when the user inputs a text search, the server 312 uses an algorithm to search billions of webpages from the database 104 and presents an ordered list to the user's browser 314.
(0020] The invention provides for a natural language dialog approach to searching a database.
In one aspect of the invention, the computing device includes a microphone 306 for receiving voice input from the user. An automatic speech recognition (ASR) engine or module 308 Attomev Docket 2004-0319 converts the speech into text 310. While the ASR engine is shown as part of the computing device 302, there is no restriction on where any particular hardware or software component resides. Fox example, the microphone may be separate from the computing device 302 and the ASR module may run on the dialog server 304 instead of the compute device 302.
Those of skill in the art will understand the variations that are possible and contemplated while maintaining the core principles of the invention. It is preferably that a large vocabulary speech recognizes be used as the front-end to the user's request.
[0021 The text is transmitted to a dialog server 304 that extracts key data from the user query.
Various modules may be programmed to perform the steps set forth herein for practicing the invention. Those of skill in the art will understand the programming language and means for creating these various modules. Reference is also made to FIG. 4 as the steps of the method embodiment of the invention are discussed. A benefit from this invention is that the user can provide a natural language speech query that he or she would not otherwise input into a search engine such as www.g_oog_le.com. The user may say, for example, "what was the top speed of hurncane Ivan?". The system receives the user query (402). The extracted key data (404) is preferably key phrases and keywords from the natural language query. This key data may be extracted from various algorithms known to those of skill in the art, such as a variation of Information Retrieval-based methods with TFIDF (Term-frequency Inverse document frequency measure). Examples of the key data in this query could be "top speed" and "hurncane Ivan".
(0022 Once the key data is extracted from the user query, the data (words and/or phrases) are used as input to at least one search engine such as Google (406). In one aspect of the invention, the data is submitted to a plurality of search engines simultaneously or in a particular order or a random order. The results from the search engine search (or search from multiple search engines) identify a top n pages.
Attorney Docket 2004-0319 [0023) The top n pages may be organized or pre-processed by the server 304 to prepare the n pages for processing through a natural language dialog engine (408). One example of such preprocessing would be to automatically manage entry of a user's login name and password to entry fields associated with a website (such as the IT help website discussed above) which enable the system to process the pages viewable by registration only or where any kind of security, restrictions or access steps need to be taken for viewing. This may be an entry based on a previous manual registration by the user or may be an automatic negotiation between the server 304 and the particular website unknown to the end user or as part of a subscription plan in which the user may be automatically charged a certain fee to obtain the one-time access to the data in the website. Websites with restricted or registration-only access may need to be modified to enable negotiation based on a pre-registration or dynamically at the time of the search and response. In other words, some of the top n pages may require some password or other steps necessary to view and gain access to that data for processing and preparing the response.
[0024) A dialog engine as used in the invention may be based on, for example, question and answer technology and is able to process the pages and provide a natural language response to the question asked. Those of skill in the art are aware of such engines in that they are available from such companies as IBM and AT&T Corp. The natural language response may be based, for example, on particular text found within the top n pages. Taking the IT
support example above where the user is presented with hundreds of threads of conversations, a benefit of processing the webpages and links from those webpages as well is that a natural language result can be presented to the user without the need for the user to cull through so many threads to find their answer.
[0025) From the dialog engine processing, a natural language response is generated (410). At this point, there are a number of technologies for presenting that response to the user. For example, the response may be generated as text in which case a text-to-speech module running Attorney Docket 2004-0319 on any computing device within the architecture can "speak" the answer to the user. Or, the user may be presented with the text of the answer in a browser with further organized options to click on the underlying pages where the information was retrieved or to view other websites and so forth.
(0026] In the hurricane example, the user may be presented with the answer either as text or audibly: "The top speed of Hurricane Ivan was 155 miles per hour, more information may be found at this link."
(0027] The invention may operate in both a text-based mode and a speech-based mode. It is further contemplated that a mufti-media presentation may be used to enhance the interaction.
For example, a virtual agent may be the interactive means by which the user speaks to provide the query and from which the response received. In this regard, an aspect of the invention is that it can operate in a dialog mode or an instant messaging mode where the user can chat with a virtual agent to get information or to provide subsequent relates questions on the same topic.
The invention improves the user's ability to receive a specific response to a natural language query that is not possible from the known search engine approach that presents a plurality of webpages that may or may not contain the answer to the user's query.
(0028] In another aspect of the invention, a machine learning algorithm continues to find related documents from the database related to the input query and can expand the search accordingly.
The option to search through these additional documents may be presented to the user via a graphical user interface such as the browser or through a virtual agent.
(0029] Embodiments within the scope of the present invention may also include computer-readable media for carrying or having computer-executable instructions or data structures stored thereon. Such computer-readable media can be any available media that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or anv other medium which can Attomev Docket 2004-0319 be used to carry or store desired program code means in the form of computer-executable instructions or data structures. When information is transferred or provided over a network or another communications connection (either hardwired, wireless, or combination thereof) to a computer, the computer properly views the connection as a computer-readable medium. Thus, any such connection is properly termed a computer-readable medium.
Combinations of the above should also be included within the scope of the computer-readable media.
(0030] Computer-executable instructions include, for example, instructions and data which cause a general purpose computer, special purpose computer, or special purpose processing device to perform a certain function or group of functions. Computer-executable instructions also include program modules that are executed by computers in stand-alone or network environments. Generally, program modules include routines, programs, objects, components, and data structures, etc. that perform particular tasks or implement particular abstract data types.
Computer-executable instructions, associated data structures, and program modules represent examples of the program code means for executing steps of the methods disclosed herein. The particular sequence of such executable instructions or associated data structures represents examples of corresponding acts for implementing the functions described in such steps.
(0031] Those of skill in the art will appreciate that other embodiments of the invention may be practiced in network computing environments with many types of computer system configurations, including personal computers, hand-held devices, multi-processor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like. Embodiments may also be practiced in distributed computing environments where tasks are performed by local and remote processing devices that are linked (either by hardwired links, wireless links, or by a combination thereof] through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
attorney Docket 2004-0319 (0032 Although the above description may contain specific details, they should not be construed as limiting the claims in any way. Other configurations of the described embodiments of the invention are part of the scope of this invention. Accordingly, the appended claims and their legal equivalents should only define the invention, rather than any specific examples given.
Claims (20)
1. A method for providing a response to a query, the method comprising:
receiving a user query;
extracting key data from the user query;
submitting the extracted key data to a data base search engine to retrieve a top n pages from the data base;
processing of the top n pages through a natural language dialog engine; and providing a response based on processing the top n pages.
receiving a user query;
extracting key data from the user query;
submitting the extracted key data to a data base search engine to retrieve a top n pages from the data base;
processing of the top n pages through a natural language dialog engine; and providing a response based on processing the top n pages.
2. The method of claim 1, wherein the user query is one of a natural language speech query or a text based query.
3. The method of claim 1, wherein the key data is at least one of the key words and key phrases.
4. The method of claim 1, wherein submitting the extracted key data to a database search engine further comprises submitting at the extracted key data to a plurality of search engines.
5. The method of claim 1, wherein the user can select one of a text input mode, a speech input mode or a dialog mode.
6. The method of claim 1, wherein the user input is received via a large vocabulary speech recognizer.
7. The method of claim 1 wherein the response is a natural language response provided via synthetic speech.
8. The method of claim 1, wherein the response is a multimedia response.
9. The method of claim 1, wherein the database is one of: the World Wide Web, a multimedia data base, a corporate data base or personal data base.
10. The method of claim 1, wherein the user query and response are provided in a dialog mode.
11. The method of claim 1, wherein a machine learning process continues to find related information to the user after the response is provided.
12. The method of claim 11, further comprising:
presenting the user an option to view the related information separate from the provided response.
presenting the user an option to view the related information separate from the provided response.
13. The method of claim 1, wherein the user interacts with a virtual agent in a dialog mode.
14. The method of claim 1, further comprising, before providing the response, negotiating any restrictions to the top n pages.
15. The method of claim 14, wherein negotiating any restrictions to the top n pages comprises automatically entering user information to overcome any restriction.
16. The method of claim 14, wherein the negotiation further comprises automatically negotiating an access price to restricted information which may contain information for the response.
17. A system for providing a response to a query, the method comprising:
means for receiving a user query;
means for extracting key data from the user query;
means for submitting the extracted key data to a data base search engine to retrieve a top n pages from the data base;
means for processing of the top n pages through a natural language dialog engine; and means for providing a response based on processing the top n pages.
means for receiving a user query;
means for extracting key data from the user query;
means for submitting the extracted key data to a data base search engine to retrieve a top n pages from the data base;
means for processing of the top n pages through a natural language dialog engine; and means for providing a response based on processing the top n pages.
18. A system for providing a response to a query, the method comprising:
a module configured to receive a user query;
a module configured to extract key data from the user query;
a module configured to submit the extracted key data to a data base search engine to retrieve a top n pages from the data base;
a module configured to process of the top n pages through a natural language dialog engine; and a module configured to provide a response based on processing the top n pages.
a module configured to receive a user query;
a module configured to extract key data from the user query;
a module configured to submit the extracted key data to a data base search engine to retrieve a top n pages from the data base;
a module configured to process of the top n pages through a natural language dialog engine; and a module configured to provide a response based on processing the top n pages.
19. The method of claim 18, further comprising:
a module configured to negotiate any restrictions to data within the database to provide the response.
a module configured to negotiate any restrictions to data within the database to provide the response.
20. A computer readable medium storing instructions for controlling a computing device to perform the steps:
receiving a user query;
extracting key data from the user query;
submitting the extracted key data to a data base search engine to retrieve a top n pages from the data base;
processing of the top n pages through a natural language dialog engine; and providing a response based on processing the top n pages.
receiving a user query;
extracting key data from the user query;
submitting the extracted key data to a data base search engine to retrieve a top n pages from the data base;
processing of the top n pages through a natural language dialog engine; and providing a response based on processing the top n pages.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/013,836 US7921091B2 (en) | 2004-12-16 | 2004-12-16 | System and method for providing a natural language interface to a database |
US11/013,836 | 2004-12-16 |
Publications (1)
Publication Number | Publication Date |
---|---|
CA2530268A1 true CA2530268A1 (en) | 2006-06-16 |
Family
ID=36585924
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA 2530268 Abandoned CA2530268A1 (en) | 2004-12-16 | 2005-12-14 | A system and method for providing a natural language interface to a database |
Country Status (2)
Country | Link |
---|---|
US (6) | US7921091B2 (en) |
CA (1) | CA2530268A1 (en) |
Families Citing this family (64)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2420945B (en) * | 2003-04-22 | 2006-12-06 | Spinvox Ltd | A method of providing voicemails to a mobile telephone |
US7921365B2 (en) | 2005-02-15 | 2011-04-05 | Microsoft Corporation | System and method for browsing tabbed-heterogeneous windows |
US8666928B2 (en) | 2005-08-01 | 2014-03-04 | Evi Technologies Limited | Knowledge repository |
US8976944B2 (en) * | 2006-02-10 | 2015-03-10 | Nuance Communications, Inc. | Mass-scale, user-independent, device-independent voice messaging system |
CA2641853C (en) * | 2006-02-10 | 2016-02-02 | Spinvox Limited | A mass-scale, user-independent, device-independent, voice messaging system |
EP2033121A4 (en) * | 2006-06-23 | 2011-08-17 | Nokia Corp | A method and electronic device for enabling multimedia searching |
US20100174544A1 (en) * | 2006-08-28 | 2010-07-08 | Mark Heifets | System, method and end-user device for vocal delivery of textual data |
AU2008204404B2 (en) | 2007-01-09 | 2013-05-30 | Spinvox Limited | Detection of unanswered call in order to give calling party the option to alternatively dictate a text message for delivery to the called party |
US8996587B2 (en) * | 2007-02-15 | 2015-03-31 | International Business Machines Corporation | Method and apparatus for automatically structuring free form hetergeneous data |
US8838659B2 (en) * | 2007-10-04 | 2014-09-16 | Amazon Technologies, Inc. | Enhanced knowledge repository |
US20100063797A1 (en) * | 2008-09-09 | 2010-03-11 | Microsoft Corporation | Discovering question and answer pairs |
US9805089B2 (en) * | 2009-02-10 | 2017-10-31 | Amazon Technologies, Inc. | Local business and product search system and method |
US8694304B2 (en) | 2010-03-26 | 2014-04-08 | Virtuoz Sa | Semantic clustering and user interfaces |
US8676565B2 (en) * | 2010-03-26 | 2014-03-18 | Virtuoz Sa | Semantic clustering and conversational agents |
US9378202B2 (en) | 2010-03-26 | 2016-06-28 | Virtuoz Sa | Semantic clustering |
US9110882B2 (en) | 2010-05-14 | 2015-08-18 | Amazon Technologies, Inc. | Extracting structured knowledge from unstructured text |
US20110313762A1 (en) * | 2010-06-20 | 2011-12-22 | International Business Machines Corporation | Speech output with confidence indication |
US8341142B2 (en) | 2010-09-08 | 2012-12-25 | Nuance Communications, Inc. | Methods and apparatus for searching the Internet |
US8239366B2 (en) * | 2010-09-08 | 2012-08-07 | Nuance Communications, Inc. | Method and apparatus for processing spoken search queries |
CN103339623B (en) * | 2010-09-08 | 2018-05-25 | 纽昂斯通讯公司 | Method and apparatus relating to internet searching |
US9524291B2 (en) | 2010-10-06 | 2016-12-20 | Virtuoz Sa | Visual display of semantic information |
US9842168B2 (en) | 2011-03-31 | 2017-12-12 | Microsoft Technology Licensing, Llc | Task driven user intents |
US9760566B2 (en) | 2011-03-31 | 2017-09-12 | Microsoft Technology Licensing, Llc | Augmented conversational understanding agent to identify conversation context between two humans and taking an agent action thereof |
US9244984B2 (en) | 2011-03-31 | 2016-01-26 | Microsoft Technology Licensing, Llc | Location based conversational understanding |
US9298287B2 (en) | 2011-03-31 | 2016-03-29 | Microsoft Technology Licensing, Llc | Combined activation for natural user interface systems |
US9858343B2 (en) | 2011-03-31 | 2018-01-02 | Microsoft Technology Licensing Llc | Personalization of queries, conversations, and searches |
US10642934B2 (en) | 2011-03-31 | 2020-05-05 | Microsoft Technology Licensing, Llc | Augmented conversational understanding architecture |
US9454962B2 (en) * | 2011-05-12 | 2016-09-27 | Microsoft Technology Licensing, Llc | Sentence simplification for spoken language understanding |
US9064006B2 (en) | 2012-08-23 | 2015-06-23 | Microsoft Technology Licensing, Llc | Translating natural language utterances to keyword search queries |
US20130019155A1 (en) * | 2011-07-11 | 2013-01-17 | Collegenet, Inc. | Systems and methods for collecting multimedia form responses |
US9489457B2 (en) | 2011-07-14 | 2016-11-08 | Nuance Communications, Inc. | Methods and apparatus for initiating an action |
US8812474B2 (en) | 2011-07-14 | 2014-08-19 | Nuance Communications, Inc. | Methods and apparatus for identifying and providing information sought by a user |
US8635201B2 (en) | 2011-07-14 | 2014-01-21 | Nuance Communications, Inc. | Methods and apparatus for employing a user's location in providing information to the user |
US9292603B2 (en) | 2011-09-30 | 2016-03-22 | Nuance Communications, Inc. | Receipt and processing of user-specified queries |
EP2817962A4 (en) | 2012-02-23 | 2015-09-02 | Collegenet Inc | Asynchronous video interview system |
US8762134B2 (en) | 2012-08-30 | 2014-06-24 | Arria Data2Text Limited | Method and apparatus for situational analysis text generation |
US8762133B2 (en) | 2012-08-30 | 2014-06-24 | Arria Data2Text Limited | Method and apparatus for alert validation |
US9405448B2 (en) | 2012-08-30 | 2016-08-02 | Arria Data2Text Limited | Method and apparatus for annotating a graphical output |
US9355093B2 (en) | 2012-08-30 | 2016-05-31 | Arria Data2Text Limited | Method and apparatus for referring expression generation |
US9336193B2 (en) | 2012-08-30 | 2016-05-10 | Arria Data2Text Limited | Method and apparatus for updating a previously generated text |
US9135244B2 (en) | 2012-08-30 | 2015-09-15 | Arria Data2Text Limited | Method and apparatus for configurable microplanning |
US9600471B2 (en) | 2012-11-02 | 2017-03-21 | Arria Data2Text Limited | Method and apparatus for aggregating with information generalization |
WO2014076524A1 (en) | 2012-11-16 | 2014-05-22 | Data2Text Limited | Method and apparatus for spatial descriptions in an output text |
WO2014076525A1 (en) | 2012-11-16 | 2014-05-22 | Data2Text Limited | Method and apparatus for expressing time in an output text |
US9633071B1 (en) | 2012-12-26 | 2017-04-25 | United Services Automobile Association | System and method for modeling a search query |
WO2014102569A1 (en) | 2012-12-27 | 2014-07-03 | Arria Data2Text Limited | Method and apparatus for motion description |
US10115202B2 (en) | 2012-12-27 | 2018-10-30 | Arria Data2Text Limited | Method and apparatus for motion detection |
GB2524934A (en) | 2013-01-15 | 2015-10-07 | Arria Data2Text Ltd | Method and apparatus for document planning |
WO2015028844A1 (en) | 2013-08-29 | 2015-03-05 | Arria Data2Text Limited | Text generation from correlated alerts |
US9244894B1 (en) | 2013-09-16 | 2016-01-26 | Arria Data2Text Limited | Method and apparatus for interactive reports |
US9396181B1 (en) | 2013-09-16 | 2016-07-19 | Arria Data2Text Limited | Method, apparatus, and computer program product for user-directed reporting |
CN103761026B (en) * | 2014-01-13 | 2017-06-27 | 联想(北京)有限公司 | The method and electronic equipment of a kind of information processing |
US10664558B2 (en) | 2014-04-18 | 2020-05-26 | Arria Data2Text Limited | Method and apparatus for document planning |
US9836452B2 (en) * | 2014-12-30 | 2017-12-05 | Microsoft Technology Licensing, Llc | Discriminating ambiguous expressions to enhance user experience |
US10055767B2 (en) * | 2015-05-13 | 2018-08-21 | Google Llc | Speech recognition for keywords |
US10102201B2 (en) * | 2015-11-30 | 2018-10-16 | Soundhound, Inc. | Natural language module store |
US10162853B2 (en) * | 2015-12-08 | 2018-12-25 | Rovi Guides, Inc. | Systems and methods for generating smart responses for natural language queries |
US10445432B1 (en) | 2016-08-31 | 2019-10-15 | Arria Data2Text Limited | Method and apparatus for lightweight multilingual natural language realizer |
US10467347B1 (en) | 2016-10-31 | 2019-11-05 | Arria Data2Text Limited | Method and apparatus for natural language document orchestrator |
US10592614B1 (en) | 2017-01-19 | 2020-03-17 | Amdocs Development Limited | System, method, and computer program for translating unified ticketing system (UTS) messages |
CN107808007A (en) * | 2017-11-16 | 2018-03-16 | 百度在线网络技术(北京)有限公司 | Information processing method and device |
CN112003884B (en) * | 2019-05-27 | 2024-04-16 | 北京白帽汇科技有限公司 | Method for collecting network assets and retrieving natural language |
US12099537B2 (en) | 2020-09-21 | 2024-09-24 | Samsung Electronics Co., Ltd. | Electronic device, contents searching system and searching method thereof |
CN112925882B (en) * | 2021-02-18 | 2024-10-18 | 联想(北京)有限公司 | Information processing method and device |
Family Cites Families (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5933822A (en) | 1997-07-22 | 1999-08-03 | Microsoft Corporation | Apparatus and methods for an information retrieval system that employs natural language processing of search results to improve overall precision |
US6351467B1 (en) * | 1997-10-27 | 2002-02-26 | Hughes Electronics Corporation | System and method for multicasting multimedia content |
US6499013B1 (en) | 1998-09-09 | 2002-12-24 | One Voice Technologies, Inc. | Interactive user interface using speech recognition and natural language processing |
US6434524B1 (en) | 1998-09-09 | 2002-08-13 | One Voice Technologies, Inc. | Object interactive user interface using speech recognition and natural language processing |
US20030187925A1 (en) * | 1998-12-08 | 2003-10-02 | Inala Suman Kumar | Software engine for enabling proxy chat-room interaction |
US6725425B1 (en) | 1998-12-08 | 2004-04-20 | Yodlee.Com | Method and apparatus for retrieving information from semi-structured, web-based data sources |
US6802042B2 (en) | 1999-06-01 | 2004-10-05 | Yodlee.Com, Inc. | Method and apparatus for providing calculated and solution-oriented personalized summary-reports to a user through a single user-interface |
US6553347B1 (en) * | 1999-01-25 | 2003-04-22 | Active Point Ltd. | Automatic virtual negotiations |
US6304864B1 (en) * | 1999-04-20 | 2001-10-16 | Textwise Llc | System for retrieving multimedia information from the internet using multiple evolving intelligent agents |
US6633864B1 (en) * | 1999-04-29 | 2003-10-14 | International Business Machines Corporation | Method and apparatus for multi-threaded based search of documents |
US6269361B1 (en) * | 1999-05-28 | 2001-07-31 | Goto.Com | System and method for influencing a position on a search result list generated by a computer network search engine |
US7844594B1 (en) * | 1999-06-18 | 2010-11-30 | Surfwax, Inc. | Information search, retrieval and distillation into knowledge objects |
US6598047B1 (en) * | 1999-07-26 | 2003-07-22 | David W. Russell | Method and system for searching text |
US6792086B1 (en) | 1999-08-24 | 2004-09-14 | Microstrategy, Inc. | Voice network access provider system and method |
US6788768B1 (en) | 1999-09-13 | 2004-09-07 | Microstrategy, Incorporated | System and method for real-time, personalized, dynamic, interactive voice services for book-related information |
US20090307577A1 (en) * | 2001-08-28 | 2009-12-10 | Lee Eugene M | System for providing a binding cost for foreign filing a patent application |
US7725307B2 (en) * | 1999-11-12 | 2010-05-25 | Phoenix Solutions, Inc. | Query engine for processing voice based queries including semantic decoding |
US6665640B1 (en) | 1999-11-12 | 2003-12-16 | Phoenix Solutions, Inc. | Interactive speech based learning/training system formulating search queries based on natural language parsing of recognized user queries |
US6829603B1 (en) * | 2000-02-02 | 2004-12-07 | International Business Machines Corp. | System, method and program product for interactive natural dialog |
US6819339B1 (en) * | 2000-02-24 | 2004-11-16 | Eric Morgan Dowling | Web browser with multilevel functions |
US20020147674A1 (en) * | 2000-04-04 | 2002-10-10 | Gillman Kyle E. | System and method for specialized reverse auction |
US6708162B1 (en) * | 2000-05-08 | 2004-03-16 | Microsoft Corporation | Method and system for unifying search strategy and sharing search output data across multiple program modules |
JP2002007765A (en) * | 2000-06-23 | 2002-01-11 | Nettainment:Kk | Negotiating transaction intermediating device, method and system thereof, and information recording medium |
US6691111B2 (en) | 2000-06-30 | 2004-02-10 | Research In Motion Limited | System and method for implementing a natural language user interface |
CN1220155C (en) | 2000-07-10 | 2005-09-21 | 国际商业机器公司 | Conversation based information searching method and conversation machine |
US6970860B1 (en) * | 2000-10-30 | 2005-11-29 | Microsoft Corporation | Semi-automatic annotation of multimedia objects |
US20040068477A1 (en) * | 2000-10-31 | 2004-04-08 | Gilmour David L. | Method and system to publish the results of a search of descriptive profiles based on respective publication policies specified by owners of the descriptive profiles, and a profile service provider |
US20030028792A1 (en) * | 2001-08-02 | 2003-02-06 | International Business Machines Corportion | System, method, and computer program product for automatically inputting user data into internet based electronic forms |
US20030065739A1 (en) * | 2001-10-01 | 2003-04-03 | J. Mitchell Shnier | Methods for independently generating a reference to desired information available from a remote source |
US20040073555A1 (en) * | 2002-03-15 | 2004-04-15 | Dennis Hevener | Web callbook interface for amateur radio logging systems |
US7685010B2 (en) * | 2003-04-04 | 2010-03-23 | Netsuite, Inc. | Concise communication of real-time business information in an enterprise network |
US7454783B2 (en) * | 2003-08-08 | 2008-11-18 | Metapass, Inc. | System, method, and apparatus for automatic login |
US20050044380A1 (en) * | 2003-08-21 | 2005-02-24 | International Business Machines Corporation | Method and system to enable access to multiple restricted applications through user's host application |
US7194301B2 (en) * | 2003-10-06 | 2007-03-20 | Transneuronic, Inc. | Method for screening and treating patients at risk of medical disorders |
US20050160107A1 (en) * | 2003-12-29 | 2005-07-21 | Ping Liang | Advanced search, file system, and intelligent assistant agent |
US7899802B2 (en) * | 2004-04-28 | 2011-03-01 | Hewlett-Packard Development Company, L.P. | Moveable interface to a search engine that remains visible on the desktop |
US7519595B2 (en) * | 2004-07-14 | 2009-04-14 | Microsoft Corporation | Method and system for adaptive categorial presentation of search results |
US20060100969A1 (en) * | 2004-11-08 | 2006-05-11 | Min Wang | Learning-based method for estimating cost and statistics of complex operators in continuous queries |
-
2004
- 2004-12-16 US US11/013,836 patent/US7921091B2/en active Active
-
2005
- 2005-12-14 CA CA 2530268 patent/CA2530268A1/en not_active Abandoned
-
2011
- 2011-03-29 US US13/074,419 patent/US8412693B2/en active Active
-
2013
- 2013-04-01 US US13/854,582 patent/US8671088B2/en active Active
-
2014
- 2014-01-23 US US14/161,820 patent/US9384280B2/en active Active
-
2016
- 2016-06-30 US US15/198,885 patent/US20160314206A1/en not_active Abandoned
-
2020
- 2020-05-01 US US16/864,973 patent/US20200320144A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US7921091B2 (en) | 2011-04-05 |
US8412693B2 (en) | 2013-04-02 |
US20060136375A1 (en) | 2006-06-22 |
US20130218564A1 (en) | 2013-08-22 |
US20110179006A1 (en) | 2011-07-21 |
US20140136507A1 (en) | 2014-05-15 |
US20160314206A1 (en) | 2016-10-27 |
US20200320144A1 (en) | 2020-10-08 |
US8671088B2 (en) | 2014-03-11 |
US9384280B2 (en) | 2016-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200320144A1 (en) | Searching restricted content on a network | |
US10579657B2 (en) | Answering questions via a persona-based natural language processing (NLP) system | |
US10115056B2 (en) | Method and apparatus for responding to an inquiry | |
US7983997B2 (en) | Interactive complex task teaching system that allows for natural language input, recognizes a user's intent, and automatically performs tasks in document object model (DOM) nodes | |
US6735592B1 (en) | System, method, and computer program product for a network-based content exchange system | |
US20180082184A1 (en) | Context-aware chatbot system and method | |
US8484014B2 (en) | Retrieval using a generalized sentence collocation | |
US20070130134A1 (en) | Natural-language enabling arbitrary web forms | |
CN110770694A (en) | Obtaining response information from multiple corpora | |
WO2007100519A1 (en) | Adaptive semantic platform architecture | |
US20180365318A1 (en) | Semantic analysis of search results to generate snippets responsive to receipt of a query | |
US8990246B2 (en) | Understanding and addressing complex information needs | |
Wirawan et al. | Balinese historian chatbot using full-text search and artificial intelligence markup language method | |
US11188533B1 (en) | Generating query answers from a user's history | |
CA3177453A1 (en) | System and method for query authorization and response generation using machine learning | |
US7062482B1 (en) | Techniques for phonetic searching | |
Al Masum et al. | Making topic-specific report and multimodal presentation automatically by mining the web resources | |
US20240054287A1 (en) | Concurrent labeling of sequences of words and individual words | |
US20230079148A1 (en) | Proactive contextual and personalized search query identification | |
Chandurkar et al. | A composite natural language processing and information retrieval approach to question answering using a structured knowledge base | |
Hassan et al. | An Interactive Chatbot for College Enquiry | |
Shawar | Chatbots are natural web interface to information portals | |
Hancox et al. | An evaluation of keyword, string similarity and very shallow syntactic matching for a university admissions processing infobot | |
Alfort | The expression of a need: understanding search | |
Alfort | The expression of a need |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
FZDE | Discontinued |
Effective date: 20121214 |