SynapseML
by
microsoft

Description: Simple and Distributed Machine Learning

View on GitHub ↗

Summary Information

Updated 21 minutes ago
Added to GitGenius on January 5th, 2025
Created on June 5th, 2017
Open Issues & Pull Requests: 392 (+0)
Number of forks: 862
Total Stargazers: 5,229 (+0)
Total Subscribers: 135 (+0)

Issue Activity (beta)

Open issues: 71
New in 7 days: 0
Closed in 7 days: 4
Avg open age: 635 days
Stale 30+ days: 71
Stale 90+ days: 69

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • triage (73)
  • bug (54)
  • area/lightgbm (12)
  • feature-request (4)
  • fixed in latest (4)
  • question (4)
  • by design (3)
  • area/documentation (2)

Repository Insights (GitGenius)

Median issue/PR response: 0.0 hours
Mean response time: 266.8 days
90th percentile: 996.7 days
Tracked items: 85

Most active contributors

Detailed Description

SynapseML is an open-source library developed by Microsoft that simplifies the creation of massively scalable machine learning pipelines built on Apache Spark. Previously known as MMLSpark, the project provides simple, composable, and distributed APIs for diverse machine learning tasks including text analytics, vision, anomaly detection, and deep learning. The library shares the same API as SparkML/MLLib, enabling seamless integration into existing Apache Spark workflows while supporting multiple programming languages including Python, R, Scala, Java, and .NET.

The repository is written primarily in Scala and requires Scala 2.12, Spark 3.4 or higher, and Python 3.8 or higher. SynapseML abstracts over various databases, file systems, and cloud data stores to simplify experiments regardless of data location. The library supports training and evaluation on single-node, multi-node, and elastically resizable clusters, allowing users to scale work without wasting resources. It is usable across Microsoft Fabric, Synapse Analytics, Databricks, and standalone Python environments.

The project encompasses a comprehensive set of features organized around specific machine learning domains. Vowpal Wabbit on Spark provides fast, sparse, and effective text analytics capabilities. The Cognitive Services for Big Data feature enables leveraging Microsoft Cognitive Services at unprecedented scales within existing SparkML pipelines. LightGBM on Spark allows training of gradient boosted machines, while Spark Serving enables serving any Spark computation as a web service with sub-millisecond latency. HTTP on Spark integrates Spark with the HTTP protocol for distributed microservice orchestration, and ONNX on Spark provides distributed and hardware-accelerated model inference. The library also includes Responsible AI tools for understanding opaque-box models and measuring dataset biases, along with Spark Binding Autogeneration for automatically generating PySpark and SparklyR bindings.

Additional specialized features include Isolation Forest on Spark for distributed nonlinear outlier detection, CyberML for machine learning tools focused on cyber security, and Conditional KNN for scalable KNN models with conditional queries. The current version is 1.1.3, with comprehensive API documentation available for both Scala and PySpark.

GitGenius activity data reveals the repository maintains active development with a median issue and pull request response latency of 0.0 hours across 85 tracked items, though the mean response time is 6403.0 hours, indicating some longer-term issues. The most active issue labels are triage with 62 occurrences, bug with 52 occurrences, and area/lightgbm with 12 occurrences. Key contributors tracked by GitGenius include imatiach-msft with 32 events, stupidoge with 22 events, and memoryz with 16 events. The repository shares overlapping contributors with related projects including deepspeedai/deepspeed, lightgbm-org/lightgbm, and vllm-project/vllm, indicating integration within a broader ecosystem of machine learning and distributed computing projects.

SynapseML
by
microsoftmicrosoft/SynapseML

Repository Details

Fetching additional details & charts...