whatisgithub

What is keras-gp?

alshedivat/keras-gp — explained in plain English

Analysis updated 2026-08-03 · repo last pushed 2024-08-02

250PythonAudience · researcherComplexity · 4/5DormantSetup · hard

In one sentence

A Python library that combines neural networks with Gaussian Processes, letting Keras models output predictions with confidence estimates. Built for research on time-series forecasting and regression where uncertainty matters.

Mindmap

mindmap
  root((repo))
    What it does
      GP layers for Keras
      Predictions with uncertainty
      Supports recurrent networks
    Tech stack
      Python
      Keras
      MATLAB or Octave
    Use cases
      Financial prediction
      Sensor data analysis
      Scientific modeling
    Audience
      Researchers
      Data scientists
    Limitations
      Tied to 2017 paper
      Not production-ready
      Needs MATLAB or Octave

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Build a time-series forecasting model that reports confidence levels for each prediction.

USE CASE 2

Create a regression model for sensor data that flags low-confidence predictions for review.

USE CASE 3

Predict financial outcomes like stock prices with uncertainty estimates to guide decision-making.

What is it built with?

PythonKerasMATLABOctave

How does it compare?

alshedivat/keras-gpyangtiming/fast-sam-3d-bodyfacebookresearch/egoblur
Stars250250251
LanguagePythonPythonPython
Last pushed2024-08-022026-06-11
MaintenanceDormantMaintained
Setup difficultyhardhardmoderate
Complexity4/55/53/5
Audienceresearcherresearcherdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires MATLAB or Octave installed as a backend dependency, adding significant complexity beyond a standard Python environment.

No license information is provided in the repository, so usage rights are unclear.

So what is it?

keras-gp is a library that lets you combine neural networks with Gaussian Processes, a type of statistical model known for making predictions with well-calibrated uncertainty estimates. Instead of just outputting a single number, models built with this library can tell you how confident they are in each prediction. This matters in real-world scenarios where knowing what your model doesn't know is just as important as the prediction itself. At a high level, the library adds special "GP layers" on top of Keras, a popular deep learning toolkit. You can build a neural network, including recurrent networks suited for time-series data, and then attach a Gaussian Process layer at the end. The neural network learns to structure the data, and the GP layer handles the final prediction with uncertainty. The two parts can be trained together or in stages, and you can use standard Keras tools to optimize the whole thing. This would appeal to researchers and data scientists working on regression or forecasting problems where uncertainty matters, think financial prediction, sensor data analysis, or scientific modeling. For example, if you're predicting future stock prices or equipment failures, knowing the model's confidence level helps you decide whether to act on a prediction or gather more data. One notable tradeoff: the Gaussian Process backend relies on MATLAB or Octave, which adds installation complexity compared to a pure Python library. The README notes that MATLAB offers faster runtime, though a well-compiled Octave setup can close the gap. The project implements methods from a specific 2017 research paper on scalable deep kernels with recurrent structure, so it's closely tied to academic work rather than being a general-purpose production tool.

Copy-paste prompts

Prompt 1
Help me install keras-gp and set up either MATLAB or Octave as the backend on my machine so I can start building models with Gaussian Process layers in Keras.
Prompt 2
Walk me through building a recurrent neural network with a Gaussian Process layer using keras-gp for a time-series regression problem where I need uncertainty estimates.
Prompt 3
Show me how to train a keras-gp model in stages, first the neural network layers, then the Gaussian Process layer, using standard Keras optimization tools.

Frequently asked questions

What is keras-gp?

A Python library that combines neural networks with Gaussian Processes, letting Keras models output predictions with confidence estimates. Built for research on time-series forecasting and regression where uncertainty matters.

What language is keras-gp written in?

Mainly Python. The stack also includes Python, Keras, MATLAB.

Is keras-gp actively maintained?

Dormant — no commits in 2+ years (last push 2024-08-02).

What license does keras-gp use?

No license information is provided in the repository, so usage rights are unclear.

How hard is keras-gp to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is keras-gp for?

Mainly researcher.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.