hips/autograd

Efficiently computes derivatives of NumPy code.

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 13 minutes ago
Added to GitGenius on September 8th, 2026
Created on November 24th, 2014
Open Issues & Pull Requests: 181 (+0)
GitHub issues: Enabled
Number of forks: 940
Total Stargazers: 7,528 (+0)
Total Subscribers: 205 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 18.0 days
Mean response time: 441.8 days
90th percentile: 1685.5 days
Tracked items: 34

How this project is maintained

Around half of the issues opened in the past year never receive a reply. Only 2% of issues opened in the past year have been closed. Three people close 96% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 17
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,242 days
Stale 30+ days: 14
Stale 90+ days: 11

Recent activity

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

Top labels

  • PR welcome (9)
  • bug (5)
  • enhancement (4)
  • good first issue (3)
  • help wanted (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Autograd is a Python library that automatically computes derivatives of NumPy code through reverse-mode and forward-mode differentiation.

The tool solves the problem of manually computing gradients for optimization tasks by intercepting NumPy operations and building a computational graph that tracks how values depend on inputs. It handles a large subset of Python features including loops, conditionals, recursion, and closures, and supports higher-order derivatives by allowing differentiation of derivatives. The reverse-mode approach (backpropagation) efficiently computes gradients of scalar-valued functions with respect to array arguments, making it well-suited for optimization problems where you need to compute how a single output depends on many input parameters.

Autograd suits projects that need gradient-based optimization without the overhead of rewriting code in a specialized framework. It works directly with native Python and NumPy, so existing numerical code can be differentiated with minimal changes. The library is particularly valuable for machine learning tasks like training neural networks, Bayesian inference, and Gaussian process regression, where gradient computation is central. Projects requiring only forward-mode differentiation or those needing GPU acceleration should consider alternatives, as Autograd is CPU-focused and optimized for reverse-mode use cases.

The project maintains active test coverage and performance benchmarking infrastructure. Development includes regular checks on code quality and test status, with automated performance tracking to monitor efficiency across changes.