State of the Octoverse

The State of the Octoverse Report: Machine Learning

Image of Thomas Elliott

In unserem 2018 Octoverse Report stellten wir fest, dass Machine Learning und Data Science beliebte Themen auf GitHub waren. Das Projekt tensorflow/tensorflow war eines der Projekte mit den meisten Contributions, pytorch/pytorch war eines der am schnellsten wachsenden Projekte und Python war die drittpopulärste Programmiersprache auf GitHub. Wir haben uns entschieden, etwas tiefer in das Thema Machine Learning und Data Science auf GitHub einzutauchen.

Zwischen 1. Januar und 31. Dezember 2018 haben wir Daten über Beteiligungen erhoben. Die Beteiligungen können das Senden von Code, das Öffnen eines Issues oder eines Pull Requests, das Kommentieren eines Issues oder eines Pull Requests oder das Überprüfen eines Pull Requests beinhalten. Für die am häufigsten importierten Pakete haben wir Daten aus dem Dependency Graph verwendet. Er umfasst alle öffentlichen und privaten Repositories, die sich für die Aufnahme in den Dependency Graph entschieden haben.

Programmiersprachen

Top Machine Learning Languages on GitHub for 2018

 

Wir haben uns die Contributions von Repositories angesehen, die mit dem Thema „Machine Learning“ getaggt sind, und haben die häufigsten Primärspachen der Repositories bewertet. Python ist die häufigste Sprache in den Repositories zum Machine Learning und die dritthäufigste Sprache auf GitHub insgesamt. Allerdings wird beim maschinellen Lernen nicht nur in Python gearbeitet: Einige der gebräuchlichsten Sprachen auf GitHub sind auch gängige Sprachen für Projekte rund um das maschinelle Lernen. C++, JavaScript, Java, C#, Shell und TypeScript finden sich alle sowohl in den Top-10-Sprachen auf GitHub als auch in den Top 10 für Projekte im Bereich maschinelles Lernen. Julia, R und Scala erscheinen alle in den Top 10 der Projekte für maschinelles Lernen, nicht aber in den Top 10 auf GitHub insgesamt. Julia und R sind beides Sprachen, die häufig von Data Scientists verwendet werden. Scala wird immer häufiger bei der Interaktion mit Big Data Systems wie Apache Spark verwendet.

Beliebte Machine Learning und Data Science Pakete

Top packages imported by machine learning projects on GitHub for 2018

 

Wir haben Daten aus dem Dependency Graph erhoben, um den Anteil von Projekten zu Machine Learning oder Data Science-Themen zu berechnen, die beliebte Python-Pakete importieren. Die obige Liste zeigt die zehn wichtigsten Pakete, die von diesen Projekten importiert wurden. Das sind unsere Ergebnisse:

  • Numpy – ein Paket mit Unterstützung für mathematische Operationen an multidimensionalen Daten – war das am häufigsten importierte Paket. Es wurde in fast drei Vierteln der Projekte zu Machine Learning und Data Science verwendet.
  • Scipy, ein Paket für wissenschaftliche Berechnungen, Pandas, ein Paket für die Verwaltung von Datensätzen, und Matplotlib, eine Visualisierungsbibliothek, werden alle in über 40 % der Projekte zu maschinellem Lernen und Data Science verwendet.
  • Scikit-learn ist ein beliebtes Paket für Machine Learning. Es enthält Implementierungen einer großen Anzahl von Algorithmen für das maschinelle Lernen und wird von fast 40 % der Projekte verwendet.
  • Tensorflow, ein Paket für die Arbeit mit neuronalen Netzen, wird in fast einem Viertel der Pakete eingesetzt.

Der Rest der Top Ten sind Utility Packages: six ist eine Kompatibilitätsbibliothek für Python 2 und 3 und python-dateutil und pytz sind Pakete für die Arbeit mit Daten.

Beliebte Projekte zu maschinellem Lernen

Top machine learning projects on GitHub for 2018

Wir haben auch untersucht, welche Open-Source-Projekte mit dem Label „machine-learning“ im Jahr 2018 die meisten Beteiligten aufwiesen. Tensorflow war mit mehr als dem Fünffachen der Anzahl der Beteiligten des zweitbeliebtesten Projekts, scikit-learn, bei weitem am beliebtesten. Zwei Projekte, explosion/spaCy und RasaHQ/rasa_nlu, konzentrieren sich auf Probleme der Verarbeitung natürlicher Sprache. Weitere vier Projekte, CMU-Perceptual-Computing-Lab/openpose, thtrieu/darkflow, ageitgey/face_recognition und tesseract-ocr/tesseract konzentrieren sich auf die Bildverarbeitung. Ebenfalls unter den Projekten mit den meisten Beteiligungen im Jahr 2018 ist der Quellcode für die Programmiersprache Julia.

Wir freuen uns sehr über diese herausragenden Projekte, die ihr alle zum Thema Machine Learning realisiert habt. Wenn ihr mehr über diese Projekte auf GitHub erfahren möchtet, besucht unsere Rubrik Explore.