APPARATUS AND METHOD FOR AUTOMATIC GENERATION AND UPDATE OF KNOWLEDGE GRAPH FROM MULTI-MODAL SOURCES
20230065468 · 2023-03-02
Inventors
Cpc classification
G10L15/02
PHYSICS
International classification
G10L15/06
PHYSICS
G10L15/02
PHYSICS
Abstract
The present invention provides an apparatus and method for automatic generation and update of a knowledge graph from multi-modal sources. The apparatus comprises a conversation parsing module configured for updating a dynamic information word set V.sub.D with labelled words generated from extracted from the multi-modal sources; updating a static information word set V.sub.S based on extracted schema of relations extracted from the multi-modal sources; and generating pairs of question and answer based on the dynamic information word set V.sub.D, the static information word set V.sub.S and the one or more sentence patterns; and a knowledge graph container configured for updating a knowledge graph based on the extracted entities of interest and schema of relations. Therefore, an efficient and cost-effective way for question decomposition, query chain construction and entity association from unstructured data is achieved.
Claims
1. An apparatus for automatic generation and update of a knowledge graph from one or more multi-modal sources, the apparatus comprising: a speaker diarization module configured for: partitioning an input audio stream into audio segments; classifying speakers of the audio segments as agent or customer; and clustering the audio segments based on speaker classification; an audio transcription module configured for transcribing the clustered audio segments to transcripts based on an acoustic model; a speech parsing module configured for: extracting entities of interest and schema of relations from the transcripts; and labelling words of the transcripts corresponding to the extracted entities of interest with a plurality of pre-defined tags from a domain-specific language model; a conversation parsing module configured for: updating a dynamic information word set V.sub.D with the labelled words of the transcripts; updating a static information word set V.sub.S based on the extracted schema of relations from the transcripts; retrieving one or more sentence patterns from the domain-specific language model; and generating pairs of question and answer based on the dynamic information word set V.sub.D, the static information word set V.sub.S and the one or more sentence patterns; and a knowledge graph container configured for updating a knowledge graph by: receiving the extracted entities of interest and schema of relations; representing the extracted entities of interest as nodes in the knowledge graph; and representing the extracted schema of relations as labels and edges between nodes in the knowledge graph.
2. The apparatus of claim 1, wherein the speech parsing module is further configured for: extracting entities of interest and schema of relations from an article; and labelling words of the article corresponding to the extracted entities of interest with a plurality of pre-defined tags from a domain-specific language model; and the conversation parsing module is further configured for: updating the dynamic information word set V.sub.D with the labelled words of the article; and updating the static information word set V.sub.S based on the extracted schema of relations from the article.
3. The apparatus of claim 1, wherein the input audio stream is a soundtrack of a video or audio stream.
4. The apparatus of claim 1, wherein the domain-specific language model is generated by: generalizing a table of jargons and corpus with vocabulary lexicon to form a general language model; and interpolating the general language model with pre-defined domain-specific knowledge based on a heuristic weighting to generate the domain-specific language model.
5. The apparatus of claim 1, wherein the conversation parsing module is a machine learning module trained with a region-based attention algorithm for extracting the entities of interest across sentences in the transcripts; the region-based attention algorithm is formulated by defining a region with intra-sentence information and inter-sentence information; and optimizing an objective function based on the defined region.
6. The apparatus of claim 5, wherein the intra-sentence information is updated through an intra-sentence attention algorithm given by:
R.sub.ia=BLSTM.sub.t(X), wherein BLSTM.sub.t( ) is a bidirectional long short-term memory function for intra-sentence attention and X is an input word vector representing a set of words in the labelled transcripts; and R.sub.ia is an intra-sentence attention output vector.
7. The apparatus of claim 5, wherein the inter-sentence information is updated through an inter-sentence attention algorithm given by:
V.sub.ir=BLSTM.sub.l(Σ.sub.LΠ.sub.Tα.sub.τγ.sub.τ) where BLSTM.sub.l( ) is a bidirectional long short-term memory function for inter-sentence attention, α, is a parametric vector, and γ.sub.τ is an intra-sentence attention output vector, and V.sub.ir is an inter-sentence attention output vector.
8. The apparatus of claim 5, wherein the objective function is given by:
Ω=softmax(ωβ.sub.l+LinB(t.sub.λ)), wherein Ω is the machine learning objective, ωβ.sub.l is maximizing expectation argument, and LinB(t.sub.λ) is linear biased estimation of a heuristic weighting parameter t.sub.λ.
9. The apparatus of claim 1, wherein the knowledge graph container is further configured for: applying entity classification on the dynamic information word set V.sub.D and the static information word set V.sub.S to generate one or more classified entities; calculating relation probabilities for a preset number of classified entities with existing entities in the knowledge graph; identifying a set of best candidates of entity from the classified entities; and updating the knowledge graph by incorporating a set of best candidates of entity into the knowledge graph.
10. The apparatus of claim 9, wherein the relation probabilities are given by:
γ.sub.l=foo(λ.Math.S+η.Math.K+φ.Math.t.sub.λ) where γ.sub.l is the relation probability, S is a classified entity from the dynamic information word set V.sub.D and the static information word set V.sub.S, K is an existing entity in the knowledge graph, t.sub.λ is a heuristic weighting parameter, λ, η and φ are coefficients for S, K and t.sub.λ respectively.
11. A method for automatic generation and update of a knowledge graph from multi-modal sources, the method comprising: clustering, by a speaker diarization module, an input audio stream by: partitioning the input audio stream into audio segments; classifying speakers of the audio segments as agent or customer; and clustering the audio segments based on speaker classification; transcribing, by an audio transcription module, the clustered audio segments to transcripts based on an acoustic model; labelling, by a speech parsing module, the transcripts by: extracting entities of interest and schema of relations from the transcripts; and labelling words of the transcripts corresponding to the extracted entities of interest with a plurality of pre-defined tags from a domain-specific language model; generating, by a conversation parsing module, pairs of question and answer by: updating a dynamic information word set V.sub.D with the labelled words of the transcripts and a static information word set V.sub.S based on the extracted schema of relations from the transcripts; retrieving one or more sentence patterns from the domain-specific language model; and generating the pairs of question and answer based on the dynamic information word set V.sub.D, the static information word set V.sub.S and the one or more sentence patterns; updating, by a knowledge graph container, a knowledge graph by: receiving the extracted entities of interest and schema of relations; representing, by a knowledge graph container, the extracted entities of interest as nodes in the knowledge graph; and representing, by a knowledge graph container, the extracted schema of relations as labels and edges between nodes in the knowledge graph.
12. The method of claim 2, further comprising: extracting entities of interest and schema of relations from an article; labelling words of the article corresponding to the extracted entities of interest with a plurality of pre-defined tags from a domain-specific language model; updating the dynamic information word set V.sub.D with the labelled words of the article; and updating the static information word set V.sub.S based on the extracted schema of relations from the article.
13. The method of claim 11, wherein the input audio stream is a soundtrack of a video or audio stream.
14. The method of claim 11, wherein the domain-specific language model is generated by: generalizing a table of jargons and corpus with vocabulary lexicon to form a general language model; and interpolating the general language model with pre-defined domain-specific knowledge based on a heuristic weighting to generate the domain-specific language model.
15. The method of claim 11, further comprising: training the conversation parsing module with a region-based attention algorithm for extracting the entities of interest across sentences in the transcripts; the region-based attention algorithm is formulated by defining a region with intra-sentence information and inter-sentence information; and optimizing an objective function based on the defined region.
16. The method of claim 15, wherein the intra-sentence information is updated through an intra-sentence attention algorithm given by:
R.sub.ia=BLSTM.sub.t(X), wherein BLSTM.sub.t( ) is a bidirectional long short-term memory function for intra-sentence attention and X is an input word vector representing a set of words in the labelled transcripts; and R.sub.ia is an intra-sentence attention output vector.
17. The method of claim 15, wherein the inter-sentence information is updated through an inter-sentence attention algorithm given by:
V.sub.ir=BLSTM.sub.l(Σ.sub.LΠ.sub.Tα.sub.τγ.sub.τ) where BLSTM.sub.l( ) is a bidirectional long short-term memory function for inter-sentence attention, α.sub.τ is a parametric vector, and γ.sub.τ is an intra-sentence attention output vector, and V.sub.ir is an inter-sentence attention output vector.
18. The method of claim 15, wherein the objective function is given by:
Ω=softmax(ωβ.sub.l+LinB(t.sub.λ)), wherein Ω is the machine learning objective, ωβ.sub.l is maximizing expectation argument, and LinB(t.sub.λ) is linear biased estimation of a heuristic weighting parameter t.sub.λ.
19. The method of claim 11, further comprising: applying entity classification on the dynamic information word set V.sub.D and the static information word set V.sub.S to generate one or more classified entities; calculating relation probabilities for a preset number of classified entities with existing entities in the knowledge graph; identifying a set of best candidates of entity from the classified entities; and updating the knowledge graph by incorporating set of best candidates of entity into the knowledge graph.
20. The method of claim 19, wherein the relation probabilities are given by:
γ.sub.l=foo(λ.Math.S+η.Math.K+φ.Math.t.sub.λ) where γ.sub.l is the relation probability, S is a classified entity from the dynamic information word set V.sub.D and the static information word set V.sub.S, K is an existing entity in the knowledge graph, t.sub.λ is a heuristic weighting parameter, λ, η and φ are coefficients for S, K and t.sub.λ respectively.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0009] Embodiments of the invention are described in more detail hereinafter with reference to the drawings, in which:
[0010]
[0011]
[0012]
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
DETAILED DESCRIPTION
[0019] In the following description, apparatuses and methods for automatic generation and update of a knowledge graph from multi-modal sources, and the likes are set forth as preferred examples. It will be apparent to those skilled in the art that modifications, including additions and/or substitutions may be made without departing from the scope and spirit of the invention. Specific details may be omitted so as not to obscure the invention; however, the disclosure is written to enable one skilled in the art to practice the teachings herein without undue experimentation.
[0020]
[0021]
[0022] Referring back to
[0023] The speech parsing module 130 may be configured for: receiving the transcripts from the audio transcription module 120; extracting entities of interest and schema of relations from the received transcripts; and labelling words of the transcripts corresponding to the extracted entities of interest with a plurality of pre-defined tags from a domain-specific language model.
[0024] Preferably, the speech parsing module 130 is further configured for receiving an article; extracting entities of interest and schema of relations from the article; and labelling words of the article corresponding to the extracted entities of interest with a plurality of pre-defined tags from a domain-specific language model. The conversation parsing module 140 may be further configured for receiving the labelled words of the article; updating the dynamic information word set V.sub.D with the labelled words of the article; and updating the static information word set V.sub.S based on the extracted schema of relations from the article.
[0025] In some embodiments, the domain-specific language model may be generated by generalizing a table of jargons and corpus with vocabulary lexicon to form a general language model; and interpolating the general language model with pre-defined domain-specific knowledge based on a heuristic weighting to generate the domain-specific language model.
[0026] The conversation parsing module 140 may be configured for receiving the labelled words of the transcripts; updating a dynamic information word set V.sub.D with the labelled words of the transcripts; updating a static information word set V.sub.S based on the extracted schema of relations from the transcripts; retrieving one or more sentence patterns from the domain-specific language model; and generating pairs of question and answer based on the dynamic information word set V.sub.D, the static information word set V.sub.S and the one or more sentence patterns.
[0027]
[0028]
[0029] The conversation parsing module 140 may be a machine learning module trained with a region-based attention algorithm for extracting the entities of interest across sentences in the transcripts. The region-based attention algorithm may be formulated by defining a region with intra-sentence information and inter-sentence information; and optimizing an objective function based on the defined region.
[0030] Referring to
R.sub.ia=BLSTM.sub.t(X),
[0031] where BLSTM.sub.t( ) is a bidirectional long short-term memory function for intra-sentence attention and X is an input word vector representing a set of words in the labelled transcripts; and R.sub.ia is an intra-sentence attention output vector.
[0032] The inter-sentence information is updated through an inter-sentence attention algorithm given by:
V.sub.ir=BLSTM.sub.l(Σ.sub.LΠ.sub.Tα.sub.Tγ.sub.T),
[0033] where BLSTM.sub.l( ) is a bidirectional long short-term memory function for inter-sentence attention, α.sub.τ is a parametric vector from the plurality of pre-defined tags, and γ.sub.τ is an intra-sentence attention output vector, and V.sub.ir is an inter-sentence attention output vector.
[0034] The objective function is given by:
Ω=softmax(ωβ.sub.l+LinB(t.sub.λ)),
[0035] where Ω is the machine learning objective, ωβ.sub.l is maximizing expectation argument, and LinB(t.sub.λ) is linear biased estimation of a heuristic weighting parameter t.sub.λ.
[0036] Referring back to
[0037]
[0038] The relation probabilities γ.sub.l may be given by:
γ.sub.l=foo(λ.Math.S+η.Math.K+φ.Math.t.sub.λ)
[0039] where t.sub.λ is a heuristic weighting parameter, λ, η and φ are coefficients for S, K and t.sub.λ, respectively.
[0040]
[0041]
[0042]
[0043] S910: clustering, by a speaker diarization module, an input audio stream;
[0044] S920: transcribing, by an audio transcription module, the clustered audio segments to transcripts based on an acoustic model;
[0045] S930: labelling, by a speech parsing module, the transcripts;
[0046] S940: generating, by a conversation parsing module, pairs of question and answer; and
[0047] S950: updating, by a knowledge graph container, a knowledge graph.
[0048] Preferably, the step S910 may comprise: partitioning the input audio stream into audio segments; classifying speakers of the audio segments as agent or customer; and clustering the audio segments based on speaker classification.
[0049] Preferably, the step S930 may comprise: extracting entities of interest and schema of relations from the transcripts; and labelling words of the transcripts corresponding to the extracted entities of interest with a plurality of pre-defined tags from a domain-specific language model.
[0050] Preferably, the step S940 may comprise: updating a dynamic information word set V.sub.D with the labelled words of the transcripts and a static information word set V.sub.S based on the extracted schema of relations from the transcripts; retrieving one or more sentence patterns from the domain-specific language model; and generating the pairs of question and answer based on the dynamic information word set V.sub.D, the static information word set V.sub.S and the one or more sentence patterns.
[0051] Optionally, the step S930 may further comprise: extracting entities of interest and schema of relations from an article; and labelling words of the article corresponding to the extracted entities of interest with a plurality of pre-defined tags from a domain-specific language model. The step S940 may further comprise: updating the dynamic information word set VD with the labelled words of the article; and updating the static information word set VS based on the extracted schema of relations from the article.
[0052] Preferably, the step S950 may comprise: receiving the extracted entities of interest and schema of relations; representing, by a knowledge graph container, the extracted entities of interest as nodes in the knowledge graph; and representing, by a knowledge graph container, the extracted schema of relations as labels of edges between nodes in the knowledge graph.
[0053] Preferably, the step S950 may further comprise: applying entity classification on the dynamic information word set V.sub.D and the static information word set V.sub.S to generate one or more classified entities; calculating relation probabilities for a preset number of classified entities with existing entities in the knowledge graph; identifying a set of best candidates of entity from the classified entities; and updating the knowledge graph by incorporating set of best candidates of entity into the knowledge graph.
[0054] The embodiments disclosed herein may be implemented using one or more computing devices, computer processors, or electronic circuitries including but not limited to application specific integrated circuits (ASIC), field programmable gate arrays (FPGA), and other programmable logic devices specially configured or programmed according to the teachings of the present disclosure. Machine instructions executing in and/or electronic circuitry configurations in the computing devices, computer processors, or programmable logic devices can readily be prepared by practitioners skilled in the computer and electronic art based on the teachings of the present disclosure.
[0055] The aforesaid computing devices, computer processors, or electronic circuitries may be incorporated in one or more server computers, personal computers, laptop computers, mobile computing devices such as smartphones and tablet computers.
[0056] The electronic embodiments include transient and non-transient electronic storage media having machine instructions and/or electronic circuitry configuration data stored therein which can be used to configured computing devices, computer processors, or electronic circuitries to perform any of the processes of the present invention. The storage media can include, but are not limited to, floppy disks, optical discs, Blu-ray Disc, DVD, CD-ROMs, and magneto-optical disks, ROMs, RAMS, flash memory devices, or any type of media or devices suitable for storing instructions, codes, and/or data.
[0057] Various embodiments of the present invention also may be implemented in distributed computing environments and/or Cloud computing environments, wherein the whole or portions of machine instructions are executed in distributed fashion by one or more processing devices interconnected by a communication network, such as an intranet, Wide Area Network (WAN), Local Area Network (LAN), the Internet, and other forms of data transmission medium.
[0058] The foregoing description of the present invention has been provided for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations will be apparent to the practitioner skilled in the art.
[0059] The embodiments were chosen and described in order to best explain the principles of the invention and its practical application, thereby enabling others skilled in the art to understand the invention for various embodiments and with various modifications that are suited to the particular use contemplated.