User intention determination method and apparatus, storage medium, electronic device

By constructing a multi-factor dialogue graph and a graph convolutional neural network, combined with a domain keyword knowledge graph, the problem of low accuracy in user intent recognition in existing technologies is solved, achieving higher accuracy and finer granularity in user intent recognition.

CN115905483BActive Publication Date: 2026-06-19JD DIGITS HAIYI INFORMATION TECHNOLOGY CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
JD DIGITS HAIYI INFORMATION TECHNOLOGY CO LTD
Filing Date
2022-11-08
Publication Date
2026-06-19

AI Technical Summary

Technical Problem

In existing technologies, user intent recognition only considers the information in the text itself, resulting in low accuracy of the recognition results.

Method used

A multi-factor dialogue graph is constructed, including content nodes, content group nodes, and object nodes. Graph encoding is performed using a graph convolutional neural network, and user intent recognition is achieved by combining it with a domain keyword knowledge graph.

Benefits of technology

It improves the accuracy and precision of user intent recognition, enabling the identification of smaller-granular categories of user intent and enhancing the recognition effect.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115905483B_ABST
    Figure CN115905483B_ABST
Patent Text Reader

Abstract

This disclosure provides a method, apparatus, storage medium, and electronic device for determining user intent; it relates to the field of information processing technology. The method includes: acquiring user conversation text and determining an initial feature vector corresponding to the user conversation text; constructing a multi-factor dialogue graph based on the user conversation text and the initial feature vector; the multi-factor dialogue graph includes content nodes, content group nodes, and object nodes; performing graph encoding on each type of node according to the multi-factor dialogue graph to obtain a vector representation of each type of node; and performing user intent recognition based on the vector representation of each type of node to determine the target user intent. This disclosure can solve the problem of low accuracy in recognition results caused by only considering the information in the text itself in related technologies.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of information processing technology, and more specifically, to a method and apparatus for determining user intent, a storage medium, and an electronic device. Background Technology

[0002] With the continuous development and application of internet technology, users and service providers mostly communicate through online customer service. Accurately identifying user intent during these interactions is a crucial factor affecting service effectiveness.

[0003] In related technologies, user intent is determined by mining the relationship between dialogue statements and related historical statements. However, this approach only considers information from the text itself and does not take into account other factors in the dialogue statements, resulting in low accuracy of the recognition results.

[0004] It should be noted that the information disclosed in the background section above is only used to enhance the understanding of the background of this disclosure, and therefore may include information that does not constitute prior art known to those skilled in the art. Summary of the Invention

[0005] The purpose of this disclosure is to provide a method and apparatus for determining user intent, a storage medium, and an electronic device, thereby solving to some extent the problem of low accuracy of recognition results caused by only considering the information of the text itself in related technologies.

[0006] According to a first aspect of this disclosure, a method for determining user intent is provided, comprising: acquiring user conversation text and determining an initial feature vector corresponding to the user conversation text; constructing a multi-factor dialogue graph based on the user conversation text and the initial feature vector; the multi-factor dialogue graph including content nodes, content group nodes, and object nodes; performing graph encoding on each type of node according to the multi-factor dialogue graph to obtain a vector representation of each type of node; and performing user intent recognition based on the vector representation of each type of node to determine the target user intent.

[0007] Optionally, the user conversation text includes speaker information; the construction of the multi-factor dialogue graph includes: determining the content node based on a single sentence in the user conversation text; dividing the user conversation text into sentences based on the speaker information, and determining the content group node based on each group of sentences; determining the object node based on the speaker information; and adding corresponding relationship edges between the content node, the content group node, and the object node to construct the multi-factor dialogue graph.

[0008] Optionally, the relation edges include: inclusion relation edges, order relation edges, and object attribute edges. Adding corresponding relation edges between the content node, the content group node, and the object node includes: adding inclusion relation edges between the content node and the corresponding content group node; adding object attribute edges between the content group node and the corresponding object node, and between content group nodes of the same object; and adding order relation edges between adjacent content group nodes and between adjacent content nodes within the same group.

[0009] Optionally, the multi-factor dialogue graph further includes keyword nodes, and the method further includes: determining keyword information in the user conversation text based on a domain keyword knowledge graph; determining keyword nodes corresponding to the user conversation text based on the keyword information; and constructing a multi-factor dialogue graph based on the keyword nodes.

[0010] Optionally, constructing a multi-factor dialogue graph based on the keyword node includes: adding containment edges between the keyword node and the corresponding content node to construct the multi-factor dialogue graph.

[0011] Optionally, the step of graph encoding each type of node based on the multi-factor dialogue graph includes: determining an initial vector representation of each type of node in the multi-factor dialogue graph based on the initial feature vector; determining the adjacency matrix of the multi-factor dialogue graph; and inputting the initial vector representation of each type of node and the adjacency matrix into a trained graph convolutional neural network model to update the vector representation of each type of node.

[0012] Optionally, determining the initial vector representation of each type of node in the multi-factor dialogue graph based on the initial feature vector includes: determining the initial vector representation of the content node based on the initial feature vector corresponding to the content node; determining the initial vector representation of the content group node based on the initial vector representation of the content node; and determining the initial vector representation of the object node based on the initial vector representation of the content group node.

[0013] Optionally, the user intent recognition based on the vector representation of each type of node includes: concatenating the vector representations of each type of node to obtain a multi-level feature vector; and using a trained first neural network model to classify the multi-level feature vector to determine the target user intent.

[0014] Optionally, the method further includes: extracting salient features from the vector representation of each type of node to obtain a salient feature vector for each type of node.

[0015] Optionally, determining the initial feature vector corresponding to the user conversation text includes: vectorizing each sentence of the user conversation text to obtain a sentence vector; extracting features from the sentence vectors to obtain a sentence feature vector; and determining the initial feature vector corresponding to the user conversation text based on the sentence feature vectors.

[0016] Optionally, determining the initial feature vector corresponding to the user conversation text based on the single-sentence feature vector includes: inputting the single-sentence feature vector into a trained second neural network model in the order of the conversation to extract contextual features, so as to obtain the initial feature vector corresponding to the user conversation text.

[0017] According to a second aspect of this disclosure, a user intent determination apparatus is provided. The apparatus includes: a feature determination module, a graph construction module, a graph encoding module, and an intent recognition module. The feature determination module is used to acquire user conversation text and determine an initial feature vector corresponding to the user conversation text. The graph construction module is used to construct a multi-factor dialogue graph based on the user conversation text and the initial feature vector. The multi-factor dialogue graph includes content nodes, content group nodes, and object nodes. The graph encoding module is used to perform graph encoding on each type of node according to the multi-factor dialogue graph to obtain a vector representation of each type of node. The intent recognition module is used to perform user intent recognition based on the vector representation of each type of node to determine the target user intent.

[0018] According to a third aspect of this disclosure, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the methods described in any of the above embodiments.

[0019] According to a fourth aspect of this disclosure, an electronic device is provided, comprising: one or more processors; and a storage device for one or more programs, which, when executed by the one or more processors, cause the one or more processors to perform the method described in any of the above embodiments.

[0020] The exemplary embodiments disclosed herein may have some or all of the following beneficial effects:

[0021] In the user intent determination method provided in the exemplary embodiments of this disclosure, on the one hand, a multi-factor dialogue graph including content nodes, content group nodes, and object nodes can be constructed based on the user conversation text and its corresponding initial feature vector; by introducing three types of conversation-related information through content nodes, content group nodes, and object nodes, relevant factors from different aspects are integrated into the multi-factor dialogue graph, thereby enabling more accurate identification of user intent. On the other hand, this disclosure can achieve full mining and fusion of user conversation text-related information through the processes of feature determination, multi-factor graph construction, graph encoding, and user intent recognition, enabling finer-grained intent recognition while improving recognition accuracy and precision.

[0022] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description

[0023] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure. It is obvious that the drawings described below are merely some embodiments of this disclosure, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort.

[0024] Figure 1 The illustration shows an exemplary application scenario architecture diagram of a user intent determination method and apparatus according to an embodiment of the present disclosure.

[0025] Figure 2 A flowchart illustrating a user intent determination method according to one embodiment of the present disclosure is shown schematically.

[0026] Figure 3 A flowchart illustrating the construction of a multi-factor dialogue graph according to one embodiment of the present disclosure is shown.

[0027] Figure 4 The illustration shows one of the schematic diagrams of constructing a multi-factor dialogue graph based on user conversation text according to one embodiment of the present disclosure.

[0028] Figure 5 The illustration shows a second schematic diagram of constructing a multi-factor dialogue graph based on user conversation text according to one embodiment of the present disclosure.

[0029] Figure 6 The flowchart illustrating the process of a user intent determination method according to an embodiment of the present disclosure is shown.

[0030] Figure 7 The schematic diagram illustrates a structural block diagram of a user intent determination device according to one embodiment of the present disclosure.

[0031] Figure 8 A block diagram of an electronic device suitable for implementing embodiments of the present disclosure is shown. Detailed Implementation

[0032] Exemplary embodiments will now be described more fully with reference to the accompanying drawings. However, these exemplary embodiments can be implemented in many forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided to make this disclosure more comprehensive and complete, and to fully convey the concept of the exemplary embodiments to those skilled in the art. The described features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a full understanding of embodiments of this disclosure. However, those skilled in the art will recognize that the technical solutions of this disclosure can be practiced with one or more specific details omitted, or other methods, components, apparatus, steps, etc., can be employed. In other instances, well-known technical solutions are not shown or described in detail to avoid obscuring various aspects of this disclosure.

[0033] Furthermore, the accompanying drawings are merely illustrative of this disclosure and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and therefore repeated descriptions of them will be omitted. Some block diagrams shown in the drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.

[0034] like Figure 1The diagram illustrates an exemplary system scenario for the application of a user intent determination method and apparatus. The system includes a user terminal device and a customer service server. This embodiment uses the application of the method to a server as an example. It is understood that the method can also be applied to terminal devices, and to systems including both terminal devices and servers, and is implemented through the interaction between the terminal device and the server. The customer service server can be an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms. It can also be a node in a blockchain. For example, in a human-computer dialogue, the server can be a customer service robot, and the user interacts with the customer service robot through a terminal device. The terminal can be a smartphone, tablet, laptop, desktop computer, smart speaker, smartwatch, in-vehicle device, etc., but is not limited to these. When the user intent determination method provided in this embodiment is implemented through the interaction between the terminal and the server, the terminal and the server can be directly or indirectly connected via wired or wireless communication, which is not limited herein.

[0035] The user intent determination method provided in this disclosure can be executed on a server; correspondingly, the user intent determination device is generally located in the working server. The user intent determination method provided in this disclosure can also be executed on a terminal device; correspondingly, the user intent determination device is generally located in the terminal device.

[0036] It is understood that the training and usage processes of the intent recognition model for determining user intent disclosed herein are similar. The main difference lies in that the input data for the intent recognition model during usage is the user conversation text with undetermined intent, while the input data during training is training text. The training text may include historical user conversation text labeled with intent tags, and the labeled intent tags can be determined based on manual annotation or a pre-built model. Therefore, the embodiments in this specification mainly describe the usage process of the intent recognition model, without repeating the discussion of its training process. Below, the user intent determination method disclosed in the embodiments of this specification will be described in conjunction with specific examples.

[0037] refer to Figure 2 As shown, a user intent determination method according to an example implementation of this disclosure may include the following steps.

[0038] Step S210: Obtain the user session text and determine the initial feature vector corresponding to the user session text.

[0039] In this example implementation, the user conversation text can be a complete dialogue between the user and customer service, or a portion of a complete dialogue; this example does not limit this. Initial feature vectors corresponding to the user conversation text can be determined using existing vectorization methods. For example, single sentences in the user conversation text can be converted into initial feature vectors by looking up a pre-trained word vector table, or a feature matrix can be composed of these initial feature vectors.

[0040] Step S220: Based on the user conversation text and the initial feature vector, construct a multi-factor dialogue graph, which includes content nodes, content group nodes, and object nodes.

[0041] In this example implementation, a content node refers to a node related to text content; for example, each sentence can be considered a content node. A content group node refers to several content nodes that are interconnected according to a certain rule, or an independent content node that is not connected to other content nodes by that rule. An object node refers to a node categorized based on objects with different attributes. These different attribute objects can include the speaker's subject or the speaker, or the objects discussed in the conversation, etc., but this example does not limit this. In this example, the multi-factor dialogue graph can be composed of different types of nodes and different relationships between nodes.

[0042] Step S230: Perform graph encoding for each type of node based on the multi-factor dialogue graph to obtain a vector representation for each type of node.

[0043] In this example implementation, graph encoding for each type of node can be performed using a graph convolutional neural network (GCN). This GCN can also be an optimized neural network model, R-GCN (Relational Graph Convolutional Neural Network), which can handle multi-relational data features in the network.

[0044] Step S240: Based on the vector representation of each type of node, user intent is identified to determine the target user intent.

[0045] In this example implementation, various neural network models can be used for user intent recognition. These models can be multi-class artificial neural networks (such as multilayer perceptrons) or convolutional neural networks, etc., and this example does not limit this. The vector representations of each type of node can be fused before being input into the neural network model, or they can be input separately and then fused on the model output. The fusion process can include one or more of concatenation, data equalization, or weighted equalization, and this example does not limit this.

[0046] In this example implementation, the categories of user intents may include dozens or even hundreds (e.g., 50). For example, the categories of user intents may include no free shipping for returns and exchanges, forgetting to turn off auto-renewal, inability to activate membership, inquiring about product color / style, product malfunction, etc.

[0047] In the user intent determination method provided in this exemplary embodiment, on the one hand, a multi-factor dialogue graph including content nodes, content group nodes, and object nodes can be constructed based on the user conversation text and its corresponding initial feature vector. By introducing three types of conversation-related information through content nodes, content group nodes, and object nodes, relevant factors from different aspects are integrated into the multi-factor dialogue graph, thereby enabling more accurate identification of user intent. On the other hand, this disclosure can achieve full mining and fusion of user conversation text-related information through the processes of feature determination, multi-factor graph construction, graph encoding, and user intent recognition, enabling finer-grained intent recognition while improving recognition accuracy and precision.

[0048] The steps of this disclosure are described in more detail below.

[0049] In some embodiments, reference Figure 3 Constructing a multi-factor dialogue graph includes the following steps S310-S340.

[0050] Step S310: Determine content nodes based on single sentences in the user's conversation text.

[0051] In this example implementation, each sentence or multiple sentences in the user conversation text can be used as a content node, or the sentence can be preprocessed and used as a content node. For example, the sentence text obtained after removing conjunctions and other function words in the sentence can be used as a content node. This example does not limit this.

[0052] Step S320: Based on the speaker information, the user conversation text is segmented into sentences, and content group nodes are determined based on each segmented group of sentences.

[0053] In this example implementation, the user conversation text may include speaker information. Speaker information may include the speaker's role information, the speaker's speaking time information, and other speaker-related information, such as order information or basic information related to the speaker (e.g., name, contact information, address, etc.). This example does not limit this. In this example, the user conversation text can be segmented based on speaker information. For example, based on the speaker's role information (customer service or user), consecutive statements from the same role in the conversation can be grouped together as a content group node. A content group node may include a single sentence or multiple consecutive single sentences; this example does not limit this.

[0054] Step S330: Determine the object node based on the speaker information.

[0055] In this example implementation, the speaker information may include the speaker's role information, the speaker's speaking time information, and other speaker-related information, such as order information or basic information (such as name, contact information, address, etc.) related to the speaker. This example does not limit this.

[0056] In this example implementation, object nodes can be determined based on one or more speaker information. For example, object nodes (user nodes and customer service nodes) can be determined based on speaker role information. Alternatively, object nodes can be determined based on speaker role information and speaker order information, where speaker information (user nodes and customer service nodes) and order information (order A node, order B node) can each be considered as an object node.

[0057] Step S340: Add corresponding relationship edges between content nodes, content group nodes, and object nodes to construct a multi-factor dialogue graph.

[0058] In this example implementation, the relationship edges between any two of the three types of nodes—content nodes, content group nodes, and object nodes—can be the same, partially the same, or all different; this example does not impose any limitations on this. Adding relationship edges between different nodes forms a multi-factor dialogue graph.

[0059] In some embodiments, relational edges may include containment relational edges, order relational edges, and object attribute edges. Adding corresponding relational edges between content nodes, content group nodes, and object nodes may include the following steps: adding a containment relational edge between a content node and its corresponding content group node. In this example embodiment, a containment relational edge refers to a containment relationship between two connected nodes, and a containment relational edge may include one or more relational edges. For example, a content node may be contained within its corresponding object group node.

[0060] Add object attribute edges between content group nodes and their corresponding object nodes, as well as between content group nodes of the same object.

