Esercitazione su KDD 2016

CNTK: Toolkit di Open-Source Deep-Learning Microsoft

Esercitazione di KDD 2016 Hands-On di Frank Seide e Amit Agarwal, Microsoft

Diapositive usate nell'esercitazione

Nota: è necessario eseguire due download di grandi dimensioni, il file binario CNTK (~300 MB) e il set di dati CIFAR-10 (170 MB) e installare i file binari CNTK e tutte le dipendenze necessarie nel computer. Ti consigliamo di farlo in anticipo, ad esempio dalla tua camera hotel. Per istruzioni , vedere di seguito .

Eseguire il training di reti neurali come i gruppi di prodotti Microsoft! Questa esercitazione introduce il Microsoft Cognitive Toolkit toolkit di deep learning open source scalabile di Microsoft per Windows e Linux. CNTK è un potente toolkit di deep learning basato su calcolo basato su deep learning per il training e la valutazione di reti neurali profonde. I gruppi di prodotti Microsoft usano CNTK, ad esempio per creare i modelli di riconoscimento vocale Cortana e la classificazione Web.

Destinatari e aspettative di destinazione

Questa esercitazione è destinata ai professionisti di Deep Learning attuali o futuri che cercano uno strumento che è facile da usare ma efficiente e scalabile tra cluster GPU multi-machine per carichi di lavoro reali.

L'esercitazione presuppone la conoscenza di base dell'apprendimento approfondito. I partecipanti potranno comprendere i concetti di base e l'utilizzo di CNTK e praticare l'esecuzione di training di rete neurale con CNTK per il riconoscimento e l'elaborazione del testo. L'esercitazione sarà un punto di partenza per risolvere un'attività di deep learning reale con CNTK.

Prerequisiti, download e istruzioni di installazione

Per eseguire le sessioni di lab pratiche nell'esercitazione, è consigliabile un computer portatile o remoto con 64bit Windows 8.1+ o Linux e una GPU con supporto per CUDA (più veloce). Se il computer esegue Mac-OS, è possibile eseguire Linux all'interno di un contenitore docker ed eseguire l'installazione/installazione descritta di seguito all'interno di questo contenitore docker.

È necessario scaricare e installare il pacchetto binario CNTK, il set CIFAR-10 e i file di esercitazione, in totale circa 500 MB. Fare in anticipo questa operazione.

  • Scaricare e installare i file binari CNTK:

Questa pagina illustra le diverse alternative per installare il Microsoft Cognitive Toolkit nel computer. Per l'ambito di questa esercitazione è sufficiente un'installazione basata su un'installazione CNTK binaria. Non sarà necessario compilare CNTK dal codice sorgente. per istruzioni di installazione. È sufficiente seguire le istruzioni per scaricare un pacchetto di installazione binaria da tale pagina.

In qualsiasi caso assicurarsi che i file eseguibili CNTK siano inclusi nell'ambiente.

Eseguire le esercitazioni pratiche online

Le due esercitazioni pratiche sono state pubblicate come pagine qui che possono essere seguite lungo:

ASTRATTO

Questa esercitazione introduce Microsoft Cognitive Toolkit o CNTK, il toolkit open source all'avanguardia per Windows e Linux. CNTK è un potente toolkit di deep learning basato su calcolo basato su deep learning per il training e la valutazione di reti neurali profonde. I gruppi di prodotti Microsoft usano CNTK, ad esempio per creare i modelli di riconoscimento vocale Cortana e la classificazione Web. CNTK supporta reti di inoltro, convoluzionali e ricorrenti per i carichi di lavoro voce, immagine e testo, anche in combinazione. I tipi di rete più diffusi sono supportati in modo nativo (convoluzione) o possono essere descritti come configurazione CNTK (LSTM, sequenza a sequenza). CNTK ridimensiona più server GPU ed è progettato intorno all'efficienza. Questa esercitazione offre una panoramica dell'architettura generale di CNTK e descrive i metodi e gli algoritmi specifici usati per la differenziazione automatica, l'inferenza del ciclo ricorrente e l'esecuzione, la condivisione della memoria, la casualizzazione a comparsa di grandi corpora e la parallelizzazione multi-server. Verrà quindi illustrato come gli usi tipici siano simili alle attività pertinenti come il riconoscimento delle immagini, la modellazione da sequenza a sequenza e il riconoscimento vocale.

STRUTTURA

L'esercitazione illustra questi argomenti:

  • Che cos'è CNTK?
    • Introduzione alla rete computazionale
  • Come sembra un uso tipico di CNTK?
    • Definizione della rete di calcolo
    • Configurazione dell'I/O dei dati
    • Parametri hyper-SGD
    • Flussi di lavoro tipici
  • Approfondimenti sulle tecnologie specifiche
    • Gestione implicita del tempo
    • Minibatching di sequenze a lunghezza variabile
    • Training parallelo dei dati
  • Esempi pratici, tra cui
    • Riconoscimento delle immagini (AlexNet, ResNet)
    • Elaborazione del testo (ATIS)
  • Anteprima: API della libreria CNTK per Python e C++

BIOGRAFIE PARLANTE

Frank Seide, nativo di Amburgo, germania, è un senior ricercatore presso Microsoft Research. La sua attuale ricerca si concentra sulle reti neurali profonde per il riconoscimento vocale conversazionale; insieme al co-autore Dong Yu, fu prima di tutto a mostrare l'efficacia delle reti neurali profonde per il riconoscimento del parlato conversazionale. Durante la sua carriera, è stato interessato e ha lavorato su un'ampia gamma di argomenti e componenti del riconoscimento vocale automatico, tra cui sistemi di dialogo parlato, riconoscimento del cinese mandarino e, in particolare, riconoscimento del riconoscimento del vocabolario di conversazione con riconoscimento vocale con applicazione all'indicizzazione audio, trascrizione e traduzione vocale. La sua attuale attenzione è il toolkit di deep learning CNTK di Microsoft.
Amit Agarwal è un ingegnere software principale della divisione Technology and Research di Microsoft. La sua attuale attenzione è la creazione di CNTK, la piattaforma di deep learning distribuita su larga scala di Microsoft, per consentire la scalabilità, la velocità e la capacità di training di modelli di deep learning di grandi dimensioni su enormi set di dati, usati in un'ampia gamma di attività di riconoscimento vocale, immagine e testo correlate a Deep Learning presso Microsoft e nella community. Amit Agarwal ha lavorato su una vasta gamma di prodotti Microsoft e nella grafica mentore. Ha 7 brevetti correlati alla programmazione eterogenea e GPU.

REFERENCES

[1] Amit Agarwal, Eldar Akchurin, Chris Basstein, Guoguo Chen, Scott Cyphers, Jasha Droppo, Adam Eversole, Brian Guenter, Mark Hillebrand, T. Ryan Hoens, Xuedong Huang, Zhiheng Huang, Vladimir Ivanov, AlexeyLemev, Philip Kranen, Oleksii Kuchaiev, Wolfgang Manousek, Avner May, Bhaskar Mitra, Olivier Nano, Gaizka Navarro, Alexey Orlov, Hari Parthasarathi, Baolin Peng, Marko Radmilac, Alexey Reznichenko, Frank Seide, Frank Seide, Michael L. Seltzer, Malcolm Slaney, Andreas Stolcke, Huaming Wang, Yongqiang Wang, Kaikai Yao, Dong Yu, Yu Zhang, Geoffrey Zweig (in ordine alfabetico), "Introduzione alle reti computazionali e al Toolkit di rete computazionale", Microsoft Technical Report MSR-TR-2014-112, 2014.
[2] "CNTK",