A structural self-aware model for discourse analysis in multi-party dialogues

SSA-GNNs address the challenge of error propagation in discourse analysis by capturing implicit structural information, improving accuracy and efficiency in multiparty dialogue analysis.

JP7620112B2Active Publication Date: 2025-01-22TENCENT AMERICA LLC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023537509
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2021-02-22
Filing Date
2021-12-16
Publication Date
2025-01-22
Estimated Expiration
2041-12-16

AI Technical Summary

Technical Problem

Existing discourse analysis methods face challenges in accurately identifying relationships between non-adjacent utterances in multiparty dialogues, leading to error propagation and inefficiencies due to the use of pipelined decoding processes and reliance on handcrafted features.

Method used

Employing edge-centric structural self-aware graph neural networks (SSA-GNNs) for discourse analysis, which capture implicit structural information through layer-by-layer message passing, using auxiliary loss terms to enhance representation learning and minimize error propagation.

Benefits of technology

Improves the accuracy and efficiency of discourse analysis by learning effective representations without relying on past actions, reducing computational resources needed for error correction and enhancing performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007620112000002
    Figure 0007620112000002
  • Figure 0007620112000003
    Figure 0007620112000003
  • Figure 0007620112000004
    Figure 0007620112000004
Patent Text Reader

Abstract

A method, a computer program, and a computer system for analyzing a multi-party dialogue are provided. Dialogue data having a plurality of basic discourse units is received. Based on performing pairwise comparisons on the basic discourse units, local and global representations of each of the basic discourse units are determined. Based on the determined local and global representations, a semantic relationship between two basic discourse units of each pair of basic discourse units is identified. Based on the identified semantic relationship, a contextual link between non-adjacent basic discourse units is predicted.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates generally to the field of data processing, and more particularly to speech classification. [Background technology]

[0002] Conversational discourse analysis aims to discover interdependencies between speakers and utterances. A dialogue may contain relations between non-adjacent utterances, such as the "comment" relation between the last turn and the first turn. This task is not trivial as it includes challenging cases such as relations between non-adjacent utterances. Early attempts at discourse analysis are mainly based on handcrafted features, and the decoding process is modeled in a pipelined manner. In this process, the probability of discourse relations for each EDU pair is first estimated, and then the discourse structure is inferred by a search algorithm such as maximum spanning tree. Inspired by the success of deep learning in other natural language processing tasks, neural models such as DeepSequential are sometimes used for discourse analysis in multi-party dialogues. Typically, DeepSequential simultaneously builds and utilizes the discourse structure of each dialogue, i.e., it first extracts features from the already predicted discourse structure before making a current prediction and incorporating it into a partial discourse structure. Summary of the Invention

[0003] The embodiments relate to a method, a system, and a computer-readable medium for dialogue analysis. According to one aspect, a method for dialogue analysis is provided. The method may include receiving dialogue data having a plurality of basic discourse units. Based on performing pairwise comparisons on the basic discourse units, a local representation and a global representation are determined for each of the basic discourse units. Based on the determined local and global representations, a semantic relationship between the two basic discourse units of each pair of the basic discourse units is identified. Based on the identified semantic relationship, a contextual link is predicted between non-adjacent basic discourse units.

[0004] According to another aspect, a computer system for dialogue analysis is provided. The computer system may include one or more processors, one or more computer-readable memories, one or more computer-readable tangible storage devices, and program instructions stored in at least one of the one or more storage devices for execution by at least one of the one or more processors via at least one of the one or more memories, thereby enabling the computer system to execute a method. The method may include receiving dialogue data having a plurality of basic discourse units. Based on performing pairwise comparisons on the basic discourse units, a local representation and a global representation are determined for each of the basic discourse units. Based on the determined local and global representations, a semantic relationship between the two basic discourse units of each pair of basic discourse units is identified. Based on the identified semantic relationship, a contextual link is predicted between non-adjacent basic discourse units.

[0005] According to yet another aspect, a computer-readable medium for dialogue analysis is provided. The computer-readable medium can include one or more computer-readable storage devices and program instructions stored in at least one of the one or more tangible storage devices, the program instructions being executable by a processor. The program instructions are executable by the processor to execute a method, the method thus including receiving dialogue data having a plurality of basic discourse units. Based on performing pairwise comparisons on the basic discourse units, a local representation and a global representation are determined for each of the basic discourse units. Based on the determined local and global representations, a semantic relationship between the two basic discourse units of each pair of basic discourse units is identified. Based on the identified semantic relationship, a contextual link is predicted between non-adjacent basic discourse units. [Brief description of the drawings]

[0006] These and other objects, features, and advantages will become apparent from the following detailed description of illustrative embodiments, which is to be read in connection with the accompanying drawings, in which various features of the drawings are not drawn to scale for the sake of clarity in facilitating understanding by those skilled in the art in connection with the detailed description. [Figure 1] 1 illustrates a networked computing environment in accordance with at least one embodiment. [Diagram 2] FIG. 1 is a block diagram of a system for analyzing multi-party interactions according to at least one embodiment. [Diagram 3] 1 is an operational flowchart illustrating steps performed by a program for analyzing multi-party interactions in accordance with at least one embodiment. [Figure 4] FIG. 2 is a block diagram of internal and external components of the computer and server shown in FIG. 1 according to at least one embodiment. [Diagram 5] 2 is a block diagram of an exemplary cloud computing environment including the computer system shown in FIG. 1 according to at least one embodiment. [Figure 6] FIG. 6 is a block diagram of functional layers of the example cloud computing environment of FIG. 5 in accordance with at least one embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0007] Detailed embodiments of the claimed structures and methods are disclosed herein. However, it is understood that the disclosed embodiments are merely examples of the claimed structures and methods, which may be embodied in various forms. However, the structures and methods may be embodied in many different forms and should not be construed as being limited to the exemplary embodiments set forth herein. Rather, these exemplary embodiments are provided so that this disclosure will be thorough and complete, and will fully convey its scope to those skilled in the art. In this description, details of well-known features and techniques may be omitted to avoid unnecessarily obscuring the presented embodiments.

[0008] FIELD OF THE DISCLOSURE The embodiments relate generally to the field of data processing, and more particularly to speech classification. The exemplary embodiments described below provide, among other things, systems, methods, and computer programs for analyzing multi-party dialogue. Some embodiments thus have the capacity to improve the field of computing by allowing learning effective representations without suffering from error propagation. As a result, consistent improvements may be achieved in all dialogue turns, not just at the beginning of each dialogue.

[0009] As mentioned above, conversational discourse analysis aims to discover interdependencies between speakers and utterances. A dialogue may contain relations between non-adjacent utterances, such as a "comment" relation between the last turn and the first turn. For example, a later response in a dialogue may be determined to be a comment in response to an earlier non-adjacent response, despite an intervening unrelated response. This task is not trivial, as it includes challenging cases such as relations between non-adjacent utterances. Early attempts at discourse analysis were primarily based on handcrafted features, and the decoding process is modeled in a pipelined manner. In this process, the probability of discourse relations for each EDU pair is first estimated, and then the discourse structure is inferred by a search algorithm such as maximum spanning tree. Inspired by the success of deep learning in other natural language processing tasks, neural models such as DeepSequential are sometimes used for discourse analysis in multi-party dialogues. Typically, DeepSequential simultaneously builds and utilizes the discourse structure of each dialogue, i.e., it first extracts features from the already predicted discourse structure before making the current prediction and incorporating it into the partial discourse structure.

[0010] However, while obtaining previously predicted structures can provide a richer representation for prediction, DeepSequential faces serious error propagation. Therefore, it may be advantageous to use edge-centric structural self-aware graph neural networks (SSA-GNNs) for discourse analysis of multi-party dialogues in order to minimize error propagation in dialogue analysis. In this way, dialogue analysis can be performed with higher accuracy, reliability, and therefore also with higher efficiency, since error correction is no longer required, and thus there is no need to allocate computational resources or time to correct errors.

[0011] Aspects are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer-readable media according to various embodiments. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.

[0012] The exemplary embodiments described below provide a system, method, and computer program that uses an edge-centric structural self-aware graph neural network (SSA-GNN) for discourse analysis of multi-party dialogues. With this model, effective representations can be learned without features from past actions (hence, no error propagation). Different from previous studies that focus on learning EDU-specific representations, this model directly uses edge eigenvectors to capture the implicit structural information of each EDU pair. Benefiting from the layer-wise message passing of graph neural networks, the edge eigenvectors in SSA-GNNs can gradually capture the implicit correlation and global information through semantic interactions with their connected nodes. As a result, this model can learn better representations using implicit structural information instead of explicit past predictions, which leads to improved discourse analysis results without consuming more computational power. Therefore, discourse analysis according to the present invention is more efficient in terms of consuming computational power.

