Bias reduction in machine learning model training and inference
Abstract
One or more default protected attribute values may be determined for a prediction model trained based on training data including a plurality of training observations. Each of the plurality of training observations may include a respective plurality of training data values corresponding with a plurality of features. Each of the plurality of training observations may also include a respective target value. Each of the training observations may include a respective protected attribute value corresponding with a protected attribute feature. A request to determine a designated predicted target value for a designated inference observation may be received after determining the one or more default protected attribute values. The predicted target value may be selected from two or more target values determined by applying the prediction model to an inference observation and potentially one or more default protected attribute values.
Claims
exact text as granted — not AI-modified1 . A method comprising:
determining one or more default protected attribute values for a prediction model trained based on training data including a plurality of training observations, each of the plurality of training observations including a respective plurality of training data values corresponding with a plurality of features, each of the plurality of training observations also including a respective target value, each of the plurality of training observations including a respective protected attribute value corresponding with a protected attribute feature; determining an overlap profile between the protected attribute feature and a designated feature of the plurality of features, the overlap profile indicating a respective degree of overlap among the plurality of training observations between first selected values corresponding to the protected attribute feature and second selected values corresponding to the designated feature; determining based on the overlap profile that a designated one of the respective degrees of overlap indicates a positivity violation; identifying one or more value replacement rules for correcting the positivity violation by replacing a feature value or a protected attribute value; receiving via a communication interface a request to determine a designated predicted target value for a designated inference observation after determining the one or more default protected attribute values, the designated inference observation including a designated plurality of inference data values corresponding with the plurality of features and a designated protected attribute value corresponding with a protected attribute feature; determining a first predicted target value via a processor by applying the prediction model to the designated plurality of inference data values and the designated protected attribute value; determining a replacement data value based on the one or more value replacement rules; updating the designated inference observation in memory to include one or more designated default protected attribute values of the one or more default protected attribute values and the replacement data value replacing a designated inference data value of the designated plurality of inference values; determining a second one or more predicted target values via the processor by applying the prediction model to the updated inference observation; selecting a designated predicted target value of the first predicted target value and the second one or more predicted target values by comparing the first predicted target value and the second one or more predicted target values; and storing the designated predicted target value on a storage device.
2 . The method recited in claim 1 , wherein the second one or more predicted target values include a designated first predicted target value corresponding to a first default protected attribute value and a designated second predicted target value corresponding to a second default protected attribute value.
3 . The method recited in claim 1 , wherein selecting the designated predicted target value comprises selecting a smallest value of the first predicted target value and the second one or more predicted target values.
4 . The method recited in claim 1 , wherein selecting the designated predicted target value comprises selecting a largest value of the first predicted target value and the second one or more predicted target values.
5 . The method recited in claim 1 , wherein the designated predicted target value corresponds to an outcome having an ordinal ranking, and wherein selecting the designated predicted target value comprises selecting a value of the first predicted target value and the second one or more predicted target values having a most positive ordinal ranking for the designated inference observation.
6 . The method recited in claim 1 , the method further comprising:
determining a plurality of evaluation metric values indicating performance of the prediction model for each of a plurality of candidate default protected attribute values, wherein the one or more default protected attribute values are determined at least in part based on the plurality of evaluation metric values.
7 . (canceled)
8 . The method recited in claim 1 , wherein the prediction model is a regression model that includes a plurality of regression coefficients corresponding with the plurality of features, a designated one or more of the plurality of regression coefficients corresponding with the protected attribute feature, wherein determining a designated one of the second one or more predicted target values involves determining a constant term based on a first one of the designated one or more default protected attribute values and the designated one or more regression coefficients.
9 . The method recited in claim 1 , wherein the prediction model is a neural network that includes a plurality of neurons corresponding with the plurality of features, a designated neuron of the plurality of neurons corresponding with the protected attribute feature, wherein determining a designated one of the second one or more predicted target values involves determining a constant value for the designated neuron based on a first one of the designated one or more default protected attribute values.
10 . The method recited in claim 1 , wherein the prediction model is selected from the group consisting of: a tree-based model, a neural network model, and a gradient boosting model.
11 . The method recited in claim 1 , wherein each of the training observations corresponds to a respective individual, and wherein the protected attribute feature is selected from the group consisting of: race, ethnicity, sex, gender, national origin, religion, disability status, age, genetic information, marital status, and receipt of public assistance.
12 . One or more non-transitory computer-readable media having instructions stored thereon for performing a method, the method comprising:
determining one or more default protected attribute values for a prediction model trained based on training data including a plurality of training observations, each of the plurality of training observations including a respective plurality of training data values corresponding with a plurality of features, each of the plurality of training observations also including a respective target value, each of the plurality of training observations including a respective protected attribute value corresponding with a protected attribute feature; determining an overlap profile between the protected attribute feature and a designated feature of the plurality of features, the overlap profile indicating a respective degree of overlap among the plurality of training observations between first selected values corresponding to the protected attribute feature and second selected values corresponding to the designated feature; determining based on the overlap profile that a designated one of the respective degrees of overlap indicates a positivity violation; identifying one or more value replacement rules for correcting the positivity violation by replacing a feature value or a protected attribute value; receiving via a communication interface a request to determine a designated predicted target value for a designated inference observation after determining the one or more default protected attribute values, the designated inference observation including a designated plurality of inference data values corresponding with the plurality of features and a designated protected attribute value corresponding with a protected attribute feature; determining a first predicted target value via a processor by applying the prediction model to the designated plurality of inference data values and the designated protected attribute value; determining a replacement data value based on the one or more value replacement rules; updating the designated inference observation in memory to include one or more designated default protected attribute values of the one or more default protected attribute values and the replacement data value replacing a designated inference data value of the designated plurality of inference values; determining a second one or more predicted target values via the processor by applying the prediction model to the updated inference observation; selecting a designated predicted target value of the first predicted target value and the second one or more predicted target values by comparing the first predicted target value and the second one or more predicted target values; and storing the designated predicted target value on a storage device.
13 . The one or more non-transitory computer-readable media recited in claim 12 , wherein the second one or more predicted target values include a designated first predicted target value corresponding to a first default protected attribute value and a designated second predicted target value corresponding to a second default protected attribute value.
14 . The one or more non-transitory computer-readable media recited in claim 12 , wherein selecting the designated predicted target value comprises selecting a smallest value of the first predicted target value and the second one or more predicted target values.
15 . The one or more non-transitory computer-readable media recited in claim 12 , wherein selecting the designated predicted target value comprises selecting a largest value of the first predicted target value and the second one or more predicted target values.
16 . The one or more non-transitory computer-readable media recited in claim 12 , wherein the designated predicted target value corresponds to an outcome having an ordinal ranking, and wherein selecting the designated predicted target value comprises selecting a value of the first predicted target value and the second one or more predicted target values having a most positive ordinal ranking for the designated inference observation.
17 . The one or more non-transitory computer-readable media recited in claim 12 , the method further comprising:
determining a plurality of evaluation metric values indicating performance of the prediction model for each of a plurality of candidate default protected attribute values, wherein the one or more default protected attribute values are determined at least in part based on the plurality of evaluation metric values.
18 - 19 . (canceled)
20 . A system comprising:
a processor configured to determine one or more default protected attribute values for a prediction model trained based on training data including a plurality of training observations, each of the plurality of training observations including a respective plurality of training data values corresponding with a plurality of features, each of the plurality of training observations also including a respective target value, each of the plurality of training observations including a respective protected attribute value corresponding with a protected attribute feature, wherein the processor is further operable to:
determine an overlap profile between the protected attribute feature and a designated feature of the plurality of features, the overlap profile indicating a respective degree of overlap among the plurality of training observations between first selected values corresponding to the protected attribute feature and second selected values corresponding to the designated feature,
determine based on the overlap profile that a designated one of the respective degrees of overlap indicates a positivity violation, and
identify one or more value replacement rules for correcting the positivity violation by replacing a feature value or a protected attribute value;
a communication interface operable to receive a request to determine a designated predicted target value for a designated inference observation after determining the one or more default protected attribute values, the designated inference observation including a designated plurality of inference data values corresponding with the plurality of features and a designated protected attribute value corresponding with a protected attribute feature, wherein the processor is further configured to:
determine a first predicted target value via a processor by applying the prediction model to the designated plurality of inference data values and the designated protected attribute value,
determine a replacement data value based on the one or more value replacement rules;
update the designated inference observation in memory to include one or more designated default protected attribute values of the one or more default protected attribute values and the replacement data value replacing a designated inference data value of the designated plurality of inference values;
determine a second one or more predicted target values via the processor by applying the prediction model to the updated inference observation;
select a designated predicted target value of the first predicted target value and the second one or more predicted target values by comparing the first predicted target value and the second one or more predicted target values; and
a storage device configured to store the designated predicted target value.Join the waitlist — get patent alerts
Track US2023394366A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.