DE102016010910A1 - Structured modeling and extraction of knowledge from images - Google Patents

Structured modeling and extraction of knowledge from images Download PDF

Info

Publication number
DE102016010910A1
DE102016010910A1 DE102016010910.6A DE102016010910A DE102016010910A1 DE 102016010910 A1 DE102016010910 A1 DE 102016010910A1 DE 102016010910 A DE102016010910 A DE 102016010910A DE 102016010910 A1 DE102016010910 A1 DE 102016010910A1
Authority
DE
Germany
Prior art keywords
image
structured
text
features
semantic knowledge
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102016010910.6A
Other languages
German (de)
Inventor
Scott D. Cohen
Walter Wei-Tuh Chang
Brian L. Price
Mohamed Hamdy Mahmoud Abdelbaky Elhoseiny
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Adobe Inc
Original Assignee
Adobe Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US14/978,350 external-priority patent/US11514244B2/en
Application filed by Adobe Systems Inc filed Critical Adobe Systems Inc
Publication of DE102016010910A1 publication Critical patent/DE102016010910A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5846Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using extracted text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/042Knowledge-based neural networks; Logical representations of neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/70Labelling scene content, e.g. deriving syntactic or semantic representations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks

Abstract

Es werden Techniken und Systeme zum Modellieren und Extrahieren von Wissen aus Bildern beschrieben. Eine digitale Medienumgebung ist konfiguriert, ein Modell zu lernen und zu verwenden, um eine beschreibende Zusammenfassung eines eingegebenen Bildes automatisch und ohne Benutzereingriff zu berechnen. Es werden Trainingsdaten erhalten, um ein Modell unter Verwendung von maschinellem Lernen zu lernen, um eine strukturierte Bildrepräsentation zu erzeugen, die als die beschreibende Zusammenfassung eines eingegebenen Bildes dient. Die Bilder und der assoziierte Text werden verarbeitet, um strukturiertes semantisches Wissen aus dem Text zu extrahieren, welches dann mit den Bildern assoziiert wird. Das strukturierte semantische Wissen wird zusammen mit entsprechenden Bildern verarbeitet, um ein Modell unter Verwendung von maschinellem Lernen zu trainieren, so dass das Modell eine Beziehung zwischen Textmerkmalen in dem strukturierten semantischen Wissen beschreibt. Nachdem das Modell gelernt wurde, kann das Modell verwendet werden, um eingegebene Bilder zu verarbeiten, um eine strukturierte Bildrepräsentation des Bildes zu erzeugen.Techniques and systems for modeling and extracting knowledge from images are described. A digital media environment is configured to learn and use a model to compute a descriptive summary of an input image automatically and without user intervention. Training data is obtained to learn a model using machine learning to create a structured image representation that serves as the descriptive summary of an input image. The images and associated text are processed to extract structured semantic knowledge from the text, which is then associated with the images. The structured semantic knowledge is processed along with corresponding images to train a model using machine learning so that the model describes a relationship between textual features in the structured semantic knowledge. After the model has been learned, the model can be used to process input images to produce a structured image representation of the image.

Description

Verwandte AnmeldungenRelated applications

Diese Anmeldung beansprucht die Priorität der provisionellen US Anmeldung Nr. 62/254,143, eingereicht am 11. November 2015, mit dem Titel „Structured Knowledge Modeling and Extraction from Images”, deren Offenbarung in Gänze hiermit durch Bezugnahme aufgenommen ist.This application claims the benefit of US Provisional Application No. 62 / 254,143, filed on Nov. 11, 2015, entitled "Structured Knowledge Modeling and Extraction from Images," the disclosure of which is incorporated herein by reference in its entirety.

Hintergrundbackground

Bildersuchen involvieren oft die Herausforderung, Text in einer Suchanfrage mit Text abzugleichen, der mit dem Bild assoziiert ist, beispielsweise Tags und so weiter. Beispielsweise mag ein berufstätig Kreativer ein Bild erfassen und Text aufweisende Tags assoziieren, die verwendet werden, um das Bild zu lokalisieren. Andererseits gibt ein Benutzer, der versucht, das Bild in einer Bildersuche aufzufinden, ein oder mehrere Schlüsselwörter ein. Dementsprechend erfordert dies, dass der berufstätig Kreative und der Benutzer zu einem Verständnis gelangen, wie das Bild mit Text zu beschreiben ist, so dass der Benutzer das Bild auffinden der berufstätig Kreative das Bild dem Benutzer verfügbar machen kann. Herkömmliche Tag- und Schlüsselwortsuchtechniken können anfällig für Fehler, Missverständnisse und unterschiedliche Interpretationen sein auf Grund dieses Erfordernisses, dass der berufstätig Kreative und der Benutzer zu einem gemeinsamen Verständnis gelangen müssen, um die Bilder aufzufinden.Image searches often involve the challenge of matching text in a search query with text associated with the image, such as tags, and so forth. For example, a creative professional may capture an image and associate text-containing tags used to locate the image. On the other hand, a user attempting to locate the image in an image search inputs one or more keywords. Accordingly, this requires that the working creative and the user come to an understanding of how to describe the image with text so that the user can find the image of the working creative that can make the image available to the user. Conventional tag and keyword searching techniques may be prone to errors, misunderstandings and different interpretations due to the need for the creative and the user to come to a common understanding to locate the images.

Weiter unterstützen herkömmliche Bildersuchtechniken keine hochpräzisen semantischen Bildersuchen auf Grund von Beschränkungen des herkömmlichen Taggens und Suchens von Bildern. Dies aus dem Grund, dass herkömmlich Techniken lediglich Tags mit den Bildern assoziieren, aber weder Beziehungen zwischen den Tags, noch mit den Bildern selbst definieren. Als solche können herkömmliche Suchtechniken keine akkuraten Suchergebnisse für komplexe Suchabfragen erzielen, wie etwa „ein Mann, der ein Baby in einem hohen Stuhl füttert, während das Baby ein Spielzeug hält”. Dementsprechend zwingen diese herkömmlichen Suchtechniken Benutzer dazu, durch einige zehn, hunderte und sogar tausende von Bildern zu navigieren, oftmals unter Verwendung mehrerer Suchanfragen, um ein gewünschtes Bild aufzufinden, was dadurch verursacht wird, dass der Benutzer in herkömmlichen Techniken als Teil der Suche gezwungen wird, ein Verständnis dafür zu gewinnen, wie der berufstätig Kreative das Bild beschrieben hat, um dieses aufzufinden.Further, conventional image search techniques do not support high-precision semantic image searches due to limitations of conventional tagging and image searching. This is because conventional techniques only associate tags with the pictures, but neither define relationships between the tags nor with the pictures themselves. As such, conventional search techniques can not provide accurate search results for complex queries, such as "a man feeding a baby in a high chair while the baby is holding a toy." Accordingly, these conventional search techniques force users to navigate through tens, hundreds, and even thousands of images, often using multiple search queries to find a desired image, caused by forcing the user as part of the search in conventional techniques to gain an understanding of how the working creative has described the picture to find it.

ZusammenfassungSummary

Es werden Techniken und Systeme beschrieben zum Extrahieren und Modellieren von strukturiertem Wissen aus Bildern. In einer oder mehreren Implementierungen ist eine digitale Medienumgebung konfiguriert, ein Modell zu lernen und zu verwenden, um eine beschreibende Zusammenfassung eines eingegebenen Bildes automatisch und ohne Benutzereingriff zu berechnen. Es werden zuerst Trainingsdaten (zum Beispiel Bild und unstrukturierter Text wie etwa Bildbeschriftungen) erlangt, um ein Modell unter Verwendung von maschinellem Lernen zu trainieren, um eine strukturierte Bildrepräsentation zu erzeugen, welche als die beschreibende Zusammenfassung eines eingegebenen Bildes dient.Techniques and systems are described for extracting and modeling structured knowledge from images. In one or more implementations, a digital media environment is configured to learn and use a model to compute a descriptive summary of an input image automatically and without user intervention. Training data (e.g., image and unstructured text such as image captions) are first obtained to train a model using machine learning to produce a structured image representation that serves as the descriptive summary of an input image.

Die Bilder und assoziierter Text werden dann verarbeitet, um aus dem Text strukturiertes semantisches Wissen zu extrahieren, das dann mit den Bildern assoziiert wird. Strukturiertes semantisches Wissen kann eine Vielfalt von Formen annehmen, wie Tupel <Subjekt, Attribut> und Tupel <Subjekt, Prädikat, Objekt>, welche als ein Ausdruck fungieren, welcher das Subjekt über das Prädikat mit dem Objekt verknüpft. Dies kann eine Assoziation mit dem Bild als Ganzes und/oder mit Objekten in dem Bild beinhalten, mittels einem Prozess, der „Lokalisierung” genannt wird.The images and associated text are then processed to extract structured semantic knowledge from the text, which is then associated with the images. Structured semantic knowledge can take on a variety of forms, such as tuple <subject, attribute> and tuple <subject, predicate, object>, which act as an expression linking the subject to the object via the predicate. This may involve an association with the image as a whole and / or with objects in the image, by a process called "localization".

Das strukturierte semantische Wissen wird dann mit entsprechenden Bildern verarbeitet, um ein Modell zu trainieren unter Verwendung von maschinellem Lernen, so dass das Modell eine Beziehung zwischen Textmerkmalen innerhalb des strukturierten semantischen Wissens (zum Beispiel Subjekte und Objekte) und Bildmerkmalen von Bildern herstellt, zum Beispiel Teile des Bildes, die in begrenzenden Rechtecken definiert sind, welche die Subjekte oder Objekte enthalten.The structured semantic knowledge is then processed with corresponding images to train a model using machine learning so that the model establishes a relationship between textual features within the structured semantic knowledge (e.g., subjects and objects) and image features of images, for example Parts of the image defined in bounding rectangles containing the subjects or objects.

Sobald das Modell gelernt ist, kann das Modell dann verwendet werden, um eingegebene Bilder zu verarbeiten, um eine strukturierte Bildrepräsentation des Bildes zu erzeugen. Die strukturierte Bildrepräsentation kann Text beinhalten, der auf eine Weise strukturiert ist, welche Beziehungen zwischen Objekten in dem Bild und dem Bild selbst beschreibt. Die strukturierte Bildrepräsentation kann verwendet werden, um eine Vielfalt von Funktionalitäten zu unterstützen, einschließlich Bildersuchen, automatische Erzeugung von Bildbeschriftungen und Metadaten, Objekt-Taggen und so weiter.Once the model is learned, the model can then be used to process input images to produce a structured image representation of the image. The structured image representation may include text that is structured in a manner that describes relationships between objects in the image and the image itself. The structured image representation can be used to create a Support for a variety of functionalities, including image browsing, automatic generation of image captions and metadata, object tags and so on.

Diese Zusammenfassung führt eine Auswahl von Konzepten auf vereinfachte Weise ein, die nachfolgend in der detaillierten Beschreibung weiter beschrieben werden. Als solches ist diese Zusammenfassung nicht dazu gedacht, wesentliche Merkmale des beanspruchten Gegenstandes zu identifizieren, und ist auch nicht dazu gedacht, als eine Hilfe beim Bestimmen des Bereichs des beanspruchten Gegenstandes verwendet zu werden.This summary introduces a selection of concepts in a simplified manner, which are further described below in the detailed description. As such, this summary is not intended to identify essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.

Kurze Beschreibung der ZeichnungenBrief description of the drawings

Die detaillierte Beschreibung wird mit Bezug auf die beigefügten Figuren beschrieben. In den Figuren identifiziert bzw. identifizieren die am weitesten links stehende(n) Ziffer(n) die Figur, in welcher das Bezugszeichen zum ersten Mal erscheint. Die Verwendung desselben Bezugszeichens in unterschiedlichen Instanzen in der Beschreibung und den Figuren kann ähnliche oder identische Elemente anzeigen. Entitäten, die in den Figuren dargestellt sind, können für eine oder für mehrere Entitäten repräsentativ sein, und es mag sich daher in der Diskussion synonym auf Singularformen oder Pluralformen der Entitäten bezogen werden.The detailed description will be described with reference to the accompanying drawings. In the figures, the leftmost digit (s) identify the figure in which the reference number appears for the first time. The use of the same reference numeral in different instances in the description and figures may indicate similar or identical elements. Entities depicted in the figures may be representative of one or more entities, and therefore, in the discussion may be synonymously referenced to singular forms or plural forms of the entities.

1 ist eine Darstellung einer Umgebung in einer beispielhaften Implementierung, die eingerichtet ist, Techniken zur Wissensextraktion aus Bildern wie hierin beschrieben anzuwenden. 1 FIG. 12 is an illustration of an environment in an exemplary implementation configured to apply techniques for extracting knowledge from images as described herein.

2 zeigt ein weiteres Beispiel eines Bildes, aus dem Wissen extrahiert wird unter Verwendung eines Wissensextraktionssystems von 1. 2 FIG. 11 shows another example of an image from which knowledge is extracted using a knowledge extraction system of FIG 1 ,

3 zeigt ein System, welches das Wissensextraktionssystem von 1 in größerem Detail zeigt. 3 shows a system using the knowledge extraction system of 1 in more detail shows.

4 zeigt eine beispielhafte Implementierung, welche ein Extraktionsmodul von 3 in größerem Detail zeigt. 4 FIG. 12 shows an exemplary implementation that includes an extraction module of FIG 3 in more detail shows.

5 zeigt ein beispielhaftes System, in welchem ein Extraktionsmodul von 4 als eine Lokalisierungsfunktionalität als Teil der Wissensextraktion enthaltend dargestellt ist. 5 shows an exemplary system in which an extraction module of 4 is shown as containing a localization functionality as part of the knowledge extraction.

6 zeigt ein Beispiel der Lokalisierung von strukturiertem semantischem Wissen zu Teilen von Bildern. 6 shows an example of the localization of structured semantic knowledge to parts of images.

7 zeigt eine beispielhafte Implementierung, welche ein Modelltrainingsmodul von 3 in größerem Detail als ein maschinelles Lernmodul enthaltend zeigt, um eine Beziehung zwischen dem strukturierten semantischen Wissen und Bildern zu modellieren. 7 FIG. 12 shows an exemplary implementation that includes a model training module of FIG 3 in more detail than containing a machine learning module to model a relationship between the structured semantic knowledge and images.

8 zeigt eine beispielhafte Implementierung, welche das Trainieren eines Modells unter Verwendung eines maschinellen Lernsystems mit zwei Modulen zeigt. 8th FIG. 12 shows an exemplary implementation showing the training of a model using a two-module machine learning system.

9 ist ein Flussdiagramm, das eine Prozedur in einer beispielhaften Implementierung zeigt, in welcher eine digitale Medienumgebung verwendet wird, um Wissen aus einem eingegebenen Bild automatisch und ohne Benutzereingriff zu extrahieren. 9 FIG. 10 is a flowchart illustrating a procedure in an exemplary implementation in which a digital media environment is used to automatically extract knowledge from an input image without user intervention.

10 ist ein Flussdiagramm, das eine Prozedur in einer beispielhaften Implementierung zeigt, in welcher eine digitale Medienumgebung verwendet wird, um Wissen zu extrahieren und Textmerkmale zu Bildmerkmalen eines eingegebenen Bildes zu lokalisieren. 10 FIG. 10 is a flowchart illustrating a procedure in an exemplary implementation in which a digital media environment is used to extract knowledge and locate textual features into image features of an input image.

11 zeigt ein System zur strukturierten Fakten-Bildeinbettung. 11 shows a system for structured fact picture embedding.

12 zeigt Modell 1 und Modell 2 als Teil von maschinellem Lernen. 12 shows Model 1 and Model 2 as part of machine learning.

13 zeigt ein beispielhaftes System, das verschiedene Komponenten einer beispielhaften Vorrichtung beinhaltet, die implementiert werden kann als eine Art von Rechnervorrichtung wie beschrieben und/oder verwendet mit Bezug auf 112, um Ausführungsformen der hierin beschriebenen Techniken zu implementieren. 13 FIG. 12 shows an example system including various components of an exemplary device that may be implemented as a type of computing device as described and / or used with reference to FIG 1 - 12 to implement embodiments of the techniques described herein.

Detaillierte Beschreibung Detailed description

ÜbersichtOverview

Es werden Techniken und Systeme beschrieben, welche Wissensextraktion aus einem Bild unterstützen, um eine beschreibende Zusammenfassung des Bildes zu erzeugen, welche dann verwendet werden kann, um Bildersuche, automatische Erstellung von Bildbeschriftungen und Metadaten für das Bild und eine Vielfalt von anderen Verwendungen zu unterstützen. Die beschreibende Zusammenfassung kann zum Beispiel Qualitäten des Bildes insgesamt beschreiben, sowie Attribute, Objekte und Interaktion der Objekte miteinander in dem Bild wie nachstehend weiter beschrieben. Auch wenn im Nachfolgenden Beispiele beschrieben werden, welche Bildersuchen beinhalten, sind diese Techniken dementsprechend gleichermaßen auf eine Vielfalt von anderen Beispielen anwendbar, wie etwa automatisiertes strukturiertes Bilder-Taggen, Erzeugung von Bildbeschriftungen und so weiter.Techniques and systems are described which support knowledge extraction from an image to produce a descriptive summary of the image, which can then be used to support image searching, automatic creation of image captions and metadata for the image, and a variety of other uses. For example, the descriptive summary may describe qualities of the image as a whole, as well as attributes, objects and interaction of the objects with each other in the image as further described below. Accordingly, although examples will be described below that include image searches, these techniques are equally applicable to a variety of other examples, such as automated structured image tagging, image captioning, and so forth.

Es werden zuerst Trainingsdaten erlangt, um ein Modell unter Verwendung von maschinellem Lernen zu trainieren, um eine strukturierte Bildrepräsentation zu erzeugen. Es werden hierin Techniken beschrieben, in denen Trainingsdaten erhalten werden, welche Bilder und zugeordneten Text (zum Beispiel Beschriftungen der Bilder, welche jede Art von Textkonfiguration beinhalten, welche eine von dem Bild eingefangene Szene beschreibt) verwendet, welche aus eine Vielfalt von Quellen leicht erhalten werden können. Die Bilder und zugeordnete Text werden dann automatisch und ohne Benutzereingriff verarbeitet, um aus dem Text strukturiertes semantisches Wissen zu extrahieren, das dann mit den Bildern assoziiert wird. Dies kann eine Assoziation mit dem Bild als Ganzes und/oder mit Objekten in dem Bild durch einen im Folgenden „Lokalisierung” genannten Prozess beinhalten. Die Verwendung dieser Trainingsdaten unterscheidet sich von herkömmlichen Techniken, die auf Crowd Sourcing beruhen, wobei Menschen manuell Bilder beschriften, was teuer, fehlerträchtig und ineffizient sein kann.Training data is first obtained to train a model using machine learning to produce a structured image representation. Techniques are described herein in which training data is obtained which images and associated text (e.g., captions of the images containing any type of text configuration describing a scene captured by the image) that are easily obtained from a variety of sources can be. The images and associated text are then processed automatically and without user intervention to extract semantic knowledge structured from the text which is then associated with the images. This may involve an association with the image as a whole and / or with objects in the image through a process referred to hereinafter as "localization". The use of this training data differs from conventional crowd-sourcing techniques, where people manually label images, which can be expensive, error-prone, and inefficient.

In einem Beispiel wird strukturiertes semantisches Wissen aus dem Text extrahiert unter Verwendung einer Verarbeitung natürlicher Sprache. Strukturiertes semantisches Wissen kann eine Vielfalt von Formen annehmen, wie Tupel <Subjekt, Attribut> und <Subjekt, Prädikat, Objekt>, welche als eine Aussage fungieren, welche das Subjekt über das Prädikat mit dem Objekt verknüpft. Das strukturierte semantische Wissen wird dann mit den entsprechenden Bildern verarbeitet, um ein Modell unter Verwendung von maschinellem Lernen zu trainieren, so dass das Modell eine Beziehung zwischen Textmerkmalen in dem strukturierten semantischen Wissen (zum Beispiel Subjekte und Objekte) und Bildmerkmale von Bildern beschreibt, zum Beispiel Teile des Bildes, die in begrenzenden Rechtecken definiert sind, welche die Subjekte oder Objekte enthalten. In einem Beispiel ist das Modell ein gemeinsames probabilistisches Modell, das errichtet wird, ohne eine Reduktion eines großen Vokabulars einzelner Wörter zu einer kleinen vordefinierten Menge von Konzepten zu erfordern, und als solches kann das Modell direkt dieses große Vokabular adressieren, was unter Verwendung herkömmlicher Techniken nicht möglich ist.In one example, structured semantic knowledge is extracted from the text using natural language processing. Structured semantic knowledge can take on a variety of forms, such as tuple <subject, attribute> and <subject, predicate, object>, which act as a statement linking the subject to the object via the predicate. The structured semantic knowledge is then processed with the corresponding images to train a model using machine learning so that the model describes a relationship between textual features in the structured semantic knowledge (e.g., subjects and objects) and image features of images, for example Example Parts of the image defined in bounding rectangles containing the subjects or objects. In one example, the model is a common probabilistic model that is built without requiring a reduction of a large vocabulary of individual words to a small predefined set of concepts, and as such, the model can directly address this large vocabulary, using conventional techniques not possible.

Zum Beispiel können Lokalisierungstechniken verwendet werden, so dass das strukturierte semantische Wissen auf das entsprechende Objekt in einem Bild abgebildet wird. Ein Tupel <Baby, hält, Spielzeug> kann zum Beispiel explizit das Subjekt „Baby” in einem Bild unter Verwendung des Prädikats „hält” auf das Objekt „Spielzeug” in dem Bild abbilden und stellt daher eine Struktur bereit, um zu beschreiben, was in dem Bild „vor sich geht”. Dies ist in herkömmlichen Techniken des unstrukturierten Taggens nicht möglich, welche Techniken nicht explizit waren dahingehend, dass eine Korrespondenz zwischen einem bestimmten Objekt in dem Bild mit dem Tag nicht möglich war, so dass wenn mehrere Objekte in dem Bild enthalten waren und keine Unterscheidung zwischen den Objekten, zum Beispiel mehrere Babys, gemacht wurde. Das von den hierin beschriebenen Techniken bereitgestellte strukturierte Wissen kann daher auf eine Weise verwendet werden, die von einer Rechnervorrichtung durchsucht werden kann.For example, localization techniques may be used so that the structured semantic knowledge is mapped to the corresponding object in an image. For example, a tuple <baby, holds, toy> can explicitly map the subject "baby" in an image using the predicate "holds" to the object "toy" in the image and therefore provides a structure to describe what in the picture "going on". This is not possible in conventional unstructured tagging techniques, which techniques were not explicit in that correspondence between a particular object in the image and the tag was not possible, so that when multiple objects were included in the image and no distinction was made between them Objects, for example, several babies, was made. The structured knowledge provided by the techniques described herein can therefore be used in a manner that can be searched by a computing device.

Wenn man beispielsweise nach Bildern einer „roten Blume” sucht, betrachtet ein herkömmlicher Sack-von-Worten bzw. „Bag-of-Words” Ansatz „rot” und „Blume” getrennt, was Bilder von Blumen zurückliefern mag, die nicht rot sind, die aber rot an anderer Stelle in dem Bild enthalten. Die Verwendung der hierin beschriebenen Techniken weiß jedoch, dass ein Benutzer nach dem Konzept <Blume, rot> sucht von einer Struktur einer Suchanforderung, was dann verwendet wird, um Bilder aufzufinden, die eine entsprechende Struktur aufweisen. Auf diese Weise kann das Modell eine erhöhte Genauigkeit gegenüber Techniken aufweisen, die auf einer Beschreibung des Bildes als ein ganzes basieren, wie hiernach weiter beschrieben mit Bezug auf 5 und 6.For example, when looking for images of a "red flower", a conventional bag-of-words approach looks at "red" and "flower" separately, which may return images of flowers that are not red but they are red elsewhere in the picture. However, the use of the techniques described herein knows that a user searches for the <flower, red> concept of a search query structure, which is then used to find images having a corresponding structure. In this way, the model may have increased accuracy over techniques based on a description of the image as a whole, as further described below with reference to FIG 5 and 6 ,