[0013] To further enhance representation learning, two auxiliary loss terms may be used to provide orthogonal signals to the overall objective function. The first one is a loss function for discourse relation classification at each layer of the SSA-GNN. Using this function, we can perform layer-by-layer relation classification for each EDU pair based on its corresponding edge-specific representation. The second one is a Kullback-Leibler divergence loss function for knowledge distillation. It transfers the knowledge of the teacher model to the model, which has access to more context and other ground truth discourse relations, except that the relations need to be predicted.

[0014] Referring now to Figure 1, a functional block diagram of a networked computing environment illustrating a dialogue analysis system 100 (hereinafter "system") for analyzing multi-party dialogues. It should be appreciated that Figure 1 is merely provided as an illustration of one implementation and is not intended to imply any limitation with respect to the environments in which different embodiments may be implemented. Many modifications to the depicted environment may be made based on design and implementation requirements.

[0015] The system 100 may include a computer 102 and a server computer 114. The computer 102 may communicate with the server computer 114 via a communication network 110 (hereinafter "network"). The computer 102 may include a processor 104 and a software program 108, which may be stored in a data storage device 106 and may interface with a user and communicate with the server computer 114. As discussed below with reference to FIG. 4, the computer 102 may include internal and external components 800A and 900A, respectively, and the server computer 114 may include internal and external components 800B and 900B, respectively. The computer 102 may be, for example, a mobile device, a phone, a personal digital assistant, a netbook, a laptop computer, a tablet computer, a desktop computer, or any type of computing device capable of executing programs, accessing a network, and accessing a database.

[0016] Additionally, the server computer 114 may operate in a cloud computing service model, such as Software as a Service (SaaS), Platform as a Service (PaaS), or Infrastructure as a Service (laaS), as discussed below with respect to Figures 5 and 6. The server computer 114 may be located in a cloud computing deployment model, such as a private cloud, a community cloud, a public cloud, or a hybrid cloud.

[0017] The server computer 114 is capable of executing a Dialogue Parsing Program 116 (hereinafter the "Program") that can be used to analyze multi-party dialogues and that can interact with the database 112. The Dialogue Parsing Program method is described in more detail below with respect to FIG. 3. In one embodiment, the computer 102 can act as an input device including a user interface, while the Program 116 may primarily execute on the server computer 114. In another embodiment, the Program 116 may primarily execute on one or more computers 102, while the server computer 114 may be used to process and store data used by the Program 116. It should be noted that the Program 116 may be a stand-alone program or may be integrated into a larger dialogue parsing program.

[0018] It should be noted, however, that the processing of the program 116 may be shared in any ratio between the computer 102 and the server computer 114 in some examples. In another embodiment, the program 116 may run on multiple computers, server computers, or any combination of computers and server computers, e.g., multiple computers 102 in communication with a single server computer 114 over the network 110. In another embodiment, for example, the program 116 may run on multiple server computers 114 in communication with multiple client computers over the network 110. Alternatively, the program may run on a network server in communication with the server and multiple client computers over the network.

[0019] The network 110 may include wired, wireless, or fiber optic connections, or any combination thereof. In general, the network 110 may be any combination of connections and protocols that support communication between the computer 102 and the server computer 114. Network 110 may include various types of networks, such as a local area network (LAN), a wide area network (WAN) such as the Internet, a telecommunications network such as a public switched telephone network (PSTN), a wireless network, a public switched telephone network, a satellite network, a cellular network (e.g., a fifth generation (5G) network, a long-term evolution (LTE) network, a third generation (3G) network, a code division multiple access (CDMA) network, etc.), a public land mobile network (PLMN), a metropolitan area network (MAN), a private network, an ad-hoc network, an intranet, a fiber optic based network, etc., and / or a combination of these or other types of networks.

