$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
Für diese Studie werden ausschließlich öffentlich zugängliche Datensätze (UCF-Crime13 und ShanghaiTech14) verwendet. Alle Videos stammen aus den offiziellen Veröffentlichungen der Datensätze, die personenbezogene Daten in dem Umfang anonymisieren, wie es von den Betreuern des Datensatzes bereitgestellt wird. Die Autoren führten keine zusätzliche Datenerhebung oder Interaktion mit Menschen durch. daher war keine neue IRB-Genehmigung erforderlich. Die Datennutzung richtet sich nach den Lizenzen und Nutzungsbedingungen der jeweiligen Datensätze.
Datenaufbereitung und Merkmalsextraktion
Vorbereitung der Datensätze: Die Datensätze UCF-Crime13 (1.610 Zug/290 Testvideos) und ShanghaiTech14 (238 Zug/199 Testvideos) wurden unter ihren Standardaufteilungen übernommen. Die Videos wurden mit FFmpeg vorverarbeitet, um die Reproduzierbarkeit zu gewährleisten, auf H.264 neu kodiert, auf 25 fps neu gesampelt und auf eine Auflösung von 256 x 256 mit dem folgenden Befehl verkleinert: ffmpeg -i v.mp4 -vf "fps=25,scale=256:256" -c:v libx264 -crf 23 -preset veryfast pre/.
Merkmalsextraktion: RGB-Merkmale wurden von einem I3D-Backbone15 extrahiert, der auf dem Kinetik-Datensatz16 vortrainiert war. Die Videos wurden in nicht überlappende 16-Frame-Clips aufgeteilt; Jeder Clip wurde mittig auf 224 x 224 Pixel zugeschnitten. Die vorletzten Ebenenaktivierungen wurden gemittelt gepoolt, um ein 1024-D-Feature pro Clip zu erhalten. In PyTorch entspricht dies dem Weiterleiten von Tensoren der Form [B, 3, T, H, W] durch den I3D-Backbone und dem Anwenden von adaptive_avg_pool3d gefolgt von der Abflachung. Die extrahierten Merkmale wurden in .npy-Dateien (eine pro Video) zusammen mit Clip-Zeitstempeln gespeichert, um eine exakte Reproduzierbarkeit zu gewährleisten (Seed = 123). Für jedes Video enthält features///
Modellarchitektur und Methodik
Grundlegende Detektion: Fusion des temporalen Kontexts
Bei einer gegebenen Videoclipsequenz, die durch eine Merkmalsmatrix Z
RTx1024 dargestellt wird, berechnete das TCF-Modul (Temporal Context Fusion) zunächst Abfrage-, Schlüssel- und Wertdarstellungen durch drei gelernte lineare Projektionen:
Q = ZWQ, K = ZWK, V = ZWV (1)
wobei WQ, WK, WV
RTx1024xd trainierbare Parameter sind (PyTorch: drei nn. Lineare (1024,d) Schichten). Die Intersegment-Affinität war S =
, es wurde ein Temporal Relationality Embedding (TRE) eingebaut, bei dem jedes Element als Rij = α exp (
) + β berechnet wurde. Die standortbezogene Affinität war
= S + R. Eine Global-Context-Map A = softmax(
) aggregiert V, um großflächige Features G = AV zu erhalten. Die lokalen Merkmale L wurden mit einer tiefenbezogenen 1-D-Faltung (nn. Conv1d) mit einer Korngröße von 3 über Z. Ein dynamisches Gatter g = σ(MLP ([G;L])) die beiden vermischt: U = g
G + (1 - g)
L . Schließlich wurden eine Schichtnormalisierung und eine lineare Restschicht angewendet, um Y zu erzeugen (Pytorch:LayerNorm+Linear+residual).
Grundlegende Detektion: kausaler zeitlicher Prädiktor
Der Ausgang Y wurde durch zwei kausale 1-D-Faltungen mit GELU und Dropout geleitet (Pytorch:padding='causal' oder masked conv), um Anomalielogits pro Clip zu erhalten. Die Anwendung der Sigmoidfunktion ergab Wahrscheinlichkeitswerte
[0,1]T.
Semantische Erweiterung: Promptes Lernen mit externem Wissen
Semantische Anker konstruieren: Für jede Anomalieklasse c wurden Kc-Konzepte von Wikidata11 abgefragt und jede Konzeptphrase wurde mit dem Text-Encoder12von BLIP zu ei
R768 kodiert. Der Klassenanker war der l2-normierte Mittelwert Dc = norm(
Σiei) . Um das Rauschen zu reduzieren, wurden Konzepte mit Kosinusähnlichkeit zum Klassennamen unter 0,2 gestrichen und der Top-M by TF-IDF-Score beibehalten.
Führen Sie eine kontextsensitive Trennung durch: Die Vordergrundgewichte αt = softmax(rst) wurden aus den Basisdetektorwerten st und die Hintergrundgewichte bt = softmax(r(1 - st)) berechnet. Die gewichteten Merkmale sind ffg = Σtαzt und fbg = Σtbzt .
Ausrichten visueller und semantischer Features
Definieren des Ausrichtungsziels: Während des Ausrichtungsschritts besteht das Ziel darin, den Abstand zwischen dem visuellen Vordergrund-Feature und dem entsprechenden semantischen Anker der anomalen Kategorie innerhalb des Merkmalsraums zu minimieren. Erstellen Sie eine Sammlung von semantischen Leitfäden
, die aus semantischen Leitfäden der Kategorie C (anomal) und einem standardmäßigen semantischen Leitfaden der Kategorie "Normal " bestehen. Bestimmen Sie die Wahrscheinlichkeit, P(Dk|v), dass ein visuelles Merkmal, v, dem k-ten semantischen Führer Dk entspricht. Berechnen Sie dies unter Verwendung der temperaturskalierten Kosinusähnlichkeit, gefolgt von einer Softmax-Normalisierung, wie in Gl. (2) gezeigt.
(2)
Die Kreuzentropie wurde minimiert, um positive Paare zusammenzuschieben und negative auseinander zu schieben, indem τ s alslernbarer Parameter gesetzt und auf 10 initialisiert wurde. Erreichen Sie die Ausrichtung, indem Sie die Wahrscheinlichkeit der Korrelation positiver Stichprobenpaare optimieren und gleichzeitig die Wahrscheinlichkeit der Korrelation negativer Stichprobenpaare verringern.
Vorlagenbasiertes Interpretierbarkeitsmodul
Basierend auf der PLE-erweiterten Merkmalsrepräsentation (Prompt Learning with External Knowledge) erzeugt ein linearer Klassifikator Logiten pro Klasse, die anschließend durch die Softmax-Funktion in Klassenwahrscheinlichkeiten normiert wurden. Der vorhergesagte Anomalietyp wurde als Kategorie mit der höchsten Wahrscheinlichkeit bestimmt. In der Zwischenzeit wurde aus dem Detektorausgang ein globaler Anomalie-Score berechnet. Um den Schweregrad zu bestimmen, wurde diese Bewertung mit drei vordefinierten Schwellenwerten verglichen, die durch die Rastersuche im Validierungssatz optimiert wurden.
Die Standardschwellenwerte wurden auf θhoch = 0,8, θmittel = 0,5 und θniedrig = 0,2 festgelegt. Insbesondere wenn die Punktzahl größer als θhoch war, wurde der Schweregrad als hoch gekennzeichnet. Wenn die Punktzahl zwischen θmittel und θhoch liegt, wurde sie als mittel gekennzeichnet. Wenn es zwischen θlow und θmedium lag, wurde es als niedrig gekennzeichnet; Andernfalls wurde es als keine markiert.
Während der Phase der Generierung von Erläuterungen wurde eine Vorlage, die dem vorhergesagten Typ entspricht, aus einer vordefinierten Vorlagenbibliothek, der Zusatzdatei 1, ausgewählt. Diese Bibliothek enthält mehrere Vorlagenvarianten, die von mehreren Annotatoren17 kreuzvalidiert wurden, um die Vielfalt des generierten Textes zu erhöhen. Wenn der vorhergesagte Typ in der Vorlagenbibliothek vorhanden ist, wurde eine entsprechende Vorlage nach dem Zufallsprinzip ausgewählt. Andernfalls wurde eine Standardvorlage für den Typ Unbekannt verwendet. Schließlich wurde ein strukturierter erklärender Text generiert, indem der vorhergesagte Typ, der globale Anomalie-Score, die Beschreibung des Schweregrads und die ausgewählte Vorlage integriert wurden. Das System gibt den vorhergesagten Anomalietyp, die globale Anomaliebewertung und den generierten erklärenden Text als endgültige Ausgabe zurück. Die Ergebnisse sind in Abbildung 2 dargestellt.
Alle Schwellenwertparameter wurden mit Hilfe der Rastersuche auf dem Validierungssatz optimiert, und die Qualität der generierten Erklärungen wurde sowohl durch menschliche Bewertung als auch durch automatisierte Metriken umfassend bewertet. Die Ergebnisse sind in Tabelle 1 dargestellt.
Modelltraining und -bewertung
Training: Das Modell wurde Ende-zu-Ende mit Adam trainiert (lr 1 x 10-4, Gewichtsabfall 5 x 10-4), Losgröße 128, 50 Epochen, Kosinusglühen für lr. Zufällige Startwerte wurden für Python/Numpy/Pytorch auf 123 gesetzt und torch.backends.cudnn.deterministic=True aktiviert. Die Checkpoints wurden alle 5 Epochen in checkpoints//epoch_XX.pt gespeichert, und das beste Modell wurde durch die Validierungs-AUC ausgewählt. Alle Experimente wurden auf einem System mit einer NVIDIA GeForce RTX 4060 Ti (16 GB) GPU unter Windows 11, mit Python 3.8.20, PyTorch 1.8.0 und CUDA 11.1 durchgeführt. Die ungefähre Trainingszeit pro Epoche betrug 30 s für den ShanghaiTech-Datensatz und 3,5 Minuten für den UCF-Crime-Datensatz.
Verlust: Das Gesamtziel ist L = LMIL+ λ • Lalign. Der Hyperparameter λ wurde über den Satz {0,01,0,1,0,5,1,5,10} im Validierungssatz gezogen, und der beste Wert wurde für die Testberichterstattung festgelegt. Siehe Abbildung 3 für die Top-K-MIL-Aggregation und Gl. (3-4) für Definitionen.
(3)
(4)
Bewertung: Die AUC auf Frame-Ebene wurde nach dem Standardprotokoll berechnet, das von früheren WS-VAD-Arbeitenverwendet wurde 2,5. Für die feinkörnige Typerkennung bei UCF-Crime wurden mAP bei IoU 0,1-0,5 und AVG mAP berichtet, wie in Tabelle 2 zusammengefasst; Die AUCs pro Klasse sind in Abbildung 4 und die Gesamtergebnisse in Tabelle 3 und Tabelle 4 dargestellt. Die Einbettung der Trennbarkeit und der Anomaliebewertungsdynamik ist in Abbildung 4, Abbildung 5 und Abbildung 6 zu finden.