divina documentationΒΆ

Date: Sep 11, 2021 Version:

Useful links: Binary Installers | Source Repository | Issues & Ideas | Q&A Support | Mailing List

divina is an open source, BSD3-licensed library providing scalable and hyper-interpretable causal forecasting capabilities written in Python and consumable either via Bash CLI or the built-in web-app. programming language.

The aim of divina is twofold:

  1. to reduce the complexity of configuration for causal forecasting at scale. this is accomplished by abstracting all configuration to a single JSON file that lets users configure new experiments easily and safely. Below is an example forecast definition.

{
    "vision_definition": {
        "time_index": "index",
        "target": "passengers",
        "time_validation_splits": ["1957-01-01"],
        "time_horizons": [1],
        "dataset_directory": "s3://divina-public/dataset",
        "dataset_id": "airline_sales"
    }
}
  1. to deliver scalable and bidirectionally interpretable models that bring transparency and incremental control to the forecasting process. This is done using a variety of coefficient calculation tools for highly-parametric and non-parametric models, binning and interacting of features and and a set of interfaces allowing users to override individual model and forecast coefficients with domain knowledge.

In a minimal example, divina can be used to create a weather forecast using the below command and forecast definition

divina forecast forecast_definition.json --local

and will produce a local output structure as shown below:

divina-forecast
  |- models
  |    |
  |    \- insample
  |         |
  |         \- model.joblib
  |- predictions
  |      |
  |      \- insample
  |           |
  |           \- predictions_partition_0.parquet
  \- validation
         |
         \- insample
              |
              \- metrics.json

In a more advanced configuration, divina can be used with the following command and forecast definition

to produce an s3 hosted output structure as shown below

###TODO visualization and interpretation interface