[0061] In this example implementation, an object attribute edge refers to two connected nodes sharing a common object attribute. An object attribute edge can include one or more relational edges. For example, content group nodes corresponding to the same speaker can be connected to an object node using one object attribute edge. Content group nodes with the same speaker can also be connected using another object attribute edge.

[0062] Add sequential relationship edges between adjacent content group nodes and between adjacent content nodes within the same group.

[0063] In this example implementation, a sequential relationship edge refers to a connection between two nodes that has a certain sequential relationship. A sequential relationship edge includes one or more relationship edges. For example, a sequential relationship edge can be added between adjacent content group nodes based on the speaking order, and another sequential relationship edge can be added between adjacent content nodes within the same content group based on the speaking order.

[0064] For example, consider a user conversation text formed from a multi-turn dialogue between a human-machine customer service representative, such as... Figure 4 As shown above, each sentence can be treated as an object node, such as... Figure 4 U1 to U6 in the table. Multiple consecutive single sentences spoken by the same speaker can be grouped as object nodes, such as... Figure 4 The nodes are L1 to L4, where node L4 is composed of nodes U3 to U5. Considering that the human-computer customer service dialogue involves two speaker roles, namely the machine customer service representative and the customer, and each speaker has different speaking tendencies, two object nodes can be defined according to the speaker role information, namely node C (customer) and node S (machine customer service representative).

[0065] In this example, different relationship edges can be defined between different nodes, such as Figure 4 As shown, local edges (inclusion edges) are added between content nodes and the content group nodes to which they belong; dialogue edges (object attribute edges) are added between content group nodes and the speaker nodes corresponding to those content group nodes; turn order edges (order relationship edges) are added between adjacent content nodes within the same content group; local order edges (order relationship edges) are added between adjacent content group nodes; and same-speaker edges (object attribute edges) are added between content group nodes with the same speaker. The final multi-factor dialogue graph is shown below. Figure 4 As shown in the lower part.

[0066] This disclosure can extract the discourse information of the text statement itself through content nodes, then aggregate the local discourse information expressed by the speaker continuously through content group nodes, and finally aggregate the speaker's personal discourse tendency information in the context of multi-turn dialogue through object nodes. This realizes the fusion of multi-factor related statement information in user conversation text, so as to improve the accuracy of user intent recognition.

[0067] In some embodiments, the multi-factor dialogue graph also includes keyword nodes, and the method further includes the following steps.

[0068] Based on the domain keyword knowledge graph, keyword information in user conversation text is determined.

[0069] In this example implementation, the domain keyword knowledge graph can be a pre-constructed knowledge graph of related domains, composed of keywords in related domains and the relationships between them. Related domains can be various domains related to the user's conversation text. Related domain information can be a domain information database established by the service provider based on historical service information (such as historical conversation information between customer service and users). Keywords are extracted from this domain information database, and the extracted domain keywords are used as entity nodes. The domain keyword knowledge graph is constructed based on these entity nodes and their relationships. For example, the relationships between entities can include equivalence, inclusion, instance, attribute, etc. For instance, the relationship between entity nodes "airplane ticket" and "airline ticket" can be an equivalence relationship; the relationship between entity nodes "after-sales service" and "return," "exchange," "repair," and "compensation" can be an inclusion relationship; the relationship between entity nodes "fee" and "online payment" and "installment payment" can be an attribute relationship; and the relationship between entity nodes "payment method" and "online payment" and "installment payment" can be an instance relationship.

[0070] In this example implementation, keyword information of the user conversation text is determined by searching and matching the domain keyword knowledge graph with the user conversation text.

[0071] Based on keyword information, determine the keyword nodes corresponding to the user's conversation text.

[0072] In this example implementation, each keyword in the keyword information can be treated as a keyword node, or the keyword information can be filtered and processed before being used as a keyword node; this example does not limit this approach. Figure 5 As shown, the keyword nodes are "inquiry", "order", "product", "shipping", "urging", "out of stock", and "replenishment".

[0073] Construct a multi-factor dialogue graph based on keyword nodes.

[0074] In this example implementation, containment edges can be added between keyword nodes and their corresponding content nodes to construct a multi-factor dialogue graph. For example, containment edges can be added between keyword nodes and their respective content nodes. Figure 5 As shown, containment edges (entity edges) can be added between "Shipping", "Out of Stock", "Replenishment" and node U5.

[0075] In some embodiments, graph encoding of each type of node is performed based on a multi-factor dialogue graph, including the following steps.

[0076] Based on the initial feature vector, determine the initial vector representation of each type of node in the multi-factor dialogue graph.

[0077] In this example implementation, the matrix composed of the initial feature vectors corresponding to the content nodes can be used as the feature matrix of that type of node. The initial vector representation of the content group node can be determined based on the initial feature vectors of the content nodes. The initial vector representation of the content group node can be determined by performing a first correlation operation on the initial feature vectors of all content nodes within the content group node. This first correlation operation can be an average or a weighted average; this example does not limit this. The initial vector representation of the object node can be determined based on the initial feature vectors of the content group node. For example, the initial vector representation of the object node can be determined by performing a second correlation operation on the initial feature vectors of multiple object group nodes emitted by the object node. This second correlation operation can be an average or a weighted average; this example does not limit this. The first and second correlation operations in this example can be the same or different; this example does not limit this.

[0078] In this example implementation, for keyword nodes, knowledge graph embedding techniques such as TransE, TransH, and TransR can be used to map entities and relationships in the domain keyword knowledge graph into low-dimensional vectors as the initial feature vectors of the keyword nodes.

[0079] Determine the adjacency matrix of the multi-factor dialogue graph.