[0020] The number and arrangement of devices and networks shown in Figure 1 are provided as an example. In practice, there may be additional, fewer, different, or otherwise arranged devices and / or networks relative to the devices and / or networks shown in Figure 1. Furthermore, two or more of the devices shown in Figure 1 may be implemented within a single device, or a single device shown in Figure 1 may be implemented as multiple distributed devices. Additionally, or instead, a set of devices (e.g., one or more devices) of system 100 may perform one or more functions that are described as being performed by another set of devices of system 100.

[0021] Referring now to FIG. 2, a dialogue analysis system 200 is shown. The dialogue analysis system 200 includes, among other things, a hierarchical gated recurrence unit (GRU) 202, a structural self-aware graph neural network (SSA-GN NThe SSA-GNN 204 may include a gated recurrence unit (GRU) 204 and a relation classification module 206. A gated recurrence unit (GRU) is a gating mechanism in a recurrent neural network (RNN) that uses connections through a sequence of nodes to perform machine learning tasks related to memory and clustering. The hierarchical GRU 202 can obtain elementary discourse unit (EDU) representations, such as local representations and global representations. These EDU representations and one or more discourse features extracted from the EDU representations are then used to initialize the nodes and edges of the SSA-GNN 204, respectively. Using the edge representations generated by the SSA-GNN 204 from grapheme learning, the relation classification module 206 performs link prediction and relation classification. The hierarchical GRU 202 includes two GRU layers. A first bidirectional GRU layer processes each EDU, and the last hidden states in two directions are concatenated to obtain a local representation of each EDU. A second bidirectional GRU layer can then be applied to the local representation to obtain a global representation.

[0022] The SSA-GNN 204 is applied to capture implicit structural information. A vector can be employed for each EDU pair (where the vector in this case constitutes, for example, the edges of the SSA-GNN 204) and for each EDU (where the vector in this case constitutes, for example, the nodes of the SSA-GNN 204). Thus, the SSA-GNN 204 takes a fully connected graph as input. For the initialization of the hidden state of the SSA-GNN 204, the global representation of the layer GRU 202 is used as the initial node representation u0. The SSA-GNN 204 uses a scaled dot-product attention function, in particular a structure-aware scaled dot-product attention function, to update the node hidden state. The kth layer node representation u k and the edge representation x k When updated, u k+1 can be calculated as follows:

number

[0023] To further enhance the representation learning, two auxiliary loss terms with multiple granularities may be used. The most straightforward method is to employ a layer-wise classifier for the edge hidden state of each SSA-GNN layer, which encourages the edge representation to capture the corresponding relation type information from the SSA-GNN. In addition to the layer-wise relation classification that provides label-level structural supervision, knowledge distillation may use a structure-aware teacher model to guide the model for better representation learning. Unlike the student model, the teacher inputs all the gold structural information and interactions except the predicted relations. The edge hidden state containing the richest structural knowledge can be transferred from the teacher to the student, and the student is guided on how to correctly and effectively extract structural information from the SSA-GNN.

[0024] Referring now to FIG. 3, an operational flow diagram illustrating steps of a method 300 performed by a program for analyzing multi-party interactions (or classifying multi-party speech data) is shown.

[0025] At 302, the method 300 may include receiving dialogue data having a plurality of basic discourse units. The dialogue data may be an audio signal (a speech signal) that includes a plurality of basic discourse units.

[0026] At 304, the method 300 can include determining a local representation and a global representation for each of the base discourse units based on performing pairwise comparisons on the base discourse units.

[0027] At 306, the method 300 may include identifying a semantic relationship between the two base discourse units of each pair of base discourse units based on the determined local and global representations.

[0028] At 308, the method 300 can include predicting contextual links between non-adjacent basic discourse units based on the identified semantic relations.

[0029] It can be appreciated that Figure 3 is only intended to provide an illustration of one implementation and is not intended to imply limitations as to how different embodiments may be implemented Many modifications to the depicted environment may be made based on design and implementation requirements.

[0030] Figure 4 is a block diagram 400 of internal and external components of the computer shown in Figure 1 according to one illustrative embodiment. It should be appreciated that Figure 4 is merely provided as an illustration of one implementation and is not intended to imply limitation with respect to the environments in which different embodiments may be implemented. Many modifications to the depicted environment may be made based on design and implementation requirements.

[0031] The computer 102 (FIG. 1) and the server computer 114 (FIG. 1) may include respective sets of internal components 800A,B and external components 900A,B shown in FIG. 5. Each of the set of internal components 800 includes one or more processors 820 on one or more buses 826, one or more computer-readable RAMs 822, and one or more computer-readable ROMs 824, one or more operating systems 828, and one or more computer-readable tangible storage devices 830.

[0032] The processor 820 may be implemented in hardware, firmware, or a combination of hardware and software. The processor 820 may be a central processing unit (CPU), a graphics processing unit (GPU), an accelerated processing unit (APU), a microprocessor, a microcontroller, a digital signal processor (DSP), a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), or another type of processing component. In some implementations, the processor 820 includes one or more processors that can be programmed to perform functions. The bus 826 includes components that enable communication between the internal components 800A,B.

[0033] One or more operating systems 828, software programs 108 (FIG. 1), and dialogue analysis programs 116 (FIG. 1) on the server computer 114 (FIG. 1) are stored in one or more of the respective computer-readable tangible storage devices 830 for execution by one or more of the respective processors 820 via one or more of the respective RAMs 822 (which typically include cache memory). In the embodiment shown in FIG. 4, each of the computer-readable tangible storage devices 830 is a magnetic disk storage device of an internal hard drive. Alternatively, each of the computer-readable tangible storage devices 830 is a semiconductor storage device such as a ROM 824, an EPROM, a flash memory, an optical disk, a magneto-optical disk, a solid-state disk, a compact disk (CD), a digital versatile disk (DVD), a floppy disk, a cartridge, a magnetic tape, and / or another type of non-transitory computer-readable tangible storage device capable of storing computer programs and digital information.

[0034] Each set of internal components 800A,B further includes a R / W drive or interface 832 for reading from and writing to one or more portable computer-readable tangible storage devices 936, such as a CD-ROM, a DVD, a memory stick, a magnetic tape, a magnetic disk, an optical disk, or a semiconductor storage device. Software programs, such as software program 108 (FIG. 1) and dialogue analysis program 116 (FIG. 1), may be stored in one or more of the respective portable computer-readable tangible storage devices 936 and read via the respective R / W drive or interface 832 and loaded onto the respective hard drives 830.

[0035] Each set of internal components 800A,B further includes a network adapter or interface 836, such as a TCP / IP adapter card, a wireless Wi-Fi interface card, or a 3G, 4G, or 5G wireless interface card or other wired or wireless communication link. The software program 108 (FIG. 1) and the dialogue analysis program 116 (FIG. 1) on the server computer 114 (FIG. 1) can be downloaded from an external computer to the computer 102 (FIG. 1) and the server computer 114 via a network (e.g., the Internet, a local area network, or other wide area network) and the respective network adapter or interface 836. From the network adapter or interface 836, the software program 108 and the dialogue analysis program 116 on the server computer 114 are loaded onto the respective hard drives 830. The network may include copper wire, optical fiber, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers.

[0036] Each of the set of external components 900A,B may include a computer display monitor 920, a keyboard 930, and a computer mouse 934. The external components 900A,B may also include touch screens, virtual keyboards, touch pads, pointing devices, and other human interface devices. Each of the set of internal components 800A,B further includes a device driver 840 for interfacing with the computer display monitor 920, the keyboard 930, and the computer mouse 934. The device driver 840, the R / W drive or interface 832, and the network adapter or interface 836 include hardware and software (stored in the storage device 830 and / or the ROM 824).

[0037] Although this disclosure includes detailed descriptions of cloud computing, it is understood in advance that implementation of the teachings described herein is not limited to a cloud computing environment. Rather, some embodiments may be implemented in connection with any other type of computing environment now known or later developed.

[0038] Cloud computing is a model of service delivery that enables convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, network bandwidth, servers, processing, memory, storage, applications, virtual machines, and services) that can be rapidly provisioned and released with minimal administrative effort or interaction with a service provider. The cloud model includes at least five characteristics, at least three service models, and at least four deployment models.

[0039] The characteristics are as follows: On-Demand Self-Service: Cloud consumers can unilaterally provision computing capacity, such as server time and network storage, automatically as needed, without requiring human interaction with the provider of the service. Pervasive network access: Capabilities are available across the network and accessed via standard mechanisms that facilitate use by heterogeneous thin or thick client platforms (eg, mobile phones, laptops, and PDAs). Resource Pooling: Provider computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically allocated and reallocated according to demand. Consumers generally have no control or knowledge over the exact location of the resources provided, although there is a sense of location independence in that they may be able to specify location at a higher level of abstraction (e.g., country, state, or data center). Rapid Elasticity: Capacity can be rapidly and elastically provisioned, in some cases automatically, to quickly scale out, and rapidly released to quickly scale in. To the consumer, the capacity available for provisioning often appears to be unlimited, and can be purchased in any quantity at any time. Measured Services: Cloud systems automatically control and optimize resource usage by leveraging metering capabilities at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, active user accounts). Resource usage can be monitored, controlled, and reported, providing transparency to both providers and consumers of the services being utilized.

[0040] The service model is as follows: Software as a Service (SaaS): The ability offered to a consumer is to use a provider's applications running on a cloud infrastructure. The applications are accessible from a variety of client devices via thin-client interfaces such as web browsers (e.g., web-based email). The consumer does not manage or control the underlying cloud infrastructure, including networks, servers, operating systems, storage, or even individual application capabilities, with the possible exception of limited user-specific application configuration settings. Platform as a Service (PaaS): The capability offered to a consumer is to deploy applications created or acquired by the consumer, written using programming languages ​​and tools supported by the provider, onto a cloud infrastructure. The consumer does not manage or control the underlying cloud infrastructure, including networks, servers, operating systems, or storage, but does control the deployed applications and potentially the application hosting environment configuration. Infrastructure as a Service (laaS): The ability offered to consumers is to provision processing, storage, network, and other basic computing resources, upon which the consumer can deploy and run any software, which may include operating systems and applications. The consumer does not manage or control the underlying cloud infrastructure, but does have control over the operating systems, storage, deployed applications, and possibly limited control over select networking components (e.g., host firewalls).

[0041] The deployment models are as follows: Private Cloud: The cloud infrastructure is operated solely on behalf of the organization. It may be managed by the organization or a third party and may exist on-premise or off-premise. Community Cloud: The cloud infrastructure is shared by several organizations to support a particular community with shared concerns (e.g., mission, security requirements, policies, compliance considerations). It may be managed by the organization or a third party and may exist on-premise or off-premise. Public Cloud: The cloud infrastructure is made available to the general public or a large industry group and is owned by an organization that sells cloud services. Hybrid Cloud: Cloud infrastructure is a composite of two or more clouds (private, community, or public) that remain unique entities but are tied together by standardized or proprietary technologies that enable data and application portability (e.g., cloud bursting for load balancing between clouds).

[0042] Cloud computing environments are service-oriented with a focus on statelessness, low coupling, modularity, and semantic interoperability. At the heart of cloud computing is an infrastructure that includes a network of interconnected nodes.

[0043] Referring to FIG. 5, an exemplary cloud computing environment 500 is shown. As shown, the cloud computing environment 500 includes one or more cloud computing nodes 10 with which local computing devices used by cloud consumers, such as, for example, a personal digital assistant (PDA) or cellular phone 54A, a desktop computer 54B, a laptop computer 54C, and / or an automobile computer system 54N, can communicate. The cloud computing nodes 10 can communicate with each other. They may be physically or virtually grouped (not shown) in one or more networks, such as a private, community, public, or hybrid cloud as described above, or a combination thereof. This allows the cloud computing environment 500 to provide infrastructure, platform, and / or software as a service that does not require cloud consumers to maintain resources on their local computing devices. It is understood that the types of computing devices 54A-N shown in FIG. 5 are for illustrative purposes only, and that the cloud computing nodes 10 and the cloud computing environment 500 can communicate with any type of computerized device over any type of network and / or network addressable connection (e.g., using a web browser).

[0044] Referring to Figure 6, a set of functional abstraction layers 600 provided by the cloud computing environment 500 (Figure 5) is shown. It should be understood in advance that the components, layers, and functions shown in Figure 6 are for illustrative purposes only, and the embodiments are not limited thereto. As shown, the following layers and corresponding functions are provided:

[0045] Hardware and software layer 60 includes hardware and software components. Examples of hardware components include mainframe 61, RISC (reduced instruction set computer) architecture based servers 62, servers 63, blade servers 64, storage devices 65, and networks and networking components 66. In some embodiments, software components include network application server software 67 and database software 68.

