Extracting semantic expressions from text

The technique addresses NLU limitations by employing syntactic analysis and NSM theory with Bi-LSTM models to generate domain-independent semantic representations, enhancing NLU accuracy and applicability across diverse domains.

JP7751946B2Active Publication Date: 2025-10-09INTERNATIONAL BUSINESS MACHINE CORPORATION
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2022505346
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2019-08-21
Filing Date
2020-08-18
Publication Date
2025-10-09
Estimated Expiration
2040-08-18

AI Technical Summary

Technical Problem

Existing natural language understanding (NLU) technologies fail to provide true NLU capabilities due to limitations in current natural language processing (NLP) and information extraction (IE) systems, particularly in handling complex human languages and domain variations, with rule-based and deep learning approaches being prone to inaccuracies and requiring extensive domain-specific training.

Method used

A technique that involves syntactic analysis, semantic detection, and template matching using predefined syntactic structure templates and Natural Semantic Metalanguage (NSM) theory to derive a computable semantic representation of text, utilizing a bidirectional long short-term memory (Bi-LSTM) with attention models for generic semantic element detection across domains.

Benefits of technology

Enables accurate and domain-independent semantic representation of text, reducing the need for retraining and improving NLU applications by providing a computable semantic output that can be used across various domains.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007751946000001
    Figure 0007751946000001
  • Figure 0007751946000002
    Figure 0007751946000002
  • Figure 0007751946000003
    Figure 0007751946000003
Patent Text Reader

Abstract

Extracting semantic representations from text [Solution] This disclosure provides methods, systems, and computer program products for extracting semantic representations from text. The computer-implemented method includes performing syntactic analysis on at least one fragment of text to derive a syntactic structure of the text fragment; selecting one or more predefined syntactic structure templates that correspond to the derived syntactic structure and define different combinations of semantic elements and semantic features corresponding to the semantic elements; detecting semantic information within the text fragment, the semantic information including at least one semantic element and one or more corresponding semantic features; identifying one selected syntactic structure template that matches the derived syntactic structure and the detected semantic information within the text fragment; and generating a computable semantic representation of the text fragment based at least in part on the identifying step.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates generally to information technology, and more particularly to natural language understanding in artificial intelligence. [Background technology]

[0002] Natural language understanding (NLU), which relates to machine reading comprehension, is generally considered one of the most challenging problems in artificial intelligence. NLU is of great importance due to its many applications, including automated reasoning, machine translation, and speech activation. Existing technologies in computer science are generally limited to natural language processing (NLP) and information extraction (IE) systems. These systems fail to provide true NLU capabilities. In addition, disagreements still exist between logical linguistics and semantics in the definition of the word "mean," and several approaches to the word "mean" in logical semantics are not practical for building computer-based systems for NLU. Summary of the Invention

[0003] In one embodiment of the subject matter described herein, a technique for extracting a semantic representation from text is provided. An exemplary embodiment includes performing syntactic analysis on at least one fragment of text to derive a syntactic structure of the text fragment, selecting one or more predefined syntactic structure templates corresponding to the derived syntactic structure, each predefined syntactic structure template defining a different combination of semantic elements and semantic features corresponding to semantic elements for the derived syntactic structure, detecting semantic information within the text fragment, the semantic information including (i) at least one of the semantic elements and (ii) one or more corresponding semantic features, identifying one of the selected syntactic structure templates that matches the derived syntactic structure and the detected semantic information within the text fragment, generating a computable semantic representation of the text fragment based at least in part on the identifying, and outputting the computable semantic representation to one or more neural language understanding applications.

[0004] Another embodiment of the present invention, or elements thereof, may be implemented in the form of a computer program product tangibly embodied with computer-readable instructions that, when implemented, cause a computer to perform the method steps described herein. Yet another embodiment of the present invention, or elements thereof, may be implemented in the form of a system including a memory and at least one processor coupled to the memory and configured to cause the computer to perform the method steps described herein. Yet another embodiment of the present invention, or elements thereof, may be implemented in the form of means for performing the method steps disclosed herein or elements thereof, the means comprising hardware modules or a combination of hardware and software modules, the software modules being stored on a tangible computer-readable recording medium or media.

[0005] These and other objects, features and advantages of the present invention will become apparent from the following detailed description of illustrative embodiments thereof, which is to be read in connection with the accompanying drawings. Embodiments of the present invention will now be described, by way of example only, with reference to the accompanying drawings, in which: [Brief explanation of the drawings]

