Lo scopo di questo protocollo è quello di utilizzare reti neurali convoluzionali pre-costruite per automatizzare il monitoraggio del comportamento ed eseguire analisi dettagliate del comportamento. Il monitoraggio del comportamento può essere applicato a qualsiasi dato video o sequenze di immagini ed è generalizzabile per tenere traccia di qualsiasi oggetto definito dall’utente.
Comprendere il comportamento è il primo passo per comprendere veramente i meccanismi neurali nel cervello che lo guidano. I metodi di analisi comportamentale tradizionali spesso non catturano la ricchezza inerente al comportamento naturale. Qui, forniamo istruzioni dettagliate con le visualizzazioni della nostra metodologia recente, DeepBehavior. La casella degli strumenti DeepBehavior utilizza framework di deep learning compilati con reti neurali convoluzionali per elaborare e analizzare rapidamente video comportamentali. Questo protocollo illustra tre diversi framework per il rilevamento di un singolo oggetto, il rilevamento di più oggetti e il rilevamento della posa umana del giunto tridimensionale (3D). Questi framework restituiscono le coordinate cartesiane dell’oggetto di interesse per ogni fotogramma del video di comportamento. I dati raccolti dalla casella degli strumenti DeepBehavior contengono molti più dettagli rispetto ai metodi di analisi del comportamento tradizionali e forniscono informazioni dettagliate sulle dinamiche di comportamento. DeepBehavior quantifica le attività di comportamento in modo robusto, automatizzato e preciso. Dopo l’identificazione del comportamento, viene fornito codice di post-elaborazione per estrarre informazioni e visualizzazioni dai video comportamentali.
Un’analisi dettagliata del comportamento è fondamentale per comprendere le relazioni tra cervello e comportamento. Ci sono stati molti entusiasmanti progressi nelle metodologie per registrare e manipolare le popolazioni neuronali con alta risoluzione temporale, tuttavia, i metodi di analisi del comportamento non si sono sviluppati allo stesso ritmo e sono limitati a misurazioni indirette e un approccio riduzionista1. Recentemente, sono stati sviluppati metodi basati sul deep learning per eseguire l’analisi del comportamento automatizzato e dettagliato2,3,4,5. Questo protocollo fornisce una guida dettagliata all’implementazione per la casella degli strumenti DeepBehavior.This protocol provides a step-by-step implementation guide for the DeepBehavior toolbox.
I metodi di analisi comportamentale tradizionali spesso includono l’etichettatura manuale dei dati da parte di più valutatori, determinando la varianza nel modo in cui gli sperimentatori definiscono un comportamento6. L’etichettatura manuale dei dati richiede tempo e risorse che aumentano in modo sproporzionato rispetto alla quantità di dati raccolti. Inoltre, i dati etichettati manualmente riducono i risultati del comportamento in misurazioni categoriche che non catturano la ricchezza del comportamento e saranno più soggettive. Così, gli attuali metodi tradizionali possono essere limitati nell’acquisizione dei dettagli nei comportamenti naturali.
La casella degli strumenti DeepBehavior presenta una soluzione precisa, dettagliata, altamente temporale e automatizzata che utilizza il deep learning per l’analisi comportamentale. Il deep learning è diventato rapidamente accessibile a tutti con strumenti e pacchetti open source. Le reti neurali convoluzionali (CNN) si sono dimostrate altamente efficaci nei compiti di riconoscimento e monitoraggio degli oggetti7,8. Utilizzando CNC moderne e unità di elaborazione grafica ad alte prestazioni (GPU), grandi set di dati di immagini e video possono essere elaborati rapidamente con alta precisione7,9,10,11. In DeepBehavior, esistono tre diverse architetture di reti neurali convoluzionali, TensorBox, YOLOv3 e OpenPose2.
Il primo framework, Tensorbox, è un framework versatile che incorpora molte architetture CNN diverse per il rilevamento di oggetti12. TensorBox è più adatto per rilevare una sola classe di oggetti per ogni immagine. Gli output risultanti sono i rettangoli di selezione dell’oggetto di interesse (Figura 1) e le coordinate cartesiane del riquadro di delimitazione.
Il secondo framework CNN è YOLOv3, che sta per “You Only Look Once”13. YOLOv3 è vantaggioso quando sono presenti più oggetti di interesse che devono essere tracciati separatamente. L’output di questa rete include il riquadro di delimitazione con la classe di etichette dell’oggetto associata e le coordinate cartesiane del riquadro di delimitazione dell’oggetto nel fotogramma video (Figura 2).
I due quadri precedenti sono vantaggiosi per i dati comportamentali generalizzati raccolti da esperimenti di laboratorio standard in soggetti animali. L’ultimo framework CNN è OpenPose14,15,16 che viene utilizzato per la stima della posa articolare umana. OpenPose rileva i punti chiave del corpo umano, della mano, del viso e del piede sulle immagini. Gli output del framework sono etichettati immagini del soggetto umano, nonché le coordinate di tutti i 25 punti chiave nel corpo e 21 punti chiave di ogni mano (Figura 3).
Questa guida dettagliata per l’implementazione della nostra cassetta degli attrezzi DeepBehavior open source recentemente sviluppata utilizza reti neurali convoluzionali all’avanguardia per monitorare il comportamento animale (ad esempio il movimento di una zampa) o il comportamento umano (ad esempio, il raggiungimento di compiti). Tenendo traccia del comportamento, è possibile derivare una cinematica utile dal comportamento, ad esempio posizione, velocità e accelerazione. Il protocollo spiega l’installazione di ogni architettura CNN, dimostra come creare set di dati di formazione, come addestrare le reti, come elaborare nuovi video sulla rete addestrata, come estrarre i dati dalla rete sui nuovi video e come post-elaborare i dati di output per renderli utili per ulteriori analisi.
Qui, forniamo una guida passo-passo per l’implementazione di DeepBehavior, il nostro toolbox basato sul deep learning recentemente sviluppato per l’analisi dei dati di imaging del comportamento animale e umano2. Vengono fornite spiegazioni dettagliate per ogni passaggio per l’installazione dei framework per ogni architettura di rete e vengono forniti collegamenti per l’installazione dei requisiti open source per poter eseguire questi framework. Dimostriamo come installarli, come creare dati di tra…
The authors have nothing to disclose.
Ringraziamo ping e Peyman Golshani per aver fornito i dati grezzi per i test di interazione sociale a due topo utilizzati nel documento originale2. Questo studio è stato sostenuto da NIH NS109315 e NVIDIA GPU grants (AA).
CUDA v8.0.61 | NVIDIA | n/a | GPU Software |
MATLAB R2016b | Mathworks | n/a | Matlab |
Python 2.7 | Python | n/a | Python Version |
Quadro P6000 | NVIDIA | n/a | GPU Processor |
Ubuntu v16.04 | Ubuntu | n/a | Operating System |