DE112020003820T5 - Erkennung von Anomalien und Abweichungen unter Verwendung eines domänenindizierten Einschränkungs-Repository - Google Patents

Erkennung von Anomalien und Abweichungen unter Verwendung eines domänenindizierten Einschränkungs-Repository Download PDF

Info

Publication number
DE112020003820T5
DE112020003820T5 DE112020003820.3T DE112020003820T DE112020003820T5 DE 112020003820 T5 DE112020003820 T5 DE 112020003820T5 DE 112020003820 T DE112020003820 T DE 112020003820T DE 112020003820 T5 DE112020003820 T5 DE 112020003820T5
Authority
DE
Germany
Prior art keywords
constraints
attribute
data set
domain
computer
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
DE112020003820.3T
Other languages
English (en)
Inventor
Sandeep Hans
Samiulla Zakir Hussain Shaikh
Rema Anathanarayanan
Diptikalyan Saha
Aniya Aggarwal
Gagandeep Singh
Pranay Kumar Lohia
Manish Anand Bhide
Sameep Mehta
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112020003820T5 publication Critical patent/DE112020003820T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Complex Calculations (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Ein durch einen Computer implementiertes Verfahren umfasst Beziehen eines Datensatzes und von Informationen, die eine Domäne des Datensatzes anzeigen; Beziehen von Einschränkungen aus einem domänenindizierten Einschränkungs-Repository auf Grundlage des Datensatzes und der Informationen, wobei das domänenindizierte Einschränkungs-Repository einen Wissensgraphen mit einer Mehrzahl von Knoten aufweist, wobei jeder Knoten ein Attribut, das mindestens einer einer Mehrzahl von Domänen zugeordnet ist, und dem Attribut entsprechende Einschränkungen aufweist; Erkennen von Anomalien in dem Datensatz basierend darauf, ob Teile des Datensatzes die abgerufenen Einschränkungen verletzen; Erzeugen einer Erklärung für jede der Anomalien, die jeweils die den verletzten Einschränkungen entsprechenden Attribute beschreibt; und Ausgeben eines Hinweises auf die Anomalien und der entsprechenden Erklärung.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Anwendung betrifft allgemein Informationstechnologie und insbesondere die Erkennung von Anomalien und Abweichungen („Drift“).
  • HINTERGRUND
  • Die Erkennung von Anomalien betrifft das Identifizieren von Unregelmäßigkeiten in Daten und stützt sich im Allgemeinen auf statistische oder auf maschinellem Lernen beruhende Ansätze, die auf numerische oder codierte Daten angewendet werden. Üblicherweise können diese Ansätze nicht auf Rohdaten angewendet werden.
  • Anomalieerkennung wird in einer Vielzahl von Anwendungen eingesetzt, z.B. bei der Erkennung von Eindringlingen, Betrug, Fehlern, der Überwachung von Systemzuständen, der Erkennung von Ereignissen in Sensornetzen und dem Erkennen von Störungen in Ökosystemen.
  • KURZDARSTELLUNG
  • In einer Ausführungsform der vorliegenden Erfindung werden Methoden zur domänenorientierten erklärbaren Erkennung von Anomalien und Abweichungen für multivariate Rohdaten unter Verwendung eines Constraint Repository (Einschränkungsdatenarchiv) bereitgestellt. Ein beispielhaftes durch einen Computer implementiertes Verfahren umfasst die Schritte des Beziehens (i) eines Datensatzes und (ii) von Informationen, die eine Domäne des Datensatzes anzeigen; des Erkennens einer oder mehrerer Anomalien in dem Datensatz zumindest teilweise auf Grundlage eines domänenindizierten Einschränkungs-Repository, wobei das domänenindizierte Einschränkungs-Repository einen Wissensgraphen mit einer Mehrzahl von Knoten aufweist, wobei jeder Knoten (i) ein mindestens einer aus einer Mehrzahl von Domänen zugeordnetes Attribut und (ii) eine oder mehrere dem Attribut entsprechende Einschränkungen aufweist; des Erzeugens einer jeder der einen oder der mehreren Anomalien entsprechenden Erklärung; und des Ausgebens (i) eines Hinweises auf die eine oder die mehreren Anomalien und (ii) der entsprechenden natürlichsprachlichen Erklärungen.
  • Ein weiteres beispielhaftes durch einen Computer implementiertes Verfahren umfasst die Schritte des Beziehens eines Satzes von Datendateien, die Trainingsdaten aufweisen, wobei jede Datendatei in dem Satz einer einer Mehrzahl von Domänen entspricht; für jede gegebene Datendatei in dem Satz: (i) des Folgerns mindestens einer Einschränkung aus zumindest einem Teil der Trainingsdaten der gegebenen Datendatei, und (ii) des Speicherns der mindestens einen gefolgerten Einschränkung an einem Knoten in einem domänenindizierten Einschränkungs-Repository, wobei der Knoten die der gegebenen Datendatei entsprechende Domäne darstellt und wobei das domänenindizierte Einschränkungs-Repository einen Satz von Knoten aufweist, die hierarchische Beziehungen der Mehrzahl von Domänen definieren; des Aggregierens der gefolgerten Einschränkungen, die in dem domänenindizierten Einschränkungs-Repository gespeichert sind, auf Grundlage der hierarchischen Beziehungen der Mehrzahl von Domänen; des Abrufens einer oder mehrerer Einschränkungen aus dem domänenindizierten Einschränkungs-Repository auf Grundlage einer Domäne einer neuen Datendatei; und des Erkennens einer oder mehrerer Anomalien in der neuen Datendatei basierend darauf, ob ein oder mehrere Teile der neuen Datendatei die eine oder die mehreren abgerufenen Einschränkungen verletzen; und des Ausgebens (i) eines Hinweises auf die eine oder die mehreren Anomalien und (ii) einer natürlichsprachlichen Erklärung, die beschreibt, wie die Teile der neuen Datendatei die eine oder die mehreren abgerufenen Einschränkungen verletzen.
  • Eine weitere Ausführungsform der Erfindung oder Elemente davon können in Form eines Computerprogrammprodukts implementiert werden, das durch einen Computer lesbare Anweisungen enthält, die bei Implementierung einen Computer veranlassen, eine Mehrzahl von Verfahrensschritten auszuführen, wie vorliegend beschrieben. Des Weiteren kann eine weitere Ausführungsform der Erfindung oder Elemente davon in Form eines Systems implementiert werden, das einen Speicher sowie mindestens einen mit dem Speicher verbundenen und zum Ausführen genannter Verfahrensschritte konfigurierten Prozessor enthält. Eine weitere Ausführungsform der Erfindung oder Elemente davon können in Form von Mitteln zum Durchführen der vorliegend beschriebenen Verfahrensschritte oder Elemente davon implementiert werden. Die Mittel können Hardwaremodule oder eine Kombination aus Hardware- und Softwaremodulen aufweisen, wobei die Softwaremodule in einem materiellen, durch einen Computer lesbaren Speichermedium (oder mehreren solchen Medien) gespeichert sind.
  • Diese und weitere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden aus der nachstehenden ausführlichen Beschreibung veranschaulichender Ausführungsformen ersichtlich, die in Zusammenschau mit den begleitenden Zeichnungen zu lesen ist.
  • Figurenliste
    • 1 ist ein Blockschaubild, das eine Systemarchitektur gemäß einer beispielhaften Ausführungsform der Erfindung veranschaulicht;
    • 2 ist ein Blockschaubild, das eine weitere Systemarchitektur gemäß einer beispielhaften Ausführungsform der Erfindung veranschaulicht;
    • 3 ist ein Prozessablaufplan zum Erzeugen eines Einschränkungs-Repository gemäß beispielhaften Ausführungsformen;
    • 4 ist ein Blockschaubild, das ein Beispiel für einen Teilbaum eines Einschränkungs-Repository gemäß beispielhaften Ausführungsformen zeigt;
    • 5 ist ein Ablaufplan eines Prozesses zum Folgern von Einschränkungen gemäß beispielhaften Ausführungsformen;
    • 6 ist ein Ablaufplan, der Methoden gemäß einer Ausführungsform der Erfindung veranschaulicht;
    • 7 ist ein Systemschaubild eines beispielhaften Computersystems, auf dem mindestens eine Ausführungsform der Erfindung implementiert werden kann;
    • 8 zeigt eine Cloud-Computing-Umgebung gemäß einer Ausführungsform der vorliegenden Erfindung; und
    • 9 zeigt Abstraktionsmodellschichten gemäß einer Ausführungsform der vorliegenden Erfindung.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Bestehende Methoden zur Erkennung von Anomalien und Abweichungen liefern keine Erklärungen, wenn Anomalien entdeckt werden, abgesehen von beispielsweise dem Bereich der erwarteten Werte und dessen Abstand zum Ist-Wert. Es gibt keine intuitive Erklärung dafür, wie der erwartete Wert berechnet wird. Bestehende Methoden erfordern häufig auch, dass Eingabedaten umgewandelt oder codiert werden, und/oder berücksichtigen nicht die Domäne des Benutzers.
  • In vielen Anwendungsfällen der Anomalie- und Abweichungserkennung kann es von Vorteil sein, wenn neben den erkannten Anomalien auch eine intuitive Erklärung in natürlicher Sprache geliefert wird. Zudem konzentrieren sich bestehende Methoden zur Erkennung von Anomalien und Abweichungen auf Zeitreihendatensätze und berücksichtigen daher keine anomalen Ausreißer und/oder abweichende Datenpunkte in nichtzeitlichen Datensätzen.
  • Wie vorliegend beschrieben, umfasst eine Ausführungsform der vorliegenden Erfindung Bereitstellen einer erklärbaren Anomalieerkennung für Datensätze. So kann beispielsweise eine intelligente Data-Engineering-Plattform bereitgestellt werden, die automatisch Anomalien erkennt, die für einen Kontext (oder eine Domäne) eines Benutzers relevant sind, und auch Erklärungen zu diesen erkannten Anomalien liefert. Gemäß mindestens einer Ausführungsform wird zudem die Qualität neuer oder vorhandener Daten in Bezug auf einen Basisdatensatz berechnet. Die berechnete Qualität kann dann beispielsweise zur Validierung von Datenimporten aus verschiedenen Datenquellen verwendet werden. In einer oder mehreren beispielhaften Ausführungsformen wird automatische Abweichungserkennung auf Live-Nutzdaten für ein Modell für maschinelles Lernen angewendet.
  • 1 zeigt ein Beispiel für eine Systemarchitektur gemäß einer beispielhaften Ausführungsform der Erfindung. Das in 1 gezeigte Beispiel ist beispielsweise auf automatische Abweichungserkennung in Live-Nutzdaten für ein Modell für maschinelles Lernen anwendbar. Die in 1 dargestellte Systemarchitektur weist ein Einschränkungs-Repository 104 und ein Abweichungsanalysemodul 108 auf. In einigen Beispielen weist das Einschränkungs-Repository 104 einen Wissensgraphen (KG, Knowledge Graph) auf, der einer Mehrzahl von Domänen entspricht, wobei jedem Knoten im KG eine oder mehrere Einschränkungen zugewiesen werden können. Die eine oder die mehreren Einschränkungen können zum Beispiel auf Grundlage der Trainingsdaten 102 gelernt werden.
  • Das Abweichungsanalysemodul 108 weist ein Anomalieerkennungsmodul 110 und ein Clustermodul 112 auf. Nutzdaten 114 (z.B. Live- oder Echtzeit-Nutzdaten zur Einspeisung in ein eingesetztes Modell für maschinelles Lernen) werden dem Anomalieerkennungsmodul 110 bereitgestellt, ebenso wie Einschränkungen 106, die für die Nutzdaten 114 relevant sind. Das Anomalieerkennungsmodul 110 wendet die Einschränkungen 106 auf die Nutzdaten 114 an, um eine oder mehrere Anomalien zu erkennen, aus denen dann durch das Clustermodul 112 Cluster gebildet werden. Auf Grundlage der Clusterbildung bestimmt das Clustermodul 112 abweichende Datensegmente. Zusätzlich erzeugt das Abweichungsanalysemodul 108 Erklärungen dazu, wie die abweichenden Segmente berechnet wurden. Das Abweichungsanalysemodul 108 gibt dann die abweichenden Segmente mit den entsprechenden Erklärungen 116 beispielsweise an einen Benutzer aus. Beispielsweise kann das Abweichungsanalysemodul 108 aus den erkannten Anomalien eine Mehrzahl von Clustern bilden, und wenn die Größe eines gegebenen Clusters größer als ein Schwellenwert ist, so wird dieser als Abweichung bezeichnet. Die Clusterbildung kann auf Grundlage der Art der Anomalien und ihrer Parameter erfolgen, beispielsweise des Abstands zu den erwarteten Werten.
  • 2 zeigt ein weiteres Beispiel für eine Systemarchitektur gemäß einer beispielhaften Ausführungsform der Erfindung. Das in 2 gezeigte Beispiel ist beispielsweise auf das Erkennen von Anomalien auf Grundlage von Datenqualität anwendbar. Die in 2 dargestellte Systemarchitektur enthält ein Einschränkungs-Repository 204 und ein Qualitätsanalysemodul 210. Das Einschränkungs-Repository 204 kann beispielsweise einen KG enthalten, der einer Mehrzahl von Domänen entspricht, wobei jedem Knoten im KG eine oder mehrere Einschränkungen beispielsweise auf Grundlage des Basisdatensatzes 202 zugewiesen sind.
  • Das Qualitätsanalysemodul 210 berechnet eine Qualität neuer Daten 214 (z.B. Daten, die in eine Datenbank importiert werden) in Bezug auf einen Basisdatensatz 202 unter Verwendung von Einschränkungen 206 aus dem Einschränkungs-Repository 204. Das Qualitätsanalysemodul 210 erkennt automatisch Anomalien 216 und erzeugt Erklärungen 218 (z.B. natürlichsprachliche Erklärungen) auf Grundlage der berechneten Qualität der neuen Daten 214, die dann beispielsweise an einen Benutzer ausgegeben werden können. In mindestens einer Ausführungsform können die Anomalien 216 und Erklärungen 218 zur automatischen Validierung oder Überprüfung der neuen Daten 214 verwendet werden.
  • 3 zeigt einen Prozessablaufplan zum Füllen eines KG eines Einschränkungs-Repository 310 gemäß beispielhaften Ausführungsformen. Das Einschränkungs-Repository 310 enthält einen KG mit einer Domänenstruktur. Genauer gesagt enthält die Domänenstruktur eine Domänenhierarchie, die zugrunde liegende Daten gemäß einer Semantik der Domänenhierarchie ausrichtet oder gruppiert. So wird beispielsweise eine Gruppe von Domänen unter einer übergeordneten Domäne zusammengefasst (z.B. umfasst eine übergeordnete Domäne „Unternehmen“ IT-Unternehmen, Banken usw.).
  • In Schritt 304 wird aus einem oder mehreren Datensätzen 302 (wie beispielsweise Datendateien) ein Satz von Einschränkungen gefolgert. Der Satz von Einschränkungen kann mithilfe von Folgerungsregeln gefolgert werden, die auf einem Datentyp (z.B. Text, numerisch usw.) oder auf einem Attributtyp (z.B. Geburtsdatum, Gehalt, PIN-Code usw.) beruhen können. Der Prozess wird mit Schritt 306 fortgesetzt, in dem ein domänenbasierter Einschränkungszusammenführungsprozess durchgeführt wird. Der domänenbasierte Einschränkungszusammenführungsprozess kann Ermitteln von Statistiken von Einschränkungen aus verschiedenen der Datensätze 302 unter bestimmten Domänen und Zusammenführen der Einschränkungen gemäß Zusammenführungsregeln auf Grundlage beispielsweise eines Datentyps oder eines Attributtyps umfassen. In einigen beispielhaften Ausführungsformen können Zusammenführungsoperationen auf Basis einer jeweiligen Anfrage durchgeführt werden, beispielsweise wenn ein Benutzer eine Benutzereingabe 312 bereitstellt, die beispielsweise eine Anfrage nach bestimmten Einschränkungen in Bezug auf ein bestimmtes Attribut in einer bestimmten Domäne enthält. Schritt 308 umfasst Durchführen einer bereichsbasierten Indizierung von Einschränkungen, die die Einschränkungen auf Knoten des KG im Einschränkungs-Repository 310 indiziert. Auf diese Weise lassen sich Einschränkungen abrufen, die die ganzheitlichen Einschränkungsinformationen der spezifischen Domäne und unter der Hierarchie liegender Domänen enthalten.
  • Gemäß einer oder mehreren beispielhaften Ausführungsformen wird ein KG in einem Content-Repository (Repository (Datenarchiv) für Inhaltsdateien; z.B. das Content-Repository 310) unter Verwendung der folgenden Arten von Scheitelpunkten gespeichert:
    • • Domänenscheitelpunkte (DV, domain vertices): Jeder Domänenscheitelpunkt steht für eine bestimmte Domäne (z.B. IT-Unternehmen, Banken usw.).
    • • Dateiinformationsscheitelpunkte (FIV, file information vertices): Jeder Datensatz (oder jede Datei) wird durch eine eindeutige Kennung (z.B. FilelD) dargestellt, und jeder FIV stellt einen Knoten in Bezug auf jede Datei dar (indiziert durch FilelD). Der FIV enthält Metadateninformationen auf Dateiebene, beispielsweise Anzahl der Zeilen, Anzahl der Spalten usw.).
    • • Einschränkungsscheitelpunkte auf Dateiebene (FLCV, file level constraint vertices):
      • Jedes Attribut einer gegebenen Datei kann an einer Einzelattribut- oder Mehrfachattributeinschränkung beteiligt sein. Jede Einschränkung steht für einen separaten FLCV im KG. Die FLCV-Eigenschaft umfasst die Einschränkungsinformationsstatistik.
    • • Einschränkungsscheitelpunkte auf Domänenebene (DLCV, domain level constraint vertices): Jeder DLCV enthält die aggregierten Statistiken einer jeweiligen Einschränkung in einer gegebenen Domäne. Die Aggregation beinhaltet alle Informationen aus Dateien, die in der Sub-Domänen-Hierarchie der gegebenen Domäne liegen. Die DLVC werden jeweils für jede Anfrage in der gegebenen Domäne erzeugt. Ein DLCV kann ein Aktualisierungs-Flag führen, das angibt, ob die Einschränkungsstatistiken aktualisiert sind oder nicht.
  • Zudem kann der KG die folgenden Arten von Kantenbeziehungen enthalten:
    • • subdomain: Definiert eine Beziehung zwischen unmittelbaren hierarchischen Domänen (z.B. ist ein Domänenscheitelpunkt „IT-Unternehmen“ eine Teildomäne von „Unternehmen“).
    • • attachedTo: Definiert eine Beziehung zwischen FIVs und DVs.
    • • fileConstaintsOf: Definiert eine Beziehung zwischen FIVs und FLCVs.
    • • domainConstrainOf: Definiert eine Beziehung zwischen DLCVs und DVs.
  • Bei einer Datendatei und einer Domäne als Eingabe können dem Wissensgraphen Einschränkungen hinzugefügt werden, indem aus der Datendatei Einschränkungen gefolgert werden (z.B. kann eine Einschränkung für eine Spalte „Alter“ in der Datendatei Folgern von Statistiken wie Minimum, Maximum und Median umfassen). Anschließend wird ein FIV für den Datensatz erstellt und ein FLCV für jede Einschränkung, die mit dem FlV-Scheitelpunkt verknüpft ist. Der FlV-Scheitelpunkt wird mit dem entsprechenden DV verknüpft (z.B. auf Grundlage der Eingabedomäne). Für jeden FLCV im FIV wird ein Test durchgeführt, um zu prüfen, ob der DLCV-Scheitelpunkt im DV enthalten ist. Ist das Aktualisierungs-Flag auf „wahr“ gesetzt, wird der Wert des Flag auf „falsch“ geändert, und der Prozess wird für den übergeordneten DV wiederholt. Wenn das Aktualisierungs-Flag auf „falsch“ gesetzt ist, wird die Einschränkung hinzugefügt.
  • Im KG gespeicherte Einschränkungen können durch Bereitstellen eines Einschränkungsattributs und einer Domäne als Eingabe auf Grundlage des nachstehenden Prozesses abgerufen werden. Es wird eine DLCV-Verarbeitung durchgeführt, die Durchführen eines Tests umfasst, der prüft, ob ein DLCV in Bezug auf das eingegebene Einschränkungsattribut an einem DV in Bezug auf die eingegebene Domäne existiert. Wenn der DLCV existiert und das Aktualisierungs-Flag auf „wahr“ gesetzt ist, werden die Scheitelpunkt-Informationsstatistiken zurückgeliefert. Andernfalls wird eine FLCV-Verarbeitung durchgeführt, die umfasst, dass für jeden FIV, der mit einem DIV verknüpft ist, der der eingegebenen Domäne entspricht, eine erste Liste von FLCVs erstellt wird, indem jeder FLCV in Bezug auf das eingegebene Einschränkungsattribut geprüft wird und die Informationen für alle FLCVs in der Liste zusammengestellt werden. Anschließend wird Teildomänenverarbeitung durchgeführt, was Erzeugen einer zweiten Liste von DIVs in Bezug auf Teildomänen der eingegebenen Domäne und Aufrufen eines Einschränkungszugangsflusses (constraint acces flow) für alle DIVs in der zweiten Liste umfasst. Die Informationen werden für jeden Aufruf in der zweiten Liste zusammengestellt.
  • Die Informationen der ersten Liste und die Informationen der zweiten Liste werden unter Anwendung von Zusammenführungsregeln (z.B. spezifisch für einen Datentyp oder ein Attribut) zusammengeführt. Die zusammengeführten Informationen werden am DLCV-Scheitelpunkt gespeichert, der der eingegebenen Domäne entspricht, und das Aktualisierungs-Flag wird auf „wahr“ gesetzt. Anschließend gibt der Prozess die zusammengeführten Informationen zurück.
  • 4 veranschaulicht ein Beispiel für einen Teilbaum 400 eines Einschränkungs-Repository gemäß beispielhaften Ausführungsformen. Der Teilbaum 400 kann zum Beispiel Teil eines KG im Einschränkungs-Repository sein. Der Teilbaum 400 enthält eine Anzahl von Ebenen 402-1 bis 402-5 (zusammenfassend als Ebenen 402 bezeichnet). Der Wurzelknoten auf Ebene 402-1 zeigt an, dass der Teilbaum 400 „Einrichtungen“ darstellt. Jede nachfolgende Ebene 402 erhöht die Abstraktion der Ebene im Vergleich zu vorherigen Knoten. Die Ebene 402-2 enthält beispielsweise einen Knoten „Unternehmen“, und die Ebene 402-3 enthält Knoten, die Arten von Unternehmen entsprechen (d.h. IT-Unternehmen und Banken.)
  • Gemäß einer oder mehreren beispielhaften Ausführungsformen können Datensätze auf Knoten eines KG in einem Einschränkungs-Repository abgebildet werden. Wenn kein geeigneter KG-Knoten gefunden wird, wird ein neuer Knoten unter dem spezifischsten abstrakten Knoten erstellt. Wenn beispielsweise, unter erneuter Bezugnahme auf 4, ein neuer Datensatz (z.B. eine Datendatei oder ein Dokument) Informationen für ein IT-Unternehmen mit dem Namen „Unternehmen D“ enthält, wird ein neuer Knoten unter dem Knoten „IT-Unternehmen“ für das Unternehmen D erstellt, da es keinen bestehenden Knoten für ein solches Unternehmen gibt. Einschränkungen werden aus jedem neuen Datensatz gelernt (z.B. aus einem Satz von Trainingsdatensätzen oder auf Grundlage neuer Datensätze). Die Einschränkungen werden dann zu den jeweiligen Knoten im Einschränkungs-Repository hinzugefügt. Einschränkungen über Zwischenknoten können durch Aggregieren der Einschränkungen über alle Teilbäume ermittelt werden.
  • Gemäß mindestens einer beispielhaften Ausführungsform werden neue Datensätze (oder Dokumente) anhand des Einschränkungs-Repository validiert. So wird beispielsweise ein neuer Datensatz auf den spezifischsten möglichen Knoten im Einschränkungs-Repository abgebildet. Unter erneuter Bezugnahme auf 4 sei etwa angenommen, dass ein neuer Datensatz Informationen für ein IT-Unternehmen mit dem Namen „Unternehmen E“ enthält. Da es im Teilbaum 400 kein „Unternehmen E“ gibt, wird der Datensatz stattdessen auf den Knoten „IT-Unternehmen“ abgebildet. Die Einschränkungen im zugeordneten Knoten werden dann verwendet, um die Aufzeichnungen im Testdatensatz auf Anomalien zu validieren.
  • In einigen Ausführungsbeispielen speichert das Einschränkungs-Repository Domänengraphen (z.B. unter Verwendung von JanusGraph®), in denen die Einschränkungen den Attributen zugeordnet werden. Beispielsweise können die Attribute einer bestimmten Domäne durchsucht, die Einschränkungen von Attributen abgerufen und CRUD- (Copy, Read, Update and Delete; Kopieren, Lesen, Aktualisieren und Löschen) Operationen an den Domänen und Einschränkungen durchgeführt werden.
  • Zudem können Einschränkungen im Einschränkungs-Repository über Datensätze und verschiedene Domänen hinweg zusammengeführt werden. Zum Beispiel kann eine Alterseinschränkung 28 < Alter < 42 mit Gewichtungen, die mit Teilbereichen (z. B. 29-30, 31-34, 35-39 und 40-42) verbunden sind, so zusammengeführt werden, dass Einschränkungen von beispielsweise 29 < Alter < 34 und 34 < Alter < 42 für jeweilige „Alter“-Knoten im Einschränkungs-Repository gebildet werden.
  • 5 ist ein Ablaufplan 500 zum Folgern von Einschränkungen aus einem Datensatz gemäß beispielhaften Ausführungsformen. In diesem Beispiel sind die Einschränkungen 502 in Einzelattributeinschränkungen 504 und Mehrfachattributeinschränkungen 506 unterteilt. Die Einzelattributeinschränkungen 504 umfassen drei verschiedene Typen 508, nämlich einen Text-Typ 510, einen numerischen Typ 512 und einen kategorischen Typ 514, die beispielsweise anhand einer Eindeutigkeit dem Attribut entsprechender Daten identifiziert werden können.
  • Der Text-Typ 510 kann unstrukturiert 516 sein (z.B. Kommentare in einem Dokument, Namen usw.). In diesem Fall können Anomalien beispielsweise durch Führen von Unigramm- und Bigramm-Häufigkeiten von Text in einem Trie erkannt werden. Bei einem strukturierten Typ 518 (z.B. einer Telefonnummer, einem Datum, einer Sozialversicherungsnummer usw.) können Anomalien beispielsweise basierend darauf erkannt werden, ob der Text einem regulären Ausdruck folgt. Bei einem numerischen Attributtyp 512 kann eine Anomalie auf Grundlage der statistischen Eigenschaften wie beispielsweise Verteilungen oder Bereiche (min, max) erkannt werden. Der kategorische Typ 514 kann in Form von Text 520 (z.B. Geschlecht) oder numerisch 522 (z.B. Ländernamen, Quartalszahlen usw.) vorliegen, und eine Anomalie kann auf Wahrscheinlichkeitswerten beruhen. Wenn beispielsweise für eine Aufzeichnung in einem Datensatz mit einem kategorischen Typ 514 P(Wert) < 10-4 ist, dann wird die Aufzeichnung als anomal erkannt.
  • Mehrfachattribut-Einschränkungen 506 enthalten Kombinationen von Einzelattributen. In dem in 4 gezeigten Beispiel umfassen die verschiedenen Typen von Mehrfachattribut-Einschränkungen 506 numerisch-numerisch 524 (z.B. Alter-Gehalt); kategorisch-numerisch 526 (z.B. Familienstand, Alter); kategorisch-kategorisch 528 (z.B. Land, Staat); und kategorisch-Text 530 (z.B. Name, Geschlecht).
  • Nachfolgend einige nichteinschränkende Beispiele dafür, wie Mehrfachattribut-Einschränkungen 506 zur Erkennung von Anomalien verwendet werden können:
    • • Numerisch-Kategorisch: Für jeden entdeckten Bereich eines numerischen Attributs wird eine Anomalie erkannt, wenn für ein kategorisches Attribut p(Wert) < 10-4 ist.
    • • Numerisch-Numerisch: Für jeden entdeckten Bereich eines unabhängigen numerischen Attributs wird eine lineare, polynomische oder exponentielle Funktion mit einem Konfidenzwert erlernt; ist der Wert des abhängigen numerischen Attributs von der erlernten Funktion weiter als eine durch die Konfidenz festgelegte Spanne entfernt, so wird er als Anomalie erkannt.
    • • Kategorisch-Kategorisch: Paare kategorischer Attribute, deren Konfidenz (x->y) unter dem Schwellenwert liegt, werden mit Flags als anomal gekennzeichnet.
    • • Kategorisch-Numerisch: Für jeden Wert des kategorischen Attributs wird eine separate Verteilung des numerischen Attributs gelernt, und Stichproben, die von der Verteilung abweichen, werden als Anomalien erkannt.
  • Als Beispiel sei angenommen, dass aus einem Basisdatensatz mit den Attributen Familienstand und Alter die folgenden Einschränkungen gefolgert werden. · Konfidenz ( 0 < Alter < = 18 ) = 100 %
    Figure DE112020003820T5_0001
    · Konfidenz ( 100 > Alter > 18 ) = exp ( x / 50 18 )
    Figure DE112020003820T5_0002
  • Diese Einschränkung kann auf einen Zieldatensatz angewandt werden, um Konfidenzwerte der Aufzeichnungen im Zieldatensatz zu ermitteln. Zum Beispiel würde eine Aufzeichnung „ledig, 5“ ein Konfidenzniveau von 100 % ergeben, während eine Aufzeichnung „verheiratet, 14“ ein Konfidenzniveau von 0 % ergeben würde. Beide Beispiele könnten als anomal erkannt werden, und gemäß einer oder mehreren beispielhaften Ausführungsformen könnte eine Erklärung erzeugt werden, warum die Aufzeichnungen als anomal markiert wurden. Wenn Aufzeichnungen aktualisiert/eingefügt werden, können ebenfalls Anomalien erkannt werden. So kann zum Beispiel eine Aufzeichnung „ledig, 140“, die dem Basisdatensatz hinzugefügt wird, als anomal erkannt werden, da der Konfidenzwert ebenfalls 0 % beträgt.
  • 6 ist ein Ablaufplan, der Methoden gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht. Schritt 600 umfasst Beziehen (i) eines Datensatzes und (ii) von Informationen, die eine Domäne des Datensatzes angeben. Schritt 602 umfasst Beziehen einer oder mehrerer Einschränkungen aus einem domänenindizierten Einschränkungs-Repository zumindest teilweise auf Grundlage (i) des Datensatzes und (ii) der Informationen, wobei das domänenindizierte Einschränkungs-Repository einen Wissensgraphen mit einer Mehrzahl von Knoten aufweist, wobei jeder Knoten (i) ein Attribut, das mindestens einer aus einer Mehrzahl von Domänen zugeordnet ist, und (ii) eine oder mehrere dem Attribut entsprechende Einschränkungen aufweist. Schritt 604 umfasst Erkennen einer oder mehrerer Anomalien in dem Datensatz zumindest teilweise basierend darauf, ob ein oder mehrere Teile des Datensatzes die eine oder die mehreren bezogenen Einschränkungen verletzen. Schritt 606 umfasst Erzeugen einer Erklärung für jede der einen oder der mehreren Anomalien, die jeweils die der einen oder den mehreren verletzten Einschränkungen entsprechenden Attribute beschreibt. Schritt 608 umfasst Ausgeben (i) eines Hinweises auf die eine oder mehrere Anomalien und (ii) der entsprechenden Erklärungen.
  • Jeder von einem oder mehreren Teilbäumen des Wissensgraphen kann einer gegebenen der Mehrzahl von Domänen entsprechen, und jede Ebene eines gegebenen der Teilbäume kann eine Abstraktionsebene der gegebenen Domäne relativ zu einer vorherigen Ebene in dem gegebenen Teilbaum erhöhen. Das Erkennen kann Abbilden des Datensatzes auf einen oder mehrere der Mehrzahl von Knoten auf Grundlage der die Domäne des Datensatzes angebenden Informationen und Anwenden der Einschränkungen der zugeordneten Knoten auf den Datensatz zur Erkennung der einen oder der mehreren Anomalien umfassen. Die eine oder die mehreren Einschränkungen können eine Einzelattribut-Einschränkung und/oder eine Mehrfachattribut-Einschränkung enthalten. Die Einzelattribut-Einschränkung kann einem der Folgenden entsprechen: (i) einem Textattribut; (ii) einem numerischen Attribut; und (iii) einem kategorischen Attribut, wobei die Mehrfachattribut-Einschränkung zwei oder mehreren der Folgenden entspricht: (i) einem Textattribut; ii) einem numerischen Attribut; und iii) einem kategorischen Attribut. Jede Einschränkung kann ein Modell enthalten, das auf (i) dem Typ der Einzelattribut-Einschränkung und/oder (ii) dem Typ der Mehrfachattribut-Einschränkung basiert, wobei das Erkennen Anwenden des Modells auf zumindest einen Teil des Datensatzes umfasst. Der Datensatz kann Echtzeitdaten mindestens eines Modells für maschinelles Lernen enthalten, und der Prozess in 6 kann Folgendes umfassen: Erkennen von Abweichung in einem oder mehreren Segmenten der Echtzeitdaten unter Verwendung einer auf maschinellem Lernen beruhenden Clustermethode; und Ausgeben von Segmenten der Echtzeitdaten, die der Abweichung entsprechen. Das Erzeugen der Erklärung für jede der einen oder der mehreren Anomalien kann Erzeugen und Ausgeben einer Erklärung für jedes der Segmente der Echtzeitdaten umfassen, die der Abweichung entsprechen. Die Erklärung für jede der einen oder der mehreren Anomalien kann eine Erklärung in natürlicher Sprache enthalten, die beschreibt, wie die Teile die eine oder die mehreren abgerufenen Einschränkungen verletzen. Das Erkennen kann Ermitteln eines eine Qualität des Datensatzes anzeigenden Wertes auf Grundlage eines Vergleichs des Datensatzes mit einem Basisdatensatz umfassen. Wahlweise kann der in 6 dargestellte Prozess Validieren des Datensatzes in Reaktion darauf umfassen, dass der die Qualität des Datensatzes anzeigende Wert einen Schwellenwert erfüllt. Der Datensatz kann Rohdaten enthalten, die weder codiert noch transformiert sind.
  • Eine weitere beispielhafte Ausführungsform umfasst ein Verfahren, das Beziehen eines Satzes von Datendateien umfasst, die Trainingsdaten aufweisen, wobei jede Datendatei in dem Satz einer einer Mehrzahl von Domänen entspricht; und für jede gegebene Datendatei in dem Satz: (i) Folgern mindestens einer Einschränkung aus zumindest einem Teil der Trainingsdaten der gegebenen Datendatei, und (ii) Speichern der mindestens einen gefolgerten Einschränkung an einem Knoten in einem domänenindizierten Einschränkungs-Repository, wobei der Knoten die der gegebenen Datendatei entsprechende Domäne darstellt und wobei das domänenindizierte Einschränkungs-Repository einen Satz von Knoten aufweist, die hierarchische Beziehungen der Mehrzahl von Domänen definieren; Aggregieren der gefolgerten Einschränkungen, die in dem domänenindizierten Einschränkungs-Repository gespeichert sind, auf Grundlage der hierarchischen Beziehungen der Mehrzahl von Domänen; Abrufen einer oder mehrerer Einschränkungen aus dem domänenindizierten Einschränkungs-Repository auf Grundlage einer Domäne einer neuen Datendatei; und Erkennen einer oder mehrerer Anomalien in der neuen Datendatei basierend darauf, ob ein oder mehrere Teile der neuen Datendatei die eine oder die mehreren abgerufenen Einschränkungen verletzen; und Ausgeben (i) eines Hinweises auf die eine oder die mehreren Anomalien und (ii) einer natürlichsprachlichen Erklärung, die beschreibt, wie die Teile der neuen Datendatei die eine oder die mehreren abgerufenen Einschränkungen verletzen.
  • Die in 6 dargestellten Methoden können, wie vorliegend beschrieben, zudem Bereitstellen eines Systems umfassen, wobei das System verschiedene Softwaremodule enthält, wobei jedes der verschiedenen Softwaremodule auf einem materiellen, durch einen Computer lesbaren, beschreibbaren Speichermedium enthalten ist. Alle Module (oder eine beliebige Teilmenge davon) können sich auf demselben Medium befinden, oder jedes Modul kann beispielsweise auf einem anderen Medium gespeichert sein. Die Module können beliebige oder alle der in den Figuren gezeigten und/oder vorliegend beschriebenen Komponenten enthalten. In einer Ausführungsform der Erfindung können die Module beispielsweise auf einem Hardwareprozessor laufen. Die Verfahrensschritte können dann unter Verwendung der verschiedenen Softwaremodule des Systems wie vorstehend beschrieben ausgeführt werden, die auf einem Hardwareprozessor laufen. Ferner kann ein Computerprogrammprodukt ein materielles, durch einen Computer lesbares, beschreibbares Speichermedium mit Code enthalten, der so angepasst ist, dass er ausgeführt werden kann, um mindestens einen vorliegend beschriebenen Verfahrensschritt auszuführen, einschließlich der Bereitstellung des Systems mit den verschiedenen Softwaremodulen.
  • Zusätzlich können die in 6 dargestellten Methoden über ein Computerprogrammprodukt implementiert werden, das einen durch einen Computer verwendbaren Programmcode enthalten kann, der in einem durch einen Computer lesbaren Speichermedium in einem Datenverarbeitungssystem gespeichert ist, wobei der durch einen Computer verwendbare Programmcode über ein Netzwerk von einem entfernt angeordneten Datenverarbeitungssystem heruntergeladen wurde. In einer Ausführungsform der Erfindung kann das Computerprogrammprodukt zudem durch einen Computer verwendbaren Programmcode enthalten, der in einem durch einen Computer lesbaren Speichermedium in einem Server-Datenverarbeitungssystem gespeichert ist, wobei der durch einen Computer verwendbare Programmcode über ein Netzwerk auf ein entfernt angeordnetes Datenverarbeitungssystem zur Verwendung in einem durch einen Computer lesbaren Speichermedium bei dem entfernt angeordneten System heruntergeladen wird.
  • Eine Ausführungsform der Erfindung oder Elemente davon können in Form einer Vorrichtung implementiert werden, die einen Speicher sowie mindestens einen mit dem Speicher verbundenen und zum Ausführen beispielhafter Verfahrensschritte konfigurierten Prozessor enthält.
  • Zudem kann bei einer Ausführungsform der vorliegenden Erfindung Software verwendet werden, die auf einem Computer oder einer Workstation läuft. Gemäß 7 könnte eine solche Implementierung beispielsweise einen Prozessor 702, einen Speicher 704 und eine Eingabe/Ausgabe-Schnittstelle verwenden, die beispielsweise aus einer Anzeige 706 und einer Tastatur 708 gebildet ist. Die Bezeichnung „Prozessor“ soll vorliegend jede beliebige Verarbeitungseinheit umfassen, wie beispielsweise eine solche, die eine CPU (Zentraleinheit) und/oder andere Formen von Verarbeitungsschaltungen enthält. Außerdem kann sich die Bezeichnung „Prozessor“ auf mehr als einen einzelnen Prozessor beziehen. Die Bezeichnung „Speicher“ soll einem Prozessor oder einer CPU zugehörigen Speicher wie beispielsweise RAM (Direktzugriffsspeicher), ROM (Nur-Lese-Speicher), eine Festspeichereinheit (beispielsweise eine Festplatte), eine Wechselspeichereinheit (beispielsweise eine Diskette), einen Flashspeicher und dergleichen umfassen. Zudem soll der Ausdruck „Eingabe/Ausgabe-Schnittstelle“ vorliegend beispielsweise einen Mechanismus zum Eingeben von Daten in die Verarbeitungseinheit (beispielsweise eine Maus) und einen Mechanismus zum Bereitstellen von Ergebnissen in Verbindung mit der Verarbeitungseinheit (beispielsweise einen Drucker) umfassen. Der Prozessor 702, der Speicher 704 und die Eingabe/Ausgabe-Schnittstelle wie die Anzeige 706 und die Tastatur 708 können beispielsweise über den Bus 710 als Teil einer Datenverarbeitungseinheit 712 miteinander verbunden sein. Geeignete Verbindungen, beispielsweise über den Bus 710, können auch zu einer Netzwerkschnittstelle 714, beispielsweise einer Netzwerkkarte, die als Schnittstelle zu einem Computernetzwerk vorgesehen werden kann, und zu einer Medienschnittstelle 716, beispielsweise einem Disketten- oder CD-ROM-Laufwerk, die als Schnittstelle zu Medien 718 vorgesehen werden kann, bereitgestellt werden.
  • Dementsprechend kann Computersoftware, die Anweisungen oder Code zum Durchführen der vorliegend beschriebenen Methoden der Erfindung enthält, in zugehörigen Speichereinheiten (beispielsweise ROM, Fest- oder Wechselspeicher) gespeichert sein und, wenn sie einsatzbereit ist, ganz oder teilweise (beispielsweise in RAM) geladen und von einer CPU implementiert werden. Eine solche Software kann, ohne jedoch hierauf eingeschränkt zu sein, Firmware, residente Software, Mikrocode und dergleichen enthalten.
  • Ein Datenverarbeitungssystem, das zum Speichern und/oder Ausführen von Programmcode geeignet ist, enthält mindestens einen Prozessor 702, der direkt oder indirekt über einen Systembus 710 mit Speicherelementen 704 verbunden ist. Zu den Speicherelementen können während der eigentlichen Implementierung des Programmcodes eingesetzter lokaler Speicher, Großraumspeicher und Cachespeicher zählen, die eine kurzzeitige Speicherung von zumindest einigem Programmcode gewährleisten, um die Zahl von Abrufen von Code aus dem Großraumspeicher während der Implementierung zu verringern.
  • Eingabe/Ausgabe- oder E/A-Einheiten (darunter, ohne jedoch hierauf eingeschränkt zu sein, Tastaturen 708, Anzeigen 706, Zeigeeinheiten usw.) können entweder direkt (beispielsweise über den Bus 710) oder über zwischengeschaltete E/A-Controller (aus Gründen der Übersichtlichkeit weggelassen) mit dem System verbunden sein.
  • Mit dem System können auch Netzwerkadapter wie beispielsweise die Netzwerkschnittstelle 714 verbunden sein, um eine Verbindung des Datenverarbeitungssystems mit anderen Datenverarbeitungssystemen oder entfernt angeordneten Druckern oder Speichereinheiten durch dazwischenliegende private oder öffentliche Netzwerke zu ermöglichen. Modems, Kabelmodems und Ethernetkarten sind nur einige der aktuell erhältlichen Arten von Netzwerkadaptern.
  • Im vorliegenden Kontext, einschließlich der Ansprüche, umfasst ein „Server“ ein physisches Datenverarbeitungssystem (beispielsweise das System 712 wie in 7 gezeigt), auf dem ein Serverprogramm läuft. Es versteht sich, dass ein solcher physischer Server gegebenenfalls eine Anzeige und eine Tastatur enthalten kann.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt jedes möglichen technisch detaillierten Integrationsgrads handeln. Das Computerprogrammprodukt kann ein oder mehrere durch einen Computer lesbare Speichermedien umfassen, auf dem/denen durch einen Computer lesbare Programmanweisungen gespeichert sind, um einen Prozessor zu veranlassen, Ausführungsformen der vorliegenden Erfindung auszuführen.
  • Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch eine Einheit zur Ausführung von Anweisungen behalten und speichern kann. Bei dem durch einen Computer lesbaren Speichermedium kann es sich zum Beispiel um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination daraus handeln, ohne auf diese beschränkt zu sein. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele des durch einen Computer lesbaren Speichermediums gehören die Folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer Kompaktspeicherplatte-Nur-Lese-Speicher (CD-ROM), eine DVD (digital versatile disc), ein Speicher-Stick, eine Diskette, eine mechanisch codierte Einheit wie zum Beispiel Lochkarten oder gehobene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination daraus. Ein durch einen Computer lesbares Speichermedium soll in der Verwendung hierin nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. ein Lichtwellenleiterkabel durchlaufende Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
  • Hierin beschriebene, durch einen Computer lesbare Programmanweisungen können von einem durch einen Computer lesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetz und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zur Speicherung in einem durch einen Computer lesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben werden, darunter objektorientierte Programmiersprachen wie Smalltalk, C++ o.ä. sowie herkömmliche prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem fernen Computer oder vollständig auf dem fernen Computer oder Server ausgeführt werden. In letzterem Fall kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch eine beliebige Art Netzwerk verbunden sein, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, vor Ort programmierbare Gatter-Anordnungen (FPGA, field programmable gate arrays) oder programmierbare Logikanordnungen (PLA, programmable logic arrays) die durch einen Computer lesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der durch einen Computer lesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Ausführungsformen der vorliegenden Erfindung durchzuführen.
  • Ausführungsformen der vorliegenden Erfindung sind vorliegend unter Bezugnahme auf Ablaufpläne und/oder Blockschaltbilder bzw. Schaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es versteht sich, dass jeder Block der Ablaufpläne und/oder der Blockschaltbilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaltbildern mittels durch einen Computer lesbarer Programmanweisungen ausgeführt werden können.
  • Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder festgelegten Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, so dass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt aufweist, darunter Anweisungen, welche Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaubilder angegebenen Funktion/Schritts umsetzen.
  • Die durch einen Computer lesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Prozessschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen auf einem Computer ausgeführten Prozess zu erzeugen, so dass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder festgelegten Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und die Blockschaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zur Ausführung der bestimmten logischen Funktion(en) aufweisen. In einigen alternativen Ausführungen können die in den Blöcken angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt stattfinden. Zwei nacheinander gezeigte Blöcke können zum Beispiel in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist ferner anzumerken, dass jeder Block der Blockschaltbilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaubildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die festgelegten Funktionen oder Schritte durchführen, oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Es ist zu beachten, dass jedes der vorliegend beschriebenen Verfahren einen zusätzlichen Schritt des Bereitstellens eines Systems umfassen kann, das verschiedene Softwaremodule aufweist, die auf einem durch einen Computer lesbaren Speichermedium enthalten sind, wobei die Module beispielsweise beliebige oder alle der vorliegend beschriebenen Komponenten enthalten können. Die Verfahrensschritte können dann unter Verwendung der verschiedenen Softwaremodule und/oder Teilmodule des Systems wie vorstehend beschrieben ausgeführt werden, die auf einem Hardwareprozessor 702 laufen. Ferner kann ein Computerprogrammprodukt ein durch einen Computer lesbares Speichermedium mit Code enthalten, der so angepasst ist, dass er implementiert werden kann, um mindestens einen vorliegend beschriebenen Verfahrensschritt auszuführen, einschließlich der Bereitstellung des Systems mit den verschiedenen Softwaremodulen.
  • In jedem Fall ist zu beachten, dass die vorliegend dargestellten Komponenten in verschiedenen Formen von Hardware, Software oder Kombinationen aus diesen implementiert werden können, beispielsweise in anwendungsspezifischen integrierten Schaltungen (ASICS), funktionalen Schaltungen, einem entsprechend programmierten digitalen Computer mit zugehörigem Speicher und dergleichen. In Anbetracht der vorliegend dargelegten Lehren der Erfindung kann ein Fachmann des betreffenden Fachgebiets auch andere Implementierungen der erfindungsgemäßen Komponenten ableiten.
  • Zudem versteht es sich, dass, auch wenn diese Offenbarung eine ausführliche Beschreibung über Cloud-Computing enthält, Implementierungen der vorliegend dargelegten Lehre nicht auf eine Cloud-Computing-Umgebung begrenzt sind. Stattdessen können Ausführungsformen der vorliegenden Erfindung gemeinsam mit jeder beliebigen Art von jetzt bekannter oder später erfundener Datenverarbeitungsumgebung implementiert werden.
  • Cloud-Computing ist ein Dienstbereitstellungsmodell zum Ermöglichen eines problemlosen bedarfsgesteuerten Netzwerkzugriffs auf einen gemeinsam genutzten Pool von konfigurierbaren Datenverarbeitungsressourcen (beispielsweise Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Hauptspeicher, Speicher, Anwendungen, virtuelle Maschinen und Dienste), die mit minimalem Verwaltungsaufwand bzw. minimaler Interaktion mit einem Anbieter des Dienstes schnell bereitgestellt und freigegeben werden können. Dieses Cloud-Modell kann mindestens fünf Eigenschaften enthalten, mindestens drei Dienstmodelle und mindestens vier Implementierungsmodelle.
  • Bei den Eigenschaften handelt es sich um die Folgenden:
    • On-Demand Self-Service: Ein Cloud-Nutzer kann einseitig automatisch nach Bedarf für Datenverarbeitungsfunktionen wie Serverzeit und Netzwerkspeicher sorgen, ohne dass eine menschliche Interaktion mit dem Anbieter des Dienstes erforderlich ist.
    • Broad Network Access: Es sind Funktionen über ein Netzwerk verfügbar, auf die durch Standardmechanismen zugegriffen wird, welche die Verwendung durch heterogene Thin- oder Thick-Client-Plattformen (z.B. Mobiltelefone, Laptops und PDAs) unterstützen.
    • Resource-Pooling: Die Datenverarbeitungsressourcen des Anbieters werden zusammengeschlossen, um mehreren Nutzern unter Verwendung eines Multi-Tenant-Modells zu dienen, wobei verschiedene physische und virtuelle Ressourcen dynamisch nach Bedarf zugewiesen und neu zugewiesen werden. Es gibt eine gefühlte Standortunabhängigkeit, da der Nutzer allgemein keine Kontrolle bzw. Kenntnis über den genauen Standort der bereitgestellten Ressourcen hat, aber in der Lage sein kann, einen Standort auf einer höheren Abstraktionsebene festzulegen (beispielsweise Land, Staat oder Rechenzentrum).
    • Rapid Elasticity: Funktionen können für eine schnelle horizontale Skalierung (scale out) schnell und elastisch bereitgestellt werden, in einigen Fällen auch automatisch, und für ein schnelles Scale-in schnell freigegeben werden. Für den Nutzer erscheinen die für das Bereitstellen verfügbaren Funktionen häufig unbegrenzt und sie können jederzeit in jeder beliebigen Menge gekauft werden.
    • Measured Service: Cloud-Systeme steuern und optimieren die Verwendung von Ressourcen automatisch, indem sie eine Messfunktion auf einer gewissen Abstraktionsebene nutzen, die für die Art von Dienst geeignet ist (beispielsweise Speicher, Verarbeitung, Bandbreite sowie aktive Benutzerkonten). Die Inanspruchnahme von Ressourcen kann überwacht, gesteuert und gemeldet werden, wodurch sowohl für den Anbieter als auch für den Nutzer des verwendeten Dienstes Transparenz geschaffen wird.
  • Bei den Dienstmodellen handelt es sich um die Folgenden:
    • Software as a Service (SaaS): Die dem Nutzer bereitgestellte Funktion besteht darin, die in einer Cloud-Infrastruktur laufenden Anwendungen des Anbieters zu verwenden. Die Anwendungen sind über eine Thin-Client-Schnittstelle wie einen Web-Browser (beispielsweise auf dem Web beruhende E-Mail) von verschiedenen Client-Einheiten her zugänglich. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter das Netzwerk, Server, Betriebssysteme, Speicher bzw. sogar einzelne Anwendungsfunktionen, mit der möglichen Ausnahme von eingeschränkten benutzerspezifischen Anwendungskonfigurationseinstellungen.
    • Platform as a Service (PaaS): Die dem Nutzer bereitgestellte Funktion besteht darin, durch einen Nutzer erstellte bzw. erhaltene Anwendungen, die unter Verwendung von durch den Anbieter unterstützten Programmiersprachen und Tools erstellt wurden, in der Cloud-Infrastruktur einzusetzen. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter Netzwerke, Server, Betriebssysteme bzw. Speicher, hat aber die Kontrolle über die eingesetzten Anwendungen und möglicherweise über Konfigurationen des Application Hosting Environment.
    • Infrastructure as a Service (laaS): Die dem Nutzer bereitgestellte Funktion besteht darin, das Verarbeiten, Speicher, Netzwerke und andere grundlegende Datenverarbeitungsressourcen bereitzustellen, wobei der Nutzer in der Lage ist, beliebige Software einzusetzen und auszuführen, zu der Betriebssysteme und Anwendungen gehören können. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, hat aber die Kontrolle über Betriebssysteme, Speicher, eingesetzte Anwendungen und möglicherweise eine eingeschränkte Kontrolle über ausgewählte Netzwerkkomponenten (beispielsweise Host-Firewalls).
  • Bei den Einsatzmodellen handelt es sich um die Folgenden:
    • Private Cloud: Die Cloud-Infrastruktur wird einzig und allein für eine Organisation betrieben. Sie kann durch die Organisation oder einen Dritten verwaltet werden und kann sich in den eigenen Räumen oder in fremden Räumen befinden.
    • Community Cloud: Die Cloud-Infrastruktur wird von mehreren Organisationen gemeinsam genutzt und unterstützt eine spezielle Benutzergemeinschaft, die gemeinsame Angelegenheiten hat (beispielsweise Mission, Sicherheitsanforderungen, Richtlinien sowie Überlegungen bezüglich der Einhaltung von Vorschriften). Sie kann durch die Organisationen oder einen Dritten verwaltet werden und kann in den eigenen Räumen oder fremden Räumen stehen.
    • Public Cloud: Die Cloud-Infrastruktur wird der allgemeinen Öffentlichkeit oder einer großen Industriegruppe zur Verfügung gestellt und sie gehört einer Cloud-Dienste verkaufenden Organisation.
    • Hybrid Cloud: Die Cloud-Infrastruktur ist eine Zusammensetzung aus zwei oder mehreren Clouds (privat, Benutzergemeinschaft oder öffentlich), die zwar einzelne Einheiten bleiben, aber durch eine standardisierte oder proprietäre Technologie miteinander verbunden sind, die Daten- und Anwendungsportierbarkeit ermöglicht (beispielsweise Cloud-Zielgruppenverteilung für den Lastenausgleich zwischen Clouds).
  • Eine Cloud-Computing-Umgebung ist dienstorientiert mit Fokus auf Statusunabhängigkeit, geringer Kopplung, Modularität und semantischer Interoperabilität. Im Zentrum des Cloud-Computing steht eine Infrastruktur, die ein Netzwerk aus untereinander verbundenen Knoten aufweist.
  • Gemäß 8 ist eine veranschaulichende Cloud-Computing-Umgebung 50 abgebildet. Wie gezeigt ist, weist die Cloud-Computing-Umgebung 50 einen oder mehrere Cloud-Computing-Knoten 10 auf, mit denen von Cloud-Nutzern verwendete lokale Datenverarbeitungseinheiten wie der elektronische Assistent (PDA, personal digital assistant) oder das Mobiltelefon 54A, der Desktop-Computer 54B, der Laptop-Computer 54C und/oder das Automobil-Computer-System 54N Daten austauschen können. Die Knoten 10 können miteinander Daten austauschen. Sie können physisch oder virtuell in ein oder mehrere Netzwerke wie private, Benutzergemeinschafts-, öffentliche oder hybride Clouds gruppiert werden (nicht gezeigt), wie vorstehend beschrieben wurde, oder in eine Kombination daraus. Dies ermöglicht es der Cloud-Computing-Umgebung 50, Infrastruktur, Plattformen und/oder Software als Dienste anzubieten, für die ein Cloud-Nutzer keine Ressourcen auf einer lokalen Datenverarbeitungseinheit vorhalten muss. Es versteht sich, dass die Arten von in 8 gezeigten Datenverarbeitungseinheiten 54A bis N lediglich veranschaulichend sein sollen und dass die Datenverarbeitungsknoten 10 und die Cloud-Computing-Umgebung 50 über eine beliebige Art Netzwerk und/oder über eine beliebige Art von über ein Netzwerk aufrufbarer Verbindung (z.B. unter Verwendung eines Web-Browsers) mit einer beliebigen Art von computergestützter Einheit Daten austauschen können.
  • Unter Bezugnahme auf 9 wird ein Satz von funktionalen Abstraktionsschichten gezeigt, die durch die Cloud-Computing-Umgebung 50 (8) bereitgestellt werden. Es sollte vorab klar sein, dass die in 9 gezeigten Komponenten, Schichten und Funktionen lediglich veranschaulichend sein sollen und Ausführungsformen der Erfindung nicht darauf beschränkt sind. Wie abgebildet ist, werden die folgenden Schichten und entsprechenden Funktionen bereitgestellt:
  • Eine Hardware- und Software-Schicht 60 enthält Hardware- und Software-Komponenten. Zu Beispielen für Hardware-Komponenten gehören: Mainframe-Computer 61; auf der RISC- (Reduced Instruction Set Computer) Architektur beruhende Server 62; Server 63; Blade-Server 64; Speichereinheiten 65; und Netzwerke sowie Netzwerkkomponenten 66. In einigen Ausführungsformen umfassen Software-Komponenten eine Netzwerk-Anwendungsserver-Software 67 und eine Datenbank-Software 68.
  • Die Virtualisierungsschicht 70 stellt eine Abstraktionsschicht bereit, aus der die folgenden Beispiele für virtuelle Einheiten bereitgestellt werden können: virtuelle Server 71, virtueller Speicher 72, virtuelle Netzwerke 73, darunter virtuelle private Netzwerke, virtuelle Anwendungen und Betriebssysteme 74; und virtuelle Clients 75. In einem Beispiel kann die Verwaltungsschicht 80 die nachstehend beschriebenen Funktionen bereitstellen. Eine Ressourcen-Bereitstellung 81 stellt die dynamische Beschaffung von Datenverarbeitungsressourcen sowie anderen Ressourcen bereit, die zum Durchführen von Aufgaben innerhalb der Cloud-Computing-Umgebung verwendet werden. Ein Messen und eine Preisfindung 82 stellen die Kostenverfolgung beim Verwenden von Ressourcen innerhalb der Cloud-Computing-Umgebung sowie die Abrechnung oder Rechnungsstellung für die Inanspruchnahme dieser Ressourcen bereit.
  • In einem Beispiel können diese Ressourcen Anwendungs-Software-Lizenzen aufweisen. Die Sicherheit stellt die Identitätsüberprüfung für Cloud-Kunden und Aufgaben sowie Schutz für Daten und andere Ressourcen bereit. Ein Benutzerportal 83 stellt Nutzern und Systemadministratoren den Zugang zu der Cloud-Computing-Umgebung bereit. Eine Verwaltung des Dienstumfangs 84 stellt die Zuordnung und Verwaltung von Cloud-Computing-Ressourcen bereit, so dass die benötigten Dienstziele erreicht werden. Ein Planen und Erfüllen von Vereinbarungen zum Dienstumfang (SLA, Service Level Agreement) 85 stellt die Anordnung vorab und die Beschaffung von Cloud-Computing-Ressourcen, für die eine zukünftige Anforderung vorausgesehen wird, gemäß einem SLA bereit.
  • Eine Workload-Schicht 90 stellt Beispiele für die Funktionalität bereit, für welche die Cloud-Computing-Umgebung verwendet werden kann. Zu Beispielen für Arbeitslasten und Funktionen, die von dieser Schicht bereitgestellt werden können, zählen: Abbildung und Navigation 91; Softwareentwicklung und Lebenszyklusverwaltung 92; Bereitstellung von virtuellem Unterricht 93; Datenanalyseverarbeitung 94; Transaktionsverarbeitung 95; und automatische domänenorientierte erklärbare Anomalie- und Abweichungserkennung für multivariate Rohdaten unter Verwendung eines Einschränkungs-Repository 96 gemäß der einen oder den mehreren Ausführungsformen der vorliegenden Erfindung.
  • Die vorliegend verwendete Terminologie dient lediglich dem Zweck der Beschreibung bestimmter Ausführungsformen und soll die Erfindung in keiner Weise einschränken. Die Singularformen „ein/eine“ und „der/die/das“ sollen ebenso die Pluralformen einschließen, sofern nicht durch den Kontext offensichtlich anders angegeben. Ferner versteht es sich, dass die Ausdrücke „weist auf/umfasst“ und/oder „aufweisend/umfassend“, soweit in dieser Spezifikation verwendet, das Vorliegen genannter Merkmale, Schritte, Vorgänge, Elemente und/oder Komponenten angibt, jedoch nicht das Vorliegen oder Hinzufügen eines weiteren Merkmals, Schritts, Vorgangs, Elements, einer Komponente und/oder einer Gruppe aus diesen ausschließt.
  • Mindestens eine Ausführungsform der vorliegenden Erfindung kann einen vorteilhaften Effekt bereitstellen, wie beispielsweise automatisches Erkennen von Anomalien und Abweichungen, die für einen Kontext eines Benutzers relevant sind, und Bereitstellen entsprechender Erklärungen. Die Erkennung kann unter Verwendung von Datensätzen in ihrer natürlichsten Form ohne jegliche Codierung oder Transformation erfolgen.
  • Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Erfindung wurden für Zwecke der Veranschaulichung dargelegt, sind jedoch nicht als abschließend oder auf die Ausführungsformen beschränkt zu verstehen. Für den Fachmann sind viele Abwandlungen und Variationen ersichtlich, ohne den Umfang der beschriebenen Ausführungsformen zu verlassen. Die hierin verwendete Terminologie wurde gewählt, um bestmöglich die Grundgedanken der Ausführungsformen, der praktischen Anwendung oder technischen Verbesserung gegenüber den auf dem Markt erhältlichen Technologien zu erklären oder um dem Fachmann das Verständnis der hierin offenbarten Ausführungsformen zu ermöglichen.

Claims (20)

  1. Durch einen Computer implementiertes Verfahren, wobei das Verfahren Folgendes umfasst: Beziehen eines Datensatzes und von Informationen, die eine Domäne des Datensatzes anzeigen; Beziehen einer oder mehrerer Einschränkungen aus einem domänenindizierten Einschränkungs-Repository zumindest teilweise auf Grundlage des Datensatzes und der Informationen, wobei das domänenindizierte Einschränkungs-Repository einen Wissensgraphen mit einer Mehrzahl von Knoten aufweist, wobei jeder Knoten ein Attribut, das mindestens einer aus einer Mehrzahl von Domänen zugeordnet ist, und eine oder mehrere dem Attribut entsprechende Einschränkungen aufweist; Erkennen einer oder mehrerer Anomalien in dem Datensatz zumindest teilweise basierend darauf, ob ein oder mehrere Teile des Datensatzes die eine oder die mehreren bezogenen Einschränkungen verletzen; Erzeugen einer Erklärung für jede der einen oder der mehreren Anomalien, die jeweils die der einen oder den mehreren verletzten Einschränkungen entsprechenden Attribute beschreibt; und Ausgeben eines Hinweises auf die eine oder die mehreren Anomalien und der entsprechenden Erklärungen.
  2. Durch einen Computer implementiertes Verfahren nach Anspruch 1, wobei jeder von einem oder mehreren Teilbäumen des Wissensgraphen einer gegebenen der Mehrzahl von Domänen entspricht und jede Ebene eines gegebenen der Teilbäume eine Abstraktionsebene der gegebenen Domäne relativ zu einer vorherigen Ebene in dem gegebenen Teilbaum erhöht.
  3. Durch einen Computer implementiertes Verfahren nach Anspruch 1, wobei das Erkennen Folgendes umfasst: Abbilden des Datensatzes auf einen oder mehrere der Mehrzahl von Knoten auf Grundlage der Informationen, die die Domäne des Datensatzes anzeigen; und Anwenden der Einschränkungen der zugeordneten Knoten auf den Datensatz, um die eine oder die mehreren Anomalien zu erkennen.
  4. Durch einen Computer implementiertes Verfahren nach Anspruch 1, wobei die eine oder die mehreren Einschränkungen mindestens eine der folgenden umfassen: eine Einzelattribut-Einschränkung; und eine Mehrfachattribut-Einschränkung.
  5. Durch einen Computer implementiertes Verfahren nach Anspruch 4, wobei die Einzelattribut-Einschränkung einem der folgenden entspricht: einem Textattribut, einem numerischen Attribut und einem kategorischen Attribut, und wobei die Mehrfachattribut-Einschränkung zwei oder mehr der folgenden entspricht: einem Textattribut, einem numerischen Attribut und einem kategorischen Attribut.
  6. Durch einen Computer implementiertes Verfahren nach Anspruch 5, wobei jede Einschränkung ein Modell aufweist, das auf dem Typ der Einzelattribut-Einschränkung und/oder dem Typ der Mehrfachattribut-Einschränkung basiert, und wobei das Erkennen Anwenden des Modells auf zumindest einen Teil des Datensatzes umfasst.
  7. Durch einen Computer implementiertes Verfahren nach Anspruch 1, wobei der Datensatz Echtzeitdaten mindestens eines Modells für maschinelles Lernen aufweist und wobei das Verfahren Folgendes umfasst: Erkennen von Abweichungen in einem oder mehreren Segmenten der Echtzeitdaten unter Verwendung einer auf maschinellem Lernen beruhenden Clustermethode; und Ausgeben von Segmenten der Echtzeitdaten, die der Abweichung entsprechen.
  8. Durch einen Computer implementiertes Verfahren nach Anspruch 7, wobei das Erzeugen Erzeugen und Ausgeben einer Erklärung für jedes der Segmente der Echtzeitdaten umfasst, die der Abweichung entsprechen.
  9. Durch einen Computer implementiertes Verfahren nach Anspruch 1, wobei die Erklärung, die jeder der einen oder der mehreren Anomalien entspricht, eine Erklärung in natürlicher Sprache aufweist, die beschreibt, wie die Teile die eine oder die mehreren abgerufenen Einschränkungen verletzen.
  10. Durch einen Computer implementiertes Verfahren nach Anspruch 1, wobei das Erkennen Folgendes umfasst: Ermitteln eines eine Qualität des Datensatzes anzeigenden Wertes auf Grundlage eines Vergleichs des Datensatzes mit einem Basisdatensatz.
  11. Durch einen Computer implementiertes Verfahren nach Anspruch 10, umfassend: Validieren des Datensatzes in Reaktion darauf, dass der die Qualität des Datensatzes anzeigende Wert einen Schwellenwert erfüllt.
  12. Durch einen Computer implementiertes Verfahren nach Anspruch 1, wobei der Datensatz Rohdaten aufweist, die weder codiert noch transformiert sind.
  13. Computerprogrammprodukt, das ein durch einen Computer lesbares Speichermedium mit darauf enthaltenen Programmanweisungen aufweist, wobei die Programmanweisungen durch eine Datenverarbeitungseinheit ausführbar sind, um die Datenverarbeitungseinheit zu veranlassen: einen Datensatz und Informationen zu beziehen, die eine Domäne des Datensatzes anzeigen; eine oder mehrere Einschränkungen aus einem domänenindizierten Einschränkungs-Repository zumindest teilweise auf Grundlage des Datensatzes und der Informationen zu beziehen, wobei das domänenindizierte Einschränkungs-Repository einen Wissensgraphen mit einer Mehrzahl von Knoten aufweist, wobei jeder Knoten ein Attribut, das mindestens einer aus einer Mehrzahl von Domänen zugeordnet ist, und eine oder mehrere dem Attribut entsprechende Einschränkungen aufweist; eine oder mehrere Anomalien in dem Datensatz zumindest teilweise basierend darauf zu erkennen, ob ein oder mehrere Teile des Datensatzes die eine oder die mehreren bezogenen Einschränkungen verletzen; eine Erklärung für jede der einen oder der mehreren Anomalien zu erzeugen, die jeweils die der einen oder den mehreren verletzten Einschränkungen entsprechenden Attribute beschreibt; und einen Hinweis auf die eine oder die mehreren Anomalien und die entsprechenden Erklärungen auszugeben.
  14. Computerprogrammprodukt nach Anspruch 13, wobei jeder von einem oder mehreren Teilbäumen des Wissensgraphen einer gegebenen der Mehrzahl von Domänen entspricht und jede Ebene eines gegebenen der Teilbäume eine Abstraktionsebene der gegebenen Domäne relativ zu einer vorherigen Ebene in dem gegebenen Teilbaum erhöht.
  15. Computerprogrammprodukt nach Anspruch 13, wobei das Erkennen Folgendes umfasst: Abbilden des Datensatzes auf einen oder mehrere der Mehrzahl von Knoten auf Grundlage der Informationen, die die Domäne des Datensatzes anzeigen; und Anwenden der Einschränkungen der zugeordneten Knoten auf den Datensatz, um die eine oder die mehreren Anomalien zu erkennen.
  16. Computerprogrammprodukt nach Anspruch 13, wobei die eine oder die mehreren Einschränkungen mindestens eine der folgenden umfassen: eine Einzelattribut-Einschränkung; und eine Mehrfachattribut-Einschränkung.
  17. Computerprogrammprodukt nach Anspruch 16, wobei die Einzelattribut-Einschränkung einem der folgenden entspricht: einem Textattribut, einem numerischen Attribut und einem kategorischen Attribut, und wobei die Mehrfachattribut-Einschränkung zwei oder mehr der folgenden entspricht: einem Textattribut, einem numerischen Attribut und einem kategorischen Attribut.
  18. Computerprogrammprodukt nach Anspruch 17, wobei jede Einschränkung ein Modell aufweist, das auf dem Typ der Einzelattribut-Einschränkung und/oder dem Typ der Mehrfachattribut-Einschränkung basiert, und wobei das Erkennen Anwenden des Modells auf zumindest einen Teil des Datensatzes umfasst.
  19. System, das Folgendes aufweist: einen Arbeitsspeicher und mindestens einen Prozessor, der betriebsmäßig mit dem Speicher verbunden und für Folgendes konfiguriert ist: Beziehen eines Datensatzes und von Informationen, die eine Domäne des Datensatzes anzeigen; Beziehen einer oder mehrerer Einschränkungen aus einem domänenindizierten Einschränkungs-Repository zumindest teilweise auf Grundlage des Datensatzes und der Informationen, wobei das domänenindizierte Einschränkungs-Repository einen Wissensgraphen mit einer Mehrzahl von Knoten aufweist, wobei jeder Knoten ein Attribut, das mindestens einer einer Mehrzahl von Domänen zugeordnet ist, und eine oder mehrere dem Attribut entsprechende Einschränkungen aufweist; Erkennen einer oder mehrerer Anomalien in dem Datensatz zumindest teilweise basierend darauf, ob ein oder mehrere Teile des Datensatzes die eine oder die mehreren bezogenen Einschränkungen verletzen; Erzeugen einer Erklärung für jede der einen oder der mehreren Anomalien, die jeweils die der einen oder den mehreren verletzten Einschränkungen entsprechenden Attribute beschreibt; und Ausgeben eines Hinweises auf die eine oder die mehreren Anomalien und der entsprechenden Erklärungen.
  20. Durch einen Computer implementiertes Verfahren, wobei das Verfahren Folgendes umfasst: Beziehen eines Satzes von Datendateien, die Trainingsdaten aufweisen, wobei jede Datendatei in dem Satz einer aus einer Mehrzahl von Domänen entspricht; für jede gegebene Datendatei in dem Satz: Folgern mindestens einer Einschränkung aus zumindest einem Teil der Trainingsdaten der gegebenen Datendatei und Speichern der mindestens einen gefolgerten Einschränkung an einem Knoten in einem domänenindizierten Einschränkungs-Repository, wobei der Knoten die der gegebenen Datendatei entsprechende Domäne darstellt und wobei das domänenindizierte Einschränkungs-Repository einen Satz von Knoten aufweist, die hierarchische Beziehungen der Mehrzahl von Domänen definieren; Aggregieren der gefolgerten Einschränkungen, die in dem domänenindizierten Einschränkungs-Repository gespeichert sind, auf Grundlage der hierarchischen Beziehungen der Mehrzahl von Domänen; Abrufen einer oder mehrerer Einschränkungen aus dem domänenindizierten Einschränkungs-Repository auf Grundlage einer Domäne einer neuen Datendatei; Erkennen einer oder mehrerer Anomalien in der neuen Datendatei basierend darauf, ob ein oder mehrere Teile der neuen Datendatei die eine oder die mehreren abgerufenen Einschränkungen verletzen; und Ausgeben eines Hinweises auf die eine oder die mehreren Anomalien und einer natürlichsprachlichen Erklärung, die beschreibt, wie die Teile der neuen Datendatei die eine oder die mehreren abgerufenen Einschränkungen verletzen.
DE112020003820.3T 2019-09-27 2020-09-22 Erkennung von Anomalien und Abweichungen unter Verwendung eines domänenindizierten Einschränkungs-Repository Pending DE112020003820T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/585,664 US11321304B2 (en) 2019-09-27 2019-09-27 Domain aware explainable anomaly and drift detection for multi-variate raw data using a constraint repository
US16/585,664 2019-09-27
PCT/IB2020/058826 WO2021059122A1 (en) 2019-09-27 2020-09-22 Anomaly and drift detection using domain-indexed constraint repository

Publications (1)

Publication Number Publication Date
DE112020003820T5 true DE112020003820T5 (de) 2022-05-25

Family

ID=75163674

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020003820.3T Pending DE112020003820T5 (de) 2019-09-27 2020-09-22 Erkennung von Anomalien und Abweichungen unter Verwendung eines domänenindizierten Einschränkungs-Repository

Country Status (6)

Country Link
US (1) US11321304B2 (de)
JP (1) JP7461698B2 (de)
CN (1) CN114430827A (de)
DE (1) DE112020003820T5 (de)
GB (1) GB2603398A (de)
WO (1) WO2021059122A1 (de)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11770398B1 (en) * 2017-11-27 2023-09-26 Lacework, Inc. Guided anomaly detection framework
US10681056B1 (en) 2018-11-27 2020-06-09 Sailpoint Technologies, Inc. System and method for outlier and anomaly detection in identity management artificial intelligence systems using cluster based analysis of network identity graphs
US10341430B1 (en) 2018-11-27 2019-07-02 Sailpoint Technologies, Inc. System and method for peer group detection, visualization and analysis in identity management artificial intelligence systems using cluster based analysis of network identity graphs
US10523682B1 (en) 2019-02-26 2019-12-31 Sailpoint Technologies, Inc. System and method for intelligent agents for decision support in network identity graph based identity management artificial intelligence systems
US10554665B1 (en) 2019-02-28 2020-02-04 Sailpoint Technologies, Inc. System and method for role mining in identity management artificial intelligence systems using cluster based analysis of network identity graphs
US11461677B2 (en) 2020-03-10 2022-10-04 Sailpoint Technologies, Inc. Systems and methods for data correlation and artifact matching in identity management artificial intelligence systems
US10862928B1 (en) 2020-06-12 2020-12-08 Sailpoint Technologies, Inc. System and method for role validation in identity management artificial intelligence systems using analysis of network identity graphs
US10938828B1 (en) 2020-09-17 2021-03-02 Sailpoint Technologies, Inc. System and method for predictive platforms in identity management artificial intelligence systems using analysis of network identity graphs
US11196775B1 (en) 2020-11-23 2021-12-07 Sailpoint Technologies, Inc. System and method for predictive modeling for entitlement diffusion and role evolution in identity management artificial intelligence systems using network identity graphs
US11693632B2 (en) * 2021-01-25 2023-07-04 Cisco Technology, Inc. Collaborative visual programming environment with cumulative learning using a deep fusion reasoning engine
US11295241B1 (en) * 2021-02-19 2022-04-05 Sailpoint Technologies, Inc. System and method for incremental training of machine learning models in artificial intelligence systems, including incremental training using analysis of network identity graphs
US11769098B2 (en) 2021-05-18 2023-09-26 International Business Machines Corporation Anomaly detection of physical assets by auto-creating anomaly detection or prediction models based on data from a knowledge graph of an enterprise
US11227055B1 (en) 2021-07-30 2022-01-18 Sailpoint Technologies, Inc. System and method for automated access request recommendations
CN114297411B (zh) * 2022-03-08 2023-05-02 支付宝(杭州)信息技术有限公司 知识图谱中实体的配置方法、分析方法及装置
CN117237126A (zh) * 2023-09-18 2023-12-15 广州美保科技有限公司 一种保险平台及保险数据处理方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7739211B2 (en) 2006-11-08 2010-06-15 21St Century Technologies, Inc. Dynamic SNA-based anomaly detection using unsupervised learning
CN101546312B (zh) * 2008-03-25 2012-11-21 国际商业机器公司 用于检测异常的数据记录的方法和设备
DE112012001160T5 (de) 2011-05-13 2013-12-19 International Business Machines Corp. Unregelmäßigkeitserkennungssystem zum Erkennen einer Unregelmäßigkeit in mehreren Steuersystemen
US8762133B2 (en) * 2012-08-30 2014-06-24 Arria Data2Text Limited Method and apparatus for alert validation
US10114925B2 (en) 2013-07-26 2018-10-30 Nant Holdings Ip, Llc Discovery routing systems and engines
US10230747B2 (en) 2014-07-15 2019-03-12 Cisco Technology, Inc. Explaining network anomalies using decision trees
US10067812B2 (en) 2015-03-30 2018-09-04 Ca, Inc. Presenting diagnostic headlines using simple linguistic terms
US10116674B2 (en) 2015-10-30 2018-10-30 Citrix Systems, Inc. Framework for explaining anomalies in accessing web applications
WO2017201107A1 (en) * 2016-05-16 2017-11-23 Purepredictive, Inc. Predictive drift detection and correction
US20180159876A1 (en) 2016-12-05 2018-06-07 International Business Machines Corporation Consolidating structured and unstructured security and threat intelligence with knowledge graphs
JP2019016209A (ja) 2017-07-07 2019-01-31 株式会社東芝 診断装置、診断方法およびコンピュータプログラム
US10877979B2 (en) 2018-01-16 2020-12-29 Accenture Global Solutions Limited Determining explanations for predicted links in knowledge graphs
JP6965798B2 (ja) 2018-03-12 2021-11-10 オムロン株式会社 制御システムおよび制御方法
US11005678B2 (en) * 2018-05-18 2021-05-11 Alarm.Com Incorporated Machine learning for home understanding and notification
CN109656812A (zh) 2018-11-19 2019-04-19 平安科技(深圳)有限公司 数据质量检测方法、装置及存储介质
US11531908B2 (en) * 2019-03-12 2022-12-20 Ebay Inc. Enhancement of machine learning-based anomaly detection using knowledge graphs

