EP2707808A2 - Exploiting query click logs for domain detection in spoken language understanding - Google Patents

Exploiting query click logs for domain detection in spoken language understanding

Info

Publication number
EP2707808A2
EP2707808A2 EP12786677.0A EP12786677A EP2707808A2 EP 2707808 A2 EP2707808 A2 EP 2707808A2 EP 12786677 A EP12786677 A EP 12786677A EP 2707808 A2 EP2707808 A2 EP 2707808A2
Authority
EP
European Patent Office
Prior art keywords
query
log data
domain
link
data
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.)
Withdrawn
Application number
EP12786677.0A
Other languages
German (de)
French (fr)
Other versions
EP2707808A4 (en
Inventor
Dilek Hakkani-Tur
Larry Paul Heck
Gokhan Tur
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
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
Priority claimed from US13/234,202 external-priority patent/US20120290293A1/en
Priority claimed from US13/234,186 external-priority patent/US20120290509A1/en
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of EP2707808A2 publication Critical patent/EP2707808A2/en
Publication of EP2707808A4 publication Critical patent/EP2707808A4/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language

Definitions

  • [001] Search queries mined from search engine query logs may be analyzed to improve domain detection in spoken language understanding (SLU) applications.
  • SLU spoken language understanding
  • Three key tasks in understanding applications are domain classification, intent determination and slot filling.
  • Domain classification is often completed first in SLU systems, serving as a top- level triage for subsequent processing.
  • Domain detection systems may be framed as a classification problem. Given a user utterance or sentence 3 ⁇ 4, a set y t C C of semantic domain labels may be associated with x t , where C is the finite set of domains covered. To perform this classification task, the class with the maximum conditional probability, may be selected.
  • supervised classification methods may be used to estimate these conditional probabilities and each domain class may be trained from a set of labeled utterances. Collecting and annotating naturally spoken utterances to train these domain classes is often costly, representing a significant barrier to deployment both in terms of effort and finances.
  • Domain detection training in a spoken language understanding system may be provided.
  • Log data associated with a search engine, each associated with a search query, may be received.
  • a domain label for each search query may be identified and the domain label and link data may be provided to a training set for a spoken language understanding model.
  • FIG. 1 is a block diagram of an operating environment
  • Fig. 2 is a flow chart of a method for providing domain detection training
  • Fig. 3 is a flow chart of a subroutine of the method of Fig. 2 for classifying domain labels
  • Fig. 4 is a block diagram of a computing device.
  • Embodiments of the present invention may provide for a system and/or method for exploiting query click logs in domain detection of spoken language utterances.
  • the abundance of implicitly labeled web search queries in search engines may be leveraged to aid in training domain detection classes.
  • Large-scale engines such as Bing® or Google® log more then 100M search queries per day.
  • Each query in the log may be associated with a set of Uniform Resource Locators (URLs) that were clicked after the users entered the query.
  • URLs Uniform Resource Locators
  • This user click information may be used to infer domain class labels and, therefore, may provide (potentially noisy) supervision in training domain classifiers. For example, the queries of two users who click on the same URL (e.g., http://www.hotels.com) are probably from the same domain (e.g., "hotels").
  • a clicked URL category may be assigned as the domain label of a user query.
  • the label "hotels” may be assigned to the user query "Holiday Inn and Suites" when the user has clicked on http://www.hotels.com.
  • click data may be noisy and occur with low frequency.
  • it may also be useful to estimate successful clicks by mining query click logs to gather the set of URLs the people who searched by using the same exact query.
  • query entropy, dwell times and session length may be evaluated for mining high-quality clicks.
  • User action patterns and dwell time may be used to estimate successful search sessions.
  • Query entropy and frequency may be integrated with other features from domain detection, such as the probabilities assigned by a domain detection model trained on labeled data, to sample high quality clicks both for adding as examples to the training set, and to pre-sample the data for use in supervised classifier training, and/or semi- and lightly-supervised learning methods such as label propagation.
  • domain detection such as the probabilities assigned by a domain detection model trained on labeled data, to sample high quality clicks both for adding as examples to the training set, and to pre-sample the data for use in supervised classifier training, and/or semi- and lightly-supervised learning methods such as label propagation.
  • a label propagation algorithm may transfer domain annotations from labeled natural language (NL) utterances to unlabeled web search queries. Click information may also be considered as noisy supervision, and the domain label extracted from the clicked URL category may be incorporated into the label propagation algorithm.
  • NL labeled natural language
  • Query click data may include logs of search engine users' queries and the links they click from a list of sites returned by the search engine. Some click data, however, is very noisy, and may include links that were clicked on almost randomly. A sampling measure may be applied queries and domain labels from the clicked URLs for use in domain detection. Supervision from the noisy user clicks may then be included into the label propagation algorithm that may transfer domain labels from labeled examples to the sampled search queries.
  • a set of queries whose users clicked on the URLs that are related to target domain categories may be extracted.
  • the query click logs may then be mined to download instances of these search queries and the set of links that were clicked on by search engine users who entered the same query.
  • Criteria for sampling a subset of the queries may comprise query frequency, query (click) entropy, and/or query length.
  • Query frequency may refer to the number of times a query has been searched by different users in a given time frame.
  • users may ask the same things as web search users, hence adding frequent search queries to the domain detection training set may help to improve its accuracy.
  • Query (click) entropy aims to measure the diversity of the URLs clicked on by the users of a query q, and may be computed according to Equation 1 , below.
  • Low click entropy may be a good indicator of the correctness of the domain category estimated from the query click label.
  • Query length may refer to the number of words in the query.
  • the number of words in a query may comprise a good indicator of natural language utterances, and search queries that include natural language utterances instead of simply a sequence of keywords may be more useful for training data in SLU domain classification.
  • the sampled queries may be added with the domain labels estimated from the clicked URLs to a labeled training set, or these sampled examples may be used for semi-supervised learning approaches such as self-training and/or label propagation.
  • the label propagation algorithm may be extended to exploit the domain information from the clicked URLs.
  • Self-training may involve training an initial classifier from existing manually labeled examples.
  • the initial classifier may be used to automatically assign labels for a larger set of unlabeled examples. Then the examples which were assigned classes with high posterior probabilities may be added to the training data.
  • Label propagation may comprise a graph-based, iterative algorithm commonly used for semi-supervised learning.
  • the algorithm may propagate the labels through a dataset along high density areas defined by unlabeled examples in a manner similar to the k-Nearest-Neighbor (kNN) classification algorithm.
  • LP may enable the classifier to see samples which have no common phrases to the training set. For example, if the training set has the phrase "hotel” but not "suites", the example query above "holiday inn and suites" may propagate the label to another query, say “ocean-view suites", which will propagate it to others.
  • the LP algorithm converges and has a closed form solution for easier implementation.
  • ⁇ yi+l,...,yi+u ⁇ is unknown.
  • the goal of label propagation may be to estimate Yu from and Y L .
  • a fully connected graph may be created using the samples as nodes.
  • the edges between the nodes, 1 ⁇ 43 ⁇ 4 ⁇ represent the Euclidean distance with a control parameter ⁇ and may be computed according to Equation 3, below.
  • x may comprise the value of the d th feature of sample Xi.
  • the graph may then be represented using a (/ + u) x (/ + u) probabilistic transition matrix T as computed according to Equation 4.
  • a corresponding (/ + u) x ⁇ C ⁇ matrix may also be defined for the labels.
  • the labels for the unlabeled samples may initially be randomly set before iterating as follows. First, labels may be propagated 1 step (Y ⁇ - TY). Next, the rows of 7 may be normalized to maintain a probability distribution before the labels of the labeled data are restored. This sequence converges to a fixed solution described below as Equation 5, where ( T) is the
  • T — and T u i and T m are the bottom left and
  • T right parts of T, obtained by splitting T after the I th row and column into four sub- matrices.
  • User-clicekd URLs may provide a noisy label for each query.
  • the domain category assigned to each example by LP and the domain category of the clicked URL may therefore be checked for agreement, and those examples with high probability labels from LP, that also agree with the click label, may be added to a training data set.
  • a category of the clicked URL may also be used as a feature in the representation of a query. This may allow for propagation of labels between queries that have the same click labels with a higher weight in LP, thereby extending feature transformation approaches, such as the supervised latent Dirichlet allocation (sLDA) incorporating the correct labels and factored latent semantic analysis (fLSA) supporting the use of additional features.
  • sLDA supervised latent Dirichlet allocation
  • fLSA factored latent semantic analysis
  • ⁇ C ⁇ binary features may be included for each domain, resulting in a D + ⁇ C ⁇ - dimensional feature space.
  • a value of 1 may be assigned to the feature corresponding to the click label of the query, and 0 to all the others. This may result in a straight-forward extension of the computation of the Euclidean distance with noisy supervision, as illustrated by Equation 6.
  • x +k may comprise a binary feature indicating a click of the URL for the k th domain.
  • the LP may be run and the top scoring examples for each domain may be added to the classification training data.
  • Fig. 1 is a block diagram of an operating environment 100 for providing a spoken dialog system (SDS) 110.
  • SDS 110 may comprise a labeled data storage 115, a spoken language understanding component 120, and a statistical dialog manager 125.
  • Labeled data 115 may be received from a label propagation system 130 comprising a plurality of session logs 135, such as may be associated with web search sessions, and a session processing module 140.
  • Session processing module may be operative to analyze data from session logs 135 and provide training data comprising domain labels for various search queries to SDS 110.
  • SDS 110 may be operative to interact with a user device 150, such as over a network (not shown).
  • SDS 110 and label propagation system 130 may comprise separate servers in communication via a network and/or may comprise applications, processes, and/or services executing on shared hardware.
  • User device 150 may comprise an electronic communications device such as a computer, laptop, cell phone, tablet, game console and/or other device.
  • User device 150 may be coupled to a capture device 155 that may be operative to record a user and capture spoken words, motions and/or gestures made by the user, such as with a camera and/or microphone.
  • User device 150 may be further operative to capture other inputs from the user such as by a keyboard, touchscreen and/or mouse (not pictured).
  • capture device 155 may comprise any speech and/or motion detection device capable of detecting the actions of the user.
  • capture device 155 may comprise a Microsoft® Kinect® motion capture device comprising a plurality of cameras and a plurality of microphones.
  • Fig. 2 is a flow chart setting forth the general stages involved in a method 200 consistent with an embodiment of the invention for providing statistical dialog manager training.
  • Method 200 may be implemented using a computing device 400 as described in more detail below with respect to Fig. 4. Ways to implement the stages of method 200 will be described in greater detail below.
  • Method 200 may begin at starting block 205 and proceed to stage 210 where computing device 400 may receive a plurality of query log data.
  • the query log data may comprise a search queries, followed links (e.g., uniform resource locators), non-followed links, and/or link characteristics, such as dwell time, associated with a web search session.
  • Method 200 may then advance to stage 220 where computing device 400 may sample a subset of the plurality of query log data according to one and/or more of the link characteristics.
  • label propagations system 130 may analyze link
  • characteristics such as dwell time, query entropy, query frequency, and search query lengths to identify which of the log data comprises high correlations with a target domain.
  • Method 200 may then advance to subroutine 230 where computing device 400 may classify each of the subset of the plurality of query log data into a domain label. For example, a session log comprising a search query of "hotels in Redmond” and a followed link to http://www.hotels.com may be classified in the "hotels" domain. The classification process is described below in greater detail with respect to Fig. 3.
  • Method 200 may then advance to stage 240 where computing device 400 may provide the subset of the plurality of query log data to a spoken language understanding model.
  • label propagation system 130 may provide the classified data to SDS 110 as training data and/or for use in responding to live queries.
  • Method 200 may then advance to stage 250 where computing device 400 may receive a natural language query from a user.
  • capture device 155 may record a user query of "I need a place to stay tonight," and provide it, via user device 150, to SDS 110.
  • Method 200 may then advance to stage 260 where computing device 400 may assign a query domain to the natural language query according to the spoken language understanding model. For example, based on labeled log data received from label propagation system 130, the query may be mapped to prior web search queries of users looking for hotel rooms. Such prior queries may be classified in the "hotels" domain, and that data may result in SDM 125 assigning the received query into the same domain.
  • Method 200 may then advance to stage 270 where computing device 400 may provide a query response to the user according to the assigned query domain.
  • SDS 1 10 may perform a web search of hotels restricted by other information in the query (e.g., needs to have availability "tonight” and/or a presumption that the user is looking for a hotel nearby).
  • Method 200 may then end at stage 275
  • Fig. 3 is a flow chart setting forth the general stages of subroutine 230 of method 200 consistent with an embodiment of the invention for classifying a domain label.
  • Subroutine 230 may be implemented using computing device 400 as described in more detail below with respect to Fig. 4. Ways to implement the stages of subroutine 230 will be described in greater detail below. Subroutine 230 may begin at starting block 305 and proceed to stage 310 where computing device 400 may identify a plurality of possible domains associated with the link data. For example, session processing module 140 may select a group of target domains for which training data is sought and/or may select all possible domains associated with SDS 110.
  • Subroutine 230 may then advance to stage 320 where computing device 400 may generate a probability associated with each of the plurality of possible domains that the at least one of the plurality of link data is associated with the domain. For example, session processing module 140 may assign a probability that the search terms of the query are associated with each domain used by SLU 120.
  • Subroutine 230 may then advance to stage 330 where computing device 400 may select the classifying domain for the at least one of the plurality of possible link data from the plurality of possible domains. For example session processing module 140 may select the domain having the highest probability among the plurality of possible domains.
  • Subroutine 230 may then end at stage 335 and return to method 200.
  • An embodiment consistent with the invention may comprise a system for providing domain detection training.
  • the system may comprise a memory storage and a processing unit coupled to the memory storage.
  • the processing unit may be operative to receive a plurality of log data associated with a search engine, wherein each of the plurality of log data is associated with a search query, identify a domain label for the search query of at least one of the plurality of log data, and provide the domain label and the at least one of the plurality of link data to a training set for an understanding model.
  • Another embodiment consistent with the invention may comprise a system for providing domain detection training.
  • the system may comprise a memory storage and a processing unit coupled to the memory storage.
  • the processing unit may be operative to identify a plurality of query log data associated with a target domain label, extract, from each of the plurality of query log data, a search query, at least one followed link, and at least one link characteristic, sample a subset of the plurality of query log data according to the at least one link characteristic, assign the target domain label to each of the subset of the plurality of query log data, and provide the subset of the plurality of query log data to a spoken language understanding model.
  • An embodiment consistent with the invention may comprise a system for providing domain detection training.
  • the system may comprise a memory storage and a processing unit coupled to the memory storage.
  • the processing unit may be operative to receive a plurality of query log data, each comprising at least a search query, at least one followed link, and at least one link characteristic associated with a web search session, sample a subset of the plurality of query log data according to the at least one link characteristic associated with each of the subset of the plurality of query log data, classify each of the subset of the plurality of query log data into a domain label, and provide the subset of the plurality of query log data to a spoken language understanding model.
  • the processing unit may be further operative to receive a natural language query from a user, assign a query domain to the natural language query according to the spoken language understanding model, and provide a query response to the user according to the assigned query domain.
  • Fig. 4 is a block diagram of a system including computing device 400.
  • the aforementioned memory storage and processing unit may be implemented in a computing device, such as computing device 400 of FIG. 4. Any suitable combination of hardware, software, or firmware may be used to implement the memory storage and processing unit.
  • the memory storage and processing unit may be implemented with computing device 400 or any of other computing devices 418, in combination with computing device 400.
  • the aforementioned system, device, and processors are examples and other systems, devices, and processors may comprise the aforementioned memory storage and processing unit, consistent with embodiments of the invention.
  • computing device 400 may comprise operating environment 400 as described above. Methods described in this specification may operate in other environments and are not limited to computing device 400.
  • a system consistent with an embodiment of the invention may include a computing device, such as computing device 400.
  • computing device 400 may include at least one processing unit 402 and a system memory 404.
  • system memory 404 may comprise, but is not limited to, volatile (e.g. random access memory (RAM)), nonvolatile (e.g. read-only memory (ROM)), flash memory, or any combination.
  • System memory 404 may include operating system 405, one or more programming modules 406, and may include SDM 125. Operating system 405, for example, may be suitable for controlling computing device 400 's operation.
  • embodiments of the invention may be practiced in conjunction with a graphics library, other operating systems, or any other application program and is not limited to any particular application or system. This basic configuration is illustrated in FIG. 4 by those components within a dashed line 408.
  • Computing device 400 may have additional features or functionality.
  • computing device 400 may also include additional data storage devices (removable and/or non-removable) such as, for example, magnetic disks, optical disks, or tape.
  • additional storage is illustrated in FIG. 4 by a removable storage 409 and a non-removable storage 410.
  • Computing device 400 may also contain a communication connection 416 that may allow device 400 to communicate with other computing devices 418, such as over a network in a distributed computing environment, for example, an intranet or the Internet.
  • Communication connection 416 is one example of communication media.
  • Computer readable media may include computer storage media.
  • Computer storage media may include volatile and nonvolatile, removable and nonremovable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data.
  • System memory 404, removable storage 409, and non-removable storage 410 are all computer storage media examples (i.e., memory storage.)
  • Computer storage media may include, but is not limited to, RAM, ROM, electrically erasable read-only memory
  • Computing device 400 may also have input device(s) 412 such as a keyboard, a mouse, a pen, a sound input device, a touch input device, etc.
  • Output device(s) 414 such as a display, speakers, a printer, etc. may also be included. The aforementioned devices are examples and others may be used.
  • Computer readable media may also include communication media.
  • Communication media may be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media.
  • modulated data signal may describe a signal that has one or more characteristics set or changed in such a manner as to encode information in the signal.
  • communication media may include wired media such as a wired network or direct- wired connection, and wireless media such as acoustic, radio frequency (RF), infrared, and other wireless media.
  • RF radio frequency
  • program modules and data files may be stored in system memory 404, including operating system 405.
  • programming modules 406 e.g., statistical dialog manager 125
  • processing unit 402 may perform other processes.
  • Other programming modules that may be used in accordance with embodiments of the present invention may include electronic mail and contacts applications, word processing applications, spreadsheet applications, database applications, slide presentation applications, drawing or computer- aided application programs, etc.
  • program modules may include routines, programs, components, data structures, and other types of structures that may perform particular tasks or that may implement particular abstract data types.
  • embodiments of the invention may be practiced with other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor- based or programmable consumer electronics, minicomputers, mainframe computers, and the like.
  • Embodiments of the invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network.
  • program modules may be located in both local and remote memory storage devices.
  • embodiments of the invention may be practiced in an electrical circuit comprising discrete electronic elements, packaged or integrated electronic chips containing logic gates, a circuit utilizing a microprocessor, or on a single chip containing electronic elements or microprocessors.
  • Embodiments of the invention may also be practiced using other technologies capable of performing logical operations such as, for example, AND, OR, and NOT, including but not limited to mechanical, optical, fluidic, and quantum technologies.
  • embodiments of the invention may be practiced within a general purpose computer or in any other circuits or systems.
  • Embodiments of the invention may be implemented as a computer process (method), a computing system, or as an article of manufacture, such as a computer program product or computer readable media.
  • the computer program product may be a computer storage media readable by a computer system and encoding a computer program of instructions for executing a computer process.
  • the computer program product may also be a propagated signal on a carrier readable by a computing system and encoding a computer program of instructions for executing a computer process.
  • the present invention may be embodied in hardware and/or in software (including firmware, resident software, micro-code, etc.).
  • embodiments of the present invention may take the form of a computer program product on a computer-usable or computer- readable storage medium having computer-usable or computer-readable program code embodied in the medium for use by or in connection with an instruction execution system.
  • a computer-usable or computer-readable medium may be any medium that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
  • the computer-usable or computer-readable medium may be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium. More specific computer-readable medium examples (a non-exhaustive list), the computer-readable medium may include the following: an electrical connection having one or more wires, a portable computer diskette, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, and a portable compact disc read-only memory (CD-ROM).
  • RAM random access memory
  • ROM read-only memory
  • EPROM or Flash memory erasable programmable read-only memory
  • CD-ROM portable compact disc read-only memory
  • the computer-usable or computer-readable medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via, for instance, optical scanning of the paper or other medium, then compiled, interpreted, or otherwise processed in a suitable manner, if necessary, and then stored in a computer memory.
  • Embodiments of the invention may be practiced via a system-on-a-chip (SOC) where each or many of the components illustrated in Figure 4 may be integrated onto a single integrated circuit.
  • SOC system-on-a-chip
  • Such an SOC device may include one or more processing units, graphics units, communications units, system virtualization units and various application functionalities, all of which may be integrated (or "burned") onto the chip substrate as a single integrated circuit.
  • the functionality, described herein, with respect to providing training data for a spoken language understanding system may operate via application-specific logic integrated with other components of the computing device/system X on the single integrated circuit (chip).
  • Embodiments of the present invention for example, are described above with reference to block diagrams and/or operational illustrations of methods, systems, and computer program products according to embodiments of the invention. The

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Domain detection training in a spoken language understanding system may be provided. Log data associated with a search engine, each associated with a search query, may be received. A domain label for each search query may be identified and the domain label and link data may be provided to a training set for a spoken language understanding model.

Description

EXPLOITING QUERY CLICK LOGS FOR DOMAIN DETECTION IN SPOKEN
LANGUAGE UNDERSTANDING BACKGROUND
[001] Search queries mined from search engine query logs may be analyzed to improve domain detection in spoken language understanding (SLU) applications. Three key tasks in understanding applications are domain classification, intent determination and slot filling. Domain classification is often completed first in SLU systems, serving as a top- level triage for subsequent processing. Domain detection systems may be framed as a classification problem. Given a user utterance or sentence ¾, a set yt C C of semantic domain labels may be associated with xt, where C is the finite set of domains covered. To perform this classification task, the class with the maximum conditional probability, may be selected. In conventional systems, supervised classification methods may be used to estimate these conditional probabilities and each domain class may be trained from a set of labeled utterances. Collecting and annotating naturally spoken utterances to train these domain classes is often costly, representing a significant barrier to deployment both in terms of effort and finances.
SUMMARY
[002] This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter. Nor is this Summary intended to be used to limit the claimed subject matter's scope.
[003] Domain detection training in a spoken language understanding system may be provided. Log data associated with a search engine, each associated with a search query, may be received. A domain label for each search query may be identified and the domain label and link data may be provided to a training set for a spoken language understanding model.
[004] Both the foregoing general description and the following detailed description provide examples and are explanatory only. Accordingly, the foregoing general description and the following detailed description should not be considered to be restrictive. Further, features or variations may be provided in addition to those set forth herein. For example, embodiments may be directed to various feature combinations and sub-combinations described in the detailed description. BRIEF DESCRIPTION OF THE DRAWINGS
[005] The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate various embodiments of the present invention. In the drawings:
[006] Fig. 1 is a block diagram of an operating environment;
[007] Fig. 2 is a flow chart of a method for providing domain detection training;
[008] Fig. 3 is a flow chart of a subroutine of the method of Fig. 2 for classifying domain labels; and
[009] Fig. 4 is a block diagram of a computing device.
DETAILED DESCRIPTION
[010] The following detailed description refers to the accompanying drawings.
Wherever possible, the same reference numbers are used in the drawings and the following description to refer to the same or similar elements. While embodiments of the invention may be described, modifications, adaptations, and other implementations are possible. For example, substitutions, additions, or modifications may be made to the elements illustrated in the drawings, and the methods described herein may be modified by substituting, reordering, or adding stages to the disclosed methods. Accordingly, the following detailed description does not limit the invention.
[011] Embodiments of the present invention may provide for a system and/or method for exploiting query click logs in domain detection of spoken language utterances. The abundance of implicitly labeled web search queries in search engines may be leveraged to aid in training domain detection classes. Large-scale engines such as Bing® or Google® log more then 100M search queries per day. Each query in the log may be associated with a set of Uniform Resource Locators (URLs) that were clicked after the users entered the query. This user click information may be used to infer domain class labels and, therefore, may provide (potentially noisy) supervision in training domain classifiers. For example, the queries of two users who click on the same URL (e.g., http://www.hotels.com) are probably from the same domain (e.g., "hotels").
[012] A clicked URL category may be assigned as the domain label of a user query. For example, the label "hotels" may be assigned to the user query "Holiday Inn and Suites" when the user has clicked on http://www.hotels.com. However, click data may be noisy and occur with low frequency. Thus, it may also be useful to estimate successful clicks by mining query click logs to gather the set of URLs the people who searched by using the same exact query. Several features, such as query entropy, dwell times and session length may be evaluated for mining high-quality clicks. User action patterns and dwell time may be used to estimate successful search sessions. Query entropy and frequency may be integrated with other features from domain detection, such as the probabilities assigned by a domain detection model trained on labeled data, to sample high quality clicks both for adding as examples to the training set, and to pre-sample the data for use in supervised classifier training, and/or semi- and lightly-supervised learning methods such as label propagation.
[013] A label propagation algorithm may transfer domain annotations from labeled natural language (NL) utterances to unlabeled web search queries. Click information may also be considered as noisy supervision, and the domain label extracted from the clicked URL category may be incorporated into the label propagation algorithm.
[014] Query click data may include logs of search engine users' queries and the links they click from a list of sites returned by the search engine. Some click data, however, is very noisy, and may include links that were clicked on almost randomly. A sampling measure may be applied queries and domain labels from the clicked URLs for use in domain detection. Supervision from the noisy user clicks may then be included into the label propagation algorithm that may transfer domain labels from labeled examples to the sampled search queries.
[015] A set of queries whose users clicked on the URLs that are related to target domain categories may be extracted. The query click logs may then be mined to download instances of these search queries and the set of links that were clicked on by search engine users who entered the same query. Criteria for sampling a subset of the queries may comprise query frequency, query (click) entropy, and/or query length. Query frequency may refer to the number of times a query has been searched by different users in a given time frame. In spoken dialog systems, users may ask the same things as web search users, hence adding frequent search queries to the domain detection training set may help to improve its accuracy. Query (click) entropy aims to measure the diversity of the URLs clicked on by the users of a query q, and may be computed according to Equation 1 , below.
E(q) = -∑P(Ui) lnP(Ui )
i=l
Equation 1
[016] In Equation 1 , U, i= 1....n may comprise a set of URLs clicked by the users of query q and P(Uj) may comprise the normalized frequency of the URL as computed according to Equation 2, below, where F(Ui) comprises the number of times the URL U is clicked. Low click entropy may be a good indicator of the correctness of the domain category estimated from the query click label.
Equation 2
[017] Query length may refer to the number of words in the query. The number of words in a query may comprise a good indicator of natural language utterances, and search queries that include natural language utterances instead of simply a sequence of keywords may be more useful for training data in SLU domain classification. The sampled queries may be added with the domain labels estimated from the clicked URLs to a labeled training set, or these sampled examples may be used for semi-supervised learning approaches such as self-training and/or label propagation. The label propagation algorithm may be extended to exploit the domain information from the clicked URLs.
[018] Self-training may involve training an initial classifier from existing manually labeled examples. The initial classifier may be used to automatically assign labels for a larger set of unlabeled examples. Then the examples which were assigned classes with high posterior probabilities may be added to the training data.
[019] Label propagation (LP) may comprise a graph-based, iterative algorithm commonly used for semi-supervised learning. The algorithm may propagate the labels through a dataset along high density areas defined by unlabeled examples in a manner similar to the k-Nearest-Neighbor (kNN) classification algorithm. LP may enable the classifier to see samples which have no common phrases to the training set. For example, if the training set has the phrase "hotel" but not "suites", the example query above "holiday inn and suites" may propagate the label to another query, say "ocean-view suites", which will propagate it to others. The LP algorithm converges and has a closed form solution for easier implementation.
[020] Where {(xi, yi)...(xi, yi)} comprises a labeled data set, YL = yi, 1, \C\ for
|C| classes. Let {(xi+l, yi+l)...(xi+u , yi+u)}be the unlabeled data set, where
{yi+l,...,yi+u} is unknown. The samples X = {xlt xi+u} E RD are from a D- dimensional feature space. The goal of label propagation may be to estimate Yu from and YL. AS the first step, a fully connected graph may be created using the samples as nodes. The edges between the nodes, ¼¾ represent the Euclidean distance with a control parameter σ and may be computed according to Equation 3, below.
Equation 3
[021] With respect to Equation 3, x may comprise the value of the dth feature of sample Xi. The graph may then be represented using a (/ + u) x (/ + u) probabilistic transition matrix T as computed according to Equation 4.
03;;
Ty = P(j→ϊ) = l+u
Equation 4
[022] A corresponding (/ + u) x \C\ matrix may also be defined for the labels. The labels for the unlabeled samples may initially be randomly set before iterating as follows. First, labels may be propagated 1 step (Y <- TY). Next, the rows of 7 may be normalized to maintain a probability distribution before the labels of the labeled data are restored. This sequence converges to a fixed solution described below as Equation 5, where ( T) is the
Tv
row normalized matrix of T, such that T = — and Tui and Tm are the bottom left and
∑Tik
k
right parts of T, obtained by splitting T after the Ith row and column into four sub- matrices.
Equation 5
[023] User-clicekd URLs may provide a noisy label for each query. The domain category assigned to each example by LP and the domain category of the clicked URL may therefore be checked for agreement, and those examples with high probability labels from LP, that also agree with the click label, may be added to a training data set.
[024] A category of the clicked URL may also be used as a feature in the representation of a query. This may allow for propagation of labels between queries that have the same click labels with a higher weight in LP, thereby extending feature transformation approaches, such as the supervised latent Dirichlet allocation (sLDA) incorporating the correct labels and factored latent semantic analysis (fLSA) supporting the use of additional features.
[025] \C\ binary features may be included for each domain, resulting in a D + \C\- dimensional feature space. A value of 1 may be assigned to the feature corresponding to the click label of the query, and 0 to all the others. This may result in a straight-forward extension of the computation of the Euclidean distance with noisy supervision, as illustrated by Equation 6.
Equation 6
[026] With respect to Equation 6, x +k may comprise a binary feature indicating a click of the URL for the kth domain. The LP may be run and the top scoring examples for each domain may be added to the classification training data.
[027] Fig. 1 is a block diagram of an operating environment 100 for providing a spoken dialog system (SDS) 110. SDS 110 may comprise a labeled data storage 115, a spoken language understanding component 120, and a statistical dialog manager 125. Labeled data 115 may be received from a label propagation system 130 comprising a plurality of session logs 135, such as may be associated with web search sessions, and a session processing module 140. Session processing module may be operative to analyze data from session logs 135 and provide training data comprising domain labels for various search queries to SDS 110. SDS 110 may be operative to interact with a user device 150, such as over a network (not shown). SDS 110 and label propagation system 130 may comprise separate servers in communication via a network and/or may comprise applications, processes, and/or services executing on shared hardware.
[028] User device 150 may comprise an electronic communications device such as a computer, laptop, cell phone, tablet, game console and/or other device. User device 150 may be coupled to a capture device 155 that may be operative to record a user and capture spoken words, motions and/or gestures made by the user, such as with a camera and/or microphone. User device 150 may be further operative to capture other inputs from the user such as by a keyboard, touchscreen and/or mouse (not pictured). Consistent with embodiments of the invention, capture device 155 may comprise any speech and/or motion detection device capable of detecting the actions of the user. For example, capture device 155 may comprise a Microsoft® Kinect® motion capture device comprising a plurality of cameras and a plurality of microphones.
[029] Fig. 2 is a flow chart setting forth the general stages involved in a method 200 consistent with an embodiment of the invention for providing statistical dialog manager training. Method 200 may be implemented using a computing device 400 as described in more detail below with respect to Fig. 4. Ways to implement the stages of method 200 will be described in greater detail below. Method 200 may begin at starting block 205 and proceed to stage 210 where computing device 400 may receive a plurality of query log data. For example, the query log data may comprise a search queries, followed links (e.g., uniform resource locators), non-followed links, and/or link characteristics, such as dwell time, associated with a web search session.
[030] Method 200 may then advance to stage 220 where computing device 400 may sample a subset of the plurality of query log data according to one and/or more of the link characteristics. For example, label propagations system 130 may analyze link
characteristics such as dwell time, query entropy, query frequency, and search query lengths to identify which of the log data comprises high correlations with a target domain.
[031] Method 200 may then advance to subroutine 230 where computing device 400 may classify each of the subset of the plurality of query log data into a domain label. For example, a session log comprising a search query of "hotels in Redmond" and a followed link to http://www.hotels.com may be classified in the "hotels" domain. The classification process is described below in greater detail with respect to Fig. 3.
[032] Method 200 may then advance to stage 240 where computing device 400 may provide the subset of the plurality of query log data to a spoken language understanding model. For example, label propagation system 130 may provide the classified data to SDS 110 as training data and/or for use in responding to live queries.
[033] Method 200 may then advance to stage 250 where computing device 400 may receive a natural language query from a user. For example, capture device 155 may record a user query of "I need a place to stay tonight," and provide it, via user device 150, to SDS 110.
[034] Method 200 may then advance to stage 260 where computing device 400 may assign a query domain to the natural language query according to the spoken language understanding model. For example, based on labeled log data received from label propagation system 130, the query may be mapped to prior web search queries of users looking for hotel rooms. Such prior queries may be classified in the "hotels" domain, and that data may result in SDM 125 assigning the received query into the same domain.
[035] Method 200 may then advance to stage 270 where computing device 400 may provide a query response to the user according to the assigned query domain. For example, SDS 1 10 may perform a web search of hotels restricted by other information in the query (e.g., needs to have availability "tonight" and/or a presumption that the user is looking for a hotel nearby). Method 200 may then end at stage 275
[036] Fig. 3 is a flow chart setting forth the general stages of subroutine 230 of method 200 consistent with an embodiment of the invention for classifying a domain label.
Subroutine 230 may be implemented using computing device 400 as described in more detail below with respect to Fig. 4. Ways to implement the stages of subroutine 230 will be described in greater detail below. Subroutine 230 may begin at starting block 305 and proceed to stage 310 where computing device 400 may identify a plurality of possible domains associated with the link data. For example, session processing module 140 may select a group of target domains for which training data is sought and/or may select all possible domains associated with SDS 110.
[037] Subroutine 230 may then advance to stage 320 where computing device 400 may generate a probability associated with each of the plurality of possible domains that the at least one of the plurality of link data is associated with the domain. For example, session processing module 140 may assign a probability that the search terms of the query are associated with each domain used by SLU 120.
[038] Subroutine 230 may then advance to stage 330 where computing device 400 may select the classifying domain for the at least one of the plurality of possible link data from the plurality of possible domains. For example session processing module 140 may select the domain having the highest probability among the plurality of possible domains.
Subroutine 230 may then end at stage 335 and return to method 200.
[039] An embodiment consistent with the invention may comprise a system for providing domain detection training. The system may comprise a memory storage and a processing unit coupled to the memory storage. The processing unit may be operative to receive a plurality of log data associated with a search engine, wherein each of the plurality of log data is associated with a search query, identify a domain label for the search query of at least one of the plurality of log data, and provide the domain label and the at least one of the plurality of link data to a training set for an understanding model.
[040] Another embodiment consistent with the invention may comprise a system for providing domain detection training. The system may comprise a memory storage and a processing unit coupled to the memory storage. The processing unit may be operative to identify a plurality of query log data associated with a target domain label, extract, from each of the plurality of query log data, a search query, at least one followed link, and at least one link characteristic, sample a subset of the plurality of query log data according to the at least one link characteristic, assign the target domain label to each of the subset of the plurality of query log data, and provide the subset of the plurality of query log data to a spoken language understanding model.
[041] An embodiment consistent with the invention may comprise a system for providing domain detection training. The system may comprise a memory storage and a processing unit coupled to the memory storage. The processing unit may be operative to receive a plurality of query log data, each comprising at least a search query, at least one followed link, and at least one link characteristic associated with a web search session, sample a subset of the plurality of query log data according to the at least one link characteristic associated with each of the subset of the plurality of query log data, classify each of the subset of the plurality of query log data into a domain label, and provide the subset of the plurality of query log data to a spoken language understanding model. The processing unit may be further operative to receive a natural language query from a user, assign a query domain to the natural language query according to the spoken language understanding model, and provide a query response to the user according to the assigned query domain.
[042] Fig. 4 is a block diagram of a system including computing device 400. Consistent with an embodiment of the invention, the aforementioned memory storage and processing unit may be implemented in a computing device, such as computing device 400 of FIG. 4. Any suitable combination of hardware, software, or firmware may be used to implement the memory storage and processing unit. For example, the memory storage and processing unit may be implemented with computing device 400 or any of other computing devices 418, in combination with computing device 400. The aforementioned system, device, and processors are examples and other systems, devices, and processors may comprise the aforementioned memory storage and processing unit, consistent with embodiments of the invention. Furthermore, computing device 400 may comprise operating environment 400 as described above. Methods described in this specification may operate in other environments and are not limited to computing device 400.
[043] With reference to FIG. 4, a system consistent with an embodiment of the invention may include a computing device, such as computing device 400. In a basic configuration, computing device 400 may include at least one processing unit 402 and a system memory 404. Depending on the configuration and type of computing device, system memory 404 may comprise, but is not limited to, volatile (e.g. random access memory (RAM)), nonvolatile (e.g. read-only memory (ROM)), flash memory, or any combination. System memory 404 may include operating system 405, one or more programming modules 406, and may include SDM 125. Operating system 405, for example, may be suitable for controlling computing device 400 's operation. Furthermore, embodiments of the invention may be practiced in conjunction with a graphics library, other operating systems, or any other application program and is not limited to any particular application or system. This basic configuration is illustrated in FIG. 4 by those components within a dashed line 408.
[044] Computing device 400 may have additional features or functionality. For example, computing device 400 may also include additional data storage devices (removable and/or non-removable) such as, for example, magnetic disks, optical disks, or tape. Such additional storage is illustrated in FIG. 4 by a removable storage 409 and a non-removable storage 410. Computing device 400 may also contain a communication connection 416 that may allow device 400 to communicate with other computing devices 418, such as over a network in a distributed computing environment, for example, an intranet or the Internet. Communication connection 416 is one example of communication media.
[045] The term computer readable media as used herein may include computer storage media. Computer storage media may include volatile and nonvolatile, removable and nonremovable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data. System memory 404, removable storage 409, and non-removable storage 410 are all computer storage media examples (i.e., memory storage.) Computer storage media may include, but is not limited to, RAM, ROM, electrically erasable read-only memory
(EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store information and which can be accessed by computing device 400. Any such computer storage media may be part of device 400. Computing device 400 may also have input device(s) 412 such as a keyboard, a mouse, a pen, a sound input device, a touch input device, etc. Output device(s) 414 such as a display, speakers, a printer, etc. may also be included. The aforementioned devices are examples and others may be used.
[046] The term computer readable media as used herein may also include communication media. Communication media may be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media. The term "modulated data signal" may describe a signal that has one or more characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media may include wired media such as a wired network or direct- wired connection, and wireless media such as acoustic, radio frequency (RF), infrared, and other wireless media.
[047] As stated above, a number of program modules and data files may be stored in system memory 404, including operating system 405. While executing on processing unit 402, programming modules 406 (e.g., statistical dialog manager 125) may perform processes and/or methods as described above. The aforementioned process is an example, and processing unit 402 may perform other processes. Other programming modules that may be used in accordance with embodiments of the present invention may include electronic mail and contacts applications, word processing applications, spreadsheet applications, database applications, slide presentation applications, drawing or computer- aided application programs, etc.
[048] Generally, consistent with embodiments of the invention, program modules may include routines, programs, components, data structures, and other types of structures that may perform particular tasks or that may implement particular abstract data types.
Moreover, embodiments of the invention may be practiced with other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor- based or programmable consumer electronics, minicomputers, mainframe computers, and the like. Embodiments of the invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
[049] Furthermore, embodiments of the invention may be practiced in an electrical circuit comprising discrete electronic elements, packaged or integrated electronic chips containing logic gates, a circuit utilizing a microprocessor, or on a single chip containing electronic elements or microprocessors. Embodiments of the invention may also be practiced using other technologies capable of performing logical operations such as, for example, AND, OR, and NOT, including but not limited to mechanical, optical, fluidic, and quantum technologies. In addition, embodiments of the invention may be practiced within a general purpose computer or in any other circuits or systems.
[050] Embodiments of the invention, for example, may be implemented as a computer process (method), a computing system, or as an article of manufacture, such as a computer program product or computer readable media. The computer program product may be a computer storage media readable by a computer system and encoding a computer program of instructions for executing a computer process. The computer program product may also be a propagated signal on a carrier readable by a computing system and encoding a computer program of instructions for executing a computer process. Accordingly, the present invention may be embodied in hardware and/or in software (including firmware, resident software, micro-code, etc.). In other words, embodiments of the present invention may take the form of a computer program product on a computer-usable or computer- readable storage medium having computer-usable or computer-readable program code embodied in the medium for use by or in connection with an instruction execution system. A computer-usable or computer-readable medium may be any medium that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
[051] The computer-usable or computer-readable medium may be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium. More specific computer-readable medium examples (a non-exhaustive list), the computer-readable medium may include the following: an electrical connection having one or more wires, a portable computer diskette, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, and a portable compact disc read-only memory (CD-ROM). Note that the computer-usable or computer-readable medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via, for instance, optical scanning of the paper or other medium, then compiled, interpreted, or otherwise processed in a suitable manner, if necessary, and then stored in a computer memory.
[052] Embodiments of the invention may be practiced via a system-on-a-chip (SOC) where each or many of the components illustrated in Figure 4 may be integrated onto a single integrated circuit. Such an SOC device may include one or more processing units, graphics units, communications units, system virtualization units and various application functionalities, all of which may be integrated (or "burned") onto the chip substrate as a single integrated circuit. When operating via an SOC, the functionality, described herein, with respect to providing training data for a spoken language understanding system may operate via application-specific logic integrated with other components of the computing device/system X on the single integrated circuit (chip). [053] Embodiments of the present invention, for example, are described above with reference to block diagrams and/or operational illustrations of methods, systems, and computer program products according to embodiments of the invention. The
functions/acts noted in the blocks may occur out of the order as shown in any flowchart. For example, two blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality/acts involved.
[054] While certain embodiments of the invention have been described, other embodiments may exist. Furthermore, although embodiments of the present invention have been described as being associated with data stored in memory and other storage mediums, data can also be stored on or read from other types of computer-readable media, such as secondary storage devices, like hard disks, floppy disks, or a CD-ROM, a carrier wave from the Internet, or other forms of RAM or ROM. Further, the disclosed methods' stages may be modified in any manner, including by reordering stages and/or inserting or deleting stages, without departing from the invention.
[055] All rights including copyrights in the code included herein are vested in and the property of the Applicants. The Applicants retain and reserve all rights in the code included herein, and grant permission to reproduce the material only in connection with reproduction of the granted patent and for no other purpose.
[056] While certain embodiments of the invention have been described, other embodiments may exist. While the specification includes examples, the invention's scope is indicated by the following claims. Furthermore, while the specification has been described in language specific to structural features and/or methodological acts, the claims are not limited to the features or acts described above. Rather, the specific features and acts described above are disclosed as example for embodiments of the invention

Claims

CLAIMS What Is Claimed Is:
1. A method for providing domain detection training, the method comprising: receiving a plurality of log data associated with a search engine, wherein each of the plurality of log data is associated with a search query;
identifying a domain label for the search query of at least one of the plurality of log data; and
providing the domain label and the at least one of the plurality of link data to a training set for an understanding model.
2. The method of claim 1 , wherein each of the plurality of log data comprises at least one uniform resource locator (URL) selected from a plurality of search results associated with the search query.
3. The method of claim 2, wherein identifying the domain label comprises comparing the URLs associated with at least a subset of the plurality of log data.
4. The method of claim 1, further comprising:
determining whether the at least one of the plurality of link data comprises a successful search; and
in response to determining that the at least one of the plurality of link data does not comprise a successful search, discarding the at least one of the plurality of link data from the training set.
5. The method of claim 4, wherein determining whether the at least one of the plurality of link data comprises a successful search comprises analyzing at least one link characteristic associated with the at least one of the plurality of link data.
6. A system for providing domain detection training, the system comprising: a memory storage; and
a processing unit coupled to the memory storage, wherein the processing unit is operable to:
identify a plurality of query log data associated with a target domain label, extract, from each of the plurality of query log data, a search query, at least one followed link, and at least one link characteristic, sample a subset of the plurality of query log data according to the at least one link characteristic,
assign the target domain label to each of the subset of the plurality of query log data, and
provide the subset of the plurality of query log data to a spoken language understanding model.
7. The system of claim 6, wherein the subset of the plurality of query log data provided to the spoken language understanding model as a labeled training set.
8. The system of claim 6, wherein the subset of the plurality of query log data provided to the spoken language understanding model for use in a semi-supervised learning mode.
9. The system of claim 6, wherein the at least one link characteristic comprises at least one of the following: a query frequency associated with the at least one followed link, a query entropy measurement of a diversity of a plurality of URLs associated with the search query, and a length of the search query.
10. A computer-readable medium which stores a set of instructions which when executed performs a method for providing domain detection training, the method executed by the set of instructions comprising:
receiving a plurality of query log data, wherein each of the query log data comprises a search query, at least one followed link, and at least one link characteristic associated with a web search session;
sampling a subset of the plurality of query log data according to the at least one link characteristic associated with each of the subset of the plurality of query log data, wherein the at least one link characteristic comprises at least one of the following: a dwell time, a query entropy, a query frequency, and a length of the search query,
classifying each of the subset of the plurality of query log data into a domain label, wherein classifying the at least one of the plurality of link data into the domain label comprises: identifying a plurality of possible domains associated with the at least one of the plurality of link data, wherein the plurality of possible domains is selected from among all domains used by a spoken language understanding model,
generating a probability associated with each of the plurality of possible domains that the at least one of the plurality of link data is associated with the domain, and
selecting the classifying domain for the at least one of the plurality of possible link data from the plurality of possible domains according to the highest probability among the plurality of possible domains;
providing the subset of the plurality of query log data to a spoken language understanding model;
receiving a natural language query from a user;
assigning a query domain to the natural language query according to the spoken language understanding model; and
providing a query response to the user according to the assigned query domain.
EP12786677.0A 2011-05-13 2012-05-11 Exploiting query click logs for domain detection in spoken language understanding Withdrawn EP2707808A4 (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161485664P 2011-05-13 2011-05-13
US201161485778P 2011-05-13 2011-05-13
US13/234,202 US20120290293A1 (en) 2011-05-13 2011-09-16 Exploiting Query Click Logs for Domain Detection in Spoken Language Understanding
US13/234,186 US20120290509A1 (en) 2011-05-13 2011-09-16 Training Statistical Dialog Managers in Spoken Dialog Systems With Web Data
PCT/US2012/037668 WO2012158572A2 (en) 2011-05-13 2012-05-11 Exploiting query click logs for domain detection in spoken language understanding

Publications (2)

Publication Number Publication Date
EP2707808A2 true EP2707808A2 (en) 2014-03-19
EP2707808A4 EP2707808A4 (en) 2015-10-21

Family

ID=47177580

Family Applications (2)

Application Number Title Priority Date Filing Date
EP12786677.0A Withdrawn EP2707808A4 (en) 2011-05-13 2012-05-11 Exploiting query click logs for domain detection in spoken language understanding
EP12786374.4A Withdrawn EP2707807A4 (en) 2011-05-13 2012-05-11 Training statistical dialog managers in spoken dialog systems with web data

Family Applications After (1)

Application Number Title Priority Date Filing Date
EP12786374.4A Withdrawn EP2707807A4 (en) 2011-05-13 2012-05-11 Training statistical dialog managers in spoken dialog systems with web data

Country Status (3)

Country Link
EP (2) EP2707808A4 (en)
CN (2) CN103534696B (en)
WO (2) WO2012158572A2 (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120290509A1 (en) * 2011-05-13 2012-11-15 Microsoft Corporation Training Statistical Dialog Managers in Spoken Dialog Systems With Web Data
DK2994908T3 (en) 2013-05-07 2019-09-23 Veveo Inc INTERFACE FOR INCREMENTAL SPEECH INPUT WITH REALTIME FEEDBACK
US9852136B2 (en) 2014-12-23 2017-12-26 Rovi Guides, Inc. Systems and methods for determining whether a negation statement applies to a current or past query
US10817519B2 (en) * 2016-06-06 2020-10-27 Baidu Usa Llc Automatic conversion stage discovery
KR20190100428A (en) * 2016-07-19 2019-08-28 게이트박스 가부시키가이샤 Image display apparatus, topic selection method, topic selection program, image display method and image display program
CN106407333B (en) * 2016-09-05 2020-03-03 北京百度网讯科技有限公司 Spoken language query identification method and device based on artificial intelligence
CN107291828B (en) * 2017-05-27 2021-06-11 北京百度网讯科技有限公司 Spoken language query analysis method and device based on artificial intelligence and storage medium
CN108121814B (en) * 2017-12-28 2022-04-22 北京百度网讯科技有限公司 Search result ranking model generation method and device
CN109086332A (en) * 2018-07-04 2018-12-25 深圳供电局有限公司 A kind of power scheduling log inquiring method and system
CN109901896A (en) * 2018-12-06 2019-06-18 华为技术有限公司 Multi-task processing method in a kind of man-machine interactive system and man-machine interactive system

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1313972A (en) * 1998-08-24 2001-09-19 Bcl计算机有限公司 Adaptive natural language interface
IL140805A0 (en) * 1998-10-02 2002-02-10 Ibm Structure skeletons for efficient voice navigation through generic hierarchical objects
US6314398B1 (en) * 1999-03-01 2001-11-06 Matsushita Electric Industrial Co., Ltd. Apparatus and method using speech understanding for automatic channel selection in interactive television
AU2556600A (en) * 1999-03-12 2000-10-04 Christopher Nice Man-machine dialogue system and method
NZ516822A (en) * 1999-08-06 2004-05-28 Lexis Nexis System and method for classifying legal concepts using legal topic scheme
US7092928B1 (en) * 2000-07-31 2006-08-15 Quantum Leap Research, Inc. Intelligent portal engine
KR20020049164A (en) * 2000-12-19 2002-06-26 오길록 The System and Method for Auto - Document - classification by Learning Category using Genetic algorithm and Term cluster
US20020198714A1 (en) * 2001-06-26 2002-12-26 Guojun Zhou Statistical spoken dialog system
US7720674B2 (en) * 2004-06-29 2010-05-18 Sap Ag Systems and methods for processing natural language queries
US7835911B2 (en) * 2005-12-30 2010-11-16 Nuance Communications, Inc. Method and system for automatically building natural language understanding models
US7840538B2 (en) * 2006-12-20 2010-11-23 Yahoo! Inc. Discovering query intent from search queries and concept networks
US8165877B2 (en) * 2007-08-03 2012-04-24 Microsoft Corporation Confidence measure generation for speech related searching
US8126869B2 (en) * 2008-02-08 2012-02-28 Microsoft Corporation Automated client sitemap generation
US8244752B2 (en) * 2008-04-21 2012-08-14 Microsoft Corporation Classifying search query traffic

Also Published As

Publication number Publication date
WO2012158572A3 (en) 2013-03-21
WO2012158572A2 (en) 2012-11-22
WO2012158571A3 (en) 2013-03-28
CN103534697A (en) 2014-01-22
CN103534696A (en) 2014-01-22
CN103534697B (en) 2017-11-21
WO2012158571A2 (en) 2012-11-22
EP2707807A2 (en) 2014-03-19
EP2707808A4 (en) 2015-10-21
CN103534696B (en) 2018-02-16
EP2707807A4 (en) 2015-10-21

Similar Documents

Publication Publication Date Title
US20120290293A1 (en) Exploiting Query Click Logs for Domain Detection in Spoken Language Understanding
US11151175B2 (en) On-demand relation extraction from text
CN107832414B (en) Method and device for pushing information
CN107256267B (en) Query method and device
WO2012158572A2 (en) Exploiting query click logs for domain detection in spoken language understanding
US11514235B2 (en) Information extraction from open-ended schema-less tables
CN107924483B (en) Generation and application of generic hypothesis ranking model
US20190354810A1 (en) Active learning to reduce noise in labels
CN110069709B (en) Intention recognition method, device, computer readable medium and electronic equipment
US8073877B2 (en) Scalable semi-structured named entity detection
KR101754473B1 (en) Method and system for automatically summarizing documents to images and providing the image-based contents
CN107862046B (en) A kind of tax commodity code classification method and system based on short text similarity
US9305083B2 (en) Author disambiguation
US20130060769A1 (en) System and method for identifying social media interactions
CN109416705A (en) It parses and predicts for data using information available in corpus
TW202020691A (en) Feature word determination method and device and server
WO2014031458A1 (en) Translating natural language utterances to keyword search queries
CN108027814B (en) Stop word recognition method and device
CN112329824A (en) Multi-model fusion training method, text classification method and device
WO2022174496A1 (en) Data annotation method and apparatus based on generative model, and device and storage medium
CN109271624B (en) Target word determination method, device and storage medium
CN111886596A (en) Machine translation locking using sequence-based lock/unlock classification
CN113947086A (en) Sample data generation method, training method, corpus generation method and apparatus
CN114416998A (en) Text label identification method and device, electronic equipment and storage medium
JP2021508391A (en) Promote area- and client-specific application program interface recommendations

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20131014

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

DAX Request for extension of the european patent (deleted)
RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC

A4 Supplementary search report drawn up and despatched

Effective date: 20150921

RIC1 Information provided on ipc code assigned before grant

Ipc: G06F 17/30 20060101ALI20150915BHEP

Ipc: G10L 15/08 20060101ALI20150915BHEP

Ipc: G06F 17/20 20060101AFI20150915BHEP

17Q First examination report despatched

Effective date: 20181218

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN

18W Application withdrawn

Effective date: 20190329