Diese Abbildung kann weiter einen gemeinsamen Vektorraum nutzen, der Differenzen pönalisiert, so dass ähnliche semantische Konzepte in diesem Raum einander nahe sind. Dies kann zum Beispiel ausgeführt werden für Merkmalsvektoren für Text, so dass „kurvige Straße” und „sich windende Straße” einander relativ nahe sind in dem Vektorraum. Ähnliche Techniken können verwendet werden, um ähnliche Konzepte für Bildvektoren zu begünstigen, sowie um die Bild- und Textvektoren aneinander anzupassen. Eine Vielfalt von Techniken des maschinellen Lernens können verwendet werden, um das Modell so zu trainieren, dass es diese Abbildung ausführt. In einem solchen Beispiel wird ein zweispaltiges tiefes Netzwerk verwendet, um die Korrelation zwischen der strukturierten semantischen Information und einem Bild oder einem Teil eines Bildes, zum Beispiel ein begrenzendes Rechteck, von dem ein Beispiel in 8 gezeigt ist, zu lernen. This mapping can further exploit a common vector space that punctuates differences so that similar semantic concepts in this space are close to each other. This can be done, for example, for feature vectors for text so that "curvy road" and "winding road" are relatively close to each other in the vector space. Similar techniques can be used to favor similar concepts for image vectors as well as to match the image and text vectors. A variety of machine learning techniques can be used to train the model to perform this mapping. In such an example, a two-column deep network is used to determine the correlation between the structured semantic information and an image or part of an image, for example a bounding rectangle, an example of which is shown in FIG 8th shown is to learn.

Sobald das Modell gelernt wurde, kann das Modell dann verwendet werden, um eingegebene Bilder zu verarbeiten, um eine strukturierte Bildrepräsentation des Bildes zu erzeugen durch Berechnen eines Konfidenzwerts, um zu beschreiben, welcher Text am besten dem Bild entspricht. Das Modell kann zum Beispiel über begrenzende Rechtecke von Teilen des Bildes iterieren, um zu bestimmen, welcher strukturierte Text (zum Beispiel <Blume, rot>) wahrscheinlich den Teil des Bildes beschreibt, wie Objekte, Attribute und Beziehungen zwischen diesen, durch Berechnen von Wahrscheinlichkeiten (das heißt, die Konfidenzwerte), dass der strukturierte Text ein gleiches Konzept beschreibt wie die Bildmerkmale in dem Bild. Auf diese Weise stellt die strukturierte Bildrepräsentation eine beschreibende Zusammenfassung des Bildes bereit, die strukturierten Text verwendet, um die Bilder und Teile des Bildes zu beschreiben. Die strukturierte Bildrepräsentation kann daher für ein Bildberechnet werden, um Text zu enthalten, der auf eine Weise strukturiert ist, die Beziehungen zwischen Objekten in dem Bild (zum Beispiel Blume), Attribute des Objekts (zum Beispiel rot), Beziehungen dazwischen (zum Beispiel <Blume, rot> <Baby, hält, Spielzeug>) und das Bild selbst beschreibt, wie oben beschrieben. Die strukturierte Bildrepräsentation kann verwendet werden, um eine Vielfalt von Funktionalitäten zu unterstützen, einschließlich Bildersuchen, automatische Erstellung von Bildbeschriftungen und Metadaten, automatisiertes Taggen von Objekten und so weiter. Eine weitere Diskussion dieser und anderer Beispiele ist in den folgenden Abschnitten enthalten.Once the model has been learned, the model can then be used to process input images to produce a structured image representation of the image by calculating a confidence value to describe which text best suits the image. For example, the model may iterate over bounding rectangles of parts of the image to determine which structured text (for example, <flower, red>) is likely to describe the part of the image, such as objects, attributes, and relationships between them, by computing probabilities (that is, the confidence values) that the structured text describes a similar concept as the image features in the image. In this way, the structured image representation provides a descriptive summary of the image that uses structured text to describe the images and parts of the image. The structured image representation can therefore be calculated for an image to contain text structured in a manner that includes relationships between objects in the image (for example flower), attributes of the object (for example red), relationships between them (for example < Flower, red> <baby, holds, toy>) and the picture itself describes as described above. The structured image representation can be used to support a variety of functionalities, including image browsing, automatic creation of image captions and metadata, automated object tagging, and so forth. Further discussion of these and other examples is included in the following sections.

In der folgenden Diskussion wird zunächst eine beispielhafte Umgebung beschrieben, welche die hierin beschriebenen Wissensextraktionstechniken verwenden kann. Danach werden dann beispielhafte Prozeduren beschrieben, die in der beispielhaften Umgebung sowie anderen Umgebungen ausgeführt werden können. Dementsprechend ist das Ausführen der beispielhaften Prozeduren nicht auf die beispielhafte Umgebung beschränkt, und die beispielhafte Umgebung ist nicht auf das Ausführen der beispielhaften Prozeduren beschränkt.In the following discussion, an exemplary environment that can use the knowledge extraction techniques described herein will first be described. Thereafter, exemplary procedures that may be performed in the example environment and other environments will be described. Accordingly, executing the example procedures is not limited to the example environment, and the example environment is not limited to performing the example procedures.

Beispielhafte UmgebungExemplary environment

1 ist eine Darstellung einer Umgebung 100 in einer beispielhaften Implementierung, die eingerichtet ist, hierin beschriebene Wissensextraktionstechniken anzuwenden. Die dargestellte Umgebung 100 beinhaltet eine Rechnervorrichtung 102, die auf vielfältige Weise konfiguriert sein kann. 1 is a representation of an environment 100 in an example implementation arranged to apply knowledge extraction techniques described herein. The illustrated environment 100 includes a computing device 102 that can be configured in a variety of ways.

Die Rechnervorrichtung 102 kann zum Beispiel als ein Schreibtischcomputer, ein Laptopcomputer, eine Mobilvorrichtung (welche zum Beispiel eine handgehaltene Konfiguration annimmt, wie etwa wie dargestellt ein Tisch oder ein Mobiltelefon), tragbare Vorrichtungen und so weiter. Daher kann die Rechnervorrichtung 102 von Vorrichtungen mit vollständigen Ressourcen mit erheblichen Speicherressourcen und Prozessorressourcen (zum Beispiel PCs, Spielekonsolen) bis zu einer Vorrichtung mit geringen Ressourcen mit begrenzten Speicherressourcen und/oder Prozessorressourcen (zum Beispiel Mobilvorrichtungen) reichen. Zudem kann, auch wenn nur eine einzelne Rechnervorrichtung 102 gezeigt ist, die Rechnervorrichtung 102 für eine Vielzahl von unterschiedlichen Vorrichtungen repräsentativ sein, wie etwa mehrere Server, die von einem Unternehmen verwendet werden, um Operationen „über die Cloud” auszuführen, wie weiter Beschrieben mit Bezug auf 13.The computing device 102 For example, as a desk top computer, a laptop computer, a mobile device (adopting, for example, a hand-held configuration, such as a desk or a mobile phone as illustrated), portable devices, and so on. Therefore, the computing device 102 from full resource devices with significant memory resources and processor resources (e.g., PCs, game consoles) to a low resource device with limited memory resources and / or processor resources (e.g., mobile devices). In addition, even if only a single computing device 102 is shown, the computing device 102 be representative of a variety of different devices, such as multiple servers used by a company to perform "cloud-over" operations, as further described with reference to FIG 13 ,

Die Rechnervorrichtung 102 ist ein Wissensextraktionssystem 104 enthaltend dargestellt, das für eine Funktionalität repräsentativ ist, um aus einem Bild 108 eine strukturierte Bildrepräsentation 106 zu bilden, welche das Bild 108 beschreibend zusammenfasst. Die strukturierte Bildrepräsentation 106 kann verwendet werden, um eine Vielfalt von Funktionalitäten zu unterstützen, wie sie etwa von einem Bildersuchmodul 110 zu verwenden ist, um eine Datenbank 112 von Bildern 114 basierend auf entsprechenden strukturierten Bildrepräsentationen zu durchsuchen. Wie zuvor beschrieben sind auch andere Verwendungen der strukturierten Bildrepräsentation 106 angedacht, wie die automatische Erstellung von Bildbeschriftungen und Metadaten für Bilder, wie durch ein Bildbeschriftungserzeugungssystem 118 repräsentiert. Obwohl das Wissensextraktionssystem 104 und das Bildersuchmodul 110 und die Datenbank 112 als unter Verwendung der Rechnervorrichtung 102 implementiert gezeigt sind, kann diese Funktionalität auch weiter aufgeteilt sein „über die Cloud” über ein Netzwerk 116, wie weiter Beschrieben mit Bezug auf 13.The computing device 102 is a knowledge extraction system 104. comprising, which is representative of a functionality, from an image 108 a structured picture representation 106 to form the picture 108 summarized in a descriptive way. The structured image representation 106 can be used to support a variety of functionalities, such as from an image search engine 110 is to use a database 112 of pictures 114 search based on corresponding structured image representations. As previously described, other uses of the structured image representation are also 106 such as the automatic creation of image captions and metadata for images such as an image captioning system 118 represents. Although the knowledge extraction system 104. and the image search engine 110 and the database 112 than using the computing device 102 implemented, this functionality can also be further split "across the cloud" over a network 116 as further described with respect to 13 ,

Die strukturierte Bildrepräsentation 106 stellt eine Menge von Konzepten mit einer Struktur bereit, welche eine Beziehung zwischen Entitäten, die in den Konzepten enthalten sind, beschreibt. Dadurch kann die strukturierte Bildrepräsentation als eine Intermediärrepräsentation des Bildes 108 unter Verwendung von Text fungieren, um nicht nur zu beschreiben, „was enthalten ist” in dem Bild 108, sondern auch eine Beziehung von Entitäten und Konzepten untereinander, die in dem Bild 108 enthalten sind. Dies kann verwendet werden, um einen höheren Grad an semantischer Präzision in einer Bildersuche zu unterstützen, der unter Verwendung herkömmlicher Techniken, die auf unstrukturierten Tags basieren, nicht möglich ist.The structured image representation 106 provides a set of concepts with a structure that describes a relationship between entities contained in the concepts. This allows the structured image representation as an intermediary representation of the image 108 using text to not only describe "what's included" in the image 108 but also a relationship of entities and concepts among themselves, in the picture 108 are included. This can be used to support a higher degree of semantic precision in an image search that is not possible using conventional techniques based on unstructured tags.

Eine hochpräzise semantische Bildersuche beinhaltet zum Beispiel das Auffinden von Bildern mit dem spezifischen Inhalt, der in einer textuellen Suchabfrage angefordert wird. Zum Beispiel kann ein Benutzer eine Suchabfrage in einen Bilderteildienst eingeben nach einem „Mann, der ein Baby in einem Hochstuhl füttert, während das Baby ein Spielzeug hält”, um ein Bild von Interesse aufzufinden, das zur Lizensierung verfügbar ist. Herkömmliche Techniken, die auf unstrukturierten Tags basieren, sind jedoch nicht in der Lage, diese Abfrage akkurat zu erfüllen. Aufgrund dieses Fehlens von Struktur erfüllen in der Praxis von herkömmlichen Bildersuchen bereitgestellte Bilder einige, aber nicht alle der Elemente in der Abfrage, wie etwa ein Mann, der ein Baby füttert, aber das Baby hält kein Spielzeug, ein Baby in einem Hochstuhl, aber es ist kein Mann im Bild, ein Bild einer Frau, die ein Baby füttert, das ein Spielzeug hält und so weiter.For example, a high-precision semantic image search involves finding images with the specific content requested in a textual search query. For example, a user may enter a search query into a rendering service for a "man feeding a baby in a high chair while the baby is holding a toy" to retrieve an image of interest that is available for licensing. However, traditional techniques based on unstructured tags are unable to accurately satisfy this query. Due to this lack of structure, images provided in practice by conventional image browsing satisfy some but not all of the elements in the query, such as a man feeding a baby, but the baby does not hold a toy, a baby in a high chair, but it there is no man in the picture, a picture of a woman feeding a baby holding a toy and so on.

Eine strukturierte Bildrepräsentation 106 stellt jedoch eine explizite Repräsentation davon bereit, was über ein Bild 108 bekannt ist. Dies unterstützt eine Fähigkeit, zu bestimmen, welche Konzepte in einer Suchabfrage in einem durchsuchten Datenbankbild fehlen, und verbessern daher die Genauigkeit der Suchergebnisse. Dementsprechend kann ein Maß der Ähnlichkeit zwischen der Suchabfrage und einem Bild 114 in einer Datenbank 112 berücksichtigen, welche und wie viele Konzepte fehlen. Darüber hinaus können, wenn es ein Bild gibt, das nahe kommt, die Abfrage zu erfüllen, dem aber ein Konzept fehlt, Techniken verwendet werden, um ein neues Bild zu synthetisieren unter Verwendung des nahekommenden Bildes und von Inhalt von einem anderen Bild, welches das fehlende Konzept enthält, wie im Folgenden weiter beschrieben.A structured picture representation 106 however, provides an explicit representation of what an image is 108 is known. This supports an ability to determine which concepts are missing from a search query in a searched database image and therefore improves the accuracy of the search results. Accordingly, a measure of similarity between the search query and a picture 114 in a database 112 consider which and how many concepts are missing. Moreover, if there is an image that comes close to satisfying the query but lacks a concept, techniques can be used to synthesize a new image using the approximate image and content from another image containing the image contains missing concept, as further described below.

Es sei ein Beispiel der Verwendung der strukturierten Bildrepräsentation 106 betrachtet, in welchem das extrahierte Wissen des Bildes 108 das folgende enthält:

Figure DE102016010910A1_0002
Das Bildbeschriftungserzeugungssystem 118 ist konfiguriert, dieses extrahierte Wissen zu verwenden, um eine Bildbeschriftung wie folgt zu erzeugen:
„Ein Mann füttert ein lächelndes Baby, während das Baby ein Spielzeug hält. Das Baby sitzt in einem Hochstuhl. Der Mann ist auch fröhlich. Es ist wahrscheinlich ein Vater, der seinen Sohn füttert. Der Vater und sein Sohn haben zusammen Spaß, während die Mutter weg ist”.It is an example of using the structured image representation 106 considered in which the extracted knowledge of the image 108 the following contains:
Figure DE102016010910A1_0002
The image captioning system 118 is configured to use this extracted knowledge to generate an image label as follows:
"A man is feeding a smiling baby while the baby is holding a toy. The baby is sitting in a high chair. The man is also happy. It's probably a father feeding his son. The father and his son have fun together while the mother is away ".

Die explizite Repräsentation von Wissen der strukturierten Bildrepräsentation 106 ermöglicht eine Beschreibung in mehreren Sätzen der Szene des Bildes 108 als eine Bildbeschriftung in diesem Beispiel, die automatisch und ohne Benutzereingriff gebildet wird. Die ersten zwei Sätze sind eine einfache Inklusion der Konzepte <Mann, füttert, Baby>, <Baby, hält, Spielzeug> und <Baby, sitzt in, Hochstuhl>. Der dritte Satz involviert ein Schlussfolgern basierend auf den Konzepten <Mann, lächelnd> und <Baby, lächelnd>, um durch das Bildbeschriftungserzeugungssystem 118 zu schlussfolgern, dass der Mann fröhlich ist, und um das „auch” hinzuzufügen, weil sowohl das Baby, als auch der Mann lächelt. Der vierte Satz verwendet ebenfalls ein Schlussfolgern basierend auf dem extrahierten Konzept, dass das Baby blau trägt, um zu schließen, dass das Baby ein Junge ist.The explicit representation of knowledge of structured image representation 106 allows a description in several sentences of the scene of the picture 108 as an image caption in this example that is formed automatically and without user intervention. The first two sentences are a simple inclusion of the concepts <man, feeding, baby>, <baby, holding, toy> and <baby, sitting in, high chair>. The third sentence involves reasoning based on the concepts of <man, smiling> and <baby, smiling> to go through the image captioning system 118 to conclude that the man is cheerful and to add the "too" because both the baby and the man are smiling. The fourth sentence also uses a conclusion based on the extracted concept that the baby is wearing blue to conclude that the baby is a boy.

Das Bildbeschriftungserzeugungssystem 118 kann auch externes statistisches Wissen verwenden, zum Beispiel dass in den meisten Fällen, wenn ein Mann ein männliches Baby füttert, es ein Vater ist, der seinen Sohn füttert. Der obige vierte erzeuge Satz ist abgemildert mit „Es ist wahrscheinlich ...”, weil Statistiken ein zumutbares Maß an Unsicherheit in dieser Schlussfolgerung anzeigen können, dass das Baby ein Junge ist, weil das Baby blaue Kleidung trägt. Da die strukturierte Bildrepräsentation 106 verwendet werden kann, um alle relevante Informationen über die Szene zu extrahieren, kann die Abwesenheit von Information auch als Teil von Schlussfolgerungen verwendet werden, die von dem Bildbeschriftungserzeugungssystem 118 ausgeführt werden. In diesem Fall erwähnt die strukturierte Bildrepräsentation 106 keine Frau als im Bild 108 präsent. Daher kann das Bildbeschriftungserzeugungssystem 118 schlussfolgern, das die „Mutter weg” ist, und kombiniert mit den Konzepten, dass der Mann und das Baby lächeln, den Schlusssatz bilden „Der Vater und sein Sohn haben zusammen Spaß, während die Mutter weg ist”.The image captioning system 118 can also use external statistical knowledge, for example, that in most cases when a man is feeding a male baby, it is a father feeding his son. The above fourth sentence produced is tempered with "It's likely ..." because statistics can indicate a reasonable degree of uncertainty in this conclusion that the baby is a boy because the baby is wearing blue clothes. Because the structured image representation 106 be used In order to extract all relevant information about the scene, the absence of information may also be used as part of conclusions drawn by the image captioning system 118 be executed. In this case, the structured image representation mentions 106 no woman as in the picture 108 present. Therefore, the image capturing generating system 118 Conclude that the "mother is gone", and combined with the concepts that the man and the baby smile, form the final sentence "The father and his son have fun together while the mother is away".

Es sei bemerkt, dass ein Bildbeschriftungserzeugungssystem 118 vermeiden kann, einige der extrahierten Informationen zu verwenden. In diesem Fall erwähnt die Bildbeschriftung nicht, dass der Mann am Tisch sitzt, weil das Bildbeschriftungserzeugungssystem 118 das Konzept als uninteressant oder unwichtig bewertet hat für das Beschreiben der Szene, oder dass es mit hoher Wahrscheinlichkeit aus einem anderen Konzept geschlussfolgert werden kann, wie etwa dass das Baby in einem Hochstuhl sitzt. Diese Schlussfolgerung wird ermöglicht durch Verwendung der strukturierten Bildrepräsentation 106 als eine Menge strukturierten Wissens, das als eine beschreibende Zusammenfassung des Bildes 106 unter Verwendung von Text fungiert.It should be noted that an image capturing system 118 can avoid using some of the extracted information. In this case, the picture caption does not mention that the man is sitting at the table because the image captioning system 118 has rated the concept as uninteresting or unimportant for describing the scene, or that it is likely to be inferred from another concept, such as the baby sitting in a high chair. This conclusion is made possible by using the structured image representation 106 as a set of structured knowledge that acts as a descriptive summary of the image 106 using text acts.

Die strukturierte Bildrepräsentation 106 kann auch Part-of-Speech (POS) Tags verwenden, wie ein einzelnes Nomen, Adjektiv, Adverb, und so weiter, für die extrahierten Subjekte, Prädikate, Aktionen, Attribute und Objekte. Die Part-of-Speech Tags können als Teil des Schlussfolgerns wie oben beschrieben verwendet werden, sowie auch zum Positionsfüllen in einem grammatikbasierten Bildbeschriftungserzeugungsansatz, und um sicherzustellen, dass ein gültiger Satz erzeugt wird, wie nachstehend weiter beschrieben.The structured image representation 106 can also use Part-of-Speech (POS) tags, such as a single noun, adjective, adverb, and so on, for the extracted subjects, predicates, actions, attributes, and objects. The part-of-speech tags may be used as part of the reasoning as described above, as well as for position fills in a grammatical-based image captioning approach, and to ensure that a valid sentence is generated, as further described below.

Darüber hinaus ermöglicht die explizite Extraktion von Wissen aus Bildern 108 auf der Ebene der Objekte in dem Bild 108 und entsprechenden Attributen und Interaktionen weitere Schlussfolgerungen über Szeneneigenschaften auf mittlerer und höherer Ebene. Die Schlussfolgerungen darüber, dass das Baby ein Junge ist, der Mann fröhlich ist und dass Vater und Sohn Spaß haben, während die Mutter weg ist, sind Beispiele.In addition, the explicit extraction of knowledge from images allows 108 at the level of the objects in the picture 108 and corresponding attributes and interactions further conclusions about scene properties at middle and higher levels. The inferences that the baby is a boy, the man is happy and that father and son have fun while the mother is gone, are examples.

2 zeigt ein weiteres Beispiel eines Bildes 200. In diesem Beispiel kann die strukturierte Bildrepräsentation 106 das folgende Wissen haben, das aus dem Bild 200 extrahiert ist:

Figure DE102016010910A1_0003
Das Vorhandensein eines Fußballs zeigt an, dass die Leute Fußball spielen, was weiter durch das Wissen gestützt wird, dass einer der Leute den Fußball tritt. Dass es nur zwei Farben von Hemden gibt, zeigt an, dass zwei Mannschaften ein Spiel spielen. Dies wird durch das Wissen gestützt, dass eine Person in Rot tatsächlich eine Person in blau verfolgt, welche den Ball tritt, und dass andere Leute auf einem Feld rennen. Aus diesem extrahierten Wissen auf Objektebene können Szenenebeneneigenschaften von dem Bildbeschriftungserzeugungssystem 118 mit verbesserten Objektebenenbeschreibungen abgeleitet werden, wie etwa „Ein Fußballspiel zwischen einer Mannschaft in rot und einer Mannschaft in blau”. 2 shows another example of an image 200 , In this example, the structured image representation 106 have the following knowledge, that from the picture 200 extracted is:
Figure DE102016010910A1_0003
The presence of a football indicates that people are playing football, which is further supported by the knowledge that one of the people is playing football. That there are only two colors of shirts indicates that two teams play a game. This is supported by the knowledge that a person in red is actually following a person in blue kicking the ball and that other people are running in a field. From this extracted object level knowledge, scene level properties can be obtained from the image captioning system 118 derived with improved object-level descriptions, such as "A football game between a team in red and a team in blue".

