airbnb/aerosolve

A machine learning package built for humans.

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 55 minutes ago
Added to GitGenius on September 14th, 2026
Created on May 12th, 2015
Open Issues & Pull Requests: 10 (+0)
GitHub issues: Enabled
Number of forks: 562
Total Stargazers: 4,807 (+0)
Total Subscribers: 347 (+0)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 0
New in 7 days: 0
Closed in 7 days: 0
Avg open age: N/A days
Stale 30+ days: 0
Stale 90+ days: 0

Recent activity

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

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Aerosolve is a machine learning library built for interpretability and human understanding of model behavior.

The library addresses the challenge of building machine learning systems where model decisions need to be transparent and debuggable. It achieves this through a thrift-based feature representation that supports pairwise ranking loss and single context multiple item representation, combined with a feature transform language that gives users fine-grained control over feature engineering. Models are designed to be human-readable, with separate lightweight Java inference code for production deployment and Scala training code for model development. The library includes built-in image content analysis capabilities suitable for ranking or ordering images.

Aerosolve is best suited for problems involving sparse, interpretable features such as those found in search ranking or pricing systems, where features correspond to human-understandable concepts like keywords, filters, room counts, or locations. It is not appropriate for tasks with dense, non-interpretable features like raw pixels or audio samples. The tool excels when your feature space is still being defined and you need insight into your data, when you want to iterate quickly by understanding where models disagree, when debugging noisy or potentially buggy features, or when discovering relationships between variables and predictions matters more than raw accuracy. The README positions interpretability as the core differentiator, emphasizing that plotting feature weights and understanding model behavior enables faster iteration and better feature discovery than alternative approaches.

The project maintains active training and inference code paths, with Scala used for the training pipeline and Java for lightweight production inference. The library provides concrete demonstrations through an image impressionism demo and an income prediction benchmark demo, showing practical application of its feature transformation and interpretability capabilities.