[0046] The virtualization layer 70 provides an abstraction layer that can provide the following examples of virtual entities: virtual servers 71, virtual storage 72, virtual networks including virtual private networks 73, virtual applications and operating systems 74, and virtual clients 75.

[0047] In one example, the management layer 80 may provide the functionality described below: Resource provisioning 81 provides dynamic procurement of computing and other resources utilized to execute tasks within the cloud computing environment. Metering and pricing 82 provides cost tracking as resources are utilized within the cloud computing environment and billing or invoicing for the consumption of these resources. In one example, these resources may include application software licenses. Security provides identity verification for cloud customers and tasks, and protection for data and other resources. User portal 83 provides consumers and system administrators with access to the cloud computing environment. Service level management 84 provides cloud computing resource allocation and management such that required service levels are met. Service Level Agreement (SLA) planning and fulfillment 85 provides advance arrangement and procurement of cloud computing resources where future requirements are anticipated according to SLAs.

[0048] The workload tier 90 provides examples of functions for which a cloud computing environment can be utilized. Examples of workloads and functions that can be provided from this tier include mapping and navigation 91, software development and lifecycle management 92, virtual classroom instructional delivery 93, data analytics processing 94, transaction processing 95, and dialogue analysis 96. Dialogue analysis 96 can analyze multi-party dialogues based on learning effective representations without suffering from error propagation.

[0049] Some embodiments may relate to systems, methods, and / or computer-readable media at any possible level of technical detail of integration. The computer-readable media may include one (or more) computer-readable non-transitory storage media having computer-readable program instructions that cause a processor to perform operations.

[0050] A computer readable storage medium may be a tangible device capable of holding and storing instructions for use by an instruction execution device. A computer readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of computer readable storage media includes the following: portable computer diskettes, hard disks, random access memories (RAM), read only memories (ROM), erasable programmable read only memories (EPROM or flash memory), static random access memories (SRAM), portable compact disk read only memories (CD-ROM), digital versatile disks (DVD), memory sticks, floppy disks, mechanically encoded devices such as punch cards or raised structures in grooves having instructions recorded thereon, and any suitable combination of the foregoing. As used herein, computer-readable storage media should not be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission medium (e.g., light pulses passing through a fiber optic cable), or electrical signals transmitted over wires.

[0051] The computer readable program instructions described herein can be downloaded from a computer readable storage medium to each computing / processing device or to an external computer or storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network may include copper transmission cables, optical transmission fiber, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing / processing device.

[0052] The computer readable program code / instructions for performing the operations may be either assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state setting data, configuration data for an integrated circuit, or source or object code written in any combination of one or more programming languages ​​including object oriented programming languages ​​such as Smalltalk, C++, and procedural programming languages ​​such as the "C" programming language or similar programming languages. The computer readable program instructions may be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer via any type of network including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (e.g., via the Internet using an Internet Service Provider). In some embodiments, an electronic circuit including, for example, a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), may execute computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuit to perform an aspect or operation.

[0053] These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, whereby the instructions executed by the processor of the computer or other programmable data processing apparatus create means for performing the functions / acts specified in one or more blocks of the flowcharts and / or block diagrams. These computer readable program instructions may further be stored on a computer readable storage medium capable of directing a computer, programmable data processing apparatus, and / or other device to function in a particular manner, whereby the computer readable storage medium having instructions stored thereon includes an article of manufacture including instructions for performing aspects of the functions / acts specified in one or more blocks of the flowcharts and / or block diagrams.

[0054] The computer readable program instructions may further be loaded into a computer, other programmable data processing apparatus, or other device to cause the computer, other programmable apparatus, or other device to execute a series of operational steps to generate a computer-implemented process, whereby the instructions executing on the computer, other programmable apparatus, or other device perform the functions / acts specified in one or more blocks of the flowcharts and / or block diagrams.

[0055] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer-readable media according to various embodiments. In this regard, each block in the flowcharts or block diagrams may represent a module, segment, or part of instructions that includes one or more executable instructions for implementing the specified logical function. The methods, computer systems, and computer-readable media may include additional, fewer, different, or differently arranged blocks relative to those shown in the figures. In some alternative implementations, the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may actually be executed simultaneously or substantially simultaneously, or the blocks may be executed in reverse order depending on the functionality involved. Furthermore, it is noted that each block of the block diagrams and / or flowchart illustrations, and combinations of blocks in the block diagrams and / or flowchart illustrations, may be implemented by a dedicated hardware-based system that performs the specified functions or acts or executes a combination of dedicated hardware and computer instructions.

