Skip to content

5. Create Observation Tables

What is an Observation Table?

An Observation Table is a structured collection of historical data points that acts as the foundation for training datasets. By adding features, you can create Feature Tables that can be used to train and validate Machine Learning models.

Forecast Automation

For forecasting use cases, FeatureByte provides a Forecast Automation endpoint that automatically generates observation tables with appropriate POINT_IN_TIME and FORECAST_POINT values based on your prediction schedule and forecast horizon.

In this tutorial, we will create three observation tables using Forecast Automation for our store sales forecasting use case: one for training, one for validation, and one for holdout evaluation.

All three use the ONE_ROW_PER_ENTITY_FORECAST_POINT mode, which generates one row per entity per forecast point with a random point in time. This is the only recommended mode for training and evaluation, as it prevents over-fitting by ensuring each entity-forecast point pair appears once with a unique point in time.

FORECAST_SERIES for visualization

Later, in Predict and Evaluate, we will create additional observation tables in FORECAST_SERIES mode for visualizing predictions as continuous time series.


Step 1: Navigate to Observation Table Catalog

From the menu, navigate to the 'Formulate' section:

  1. Select the Observation Table catalog.

  2. Select the Use Case "Store Daily Sales Amount Forecast for 28 Days".

    Select Use Case


Step 2: Create Observation Tables via Forecast Automation

  1. Click Image.

  2. Select 'Forecast Automation' tab.

  3. Configure the forecast automation settings:

    • Prediction Schedule: Weekly, every Monday at 3:30 AM (30 3 * * 1)
    • Prediction Schedule Timezone: America/Los_Angeles
    • Forecast Start Offset: 0
    • Forecast Horizon: 28

    Forecast Automation Settings


  4. Define the observation table periods for training:

    Training period:

    • Name: Training
    • Start: 2012-03-01
    • End: 2016-01-01
    • Target Observation Count: 50,000
    • Purpose: Training
    • Mode: ONE_ROW_PER_ENTITY_FORECAST_POINT

    Validation period:

    • Name: Validation_eval
    • Start: 2016-01-01
    • End: 2016-04-01
    • Target Observation Count: 50,000
    • Purpose: Validation-Test
    • Mode: ONE_ROW_PER_ENTITY_FORECAST_POINT

    Holdout period:

    • Name: Holdout_eval
    • Start: 2016-04-01
    • End: 2016-05-23
    • Target Observation Count: 50,000
    • Purpose: Validation-Test
    • Mode: ONE_ROW_PER_ENTITY_FORECAST_POINT

    Forecast Automation Periods


  5. Submit the forecast automation request and wait for it to complete.

    Forecast Automation Running


Step 3: Verify Observation Tables

Check successful creation by reviewing the Observation Table Catalog.

Observation Table Catalog

The following tables should be available:

Table Period Purpose
Training 2012-03-01 to 2016-01-01 Training
Validation_eval 2016-01-01 to 2016-04-01 Validation-Test
Holdout_eval 2016-04-01 to 2016-05-23 Validation-Test

Step 4: Set Default EDA Table

Once the observation tables are created, set the training table as the default EDA table:

  1. Navigate to the Use Case Catalog and select your use case.
  2. In the 'About' tab, set Training as the default EDA table.

Set Default EDA Table