Classification and Regression with the BigML Dashboard
6.4 Fusion Configuration Options
From the fusion creation view, you can select more models or remove the existing ones (subsection 6.4.1 ), remove the objective field filter (subsection 6.4.2 ) and configure the model weights (subsection 6.4.3 ).
6.4.1 Models
Select up to 1,000 models, ensembles, logistic regressions, and/or deepnets to create your fusion. You can also use existing fusions to include them in a new fusion.
Click on the model icon you want and type the model name in the selector (see Figure 6.11 ). You can also select models created using OptiML by clicking the option “Show OptiML models”. By enabling this option, only OptiML models will be listed in the selector.
The selected models will be shown below (see Figure 6.12 ) and you can remove them or assign them different weights (see subsection 6.4.3 ). All the selected models must have compatible objective fields; otherwise, the fusion creation will fail. When you select the first model, the rest of models will be filtered by the same objective type (numeric or categorical) and the same objective name. You can remove the filter in case you want to select models with different objective field names (see subsection 6.4.2 ).
6.4.2 Objective Field
The objective field, or “target field”, is the field you want to predict. Fusions support categorical and numeric fields as the Objective Field. All the models selected to create a fusion must have compatible obejctive fields.
BigML takes the first model objective field type and name to filter the rest of models available in the selector (see Figure 6.13 ).
You can remove this filter and select models with different objective field names (see Figure 6.14 .
When you remove the filter and select a new model with a different objective field name, you can choose which objective field from the selected models you want to use for the filter, if any.
6.4.3 Weights
You can assign different weights to the selected models before creating the fusion. At the prediction time, BigML will perform a weighted average of all model predictions taking into account each model weight. Therefore, if a model has a weight of 2 (while the rest of models have a weight of 1) this model’s predictions will count double. You can assign weights of 0 if you do not want a model to have any impact on the final predictions.
6.4.4 Field mapping
The fusion takes the fields from the selected models. BigML considers that two fields from different models are the same field if they have the same name. If the models selected to create the fusion contain fields with different names they will be considered different fields by the fusion. However, there can be cases in which two fields from different models have a different name, but they are the same field. In this case, you will be able to map them before creating the fusion.
On the left side you can find the “Fusion fields”, i.e., all the distinct fields found in the selected models. In the right side you can select the model you want to map. You will only be able to map the model fields that differ from the fusion fields (see Figure 6.17 ).
If the fusion fields are found in the model with the same name and/or ID, you will not be able to change them (see Figure 6.18 ).
6.4.5 Creating Fusions with Configured Options
After finishing the configuration of your options, you can change the default fusion name in the editable text box. Then you can click on the
button to create the new fusion, or reset the configuration by clicking on the button.6.4.6 API Request Preview
The Figure 6.19 )). This is to show how to create the fusion programmatically: the endpoint of the REST API call and the JSON that specifies the arguments configured in the panel. Please see (Figure 6.20 ) below:
button is in the middle on the bottom of the configuration panel, next to the button (See (There are options on the upper right to either export the JSON or copy it to clipboard. On the bottom there is a link to the API documentation for fusions, in case you need to check any of the possible values or want to extend your knowledge in the use of the API to automate your workflows.
Please note: when a default value for an argument is used in the configuration, the argument won’t appear in the generated JSON. Because during API calls, default values are used when arguments are missing, there is no need to send them in the creation request.