Also Published As

Publication number Publication date
JP2022550692A (ja) 2022-12-05
GB202205101D0 (en) 2022-05-25
US20210097052A1 (en) 2021-04-01
GB2603398A (en) 2022-08-03
US11321304B2 (en) 2022-05-03
JP7461698B2 (ja) 2024-04-04
WO2021059122A1 (en) 2021-04-01
CN114430827A (zh) 2022-05-03

Similar Documents

Publication Publication Date Title
DE112020003820T5 (de) Erkennung von Anomalien und Abweichungen unter Verwendung eines domänenindizierten Einschränkungs-Repository
DE112016003355B4 (de) Sicherer Einsatz einer Anwendung über Einsatzorte hinweg
DE112018005462T5 (de) Anomalie-erkennung unter verwendung von cognitive-computing
DE112021004197T5 (de) Semantisches Lernen in einem System für ein föderiertes Lernen
DE112016003626T5 (de) Natürlichsprachliche Schnittstelle zu Datenbanken
DE112018002984T5 (de) Konformitätsbewusste Laufzeiterzeugung auf Grundlage von Anwendungsmustern und Risikobeurteilung
DE112019003042B4 (de) Erkennung von verdächtigen aktivitäten in computernetzwerken
DE112020002110T5 (de) Ressourcenarme entitätsauflösung mit transfer learning
DE112019001533T5 (de) Erweiterung von trainingsdaten für die klassifikation von natürlicher sprache
DE112018005167T5 (de) Aktualisieren von trainingsdaten
DE112020005095T5 (de) Automatische trennung und extraktion von tabellendaten unter verwendung von maschinellem lernen
DE112016001902T5 (de) Schätzen von Rechenressourcen für die Ausführung von Data-Mining-Diensten
DE112017003937T5 (de) System, Verfahren und Computerprogrammprodukt zur Störungserkennung und - Lokalisierung in Stromnetz
DE112020002042T5 (de) Erzeugen eines absichtserkennungsmodells auf grundlage von randomisierten absichtsvektornäherungen
DE112021002572T5 (de) Multikriterielles optimieren von anwendungen
DE112019001433T5 (de) Datenanonymisierung
DE112021000338B4 (de) Auslagern der statistikerfassung
DE112021001163T5 (de) Dynamisches erstellen von facetten unter verwendung von graphpartitionierung
DE112021005422T5 (de) Auf lernen beruhende arbeitslast-ressourcenoptimierung für datenbank-managementsysteme
DE112021000810T5 (de) Optisches erkennen von zellenstrukturen unter verwendung hierarchischer neuronaler netzwerke und zellengrenzen zum strukturieren von clustern
DE112020000545T5 (de) Deep-forest-modell-entwicklung und -training
DE112020005306T5 (de) Implementierung von arbeitslasten in einer multi-cloud-umgebung
DE102021123058A1 (de) Maskieren von sensiblen informationen in einem dokument
DE112021003943T5 (de) Sprachantwortsysteme auf Grundlage eines personalisierten Wortschatzes und einer Benutzerprofilerstellung - Personalisierte linguistische KI-Engines
DE112020003825T5 (de) Entsprechung zwischen externen Operationen und Containern sowie Mutationsereignissen

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication