DeepAction: eine MATLAB-Toolbox zur automatisierten Klassifizierung von Tierverhalten in Videos

Blog

HeimHeim / Blog / DeepAction: eine MATLAB-Toolbox zur automatisierten Klassifizierung von Tierverhalten in Videos

Nov 16, 2023

DeepAction: eine MATLAB-Toolbox zur automatisierten Klassifizierung von Tierverhalten in Videos

Wissenschaftliche Berichte Band 13,

Scientific Reports Band 13, Artikelnummer: 2688 (2023) Diesen Artikel zitieren

1309 Zugriffe

1 Altmetrisch

Details zu den Metriken

Die Identifizierung des Verhaltens von Tieren in Videos ist in vielen Forschungsbereichen eine kritische, aber zeitaufwändige Aufgabe. Hier stellen wir DeepAction vor, eine auf Deep Learning basierende Toolbox zur automatischen Kommentierung von Tierverhalten in Videos. Unser Ansatz verwendet Merkmale, die von einem vorab trainierten Faltungs-Neuronalen Netzwerk aus Rohvideobildern extrahiert wurden, um einen Klassifikator für ein wiederkehrendes Neuronales Netzwerk zu trainieren. Wir bewerten den Klassifikator anhand von zwei Benchmark-Nagetier-Datensätzen und einem Oktopus-Datensatz. Wir zeigen, dass es eine hohe Genauigkeit erreicht, nur wenige Trainingsdaten erfordert und sowohl die menschliche Zustimmung als auch die meisten vergleichbaren vorhandenen Methoden übertrifft. Wir erstellen außerdem einen Konfidenzwert für die Klassifikatorausgabe und zeigen, dass unsere Methode eine genaue Schätzung der Klassifikatorleistung liefert und die Zeit reduziert, die menschliche Annotatoren für die Überprüfung und Korrektur automatisch erstellter Anmerkungen benötigen. Wir veröffentlichen unser System und die dazugehörige Annotationsschnittstelle als Open-Source-MATLAB-Toolbox.

Die Klassifizierung und Analyse von Tierverhalten in Videos ist ein allgegenwärtiger, aber oft mühsamer Prozess in der biowissenschaftlichen Forschung. Traditionell wurden solche Analysen manuell durchgeführt. Dieser Ansatz weist jedoch mehrere Einschränkungen auf. Am offensichtlichsten ist, dass Forscher dadurch einen Großteil ihrer Zeit für die mühsame Arbeit der Verhaltensannotation aufwenden müssen, was den Fortschritt nachgelagerter Analysen einschränkt oder verlangsamt. Insbesondere für Labore ohne wissenschaftliche Mitarbeiter oder bezahlte Kommentatoren können die Opportunitätskosten für die Kommentierung von Videos recht hoch sein. Manuelle Annotationen leiden außerdem unter einer relativ schlechten Reproduzierbarkeit und Zuverlässigkeit1,2,3, was größtenteils auf die begrenzte Aufmerksamkeitsfähigkeit menschlicher Annotatoren zurückzuführen ist. Dieses Problem ist besonders wichtig bei Studien mit Nagetieren. Aufgrund ihrer nachtaktiven Natur werden Nagetiere vorzugsweise bei gedimmtem oder Infrarotlicht4 untersucht, was die Identifizierung von Verhaltensweisen aufgrund der begrenzteren Licht- und Farbmerkmale erschwert. Dies wiederum erhöht die Ermüdung der Annotatoren und verringert ihre Fähigkeit, über längere Zeiträume aufmerksam zu sein, was zu Schwankungen in der Annotationsqualität führt und dadurch die Qualität der Verhaltensdaten verringert5.

Angesichts der Zeit- und Genauigkeitsbeschränkungen der manuellen Annotation konzentrieren sich zunehmende Arbeiten auf die Entwicklung von Methoden zur Automatisierung des Annotationsprozesses. Viele dieser Methoden basieren auf der Verfolgung von Tierkörpern4,6,7,8,9 oder Körperteilen10, aus denen übergeordnete Merkmale (z. B. Geschwindigkeit, Beschleunigung und Körperhaltung) extrapoliert und zur Verhaltensklassifizierung verwendet werden. Jhuang et al.7 verwendeten beispielsweise Bewegungs- und Flugbahnfunktionen, um eine versteckte Markov-Unterstützungsvektormaschine zu trainieren, um acht Klassen von Mausverhalten zu kategorisieren. Burgos-Artizzu et al.6 verwendeten raumzeitliche und Flugbahnmerkmale sowie ein zeitliches Kontextmodell, um das soziale Verhalten von Mäusen mithilfe von zwei Kameraansichten zu klassifizieren. Ansätze, die diese „handgefertigten Funktionen“ nutzen, sind jedoch in mehrfacher Hinsicht begrenzt11. Erstens erfordern sie, dass Forscher Gruppen von Merkmalen identifizieren, die sowohl das gesamte Verhaltensrepertoire eines bestimmten Tieres umfassen als auch zwischen visuell ähnlichen Verhaltensweisen unterscheiden können. Beispielsweise weisen die Verhaltensweisen „Fressen“ und „Schnauzenpflege“ bei Nagetieren keinen genau definierten Unterschied in der Haltung oder Bewegung auf4, was die Erstellung von Merkmalen zur Unterscheidung dieser Verhaltensweisen erschwert. Zweitens ist es schwierig und unvollständig, Merkmale zu erkennen und zu verfolgen, nachdem sie ausgewählt wurden. Geringfügige Veränderungen der Videobeleuchtung, der Tierbewegungen und der Umgebung können zu einer ungenauen Schlüsselpunkterkennung führen und die Genauigkeit der extrahierten Merkmale beeinträchtigen. Und drittens sind ausgewählte Funktionssätze häufig experimentspezifisch. Die für eine Einzelhaus-Nagetierstudie optimalen Werte unterscheiden sich wahrscheinlich von denen, die für eine soziale Nagetierstudie optimal sind. Dies erhöht die Komplexität der Merkmalsauswahlaufgabe und behindert den experimentellen Fortschritt und die Annotationsgenauigkeit.

Um diese Einschränkungen zu beseitigen, schlugen Bohnslav et al.11 eine Alternative zu handgefertigten Ansätzen vor, indem sie stattdessen versteckte Zweistromnetzwerke12 und zeitliche Gaußsche Mischungsnetzwerke13 verwendeten und eine hohe Klassifizierungsgenauigkeit für eine vielfältige Sammlung von Tierverhaltensdatensätzen erzielten. Hier erweitern wir diese Arbeit durch die Einführung von DeepAction, einer MATLAB-Toolbox für die automatisierte Annotation von Tierverhalten in Videos. Unser Ansatz nutzt eine Zwei-Stream-14-Faltungs- und wiederkehrende neuronale Netzwerkarchitektur15,16, um Verhaltensetiketten aus Rohvideobildern zu generieren. Wir verwenden Faltungs-Neuronale Netze (CNNs) und einen dichten optischen Fluss, um räumliche und zeitliche Merkmale aus Videos zu extrahieren17, die dann verwendet werden, um einen Netzwerkklassifikator für das Langzeit-Kurzzeitgedächtnis zu trainieren, um Verhalten vorherzusagen. Wir bewerten unseren Ansatz anhand von zwei Benchmark-Datensätzen mit Labormausvideos und einem Datensatz mit Oktopusvideos. Wir zeigen, dass es bestehende Methoden übertrifft und mit wenigen Trainingsdaten eine Leistung auf menschlichem Niveau erreicht. Zusätzlich zur Ausgabe von Verhaltensbezeichnungen für jedes Videobild führen wir auch ein Klassifizierungskonfidenzsystem ein, das ein Maß dafür generiert, wie „zuversichtlich“ der Klassifikator in Bezug auf jede Bezeichnung ist. Dies ermöglicht es Forschern, die Qualität automatisch erstellter Anmerkungen abzuschätzen, ohne diese überprüfen zu müssen, und reduziert die für die Überprüfung von Anmerkungen erforderliche Zeit, indem Benutzern die Möglichkeit gegeben wird, mehrdeutige Anmerkungen selektiv zu korrigieren, während diejenigen weggelassen werden, die der Klassifikator mit hoher Zuverlässigkeit erstellt hat. Wir zeigen, dass dieser Konfidenzwert Anmerkungen von geringer Qualität präzise von Anmerkungen hoher Qualität unterscheidet und die Effizienz der Überprüfung und Korrektur von Videos verbessert. Schließlich veröffentlichen wir die Code- und Anmerkungs-GUI als Open-Source-MATLAB-Projekt.

Der Toolbox-Workflow (Abb. 1A) beginnt mit dem Import von unbeschrifteten Videos in ein neues DeepAction-Projekt und endet mit dem Export von Anmerkungen für alle Videos in diesem Projekt. Der Workflow besteht aus zwei Teilen: einer Klassifizierungskomponente (Schritte 2–8) und einer Überprüfungskomponente (Schritte 9 und 10). Im Klassifizierungsteil verwenden wir einen überwachten Lernansatz, bei dem ein Teil der Projektvideos beschriftet und zum Trainieren eines Klassifikators verwendet wird. Dieser Klassifikator lernt, den Inhalt der Videobilder mit einer Reihe benutzerdefinierter Verhaltensbezeichnungen (z. B. „Gehen“ oder „Trinken“) zu verknüpfen. Nachdem der Klassifikator trainiert wurde, kann er zur Vorhersage von Verhaltensweisen im unbeschrifteten Video verwendet werden. Zusätzlich zur Vorhersage von Verhaltensweisen, die im unbeschrifteten Video auftreten, gibt der Klassifikator einen „Konfidenzwert“ aus, der eine Schätzung der Übereinstimmung zwischen vom Klassifikator erstellten und von Menschen erstellten Etiketten darstellt. Dieser Konfidenzwert wird während der Überprüfungskomponente des Workflows verwendet, in der Anmerkungen mit geringer Konfidenz vorzugsweise überprüft und korrigiert werden können, während Anmerkungen mit hoher Konfidenz weggelassen werden. Nach dieser konfidenzbasierten Überprüfung werden die Anmerkungen zur Verwendung in der vom Forscher vorgegebenen Analyse exportiert.

Toolbox-Workflow und Datenauswahlprozess. (A) Workflow für die DeepAction-Toolbox. Pfeile zeigen den Ablauf von Projektaktionen an, wobei der gestrichelte Pfeil angibt, dass nach dem Training des Klassifikators zusätzliche Trainingsdaten mit Anmerkungen versehen und zum erneuten Trainieren des Klassifikators verwendet werden können. (B) Ein Überblick über den Clip-Auswahlprozess. Lange Videos werden in Clips mit einer vom Benutzer angegebenen Länge unterteilt, aus denen ein vom Benutzer festgelegter Anteil (\({\mathrm{prop}}_{\mathrm{labeled}}\)) zufällig für die Anmerkung ausgewählt wird (\({ \mathcal{D}}^{\mathrm{labeled}}\)). Anschließend werden die ausgewählten Videoclips mit Anmerkungen versehen und diese Anmerkungen werden in Kombination mit den entsprechenden Funktionen zum Trainieren des Klassifikators verwendet. Der trainierte Klassifikator wird verwendet, um Vorhersagen und Konfidenzwerte für die nicht ausgewählten Clips (\({\mathcal{D}}^{\mathrm{unlabeled}}\)) zu generieren, die der Benutzer dann überprüfen und bei Bedarf korrigieren kann. (C) Beschriftete Daten werden weiter in Training (\({\mathcal{D}}^{\mathrm{train}}\)) und Validierung (\({\mathcal{D}}^{\mathrm{validate}) unterteilt. }\)) Daten. (D) Prozess zur Simulation der Clip-Auswahl mithilfe unserer Benchmark-Datensätze, wobei wir die Auswahl \({\mathrm{prop}}_{\mathrm{labeled}}\) der Daten zur Beschriftung (\({\mathcal{D) simulieren }}^{\mathrm{labeled}}\)) und werten Sie es anhand der nicht ausgewählten Daten aus (\({\mathcal{D}}^{\mathrm{test}}\)). (E) Prozess zur Generierung raumzeitlicher Merkmale aus Videobildern. Rohe Videobilder werden aus der Videodatei extrahiert („Frame-Extraktion“). Die Bewegung zwischen Bildern wird mithilfe des optischen TV-L1-Flusses berechnet und dann visuell als zeitliche Bilder dargestellt. Räumliche und zeitliche Frames werden in ihr entsprechendes vortrainiertes CNN („spatial ResNet18“ bzw. „flow Resnet18“) eingegeben, aus dem räumliche und zeitliche Merkmale extrahiert werden. Anschließend werden die räumlichen und zeitlichen Merkmale verkettet und ihre Dimensionalität reduziert, um die endgültigen raumzeitlichen Merkmale zu generieren, die zum Trainieren des Klassifikators verwendet werden. Die Dimensionalität wird in kursiven Klammern angezeigt.

Um das Video für die Eingabe in den Klassifikator darzustellen, entscheiden wir uns für ein „Zwei-Stream“-Modell18, bei dem der erste Stream („räumlicher Stream“) die räumlichen Informationen der Videobilder erfasst und der zweite Stream („zeitlicher Stream“) erfasst die Bewegung zwischen Bildern (Abb. 1E). Wir extrahieren zunächst Videobilder, die die räumlichen und zeitlichen Informationen („räumliche Bilder“ bzw. „zeitliche Bilder“) im zugrunde liegenden Video darstellen (siehe Abschnitte „Methoden: Bildextraktion“). Um räumliche Frames zu generieren, die Informationen über die Szenen und Objekte im Video enthalten, extrahieren wir die Rohvideoframes aus jeder Videodatei. Um zeitliche Frames zu generieren, die Informationen über die Bewegung der Kamera und der Objekte im Video enthalten, verwenden wir einen dichten optischen Fluss, um die Bewegung einzelner Pixel zwischen Paaren aufeinanderfolgender Frames zu berechnen. Der dichte optische Fluss erzeugt für jedes Pixel im Bild ein zweidimensionales Vektorfeld, wobei jeder Vektor die geschätzte Bewegung eines Pixels von einem Bild zum nächsten darstellt19. Anschließend drücken wir dieses gesamte Vektorfeld visuell als Bild aus, wobei die Farbe eines bestimmten Pixels durch die Ausrichtung und Größe seines entsprechenden Flussvektors bestimmt wird.

Anschließend generieren wir eine niedrigdimensionale Darstellung der räumlichen und zeitlichen Frames, indem wir ihre hervorstechenden visuellen Merkmale20 mithilfe des vortrainierten Faltungs-Neuronalen Netzwerks ResNet18 (CNN; siehe Abschnitte „Methoden: Merkmalsextraktion“) extrahieren. Für jeden räumlichen und zeitlichen Frame generieren die Merkmalsextraktoren einen \(512\)-dimensionalen Vektor, der die in diesem Frame enthaltenen visuellen Informationen auf hoher Ebene darstellt. Anschließend verketten wir diese räumlichen und zeitlichen Merkmale (Dimensionalität von \(1024\)), um die anfänglichen raumzeitlichen Merkmale zu erstellen, und verwenden dann eine rekonstruktionsunabhängige Komponentenanalyse, um die Dimensionalität auf \(512\) zu reduzieren und so die endgültigen raumzeitlichen Merkmale zu bilden, die für das Training verwendet werden der Klassifikator.

Für das Training des Klassifikators muss ein Teil des Videos manuell beschriftet werden, damit er die Zusammenhänge zwischen den entsprechenden räumlich-zeitlichen Merkmalen (Eingabe) und Verhaltensbezeichnungen (Ausgabe) des Videos lernen kann. Anstatt ganze Videos auf einmal zu kommentieren, teilen wir stattdessen jedes Video in kurze „Clips“ auf, wobei jeder Clip ein kurzes Segment des längeren Videos ist, und wählen dann eine Teilmenge dieser Clips zum Kommentieren aus (Abb. 1B). Dieser Ansatz ist im Vergleich zur Kommentierung vollständiger Videos vorzuziehen, da er die erhebliche Variation der Features und die Feature-Label-Beziehung zwischen den Videos besser erfasst und so die Generalisierbarkeit des Klassifikators verbessert. Das heißt, das Annotieren kurzer Clips reduziert die Datensatzverschiebung21,22 zwischen dem Trainingssatz (d. h. den annotierten Videos) und den unbeschrifteten Videos.