Weiteres Schließen und Schlussfolgern über Szenen und deren konstituierender Objekte und Aktionen kann auch erzielt werden durch Errichten einer Wissensbasis über den Inhalt von Bildern, wo die Wissensbasis dann von einem Schlussfolgerungswerk verwendet wird. Die Errichtung einer Wissensbasis kann als Eingabe zum Beispiel strukturiertes Wissen nehmen, das Bilder beschreibt, wie etwa <Subjekt, Attribut, ->, <Subjekt, Prädikat, Objekt>, <Subjekt, -, ->, <-, Aktion, ->. Eingegebene Daten zum Errichten der Wissensbasis können aus bestehenden Bildbeschriftungsdatenbanken und aus Bildbeschriftungen und umgebendem Text in Dokumenten genommen werden. Die Fähigkeit der hierin beschriebenen Techniken, derartiges Wissen aus einem beliebigen Bild zu extrahieren, erlaubt es der Bildwissensbasis, viel mehr Daten aus nicht mit Bildbeschriftungen versehenen Bildern und nicht mit Tags versehenen Bildern aufzunehmen, wie es für die meisten Bilder der Fall ist. Die Bildwissensbasis und das entsprechende Schlussfolgerungswerk können Schlussfolgerungen treffen, wie diejenigen, die in dem obigen Beispiel des Mannes, der das Baby füttert, notwendig sind. Die Bildwissensbasis kann auch die Statistiken bereitstellen, um das probabilistische Schlussfolgern zu unterstützen, das in jenem Beispiel verwendet wird, die das Schlussfolgern, dass der Mann wahrscheinlich der Vater des Babys ist. Hätte das Beispiel ein Attribut wie <Mann, alt> enthalten, dann könnte eine wahrscheinlichere Schlussfolgerung beinhalten, dass der Mann wahrscheinlich der Großvater des Babys ist.Further closing and reasoning about scenes and their constituent objects and actions can also be achieved by building a knowledge base about the content of images, where the knowledge base is then used by a conclusion work. The establishment of a knowledge base may take as input, for example, structured knowledge describing images such as <subject, attribute, ->, <subject, predicate, object>, <subject, -, ->, <-, action, -> , Input data for building the knowledge base can be taken from existing image caption databases and from image captions and surrounding text in documents. The ability of the techniques described herein to extract such knowledge from any image allows the image knowledge base to capture much more data from non-captioned images and untagged images, as is the case with most images. The image-knowledge base and the corresponding inference work can make conclusions, such as those necessary in the above example of the man feeding the baby. The Image knowledge base can also provide the statistics to support the probabilistic reasoning used in the example that concludes that the man is probably the baby's father. If the example contained an attribute such as "old man," then a more likely conclusion might be that the man is probably the baby's grandfather.

Nachdem Beispiele einer Umgebung beschrieben wurden, in denen eine strukturierte Bildrepräsentation 106 verwendet wird, um Bilder 114 beschreibend zusammenzufassen, ist im Folgenden eine eingehendere Diskussion von Operationen des Wissensextraktionssystems 104 zum Erzeugen und Verwenden eines Modells als Teil der Extraktion von Wissen aus Bildern enthalten.After examples of an environment have been described in which a structured image representation 106 is used to take pictures 114 In the following, a more detailed discussion of operations of the knowledge extraction system can be summarized in a descriptive way 104. to create and use a model as part of the extraction of knowledge from images.

3 zeigt ein System 300 einer beispielhaften Implementierung, welche das Wissensextraktionssystem 104 von 1 in größerem Detail zeigt. In diesem Beispiel verwendet das Wissensextraktionssystem 104 einen Ansatz des maschinellen Lernens, um die strukturierte Bildrepräsentation 106 zu erzeugen. Dementsprechend werden von dem Wissensextraktionssystem 110 zuerst Trainingsdaten 302 erhalten, die dazu zu verwenden sind, das Modell zu trainieren, das danach verwendet wird, um die strukturierte Bildrepräsentation 106 zu bilden. Herkömmliche Techniken, die verwendet werden, um Modelle in ähnlichen Szenarios zu trainieren (zum Beispiel Bildverständnisprobleme) basieren darauf, dass Benutzer die Bilder manuell taggen, um die Trainingsdaten 302 zu bilden, was ineffizient, teuer, zeitaufwändig und fehlerträchtig sein kann. In den hierin beschriebenen Techniken wird das Modell jedoch trainiert unter Verwendung von Techniken, die automatisch und ohne Benutzereingriff ausgeführt werden können. 3 shows a system 300 an exemplary implementation of the knowledge extraction system 104. from 1 in more detail shows. In this example, the knowledge extraction system uses 104. an approach of machine learning to the structured image representation 106 to create. Accordingly, from the knowledge extraction system 110 first training data 302 which are to be used to train the model that will be used afterwards for the structured image representation 106 to build. Conventional techniques used to train models in similar scenarios (e.g., image understanding problems) are based on users manually tagging the images to the training data 302 which can be inefficient, expensive, time consuming and error prone. However, in the techniques described herein, the model is trained using techniques that can be performed automatically and without user intervention.

In dem dargestellten Beispiel beinhalten die Trainingsdaten 302 Bilder 304 und assoziierten Text 306, wie Bildbeschriftungen oder Metadaten, die mit den Bildern 304 assoziiert sind. Ein Extraktionsmodul 308 wird dann verwendet, um strukturiertes semantisches Wissen 310 zu extrahieren, zum Beispiel „<Subjekt, Attribut>, Bild” und „<Subjekt, Prädikat, Objekt>, Bild”, unter Verwendung einer Verarbeitung natürlicher Sprache, wie mit Bezug auf 4 weiter beschrieben. Das Extrahieren kann auch eine Lokalisierung des strukturierten semantischen Wissens 310 zu Objekten in dem Bild beinhalten, wie mit Bezug auf 5 und 6 weiter beschrieben.In the illustrated example, the training data includes 302 images 304 and associated text 306 such as picture captions or metadata associated with the pictures 304 are associated. An extraction module 308 is then used to structured semantic knowledge 310 For example, "<Subject, Attribute>Image" and "<Subject, Predicate, Object>Image" using natural language processing as described with reference to FIG 4 further described. Extraction can also be a localization of structured semantic knowledge 310 to objects in the image as related to 5 and 6 further described.

Die Bilder 304 und das entsprechende strukturierte semantische Wissen 310 werden dann an ein Modelltrainingsmodul 312 übergeben. Das Modelltrainingsmodul 312 ist als ein maschinelles Lernmodul 314 enthaltend dargestellt, das für eine Funktionalität repräsentativ ist, maschinelles Lernen (zum Beispiel neuronale Netzwerke, faltende neuronale Netzwerke bzw. convolutional neural networks und so weiter) zu verwenden, um das Modell 316 unter Verwendung der Bilder 304 und des strukturierten semantischen Wissens 310 zu trainieren. Das Modell 316 wird trainiert, eine Beziehung zwischen Textmerkmalen, die in dem strukturierten semantischen Wissen 310 enthalten sind, und Bildmerkmalen in den Bildern zu definieren, wie mit Bezug auf 7 weiter beschrieben.The pictures 304 and the corresponding structured semantic knowledge 310 then go to a model training module 312 to hand over. The model training module 312 is as a machine learning module 314 comprising, which is representative of functionality, to use machine learning (e.g., neural networks, convolutional neural networks, and so on) to model 316 using the pictures 304 and structured semantic knowledge 310 to train. The model 316 is trained, a relationship between textual features in the structured semantic knowledge 310 are included, and define image features in the images as related to 7 further described.

Das Modell 316 wird dann von einem strukturierten Logikbestimmungsmodul 318 verwendet, um eine strukturierte Bildrepräsentation 106 für ein eingegebenes Bild 108 zu erzeugen. Die strukturierte Bildrepräsentation 106 kann zum Beispiel Text beinhalten, der so strukturiert ist, Konzepte des Bildes 108 zu definieren, selbst in Fällen, in denen das Bild 108 keinen Text aufweist. Vielmehr kann das Modell 316 verwendet werden, um diesen Text als Teil der strukturierten Bildrepräsentation 106 zu erzeugen, welcher dann von dem strukturierten Bildrepräsentationsverwendungsmodul 320 verwendet wird, um eine Vielfalt von Funktionalitäten automatisch und ohne Benutzereingriff zu steuern, zu regeln und/oder zu kontrollieren, wie Bildersuchen, Erzeugung von Bildbeschriftungen und Metadaten und so weiter. Nachdem beispielhafte Module und Funktionalitäten des Wissensextraktionssystems 110 allgemein beschrieben wurden, enthält das Folgende eine Beschreibung dieser Module in größerem Detail.The model 316 is then from a structured logic determination module 318 used to create a structured image representation 106 for an input image 108 to create. The structured image representation 106 may, for example, include text that is structured in such a way that concepts of the image 108 to define, even in cases where the picture 108 has no text. Rather, the model can 316 used this text as part of the structured image representation 106 which is then generated by the structured image representation usage module 320 is used to control, regulate and / or control a variety of functionality automatically and without user intervention, such as image browsing, image captioning and metadata generation and so on. Having exemplary modules and functionalities of the knowledge extraction system 110 Generally, the following provides a description of these modules in more detail.

4 zeigt eine beispielhafte Implementierung 400, die das Extraktionsmodul 308 von 3 in größerem Detail zeigt. Das Extraktionsmodul 308 enthält ein Modul 402 zur Verarbeitung natürlicher Sprache, das repräsentativ ist für eine Funktionalität der Verwendung einer Verarbeitung natürlicher Sprache („natural language processing”, NLP) zur semantischen Wissensextraktion aus Freiform-(das heißt, unstrukturiertem)Text 306, der mit Bildern 304 in den Trainingsdaten 302 assoziiert ist. Solche Freiformbeschreibungen sind leicht verfügbar in bestehenden Bildbeschriftungsdatenbanken und in Dokumenten mit Bildern, wie Webseiten und PDF Dokumenten, und daher kann das Modul 402 zur Verarbeitung natürlicher Sprache sich diese Verfügbarkeit zu Nutze machen, was bei Verwendung herkömmlicher manueller Techniken nicht möglich ist. Es können jedoch auch manuelle Techniken verwendet werden, bei denen ein Arbeiter Bildbeschriftungstexte 306 für Bilder 304 erstellt, um die Bilder 304 zu beschreiben. 4 shows an exemplary implementation 400 that the extraction module 308 from 3 in more detail shows. The extraction module 308 contains a module 402 natural language processing representative of a functionality of using natural language processing (NLP) for semantic knowledge extraction from freeform (i.e., unstructured) text 306 who with pictures 304 in the training data 302 is associated. Such free-form descriptions are readily available in existing image captioning databases and in documents with images, such as web pages and PDF documents, and therefore the module may 402 natural language processing takes advantage of this availability, which is not possible using conventional manual techniques. However, manual techniques may also be used where a worker captions texts 306 for pictures 304 created the pictures 304 to describe.

Das strukturierte semantische Wissen 310 kann auf vielfältige Weise konfiguriert werden, wie zuvor beschrieben, wie etwa Tupel „<Subjekt, Attribut>, Bild” 406 und/oder „<Subjekt, Prädikat, Objekt>, Bild” 408. Beispiele von Bildbeschriftungen und Tupeln strukturierten Wissens, wie sie durch das Extraktionsmodul 308 ausgeführt werden, beinhalten „Ein Junge streichelt einen Hund, während er Fernsehen sieht”, was dann extrahiert wird als „<Junge, streichelt, Hund>, <Junge, sieht, Fernseher>”. In einem anderen Beispiel wird eine Bildbeschriftung „Ein braunes Pferd frisst Gras in einem großen, grünen Feld” dann extrahiert als „<Pferd, braun>, <Feld, grün>, <Pferd, frisst, Gras>, <Pferd, im, Feld>”. The structured semantic knowledge 310 can be configured in a variety of ways, as previously described, such as tuple "<Subject, Attribute>, Image" 406 and / or "<subject, predicate, object>, image" 408 , Examples of image captions and tuples of structured knowledge, such as those provided by the extraction module 308 "A boy strokes a dog while watching TV", which is then extracted as "<boy, caresses, dog>, <boy, sees, TV>". In another example, a caption "A brown horse eats grass in a large, green field" is then extracted as "<horse, brown>, <field, green>, <horse, eats, grass>, <horse, in, field >".

Eine Vielfalt von Tupelextraktionslösungen können von dem Modul 402 zur Verarbeitung natürlicher Sprache verwendet werden. Zudem können in einigen Fällen eine Vielzahl von Tupelextraktionstechniken auf dieselbe Bildbeschriftung angewandt werden, und ein Konsens unter den Techniken verwendet werden, um Fehler in Tupeln zu korrigieren, schlechte Tupel zu entfernen und Tupel hoher Konfidenz zu identifizieren oder um Tupeln Konfidenzen zuzuweisen. Eine ähnliche Technik kann verwendet werden, in der eine Extraktionstechnik verwendet wird, um Tupelextraktion gemeinsam auszuführen auf einer Menge von Bildbeschriftungen für dasselbe Bild, und um einen Konsens zu verwenden, um Fehler in Tupeln zu korrigieren, schlechte Tupel zu entfernen und um Tupel mit hoher Konfidenz zu identifizieren oder um Tupeln Konfidenzen zuzuweisen. Diese Daten sind leicht verfügbar aus bestehenden Datenbanken, da Bilder oftmals mehrere Bildbeschriftungen aufweisen. Zudem können Eingaben, die aus Crowdsourcing erhalten werden, ebenfalls verwendet werden, um gute Tupel zu bestätigen und um schlechte Tupel zu entfernen.A variety of tuple extraction solutions may be available from the module 402 used for processing natural language. In addition, in some cases, a variety of tuple extraction techniques can be applied to the same image caption, and consensus among the techniques used to correct errors in tuples, remove bad tuples and identify high confidence tuples or assign confidences to tuples. A similar technique can be used in which an extraction technique is used to collect tuple extraction on a set of image captions for the same image, and to consensus to correct for errors in tuples, remove bad tuples, and high tuples Identifying confidence or assigning confidences to tuples. These data are readily available from existing databases, as images often have multiple image captions. Additionally, crowdsourcing input can also be used to confirm good tuples and remove bad tuples.

In einer oder in mehreren Implementierungen werden Techniken zur Repräsentation abstrakter Bedeutung („abstract meaning representation”, AMR) von dem Modul 402 zur Verarbeitung natürlicher Sprache verwendet, um die Tupelextraktion zu unterstützen. AMR zielt darauf ab, ein tieferes semantische Verständnis aus Freiformtext zu erhalten. Auch wenn es nicht explizit Wissenstupel der Form <Subjekt, Attribut> oder <Subjekt, Prädikat, Objekt> extrahiert, kann aus einer AMR Ausgabe eine Tupelrepräsentation extrahiert werden. Darüber hinaus können Wissenstupel aus einem Szenengraph (zum Beispiel einer Stanford Szenengraphdatenmenge) extrahiert werden, welcher eine Art der Bildrepräsentation zur Erfassung von Objektattributen und Beziehungen zur Verwendung in semantischem Bildabruf ist.In one or more implementations, abstract meaning representation (AMR) techniques are used by the module 402 used to process natural language to aid tuple extraction. AMR aims to obtain a deeper semantic understanding from freeform text. Although it does not explicitly extract knowledge tuples of the form <subject, attribute> or <subject, predicate, object>, a tuple representation can be extracted from an AMR output. In addition, knowledge tuples can be extracted from a scene graph (for example, a Stanford scene graph data set), which is a type of image representation for capturing object attributes and relationships for use in semantic image retrieval.

5 zeigt ein beispielhaftes System 500, in dem das Extraktionsmodul 308 von 4 als eine Lokalisierungsfunktionalität als Teil der Wissensextraktion enthaltend gezeigt ist. Zusätzlich zur Extraktion von strukturiertem semantischem Wissen 310, um ein Bild als Ganzes zu beschreiben als Teil der Trainingsdaten 302, kann das strukturierte semantische Wissen 310 auch in einem Bild lokalisiert werden, um effizientes und korrektes maschinelles Lernen zu fördern. 5 shows an exemplary system 500 in which the extraction module 308 from 4 is shown as containing a localization functionality as part of the knowledge extraction. In addition to the extraction of structured semantic knowledge 310 to describe a picture as a whole as part of the training data 302 , that can be structured semantic knowledge 310 be localized in an image to promote efficient and correct machine learning.

Wenn es zum Beispiel eine komplexe Szene gibt, beispielsweise mit einem Mann, der einen Hund Gassi führt, dann kann das strukturierte semantische Wissen 310 konfiguriert sein als „<Mann, Gassi führen, Hund>, Bilddaten”, wobei die Bilddaten sich auf einen Teil des Bildes 304 beziehen, welcher den Mann, der den Hund Gassi führt, enthält, was hiernach als ein begrenzendes Rechteck 504 bezeichnet wird. Daher können sich Tupel des strukturierten semantischen Wissens 310 auf Teile in dem Bild beziehen, von denen Beispiele repräsentiert sind als „<Subjekt, Attribut>, Teil” 506 und „<Subjekt, Prädikat, Objekt>, Teil” 508.For example, if there is a complex scene, such as a man walking a dog, then this may be structured semantic knowledge 310 be configured as "<man, walk, dog>, image data", whereby the image data refers to a part of the image 304 which contains the man who guides the dog Gassi, which is hereinafter referred to as a limiting rectangle 504 referred to as. Therefore, tuples of structured semantic knowledge can become 310 refer to parts in the image, examples of which are represented as "<subject, attribute>, part" 506 and "<subject, predicate, object>, part" 508 ,

Dementsprechend kann dies die Genauigkeit beim Trainieren und nachfolgenden Verwenden für Bilder, die mehrere Entitäten und entsprechende Aktionen aufweisen, befördern. Wenn zum Beispiel eine Gesamtheit eines Bildes, das mit einer Bildbeschriftung versehen ist, die mehrere Konzepte enthält, zum Beispiel eine Frau, die joggt, oder ein Junge, der auf einen Baum klettert, dann wird jedes maschinelle Lernen, das ausgeführt wird, damit konfrontiert werden, zu bestimmen, welcher Teil des Bildes tatsächlich mit <Mann, Gassi führen, Hund> korreliert. Umso mehr das strukturierte semantische Wissen 310 lokalisiert ist, um so einfacher wird es daher sein, durch das Modelltrainingsmodul 312 ein hochqualitatives Modell anzupassen, das Bilder und strukturierten Text korreliert. Das Problem, Teile einer textlichen Beschreibung mit Teilen eines Bildes zu assoziieren, wird auch erden bzw. „grounding” genannt.Accordingly, this may promote accuracy in training and subsequent use for images having multiple entities and corresponding actions. For example, if an entirety of an image provided with an image caption containing multiple concepts, for example, a woman jogging or a boy climbing a tree, then any machine learning that is performed is confronted with it to determine which part of the picture actually correlates with <man, walk, dog>. All the more the structured semantic knowledge 310 is located, the easier it will be through the model training module 312 to adapt a high quality model that correlates images and structured text. The problem of associating parts of a textual description with parts of an image is also called grounding.

Das Erdungs- und Lokalisierungsmodul 502 kann eine Vielfalt von Techniken verwenden, um die Lokalisierung auszuführen. In einem Beispiel werden Objekterkennungs- und -klassifizierungsmodule verwendet, die konfiguriert sind, um bestimmte Objekte zu erkennen und/oder um Objekte zu klassifizieren, um Teile von Bildern 304 zu verarbeiten. Ein Bereichs-CNN (faltendes neuronales Netzwerk bzw. „convolutional neural network”) oder eine semantische Segmentierungstechnik können auch verwendet werden, um Objekte in einem Bild zu lokalisieren.The grounding and localization module 502 can use a variety of techniques to perform the localization. In one example, object recognition and classification modules configured to recognize particular objects and / or to classify objects are used to portions of images 304 to process. An area CNN (convolutional neural network) or a semantic segmentation technique may also be used to locate objects in an image.

In einem anderen Beispiel werden Tupel strukturierten semantischen Wissens 310 wie <Subjekt, Attribut> und <Subjekt, Prädikat, Objekt> und lokalisierte Objekte identifiziert durch berechnen, wie viele Klassenvorkommen lokalisiert wurden für die Subjekt- und Objektklassen, wie nachstehend weiter beschrieben. Dies kann auch das Identifizieren von Subjekten oder Objekten beinhalten, die anzeigen, dass der Tupel eine gesamte Szene beschreibt, in welchem Fall das gesamte Trainingsbild 304 mit dem Tupel des strukturierten semantischen Wissens 310 assoziiert wird. Zu diesem Zweck wird eine externe Liste von Szenentypen verwendet, beispielsweise Badezimmer. In another example, tuples are structured semantic knowledge 310 how <subject, attribute> and <subject, predicate, object> and localized objects identified by calculate how many class occurrences have been localized for the subject and object classes, as further described below. This may also include identifying subjects or objects that indicate that the tuple describes an entire scene, in which case the entire training image 304 with the tuple of structured semantic knowledge 310 is associated. An external list of scene types, such as bathrooms, is used for this purpose.

Bevor das Erdungs- und Lokalisierungsmodul 502 die begrenzenden Rechtecke für eine Objektklasse, die in dem Subjekt oder Objekt eines Tupels genannt wird, nachsehen kann, wird der Text, der für das Subjekt oder Objekt verwendet wird, auf eine vordefinierte Untermenge von Datenbankobjekten abgebildet, da begrenzende Rechtecke typischer Weise gemäß diesen Klassenbezeichnern gespeichert werden. Das Abbildungsproblem kann beispielsweise gelöst werden vom Subjekt- oder Objekttext „Kerl” zu einer vordefinierten Klasse wie etwa „Mann” unter Verwendung einer Hierarchie, um das zuordnen auszuführen.Before the grounding and localization module 502 If the bounding rectangles for an object class called in the subject or object of a tuple can be looked up, the text used for the subject or object is mapped to a predefined subset of database objects, since bounding rectangles are typically according to those class specifiers get saved. The mapping problem can be solved, for example, from the subject or object text "guy" to a predefined class such as "man" using a hierarchy to perform the mapping.

Sobald eine Menge von begrenzenden Rechtecken 504 in einem Bild 304 erhalten wurde für die Subjekt- und Objektklassen in einem Tripel <Subjekt, Prädikat, Objekt> oder von begrenzenden Rechtecken 504 für ein Dublett <Subjekt, Attribut>, werden dann von dem Erdungs- und Lokalisierungsmodul 502 Regeln und Heuristiken angewendet, um ein Tupel des strukturierten semantischen Wissens 310 in dem Trainingsbild 304 zu lokalisieren. In einem ersten solchen Beispiel wird für ein Tupel <Subjekt, Attribut>, wenn es nur ein einziges Vorkommen einer Subjektklasse in dem Bild 304 gibt (zum Beispiel nur ein Auto), der Tupel mit dem einzelnen begrenzenden Rechteck für diesen Tupel assoziiert, da das begrenzende Rechteck 504 das Subjekt enthält und das Attribut das Subjekt in diesem Rechteck beschreibt, zum Beispiel „<Automobil, glänzend>”.Once a lot of limiting rectangles 504 in a picture 304 was obtained for the subject and object classes in a triple <subject, predicate, object> or bounding rectangle 504 for a doublet <subject, attribute>, then from the grounding and localization module 502 Rules and heuristics are applied to a tuple of structured semantic knowledge 310 in the training picture 304 to locate. In a first such example, for a tuple <subject, attribute>, if there is only a single occurrence of a subject class in the image 304 gives (for example, only one car), the tuple associated with the single bounding rectangle for that tuple, as the bounding rectangle 504 contains the subject and the attribute describes the subject in that rectangle, for example, "<car glossy>".

Für ein Tupel <Subjekt, Prädikat, Objekt> mit nur einem einzigen Vorkommen der Subjektklasse und einem Vorkommen der Objektklasse wird der Tupel mit dem kleinsten rechteckigen Bildbereich assoziiert, der den kleinsten rechteckigen Bildbereich bedeckt, der das begrenzenden Rechteck für das Subjekt und das begrenzende Rechteck für das Objekt abdeckt, das heißt das begrenzende Rechteck der zwei begrenzenden Rechtecke. Wenn es zum Beispiel eine einzelne Person und einen einzelnen Hund in dem Bild gibt, dann wird <Person, Gassi führen, Hund> zu den die Person und den Hund begrenzenden Rechtecken lokalisiert. Dies enthält wahrscheinlich die Leine, welche die Person und den Hund verbindet. Allgemein ist die stillschweigende Annahme hier, dass das Prädikat, welches das Subjekt und das Objekt in Beziehung setzt, in der Nähe des Subjekts und des Objekts sichtbar ist.For a tuple <subject, predicate, object> with only a single occurrence of the subject class and an occurrence of the object class, the tuple is associated with the smallest rectangular image area covering the smallest rectangular image area, the bounding rectangle for the subject and the bounding rectangle covering the object, that is, the bounding rectangle of the two bounding rectangles. For example, if there is a single person and a single dog in the picture, then <lead person, walk dog, dog> will be located to the rectangles bounding the person and the dog. This probably includes the leash that connects the person and the dog. In general, the tacit assumption here is that the predicate that relates the subject and the object is visible near the subject and the object.

