Mitigating bias in machine learning pipelines
Patent Information
- Application Number
- JP2021066666
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-05-11
- Filing Date
- 2021-04-09
- Publication Date
- 2025-02-19
- Estimated Expiration
- 2041-04-09
Smart Images

Figure 0007632010000011 
Figure 0007632010000012 
Figure 0007632010000013
Abstract
Description
[Technical field]
[0001] The embodiments discussed in this disclosure relate to mitigating bias in machine learning pipelines. [Background technology]
[0002] With advancements in the field of artificial intelligence, many machine learning models are being created and used for various applications, especially sensitive applications such as healthcare applications, finance applications, judicial applications, etc. For example, in finance applications, machine learning models may be used to decide whether to grant a credit card / loan to an individual / company. In the healthcare field, machine learning models may be used to prescribe a particular medication to a patient. Similarly, in the judicial system, machine learning models may be used to decide whether to grant bail to an individual.
[0003] It has been observed in many studies that the results of machine learning models may be biased. For example, machine learning models may be biased against personal sensitive attributes such as race, gender, or age. In many cases, bias may be introduced by individual developers or organizations with conscious or unconscious preferences that may not be discovered until the machine learning model is used. The implementation of such models for the general public may result in unfair treatment, which has led to growing concerns about bias embedded in the results of these machine learning models.
[0004] The subject matter claimed herein is not limited to embodiments that solve any shortcomings or that operate only in environments such as those described above. Rather, this background is provided only to illustrate one example technology area where some embodiments described herein may be practiced. Summary of the Invention
[0005] According to an aspect of an embodiment, the operations may include controlling a user device to display a plurality of task-specific questions on an electronic user interface (UI) of the user device. Each task-specific question of the displayed plurality of task-specific questions may correspond to a check for the presence of bias in one of the series of development phases of the machine learning model. The operations may further include receiving a first input via the electronic UI, the first input may include a plurality of user responses corresponding to the displayed plurality of task-specific questions. The operations may further include determining a set of biases associated with the series of development phases of the machine learning model based on the received first input. The operations may further include controlling the user device to display, on the electronic UI of the user device, the set of determined biases and a set of reasonable actions to mitigate an effect of the set of determined biases on the machine learning model.
[0006] The object and advantages of the embodiments will be realized and attained at least by the elements, features, and combinations particularly pointed out in the claims.
[0007] It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention as claimed. [Brief description of the drawings]
[0008] Example embodiments will be described and explained with additional specificity and detail through the use of the accompanying drawings. [Figure 1] FIG. 1 depicts an example environment for mitigating bias in a machine learning pipeline. [Diagram 2] FIG. 1 is a block diagram of one system for mitigating bias in machine learning models. [Figure 3A] 3A and 3B together show a flowchart of an example method for mitigating bias in a machine learning pipeline. [Figure 3B]3A and 3B together show a flowchart of an example method for mitigating bias in a machine learning pipeline. [Figure 4A] FIG. 1 illustrates an exemplary electronic user interface (UI) for receiving user input for specifying an application-specific problem. [Figure 4B] FIG. 4B illustrates an example electronic user interface (UI) that receives user responses to task-specific questions displayed based on user input via the example electronic user interface of FIG. 4A. [Figure 4C] FIG. 4C illustrates an example electronic user interface (UI) that displays an analysis of user responses received via the example electronic UI of FIG. 4B.
[0009] All according to at least one embodiment described in this disclosure. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] Some embodiments described in the present disclosure relate to a method and a non-transitory computer-readable medium for mitigating bias in a machine learning pipeline for the development of machine learning (ML) models. From studies, it has been observed that the results of ML models may be biased. In the context of machine learning, bias may be defined as an occurrence / instance of systematic prejudice observed in the results of a machine learning model. For example, an ML model may be biased against sensitive attributes of an individual, such as race, gender, or age. In many cases, bias may be introduced by an individual developer or organization, who may have conscious or unconscious preferences that may not be discovered until the ML model is used. The implementation of such models for the general public may result in unfair treatment, which leads to increasing concerns about bias embedded in the results of these machine learning models. It is therefore imperative that developers or organizations evaluate their ML models for bias and act towards mitigating the effects of bias in the ML models.
[0011] For example, if a model is to be developed to assess the sentencing and parole of convicted criminals to address the problem of overcrowded prisons, a dataset of many prisoners may be collected. An ML model may be trained on various features of each prisoner to predict a risk score that may be used to identify prisoners who are less likely to commit crimes if released on parole. Such features may include questions such as whether one of the prisoner's parents has ever been in prison, or whether a friend or acquaintance has ever been in prison, or questions regarding the prisoner's gender, prisoner's age, prisoner's religion, or prisoner's race, etc. Some of the features, such as questions regarding race, religion, or gender, may not be appropriate for training an ML model. For example, if there are more prisoners of a particular religion, race, or gender in a prison, the ML model may be more likely to predict a high risk score for such prisoners.
[0012] Previous methods, such as the What-if tool by Google, IBM AI fairness360 tool, Microsoft Research's Bias Project that learns unbiased word embeddings, and the Accenture Fairness Tool, rely on a set of algorithms that can detect bias in ML models. Nearly all of the above tools use algorithms that focus on the computational source of bias in ML models. Several other guidelines have also been proposed to address bias in machine learning pipelines. Some of these guidelines include the use of documentation for released ML models. By reading these documentations, developers can identify bias in their version of the ML model and act to mitigate the impact of such bias on the results of the ML model. Other guidelines include the use of datasheets for datasets. Datasheets typically provide the creation, configuration, intended use, maintenance, or other characteristics of the dataset. Developers can use such datasheets to properly use the datasets so that bias is not introduced into ML models that may be developed using their datasets. Some other guidelines suggest that future research should focus on supporting experts in collecting and curating quality datasets. However, the above guidelines are only specific to the dataset creation phase in a machine learning pipeline.
[0013] In contrast to conventional methods and guidelines, the disclosed method spans all development phases involved in the ML pipeline, i.e., from dataset creation to problem formulation, data analysis and evaluation. Unlike existing algorithms that focus primarily on computational sources of bias, the disclosed method spans an exhaustive set of biases that may occur within the ML pipeline. The disclosed method can assist users / developers in identifying biases and in gaining insight into potential ways to reduce / mitigate biases. For example, users may have access to a digital assistant that can guide different types of users (machine learning developers, consumers) in identifying different sources of biases that may occur in their ML pipeline, starting from data collection and preparation to problem formulation, data analysis, and evaluation steps. Furthermore, use-sheets may be displayed to users to educate them on the types of biases present in their ML pipeline and list some application limitations of the (trained) ML model, thereby providing guidance on when not to use the learned model given the type of bias.
[0014] Embodiments of the present disclosure will now be described with reference to the accompanying drawings.
[0015] 1 is a diagram depicting an example environment for mitigating bias in a machine learning pipeline, arranged in accordance with at least one embodiment described in the present disclosure. With reference to FIG. 1, an example environment 100 is shown. In the example environment 100, a system 102 and a user device 104 are shown. Also shown are an electronic user interface (UI) 106 rendered on the user device 104, a curated questions repository 108, and a communication network 110. The system 102 and the user device 104 may be communicatively coupled to one another via the communication network 110. Also shown is a user 112 that may be associated with the user device 104. Examples of the user device 104 may include, but are not limited to, a mobile device, a desktop computer, a laptop, a computer workstation, a server such as a cloud server, or a group of servers.
[0016] The system 102 may include appropriate logic, circuitry, and interfaces that may be configured to receive user input including an application-specific problem associated with a machine learning (ML) model. The application-specific problem may define an objective / goal for which the ML model may be developed to provide a solution. The ML model may implement one or more machine learning methods, such as, but not limited to, classification methods (e.g., logistic regression, decision trees, random forests, gradient-boosted trees, neural networks, and Naive Bayes), clustering methods (e.g., K-means or Mean-Shift clustering algorithms), kernel methods, and heuristic / metaheuristic methods.
[0017] An application-specific problem may indicate or imply a problem (e.g., a business problem, a research problem, a social problem, etc.) and / or a problem application field (e.g., finance, healthcare, security, etc.). In some examples, an application-specific problem may indicate or imply a machine learning task (e.g., classification, regression, or clustering) associated with the problem. As an example, in a finance application, the application-specific problem may be a business problem such as credit card fraud detection, or approving / rejecting a credit card application. In a healthcare application, the application-specific problem may be a healthcare problem such as identifying cancerous tumors from mammograms, predicting hospitalization requirements based on health data, or classifying image / volumetric data of tissue tumors as benign or malignant. Other examples of application-specific problems may include, but are not limited to, face detection, text-to-speech or speech-to-text conversion, semantic or panoptic scene segmentation for autonomous driving, or sentiment analysis of social media posts.
[0018] In one or more embodiments, the system 102 can retrieve a plurality of task-specific questions from a curated questions repository 108 based on application-specific problems associated with machine learning (ML) models. The curated questions repository 108 can include a curated set (or templates) of task-specific questions for various application-specific problems. Each task-specific question can be associated with a tag that can be used to categorize the respective task-specific question under one of a series of development phases of an ML model (also referred to as an ML pipeline).
[0019] In one or more embodiments, the sequence of development phases of an ML model may include a dataset creation phase, a problem formulation phase, a data analysis phase, and an evaluation phase. In the dataset creation phase, a user 112 (e.g., a developer or analyst) may be responsible for collecting raw data from various sources, data cleaning (which may include data deduplication, data standardization, data normalization, and quality checks of the cleaned data), data ingestion, data preparation, and data separation (i.e., splitting the prepared dataset into a test set, a training set, and a validation set). In the problem formulation phase, the user 112 may be responsible for defining the problem and the solution to the problem that the ML model should provide. In the data analysis phase, the user 112 may be responsible for analyzing the dataset (e.g., a test set and a training set) for the selection of a set of input variables for the ML model. In the evaluation phase, the user 112 may be responsible for evaluating the results and performance (e.g., in terms of appropriate performance metrics or ablation studies of the ML model) of the trained ML model on the validation or test dataset. In these or other embodiments, the series of development phases may further include a model training phase, in which user 112 may be responsible for selecting an appropriate ML algorithm to be implemented by the ML model, training the ML model on a training dataset, and tuning the hyperparameters of the ML model.
[0020] Each task-specific question of the derived plurality of task-specific questions may correspond to checking for the presence of bias in one of a set of development phases of an ML model associated with an application-specific problem. For example, the derived plurality of task-specific questions may correspond to one or more of a dataset creation phase, a problem formulation phase, a data analysis phase, and an evaluation phase. Such task-specific questions may be used to identify potential sources of bias in the set of development phases.
[0021] The system 102 can display the retrieved task-specific questions on the electronic UI 106 of the user device 104. For example, the electronic UI 106 can display each of a series of development phases as a user-selectable button that, when selected, can incrementally display task-specific questions belonging to the respective development phase. Such questions can be selected from the retrieved task-specific questions.
[0022] The system 102 can receive a first input via the electronic UI 106 displayed on the user device 104. The first input can include a plurality of user responses corresponding to the plurality of displayed task-specific questions. In one or more embodiments, the plurality of user responses can include objective responses, such as yes or no, true or false, applicable or not applicable, select or not select, include or exclude, etc. In some other embodiments, the plurality of user responses can include subjective answers to some of the plurality of displayed task-specific questions. In these or other embodiments, the electronic UI 106 can allow the user 112 to skip questions from among the plurality of displayed task-specific questions. Based on the received first input, the system 102 can determine a set of biases associated with a sequence of development phases of the ML model. Such determination can be based on using a rule-based approach (e.g., if-then rules) or using sophisticated ensemble learning approaches, such as random forests or random subspaces. Details related to determining the set of biases are provided, for example, in FIG. 3A and FIG. 3B.
[0023] In one or more embodiments, the set of determined biases may include one or more of sample selection bias, measurement bias, label bias, negative set bias, framing effect bias, confounding bias, omitted variable bias, proxy variable bias, design-related bias, sample treatment bias, confirmation or belief bias, and algorithmic bias. In the context of machine learning and statistics, these types of biases are well known to those skilled in the art. Thus, a description of each type of bias is omitted from the disclosure for the sake of brevity.
[0024] The system 102 can control the user device 104 to display the set of determined biases and a set of plausible actions to mitigate the effect of the determined set of biases on the ML model. The set of plausible actions may include suggestions to reduce or mitigate the effect of the determined set of biases on the ML model. In one or more embodiments, each such suggestion may include one or more steps to correct or revert past user actions associated with a succession of development phases of the ML model.
[0025] The set of reasonable actions, when followed, can aid user 112 in mitigating the effects of the determined set of biases on the ML model. By following the set of reasonable actions, user 112 can correct, review, and revise some or all of the past user actions associated with a series of development phases. For example, user 112 may redefine the application-specific problem, update the datasets (such as the training dataset, the test dataset, and the validation dataset), reselect appropriate variables for the ML model, and reevaluate the results of the ML model based on the reselected variables and the updated datasets.
[0026] After the user 112 acts on the set of reasonable actions, the system 102 may control the user device 104 to re-display the task-specific questions on the electronic UI 106. This may be performed to re-check whether the ML model is still affected by one or more of the set of determined biases. The user 112 may be provided with an option to answer or skip the particular question. If the ML model is found to be affected by one or more of the set of determined biases, the system 102 may again display one or more reasonable actions to mitigate the effect of such biases on the ML model.
[0027] It should be noted here that communication between the system 102 and the user device 104 may occur via a communication network 110. The communication network 110 may include a communication medium through which the system 102 may communicate with the user device 104 and / or different devices (not shown). Examples of the communication network 110 may include, but are not limited to, the Internet, a cloud network, a Wireless Fidelity (Wi-Fi) network, a personal area network (PAN), a local area network (LAN), and / or a metropolitan area network (MAN). The various devices in the exemplary environment 100 may be configured to connect to the communication network 110 according to various wired and wireless communication protocols. Examples of such wired and wireless communication protocols may include, but are not limited to, at least one of Transmission Control Protocol and Internet Protocol (TCP / IP), User Datagram Protocol (UDP), Hypertext Transfer Protocol (HTTP), File Transfer Protocol (FTP), ZigBee, EDGE, IEEE 802.11, Light Fidelity (Li-Fi), 802.16, IEEE 802.11s, IEEE 802.11g, multi-hop communications, wireless access points (AP), device-to-device communications, cellular communications protocols, and / or Bluetooth (BT) communications protocols, or combinations thereof.
[0028] Modifications, additions, or omissions may be made to the system 102 without departing from the scope of the present disclosure. For example, a curated questions repository 108 may be stored in the system 102.
[0029] Figure 2 is a block diagram of a system for mitigating bias in machine learning models, arranged in accordance with at least one embodiment described in the present disclosure. Figure 2 is described in conjunction with elements of Figure 1. With reference to Figure 2, a block diagram 200 of the system 102 of Figure 1 is shown. The system 102 may include a processor 202, a memory 204, a persistent data storage 206, an input / output device 208, and a network interface 210. Additionally, the system 102 may include a curated question repository 108.
[0030] The processor 202 may include suitable logic, circuitry, and / or interfaces that may be configured to execute program instructions associated with different operations to be performed by the system 102. The processor 202 may include any suitable special purpose or general purpose computer, computing entity, or processing device, including various computer hardware or software modules, and may be configured to execute instructions stored on any applicable computer readable storage medium. For example, the processor 202 may include a microprocessor, a microcontroller, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or any other digital or analog circuitry configured to interpret and / or execute program instructions and / or process data. Although shown as a single processor in FIG. 2, the processor 202 may include any number of processors configured to individually or collectively perform or direct the execution of any number of operations of the system 102 described in this disclosure. Additionally, one or more of the processors may reside in one or more different electronic devices, such as different servers.
[0031] In some embodiments, the processor 202 may be configured to interpret and / or execute program instructions and / or process data stored in the memory 204 and / or persistent data storage 206. In some embodiments, the processor 202 may retrieve program instructions from the persistent data storage 206 and load the program instructions into the memory 204. After the program instructions are loaded into the memory 204, the processor 202 may execute the program instructions. Some examples of the processor 202 may be a graphical processing unit (GPU), a central processing unit (CPU), a reduced instruction set computer (RISC) processor, an application specific integrated circuit (ASIC) processor, a complex instruction set computer (CISC) processor, a co-processor, and / or combinations thereof.
[0032] Memory 204 may include appropriate logic, circuitry, and / or interfaces that may be configured to store program instructions executable by processor 202. In particular embodiments, memory 204 may be configured with information related to various types of biases, plausible actions to mitigate biases determined in the ML model, plausible causes of each bias, and / or information associated with the plausible impact of each bias on the results / performance of the ML model. Memory 204 may include computer-readable storage media that carry or have stored computer-executable instructions or data structures. Such computer-readable storage media may include any available media that can be accessed by a general-purpose or special-purpose computer, such as processor 202.
[0033] By way of example and not limitation, such computer-readable storage media may include tangible or non-transitory computer-readable storage media including random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), compact disk read-only memory (CD-ROM) or other optical disk storage, magnetic disk storage or other magnetic storage devices, flash memory devices (e.g., solid-state memory devices), or any other storage medium that can be used to carry or store specific program code in the form of computer-executable instructions or data structures and that can be accessed by a general-purpose or special-purpose computer. Combinations of the above may also be included within the scope of computer-readable storage media. Computer-executable instructions may include, for example, instructions and data configured to cause processor 202 to perform a particular operation or group of operations associated with system 102.
[0034] Persistent data storage 206 may include appropriate logic, circuitry, and / or interfaces that may be configured to store program instructions executable by processor 202 and a description of all possible types of biases that may be present in the ML model. Persistent data storage 206 may include computer-readable storage media that carry or have stored computer-executable instructions or data structures. Such computer-readable storage media may include any available media that can be accessed by a general-purpose or special-purpose computer, such as processor 202.
[0035] By way of example, and not limitation, such computer-readable storage media may include tangible or non-transitory computer-readable storage media, including compact disk read-only memory (CD-ROM) or other optical disk storage devices, magnetic disk storage devices or other magnetic storage devices (e.g., hard disk drives (HDD)), flash memory devices (e.g., solid-state drives (SSD), secure digital (SD) cards, other solid-state memory devices), or any other storage medium that can be used to carry or store specific program code in the form of computer-executable instructions or data structures and that can be accessed by a general-purpose or special-purpose computer. Combinations of the above may also be included within the scope of computer-readable storage media. Computer-executable instructions may include, for example, instructions and data configured to cause processor 202 to perform a particular operation or group of operations associated with system 102.
[0036] The I / O devices 208 may include appropriate logic, circuitry, interfaces, and / or code that may be configured to receive user input. The I / O devices 208 may be further configured to provide output in response to the user input. The I / O devices 208 may include a variety of input and output devices that may be configured to communicate with the processor 202 and other components, such as the network interface 210. Examples of input devices may include, but are not limited to, a touch screen, a keyboard, a mouse, a joystick, and / or a microphone. Examples of output devices may include, but are not limited to, a display device and a speaker.
[0037] The network interface 210 may include suitable logic, circuitry, interfaces, and / or code that may be configured to establish communications between the system 102 and the user device 104 over the communications network 110. The network interface 210 may be implemented using various known technologies to support wired or wireless communications of the system 102 over the communications network 110. The network interface 210 may include, but is not limited to, an antenna, a radio frequency (RF) transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a coder-decoder (codec) chipset, a subscriber identity module (SIM) card, and / or a local buffer.
[0038] The network interface 210 may communicate via wireless communication with the Internet, an intranet, and / or a wireless network, such as a cellular telephone network, a wireless local area network (LAN), and / or a metropolitan area network (MAN), etc. The wireless communication may use any of a number of communication standards, protocols, and technologies, such as Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), wideband code division multiple access (W-CDMA), Long Term Evolution (LTE), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth, Wireless Fidelity (Wi-Fi) (e.g., IEEE802.11a, IEEEE802.11b, IEEEE802.11g, and / or IEEE802.11n), Voice over Internet Protocol (VoIP), Light Fidelity (Li-Fi), or Wi-MAX.
[0039] In certain embodiments, the system 102 may be divided into a front-end subsystem and a back-end subsystem. The front-end subsystem may be configured to simply receive requests / instructions from one or more of the user device 104, a third-party server, a web server, a client machine, and a back-end subsystem. These requests may be communicated behind the scenes to the back-end subsystem, which may be configured to act on these requests. For example, if the system 102 includes multiple servers, some of the servers may be front-end servers configured to relay requests / instructions to the remaining servers associated with the back-end subsystem.
[0040] Modifications, additions, or omissions may be made to system 102 without departing from the scope of the present disclosure. For example, in some embodiments, system 102 may include any number of other components that may not be explicitly illustrated or described.
[0041] Figures 3A and 3B together illustrate a flowchart of an example method for mitigating bias in a machine learning pipeline, according to at least one embodiment described in this disclosure. Figures 3A and 3B are described in conjunction with elements of Figures 1 and 2. With reference to Figures 3A and 3B, a flowchart 300 is shown. The method illustrated in flowchart 300 may begin at 302 and may be performed by any suitable system, apparatus, or device, such as system 102 of Figures 1 or 2.
[0042] At 302, user input may be received. The user input may include an application-specific problem associated with the ML model. In one or more embodiments, the processor 202 may receive the user input via an electronic UI 106 of the user device 104. One example implementation of the electronic UI 106 for receiving user input is provided, for example, in FIG. 4A.
[0043] An application-specific problem may define an objective / goal for which an ML model may be developed to provide a solution. An application-specific problem may indicate or imply a problem (e.g., a business problem, a research problem, a societal problem, etc.). For example, in the banking and finance domain, an application-specific problem may be a business problem related to approving loans for bank customers or detecting fraud in credit card transactions. Similarly, in the security domain, an application-specific problem may be a security problem of detecting intruders or thieves for home security.
[0044] In some examples, the application-specific problem may further include the application field of the problem. Examples of application fields may include, but are not limited to, virtual assistance, medical diagnosis, statistical arbitrage, healthcare, banking and finance, justice, autonomous driving, advertising / marketing, and security. In some other examples, the application-specific problem may indicate or imply a machine learning task (e.g., classification, regression, or clustering) associated with the problem. For example, the problem of fraud detection in credit card transactions may be determined as the machine learning tasks of clustering and outlier detection.
[0045] At 304, a plurality of task-specific questions may be retrieved based on the application-specific problem associated with the ML model. In one or more embodiments, the processor 202 may retrieve a plurality of task-specific questions associated with the application-specific problem from the curated question repository 108. Each task-specific question of the retrieved plurality of task-specific questions may correspond to checking for the presence of bias in one of a series of development phases of the machine learning model. For example, the series of development phases of the ML model may include a dataset creation phase, a problem formulation phase, a data analysis phase, and an evaluation phase. Details related to the series of development phases are provided, for example, in FIG. 1.
[0046] The curated questions repository 108 can store a curated set of task-specific questions for various application-specific problems. In one or more embodiments, the processor 202 can extract keywords associated with the application-specific problems and can retrieve a plurality of task-specific questions by searching the curated questions repository 108 using the extracted keywords. In some examples, each task-specific question may be associated with a tag that can be used to categorize the respective task-specific question under one of a series of development phases (also referred to as an ML pipeline) of an ML model. In such a case, the processor 202 can retrieve a plurality of task-specific questions by filtering the curated set of task-specific questions using the tag associated with each task-specific question. An example of retrieved questions for a series of development phases is provided in Table 1 as follows: [Table 1]
[0047] As another example, several task-specific questions about the problem of approving or denying a credit card application are provided in Table 2 as follows: [Table 2]
[0048] At 306, the user device 104 may be controlled to display the retrieved task-specific questions on the electronic UI 106 of the user device 104. In one or more embodiments, the processor 202 may control the user device 104 to display the retrieved task-specific questions on the electronic UI 106 of the user device 104. By way of example and not limitation, each of the dataset creation phase, problem formulation phase, data analysis phase, and evaluation phase may be displayed as a user selectable button that, when selected, may display task-specific questions belonging to the respective development phase. One exemplary implementation of the electronic UI 106 for displaying task-specific questions is provided, for example, in FIG. 4B.
[0049] At 308, a first input may be received via the electronic UI 106 of the user device 104. The first input may include a plurality of user responses corresponding to the displayed plurality of task-specific questions. In one or more embodiments, the plurality of user responses may include objective responses, such as yes or no, true or false, applicable or not applicable, select or not select, include or exclude, etc. In some other embodiments, the plurality of user responses may include subjective answers to some of the displayed plurality of task-specific questions. In these or other embodiments, the electronic UI 106 may allow the user 112 to skip questions from among the displayed plurality of task-specific questions.
[0050] User-selectable options, such as radio buttons, check boxes, or text boxes, may be displayed next to each task-specific question on the electronic UI 106. The user 112 can provide a first input by selecting a radio button or check box, or by entering a user response in a text box. One exemplary implementation of the electronic UI 106 for providing a user response is provided, for example, in FIG. 4B.
[0051] At 310, a set of biases associated with successive development phases of the ML model may be determined based on the received first input. Such determination may be based on using a rule-based approach (e.g., if-then rules). Example operations for determining a set of biases using a rule-based approach are described herein at 310A-310J.
[0052] At 310A, a development phase of a sequence of development phases for the ML model may be selected. The selected development phase may be one of a dataset creation phase, a problem formulation phase, a data analysis phase, or an evaluation phase.
[0053] At 310B, a task-specific question may be selected from the displayed plurality of task-specific questions. The selected task-specific question may be associated with a development phase that may be selected at 310A. For example, from Table 1, if the selected development phase is the dataset creation phase, the first question may be selected from questions 1-5.
[0054] At 310C, a user response corresponding to the selected task-specific question may be retrieved from the plurality of user responses (at 308). At 310D, it may be determined whether the user response indicates a bias associated with a selected development phase of the ML model. For example, a user response of "no" to the question "Are the samples used to create the dataset representative of the real world?" may indicate a bias in the data creation phase. If the user response indicates a bias, control may proceed to 310E. If not, control may proceed to 310F.
[0055] At 310E, biases associated with the ML model may be determined based on the user responses (retrieved at 310C). The determined biases may include one of sample selection bias, measurement bias, label bias, negative set bias, framing effect bias, confounding bias, omitted variable bias, surrogate variable bias, design-related bias, sample treatment bias, confirmation or belief bias, or algorithmic bias.
[0056] Referring to the previous example, bias may be determined as sample selection bias based on user responses. Sample selection bias is typically introduced when the selection of individuals, groups, or data for analysis is not performed with proper randomization. This may result in a dataset that may not represent the population intended to be analyzed by the ML model. For example, in a case-control study of smoking and chronic lung disease, the association of exposure with disease may tend to be weaker if controls are selected from patients admitted to a hospital than if controls are selected from a community of all types of people.
[0057] At 310F, it may be determined whether there are more task-specific questions to be selected for the selected development phase. If there are more task-specific questions for the selected development phase, control may proceed to 310G. If not, control may proceed to 310H.
[0058] At 310G, a next task-specific question associated with the selected development phase may be selected from the plurality of task-specific questions. The operations of 310C-310F may be repeated for the next task-specific question associated with the selected development phase and all subsequent questions until no further questions remain to be checked for the selected development phase.
[0059] At 310H, it may be determined whether there are further development phases to be selected from the set of development phases. If there are further development phases to be selected, control may proceed to 310I. If not, control may proceed to 310J.
[0060] In 310I, a next development phase may be selected from the set of development phases. For example, if a data creation phase was selected initially, the next development phase may be selected as a problem formulation phase. Operations 310B-310H may be repeated for the next development phase and subsequent development phases until no further development phases remain to be selected from the set of development phases.
[0061] At 310J, a bias corresponding to a selected task-specific question from the displayed plurality of task-specific questions may be included in the set of biases. An example of a set of biases for some of the task-specific questions in Table 1 is provided in Table 3 as follows: [Table 3]
[0062] In one or more embodiments, determining the set of biases may be performed using an elaborate ensemble-based learning approach, such as random forests or random subspaces. Effectively, using an ensemble-based learning approach, multiple user responses may be combined with multiple task-specific questions across a series of development phases to determine the combination of user responses that causes the most significant impact (in terms of the presence of bias) on the ML model.
[0063] For example, a set of decision trees may be constructed based on the retrieved task-specific questions, and then based on an ensemble-based learning approach, the constructed set of decision trees may be trained against the task-specific questions to minimize the impact of erroneous user actions associated with the sequential development phases of the ML model.
[0064] In general, an ensemble-based learning approach combines several models (or decision trees) to provide better predictive performance than a single model. The main principle behind an ensemble-based learning approach is that a group of weak learners together can form a strong learner and thus increase the accuracy rate of the model. This approach may require setting a cost for an incorrect user action, where the cost may be defined in terms of a measurable metric such as type 1 error or type 2 error. After training, a set of biases associated with a succession of development phases of the ML model may be determined based on the set of trained decision trees and the received first input (at 308).
[0065] At 312, a plausible cause for the presence of each bias in the set of biases (determined at 310) may be determined based on the received first input. The plausible cause may correspond to a user action associated with one of a dataset creation phase, a problem formulation phase, a data analysis phase, and an evaluation phase. An example of a plausible cause for the presence of the set of biases in Table 3 is provided in Table 4 as follows: [Table 4]
[0066] At 314, based on the received first input, a plausible impact on the ML model of each bias in the set of determined biases may be determined. In one or more embodiments, the plausible impact may be expressed in terms of an error in the ML model's results, a performance metric of the ML model, an inconsistency in the ML model's results, a group of people / data subjects that may be affected by the biased results of the ML model, or an impact on a potential software application that may depend on the biased results of the ML model. Examples of performance metrics may include, but are not limited to, Mean Absolute Error (MAE), Root mean squared error (RMSE), correlation, recall, F1-score, and Area Under the ROC Curve (ROC AUC). An example of a plausible impact of each of the set of determined biases in Table 3 is presented in Table 5 as follows: [Table 5]
[0067] At 316, a set of plausible actions for mitigating the effect of the determined set of biases on the ML model may be determined based on the received first input. The set of plausible actions may include suggestions for reducing or mitigating the impact of the determined set of biases on the ML model. In one or more embodiments, each such suggestion may include one or more steps for correcting or undoing an erroneous action of the user 112 associated with a succession of development phases of the ML model. An example of a set of plausible actions for mitigating the effect of the determined set of biases of Table 3 is provided in Table 6 as follows: [Table 6]
[0068] At 318, the user device 104 may be controlled to display on the electronic UI 106 the set of determined biases (e.g., as shown in Table 3), first text content describing a plausible cause of each bias in the set of determined biases (e.g., as shown in Table 4), second text content describing a plausible impact of each bias in the set of determined biases on the ML model (e.g., as shown in Table 5), and third text content describing a set of determined plausible actions for mitigating the effect of the set of determined biases on the ML model (e.g., as shown in Table 6).
[0069] The set of reasonable actions, when followed, can aid the user 112 in mitigating the effects of the determined set of biases on the ML model. By following the set of reasonable actions, the user 112 can correct, review, and revise some or all of the past user actions associated with a series of development phases. For example, the user 112 can redefine the application-specific problem, update the datasets (such as the training dataset, the test dataset, and the validation dataset), reselect appropriate variables for the ML model, or reevaluate the results of the ML model based on the reselected variables and the updated dataset. After the user 112 acts according to the set of reasonable actions, the user device 104 can be controlled to redisplay a number of task-specific questions on the electronic UI 106. This can be performed to recheck whether the ML model is still affected by one or more of the determined set of biases. The user 112 can be provided with the option to answer or skip the particular question. If the ML model is found to be affected by one or more of the set of determined biases, one or more appropriate actions may be displayed on the electronic UI 106 to mitigate the effects of such biases on the ML model.
[0070] Control may proceed to an end. Flowchart 300 is illustrated as individual operations, such as 302, 304, 306, 308, 310, 310A, 310B, 310C, 310D, 310E, 310F, 310G, 310H, 310I, 310J, 312, 314, 316, and 318. However, in particular embodiments, such individual operations may be further divided into additional operations, combined into fewer operations, or eliminated, depending on the particular implementation, without departing from the essence of the disclosed embodiments.
[0071] FIG. 4A illustrates an example electronic user interface (UI) that receives user input to specify an application-specific problem, according to at least one embodiment described in the present disclosure. FIG. 4A is described in conjunction with elements of FIG. 1, FIG. 2, FIG. 3A, and FIG. 3B. With reference to FIG. 4A, an electronic UI 400A is shown that may be an example implementation of the electronic UI 106 of FIG. 1. The electronic UI 400A may be displayed on the user device 104 based on a user request that may be received via an application interface displayed on a display screen of the user device 104. The application interface may be part of application software for bias mitigation in machine learning pipelines, such as a software development kit (SDK), a cloud server-based application, a web-based application, an OS-based application / application suite, an enterprise application, a mobile application.
[0072] On the electronic UI 400A, a set of UI elements are shown, such as UI element 402 and UI element 404. UI element 402 may include UI element 402A, which may be labeled, for example, as "Specify Problem" and may be a text box. User 112 may be able to enter the application-specific problem in the text box. Through UI element 402, the application-specific problem may be received as user input from user 112. As shown, for example, the application-specific problem is "Credit Card Authorization."
[0073] In one or more embodiments, UI element 402A may include a drop-down menu that, when selected, may display a curated list of predefined application-specific problems. From the curated list of predefined application-specific problems, user 112 may be able to select the application-specific problem for which an ML model is / should be developed. UI element 404 may be a button and may be labeled as "Submit." User 112 may click the button to submit the application-specific problem as user input to system 102.
[0074] It should be noted that the electronic UI 400A is provided only as one example implementation of the electronic UI 106 of FIGURE 1 and should not be construed as a limitation on the scope of the present disclosure. The present disclosure may also be applicable to other modifications, deletions, or additions to the electronic UI 400A without departing from the scope of the present disclosure.
[0075] Figure 4B illustrates an example electronic user interface (UI) that receives a user response to a task-specific question displayed based on user input via the example electronic user interface of Figure 4A, according to at least one embodiment described in this disclosure. Figure 4B will be described in conjunction with elements of Figures 1, 2, 3A, 3B, and 4A. With reference to Figure 4B, an electronic UI 400B is shown, which may be an example implementation of the electronic UI 106 of Figure 1.
[0076] A set of UI elements is shown on electronic UI 400B, such as UI element 406, UI element 408, UI element 410, and UI element 412. Through UI element 406, UI element 408, UI element 410, and UI element 412, user 112 may be able to view a number of task-specific questions corresponding to successive development phases of an ML model and provide a number of user responses (i.e., first inputs to system 102) to the corresponding task-specific questions.
[0077] UI element 406 may be labeled "Development Phases" and may display a series of development phases of an ML model for recommending approval or rejection of a credit card application. The development phases of the ML model may include a dataset creation phase, a problem formulation phase, a data analysis phase, and an evaluation phase. A description of each of the series of development phases is provided, for example, in FIGS. 1 and 3.
[0078] UI element 408 may be labeled “Task-Specific Questions.” Each development phase in the series may be rendered as a user-selectable option that, when selected, triggers UI element 408 to display a subset of task-specific questions associated with the development phase that may be selected via UI element 406.
[0079] The displayed subset of task-specific questions may be retrieved from the curated question repository 108 and may correspond to one of the dataset creation phase, the problem formulation phase, the data analysis phase, and the evaluation phase of the ML model. An example of multiple task-specific questions for a credit card application approval / denial problem is provided in Table 7 as follows: [Table 7]
[0080] The UI elements 410 may be labeled as “User Responses” and may include UI element 410A and / or UI element 410B for each task-specific question. UI element 410A may include a set of radio buttons and UI element 410B may include a text box. Each of the set of radio buttons may be mapped to a type of user response, such as yes or no, true or false, applicable or not applicable, and inclusion or exclusion. For each task-specific question on UI element 408, user 112 may provide a user response by selecting one of the set of radio buttons on UI element 410A. In some cases, instead of selecting a radio button, user 112 may enter a user response to the respective task-specific question into a text box on UI element 410B. For example, for question #5 “Are the values of stakeholders taken into consideration?”, a user response may be provided as “Yes” by selecting the radio button mapped to “Yes” on UI element 410A. As another example, for question 7, "Is it for a company, a regulator or an Applicant?", the user response may be entered as "Company" in the text box of UI element 410B.
[0081] The UI element 412 may be a button and may be labeled as "Next Phase." By clicking the UI element 412, the system 102 may display another subset of the task-specific questions corresponding to the next development phase of the ML model. When a user response to each of the task-specific questions has been received, the user 112 may click the UI element 412 to display an analysis of the user responses. Such an analysis may include a set of biases associated with the ML model, plausible causes / sources of the set of biases, plausible effects of each of the set of biases on the ML model, and a set of plausible actions to mitigate the effect of the set of biases on the ML model. Details related to the analysis of the displayed user responses are provided, for example, in FIG. 4C.
[0082] It should be noted that the electronic UI 400B is provided only as one example implementation of the electronic UI 106 of FIGURE 1 and should not be construed as a limitation on the scope of the present disclosure. The present disclosure may also be applicable to other modifications, deletions, or additions to the electronic UI 400B without departing from the scope of the present disclosure.
[0083] Figure 4C illustrates an example electronic user interface (UI) displaying an analysis of user responses received via the example electronic UI of Figure 4B, according to at least one embodiment described in this disclosure. Figure 4C will be described in conjunction with elements of Figures 1, 2, 3A, 3B, 4A, and 4B. With reference to Figure 4C, an electronic UI 400C is shown, which may be an example implementation of the electronic UI 106 of Figure 1.
[0084] Shown on electronic UI 400C are a set of UI elements, such as UI element 414, UI element 416, UI element 418, UI element 420, and UI element 422. Through UI element 414, UI element 416, UI element 418, UI element 422, and UI element 422, user 112 may be able to see a set of biases associated with the ML model, plausible causes / sources of the set of biases, and plausible effects of each of the set of biases on the ML model, and a set of plausible actions for mitigating the effect of the set of biases on the ML model.
[0085] The system 102 can control the user device 104 to display a UI element 414 as a first use-sheet on the electronic UI 400C, the UI element 414 including a set of biases and a description of each bias in the set of biases. The set of biases can be determined based on a first input received via the electronic UI 400B of FIG. 4B. The set of biases may include, for example, sample selection bias, measurement bias, label bias, negative set bias, framing effect bias, confounding bias, proxy variable bias, and sample treatment bias.
[0086] The system 102 can further control the user device 104 to display a UI element 416 on the electronic UI 400C including first text content describing the plausible causes of the presence of each bias in the set of biases. An example of the first text content describing the plausible causes of the presence of each bias is provided in Table 8 as follows: [Table 8]
[0087] The system 102 can further control the user device 104 to display a UI element 418 on the electronic UI 400C including second text content describing the plausible impact of each bias in the set of biases on the ML model. For example, second text content describing the plausible impact of each bias in the set of biases on the ML model for a credit card application approval / denial problem is provided in Table 9 as follows: [Table 9]
[0088] The system 102 can further control the user device 104 to display a UI element 420 on the electronic UI 400C that includes the set of biases and a set of reasonable actions for mitigating the effect of the set of biases on the ML model. For example, a third text content describing a set of reasonable actions for mitigating the effect of the set of biases on the ML model (for a credit card application approval / rejection problem) is provided in Table 10 as follows: [Table 10]
[0089] UI element 422 is labeled as "Recheck." By clicking on UI element 422, user 112 may be redirected to electronic UI 400B, where user 112 may be provided with options to reevaluate and / or revise user responses corresponding to task-specific questions. UI element 422 may help user 112 review their past actions / responses as user 112 acts upon a set of reasonable actions to mitigate the effect of a set of biases on the ML model.
[0090] It should be noted that the electronic UI 400C is provided only as one example implementation of the electronic UI 106 of FIGURE 1 and should not be construed as a limitation on the scope of the present disclosure. The present disclosure may also be applicable to other modifications, deletions, or additions to the electronic UI 400C without departing from the scope of the present disclosure.
[0091] The embodiments described in this disclosure can be used in many application areas, such as healthcare, law enforcement, defense, autonomous driving, insurance claims settlement, video processing, image processing, audio processing, text processing, IoT applications, database management systems, inventory control, air traffic control, security and surveillance, event processing applications, recommendation systems, virtual assistants, navigation, and weather forecasting.
[0092] Various embodiments of the present disclosure may provide one or more non-transitory computer-readable storage media configured to store instructions that, in response to being executed, cause a system (such as system 102) to perform an operation. The operation may include controlling a user device to display a plurality of task-specific questions on an electronic user interface (UI) of the user device 104. Each task-specific question of the displayed plurality of task-specific questions may correspond to a check for the presence of bias in one of the series of development phases of the machine learning model. The operation may further include receiving, via the electronic UI, a first input that may include a plurality of user responses corresponding to the displayed plurality of task-specific questions. The operation may further include determining a set of biases associated with the series of development phases of the machine learning model based on the received first input. The operation may further include controlling the user device to display, on the electronic UI, the set of determined biases and a set of reasonable actions to mitigate the effect of the set of determined biases on the machine learning model.
[0093] As mentioned above, the embodiments described in this disclosure may involve the use of a special purpose or general purpose computer (e.g., processor 202 of FIG. 2) including various computer hardware or software modules, as discussed in more detail below. Further, as mentioned above, the embodiments described in this disclosure may be implemented using a computer-readable medium carrying or having computer-executable instructions or data structures stored thereon (e.g., memory 204 or persistent data storage 206 of FIG. 2).
[0094] As used in this disclosure, the term "module" or "component" may refer to a specific hardware implementation configured to perform the actions of the module or component, and / or a software object or software routine that may be stored and / or executed on general-purpose hardware of a computing system (e.g., a computer-readable medium, a processing device, or some other hardware). In some embodiments, different components, modules, engines, and services described in this disclosure may be realized as objects or processes (e.g., as separate threads) that execute on a computing system. Although some of the systems and methods described in this disclosure are generally described as being implemented in software (stored and / or executed on general-purpose hardware), specific hardware implementations, or combinations of software and specific hardware implementations, are also possible and contemplated. In this description, a "computing entity" may be any computing system defined previously in this disclosure, or a combination of any module or modulate operating on a computing system.
[0095] According to common practice, various features shown in the drawings may not be drawn to scale. The illustrations presented in this disclosure are not intended to be actual views of a particular apparatus (e.g., device, system, etc.) or method, but are merely idealized representations used to explain various embodiments of the present disclosure. Thus, dimensions of various features may be arbitrarily expanded or reduced for clarity. In addition, some of the drawings may be simplified for clarity. Thus, the drawings may not show all of the components of a given apparatus (e.g., device) or all operations of a particular method.
[0096] The terms used in this disclosure, particularly in the appended claims (e.g., the body of the appended claims), are generally intended to be "open" terms (e.g., among others, the term "including" should be interpreted as "including but not limited to," the term "having" should be interpreted as "having at least," and the term "including" should be interpreted as "including but not limited to").
[0097] Moreover, where a particular number of introduced claim recitations is intended, such intent will be expressly recited in the claim; absent such recitation, no such intent exists. For example, as an aid to understanding, the following appended claims may include the use of the introductory phrases "at least one" and "one or more" to introduce claim recitations.
[0098] Moreover, even when a particular number of introduced claim recitations is explicitly recited, one of ordinary skill in the art will recognize that such recitation should be interpreted to mean at least the recited number (e.g., the mere recitation of "two recitations" without other modifiers means at least two recitations, or more than two recitations). Furthermore, in instances where a definition similar to "at least one of A, B, and C, etc." or "one or more of A, B, and C, etc." is used, such a structure is generally intended to include A alone, B alone, C alone, A and B together, A and C together, B and C together, or A, B, and C together, etc.
[0099] Additionally, any disjunctive word or phrase, whether in the specification, claims, or drawings, presenting two or more alternative terms, should be understood to contemplate the possibility of including one of the terms, either one of the terms, or both terms. For example, the phrase "A or B" should be understood to include the possibilities of "A" or "B" or "A and B."
[0100] However, the use of such phrases should not be construed to imply that introducing a claim recitation with the indefinite article "a" or "an" limits any particular claim that includes such an introduced claim recitation to embodiments that include only one such recitation, even when the same claim includes the introductory phrase "one or more" or "at least one" and an indefinite article such as "a" (e.g., "a" and / or "an" should be interpreted to mean "at least one" or "one or more"). The same applies to the use of definite articles used to introduce claim recitations.
[0101] Additionally, the use of the terms "first", "second", "third", etc., is not necessarily used herein to imply a particular order or number of elements. In general, the terms "first", "second", "third", etc., are used as generic identifiers to distinguish between different elements. If the terms "first", "second", "third", etc., do not indicate a particular order, these terms should not be understood to imply a particular order. Additionally, if the terms "first", "second", "third", etc., do not indicate a particular number of elements, these terms should not be understood to imply a particular number of elements. For example, a first widget may be described as having a first side and a second widget may be described as having a second side. Use of the term "second side" with respect to a second widget distinguishes such side of the second widget from the "first side" of the first widget and may not imply that the second widget has two sides.
[0102] All examples and conditional language described in this disclosure are intended for educational purposes to aid the reader in understanding the invention and the concepts the inventor has contributed to further the art, and should be considered as not being limited to the examples and conditions so specifically described. Although embodiments of the present disclosure have been described in detail, it should be understood that various changes, substitutions, and alterations can be made thereto without departing from the spirit and scope of the present disclosure.
[0103] The following notes are provided regarding the above embodiment. (Appendix 1) controlling a user device to display a plurality of task-specific questions on an electronic user interface (UI) of the user device, each task-specific question of the displayed plurality of task-specific questions corresponding to a check for the presence of bias in one of a series of phases of development of a machine learning model; receiving a first input via the electronic UI, the first input including a plurality of user responses corresponding to the displayed plurality of task-specific questions; determining a set of biases associated with the sequence of development phases of the machine learning model based on the received first input; controlling the user device to display on the electronic UI the set of determined biases and a set of appropriate actions to mitigate an effect of the set of determined biases on the machine learning model; The method includes: (Appendix 2) receiving user input comprising an application-specific problem associated with the machine learning model; retrieving the plurality of task-specific questions based on the application-specific problem associated with the machine learning model from a curated question repository; 2. The method of claim 1, further comprising: (Appendix 3) 2. The method of claim 1, wherein the plurality of task-specific questions correspond to at least one of a dataset creation phase of the series of development phases, a problem formulation phase of the series of development phases, a data analysis phase of the series of development phases, and an evaluation phase of the series of development phases. (Appendix 4) training a set of decision trees for the plurality of task-specific questions based on an ensemble-based learning approach; determining the set of biases associated with the successive development phases of the machine learning model based on the set of trained decision trees and the received first input; 2. The method of claim 1, further comprising: (Appendix 5) 2. The method of claim 1, wherein the set of determined biases includes one or more of sample selection bias, measurement bias, label bias, negative set bias, framing effect bias, confounding bias, omitted variable bias, surrogate variable bias, design-related bias, sample treatment bias, confirmation or belief bias, and algorithmic bias. (Appendix 6) The method of claim 1, further comprising the step of controlling the user device to display on the electronic UI a UI element as a first usage sheet including the set of determined biases and a description of each bias in the set of determined biases. (Appendix 7) determining a plausible cause for the presence of each bias in the set of determined biases based on the received first input; controlling the user device to display on the electronic UI a UI element including first text content describing the determined plausible causes of each bias in the set of determined biases; 2. The method of claim 1, further comprising: (Appendix 8) 8. The method of claim 7, wherein the plausible cause corresponds to a user action associated with one of a dataset creation phase of the series of development phases, a problem formulation phase of the series of development phases, a data analysis phase of the series of development phases, and an evaluation phase of the series of development phases. (Appendix 9) determining a plausible impact of each bias in the set of determined biases on the machine learning model based on the received first input; controlling the user device to display on the electronic UI a UI element including second text content describing the determined plausible impact of each bias in the set of determined biases on the machine learning model; 2. The method of claim 1, further comprising: (Appendix 10) determining the set of plausible actions to mitigate an effect of the determined set of biases on the machine learning model based on the received first input; controlling the user device to display on the electronic UI a UI element including the determined set of biases and the determined set of reasonable actions for mitigating an effect of the determined set of biases on the machine learning model; 2. The method of claim 1, further comprising: (Appendix 11) A non-transitory computer-readable storage medium configured to store instructions that, in response to being executed, cause a system to perform an action, the action including: controlling a user device to display a plurality of task-specific questions on an electronic user interface (UI) of the user device, each task-specific question of the displayed plurality of task-specific questions corresponding to checking for the presence of bias in one of a series of phases of development of the machine learning model; receiving a first input via the electronic UI, the first input including a plurality of user responses corresponding to the displayed plurality of task-specific questions; determining a set of biases associated with the sequence of development phases of the machine learning model based on the received first input; Controlling the user device to display on the electronic UI the set of determined biases and a set of appropriate actions to mitigate an effect of the set of determined biases on the machine learning model; A non-transitory computer readable storage medium comprising: (Appendix 12) The operation includes: receiving user input comprising an application-specific problem associated with the machine learning model; retrieving the plurality of task-specific questions based on the application-specific problem associated with the machine learning model from a curated question repository; 12. The non-transitory computer-readable storage medium of claim 11, further comprising: (Appendix 13) The operation includes: training a set of decision trees for the plurality of task-specific questions based on an ensemble-based learning approach; determining the set of biases associated with the successive development phases of the machine learning model based on the set of trained decision trees and the received first input; 12. The non-transitory computer-readable storage medium of claim 11, further comprising: (Appendix 14) 12. The non-transitory computer-readable storage medium of claim 11, wherein the set of determined biases includes one or more of: sample selection bias, measurement bias, label bias, negative set bias, framing effect bias, confounding bias, omitted variable bias, surrogate variable bias, design-related bias, sample treatment bias, confirmation or belief bias, and algorithmic bias. (Appendix 15) 12. The non-transitory computer-readable storage medium of claim 11, wherein the operations further include controlling the user device to display on the electronic UI a UI element as a first usage sheet including the set of determined biases and a description of each bias in the set of determined biases. (Appendix 16) The operation includes: determining a plausible cause for the presence of each bias in the set of determined biases based on the received first input; controlling the user device to display on the electronic UI a UI element including first text content describing the determined plausible causes of each bias in the set of determined biases; 12. The non-transitory computer-readable storage medium of claim 11, further comprising: (Appendix 17) 17. The non-transitory computer-readable storage medium of claim 16, wherein the reasonable cause corresponds to a user action associated with one of a dataset creation phase of the series of development phases, a problem formulation phase of the series of development phases, a data analysis phase of the series of development phases, and an evaluation phase of the series of development phases. (Appendix 18) The operation includes: determining a plausible impact of each bias in the set of determined biases on the machine learning model based on the received first input; controlling the user device to display on the electronic UI a UI element including second text content describing the determined plausible impact of each bias in the set of determined biases on the machine learning model; 12. The non-transitory computer-readable storage medium of claim 11, further comprising: (Appendix 19) The operation includes: determining the set of plausible actions to mitigate an effect of the determined set of biases on the machine learning model based on the received first input; controlling the user device to display on the electronic UI a UI element including the determined set of biases and the determined set of reasonable actions for mitigating an effect of the determined set of biases on the machine learning model; 12. The non-transitory computer-readable storage medium of claim 11, further comprising: (Appendix 20) 1. A system comprising: a circuit for detecting a temperature difference between the first and second inputs, the circuit comprising: controlling a user device to display a plurality of task-specific questions on an electronic user interface (UI) of the user device, each task-specific question of the displayed plurality of task-specific questions corresponding to checking for the presence of bias in one of a series of phases of development of the machine learning model; receiving a first input via the electronic UI, the first input including a plurality of user responses corresponding to the displayed plurality of task-specific questions; determining a set of biases associated with the sequence of development phases of the machine learning model based on the received first input; Controlling the user device to display on the electronic UI the set of determined biases and a set of appropriate actions to mitigate an effect of the set of determined biases on the machine learning model. The system is configured as follows.
Claims
1. controlling a user device to display a plurality of task-specific questions on an electronic user interface (UI) of the user device, each task-specific question of the displayed plurality of task-specific questions corresponding to checking for the presence of bias in one of a series of phases of development of a machine learning model; receiving, via the electronic UI, a first input including a plurality of user responses corresponding to the displayed plurality of task-specific questions; training a set of decision trees for the plurality of task-specific questions based on an ensemble-based learning approach; determining a set of biases associated with the successive development phases of the machine learning model based on the set of trained decision trees and the received first input; controlling the user device to display on the electronic UI the set of determined biases and a set of appropriate actions to mitigate an effect of the set of determined biases on the machine learning model; The method includes:
2. receiving user input comprising an application-specific problem associated with the machine learning model; retrieving the plurality of task-specific questions based on the application-specific problem associated with the machine learning model from a curated question repository; The method of claim 1 further comprising:
3. 2. The method of claim 1 , wherein the plurality of task-specific questions correspond to at least one of: a dataset creation phase of the series of development phases, a problem formulation phase of the series of development phases, a data analysis phase of the series of development phases, and an evaluation phase of the series of development phases.
4. 2. The method of claim 1, wherein the set of determined biases includes one or more of: sample selection bias, measurement bias, label bias, negative set bias, framing effect bias, confounding bias, omitted variable bias, surrogate variable bias, design related bias, sample treatment bias, confirmation or belief bias, and algorithmic bias.
5. 2. The method of claim 1, further comprising: controlling the user device to display a UI element on the electronic UI as a first usage sheet including the set of determined biases and a description of each bias in the set of determined biases.
6. determining a plausible cause for the presence of each bias in the set of determined biases based on the received first input; controlling the user device to display a UI element on the electronic UI including first text content describing the determined plausible causes of each bias in the set of determined biases; The method of claim 1 further comprising:
7. 7. The method of claim 6, wherein the plausible cause corresponds to a user action associated with one of a dataset creation phase of the series of development phases, a problem formulation phase of the series of development phases, a data analysis phase of the series of development phases, and an evaluation phase of the series of development phases.
8. determining a plausible impact of each bias in the set of determined biases on the machine learning model based on the received first input; controlling the user device to display a UI element on the electronic UI, the UI element including second text content describing the determined plausible impact of each bias in the set of determined biases on the machine learning model; The method of claim 1 further comprising:
9. determining the set of plausible actions to mitigate an effect of the determined set of biases on the machine learning model based on the received first input; controlling the user device to display a UI element on the electronic UI that includes the determined set of biases and the determined set of reasonable actions for mitigating an effect of the determined set of biases on the machine learning model; The method of claim 1 further comprising:
10. A computer program for causing a system to perform operations, the operations comprising: controlling a user device to display a plurality of task-specific questions on an electronic user interface (UI) of the user device, each task-specific question of the displayed plurality of task-specific questions corresponding to checking for the presence of bias in one of a series of phases of development of the machine learning model; receiving a first input via the electronic UI, the first input including a plurality of user responses corresponding to the displayed plurality of task-specific questions; training a set of decision trees for the plurality of task-specific questions based on an ensemble-based learning approach; determining a set of biases associated with the sequence of development phases of the machine learning model based on the set of trained decision trees and the received first input; Controlling the user device to display on the electronic UI the set of determined biases and a set of appropriate actions to mitigate an effect of the set of determined biases on the machine learning model; A computer program comprising:
11. The operation includes: receiving user input comprising an application-specific problem associated with the machine learning model; retrieving the plurality of task-specific questions based on the application-specific problem associated with the machine learning model from a curated question repository; The computer program product of claim 10 , further comprising:
12. 11. The computer program product of claim 10, wherein the set of determined biases comprises one or more of: sample selection bias, measurement bias, label bias, negative set bias, framing effect bias, confounding bias, omitted variable bias, surrogate variable bias, design related bias, sample treatment bias, confirmation or belief bias, and algorithmic bias.
13. 11. The computer program product of claim 10, wherein the operations further include controlling the user device to display on the electronic UI a UI element as a first usage sheet including the set of determined biases and a description of each bias in the set of determined biases.
14. The operation includes: determining a plausible cause for the presence of each bias in the set of determined biases based on the received first input; controlling the user device to display a UI element on the electronic UI including first text content describing the determined plausible causes of each bias in the set of determined biases; The computer program product of claim 10 , further comprising:
15. 15. The computer program product of claim 14, wherein the plausible cause corresponds to a user action associated with one of a dataset creation phase of the series of development phases, a problem formulation phase of the series of development phases, a data analysis phase of the series of development phases, and an evaluation phase of the series of development phases.
16. The operation includes: determining a plausible impact of each bias in the set of determined biases on the machine learning model based on the received first input; controlling the user device to display a UI element on the electronic UI, the UI element including second text content describing the determined plausible impact of each bias in the set of determined biases on the machine learning model; The computer program product of claim 10 , further comprising:
17. The operation includes: determining the set of plausible actions to mitigate an effect of the determined set of biases on the machine learning model based on the received first input; controlling the user device to display a UI element on the electronic UI that includes the determined set of biases and the determined set of appropriate actions to mitigate an effect of the determined set of biases on the machine learning model; The computer program product of claim 10 , further comprising:
18. 1. A system comprising: a circuit for detecting a temperature difference between the first and second inputs, the circuit comprising: controlling a user device to display a plurality of task-specific questions on an electronic user interface (UI) of said user device, each task-specific question of said displayed plurality of task-specific questions corresponding to checking for the presence of bias in one of a series of phases of development of the machine learning model; receiving a first input via the electronic UI, the first input including a plurality of user responses corresponding to the displayed plurality of task-specific questions; training a set of decision trees for the plurality of task-specific questions based on an ensemble-based learning approach; determining a set of biases associated with the sequence of development phases of the machine learning model based on the set of trained decision trees and the received first input; Controlling the user device to display on the electronic UI the set of determined biases and a set of appropriate actions to mitigate an effect of the set of determined biases on the machine learning model. The system is configured as follows.
Citation Information
Patent Citations
Techniques for correcting linguistic training bias in training data
JP2019057280A
Performance Model Adverse Effect Correction
JP2019519021A
Tool for designing artificial intelligence systems
US20190318262A1