Nachdem die Gruppe von Videos in Clips aufgeteilt wurde, wird eine Teilmenge dieser benutzerdefinierten Clips, \({\mathrm{prop}}_{\mathrm{validate}}\), zufällig für die manuelle Anmerkung ausgewählt (Abb. 1B). ) mithilfe einer in der Toolbox-Version enthaltenen GUI (Abb. 6B). Nach der Annotation werden beschriftete Clipdaten (Video, Features und Annotationen), \({\mathcal{D}}^{\mathrm{labeled}}\), verwendet, um einen wiederkehrenden neuronalen Netzwerkklassifikator zu trainieren (siehe „Methoden: Klassifikator“) Abschnitte „Architektur“) und das vertrauensbasierte Bewertungssystem. Dazu teilen wir zunächst \({\mathcal{D}}^{\mathrm{labeled}}\) weiter in einen Trainingssatz und einen Validierungssatz auf (Abb. 1C). Der Trainingssatz \({\mathcal{D}}^{\mathrm{train}}\) umfasst die meisten der gekennzeichneten Daten und wird direkt zum Trainieren des Klassifikators verwendet. Für einen gegebenen Clip in \({\mathcal{D}}^{\mathrm{train}}\) mit \(n\) Frames wird ein raumzeitliches Feature-Array der Größe \([n, 512]\) eingegeben ein wiederkehrender Klassifikator für neuronale Netze, zusammen mit einer Reihe von \(n\) manuell annotierten Verhaltensbezeichnungen. Das Netzwerk versucht dann, die manuellen Anmerkungen anhand der Features vorherzusagen; Das Training reduziert iterativ den Unterschied zwischen vom Klassifikator vorhergesagten und menschlichen Anmerkungen. Die raumzeitlichen Merkmale für ein bestimmtes Videosegment stellen den visuellen Inhalt dieses Segments dar; Durch die Vorhersage von Beschriftungen mithilfe dieser Funktionen generiert der Klassifikator indirekt Vorhersagen für die zugrunde liegenden Videodaten. Der unabhängige Validierungssatz \({\mathcal{D}}^{\mathrm{validate}}\) wird verwendet, um den Modelltrainingsprozess und die konfidenzbasierte Überprüfung zu optimieren (siehe Abschnitte „Methoden: Klassifikatortraining“). Der trainierte Klassifikator und das konfidenzbasierte Überprüfungssystem werden dann verwendet, um Anmerkungen und Konfidenzwerte für die verbleibenden, unbeschrifteten Daten zu generieren,\({\mathcal{D}}^{\mathrm{unlabeled}}.\)

Anschließend führen wir ein vertrauensbasiertes Bewertungssystem ein. Denken Sie daran, dass der Klassifikator nach dem Training dazu verwendet werden kann, Verhaltensweisen in unbeschrifteten Daten vorherzusagen, \({\mathcal{D}}^{\mathrm{unlabeled}}.\). Darüber hinaus geben wir einen Konfidenzwert für aus Jeder Clip in \({\mathcal{D}}^{\mathrm{unlabeled}}\) entspricht der geschätzten Genauigkeit der für diesen Clip erstellten Labels (siehe Abschnitte „Methoden: Definition der Konfidenzbewertung“). In einer idealen Metrik sollte der Konfidenzwert eines Clips der Ground-Truth-Wahrscheinlichkeit entsprechen, dass die vom Klassifikator vorhergesagten Verhaltensweisen korrekt sind. Der Konfidenzwert dient einem zweifachen Zweck (siehe Abschnitte „Methoden: Konfidenzbasierte Überprüfung“). Indem wir zunächst geschätzte Genauigkeiten für jeden Clip in \({\mathcal{D}}^{\mathrm{unlabeled}}\) generieren, können wir die Gesamtgenauigkeit von \({\mathcal{D}}^{\mathrm {unbeschriftet}}\). So wie es bei den Annotationen zwischen Forschern Unterschiede gibt, können wir davon ausgehen, dass selbst die Annotationen eines leistungsstarken Klassifikators nicht genau mit denen übereinstimmen, die erzeugt würden, wenn die unbeschrifteten Daten manuell mit Annotationen versehen würden. Durch die automatische Bereitstellung einer Schätzung der Übereinstimmung zwischen vom Menschen und vom Klassifikator erstellten Beschriftungen in \({\mathcal{D}}^{\mathrm{unlabeled}}\) können Benutzer jedoch leicht entscheiden, ob die Leistung des Klassifikators für Folgendes ausreicht ihre gegebene Anwendung. Der zweite Zweck besteht darin, es Forschern zu ermöglichen, vorzugsweise Clips zu überprüfen und zu korrigieren, bei denen der Klassifikator weniger genau ist, als bei denen, bei denen die Anmerkungen sehr genau sind. Anstatt jeden Clip in \({\mathcal{D}}^{\mathrm{unlabeled}}\ zu überprüfen, können Forscher nur die Teilmenge der Clips überprüfen und korrigieren, bei denen der Klassifikator sich über seine Vorhersagen nicht sicher ist. Wenn es sich bei der Konfidenzbewertung um eine genaue Schätzung der Genauigkeit handelt, sind die Clips mit einer niedrigen Konfidenzbewertung die Clips, bei denen der Klassifikator eine schlechte Leistung erbringt, sodass Beschriftungen effizienter korrigiert werden können.

In unseren Primäranalysen bewerten wir unseren Ansatz anhand von zwei öffentlich zugänglichen „Benchmark“-Datensätzen von Mäusen in einer Laborumgebung (siehe Abschnitt „Methoden: Datensätze“). Beide Datensätze sind vollständig annotiert, sodass wir unser Modell testen und bewerten können. Der erste Datensatz, der als „Heimkäfig-Datensatz“ bezeichnet wird, wurde von Jhuang et al.7 gesammelt und enthält 12 Videos (insgesamt 10,5 Stunden; Abb. 2D) von einzeln gehaltenen Mäusen in ihren Heimkäfigen, die acht stereotype, gegenseitige Vorführungen durchführen - Exklusives Verhalten, aufgezeichnet von der Seite des Käfigs (Abb. S1A). Der zweite Datensatz mit der Bezeichnung „CRIM13“6 besteht aus 237 Videopaaren, die mit synchronisierten Seiten- und Draufsichten aufgezeichnet wurden, von Paaren von Mäusen, die sich an sozialem Verhalten beteiligen, kategorisiert in 13 verschiedene, sich gegenseitig ausschließende Aktionen (Abb. S1B). Jedes Video dauert etwa 10 Minuten, was insgesamt etwa 88 Stunden Video und Anmerkungen entspricht (Abb. 2D). Zusätzlich zu diesen Benchmark-Datensätzen fordern wir den Klassifikator heraus, indem wir ihn anhand eines „explorativen“ unveröffentlichten Datensatzes zum Verhalten von Octopus bimaculoides während einer Gewöhnungsaufgabe bewerten (siehe Abschnitt „Methoden: Datensätze“).

Leistung des Klassifikators. (A) Testsatzgenauigkeit und F1-Gesamtpunktzahl des Klassifikators im Heimkäfig-Datensatz als Funktion des Anteils des Datensatzes, der zum Trainieren verwendet wurde. Der auf der x-Achse angegebene Datenanteil wird zum Trainieren des Klassifikators verwendet, der dann für den Rest des Datensatzes ausgewertet wird. (B) Beispielethogramm von Klassifikatorbeschriftungen und Ground-Truth-Anmerkungen aus 10 zufällig ausgewählten Heimkäfig-Clips. Jede farbige Linie gibt die Bezeichnung dieses Verhaltens zum entsprechenden Zeitstempel an. Vertikale schwarze Linien kennzeichnen die Unterteilung des Videos in Clips (Dauer: eine Minute). (C) Testsatzgenauigkeit des Home-Cage-Datensatzes als Funktion des Datenanteils, der zum Trainieren des Klassifikators verwendet wird, für Clips unterschiedlicher Länge (Clipdauer wird in Minuten angegeben). (D) Gesamtzahl der kommentierten Frames in jedem Datensatz. (E–G) Wie (A–C), jedoch für den CRIM13-Datensatz. (H) Testsatzgenauigkeit des CRIM13-Datensatzes als Funktion der Menge an Trainingsdaten für Klassifikatoren, die mit Funktionen der Seitenkamera, der oberen Kamera sowie sowohl der seitlichen als auch der oberen Kamera trainiert wurden. Linien und schattierte Bereiche in (A,C,E,G,H) geben den Mittelwert bzw. den Standardfehler über 10 zufällige Datenaufteilungen an.

Da die Benchmark-Datensätze bereits vollständig gekennzeichnet sind, evaluieren wir unsere Methode, indem wir den Kennzeichnungsprozess simulieren (siehe Abschnitt „Methoden: Simulation gekennzeichneter Daten“). Wir gehen davon aus, dass ein Benutzer sich dafür entschieden hat, einen Teil der Daten mit Anmerkungen zu versehen und diese Daten verwendet, um einen Klassifikator zu trainieren und Vorhersagen für die verbleibenden Daten zu erhalten. In der Praxis würde der Benutzer den Klassifikator über die verbleibenden Daten laufen lassen, um automatisch Etiketten zu generieren, und das konfidenzbasierte Überprüfungssystem verwenden, um diese Etiketten nach Wunsch zu überprüfen. Da die Daten hier jedoch mit Anmerkungen versehen wurden, kennen wir die wahren Bezeichnungen für die „unbeschrifteten“ Daten. Dadurch können wir die Leistung der Methode so testen, als ob sie zur Erstellung von Beschriftungen für die verbleibenden \({\mathrm{prop}}_{\mathrm{unlabeled}}\)-Daten verwendet würde. Dieser Ansatz ermöglicht es uns, die Leistung über eine Reihe von Beschriftungsverhältnissen hinweg zu simulieren, was wiederum ein Maß dafür liefert, wie die Leistung eines Modells bei einer bestimmten manuellen Annotationszeit erwartet werden kann. Für ein gegebenes \({\mathrm{prop}}_{\mathrm{labeled}}\) trainieren wir also den Klassifikator und die konfidenzbasierte Überprüfung mithilfe der „gelabelten Daten“ und testen dann, wie der Ansatz darauf funktioniert verbleibende Daten (Abb. 1D).

Wir bewerten zunächst die Leistung des Klassifikators (dh Genauigkeit und F1; siehe Abschnitt „Methoden: Klassifikatorbewertung“) mit unterschiedlichen Mengen an Trainingsdaten (Abb. 2A, E) und zeigen, dass bemerkenswert wenig manuelle Annotation erforderlich ist, um eine hohe Leistung zu erzielen Genauigkeit. Für einen bestimmten Anteil mit der Bezeichnung (z. B. \({\mathrm{prop}}_{\mathrm{unlabeled}}\) oben) wird ein entsprechender Anteil an Projektclips zufällig aus allen Clips im Datensatz ausgewählt und zum Trainieren verwendet der Klassifikator, der dann anhand der verbleibenden Daten (dh des Testsatzes) ausgewertet wird. Bei beiden Datensätzen verbessern sich Genauigkeit und F1, je mehr Trainingsdaten verwendet werden, mit steilen Anstiegen bei den ersten zehn Prozent der Daten und allmählicheren Anstiegen nach zwanzig Prozent. Beispielhafte Klassifikatorausgaben und Ground-Truth-Anmerkungen sind in Abb. 2B, F dargestellt.

Anschließend vergleichen wir die Leistung unseres Modells mit bestehenden Modellen (Tabelle 1; siehe Abschnitt „Methoden: Vergleich mit bestehenden Methoden“). Im Heimkäfig-Datensatz zeigt unser Klassifikator nicht nur eine höhere Genauigkeit als die Übereinstimmung zwischen menschlichen Annotatoren, sondern übertrifft auch bestehende kommerzielle Optionen (HomeCageScan 2.0, CleverSys Inc., bewertet von Jhuang et al.7) sowie handbasierte Ansätze -gefertigte Funktionen7 und 3D-Faltungs-Neuronale Netze23. Wir stellen jedoch fest, dass der in Jiang et al.24 beschriebene Ansatz des Hidden-Markov-Modells beim Heimkäfig-Datensatz geringfügig besser abschneidet als DeepAction. Der Klassifikator weist eine übermenschliche Leistung auf und übertrifft den Ansatz mit spärlichen räumlich-zeitlichen Merkmalen, der in Burgos-Artizzu et al.6 für den CRIM13-Datensatz beschrieben wird. Es bietet auch eine bessere Leistung als frühere Methoden, die auf zeitlichen Merkmalen25, unabhängiger Komponentenanalyse26, hierarchischer spärlicher Codierung27 und integrierten spärlichen und dichten Trajektorienmerkmalen28 basieren.

Als Nächstes betrachten wir, wie sich einzigartige Aspekte unseres Datenaufbereitungsprozesses auf die Leistung des Klassifikators auswirken. Insbesondere untersuchen wir unsere Hypothese, dass unser Klassifikator bei gleicher Annotationszeit (d. h. einem gleichen beschrifteten Anteil) eine überlegene Leistung zeigt, wenn er mit relativ kurzen statt mit längeren Clips trainiert wird. Wie in Abb. 2C,G gezeigt, ist dies tatsächlich der Fall. Obwohl es vermutlich eine Grenze für dieses Phänomen gibt (z. B. wenn die Cliplänge nur eine Handvoll Frames betragen würde, würde der Klassifikator nicht genügend Kontext gewinnen, um seine Beschriftungen genau vorherzusagen), schwanken die hier getesteten Clipdauern zwischen eins und eins und 20 Minuten kürzere Clips sind für eine bestimmte Annotationsebene genauer und zeigen eine schnellere Verbesserung, wenn die Trainingsdaten zunehmen. Der CRIM13-Datensatz wird mit synchronisierten Draufsicht- und Seitenansichtskameras aufgezeichnet. In unserer Hauptanalyse kombinieren wir die Merkmale beider Kameras (siehe Abschnitt „Methoden: Merkmalsextraktion“); In Abb. 2H bestätigen wir, dass dies vorteilhaft ist. Der mit Merkmalen aus beiden Ansichten trainierte Klassifikator zeigt eine bessere Leistung als ein Klassifikator, der nur Merkmale der Seitenkamera oder nur die Merkmale der oberen Kamera trainiert hat, was darauf hindeutet, dass unsere Methode Informationen von mehreren Kameras effektiv integriert.

Ein wichtiger Gesichtspunkt ist neben der Gesamtleistung des Klassifikators auch die Leistung des Klassifikators bei bestimmten Verhaltensweisen. In stark unausgeglichenen Datensätzen (d. h. solchen, in denen eine kleine Anzahl von Verhaltensweisen unverhältnismäßig häufig vorkommt) kann eine hohe Genauigkeit durch einen Klassifikator mit schlechter Unterscheidungsfähigkeit erreicht werden, wenn seine Vorhersagen die häufigsten Klassen sind. Der Datensatz im Heimkäfig ist, abgesehen vom „Trink“-Verhalten (0,26 Prozent der Etiketten), relativ ausgewogen (Abb. 3A). Bei Nichttrinkverhalten zeigt der Klassifikator trotz geringfügiger Unterschiede in der Prävalenz der einzelnen Etiketten eine konstant hohe Leistung (Abb. 3B). Der CRIM13-Datensatz weist eine deutlich geringere Ausgewogenheit auf (Abb. 3D), wobei ein hoher Anteil an Verhaltensweisen als „andere“ (also nicht soziales Verhalten) eingestuft wird. Die hohe Häufigkeit des „anderen“ Verhaltens erklärt die hohe Leistung des Klassifikators bei Trainingsdatenanteilen nahe Null (ungefähr 55 Prozent Genauigkeit; Abb. 2E) und eine unverhältnismäßig große Anzahl sozialer Verhaltensweisen, die fälschlicherweise als „andere“ gekennzeichnet werden. durch den Klassifikator (Abb. 3E). Wir stellen außerdem fest, dass die vom Klassifikator vorhergesagte Verteilung der Kampflängen (dh die Anzahl der Frames, für die ein Verhalten nacheinander auftritt) qualitativ der tatsächlichen Verteilung der Kampflänge für die meisten Verhaltensweisen ähnelt (Abb. 3C, F). Im Home-Cage-Datensatz sehen wir, dass der Klassifikator die Kampflängen für das „Rest“-Verhalten unterschätzt, das trotz seiner hohen Leistung eine außergewöhnlich lange durchschnittliche Kampflänge aufweist (2.563 Frames gegenüber durchschnittlich 88 Frames für alle anderen Verhaltensweisen). Vorhersage des Ruheverhaltens insgesamt (Erinnerung: 0,95, Präzision: 0,98) für denselben Testsatz. Im CRIM13-Datensatz beobachten wir, dass der Klassifikator die Kampflängen für die Verhaltensweisen unterschätzt, bei denen er am schlechtesten abschneidet: „essen“, „menschlich“ und „trinken“.

Verhaltensmerkmale des Datensatzes und Leistung des Klassifikators. (A) Ground-Truth-Verteilung der Verhaltensbezeichnungen (d. h. die Anzahl der Frames, in denen jedes Verhalten auftritt, als Anteil der Gesamtzahl der Frames im Datensatz) für den Datensatz des Heimatkäfigs. (B) Beispiel einer Verwirrungsmatrix, die die Leistung des Klassifikators anhand des Verhaltens im Datensatz des Heimatkäfigs zeigt, wobei die Zellwerte relativ zur wahren Klasse normalisiert sind. (C) Wahre Kampflängen und beispielhaft vorhergesagte Kampflängen für den Heimatkäfig-Datensatz, gruppiert nach Verhalten. Ein einzelner „Kampf“ bezieht sich auf einen Zeitraum kontinuierlich auftretenden Verhaltens und die entsprechende Kampflänge auf die Länge dieses Zeitraums in Anzahl der Frames. Die mittlere Kampflänge wird durch durchgezogene schwarze Linien markiert und jeder Punkt entspricht einem einzelnen Kampf. (D–F) Ähnlich wie (A–C), jedoch für den CRIM13-Datensatz.

Um die Leistung des Klassifikators als Funktion der zum Training verwendeten Datenmenge zu untersuchen, berechnen wir die Präzision, den Rückruf und den F1-Score (siehe Abschnitt „Methoden: Klassifikatorbewertung“) für jedes Verhalten mit unterschiedlichen gekennzeichneten Datenanteilen (Abb. 4). . Im Heimkäfig-Datensatz beobachten wir für Nichttrinkverhalten ein ähnliches Muster bei der Verbesserung des Verhaltensniveaus wie bei der Gesamtgenauigkeit – ein schneller Anstieg bei niedrigen Trainingsdatenanteilen, gefolgt von einem allmählicheren Anstieg bei 10 bis 20 Prozent Trainingsdaten (Abb. 4A–G). Dieses Muster gilt auch angesichts des relativ großen Unterschieds in der Häufigkeit zwischen den am wenigsten verbreiteten (Essen, 7,5 Prozent der Labels) und den häufigsten (Mikrobewegung, 24,8 Prozent der Labels) Nichttrinkverhaltensweisen. Beim Trinkverhalten beobachten wir jedoch aufgrund seiner außergewöhnlich geringen Inzidenz eine inkonsistentere, nicht allmähliche Verbesserung der Leistung über die Proportionen der Trainingssätze hinweg (Abb. 4H).

Leistung des Klassifikators auf Verhaltensebene im Heimkäfig. (A–H) Präzisions-, Erinnerungs- und F1-Werte für jedes Verhalten im Datensatz des Heimkäfigs als Funktion des Datenanteils, der zum Trainieren des Klassifikators verwendet wird. Linien und schattierte Bereiche geben den Mittelwert bzw. den Standardfehler über 10 zufällige Datenaufteilungen an.

Dieses Muster gilt im Allgemeinen auch für den CRIM13-Datensatz (Abb. S3). Bei den meisten Verhaltensweisen beobachten wir einen schnellen Anstieg von Erinnerung, Präzision und F1, gefolgt von einer relativen Verlangsamung der Verbesserung als Funktion des Trainingsanteils bei einem Trainingsanteil von etwa 0,3. Es gibt bemerkenswerte Ausnahmen von diesem Muster. Zunächst beobachten wir, dass im Vergleich zu sehr niedrigen Trainingsanteilen die Erinnerung an „andere“ leicht abnimmt, da der Klassifikator standardmäßig „andere“ mit unverhältnismäßiger Häufigkeit vorhersagt (Abb. S3A). Der F1-Score stieg jedoch, was auf ein verbessertes Gleichgewicht zwischen Erinnerung und Genauigkeit hinweist. Und zweitens beobachten wir, dass „essen“, „kreisen“ und „trinken“ sporadische Verbesserungen bei Erinnerung, Präzision und F1 als Funktion des Trainingsanteils zeigen (Abb. S3I, L, M). Wie bei „trinken“ im Heimkäfig-Datensatz sind dies alles Verhaltensweisen mit geringer Inzidenz (ungefähr 2 Prozent der Grundwahrheitsbezeichnungen oder weniger), insbesondere im Fall von „Kreis“ und „trinken“ (ungefähr 0,3 Prozent der Grundwahrheitsbezeichnungen). -Wahrheitsetiketten).

Am explorativen Datensatz haben wir den Klassifikator anhand eines Sechs-Verhaltens-Datensatzes von sieben intern gesammelten Verhaltensvideos von Octopus bimaculoides ausgewertet (siehe Abb. 5D). Insgesamt schneidet der Klassifikator mit einer Genauigkeit von 73,1 Prozent relativ gut ab; siehe Beispielethogramm in Abb. 5C. Dies ist jedoch viel niedriger als die Leistung auf menschlicher Ebene, wenn man bedenkt, dass manuelle Kommentatoren eine Übereinstimmung von 88,7 Prozent für dasselbe, unabhängig kommentierte Video erreichten (siehe Abschnitt „Methoden: Datensatz“). In Bezug auf die Leistung auf Verhaltensebene schneidet der Klassifikator beim Kriechen, bei keinem (was auf ein interessierendes Verhalten hinweist) und bei einem festen Muster gut ab, aber schlecht bei Entspannung, Ausstoßen und Ausdehnen (Abb. 5B). Die schlechte Leistung dieser Verhaltensweisen ist wahrscheinlich auf ihre Seltenheit zurückzuführen (Abb. 5A), insbesondere im Fall von Jetting und Expanding.

Verhaltensmerkmale des explorativen Datensatzes und Klassifikatorleistung. (A) Ground-Truth-Verteilung von Verhaltensbezeichnungen für den explorativen Datensatz (Oktopus). (B) Verwirrungsmatrix der Leistung des Klassifikators bei der Testfalte aus der zehnfachen Kreuzvalidierung. (C) Beispielethogramm von Klassifikatorbezeichnungen und Ground-Truth-Anmerkungen aus 30 zufällig ausgewählten Oktopus-Verhaltensclips (jeweils eine Minute lang, abgetastet mit 10 Bildern pro Sekunde). (D) Bild aus einem Beispiel-Oktopus-Video. Das rote eingefügte Quadrat im oberen Rahmen zeigt den Standort des Tieres an, das unten vergrößert dargestellt ist.

Als nächstes richten wir unseren Fokus von der Leistung des Klassifikators auf die Leistung der konfidenzbasierten Überprüfung. Denken Sie daran, dass wir für jeden Clip einen Konfidenzwert generieren, der die Vorhersage des Klassifizierers über die Genauigkeit seiner vorhergesagten Beschriftungen darstellt (siehe Abschnitt „Methoden: Definition des Konfidenzwerts“). In Abb. 6A,D zeigen wir, dass eine starke Korrelation zwischen Konfidenzwert und Genauigkeit besteht, sowohl für Konfidenzwerte basierend auf der maximalen Softmax-Wahrscheinlichkeit als auch für solche, die mithilfe der Temperaturskalierung abgeleitet wurden (siehe Abschnitt „Methoden: Berechnung des Konfidenzwerts“). Als nächstes betrachten wir den mittleren absoluten Fehler (MAE; siehe Abschnitt „Methoden: Bewertung der Kalibrierung des Konfidenzwerts“) zwischen der vorhergesagten Genauigkeit der Clips (d. h. dem Konfidenzwert) und der tatsächlichen Genauigkeit über die Trainingsdatenanteile hinweg. Hier drückt der MAE den Betrag aus, um den der Konfidenzwert eines zufällig ausgewählten Clips (ob positiv oder negativ) von seiner Genauigkeit abweicht. Der mithilfe der Temperaturskalierung abgeleitete MAE schneidet etwas besser ab als der mithilfe von Softmax-Wahrscheinlichkeiten abgeleitete MAE für den CRIM13-Datensatz (Abb. 6E), nicht jedoch für den Home-Cage-Datensatz (Abb. 6B). Während sich die MAE für beide Methoden anfänglich verbessert, erreicht sie ein Plateau, nachdem der Anteil der gekennzeichneten Daten etwa 20 Prozent erreicht hat, was darauf hindeutet, dass genaue Schätzungen der Clip-Genauigkeit noch nicht möglich sind.

Das Vertrauen misst Verbesserungen über alle Trainingsanteile hinweg. (A) Beispiel für die Korrelation zwischen Clip-Konfidenzbewertung und Clip-Genauigkeit. Gestrichelte Linien zeigen die beste Anpassungslinie mit eingefügten R-Quadrat-Werten an. (B) Mittlerer absoluter Fehler (MAE) und (C) mittlere vorzeichenbehaftete Differenz (MSD) zwischen Clip-Konfidenzwert und Clip-Genauigkeit als Funktion der Datenmenge, die zum Trainieren des Klassifikators verwendet wird. (D–F) Ähnlich wie (A–C), jedoch für den CRIM13-Datensatz. (G) Beispielbeziehung zwischen dem Anteil der überprüften (und korrigierten) Testclips und der Testsatzgenauigkeit aus dem Datensatz des Heimkäfigs, wobei Clips in einer durch die Konfidenzbewertungsmethode bestimmten Reihenfolge überprüft werden, für verschiedene Bewertungsmethoden (siehe „Methoden: Abschnitt „Vertrauensbasierte Überprüfung“). (H) Überprüfungseffizienzmetrik, die quantifiziert, wie effektiv eine bestimmte Konfidenzbewertungsmethode funktioniert, wenn Clips mit geringer Konfidenz zuerst überprüft werden (siehe Abschnitt „Methoden: Bewertung der Überprüfungseffizienz“), als Funktion der Menge an Trainingsdaten für den Heimkäfig Datensatz. (I) Wie (H), jedoch für CRIM13. Linien und schattierte Bereiche in (B,C,E,F,H,I) geben den Mittelwert und den Standardfehler über 10 zufällige Datenaufteilungen an.

Vielleicht wichtiger als die Vorhersage der Genauigkeit der Klassifizierungen für einen einzelnen Clip ist die Vorhersage der Genauigkeit der Klassifizierungen für alle unbeschrifteten Clips. Während der absolute Fehler einzelner Clips schwanken kann, ist die geschätzte Genauigkeit des Satzes als Ganzes korrekt, wenn sich die Unterschiede aufheben (d. h. wenn Vorhersagen genauso wahrscheinlich zu hoch wie zu gering sind). Dies ist in der Praxis nützlich: Wenn der Konfidenzwert verzerrt ist (z. B. die Genauigkeit ständig überschätzt), weicht die geschätzte Genauigkeit der unbeschrifteten Daten systematisch von ihrer tatsächlichen Genauigkeit ab. Wenn die Bewertung jedoch unverzerrt ist, ist sie nützlich für die Beurteilung, ob die vorhergesagte Übereinstimmung zwischen vom Klassifikator erstellten und manuell erstellten Anmerkungen für eine bestimmte Anwendung ausreichend ist. Um dies zu untersuchen, betrachten wir die mittlere vorzeichenbehaftete Differenz (MSD; siehe Abschnitt „Methoden: Bewertung der Konfidenzwertkalibrierung“), die den Unterschied zwischen der vorhergesagten Genauigkeit aller Vorhersagen im Testsatz und der tatsächlichen Genauigkeit des Testsatzes quantifiziert. Wie in Abb. 6C,F gezeigt, weist der auf der Temperaturskalierung basierende Konfidenzwert eine niedrigere MSD auf als der auf Softmax basierende, was zeigt, dass die aus der Temperaturskalierung abgeleiteten Konfidenzwerte weniger (positiv) verzerrt sind. Während der Softmax-Score unabhängig vom Trainingsanteil die durchschnittliche Genauigkeit seiner Vorhersagen durchweg um etwa 6–8 Prozent überschätzt, ist die Temperaturskalierung im Allgemeinen nur um 1–2 Prozent zu sicher.

Nachdem wir die hohe Übereinstimmung zwischen der Clip-Konfidenzbewertung und der Clip-Genauigkeit festgestellt haben, untersuchen wir, wie gut unser konfidenzbasiertes Überprüfungssystem diese Konfidenzbewertungen nutzt, um den Zeitaufwand für die Überprüfung und Korrektur der vom Klassifikator erstellten Etiketten zu reduzieren. Ein praktikables Konfidenzmaß würde es ermöglichen, dass Clips mit einem niedrigeren Konfidenzwert (d. h. einer geringeren vorhergesagten Genauigkeit) gegenüber solchen mit einem höheren Konfidenzwert bevorzugt überprüft werden, wodurch sich die manuelle Überprüfungszeit verringert, die erforderlich ist, um Anmerkungen von akzeptabler Qualität zu erhalten. Anstatt alle vom Klassifikator erstellten Labels zu überprüfen, könnte der Benutzer stattdessen nur einen Teil mit der geringsten Genauigkeit überprüfen (siehe Abschnitt „Methoden: Konfidenzbasierte Überprüfung“). Ein Beispiel für diesen Prozess in der Praxis stellen wir in Abb. 6G dar, die die Beziehung zwischen dem Anteil des überprüften Testvideos und der Gesamtgenauigkeit der Etiketten im Testsatz simuliert. Wenn kein Video überprüft wird, ist die durchschnittliche Genauigkeit des Testsatzes die Übereinstimmung zwischen den vom Klassifikator erstellten Beschriftungen und den Ground-Truth-Anmerkungen. Wenn man dann beginnt, Videos zu überprüfen und zu korrigieren, erhöht sich die Gesamtgenauigkeit, da wir davon ausgehen, dass fehlerhafte, vom Klassifikator erzeugte Labels korrigiert werden. Wenn Videos nach dem Zufallsprinzip ausgewählt werden, ist die Beziehung zwischen dem Anteil des überprüften Testsatzes und der Genauigkeit des Testsatzes annähernd linear – wenn jedes ausgewählte Video mit gleicher Wahrscheinlichkeit die gleiche Anzahl falscher Beschriftungen aufweist, erhöht sich die Gesamtgenauigkeit durch deren Korrektur Die Bezeichnungen sind für alle Videos gleich.

Wenn man jedoch nach Konfidenzmaß sortiert und zuerst die Clips mit der niedrigsten Konfidenz überprüft, dann besteht die Untergruppe der überprüften Videos im Idealfall tendenziell aus solchen mit relativ geringerer Genauigkeit als die nicht überprüften. Die Obergrenze für die Leistung der konfidenzbasierten Überprüfung ist eine Überprüfung, bei der die Clips nach ihrer tatsächlichen Genauigkeit sortiert werden (die dem Konfidenzwert entspricht). Obwohl dies in der Praxis unbekannt ist (da die überprüften Daten unbeschriftet sind), simulieren wir es hier, um eine Obergrenze für die Leistung der konfidenzbasierten Überprüfung festzulegen. Um die Leistung der konfidenzbasierten Überprüfung über gekennzeichnete Datenanteile hinweg zu vergleichen, berechnen wir für jede Datenaufteilung eine Metrik namens „Überprüfungseffizienz“, die die Leistung des durch die beste (optimale Auswahl, Überprüfungseffizienz von) begrenzten Konfidenzwerts ausdrückt \(1\)) und die schlechteste (zufällige Auswahl, Überprüfungseffizienz von \(0\)) mögliche Leistung (siehe Abschnitt „Methoden: Bewertung der Überprüfungseffizienz“). Wie in Abb. 6H,I dargestellt, nähern sich beide Konfidenzwerte bei der Sortierung von Videos zur Überprüfung mit zunehmendem Anteil der gekennzeichneten Daten dem Optimum an. Die auf Softmax- und Temperaturskalierung basierenden Scores schneiden ungefähr gleich ab.

Während wir unsere Methode hier anhand vollständig annotierter Datensätze evaluieren, besteht der zentrale Zweck dieser Arbeit darin, die Annotation des Verhaltens in experimentellen Umgebungen zu verbessern. Aus diesem Grund veröffentlichen wir das gesamte System als MATLAB-Toolbox als GitHub-Repository, das Beispielprojekte und GUI-Schnittstellen zum Definieren des interessierenden Verhaltenssatzes (Abb. 7A) und zur Durchführung manueller Anmerkungen und konfidenzbasierter Überprüfungen (Abb. 7B) enthält. . Beispielsweise integrieren wir Clip-weise Anmerkungen, indem wir Projektvideos vorab in Clips aufteilen und Clips anstelle von Videos präsentieren, damit Benutzer diese mit Anmerkungen versehen können. Darüber hinaus integrieren wir den konfidenzbasierten Überprüfungsprozess in die GUI: Unvollständige (d. h. nicht überprüfte Anmerkungen) werden in einer Tabelle angezeigt, wobei Clips mit geringer Konfidenz (und ihre entsprechenden Konfidenzwerte) oben angezeigt werden, damit Benutzer sie auswählen können zunächst zur Überprüfung. Wir fügen auch Informationen über den Status des Projekts (z. B. Anzahl und Dauer der kommentierten Videos, Video- und Clipinformationen usw.) in die GUI ein. Während der konfidenzbasierten Überprüfung stellen wir auch direkt eine Schätzung von \(\mathrm{acc}({\mathcal{D}}^{\mathrm{unlabeled}})\) bereit und aktualisieren diese, sobald weitere Anmerkungen abgeschlossen sind. Benutzer können ganz einfach Videos laden, sie über die Tastatur mit Anmerkungen versehen, Verhaltensweisen hinzufügen oder entfernen und die Ergebnisse vollständig über die GUI exportieren.

Beispielhafte Verwendung der in der Toolbox enthaltenen MATLAB-Apps. (A) GUI zum Definieren der Verhaltensweisen in einem Datensatz. Jede Verhaltensbezeichnung entspricht einer eindeutigen Tastaturtaste („Taste“), die zum Festlegen des Starts und Stopps von Verhaltensweisen während der manuellen Anmerkung verwendet wird. (B) Ein Beispiel für die Annotations-GUI, die bei der konfidenzbasierten Überprüfung verwendet wird, um falsche, vom Klassifikator erzeugte Vorhersagen zu korrigieren. Es enthält Tabellen der vollständigen (dh von Menschen kommentierten oder überprüften) und nicht überprüften (dh mit Klassifikationskommentaren versehenen) Clips im Projekt. Während der Überprüfung enthalten die Tabellen einen Konfidenzwert für jeden Clip („Score“) sowie eine geschätzte Gesamtgenauigkeit für alle nicht kommentierten Daten. Benutzer wählen Clips zur Überprüfung aus den Anmerkungstabellen aus, die dann zusammen mit ihren vorhergesagten Beschriftungen im Video-Viewer-Feld (oben links) angezeigt werden. Benutzer erstellen oder korrigieren die Bezeichnungen der im Video angezeigten Verhaltensweisen, wobei sowohl Anmerkungen als auch die Videowiedergabe über die Tastatur gesteuert werden. Verhalten und die entsprechenden Tastenanschläge werden im Bereich „Verhaltensbezeichnungen“ angezeigt. Nachdem die Anmerkung zu jedem Clip abgeschlossen ist, klicken Benutzer auf die Schaltfläche „Als abgeschlossen markieren“, um ihren Fortschritt zu speichern.

Hier stellen wir eine Methode zur automatischen Kommentierung des Verhaltens von Labortieren aus Videos vor. Unser Klassifikator erzeugt hochpräzise Annotationen, die mit der Übereinstimmung auf menschlicher Ebene mithalten oder diese übertreffen, während er relativ wenig menschliche Annotationszeit erfordert und bei Verhaltensweisen unterschiedlicher Häufigkeit und unterschiedlicher Zeitspanne eine gute Leistung erbringt. Unsere Konfidenzwerte sagen die Genauigkeit genau voraus und sind nützlich, um die Zeit zu verkürzen, die menschliche Annotatoren benötigen, um vom Klassifikator erstellte Annotationen zu überprüfen und zu korrigieren. Schließlich veröffentlichen wir das System als Open-Source-GitHub-Repository, komplett mit einer Annotations-GUI und Beispielprojekten.

Die Hauptstärke unserer Methode ist die Fähigkeit des Klassifikators, genaue Klassifizierungen aus Rohvideobildern zu generieren. Durch die Klassifizierung des Verhaltens anhand von Rohbildinformationen entfällt bei DeepAction die Notwendigkeit, Schlüsselpunkte mit Anmerkungen zu versehen und handgefertigte Merkmale zu erstellen, die das Verhaltensrepertoire eines bestimmten Tieres angemessen abbilden. Dadurch entfällt sowohl ein mühsamer Aspekt der manuellen Annotation (d. h. Schlüsselpunktannotation zusätzlich zur Verhaltensannotation) als auch die Notwendigkeit für Forscher, Verhaltensmerkmale zu konstruieren, was sowohl zeitaufwändig als auch oft nicht optimal ist. Wir stellen außerdem fest, dass die Leistung von DeepAction die von Ansätzen übertrifft, die mit handgefertigten Merkmalen für beide analysierten Nagetierdatensätze entwickelt wurden (Tabelle 1), was darauf hindeutet, dass der Ansatz der automatisierten Merkmalsextraktion die Leistung nicht beeinträchtigt. Anhand des Benchmark-Oktopus-Datensatzes demonstrieren wir die Generalisierbarkeit des Klassifikators auf Nicht-Nagetier-Tiermodelle. Wir stellen jedoch fest, dass die Leistung nicht so stark ist wie bei den Nagetier-Datensätzen. Dies liegt wahrscheinlich entweder an der geringeren Menge an Trainingsdaten (insgesamt 6,15 Stunden) oder an der Tatsache, dass die Größe des Oktopus im Verhältnis zum Sichtfeld kleiner war als in den Nagetier-Datensätzen.

Die Leistung des Klassifikators auf Basisebene hat das Potenzial, den Verhaltensforschungsprozess erheblich zu beschleunigen. Hier besteht ein nützlicher Benchmark darin, die Genauigkeit des Klassifikators (definiert als Übereinstimmung zwischen vom Klassifikator erzeugten Beschriftungen und dem primären Satz von Annotationen; siehe Abschnitt „Methoden: Zuverlässigkeit zwischen Beobachtern“) mit der Übereinstimmung zwischen unabhängigen Annotatoren (Übereinstimmung zwischen) zu vergleichen der primäre Satz von Anmerkungen und ein zweiter, unabhängiger Satz, der zur Bewertung der Inter-Beobachter-Zuverlässigkeit verwendet wird). In unserer Analyse stellen wir fest, dass der Klassifikator erfordert, dass nur 18 Prozent der Daten mit Anmerkungen versehen werden, um die Übereinstimmung (71,6 Prozent) zwischen menschlichen Annotatoren im Datensatz des Heimkäfigs zu übertreffen (siehe Abb. 2A). Angesichts der Tatsache, dass die manuelle Annotation des Heimkäfig-Datensatzes 264 Stunden dauerte7, würde unsere Methode diese Zeit auf 47 Stunden verkürzen, wenn die Übereinstimmung auf menschlicher Ebene als Schwelle für akzeptable Annotationen definiert wird, was den Forschern 82 % der für die Durchführung erforderlichen Zeit einsparen würde mühsamer Schritt der Videoanmerkung. In ähnlicher Weise übertrifft DeepAction die Übereinstimmung auf menschlicher Ebene (69,7 Prozent) beim CRIM13-Datensatz, da 25 Prozent der Daten mit Anmerkungen versehen sind (siehe Abb. 2E), wodurch Forscher 75 Prozent ihrer Zeit sparen. Da CRIM13 350 Stunden für die Annotation benötigte6, hätte die Verwendung unserer Methode anstelle der manuellen Annotation diese Zeit auf 88 Stunden verkürzt und gleichzeitig die Annotationsqualität auf dem Niveau menschlicher Annotatoren gehalten.

Unser Vertrauensbewertungssystem ist aus zwei Gründen wichtig. Der erste ist eine geringfügige Steigerung der Überprüfungseffizienz – wenn man eine Reihe automatisch generierter Verhaltenskennzeichnungen manuell überprüfen und überprüfen möchte, ist die Auswahl derjenigen mit den niedrigsten Konfidenzwerten der Zufallsauswahl vorzuziehen. Wir zeigen, dass dies für alle Trainingsdatensatzgrößen gilt und dass die Überprüfung mithilfe von Konfidenzwerten dem Optimum immer näher kommt, je mehr Daten mit Anmerkungen versehen werden. Der zweite und vielleicht wichtigere Grund besteht darin, dass der auf der Temperaturskalierung basierende Konfidenzwert eine genaue Schätzung der Gesamtübereinstimmung zwischen vom Klassifikator und vom Menschen erstellten Etiketten für unbeschriftete Daten generiert (d. h. wenn die „vom Menschen erstellten Etiketten“ unbekannt sind). ). Dies bedeutet, dass Forscher Daten annotieren könnten, bis die geschätzte Genauigkeit der unbeschrifteten Daten einen bestimmten Schwellenwert akzeptabler Übereinstimmung für ihre jeweilige Verhaltensanalyse erreicht, und dann die automatisierten Annotationen exportieren könnten, ohne sie überprüfen und korrigieren zu müssen.

Unser Tool bietet mehrere praktische Vorteile. Erstens gibt es eine GUI für Anmerkungen und eine konfidenzbasierte Überprüfung. Zweitens ist Anpassungsfähigkeit; In unserer GitHub-Veröffentlichung stellen wir zusätzliche vorab trainierte CNNs (z. B. ResNet50 und Inception ResNetv2) bereit, mit denen potenziell nützlichere Funktionen extrahiert werden könnten, einen rechentechnisch schnelleren optischen Flussalgorithmus29 und Optionen zur Parallelisierung einer Reihe rechenintensiver Projektfunktionen (z. B. temporal). Rahmengenerierung und Merkmalsextraktion). Ein letzter Vorteil ist die Modularität: Benutzer können den Klassifizierungsteil des Workflows ohne die Überprüfungskomponente verwenden, der Annotator kann dies nur für seine Schnittstelle usw. tun.

Obwohl die hier vorgestellte Toolbox einen erheblichen Fortschritt im Vergleich zur vollständig manuellen Annotation darstellt, gibt es mehrere Möglichkeiten für weitere Untersuchungen und potenzielle Verbesserungen. Während unser Clip-Auswahlprozess eine überlegene Leistung gegenüber der Annotation ganzer Videos zeigt, wählen wir in den Ergebnissen hier Clips nach dem Zufallsprinzip aus. In der Praxis kann das konfidenzbasierte Überprüfungssystem verwendet werden, um den Klassifikator iterativ zu trainieren (Abb. 1A), wobei Clips mit geringer Konfidenz überprüft, korrigiert und zum erneuten Trainieren des Klassifikators verwendet werden (obwohl wir nicht untersuchen, ob dies der Fall ist). hier einer Zufallsauswahl vorzuziehen). Ein alternativer Ansatz wäre, die bei der Videozusammenfassung verwendeten Methoden anzupassen, um Videoclips nach ihrer Ähnlichkeit zu gruppieren und dann die Teilmenge der Clips auszuwählen, die den Gesamtdatensatz am besten repräsentiert30,31. Während unser Klassifikator auf einem LSTM mit bidirektionalen Schichten basiert, ist es möglich, dass alternative Architekturen eine überlegene Leistung zeigen11,32. Dementsprechend geht der hier beschriebene Klassifikator davon aus, dass sich Verhaltensweisen gegenseitig ausschließen; das heißt, keines der Verhaltensweisen kann gleichzeitig auftreten. Für Datensätze, in denen dies jedoch nicht der Fall ist, könnte die hier verwendete Kreuzentropieverlustfunktion leicht angepasst werden, um gleichzeitig auftretendes Verhalten zu berücksichtigen. Ein letzter Ansatz für weitere Untersuchungen ist unser Ansatz zur Berechnung von Konfidenzwerten. Obwohl unser System bei ausreichenden Trainingsdaten (Abb. 6H, I) bereits nahezu optimal ist, gibt es eine Reihe von dichtebasierten Metriken33 oder solchen, die Bayes'sches Dropout verwenden34, die möglicherweise eine bessere Leistung als die hier verwendete auf Temperaturskalierung basierende bieten .

Da Nagetiere in der Verhaltensforschung weit verbreitet sind und Mäuse die am häufigsten untersuchten Nagetiere sind35, haben wir in unserer Hauptanalyse zwei öffentlich verfügbare Datensätze ausgewählt, in denen Mäuse gezeigt werden, die eine Reihe von Verhaltensweisen zeigen. Der erste Datensatz, der als „Heimkäfig-Datensatz“ bezeichnet wird, wurde von Jhuang et al.7 gesammelt und umfasst 12 Videos (ca. 10,5 Stunden und insgesamt 1,13 Millionen Bilder) von einzeln gehaltenen Mäusen in ihren Heimkäfigen, die aus dem Käfig aufgenommen wurden Seitenansicht. Die Videoauflösung beträgt \(320\mal 240\) Pixel. Die Autoren kommentieren jedes Video vollständig und identifizieren acht sich gegenseitig ausschließende Verhaltensweisen (Abb. S1A) mit unterschiedlicher Häufigkeit (Abb. 3A). Dieser Datensatz ermöglicht es uns, unseren Ansatz mit bestehenden Methoden zu vergleichen, unsere Methode anhand eines allgemeinen Anwendungsfalls zu bewerten und ist im Hinblick auf die Häufigkeit jedes Verhaltens relativ ausgewogen.

Der zweite verwendete Datensatz ist der Caltech Resident-Intruder Mouse-Datensatz (CRIM13), der von Burgos-Artizzu et al.6 gesammelt wurde. Es besteht aus 237 Videopaaren, die von synchronisierten Draufsicht- und Seitenansichtkameras mit 25 Bildern pro Sekunde und einer Pixeltiefe von 8 Bit aufgenommen wurden. Die Videos sind etwa 10 Minuten lang und die Autoren bezeichnen 13 sich gegenseitig ausschließende Aktionen (Abb. S1B). Bei 12 dieser Handlungen handelt es sich um soziale Verhaltensweisen, und die übrigen Handlungen gehören zur Kategorie „Andere“, die Zeiträume bezeichnet, in denen kein interessantes Verhalten auftritt6. Dieser Datensatz weist eine Reihe von Herausforderungen auf, die im Datensatz von Jhuang et al.7 nicht vorhanden sind. Neben der Einbeziehung des Sozialverhaltens (im Gegensatz zum Datensatz für Heimkäfige, der einzeln gehaltene Mäuse umfasst), stellt es zwei algorithmische Herausforderungen dar. Zunächst werden Videos mit zwei synchronisierten Kameras aufgezeichnet. Dies ermöglicht es uns, die Funktionalität der Integration mehrerer Kameras zu testen (siehe Abschnitt „Methoden: Merkmalsextraktion“), um die Leistung des Klassifikators mithilfe von Merkmalen mehrerer Kameras zu bewerten. Und zweitens ist es äußerst unausgewogen, da eine knappe Mehrheit aller Anmerkungen der Kategorie „Sonstiges“ zuzuordnen ist (Zeiträume, in denen kein soziales Verhalten auftrat; Abb. 3D).

Wir fügen auch einen explorativen Datensatz hinzu, um die Anwendbarkeit unseres Modells auf Nicht-Nagetiermodelle zu demonstrieren. Er besteht aus sieben einzigartigen Videos von in Einzelhäusern gehaltenen Oktopus bimaculoides während einer Studie zum Gewöhnungsverhalten von Oktopussen im Oktopuslabor von Dartmouth. Ein Video (ungefähr 62 Minuten lang) wurde von zwei verschiedenen Kommentatoren mit Anmerkungen versehen, sodass wir die Zuverlässigkeit zwischen Beobachtern beurteilen konnten, indem wir die Übereinstimmung zwischen diesen beiden unabhängigen Anmerkungen berechneten. Die Videos dauern insgesamt etwa 6,75 Stunden, wobei 6,15 Stunden mit Anmerkungen versehen sind. Das Video wurde mit 10 Bildern pro Sekunde und einer Auflösung von (640 x 436) Pixeln aufgenommen. Wir definieren fünf Verhaltensweisen von Interesse: Kriechen, festes Muster (Kriechen in fester Formation entlang der Tankwand), Entspannung, Jetting (schnelle Beschleunigung weg von Reizen) und Ausdehnen (Tentakelausbreitung bei Alarmreaktion oder aggressiver Darstellung) sowie einen Indikator für wenn keines dieser Verhaltensweisen auftritt (keine). Im Originaldatensatz gab es drei zusätzliche Verhaltensweisen (Tinten/Jetten, Anzeige von Dominanz, Farbwechsel), die nur eine sehr kleine Anzahl der Gesamtbilder ausmachten und zusammen mit den anderen sechs Verhaltensweisen (Krabbeln, festes Muster, Entspannung) auftreten konnten , spritzend, expandierend, keine). Da unser Klassifizierungsmodell derzeit jedoch nur sich gegenseitig ausschließende Klassen vorhersagen kann, haben wir diese drei Verhaltensweisen aus unseren Eingabeanmerkungen entfernt.

Beide Datensätze umfassen eine Reihe von Annotationen, die von zwei Gruppen von Annotatoren durchgeführt werden. Der primäre Satz von Annotationen wurde von der ersten Gruppe von Annotatoren erstellt und umfasst alle Videos im Datensatz. Der sekundäre Satz von Anmerkungen wurde von einem zweiten, unabhängigen Satz von Annotatoren für eine Teilmenge von Videos durchgeführt. Wir verwenden den primären Satz von Anmerkungen, um unsere Methode zu trainieren und zu bewerten, und den sekundären Satz, um die Zuverlässigkeit zwischen Beobachtern festzustellen. Das heißt, wie stark sich die Anmerkungen zweier unabhängiger menschlicher Annotatoren voraussichtlich unterscheiden werden. Vor diesem Hintergrund können vom Klassifikator erzeugte Beschriftungen am genauesten als das vorhergesagte Verhalten interpretiert werden, wenn das Video von der ersten Gruppe von Annotatoren mit Anmerkungen versehen wurde. Diese Unterscheidung wird wichtig, weil wir die Genauigkeit unserer Methode (d. h. die Übereinstimmung zwischen den Vorhersagen des Klassifikators und dem primären Satz von Annotationen) im Vergleich zur Übereinstimmung zwischen Beobachtern (d. h. der Übereinstimmung zwischen der ersten und zweiten Gruppe von Annotatoren) vergleichen die von beiden Gruppen gekennzeichnete Teilmenge des Videos). Wenn wir beispielsweise feststellen, dass unser Modell eine Genauigkeit erreicht, die „über der menschlichen Zustimmung“ liegt, meinen wir damit, dass unser Klassifikator die Bezeichnungen der ersten Gruppe menschlicher Annotatoren besser vorhersagt als die der zweiten Gruppe menschlicher Annotatoren. Im Fall des Heimkäfig-Datensatzes betrug die Übereinstimmung zwischen dem primären und dem sekundären Satz 78,3 Prozent, verglichen mit einem 1,6-stündigen Teilsatz aller Datensatzvideos7. Für CRIM13 betrug die Übereinstimmung 69,7 Prozent, bewertet anhand einer zufälligen Auswahl von 12 Videos6.