[0006] [Figure 1] FIG. 1 is a diagram illustrating a system architecture according to an exemplary embodiment of the present invention. [Figure 2] FIG. 2 is a diagram illustrating a semantic information detector in accordance with an example embodiment. [Figure 3] FIG. 3 is a diagram illustrating a syntactic structure with possible accompanying meanings according to an exemplary embodiment. [Figure 4] FIG. 4 is a diagram illustrating a technique according to an embodiment of the present invention. [Figure 5] FIG. 5 is a system diagram of an exemplary computer system in which at least one embodiment of the present invention may be implemented. [Figure 6] FIG. 6 illustrates a cloud computing environment according to an embodiment of the present invention. [Figure 7] FIG. 7 is a diagram of abstract model layers according to an embodiment of the present invention. DETAILED DESCRIPTION OF THE INVENTION

[0007] As mentioned above, existing technologies have failed to provide computer-based systems with true NLU capabilities. A system that converts text into its semantic representation is called a semantic parser. Generally, there are two cases of semantic parsing: open domain and closed domain. In the closed domain case, the input text comes only from a given domain, and it is assumed that some representation of the domain exists. For example, ontologies are frequently used as domain knowledge representations. Ontologies generally contain the concepts and meanings active in a domain. For example, if the domain is purchasing a plane ticket, the ontology would include concepts such as ticket, flight, destination, city, state, country, price, nonstop, etc. Examples of relationships in this domain include the ticket purchased, the price paid for the ticket, and the city from which the flight departs.

[0008] There are several approaches to discovering what concepts and relations exist in a given ontology for an input text. One approach is a rule-based system with a traditional NLP pipeline that includes a dependency parser and a rule-matching engine. These systems apply pre-configured rules to a dependency tree generated from the entire input sentence to find matches that indicate which concepts and relations have been detected from the ontology. The discovered concepts and relations are processed as semantic representations. This semantic representation can then be used for specific NLU tasks, such as natural language interfaces to databases, through translation into corresponding SQL queries.

[0009] This approach has several drawbacks. First, the ontology must be known in advance, which is generally problematic for broad domain knowledge. Second, dependency parsing is prone to errors, which leads to relative inaccuracies in the system (around 60-70%). Additionally, rules are generated in advance, which is not only time-consuming but also error-prone.

[0010] Another approach to semantic parsing is based on deep learning (DL) technology, where parsers are trained on a large corpus of labeled sentences and semantic representations using logical forms. This type of approach has the disadvantage of requiring a large corpus of annotated data. In addition, only very simple semantic structures are possible within this corpus. Therefore, these systems are also prone to inaccuracies, especially when the system is trained in one domain and then presented with a query from another, different domain. This is as if the system were learning to map from text to a structured representation within the set of examples provided in the training corpus.

[0011] Human languages ​​are extremely complex, and these approaches are often not suitable for either complex cases or when systems come from different domains.

[0012] The exemplary embodiments herein describe techniques for representing the meaning of text in a computable manner. Generally, these techniques represent meaning as a combination of general semantic primitives and their features. Meaning is extracted, for example, by applying semantic primitives and Natural Semantic Metalanguage (NSM) theory to extract semantic representations in a computable manner.

[0013] NSM works with over 70 languages ​​and handles a large number of linguistic concepts. It assumes that meaning can be expressed by a very small number (i.e., 64) of semantic elements. Semantic elements are concepts that are generic insofar as they can be translated into any known language and retain their semantic representation. Semantic elements are also primitive because they are the simplest linguistic concepts and cannot be defined using simpler terms. NSM also provides rules for how these semantic elements interact with each other. Semantic analysis within NSM yields reducible paraphrases called 'explications' that capture the meaning of the explained concept. Below is an example of an NSM explanation. Someone named X is having fun {now} ●Someone X is thinking like this right now "Many good things happen to me as much as I want them to." I can do as much as I want now 〇 This is good” For this reason, this person feels good about something right now. So that someone can feel when they think like this

[0014] Turning now to Figure 1, this figure illustrates a system architecture 100 according to an exemplary embodiment. The architecture 100 includes a syntactic structure analyzer 110, a syntactic template selector 115, a semantic information detector 125, a semantic information combiner 130, and a meaning extractor 135.

[0015] The syntactic analyzer 110 obtains one or more fragments of the text 105 and analyzes the fragments to derive syntactic structures. This can be done, for example, by using a component or dependency parser. The syntactic template selector 115 selects one or more syntactic structure templates 120 that correspond to the derived syntactic structures. Note that each syntactic structure template 120 specifies how semantic elements and their features are combined. The syntactic structure templates 120 can be determined in advance through offline processing (e.g., based on manual linguistic analysis).