Für einen Tupel <Subjekt, Prädikat, Objekt> mit einem einzelnen Subjekt und einem einzelnen Objekt („Automobil” nicht „Automobile”) und mehr als einem Vorkommen von entweder der Subjektklasse oder der Objektklasse wird das Folgende bestimmt. Wenn ein nächstes Paar von begrenzenden Rechtecken 504 mit einem von der Subjektklasse und einem von der Objektklasse innerhalb einem Schwellenwertabstand ist, dann wird dieser Tupel mit dem begrenzenden Rechteck des nächsten Paares von begrenzenden Rechtecken assoziiert. Die Annahme hier ist, dass die Beziehung zwischen einem Subjekt und einem Objekt visuell gut lokalisiert werden kann. Die Verteilung der Abstände zwischen jedem der Paare kann auch verwendet werden, um zu bestimmen, ob es eine Unsicherheit in dieser Auswahl gibt, wegen eines zweiten Paares oder dritten Paares, das ebenfalls einen kleinen Abstand hat.For a tuple <subject, predicate, object> having a single subject and a single object ("automobile" not "automobiles") and more than one occurrence of either the subject class or the object class, the following is determined. If a next pair of bounding rectangles 504 with one of the subject class and one of the object class within a threshold distance, then that tuple is associated with the bounding rectangle of the next pair of bounding rectangles. The assumption here is that the relationship between a subject and an object can be visually well located. The distribution of the distances between each of the pairs can also be used to determine if there is any uncertainty in this selection because of a second pair or third pair that also has a small distance.

Die obigen Heuristiken geben Beispiele von Arten an Information, die bei der Lokalisierung berücksichtigt werden. Es können auch weitere Techniken verwendet werden, um die Lokalisierung zu unterstützen, die von dem Erdungs- und Lokalisierungsmodul 502 ausgeführt wird. Ein Beispiel davon ist durch ein Textsemantikmodul 510 illustriert, das für eine Funktionalität repräsentativ ist, Textverständnis zu verwenden, um beim Erden von Subjekten und Objekten in dem Bild zu helfen. In einem Beispiel werden Positionsattribute, die mit einem Subjekt assoziiert sind, verwendet, um das richtige begrenzende Rechteck für das Subjekt auszuwählen oder die Auswahl einzugrenzen. Wenn in einer Szene zum Beispiel mehrere Automobile vorhanden sind, die Bildbeschriftung aber besagt „Ein Kind sitzt auf der Haube des am weitesten linken Automobils”, dann kann das Textsemantikmodul 510 dabei helfen, das begrenzende Rechteck mit der kleinsten horizontalen Koordinate zum Erden als das am weitesten linke Automobil in dieser Bildbeschriftung und in dem daraus extrahierten Tupel <Kind, sitzt auf, Automobil> auszuwählen. Anstelle in dem obigen Beispiel das begrenzende Rechteck aller begrenzenden Rechtecke für Automobile zu verwenden, mag nur das begrenzende Rechteck von allein dem geankerten Automobil, oder der Untermenge der Automobile, die das Kriterium „am weitesten links” erfüllen verwendet werden. Diese Bestimmung kann auf andere Kriterien verallgemeinert werden, die gemessen werden können, wie etwa Farbe.The above heuristics give examples of types of information considered in the localization. Other techniques may also be used to assist in locating that of the grounding and locating module 502 is performed. An example of this is a text semantic module 510 which is representative of a functionality to use text understanding to aid in grounding subjects and objects in the image. In one example, positional attributes associated with a subject are used to select the correct bounding rectangle for the subject or to narrow down the selection. For example, if there are multiple automobiles in a scene, but the caption says "A child is sitting on the hood of the leftmost automobile," then the text semantics module can 510 helping to select the limiting rectangle with the smallest horizontal coordinate to earth as the leftmost automobile in this caption and in the tuple <child sitting on, automobile> extracted from it. Instead of using the bounding rectangle of all automotive bounding rectangles in the example above, only the bounding rectangle of the anchored automobile alone or the subset of automobiles satisfying the leftmost criterion may be used. This determination can be generalized to other criteria that can be measured, such as color.

Beim Erden eines Tupels reduziert das Erdungs- und Lokalisierungsmodul 502 zuerst eine Menge von begrenzenden Rechtecken für das Subjekt und das Objekt unter Verwendung deren Attribute, um begrenzende Rechtecke 504 auszufiltern, welche diese Attribute nicht erfüllen. Solche Attribute beinhalten Position, Farbe und Nähe zu anderen identifizierbaren Bereichen, zum Beispiel kann für „das Automobil auf dem Gras” der Grasbereich erkannt werden unter Verwendung eines semantischen Segmentationsalgorithmus. Grounding a tuple reduces the ground and localization module 502 First, a set of bounding rectangles for the subject and the object, using their attributes, around bounding rectangles 504 filter out those attributes that do not. Such attributes include location, color, and proximity to other identifiable areas, for example, for "the automobile on the grass," the grass area may be recognized using a semantic segmentation algorithm.

Relative Positionsinformation wird ebenfalls verwendet, um das richtige Paar von Subjektklasse und Objektklasse begrenzenden Rechtecken für eine Positionsbeziehung auszuwählen. Wenn zum Beispiel die Bildbeschriftung „Ein Baby sitzt auf einem Tisch” ist, dann werden das Baby und der Tisch zu Rechtecken in dem Bild geerdet, wobei das Rechteck des Babys über dem Rechteck des Tischs ist. Als solches identifiziert dies eindeutig den Bildbereich, der mit diesem Tupel zu assoziieren ist, wenn es mehrere Babys und/oder mehrere Tische in der Szene gibt.Relative position information is also used to select the correct pair of subject class and object class bounding rectangles for a positional relationship. For example, if the caption is "A baby is sitting on a table," then the baby and the table are grounded to rectangles in the image, with the baby's rectangle over the rectangle of the table. As such, this uniquely identifies the image area to be associated with this tuple when there are multiple babies and / or multiple tables in the scene.

Für einen Tupel <Subjekt, Prädikat, Objekt>, bei dem das Subjekt und das Objekt in dem Bild geerdet sind, der Tupel mit einem kleinsten rechteckigen Bildbereich, welcher das begrenzende Rechteck für das Subjekt und das begrenzende Rechteck für das Objekt bedeckt. Eine Vielfalt von anderen Beispielen ist ebenfalls angedacht, wie etwa eine Menge von Kontext den begrenzenden Rechtecken hinzuzufügen, indem ein größerer Bereich eingeschlossen wird, als anderweitig in einem „engen” begrenzenden Rechteck enthalten wäre.For a tuple <subject, predicate, object> in which the subject and the object in the image are grounded, the tuple has a smallest rectangular image area covering the bounding rectangle for the subject and the bounding rectangle for the object. A variety of other examples are also contemplated, such as adding a set of context to the bounding rectangles by trapping a larger area than would otherwise be contained within a "narrow" bounding rectangle.

6 zeigt eine beispielhafte Implementierung 600 der Lokalisierung zwischen Teilen eines Bildes 108 und strukturiertem semantischem Wissen 310. Wie dargestellt, enthält ein begrenzendes Rechteck 602 für „<Mann, sitzt auf, Stuhl>” den Mann und den Stuhl. Ein begrenzendes Rechteck 604 für „<Mann, füttert, Baby>” enthält sowohl den Mann als auch das Baby. Ein begrenzendes Rechteck 606 für „<Baby, hält, Spielzeug>” enthält das Baby und das Spielzeug. Nachdem die Extraktion von strukturiertem semantischem Wissen 310 beschrieben wurde, wird im Folgenden die Verwendung dieses extrahierten, strukturierten semantischen Wissens 310 durch das Modelltrainingsmodul 312 zum Trainieren eines Modells 316 diskutiert. 6 shows an exemplary implementation 600 the localization between parts of an image 108 and structured semantic knowledge 310 , As shown, contains a bounding rectangle 602 for "<man, sitting on, chair>" the man and the chair. A limiting rectangle 604 for "<husband, feeds, baby>" contains both the man and the baby. A limiting rectangle 606 for "<baby, holds, toy>" contains the baby and the toy. After the extraction of structured semantic knowledge 310 In the following, the use of this extracted, structured semantic knowledge will be described 310 through the model training module 312 to train a model 316 discussed.

7 zeigt eine beispielhafte Implementierung 700, welche das Modelltrainingsmodul 312 in größerem Detail als ein maschinelles Lernmodul 314 zum Modellieren einer Beziehung zwischen dem strukturierten semantischen Wissen 310, das aus dem Test 306 extrahiert wurde, und den Bildern 304, verwendet. In diesem Beispiel ist das maschinelle Lernmodul 314 konfiguriert, eine Beziehung 702 zwischen Textmerkmalen 704 des strukturierten semantischen Wissens 310 mit Bildmerkmalen des Bildes 304 der Trainingsdaten 302 zu modellieren, um das Modell 316 zu trainieren. 7 shows an exemplary implementation 700 which the model training module 312 in more detail than a machine learning module 314 to model a relationship between the structured semantic knowledge 310 that from the test 306 was extracted, and the pictures 304 , used. In this example, the machine learning module is 314 configured a relationship 702 between text features 704 of structured semantic knowledge 310 with picture features of the picture 304 the training data 302 to model the model 316 to train.

Das Modell 316 kann zum Beispiel als ein multivariates Modell gebildet werden, mit einem „P(<Subjekt, Attribut>, Bild I), P(<Subjekt, Prädikat, Objekt>, Bild I)”. Das Modell 316 wird in diesem Beispiel so errichtet, eine Wahrscheinlichkeit auszugeben, dass das Bild „I” und der strukturierte Text <Subjekt, Attribut> oder <Subjekt, Prädikat, Objekt> dasselbe Konzept der realen Welt visuell und textuell repräsentieren. Das Modell 316 ist in diesem Beispiel konfiguriert, gut auf nicht gesehene oder selten zu sehende Kombinationen von Subjekten, Attributen, Prädikaten und Objekten zu verallgemeinern, und erfordert keine explizite Reduktion eines großen Vokabulars von einzelnen Worten auf eine kleine, vordefinierte Menge von Konzepten mittels der Verwendung der Identifikation latenter Konzepte und Zuordnen bzw. Abgleichen dieser Struktur, wie nachstehend weiter beschrieben.The model 316 can be formed, for example, as a multivariate model, with a "P (<Subject, Attribute>, Image I), P (<Subject, Predicate, Object>, Image I)". The model 316 is constructed in this example to output a probability that the image "I" and the structured text <subject, attribute> or <subject, predicate, object> represent the same concept of the real world visually and textually. The model 316 in this example, is configured to generalize well to unseen or infrequent combinations of subjects, attributes, predicates, and objects, and does not require an explicit reduction of a large vocabulary of individual words to a small, predefined set of concepts through the use of the identification latent concepts and matching of this structure, as further described below.

Das Modell 316 ist, nachdem es trainiert ist, konfiguriert, Bilder basierend auf strukturiertem Text zu lokalisieren durch Berechnen von Wahrscheinlichkeiten, dass Bilder dem strukturierten Text entsprechen. Beispielsweise involviert eine textbasierte Bildersuche ein Zuordnen einer Textabfrage (zum Beispiel repräsentiert als eine Menge von strukturiertem Wissen unter Verwendung eines natürlichen Sprache-Tupelextraktionstechnik) zu einem Bild. Dies wird durch ein gemeinsames Modell unterstützt, wie weiter beschrieben mit Bezug auf 8, indem eine Schleife über Bilder „I” durchlaufen und geprüft wird, welches eine hohe Wahrscheinlichkeit „P(strukturierter Text <S, P, O>, Bild I)” für ein gegebenes Konzept <S, P, O> liefert. Wissensextraktion/Taggen wird unterstützt, indem eine Schleife über mögliche Konzepte <S, P, O> durchlaufen und geprüft wird, welches eine hohe Wahrscheinlichkeit „P(strukturierter Text <S, P, O>, Bild I)” für ein gegebenes Bild oder einen gegebenen Bildabschnitt „I” liefert.The model 316 After being trained, it is configured to locate images based on structured text by calculating probabilities that images correspond to the structured text. For example, a text-based image search involves associating a text query (for example, represented as a set of structured knowledge using a natural language tuple extraction technique) into an image. This is supported by a common model, as further described with respect to 8th by traversing and checking a loop over pictures "I" which provides a high probability "P (structured text <S, P, O>, picture I)" for a given concept <S, P, O>. Knowledge extraction / tagging is assisted by looping through and examining possible concepts <S, P, O>, which has a high probability of "P (structured text <S, P, O>, image I)" for a given image or image provides a given image portion "I".

Für das Bilden des Modells 316 durch das Modelltrainingsmodul 312 gibt es zwei Teile. Der erste ist es, eine Merkmalsrepräsentation für den strukturierten Text „<S, P, O>”, „<S, A, ->”; „<S, -, ->” (wobei „-” eine nicht verwendete Stelle anzeigt, um alle Konzepte als Tripel zu repräsentieren) und für Bilder zu erzeugen. Der zweite Teil ist es, die Merkmalsrepräsentation des strukturierten Texts mit Bildmerkmalen zu korrelieren, zum Beispiel das Textmerkmal „t” 704 und das Bildmerkmal „x: P(t, x)” 706 zu korrelieren. Um zum Beispiel eine Beziehung 702 von Textmerkmalen (zum Beispiel <Mann, hält, Ball>) mit Bildmerkmalen 706 eines Bildes zu korrelieren, die einen Ball zeigen, der von einem Mann gehalten wird. Diese zwei Teile werden in größerem Detail unten beschrieben.For making the model 316 through the model training module 312 there are two parts. The first is a feature representation for the structured text "<S, P, O>", "<S, A, ->";"<S, -, ->" (where "-" indicates an unused position to represent all concepts as triples) and for images. The second part is to correlate the feature representation of the structured text with image features, for example the text feature "t" 704 and the image feature "x: P (t, x)" 706 to correlate. For example, a relationship 702 of text features (for example, <man, holds, ball>) with image features 706 of a picture showing a ball being held by a man. These two parts are described in greater detail below.

Die Tupel „<S, P, O>” und „<S, A>” des strukturierten semantischen Wissens 310 sind so konfiguriert, dass ähnliche Konzepte des strukturierten Wissens in der Nähe liegende und verwandte Repräsentationen haben, zum Beispiel als Vektoren in einem Vektorraum. Dies unterstützt die Verallgemeinerung und Verwendung eines großen Vokabulars. Zum Beispiel sind Textmerkmals- 704 Repräsentationen von „<Straße, kurvig>” und „<Straße, sich windend>” so konfiguriert, dass sie ähnlich sind, und die Repräsentationen zwischen „<Hund, geht Gassi>” und „<Person, führt Gassi>” stehen miteinander in Beziehung durch die geteilte Aktion des Gassi Gehens bzw. Gassi Führens. Dies kann so ausgeführt werden, dass ähnliche Worte in dem Raum nahe beieinander sind und der Vektorraum einige Beziehungen zwischen Worten einfängt. Zum Beispiel vec(„Mann”) + (vec(„Königin”) – vec(„Frau”)) = vec(„König”).The tuples "<S, P, O>" and "<S, A>" of the structured semantic knowledge 310 are configured such that similar concepts of structured knowledge have nearby and related representations, for example, as vectors in a vector space. This supports the generalization and use of a large vocabulary. For example, text feature 704 Representations of "<road, curvy>" and "<road, writhing>" are configured to be similar, and the representations between "<dog, walk-in>" and "<person, walk" are interrelated Relationship through the split action of gassi walking or gassi guiding. This can be done so that similar words in the space are close to each other and the vector space captures some relationships between words. For example vec ("man") + (vec ("queen") - vec ("woman")) = vec ("king").

Das Modelltrainingsmodul 312 kann auch so konfiguriert sein, auf semantischen Vektorrepräsentationen einzelner Wörter aufzubauen, um eine Vektorrepräsentation eines Wissenstupels zu entwickeln, welche die Beziehung zwischen zwei Konzepten „<S1, P1, O1>” und „<S2, P2, O2>” erfasst. Genauer wird ein Merkmalsvektor gebildet für ein Tripel „<S, P, O>” als eine Funktion von Einzelwortrepräsentationen „vec(S)”, „vec(P)” und „vec(O)”. Der „vec(<S, P, O>)” wird gebildet als eine Verkettung der einzelnen Wortvektoren „vec(<S, P, O>) = [vec(S) vec(P) vec(O)]”.The model training module 312 can also be configured to build on semantic vector representations of individual words to develop a vector representation of a knowledge tuple that captures the relationship between two concepts "<S1, P1, O1>" and "<S2, P2, O2>". More specifically, a feature vector is formed for a triple "<S, P, O>" as a function of single-word representations "vec (S)", "vec (P)" and "vec (O)". The "vec (<S, P, O>)" is formed as a concatenation of the individual word vectors "vec (<S, P, O>) = [vec (S) vec (P) vec (O)]".

Wenn ein „<S, P, O>” Element fehlt, wie das Objekt „O”, wenn ein „<Subjekt, Attribut>” repräsentiert wird, oder sowohl ein Prädikat „P” als auch ein Objekt „O” fehlen, wenn ein „<Subjekt>” repräsentiert wird, wird bzw. werden die entsprechenden Vektorstellen mit Nullen gefüllt. Daher liegt die Vektorrepräsentation für ein alleiniges Subjekt entlang der „S” Achse im „S, P, O” Raum. Visuelle Attribute können als Modifikatoren für ein schmuckloses Subjekt adressiert werden, welche die Repräsentation von „<S, P>” in die „SP” Ebene des „S, P, O” Raums bewegen. Eine andere Option beinhaltet das Summieren der Vektorrepräsentationen der einzelnen Worte.If an "<S, P, O>" element is missing, such as the object "O", if a "<subject, attribute>" is represented, or both a predicate "P" and an object "O" are missing, then a "<subject>" is represented, the corresponding vector locations are or are filled with zeros. Therefore, the vector representation for a single subject lies along the "S" axis in "S, P, O" space. Visual attributes may be addressed as modifiers for a plain subject moving the representation of "<S, P>" to the "SP" level of "S, P, O" space. Another option involves summing the vector representations of the individual words.

Für ein zusammengesetztes „S” oder „P” oder „O” wird die Vektorrepräsentation für jedes einzelne Wort in der Phrase gemittelt, um einen einzigen Vektor in eine Zielstelle in einer „[vec(S) vec(P) vec(O)]” Repräsentation einzusetzen. Zum Beispiel ist „vec(„rennt in Richtung zu”)” gleich „0,5*(vec(„rennt”) + vec(„in Richtung zu”))”. Es kann auch ein Mittelwert mit ungleichen Gewichtungen verwendet werden, wenn einige Wörter in der Phrase mehr Bedeutung tragen als andere. In einer Implementierung wird eine semantische Repräsentation (zum Beispiel Vektor oder Wahrscheinlichkeitsverteilung) für zusammengesetzte Phrasen wie „rennt in Richtung zu” oder „rennt weg von” direkt gelernt, indem diese Phrasen atomar als neue Vokabularelemente in einem existierenden semantischen Worteinbettungsmodell behandelt werden.For a composite "S" or "P" or "O", the vector representation for each word in the phrase is averaged to place a single vector in a target location in a "[vec (S) vec (P) vec (O)] "To use representation. For example, "vec (" runs towards ") is" equal to "0.5 * (vec (" runs ") + vec (" toward "))". An average of unequal weights may also be used if some words in the phrase carry more meaning than others. In one implementation, a semantic representation (for example, vector or probability distribution) for compound phrases such as "run towards" or "run away from" is learned directly by treating these phrases atomically as new vocabulary elements in an existing semantic word embedding model.

Es steht eine Vielfalt von Techniken zur Auswahl, die verwendet werden können, um Semantiken von Bildmerkmalen 706 zu erfassen. In einem derartigen Beispiel wird ein tiefes maschinelles Lernnetzwerk verwendet, das eine Vielzahl von Merkmalsebenen aufweist, die direkt aus den Daten gelernt werden. Insbesondere haben sich faltende neuronale Netzwerke („convolution neural networks”, CNNs) mit Faltungs-, Pooling- und Aktivierungsschichten (zum Beispiel „rectified linear units”, welche eine Aktivierungsschwelle bilden) für die Bildklassifikation bewährt. Beispiele beinhalten AlexNet, VGGNet und GoogLeNet.There are a variety of techniques available that can be used to obtain semantics of image features 706 capture. In such an example, a deep machine learning network is used that has a plurality of feature levels that are learned directly from the data. In particular, convolutional neural networks (CNNs) with folding, pooling, and activation layers (for example, rectified linear units, which form an activation threshold) have proven useful for image classification. Examples include AlexNet, VGGNet and GoogLeNet.

Zudem wurde gezeigt, dass Klassifikationsmerkmale von tiefen Klassifikationsnetzwerken hochqualitative Ergebnisse für andere Aufgaben (zum Beispiel Segmentierung) geben, insbesondere nach Feintunen dieser Merkmale für die andere Aufgabe. Ausgehend von Merkmalen, die zur Klassifikation gelernt wurden, und mit nachfolgendem Feintunen dieser Merkmale für eine andere Aufgabe des Bildverständnisses, kann daher eine erhöhte Effizienz in Begriffen des Trainings zeigen, als wenn das Training von Grund auf für eine neue Aufgabe begonnen wird. Aus den obigen Gründen werden CNN Merkmale als feste Merkmale angenommen in einem linearen CCA Grundlagenmodell. Das maschinelle Lernmodul 314 führt dann ein Feintunen des Modells 316 von einem CNN in einem tiefen Netzwerk aus, um Text und Bildmerkmale 704, 706 zu korrelieren.In addition, it has been shown that classification features of deep classification networks give high quality results for other tasks (eg, segmentation), especially after fine-tuning these features for the other task. Therefore, starting from features that have been learned for classification, and then fine-tuning these features for another image understanding task, can show increased efficiency in terms of training rather than starting the training from scratch for a new task. For the above reasons, CNN features are assumed to be fixed features in a linear CCA baseline model. The machine learning module 314 then performs a fine-tuning of the model 316 from a CNN in a deep network to text and image features 704 . 706 to correlate.

Das maschinelle Lernmodul 316 ist konfiguriert, Textmerkmale „t” 704 und Bildmerkmale „x” 706 in einen gemeinsamen Vektorraum abzubilden und Differenzen in den abgebildeten Merkmalen zu pönalisieren, wenn dasselbe Konzept oder ähnliche Konzepte durch „t” und „x” repräsentiert werden.The machine learning module 316 is configured, text features "t" 704 and image features "x" 706 to map into a common vector space and to penalize differences in the mapped features if the same concept or similar concepts are represented by "t" and "x".

Eine Technik, die zu diesem Zweck genutzt werden kann, beinhaltet eine lineare Abbildung, welche als kanonische Korrelationsanalyse bzw. Canonical Correlation Analysis (CCA) bezeichnet wird, die auf Text und Bildmerkmale 704, 706 angewandt wird. In der CCA werden Matrizen „T” und „X” entdeckt, welche Merkmalsvektoren „t” und „x” jeweils in einen gemeinsamen Vektorraum „t' = Tt” und „x' = Xx” abbilden. Wenn die Abbildung in einen gemeinsamen Raum der Dimension „D” ausgeführt wird und „t” ein Vektor im „D_t-dimensionalen Raum” und „x” ein Vektor im „D_x-dimensionalen Raum” ist, dann ist „T” eine „(D mal D_t)” Matrix, „X” ist eine „(D mal D_x)” Matrix, und die abgebildeten Repräsentationen t' und x' sind D-dimensionale Vektoren.One technique that can be used for this purpose involves a linear mapping called Canonical Correlation Analysis (CCA) based on text and image features 704 . 706 is applied. In the CCA, matrices "T" and "X" are detected, which map feature vectors "t" and "x" into a common vector space "t '= Tt" and "x' = Xx", respectively. If the mapping is performed in a common space of dimension "D" and "t" is a vector in "D_t-dimensional space" and "x" is a vector in "D_x-dimensional space", then "T" is a "(" D times D_t) "matrix," X "is a" (D times D_x) "matrix, and the mapped representations t 'and x' are D-dimensional vectors.