Um die Leistung unseres Ansatzes mit unterschiedlichen Mengen an Trainingsdaten zu simulieren, trainieren wir in unseren Primäranalysen den Klassifikator mit den folgenden Beschriftungsmengen:

Das heißt, wir verwenden einen Teil aller Daten, \({\mathrm{prop}}_{\mathrm{labeled}}\), um unsere Trainings- und Validierungssätze zu konstruieren (d. h. \({\mathcal{D}} ^{\mathrm{labeled}})\) und die verbleibenden \({1-\mathrm{prop}}_{\mathrm{labeled}}\)-Daten, um unseren Testsatz zu erstellen, \({\mathcal{D }}^{\mathrm{test}}\) (Abb. 1B,D). Wir verwenden ein Inkrement von \(0,02\) für niedrige Trainingsanteile (bis zu \(0,20\)), da wir dann die größte Änderung im Vergleich zu einer kleinen Änderung in den hinzugefügten Trainingsdaten sehen (Abb. 2A, E). Wir erhöhen Werte von \(0,25\) bis \(0,90\) um \(0,05\). Dies ergibt einen Satz von 24 Trainingsanteilen pro Analyse. Darüber hinaus bewerten wir das Modell für jeden Trainingsanteil, sofern nicht anders angegeben, anhand von 10 zufälligen Datenaufteilungen. In unseren Hauptanalysen verwenden wir für beide Datensätze eine Cliplänge von einer Minute.

Beim Vergleich unseres Modells mit bestehenden Methoden verwenden wir eine k-fache Validierung, anstatt die Daten anhand zufälliger Aufteilungen auszuwerten. Im Fall des Heimkäfig-Datensatzes verwenden die genannten vorhandenen Methoden einen Ansatz, bei dem „eins weggelassen“ wird: Sie verwenden 11 der 12 Videos zum Trainieren ihrer Methoden und das verbleibende Video zum Testen. Bei unserem Ansatz verlassen wir uns jedoch auf die Aufteilung der Daten in Clips. Stattdessen verwenden wir eine 12-fache Kreuzvalidierung, bei der wir die Datensatzclips zufällig in 12 Falten aufteilen und dann die Kreuzvalidierung auf die Clips und nicht auf ganze Videos anwenden . Bei der Bewertung der Leistung ihres Ansatzes am CRIM13-Datensatz wählten Burgos-Artizzu et al.6 104 Videos zum Training und 133 zum Testen aus, was bedeutet, dass sie ihr Programm auf 44 Prozent der Daten trainierten und es auf 56 Prozent testeten. Hier bewerten wir unsere Methode im Vergleich zu ihrer Methode mithilfe einer zweifachen Kreuzvalidierung (50 Prozent Test und 50 Prozent Zugaufteilung), um ähnliche Trainingsdatenniveaus beizubehalten.

Um räumliche Frames zu generieren, extrahieren wir Rohvideoframes aus jeder Videodatei. Anstatt jedes Bild als Bilddatei in einem Verzeichnis zu speichern, speichern wir die gesamte Bildsequenz, die einem einzelnen Video entspricht, in einer Sequenzdatei, indem wir die von Dollár36 bereitgestellte Implementierung mit JPG-Komprimierung verwenden. Dies hat den Vorteil, dass die Videobilder einfacher zwischen Dateisystemen übertragen und auf jedem Betriebssystem lesbar werden (was für Benutzer nützlich ist, die die Toolbox auf Hochleistungs-Computing-Clustern ausführen). Um die zeitliche Komponente zu erzeugen, verwenden wir den TV-L1-Algorithmus19,37, der alternativen optischen Flussalgorithmen überlegen ist15, um den dichten optischen Fluss zwischen Paaren aufeinanderfolgender Videobilder zu berechnen und ihn über die MATLAB-Implementierung von Cun38 visuell darzustellen. Bei der visuellen Darstellung optischer Flussfelder repräsentieren Farbton und Helligkeit eines Pixels die Ausrichtung und Größe der Bewegung dieses Pixels zwischen aufeinanderfolgenden Bildern. Durch die Darstellung der Bewegungsinformationen des Videos als Satz von Bildern können wir eine ähnliche Methode zur Merkmalsextraktion sowohl für räumliche als auch für zeitliche Frames verwenden. So wie die aus den räumlichen Bildern abgeleiteten Merkmale die räumlichen Informationen im Video darstellen, sollten die aus den zeitlichen Bildern abgeleiteten Merkmale eine Darstellung der Bewegungsinformationen im Video liefern.

Wir nutzen das vorab trainierte ResNet18 Convolutional Neural Network (CNN), um High-Level-Features aus den räumlichen und zeitlichen Videobildern zu extrahieren. CNNs werden häufig in Bildverarbeitungsanwendungen verwendet und bestehen aus einer Reihe von Schichten, die ein Bild als Eingabe verwenden und basierend auf dem Inhalt dieses Bildes eine Ausgabe generieren. Intuitiv können Klassifizierungs-CNNs in zwei Komponenten unterteilt werden: Merkmalsextraktion und Klassifizierung. In der Merkmalsextraktionskomponente verwendet das Netzwerk eine Reihe von Schichten, um immer komplexere Merkmale aus dem Bild zu extrahieren. In der Klassifizierungskomponente verwendet das Netzwerk die Merkmale der höchsten Ebene, um eine endgültige Klassifizierung für das Bild zu generieren (z. B. „Hund“ oder „Katze“). Bei vorab trainierten CNNs lernt das Netzwerk durch Training, wichtige Merkmale aus dem Eingabebild zu extrahieren – indem es Vorhersagen für eine Reihe von Bildern generiert, für die die Grundwahrheit bekannt ist, und dann das Netzwerk basierend auf der Abweichung der vorhergesagten Klassifizierung modifiziert Anhand der tatsächlichen Klassifizierung lernt das Netzwerk, welche Merkmale im Bild für die Unterscheidung einer Objektklasse von einer anderen wichtig sind. In vorab trainierten CNNs wie dem ResNet18, das darauf trainiert wurde, Millionen von Bildern aus der ImageNet-Datenbank in tausend verschiedene Klassen zu kategorisieren39, erkennen frühe Schichten generische Merkmale (z. B. Kanten, Texturen und einfache Muster) und spätere Schichten stellen Bilddaten stärker dar abstrakt40.

Hier nutzen wir Transferlernen – bei dem ein für einen Kontext trainiertes Netzwerk in einem anderen verwendet wird –, um eine niedrigdimensionale Darstellung der Daten in den räumlichen und zeitlichen Videobildern zu extrahieren. Da das ResNet18 auf einem großen, allgemeinen Objektdatensatz trainiert wird, besteht die Idee darin, dass die Allgemeingültigkeit des Netzwerks es uns ermöglicht, eine abstrakte Darstellung der hervorstechenden visuellen Merkmale im zugrunde liegenden Video zu erhalten, indem wir Aktivierungen aus den späteren Schichten des Netzwerks extrahieren Reaktion auf einen völlig anderen Satz von Bildern (in diesem Fall ein Laborvideo des Tierverhaltens). Um Merkmale aus dem ResNet18-Netzwerk für ein bestimmtes Bild zu extrahieren, geben wir das Bild in das Netzwerk ein und zeichnen die Antwort („Aktivierungen“) von einer bestimmten Schicht des Netzwerks auf. In dieser Arbeit haben wir uns dafür entschieden, Aktivierungen aus der globalen durchschnittlichen Pooling-Schicht („pool5“ in MATLAB) von ResNet18 nahe dem Ende des Netzwerks zu extrahieren (um Merkmalsdarstellungen auf hoher Ebene zu erhalten). Dadurch wird ein Merkmalsvektor mit der Länge \(512\) generiert, der CNN-Merkmale auf hoher Ebene für jedes Bild darstellt.

Standardmäßig akzeptiert ResNet18 Eingabebilder der Größe \([224, 224, 3]\) (d. h. Bilder mit einer Breite und Höhe von 224 Pixeln und drei Farbkanälen), daher verarbeiten wir Frames vor, indem wir sie zunächst auf eine Breite ändern und einer Höhe von 224 Pixeln. Bei räumlichen Rahmen werden die verkleinerten Bilder direkt in das unveränderte Netzwerk eingegeben. Für zeitliche Frames geben wir Frames jedoch nicht einzeln in das Netzwerk ein, sondern „stapeln“ jeden Eingabeframe mit den fünf Frames davor und den fünf Frames danach an das CNN, was zu einer Eingabegröße von \([224, 224 führt , 33]\). Dieser Ansatz ermöglicht es dem Netzwerk, Merkmale mit längerfristigen Bewegungsinformationen zu extrahieren und verbessert nachweislich die Unterscheidungsleistung14,18. Wir wählen eine Stapelgröße von 11 basierend auf den Erkenntnissen von Simonyan und Zisserman18. Standardmäßig akzeptiert das ResNet18-Netzwerk nur Eingaben der Größe \([224, 224, 3]\). Um es also so zu ändern, dass es Eingaben der Größe \([224, 224, 33]\) akzeptiert, replizieren wir die Gewichte von Die erste Faltungsschicht (normalerweise drei Kanäle) 11 Mal. Dies ermöglicht es dem modifizierten „flow ResNet18“, Stapel von Bildern als Eingaben zu akzeptieren und gleichzeitig die vorab trainierten Gewichte beizubehalten, um hervorstechende Bildmerkmale zu extrahieren.

Nachdem räumliche Merkmale und zeitliche Merkmale getrennt aus den räumlichen bzw. zeitlichen Rahmen extrahiert wurden, kombinieren wir sie, um die raumzeitlichen Merkmale zu erzeugen, die zum Trainieren des Klassifikators verwendet werden (Abb. 1E). Dazu verketten wir einfach die räumlichen und zeitlichen Merkmale für jeden Frame. Das heißt, für ein bestimmtes Videosegment mit \(n\) Bildern sind die anfänglichen räumlich-zeitlichen Merkmale eine Matrix der Größe \(\left[n, 512\times 2\right]=[n, 1024]\), wobei \(512\) repräsentiert die Dimensionalität der aus dem ResNet18 extrahierten Features. Wenn mehrere synchronisierte Kameras verwendet werden (wie es in einem unserer Benchmark-Datensätze der Fall ist), verwenden wir denselben Prozess und verketten die räumlichen und zeitlichen Merkmale für jedes Bild und jede Kamera. Im Fall von zwei Kameras bedeutet dies beispielsweise, dass die anfänglichen raumzeitlichen Merkmale eine Matrix der Größe \(\left[n,512\times 2\times 2\right]=\left[n,2048\right]\) sind. . Um die Trainingszeit und den Speicherbedarf zu verringern und die Leistung zu verbessern41,42, nutzen wir die Dimensionsreduktion, um die Größe der anfänglichen raumzeitlichen Merkmale zu verringern und endgültige raumzeitliche Merkmale der Größe \(\left[n,512\right]\) zu generieren. Wir haben die rekonstruktionsunabhängige Komponentenanalyse43,44 als Methode zur Dimensionsreduktion ausgewählt, die durch Minimierung einer Zielfunktion eine lineare Transformation erzeugt, die die Unabhängigkeit von Ausgabemerkmalen mit der Fähigkeit zur Rekonstruktion von Eingabemerkmalen aus Ausgabemerkmalen in Einklang bringt.

Die beschrifteten und unbeschrifteten Daten bestehen aus einer Reihe von Clips, die aus Projektvideos generiert wurden und die der Klassifikator zur Vorhersage des Verhaltens verwendet. Clips in \({\mathcal{D}}^{\mathrm{labeled}}\) und \({\mathcal{D}}^{\mathrm{unlabeled}}\) bestehen beide aus einem Videosegment und eine entsprechende Reihe räumlich-zeitlicher Merkmale, die aus diesem Video extrahiert wurden. Clips in \({\mathcal{D}}^{\mathrm{labeled}}\) enthalten auch einen begleitenden Satz manueller Anmerkungen (Abb. 1B). Für einen gegebenen Clip in \({\mathcal{D}}^{\mathrm{labeled}}\) mit \({n}_{\mathrm{labeled}}\) Frames nimmt der Klassifikator einen \([{ n}_{\mathrm{labeled}},512]\)-dimensionaler Vektor räumlich-zeitlicher Merkmale (Abb. 1E) und ein eindimensionales Array von \({n}_{\mathrm{labeled}}\) manuell- erzeugte Labels (z. B. „essen“, „trinken“ usw.) als Eingaben und lernt, die \({n}_{\mathrm{labeled}}\) Labels aus den Features vorherzusagen. Nach dem Training nimmt der Klassifikator für einen bestimmten Clip in \({\mathcal{D}}^{\mathrm{unlabeled}}\) mit \({n}_{\mathrm{unlabeled}}\) Frames eine Geben Sie einen \([{n}_{\mathrm{unlabeled}},512]\)-dimensionalen Vektor räumlich-zeitlicher Merkmale ein und geben Sie einen Satz von \({n}_{\mathrm{unlabeled}}\) Verhaltenslabels aus, entsprechend dem vorhergesagten Verhalten in jedem der \({n}_{\mathrm{unlabeled}}\)-Frames. Um diese Transformation von Features zu Labels umzusetzen, stützen wir uns auf wiederkehrende neuronale Netze (RNNs). Bevor wir Clips in das RNN eingeben, teilen wir sie weiter in kürzere „Sequenzen“ auf, die 15 Sekunden Video entsprechen, um Überanpassung45 und Sequenzauffüllung46 zu reduzieren. Im Gegensatz zu herkömmlichen neuronalen Netzen enthalten rekurrente neuronale Netze zyklische Verbindungen, die es ermöglichen, dass Informationen über einen längeren Zeitraum bestehen bleiben und Abhängigkeiten in sequentiellen Daten erlernt werden47. Angesichts der Tatsache, dass die genaue Vorhersage von Verhalten die Integration von Informationen über die Zeit erfordert (d. h. Annotatoren müssen im Allgemeinen mehr als einen Frame betrachten, um die meisten Verhaltensweisen zu klassifizieren, da sich Verhaltensweisen oft durch Bewegung über die Zeit unterscheiden), ist diese Beständigkeit von entscheidender Bedeutung.

Wir entscheiden uns für ein Long-Short-Term-Memory-Netzwerk (LSTM) mit bidirektionalen LSTM-Schichten (BiLSTM) als Kern unseres Klassifizierungsmodells. LSTMs sind in der Praxis besser in der Lage, langfristige Abhängigkeiten in Daten zu lernen als herkömmliche RNNs48,49, und die Verwendung bidirektionaler Schichten ermöglicht es dem Netzwerk, Informationen in beiden zeitlichen Richtungen zu verarbeiten50 (d. h. zeitlich vorwärts und rückwärts, statt nur vorwärts vorwärts). im Fall einer herkömmlichen LSTM-Schicht). Wie in Abbildung S4 dargestellt, beginnt die Architektur unseres Netzwerks mit einer Sequenzeingabeschicht, die ein zweidimensionales Array akzeptiert, das raumzeitlichen Videomerkmalen entspricht (mit einer Zeile pro Bild und einer Spalte pro Merkmal). Anschließend wenden wir zwei BiLSTM-Schichten an, was die Komplexität des Modells erhöht und es dem Modell ermöglicht, abstraktere Beziehungen zwischen Eingabesequenzen und korrekten Ausgabebezeichnungen zu lernen51. Um die Wahrscheinlichkeit einer Modellüberanpassung zu verringern, verwenden wir nach jeder BiLSTM-Schicht eine Dropout-Schicht, die einen bestimmten Anteil der Eingabeeinheiten (hier \(50\) Prozent) zufällig auf \(0\) setzt, wodurch die Überanpassung durch Eindämmung der Leistung reduziert wird eines einzelnen Neurons, um die Ausgabe zu erzeugen52. Auf die zweite Dropout-Schicht folgt eine vollständig verbundene Schicht mit einer Ausgabegröße von \([n,K\)], wobei \(K\) die Anzahl der Klassen und \(n\) die Anzahl der Frames ist den Eingabeclip. Die Softmax-Schicht normalisiert dann die Ausgabe der vollständig verbundenen Schicht in einen Satz von Klassenwahrscheinlichkeiten mit der Form \([n,K]\), wobei die Summe jeder Zeile \(1\) ist und die Softmax-Wahrscheinlichkeit der Klasse \(k \) im Rahmen \(j\) ist durch den Eintrag \(jk\) gegeben. Im Anschluss an die Softmax-Schicht generiert die Sequenz-zu-Sequenz-Klassifizierungsschicht ein eindimensionales kategoriales Array von \(n\) Labels, die dem Verhalten mit der höchsten Softmax-Wahrscheinlichkeit in jedem Frame entsprechen. Wir wählen Kreuzentropieverlust für \(K\) sich gegenseitig ausschließende Klassen53 als unsere Verlustfunktion, da sich die Verhaltensweisen in beiden Datensätzen gegenseitig ausschließen. Alle Klassifikatoren wurden mit einer einzigen Nvidia Tesla K80-GPU trainiert, die auf dem Hochleistungs-Computing-Cluster des Dartmouth College läuft.