[0016] The semantic information detector 125 detects semantic elements and their features in fragments within the text 105. This detection can be performed using DL models trained on large corpora (e.g., on the order of 100,000 sentences) for each semantic element. In this way, generic building blocks are detected regardless of the domain in which they are used, and these building blocks can be easily used by any application. In this way, the semantic information detector 125 needs to be trained only once and does not need to be retrained for a specific domain or a specific application, or both.

[0017] Referring also to FIG. 2, this figure illustrates an NSM semantic information detector 205 according to at least one example embodiment. NSM semantic information detector 205 may correspond, for example, to semantic information detector 125 of FIG. 1. NSM semantic information detector 205 includes multiple NSM detectors 210-1...210-64 (collectively referred to as NSM detectors 210), each configured to detect one of 64 semantic elements and their features. Each NSM detector 210 may be based on a DL approach, for example, a bidirectional long short-term memory (Bi-LSTM) with an attention model.

[0018] The semantic information combiner 130 combines the detected semantic elements and their features by using the syntactic structure templates selected by the syntactic template selector 115. The semantic extractor 135 determines which of the selected syntactic structure templates ensures a match between the syntactic structure of the text fragment and the semantic information output by the semantic information detector 125, and outputs a semantic representation 140 of the text fragment based on the match. The semantic representation can then be used by one or more NLU applications 145.

[0019] Thus, the sequence of processing steps includes: 1. Parsing the input text (e.g., with a component parser or a dependency parser) 2. Applying syntactic templates prepared in advance to the parsed text to find matches. In at least one embodiment, syntactic templates are equivalent to subtrees of a dependency tree (e.g., subject-verb-object, noun-preposition-noun, etc.). Each template has many meanings associated with it, and each meaning depends on the semantic features of the words triggered by a given syntactic pattern. 3. Passing the input text through a semantic detector that determines the semantic features of the input text and its words based on NSM theory as a non-limiting example. 4. For a given semantic feature determined in step 3, it is possible to determine which of the possible meanings of a given syntactic structure are actually present in the input text.

[0020] Referring to FIG. 3, this figure illustrates a syntactic structure 305 according to an exemplary embodiment. In this example, the syntactic structure 305 is "NP1 (person) V NP2 (person) NP3 (something)," where NP indicates a noun phrase and V indicates a verb. The syntactic structure 305 corresponds to the internal dative in English (see Wierzbicka, A., The Semantics of Grammar, Vol. 18, John Benjamins Publishing, 1988). The syntactic structure 305 includes eight corresponding types 310. Each of the types 310 is different and provides a template for how to combine semantic elements and their features for a given syntactic structure 305. For example, type 1—to move—provides the following template: NP1 did something to NP3 NP2 wants to own NP3 Something happened to NP3 because of that. At that time, people will think about this For that reason, NP2 will come to own NP3.

[0021] As shown above, in Type 1 - to move, NP3 mostly describes physically concrete objects, and verbs very often indicate that the object described in NP3 is in action (semantic element), whereas in Type 6 - to speak, NP3 generally indicates a word, as this type is related to the exchange of information.

[0022] 3 can be distinguished from the others once all semantic elements have been applied to the input text. After applying the semantic element detectors, the semantic extractor 135 determines the meaning (i.e., type) of the input text.

[0023] As another example, Type 6-Speaking provides the following template: NP1 said something to NP2 I hope NP2 will come and inform NP3 about this. Something happened to NP3 because of that. At that time, people will think about this For that reason, NP2 will come to inform NP3.

[0024] Templates corresponding to other types 310 will be apparent to those skilled in the art based on the above description.

[0025] To determine the meaning of an input sentence with a particular syntactic structure, all semantic information of the sentence is organized according to the corresponding template. The meaning of the input sentence is then equated to the template, which generates a match between its form (i.e., grammar) and content (semantics). For example, the syntactic structure of the input sentence "Jim threw an apple at Betty" corresponds to syntactic structure 305 in FIG. 3 (i.e., the internal dative in English). The semantic information of the sentence is then combined according to different templates of type 310 to find a match. As an example of this, the input sentence "Jim threw an apple at Betty" is matched to type 1—move. As another example, the input sentence "Bill emailed the news to Sue" is matched to type 6—speak.

