A better way to forecast
Quantile is a forecasting GUI that makes it easy for analysts and ML engineers alike to predict future events. Read on to learn why we're building it and how it works.

Motivations

Forecasting is a subgenre of machine learning where we try to predict when certain events will happen over time. Despite major advances in algorithms and compute technology over the past few decades, we were surprised to discover that the average F500 manager is still using time-series models from the 1950s to build their forecasts (looking at you, ARIMA). When we interviewed 37 CTOs, CAOs, and analytics managers about their forecasting software, many voiced similar concerns:

  • Their software lacks out-of-sample evaluation criteria and subsegment analytics to properly evaluate modeling performance. As a result, they spend countless hours running backtests and ad hoc analytics to identify and correct forecasting soft spots before their results are passed to the business.

  • Their time-series-based algorithms don't play nicely with hierarchical data and aren't easily interpretable for non-technical users (e.g., that sales manager who questions why the demand forecasts show a spike in the upcoming week).

  • Out-of-the-box solutions (e.g., Alteryx) and custom scripts alike suffer from unintuitive interfaces, long runtimes, and frequent crashes due to type errors, out-of-memory issues, or formatting mistakes in the underlying data.

  • They're left with simple predictions, when they really want predictive intervals ("It is not the estimate or the forecast that matters so much as the degree of confidence with the opinion." - Nassim Taleb)

We don't think it has to be so painful to generate accurate, reliable forecasts. To that end, we're building Quantile to make top-tier forecasting algorithms and methodologies accessible to everyone.

The concept in a nutshell

Import your data

Drag and drop your file into the dropzone, or select a recent file from the selection menu.

After your dataset is loaded into Quantile, you'll be able to view your working copy at the bottom of your screen. Describe your data using the dropdowns at the top of your screen:

  • Target: The variable you'd like to predict into the future
  • Datetime: The most granular datetime column in your dataset
  • Forecast horizon: The number of periods out into the future that you'd like to predict. For example: if your data is at the daily level and you input "10", then Quantile will predict 10 days out into the future.
  • Hierarchy: If your data appears to be hierarchical (i.e., datetime isn't your only primary key, like when you're trying to predict sales for multiple Store-SKU combinations), another dropdown will appear that allows you to select your hierarchy columns.

When you're done describing your data, you'll be able to click either the "Forecast" or "Cross-Validate" buttons to move to the next section. We've made "Cross-Validate" the default to nudge non-practitioners towards statistical best practices, but we recognize that some people may prefer the quicker, simpler "Forecast" procedure.

Here's an example of how you might upload your data and describe your modeling task in Quantile:

Configure your model (optional)

Select your algorithm

Quantile chooses your default algorithm and pipeline configuration based on the data you upload. If you'd like, you can choose and configure your modeling algorithm by clicking the "Algorithm" tab. We plan to include five models in our beta:

  • Prophet (this is a slightly modified version of FB's library that allows for hierarchical forecasting)
  • LightGBM
  • XGBoost
  • CatBoost
  • Pareto NBD

Using the accordion menus on the right-hand side of the "Algorithm" tab, you'll be able to fully configure your chosen model and cross-validation pipeline model. We think most people will prefer to click the "Recommended Settings" button to let our recommendation system choose their settings, but all our models will be fully configurable to better serve our power users.

We'll include more advanced features on this tab as we build them, such as model ensembling, hurdle modeling, and reconciled forecasts for hierarchical data.

Add new features to your dataset

Feature engineering is an important step in the machine learning workflow. You can click the "Recommended Settings" in the bottom right-hand corner to have Quantile suggest additional features and data transformations, or use the "Features" menu to manually select your own.

In this video, we configure our modeling algorithm, transform our target variable, and add in 10+ new features in only a few clicks:

Cross-Validate (or "Quick Forecast")

On the final page, you'll see a downloadable output as well as interpretive visualizations to help you understand your model's performance. We'll continue to add new diagnostic visuals as we work towards our final product:

In this final video, we explore the predictions and outputs for one of our sample datasets:

FAQ

How does Quantile work under the hood?

When you upload a file into Quantile's "Intake" page, we save your data in a secure database before redirecting you to the "Configuration" page (note: you can always wipe your data using the "Clear Data" button in the sidebar). As you configure your model, our server makes lives adjustments to your dataset using our custom forecastframe package and passes back a sample of the results for you to view in the UI. When you hit "Cross-Validate" or "Quick Forecast", that same package takes all of the configuration options you selected in the UI and builds a custom modeling pipeline to your specifications. After your pipeline run is complete, we redirect you to the "Results" tab to show you your performance diagnostics and allow you to download your results.

Some of the technologies used in this app include:

  • LightGBM, XGBoost, Prophet, and CatBoost as our primary modeling algorithms
  • Dask and pandas for processing your data
  • SHAP and Chart.js for visualizing your results
  • Celery and Redis for async processing

How do I know the results are any good?

Our modeling pipeline is based off of:

  • The winning ML pipelines from the M competition, a global forecasting competition with a $300k cash prize
  • Production systems we've built for retailers, CPG companies, and hedge funds in the US and EU

We're confident in our ability to deliver an exceptional forecasting experience because we've seen the results firsthand; our modeling pipelines typically beat our clients' out-of-sample forecasting results by 20-30% (measured using MAPE). Thankfully, you don't have to take our word for it: try Quantile for free and see for yourself!

How much does Quantile cost?

See our Pricing section for more details. In a nutshell, we offer a free version of our app which should cover 99% of our user's needs. We also offer an "Enterprise" tier which allows you to:

  • Self-host Quantile on any Linux server of your choice, such that your data never leaves your network
  • Receive technical support from our experts whenever you need help
  • Forecast on any size dataset (no 50MB limit)
  • Direct-connect to your AWS, Google Cloud, or Azure Blob storage
  • Set up automated forecasting jobs using the Quantile API

Is Quantile open-source?

We haven't open-sourced Quantile yet, but we plan to release our modeling code in the near future. If you'd like to audit our code before it's open-sourced, feel free to reach out to nick@quantile.app.

How do I sign-up for an Enterprise plan?

Shoot us a note at hello@quantile.app and we'll upgrade your account after processing your payment details.