Model Creation & Training

After preparing your input data, follow these steps to create a new price prediction model using the Inverse Watch UI:


Select Data Source

In the "Query" field, search for and select the query you have created and want to use as input data (inv_coingecko_prices_data in our case). This query contains our engineered features and target variables.


Define Columns

You'll see a list of all columns from your query. For each column, specify whether it's a feature or a target:

  • Mark all columns as features, including "timestamp".

The system will automatically derive additional features from these time-related columns if 'timestamp' is in the column name and the timestamp is in a reasonable range.

  • Mark "log_price_change" as your target variable.

  • Leave "price" unmarked if you're not using it as a direct feature or target.


Provide Model Description

In the "Description" field, enter a meaningful description for your model. For example: "Cryptocurrency price prediction model using historical price, volume, and market cap data."


Choose Regressor

From the "Regressor" dropdown, select one of the following options:

  • Linear Regression

  • Random Forest

  • Gradient Boosting

  • AdaBoost

  • LSTM Neural Network


Configure Regressor

Configure the regressor hyperparameters, example with the Random Forest Regressor :

  • Auto Mode: Leave this unchecked to manually set parameters. For ease of use, you can check the box and the system will automatically run the hyper parameters tuning for you.

  • Number of Trees: Set the number of trees in the forest (e.g., 100).

  • Max Depth: Set the maximum depth of the trees (e.g., 10).

  • Min Samples Split: Minimum number of samples required to split an internal node (e.g., 2).

  • Min Samples Leaf: Minimum number of samples required to be at a leaf node (e.g., 1).

  • Criterion (Regression): Choose the function to measure the quality of a split (e.g., "mse" for mean squared error).


Set Train/Test Split

Adjust the slider to set the split between training and test data. A common split is 80-70% train, 20-30% test.


Set Random State

Enter a number (e.g., 42) to ensure reproducibility of results.

Configure Training Triggers

  • Retrain when: Select "When query is refreshed" if you want the model to retrain automatically when new data is available.

  • When trained, send notification: Choose "Always send notifications" to stay informed about training progress.

  • Train Template: Use the default template unless you have a custom one.


Configure Prediction Triggers

  • Predict when: Select "When query is refreshed" to generate new predictions when data is updated.

  • When predicted, send notification: Choose "Always send notifications" to be notified of new predictions.

  • Predict Template: Use the default template unless you have a custom one.


Create Model

Once you've configured all settings, click on the "Create Model" button at the bottom of the page to create the model configuration.


Start Training

After creating the model, you need to manually start the training process:

  • Go to the model options by clicking on

  • Click "Start Training" to begin the training process.

Alternatively, if you've set "Retrain when" to "When query is refreshed", the model will train automatically the next time the query refreshes.

For the time being, resources being limited it's better to avoid this option.


Monitor Training

Once training starts, you can monitor the progress and view results when training completes.

Once training has completed, you can generate a new prediction by following the same process as "Start Training", but by clicking on "Predict" in the model menu instead.

Last updated