CALIBRATION USING DIFFERENTIAL MACHINE LEARNING
This disclosure describes techniques for calibrating parameters for a model of interest. In one example, this disclosure describes identifying, based on a textual description, a model that generates an output based on a set of inputs; selecting a first plurality of parameter values; assembling a set of training samples by observing outputs generated by the model in response to each of the first plurality of parameter values; training a surrogate model, wherein the surrogate model is trained to predict outputs of the model; generating, using the surrogate model, predicted outputs of the model, wherein each of the predicted outputs of the model is based on a different parameter value in a second plurality of parameter values; selecting, based on the predicted outputs of the model, a desired parameter value; and applying the model, using the desired parameter value, to predict a value of interest for an input value.
1 . A method comprising:
identifying, by a framework and based on a model script, a model that generates an output based on a set of inputs, wherein the inputs include a plurality of parameters;
selecting, by the framework, a first plurality of parameter values;
assembling, by the framework, a set of training samples by observing outputs generated by the model in response to each of the first plurality of parameter values;
training, by the framework and based on the set of training samples, a surrogate model, wherein the surrogate model is trained to predict outputs of the model;
generating, by the framework and using the surrogate model, predicted outputs of the model, wherein each of the predicted outputs of the model is based on a different parameter value in a second plurality of parameter values;
selecting, by the framework and based on the predicted outputs of the model, a desired parameter value; and
applying the model, using the desired parameter value, to predict a value of interest for an input value.
2 . The method of claim 1 , further comprising:
receiving, by a control system, the value of interest;
interpreting, by the control system, the value of interest to determine an action to take; and
outputting, by the control system and over a network to a downstream system, a control signal to control the operation of the downstream system.
3 . The method of claim 1 , wherein selecting the first plurality of parameter values includes:
performing adaptive sampling to mitigate effects caused by variances across the first plurality of parameter values.
4 . The method of claim 1 , wherein assembling the set of training samples includes:
assembling training samples that each include a state value, a parameter value of the first plurality of parameter values, the observed output value, and a derivative of the observed output value with respect to the parameter value.
5 . The method of claim 1 , wherein training the surrogate model includes:
training a deep neural network using least square regression regularized with derivatives of the observed output values with respect to parameter values.
6 . The method of claim 1 , wherein training the surrogate model includes:
training a plurality of surrogate models, where each surrogate model is trained starting with a different random seed.
7 . The method of claim 6 , wherein generating predicted outputs of the model includes:
executing each of the surrogate models in parallel to generate different sets of predicted outputs of the model.
8 . The method of claim 7 , wherein selecting a desired parameter value includes:
selecting a desired one of the plurality of surrogate models based on an assessment of the robustness of the predicted outputs generated by each of the plurality of surrogate models; and
selecting the desired parameter value based on the predicted outputs generated by the desired surrogate model.
9 . The method of claim 1 , wherein selecting the desired parameter value includes:
selecting an optimal parameter value from the second plurality of parameter values, wherein the optimal parameter value tends to maximize the output from the model.
10 . The method of claim 1 , wherein predicting the value of interest includes:
predicting a payoff of an interest rate option contract.
11 . A computing system comprising processing circuitry and a storage device, wherein the processing circuitry has access to the storage device and is configured to:
identify, based on a textual description, a model that generates an output based on a set of inputs, wherein the inputs include a plurality of parameters;
select a first plurality of parameter values;
assemble a set of training samples by observing outputs generated by the model in response to each of the first plurality of parameter values;
train, based on the set of training samples, a surrogate model, wherein the surrogate model is trained to predict outputs of the model;
generate, using the surrogate model, predicted outputs of the model, wherein each of the predicted outputs of the model is based on a different parameter value in a second plurality of parameter values;
select, based on the predicted outputs of the model, a desired parameter value; and
apply the model, using the desired parameter value, to predict a value of interest for an input value.
12 . The computing system of claim 11 , wherein the processing circuitry is further configured to:
receive the value of interest;
interpret the value of interest to determine an action to take; and
output, to a downstream system, a control signal to control the operation of the downstream system.
13 . The computing system of claim 11 , wherein to select the first plurality of parameter values, the processing circuitry is further configured to:
perform adaptive sampling to mitigate an effect caused by variances across the first plurality of parameter values.
14 . The computing system of claim 11 , wherein to assemble the set of training samples, the processing circuitry is further configured to:
assemble training samples that each include a state value, a parameter value of the first plurality of parameter values, the observed output value, and a derivative of the output value with respect to the parameter value.
15 . The computing system of claim 11 , wherein to train the surrogate model, the processing circuitry is further configured to:
train a deep neural network using least square regression regularized with derivatives of the observed output values with respect to the first plurality of parameter values.
16 . The computing system of claim 11 , wherein to train the surrogate model, the processing circuitry is further configured to:
train a plurality of surrogate models, where each is trained starting with a different random seed.
17 . The computing system of claim 16 , wherein to generate predicted outputs of the model, the processing circuitry is further configured to:
execute each of the surrogate models in parallel to generate different sets of predicted outputs of the model.
18 . The computing system of claim 17 , wherein to select a desired parameter value, the processing circuitry is further configured to:
select a desired one of the plurality of surrogate models based on an assessment of the robustness of the predicted outputs generated by each of the plurality of surrogate models; and
select the desired parameter value based on the predicted outputs generated by the desired surrogate model.
19 . The computing system of claim 11 , wherein to select the desired parameter value, the processing circuitry is further configured to:
select an optimal parameter value from the second plurality of parameter values.
20 . A non-transitory computer-readable medium comprising instructions that, when executed, configure processing circuitry of a computing system to:
identify, based on a textual description, a model that generates an output based on a set of inputs, wherein the inputs include a plurality of parameters;
select a first plurality of parameter values;
assemble a set of training samples by observing outputs generated by the model in response to each of the first plurality of parameter values;
train, based on the set of training samples, a surrogate model, wherein the surrogate model is trained to predict outputs of the model;
generate, using the surrogate model, predicted outputs of the model, wherein each of the predicted outputs of the model is based on a different parameter value in a second plurality of parameter values;
select, based on the predicted outputs of the model, a desired parameter value; and
apply the model, using the desired parameter value, to predict a value of interest for an input value.