Curve Fit

Fit a function to data.

Inputs

  • Data: input dataset
  • Preprocessor: preprocessing method(s)

Outputs

  • Learner: curve fit learning algorithm
  • Model: trained model
  • Coefficients: fitted coefficients

The Curve Fit widget fits an arbitrary function to the input data. It only works for regression tasks. The widget uses scipy.curve_fit to find the optimal values of the parameters.

The widget works only on regression tasks and only numerical features can be used for fitting.

../../_images/CurveFit-stamped.png

  1. The learner/predictor name.
  2. Introduce model parameters.
  3. Input an expression in Python. The expression should consist of at least one fitting parameter.
  4. Select a feature to include into the expression. Only numerical features are available.
  5. Select a parameter. Only the introduced parameters are available.
  6. Select a function.
  7. Press Apply to commit changes. If Apply Automatically is ticked, changes are committed automatically.
  8. Show help, produce a report, input/output info.

Preprocessing

Curve fit uses default preprocessing when no other preprocessors are given. It executes them in the following order:

  • removes instances with unknown target values
  • removes empty columns
  • imputes missing values with mean values

To remove default preprocessing, connect an empty Preprocess widget to the learner.

Example

Below, is a simple workflow with housing dataset. Due to example simplicity we used only a single feature. Unlike the other modelling widgets, the Curve Fit needs data on the input. We trained Curve Fit and Linear Regression and evaluated their performance in Test & Score.

../../_images/CurveFit-example.png