Entwickelt von | Apache Software Foundation |
---|---|
Erste Version | 8. Oktober 2015 |
Letzte Version | 2.0.0 (20. April 2019) |
Geschrieben in | C ++ |
Betriebssystem | Linux , MacOS und Microsoft Windows |
Lizenz | Apache-Lizenz |
Webseite | singa.incubator.apache.org |
Apache SINGA ist ein Apache-Projekt, das sich noch in der Inkubation befindet und sich dem Deep Learning widmet . Es bietet eine flexible Architektur für verteiltes Training, ist skalierbar, um auf einer Vielzahl von Hardware ausgeführt zu werden, und konzentriert sich auf Anwendungen im Gesundheitswesen.
Das SINGA-Projekt wurde 2014 von der DB System-Gruppe der National University of Singapore in Zusammenarbeit mit der Zhejiang University Database Group initiiert, um komplexe Analysen in großem Maßstab zu unterstützen und Datenbanksysteme intelligenter und autonomer zu machen. Er konzentrierte sich auf verteiltes tiefes Lernen, indem er das Modell und die Daten auf Knoten eines Clusters partitionierte und parallel zur Trainingsphase arbeitete. Der Prototyp wurde von Apache Incubator in angenommenMärz 2015. Sieben Versionen wurden veröffentlicht, wie in der folgenden Tabelle gezeigt. Seit Version 1.0 unterstützt SINGA traditionelle Modelle des maschinellen Lernens wie die logistische Regression. Unternehmen wie NetEase , yzBigData, Shentilium und andere verwenden SINGA für ihre Anwendungen, einschließlich Gesundheitswesen und Finanzen.
Ausführung | Ursprüngliches Erscheinungsdatum | Letzte Version | Veröffentlichungsdatum | |
---|---|---|---|---|
2.0.0 | 2019-04-20 | 2.0.0 | 2019-04-20 | |
1.2.0 | 2018-06-06 | 1.2.0 | 2018-06-06 | |
1.1.0 | 2017-02-12 | 1.1.0 | 2017-02-12 | |
1.0.0 | 08.09.2016 | 1.0.0 | 08.09.2016 | |
0.3.0 | 2016-04-20 | 0.1.0 | 2016-04-20 | |
0.2.0 | 2016-01-14 | 0.2.0 | 2016-01-14 | |
0.1.0 | 08.10.2015 | 0.1.0 | 08.10.2015 | |
Bildbeschriftung: Alte Version Alte Version, wird noch unterstützt Neueste stabile Version Neueste erweiterte Version Zukünftige Version |
Der Software-Stack von SINGA besteht aus drei Hauptkomponenten: dem Kernel, den Ein- / Ausgängen und dem Modell. Die folgende Abbildung zeigt diese Komponenten mit der Hardware. Die Hauptkomponente bietet Speicherverwaltung und Tensoroperationen. IO verfügt über Klassen zum Lesen (und Schreiben) von Daten von (auf) Festplatte und Netzwerk. Die Modellkomponente stellt Datenstrukturen und Algorithmen für Modelle des maschinellen Lernens bereit, z. B. Schichten für neuronale Netzwerkmodelle, Optimierer / Initialisierer / Metriken / Verluste für allgemeine Modelle des maschinellen Lernens.
Rafiki ist ein Submodul von SINGA, das einen Analysedienst für maschinelles Lernen bereitstellen soll.