Es können auch Verlustfunktionen verwendet werden zur Modellanpassung unter Verwendung von Trainingspaaren „(t, x)” basierend auf quadratischem Euklidischem Abstand „||t' – x'||_2^2”, oder einer Kosinusähnlichkeit „skalaprodukt(t', x')”, oder der „winkel_zwischen(t', x')”, welcher die Vektorlänge von dem Kosinusähnlichkeitsmaß entfernt. Wenn das Skalarprodukt verwendet wird, dann wird die CCA Korrelationsfunktion wie folgt ausgedrückt: f(t, x) = f_CCA_dp(t, x) = tr(Tt)*Xx = tr(t)*M*x = sum_{i, j} t_i M_{ij} x_j, wobei „tr” für Transponieren steht und „M = tr(T)*X ist (D_t um D_x)”, und Indizes Vektorkomponenten angeben. Diese Form unterstützt eine schnellere als erschöpfende Suche nach Bildern oder Text, wenn das andere gegeben ist. Zum Beispiel werden in einer textbasierten Bildersuche Bilder mit Merkmalsvektoren „x” derart gefunden, dass das „skalarprodukt(v, x)” groß ist, wobei „v = tr(t)*M”.Loss functions may also be used for model matching using training pairs "(t, x)" based on quadratic Euclidean distance "|| t '- x' || - 2 ^ 2", or a cosine similarity "scalar product (t ', x'). ) ", Or the" angle_between (t ', x') "which removes the vector length from the cosine similarity measure. If the scalar product is used then the CCA correlation function is expressed as follows: f (t, x) = f_CCA_dp (t, x) = tr (Tt) * Xx = tr (t) * M * x = sum_ {i, j} t_i M_ {ij} x_j, where "tr" stands for transpose and "M = tr (T) * X (D_t by D_x)", and indices indicate vector components. This form supports a quicker than exhaustive search for images or text when the other is given. For example, in a text-based image search, images having feature vectors "x" are found such that the "scalar product (v, x)" is large, where "v = tr (t) * M".

Für einen quadratischen Euklidischen Verlust kann die CCA Korrelationsfunktion wie folgt ausgedrückt werden: f(t, x) = f_CCA_E(t, x) = ||Tt – Xx||_2^2. Die obige einfache geschlossene Form der Korrelationsfunktion mag wiederum eine schnellere als erschöpfende Suche nach Bildern oder Text unterstützen, wenn das andere gegeben ist. Zum Beispiel werden in einer textbasierten Bildersuche Bilder mit Merkmalsvektoren „x” derart gefunden, dass „f_CCA_E(t, x)” klein ist für einen gegebenen Textvektor „t”. Wenn „(T, X)” vom Anpassen des CCA Modells und die Abfrage „t” gegeben ist, liefert lineare Algebra eine Menge von Vektoren, welche „f(t, x)” minimieren, und es werden Bilder mit einem Merkmalsvektor „x” nahe dieser Menge gefunden.For a quadratic Euclidean loss, the CCA correlation function can be expressed as follows: f (t, x) = f_CCA_E (t, x) = || Tt - Xx || _2 ^ 2. The above simple closed form of the correlation function, in turn, may support a faster than exhaustive search for images or text if the other is given. For example, in a text-based image search, images having feature vectors "x" are found such that "f_CCA_E (t, x)" is small for a given text vector "t". Given "(T, X)" of fitting the CCA model and the query "t", linear algebra yields a set of vectors that minimize "f (t, x)", and images with a feature vector "x "Found near this amount.

8 zeigt ein Beispiel eines tiefen Netzwerks 800 zum Korrelieren von Text und Bildern als Teil von maschinellem Lernen. Das tiefe Netzwerk 800 beinhaltet ein maschinelles Textlernmodul 802 (zum Beispiel Spalte) und ein maschinelles Bildlernmodul 804 (zum Beispiel Spalte, die separat von der Spalte ist, die das maschinelle Textlernmodul 802 implementiert), die so konfiguriert sind, die Korrelation „f(<S, P, O>, I)” zwischen strukturiertem semantischem Wissen „<S, P, O>” einem Bild oder einem Bildteil „I” zu lernen durch nichtlineares Abbilden in einen gemeinsamen Raum. 8th shows an example of a deep network 800 for correlating text and images as part of machine learning. The deep network 800 includes a machine text module 802 (for example, column) and a machine image learning module 804 (For example, column that is separate from the column that the machine text module 802 implemented) configured to learn the correlation "f (<S, P, O>, I)" between structured semantic knowledge "<S, P, O>" of an image or image part "I" by non-linear mapping in a common room.

Das maschinelle Textlernmodul 802 beginnt mit einer semantischen Textvektorrepräsentation „t”, welche vec(S) 806, vec(P) 808 und vec(O) 810 beinhaltet, die dann durch Mengen von vollständig verbundenen und Aktivierungsschichten 812 geführt wird, um eine nichtlineare Abbildung t->t' auszugeben als einen Merkmalsvektor für den Text 814.The machine text module 802 starts with a semantic text vector representation "t", which vec (S) 806 , vec (P) 808 and vec (O) 810 which then passes through sets of fully connected and activation layers 812 to output a non-linear map t-> t 'as a feature vector for the text 814 ,

Das maschinelle Bildlernmodul 804 ist als ein tiefes faltendes neuronales Netzwerk 814 konfiguriert (zum Beispiel als AlexNet oder VGGNet oder GoogLeNet, wobei die finalen Schichten, welche auf Klassenwahrscheinlichkeiten abbilden, entfernt sind), das von Bildpixeln des Bildes 816 ausgeht und einen Merkmalsvektor x' für das Bild 814 ausgibt. Das Bildmodul wird als das Trainingsergebnis eines existierenden CNN initialisiert, und die Bildmerkmale werden feingetuned, um Bilder mit strukturiertem Text zu korrelieren, wobei Bildattribute und Interaktionen erfasst werden, anstelle einer lediglichen Objektklassendiskriminierung, wie in dem bestehenden CNN.The machine-learning module 804 is as a deep folding neural network 814 configured (for example, as AlexNet or VGGNet or GoogLeNet, with the final layers that map to class probabilities are removed), that of image pixels of the image 816 goes out and a feature vector x 'for the image 814 outputs. The image module is initialized as the training result of an existing CNN, and the image features are fine-tuned to correlate images with structured text, capturing image attributes and interactions, rather than merely object-class discrimination, as in the existing CNN.

Anpassschichten 822, 824 in den maschinellen Text- und Bildlernmodulen 802, 804 passen die Repräsentationen gemäß einer nichtlinearen Funktion an, um diese in einen gemeinsamen Raum mit Bildmerkmalen, die dasselbe Konzept repräsentieren, abzubilden. Eine Verlustschicht 828 verbindet die Module und pönalisiert Differenzen in den Ausgaben t' und x' der maschinellen Text- und Bildlernmodule 802, 804, um eine Abbildung in einen gemeinsamen Raum für dasselbe Konzept zu fördern.matching layers 822 . 824 in the machine text and image learning modules 802 . 804 adjust the representations according to a non-linear function to map them into a common space with image features representing the same concept. A loss layer 828 connects the modules and pairs differences in the outputs t 'and x' of the machine text and image learning modules 802 . 804 to promote a picture in a common space for the same concept.

Eine diskriminierende Verlustfunktion, wie eine Ranking-Verlust-Funktion, kann verwendet werden, um sicherzustellen, dass falsch zugeordneter Text und Bilder eine kleinere Korrelation oder einen größeren Abstand haben als korrekt zugeordneter Text und Bilder. Zum Beispiel kann eine einfache Ranking-Verlust-Korrelationen erfordern „skalarprodukt(t_i', x_i') > skalarprodukt(t_j', x_i')” für ein Trainingsbeispiel „(t_i, x_i)” und wo der ursprüngliche Tupel zum Trainieren des Tupels t_j nicht zu dem Trainingsbild „x_i” passt. Eine Ranking-Verlust-Funktion kann auch eine semantische Textähnlichkeit oder eine externe Objekthierarchie verwenden, wie etwa ImageNet, um den Verlust zu formulieren, um unterschiedliche falsche Zuordnungen unterschiedlich zu pönalisieren.A discriminating loss function, such as a ranking loss function, can be used to ensure that misallocated text and images have a smaller correlation or distance than correctly mapped text and images. For example, a simple ranking loss Correlations require "scalar product (t_i ', x_i')> scalar product (t_j ', x_i')" for a training example "(t_i, x_i)" and where the original tuple for training the tuple t_j does not match the training image "x_i". A ranking loss function may also use a semantic text similarity or an external object hierarchy, such as ImageNet, to formulate the loss to differentiate different misalignments.

Andere Verlust-Funktionen und Architekturen sind möglich, beispielsweise mit weniger oder mit mehr Anpassschichten zwischen der semantischen Textrepräsentation „t = [vec(S), vec(P), vec(O)]” und dem einbettenden Raum t' oder mit Verbindungen zwischen Text- und Bildschichten vor dem gemeinsamen einbettenden Raum. In einem Beispiel ist auch ein Platzhalter-Verlust möglich, der den Objektteil von Einbettungsvektoren für Fakten zweiter Ordnung <S, P> und den Prädikatteil und den Objektteil von Einbettungsvektoren für Fakten erster Ordnung <S> ignoriert.Other loss functions and architectures are possible, for example, with fewer or more matching layers between the semantic text representation "t = [vec (S), vec (P), vec (O)]" and the embedding space t 'or with connections between Text and image layers in front of the common embedding room. In one example, a wildcard loss is also possible that ignores the object part of second-order facts <S, P>, and the predicate part and the object part of first-order facts <S> of depository factors.

Zurück zu 3 wird an diesem Punkt strukturiertes semantisches Wissen 310 durch das Modelltrainingsmodul 312 erhalten, um das Problem des Extrahierens eines Konzepts, das für einen Bildbereich relevant ist, zu lösen. Das obige Modellieren wird nun angewandt für „P(Konzept <S, P, O>, Bild I)”, um alle hochwahrscheinlichen Konzepte über einen Teil eines Bildes zu extrahieren. Dies kann ausgeführt werden, ohne das Konzept, das am wahrscheinlichsten ist, auszuwählen. Es sei zum Beispiel ein Bildbereich betrachtet, der einen lächelnden Mann enthält, der ein blaues Hemd trägt. Bildpixeldaten „I” für diesen Bereich werden eine höhere Korrelation sowohl mit „<Mann, lächelnd>” als auch mit „<Mann, trägt, blaues Hemd>” haben, und daher können beide diese Konzepte für denselben Bildbereich extrahiert werden.Back to 3 becomes structured semantic knowledge at this point 310 through the model training module 312 to solve the problem of extracting a concept relevant to an image area. The above modeling is now applied to "P (Concept <S, P, O>, Image I)" to extract all highly probable concepts about a part of an image. This can be done without selecting the concept that is most likely. For example, consider an image area containing a smiling man wearing a blue shirt. Image pixel data "I" for this region will have a higher correlation with both "<man, smiling>" and with "<man, wears, blue shirt>" and therefore both of these concepts can be extracted for the same image area.

Der Wissensextraktionstask kann gelöst werden durch Anwenden des obigen Modells mit Bildpixeldaten aus Bereichen, die durch einen Objektvorschlagsalgorithmus identifiziert werden, oder Objektbereichen, die von dem R-CNN Algorithmus identifiziert werden, oder sogar in einem Ansatz eines gleitenden Fensters, der Bildbereiche dichter abtastet. Um Objektinteraktionen zu erfassen, werden begrenzende Rechtecke aus Paaren von Objektvorschlägen oder Paaren von R-CNN Objektbereichen gebildet, Ein Ansatz ist es, alle Paare von Objektbereichen zu probieren, um auf mögliche Interaktionen zu testen. Ein anderer Ansatz ist es, einige Heuristiken anzuwenden, um selektiver zu sein, wie etwa, keine Paare zu untersuchen, die im Bild fern sind. Da das Modell angewandt werden kann, um kein, ein oder mehrere hochwahrscheinliche Konzepte über einen Bildbereich zu extrahieren, können die extrahierten <S, P, O> Konzepte zu Bildbereichen lokalisiert werden, welche die entsprechenden visuellen Daten bereitstellen.The knowledge extraction task can be solved by applying the above model to image pixel data from areas identified by an object suggestion algorithm, or object areas identified by the R-CNN algorithm, or even in a sliding window approach that more densely scans image areas. To capture object interactions, bounding rectangles are formed from pairs of object suggestions or pairs of R-CNN object areas. One approach is to sample all pairs of object areas to test for possible interactions. Another approach is to use some heuristics to be more selective, such as not examining couples that are distant in the picture. Since the model can be applied to not extract one, or more highly probable concepts over an image area, the extracted <S, P, O> concepts can be located to image areas providing the corresponding visual data.

Beispielhafte ProzedurenExample procedures

Die folgende Diskussion beschreibt Wissensextraktionstechniken, die implementiert werden können unter Verwendung der zuvor beschriebenen Systeme und Vorrichtungen. Aspekte von jeder der Prozeduren können in Hardware, Firmware oder Software, oder einer Kombination davon, implementiert werden. Die Prozeduren sind als eine Menge von Blöcken gezeigt, die Operationen spezifizieren, die von einer oder von mehreren Vorrichtungen ausgeführt werden, und die nicht notwendiger Weise auf die dargestellten Reihenfolgen beschränkt sind, um die Operationen durch die jeweiligen Blöcke auszuführen. In Teilen der folgenden Diskussion wird sich auf 18 bezogen.The following discussion describes knowledge extraction techniques that can be implemented using the systems and devices described above. Aspects of each of the procedures may be implemented in hardware, firmware or software, or a combination thereof. The procedures are shown as a set of blocks that specify operations performed by one or more devices and that are not necessarily limited to the illustrated sequences to perform the operations through the respective blocks. In parts of the following discussion will focus on 1 - 8th based.

9 zeigt eine Prozedur 900 in einer beispielhaften Implementierung, in der eine digitale Medienumgebung verwendet wird, um Wissen aus einem eingegebenen Bild automatisch und ohne Benutzereingriff zu extrahieren. Eine digitale Medienumgebung wird beschrieben, um ein Modell zu lernen, das verwendet werden kann, um eine beschreibende Zusammenfassung eines eingegebenen Bildes automatisch und ohne Benutzereingriff zu berechnen. Es werden Trainingsdaten erhalten, die Bilder und assoziierten Text enthalten (Block 902). Die Trainingsdaten 320 können zum Beispiel Bilder 304 und unstrukturierten Text 306 enthalten, der mit den Bildern 304 assoziiert ist, zum Beispiel als Bildbeschriftungen, Metadaten und so weiter. 9 shows a procedure 900 in an exemplary implementation in which a digital media environment is used to automatically extract knowledge from an input image without user intervention. A digital media environment is described to learn a model that can be used to compute a descriptive summary of an input image automatically and without user intervention. Training data is obtained containing images and associated text (Block 902 ). The training data 320 can, for example, pictures 304 and unstructured text 306 included with the pictures 304 is associated, for example, as image captions, metadata and so on.

Strukturiertes semantisches Wissen wird aus dem assoziierten Text unter Verwendung einer Verarbeitung natürlicher Sprache durch die zumindest eine Rechnervorrichtung extrahiert, wobei das strukturierte semantische Wissen Textmerkmale beschreibt (Block 904). Das strukturierte semantische Wissen 310 kann zum Beispiel unter Verwendung der Verarbeitung natürlicher Sprache extrahiert werden, um Tupel zu erzeugen, wie etwa <Subjekt, Attribut>, <Subjekt, Prädikat, Objekt> und so weiter.Structured semantic knowledge is extracted from the associated text using natural language processing by the at least one computing device, wherein the structured semantic knowledge describes textual features (Block 904 ). The structured semantic knowledge 310 For example, it may be extracted using natural language processing to generate tuples, such as <subject, attribute>, <subject, predicate, object> and so on.

Ein Modell wird unter Verwendung des strukturierten semantischen Wissens und der Bilder als Teil von maschinellem Lernen trainiert (Block 906). Ein Modelltrainingsmodul 312 kann zum Beispiel ein neuronales Netzwerk unter Verwendung der Bilder 304 und des strukturierten semantischen Wissens 310 trainieren. Dieses Wissen kann auch lokalisiert werden, wie in größerem Detail in Bezug auf 10 beschrieben.A model is trained using structured semantic knowledge and images as part of machine learning (Block 906 ). A model training module 312 can for example a neural network using images 304 and structured semantic knowledge 310 work out. This knowledge can also be localized, as related in more detail 10 described.

Das Modell wird verwendet, um eine strukturierte Bildrepräsentation des eingegebenen Bildes zu bilden, die explizit zumindest einen Teil der Textmerkmale mit Bildmerkmalen des eingegebenen Bildes korreliert, als die beschreibende Zusammenfassung des eingegebenen Bildes (Block 908). Die strukturierte Bildrepräsentation kann zum Beispiel Konzepte in dem Text mit Teilen der Bilder korrelieren, zusammen mit dem Adressieren einer Struktur des Wissens, um zu beschreiben, „was passiert” in den Bildern als eine Beschreibungszusammenfassung. Diese Beschreibungszusammenfassung kann auf vielfältige Weise verwendet werden, wie etwa um Bilder aufzufinden als Teil einer Bildersuche, eine automatische Erzeugung von Bildbeschriftungen auszuführen und so weiter.The model is used to form a structured image representation of the input image that explicitly correlates at least a portion of the text features with image features of the input image as the descriptive summary of the input image (Block 908 ). For example, the structured image representation may correlate concepts in the text with portions of the images, along with addressing a structure of the knowledge to describe "what happens" in the images as a description summary. This description summary can be used in a variety of ways, such as finding images as part of an image search, automatically generating image captions, and so on.

10 zeigt eine Prozedur 1000 in einer beispielhaften Implementierung, in welcher eine digitale Medienumgebung verwendet wird, um Wissen zu extrahieren und um Textmerkmale zu Bildmerkmalen eines eingegebenen Bildes zu lokalisieren. Eine digitale Medienumgebung wird beschrieben, um ein Modell zu lernen, das verwendet werden kann, um eine beschreibende Zusammenfassung eines Objekts innerhalb eines eingegebenen Bildes automatisch und ohne Benutzereingriff zu berechnen. Strukturiertes semantisches Wissen wird aus Text, der mit Bildern assoziiert ist, extrahiert, wobei eine Verarbeitung unter Verwendung einer Verarbeitung natürlicher Sprache durch die zumindest eine Rechnervorrichtung (Block 1002). Bildmerkmale von Objekten in jeweiligen der Bilder wird lokalisiert als den Textmerkmalen des strukturierten semantischen Wissens entsprechend (Block 1004). Wie zuvor wird strukturiertes semantisches Wissen 310 extrahiert. In diesem Fall ist dieses Wissen jedoch auf bestimmte Teile des Bildes lokalisiert und kann daher die Genauigkeit von nachfolgendem Modellieren verbessern, indem potentiell zwischen mehreren Konzepten in einem Bild unterschieden wird, zum Beispiel das Baby, welches das Spielzeug hält, und der Mann, der das Baby füttert, wie in 1 gezeigt. 10 shows a procedure 1000 in an exemplary implementation in which a digital media environment is used to extract knowledge and to locate text features to image features of an input image. A digital media environment is described to learn a model that can be used to compute a descriptive summary of an object within an input image automatically and without user intervention. Structured semantic knowledge is extracted from text associated with images, wherein processing using natural language processing by the at least one computing device (Block 1002 ). Image features of objects in each of the images are localized as corresponding to the textual features of the structured semantic knowledge (Block 1004 ). As before, structured semantic knowledge 310 extracted. In this case, however, this knowledge is localized to certain parts of the image and therefore can improve the accuracy of subsequent modeling by potentially distinguishing between several concepts in an image, for example the baby holding the toy and the man holding the toy Baby feeds as in 1 shown.

Ein Modell wird trainiert unter Verwendung der lokalisierten Bild- und Textmerkmale als Teil von maschinellem Lernen (Block 1006). Eine Vielfalt von unterschiedlichen Techniken kann verwendet werden, etwa um probabilistisches Modellieren auszuführen. Das Modell wird verwendet, um eine strukturierte Bildrepräsentation des eingegebenen Bildes zu bilden, die explizit zumindest einen Teil der Textmerkmale mit zumindest einem Bildmerkmal des Objekts, das in dem eingegebenen Bild enthalten ist, korreliert (Block 1008). Zum Beispiel kann das strukturierten Logikbestimmungsmodul 318 ein eingegebenes Bild 108 nehmen und eine strukturierte Bildrepräsentation 106 insbesondere in Fällen bilden, in denen das eingegebene Bild 108 keinen assoziierten Text umfasst. Weiter kann die strukturierte Bildrepräsentation 106 lokalisiert werden, um Konzepte, die in dem Text und dem Bild enthalten sind, miteinander zu korrelieren. Wie zuvor kann die strukturierte Bildrepräsentation 106 verwendet werden, um eine Vielfalt von Funktionalitäten zu unterstützen, wie etwa Bildersuchen, automatisierte Erzeugung von Bildbeschriftungen und so weiter.A model is trained using the localized image and text features as part of machine learning (Block 1006 ). A variety of different techniques can be used, such as to perform probabilistic modeling. The model is used to form a structured image representation of the input image that explicitly correlates at least a portion of the text features with at least one image feature of the object contained in the input image (Block 1008 ). For example, the structured logic determination module 318 an input image 108 take and a structured image representation 106 especially in cases where the input image 108 does not include any associated text. Next, the structured image representation 106 be located to correlate concepts contained in the text and image. As before, the structured image representation 106 can be used to support a variety of functionalities, such as image browsing, automated generation of image captions and so on.

Implementierungsbeispielimplementation example

11 zeigt ein beispielhaftes System 1100, das verwendet werden kann, um strukturierte Fakten-Bildeinbettung auszuführen. Dieses System 1100 unterstützt Eigenschaften wie eine Fähigkeit dazu (1) kann kontinuierlich mit neuen Fakten gefüttert werden, ohne die Architektur zu ändern, (2) ist in der Lage, mit Platzhaltern zu lernen, um alle Arten von Fakten zu unterstützen, (3) kann auf nicht gesehene oder anderweitig nicht direkt sichtbare Fakten verallgemeinern, und (4) erlaubt einen Zweiwegeabruf, wie etwa relevante Fakten in einer Sprachansicht abzurufen, wenn ein Bild gegeben ist, und relevante Bilder abzurufen, wenn ein Faktum in einer Sprachansicht gegeben ist. Dieses System 1100 zielt darauf ab, strukturiertes Wissen in Bildern als ein Problem zu modellieren, mit Ansichten in der visuellen Domäne V und in der Sprachdomäne L. Sei „f” ein strukturiertes „Faktum” (das heißt, Konzept) und „fl ∊ L” bezeichnet die Ansicht von „f” in der Sprachdomäne. Beispielsweise würde ein annotiertes Faktum, mit Sprachansicht „fl = <S: Mädchen, P: fährt, O: Fahrrad>” eine entsprechende visuelle Ansicht „fv” als ein Bild haben, in der das Faktum auftritt, wie in 11 gezeigt. 11 shows an exemplary system 1100 which can be used to perform structured fact image embedding. This system 1100 supports properties such as an ability to do so (1) can be continuously fed with new facts without changing the architecture, (2) being able to learn with wildcards to support all kinds of facts, (3) can not work on (4) allows two-way retrieval, such as retrieving relevant facts in a voice view when an image is given, and retrieving relevant images when a fact is given in a voice view. This system 1100 aims to model structured knowledge in images as a problem, with views in the visual domain V and in the speech domain L. Let "f" denote a structured "fact" (ie concept) and "f l ε L" the view of "f" in the language domain. For example, an annotated fact, with voice view "f l = <S: girl, P: drive, O: bike>", would have a corresponding visual view "f v " as an image in which the fact occurs, as in 11 shown.

