Open Source und KI

Frameworks erleichtern den KI-Einstieg.

von Bernhard Haselbauer

Open-Source-Software ermöglicht es Personen jeglichen Hintergrunds, den Quellcode dieser Software einzusehen, ihn zu kopieren, zu modifizieren und weiterzuverteilen, auf Basis einer bestimmten Open-Source-Lizenz. Unternehmen, die erste Versuche mit Deep Learning, maschinellem Lernen sowie neuronalen Netzen generieren wollen, stehen schon heute eine Vielzahl von Software-Paketen zur Verfügung. Entweder über diverse Cloud-Dienste oder als vor Ort installierte Software-Lösung. In diesem Kontext erleichtern KI-Open-Source-Frameworks den Einstieg erheblich.


Einsteiger sollten sich zum Beispiel mit Keras beschäftigen. Keras ist eine Open-Source-basierte Deep-Learning-Bibliothek, geschrieben in Python. Sie wurde von François Chollet initiiert und erstmals am 28. März 2015 veröffentlicht. Keras bietet eine einheitliche Schnittstelle für verschiedene Backends, darunter TensorFlow, Microsoft Cognitive Toolkit (vormals CNTK) und Theano. Das Ziel von Keras ist es, die Anwendung dieser Bibliotheken so einsteiger- und nutzerfreundlich wie möglich zu machen.

KI-Open-Source-Frameworks erleichtern den Einstieg erheblich.

Ende 2015 hatte Google seine Machine-Learning-Engine Tensorflow zudem unter einer Open-Source-Lizenz veröffentlicht. TensorFlow ist ein Framework zur daten­stromorientierten Programmierung. Es wird aus Python-Programmen heraus benutzt und ist in Python und C++ implementiert. Populäre Anwendung findet TensorFlow im Bereich des maschinellen Lernens. In der Forschung und im Produktivbetrieb wird es derzeit von verschiedenen Teams in kommerziellen Google-Produkten wie Spracherkennung, Gmail, Google Fotos und Google Suche verwendet. So wird der Kartendienst Maps durch Analyse der von Street View aufgenommenen Fotos, die mithilfe einer auf TensorFlow basierenden KI analysiert werden, verbessert.

Wer sich mit dem Thema maschinelles Lernen auseinandersetzen möchte, sollte sich auf bekannte Frameworks wie zum Beispiel SystemML oder scikit-learn konzentrieren. Scikit-learn ist eine freie Software-Bibliothek zum maschinellen Lernen für die Programmiersprache Python. Es bietet verschiedene Klassifikations-, Regressions- und Clustering-Algorithmen, darunter Support-Vektor-Maschinen, Random Forest usw., und ist so konzipiert, dass es mit den numerischen und wissenschaftlichen Python-Bibliotheken NumPy und SciPy zusammenarbeitet. Diese Library wird in mehreren 2017 erschienenen deutschsprachigen Lehrbüchern benutzt.

Interessant in diesem Kontext sind zudem Microsofts Machine-Learning-Toolkit DMTK und Apache Mahout. Apache Mahout ist ein Projekt der Apache Software Foundation, um kostenlose Implementierungen von verteilten oder anderweitig skalierbaren Algorithmen für maschinelles Lernen zu erstellen, die sich hauptsächlich auf lineare Algebra konzentrieren. Unter den Deep-Learning-Frameworks auf Grundlage von Python sticht auch Caffe2 heraus.

Caffe2 kommt von Facebook und wurde schon 2017 unter eine Open-Source-Lizenz gestellt. Das Deep-Learning-Framework bietet ab sofort auch rekurrente neuronale Netze (RNN). Wichtig bei allen Frameworks ist es, auf den Support und die Community zu achten. Einige Open-Source-Frameworks bieten nur mäßigen Support in ihren Foren und Blogs an. Achten Sie auf die Mitgliederzahlen der jeweiligen Communitys. Je mehr Mitglieder, desto mehr Know-how ist am Start!

Das Ziel von OpenAI ist, künstliche Intelligenz auf Open-Source-Basis auf eine Art und Weise zu entwickeln und zu vermarkten, dass sie der Gesellschaft Vorteile bringt und nicht schadet.

Einen nachhaltigen Denkansatz verfolgt auch das Open-Source-Projekt OpenAI. Das Projekt ist im Dezember 2015 von mehreren Milliardären und Unternehmen gegründet worden.

Das Ziel von OpenAI ist, künstliche Intelligenz auf Open-Source-Basis auf eine Art und Weise zu entwickeln und zu vermarkten, dass sie der Gesellschaft Vorteile bringt und nicht schadet. Die Organisation ermöglicht eine „freie Zusammenarbeit“ mit anderen Institutionen und Forschern, indem sie ihre Patente und Forschungsergebnisse für die Öffentlichkeit zugänglich macht. OpenAI beschäftigt sich mit der Frage der „existenziellen Bedrohung durch künstliche Intelligenz“ – also dem möglichen Übertreffen und Ersetzen der menschlichen durch künstliche Intelligenz. Die Organisation dient bis jetzt nur zur Erforschung der künstlichen Intelligenz und wird wahrscheinlich später mit Neuralink verbunden werden.

Ab 2016 hat OpenAI ihre Plattform „OpenAI Gym“ entwickelt, die sich mit bestärkendem Lernen (engl.: „reinforcement learning“) befasst. Dabei wird angestrebt, ein Basissystem anzubieten, das leicht aufzusetzen ist und eine große Bandbreite an verschiedenen Entwicklungsumgebungen unterstützt. OpenAI Gym versucht damit, eine Standardisierung für die Veröffentlichung von Ergebnissen in der Erforschung von künstlicher Intelligenz anzubieten, um Publikationen leichter vergleichen und reproduzieren zu können. Der Quellcode ist in seiner aktuellen Version auf GitHub abrufbar. //