In dieser Analyse verwenden wir beim Training des Netzwerks die in Tabelle 2 angegebenen Hyperparameter. Um eine Überanpassung zu vermeiden, wählen wir 20 Prozent von \({\mathcal{D}}^{\mathrm{labeled}}\) zur Verwendung in unserem Validierungssatz aus (d. h. \({prop}_{train}=0,20\) ; siehe Abb. 1C). Anschließend bewerten wir das Netzwerk anhand dieses Validierungssatzes in jeder Epoche (wobei „Epoche“ als ein einzelner Durchgang des gesamten Trainingssatzes durch das Netzwerk definiert ist) und zeichnen seinen Kreuzentropieverlust auf. Wenn der Verlust im Validierungssatz nach einer bestimmten Epoche mehr als zweimal größer oder gleich dem kleinsten vorherigen Verlust im Validierungssatz ist, wird das Training beendet.

Um den Klassifikator zu bewerten, betrachten wir seine Leistung auf dem Testsatz \({\mathcal{D}}^{\mathrm{test}}\) (Abb. 1B,D). Für jeden Clip gibt der Klassifikator einen Satz vorhergesagter Beschriftungen für jeden Frame aus, die dem vorhergesagten Verhalten in diesem Frame entsprechen. Bei der Bewertung des Klassifikators interessiert uns, wie genau diese vorhergesagten Bezeichnungen mit den wahren übereinstimmen. Wir betrachten zunächst die allgemeine Vorhersagegenauigkeit. Wir lassen \(\mathrm{richtig}\) die Anzahl der Labels bezeichnen, bei denen die Vorhersage des Netzwerks mit dem wahren Label übereinstimmt, und \(\mathrm{falsch}\) die Anzahl der Labels, bei denen die Vorhersage des Netzwerks nicht mit dem wahren Label übereinstimmt als das wahre Etikett. Dann kann die Genauigkeit als folgender Anteil quantifiziert werden:

Als nächstes betrachten wir die Leistung des Netzwerks anhand des Verhaltens. Dazu bezeichnen wir mit \({\mathrm{TP}}_{k}\) die Anzahl der wahren Positiven (vorhergesagte Klasse \(k\) und wahre Klasse \(k\)), \({\mathrm {FP}}_{k}\) die Anzahl falsch positiver Ergebnisse (vorhergesagte Klasse \(k\), aber wahre Bezeichnung nicht Klasse \(k\)) und \({\mathrm{FN}}_{k} \) die Anzahl der falschen Negative (wahre Klasse \(k\), vorhergesagte nicht Klasse \(k\)) für die Klasse \(k\) (wobei \(k\) zwischen \(1\) und der Gesamtzahl liegt der Klassen, \(K\)).

Anschließend berechnen wir die Präzision, den Rückruf und den F1-Score für jedes Label11,55, wobei die Präzision und der Rückruf für die Klasse \(k\) wie folgt definiert sind:

Präzision ist der Anteil korrekter Vorhersagen in allen Fällen, in denen die vorhergesagte Klasse die Klasse \(k\) ist. Recall hingegen bezeichnet den Anteil korrekter Vorhersagen in allen Fällen, in denen die wahre Klasse die Klasse \(k\) ist. Aus der Präzision und dem Rückruf berechnen wir den F1-Score für die Klasse \(k\). Der F1-Score ist das harmonische Mittel aus Präzision und Erinnerung, wobei ein hoher F1-Score sowohl auf hohe Präzision als auch auf Erinnerung hinweist und Defizite in beiden Bereichen diese verringern:

Nachdem wir den F1-Score für jede Klasse berechnet haben, berechnen wir den durchschnittlichen F1-Score \({\mathrm{F}1}_{\mathrm{all}}\) wie folgt: \({\mathrm{F}1}_ {\mathrm{all}}=\frac{1}{K}\sum_{k=1}^{K}{\mathrm{F}1}_{k}\).

Für jeden Eingabeclip gibt der Klassifikator einen Satz vorhergesagter Anmerkungen zurück, die dem vorhergesagten Verhalten (z. B. „Gehen“, „Trinken“, „Ruhen“ usw.) entsprechen, das in jedem Frame dieses Clips auftritt. Wir bezeichnen die Menge der vom Klassifikator vorhergesagten Bezeichnungen für die Clipnummer \(i\), \({\text{clip}}_{i}\), als \(\left\{{\widehat{y}}_{ j} | j\in {\text{clip}}_{i}\right\}\). Jeder Clip verfügt außerdem über einen Satz „echter“ Beschriftungen, die denjenigen entsprechen, die erstellt würden, wenn der Clip manuell mit Anmerkungen versehen würde. Im Fall der beschrifteten Daten sind die wahren Beschriftungen bekannt (und werden zum Trainieren des Klassifikators verwendet). Bei unbeschrifteten Daten sind diese nicht bekannt (vor der manuellen Überprüfung). Wir bezeichnen die Menge der wahren Labels für \({\mathrm{clip}}_{i}\) als \(\left\{{y}_{j} | j\in {\text{clip}}_{ i}\right\}\). Für jeden Frame in einem Clip geben wir nicht nur eine Vorhersage für das in diesem Frame auftretende Verhalten aus, sondern erstellen auch eine Schätzung, wie wahrscheinlich es ist, dass die vom Klassifikator zugewiesene Bezeichnung dieses Frames korrekt ist. Das heißt, wir generieren für jeden Clip einen Satz vorhergesagter Wahrscheinlichkeiten \(\left\{{\widehat{p}}_{j} | j\in {\text{clip}}_{i}\right\} \), so dass \({\widehat{p}}_{j}\) die geschätzte Wahrscheinlichkeit bezeichnet, dass \({\widehat{y}}_{j}\) gleich \({y}_{j) ist }\). In einem optimalen Klassifikator ist \({\mathbb{P}}\left({\widehat{y}}_{j}={y}_{j}\right)={\widehat{p}}_{j }\). Das heißt, \({\widehat{p}}_{j}\) ist eine Schätzung der Wahrscheinlichkeit, dass die Klassifizierung korrekt ist; und in einem optimalen Konfidenz-Scorer ist die geschätzte Wahrscheinlichkeit, dass die Klassifizierung korrekt ist, die Ground-Truth-Wahrscheinlichkeit, dass die Klassifizierung korrekt ist56.

Nachdem wir nun eine geschätzte Wahrscheinlichkeit dafür ermittelt haben, dass ein bestimmter Frame in einem Clip korrekt ist, erweitern wir den Konfidenzwert auf einen gesamten Clip. Wie bei der Annotation von Trainingsdaten wird der Überprüfungsprozess auf der Ebene eines gesamten Clips und nicht auf der Ebene einzelner Videobilder durchgeführt. Das heißt, selbst wenn ein Clip einige wenige Frames enthält, bei denen sich der Klassifikator relativ unsicher ist, gehen wir davon aus, dass ein menschlicher Prüfer den gesamten Clip sehen müsste, um über genügend Kontext zu verfügen, um falsch klassifizierte Frames genau zu korrigieren. Da \({\widehat{p}}_{j}\) die geschätzte Wahrscheinlichkeit ist, dass ein gegebener Frame \(j\) korrekt ist, folgt daraus, dass der Durchschnitt \({\widehat{p}}_{j}\ ) für \(j\in {\text{clip}}_{i}\) ist die geschätzte Wahrscheinlichkeit, dass ein zufällig ausgewählter Frame in \({\mathrm{clip}}_{i}\) korrekt ist. Wir definieren diese Größe als Clip-Konfidenzwert; formal ist \(\mathrm{conf}\left({\text{clip}}_{i}\right)=\frac{1}{\left|{\text{clip}}_{i}\right| }\sum_{j\in {\text{clip}}_{i}}{\widehat{p}}_{j}\), wobei \(\mathrm{conf}\left({\mathrm{clip} }_{i}\right)\) ist der Clip-Konfidenzwert von \({\text{clip}}_{i}\) und \(\left|{\text{clip}}_{i}\right |\) ist die Anzahl der Frames in \({\text{clip}}_{i}\). Wir gehen dann davon aus, dass Genauigkeit die wahre Wahrscheinlichkeit ist, dass ein zufällig ausgewählter Frame in \({\text{clip}}_{i}\) per Definition korrekt ist. Das heißt, \(\mathrm{acc}\left({\text{clip}}_{i}\right)=\frac{1}{\left|{\text{clip}}_{i}\right |}\sum_{j\in {\text{clip}}_{i}}\mathbf{I}({\widehat{y}}_{j}={y}_{j})\), wobei \(\mathrm{acc}\left({\text{clip}}_{i}\right)\) ist die Genauigkeit von \({\text{clip}}_{i}\) und \(\mathbf {I}\) ist die Indikatorfunktion. Im Fall einer optimalen Konfidenzbewertung gilt \(\mathrm{conf}\left({\text{clip}}_{i}\right)=\mathrm{acc}\left({\text {clip}}_{i}\right)\). Wenn wir \(\mathrm{conf}\left({{\text{cli}}{\text{p}}}_{i}\right)\) mit \(\mathrm{acc}\left({ \text{clip}}_{i}\right)\) anhand unserer Testdaten können wir feststellen, wie gut die Konfidenzbewertung voraussichtlich funktionieren wird, wenn die Ground-Truth-Genauigkeit \(\mathrm{acc}\left({ \text{clip}}_{i}\right)\), ist unbekannt. In Methoden: Berechnung des Konfidenzwerts diskutieren wir unseren Ansatz zum Erhalten von \({\widehat{p}}_{j}\). Danach ist es trivial, Clip-weise Konfidenzwerte zu finden.

Hier untersuchen wir zunächst, wie der rahmenweise Konfidenzwert \({\widehat{p}}_{j}\) berechnet wird. Dazu betrachten wir die Klassifikatorstruktur (Abb. S4) genauer. Insbesondere konzentrieren wir uns auf die letzten drei Schichten: die vollständig verbundene Schicht, die Softmax-Schicht und die Klassifizierungsschicht. Um eine Klassifizierung für einen bestimmten Frame zu generieren, übernimmt die Softmax-Schicht einen Logits-Vektor von der vollständig verbundenen Schicht. Dieser Logits-Vektor stellt die rohen (nicht normalisierten) Vorhersagen des Modells dar. Die Softmax-Schicht normalisiert diese Vorhersagen dann in einen Satz von Wahrscheinlichkeiten, wobei jede Wahrscheinlichkeit proportional zur Exponentialfunktion der Eingabe ist. Das heißt, bei gegebenen \(K\)-Klassen wird der \(K\)-dimensionale Vektor aus der vollständig verbundenen Schicht auf einen Satz von Wahrscheinlichkeiten normiert, der die Wahrscheinlichkeit jeder Klasse darstellt. Die Klasse mit der höchsten Wahrscheinlichkeit wird dann als vorhergesagte Bezeichnung des Netzwerks (z. B. „essen“ oder „laufen“) für diesen Frame zurückgegeben. Wir können diese Wahrscheinlichkeit dann als einen aus der Softmax-Funktion56 abgeleiteten Konfidenzwert interpretieren. Wenn wir den Logits-Vektor \({{\varvec{z}}}_{j}\) formal die Ausgabe der vollständig verbundenen Schicht darstellen lassen, die dem Rahmen \(j\) entspricht, ist die Softmax-geschätzte Wahrscheinlichkeit, dass das vorhergesagt wird Die Beschriftung des Rahmens \(j\) ist korrekt und lautet \({\widehat{p}}_{j}^{\mathrm{SM}}=\underset{k}{\mathrm{max}}{\sigma \left ({{\varvec{z}}}_{j}\right)}^{(k)}\), wobei \(\sigma \) die Softmax-Funktion ist. Wir bezeichnen diesen Konfidenzwert als „maximalen Softmax-Wert“, da er aus der maximalen Softmax-Wahrscheinlichkeit abgeleitet wird.

Eine der Herausforderungen bei der Verwendung der maximalen Softmax-Wahrscheinlichkeit als Konfidenzwert besteht jedoch darin, dass sie häufig schlecht skaliert ist. Im Idealfall würde die geschätzte Genauigkeit einer Vorhersage nahezu mit der tatsächlich erwarteten Genauigkeit übereinstimmen, in der Praxis neigt die Softmax-Funktion jedoch dazu, „überzusicher“ zu sein56. Das heißt, \({\widehat{p}}_{j}^{\mathrm{SM}}\) ist tendenziell größer als \({\mathbb{P}}({\widehat{y}}_{ j}={y}_{j})\). Um einen besser kalibrierten Konfidenzwert zu generieren (d. h. einen, bei dem \({\widehat{p}}_{j}\) näher an \({\mathbb{P}}({\widehat{y}} liegt _{j}={y}_{j})\), verwenden wir einen Ansatz namens Temperaturskalierung. Die Temperaturskalierung verwendet einen erlernten Parameter \(T\) (wobei \(T>1\) ein verringertes Vertrauen anzeigt und \( T<1\) erhöhte Konfidenz), um Klassenwahrscheinlichkeiten neu zu skalieren, sodass der Konfidenzwert besser der wahren Genauigkeit einer Vorhersage entspricht57. Wir definieren die auf Temperaturskalierung basierende Konfidenz für Frame \(j\) als \({\widehat{p }}_{j}^{\mathrm{TS}}=\underset{k}{\mathrm{max}}{\sigma ({{\varvec{z}}}_{j}/T)}^{ (k)}\), wobei \(T\) ausgewählt wird, um die negative logarithmische Wahrscheinlichkeit im Validierungssatz zu minimieren. Nachdem wir nun den Prozess zum Generieren eines Frame-weisen Konfidenzwerts etabliert haben, können wir das Clip-weise Konfidenzergebnis generieren Punktzahl, die in der konfidenzbasierten Überprüfung verwendet wird. Wie zuvor beschrieben ist dies für \({\text{clip}}_{i}\) einfach \(\mathrm{conf}\left({\text{clip} }_{i}\right)=\frac{1}{\left|{\text{clip}}_{i}\right|}\sum_{j\in {\text{clip}}_{i} }{\widehat{p}}_{j}\), wobei \({\widehat{p}}_{j}\) entweder über die Softmax-Funktion (\({\widehat{p}}_{ j}={\widehat{p}}_{j}^{\mathrm{SM}}\)) oder Temperaturskalierung (\({\widehat{p}}_{j}={\widehat{p}} _{j}^{\mathrm{TS}}\)).

Nachdem wir nun einen Konfidenzwert für einen bestimmten Clip generiert haben, verwenden wir ihn auf zwei Arten. Denken Sie zunächst daran, dass einer der Zwecke der konfidenzbasierten Überprüfung darin besteht, die Genauigkeit der unbeschrifteten Daten \({\mathcal{D}}^{\mathrm{unlabeled}}\) abzuschätzen. Wenn ein Benutzer beispielsweise entscheidet, dass eine Genauigkeit von 80 Prozent für seine bestimmte Verhaltensanalyseanwendung akzeptabel ist (d. h. \(\mathrm{acc}({\mathcal{D}}^{\mathrm{unlabeled}})\ ge 0,8\)), dann bei einem akzeptablen zuverlässigen Konfidenzwert unbeschriftete Daten, für die \(\mathrm{conf}\left({\mathcal{D}}^{\mathrm{unlabeled}}\right)\ge 0,8\ ) würde für den Export und die Verwendung in der jeweiligen Analyse ohne manuelle Überprüfung ausreichen. Bevor wir eine Schätzung für \(\mathrm{conf}\left({\mathcal{D}}^{\mathrm{unlabeled}}\right)\ erhalten, berücksichtigen wir zunächst, dass die wahre (unbekannte) Genauigkeit der Anmerkungen in \({\mathcal{D}}^{\mathrm{unlabeled}}\) ist die gewichtete Summe der Genauigkeiten der Clips in \({\mathcal{D}}^{\mathrm{unlabeled}}\), wobei die Gewichtung durch die Anzahl der Bilder in jedem Clip bestimmt wird. Formal können wir die Genauigkeit von \({\mathcal{D}}^{\mathrm{unlabeled}}\) wie folgt ausdrücken:

wobei \(\frac{\left|{\text{clip}}_{i}\right|}{\sum_{j\in {\mathcal{D}}^{\mathrm{unlabeled}}}\left| {\mathrm{clip}}_{j}\right|}\) gewichtet die Genauigkeit von \(\mathrm{acc}\left({\text{clip}}_{i}\right)\) mit der Zahl der Frames in \({\text{clip}}_{i}\) (dh \(\left|{\text{clip}}_{i}\right|\)) relativ zur Gesamtzahl der Clips (dh \(\sum_{j\in {\mathcal{D}}^{\mathrm{unlabeled}}}\left|{\mathrm{clip}}_{j}\right|\)). Anschließend schätzen wir die Genauigkeit der unbeschrifteten Daten ab, indem wir das bekannte \(\mathrm{conf}({\text{clip}}_{i})\) durch das unbekannte \(\mathrm{acc}({\text{ Clip}}_{i})\):

Auf diese Weise stellt \(\mathrm{conf}\left({\mathcal{D}}^{\mathrm{unlabeled}}\right)\) die ungefähre Genauigkeit des Klassifikators für unbeschriftete Daten dar. Wenn der Konfidenzwert gut funktioniert, dann wird \(\mathrm{conf}\left({\mathcal{D}}^{\mathrm{unlabeled}}\right)\) genau mit \(\mathrm{acc}\left) übereinstimmen ({\mathcal{D}}^{\mathrm{unlabeled}}\right)\).

Als nächstes betrachten wir die konfidenzbasierte Überprüfung. In dieser Komponente des Workflows kann der Benutzer vom Klassifikator automatisch generierte Beschriftungen für \({\mathcal{D}}^{\mathrm{unlabeled}}\) überprüfen und korrigieren. Ein naiver Ansatz wäre, alle in \({\mathcal{D}}^{\mathrm{unlabeled}}\) enthaltenen Videoclips zu überprüfen. Dies würde zwar tatsächlich sicherstellen, dass alle vom Klassifikator erzeugten Beschriftungen korrekt sind, kann sich jedoch als recht zeitaufwändig erweisen, wenn \({\mathcal{D}}^{\mathrm{unlabeled}}\) groß ist. Stattdessen nutzen wir Konfidenzwerte, um es Benutzern zu ermöglichen, nur die Teilmenge der Clips mit relativ niedrigen Konfidenzwerten (d. h. relativ geringer vorhergesagter Genauigkeit) zu kommentieren, für die die Überprüfung am produktivsten ist, während wir diejenigen mit relativ hohen Konfidenzwerten weglassen.

Wenn ein Benutzer nur einen Teil der Clips überprüft, sollte es der Teil mit der geringsten Genauigkeit sein, für den die Korrektur am wichtigsten ist. Um dies formal auszudrücken, betrachten wir eine geordnete Folge der \(n\) Clips in \({\mathcal{D}}^{\mathrm{unlabeled}}\), \(({\mathrm{clip}}_{ 1}, {\mathrm{clip}}_{2}, \dots , {\mathrm{clip}}_{n})\), sortiert in aufsteigender Reihenfolge nach Genauigkeit (d. h. \(\mathrm{acc}\ left({\mathrm{clip}}_{i}\right)\le \mathrm{acc}\left({\mathrm{clip}}_{j}\right)\), für \(i

Um die Beziehung zwischen Konfidenzwerten und Genauigkeit zu untersuchen, betrachten wir zunächst die Beziehung zwischen der prognostizierten Genauigkeit einzelner Clips (abgeleitet aus Konfidenzkernen) und der tatsächlichen Genauigkeit. Der Vorhersagefehler (PE) für einen bestimmten Clip ist definiert als die vorzeichenbehaftete Differenz zwischen seiner vorhergesagten Genauigkeit und seiner tatsächlichen Genauigkeit. Für \({\mathrm{clip}}_{i}\) ist der PE dann \(\mathrm{PE}({\mathrm{clip}}_{i})=\mathrm{conf}\left( {\mathrm{clip}}_{i}\right)-\mathrm{acc}({\mathrm{clip}}_{i})\). Positive Werte deuten auf eine zu hohe Selbstsicherheit hin, negative Werte auf eine zu geringe Selbstsicherheit. Der absolute Fehler (AE) ist die Größe des Vorhersagefehlers und ist definiert als \(\mathrm{AE}\left({\mathrm{clip}}_{i}\right)=\left|\mathrm{PE} ({\mathrm{clip}}_{i})\right|\). Der AE ist immer positiv, wobei ein höherer \(\mathrm{AE}\left({\mathrm{clip}}_{i}\right)\) eine größere absolute Abweichung zwischen \(\mathrm{conf}\left) anzeigt ({\mathrm{clip}}_{i}\right)\) und \(\mathrm{acc}({\mathrm{clip}}_{i})\).

Während PE und AE für einen einzelnen Clip definiert sind, berücksichtigen wir auch den mittleren absoluten Fehler und den mittleren Vorhersagefehler über alle Clips in \({\mathcal{D}}^{\mathrm{unlabeled}}\). Hier sei \({\mathrm{clip}}_{1}, {\mathrm{clip}}_{2},\dots ,{\mathrm{clip}}_{n}\) eine Menge von \(n\) Clips. Der mittlere absolute Fehler (MAE) ist definiert als \(\mathrm{MAE}=\frac{1}{n}\sum_{i=1}^{n}\mathrm{AE}({\mathrm{clip}} _{ich})\). MAE drückt die durchschnittliche Größe der Differenz zwischen der vorhergesagten Genauigkeit und der tatsächlichen Genauigkeit für einen zufällig ausgewählten Clip im Satz aus. Wenn also beispielsweise \(\mathrm{MAE}=0,1\) gilt, weicht der Konfidenzwert eines zufällig ausgewählten Clips erwartungsgemäß um etwa 10 Prozent von seinem Genauigkeitswert ab. Die mittlere vorzeichenbehaftete Differenz (MSD) ist unterdessen definiert als \(\mathrm{MSD}=\frac{1}{n}\sum_{i=1}^{n}\mathrm{PE}({\mathrm{ Clip}}_{i})\). MSD drückt die vorzeichenbehaftete Differenz zwischen der erwarteten Gesamtgenauigkeit aller Clips und der tatsächlichen Gesamtgenauigkeit aus. Ist also beispielsweise \(\mathrm{MSD}=-0,05\), dann ist die geschätzte Gesamtgenauigkeit der Anmerkungen für die Menge \({\mathrm{clip}}_{1}, {\mathrm{clip}} _{2},\dots ,{\mathrm{clip}}_{n}\) ist fünf Prozent niedriger als die wahre Genauigkeit.

Um eine Metrik für die Leistung der konfidenzbasierten Überprüfung zu entwickeln, betrachten wir zunächst einen Fall, in dem ein Benutzer vorhergesagte Beschriftungen für (n) Clips generiert hat, die nicht manuell beschriftet wurden, und (k) davon auswählt zu überprüfen, wobei \(k\le n\). Die verbleibenden \(nk\)-Clips werden nicht überprüft und mit nicht überarbeiteten, vom Klassifikator generierten Beschriftungen exportiert. Anschließend überprüft der Benutzer für jeden der \(k\) Clips den Clip und korrigiert alle falschen, vom Klassifikator generierten Beschriftungen. In dieser Formation beträgt nach der Überprüfung eines bestimmten Clips die Genauigkeit dieses Clips (definiert als Übereinstimmung zwischen den Beschriftungen eines Clips und den durch manuelle Anmerkung erzeugten Beschriftungen) \(1\), da alle vom Klassifikator erzeugten falschen Beschriftungen korrigiert worden wären.

Als nächstes gehen wir davon aus, dass wir eine Folge von \(n\) Clips erhalten haben, \(\mathcal{D}={(\mathrm{clip}}_{1}, {\mathrm{clip}}_{ 2}, \dots , {\mathrm{clip}}_{n})\), aus dem wir die ersten \(k\) Clips in der Sequenz zur Überprüfung auswählen. Wenn wir \({\mathrm{clip}}_{i}^{\mathrm{unrev}}\) als Clip \(i\) vor der Überprüfung bezeichnen und \({\mathrm{clip}}_{ i}^{\mathrm{rev}}\) als Clip \(i\) nach der Überprüfung, dann können wir die Reihenfolge der ersten \(k\) Clips nach der Überprüfung als \({\mathcal{ D}}_{k}^{\mathrm{rev}}=({\mathrm{clip}}_{1}^{\mathrm{rev}}, {\mathrm{clip}}_{2}^{ \mathrm{rev}}, \dots , {\mathrm{clip}}_{k}^{\mathrm{rev}})\). Wir drücken dann die verbleibenden \(nk\) Clips als die Sequenz \({\mathcal{D}}_{k}^{\mathrm{unrev}}=({\mathrm{clip}}_{k+1} aus. ^{\mathrm{unrev}}, {\mathrm{clip}}_{k+2}^{\mathrm{unrev}}, \dots , {\mathrm{clip}}_{n}^{\mathrm{ unrev}})\). Wir gehen dann davon aus, dass die Gesamtgenauigkeit der Clipsequenz, \(\mathrm{acc}(\mathcal{D})\), einfach der gewichtete Durchschnitt der Genauigkeit der überprüften Videos ist, \({\mathcal{D} }_{k}^{\mathrm{rev}}\) und die nicht überprüften, \({\mathcal{D}}_{k}^{\mathrm{unrev}}\), wobei das Gewicht a ist Funktion der Anzahl der Bilder in jedem Clip. Formal,

Dabei ist \(\left|\mathcal{D}\right|\) die Gesamtzahl der Videobilder in den Clips im Satz \(\mathcal{D}\) (d. h. \(\left|\mathcal{D} \right|={\sum }_{i\in \mathcal{D}}\left|{\mathrm{clip}}_{i}\right|\)). Wir gehen dann davon aus, dass nach der Überprüfung und Korrektur der ersten \(k\) Clips die Genauigkeit jedes überprüften Clips nun \(1\) beträgt. Das heißt, \(\mathrm{acc}\left({\mathrm{clip}}_{i}^{\mathrm{rev}}\right)=1\) für alle \({\mathrm{clip}} _{i}^{\mathrm{rev}}\in {\mathcal{D}}_{k}^{\mathrm{rev}}\). Daher beträgt die Gesamtgenauigkeit der Sequenz \(\mathcal{D}\) nach Durchsicht der ersten \(k\) Clips

Diese Methode zur Berechnung der Genauigkeit des Datensatzes \(\mathcal{D}\) nach der Überprüfung der ersten \(k\) Clips ist nützlich für die Analyse der Leistung der konfidenzbasierten Überprüfung. Um zu verstehen, warum, betrachten wir zunächst die untere Schranke von \(\mathrm{acc}\left({\mathcal{D}}_{k}\right)\). Im schlimmsten Fall liefert unser Konfidenzwert keine Informationen über die relative Genauigkeit der Clips in \(\mathcal{D}\). Ohne eine Beziehung zwischen \(\mathrm{acc}\left({\mathrm{clip}}_{i}\right)\) und \(\mathrm{conf}\left({\mathrm{clip}}_{ i}\right)\) ist die Sortierung basierend auf dem Konfidenzwert praktisch dasselbe wie die zufällige Auswahl von Clips. Auf diese Weise können wir die Genauigkeit nach der Kennzeichnung der ersten \(k\) Clips über den Konfidenzwert mit der Genauigkeit vergleichen, die man erhalten hätte, wenn die ersten \(\mathrm{k}\) Clips überprüft worden wären. Wir bezeichnen diese Verbesserung der Genauigkeit mithilfe der Konfidenzmetrik \(\mathrm{conf}\) als „Verbesserung gegenüber Zufall“ und formalisieren sie als \({\mathrm{IOR}}_{k}^{\mathrm{conf}} =\mathrm{acc}\left({\mathcal{D}}_{k}^{\mathrm{conf}}\right)-\mathrm{acc}\left({\mathcal{D}}_{k }^{\mathrm{rand}}\right)\), wobei \({\mathcal{D}}_{k}^{\mathrm{conf}}\) und \({\mathcal{D}}_ {k}^{\mathrm{rand}}\) bezeichnen den Datensatz \(\mathcal{D}\), sortiert nach Konfidenzwert bzw. zufällig.

Als nächstes legen wir eine Obergrenze für \({\mathrm{IOR}}_{k}\) fest, indem wir die maximale Genauigkeit berücksichtigen, die \(\mathcal{D}\) nach Überprüfung von \(k\) Clips haben könnte. Im besten Fall wären die ersten \(k\) überprüften Clips die \(k\) Clips mit der niedrigsten Genauigkeit. Da wir hier eine Auswertung auf \({\mathcal{D}}^{\mathrm{test}}\ durchführen, bei der die Genauigkeit bekannt ist, können wir dies berechnen. Wenn wir \({\mathcal{D}}^{\mathrm{acc}}\) die Reihenfolge der Clips bezeichnen, die in aufsteigender Reihenfolge nach ihrer wahren Genauigkeit sortiert sind, dann ist die maximale Genauigkeit von \(\mathcal{D}\) nach Durchsicht von \(k\) Clips ist \(\mathrm{acc}\left({\mathcal{D}}_{k}^{\mathrm{acc}}\right)\). Dann berechnen wir, ähnlich wie bei der obigen Analyse, die Verbesserung der optimalen Überprüfung (d. h. einer Überprüfung basierend auf wahrer Genauigkeit) gegenüber einer zufälligen Überprüfung als \({\mathrm{IOR}}_{k}^{\mathrm{opt}}= \mathrm{acc}\left({\mathcal{D}}_{k}^{\mathrm{acc}}\right)-\mathrm{acc}\left({\mathcal{D}}_{k} ^{\mathrm{rand}}\right).\) Semantisch drückt \({\mathrm{IOR}}_{k}^{\mathrm{opt}}\) aus, um wie viel höher die Genauigkeit des Testsatzes ist nach der Durchsicht von \(k\) Clips in der optimalen Reihenfolge, als wenn die Clips nach dem Zufallsprinzip überprüft worden wären.

Anschließend können wir eine Reihe globaler Maße für die konfidenzbasierte Überprüfung ableiten. Während \({\mathrm{IOR}}_{k}\) für eine einzelne Anzahl überprüfter Clips, \(k\), definiert ist, versuchen wir, ein Maß zu generieren, das \({\mathrm{IOR}}_ {k}\) über einen Bereich von \(k\)-Werten. Dazu berechnen wir die durchschnittliche Verbesserung gegenüber dem Zufall über die Anzahl der überprüften Clips, von \(0\) bis zur Gesamtzahl \(n\), wie folgt:

\({\overline{\mathrm{IOR}} }_{n}^{\mathrm{Methode}}\) drückt die mittlere Verbesserung gegenüber dem Zufall der Methode \(\mathrm{Methode}\) über \(n\) aus. Clips. Nach der Berechnung von \({\overline{\mathrm{IOR}} }_{n}^{\mathrm{conf}}\) und \({\overline{\mathrm{IOR}} }_{n}^{\ mathrm{opt}}\) (d. h. \({\overline{IOR} }_{n}\) für konfidenzbasierte und optimale Sortierung) können wir ein endgültiges Maß für die Überprüfungseffizienz generieren, indem wir die durchschnittliche Verbesserung von ausdrücken Konfidenzwert \(\mathrm{conf}\) gegenüber Zufall im Verhältnis zur maximal möglichen Verbesserung gegenüber Zufall (optimale Überprüfung):

Diese Metrik drückt aus, wie nah die Überprüfung mit der Metrik \(\mathrm{conf}\) am Optimum liegt. Wenn die Sortierreihenfolge basierend auf \(\mathrm{conf}\) genau mit der Sortierung nach Genauigkeit übereinstimmt, \({\mathrm{review}\_\mathrm{efficiency}}_{n}^{\mathrm{conf}} =1\). Wenn die Sortierreihenfolge nicht besser als zufällig ist, ist \({\mathrm{review}\_\mathrm{efficiency}}_{n}^{\mathrm{conf}}=0\).

Wir implementieren die Toolbox in MATLAB Version 2020b. Die GUI für Annotation und konfidenzbasierte Überprüfung ist als MATLAB-Anwendung in der Toolbox enthalten. Die Figuren werden mit Prism9 und OmniGraffle erstellt. Die gesamte Toolbox wird zusammen mit Beispielskripten, Dokumentation und zusätzlichen Implementierungsdetails über ein öffentliches GitHub-Repository unter https://github.com/carlwharris/DeepAction gehostet. Wir stellen die für den Home-Cage-Datensatz generierten Zwischendaten (z. B. räumliche und zeitliche Rahmen und Features, Anmerkungen usw.) als Beispielprojekt bereit, das im GitHub-Repository verlinkt ist. Daten, die zur Generierung von Ergebnissen für das CRIM13-Projekt erstellt wurden, sind auf Anfrage erhältlich, werden jedoch aufgrund der großen Dateigrößen nicht als Beispielprojekt bereitgestellt. Vollständige Daten (d. h. Ergebnisse für jede Testaufteilung in beiden Projekten), die zur Replikation der Ergebnisse erforderlich sind, sind auf Anfrage ebenfalls verfügbar. Die Daten für den explorativen Datensatz sind urheberrechtlich geschützt.

Für dieses Papier stehen ergänzende Informationen zur Verfügung. Korrespondenz und Materialanfragen sind an den entsprechenden Autor zu richten.

Crabbe, JC, Wahlsten, D. & Dudek, BC Genetik des Mausverhaltens: Wechselwirkungen mit der Laborumgebung. Science 284, 1670–1672 (1999).

Artikel ADS CAS PubMed Google Scholar

Wahlsten, D. et al. Unterschiedliche Daten aus verschiedenen Labors: Lehren aus Studien zur Gen-Umwelt-Interaktion. J. Neurobiol. 54, 283–311 (2003).

Artikel PubMed Google Scholar

Würbel, H. Verhaltensphänotypisierung verbessert – über (Umwelt-)Standardisierung hinaus. Gene Gehirnverhalten. 1, 3–8 (2002).

Artikel PubMed Google Scholar

van Dam, EA et al. Ein automatisiertes System zur Erkennung verschiedener spezifischer Verhaltensweisen von Ratten. J. Neurosci. Methoden 218, 214–224 (2013).

Artikel PubMed Google Scholar

Drai, D., Kafkafi, N., Benjamini, Y., Elmer, G. & Golani, I. Ratten und Mäuse teilen gemeinsame ethologisch relevante Parameter des Erkundungsverhaltens. Verhalten. Gehirnres. 125, 133–140 (2001).

Artikel CAS PubMed Google Scholar

Burgos-Artizzu, XP, Dollár, P., Lin, D., Anderson, DJ & Perona, P. Im Jahr 2012 IEEE-Konferenz über Computer Vision und Mustererkennung. 1322–1329 (IEEE).

Jhuang, H. et al. Automatisierte Verhaltensphänotypisierung von Mäusen im Heimkäfig. Nat. Komm. 1, 1–10 (2010).

Artikel ADS Google Scholar

Kabra, M., Robie, AA, Rivera-Alba, M., Branson, S. & Branson, K. JAABA: Interaktives maschinelles Lernen zur automatischen Annotation von Tierverhalten. Nat. Methoden 10, 64–67 (2013).

Artikel CAS PubMed Google Scholar

Lorbach, M., Poppe, R., Dam, EAV, Noldus, LP & Veltkamp, ​​RC in der International Conference on Image Analysis and Processing. 565–574 (Springer).

Lorbach, M. et al. Lernen, das soziale Verhalten von Ratten zu erkennen: Neuartiger Datensatz und datensatzübergreifende Anwendung. J. Neurosci. Methoden 300, 166–172 (2018).

Artikel PubMed Google Scholar

Bohnslav, JP et al. DeepEthogram, eine Pipeline für maschinelles Lernen zur überwachten Verhaltensklassifizierung anhand von Rohpixeln. Elife 10, e63377 (2021).

Artikel CAS PubMed PubMed Central Google Scholar

Zhu, Y., Lan, Z., Newsam, S. & Hauptmann, A. auf einer asiatischen Konferenz über Computer Vision. 363–378 (Springer).

Piergiovanni, A. & Ryoo, M. in der Internationalen Konferenz über maschinelles Lernen. 5152–5161 (PMLR).

Feichtenhofer, C., Pinz, A. & Zisserman, A. in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 1933–1941.

Ma, C.-Y., Chen, M.-H., Kira, Z. & AlRegib, G. TS-LSTM und temporal-inception: Nutzung der spatiotemporalen Dynamik zur Aktivitätserkennung. Signalprozess. Bildkommun. 71, 76–87 (2019).

Artikel Google Scholar

Wang, L. et al. Temporale Segmentnetzwerke: Auf dem Weg zu bewährten Praktiken für die Erkennung tiefgreifender Aktionen. in der Europäischen Konferenz über Computer Vision. 20–36 (Springer).

Kramida, G. et al. in Proc. Vis. Beobachten. Anal. Verhalten von Wirbeltieren. Werkstatt (VAIB). 1–3.

Simonyan, K. & Zisserman, A. Zwei-Stream-Faltungsnetzwerke zur Aktionserkennung in Videos. Adv. Neuronale Inf. Verfahren. Syst. 27 (2014).

Zach, C., Pock, T. & Bischof, H. im Symposium zur gemeinsamen Mustererkennung. 214–223 (Springer).

Eroglu, Y., Yildirim, K., Çinar, A. & Yildirim, M. Diagnose und Einstufung des vesikoureteralen Refluxes auf Miktions-Zystourethrographie-Bildern bei Kindern unter Verwendung eines tiefen Hybridmodells. Berechnen. Methodenprogramme Biomed. 210, 106369 (2021).

Artikel PubMed Google Scholar

Moreno-Torres, JG, Raeder, T., Alaiz-Rodríguez, R., Chawla, NV & Herrera, F. Eine einheitliche Sicht auf die Datensatzverschiebung in der Klassifizierung. Mustererkennung. 45, 521–530 (2012).

Artikel ADS Google Scholar

Quinonero-Candela, J., Sugiyama, M., Schwaighofer, A. & Lawrence, ND Datensatzverschiebung beim maschinellen Lernen. (Mit Press, 2008).

Le, VA & Murari, K. Rekurrentes 3D-Faltungsnetzwerk zur Verhaltenserkennung von Nagetieren. In ICASSP 2019–2019 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), 1174–1178 (2019).

Jiang, Z. et al. Kontextbewusste Mausverhaltenserkennung mithilfe versteckter Markov-Modelle. IEEE Trans. Bildprozess. 28, 1133–1148 (2018).

Artikel ADS MathSciNet PubMed Google Scholar

Eyjolfsdottir, E. et al. Erlernen des sozialen Verhaltens von Tieren anhand von Flugbahnmerkmalen. Veranstaltet von der School of Informatics der University of Edinburgh (Schottland). https://homepages.inf.ed.ac.uk/rbf/VAIB12PAPERS/eyjolfsdottir.pdf (2012).

Zhang, S. et al. Aktionserkennung basierend auf einer übervollständigen Analyse unabhängiger Komponenten. Inf. Wissenschaft. 281, 635–647 (2014).

Artikel Google Scholar

Meng, Q., Zhu, H., Zhang, W., Piao, X. & Zhang, A. Aktionserkennung mithilfe von Form- und Bewegungsmodalitäten. ACM Trans. Multimed. Berechnen. Komm. Appl. (TOMM) 16, 1–16 (2020).

Artikel Google Scholar

Chen, W. Verständnis des menschlichen und tierischen Verhaltens. Abschlussarbeiten, Dissertationen und Problemberichte, West Virginia University (2014). https://doi.org/10.33915/etd.192

Farnebäck, G. auf der skandinavischen Konferenz zur Bildanalyse. 363–370 (Springer).

Gianluigi, C. & Raimondo, S. Ein innovativer Algorithmus zur Schlüsselbildextraktion bei der Videozusammenfassung. J. Echtzeit-Bildverarbeitung. 1, 69–88 (2006).

Artikel Google Scholar

Wu, J., Zhong, S.-H., Jiang, J. & Yang, Y. Eine neuartige Clustering-Methode zur statischen Videozusammenfassung. Multimed. Werkzeuge Appl. 76, 9625–9641 (2017).

Artikel Google Scholar

Batty, E. et al. BehaveNet: Nichtlineare Einbettung und bayesianische neuronale Dekodierung von Verhaltensvideos. Adv. Neuronale Inf. Verfahren. Syst. (2019).

Papernot, N. & McDaniel, P. Deep k-Nearest Neighbors: Auf dem Weg zu sicherem, interpretierbarem und robustem Deep Learning. arXiv-Vorabdruck arXiv:1803.04765 (2018).

Gal, Y. & Ghahramani, Z. auf internationaler Konferenz zum Thema maschinelles Lernen. 1050–1059 (PMLR).

Cryan, JF & Holmes, A. Der Aufstieg der Maus: Fortschritte bei der Modellierung menschlicher Depressionen und Angstzustände. Nat. Rev. Drug Discov. 4, 775–790 (2005).

Artikel CAS PubMed Google Scholar

Dollár, P. (Software-Referenz): „Piotr's Computer Vision Matlab Toolbox (PMT)“ von Piotr Dollar im Jahr 2016. Verfügbar unter: https://github.com/pdollar/toolbox (2014).

Pérez-González, A., Jaramillo-Duque, Á. & Cano-Quintero, JB Automatische Grenzextraktion für Photovoltaikanlagen mithilfe des Deep-Learning-U-Net-Modells. Appl. Wissenschaft. 11, 6524 (2021).

Artikel Google Scholar

Cun, S. Dualer optischer TVL1-Fluss. (Software-Referenz): „Dual TV-L1 Optical Flow“ von Xiaodong Cun im Jahr 2017. Verfügbar unter: https://github.com/vinthony/Dual_TVL1_Optical_Flow (2017).

Deng, J. et al. im Jahr 2009 IEEE-Konferenz über Computer Vision und Mustererkennung. 248–255 (IEEE).

Hussain, M., Bird, JJ & Faria, DR im britischen Workshop über Computational Intelligence. 191–202 (Springer).

Duda, RO, Hart, PE & Stork, DG Musterklassifizierung, 2. Auflage. New York, USA: John Wiley&Sons, 35 (2001).

Murphy, KP Maschinelles Lernen: eine probabilistische Perspektive. (MIT Press, 2012).

Le, Q., Karpenko, A., Ngiam, J. & Ng, A. ICA mit Rekonstruktionskosten für effizientes Lernen übervollständiger Merkmale. Adv. Neuronale Inf. Verfahren. Syst. (2011).

Nocedal, J. & Wright, SJ Numerische Optimierung (Springer, 1999).

Buchen Sie MATH Google Scholar

Merity, S., Keskar, NS & Socher, R. Regularisierung und Optimierung von LSTM-Sprachmodellen. arXiv-Vorabdruck arXiv:1708.02182 (2017).

Dwarampudi, M. & Reddy, N. Auswirkungen der Polsterung auf LSTMs und CNNs. arXiv-Vorabdruck arXiv:1903.07288 (2019).

Graves, A. in Supervised Sequence Labeling with Recurrent Neural Networks 5–13 (Springer, 2012).

Graves, A., Mohamed, A.-r. & Hinton, G. auf der internationalen IEEE-Konferenz 2013 zu Akustik, Sprache und Signalverarbeitung. 6645–6649 (IEEE).

Hochreiter, S. & Schmidhuber, J. Langes Kurzzeitgedächtnis. Neuronale Berechnung. 9, 1735–1780 (1997).

Artikel CAS PubMed Google Scholar

Ogawa, A. & Hori, T. Fehlererkennung und Genauigkeitsschätzung bei der automatischen Spracherkennung unter Verwendung tiefer bidirektionaler rekurrenter neuronaler Netze. Redekommun. 89, 70–83 (2017).

Artikel Google Scholar

Beaufays, F., Sak, H. & Senior, A. in Interspeech. 338–342.

Srivastava, N., Hinton, G., Krizhevsky, A., Sutskever, I. & Salakhutdinov, R. Dropout: eine einfache Möglichkeit, eine Überanpassung neuronaler Netze zu verhindern. J. Mach. Lernen. Res. 15, 1929–1958 (2014).

MathSciNet MATH Google Scholar

Bishop, CM & Nasrabadi, NM Pattern Recognition and Machine Learning Vol. 4 (Springer, 2006).

Google Scholar

Keskar, NS, Mudigere, D., Nocedal, J., Smelyanskiy, M. & Tang, PTP Über Großserientraining für Deep Learning: Generalisierungslücke und scharfe Minima. arXiv-Vorabdruck arXiv:1609.04836 (2016).

Yildirim, M. & Çinar, A. Ein neues Modell zur Klassifizierung menschlicher Bewegungen in Videos mithilfe von Faltungs-Neuronalen Netzen: MA-Net. Berechnen. Methoden Biomech. Biomed. Ing. Bildgebende Vis. 9, 651–659 (2021).

Artikel Google Scholar

Guo, C., Pleiss, G., Sun, Y. & Weinberger, KQ in der International Conference on Machine Learning. 1321–1330 (PMLR).

Kull, M. et al. Über die Temperaturskalierung hinaus: Erhalten gut kalibrierter Mehrklassenwahrscheinlichkeiten mit Dirichlet-Kalibrierung. Adv. Neuronale Inf. Verfahren. Syst. (2019).

Referenzen herunterladen

Unterstützt durch den National Science Foundation Award #1632738 (PUT), das Neukom Institute for Computational Science am Dartmouth College (Neukom Scholars Award an CH und Neukom Post-Doctoral Fellowship an KF) und den David C. Hodgson Endowment for Undergraduate Research Award (an CH). Alle in diesem Material geäußerten Meinungen, Erkenntnisse und Schlussfolgerungen oder Empfehlungen stammen von den Autoren und spiegeln nicht unbedingt die Ansichten der National Science Foundation wider.

Abteilung für Psychologie und Gehirnwissenschaften, Dartmouth College, Hanover, NH, 03755, USA

Carl Harris, Kelly R. Finn, Marie-Luise Kieseler, Marvin R. Maechler und Peter U. Tse

Neukom Institute, Dartmouth College, Hanover, NH, 03755, USA

Kelly R. Finn

Sie können diesen Autor auch in PubMed Google Scholar suchen

Sie können diesen Autor auch in PubMed Google Scholar suchen

Sie können diesen Autor auch in PubMed Google Scholar suchen

Sie können diesen Autor auch in PubMed Google Scholar suchen

Sie können diesen Autor auch in PubMed Google Scholar suchen

CH konzipierte das Projekt, entwickelte den Ansatz und die Software und analysierte die Ergebnisse mit Input von KFCH. Er verfasste das Manuskript mit Input von PT und KFMK, und MM beschaffte den explorativen Datensatz.

Korrespondenz mit Peter U. Tse.

Die Autoren geben an, dass keine Interessenkonflikte bestehen.

Springer Nature bleibt neutral hinsichtlich der Zuständigkeitsansprüche in veröffentlichten Karten und institutionellen Zugehörigkeiten.

Open Access Dieser Artikel ist unter einer Creative Commons Attribution 4.0 International License lizenziert, die die Nutzung, Weitergabe, Anpassung, Verbreitung und Reproduktion in jedem Medium oder Format erlaubt, sofern Sie den/die Originalautor(en) und die Quelle angemessen angeben. Geben Sie einen Link zur Creative Commons-Lizenz an und geben Sie an, ob Änderungen vorgenommen wurden. Die Bilder oder anderes Material Dritter in diesem Artikel sind in der Creative Commons-Lizenz des Artikels enthalten, sofern in der Quellenangabe für das Material nichts anderes angegeben ist. Wenn Material nicht in der Creative-Commons-Lizenz des Artikels enthalten ist und Ihre beabsichtigte Nutzung nicht gesetzlich zulässig ist oder über die zulässige Nutzung hinausgeht, müssen Sie die Genehmigung direkt vom Urheberrechtsinhaber einholen. Um eine Kopie dieser Lizenz anzuzeigen, besuchen Sie http://creativecommons.org/licenses/by/4.0/.

Nachdrucke und Genehmigungen

Harris, C., Finn, KR, Kieseler, ML. et al. DeepAction: eine MATLAB-Toolbox zur automatisierten Klassifizierung von Tierverhalten in Videos. Sci Rep 13, 2688 (2023). https://doi.org/10.1038/s41598-023-29574-0

Zitat herunterladen

Eingegangen: 03. August 2022

Angenommen: 07. Februar 2023

Veröffentlicht: 15. Februar 2023

DOI: https://doi.org/10.1038/s41598-023-29574-0

Jeder, mit dem Sie den folgenden Link teilen, kann diesen Inhalt lesen:

Leider ist für diesen Artikel derzeit kein Link zum Teilen verfügbar.

Bereitgestellt von der Content-Sharing-Initiative Springer Nature SharedIt

Durch das Absenden eines Kommentars erklären Sie sich damit einverstanden, unsere Nutzungsbedingungen und Community-Richtlinien einzuhalten. Wenn Sie etwas als missbräuchlich empfinden oder etwas nicht unseren Bedingungen oder Richtlinien entspricht, kennzeichnen Sie es bitte als unangemessen.