[0026] According to an example embodiment, semantic elements and their corresponding features can be detected for a fragment of text, such that each one of the features has a separate representation. Thus, the semantic information for a given input text can include data representing one or more of the 64 semantic elements, in addition to data corresponding to each of the features corresponding to these semantic elements. For example, if the semantic element "moves" is detected in the input sentence, then the semantic information includes a data representation of "moves" in addition to data representing the features corresponding to the semantic element "moves." The features corresponding to the semantic element "moves" can include, for example, which objects in the input sentence are moving, any additional information about the characteristics of the movement itself, such as whether the object moves on its own (e.g., generates a force to move) or a force is applied from another object, and whether the starting point of the movement is indicated. By way of example, if the input is "Jack jumped off a cliff," then the output data representation can indicate that (i) movement is present, (ii) Jack is the moving object, (iii) the movement is approximately vertical, (iv) the starting point of the movement is the cliff, etc. The data representation may include, for example, one or more graphs showing the semantic elements, their features and the relationships between them.

[0027] FIG. 4 is a flow diagram of a process 400 according to an exemplary embodiment of the subject matter described herein. Step 402 includes performing a syntactic analysis of at least one fragment of text to derive a syntactic structure for the fragment of text. Step 404 includes selecting one or more predefined syntactic structure templates corresponding to the derived syntactic structure, each predefined syntactic structure template defining a different combination of semantic elements and semantic features corresponding to the semantic elements for the derived syntactic structure. Step 406 includes detecting semantic information within the fragment of text, where the semantic information includes (i) at least one semantic element and (ii) one or more corresponding semantic features. Step 408 includes identifying one of the selected predefined syntactic structure templates that matches the derived syntactic structure and the detected semantic information in the fragment of text. Step 410 includes generating a computable semantic representation of the fragment of text based at least in part on the identification. Step 412 includes outputting the computable semantic representation to one or more natural language understanding applications.

[0028] The syntactic analysis can be performed by a component or dependency parser, and one or more predefined syntactic structure templates can be selected from a plurality of predefined syntactic structure templates defined by offline linguistic analysis. The detecting in step 406 can include providing the text fragment as input to at least one trained neural network, where the at least one trained neural network outputs semantic information. The at least one trained neural network can include a bidirectional long short-term memory (B-LSTM) with an attention model. The at least one trained neural network is trained to detect multiple semantic primates across multiple domains. The at least one semantic primate can be detected from a set of 64 semantic primates. Process 400 can include obtaining at least one fragment of text from one or more text files, audio files, image files, and video files.

[0029] The technique of FIG. 4 also includes providing a system, as described herein, where the system includes separate software modules, each of the separate software modules embodied on a tangible computer-readable storage medium. All of the modules (or any subset thereof) can be, for example, on the same storage medium, or each can be on a different storage medium. The modules can include any or all components shown and / or described herein. In embodiments of the invention, the modules can operate, for example, on a hardware processor. The method steps can then be performed using the separate software modules of the system executing on the hardware processor, as described above. Furthermore, a computer program product can include providing a system having a tangible computer-readable storage medium and separate software modules having code adapted to be executed to perform at least one method step described herein.

[0030] 4 may be implemented via a computer program product that may include computer-usable program code stored in a computer-readable recording medium within a data processing system, where the computer-usable program code is downloaded over a network from a remote data processing system. Also, in embodiments of the present invention, the computer program product may include computer-usable program code stored in a computer-readable recording medium within a server data processing system, where the computer-usable program code is downloaded over a network from the remote data processing system for use in the computer-readable recording medium at the remote system.

[0031] Embodiments of the present invention or elements thereof may be implemented in the form of a memory and an apparatus coupled to the memory and configured to perform the exemplary method steps.

[0032] Additionally, embodiments of the present invention enable the use of software running on a computer or workstation. Referring to FIG. 5, such an implementation includes, for example, a processor 502, memory 504, and an input / output interface formed, for example, by a display 506 and a keyboard 508. As used herein, the term "processor" is intended to include any processing device, such as one that includes a CPU (Central Processing Unit) or other type of processing circuitry, or both. Furthermore, the term "processor" can refer to one or more individual processors. The term "memory" is intended to include memory associated with a processor or CPU, such as RAM (Random Access Memory), ROM (Read-Only Memory), fixed memory devices (e.g., hard drives), removable memory devices (e.g., diskettes), flash memory, etc. Additionally, as used herein, the phrase "input / output interface" is intended to include, for example, mechanisms for inputting data to a processing unit (e.g., a mouse) and mechanisms for providing associated results to a processing unit (e.g., a printer). The processor 502, memory 504, and input / output interfaces such as a display 506 and a keyboard 508 may be interconnected via a bus 510 that may be part of a data processing unit 512. Suitable interconnections via the bus 510 may also be provided to a network interface 514, such as a network card that may be provided for interfacing with a computer network, and to a media interface 516, such as a diskette or CD-ROM drive that may be provided for interfacing with a media 518.