[0080] In this example implementation, the adjacency matrix can be determined based on the multi-factor dialogue graph. Suppose the multi-factor dialogue graph has n nodes, where n is a natural number; then its adjacency matrix is ​​an n*n square matrix, defined as follows: Among them, arc ij v represents the element in the i-th row and j-th column of the adjacency matrix. i Let v represent the i-th node. j Let E represent the j-th node, and let E represent the set of relation edges between nodes.

[0081] The initial vector representation and adjacency matrix of each type of node are input into the trained graph convolutional neural network model to update the vector representation of each type of node.

[0082] In this example implementation, the graph convolutional neural network model can be a relational graph convolutional neural network model, such as R-GCN, which can handle multi-relational data features in the network. The initial feature vector of each type of node is used as the initial vector representation of that type of node. The vector representation of each node is updated using the adjacency matrix and the trained R-GCN model to obtain the updated node vector representation.

[0083] In some embodiments, user intent recognition based on the vector representation of each type of node includes: concatenating the vector representations of each type of node to obtain a multi-level feature vector.

[0084] In this example implementation, the vector representations of nodes of different types can be concatenated. They can be concatenated in a directly related order. For example, if the vector representation of a content node is A, the vector representation of a content group node is B, and the vector representation of an object node is C, then the multi-level feature vector is [ABC]. Concatenation can also be performed in any order; this example does not limit this.

[0085] A trained first neural network model is used to classify multi-level feature vectors to determine the target user's intent.

[0086] In this example implementation, the first neural network model can be an artificial neural network, such as a multilayer perceptron. The number of layers in the multilayer perceptron can be determined according to the actual situation, and this example does not limit this. For example, a three-layer perceptron can be set up to classify multi-level feature vectors and output category probability vectors. The intent category corresponding to the maximum value in the category probability vector can be taken as the target user intent. Alternatively, several intent categories with higher probability values ​​can be selected from the category probability vector as the target user intent. Furthermore, a tendency analysis can be performed on the selected intent categories, and the target user intent can be determined based on the analysis results. This example does not limit this.

[0087] In some embodiments, the method further includes: extracting salient features from the vector representation of each type of node to obtain a salient feature vector for each type of node.

[0088] In this example implementation, pooling operations can be used for salient feature extraction, such as max pooling and average pooling; this example is not limited to this. After salient feature extraction, the vector representations of various nodes can be concatenated and classified to remove redundant information, reduce data processing volume, and decrease hardware consumption.

[0089] In some embodiments, determining an initial feature vector corresponding to the user session text includes: vectorizing each sentence of the user session text into a word vector to obtain a sentence vector.

[0090] In this example implementation, word vectorization can be performed by looking up a pre-trained word vector table or other vectorization methods. For example, the words of each sentence can be sequentially encoded using a Bert encoder.

[0091] Feature extraction is performed on the single-sentence vector to obtain the single-sentence feature vector.

[0092] In this example implementation, a convolutional neural network can be used to extract features from single sentence vectors. Each single sentence vector can correspond to a convolutional neural network to speed up the feature extraction process and reduce the complexity of a single network.

[0093] Based on the single-sentence feature vector, the initial feature vector corresponding to the user's conversation text is determined.

[0094] In this example implementation, the single-sentence feature vectors can be input into a trained second neural network model in the order of the conversation to extract contextual features, thereby obtaining an initial feature vector corresponding to the user's conversation text. The second neural network model can be a recurrent neural network, such as a bidirectional long short-term memory network. The trained second neural network model extracts the connection information between the preceding and following single sentences in the user's conversation text to obtain the context-related vector representation of each single sentence, i.e., the initial feature vector corresponding to the user's conversation text.

[0095] For example, the implementation process of the user intent determination method disclosed herein is as follows: Figure 6 As shown, this can be implemented on a customer service robot. Intent is determined using a trained intent recognition model. For example, deploying a trained intent recognition model on a customer service robot enables automatic recognition of user intent. The intent recognition model can include a sequential encoding module, a multi-factor dialogue graph encoding module, a knowledge graph embedding module, and a classification module. The sequential encoding module can include a word embedding model, a third neural network model, and a second neural network model. The multi-factor dialogue graph encoding module can include a graph convolutional neural network model, and the classification module includes a first neural network model. This can be implemented through the following steps.

[0096] The first step is to obtain the user's conversation text.

[0097] In this example, the user session text to be analyzed can be obtained from various clients on the user terminal.

[0098] The second step is to input each sentence in the user's conversation text into a word embedding model for word vectorization to obtain sentence vectors.

[0099] In this example, BERT can be used to encode words in a single sentence to achieve vectorization.

[0100] The third step is to input each sentence vector into the third neural network model to extract sentence features, thereby obtaining the sentence feature vector.

[0101] In this example, the third neural network model can be a convolutional neural network, with each single sentence vector input to a convolutional neural network model for local feature extraction.

[0102] The fourth step is to input all single-sentence feature vectors into the second neural network model in the order of the conversation to extract contextual features, so as to obtain the initial feature vectors corresponding to the user's conversation text.

[0103] In this example, the second neural network model can be a bidirectional long short-term memory network.

[0104] The fifth step is to determine the keyword information in the user's conversation text based on the domain keyword knowledge graph, and then determine the corresponding keyword nodes.

[0105] In this example, the domain keyword knowledge graph can be a knowledge graph pre-built based on historical information of the relevant domain.

[0106] Step 6: Construct a multi-factor dialogue diagram.

[0107] In this example, we can first identify the content nodes, content group nodes, and object nodes in the user's conversation text, and then determine the relationship edges between different nodes; based on the content nodes, content group nodes, object nodes, keyword nodes, and the relationship edges between different nodes, we can construct a multi-factor dialogue graph, such as... Figure 5 As shown.

[0108] Step 7: Based on the initial feature vectors corresponding to the user's conversation text, determine the initial vector representation of each type of node in the multi-factor dialogue graph.

[0109] In this example, the initial feature vector corresponding to a content node can be used as the initial vector representation of that type of node in the multi-factor graph. The average of the initial vector representations of all content nodes within a content node group can be used as the initial vector representation of the content node group. The average of the initial vector representations of all content group nodes emitted by the same object can be used as the initial vector representation of that object's node.

[0110] The eighth step involves using knowledge graph embedding technology to map the entities and relationships corresponding to the keyword nodes in the domain keyword knowledge graph to the initial vector representations corresponding to those nodes.

[0111] In this example, TransE, TransH, TransR, etc. can be used to obtain the feature vector of the knowledge graph, that is, the initial vector representation.

[0112] The ninth step involves inputting the adjacency matrix of the multi-factor dialogue graph and the initial vector representation of each node into the graph convolutional neural network to update the vector representation of each type of node.

[0113] Step 10: Extract salient features from the updated vector representation of each type of node to obtain the salient feature vector of each type of node.

[0114] In this example, either max pooling or average pooling can be used for salient feature extraction.

[0115] The eleventh step is to concatenate the salient feature vectors of each type of node to obtain multi-level feature vectors.

[0116] In this example, the nodes can be concatenated in the order of content nodes, content group nodes, and object nodes.

[0117] The twelfth step is to input the multi-level feature vector into the first neural network model to obtain the prediction probability vector, and then determine the target user's intent based on the prediction probability vector.

[0118] In this example, the first neural network model can be a multilayer perceptron, which is used to classify multi-level feature vectors to obtain the predicted probability vector corresponding to each category.

[0119] This disclosure addresses user intent recognition in dialogues between customer service representatives and users to improve service quality. For example, for customer service robots, it's necessary to first identify user intent and then respond accordingly to the user's conversation. Therefore, accurate intent recognition directly impacts the effectiveness of downstream components of the customer service robot and is crucial throughout the entire user service process. This disclosure's method extracts information from user conversations at multiple levels to form corresponding nodes at different levels. Based on these nodes, a multi-factor dialogue graph is constructed to uncover the complex interaction relationships between content nodes (single sentence information), content group nodes (local sentence information), object nodes (speaker information), and keyword nodes (keyword information) in the user conversation text, thereby improving the accuracy of user intent recognition.

[0120] This disclosure extracts contextual information from text using a bidirectional long short-term memory network, then performs graph encoding on a multi-factor dialogue graph to achieve information fusion across multiple levels of nodes. After feature concatenation and classification of these nodes, the probability of each intent category is obtained, thereby determining the target user's intent. This method can mine multi-level information from conversational text, improving recognition accuracy. Furthermore, this disclosure incorporates domain keyword information through a domain knowledge graph, further enhancing recognition precision. The method of this disclosure enables the identification of user intents at a finer granular level, such as directly identifying subcategories like: no free shipping for returns / exchanges, forgetting to turn off auto-renewal, inability to activate membership, inquiries about product color / style, and product malfunction, rather than simply focusing on broad categories (inquiries, returns, etc.), significantly improving the accuracy of intent recognition.

[0121] This disclosure can also be applied to dialogues between human customer service representatives and users, to make user intent recommendations to human customer service representatives, or to solve problems such as information omissions or repeated dialogues during the handover process between human customer service representatives.

[0122] Furthermore, in this example embodiment, a user intent determination device 700 is also provided. This user intent determination device 700 can be applied to a robot customer service server. (See reference...) Figure 7As shown, the user intent determination device 700 may include: a feature determination module 710, a graph construction module 720, a graph encoding module 730, and an intent recognition module 740. The feature determination module 710 is used to acquire user conversation text and determine an initial feature vector corresponding to the user conversation text. The graph construction module 720 is used to construct a multi-factor dialogue graph based on the user conversation text and the initial feature vector. The multi-factor dialogue graph includes content nodes, content group nodes, and object nodes. The graph encoding module 730 is used to perform graph encoding on each type of node according to the multi-factor dialogue graph to obtain a vector representation of each type of node. The intent recognition module 740 is used to perform user intent recognition based on the vector representation of each type of node to determine the target user intent.

[0123] In an exemplary embodiment of this disclosure, the user conversation text includes speaker information; the graph construction module 720 may include: a first node determination module, a second node determination module, a third node determination module, and a first graph construction submodule; the first node determination module may be used to determine the content node based on a single sentence in the user conversation text; the second node determination module may be used to divide the user conversation text into sentences based on the speaker information, and determine the content group node based on each group of sentences; the third node determination module may be used to determine the object node based on the speaker information; the first graph construction submodule may be used to add corresponding relationship edges between the content node, the content group node, and the object node to construct a multi-factor dialogue graph.

[0124] In an exemplary embodiment of this disclosure, the relation edges include: inclusion relation edges, order relation edges, and object attribute edges. The first graph construction submodule can also be used to: add inclusion relation edges between the content node and the corresponding content group node; add object attribute edges between the content group node and the corresponding object node and between content group nodes of the same object; and add order relation edges between adjacent content group nodes and between adjacent content nodes within the same group.

[0125] In one exemplary embodiment of this disclosure, the multi-factor dialogue graph further includes keyword nodes, and the device 700 further includes: a first determining module, a second determining module, and a second graph construction submodule; the first determining module can be used to determine keyword information in the user conversation text based on a domain keyword knowledge graph; the second determining module can be used to determine keyword nodes corresponding to the user conversation text based on the keyword information; the second graph construction submodule can be used to construct a multi-factor dialogue graph based on the keyword nodes.

[0126] In one exemplary embodiment of this disclosure, the second graph construction submodule can also be used to add containment relationship edges between the keyword node and the corresponding content node to construct a multi-factor dialogue graph.

[0127] In one exemplary embodiment of this disclosure, the graph encoding module 730 includes a first determining submodule, a second determining submodule, and an updating submodule; the first determining submodule can be used to determine the initial vector representation of each type of node in the multi-factor dialogue graph based on the initial feature vector; the second determining submodule can be used to determine the adjacency matrix of the multi-factor dialogue graph; the updating submodule can be used to input the initial vector representation of each type of node and the adjacency matrix into a trained graph convolutional neural network model to update the vector representation of each type of node.

[0128] In an exemplary embodiment of this disclosure, the first determining submodule may further be configured to: determine the initial vector representation of the content node based on the initial feature vector corresponding to the content node; determine the initial vector representation of the content group node based on the initial vector representation of the content node; and determine the initial vector representation of the object node based on the initial vector representation of the content group node.

[0129] In one exemplary embodiment of this disclosure, the intent recognition module 740 includes a splicing submodule and a classification submodule; the splicing submodule can be used to splice the vector representations of each type of node to obtain a multi-level feature vector; the classification submodule can be used to classify the multi-level feature vector using a trained first neural network model to determine the target user intent.

[0130] In one exemplary embodiment of this disclosure, the apparatus 700 further includes an extraction module, which can be used to extract salient features from the vector representation of each type of node to obtain the salient feature vector of each type of node.

[0131] In one exemplary embodiment of this disclosure, the feature determination module 710 may include: a vectorization submodule, an extraction submodule, and a third determination submodule; the vectorization submodule may be used to perform word vectorization on each sentence of the user conversation text to obtain a sentence vector; the extraction submodule may be used to extract features from the sentence vector to obtain a sentence feature vector; the third determination submodule may be used to determine an initial feature vector corresponding to the user conversation text based on the sentence feature vector.

[0132] In one exemplary embodiment of this disclosure, the third determining submodule can also be used to input the single-sentence feature vector into a trained second neural network model in the order of the conversation to extract contextual features, so as to obtain an initial feature vector corresponding to the user conversation text.

[0133] The specific details of each module or unit in the aforementioned user intent determination device have been described in detail in the corresponding user intent determination method, so they will not be repeated here.

[0134] On the other hand, this application also provides a computer-readable medium, which may be included in the electronic device described in the above embodiments; or it may exist independently and not assembled into the electronic device. The computer-readable medium carries one or more programs that, when executed by the electronic device, cause the electronic device to perform the methods as described in the following embodiments. For example, the electronic device may perform... Figures 2-6 The various steps shown are as follows.

[0135] It should be noted that the computer-readable medium disclosed herein may be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium may be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this disclosure, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media can also be any computer-readable medium other than computer-readable storage media, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wireless, wire, optical fiber, RF, etc., or any suitable combination thereof.

[0136] The following reference Figure 8 To describe an electronic device 800 according to such an embodiment of the present disclosure. Figure 8 The electronic device 800 shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments disclosed herein.

[0137] like Figure 8 As shown, the electronic device 800 is presented in the form of a general-purpose computing device. The components of the electronic device 800 may include, but are not limited to: at least one processing unit 810, at least one storage unit 820, a bus 830 connecting different system components (including storage unit 820 and processing unit 810), and a display unit 840.

[0138] The storage unit stores program code, which can be executed by the processing unit 810, causing the processing unit 810 to perform the steps described in the "Exemplary Methods" section above according to various exemplary embodiments of this disclosure.

[0139] Storage unit 820 may include a readable medium in the form of a volatile storage unit, such as random access memory (RAM) 8201 and / or cache memory 8202, and may further include a read-only memory (ROM) 8203.

[0140] The storage unit 820 may also include a program / utility 8204 having a set (at least one) of program modules 8205, including but not limited to: an operating system, one or more application programs, other program modules, and program data, each or some combination of these examples may include an implementation of a network environment.

[0141] Bus 830 can represent one or more of several types of bus structures, including a memory cell bus or memory cell controller, a peripheral bus, a graphics acceleration port, a processing unit, or a local bus using any of the various bus structures.

[0142] Electronic device 800 can also communicate with one or more external devices 870 (e.g., keyboard, pointing device, Bluetooth device, etc.), and with one or more devices that enable a user to interact with electronic device 800, and / or with any device that enables electronic device 800 to communicate with one or more other computing devices (e.g., router, modem, etc.). This communication can be performed via input / output (I / O) interface 850. Furthermore, electronic device 800 can also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN), and / or public networks, such as the Internet) via network adapter 860. As shown, network adapter 860 communicates with other modules of electronic device 800 via bus 830. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with electronic device 800, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RA identification systems, tape drives, and data backup storage systems.

[0143] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, terminal device, or network device, etc.) to execute the methods according to the embodiments of this disclosure.

[0144] Furthermore, the above figures are merely illustrative of the processes included in the method according to exemplary embodiments of this disclosure and are not intended to be limiting. It is readily understood that the processes shown in the above figures do not indicate or limit the temporal order of these processes. Additionally, it is readily understood that these processes may be executed synchronously or asynchronously, for example, in multiple modules.

[0145] It should be noted that although the steps of the method in this disclosure are described in a specific order in the accompanying drawings, this does not require or imply that the steps must be performed in that specific order, or that all the steps shown must be performed to achieve the desired result. Additional or alternative steps, such as omitting certain steps, combining multiple steps into one step, and / or breaking down one step into multiple steps, should all be considered part of this disclosure.

[0146] It should be understood that this disclosure, as disclosed and defined herein, extends to all alternative combinations of two or more individual features mentioned or apparent in the text and / or figures. All these different combinations constitute multiple alternative aspects of this disclosure. The embodiments described in this specification illustrate the best known mode for implementing this disclosure and will enable those skilled in the art to utilize it.

Claims