Das System ist konfiguriert, eine Repräsentation zu lernen, welche Fakten erster Ordnung <S> (Objekte), Fakten zweiter Ordnung <S, P> (Aktionen und Attribute) und Fakten dritter Ordnung <S, P, O> (Interaktion und positionelle Fakten) abdeckt. Diese Arten von Fakten werden repräsentiert als ein Einbettungsproblem in einen „strukturierten Faktenraum”. Das strukturierte Faktum ist als eine lernende Repräsentation von drei Hyperdimensionen konfiguriert, die wie folgt bezeichnet sind:

Figure DE102016010910A1_0004
The system is configured to learn a representation of which first order facts <S> (objects), second order facts <S, P> (actions and attributes) and third order facts <S, P, O> (interaction and positional facts ) covers. These types of facts are represented as an embedding problem in a "structured fact space". The structured fact is configured as a learning representation of three hyperdimensions, denoted as follows:
Figure DE102016010910A1_0004

Die Einbettungsfunktion von einer visuellen Ansicht eines Faktums „fv” sind jeweils wie folgt bezeichnet: ϕS, ϕP und ϕO als ϕ V / S(fv), ϕ V / P(fv) und ϕ V / O(fv) The embedding function from a visual view of a fact "f v " are each designated as follows: φ S , φ P and φ O as φ V / S (f v ), φ V / P (f v ) and φ V / O (f v )

Ähnlich ist die Einbettungsfunktion von einer Sprachenansicht eines Faktums fl: ϕS, ϕP und ϕO bezeichnet als ein jeweiliges der Folgenden: ϕ L / S(fl), ϕ L / P(fl) und ϕ L / O(fl) Similarly, the embedment function is from a language view of a fact f l : φ S , φ P and φ O denotes as each of the following: φ L / S (f l ), φ L / P (f l ) and φ L / O (f l )

Die Verkettung der Hyperdimensionen der visuellen Ansicht wird bezeichnet als: ϕV(fv) The concatenation of the hyperdimensions of the visual view is referred to as: φ V (f v )

Die Verkettung der Einbettung der Hyperdimensionen der Sprachansicht wird bezeichnet als: ϕL(fl) wobei die obigen die visuelle Einbettung bzw. die Spracheinbettung von „f” sind, wodurch gebildet wird: ϕV(fv) = [ϕ V / S(fv), ϕ V / P(fv), ϕ V / O(fv)], ϕL(fl) = [ϕ L / S(fl), ϕ L / P(fl), ϕ L / O(fl)] Linking of embedding of hyperdimensions of language view is called: φ L (f l ) the above being the visual embedding of "f", thus forming: φ V (f v ) = [φ V / S (f v ), φ V / P (f v ), φ V / O (f v )], φ L (f l ) = [φ L / S (f l ), φ L / P (f l ), φ L / O (f l )]

Wie aus dem obigen ersichtlich ist, können somit die Fakten dritter Ordnung <S, P, O> direkt in den strukturierten Faktenraum eingebettet werden durch: ϕV(fv) für die Bildansicht und: ϕL(fl) für die Sprachansicht.As can be seen from the above, the third-order facts <S, P, O> can thus be embedded directly in the structured fact space by: φ V (f v ) for the picture view and: φ L (f l ) for the voice view.

Fakten erster Ordnung sind Fakten, die ein Objekt anzeigen, wie <S: Person>. Fakten zweiter Ordnung sind spezifischer über das Subjekt, zum Beispiel <S: Person, P: spielt>. Fakten dritter Ordnung sind nochmals spezifischer, zum Beispiel <S: Person, P: spielt, O: Klavier). Im Folgenden werden Fakten höherer Ordnung als Fakten niedrigerer Ordnung definiert, auf die ein zusätzlicher Modifikator angewandt ist. Zum Beispiel konstruiert das Hinzufügen des Modifikators „P: isst” zu dem Faktum <S: Kind> das Faktum <S: Kind, P: isst>. Weiter konstruiert das Hinzufügen des Modifikators „O: Eiscreme” zu dem Faktum <S: Kind, P: isst> das Faktum <S: Kind, P: isst O: Eiscreme>. Ähnlich können Attribute adressiert werden als Modifikatoren für ein Subjekt, zum Beispiel konstruiert das Anwenden von „P: lächelt” auf das Faktum <S: Baby> das Faktum <S: Baby, P: lächelt>.First order facts are facts that indicate an object, such as <S: Person>. Second order facts are more specific about the subject, for example <S: Person, P: plays>. Third order facts are even more specific, for example <S: Person, P: plays, O: piano). In the following, higher order facts are defined as lower order facts to which an additional modifier is applied. For example, adding the modifier "P: eats" to the fact <S: child> constructs the fact <S: child, P: eats>. Further, adding the modifier "O: ice cream" to the fact <S: child, P: eats> constructs the fact <S: child, P: eats O: ice cream>. Similarly, attributes can be addressed as modifiers for a subject, for example, applying "P: smiles" to the fact <S: Baby> constructs the fact <S: baby, P: smiles>.

Basierend auf der oben beobachteten Faktenmodifikation, können sowohl Fakten erster Ordnung als auch Fakten zweiter Ordnung als Platzhalter repräsentiert werden, wie in den folgenden Gleichungen für Fakten erster Ordnung und Fakten zweiter Ordnung jeweils illustriert. ϕV(fv) = [ϕ V / S(fv), ϕ V / P(fv) = *, ϕ V / O(fv) = *], ϕL(fl) = [ϕ L / S(fl), ϕ L / P(fl) = *, ϕ L / O(fl) = *] ϕV(fv) = [ϕ V / S(fv), ϕ V / P(fv), ϕ V / O(fv) = *], ϕL(fl) = [ϕ L / S(fl), ϕ L / P(fl), ϕ L / O(fl) = *] Das Setzen von „ϕP” und „ϕO” auf „*” für Fakten erster Ordnung wird interpretiert als zu bedeuten, dass die Modifikatoren „P” und „O” für Fakten erster Ordnung nicht von Interesse sind. Ähnlich zeigt das Setzen von „ϕO” auf „*” für Fakten zweiter Ordnung an, dass der Modifikator „O” nicht von Interesse ist für Einzelbildaktionen und Attribute.Based on the above-noted fact modification, both first order and second order facts can be represented as placeholders, as illustrated in the following equations for first order and second order facts respectively. φ V (f v) = [φ V / S (f v), φ V / P (f v) = *, V / O φ (f v) = *], L φ (f l) = [φ L / S (f l ), φ L / P (f l ) = *, φ L / O (f l ) = *] φ V (f v ) = [φ V / S (f v ), φ V / P (f v ), φ V / O (f v ) = *], φ L (f l ) = [φ L / S (f l ), φ L / P (f l ), φ L / O (f l ) = *] The setting of "φ P " and "φ O " to "*" for first order facts is interpreted as meaning that the modifiers "P" and "O" are not of interest for first order facts. Similarly, setting "φ 0 " to "*" for second order facts indicates that the modifier "0" is not of interest for frame actions and attributes.

Fakten erster und zweiter Ordnung werden Platzhalterfakten genannt. Da das Modellieren von strukturierten Fakten in visuellen Daten potentiell ein logisches Schließen über Fakten aus Bildern ermöglicht, wird das beschriebene Problem im Folgenden auch als ein „Sherlock” Problem bezeichnet. First and second order facts are called placeholder facts. Since modeling structured facts in visual data potentially allows logical reasoning about facts from images, the problem described below is also referred to as a "Sherlock" problem.

Um ein maschinelles Lernmodell zu trainieren, welches die strukturierte Fakten-Sprachenansicht in L mit deren visueller Ansicht in V verbindet, werden Daten in der Form von Paaren (fv, fl) gesammelt. Die Sammlung von Daten für Probleme in großem Maßstab wird zu einer zunehmenden Herausforderung, insbesondere in den nachfolgenden Beispielen, da das Modell auf einer lokalisierten Assoziation eines strukturierten Sprachfaktums „fl” mit einem Bild „fv” basiert, wenn solche Fakten auftreten. Insbesondere ist es eine komplexe Aufgabe, Annotationen insbesondere für Fakten zweiter Ordnung <S, P> und Fakten dritter Ordnung <S, P, O> zu sammeln. Auch können mehrere strukturierte Sprachfakten demselben Bild zugewiesen werden, zum Beispiel <S: Mann, P; lächelnd> und <S: Mann, P: trägt, O: Glas>. Wenn sich diese Fakten auf denselben Mann beziehen, könnte dasselbe Bildbeispiel verwendet werden, um beide Fakten zu lernen.To train a machine learning model that links the structured factual language view in L to its visual view in V, data is collected in the form of pairs (f v , f l ). The collection of data for large scale problems is becoming increasingly challenging, especially in the examples below, since the model is based on a localized association of a structured linguistic feature "f l " with an image "f v " when such facts occur. In particular, it is a complex task to collect annotations especially for second-order facts <S, P> and third-order facts <S, P, O>. Also, multiple structured linguistic facts may be assigned to the same image, for example, <S: man, P; smiling> and <S: man, P: wears, O: glass>. If these facts refer to the same man, the same picture example could be used to learn both facts.

Wie zuvor beschrieben werden Techniken diskutiert, in denen Faktenannotationen automatisch aus Datenmengen gesammelt werden, welche in der Form von Paaren Bild/Bildbeschriftung vorliegen. Zum Beispiel kann eine große Menge von hochqualitativen Fakten erhalten werden aus Bildbeschriftungsdatenbanken unter Verwendung einer Verarbeitung natürlicher Sprache. Da das Schreiben von Bildbeschriftungen in freiform ist, sind diese typischer Weise leicht verfügbar, zum Beispiel von Sozialen Netzen, vorkonfigurierten Datenbanken und so weiter.As discussed above, techniques are discussed in which factual annotations are automatically collected from datasets that are in the form of image / caption pairs. For example, a large amount of high quality facts can be obtained from image caption databases using natural language processing. Since the writing of image captions is freeform, these are typically readily available, for example, from social networks, preconfigured databases, and so forth.

In dem folgenden Beispiel wird ein zweistufiger automatischer Annotationsprozess beschrieben (i) Faktenextraktion aus Bildbeschriftungen, welche beliebigen Text umfassen, der mit einem Bild assoziiert ist, der das Bild beschreibt; und (ii) Faktenlokalisierung in Bildern. Zuerst werden die mit dem gegebenen Bild assoziierten Bildbeschriftungen analysiert, um Mengen von Satzteilen bzw. Klauseln zu extrahieren, die als Kandidaten von Fakten <S, P> und <S, P, O> in dem Bild betrachtet werden. Klauseln bilden Fakten, sind aber nicht notwendiger Weise selbst Fakten.In the following example, a two-step automatic annotation process is described (i) fact extraction from image captions comprising any text associated with an image describing the image; and (ii) Fact location in pictures. First, the image labels associated with the given image are analyzed to extract sets of clauses considered to be candidates of facts <S, P> and <S, P, O> in the image. Clauses are facts, but are not necessarily facts themselves.

Bildbeschriftungen können große Mengen an Information für Bildverständnissysteme bieten. Allerdings ist das Entwickeln von Systemen zur Verarbeitung natürlicher Sprache, um akkurat und vollständig strukturiertes Wissen aus Freiformtext zu extrahieren herausfordernd wegen (1) Fehlern in Rechtschreibung und Zeichensetzung; (2) Wortsinnzweideutigkeit innerhalb von Klauseln; und (3) Lexikon räumlicher Präpositionen, das hunderte von Begriffen enthalten mag, wie „daneben”, „auf”, sowie Sammelphrasenadjektive wie etwa „Gruppe von”, „Bündel von” und so weiter.Image captions can provide large amounts of information for image comprehension systems. However, developing natural language processing systems to extract accurate and fully structured knowledge from freeform text is challenging because of (1) spelling and punctuation errors; (2) word sense ambiguity within clauses; and (3) a dictionary of spatial prepositions that may contain hundreds of terms, such as "off," "on," and aggregate phrase adjectives, such as "group of," "bundles of," and so on.

Der Prozess des Lokalisierens von Fakten in einem Bild ist beschränkt durch Information in der Datenmenge. Zum Beispiel mag eine Datenbank Objektannotationen für unterschiedliche Objekte enthalten durch Trainings- und Validierungsmengen. Dies ermöglicht, dass Fakten erster Ordnung lokalisiert werden für Objekte unter Verwendung von begrenzender Rechtecksinformation. Um Fakten höherer Ordnung in Bildern zu lokalisieren werden visuelle Entitäten definiert als jedes Nomen, das entweder ein Datenmengenobjekt oder ein Nomen in einer vordefinierten Ontologie ist, die ein unmittelbarer oder indirekter Oberbegriff eines der Objekte ist. Es wird erwartet, dass visuelle Entitäten entweder in dem S oder dem O Teil auftauchen, falls existent, für ein Kandidatenfaktum „fl”, was die Lokalisierung von Fakten für Bilder ermöglicht. Für ein gegebenes Faktum dritter Ordnung wird zuerst versucht, jedes „S” und „O” einer der visuellen Entitäten zuzuweisen. Wenn „S” und „O” keine visuellen Entitäten sind, dann wird die Klausel ignoriert. Andernfalls werden die Klauseln durch verschiedene Heuristiken verarbeitet. Die Heuristiken können zum Beispiel berücksichtigen, ob das Subjekt oder das Objekt im Singular oder Plural ist oder eine Szene. Zum Beispiel können die hierin beschriebenen Techniken in dem Faktum <S: Männer, P: jagen, O: Fußball> identifizieren, dass „Männer” eine Vereinigung von mehreren begrenzenden Kandidatenrechtecken involvieren kann, während es für „Fußball” erwartet ist, dass es nur ein einzelnes begrenzendes Rechteck gibt.The process of locating facts in an image is limited by information in the dataset. For example, a database may contain object annotations for different objects through training and validation sets. This allows first-order facts to be located for objects using bounding rectangle information. To locate facts of higher order in images, visual entities are defined as any noun that is either a dataset object or a noun in a predefined ontology that is a direct or indirect generic term of one of the objects. It is expected that visual entities will appear in either the S or the O part, if any, for a candidate factor "f l ", allowing the location of facts for images. For a given third order fact, it is first tried to assign each "S" and "O" to one of the visual entities. If "S" and "O" are not visual entities, then the clause is ignored. Otherwise, the clauses are processed by different heuristics. For example, the heuristics may consider whether the subject or object is singular or plural or a scene. For example, in the fact that the techniques described herein may identify <S: Men, P: Hunt, O: Football>, "Men" may involve an association of multiple limiting candidate rectangles, while "Football" is expected to only gives a single bounding rectangle.

Ein direkter Ansatz zum Modellieren von Fakten in Bildern ist es, für jedes separate Faktum einen Klassifikator zu lernen. Bei dieser Technik gibt es jedoch eine klare Begrenzung in der Skalierbarkeit, da die Anzahl von Fakten signifikant ist, zum Beispiel |S| × |P| × |O|, wobei |S|‚ |P| und |O| die Anzahl der Subjekte, Prädikate bzw. Objekte sind. Daher könnte diese Zahl Millionen für mögliche Fakten in der realen Welt erreichen. Zusätzlich zu diesen Skalierbarkeitsproblemen ignoriert diese Technik semantische Beziehungen zwischen Fakten, welche eine signifikante Eigenschaft sind, die eine Verallgemeinerung auf nicht gesehene Fakten oder Fakten mit wenigen Beispielen erlaubt. Beispielsweise mag es während des Trainings ein Faktum zweiter Ordnung wir <S: Junge, P: spielt> und ein Faktum erster Ordnung wie <S: Mädchen>, <S: Junge> geben. Zur Laufzeit versteht das unter Verwendung der hierin beschriebenen Techniken trainierte Modell ein Bild mit dem Faktum <Mädchen, spielt>, selbst wenn dieses Faktum während des Trainierens nicht gesehen wurde, was eindeutig nicht erfasst wird durch Lernen eines Modells für jedes Faktum in dem Trainieren.A direct approach to modeling facts in images is to learn a classifier for each separate fact. However, there is a clear limitation in scalability in this technique because the number of facts is significant, for example | S | × | P | × | O |, where | S |, | P | and | O | the number of subjects, predicates or objects are. Therefore, this number could reach millions for possible facts in the real world. In addition to these scalability issues, this technique ignores semantic relationships between facts, which are a significant feature that allows a generalization to unseen facts or figures with few examples. For example, during training, a second order fact may be <S: boy, P: plays> and a fact of first order like <S: girl>, <S: boy>. At runtime, the model trained using the techniques described herein understands Image titled <Girl, plays> even though this fact was not seen during practice which is clearly missed by learning a model for each fact in the workout.