[0033] Thus, computer software containing instructions or code for performing the methodologies of the present invention, as described herein, can be stored in an associated memory device (e.g., ROM, fixed or removable memory), loaded in part or in whole (e.g., RAM) when ready for use, and implemented by a CPU. Such software can include, but is not limited to, firmware, resident software, microcode, etc.

[0034] A suitable data processing system for storing and / or executing program code includes at least one processor 502 coupled directly or indirectly to memory elements 504 through a system bus 510. The memory elements may include local memory utilized during the actual implementation of the program code, bulk storage, and cache memory provided for temporarily storing at least some program code to reduce the number of times the code is called from bulk storage during implementation.

[0035] Input / output or I / O devices (including but not limited to keyboard 508, display 506, pointing device, etc.) may be coupled either directly (such as via bus 510) or to intervening I / O controllers (omitted for clarity).

[0036] Network adapters, such as network interface 514, may be coupled to a system to enable the data processing system to couple to other data processing systems or remote printers or storage devices through private or public networks. Modems, cable modems, and Ethernet cards are currently less commonly available types of network adapters.

[0037] As used herein, including the claims, a "server" includes a physical data processing system (e.g., system 512 shown in FIG. 5) that runs a server program. Such a physical server may or may not include a display and keyboard.

[0038] The present invention may be embodied in any possible level of technical detail integration as a system, method, or computer program product, or combination thereof, having computer-readable program instructions thereon for causing a processor to perform the features of the present invention.

[0039] A computer-readable storage medium may be any tangible device capable of holding and storing instructions for use by an instruction execution device. The computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electro-magnetic storage device, a semiconductor storage device, or any suitable combination thereof. More specific examples of computer-readable storage media include the following: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disk read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a punch card, or a mechanically encoded device having protruding structures within grooves that record instructions, and any suitable combination thereof. As used herein, a computer-readable recording medium is not to be construed as a transitory signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave such as a wave guide or other communication medium (e.g., light pulses passing through a fiber optic cable), or an electrical signal communicated through a wire.

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

[0041] Computer-readable program instructions for carrying out the operations of the present invention can be either source code or object code written in any combination of programming languages, including assembler instructions, instruction set architecture (ISA) instructions, machine language instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, configuration data for integrated circuits, or one or more procedural programming languages, such as object-oriented programming languages ​​like Smalltalk®, C++, the "C" programming language, or similar programming languages. The computer-readable program instructions can execute entirely on the user computer, partially on the user computer as a stand-alone software package, partially on the user computer and partially on a remote computer, or entirely on a remote computer or server. In the latter scenario, the remote computer can be connected to the user computer through any type of network, including a local area network (LAN), a wide area network (WAN), or the connection can be to an external computer (e.g., through an Internet service provider). In some embodiments, computer-readable program instructions can be executed by electrical circuitry, including, for example, programmable logic circuitry, field programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), using state information from the computer-readable program instructions to personalize the electrical circuitry to perform features of the present invention.

[0042] The embodiments of the invention described herein have been described with reference to flowchart instructions and / or block diagrams of methods, apparatus (systems), and computer-readable storage media and computer programs according to embodiments of the invention. It will be understood that any combination of flowchart illustrations and / or block diagrams and / or blocks in flowchart illustrations and / or block diagrams can be implemented by computer-readable program instructions.

[0043] These computer-readable program instructions can be provided to a general-purpose computer, a special-purpose computer, or other processor or other programmable data processing device to create a machine, and execution by the computer's processor or other programmable data processing device creates means for implementing the functions / operations specified in the flowchart and block diagram block or blocks, or combinations thereof. These computer-readable program instructions that direct a computer, programmable data processing device, or other device, or combinations thereof, to function in a particular manner can also be stored on a computer-readable recording medium, and the computer-readable recording medium having instructions stored thereon constitutes an article of manufacture containing instructions that implement the functional / operational features specified in the flowchart and block diagram block or blocks, or combinations thereof.

[0044] The computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device and cause a computer-implemented process to perform a series of operational steps on the computer, other programmable apparatus, or other device to implement the functions / acts identified in a block or blocks of the flowcharts and block diagrams, or a combination thereof, on the computer, other programmable apparatus, or other device.

[0045] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and possible implementations of systems, methods, and computer programs according to various embodiments of the present invention. In this regard, the flowcharts or block diagrams may represent modules, segments, or portions of instructions, which contain one or more executable instructions for implementing a specific logical function(s). In some alternative implementations, the functions described in the blocks may be performed other than as illustrated. For example, two blocks shown in succession may actually be performed as a single step, or may be performed simultaneously, substantially simultaneously, or partially or completely overlapping in time, depending on the functionality involved, or the blocks may sometimes be performed in reverse order. It should also be noted that block diagrams and / or flowchart illustrations, and / or combinations thereof, may be implemented by special-purpose hardware-based systems that perform specific functions or operations or execute specific-purpose hardware and computer instructions.

[0046] It should be noted that any of the methods described herein may include the additional step of providing a system including another software module embodied on a computer-readable storage medium; this module may include, for example, any or all of the components detailed herein. The method steps, as described above, are then performed using the other software modules of the system and / or system sub-modules, and executed on hardware processor 502. Furthermore, a computer program product may include providing a system having a computer-readable storage medium and another software module having code adapted to be executed to perform at least one method step described herein.

[0047] In any case, the components described herein may be implemented in various forms of hardware, software, or a combination thereof, such as application specific integrated circuit(s), functional circuitry, a suitably programmed digital computer with associated memory, etc. Given the teachings of the present invention herein, those skilled in the art will be able to envision other implementations of the components of the present invention.

[0048] Additionally, although this disclosure includes details about cloud computing, the teachings referenced herein are not limited to cloud computing environments. Rather, the environments of this disclosure can be implemented in combination with any other type of computing environment now known or developed in the future.

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

[0050] Its features are as follows: On-demand self-service: Cloud consumers are automatically provisioned with computing capacity, such as server time and network storage, as they need it, without any human interaction with the service provider. Widespread network access: Capabilities are available over the network and accessed through standard mechanisms that facilitate use by different thin or thick client platforms (e.g., mobile phones, laptops, and PDAs). Resource Sharing: Using a multi-tenant model, a provider's computing resources are shared to serve multiple consumers, with different physical and virtualized resources dynamically allocated and reallocated as needed. A sense of location independence exists, such that consumers generally have no control or knowledge of the exact location (e.g., country, state, or data center) of the resources provided, but can specify location at a higher level of abstraction. Rapid Elasticity: Capabilities can be provisioned quickly and elastically, sometimes automatically, to quickly scale out and quickly release and quickly scale in. To the consumer, the capabilities available for provisioning often appear unlimited and can be purchased at any time and in any quantity. Metered Services: Cloud systems automatically control and optimize resource usage by leveraging metering capabilities at several levels of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be monitored, controlled, and reported to provide transparency to both providers and consumers of the services being used.

[0051] The service model is as follows: Software as a Service (SaaS): The functionality offered to the consumer is the use of the provider's applications running on a cloud infrastructure. The applications are accessible from a variety of client devices through a thin-client interface such as a web browser (e.g., web-based email). The consumer does not manage or control the underlying cloud infrastructure, including the network, servers, operating systems, storage, or individual application functionality, except for limited user-specific application configuration settings. Platform as a Service (PaaS): The capability offered to consumers is to deploy applications they create or acquire, 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 the network, servers, operating systems, or storage, but does control the deployed applications and, possibly, the configuration of the application hosting environment. Infrastructure as a Service (IaaS): The functionality provided to the consumer is the provision of processing, storage, network, and other basic computing resources on 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 has control over the operating systems, storage, deployed applications, and possibly limited control over select networking components (e.g., host firewalls).

[0052] The deployment model is as follows: Private Cloud: Cloud infrastructure operates solely for one organization. It can be managed by that organization or a third party and can exist on or off-premises. Community Cloud: Cloud infrastructure is shared by several organizations to support a specific community with common interests (e.g., mission, security requirements, policy, and compliance considerations). It can be managed by those organizations or a third party and can reside on or off premises. Public Cloud: Cloud infrastructure is made available to the public or large industry groups and is owned by organizations that sell cloud services. Hybrid Cloud: A cloud infrastructure is a combination of two or more clouds (private, community, or public) that remain unique entities but are bound together by standardized or proprietary technologies that allow for data and application portability (e.g., cloud bursting for load balancing between clouds).

[0053] Cloud computing environments are service-oriented with a focus on statelessness, loose coupling, modularity, and semantic interoperability. At the heart of cloud computing is the infrastructure, which comprises multiple interconnected nodes.

