Kennen Sie CNTK? CNTK ist eine Open-Source-Deep-Learning-Bibliothek, die von Microsoft geleitet wird. Um ehrlich zu sein, habe ich kürzlich damit begonnen, aber dieses CNTK ist nicht in guter Weise wie Microsoft und es ist ziemlich Ich finde es cool. Dieses Mal werde ich zunächst kurz die Funktionen von CNTK vorstellen. [Ich werde mir in der zweiten Hälfte ein Codebeispiel mit Jupyter Notebook ansehen.](Http://qiita.com/usuyama/items/bb7600ab7cfc1f5b8be3#python%E3%81%A7cntk] % E3% 82% 92% E4% BD% BF% E3% 81% A3% E3% 81% A6% E3% 81% BF% E3% 82% 8B).
** [Klicken Sie hier für das Tutorial](http://qiita.com/usuyama/items/bb7600ab7cfc1f5b8be3#python%E3%81%A7cntk%E3%82%92%E4%BD%BF%E3%81%A3%E3% 81% A6% E3% 81% BF% E3% 82% 8B) **
Open Source
https://github.com/Microsoft/CNTK
Die Entwicklung von GitHub ist im Gange. Es gibt keine Inhouse-Version.
Es gibt (noch) keine .NET-API. Brainscript wird ebenfalls unterstützt.
Das Entwicklungsteam sagte: "Sowohl Linux als auch Windows sind die ersten Bürger von CNTK." Es kann eine leichte Zeitverzögerung geben, aber es scheint, dass beide Plattformen dieselbe Funktionalität unterstützen. Docker ist auch für Linux verfügbar, sodass Linux möglicherweise einfacher zu verwenden ist. nicht.
Die Abbildung vergleicht die Leistung mit Therano, TensorFlow, Torch 7 und Caffe. Dies ist ein Vergleich, wie viele Frames pro Sekunde von einem vollständig verbundenen 4-Schicht-Neuronalen Netzwerk verarbeitet werden können (Mini-Batch-Größe ist 8192). Die blauen und orangefarbenen Einstellungen sind Cluster von Linux-Computern mit einer oder vier GPUs (Nvidia K40), und Grün ist ein Cluster von zwei Linux-Computern (2 x 4 GPUs). ** Mit einer GPU hat jede Bibliothek fast die gleiche Geschwindigkeit (CNTK ist schneller als TensorFlow?), Aber CNTK ist die einzige, die mehrere GPUs effektiv nutzen kann. ** Bei 4 GPUs skaliert CNTK fast 4x, während Torch 7 und Caffe etwa 2x skalieren. TensorFlow ist nahezu unverändert.
In einem Experiment im Oktober 2016 verzeichnete eine vom Microsoft-Team entwickelte Spracherkennungs-Engine eine Wortfehlerrate von 5,9%. Dies entsprach der Anfrage eines professionellen Transkriptionsdienstes nach derselben Audiodatei. Darüber hinaus verwendet dieser Transkriptionsdienst einen zweistufigen Prozess, bei dem die erste Person von 1 transkribiert und die zweite Person Korrekturen vornimmt.
Der detaillierte Teil der Methode ist in Paper veröffentlicht, verwendet jedoch ein neuronales Netzwerk mit einer sehr großen Anzahl von Schichten. In der Veröffentlichung heißt es auch, dass CNTK auch hier seine Macht ausübte und dass die Hochgeschwindigkeitsverarbeitung von CNTK unverzichtbar war.
Mein Kollege hat ein gutes Tutorial gemacht, also habe ich es übersetzt. Da es sich um ein Jupyter-Notizbuch handelt, können Sie Code vor Ort bearbeiten und ausführen, ohne die Umgebung vorzubereiten. Wir planen, weitere nacheinander hinzuzufügen.
CNTK 101: Logistische Regression und Einführung in das maschinelle Lernen ―― Lassen Sie uns zunächst ein lineares Modell erstellen und ein einfaches Klassifizierungsproblem mit zwei Klassen lösen. Es wird der allgemeine Ablauf von der Modellkonstruktion über das Lernen bis zur Bewertung vorgestellt. Es folgt nicht nur dem Code, sondern führt auch kurz in die dahinter stehende Mathematik ein.
CNTK 102: Simulationsdaten mit Feed Forward Network lernen --Erstellen Sie ein 4-lagiges neuronales Netzwerk und lernen Sie die gleichen Simulationsdaten wie 101.
CNTK 103 Teil A: Vorbereitung von MNIST-Daten (handschriftliche Nummern)
In Teil A werden MNIST-Daten heruntergeladen, in ein benutzerfreundliches Format konvertiert und in einer Datei gespeichert.
CNTK 103 Teil B: MNIST-Daten mit Feed Forward Network lernen
Lernen der in Teil A heruntergeladenen MNIST-Daten mit dem in 102 erstellten 4-Schicht-Neuronalen Netzwerk.
Jupyter Notebook (Azure Notebook) Wenn Sie sich mit Ihrem Microsoft-Konto anmelden, können Sie Ihre Notizen zur Bearbeitung und Ausführung klonen.
Es ist sehr praktisch, den Code vor Ort ändern und ausführen zu können. Versuchen Sie daher, den Code im Tutorial zu ändern und damit zu spielen.
Recommended Posts