1. A method for determining user intent, characterized in that, include: Obtain the user session text and determine the initial feature vector corresponding to the user session text; Based on the user conversation text and the initial feature vector, a multi-factor dialogue graph is constructed. The multi-factor dialogue graph includes content nodes, content group nodes, and object nodes. Each sentence in the text content is considered as a content node. A content group node refers to several content nodes that are interconnected by rules, or an independent content node that is not interconnected with other content nodes by rules. An object node refers to a node divided according to objects with different attributes, including at least one of the following: the speaking subject, the speaking object, and the conversational subject. The multi-factor dialogue graph is composed of different types of nodes and different relationships between nodes. Graph encoding is performed on each type of node based on the multi-factor dialogue graph to obtain a vector representation of each type of node; User intent is identified based on the vector representation of each type of node to determine the target user's intent; The user intent recognition is performed using a neural network model. The vector representation of each type of node is fused before being input into the neural network model, or the model output is fused after being input into the neural network model separately. The fusion process includes one or more of splicing, data equalization, or weighted equalization.

2. The user intent determination method according to claim 1, characterized in that, The user session text includes speaker information; The construction of the multi-factor dialogue graph includes: The content node is determined based on a single sentence in the user's conversation text; Based on the speaker information, the user conversation text is segmented into sentences, and the content group node is determined based on each segmented group of sentences. The object node is determined based on the speaker information; Add corresponding relationship edges between the content node, the content group node, and the object node to construct a multi-factor dialogue graph.

3. The user intent determination method according to claim 2, characterized in that, The relationship edges include: containment relationship edges, order relationship edges, and object attribute edges. Adding corresponding relationship edges between the content node, the content group node, and the object node includes: Add an inclusion relationship edge between the content node and the corresponding content group node; Add object attribute edges between the content group node and the corresponding object node, and between content group nodes of the same object; Add sequential relationship edges between adjacent content group nodes and between adjacent content nodes within the same group.

4. The user intent determination method according to claim 1, characterized in that, The multi-factor dialogue graph also includes keyword nodes, and the method further includes: Based on the domain keyword knowledge graph, determine the keyword information in the user conversation text; Based on the keyword information, determine the keyword node corresponding to the user conversation text; Based on the keyword nodes, a multi-factor dialogue graph is constructed.

5. The user intent determination method according to claim 4, characterized in that, The construction of a multi-factor dialogue graph based on the keyword nodes includes: Add containment edges between the keyword nodes and their corresponding content nodes to construct a multi-factor dialogue graph.

6. The user intent determination method according to claim 1, characterized in that, The step of graph encoding each type of node based on the multi-factor dialogue graph includes: Based on the initial feature vector, determine the initial vector representation of each type of node in the multi-factor dialogue graph; Determine the adjacency matrix of the multi-factor dialogue graph; The initial vector representation of each type of node and the adjacency matrix are input into a trained graph convolutional neural network model to update the vector representation of each type of node.

7. The user intent determination method according to claim 6, characterized in that, The step of determining the initial vector representation of each type of node in the multi-factor dialogue graph based on the initial feature vector includes: Based on the initial feature vector of the content node, determine the initial vector representation of the content node; Based on the initial vector representation of the content node, determine the initial vector representation of the content group node; The initial vector representation of the object node is determined based on the initial vector representation of the content group node.

8. The user intent determination method according to claim 1, characterized in that, The user intent recognition based on the vector representation of each type of node includes: The vector representations of each type of node are concatenated to obtain multi-level feature vectors; The multi-level feature vectors are classified using a trained first neural network model to determine the target user's intent.

9. The user intent determination method according to claim 1, characterized in that, The method further includes: extracting salient features from the vector representation of each type of node to obtain the salient feature vector of each type of node.

10. The user intent determination method according to any one of claims 1-9, characterized in that, Determining the initial feature vector corresponding to the user session text includes: Each sentence in the user session text is vectorized into a word vector to obtain a sentence vector. Feature extraction is performed on the single-sentence vector to obtain a single-sentence feature vector; Based on the single-sentence feature vector, an initial feature vector corresponding to the user's conversation text is determined.

11. The user intent determination method according to claim 10, characterized in that, The step of determining the initial feature vector corresponding to the user conversation text based on the single-sentence feature vector includes: The single-sentence feature vectors are input into a trained second neural network model in the order of the conversation to extract contextual features, so as to obtain an initial feature vector corresponding to the user's conversation text.

12. A user intent determination device, characterized in that, The device includes: The feature determination module is used to acquire user session text and determine an initial feature vector corresponding to the user session text. The graph construction module is used to construct a multi-factor dialogue graph based on the user conversation text and the initial feature vector. The multi-factor dialogue graph includes content nodes, content group nodes, and object nodes. Each sentence in the text content is considered as a content node. A content group node refers to several content nodes that are interconnected by rules, or an independent content node that is not interconnected with other content nodes by rules. An object node refers to a node divided according to objects with different attributes, including at least one of the following: the speaking subject, the speaking object, and the conversational subject. The multi-factor dialogue graph is composed of different types of nodes and different relationships between nodes. The graph encoding module is used to perform graph encoding on each type of node based on the multi-factor dialogue graph to obtain a vector representation of each type of node. The intent recognition module is used to identify user intent based on the vector representation of each type of node and determine the target user intent. The user intent recognition is performed using a neural network model. The vector representation of each type of node is fused before being input into the neural network model, or the model output is fused after being input into the neural network model separately. The fusion process includes one or more of splicing, data equalization, or weighted equalization.

13. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the method as described in any one of claims 1-11.

14. An electronic device, characterized in that, include: One or more processors; as well as A storage device for storing one or more programs, which, when executed by one or more processors, cause the one or more processors to implement the method as described in any one of claims 1-11.