Dementsprechend wird in diesem Beispiel ein Einbettungsproblem mit zwei Ansichten beschrieben, das verwendet wird, um strukturierte Fakten zu modellieren. Zum Beispiel kann ein strukturiertes Fakteneinbettungsmodell umfassen (1) Zweiwegeabruf (das heißt, relevante Fakten in Sprachansicht abzurufen, wenn ein Bild gegeben ist, und relevante Bilder abzurufen, wenn ein Faktum in einer Sprachansicht gegeben ist; und (2) Platzhalterfakten werden unterstützt, das heißt Fakten erster und zweiter Ordnung.Accordingly, this example describes an embedding problem with two views that is used to model structured facts. For example, a structured fact embedding model may include (1) bidirectional retrieval (that is, retrieving relevant facts in a voice view when an image is given and retrieving relevant images when a fact is given in a voice view) and (2) supporting facts are supported means facts of first and second order.

Die erste Eigenschaft wird in diesem Beispiel erfüllt durch Verwendung eines generativen Modells p(fv, fl), das die visuelle Ansicht und die Sprachansicht von „f” verbindet. Diese Technik modelliert zuerst das Folgende: p(fv, fl) ∝ s(ϕV(fv), ϕL(fl)) wobei „s(·,·)” eine Ähnlichkeitsfunktion ist, die über den strukturierten Faktenraum definiert ist, der durch „S” bezeichnet ist, welcher ein diskriminierender Raum von Fakten ist. Dies wird so ausgeführt, dass zwei Ansichten desselben Faktums nahe beieinander eingebettet sind.The first property is fulfilled in this example by using a generative model p (f v , f l ) connecting the visual view and the language view of "f". This technique first models the following: p (f v , f l ) α s (φ V (f v ), φ L (f l )) where "s (·, ·)" is a similarity function defined over the structured fact space designated by "S", which is a discriminating space of facts. This is done so that two views of the same fact are embedded close to each other.

Um „ϕV(fv)” zu modellieren und zu trainieren, wird ein CNN Encoder verwendet, und um „ϕL(fl)” zu modellieren und zu trainieren, wird ein RNN Encoder verwendet. In einer beispielhaften Implementierung 1200 von 12 werden zwei Modelle vorgeschlagen, um Fakten zu lernen, die mit Modell 1 und Modell 2 bezeichnet sind. Die Modelle 1 und 2 haben dieselbe strukturierte Faktenspracheneinbettung und denselben -encoder, unterscheiden sich aber in dem strukturierten Fakten-Bild- Encoder.To model and train "φ V (f v )", a CNN encoder is used, and to model and train "φ L (f l )", an RNN encoder is used. In an exemplary implementation 1200 from 12 Two models are proposed to learn facts that are referred to as Model 1 and Model 2. Models 1 and 2 have the same structured fact-language embedding and the same encoder, but differ in the structured fact-image encoder.

Dieser Prozess beginnt mit Definieren eines Aktivierungsoperators „ψ(θ, α)”, wobei „α” eine Eingabe und „θ” eine Reihe von einer oder mehreren neuronalen Netzwerkschichten ist, welche unterschiedliche Schichttypen beinhalten mögen, wie vier Faltungsschichten, eine Poolingschicht, und eine weitere Faltungs- und Poolingschicht. Der Operator „ψ(θ, α)” wendet Parameter „θ” Schicht für Schicht an, um die Aktive von Unternetzwerk „θ” für ein gegebenes „α” zu berechnen. Ein Operator „ψ(·,·)” wird verwendet, um strukturierte Fakten-Bild-Encoder Modell 1 und Modell 2 zu definieren.This process begins by defining an activation operator "ψ (θ, α)", where "α" is an input and "θ" is a series of one or more neural network layers that may include different types of layers, such as four convolutional layers, a pooling layer, and another folding and pooling layer. The operator "ψ (θ, α)" applies parameter "θ" layer by layer to calculate the subnetwork "θ" active for a given "α". An operator "ψ (·, ·)" is used to define model 1 and model 2 structured fact image encoders.

In Modell 1 wird ein strukturiertes Faktum visuell codiert durch Teilen von Faltungsschichtparametern (bezeichnet durch θ v / c) und voll verbundene Schichtparameter (bezeichnet durch θ u / c). Dann werden Transformationsmatrizen „W v / S”, „W v / P” und „W v / O” angewandt, um „ϕ v / S(fv), ϕ v / P(fv), ϕ v / O(fv)” wie folgt zu erzeugen: ϕ V / S(fv) = W S / vψ(θ u / v, ψ(θ c / v, |fv)), ϕ V / P(fv) = W P / vψ(θ u / v, ψ(θ c / v, fv)), ϕ V / O(fv) = W O / vψ(θ u / v, ψ(θ c / v, fv)) In Model 1, a structured fact is visually coded by dividing convolutional layer parameters (denoted by θ v / c) and fully connected layer parameters (denoted by θ u / c). Then transformation matrices "W v / S", "W v / P" and "W v / O" applied to "Φ v / S (f v ), φ v / P (f v ), φ v / O (f v )" to produce as follows: φ V / S (f v ) = WS / vψ (θ u / v, ψ (θ c / v, | f v )), φ V / P (f v ) = WP / vψ (θ u / v, ψ (θ c / v, f v )), φ V / O (f v) = WO / vψ (θ u / v, ψ (θ c / v, f v))

Im Kontrast zu Modell 1 werden im Modell 2 für „S” andere Faltungsschichten verwendet als für „P” und „O”, konsistent mit der obigen Diskussion, dass „P” und „O” Modifikatoren für „S” sind, wie zuvor beschrieben. Ausgehend von „fv” gibt es eine gemeinsame Menge von Faltungsschichten, bezeichnet durch „θ c0 / v”, dann spaltet sich das Netzwerk auf in zwei Zweige, wobei zwei Mengen von Faltungsschichten „θ cs / v” und „θ cp0 / v” erzeugt werden, gefolgt von zwei voll verbundenen Schichten „θ us / v” und „θ uP0 / v” Schließlich werden „ϕ v / S(fv), ϕ v / P(fv), ϕ v / O(fv)” durch Transformationsmatrizen „W v / S”, „W v / P” und „f v / O”, wie folgt berechnet:

Figure DE102016010910A1_0005
In contrast to model 1, in model 2 for "S", different convolution layers are used than for "P" and "O", consistent with the above discussion, that "P" and "O" are modifiers for "S", as previously described , Starting from "f v " there is a common set of convolutional layers, denoted by "Θ c0 / v", then the network splits into two branches, with two sets of convolutional layers "Θ cs / v" and "Θ cp0 / v" generated, followed by two fully connected layers "Θ us / v" and "θ uP0 / v" Finally "Φ v / S (f v ), φ v / P (f v ), φ v / O (f v )" through transformation matrices "W v / S", "W v / P" and "fv / O", calculated as follows:
Figure DE102016010910A1_0005

In beiden Modellen wird ein strukturiertes Sprachfaktum codiert unter Verwendung von RNN Spracheinbettungsvektoren für „S, P und O”. Daher, in dem Fall „ϕ L / S(fL) = RNNθL(f L / S), ϕ L / P(fL) = RNNθL(f P / S), ϕ L / O(fL) = RNNθL(f O / L)”, wobei „f L / S”, „f P / S” und „f O / L” der Subjekt-, Prädikat- und Objektteil von „fL ∊ L” sind. Für jeden von diesen werden Literale fallengelassen, und wenn einer von „f L / S”, „f P / S” und „f O / L” mehrere Worte enthält, wird der durchschnittliche Vektor berechnet als die Repräsentation dieses Teils. Die RNN Sprachencoderparameter werden mit „θL” bezeichnet. In einer oder mehreren Implementierungen ist „θL” fixiert auf ein vortrainiertes Wortvektoreinbettungsmodell für „f L / S”, „f P / S” und „f O / L”. In both models, a structured linguistic feature is encoded using RNN speech embedding vectors for "S, P and O". Therefore, in the case Φ L / S (f L ) = RNN θ L (f L / S), φ L / P (f L ) = RNN θ L (f P / S), φ L / O (f L ) = RNN θ L (f O / L) ", in which "F L / S", "f P / S" and "f O / L" are the subject, predicate and object part of "f L ε L". For each of these literals are dropped, and when one of "F L / S", "f P / S" and "f O / L" contains several words, the average vector is calculated as the representation of that part. The RNN language encoder parameters are referred to as "θ L ". In one or more implementations, "θ L " is fixed to a pre-trained word vector embedding model for "F L / S", "f P / S" and "f O / L".

Eine Weise, um „p(fv, fl)” für Modell 1 und Modell 2 zu trainieren, ist es anzunehmen, dass „p(fv, fl) ∞= exp(–lossw(fv, fl))” und den Abstandsverlust „lossw(fv, fl)” zu minimieren, der wie folgt definiert ist: lossw(fv, fl) = w f / S·||ϕ V / S(fv) – ϕ L / S(fl)||2 + w f / P·||ϕ V / P(fv) – ϕ L / P(fl)||2 + w f / O·||ϕ V / O(fv) – ϕ L / O(fl)||2 was die Abstände zwischen der Einbettung der visuellen Ansicht und der Sprachansicht minimiert. Eine Lösung, um Platzhalterfakten zu pönalisieren ist es, die Platzhaltermodifikatoren in dem Verlust zu ignorieren durch die Verwendung eines gewichteten Euklidischen Abstands, wobei dessen Gewichtung drauf basiert, ob entsprechende Teile des Merkmalsvektors vorhanden sind, was ein „Platzhalter” Verlust genannt wird. Hier „w f / S = 1”, „w f / P = 1” und „w f / O = 1” für Fakten <S, P, O>, „w f / S = 1”, „w f / P = 1” und „w f / O = 0” Für Fakten <S, P> und „w f / S = 1”, „w f / P = 0” und „w f / O = 0” für Fakten <S>. Daher pönalisiert „lossw” nicht den „O” Modifikator für die Fakten zweiter Ordnung oder die „P” und „O” Modifikatoren für Fakten erster Ordnung, was der obigen Definition eines Platzhaltermodifikators folgt.One way to train "p (f v , f l )" for model 1 and model 2 is to assume that "p (f v , f l ) ∞ = exp (-loss w (f v , f l )) And minimize the distance loss "loss w (f v , f l )" defined as follows: loss w (f v , f l ) = wf / S · || φ V / S (f v ) - φ L / S (f l ) || 2 + wf / P · || φ V / P (f v ) - φ L / P (f l ) || 2 + wf / O · || φ V / O (f v ) - φ L / O (f l ) || 2 which minimizes the distances between the embedding of the visual view and the voice view. One solution to palerize placeholder facts is to ignore the placeholder modifiers in the loss by using a weighted Euclidean distance, the weighting of which is based on whether corresponding parts of the feature vector are present, which is called a "placeholder" loss. Here "Wf / S = 1", "wf / P = 1" and "wf / O = 1" for facts <S, P, O>, "Wf / S = 1", "wf / P = 1" and "wf / O = 0" For facts <S, P> and "Wf / S = 1", "wf / P = 0" and "wf / O = 0" for facts <S>. Therefore, "loss w " does not penalize the "O" second order factor modifier or the "P" and "O" first order factor modifiers, which follows the above definition of a wildcard modifier.

Dementsprechend beschreibt dieses Beispiel ein Problem der Assoziation von visuellen und sprachlichen Fakten hoher Ordnung. Ein neuronaler Netzwerk Ansatz wird beschrieben, um visuelle Fakten und sprachliche Fakten in einen gemeinsamen, kontinuierlichen Raum strukturierter Fakten, der es ermöglicht, dass Fakten natürlicher Sprache mit einem Bild assoziiert werden, und Bilder mit strukturierten Beschreibungen natürlicher Sprache assoziiert werden.Accordingly, this example describes a problem of association of high-order visual and linguistic facts. A neural network approach is described to associate visual facts and linguistic facts in a common, continuous space of structured facts that allow natural language facts to be associated with an image, and images associated with structured descriptions of natural language.

Beispielhaftes System und VorrichtungExemplary system and device

13 zeigt ein beispielhaftes System allgemein bei 1300, das eine beispielhafte Rechnervorrichtung 1302 beinhaltet, die repräsentativ für ein oder mehrere Rechnervorrichtungen und/oder -vorrichtungen ist, die die verschiedenen hierin beschriebenen Techniken implementieren können. Dies ist dargestellt, indem das Wissensextraktionssystem 104 enthalten ist. Die Rechnervorrichtung 1302 kann zum Beispiel ein Server eines Diensteproviders, eine Vorrichtung, die mit einem Client assoziiert ist (zum Beispiel eine Clientvorrichtung), ein On-Chip System und/oder eine andere geeignete Rechnervorrichtung oder ein anderes geeignetes Rechnersystem sein. 13 shows an exemplary system in general 1300 , which is an exemplary computing device 1302 which is representative of one or more computing devices and / or devices that can implement the various techniques described herein. This is illustrated by the knowledge extraction system 104. is included. The computing device 1302 For example, a server of a service provider, a device associated with a client (eg, a client device), an on-chip system, and / or other suitable computing device or other suitable computing system may be.

Die dargestellte Rechnervorrichtung 1302 beinhaltet ein Verarbeitungssystem 1304, ein oder mehrere computerlesbare Medien 1306 und eine oder mehrere Eingabe-/Ausgabeschnittstellen 1308, die kommunikativ miteinander verbunden sind. Auch wenn nicht dargestellt, kann die Rechnervorrichtung 1302 weiter einen Systembus oder ein anderes Daten- und Befehlstransfersystem beinhalten, das die verschiedenen Komponenten miteinander verbindet. Ein Systembus kann eine beliebige oder eine Kombination unterschiedlicher Busstrukturen beinhalten, wie etwa einen Speicherbus oder einen Speichercontroller, einen Peripheriebus, einen USB Bus und/oder einen Prozessor- oder lokalen Bus, der eine beliebige einer Vielzahl von Busarchitekturen verwendet. Eine Vielfalt anderer Beispiele wird ebenfalls in Betracht gezogen, wie etwa Steuer- und Datenleitungen.The illustrated computing device 1302 includes a processing system 1304 , one or more computer-readable media 1306 and one or more input / output interfaces 1308 that are communicatively connected. Although not shown, the computing device 1302 further include a system bus or other data and command transfer system interconnecting the various components. A system bus may include any or a combination of different bus structures, such as a memory bus or memory controller, a peripheral bus, a USB bus, and / or a processor or local bus using any of a variety of bus architectures. A variety of other examples are also contemplated, such as control and data lines.

Das Verarbeitungssystem 1304 ist für eine Funktionalität zum Ausführen einer oder mehrerer Operationen unter Verwendung von Hardware repräsentativ. Dementsprechend ist das Verarbeitungssystem 1304 als ein Hardwareelement 1310 enthaltend dargestellt, welches als Prozessoren, funktionelle Blöcke und so weiter konfiguriert sein kann. Dies kann eine Hardwareimplementierung als eine anwendungsspezifische Schaltung oder als eine andere Logikvorrichtung beinhalten, die gebildet ist unter Verwendung von einem oder mehreren Halbleitern. Die Hardwareelemente 1310 sind nicht durch die Materialien, durch die sie gebildet werden, oder die darin verwendeten Verarbeitungsmechanismen beschränkt. So können Prozessoren beispielsweise Halbleiter und/oder Transistoren umfassen (zum Beispiel integrierte Schaltungen (ICs)). In einem derartigen Kontext können von einem Prozessor ausführbare Anweisungen elektronisch ausführbare Anweisungen sein.The processing system 1304 is representative of functionality for performing one or more operations using hardware. Accordingly, the processing system 1304 as a hardware element 1310 containing, which may be configured as processors, functional blocks and so on. This may involve a hardware implementation as an application specific circuit or as another logic device formed using one or more semiconductors. The hardware elements 1310 are not limited by the materials by which they are formed or the processing mechanisms used therein. For example, processors may include semiconductors and / or transistors (eg, integrated circuits (ICs)). In such a context, instructions executable by a processor may be electronically executable instructions.

Das computerlesbare Speichermedium 1306 ist mit einem Speicher 1312 dargestellt. Der Speicher 1312 repräsentiert eine Speicherkapazität, die mit einem oder mit mehreren computerlesbaren Medien assoziiert ist. Die Speicherkomponente 1312 kann volatile Medien (wie ein Speicher mit wahlfreiem Zugriff (RAM)) und/oder nichtvolatile Medien (wie ein Nur-Lese-Speicher (ROM), Flash-Speicher, optische Platten, magnetische Platten und so weiter) beinhalten. Die Speicherkomponente 1312 kann feste eingebaute Medien (zum Beispiel RAM, ROM, eine eingebaute Festplatte und so weiter) sowie auch entfernbare Medien (zum Beispiel Flash Speicher, eine entfernbare Festplatte, eine optische Platte und so weiter) beinhalten. Das computerlesbare Medium 1306 kann auf verschiedene andere Weisen konfiguriert sein, wie weiter nachstehend beschrieben.The computer-readable storage medium 1306 is with a memory 1312 shown. The memory 1312 represents a storage capacity associated with one or more computer-readable media. The storage component 1312 may include volatile media (such as a random access memory (RAM)) and / or nonvolatile media (such as a read only memory (ROM), flash memory, optical disks, magnetic disks, and so on). The storage component 1312 can fixed built-in media (for Example RAM, ROM, built-in hard disk and so on) as well as removable media (eg flash memory, a removable hard disk, an optical disk and so on). The computer-readable medium 1306 can be configured in several other ways, as described further below.

Eingabe-/Ausgabeschnittstelle(n) ist bzw. sind für eine Funktionalität repräsentativ, die es einem Benutzer erlaubt, der Rechnervorrichtung 1302 Befehle und Information einzugeben, und es auch erlaubt, dass dem Benutzer und/oder anderen Komponenten oder Vorrichtungen unter Verwendung von Eingabe-/Ausgabevorrichtungen Information präsentiert wird. Beispiele von Eingabevorrichtungen beinhalten eine Tastatur, eine Cursor-Steuervorrichtung (zum Beispiel eine Maus), ein Mikrofon, ein Scanner, Berührungsfunktionalität (zum Beispiel kapazitive oder andere Sensoren, die konfiguriert sind, um eine physische Berührung zu erkennen), eine Kamera (welche zum Beispiel sichtbare oder nicht sichtbare Wellenlängen, wie Infrarotfrequenzen, verwenden kann, um Bewegung als Gesten zu erkennen, die keine Berührung beinhalten) und so weiter. Beispielhafte Ausgabevorrichtungen beinhalten eine Anzeigevorrichtung (zum Beispiel einen Monitor oder Projektor), Lautsprecher, einen Drucker, eine Netzwerkkarte, Vorrichtungen für taktile Rückmeldung und so weiter. Die Rechnervorrichtung 1302 kann daher auf verschiedene Weisen konfiguriert sein, wie nachfolgend weiter beschrieben, um Interaktionen zu unterstützenInput / output interface (s) is representative of a functionality that allows a user, the computing device 1302 Entering commands and information as well as allowing information to be presented to the user and / or other components or devices using input / output devices. Examples of input devices include a keyboard, a cursor control device (eg, a mouse), a microphone, a scanner, touch functionality (eg, capacitive or other sensors configured to detect a physical touch), a camera (which may be used for the purpose of FIG Example, use visible or non-visible wavelengths, such as infrared frequencies, to detect motion as gestures that do not involve touch), and so on. Exemplary output devices include a display device (eg, a monitor or projector), speakers, a printer, a network card, tactile feedback devices, and so on. The computing device 1302 Therefore, it can be configured in various ways, as further described below, to support interactions

Verschiedene Techniken mögen hierin im allgemeinen Kontext von Software, Hardwareelementen oder Programmodulen beschrieben sein. Im Allgemeinen beinhalten solche Module Routinen, Programme, Objekte, Elemente, Komponenten und so weiter, welche bestimmte Aufgaben ausführen oder bestimmte abstrakte Datentypen implementieren. Die Begriffe ”Modul”, ”Funktionalität” und ”Komponente” wie hierin verwendet repräsentieren allgemein Software, Firmware, Hardware oder eine Kombination dieser. Die Merkmale der hierin beschriebenen Techniken sind plattformunabhängig, was bedeutet, dass die Techniken auf einer Vielfalt von handelsüblichen Rechnerplattformen mit einer Vielfalt von Prozessoren implementiert werden können.Various techniques may be described herein in the general context of software, hardware elements or program modules. In general, such modules include routines, programs, objects, elements, components, and so forth that perform certain tasks or implement particular abstract data types. The terms "module", "functionality" and "component" as used herein generally represent software, firmware, hardware or a combination thereof. The features of the techniques described herein are platform independent, which means that the techniques can be implemented on a variety of commercial computing platforms with a variety of processors.

Eine Implementierung der beschriebenen Module und Techniken kann auf einer Form computerlesbarer Medien gespeichert oder übe diese übertragen werden. Die computerlesbaren Medien können eine Vielfalt von Medien umfassen, auf welche die Rechnervorrichtung 1302 zugreifen kann. Beispielhaft und nicht beschränkend können computerlesbare Medien ”computerlesbare Speichermedien” und ”computerlesbare Signalmedien” umfassen.An implementation of the described modules and techniques may be stored or transmitted on some form of computer-readable media. The computer readable media may include a variety of media to which the computing device 1302 can access. By way of example and not limitation, computer-readable media may include "computer-readable storage media" and "computer-readable signal media."

”Computerlesbare Speichermedien” können sich auf Medien und/oder Vorrichtungen beziehen, welche das persistente und/oder nicht vergängliche Speichern von Information ermöglichen, im Gegensatz zur reinen Signalübertragung, Trägerwellen oder Signalen als solchen. Computerlesbare Speichermedien beziehen sich daher auf Medien, die kein Signal tragen. Die computerlesbaren Speichermedien beinhalten Hardware, wie flüchtige und nichtflüchtige, entfernbare und nicht entfernbare Medien und/oder Speichervorrichtungen, die mit einem Verfahren oder einer Technologie implementiert sind, das bzw. die für das Speichern von Information, wie computerlesbare Anweisungen, Datenstrukturen, Programmodulen, logischen Elementen/Schaltungen oder anderen Daten geeignet sind. Beispiele computerlesbarer Speichermedien können, ohne hierauf beschränkt zu sein, RAM, ROM, EEPROM, Flash Speicher oder eine andere Speichertechnologie, CD-ROM, DVD anderen optischen Speicher, Festplatten, Magnetkassetten, Magnetbänder, magnetische Speicherplatten oder andere magnetische Speichervorrichtungen, oder eine andere Speichervorrichtung, greifbare Medien, oder einen anderen hergestellten Gegenstand, der geeignet ist, die gewünschte Inforation zu speichern und den Zugriff durch einen Computer zu erlauben, umfassen."Computer-readable storage media" may refer to media and / or devices that enable persistent and / or non-transitory storage of information, as opposed to mere signal transmission, carrier waves, or signals as such. Computer-readable storage media therefore refer to media that carry no signal. The computer-readable storage media include hardware such as volatile and nonvolatile, removable and non-removable media, and / or memory devices implemented with a method or technology that may be used to store information such as computer readable instructions, data structures, program modules, logical Elements / circuits or other data are suitable. Examples of computer-readable storage media may include, but are not limited to, RAM, ROM, EEPROM, flash memory or other storage technology, CD-ROM, DVD other optical storage, hard disks, magnetic cassettes, magnetic tapes, magnetic storage disks or other magnetic storage devices, or other storage device , tangible media, or other manufactured article capable of storing the desired information and allowing access by a computer.

”Computerlesbare Signalmedien” mag sich auf ein ein Signal tragendes Medium beziehen, das konfiguriert ist, Anweisungen an die Hardware der Rechnervorrichtung 1302 zu übertragen, wie etwa über ein Netzwerk. Signalmedien können typischer Weise computerlesbare Anweisungen, Datenstrukturen, Programmmodule oder andere Daten in einem modulierten Datensignal verkörpern, wie Trägerwellen, Datensignalen oder einem anderen Transportmechanismus. Signalmedien beinhalten auch alle Informationsliefermedien. Der Begriff „moduliertes Datensignal” bedeutet ein Signal, bei dem eine oder mehrere von dessen Charakteristiken auf solch eine Weise eingestellt oder geändert werden, um Information in dem Signal zu kodieren. Als Beispiel, und nicht als Beschränkung, beinhalten Kommunikationsmedien drahtgebundene Medien, wie ein drahtgebundenes Netzwerk oder eine direkt verdrahtete Verbindung, und drahtlose Medien wie akustische, Funk- und andere drahtlose Medien."Computer readable signal media" may refer to a signal carrying medium configured to provide instructions to the hardware of the computing device 1302 to transmit, such as over a network. Signal media may typically embody computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as carrier waves, data signals, or other transport mechanism. Signal media also includes all information delivery media. The term "modulated data signal" means a signal in which one or more of its characteristics are adjusted or changed in such a way as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or a direct-wired connection, and wireless media such as acoustic, wireless, and other wireless media.

Wie zuvor ausgeführt sind die Hardwareelemente 1310 und computerlesbare Medien 1306 repräsentativ für Module, programmierbare Vorrichtungslogik und/oder feste Vorrichtungslogik, die in einer Hardwareform implementiert ist bzw. sind, die in einigen Ausführungsformen Verwendung finden können, um zumindest einige Aspekte der hierin beschriebenen Techniken zu implementieren, wie etwa um eine oder mehrere Anweisungen auszuführen. Hardware kann Komponenten einer integrierten Schaltung oder ein Ein-Chip-System, eine anwendungsspezifische Integrierte Schaltung (ASIC), feldprogrammierbare Gatterlogik (FPGA), eine komplexe programmierbare Logikvorrichtung (CPLD) und andere Implementierungen in Silizium oder anderer Hardware umfassen. In diesem Kontext kann Hardware als eine Verarbeitungsvorrichtung arbeiten, welche Programmaufgaben ausführt, die durch Anweisungen und/oder Logik, die von der Hardware verkörpert sind bzw. ist, sowie einer Hardware, die verwendet wird, um auszuführende Anweisungen zu speichern, wie zum Beispiel das vorstehend beschriebene computerlesbare Speichermedium.As stated previously, the hardware elements are 1310 and computer-readable media 1306 representative of modules, programmable device logic, and / or fixed device logic implemented in a hardware form that may be used in some embodiments to implement at least some aspects of the techniques described herein, such as to execute one or more instructions. Hardware may include integrated circuit components or a one-chip system, application specific integrated circuit (ASIC), field programmable gate logic (FPGA), complex programmable logic device (CPLD) and other implementations in silicon or other hardware. In this context, hardware may function as a processing device that performs program tasks that are represented by instructions and / or logic embodied by the hardware, as well as hardware used to store instructions to be executed, such as the The computer-readable storage medium described above.

Es können auch Kombinationen der vorstehend genannten verwendet werden, um verschiedene hierin beschriebene Techniken zu implementieren. Dementsprechend können Software-, Hardware- oder ausführbare Module als eine oder mehrere Anweisungen und/oder Logik implementiert sein, die auf einer Form eines computerlesbaren Speichermediums und/oder durch ein oder mehrere Hardwareelemente 1310 verkörpert sind. Die Rechnervorrichtung 1302 kann konfiguriert sein, um bestimmte Anweisungen und/oder Funktionen entsprechend den Software- und/oder Hardwaremodulen zu implementieren. Dementsprechend kann eine Implementierung eines Moduls, das durch die Rechnervorrichtung 1302 als Software ausgeführt werden kann, zumindest teilweise in Hardware erreicht werden, zum Beispiel durch die Verwendung von computerlesbare Speichermedien und/oder Hardwareelementen 1310 des Verarbeitungssystems 1304. Die Anweisungen und/oder Funktionen können ausführbar/betreibbar sein durch ein oder mehrere Erzeugnisse (zum Beispiel eine oder mehrere Rechnervorrichtungen 1302 und/oder Verarbeitungssysteme 1304), um hierin beschriebene Techniken, Module und Beispiele zu implementieren.Combinations of the above may also be used to implement various techniques described herein. Accordingly, software, hardware, or executable modules may be implemented as one or more instructions and / or logic stored on a form of computer-readable storage medium and / or one or more hardware elements 1310 are embodied. The computing device 1302 may be configured to implement particular instructions and / or functions corresponding to the software and / or hardware modules. Accordingly, an implementation of a module implemented by the computing device 1302 be executed as software, at least partially achieved in hardware, for example by the use of computer-readable storage media and / or hardware elements 1310 of the processing system 1304 , The instructions and / or functions may be executable by one or more products (for example, one or more computing devices 1302 and / or processing systems 1304 ) to implement techniques, modules and examples described herein.

Die hierin beschriebenen Techniken können durch verschiedene Konfigurationen der Rechnervorrichtung 1302 unterstützt werden und sind nicht auf die spezifischen Beispiele der hierin beschriebenen Techniken beschränkt. Diese Funktionalität kann auch ganz oder teilweise implementiert sein durch die Verwendung eines verteilten Systems, wie etwa über eine „Cloud” 1314 über eine Plattform 1316 wie nachstehend beschrieben.The techniques described herein may be achieved by various configurations of the computing device 1302 and are not limited to the specific examples of the techniques described herein. This functionality may also be implemented in whole or in part by using a distributed system, such as a cloud. 1314 over a platform 1316 as described below.

Die Cloud 1314 beinhaltet und/oder ist repräsentativ für eine Plattform 1316 für Ressourcen 1318. Die Plattform 1316 abstrahiert die zugrunde liegende Funktionalität von Hardwareressourcen (zum Beispiel Server) und Softwareressourcen der Cloud 1314. Die Ressourcen 1318 können Anwendungen und/oder Daten beinhalten, die verwendet werden können, während die Rechnerverarbeitung auf Servern ausgeführt wird, die der Rechnervorrichtung 1302 fern sind. Die Ressourcen 1318 können auch Dienste beinhalten, die über das Internet und/oder über Teilnehmernetzwerk bereitgestellt werden, wie ein Mobilfunknetzwerk oder ein WLan-Netzwerk.The cloud 1314 includes and / or is representative of a platform 1316 for resources 1318 , The platform 1316 abstracts the underlying functionality of hardware resources (such as servers) and software resources of the cloud 1314 , The resources 1318 may include applications and / or data that may be used while computer processing is performed on servers that are the computing device 1302 are away. The resources 1318 may also include services provided over the Internet and / or subscriber network, such as a cellular network or wireless network.

Die Plattform 1316 kann Ressourcen und Funktionen abstrahieren, um die Rechnervorrichtung 1302 mit anderen Rechnervorrichtungen zu verbinden. Die Plattform 1316 kann auch dazu dienen, das Skalieren von Ressourcen zu abstrahieren, um ein entsprechendes Niveau der Skalierung auf begegneter Anforderung an die Ressourcen 1318 zu bieten, die über die Plattform 1316 implementiert sind. Dementsprechend kann in einer Umgebung von miteinander verbundenen Vorrichtungen die Implementierung von hierin beschriebener Funktionalität über das System 1300 hinweg verteilt sein. Beispielsweise kann die Funktionalität teilweise auf der Rechnervorrichtung 1302 sowie teilweise mittels der Plattform 1316 implementiert sein, welche die Funktionalität der Cloud 1314 abstrahiert.The platform 1316 can abstract resources and functions to the computing device 1302 to connect with other computing devices. The platform 1316 may also serve to abstract the scaling of resources to a corresponding level of scaling to meet demanded resources 1318 to offer that over the platform 1316 are implemented. Accordingly, in an environment of interconnected devices, implementation of functionality described herein may be via the system 1300 be distributed across. For example, the functionality may be partially on the computing device 1302 and partly by means of the platform 1316 implements the functionality of the cloud 1314 abstracted.

Schlussfolgerungconclusion

Obwohl die Erfindung in einer Sprache beschrieben wurde, die für strukturelle Merkmale und/oder Verfahrensaktionen spezifisch ist, sei verstanden, dass die in den beigefügten Ansprühen definierte Erfindung nicht notwendiger Weise auf die beschriebenen spezifischen Merkmale oder Aktionen beschränkt ist. Vielmehr sind die spezifischen Merkmale und Aktionen als beispielhafte Formen der Implementierung der beanspruchten Erfindung offenbart.Although the invention has been described in language specific to structural features and / or method actions, it should be understood that the invention defined in the appended claims is not necessarily limited to the specific features or acts described. Rather, the specific features and acts are disclosed as exemplary forms of implementing the claimed invention.

Claims (20)

In einer digitalen Medienumgebung zum Lernen eines Modells (316), das verwendet werden kann, um automatisch und ohne Benutzereingriff explizit Bildmerkmale (706) eines eingegebenen Bildes (108) mit Textmerkmalen (704) zu korrelieren, ein Verfahren, das durch zumindest eine Rechnervorrichtung (102; 1302) implementiert ist, umfassend: Erhalten von Trainingsdaten (302) durch die zumindest eine Rechnervorrichtung (102; 1302), wobei die Trainingsdaten (302) Bilder (304) und assoziierten Text (306) beinhalten; Extrahieren von Textmerkmalen (704) als strukturiertes semantisches Wissen (310) aus dem assoziierten Text (306) der Trainingsdaten (302) unter Verwendung einer Verarbeitung natürlicher Sprache durch die zumindest eine Rechnervorrichtung (102; 1302); Trainieren eines Modells (316) unter Verwendung des strukturierten semantischen Wissens (310) und der Bilder (304) als Teil von maschinellem Lernen durch die zumindest eine Rechnervorrichtung (102; 1302), wobei das Modell (316), nachdem es trainiert ist, konfiguriert ist, eine strukturierte Bildrepräsentation (106) zu bilden, um explizit die Bildmerkmale (706) des eingegebenen Bildes (108) mit zumindest einem der extrahierten Textmerkmale (704) zu korrelieren.In a digital media environment for learning a model ( 316 ) that can be used to automatically and without user intervention explicitly image features ( 706 ) of an input image ( 108 ) with text features ( 704 ), a method by at least one computing device ( 102 ; 1302 ), comprising: obtaining training data ( 302 ) by the at least one computing device ( 102 ; 1302 ), whereby the training data ( 302 ) Images ( 304 ) and associated text ( 306 ) include; Extracting Text Features ( 704 ) as structured semantic knowledge ( 310 ) from the associated text ( 306 ) of the training data ( 302 ) using natural language processing by the at least one computing device ( 102 ; 1302 ); Train a model ( 316 ) using the structured semantic knowledge ( 310 ) and images ( 304 ) as part of machine learning by the at least one computing device ( 102 ; 1302 ), where the model ( 316 ) after being trained, a structured image representation ( 106 ) to explicitly define the image features ( 706 ) of the input image ( 108 ) with at least one of the extracted text features ( 704 ) to correlate. Verfahren nach Anspruch 1, weiter umfassend Erzeugen der strukturierten Bildrepräsentation (106) als eine beschreibende Zusammenfassung des eingegebenen Bildes (108) durch Assoziieren von strukturierten Tags mit dem eingegebenen Bild (108) unter Verwendung des trainierten Modells (316), wobei das Assoziieren ein Berechnen von Wahrscheinlichkeiten beinhaltet, dass die extrahierten Textmerkmale (704) und die Bildmerkmale (706) des eingegebenen Bildes (108) ein gleiches Konzept beschreiben.The method of claim 1, further comprising generating the structured image representation ( 106 ) as a descriptive summary of the input image ( 108 ) by associating structured tags with the input image ( 108 ) using the trained model ( 316 ), wherein associating includes calculating probabilities that the extracted text features ( 704 ) and the image features ( 706 ) of the input image ( 108 ) describe a similar concept. Verfahren nach Anspruch 1 oder Anspruch 2, wobei der assoziierte Text (306) in freiform und unstrukturiert ist.Method according to claim 1 or claim 2, wherein the associated text ( 306 ) is free-form and unstructured. Verfahren nach Anspruch 3, wobei der assoziierte Text (306) eine Bildbeschriftung oder Metadaten eines jeweiligen des Bildes (304) ist.The method of claim 3, wherein the associated text ( 306 ) an image caption or metadata of each one of the image ( 304 ). Verfahren nach einem der vorstehenden Ansprüche, wobei das strukturierte semantische Wissen (310) in einer Form eines Tupels <Subjekt, Attribut> oder <Subjekt, Prädikat, Objekt> ist.Method according to one of the preceding claims, wherein the structured semantic knowledge ( 310 ) in a form of a tuple <subject, attribute> or <subject, predicate, object>. Verfahren nach einem der vorstehenden Ansprüche, wobei das Extrahieren beinhaltet: Extrahieren einer Vielzahl der Textmerkmale (704) des strukturierten semantischen Wissens unter Verwendung eine Vielzahl von unterschiedlichen Tupelextraktionstechniken; und basierend auf einem zumindest teilweisen Konsens in der Vielzahl der Textmerkmale (704) des strukturierten semantischen Wissens (310), die extrahiert wurden unter Verwendung der Vielzahl unterschiedlicher Tupelextraktionstechniken: Bestimmen, ob zumindest eines der Textmerkmale (704) des strukturierten semantischen Wissens (310) korrigiert werden soll; Entfernen des zumindest einen der Textmerkmale (704) des strukturierten semantischen Wissens (310), oder Identifizieren eines Grades an Konfidenz in das Extrahieren von jeweiligen der Textmerkmale (704) des strukturierten semantischen Wissens (310) durch die zumindest eine Rechnervorrichtung (102; 1302).The method of any one of the preceding claims, wherein extracting includes: extracting a plurality of the text features ( 704 ) of the structured semantic knowledge using a variety of different tuple extraction techniques; and based on at least partial consensus in the plurality of textual features ( 704 ) of structured semantic knowledge ( 310 ) extracted using the plurality of different tuple extraction techniques: determine whether at least one of the textual features ( 704 ) of structured semantic knowledge ( 310 ) should be corrected; Removing the at least one of the textual features ( 704 ) of structured semantic knowledge ( 310 ), or identifying a degree of confidence in extracting each of the textual features ( 704 ) of structured semantic knowledge ( 310 ) by the at least one computing device ( 102 ; 1302 ). Verfahren nach einem der vorstehenden Ansprüche, wobei das Extrahieren beinhaltet: gemeinsames Extrahieren des strukturierten semantischen Wissens (310) für eine Vielzahl von individuellen der Textmerkmale (704) von assoziiert mit einem einzelnen jeweiligen Bild (304); und basierend auf einem zumindest teilweisen Konsens von zu der Vielzahl von einzelnen der Textmerkmale (704) des Texts (306), der mit dem einzelnen jeweiligen Bild (304) assoziiert ist; Bestimmen, ob zumindest eines der Vielzahl von individuellen Textmerkmalen (704) des strukturierten semantischen Wissens (310) zu korrigieren ist; Entfernen des zumindest einen von der Vielzahl von individuellen Textmerkmalen (704) des strukturierten semantischen Wissens (310); oder Identifizieren eines Grades an Konfidenz in das Extrahieren des jeweiligen Textmerkmals (704) des strukturierten semantischen Wissens (310) durch die zumindest eine Rechnervorrichtung (102; 1302).Method according to one of the preceding claims, wherein the extraction comprises: jointly extracting the structured semantic knowledge ( 310 ) for a plurality of individual textual features ( 704 ) associated with a single respective image ( 304 ); and based on at least partial consensus of the plurality of individual ones of the textual features ( 704 ) of the text ( 306 ), with the individual respective image ( 304 ) is associated; Determining whether at least one of the plurality of individual text features ( 704 ) of structured semantic knowledge ( 310 ) is to be corrected; Removing the at least one of the plurality of individual text features ( 704 ) of structured semantic knowledge ( 310 ); or identifying a degree of confidence in extracting the respective text feature ( 704 ) of structured semantic knowledge ( 310 ) by the at least one computing device ( 102 ; 1302 ). Verfahren nach einem der vorstehenden Ansprüche, wobei das Extrahieren beinhaltet Lokalisieren zumindest eines Teils des strukturierten semantischen Wissens (310) als entsprechend jeweiligen Subjekten, Prädikaten oder Objekten in jeweiligen der Bilder (304) der Trainingsdaten (302).Method according to one of the preceding claims, wherein the extracting comprises locating at least part of the structured semantic knowledge ( 310 ) as respective respective subjects, predicates or objects in respective ones of the images ( 304 ) of the training data ( 302 ). Verfahren nach einem der vorstehenden Ansprüche, wobei das Trainieren beinhaltet Anpassen der Textmerkmale (704) oder der Bildmerkmale (706) der Bildinformation aneinander, so dass ähnliche strukturierte Wissenskonzepte in der Nähe liegende und in Beziehung stehende Repräsentationen in einem Vektorraum als Teil des strukturierten semantischen Wissens (310) aufweisen.Method according to one of the preceding claims, wherein the training includes adapting the text features ( 704 ) or image features ( 706 ) of the image information, so that similar structured knowledge concepts represent nearby and related representations in a vector space as part of the structured semantic knowledge ( 310 ) exhibit. Verfahren nach einem der vorstehenden Ansprüche, wobei das Modell (316) die Bildmerkmale (706) des eingegebenen Bildes (108) explizit mit den Textmerkmalen (704) korreliert, so dass zumindest eines der Bildmerkmale (706) explizit mit einem ersten der Textmerkmale (704), aber nicht mit einem zweiten der Textmerkmale (704) korreliert ist.Method according to one of the preceding claims, wherein the model ( 316 ) the image features ( 706 ) of the input image ( 108 ) explicitly with the text features ( 704 ), so that at least one of the Image characteristics ( 706 ) explicitly with a first of the text characteristics ( 704 ), but not with a second of the text features ( 704 ) is correlated. Verfahren nach einem der vorstehenden Ansprüche, wobei die strukturierte Bildrepräsentation (106) des eingegebenen Bildes (108) strukturiertes semantisches Wissen (310), das von dem trainierten Modell (316) erhalten wurde, explizit mit dem eingegebenen Bild (108) korreliert und ausgeführt wird, ohne Text (306) zu verwenden, der anderweitig mit dem eingegebenen Bild (108) assoziiert ist.Method according to one of the preceding claims, wherein the structured image representation ( 106 ) of the input image ( 108 ) structured semantic knowledge ( 310 ), that of the trained model ( 316 ), explicitly with the entered image ( 108 ) is correlated and executed without text ( 306 ), otherwise using the input picture ( 108 ) is associated. In einer digitalen Medienumgebung zur Verwendung eines Modells (316), um explizit Textmerkmale (704) mit Bildmerkmalen (706) eines eingegebenen Bildes (108) automatisch und ohne Benutzereingriff zu korrelieren, ein System von zumindest einer Rechnervorrichtung (102; 1302), umfassend: ein Extraktionsmodul zum Extrahieren von strukturiertem semantischem Wissen (310) aus Text (306), der mit Bildern (304) in Trainingsdaten (302) assoziiert ist, unter Verwendung einer Verarbeitung natürlicher Sprache, wobei das strukturierte semantische Wissen (310) die Textmerkmale (704) beschreibt; ein Modelltrainingsmodul (312) zum Trainieren eines Modells (316) unter Verwendung des strukturierten semantischen Wissens (310) und von Bildmerkmalen (706) der Bilder (304) in den Trainingsdaten (302) als Teil von maschinellem Lernen durch die zumindest eine Rechnervorrichtung (102; 1302), wobei das Modell (316) konfiguriert ist zum Bestimmen von Wahrscheinlichkeiten, um vorherzusagen, wie gut Bildmerkmale (706) des eingegebenen Bildes (108) mit den extrahierten Textmerkmalen (704) korrelieren.In a digital media environment to use a model ( 316 ) to explicitly use text features ( 704 ) with image features ( 706 ) of an input image ( 108 ) to correlate automatically and without user intervention, a system of at least one computing device ( 102 ; 1302 ), comprising: an extraction module for extracting structured semantic knowledge ( 310 ) from text ( 306 ), with pictures ( 304 ) in training data ( 302 ) using natural language processing, wherein the structured semantic knowledge ( 310 ) the text characteristics ( 704 ) describes; a model training module ( 312 ) for training a model ( 316 ) using the structured semantic knowledge ( 310 ) and image features ( 706 ) of the pictures ( 304 ) in the training data ( 302 ) as part of machine learning by the at least one computing device ( 102 ; 1302 ), where the model ( 316 ) is configured to determine probabilities to predict how well image features ( 706 ) of the input image ( 108 ) with the extracted text features ( 704 ) correlate. System nach Anspruch 12, wobei der assoziierte Text (306) in freiform und unstrukturiert ist.The system of claim 12, wherein the associated text ( 306 ) is free-form and unstructured. System nach Anspruch 12 oder Anspruch 13, wobei das strukturierte semantische Wissen (310) in einer Form eines Tupels <Subjekt, Attribut> oder <Subjekt, Prädikat, Objekt> ist.The system of claim 12 or claim 13, wherein the structured semantic knowledge ( 310 ) in a form of a tuple <subject, attribute> or <subject, predicate, object>. System nach einem der Ansprüche 12 bis 14, wobei das Extraktionsmodul konfiguriert ist, zumindest einen Teil des strukturierten semantischen Wissens (310) als jeweiligen Objekten in jeweiligen der Bilder (304) entsprechend zu lokalisieren.The system of any one of claims 12 to 14, wherein the extraction module is configured to include at least a portion of the structured semantic knowledge ( 310 ) as respective objects in respective ones of the images ( 304 ) to locate accordingly. System nach einem der Ansprüche 12 bis 15, weiter umfassend ein Modul zur Verwendung der strukturierten Bildrepräsentation (106), das konfiguriert ist, die strukturierte Bildrepräsentation (106) zu verwenden, um das eingegebene Bild (108) zu lokalisieren als Teil einer Bildersuche als Teil einer Bestimmung, wie gut die strukturierte Bildrepräsentation (106) einer Suchabfrage der Bildersuche entspricht.The system of any of claims 12 to 15, further comprising a module for using the structured image representation ( 106 ) that is configured, the structured image representation ( 106 ) to use the input image ( 108 ) as part of a picture search as part of a determination of how well the structured image representation ( 106 ) corresponds to a search query the image search. System nach einem der Ansprüche 12 bis 16, weiter umfassend ein Modul zur Verwendung der strukturierten Bildrepräsentation (106), das konfiguriert ist, basierend auf der strukturierten Bildrepräsentation (106) eine Bildbeschriftung für das Bild (304) zu erzeugen.The system of any one of claims 12 to 16, further comprising a module for using the structured image representation ( 106 ), which is configured based on the structured image representation ( 106 ) an image caption for the image ( 304 ) to create. System nach einem der Ansprüche 12 bis 17, weiter umfassend ein Modul zur Verwendung der strukturierten Bildrepräsentation (106), das konfiguriert ist, basierend auf der strukturierten Bildrepräsentation (106) Szeneneigenschaften des eingegebenen Bildes (108) zu schlussfolgern.The system of any one of claims 12 to 17, further comprising a module for using the structured image representation ( 106 ), which is configured based on the structured image representation ( 106 ) Scene properties of the input image ( 108 ). In einer digitalen Medienumgebung zur Verwendung eines Modells (316) als Teil einer Bildersuche, um ein eingegebenes Bild (108) automatisch und ohne Benutzereingriff zu lokalisieren, ein Verfahren, das von zumindest einer Rechnervorrichtung (102; 1302) implementiert wird, umfassend: Extrahieren von strukturiertem semantischem Wissen (310) aus Text (306), der mit Bildern (304) in Trainingsdaten (302) assoziiert ist, unter Verwendung einer Verarbeitung natürlicher Sprache durch die zumindest eine Rechnervorrichtung (102; 1302), wobei das strukturierte semantische Wissen (310) Textmerkmale (704) beschreibt; Trainieren eines Modells (316) unter Verwendung des strukturierten semantischen Wissens (310) und der Bilder (304) aus den Trainingsdaten (302) als Teil von maschinellem Lernen durch die zumindest eine Rechnervorrichtung (102; 1302); Bilden einer strukturierten Bildrepräsentation (106) des eingegebenen Bildes (108), durch die zumindest eine Rechnervorrichtung (102; 1302), welche explizit zumindest einen Teil der Textmerkmale (704) der Trainingsdaten (302) mit Bildmerkmalen (706) des eingegebenen Bildes (108) korreliert; und Lokalisieren des eingegebenen Bildes (108) als Teil einer Bildersuche durch die zumindest eine Rechnervorrichtung (102; 1302), unter Verwendung der strukturierten Bildrepräsentation (106).In a digital media environment to use a model ( 316 ) as part of an image search to display an input image ( 108 ) automatically and without user intervention to locate a method, the at least one computing device ( 102 ; 1302 ), comprising: extracting structured semantic knowledge ( 310 ) from text ( 306 ), with pictures ( 304 ) in training data ( 302 ) using natural language processing by the at least one computing device ( 102 ; 1302 ), where the structured semantic knowledge ( 310 ) Text features ( 704 ) describes; Train a model ( 316 ) using the structured semantic knowledge ( 310 ) and images ( 304 ) from the training data ( 302 ) as part of machine learning by the at least one computing device ( 102 ; 1302 ); Forming a structured image representation ( 106 ) of the input image ( 108 ), by the at least one computing device ( 102 ; 1302 ) which explicitly include at least some of the textual features ( 704 ) of the training data ( 302 ) with image features ( 706 ) of the input image ( 108 ) correlates; and locate the input image ( 108 ) as part of an image search by the at least one computing device ( 102 ; 1302 ), using the structured image representation ( 106 ). Verfahren nach Anspruch 19, wobei der Text (306) eine Bildbeschriftung ist. The method of claim 19, wherein the text ( 306 ) is a picture caption.
DE102016010910.6A 2015-11-11 2016-09-08 Structured modeling and extraction of knowledge from images Pending DE102016010910A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201562254143P 2015-11-11 2015-11-11
US62/254,143 2015-11-11
US14/978,350 2015-12-22
US14/978,350 US11514244B2 (en) 2015-11-11 2015-12-22 Structured knowledge modeling and extraction from images

Publications (1)

Publication Number Publication Date
DE102016010910A1 true DE102016010910A1 (en) 2017-05-11

Family

ID=57234414

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016010910.6A Pending DE102016010910A1 (en) 2015-11-11 2016-09-08 Structured modeling and extraction of knowledge from images

Country Status (2)

Country Link
DE (1) DE102016010910A1 (en)
GB (1) GB2544853B (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110147538B (en) * 2018-07-05 2023-04-07 腾讯科技(深圳)有限公司 Picture set description generation method and device and computer equipment
CN111615702B (en) * 2018-12-07 2023-10-17 华为云计算技术有限公司 Method, device and equipment for extracting structured data from image
CN109818839B (en) * 2019-02-03 2022-02-25 三星电子(中国)研发中心 Personalized behavior prediction method, device and system applied to smart home
CN111783756B (en) * 2019-04-03 2024-04-16 北京市商汤科技开发有限公司 Text recognition method and device, electronic equipment and storage medium
WO2021042763A1 (en) * 2019-09-03 2021-03-11 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Image searches based on word vectors and image vectors
CN110866195B (en) * 2019-11-12 2024-03-19 腾讯科技(深圳)有限公司 Text description generation method and device, electronic equipment and storage medium
WO2021170230A1 (en) * 2020-02-26 2021-09-02 Huawei Technologies Co., Ltd. Devices and methods for providing images and image capturing based on a text and providing images as a text
CN112417869B (en) * 2020-12-10 2023-08-15 长春理工大学 Product model description comparison method and system
CN112613451A (en) * 2020-12-29 2021-04-06 民生科技有限责任公司 Modeling method of cross-modal text picture retrieval model
CN115688920B (en) * 2022-11-22 2023-08-25 百度国际科技(深圳)有限公司 Knowledge extraction method, training device, training equipment and training medium for model

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7814040B1 (en) * 2006-01-31 2010-10-12 The Research Foundation Of State University Of New York System and method for image annotation and multi-modal image retrieval using probabilistic semantic models
CN105938485B (en) * 2016-04-14 2019-06-14 北京工业大学 A kind of Image Description Methods based on convolution loop mixed model

Also Published As

Publication number Publication date
GB201615371D0 (en) 2016-10-26
GB2544853B (en) 2020-01-01
GB2544853A (en) 2017-05-31

Similar Documents

Publication Publication Date Title
DE102016010909A1 (en) Structured modeling, extraction and localization of knowledge from images
DE102016010910A1 (en) Structured modeling and extraction of knowledge from images
CN106682059B (en) Modeling and extraction from structured knowledge of images
CN111753060B (en) Information retrieval method, apparatus, device and computer readable storage medium
DE112015002286T9 (en) VISUAL INTERACTIVE SEARCH
DE102016013372A1 (en) Image labeling with weak monitoring
US20240078258A1 (en) Training Image and Text Embedding Models
DE102020001790A1 (en) Text-in-picture embedding techniques based on machine learning
DE60129652T2 (en) Image retrieval system and method with semantic and property-based relevance feedback
DE102019001663A1 (en) Compilation-sensitive digital image search
DE102020007571A1 (en) Use natural language processing and multiple object detection models to automatically select objects in images
DE102016014798A1 (en) Precise prediction of label relevance in a picture query
DE102020002301A1 (en) Automatic detection of objects requested by the user in images
DE102017011262A1 (en) Theme linking and marking for dense images
DE102019001267A1 (en) Dialog-like system for answering inquiries
CN111026842A (en) Natural language processing method, natural language processing device and intelligent question-answering system
DE112018006345T5 (en) GET SUPPORTING EVIDENCE FOR COMPLEX ANSWERS
DE10317234A1 (en) Systems and methods for improved accuracy from extracted digital content
CN102955848A (en) Semantic-based three-dimensional model retrieval system and method
Malinowski et al. A pooling approach to modelling spatial relations for image retrieval and annotation
CN112074828A (en) Training image embedding model and text embedding model
DE102018008268A1 (en) Automatically generate instructions from tutorials for search and user navigation
DE102021004562A1 (en) Modification of scene graphs based on natural language commands
Tommasi et al. Combining multiple cues for visual madlibs question answering
AU2016225820B2 (en) Structured knowledge modeling, extraction and localization from images

Legal Events

Date Code Title Description
R083 Amendment of/additions to inventor(s)
R081 Change of applicant/patentee

Owner name: ADOBE INC., SAN JOSE, US

Free format text: FORMER OWNER: ADOBE SYSTEMS INCORPORATED, SAN JOSE, CALIF., US

R082 Change of representative

Representative=s name: MUELLER-BORE & PARTNER PATENTANWAELTE PARTG MB, DE

R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06K0009640000

Ipc: G06V0030192000