[0054] FIG. 6 illustrates an exemplary cloud computing environment 50. As shown, the cloud computing environment 50 includes one or more cloud computing nodes 10, with which local computing devices used by cloud consumers communicate, such as a personal digital assistant (PDA) (e.g., VCD120 or VCD420) or cellular phone 54A (e.g., mobile device 150), desktop computer 54B, laptop computer 54C, or automobile computer system 54N, or any combination thereof. The nodes 10 can communicate with each other. They can be physically or virtually grouped in one or more networks (not shown), such as the private, community, public, or hybrid clouds described above, or any combination thereof. This enables the cloud computing environment 50 to provide an infrastructure, platform, or software-as-a-service (SOA) that eliminates the need for cloud consumers to maintain resources on their local computing devices. The types of computing devices 54A-N shown in FIG. 6 are for illustrative purposes only, and it will be understood that computing node 10 and cloud computing environment 50 can communicate with any type of computerized device through any type of network or addressable network connection (e.g., a web browser), or both.

[0055] Referring now to Figure 7, a set of functional abstraction layers provided by cloud computing environment 50 (Figure 6) is shown. It should be understood that the components, layers, and functions shown in Figure 7 are intended to be illustrative only, and that embodiments of the present invention are not limited thereto. As shown, the following layers and corresponding functions are provided:

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

[0057] The visualization layer 70 provides an abstraction layer from which embodiments of virtual entities, described below, are provided: virtual servers 71; virtual storage 72; virtual networks 73, including virtual private networks; virtual applications and operating systems 74; and virtual clients 75.

[0058] In one embodiment, the management layer 80 may provide the following functions: A resource provisioning unit 81 provides dynamic acquisition of computing resources and other resources used to perform tasks within the cloud computing environment. A metering and pricing unit 82 provides cost tracking as resources are used within the cloud computing environment and provides accounting or billing for the consumption of these resources. In one embodiment, these resources may include application software licenses. A security unit provides identification and authentication of cloud consumers and tasks, as well as protection of data and other resources. A user portal unit 83 provides accessibility to the cloud computing environment and system administrators for consumers. A service level management unit 84 provides allocation and management of cloud computing resources to meet required service levels. A service level agreement (SLA) planning and fulfillment unit 85 pre-provisions and acquires cloud computing resources required for future requests according to SLAs.

[0059] The workload layer 90 provides examples of functionality for utilizing a cloud computing environment. Examples of workloads and functionality provided by this layer include mapping and navigation 91, software development and lifetime management 92, virtual classroom instruction delivery 93, data analytics processing 94, transaction processing 95, and voice command processing 96.

[0060] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. As used herein, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. Furthermore, when the terms "comprise," "comprising," or both are used herein, they should be understood to specify the presence of the stated features, integers, steps, operations, elements, or components, or combinations thereof, but not to exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or groups, or combinations thereof.

[0061] Without being limited in any way by the scope, implementation, or application of the claims set forth below, one or more example embodiments disclosed herein may provide a cross-domain semantic representation of fragment text in a computable manner that can be used by different NLU applications. Another technical advantage of one or more example embodiments disclosed herein may be the elimination of the need to retrain semantic detectors for different domains and different applications.

[0062] The description of various embodiments of the present disclosure has been presented for illustrative purposes, but is not intended to be exclusive or limited to the disclosed embodiments. Many modifications or variations will be apparent to those skilled in the art without departing from the scope and spirit of the present disclosure. The terms used herein have been selected to best explain the principles, practical applications, or technical improvements of the present embodiments beyond those found in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.

Claims

1. 1. A computer-implemented method comprising: performing a syntactic analysis on at least one fragment of text to derive a syntactic structure of the fragment of text; selecting one or more predefined syntactic structure templates corresponding to the derived syntactic structure, each of the one or more predefined syntactic structure templates corresponding to a semantic element in a natural semantic metalanguage (NSM) theory for the derived syntactic structure, the predefined syntactic structure templates specifying how to combine the semantic element and a feature corresponding to the semantic element; providing said fragment of text as input to a neural network to detect (i) at least one of said semantic elements and (ii) corresponding one or more of said features within said fragment of text; identifying one of the one or more selected predefined syntactic structure templates that matches (i) at least one of the semantic elements and (ii) the corresponding one or more features detected within the derived syntactic structure and the fragment of text; generating, at least in part, the detected semantic elements and the features combined by using the identified syntactic structure template as a semantic representation of the fragment of text; and outputting the semantic representation to one or more neural language understanding applications.

1. A computer-implemented method comprising:

2. The computer-implemented method of claim 1 , wherein the syntactic analysis is performed by at least one component or dependency parser.

3. 2. The computer-implemented method of claim 1, wherein the one or more predefined syntactic structure templates are selected from among a plurality of predefined syntactic structure templates defined by offline analysis.

4. 2. The computer-implemented method of claim 1, wherein the neural network is at least one trained neural network including an attention model, and wherein the at least one neural network outputs (i) at least one of the semantic elements and (ii) the corresponding one or more of the features.

5. 5. The computer-implemented method of claim 4, wherein at least one of the trained neural networks comprises a bidirectional long short-term memory (B-LSTM) that includes the attention model.

6. 5. The computer-implemented method of claim 4, wherein at least one of the trained neural networks is trained across multiple domains to detect each of multiple semantic elements.

7. The computer-implemented method of claim 1 , wherein at least one of the semantic elements is found among a set of 64 of the semantic elements.

8. The computer-implemented method of claim 1 , further comprising obtaining at least one text fragment from a text file, an audio file, an image file, and a video file.

9. On a computing device, performing a syntactic analysis on at least one fragment of text to derive a syntactic structure of the fragment of text; selecting one or more predefined syntactic structure templates corresponding to the derived syntactic structure, each of the one or more predefined syntactic structure templates corresponding to a semantic element in a natural semantic metalanguage (NSM) theory for the derived syntactic structure, the predefined syntactic structure templates specifying how to combine the semantic element and a feature corresponding to the semantic element; providing said fragment of text as input to a neural network to detect (i) at least one of said semantic elements and (ii) corresponding one or more of said features within said fragment of text; identifying one of the one or more selected predefined syntactic structure templates that matches (i) at least one of the semantic elements and (ii) the corresponding one or more features detected within the derived syntactic structure and the fragment of text; generating, at least in part, the detected semantic elements and the features combined using the identified syntactic structure template as a semantic representation of the fragment of text; and outputting the semantic representation to one or more neural language understanding applications. A computer program for executing the above.

10. 10. The computer program product of claim 9, wherein the syntactic analysis is performed by at least one component or dependency parser.

11. 10. The computer program product of claim 9, wherein the one or more predefined syntactic structure templates are selected from a plurality of predefined syntactic structure templates defined by offline analysis.

12. 10. The computer program product of claim 9, wherein the neural network is at least one trained neural network including an attention model, and wherein the at least one neural network outputs (i) at least one of the semantic elements and (ii) the corresponding one or more of the features.

13. 13. The computer program product of claim 12, wherein at least one of the trained neural networks comprises a bidirectional long short-term memory (B-LSTM) that includes the attention model.

14. 13. The computer program product of claim 12, wherein at least one of the trained neural networks is trained across multiple domains to detect each of a plurality of the semantic elements.

15. 13. The computer program product of claim 12, wherein at least one of the semantic elements is detected from a set of 64 of the semantic elements.

16. Memory and performing a syntactic analysis on at least one fragment of text to derive a syntactic structure of the fragment of text; selecting one or more predefined syntactic structure templates corresponding to the derived syntactic structure, each of the one or more predefined syntactic structure templates corresponding to a semantic element in a natural semantic metalanguage (NSM) theory for the derived syntactic structure, the predefined syntactic structure templates specifying how to combine the semantic element and a feature corresponding to the semantic element; providing the fragment of text as input to a neural network to detect semantic information within the fragment of text, the semantic information including (i) at least one of the semantic elements and (ii) corresponding one or more of the features within the fragment of text; identifying one of the one or more selected predefined syntactic structure templates that matches (i) at least one of the semantic elements and (ii) the corresponding one or more features detected within the derived syntactic structure and the fragment of text; generating, at least in part, the detected semantic elements and the features combined using the identified syntactic structure template as a semantic representation of the fragment of text; and outputting the semantic representation to one or more neural language understanding applications. at least one processor operably coupled to the memory, configured for A system including:

17. The system of claim 16 , wherein the syntactic analysis is performed by at least one component or dependency parser.

18. 17. The system of claim 16, wherein the one or more predefined syntactic structure templates are selected from among a plurality of predefined syntactic structure templates defined by offline analysis.

19. 17. The system of claim 16, wherein the neural network is at least one trained neural network including an attention model, and wherein the at least one neural network outputs (i) at least one of the semantic elements and (ii) the corresponding one or more of the features.

20. 20. The system of claim 19, wherein at least one of the trained neural networks comprises a bidirectional long short-term memory (B-LSTM) that includes the attention model.

Citation Information

Patent Citations

  • Language understanding device, language understanding method, and computer program

    JP2008146150A

  • Method and system of text synthesis based on extracted information in the form of an RDF graph making use of templates

    US20160275058A1

  • Architecture and processes for computer learning and understanding

    US20170371861A1

  • Architecture and processes for computer learning and understanding

    WO2017222738A1