[0056] It is apparent that the systems and / or methods described herein may be implemented in different forms of hardware, firmware, or a combination of hardware and software. The actual specialized control hardware or software code used to implement these systems and / or methods is not intended to limit the implementation. Thus, the operation and behavior of the systems and / or methods are described herein without reference to specific software code, and it is understood that software and hardware may be designed to implement the systems and / or methods based on the description herein.

[0057] No element, act, or instruction used herein should be construed as critical or essential unless expressly described as such. Additionally, as used herein, the articles "a" and "an" are intended to include one or more items and may be used interchangeably with "one or more." Additionally, as used herein, the term "set" is intended to include one or more items (e.g., related items, unrelated items, a combination of related and unrelated items, etc.) and may be used interchangeably with "one or more." Where only one item is intended, the term "a" or similar language is used. Additionally, as used herein, the terms "has," "have," "having," and the like are intended to be open-ended terms. Additionally, the phrase "based on" is intended to mean "based at least in part on," unless expressly indicated otherwise.

[0058] The description of various aspects and embodiments is presented for illustrative purposes and is not intended to be exhaustive or limited to the disclosed embodiments. Even if combinations of features are recited in the claims and / or disclosed in the specification, these combinations are not intended to limit the disclosure of possible implementations. Indeed, many of these features may be combined in ways not specifically recited in the claims and / or disclosed in the specification. Although each dependent claim listed below may directly depend on only one claim, the disclosure of possible implementations includes each dependent claim in combination with every other claim in the claim set. Many modifications and variations will be apparent to those skilled in the art without departing from the scope of the described embodiments. The terms used in this specification have been selected to best explain the principles of the embodiments, practical applications or technical improvements to the technology found in the marketplace, or to enable those skilled in the art to understand the embodiments disclosed herein.

Claims

1. 1. A processor-executable method of dialogue analysis, comprising: receiving dialogue data having a plurality of basic discourse units; determining a local representation and a global representation for each of the plurality of basic discourse units based on performing pairwise comparisons on the basic discourse units; identifying a semantic relationship between the two basic discourse units of each pair of basic discourse units based on the determined local and global representations; predicting contextual links between non-adjacent basic discourse units from the plurality of basic discourse units based on the identified semantic relations; Including, The method, wherein the local representation and the global representation are used to initialize a number of nodes of a structural self-aware graph neural network (SSA-GNN), and a number of interaction features extracted from the local representation and the global representation are used to initialize a number of edges of the SSA-GNN.

2. Determining the local representation comprises: processing each basic discourse unit through a first bidirectionally gated recurrence unit; concatenating the hidden states generated by the first bidirectionally gated recurrence units in two directions of each basic discourse unit; The method of claim 1 , comprising:

3. The method of claim 2 , further comprising updating the hidden state based on a scaled dot-product attention function.

4. Determining the global representation comprises:

4. A method as claimed in claim 2 or 3, comprising processing each local representation through a second bidirectionally gated recurrence unit.

5. The method according to any one of claims 1 to 4, wherein the semantic relationship between the two basic discourse units of each pair of basic discourse units is identified based on applying the structural self-aware graph neural network SSA-GNN to capture implicit structural information corresponding to a first vector of each basic discourse unit and a second vector of each pair of basic discourse units.

6. The method of claim 5, further comprising: training the SSA-GNN based on a layer-by-layer relationship classification for each pair of basic discourse units.

7. The method of claim 6 , wherein the layer-by-layer relationship classification is based on edge-specific representations generated by the SSA-GNN from grapheme training.

8. 1. A computer system for dialogue analysis, comprising: one or more computer readable non-transitory storage media configured to store computer program code; one or more computer processors configured to access said computer program code, said computer program code causing said one or more computer processors to perform a method according to any one of claims 1 to 7; 2. A computer system comprising:

9. A computer program for dialogue analysis, said computer program causing one or more computer processors to carry out the method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Constructing imaginary discourse trees to improve answering convergent questions

    WO2019217722A1