Webentwicklung: Neuronale Netze mit JavaScript im Browser trainieren
Mit TensorFlow.js, p5.js und ml5.js trainieren Sie neuronale Netze mit JavaScript. Das hilft Entwicklern, sich mit neuronalen Netzen und ML vertraut zu machen.

- Daniel Basler
Wenn man von künstlicher Intelligenz (KI) und neuronalen Netzen spricht, denken die meisten automatisch an Python. Eine attraktive Alternative für den Entwurf von neuronalen Netzen und Machine-Learning-Modellen ist JavaScript im Zusammenspiel mit TensorFlow.js im Browser. Bei einer Single-Page Application (SPA) benötigt die Entwicklung im Browser nur eine simple HTML-Seite, die gerade genug enthält, um JavaScript zu laden, um danach einfach den Rest der Seite zu rendern. Der Vorteil davon, neuronale Netze mit JavaScript im Browser zu nutzen, ist der komfortable Zugriff auf die Eingabemöglichkeiten für Audio und Video über die Browser-API wie auch eine mögliche Interaktion für Ein- und Ausgaben während oder nach dem Training.
TensorFlow.js ist eine JavaScript-Bibliothek, die sowohl im Browser als auch mit Node.js auf dem Server läuft. Die Bibliothek erlaubt das Trainieren und das Ausführen neuronaler Netze im Browser. Da am WebGPU-Standard zum GPU-Zugriff aus dem Browser heraus noch gearbeitet wird, bietet sich vor allem der Einsatz vortrainierter Modelle an, die Entwickler entweder unverändert nutzen oder nachtrainieren. Dafür stellt TensorFlow.js eine Vielzahl an Entwicklertools und vortrainierten Modellen für den Einsatz auf Webseiten und in Webanwendungen bereit.
Die Bibliothek basiert auf dem namensgebenden TensorFlow, neben PyTorch eines der beliebtesten Frameworks fĂĽr das Erstellen von ML-Modellen. Dabei ist TensorFlow fĂĽr datenstromorientierte Programmierung ausgelegt, die Berechnungen in TensorFlow sind wie ein Datenfluss-Berechnungsgraph aufgebaut, der aus Knoten und Kanten besteht. Die Knoten des Graphen stellen Operationen wie Addieren oder Multiplizieren dar. Als Kanten fungieren die Tensoren, die Objekte und Datenstrukturen wie Vektoren oder mehrdimensionale Matrizen enthalten.
Das war die Leseprobe unseres heise-Plus-Artikels "Webentwicklung: Neuronale Netze mit JavaScript im Browser trainieren". Mit einem heise-Plus-Abo können sie den ganzen Artikel lesen und anhören.