This invention relates generally to dialog processing, and more particularly to Natural Language Understanding (NLU) methods and systems for dialogs including spoken and textual utterances.
Methods and systems of Natural Language Understanding (NLU), which can perform, for example, Spoken Language Understanding (SLU), are used in computerized dialog systems to estimate intentions of utterances. As broadly defined herein, the “spoken” utterances can be in the form of speech or text. If the utterances are spoken, then the uterterances can be obtained from, for example, an automatic speech recognition (ASR) system. If the utterances are text, then the utterances can be obtained from, e.g., a text processing systems or keyboard input.
Conventional intention estimation methods can be based on phrase matching, or classification methods, such as boosting, support vector machines (SVM), and Logistic Regression(LR) using Bag of Word (BoW) features of each utterance as inputs. However, the BoW features do not have enough capability to indicate semantic information represented by word sequeces due to, for example, missing order of words in the sequences.
To consider a history of a word sequence in each utterance, a Recurrent Neural Networks (RNNs) can be applied for utterance classification using 1-of-N coding instead of the BoW features. Addtionally, Long Short-Term Memory (LSTM) RNNs are a form of RNNs designed to improve learning of long-range context, and can be effective for context dependent problems. Those of approaches classify utterances without considering context among utterances. Addtionally, it is essential to consider a broader context of a sequence of utterances of an entire dialog to understand intention accurately. Some of the prior art models using RNNs and LSTMs use word sequence context within a single utterance and also consider a broader context of a sequence of utterances of an entire dialog.
Furthermore, each utterance has different expressions in terms of context of party-dependent features such as for task-oriented roles like agents and clients, business dependent terminolgies and expressions, gender dependent languages, relationships among participants in the dialogs. However, conventional methods do not consider such party-dependent features due to the different roles.
The embodiments of the invention provide a method and system for processing utterances. The utterances are acquired either from an automatic speech recognition (ASR) system or text. The utterances have associated identities of each party, such as role A utterances and role B utterances. The information corresponding to utterances, such as word sequence and identity, are converted to features. Each feature is received in an input layer of a neural network(NN). A dimensionality of each feature is reduced, in a projection layer of the NN, to produce a reduced dimensional feature. The reduced dimensional feature is processed, where the feature is propagated through hidden layers. In case of recurrent neural network (RNN), hidden layers have reccurent connections and long short-term memory (LSTM) can be applied to hidden layers of the RNN. Then, in an output layer of the NN, posterior probabilities of labels are determined.
The embodiments of our invention provide a method and system for language understanding, e.g., a spoken language understanding (SLU). The method and can estimate intentions of utterances in a dialog. As broadly defined herein, the utterances can be in the form of speech or text. If the utterances are spoken, then the uterterances can be obtained from, for example, an automatic speech recognition (ASR) system. If the utterances are text, then the utterances can be obtained from, e.g., a text processing systems or keyboard input.
Context-Sensitive SLU Using NNs
The method and networks can be inplemented in a processor connected to memory and input/output interfaces as known in the art.
By convention, each network is shown with the input layer 110 at the bottom, and the output layer 140 at the top. The input layer 110 receives input word vectors 111 corresponding to the utterances by multiple parties. The utterances have associated identities of each party. The identities relate to the roles performed by the parties. The word vectors correspond to utterances acquired for role A 101, e.g., a client party, and role B 102, e.g., an agent party. Typically, the parties take turns generating the utterances for each role during a dialog.
A projection layer 120 reduces the dimensionality of the word vector to produce a reduced dimensional word vector. A recurrent hidden layer 130 is constructed as long short-term memory (LSTM) with recurrent connections with party gates 131 that can retain and forget context information. The LSTM layers produce activation vectors for the uterrances. The output layer 140 estimates posterior probabilities of output labels 141 based on the activation vectors.
To understand the intentions in a dialog of the mutiple parties accurately, it is important to consider party-dependent expressions in each utterance and the function of each utterance in the context of a sequence of dialog turns as well.
To consider both context of an entire dialog and party-dependent expressions of each utterance, we provide an efficient NLU approach based on neural networks (NN) that model the context sensitive party-dependent expressions through either party-dependent neural and networks shared context history among parties shown in
Each word is input sequentially into the NNs using either word vector representation such as BoW or 1-of-N coding with or without features of additional atrributes such as sematic, syntactic, task-oriented information. The features of word sequence are propageted through one of the party-dependent hidden layers, and semantic information, such as concept tags, are output at the end of each utterance. Concept tags only represent symbols. Semantic information can be symbols, and/or structured information such as a graph.
In case of the RNN, to propagate contextual information through a dialog, the activation vector of the RNN for an utterance serves as input to the RNN for the next utterance to consider contex of an entire dialog. The embodiments train the RNN layers of a context sensitive model to predict sequences of semantic information from the word sequences with considering party-dependent expressions.
The utterances in the dialog corpus are characterized for each party in terms of roles, such as agent or client. In order to precisely model the party-dependent utterances, we provide multiple party-dependent neural networks which are shared context history of an entire dialog among parties as shown
The different party-dpendent features are modeled by switching between the party-dependent hidden layers. In these models, words of each utterance are input one at a time, and semantic information are output at the end of each utterance. In case of the RNN, the party-dependent hidden layers jointly represent both the context within each utterance, and the context within the dialog. In other NNs, the pary-dependent hidden layers represent only the characteristics of each party's utterance.
As shown in
A sequence of M utterances is u1, . . . , uτ, . . . , uM. Each utterance um includes a word sequence wτ,1, . . . , wτ,t, . . . , wτ,T
x
τ,t=OneHot(wτ,t), (1)
where the word wτ,t in a vocabulary V is converted by 1-of-N coding using a function OneHot(w), i.e., xτ,t ∈ {0,1}|v|.
The input vector is projected by the projection layer 120 to a D dimensional vector
x
τ,t
′=W
pr
x
τ,t
+b
pr, (2)
which is then fed to the recurrent hidden layers 130, where Wpr is a projection matrix, and bpr is a bias vector.
At the hidden layers 130, activation vectors hτ,t are determined using the LSTM cells according
i
τ,t=σ(Wxix′τ,t+Whihτ,t−1+Wcicτ,t−1+bi), (3)
f
τ,t=σ(Wxfx′τ,t+Whfhτ,t−1+Wcfcτ,t−1+bf), (4)
c
τ,t
=f
τ,t
c
τ,t−1
+i
τ,t tan h(Wxcx′τ,t+Whchτ,t−1+bc), (5)
o
τ,t=σ(Wxox′τ,t+Whohτ,t−1+Wcocτ,t+bo), and (6)
h
τ,t
=o
τ,t tan h(cτ,t), (7)
where σ( ) is an element-wise sigmoid function, and iτ,t, fτ,t, oτ,t and c96 ,t are the input gate 210, forget gate 220, output gate 230, and cell activation vectors for the tth input word in the x-th utterance, respectively.
Weight matrices Wzz and bias vectors bz are identified by a subscript z ∈ {x, h, i, f,o, c}. For example, Whi is a hidden-input gate matrix, and Wxo is an input-output gate matrix.
The output vector 141 is determined at the end of each utterance as
y
τ=softmax(WHOhτ,T
where WHO is a transformation matrix, and bO is a bias vector to classify the input vector into different categories according to the hidden vector. Softmax( ) is an element-wise softmax function that converts the classification result into label probabilities, i.e., yτ ∈ [0,1]|L| for label set L
where yτ[a] indicates the component of yτ for label a, which corresponds to the probability P (a|hτ,T
To inherit the context information from previous utterances, the hidden and cell activation vectors at the beginning of each utterance are
h
τ,0
=h
τ−1,T
(10)
cτ,0=cτ−1,T
where τ>1 and h1,0=c1,0=0, as shown in
In contrast with the prior art, our model considers the entire context from the beginning to the end of the dialog. Accordingly, the label probabilities can be inferred using sentence-level intentions an dialog-level context. In contrast, the conventional models only considers each utterance independently.
Role-Dependent LSTM Layers
The LSTM layers can be trained using a human-to-human dialog corpus annotated with concept tags, which represent, e.g., client and agent intentions for a hotel reservation as shown in Table 1 below. The columns, left to right, indicate the speaker, e.g., agent and client, uterances, and concept tags. The uterrances are characterized by each role of agent and client.
As shown in
The two LSTM layers have different parameters depending on the speaker roles. Thus, the input vector 111 for the client utterances is processed by the layer 310, and by the layer 320 processes the agent utterances. The active role for a given utterance is controlled by a role variable R, which is used to gate the output to each LSTM layer.
Then, the gated outputs are passed from the recurrent LSTM layers to the output layer 140. The recurrent LSTM inputs thus receive the output from the role-dependent layer active at the previous frame, allowing for transitions between roles.
Error signals in the training phase are back-propagated through the corresponding layers. The role of each speaker does not change during a dialog and the speaker of each utternace is known. However, the model structure leaves open the possibility of dynamically inferring the roles. Accordingly, we can determine the activation at the output layer as
y
τ=softmax(δR,R
where hτ,T
h
τ,0
(R
)
=h
τ−1,T
(R
), and (13)
c
τ,0
(R
)
=c
τ−1,T
(R
). (14)
The invention provides an efficient context sensitive SLU using role-based LSTM layers. In order to determine long-term characteristics over an entire dialog, we implemented LSTMs representing intention using consequent word sequences of each concept tag. We have evaluated the performance of importing contextual information of an entire dialog for SLU and the effectiveness of the speaker role based LSTM layers. The context sensitive LSTMs with roll-dependent layers out-performs utterance-based approaches and improves the SLU baseline by 11.6% and 8.0% (absolute).
Although the invention has been described by way of examples of preferred embodiments, it is to be understood that various other adaptations and modifications can be made within the spirit and scope of the invention. Therefore, it is the object of the appended claims to cover all such variations and modifications as come within the true spirit and scope of the invention.