Sie brauchen einen Google Colaboratory Berater und/oder möchten, dass wir Ihnen unser Angebot in diesem Umfeld vorstellen?
Bitte hinterlassen Sie uns Ihren Namen und die Kontaktdaten. Dann melden wir uns bei Ihnen.
Google Colaboratory ist ein von Google für maschinelles Lernen entwickeltes und kostenlos nutzbares Forschungsprojekt, das Jupyter Notebooks in der Cloud-Plattform Google Drive ausführt.
Entwickler trainieren Modelle unter Verwendung von Trainings- und Testdaten oder führen Berechnungen mit bereits fertig trainierten Modellen durch. Der Zugriff auf die cloudbasierte Jupyter-Notebook-Umgebung Google Colaboratory erfolgt über gängige Browser wie Safari, Chrome oder Firefox.
Google Colaboratory wurde speziell für Anwendungen im Bereich des maschinellen Lernen entwickelt. Für diesen Zweck erstellt der Anwender ein benutzerdefiniertes Jupyter-Notebook oder nutzt eine der zahlreichen AutoML Tables für das Training verschiedenster Modelle mit vorhandenen Test- und Trainingsdaten. Das Marketing profitiert von dieser Form des maschinellen Lernens in genauso hohem Umfang wie Unternehmensbereiche, die sich mit verschiedensten Prognosen von der Bedarfs- bis zur Energiepreisprognose beschäftigen.
Im Prinzip ist Google Colaboratory immer dann das geeignete Tool, wenn ein Unternehmen aus einem umfangreichen Datenbestand, der durch kontinuierliche neue Informationen angereichert wird, automatisiert Informationen generieren möchte. In dieser Situation ist das maschinelle Lernen unter Einsatz optimal trainierter Modelle das Mittel der ersten Wahl.
Um die rechenintensiven Prozesse verschiedenster Analysetools zuverlässig zu bewältigen, entwickelte Google bereits vor einigen Jahren spezielle TPUs, die auch in der cloudbasierten Lösung Google Colaboratory zum Einsatz kommen. Diese leistungsfähigen Tensor Processing Units sind darauf optimiert, in trainierten neuronalen Netzen innerhalb kürzester Zeit eine Vielzahl an Berechnungen durchzuführen. So erreichen TPUs der neuesten Generation eine unvorstellbare Rechenleistung von mehr als 100 Petaflops pro Sekunde.
Jupyter Notebook ist eine Entwicklungsumgebung, die sich im Bereich des maschinellen Lernens vielfach bewährt. Die Anwendung ist ein Produkt des Projekts Jupyter, einer OpenSource-Initiative mit dem Fokus auf “Interactive Computing” und der Unterstützung möglichst vieler Programmiersprachen. Unter anderem auch Python, die als eine der wichtigsten Sprachen im Bereich des maschinellen Lernens gilt.
Die Programmierumgebung Jupyter Notebook ist dokumentenorientiert und organisiert Projekte in Notebooks – den JupyterNotebooks. Besonders hervorzuheben sind die zahlreichen Möglichkeiten von Jupyter Notebook, zu denen die interaktive Ausführung von Codes genauso zählt wie die Datenvisualisierung. So ist es möglich, über die digitalen Dokumente JupyterNotebooks unterschiedlichste Inhalte wie Grafiken oder Mediafiles anzeigen zu lassen.
Allerdings überzeugt Jupiter Notebook als Entwicklerumgebung und als digitale Dokumente durch weitere wichtige Features. Dazu gehört beispielsweise die Implementierung verschiedenster Programmiersprachen in einen bestehenden Code. Immerhin sind mehr als 100 Kernels zur Einbindung verschiedenster Programmiersprachen verfügbar. So ist es möglich, die Variablen der für statistische Berechnungen genutzten Sprache “R” mit dem Code von Python auszutauschen. Oder ein Entwickler implementiert Funktionen mit Cython und ruft sie über den Python Code auf.
Ebenfalls eine für Jupiter Notebooks typische Eigenschaft ist die Einteilung in einzelne Zellen. Jede dieser Zellen enthält entweder Content in Form von Markup Language oder Code und ist einzeln ausführbar. Die interaktive Ausführung der einzelnen Zellen ist vor allem bei erforderlichen Änderungen im Code oder von Parametern ein zeit- und ressourcensparendes Feature. Dafür werden Jupyter Notebooks entweder direkt über die Kommandozeile ausgeführt und bearbeitet, über die browsergestützte Jupyter App, oder über Google Colaboratory.
Jupyter Notebooks sind immer dann die erste Wahl, wenn der Fokus auf der Datenanalyse, interaktivem Programmieren oder dem Erstellen von Programmierbeispielen liegt. Genauso von Vorteil ist die Tatsache, dass die Notebooks neben der Ausführung von Codes noch weitere Funktionen erfüllen. Dazu zählen vor allem die Präsentation und Dokumentation von Codes. Als Präsentations-Dokument wird der Inhalt des Notebooks gerendert angezeigt und nicht als Source Code. Oder Entwickler teilen das Notebook mit anderen Anwendern, die es mit Kommentaren versehen.
Sie interessieren sich für Google Colaboratory oder nutzen es sogar schon und haben Fragen? Dann vereinbaren Sie eine kostenlose Websession mit uns. Ich freue mich auf Ihre Fragen und den Austausch mit Ihnen.
Bitte hinterlassen Sie uns Ihren Namen und die Kontaktdaten. Dann melden wir uns bei Ihnen.
Eine der ersten Colaboratory-Versionen aus dem Jahr 2014 wurde gemeinsam von Google und dem Jupyter-Entwicklerteam gemeinsam entwickelt. Obwohl sich Google Colaboratory kontinuierlich weiter entwickelte, basiert es heute noch auf der innovativen, webbasierten und interaktiven Open-Source-Webanwendung Jupyter Notebook. Damit erstellt der Anwender Dokumente mit Gleichungen, Visualisierungen, narrativem Text oder Live-Codes. Eine Funktion von vielen ist das Code-Listingund die Möglichkeit, den Code schrittweise auszuführen. Als OpenSource-Anwendung unterstützt Jupyter mehr als 40 Programmiersprachen, zu denen unter anderem auch die von Colaboratory unterstützte Sprache Python zählt.
Allerdings unterstützt Google Colaboratory aktuell (Stand 09/2019) nur Swift und Python 2.7 sowie Python 3.6. Obwohl Google zum aktuellen Zeitpunkt an der Realisierung der Unterstützung anderer Jupyter-Kernel wie beispielsweise R oder Scalaarbeitet, gibt es noch keine detaillierten Aussagen zum ETA.
Für Entwickler von Deep-Learning-Anwendungen, die mit Jupyter Notebooks vertraut sind, ist das Arbeiten mit Google Colaboratory unkompliziert. Da es sich um eine Jupyter-Notebook-Umgebung handelt, ist die Installation einer Software nicht erforderlich. Die Anmeldung erfolgt ausschließlich über einen gängigen Webbrowser wie beispielsweise Chrome, Firefox oder Safari über das Google-Konto.
Die verschiedenen Jupyter-Notebooks speichert Colaboratory automatisch auf dem persönlichen Google Drive-Konto. Hier empfehlen erfahrene Nutzer, ein Verzeichnis anzulegen, um die Notebooks zu einem späteren Zeitpunkt einfacher zu finden. Alternativ können Notebooks von GitHub hochgeladen werden, um sie in Google Colaboratory auszuführen.
Eine unverzichtbare Funktionalität ist der Einsatz verschiedener auf Google Drive gespeicherter Deep-Learning Bibliotheken wie PyToch, TensoFlow, Keras oder OpenCV. Dadurch erhalten Entwickler ein breites Spektrum an Algorithmen, um die Modelle effizient und optimal zu trainieren.
Für die Ausführung der in Python oder Swift erstellten Codes nutzt Google innerhalb der Cloud angelegte virtuelle Maschinen. Diese sind dem individuellen Nutzerkonto zugeordnet und können innerhalb der Laufzeit mehrmals gestartet werden. Allerdings verfügen diese virtuellen Maschinen nur über eine systemseitig begrenzte maximale Laufzeit und werden nach Ablauf automatisch gelöscht.
Da es sich um ein kostenloses Angebot und ein Forschungsprojekt handelt, muss mit kleineren Einschränkungen gerechnet werden. Dazu zählt die vorgegebene maximale Runtime pro Sitzung genauso wie eine Begrenzung der Hardware-Ressourcen für Benutzer, die Google Colaboratory nicht interaktiv, sondern ausschließlich für aufwendige Berechnungen nutzen, um von den hoch leistungsfähigen T4 GPUs und TPUs zu profitieren. In diesen Fällen erfolgt eine vorübergehende Begrenzung dieser Ressource. Hier empfiehlt Google, die Bedienoberfläche von Colaboratory mit einer lokalen Laufzeitumgebung zu verbinden.
Der Sinn der begrenzten Vergabe der Hochleistungsressourcen liegt darin, dass Google als kostenloses Forschungsprojekt in erster Linie die interaktiven Anwender und Entwickler unterstützt. Dadurch fördert Google gezielt die aktive Beteiligung an der Entwicklung des maschinellen Lernens und belohnt diese Gruppe durch eine bevorzugte Behandlung bei der Verteilung der leistungsfähigsten Ressourcen wie T4 GPUs oder TPUs.
Die mächtige Hardwareausstattung, die Google kostenlos bietet, verleitet zum Missbrauch. Dieser wird strikt unterbunden und ist verboten. Dies gilt vor allem für Krypto-Mining mittels Google Colaboratory. Ein entsprechender Missbrauch von GoogleColaboratory für diesen Zweck zieht ein dauerhaftes Nutzungsverbot des Tools nach sich.
In unserem E-Book erfahren Sie die wichtigsten Inhalte rund um das Thema künstliche Intelligenz & wie Sie davon profitieren können!
Um bestimmte Einschränkungen wie die begrenzte Runtime zu umgehen, bietet sich die Möglichkeit einer lokalen Laufzeitumgebung. Für diesen Zweck wird der Jupyter-Server lokal installiert, um die Notebooks ausführen zu können. Die dafür erforderliche Jupyter-Erweiterung ist auf GitHub verfügbar. Auch hier präsentiert sich Google Colaboratory wieder von seiner benutzerfreundlichen Seite.
Im Prinzip sind es nur vier Schritte, die der Anwender durchführt, um die Bedienoberfläche von Colaboratory mit dem eigenen PC zu verbinden.
Allerdings kann eine lokale Laufzeitumgebung nicht nur für jenen PC hergestellt werden, auf dem der Jupyter-Server installiert ist. Es besteht zusätzlich die Möglichkeit einer lokalen SSH-Porterweiterung für den Verbindungsaufbau zwischen einer über den aktuellen Anwender-PC geöffneten Google Colaboratory und einer Remote-Instanz, auf der der Jupyter-Server läuft.
Grundsätzlich überzeugt Google Colaboratory durch hohe Sicherheit. Nur das Teilen der verfügbaren Notebooks mit anderen Anwendern ist mit gewissen Risiken behaftet. Dies gilt vor allem für das Ausführen von Notebooks anderer Entwickler, da durch die lokale Verbindung zwischen eigenem PC und Google Colaboratory von fremden Codes immer eine schwer kalkulierbare Gefahr ausgeht. Dies gilt selbstverständlich auch bei Vorhandensein einer lokalen Laufzeitumgebung.
Das fremde Notebook, das Codes enthält:
Das Teilen vorhandener Notebooks ist unproblematisch, da der Speicherort auf Google Drive liegt. Bei diesem Vorgang wird immer die standardmäßige Verbindung mit der Cloud hergestellt und nie eine lokale Verbindung. Allerdings werden ohne manuelle Einschränkung alle im Notebook enthaltenen Informationen geteilt. Es besteht jedoch die Möglichkeit, die Codezellenausgabe zu verhindern.
Für die Nutzung von Colaboratory wurden allen gängigen Browser getestet. Sie alle eignen sich für die problemlose Arbeit mit der Colaboratory-Bedienoberfläche. Allerdings nutzt Colaboratory HTML-iFrames und an unterschiedlich gehostete Service-Workers, um die umfangreiche Ausgabe der Ergebnisse so sicher wie möglich zu gestalten. Dies erfordert bei allen Browsern die Aktivierung von “Cookies von Drittanbietern”. Alternativ wird diese Browsereinstellung mit dem Hostnamen “googleusercontent.com” auf der Positivliste des Browsers vorgenommen. Dadurch erübrigt sich die Aktivierung für Cookies aller Drittanbieter auf Websites, die der Anwender besucht.
Eine speziell bei Mozilla Firefox erforderliche Einstellung ist die Erlaubnis, dass Colaboratory eine Verbindung zum lokalen Kernel herstellen darf. In der Regel lässt Firefox keine Verbindungen einer HTTPS-Domain mit Standard-WebSockets zu. Diese Einstellung erfolgt im Firefox-Konfigurationseditor, indem der Anwender die Einstellung network.websocket.allowInsecureFromHTTPS vornimmt.
Google Colaboratory beweist auch an dieser Stelle seine hohe Nutzerfreundlichkeit, die es unkompliziert ermöglicht, Colaboratory von allen Standardbrowsern ohne großen Aufwand zu nutzen. Maximal zwei Einstellungen müssen geändert werden, um in den Genuss der zahlreichen Vorteile der Jupyter Notebook-Umgebung zu kommen.
Mit der kostenlosen Jupyter-Notebook-Umgebung Colaboratory bietet Google Entwicklern von Anwendungen für maschinelles Lernen ein benutzerfreundliches und unkompliziertes Tool, um Modelle für die verschiedensten Einsatzbereiche zu realisieren und zu trainieren. Hardwarekomponenten in Form leistungsfähiger GPUs stehen dem Anwender genauso kostenlos zur Verfügung wie zahlreiche andere Features, die Entwickler für ihre Arbeit benötigen. So wird das Training binärer Klassifizierungsmodelle genauso unkompliziert wie das Training von Modellen zur Generierung verschiedenster Prognosen oder von Sprachmodellen.
Vollumfängliche Implementierungs- und Betriebsunterstützung für führende Softwareprodukte unserer Partnerunternehmen:
Vollumfängliche Implementierungs- und Betriebsunterstützung für führende Softwareprodukte unserer Partnerunternehmen:
Vollumfängliche Implementierungs- und Betriebsunterstützung für führende Softwareprodukte unserer Partnerunternehmen:
Vollumfängliche Implementierungs- und Betriebsunterstützung für führende Softwareprodukte unserer Partnerunternehmen: