Method for automatically removing ai bias associated with ai model by using computing device, and computer system (artificial intelligence prediction monitoring)
By employing multiple independent bias mitigation algorithms within a machine learning pipeline and providing a scorecard for results, the system effectively addresses the challenge of AI bias removal, making it accessible to both experts and non-experts.
Patent Information
- Application Number
- JP2024157983
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-09-23
- Filing Date
- 2024-09-12
- Publication Date
- 2025-04-04
AI Technical Summary
There is a need for accessible and effective methods to monitor and remove artificial intelligence (AI) bias from AI models, as existing methods are complex and not easily understood, even by data science experts.
The implementation of methods, systems, and computer program products that automatically remove AI bias by performing two or more independent bias mitigation algorithms, allowing users to select and execute these algorithms within a machine learning pipeline, and providing a scorecard to summarize the results.
This approach enables the effective and accessible removal of AI bias, allowing non-experts to easily view and manipulate AI models, and providing a user-friendly method for data scientists to correct for bias in AI models.
Smart Images

Figure 2025051631000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates generally to artificial intelligence, and more particularly to automated validation and correction of predictions made by artificial intelligence models. [Background technology]
[0002] FIELD OF THE DISCLOSURE Embodiments of the present disclosure relate to machine learning, and more generally to artificial intelligence. In 2023, artificial intelligence and machine learning are gaining importance to the general public in a variety of applications, including mortgage approval, prison sentencing, financial analysis, online shopping, fraud prevention, and many others.
[0003] Individuals studying this field understand that decisions made by AI / ML models in these various domains, even if only partially determined by the machine learning model, can affect an individual's mortgage approval, incarceration sentence, etc. It is therefore important that the decisions made by AI / ML models are completely fair and unbiased. "AI bias," as discussed herein, refers to systematic and repeatable errors in AI / ML model decisions that disproportionately affect one group over another in a manner that is different from the intended function of the associated algorithm. However, debiasing AI models is a complex area even for data science professionals, with so many different approaches that even experts don't know where to start. Summary of the Invention [Problem to be solved by the invention]
[0004] There is a need for accessible and effective methods of monitoring the decision-making of artificial intelligence / machine learning models, especially to avoid artificial intelligence bias. [Means for solving the problem]
[0005] The present invention discloses a method, system, and computer program product for automatically removing AI bias associated with an AI model. A computing device accesses the AI model. The computing device executes two or more independent bias mitigation algorithms, each of the two or more independent bias mitigation algorithms designed to independently remove AI bias from the AI model. The computing device requests a user to display results of the execution of the two or more independent bias mitigation algorithms. The computing device receives from the user a selection of one or more bias mitigation algorithms to be used with the AI model. The computing device executes the selected one or more bias mitigation algorithms to correct bias in the AI model. In an embodiment of the present invention, each of the two or more independent bias mitigation algorithms is associated with exactly one bias mitigation strategy type of a plurality of available bias mitigation strategy types including pre-processing mitigation, mid-processing mitigation, and post-processing mitigation. Results of the execution may include independent effectiveness of each of the two or more independent bias mitigation algorithms. The present invention is implemented in a machine learning pipeline.
[0006] In an alternative aspect of the present invention, an embodiment of the present invention discloses another method, system, and computer program product for removing AI bias associated with an AI model. A computing device accesses an AI model. The computing device executes two or more independent bias mitigation algorithms in a machine learning pipeline, and a result of a first independent bias mitigation algorithm is used as an input to a subsequent independent bias mitigation algorithm. The computing device requests that a result of the execution of the machine learning pipeline be displayed to a user, and the result of the execution of the machine learning pipeline includes a scorecard summarizing the result of removing the AI bias from the AI model. The computing device receives a selection of one or more new independent bias mitigation algorithms from the user and modifies the machine learning pipeline. The computing device executes the modified machine learning pipeline based on the selection from the user; and displays an updated scorecard to the user based on the modified machine learning pipeline. Each of the two or more independent bias mitigation algorithms is associated with exactly one bias mitigation strategy type of a plurality of bias mitigation strategy types including two or more of pre-processing mitigation, mid-processing mitigation, and post-processing mitigation. [Brief description of the drawings]
[0007] [Figure 1] FIG. 1 illustrates a networked computing environment 100 according to one embodiment of the present invention.
[0008] [Diagram 2] FIG. 2 is a functional block diagram illustrating a module 200 for artificial intelligence predictive monitoring according to an embodiment of the present invention.
[0009] [Diagram 3] 3 is a process flow diagram 300 illustrating operational steps that may be performed by a hardware component, a number of hardware components, and / or a hardware device, according to an embodiment of the present invention.
[0010] [Figure 4] 4 is a process flow diagram 400 illustrating alternative operational steps that may be performed by a hardware component, a number of hardware components, and / or a hardware device, according to an embodiment of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0011] Embodiments of the present disclosure relate to one or more methods, systems, and computer program products for artificial intelligence prediction monitoring and removing AI bias from artificial intelligence / machine learning model decisions (collectively referred to herein as "artificial intelligence" or "AI"). As the importance of artificial intelligence model decision-making continues to grow in the 21st century, it becomes increasingly necessary to ensure that such decisions are free of artificial intelligence bias. Since the mathematical calculations behind artificial intelligence decisions and bias reduction are very complex, embodiments of the present invention present options for measuring bias and measuring bias reduction, and automatically reduce AI bias in an automated machine learning environment, allowing non-experts to easily view and manipulate AI models (e.g., using a machine learning pipeline).
[0012] Unfortunately, due to the complex nature of AI models, even data scientists who are experts in this field do not know where to start. In general, AI bias reduction is performed in three different ways: pre-processing mitigation, mid-processing mitigation, and post-processing mitigation. Pre-processing mitigation is a strategy for AI bias reduction that focuses on first modifying the training dataset used to train the AI model. Once the model is trained, by correcting various aspects of the training data, a corrected model results. Mid-processing mitigation focuses on making mid-processing changes to the AI model, with bias removal as its main goal. Post-processing mitigation focuses on modifying the predictions of the AI model after the decision has been made.
[0013] Any of these techniques may be effective in a given situation, but the choice of which technique to use may be beyond the understanding of even an expert in the field of AI. Each of the mitigation strategies focuses on using a unique algorithm designed to correct bias in an AI model, but which strategy and associated algorithm to use is a very complex problem. Embodiments of the present invention present automated methods for assessing AI bias in an AI model, correcting AI bias in an AI model, and performing other functions related to AI models discussed herein.
[0014] Various aspects of the disclosure are described by way of text, flow charts, block diagrams of computer systems, and / or block diagrams of machine logic included in embodiments of computer program products (CPPs). For any flow chart, depending on the technology involved, the operations may be performed in a different order than that shown in a given flow chart. For example, two operations shown in successive flow chart blocks may be performed in reverse order, as a single integrated step, simultaneously, or in an at least partially overlapping manner, also depending on the technology involved.
[0015] A computer program product embodiment ("CPP embodiment" or "CPP") is a term used in this disclosure to describe any set of one or more storage media (also referred to as "media") collectively contained in a set of one or more storage devices that collectively contain machine-readable code corresponding to instructions and / or data for performing a computer operation specified in a given CPP claim. A "storage device" is any tangible device that can hold and store instructions for use by a computer processor. The computer-readable storage medium may be, but is not limited to, an electronic storage medium, a magnetic storage medium, an optical storage medium, an electromagnetic storage medium, a semiconductor storage medium, a mechanical storage medium, or any suitable combination of the foregoing. Some known types of storage devices that include these media include diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), compact disk read-only memory (CD-ROM), digital versatile disk (DVD), memory stick, floppy disk, mechanically encoded devices (such as punch cards or pits / lands formed on the major surface of a disk), or any suitable combination of the foregoing. A computer-readable storage medium, as the term is used in this disclosure, is not to be construed as storage in the form of a transitory signal per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide, light pulses passing through fiber optic cables, electrical signals transmitted through wires, and / or other transmission media. As will be appreciated by those skilled in the art, data is typically moved at some infrequent time during normal operation of the storage device, such as during access, defragmentation, or garbage collection, but the above does not render the storage device transitory since the data is not transitory while it is stored.
[0016] The computing environment 100 includes an example of an environment for executing at least some of the computer code involved in implementing the method of the present invention, such as associated with a module 200 for artificial intelligence predictive monitoring. In addition to the module 200, the computing environment 100 includes, for example, a computer 101, a wide area network (WAN) 102, an end user device (EUD) 103, a remote server 104, a public cloud 105, and a private cloud 106. In this embodiment, the computer 101 includes a processor set 110 (including processing circuitry 120 and cache 121), a communication fabric 111, a volatile memory 112, a persistent storage 113 (including an operating system 122 and the above-identified module 200), a peripheral device set 114 (including a user interface (UI) device set 123, storage 124, and an Internet of Things (IoT) sensor set 125), and a network module 115. The remote server 104 includes a remote database 130. The public cloud 105 includes a gateway 140, a cloud orchestration module 141, a set of host physical machines 142, a set of virtual machines 143, and a set of containers 144.
[0017] Computer 101 may take the form of a desktop computer, a laptop computer, a tablet computer, a smartphone, a smartwatch or other wearable computer, a mainframe computer, a quantum computer, or any other form of computer or mobile device now known or later developed that is capable of executing programs, accessing a network, or querying a database, such as remote database 130. As is well understood in the field of computer technology, and depending on the technology, the performance of a computer-implemented method may be distributed among multiple computers and / or among multiple locations. On the other hand, in this description of computing environment 100, in order to keep the description as simple as possible, the detailed discussion focuses on a single computer, specifically computer 101. Although computer 101 is not shown in the cloud in FIG. 1, it may be located in the cloud. On the other hand, computer 101 is not required to be in the cloud, except to any extent that may be categorically indicated.
[0018] Processor set 110 includes one or more computer processors of any type now known or later developed. Processor set 110 may alternatively be referred to herein as "one or more computing devices," which may refer to one or more CPUs, microchips, integrated circuits, embedded systems, or currently existing or later equivalents. Processing circuitry 120 may be distributed across multiple packages, e.g., multiple coordinated integrated circuit chips. Processing circuitry 120 may implement multiple processor threads and / or multiple processor cores. Cache 121 is memory located within the processor chip package and is typically used for data or code that should be available for fast access by threads or cores executing on processor set 110. Cache memory is typically organized into multiple levels depending on relative proximity to the processing circuitry. Alternatively, some or all of the cache for a processor set may be located "off-chip." In some computing environments, processor set 110 may be designed to operate with qubits and perform quantum computing.
[0019] Computer readable program instructions are typically loaded into the computer 101 to cause a sequence of operational steps to be performed by the processor set 110 of the computer 101, resulting in a computer-implemented method in which the instructions thus executed instantiate the methods specified in the computer-implemented method flowcharts and / or descriptions contained in this document (collectively, the "methods of the present invention"). These computer readable program instructions are stored in various types of computer readable storage media, such as the cache 121 and other storage media discussed below. The program instructions and associated data are accessed by the processor set 110 to control and direct the performance of the methods of the present invention. In the computing environment 100, at least some of the instructions for performing the methods of the present invention may be stored in a module 200 in persistent storage 113.
[0020] Communications fabric 111 is the signal-conducting paths that allow the various components of computer 101 to communicate with one another. Typically, this fabric is made up of switches and conductive paths, such as those that make up buses, bridges, physical input / output ports, and the like. Other types of signal communication paths, such as fiber optic and / or wireless communication paths, may be used.
[0021] Volatile memory 112 is any type of volatile memory now known or later developed. Examples include dynamic random access memory (RAM) or static RAM. Typically, volatile memory 112 is characterized by random access, although this is not required unless expressly indicated. In computer 101, volatile memory 112 is located in a single package and is internal to computer 101, although alternatively or additionally, volatile memory may be distributed across multiple packages and / or located external to computer 101.
[0022] The persistent storage 113 is any form of non-volatile storage for a computer, now known or later developed. The non-volatility of this storage means that the stored data is maintained regardless of whether power is provided to the computer 101 and / or to the persistent storage 113 directly. The persistent storage 113 may be a read-only memory (ROM), but typically at least a portion of the persistent storage allows data to be written, data to be deleted, and data to be rewritten. Some well-known forms of persistent storage include magnetic disks and solid-state storage devices. The operating system 122 may take several forms, such as various known proprietary operating systems, or an open source Portable Operating System Interface type operating system that employs a kernel. The code included in the module 200 typically includes at least some of the computer code involved in implementing the methods of the present invention.
[0023] The peripheral device set 114 includes a set of peripheral devices of the computer 101. Data communication connections between the peripheral devices and other components of the computer 101 may be implemented in various ways, such as Bluetooth connections, Near Field Communication (NFC) connections, connections made by cable (such as a Universal Serial Bus (USB) type cable), insertion type connections (e.g., Secure Digital (SD) cards), connections made through a local area communication network, and even connections made through a wide area network such as the Internet. In various embodiments, the UI device set 123 may include components such as display screens, speakers, microphones, wearable devices (such as goggles and smart watches), keyboards, mice, printers, touch pads, game controllers, and haptic devices. The storage 124 is external storage, such as an external hard drive, or insertable storage, such as an SD card. The storage 124 may be persistent and / or volatile. In some embodiments, the storage 124 may take the form of a quantum computing storage device for storing data in the form of qubits. In embodiments where computer 101 is required to have a large amount of storage (e.g., computer 101 stores and manages a large database locally), then this storage may be provided by a peripheral storage device designed to store very large amounts of data, such as a storage area network (SAN) shared by multiple, geographically distributed computers. IoT sensor set 125 is made up of sensors that may be used in Internet of Things applications. For example, one sensor may be a thermometer and another sensor may be a motion detector.
[0024] The network module 115 is a collection of computer software, hardware, and firmware that enables the computer 101 to communicate with other computers over the WAN 102. The network module 115 may include hardware such as a modem or Wi-Fi® signal transceiver, software for packetizing and / or depacketizing data for communication network transmission, and / or web browser software for communicating data over the Internet. In some embodiments, the network control and network forwarding functions of the network module 115 are implemented on the same physical hardware device. In other embodiments (e.g., those utilizing software-defined networking (SDN)), the control and forwarding functions of the network module 115 are implemented on physically separate devices such that the control function manages several different network hardware devices. Computer-readable program instructions for implementing the methods of the present invention may be downloaded to the computer 101 from an external computer or external storage device, typically via a network adapter card or network interface included in the network module 115.
[0025] WAN 102 is any wide area network (e.g., the Internet) capable of communicating computer data over non-local distances by any technology for communicating computer data now known or developed in the future. In some embodiments, WAN 102 may be replaced and / or supplemented by a local area network (LAN) designed to communicate data between devices located in a local area, such as a Wi-Fi network. WANs and / or LANs typically include computer hardware such as copper transmission cables, optical transmission fiber, wireless transmission, routers, firewalls, switches, gateway computers, and edge servers.
[0026] End-user device (EUD) 103 is any computer system used and controlled by an end user (e.g., a customer of the enterprise that operates computer 101) and may take any of the forms discussed above in connection with computer 101. EUD 103 typically receives useful and useful data from the operation of computer 101. For example, in a hypothetical case in which computer 101 is designed to provide suggestions to the end user, the suggestions would typically be communicated from network module 115 of computer 101 over WAN 102 to EUD 103. In this manner, EUD 103 may display or otherwise present the suggestions to the end user. In some embodiments, EUD 103 may be a client device such as a thin client, a heavy client, a mainframe computer, a desktop computer, or the like.
[0027] Remote server 104 is any computer system that provides at least some data and / or functionality to computer 101. Remote server 104 may be controlled and used by the same entity that operates computer 101. Remote server 104 represents a machine that collects and stores useful and useful data for use by other computers, such as computer 101. For example, in the hypothetical case where computer 101 is designed and programmed to provide suggestions based on historical data, then this historical data may be provided to computer 101 from remote database 130 of remote server 104.
[0028] Public cloud 105 is any computer system available for use by multiple entities that provides on-demand availability of computer system resources and / or other computer capabilities, particularly data storage (cloud storage) and computing power, without direct active management by users. Cloud computing typically leverages the sharing of resources to achieve coherence and economies of scale. The direct, active management of the computing resources of public cloud 105 is performed by computer hardware and / or software of cloud orchestration module 141. The computing resources provided by public cloud 105 are typically implemented by virtual computing environments running on various computers that make up the computers in public cloud 105 and / or host physical machine set 142, which is the universe of physical computers available to public cloud 105. Virtual computing environments (VCEs) typically take the form of virtual machines from virtual machine set 143 and / or containers from container set 144. It is understood that these VCEs can be stored as images and can be transferred among and between various physical machine hosts, either as images or after instantiation of the VCEs. Cloud orchestration module 141 manages the transfer and storage of images, deploys new instantiations of VCE, and manages active instantiations of VCE deployments. Gateway 140 is a collection of computer software, hardware, and firmware that enables public cloud 105 to communicate over WAN 102.
[0029] We now provide some further explanation of Virtualized Computing Environments (VCEs). A VCE may be stored as an "image." A new active instance of a VCE may be instantiated from an image. Two well-known types of VCEs are virtual machines and containers. A container is a VCE that uses operating system level virtualization. This refers to a feature of an operating system where the kernel allows the existence of multiple isolated user space instances called containers. These isolated user space instances typically behave as real computers from the perspective of the programs running within them. A computer program running on a normal operating system may utilize all of the resources of that computer, such as connected devices, files and folders, network shares, CPU power, and quantifiable hardware capabilities. However, a program running inside a container may only use the contents of the container and of the devices assigned to the container, a feature known as containerization.
[0030] A private cloud 106 is similar to a public cloud 105, except that the computing resources are only available for use by a single enterprise. Although the private cloud 106 is shown as being in communication with the WAN 102, in other embodiments, the private cloud may be completely disconnected from the Internet and only accessible via a local / private network. A hybrid cloud is a composite of multiple clouds of different types (e.g., private, community, or public cloud types), often each implemented by a different vendor. While each of the multiple clouds remains a separate, discrete entity, the larger hybrid cloud architecture is bound together by standardized or proprietary technologies that enable orchestration, management, and / or data / application portability between the multiple constituent clouds. In this embodiment, both the public cloud 105 and the private cloud 106 are part of a larger hybrid cloud.
[0031] FIG. 2 is a functional block diagram illustrating a module 200 for artificial intelligence prediction monitoring according to an embodiment of the present invention. In summary, FIG. 2 illustrates an automated machine learning environment 210, an artificial intelligence prediction monitoring module 260, and a network 299. In an embodiment of the present invention as illustrated in FIG. 2, the automated machine learning environment 210 is operatively connected to the artificial intelligence prediction monitoring module 260 directly or via the network 299. The automated machine learning environment 210 may be any type of computer software (and in various embodiments associated computer hardware) for providing various automated functions related to artificial intelligence models, including training, modification, configuration, selection, parameterization, and / or other functions associated with artificial intelligence models. The user interface facilitates data scientists, analysts, developers, and the like to easily perform these functions with respect to one or more artificial intelligence models without directly manipulating the AI models in source code form, directly manipulating the model weights, or otherwise. Rather, the user interface allows users to manipulate the AI models in a more convenient, accessible, and simple manner. However, those working in the field of artificial intelligence understand that decisions or other outputs from an AI model may be influenced by AI biases (for a variety of reasons, as discussed herein), which, in the embodiments discussed herein, are verified and corrected for by artificial intelligence prediction oversight module 260.
[0032] The artificial intelligence prediction monitoring module 260, also shown in FIG. 2, is operatively connected to the automated machine learning environment 210 directly or via a network 299. Alternatively, the artificial intelligence prediction monitoring module 260 is integrated into the automated machine learning environment 210, with both running as separate modules associated with the automated machine learning environment 210, with the artificial intelligence prediction monitoring module 260 running via a plug-in to the automated machine learning environment 210 and accessed on / through a common web browser or via other equivalent means. In general, and as further discussed in connection with embodiments of the invention disclosed herein, the artificial intelligence prediction monitoring module 260 is responsible for accessing a trained AI model associated with the automated machine learning environment 210, detecting whether the AI model exhibits a level of AI bias, presenting the results of the AI bias determination to a user, and correcting the AI model if AI bias is present.
[0033] As further shown in FIG. 2, in various embodiments of the present invention, the automated machine learning environment 210 and the artificial intelligence prediction monitoring module 260 are connected to and through a network 299. In various embodiments, the network 299 is substantially similar to the WAN 120 discussed in connection with FIG. 1 herein. In general, the network 299 may be any combination of connections and protocols that support communication between the automated machine learning environment 210 and the artificial intelligence prediction monitoring module 260 according to embodiments of the present invention. In another embodiment of the present invention (e.g., in an embodiment in which the automated machine learning environment 210 and the artificial intelligence prediction monitoring module 260 are integrated), the network 299 may represent an internal bus associated with a single or multi-core processor that executes both the automated machine learning environment 210 and the artificial intelligence prediction monitoring module 260.
[0034] 2 in more detail, automated machine learning environment 210 represents computer software (and in various embodiments associated computer hardware) for providing individuals interested in artificial intelligence modeling (such as, for example, data scientists, analysts, developers, etc.) with various automated functions provided for use in connection with artificial intelligence models, including training, modifying, configuring, selecting, parameterizing, and / or otherwise using artificial intelligence models. In various embodiments of the invention, automated machine learning environment 210 includes one or more of training data module 213, training module 215, AI model storage 218, user interface 221, machine learning pipeline 223, and artificial intelligence prediction oversight communication module 225.
[0035] The training data module 213 represents software and / or hardware for storing and making available training datasets for training AI models. AI models require large amounts of "training data" (such as from a training dataset) to "train" the models that are utilized in making predictions. As will be appreciated by those skilled in the art, AI models actually look for patterns in data and then predict new fact patterns based on the patterns they find. In training an AI model associated with a neural network, for example, various layers of the neural network with connections between the "neurons" in the neural network are associated with various weights, gradients, etc. to allow for correct interpretation of new data (based on the patterns they find). However, the training data stored in the training data module 213 may be "biased" and therefore predictions / models created based on biased data will also be biased. The disclosed embodiments of the invention may rely on pre-processing mitigation as a type of bias mitigation strategy to correct AI bias with modifications of the training dataset (discussed further elsewhere herein). As discussed further herein, the training data stored by the training data module 213 may be accessed and utilized by the artificial intelligence prediction oversight module 260 in debiasing the AI model.
[0036] The training module 215 represents software and / or hardware for training an AI model. As discussed, the training module 215 accesses the training data stored in the training data module 213 and then trains the AI model based on the training data. The trained AI model may be supervised, unsupervised, or partially supervised in nature, but all are contemplated for use in connection with embodiments of the present invention. The AI model may be in the form of a neural network, a decision tree, a linear regression, a support vector machine, etc. As the training module 215 trains the model using the training data from the training data module 213, the "neurons" (or other nodes) in the associated AI model are actually linked in various ways via connections, weights, gradients, etc., to better interpret patterns in the training data. However, as discussed elsewhere herein, the trained AI model may exhibit AI bias, which needs to be addressed by the embodiments of the present invention disclosed herein. Training an AI model by the training module 215 may represent a significant commitment in terms of processing time and system resources. As discussed further herein, the trained AI models trained by the automated machine learning environment 210 are stored by the AI model storage 218. The AI models may be retrained by the training module 215.
[0037] AI model storage 218 represents software and / or hardware for storing trained AI models trained by training module 215. The trained AI models may be utilized in connection with other functions associated with automated machine learning environment 210 (e.g., for prediction or decision making), retraining by training module 215, debiasing by artificial intelligence prediction oversight module 260, or in other ways.
[0038] User interface 221 represents software and / or hardware for users of automated machine learning environment 210 (such as data scientists, analysts, developers, etc.) to easily access and manipulate AI models associated with automated machine learning environment 210. In embodiments of the invention, user interface 221 may be a graphical user interface, command line, or other computer interface that allows a user to manipulate AI models stored by AI model storage 218. In embodiments of the invention, user interface 221 also presents various functions for a user to determine whether bias is present in an AI model, read a "scorecard" associated with AI bias in the AI model, provide access to functionality for automatically correcting AI bias in the AI model, and provide other information and / or functionality as discussed further herein.
[0039] In various embodiments of the invention, user interface 221 may also display to the user the results of running two or more bias mitigation algorithms (discussed further in connection with artificial intelligence prediction oversight module 260). In embodiments of the invention, user interface 221 also presents the ability for the user to "select" one or more independent bias mitigation algorithms for ultimate use with the AI model, e.g., via a menu of choices, a toggle switch, etc., to request machine learning pipeline 223 to run the independent bias mitigation algorithms singly, alternatively, or sequentially.
[0040] The machine learning pipeline 223 represents software and / or hardware for performing various automated and required functions associated with the entire lifecycle of an AI model, including accessing training data from the training data module 213 while the machine learning pipeline 223 is running (as discussed further herein), requesting training of an AI model by the training module 215, retraining an AI model by the training module 215, requesting inferences to be made by an AI model stored in the AI model storage 218, and performing various functions in assessing, scoring, and removing AI bias in association with the artificial intelligence prediction oversight module 260. In an embodiment of the invention (discussed further below), the machine learning pipeline 223 operates in conjunction with the bias mitigation algorithms module 263 to execute various independent bias mitigation algorithms designed to independently remove AI bias from the AI model stored by the AI model storage 218. Performing various functions associated with an AI model in the machine learning pipeline 223 provides a simple and streamlined implementation of various tasks associated with an AI model (as discussed), thereby greatly facilitating its use by a more typical user.
[0041] In one embodiment of the present invention, the machine learning pipeline 223 executes two or more independent bias mitigation algorithms in a sequential manner in the machine learning pipeline, where the results of a first independent bias mitigation algorithm are used as input to a subsequent bias mitigation algorithm. The results of the execution of the machine learning pipeline 223 executing multiple independent bias mitigation algorithms in a sequential manner are displayed to the user in the user interface 221 in a scorecard generated by the scoring module 274. The machine learning pipeline 223 (in conjunction with the user interface 221) can then receive a user selection of one or more new independent bias mitigation algorithms to modify the machine learning pipeline of the two or more independent bias mitigation algorithms, and the machine learning pipeline 223 then executes the modified machine learning pipeline 223 based on the user's selection.
[0042] Artificial intelligence predictive oversight communications module 225 represents software and / or hardware for communication between automated machine learning environment 210 and artificial intelligence predictive oversight module 260, including communication of various necessary training data, artificial intelligence models, determination of artificial bias mitigation algorithms to be trained, bias removal results, etc. Artificial intelligence predictive oversight communications module 225 may represent software interfaces and associated hardware, other software methods and associated hardware, or equivalents now existing or later developed.
[0043] 2 in more detail, artificial intelligence prediction oversight module 260 represents computer software (and in various embodiments associated computer hardware) for accessing a trained AI model associated with automated machine learning environment 210, detecting whether the AI model exhibits a level of AI bias, presenting the results of the AI bias determination to a user, and correcting the AI model if AI bias is present. In various embodiments of the invention, artificial intelligence prediction oversight module 260 includes one or more of bias mitigation algorithm module 263, training data access and modeling module 265, protected attributes module 268, group explanation module 271, scoring module 274, and machine learning environment communication module 276.
[0044] The bias mitigation algorithm module 263 represents software and / or hardware for storing and executing independent bias mitigation algorithms to independently remove AI bias from trained AI models stored by the AI model storage. As discussed elsewhere herein, each independent bias mitigation algorithm is associated with exactly one bias mitigation strategy type of a plurality of bias mitigation strategy types, including pre-processing mitigation, mid-processing mitigation, and / or post-processing mitigation. One example of a pre-processing mitigation algorithm that may be associated with the bias mitigation algorithm module 263 is a disparate impact algorithm. One example of a mid-processing algorithm that may be associated with the bias mitigation algorithm module 263 is an adversarial bias removal algorithm. One example of a post-processing algorithm that may be associated with the bias mitigation algorithm module 263 is a rejection option classification modeling. While still contemplated to be within the scope of the present invention, various embodiments of the present invention utilize other algorithms associated with these bias mitigation strategy types. The bias mitigation strategy types may be utilized at different stages of the life of an AI model or at different stages in a machine learning pipeline. The effectiveness of each may vary based on the nature of the training data, the AI model, the required inferences of the AI model, etc. However, every situation is unique, and in a given situation, pre-processing, mid-processing, or post-processing may be most effective. The embodiments of the invention disclosed herein assist in determining which strategy to use in each particular situation with each AI model.
[0045] The bias mitigation algorithm module 263, together with the machine learning pipeline 223, accesses the AI models stored by the AI model storage 218 and executes independent bias mitigation algorithms to independently remove AI bias from the AI models stored by the AI model storage 218. The results of the execution of the independent bias mitigation algorithms are requested by the bias mitigation algorithm module 263 to be displayed to the user via the user interface 221. In one embodiment of the invention, the results of the execution may include the independent effectiveness of each of the two or more independent bias mitigation algorithms, including, for example, a minimum accuracy impact or a maximum fairness impact. In various embodiments of the invention, the minimum accuracy impact or maximum fairness impact is displayed in an accessible and numerical manner, such as by a chart on the user interface 221. The independent effectiveness (such accuracy / fairness impact) is provided to allow the user to decide as easily as possible which AI model to use. In another embodiment of the invention, the independent bias mitigation algorithms associated with the bias mitigation algorithm module 263 are executed in a sequential manner, where the results of a first bias mitigation algorithm are used as input to one or more subsequent bias mitigation algorithms in the machine learning pipeline 223.
[0046] In an embodiment of the invention, bias mitigation algorithm module 263, along with user interface 221, also presents functionality for a user to "select" one or more independent bias mitigation algorithms for ultimate use with the AI model, and to execute the selected bias mitigation algorithm(s) (in conjunction with machine learning pipeline 223) to correct for bias in the AI model.
[0047] Training data access and modeling module 265 represents software and / or hardware for accessing and utilizing the training data stored by training data module 213 in various ways. The training data may be utilized in connection with pre-processing mitigation (using an independent bias mitigation algorithm discussed elsewhere herein) or initial fairness metric determination for protected attributes in the training data. In connection with initial fairness metric determination, training data access and modeling module 265 accesses the training data stored by training data module 213 that is used to train the AI model. Training data access and modeling module 265 profiles one or more protected attributes available from training data module 213, such as by generating a statistical distribution of the one or more protected attributes that is used to find correlations between the protected and non-protected attributes, which are then used to generate an initial fairness metric for each protected attribute or to identify attributes in the training data that cause indirect bias (e.g., when the value of the protected attribute is correlated to the value of another attribute). The initial fairness metric may be provided to a user via the user interface 221 to initially assess whether bias is present in the AI model or associated training data. As discussed further below, in embodiments of the present invention, the protected attributes are selected by a user in association with the protected attributes module 268. In embodiments of the present invention (particularly those involving pre-processing mitigation of bias in the AI model), access to the training data is an important step, since bias may then be present in the trained AI model if bias is present in the training data. Pre-processing mitigation or other measures involving training data are effective techniques in debiasing an AI model. Profiling of protected attributes, statistical validation of training data, correlation of protected and non-protected attributes in the training data, and other identification of attributes in the training data can all be utilized in debiasing an AI model, thereby obtaining the typical benefits associated with debiasing an AI model.
[0048] Protection attributes module 268 represents software and / or hardware for implementing various functions related to one or more "protected attributes" utilized in various manners discussed herein. In one embodiment of the present invention, protection attributes module 268 receives a selection of one or more protected attributes (of all categories of "attributes" in the training data available from training data module 215) made by a user via user interface 221. The ease with which a user can select protected attributes, for example via user interface 221, provides a simple and streamlined means for the user to select exactly "how" to debias an AI model, thereby avoiding unnecessary technical complexity. The protected attributes selected by the user are utilized in various manners in connection with embodiments of the present invention, such as in connection with the generation of an initial fairness metric (discussed in connection with training data access and modeling module 265).
[0049] Group explanation module 271 represents software and / or hardware for receiving group explanations from a user for privileged and non-privileged groups via user interface 221. The privileged and non-privileged group explanations received from the user are used by group explanation module 271 to determine whether bias exists in the AI model stored by AI model storage 218 (specifically with respect to the identified group). For example, allowing a user to easily select a group explanation via user interface 221 provides a simple and streamlined means for the user to select exactly "how" to debias the AI model, thereby avoiding unnecessary technical complexity. If bias exists in AI model storage 218, group explanation module 271, together with user interface 221, displays the bias associated with the identified group via user interface 221.
[0050] Scoring module 274 represents software and / or hardware for generating and displaying various "scores," "scorecards," and / or "grades" associated with various aspects of AI bias and bias mitigation efforts (discussed herein). In one embodiment of the present invention, the "scores," "scorecards," and / or "grades" may be displayed to a user via user interface 221. For example, after two or more independent bias mitigation algorithms are run by bias mitigation algorithm module 263, scoring module 274 may generate a "scorecard" summarizing the results of removing AI bias from the AI model, including, for example, the difference in biased attributes after running each independent bias mitigation algorithm, as well as the impact on AI model accuracy and baseline results. In general, the scorecard is used to allow a user to see which bias mitigation algorithm is most effective in an easy to view manner. The scorecard may be based on any performance metric used to measure success in removing bias from an AI model. The performance metric utilized provides an easy manner for a user to see the results of the run. In various embodiments of the invention, for example, the scorecard may display a "grade" such as A, B, C, D, or F for success in removing bias from the AI model. In embodiments in which two or more independent bias mitigation algorithms are associated with exactly one bias mitigation strategy type of a plurality of bias mitigation strategy types, the scorecard reflects which bias mitigation strategy type is associated with a grade of the plurality of grades in the scorecard (i.e., independent bias mitigation algorithm 1 receives a B, independent bias mitigation algorithm 2 receives an A, and independent bias mitigation algorithm C receives an F).In embodiments of the invention in which multiple independent bias mitigation algorithms are run sequentially in the machine learning pipeline 223, the scoring module 274 generates a scorecard summarizing the results of the runs of the multiple independent bias mitigation algorithms, and the generated scorecard is displayed to the user via the user interface 221 (thereby providing the user with an easy way to view the scores). Updated scorecards displaying different results of runs of other independent bias mitigation algorithms selected by the user in the user interface 221 and run by the machine learning pipeline 223 may also be generated by the scoring module 274.
[0051] The machine learning environment communications module 276 represents software and / or hardware for all necessary communications between the automated machine learning environment 210 and the artificial intelligence prediction oversight module 260, including all data, requests, responses, etc., necessary for the execution of the embodiments of the invention disclosed herein.
[0052] 3 is a flow chart illustrating operational steps that a hardware component, multiple hardware components, and / or hardware device may perform in accordance with an embodiment of the present invention. As shown in FIG. 3, in step 310, the bias mitigation algorithm module 263 accesses the AI model stored by the AI model storage 218. In step 320, the bias mitigation algorithm module 263 executes independent bias mitigation algorithms to independently remove AI bias from the AI model stored by the AI model storage 218. In step 330, the bias mitigation algorithm module 263 requests display by the user interface 221 (e.g., via a scorecard generated by the scoring module 274) of the results of the execution of the two or more independent bias mitigation algorithms. In step 340, the bias mitigation algorithm module 263 receives from the user, on the user interface 221, a selection of one or more bias mitigation algorithms to be used with the AI model. In step 350, the bias mitigation algorithm module 263 executes the selected one or more bias mitigation algorithms via the machine learning pipeline 223 to correct bias in the AI model. In one embodiment of the present invention as illustrated in relation to FIG. 3, a user is provided with the ability to automatically view the potential results of one or more independent mitigation algorithms and select one to run automatically (thereby offering time savings and reducing the complexity associated with debiasing AI models).
[0053] FIG. 4 is a flow chart illustrating alternative operational steps that the hardware component, multiple hardware components, and / or hardware equipment may perform according to an embodiment of the present invention. As shown in FIG. 4, in step 410, the bias mitigation algorithm module 263 accesses the AI model stored by the AI model storage 218. In step 420, the bias mitigation algorithm module 263 executes two or more independent bias mitigation algorithms in the machine learning pipeline 223, and the result of the first bias mitigation algorithm is used as an input to the subsequent independent bias mitigation algorithm. In step 440, the bias mitigation algorithm module 263 requests display by the user interface 221 of the results of the execution of the machine learning pipeline 223, the results of the execution including a scorecard (generated by the scoring module 274) summarizing the results of removing the AI bias from the AI model. In step 450, the bias mitigation algorithm module 263 receives a selection of one or more new independent bias mitigation algorithms from the user via the user interface 221 to modify the machine learning pipeline 223. In step 460, the bias mitigation algorithm module 263 executes the modified machine learning pipeline 223 based on the user's selection of one or more new independent bias mitigation algorithms. In step 470, the bias mitigation algorithm module 263 displays, together with the user interface 221, an updated scorecard (generated by the scoring module 274) based on the modified machine learning pipeline 223. In one embodiment of the present invention as shown in relation to FIG. 4, a user capability is provided to automatically execute multiple independent bias mitigation algorithms in the machine learning pipeline to further debias the AI model in a user-friendly and effective manner. AI models are mathematically complex and unwieldy, and an automated functionality as presented in FIG. 4 presents an opportunity to allow any user to debias the AI model.
[0054] Based on the foregoing, a method, system, and computer program product have been disclosed. However, numerous modifications and substitutions may be made without departing from the scope of the invention. Thus, the present invention has been disclosed by way of example and not limitation.
Claims
1. 1. A method for automatically removing AI bias associated with an AI model using a computing device, comprising: accessing the AI model by a computing device; executing, by the computing device, two or more independent bias mitigation algorithms, each of the two or more independent bias mitigation algorithms designed to independently remove AI bias from the AI model; requesting a display to a user of results of running the two or more independent debiasing algorithms; receiving from the user a selection of one or more bias mitigation algorithms to be used with the AI model; and Executing the selected one or more bias mitigation algorithms to correct bias in the AI model. A method comprising:
2. 2. The method of claim 1, wherein each of the two or more independent bias mitigation algorithms is associated with exactly one bias mitigation strategy type of a plurality of available bias mitigation strategy types.
3. The method of claim 2 , wherein the available bias mitigation strategy types include pre-processing mitigation, mid-processing mitigation, and post-processing mitigation.
4. 10. The method of claim 1, further comprising accessing, by the computing device, training data used to train the AI model.
5. The method of claim 4 , further comprising profiling, by the computing device, one or more protected attributes in the training data.
6. The method of claim 5 , wherein profiling, by the computing device, one or more protected attributes in the training data comprises generating a statistical distribution of training data.
7. 7. The method of claim 6, wherein the statistical distribution of training data is used to find correlations between protected and non-protected attributes, and the correlations are used to identify attributes in the training data that give rise to implicit bias.
8. 10. The method of claim 1, further comprising determining whether bias is present in the AI model by utilizing one or more protective attributes selected by a user via a computer interface.
9. 10. The method of claim 1, further comprising determining whether bias is present in the AI model by utilizing one or more privileged or non-privileged group descriptions selected by the user via a computer interface.
10. The method of claim 1 , wherein the computing device is running a machine learning pipeline.
11. 2. The method of claim 1, wherein the results of the execution of the two or more independent bias mitigation algorithms include an independent effectiveness of each of the two or more independent bias mitigation algorithms.
12. The method of claim 11 , wherein the independent effectiveness of the two or more independent mitigation algorithms is associated with a minimum accuracy impact or a maximum fairness impact.
13. 10. The method of claim 1, further comprising generating and displaying a scorecard summarizing results of removing AI bias from the AI model after running the selected one or more bias mitigation algorithms, and displaying baseline results.
14. 14. The method of claim 13, wherein the scorecard is based on a performance metric, the performance metric being used to measure success in removing bias from the AI model.
15. The method of claim 14 , wherein the performance metrics are displayed to the user via a computer interface.
16. 14. The method of claim 13, wherein the selected one or more bias mitigation algorithms are associated with exactly one bias mitigation strategy type of a plurality of bias mitigation strategy types, and the scorecard reflects which bias mitigation strategy type is associated with each grade of a plurality of grades in the scorecard.
17. 1. A method for removing AI bias associated with an AI model using a computing device, comprising: accessing the AI model by a computing device; running, by the computing device, two or more independent bias mitigation algorithms in a machine learning pipeline, where a result of a first independent bias mitigation algorithm is used as an input to a subsequent independent bias mitigation algorithm; requesting that results of the execution of the machine learning pipeline be displayed to a user, the results of the execution of the machine learning pipeline including a scorecard summarizing results of removing AI bias from the AI model; receiving a selection of one or more new independent debiasing algorithms from a user to modify the machine learning pipeline; executing, by the computing device, a modified machine learning pipeline based on the selection from the user; and displaying an updated scorecard to the user based on the modified machine learning pipeline. A method comprising:
18. 20. The method of claim 17, wherein each of the two or more independent bias mitigation algorithms is associated with exactly one bias mitigation strategy type of a plurality of bias mitigation strategy types.
19. 20. The method of claim 18, wherein the plurality of bias mitigation strategy types selectively include two or more of the following: pre-processing mitigation, mid-processing mitigation, and post-processing mitigation.
20. 1. A computer system for automatically removing AI bias associated with an AI model, comprising: one or more computer processors; one or more computer readable storage media; program instructions stored on the computer-readable storage medium and executed by at least one of the one or more processors, the program instructions comprising: program instructions for accessing the AI model; program instructions for executing two or more independent bias mitigation algorithms, each of the two or more independent bias mitigation algorithms designed to independently remove AI bias from the AI model; program instructions for requesting a display to a user of results of execution of the two or more independent debiasing algorithms; program instructions for receiving from the user a selection of one or more bias mitigation algorithms to be used with the AI model; and and program instructions for executing the selected one or more bias mitigation algorithms to correct bias in the AI model. A computer system comprising: