BACKGROUND OF THE INVENTIONField of the InventionThe present invention relates in general to the field of computers and similar technologies, and in particular to software utilized in this field. Still more particularly, it relates to a method, system and computer-usable medium for providing augmented intelligence system (AIS) assurance.
Description of the Related ArtIn general, “big data” refers to a collection of datasets so large and complex that they become difficult to process using typical database management tools and traditional data processing approaches. These datasets can originate from a wide variety of sources, including computer systems, mobile devices, credit card transactions, television broadcasts, and medical equipment, as well as infrastructures associated with cities, sensor-equipped buildings and factories, and transportation systems. Challenges commonly associated with big data, which may be a combination of structured, unstructured, and semi-structured data, include its capture, curation, storage, search, sharing, analysis and visualization. In combination, these challenges make it difficult to efficiently process large quantities of data within tolerable time intervals.
Nonetheless, big data analytics hold the promise of extracting insights by uncovering difficult-to-discover patterns and connections, as well as providing assistance in making complex decisions by analyzing different and potentially conflicting options. As such, individuals and organizations alike can be provided new opportunities to innovate, compete, and capture value.
One aspect of big data is “dark data,” which generally refers to data that is either not collected, neglected, or underutilized. Examples of data that is not currently being collected includes location data prior to the emergence of companies such as Foursquare or social data prior to the advent of companies such as Facebook. An example of data that is being collected, but may be difficult to access at the right time and place, includes the side effects of certain spider bites while an affected individual is on a camping trip. As another example, data that is collected and available, but has not yet been productized or fully utilized, may include disease insights from population-wide healthcare records and social media feeds. As a result, a case can be made that dark data may in fact be of higher value than big data in general, especially as it can likely provide actionable insights when it is combined with readily-available data.
SUMMARY OF THE INVENTIONA method, system and computer-usable medium are disclosed for performing cognitive inference and learning operations.
In one embodiment, the invention relates to a method for performing a cognitive information processing operation, the method comprising: receiving data from a plurality of data sources; processing the data from the plurality of data sources to provide cognitively processed insights via an augmented intelligence system, the augmented intelligence system executing on a hardware processor of an information processing system, the augmented intelligence system and the information processing system providing a cognitive computing function; performing an impartiality assessment operation via an impartiality assessment engine, the impartiality assessment operation detecting a presence of bias in an outcome of the cognitive computing function, the impartiality assessment operation generating a burden score representing the presence of bias in the outcome; and, providing the cognitively processed insights to a destination, the destination comprising a cognitive application, the cognitive application enabling a user to interact with the cognitive insights.
In another embodiment, the invention relates to a system comprising: a hardware processor; a data bus coupled to the hardware processor; and a non-transitory, computer-readable storage medium embodying computer program code, the non-transitory, computer-readable storage medium being coupled to the data bus, the computer program code interacting with a plurality of computer operations and comprising instructions executable by the hardware processor and configured for: receiving data from a plurality of data sources; processing the data from the plurality of data sources to provide cognitively processed insights via an augmented intelligence system, the augmented intelligence system executing on a hardware processor of an information processing system, the augmented intelligence system and the information processing system providing a cognitive computing function; performing an impartiality assessment operation via an impartiality assessment engine, the impartiality assessment operation detecting a presence of bias in an outcome of the cognitive computing function, the impartiality assessment operation generating a burden score representing the presence of bias in the outcome; and, providing the cognitively processed insights to a destination, the destination comprising a cognitive application, the cognitive application enabling a user to interact with the cognitive insights.
In another embodiment, the invention relates to a non-transitory, computer-readable storage medium embodying computer program code, the computer program code comprising computer executable instructions configured for: receiving data from a plurality of data sources; processing the data from the plurality of data sources to provide cognitively processed insights via an augmented intelligence system, the augmented intelligence system executing on a hardware processor of an information processing system, the augmented intelligence system and the information processing system providing a cognitive computing function; performing an impartiality assessment operation via an impartiality assessment engine, the impartiality assessment operation detecting a presence of bias in an outcome of the cognitive computing function, the impartiality assessment operation generating a burden score representing the presence of bias in the outcome; and, providing the cognitively processed insights to a destination, the destination comprising a cognitive application, the cognitive application enabling a user to interact with the cognitive insights.
BRIEF DESCRIPTION OF THE DRAWINGSThe present invention may be better understood, and its numerous objects, features and advantages made apparent to those skilled in the art by referencing the accompanying drawings. The use of the same reference number throughout the several figures designates a like or similar element.
FIG. 1 depicts an exemplary client computer in which the present invention may be implemented;
FIG. 2 is a simplified block diagram of an augmented intelligence system (AIS);
FIG. 3 is a simplified block diagram of an AIS reference model;
FIG. 4 is a simplified block diagram of an AIS platform;
FIG. 5 shows a simplified block diagram of components associated with a cognitive process foundation;
FIG. 6 is a simplified block diagram of a plurality of AIS platforms implemented within a hybrid cloud environment;
FIG. 7 shows components of a plurality of AIS platforms implemented within a hosted/private/hybrid cloud environment;
FIGS. 8aand 8bare a simplified process diagram showing the performance of cognitive process promotion operations;
FIG. 9 is a simplified process diagram showing phases of a cognitive process lifecycle;
FIGS. 10athrough 10fshow operations performed in a cognitive process lifecycle;
FIGS. 11aand 11bare a simplified process flow showing the lifecycle of cognitive agents implemented to perform AIS operations;
FIG. 12 is a simplified block diagram of an AIS used to perform pattern-based continuous learning operations;
FIG. 13 is a simplified block diagram of components associated with an AIS governance and control framework implemented to provide AIS assurance;
FIG. 14 shows a chart of input data points used to generate counterfactuals;
FIGS. 15athrough 15fshow a simplified depiction of the generation of counterfactuals; and
FIGS. 16aand 16bshow a generalized flowchart showing the performance of AIS assurance operations.
DETAILED DESCRIPTIONA method, system and computer-usable medium are disclosed for providing augmented intelligence system (AIS) assurance. Certain aspects of the invention reflect an appreciation that augmented intelligence is not technically different from what is generally regarded as general artificial intelligence (AI). However, certain aspects of the invention likewise reflect an appreciation that typical implementations of augmented intelligence are more oriented towards complementing, or reinforcing, the role human intelligence plays when discovering relationships and solving problems. Likewise, various aspects of the invention reflect an appreciation that certain advances in general AI approaches may provide different perspectives on how computers and software can participate in tasks that have previously been thought of being exclusive to humans.
Certain aspects of the invention reflect an appreciation that processes and applications employing AI models have become common in recent years. However, certain aspects of the invention likewise reflect an appreciation that known approaches to building, deploying, and maintaining such processes, applications and models at significant scale can be challenging. More particularly, various technical hurdles can prevent operational success in AI application development and deployment. As an example, empowering development teams to more easily develop AI systems and manage their end-to-end lifecycle can prove challenging.
Accordingly, certain aspects of the invention may reflect an appreciation that the ability to orchestrate a pipeline of AI components not only facilitates chained deployment of an AI system, but will likely reduce implementation intervals while simultaneously optimizing the use of human and computing resources. Likewise, certain aspects of the invention reflect an appreciation that achieving consistency across AI implementations may be facilitated by easily sharing machine learning (ML) models within the context of a standardized application modeling and execution language. In particular, such an approach may be advantageous when it is agnostic to common application development platforms and database conventions.
Certain aspects of the invention likewise reflect an appreciation that the development of ML models is often a small, but important part of the AI development process. However, getting ML models developed by data scientists and then putting them into production requires time and resources, both of which may be limited. Likewise, certain aspects of the invention reflect that AI systems are generally complex. Accordingly, a repeatable approach that reduces the skill required to develop and deploy AI systems can assist in achieving scalability of AI initiatives.
Likewise, certain aspects of the invention reflect an appreciation that AI, and the ML models they employ, has begun to play an increasingly important role in our society. Certain aspects of the invention likewise reflect an appreciation that a number of questions arise from the use of ML models and the consequences of the decisions they make. For example, how did the model arrive at its outcome? If an individual receives an unfavorable outcome from the model, what is their recourse? Is there something in their personal lives that can be changed to result in a different outcome? Likewise, has the model been unfair to a particular group? How easily can the model be deceived?
Accordingly, certain aspects of the invention likewise reflect there are ethical, moral, and social obligations for researchers, developers, and organizations alike to ensure their ML models are designed, implemented, and maintained responsibly. Various aspects of the invention likewise reflect an appreciation that one approach to achieving responsible design, implementation, and maintenance of ML models is to provide auditability of their fairness, robustness, transparency, and interpretability.
Certain aspects of the invention likewise reflect an appreciation that known approaches to providing such auditability can prove to be cumbersome, time-consuming, and at times, error-prone, especially when the internal design particulars of an ML model are unknown. Furthermore, certain aspects of the invention likewise reflect an appreciation that known approaches to ML model auditability typically focus on issues individually, not in a unified manner. Moreover, such approaches likewise lack the ability to audit an ML model acting as a black box, whose internal design particulars are unknown.
The present invention may be a system, a method, and/or a computer program product. The computer program product may include a computer readable storage medium (or media) having computer readable program instructions thereon for causing a processor to carry out aspects of the present invention. The computer readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing.
A non-exhaustive list of more specific examples of the computer readable storage medium includes the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing. A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.
Computer readable program instructions described herein can be downloaded to respective computing/processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and/or a wireless network. The network may comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers. A network adapter card or network interface in each computing/processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing/processing device.
Computer readable program instructions for carrying out operations of the present invention may be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as SMALLTALK, C++ or the like, and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic arrays (PLA) may execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present invention.
Aspects of the present invention are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer readable program instructions.
These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, a programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer readable storage medium having instructions stored therein comprises an article of manufacture including instructions which implement aspects of the function/act specified in the flowchart and/or block diagram block or blocks.
The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process, such that the instructions which execute on the computer, other programmable apparatus, or other device implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts or carry out combinations of special purpose hardware and computer instructions.
FIG. 1 is a generalized illustration of aninformation processing system100 that can be used to implement the system and method of the present invention. Theinformation processing system100 includes a processor (e.g., central processor unit or “CPU”)102, input/output (I/O)devices104, such as a display, a keyboard, a mouse, a touchpad or touchscreen, and associated controllers, a hard drive ordisk storage106, and variousother subsystems108. In certain embodiments, theinformation processing system100 may also include anetwork port110 operable to connect to anetwork140, which is likewise accessible by aservice provider server142. Theinformation processing system100 likewise includessystem memory112, which is interconnected to the foregoing via one ormore buses114.System memory112 further comprises operating system (OS)116 and in certain embodiments may also comprise an augmented intelligence system (AIS)118. In these and other embodiments, theAIS118 may likewise comprise a cognitiveagent composition platform120, a cognitiveprocess orchestration platform126, and an AIS governance andassurance framework128. In certain embodiments, the cognitiveagent composition platform120 may include a cognitiveskill composition platform122. In certain embodiments, theinformation processing system100 may be implemented to download theAIS118 from theservice provider server142. In another embodiment, the functionality of theAIS118 may be provided as a service from theservice provider server142.
In certain embodiments, the AIS governance andassurance framework128 may be implemented to perform an AIS assurance operation, described in greater detail herein. In certain embodiments, the AIS assurance operation may include the performance of an AIS impartiality assessment operation, an AIS robustness assessment operation, an AIS explainability operation, an AIS explainability with recourse operation, or a combination thereof, as likewise described in greater detail herein. In certain embodiments, the AIS assurance operation may be performed on aservice provider server142. In certain embodiments, performance of the AIS assurance operation may be provided as an AIS assurance service. In certain embodiments, the AIS assurance service may be referred to as AIS Trust as a Service (TaaS).
In certain embodiments, theAIS118 may be implemented to perform various cognitive computing operations. As used herein, cognitive computing broadly refers to a class of computing involving self-learning systems that use techniques such as spatial navigation, machine vision, and pattern recognition to increasingly mimic the way the human brain works. To be more specific, earlier approaches to computing typically solved problems by executing a set of instructions codified within software. In contrast, cognitive computing approaches are data-driven, sense-interpretation, insight-extracting, problem-solving, recommendation-making systems that have more in common with the structure of the human brain than with the architecture of contemporary, instruction-driven computers.
To further differentiate these distinctions, traditional computers must first be programmed by humans to perform specific tasks, while cognitive computing systems learn from their interactions with data and humans alike, and in a sense, program themselves to perform new tasks. To summarize the difference between the two, traditional computers are designed to calculate rapidly. In contrast, cognitive computing systems are designed to quickly draw inferences from data and gain new knowledge.
Cognitive computing systems achieve these abilities by combining various aspects of artificial intelligence, natural language processing, dynamic learning, and hypothesis generation to render vast quantities of intelligible data to assist humans in making better decisions. As such, cognitive computing systems can be characterized as having the ability to interact naturally with people to extend what either humans, or machines, could do on their own. Furthermore, they are typically able to process natural language, multi-structured data, and experience much in the same way as humans. Moreover, they are also typically able to learn a knowledge domain based upon the best available data and get better, and more immersive, over time.
It will be appreciated that more data is currently being produced every day than was recently produced by human beings from the beginning of recorded time. Deep within this ever-growing mass of data is a class of data known as “dark data,” which includes neglected information, ambient signals, and insights that can assist organizations and individuals in augmenting their intelligence and deliver actionable insights through the implementation of cognitive processes.
As used herein, a cognitive process broadly refers to an instantiation of one or more associated cognitive computing operations, described in greater detail herein. In certain embodiments, a cognitive process may be implemented as a cloud-based, big data interpretive process that learns from user engagement and data interactions. In certain embodiments, such cognitive processes may be implemented to extract patterns and insights from dark data sources that are currently almost completely opaque. Examples of dark data include disease insights from population-wide healthcare records and social media feeds, or from new sources of information, such as sensors monitoring pollution in delicate marine environments.
In certain embodiments, a cognitive process may be implemented to include a cognitive application. As used herein, a cognitive application broadly refers to a software application that incorporates one or more cognitive processes. In certain embodiments, a cognitive application may be implemented to incorporate one or more cognitive processes with other functionalities, as described in greater detail herein.
Over time, it is anticipated that cognitive processes and applications will fundamentally change the ways in which many organizations operate as they invert current issues associated with data volume and variety to enable a smart, interactive data supply chain. Ultimately, cognitive processes and applications hold the promise of receiving a user query and immediately providing a data-driven answer from a masked data supply chain in response. As they evolve, it is likewise anticipated that cognitive processes and applications may enable a new class of “sixth sense” processes and applications that intelligently detect and learn from relevant data and events to offer insights, predictions and advice rather than wait for commands. Just as web and mobile applications have changed the way people access data, cognitive processes and applications may change the way people consume, and become empowered by, multi-structured data such as emails, social media feeds, doctors' notes, transaction records, and call logs.
However, the evolution of such cognitive processes and applications has associated challenges, such as how to detect events, ideas, images, and other content that may be of interest. For example, assuming that the role and preferences of a given user are known, how is the most relevant information discovered, prioritized, and summarized from large streams of multi-structured data such as news feeds, blogs, social media, structured data, and various knowledge bases? To further the example, what can a healthcare executive be told about their competitor's market share? Other challenges include the creation of a contextually-appropriate visual summary of responses to questions or queries.
FIG. 2 is a simplified block diagram of an augmented intelligence system (AIS) implemented in accordance with an embodiment of the invention. As used herein, augmented intelligence broadly refers to an alternative conceptualization of general artificial intelligence (AI) oriented to the use of AI in an assistive role, with an emphasis on the implementation of cognitive computing, described in greater detail herein, to enhance human intelligence rather than replace it. In certain embodiments, anAIS118 may be implemented to include a cognitiveagent composition platform120 and a cognitiveprocess orchestration platform126.
In certain embodiments, the cognitiveagent composition platform120 may be implemented to composecognitive agents250, which are in turn orchestrated by the cognitiveprocess orchestration platform126 to generate one or morecognitive insights262, likewise described in greater detail herein. As used herein, acognitive agent250 broadly refers to a computer program that performs a task with minimal guidance from users and learns from each interaction with data and human users. As used herein, as it relates to acognitive agent250 performing a particular task, minimal guidance broadly refers to the provision of non-specific guidelines, parameters, objectives, constraints, procedures, or goals, or a combination thereof, for the task by a user. For example, a user may provide specific guidance to acognitive agent250 by asking, “How much would I have to improve my body mass index (BMI) to lower my blood pressure by twenty percent?” Conversely, a user may provide minimal guidance to thecognitive agent250 by asking, “Given the information in my current health profile, what effect would improving my BMI have on my overall health?
In certain embodiments, one or morecognitive agents250 may be implemented as deployable modules that aggregate the logic, data and models required to implement an augmented intelligence operation. In certain embodiments, a particularcognitive agent250 may be implemented to be triggered by othercognitive agents250, timers, or by external requests. In certain embodiments, acognitive agent250 may be composed from othercognitive agents250 to create new functionalities. In certain embodiments, acognitive agent250 may be implemented to expose its functionality through a web service, which can be used to integrate it into a cognitive process or application, described in greater detail herein. In certain embodiments,cognitive agents250 may be implemented to ingest various data, such aspublic202, proprietary204, transaction, social208,device210, and ambient212 data, to provide acognitive insight262 or make a recommendation.
In certain embodiments, the cognitiveagent composition platform120 may be implemented to usecognitive skills226, input/output services, datasets, and data flows, or a combination thereof, to compose acognitive agent250. In certain embodiments, acognitive agent250 may be implemented with an integration layer. In certain embodiments, the integration layer may be implemented to provide data to a particularcognitive agent250 from a various data sources, services, such as a web service, othercognitive agents250, or a combination thereof. In certain embodiments, the integration layer may be implemented to provide a user interface (UI) to acognitive agent250. In certain embodiments, the UI may include a web interface, a mobile device interface, or stationary device interface.
In certain embodiments, the cognitiveagent composition platform120 may be implemented to include a cognitiveskill composition platform122. In certain embodiments, the cognitiveskill composition platform122 may be implemented to compose acognitive skill226. As used herein, acognitive skill226 broadly refers to the smallest distinct unit of functionality in acognitive agent250 that can be invoked by one or more inputs to produce one or more outputs.
In certain embodiments, acognitive skill226 may be implemented to execute an atomic unit of work, which can be triggered by one or more inputs to produce one or more outputs. In certain embodiments, the inputs and outputs may include services, managed content, database connections, and so forth. In certain embodiments,cognitive skills226 may be implemented to be connected via input/output units, or synapses, which control the flow of data through an associatedcognitive agent250.
In certain embodiments, one or morecognitive skills226 may be implemented to provide various disjointed functionalities in acognitive agent250. In certain embodiments, such functionalities may include ingesting, enriching, and storing data from a data stream, training and testing a machine learning (ML) algorithm to generate an ML model, and loading data from an external source, such as a file. In certain embodiments, such functionalities may likewise include transforming the raw data into a dataset for further processing, extracting features from a dataset, or invoking various services, such as web services familiar to those of skill in the art.
As used herein, acognitive model222 broadly refers to a machine learning model that serves as a mathematical representation of a real-world process that can be facilitated by a cognitive computing operation. In certain embodiments, the cognitiveskill composition platform122 may be implemented to compose acognitive skill226 from one or morecognitive models222. In certain embodiments, the implementation of acognitive model222 may involve the implementation of twocognitive actions224. In certain embodiments, the firstcognitive action224 may be implemented to train thecognitive model222 and the secondcognitive action224 may be implemented to make predictions based upon a set of unlabeled data to provide acognitive insight262.
In certain embodiments, acognitive action224 may be implemented as a function, a batch job, or a daemon, all of which will be familiar to skilled practitioners of the art. In certain embodiments,cognitive actions224 may be implemented to be decoupled from a particularcognitive skill226 such that they may be reused by othercognitive skills226. In various embodiments, acognitive action224 implemented as a batch job may be configured to run at certain intervals or be triggered to run when a certain event takes place.
In certain embodiments, acognitive skill226 may be implemented to include a definition identifying various dataset input requirements,cognitive insight262 outputs, and datasets needed to complete the cognitive skill's226 associatedcognitive actions224. In certain embodiments, an output of onecognitive skill226 may be used as the input to anothercognitive skill226 to build complexcognitive agents250. In various embodiments, certaincognitive skills226 may be implemented to control the flow of data through an associatedcognitive agent250. In various embodiments, acognitive skill226 may be implemented as a modular entity to interface a particularcognitive agent250 to certain external applications and Application Program Interfaces (APIs). In certain embodiments, acognitive skill226 may be implemented to perform extract, transform, load (ETL) operations upon the output of anothercognitive skill226, thereby serving as a wrapper for an ML classifier or regressor.
As used herein, an input/output service broadly refers to a live link that is implemented to send and receive data. In certain embodiments, input/output services may be defined in input/output pairs that require and deliver a payload to and from acognitive agent250. In certain embodiments, public202, proprietary204, transaction, social208,device210, and ambient212 data may be ingested and processed by theAIS118 to generate one or more datasets. As used herein, a dataset broadly refers to a type of data input acognitive agent250 may be implemented to ingest. In certain embodiments, such a dataset may be implemented to include a definition that includes the source of the data and its corresponding schema.
Various embodiments of the invention reflect an appreciation that the implementation ofcognitive skills226 in certain embodiments may streamline, or otherwise facilitate, the construction of certaincognitive agents250. In various embodiments, certaincognitive skills226 may be implemented as micro services and published in a repository of AIS components, described in greater detail herein, as ready-to-use units, which can be mixed and matched between cognitive computing projects. Certain embodiments of the invention reflect an appreciation that the ability to adopt an assembly model that supports the mixing and matching ofcognitive skills226 between cognitive computing projects may minimize the effort required to rewrite code for newcognitive agents250, and by extension, shorten development cycles.
As shown inFIG. 2, examples ofcognitive skills226 used by the cognitiveagent composition platform1202 to generatecognitive agents250 includesemantic analysis228,goal optimization230,collaborative filtering232, andcommon sense reasoning234. Other examples of suchcognitive skills226 includenatural language processing236,summarization238, temporal/spatial reasoning240, andentity resolution242. As used herein, semantic analysis broadly refers to performing various analysis operations to achieve a semantic level of understanding about language by relating syntactic structures.
In certain embodiments, various syntactic structures may be related from the levels of phrases, clauses, sentences, and paragraphs to the level of the body of content as a whole, and to its language-independent meaning. In certain embodiments, thesemantic analysis228 cognitive skill may include processing a target sentence to parse it into its individual parts of speech, tag sentence elements that are related to certain items of interest, identify dependencies between individual words, and perform co-reference resolution. For example, if a sentence states that the author really enjoys the hamburgers served by a particular restaurant, then the name of the “particular restaurant” is co-referenced to “hamburgers.”
As likewise used herein, goal optimization broadly refers to performing multi-criteria decision making operations to achieve a given goal or target objective. In certain embodiments, one ormore goal optimization230 cognitive skills may be orchestrated by thecognitive composition platform122 to generate acognitive agent250 for defining predetermined goals, which in turn contribute to the generation of an associatedcognitive insight262. For example, goals for planning a vacation trip may include low cost (e.g., transportation and accommodations), location (e.g., by the beach), and speed (e.g., short travel time). In this example, it will be appreciated that certain goals may be in conflict with another. As a result, acognitive insight262 provided by theAIS118 to a traveler may indicate that hotel accommodations by a beach may cost more than they care to spend.
Collaborative filtering, as used herein, broadly refers to the process of filtering for information or patterns through the collaborative involvement of multiple cognitive agents, viewpoints, data sources, and so forth. In certain embodiments, the application of suchcollaborative filtering232 cognitive skills may involve very large and different kinds of data sets, including sensing and monitoring data, financial data, and user data of various kinds. In certain embodiments, collaborative filtering may also refer to the process of making automatic predictions associated with predetermined interests of a user by collecting preferences or other information from many users. For example, if person ‘A’ has the same opinion as a person ‘B’ for a given issue ‘x’, then an assertion can be made that person ‘A’ is more likely to have the same opinion as person ‘B’ opinion on a different issue ‘y’ than to have the same opinion on issue ‘y’ as a randomly chosen person. In certain embodiments, thecollaborative filtering206 cognitive skill may be implemented with various recommendation engines familiar to those of skill in the art to make recommendations.
As used herein, common sense reasoning broadly refers to simulating the human ability to make deductions from common facts they inherently know. Such deductions may be made from inherent knowledge about the physical properties, purpose, intentions and possible behavior of ordinary things, such as people, animals, objects, devices, and so on. In various embodiments, certaincommon sense reasoning234 cognitive skills may be composed by the cognitiveagent composition platform120 to generate acognitive agent250 that assists theAIS118 in understanding and disambiguating words within a predetermined context. In certain embodiments, thecommon sense reasoning234 cognitive skill may be used by the cognitiveagent composition platform120 to generate acognitive agent250 that allows theAIS118 to generate text or phrases related to a target word or phrase to perform deeper searches for the same terms. It will be appreciated that if the context of a word is better understood, then a common sense understanding of the word can then be used to assist in finding better or more accurate information. In certain embodiments, the better or more accurate understanding of the context of a word, and its related information, allows the AILS118 to make more accurate deductions, which are in turn used to generatecognitive insights262.
As likewise used herein, natural language processing (NLP) broadly refers to interactions with a system, such as theAIS118, through the use of human, or natural, languages. In certain embodiments,various NLP210 cognitive skills may be implemented by theAIS118 to achieve natural language understanding, which enables it to not only derive meaning from human or natural language input, but to also generate natural language output.
Summarization, as used herein, broadly refers to processing a set of information, organizing and ranking it, and then generating a corresponding summary. As an example, a news article may be processed to identify its primary topic and associated observations, which are then extracted, ranked, and presented to the user. As another example, page ranking operations may be performed on the same news article to identify individual sentences, rank them, order them, and determine which of the sentences are most impactful in describing the article and its content. As yet another example, a structured data record, such as a patient's electronic medical record (EMR), may be processed usingcertain summarization238 cognitive skills to generate sentences and phrases that describes the content of the EMR. In certain embodiments,various summarization238 cognitive skills may be used by the cognitiveagent composition platform120 to generate to generate acognitive agent250 that provides summarizations of content streams, which are in turn used by theAIS118 to generatecognitive insights262.
As used herein, temporal/spatial reasoning broadly refers to reasoning based upon qualitative abstractions of temporal and spatial aspects of common sense knowledge, described in greater detail herein. For example, it is not uncommon for a particular set of data to change over time. Likewise, other attributes, such as its associated metadata, may also change over time. As a result, these changes may affect the context of the data. To further the example, the context of asking someone what they believe they should be doing at 3:00 in the afternoon during the workday while they are at work may be quite different than asking the same user the same question at 3:00 on a Sunday afternoon when they are at home. In certain embodiments, various temporal/spatial reasoning214 cognitive skills may be used by the cognitiveagent composition platform120 to generate acognitive agent250 for determining the context of queries, and associated data, which are in turn used by theAIS118 to generatecognitive insights262.
As likewise used herein, entity resolution broadly refers to the process of finding elements in a set of data that refer to the same entity across different data sources (e.g., structured, non-structured, streams, devices, etc.), where the target entity does not share a common identifier. In certain embodiments, various entity resolution216 cognitive skills may be used by the cognitiveagent composition platform120 to generate acognitive agent250 that can be used to identify significant nouns, adjectives, phrases or sentence elements that represent various predetermined entities within one or more domains. From the foregoing, it will be appreciated that the generation of one or more of thesemantic analysis228,goal optimization230,collaborative filtering232,common sense reasoning234,natural language processing236,summarization238, temporal/spatial reasoning240, andentity resolution240 cognitive skills by the cognitiveprocess orchestration platform126 can facilitate the generation of a semantic, cognitive model.
In certain embodiments, theAIS118 may receive public202, proprietary204, transaction, social208,device210, and ambient212 data, or a combination thereof, which is then processed by theAIS118 to generate one or morecognitive graphs230. As used herein, public202 data broadly refers to any data that is generally available for consumption by an entity, whether provided for free or at a cost. As likewise used herein, proprietary204 data broadly refers to data that is owned, controlled, or a combination thereof, by an individual user, group, or organization, which is deemed important enough that it gives competitive advantage to that individual or organization. In certain embodiments, the organization may be a governmental, non-profit, academic or social entity, a manufacturer, a wholesaler, a retailer, a service provider, an operator of anAIS118, and others. In certain embodiments, thepublic data202 and proprietary204 data may include structured, semi-structured, or unstructured data.
As used herein,transaction206 data broadly refers to data describing an event, and is usually described with verbs. In typical usage, transaction data includes a time dimension, a numerical value, and certain reference data, such as references to one or more objects. In certain embodiments, thetransaction206 data may include credit or debit card transaction data, financial services data of all kinds (e.g., mortgages, insurance policies, stock transfers, etc.), purchase order data, invoice data, shipping data, receipt data, or any combination thereof. In certain embodiments, thetransaction data206 may include blockchain-associated data, smart contract data, or any combination thereof. Skilled practitioners of the art will realize that many such examples oftransaction206 data are possible. Accordingly, the foregoing is not intended to limit the spirit, scope or intent of the invention.
As used herein, social208 data broadly refers to information that social media users publicly share, which may include metadata such as the user's location, language spoken, biographical, demographic or socio-economic information, and shared links. As likewise used herein,device210 data broadly refers to data associated with, or generated by, an apparatus. Examples ofdevice210 data include data associated with, or generated by, a vehicle, home appliance, security systems, and so forth, that contain electronics, software, sensors, actuators, and connectivity, or a combination thereof, that allow the collection, interaction and provision of associated data.
As used herein, ambient212 data broadly refers to input signals, or other data streams, that may contain data providing additional insight or context to public202, proprietary204,transaction206, social208, anddevice210 data received by theAIS118. For example, ambient signals may allow theAIS118 to understand that a user is currently using their mobile device, at location ‘x’, at time ‘y’, doing activity ‘z’. To continue the example, there is a difference between the user using their mobile device while they are on an airplane versus using their mobile device after landing at an airport and walking between one terminal and another.
To extend the example, ambient212 data may add additional context, such as the user is in the middle of a three leg trip and has two hours before their next flight. Further, they may be in terminal A1, but their next flight is out of C1, it is lunchtime, and they want to know the best place to eat. Given the available time the user has, their current location, restaurants that are proximate to their predicted route, and other factors such as food preferences, theAIS118 can perform various cognitive operations and provide acognitive insight262 that includes a recommendation for where the user can eat.
To extend the example even further, the user may receive a notification while they are eating lunch at a recommended restaurant that their next flight has been canceled due to the previously-scheduled aircraft being grounded. As a result, the user may receive twocognitive insights262 suggesting alternative flights on other carriers. The firstcognitive insight262 may be related to a flight that leaves within a half hour. The secondcognitive insight262 may be related to a second flight that leaves in an hour but requires immediate booking and payment of additional fees. Knowing that they would be unable to make the first flight in time, the user elects to use the secondcognitive insight262 to automatically book the flight and pay the additional fees through the use of a digital currency transaction.
In certain embodiments, theAIS118 may be implemented to represent knowledge in thecognitive graph260, such that the knowledge can be used to perform reasoning and inference operations. In certain embodiments, the resulting reasoning and inference operations may be implemented to provide self-assurance. Accordingly, such approaches may be implemented in certain embodiments as a cognitive inference and learning system (CILS). In certain embodiments, the self-assurance resulting from such reasoning and inference operations may be implemented to providecognitive insights262 with associated explainability. In these embodiments, such explainability may be implemented to provide a rationale for their associatedcognitive insights262. As used herein, as it relates to explainability, described in greater detail herein, rationale broadly refers to an explanation of the basis, or the set of reasons, or a combination thereof, used to generate a particularcognitive insight262.
As used herein, acognitive graph260 refers to a representation of expert knowledge, associated with individuals and groups over a period of time, to depict relationships between people, places, and things using words, ideas, audio and images. As such, it is a machine-readable formalism for knowledge representation that provides a common framework allowing data and knowledge to be shared and reused across user, application, organization, and community boundaries. In various embodiments, the information contained in, and referenced by, acognitive graph260 may be derived from many sources, such aspublic202, proprietary204, transaction, social208,device210, and ambient212 data, or a combination thereof. In certain of these embodiments, thecognitive graph260 may be implemented to assist in the identification and organization of information associated with how people, places and things are related to one other. In various embodiments, thecognitive graph260 may be implemented to enable automatedcognitive agents250, described in greater detail herein, to access the Web more intelligently, enumerate inferences through utilization of various data sources, and provide answers to questions by serving as a computational knowledge engine.
In certain embodiments, thecognitive graph260 may be implemented to not only elicit and map expert knowledge by deriving associations from data, but to also render higher level insights and accounts for knowledge creation through collaborative knowledge modeling. In certain embodiments, thecognitive graph260 may be implements as a machine-readable, declarative memory system that stores and learns both episodic memory (e.g., specific personal experiences associated with an individual or entity), and semantic memory, which stores factual information (e.g., geo location of an airport or restaurant).
For example, thecognitive graph260 may know that a given airport is a place, and that there is a list of related places such as hotels, restaurants and departure gates. Furthermore, thecognitive graph260 may know that people such as business travelers, families and college students use the airport to board flights from various carriers, eat at various restaurants, or shop at certain retail stores. Thecognitive graph260 may also have knowledge about the key attributes from various retail rating sites that travelers have used to describe the food and their experience at various venues in the airport over the past six months.
In various embodiments, the cognitiveprocess orchestration platform126 may be implemented to orchestrate certaincognitive agents250 to generate one or morecognitive insights262. In certain embodiments, the resultingcognitive insights262 may be delivered to one ormore destinations264, described in greater detail herein. As used herein, acognitive insight262 broadly refers to an actionable, real-time recommendation tailored to a particular user, as described in greater detail herein. Examples of such recommendations include getting an immunization, correcting a billing error, taking a bus to an appointment, considering the purchase of a particular item, selecting a recipe, eating a particular food item, and so forth.
In certain embodiments,cognitive insights262 may be generated from various data sources, such aspublic202, proprietary204, transaction, social208,device210, and ambient212 data, acognitive graph260, or a combination thereof. For example, if a certain percentage of the population in a user's community is suffering from the flu, then the user may receive a recommendation to get a flu shot. In this example, determining the afflicted percentage of the population, or determining how to define the community itself, may prove challenging. Accordingly, generating meaningful insights or recommendations may be difficult for an individual user, especially when related datasets are large.
In certain embodiments, a resultingcognitive insight262 stream may be implemented to be bidirectional, supporting flows of information both too and fromvarious destinations264. In these embodiments, a first flow ofcognitive insights262 may be generated in response to receiving a query, and subsequently delivered to one ormore destinations264. Likewise, a second flow ofcognitive insights262 may be generated in response to detecting information about a user of one or more of thedestinations264.
Such use may result in the provision of information to theAIS118. In response, theAIS118 may process that information, in the context of what it knows about the user, and provide additional information to the user, such as a recommendation. In certain embodiments, a stream ofcognitive insights262 may be configured to be provided in a “push” stream configuration familiar to those of skill in the art. In certain embodiments, a stream ofcognitive insights262 may be implemented to use natural language approaches familiar to skilled practitioners of the art to support interactions with a user.
In certain embodiments, a stream ofcognitive insights262 may be implemented to include a stream of visualized insights. As used herein, visualized insights broadly refer to cognitive insights that are presented in a visual manner, such as a map, an infographic, images, and so forth. In certain embodiments, these visualized insights may include various cognitive insights, such as “What happened?”, “What do I know about it?”, “What is likely to happen next?”, or “What should I do about it?” In these embodiments, the stream ofcognitive insights262 may be generated by variouscognitive agents250, which are applied to various sources, datasets, and cognitive graphs.
In certain embodiments, theAIS118 may be implemented to deliver Cognition as a Service (CaaS). As such, it provides a cloud-based development and execution platform that allow various cognitive applications and services to function more intelligently and intuitively. In certain embodiments, cognitive applications powered by theAIS118 are able to think and interact with users as intelligent virtual assistants. As a result, users are able to interact with such cognitive applications by asking them questions and giving them commands. In response, these cognitive applications will be able to assist the user in completing tasks and managing their work more efficiently.
In these and other embodiments, theAIS118 may be implemented to operate as an analytics platform to process big data, and dark data as well, to provide data analytics through a public, private or hybrid cloud environment, described in greater detail herein. As used herein, cloud analytics broadly refers to a service model wherein data sources, data models, processing applications, computing power, analytic models, and sharing or storage of results are implemented within a cloud environment to perform one or more aspects of analytics.
In certain embodiments, users may submit queries and computation requests in a natural language format to theAIS118. In response, they are provided with a ranked list of relevant answers and aggregated information with useful links and pertinent visualizations through a graphical representation. In these embodiments, thecognitive graph230 may be implemented to generate semantic and temporal maps to reflect the organization of unstructured data and to facilitate meaningful learning from potentially millions of lines of text, much in the same way as arbitrary syllables strung together create meaning through the concept of language.
In certain embodiments, theAIS118 may be implemented to represent knowledge in thecognitive graph260, such that the knowledge can be used to perform reasoning and inference operations. In certain embodiments, the resulting reasoning and inference operations may be implemented to provide self-assurance. Accordingly, such approaches may be implemented in certain embodiments as a cognitive inference and learning system (CILS). In certain embodiments, the self-assurance resulting from such reasoning and inference operations may be implemented to provide cognitive insights with associated explainability. In these embodiments, such explainability may be implemented to provide a rationale for their associated cognitive insights.
FIG. 3 is a simplified block diagram of an augmented intelligence system (AIS) reference model implemented in accordance with an embodiment of the invention. In various embodiments, theAIS118 reference model shown inFIG. 3 may be implemented as a reference for certain components included in, and functionalities performed by, anAIS118, described in greater detail herein. In certain embodiments, these components and functionalities may include acognitive infrastructure302, one or more cognitive Application Program Interfaces (APIs)308, acognitive process foundation310, variouscognitive processes320, and variouscognitive interactions328. In certain embodiments, thecognitive infrastructure302 may include various sources of multi-structuredbig data304 and a hosted/private/hybrid cloud infrastructure, both of which are described in greater detail herein.
In certain embodiments, thecognitive process foundation310, likewise described in greater detail herein, may be implemented to provide various cognitive computing functionalities. In certain embodiments, these cognitive computing functionalities may include the simplification of data and computeresource access312. In certain embodiments, these cognitive computing functionalities may likewise include various sharing and control314 operations commonly associated with domain processes. Likewise, in certain embodiments these cognitive computing functionalities may include the composition andorchestration316 of various artificial intelligence (AI) systems.
In certain embodiments, the composition andorchestration316 of various artificial intelligence (AI) systems may include the composition of cognitive skills and cognitive agents, as described in greater detail herein. In certain embodiments, the composition andorchestration316 may include the orchestration of various cognitive agents, and associated AIS components, to generate one or more cognitive processes, likewise described in greater detail herein. In certain embodiments, these cognitive computing functionalities may include AI governance andassurance318 operations associated with ensuring the integrity and transparency of an AI system in the context of various cognitive computing operations it may perform.
As used herein, AI governance broadly refers to the management of the availability, consistency, integrity, usability, security, privacy, and compliance of data and processes used to perform a cognitive computing operation. Certain embodiments of the invention reflect an appreciation that practices and processes associated with AI governance ideally provide an effective foundation, strategy, and framework to ensure that data can be managed as an asset and transformed into meaningful information as a result of a cognitive computing operation. Certain aspects of the invention likewise reflect an appreciation that implementation of various AI governance programs may include a governing body or council, a defined set of procedures, and a plan to execute those procedures.
Certain embodiments of the invention reflect an appreciation that AI governance typically includes other concepts, such as data stewardship and data quality, which may be used to improve control over various components of anAIS118. In various embodiments,certain AI governance318 operations may be implemented to improve control over other components of thecognitive process foundation310. In these embodiments, the AI governance andassurance318 operations may be implemented to improve control over the simplification of data and computeaccess312, sharing and controlling domain processes314, and composing and orchestratingAI systems316.
In certain embodiments, the AI governance andassurance318 operations may likewise be implemented to improve control over acognitive infrastructure302,cognitive APIs308,cognitive processes320, andcognitive interactions328. Various embodiments of the invention likewise reflect an appreciation that improving control over such components of anAIS118 may include certain methods, technologies, and behaviors, described in greater detail herein. Likewise, various embodiments of the invention reflect an appreciation that effective AI governance generally involves the exercise of authority and control (e.g., planning, monitoring, enforcement, etc.) over the management ofAIS118 components used in the performance of certain cognitive computing operation.
Furthermore, certain embodiments of the invention reflect an appreciation that the lack of adequate AI governance may result in poor data quality. Moreover, various embodiments of the invention reflect an appreciation that the lack of adequate AI governance may result in poor, unexpected, or otherwise undesirable performance of certain cognitive skills and cognitive agents, described in greater detail herein. Accordingly, certain embodiments of the invention likewise reflect an appreciation that poor data quality, unexpected, or otherwise undesirable performance of certain cognitive skills and cognitive agents, or a combination thereof, may have an adverse effect upon the results of an associated cognitive computing operation.
As likewise used herein, AI assurance broadly refers to ensuring the transparency, interpretability, impartiality, accountability, and trustworthiness of the cognitive computing operations anAIS118 performs to produce a resulting outcome, such as a cognitive insight. Certain embodiments of the invention reflect an appreciation that practices and processes associated with AI assurance generally provide an effective foundation, strategy, and framework to ensure that anAIS118 can perform its intended function free from deliberate or inadvertent manipulation. Certain embodiments of the invention reflect an appreciation that such practices and processes can likewise assist in ensuring cognitive computing operations performed by anAIS118 adhere to its operational and technical parameters within prescribed limits. In certain embodiments, various cognitive computing functionalities may be implemented to work individually, or in concert with one another. In these embodiments, the method by which these various cognitive computing functionalities is a matter of design choice.
As used herein, a cognitive process broadly refers to an instantiation of a cognitive computing operation, described in greater detail herein. In certain embodiments, thecognitive process320 may be implemented as an intelligent user engagement322. As used herein, an intelligent user engagement322 broadly refers to the application of certain cognitive operations to assist in more meaningfulcognitive interactions328 between a user and certaincognitive processes320. In certain embodiments, thecognitive process320 may be implemented as an augmented process engagement324. As used herein, an augmented process engagement broadly refers to the application of cognitive operations to improve interaction between certaincognitive processes320. In certain embodiments, thecognitive process320 may be implemented as one or morecognitive applications326, described in greater detail herein. In certain embodiments,cognitive interactions328 may be implemented to support user interactions with anAIS118 throughweb330 applications, mobile332 applications,chatbot334 interactions, voice336 interactions, augmented reality (AR) and virtual reality (VR)interactions338, or a combination thereof.
FIG. 4 is a simplified block diagram of an augmented intelligence system (AIS) platform implemented in accordance with an embodiment of the invention. In certain embodiments, the AIS platform may be implemented to include variouscognitive processes320, acognitive process foundation310, various Cognitive Application Program Interfaces (APIs)308, and an associatedcognitive infrastructure302. In certain embodiments, thecognitive processes320 may be implemented to understand and adapt to the user, not the other way around, by natively accepting and understanding human forms of communication, such as natural language text, audio, images, video, and so forth.
In these and other embodiments, thecognitive processes320 may be implemented to possess situational and temporal awareness based upon ambient signals from users and data, which facilitates understanding the user's intent, content, context and meaning to drive goal-driven dialogs and outcomes. Further, they may be designed to gain knowledge over time from a wide variety of structured, non-structured, transactional, and device data sources, continuously interpreting and autonomously reprogramming themselves to better understand a given domain. As such, they are well-suited to support human decision making, by proactively providing trusted advice, offers and recommendations while respecting user privacy and permissions.
In certain embodiments, thecognitive processes320 may be implemented in concert with acognitive application framework442. In certain embodiments, thecognitive processes320 and thecognitive application framework442 may be implemented to support plug-ins and components that facilitate the creation of variouscognitive applications326, described in greater detail herein. In certain embodiments, thecognitive processes320 may be implemented to include widgets, user interface (UI) components, reports, charts, and back-end integration components familiar to those of skill in the art.
As likewise shown inFIG. 4, thecognitive process foundation310 may be implemented in certain embodiments to include a cognitiveprocess orchestration platform126, a cognitiveprocess composition platform122, and variouscognitive agents250, all of which are described in greater detail herein. In certain embodiments, thecognitive orchestration platform126 may be implemented to orchestrate variouscognitive agents250 to enable one or morecognitive processes320. In certain embodiments, thecognitive orchestration platform126 may be implemented to manage accounts and projects, along with user-specific metadata that is used to drive processes and operations within thecognitive process foundation310 for a particular project.
In certain embodiments, the cognitiveagent composition platform120 may be implemented to compose one or morecognitive agents250. In certain embodiments, thecognitive agents250 may include asourcing agent432, adestination agent434, anengagement agent436, acompliance agent438, or a combination thereof. In certain embodiments, thesourcing agent432 may be implemented to source a variety of multi-site, multi-structured source streams of data described in greater detail herein.
In various embodiments, thedestination agent436 may be implemented to publish cognitive insights to a consumer of cognitive insight data. Examples of such consumers of cognitive insight data include target databases, public or private blockchains, business intelligence applications, and mobile applications. It will be appreciated that many such examples of cognitive insight data consumers are possible. In certain embodiments, theengagement agents436 may be implemented to define variouscognitive interactions328 between a user and a particularcognitive process320. In certain embodiments, thecompliance agents438 may be implemented to ensure compliance with certain business and technical guidelines, rules, regulations or other parameters associated with an organization.
In certain embodiments, the resultingcognitive agents250 may be orchestrated by the cognitiveprocess orchestration platform126 to create cognitive insights, described in greater detail herein. In certain embodiments, the resultingcognitive agents250 may be orchestrated by the cognitiveprocess orchestration platform126 to create custom extensions to theAIS118 shown inFIG. 2. In certain embodiments, thecognitive process foundation310 may be implemented for the development of acognitive application326, which may subsequently be deployed in a public, private orhybrid cloud306 cloud environment.
In various embodiments, theAPIs308 may be implemented for use by the cognitiveprocess orchestration platform126 to orchestrate certaincognitive agents250, described in greater detail herein, which are then executed by theAIS118 to generate cognitive insights. In certain embodiments, theAPIs308 may be implemented to access variouscognitive infrastructure302 components. In certain embodiments, the infrastructure components may include repositories of multi-structuredbig data304, a hosted/private/hybrid cloud306 environment, or both. In certain embodiments, the repositories of multi-structuredbig data304 may be accessed by the AIS platform to generate cognitive insights.
In certain embodiments, the repositories of multi-structuredbig data304 may include individual repositories of public202, proprietary204,transaction206, social208,device210, and ambient212 data, or some combination thereof. In certain embodiments, the repositories oftransaction data206 may include blockchain data associated with one or more public blockchains, one or more private blockchains, or a combination thereof. In certain embodiments, the repositories oftransaction data206 may be used to generate a blockchain-associated cognitive insight.
In certain embodiments, as described in greater detail herein, thecognitive infrastructure302 environment may include various input/output services404, described in greater detail herein, acognitive cloud management406 platform, and variouscognitive cloud analytics408 components, or a combination thereof. In certain embodiments, hosted/private/hybrid cloud306 may include a repository ofcognitive process components402. In certain embodiments, the repository ofcognitive process components402 may be implemented to store cognitive agents, cognitive skills, cognitive models, cognitive algorithms, and cognitive actions.
In various embodiments, the contents of thecognitive process components402 may be used by the cognitiveskill composition platform122 to compose certain cognitive skills. In various embodiments, the contents of thecognitive process components402 may be used by the cognitiveagent composition platform120 to compose certain cognitive agents. In various embodiments, the contents of thecognitive process components402 may be used by the cognitiveprocess orchestration platform126 to orchestrate certaincognitive processes320.
FIG. 5 shows a simplified block diagram of components associated with a cognitive process foundation implemented in accordance with an embodiment of the invention. In certain embodiments, thecognitive process foundation310 may be implemented to include an augmented intelligence system (AIS)composition platform120 and a cognitiveprocess orchestration platform126. In certain embodiments, the cognitiveagent composition platform120 may be implemented to include an AIS composition user interface (UI)522, a cognitiveskill composition platform122, and a cognitiveagent composition platform124, all of which are described in greater detail herein. In certain embodiments, thecognitive composition UI522 may be implemented to receive user input, and provide a visual representation of the execution of individual operations, associated with thecognitive skill composition122 andcognitive agent composition124 platforms. In certain embodiments, theAIS composition UI522 may be implemented as a Graphical User Interface (GUI).
In various embodiments, the cognitiveskill composition platform122 may be implemented to perform certaincognitive skill composition530 operations associated with the composition of a particular cognitive skill. In certain embodiments, thecognitive skill composition530 operations may include the development, testing, and definition of a cognitive skill, as described in greater detail herein. In certain embodiments, thecognitive skill composition530 operations may include the development of one or more cognitive algorithms, as likewise described in greater detail herein. In certain embodiments, thecognitive skill composition530 operations may include the definition of various cognitive model actions. In certain embodiments, thecognitive skill composition530 operations may include the identification of data sources, such as the public202, proprietary204, transaction, social208,device210, and ambient212 data sources described in the descriptive text associated withFIG. 2. In certain embodiments, thecognitive skill composition530 operations may include the definition of required datasets, described in greater detail herein.
In certain embodiments, the cognitiveskill composition platform122 may be implemented with an associated cognitiveskill client library540 and one or more cognitive skill Application Program Interfaces (APIs)550. In certain embodiments, the cognitiveskill client library540, and one or more cognitive skill Application Program Interfaces (APIs)550, may be implemented by the cognitiveskill composition platform122 to compose a particular cognitive skill.
In various embodiments, the cognitiveagent composition platform124 may be implemented to perform certaincognitive agent composition532 operations associated with the composition of a particular cognitive skill. In certain embodiments, thecognitive agent composition532 operations may include the development of various datasets used by a particular cognitive agent during its execution. In various embodiments, thecognitive agent composition532 operations may include the curation and uploading of certain training data used by a cognitive model associated with a particular cognitive agent. In certain embodiments, the development of the various datasets and the curation and uploading of certain training data may be performed via a data engineering operation.
In certain embodiments, thecognitive agent composition532 operations may include creation of a cognitive agent record. In certain embodiments, the cognitive agent record may be implemented by an AIS to track a particular cognitive agent. In certain embodiments, the cognitive agent record may be implemented by an AIS to locate and retrieve a particular cognitive agent stored in a repository of AIS components, described in greater detail herein. In certain embodiments, thecognitive agent composition532 operations may include the addition, and configuration of, one or more cognitive skills associated with a particular cognitive agent.
In certain embodiments, thecognitive agent composition532 operations may include the definition of various input/output services, described in greater detail herein, associated with a particular cognitive agent. In certain embodiments, thecognitive agent composition532 operations may include the definition of various dataset connections associated with a particular cognitive agent. In certain embodiments, the definition of various dataset connections may be performed via a data engineering operation. In certain embodiments, thecognitive agent composition532 operations may include the creation of one or more data flows associated with a particular cognitive agent. In certain embodiments, thecognitive agent composition532 operations may include the mapping of one or more data flows associated with a particular cognitive agent. In certain embodiments, the mapping of data flows may be performed via a date engineering operation. In certain embodiments, thecognitive agent composition532 operations may include the testing of various services associated with a particular cognitive agent.
In certain embodiments, the cognitiveagent composition platform120 may be implemented with an associated cognitiveagent client library542 and one or morecognitive agent APIs552. In certain embodiments, thecognitive agent library542, and one or morecognitive agent APIs552, may be implemented by the cognitiveagent composition platform120 to compose a particular cognitive agent.
In certain embodiments, thecognitive process foundation310 may be implemented to include a cognitiveprocess orchestration platform126. In certain embodiments, the cognitiveprocess orchestration platform126 may be implemented to include anAIS administration console524, an AIS command line interface (CLI)526, or both. In certain embodiments, theAIS administration console524 may be implemented as a GUI.
In certain embodiments, theAIS administration console524 and theAIS CLI526, individually or in combination, may be implemented to manage the building blocks of a particular cognitive process, described in greater detail herein. In certain embodiments, the building blocks of a particular cognitive process may include one or more cognitive agents, likewise described in greater detail herein. In certain embodiments, theAIS administration console524 and theAIS CLI526, individually or in combination, may be implemented to manage lifecycle of a cognitive agent, described in greater detail herein.
In certain embodiments, theAIS administration console524 may be implemented to manage a cognitive process user account. In certain embodiments, theAIS administration console524 may be implemented view various AIS logs and metrics. In certain embodiments, theAIS administration console524 may be implemented as a web interface familiar to those of skill in the art.
In certain embodiments, theAIS CLI526 may be implemented to generate and deploy cognitive skills, created and save dataset definitions, invoke cognitive agent services, and configure cognitive action batch jobs and connections, or a combination thereof. In certain embodiments, theAIS CLI526 may be implemented to add cognitive agent building blocks to the cognitiveagent composition platform120. In certain embodiments, theAIS CLI526 may be implemented to execute cognitive agent lifecycle commands.
In certain embodiments, theAIS administration console524 and theAIS CLI526, individually or in combination, may be implemented to performvarious data orchestration534 operations. In certain embodiments, thedata orchestration534 operations may include the definition of data sources associated with a particular AIS region, described in greater detail herein. In certain embodiments, thedata orchestration534 operations may include the definition of various data variables associated with a particular AIS region.
In certain embodiments, theAIS administration console524 and theAIS CLI526, individually or in combination, may be implemented to perform variouscognitive agent orchestration536 operations. In certain embodiments, thecognitive agent orchestration536 operations may include the creation of a cognitive agent snapshot. As used herein, a cognitive agent snapshot broadly refers to a depiction of the operational state of a cognitive agent at a particular instance in time during the execution of a cognitive process.
In certain embodiments, thecognitive agent orchestration536 operations may include the promotion of a cognitive agent snapshot. As likewise used herein, promotion broadly refers to the transition of a cognitive agent, or a cognitive process, from one operational environment to another. As an example, the cognitiveprocess orchestration platform126 may be implemented in a development environment to generate a cognitive process by orchestrating certain cognitive agents, as described in greater detail herein. Once development has been completed, the resulting cognitive process may be promoted to a test environment. Thereafter, once testing of the cognitive process has been completed, it may be promoted to a user acceptance environment, and once the user acceptance phase has been completed, it may be promoted to a production environment.
In certain embodiments, thecognitive agent orchestration536 operations may include the creation of a cognitive agent instance. In certain embodiments, thecognitive agent orchestration536 operations may include enablement of start triggers for a particular cognitive agent. In certain embodiments, thecognitive agent orchestration536 operations may include the invocation of a particular instance of a cognitive agent. In certain embodiments, thecognitive agent orchestration536 operations may include querying and filtering responses received from a particular cognitive agent. In certain embodiments, the cognitiveprocess orchestration platform126 may be implemented with an associated AISconsole client library544, one or moreAIS console APIs554, an AISCLI client library546, one or moreAIS CLI APIs556, or a combination thereof.
FIG. 6 is a simplified block diagram of a plurality of augmented intelligence system (AIS) platforms implemented in accordance with an embodiment of the invention within a hybrid cloud infrastructure. In certain embodiments, thehybrid cloud infrastructure304 may be implemented to include acognitive cloud management402 platform, a hosted602 cognitive cloud environment, and a private622 cognitive cloud environment. In certain embodiments, the private622 cognitive cloud environment may be implemented in a private network, such as commonly implemented by corporation or government organization.
In certain embodiments, the hosted602 and private622 cognitive cloud environment may respectively be implemented to include a hosted604 and private624 AIS platform. Likewise, in certain embodiments, the hosted604 and private624 AIS platforms may respectively be implemented to include one or more hosted626 and private626 AIS regions. As used herein, a hosted606 AIS region broadly refers to a designated instantiation of an AIS implemented to execute on a corresponding hosted604 platform. As likewise used herein, a private626 AIS region broadly refers to a designated instantiation of an AIS implemented to execute on a corresponding private624 platform. In certain embodiments, the designated instantiation of a hosted606 or private626 AIS region may be defined by a set of associated parameters.
As an example, the designation parameters associated with a hosted606 or private626 AIS region, individually or in combination, may to correspond to a defined geographic area. To continue the example, the designation parameters associated with a particular hosted606 AIS region may correspond to certain defining information associated with the state of Texas. Likewise, the designation parameters associated with a first and second private626 AIS region may respectively correspond to certain defining information associated with Dallas and Harris counties, both of which are located in the state of Texas. In this example, the hosted606 AIS region may be implemented to provide various cognitive insights related to the state government of Texas to various county governments. Likewise, the first and second private626 AIS regions may be respectively implemented to provide cognitive insights specific to the county governments of Dallas and Harris counties.
As another example, the designation parameters associated with a hosted606 or private626 AIS region, individually or in combination, may to correspond to various aspects of an organization. To continue the example, the designation parameters associated with a particular hosted606 AIS region may correspond to certain defining information associated with an automobile dealer network. Likewise, the designation parameters associated with a first and second private626 AIS region may respectively correspond to certain defining information associated with two independent automobile dealers, both of which are located in the same city and sell the same brand of automobiles. In this example, the hosted606 AIS region may be implemented to provide various cognitive insights related to certain aspects of the automobile brand. Likewise, the first and second private626 AIS regions may be respectively implemented to provide cognitive insights specific to certain aspects of the two automobile dealers, such as their respective inventories, customer demographics, and past promotional activities.
In certain embodiments, each hosted606 and private626 AIS regions may be implemented to include one hosted608 or private628 AIS environments. As used herein, a hosted608 AIS environment broadly refers to an operating environment within which a particular hosted608 AIS environment is implemented. As likewise used herein, a private hosted628 AIS environment broadly refers to an operating environment within which a particular private628 AIS environment is implemented.
As an example, a cognitive process may first be implemented in a hosted608 or private628 development environment to generate a cognitive process by orchestrating certain cognitive agents, as described in greater detail herein. Once development has been completed, the resulting cognitive process may be promoted to a hosted608 or private628 test environment. Thereafter, once testing of the cognitive process has been completed, it may be promoted to a hosted608 or private628 user acceptance environment. Likewise, once the user acceptance phase has been completed, it may be promoted to a hosted608 or private628 production environment.
In certain embodiments, each hosted608 and private628 AIS environments may be implemented to include they use of one or more hosted610 or private630 cognitive agents, described in greater detail herein, to generate cognitive insights, likewise described in greater detail herein. In certain embodiments, a gateway/load balancer644 may be implemented to allow the hosted604 and private624 AIS platforms to communicate with one another. In certain embodiments, the ability to communicate with one another allows the hosted604 and private624 AIS platforms to work collaboratively when generating cognitive insights described in greater detail herein.
FIG. 7 shows components of a plurality of augmented intelligence system (AIS) platforms implemented in accordance with an embodiment of the invention within a hosted/private/hybrid cloud environment. In certain embodiments, thehybrid cloud infrastructure304 may be implemented to include acognitive cloud management406 platform, a hosted702 cognitive container management infrastructures, and a private722 cognitive container management infrastructure. In certain embodiments, the hosted702 and private722 cognitive container management infrastructures may be implemented to respective include one or more virtual machines (VMs) ‘1’704 through ‘n’706 and VMs ‘1724 through ‘n’726.
In certain embodiments, thehybrid cloud infrastructure304 may likewise be implemented to include hosted708 and private728 cognitive services infrastructures, hosted716 and private736 cognitive compute infrastructures, and a gateway/load balancer644. In certain embodiments, the hosted708 and private728 cognitive services infrastructures may be implemented to respective include one or more virtual machines (VMs) ‘1’710 through ‘n’712 and VMs ‘1730 through ‘n’732. In certain embodiments, the hosted716 and private736 cognitive compute infrastructures may likewise be implemented to respective include one or more virtual machines (VMs) ‘1’718 through ‘n’720 and VMs ‘1738 through ‘n’740.
Likewise, in certain embodiments thehybrid cloud infrastructure304 may be implemented to include various repositories of hosted714 and private734 data. As used herein, a repository of hosted714 or private734 data broadly refers to a collection of knowledge elements that can be used in certain embodiments to generate one or more cognitive insights, described in greater detail herein. In certain embodiments, these knowledge elements may include facts (e.g., milk is a dairy product), information (e.g., an answer to a question), descriptions (e.g., the color of an automobile), abilities (e.g., the knowledge of how to install plumbing fixtures), and other classes of knowledge familiar to those of skill in the art. In these embodiments, the knowledge elements may be explicit or implicit. As an example, the fact that water freezes at zero degrees centigrade is an explicit knowledge element, while the fact that an automobile mechanic knows how to repair an automobile is an implicit knowledge element.
In certain embodiments, the knowledge elements within a repository of hosted714 or private734 data may also include statements, assertions, beliefs, perceptions, preferences, sentiments, attitudes or opinions associated with a person or a group. As an example, user ‘A’ may prefer the pizza served by a first restaurant, while user ‘B’ may prefer the pizza served by a second restaurant. Furthermore, both user ‘A’ and ‘B’ are firmly of the opinion that the first and second restaurants respectively serve the very best pizza available. In this example, the respective preferences and opinions of users ‘A’ and ‘B’ regarding the first and second restaurant may be included in a universal knowledge repository as they are not contradictory. Instead, they are simply knowledge elements respectively associated with the two users and can be used in various embodiments for the generation of certain cognitive insights, as described in greater detail herein.
In certain embodiments, individual knowledge elements respectively associated with the repositories of hosted714 and private734 data may be distributed. In certain embodiments, the distributed knowledge elements may be stored in a plurality of data stores familiar to skilled practitioners of the art. In certain embodiments, distributed knowledge elements may be logically unified for various implementations of the repositories of hosted714 and private734 data.
In certain embodiments, the repositories of hosted714 and private734 data may be respectively implemented in the form of a hosted or private universal cognitive graph, described in greater detail herein. In certain embodiments, individual nodes within a hosted or private universal cognitive graph may contain one or more knowledge elements. In certain embodiments, the repositories of hosted714 and private734 data may be respectively implemented to include a repository of hosted and private AIS components, such as theAIS component repository402 shown inFIG. 4 and described in its associated descriptive text.
In certain embodiments, the repositories of hosted714 and private734 data may respectively include one or more repositories of application data, proprietary data, and proprietary transaction data. In certain embodiments, the repositories of hosted or private transaction data may include credit or debit card transaction data, financial services data of all kinds (e.g., mortgages, insurance policies, stock transfers, etc.), purchase order data, invoice data, shipping data, receipt data, or any combination thereof. In various embodiments, the repositories of hosted or private transaction data may likewise include blockchain-associated data, smart contract data, or any combination thereof.
In certain embodiments, hosted and private transaction data may be exchanged through the implementation of a transaction data exchange implemented on the gateway/load balancer644. In certain embodiments, the implementation of such a transaction data exchange may allow the hosted716 cognitive compute infrastructure to access certain private transaction data. Conversely, the private736 cognitive compute infrastructure may be allowed to access certain hosted transaction data. In certain embodiments, the transaction data exchange may be implemented with permission and identity management controls to determine the degree to which certain hosted and private transaction data may be respectively accessed by the hosted716 and private736 cognitive compute infrastructures.
In certain embodiments, the repositories of hosted or private transaction data may include data associated with a public blockchain. As used herein, a public blockchain broadly refers to a blockchain that has been implemented as a permissionless blockchain, meaning anyone can read or write to it. One advantage of such a public blockchain is it allows individuals who do not know each other to trust a shared record of events without the involvement of an intermediary or third party.
In certain embodiments, a repository of private transaction data may be implemented to include data associated with a proprietary blockchain. As likewise used herein, a proprietary blockchain broadly refers to a blockchain where its participants are known and are granted read and write permissions by an authority that governs the use of the blockchain. For example, proprietary blockchain participants may belong to the same or different organizations within an industry sector. In certain embodiments, these relationships may be governed by informal relationships, formal contracts, or confidentiality agreements.
Skilled practitioners of the art will recognize that while many transactions may benefit from the decentralized approach typically implemented by a public blockchain, others are more suited to being handled by an intermediary. Such intermediaries, while possibly adding additional complexities and regulation, can often provide demonstrable value. In certain embodiments, an intermediary associated with a proprietary blockchain may have the ability to veto or rescind suspect transactions, provide guarantees and indemnities, and deliver various services not generally available through a public blockchain.
Furthermore, proprietary blockchains have several advantages, including the use of cryptographic approaches known to those of skill in the art for identity management and verification of transactions. These approaches not only prevent the same transaction taking place twice, such as double-spending a digital currency, they also provide protection against malicious activities intended to compromise a transaction by changing its details. Moreover, permission controls typically associated with proprietary blockchains can provide dynamic control over who can connect, send, receive and enact individual transactions, based upon any number of parameters that may not be available or implementable in public blockchains. Accordingly, full control can be asserted over every aspect of a proprietary blockchain's operation, not only in accordance with the consensus of its various participants, but its administrative intermediary as well.
In certain embodiments, the hosted708 or private728 cognitive services infrastructure may be implemented to manage the identity of a user, group or organization in the performance of blockchain-associated cognitive insight operations. In certain embodiments, the hosted708 or private728 cognitive services infrastructure may be implemented to perform various cognitive identity management operations. In certain embodiments, the cognitive identity management operations may include the use of cognitive personas, cognitive profiles, or a combination thereof, to perform blockchain-associated cognitive insight operations associated with a particular user, group or organization. In certain embodiments, the cognitive identity management operations may be implemented to verify the identity of a user, group or organization in the performance of a blockchain-associated cognitive insight operation.
In certain embodiments, the cognitive identity management operations may likewise involve the generation, and ongoing management of, private keys, shared keys, public/private key pairs, digital signatures, digital certificates, or any combination thereof, associated with a particular user, group or organization. Likewise, in certain embodiments the cognitive identity management operations may involve the encryption of one or more cognitive insights, one or more smart contracts, or some combination thereof, during the generation of a blockchain-associated cognitive insight. Those of skill in the art will recognize that many such embodiments are possible. Accordingly, the foregoing is not intended to limit the spirit, scope or intent of the invention.
In various embodiments, the gateway/load balancer644 may be implemented for the hosted708 cognitive services infrastructure provide certain hosted data and knowledge elements to the private728 cognitive services infrastructure, In certain embodiments, the provision of certain hosted data and knowledge elements allows the hosted714 repository of data to be replicated as the private724 repository of data. In certain embodiments, the provision of certain hosted data and knowledge elements to the private728 cognitive services infrastructure allows the hosted714 repository of data to provide updates to the private734 repository of data. In certain embodiments, the updates to the private734 repository of data do not overwrite other data. Instead, the updates are simply added to the private734 repository of data.
In certain embodiments, knowledge elements and data that are added to the private734 repository of data are not respectively provided to the hosted714 repository of data. As an example, an airline may not wish to share private information related to its customer's flights, the price paid for tickets, their awards program status, and so forth. In various embodiments, certain knowledge elements and data that are added to the private724 repository of data may be provided to the hosted714 repository of data. As an example, the owner of the private734 repository of data may decide to license certain knowledge elements and data to the owner of the hosted714 repository of data. To continue the example, certain knowledge elements or data stored in the private734 repository of data may be anonymized prior to being provided for inclusion in the hosted714 repository of data.
In certain embodiments, only private knowledge elements or data are stored in the private734 repository of data. In certain embodiments, the private736 cognitive compute infrastructure may use knowledge elements and data stored in both the hosted714 and private734 repositories of data to generate cognitive insights. Skilled practitioners of the art will recognize that many such embodiments are possible. Accordingly, the foregoing is not intended to limit the spirit, scope or intent of the invention.
FIGS. 8aand 8bare a simplified process diagram showing the performance of cognitive process promotion operations implemented in accordance with an embodiment of the invention. In various embodiments, acognitive process foundation310, described in greater detail herein, may be implemented to perform certaincognitive process promotion828 operations associated with promoting a particular cognitive process from one operating environment to another.
As shown inFIG. 8a, certain operations may be performed in a data sourcing804 phase, which results in the generationvarious data sets806, which are then used in a machine learning (ML)model development808 phase. In turn, the resulting ML model may be incorporated into one or morecognitive skills810, which are then used in acognitive agent development812 phase to generate variouscognitive agents814.
The resultingcognitive agents814, as shown inFIG. 8b, may then be implemented in a cognitive agent deployment andmanagement816 phase, which results incertain feedback818. In turn, thefeedback818 may be used in a cognitive agent measurement andperformance820 phase, which results in the generation of variouscognitive insights822. The resultingcognitive insights822 may then be used in a cognitive agent governance andassurance826 phase. In various embodiments, the cognitive agent governance andassurance826 phase may be implemented to perform certain cognitive agent governance and assurance operations. In various embodiments, the cognitive agent governance andassurance826 phase may be performed via a cognitive assurance agent.
In certain embodiments, the cognitive agent governance and assurance operations may include the provision of AIS explainability. As used herein and as it relates to AI assurance, AIS explainability broadly refers to transparently conveying to a user the structural and operational details of the ML model(s) used by an AIS, statistical and other descriptive properties of its associated training data, and various evaluation metrics from which its likely behavior may be inferred. In certain embodiments, the cognitive agent governance and assurance operations may include enforcement of a policy associated with the enforcement of a particular cognitive insight. In these embodiments, the particulars associated with the policy, and the method by which it is enforced, is a matter of design choice.
In certain embodiments, the cognitive agent governance and assurance operations may include governance of the creation, and use, of a particular cognitive model and the lineage of the data it may use. In these embodiments, the method by which the governance is defined, and the method by which it is enforced, is a matter of design choice. In certain embodiments, the cognitive agent governance and assurance operations may include providing assurance that intellectual property (IP) ownership rights are preserved. In certain embodiments, the IP may be associated with certain cognitive operations, cognitive processes, cognitive skills, cognitive agents, and cognitive insights, or a combination thereof.
In certain embodiments, the cognitive agent governance and assurance operations may include KPI-driven AI model optimization. In these embodiments, the definition of such KPIs, and the method by which they are used to optimize a particular AI model, is a matter of design choice. In certain embodiments, the cognitive agent governance and assurance operations may include the provisions of AI auditability. In certain embodiments, AI auditability may include the ability to provide explainability, and associated lineage, of how a particular cognitive operation, cognitive process, cognitive skill, cognitive agent, or cognitive insight, or a combination thereof, was generated and implemented. In these embodiments, the method by which the AI auditability is achieved is a matter of design choice.
FIG. 9 is a simplified process diagram showing phases of a cognitive process lifecycle implemented in accordance with an embodiment of the invention. As used herein, a cognitive process lifecycle broadly refers to a series of phases, or individual operational steps, or a combination thereof, associated with a cognitive process, spanning its inception, development, implementation, testing, acceptance, production, revision, and eventual retirement. In certain embodiments, each phase or operational step of a cognitive process lifecycle may have associated input artifacts, roles or actors, and output artifacts.
As used herein, an input artifact broadly refers to an article of information used to perform an operation associated with completion of a certain phase, or performance of certain operational steps, of a cognitive process lifecycle. Examples of input artifacts include articles of information related to business and technical ideas, goals, needs, structures, processes, and requests. Other examples of input artifacts include articles of information related to market and technical constraints, system architectures, and use cases. Yet other examples of input artifacts include articles of information related to data sources, previously-developed technology components, and algorithms.
As likewise used herein, a role or actor broadly refers to a particular user, or certain functions they may perform, participating in certain phases or operational steps of a cognitive process lifecycle. Examples of roles or actors include business owners, analysts, and partners, user experience (UX) and user interface (UI) designers, and project managers, as well as solution, enterprise and business process architects, Other examples of roles or actors include data scientists, machine learning (ML) engineers, data, integration and software engineers, as well as system administrators.
An output artifact, as likewise used herein, broadly refers to an article of information resulting from the completion of a certain phase, or performance of certain operational steps, of a cognitive process lifecycle. Examples of output artifacts include Strength/Weaknesses/Opportunity/Threat (SWOT) analysis results, Key Performance Indicator (KPI) definitions, and project plans. Other examples of output artifacts include use case models and documents, cognitive application UX and UI designs, and project plans. Yet other examples of output artifacts include dataset, algorithm, machine learning (ML) model, cognitive skill, and cognitive agent specifications, as well as their corresponding datasets, algorithms, ML models, cognitive skills, and cognitive agents. Those of skill in the art will recognize that many examples of input artifacts, roles or actors, and output artifacts are possible. Accordingly, the foregoing is not intended to limit the spirit, scope or intent of the invention.
In this embodiment, a cognitive process lifecycle is begun instep902, followed by determining certain operational and performance parameters related to an associated cognitive process instep904. The resulting operational and performance parameters are then used instep906 for use in various business analysis and planning purposes, described in greater detail herein. Information security and audibility issues associated with the cognitive process are then identified and addressed instep908, followed by reviews of the existing system and cognitive architecture, and any resulting updates, being performed instep910. Likewise, the user experience (UX) and one or more user interfaces (UIs) associated with the cognitive process are respectively developed insteps912 and914.
Thereafter, solution realization operations, described in greater detail herein, are performed instep916 to identify requirements and generate specifications associated withdata sourcing918 andcognitive agent development926 phases of the cognitive process lifecycle. Once solution realization operations are completed instep916, data sourcing918 operations are begun instep920 with the performance of various data discovery operations, described in greater detail herein. In certain embodiments, the data discovery operations may be performed by accessing various multi-structured,big data304 sources, likewise described in greater detail herein. Once the data discovery operations have been completed, then certain data engineering operations are performed instep922 to prepare the sourced data for use in thecognitive agent development926 phase. As used herein, data engineering refers to processes associated with data collection and analysis as well as validation of the sourced data. In various embodiments, the data engineering operations may be performed on certain of the multi-structured,big data304 sources.
Once the data sourcing918 phase has been completed, thecognitive agent development926 phase is begun instep928 with development of one or more machine learning (ML) models associated with the cognitive process. Any cognitive skills associated with the cognitive process that may not currently exist are composed instep930. In certain embodiments, an ML model developed instep928 may be used to compose a cognitive skill instep930. Associated cognitive process components are then acquired instep932 and used instep934 to compose a cognitive agent. The foregoing steps in thecognitive agent development926 phase are then iteratively repeated until all needed cognitive agents have been developed.
Once thecognitive agent development926 phase has been completed, quality assurance and user acceptance operations associated with the cognitive process are respectively performed instep936 and938. The cognitive process is then promoted, as described in greater detail herein, into a production phase instep940. Once the cognitive process is operating in a production phase, ongoing system monitoring operations are performed instep942 to collect certain performance data. The performance data resulting from the monitoring operations performed instep942 is then used instep944 to perform various Key Performance Indicator (KPI) evaluation operations.
In turn, the results of the KPI evaluations are then used as feedback to improve the performance of the cognitive process. In certain embodiments, the results of the KPI evaluations may be provided as input instep904 to determine additional operational and performance parameters related to the cognitive process. In certain embodiments, these additional operational and performance parameters may be used to repeat one or more steps associated with the lifecycle of the cognitive process to revise its functionality, improve its performance, or both.
FIGS. 10athrough 10fshow operations performed in a cognitive process lifecycle implemented in accordance with an embodiment of the invention. In this embodiment, a cognitive process lifecycle is begun instep902, followed by determining certain operational and performance parameters related to an associated cognitive process instep904. In certain embodiments, the operational and performance parameters determined instep904 may include parameters related to business andtechnical processes1001,ideas1002,requests1003, needs1104, and constraints1105, or a combination thereof.
In certain embodiments, the operational and performance parameters resulting fromstep904 may then be used for various business analysis and planning purposes instep906. In certain embodiments, the business and planning purposes may include understanding existing business andtechnical processes1006. In certain embodiments, the business and planning purposes may include understanding business and technical goals andmetrics1007. In certain embodiments, the business and planning purposes may include analyzing business and technical pain points, return on investment (ROI), user value, technical value, and process automation, or acombination thereof1008.
In certain embodiments, the business and planning purposes may include assessing business and technical fit of use cases and proposedsolutions1009. In certain embodiments, the business and planning purposes may include prioritizing use cases and defining Key Performance Indicators (KPIs)1010. In certain embodiments, the business and planning purposes may include development of aproject plan1011.
In certain embodiments, information security and audibility issues associated with the cognitive process may be identified and addressed instep908. In certain embodiments, the information security and auditability issues may include defining roles andresources1012, establishingaccess policies1013, updatingsecurity policies1014, and reviewing code forvulnerabilities1015, or a combination thereof. In certain embodiments, the information security and auditability issues may include updatinglog access policies1016, establishing patch andupdate policies1017, and updatingincidence response1018 anddisaster recovery1019 plans, or a combination thereof.
In certain embodiments, reviews of the existing system and cognitive architecture, and any resulting updates, may be performed instep910. In certain embodiments, reviews of the existing system and cognitive architecture, and any resulting updates, may include developing an architectural vision for a proposedcognitive process1020. In certain embodiments, reviews of the existing system and cognitive architecture, and any resulting updates, may include updating certain business andcognitive process architectures1021. In certain embodiments, reviews of the existing system and cognitive architecture, and any resulting updates, may include updating certain data andtechnology architectures1022.
In certain embodiments, the user experience (UX) and one or more user interfaces (UIs) associated with the cognitive process may be respectively developed insteps912 and914. In certain embodiments, development of the UX design may include interviewing user to understandissues1023 associated with the cognitive process. In certain embodiments, development of the UX design may include analyzing users and building user personas1024 associated with the cognitive process. In certain embodiments, development of the UX design may include establishinguser performance objectives1025 associated with the cognitive process.
In certain embodiments, development of the UX design may include creating user stories andscenario maps1026 associated with the cognitive process. In certain embodiments, development of the UX design may include the creation of one or morevisual designs1027 associated with the cognitive process. In certain embodiments, development of the UX design may include testing UX designs associated with the cognitive process withactual users1029. In certain embodiments, development of the UX design may include validating design of the UX associated with the cognitive process with usability tests1030.
In certain embodiments, development of the UI may include reviewing theUX design1031 associated with the cognitive process. In certain embodiments, development of the UI may include building or assembling aUI widget library1032 associated with the cognitive process. In certain embodiments, development of the UI may include reviewing the backend Application Program Interface (API) associated with the cognitive process. In certain embodiments, development of the UI may include developing one or more UIs associated with the cognitive process.
In certain embodiments, solution realization operations may be performed instep916 to identify requirements and generate specifications associated withdata sourcing918 andcognitive agent development926 phases of the cognitive process lifecycle. In certain embodiments, the solution realization operations may include identification ofdata sources1035 relevant to the cognitive process. In certain embodiments, the solution realization operations may include the creation of specifications fordatasets1036 required by the cognitive process. In certain embodiments, the solution realization operations may include the definition of variouscognitive agents1037 associated with the cognitive process.
In certain embodiments, the solution realization operations may include the decomposition of one or more cognitive agents into correspondingcognitive skills1038 associated with the cognitive process. In certain embodiments, the solution realization operations may include identifying various cognitive skills based uponfunctional requirements1039 associated with the cognitive process. In certain embodiments, the solution realization operations may include discovery of missingcognitive skills1040 associated with the cognitive process. In certain embodiments, the solution realization operations may include creating specifications for missingcognitive skills1041 associated with the cognitive process.
In certain embodiments, the data sourcing918 phase may be initiated instep920 with the performance of various data discovery operations. In certain embodiments, the data discovery operations may includevarious data exploration1042 anddata analysis1043 operations, described in greater detail herein. In certain embodiments, the data discovery operations may be performed by accessing various multi-structured,big data304 sources. In certain embodiments, as described in greater detail herein, the multi-structuredbig data304 sources may includepublic data412,proprietary data414,transaction data416,social data418,device data422,ambient data424, or a combination thereof.
In various embodiments, once the data discovery operations have been completed, certain data engineering operations may be performed instep922 to prepare the sourced data for use in thecognitive agent development926 phase. In various embodiments, the data engineering operations may be performed on certain of the multi-structured,big data304 sources. In certain embodiments, the data engineering operations may include traditional1044 extract, transform, load (ETL) operations. In certain embodiments, the data engineering may include cognitive agent-assistedETL1045 operations. In certain embodiments, the data engineering operations may include data pipeline configuration146 operations to skilled practitioners of the art.
In certain embodiments, once the data sourcing918 phase has been completed, thecognitive agent development926 phase may be initiated instep928 with development of one or more machine learning (ML) models associated with the cognitive process. In various embodiments, operations associated with the ML model development may includeexploratory data analysis1047, data quality andviability assessment1048, and feature identification based upon certain data characteristics, or a combination thereof. In certain embodiments, operations associated with the ML model development may includefeature processing1050,algorithm evaluation1051 andassessment1052, development ofnew algorithms1053, andmodel training1054, or a combination thereof.
In certain embodiments, any cognitive skills associated with the cognitive process that may not currently exist may then be developed instep930. In certain embodiments, an ML model developed instep928 may be used to develop a cognitive skill instep930. In certain embodiments, operations associated with the development of a cognitive skill may include determining the value of a particularcognitive skill1055, implementing one ormore actions1056 associated with a cognitive skill, and deploying a cognitive skill'saction1057, or a combination thereof. In various embodiments, operations associated with the development of a cognitive skill may include the preparation ofcertain test data1058.
In certain embodiments, operations associated with the development of a cognitive skill may include defining and deploying a particular cognitive skill'smetadata1059. In certain embodiments, operations associated with the development of a cognitive skill may include preparing a particular cognitive skill as acognitive process component1060, described in greater detail herein. In certain embodiments, operations associated with the development of a cognitive skill may include unit testing anddebugging1061 one or more actions associated with a particular cognitive skill. In certain embodiments, operations associated with acquiring cognitive process components may then be performed instep932. In certain embodiments, the operations may include identifying1062 and acquiring1063 one or more cognitive process components.
In certain embodiments, operations associated with composing a cognitive agent may then be performed instep934. In certain embodiments, cognitive process components acquired instep932 may be used to compose the cognitive agent. In certain embodiments, the operations associated with composing a cognitive agent may include searching a repository of cognitive process components forcognitive skills1064 ordatasets1065 associated with the cognitive process.
In certain embodiments, the operations associated with composing a cognitive agent may include decomposing a cognitive agent into associatedcognitive skills1066. In certain embodiments, the operations associated with composing a cognitive agent may include composing acognitive agent1067, establishing connections to associated cognitive skills anddata sets1068, and deploying thecognitive agent1069, or a combination thereof. In certain embodiments, the foregoing steps in thecognitive agent development926 phase may then be iteratively repeated until all needed cognitive agents have been developed.
In certain embodiments, once thecognitive agent development926 phase has been completed, quality assurance and user acceptance operations associated with the cognitive process are respectively performed instep936 and938. In certain embodiments, the quality assurance operations may include establishingtest plans1070 for the cognitive process. In certain embodiments, the quality assurance operations may include verifying the cognitive process meets specifiedrequirements1071 associated with the cognitive process.
In certain embodiments, the quality assurance operations may include validating the cognitive process fulfill its intendedpurpose1072. In certain embodiments, the quality assurance operations may include assessing the cognitive process' rate of learning1073. In certain embodiments, the use acceptance operations may include validating the cognitive process fulfills its intendedpurpose1074. In certain embodiments, the user acceptance operations may include assessing the cognitive process in the context of the user'sorganization1073.
In certain embodiments, the cognitive process is then promoted instep940, as described in greater detail herein, into a production phase. In certain embodiments, operations associated with the production phase may include deploying one or more cognitive agents intoproduction1076. In certain embodiments, operations associated with the production phase may include capturing and reprocessing data generated by thesystem1077. In certain embodiments, operations associated with the production phase may include monitoring the system'stechnical performance1078.
In certain embodiments, once the cognitive process is operating in the production phase, ongoing system monitoring operations are performed instep942 to collect certain performance data. In certain embodiments, the system monitoring operations may include updating a continuous integration process1079. In certain embodiments, the system monitoring operations may include updating infrastructure monitoring processes1080.
In certain embodiments, the performance data resulting from the monitoring operations performed instep942 may them be used instep944 to perform various Key Performance Indicator (KPI) evaluation operations. In certain embodiments, the KPI evaluation operations may include monitoring1081 and analyzing1082 the system's business performance. In certain embodiments, the KPI evaluation operations may include making recommendations to improve1083 the systems business performance.
In certain embodiments, the results of the KPI evaluations may be used as feedback to improve the performance of the cognitive process in theproduction940 phase. In certain embodiments, the results of the KPI evaluations may be provided as input instep904 to determine additional operational and performance parameters related to the cognitive process. In certain embodiments, these additional operational and performance parameters may be used to repeat one or more steps associated with the lifecycle of the cognitive process to revise its functionality, improve its performance, or both.
FIGS. 11aand 11bare a simplified process flow showing the lifecycle of augmented intelligence agents implemented in accordance with an embodiment of the invention to perform augmented intelligence system (AIS) operations. In certain embodiments, a cognitive agent lifecycle may include acognitive agent composition1102 phase and acognitive agent confirmation1104 phase. In certain embodiments, thecognitive agent composition1102 phase may be initiated with the definition of a cognitive process use case in step1106, followed by architecting an associated solution in step1108.
One or more cognitive skills associated with the architected solution are then defined, developed and tested instep1110. In certain embodiments, a machine learning (ML) model associated with the architected solution is defined instep1112. In certain embodiment, cognitive actions, described in greater detail herein, are defined for the ML model instep1114. In certain embodiments, data sources for the architected solution are identified instep1116 and corresponding datasets are defined instep1118.
The ML model definitions defined instep1112 are then used instep1120 to define variables that need to be secured in the implementation of each associated AIS region, described in greater detail herein. Likewise, the data sources identified instep1116 are used instep1122 to define data sources corresponding to each associated AIS region. Thereafter, the data sources defined instep1122 and the datasets defined instep1118 are used instep1124 to define datasets that will be used to compose a cognitive agent instep1128. Once the datasets have been developed in instep1124, they are used to curate and upload training data to associated data source connections instep1126.
Cognitive agent compositions operations are then initiated instep1128 by creating a cognitive agent instance instep1130. Once created, the secured variables defined instep1120 are added to one or more cognitive skills, which in turn are configured instep1132. The ML model actions defined instep914 are then used instep1134 to define input and output services for the one or more cognitive skills configured instep1132. Thereafter, the datasets developed instep1124 are used instep1136, along with the training data curated and uploaded instep1126 to define dataset connections. A dataflow is then created for the cognitive agent instep1138 and mapped instep1140.
Thecognitive agent confirmation1104 phase is then initiated instep1142 by testing various service associated with the cognitive agent composed instep1128. Thereafter, acognitive agent snapshot1144, described in greater detail herein, is then created instep1144. In certain embodiments, thecognitive agent snapshot1144 may include versioning and other descriptive information associated with the cognitive agent.
An instance of the cognitive agent is then initiated instep1146. In certain embodiments, initiation of the cognitive agent may include promoting a snapshot of the cognitive agent instep1148 and enabling start and stop triggers instep1150. The instance of the cognitive agent that was initiated instep1146 is then invoked for execution instep1152, followed by performing queries and filtering associated responses instep1154. In certain embodiments, log entries corresponding to the operations performed instep1142 through1154 are reviewed instep1156.
FIG. 12 is a simplified block diagram of an augmented intelligence system (AIS) implemented in accordance with an embodiment of the invention to perform pattern-based continuous learning operations. In certain embodiments, the pattern-basedcontinuous learning operations1202 may include a data ingestion andprocessing1204 phase, followed by the performance of certain cognitive processes, described in greater detail, during acognitive insights1206 phase. In certain embodiments, thecognitive insight1206 phase is followed by acognitive action1208 phase, which in turn is followed by acognitive learning1210 phase. In certain embodiments, the process is continued, proceeding with the data ingestion andprocessing1204 phase.
In certain embodiments, multi-structuredbig data sources304 may be dynamically ingested during the data ingestion andprocessing1204 phase. In certain embodiments, based upon a particular context, extraction, parsing, and tagging operations are performed on language, text and images they contain to generate associateddatasets1214. In certain embodiments, the resulting datasets may includevarious transaction histories1216, customer relationship management (CRM) feeds1218, market data feeds1220, news feeds1222, social media feeds1224, and so forth.
In certain embodiments automated feature extraction and modeling operations may be performed on thedatasets1214 to generate one or morecognitive models222, described in greater detail herein. In certain embodiments, thecognitive models222 may include quantitative1228 models, qualitative1230 models, ranking1232 models,news topic1234 models,sentiment1236 models, and so forth. In various embodiments, the resulting cognitive models may be implemented to mapcertain datasets1214 to acognitive graph260, described in greater detail herein.
In various embodiments, thecognitive models222 and thedatasets1214 mapped to thecognitive graph260 may be used in the composition of certaincognitive skills226, as likewise described in greater detail herein. In certain embodiments, thecognitive skills226 may include aportfolio profile builder1242 skill, aclient profile builder1244 skill, amarket data pipeline1246 skill, amarket event detection1248 skill, a cognitive insights ranking1250 skill, and so forth. As likewise described in greater detail herein, the resultingcognitive skills226 may then be used in various embodiments to generate certaincognitive agents250. In certain embodiments, the resultingcognitive agents250 may include sourcing432 agents,destination434 agents,engagement436 agents,compliance438 agents, and so forth.
In certain embodiments, thesourcing432 agent may be implemented to source various multi-structuredbig data304 sources, described in greater detail herein. In certain embodiments, thesourcing432 agent may include a batch upload agent, an Application Program Interface (API) connectors agent, a real-time streams agent, a Structured Query Language (SQL)/Not Only SQL (NoSQL) databases agent, a message engines agent, a transaction sourcing agent, or some combination thereof. Skilled practitioners of the art will recognize that many such examples of sourcing432 agents are possible. Accordingly, the foregoing is not intended to limit the spirit, scope or intent of the invention.
In certain embodiments, the resultingcognitive agents250 may be implemented during thecognitive insights1206 phase, as described in greater detail herein, to perform variouscognitive processes326. In various embodiments, the performance of certaincognitive processes326 may result in the generation of one or more cognitive insights. In various embodiments, the cognitive insights may include the provision of certain actionable recommendations and notifications to a user during thecognitive action1208 phase. In various embodiments, certain features from newly-observed data may be automatically extracted from user feedback during the learning1010 phase to improve variouscognitive models222.
As an example, a first query from a user may be submitted to theAIS118 system during thecognitive insights1206 phase, which results in the generation of a first cognitive insight, which is then provided to the user. In response, the user may respond by providing a first response, or perhaps a second query, either of which is provided in the same context as the first query. TheAIS118 receives the first response or second query, performsvarious AIS118 operations, and provides the user a second cognitive insight. As before, the user may respond with a second response or a third query, again in the context of the first query. Once again, theAIS118 performsvarious AIS118 operations and provides the user a third cognitive insight, and so forth. In this example, the provision of cognitive insights to the user, and their various associated responses, results in a stateful dialog that evolves over time.
FIG. 13 is a simplified block diagram of components associated with the operation of an augmented intelligence system (AIS) governance and assurance framework implemented in accordance with an embodiment of the invention to provide AIS assurance. Certain embodiments of the invention reflect an appreciation that the practices and processes associated with AI assurance, described in greater detail herein, ideally provide an effective framework for the management of AI bias, robustness, and explainability. AI bias, as used herein, broadly refers to an outcome of a cognitive computing operation deviating from a standard resulting in disproportionate favor of or against one concept, thing, action, decision, person, or group compared with another, usually in a way considered to be prejudicial, discriminatory or inequitable.
Certain embodiments of the invention likewise reflect an appreciation that such deviation may take many forms. For example, the deviation may take the form of statistical bias, in which an estimate deviates from a statistical standard or a true population value. As another example, the deviation may take the form of a judgement, decision, or action that diverges from a moral norm. As yet another example, the deviation may take the form of disregard or avoidance of regulatory or legal statutes. As yet still another example, the deviation may take the form of cultural, racial, gender, physiological, psychological, geographical, and socioeconomic prejudices. Those of skill in the art will recognize that many types of bias and associated deviation are possible. Accordingly, the foregoing is not intended to limit the spirit, scope or intent of the invention.
Certain embodiments of the invention reflect an appreciation that the occurrence of AI bias may result in a disparate impact upon the outcome of an associated cognitive computing operation. Certain embodiments of the invention likewise reflect an appreciation that AI bias may not be intentional. Likewise, certain embodiments of the invention reflect an appreciation that AI bias may be inherent in data used to train machine learning models. Furthermore, certain embodiments of the invention reflect an appreciation that the determination of whether the outcome of a particular cognitive computing operation constitutes AI bias may be subjective. Accordingly, such determination, and the degree to which a particular outcome embodies AI bias, is a matter of design choice.
As used herein, machine learning (ML) broadly refers to a class of learning algorithms that include artificial neural networks, decision trees, support vector machines, and so forth. Skilled practitioners of the art will be aware that such algorithms are able to learn from examples and can typically improve their performance by processing more data over time. Those of skill in the art will likewise be aware that the data used to train a learning algorithm may include a variety of unstructured data forms including free-form text, spoken language, images, and so forth.
As likewise used herein, an ML model is a mathematical representation of a real-world process that can be facilitated by a cognitive computing operation. Skilled practitioners of the art will likewise be aware an ML model is typically generated by providing certain training data to one or more learning algorithms associated with the model. In turn, the learning algorithm finds patterns in the training data such that certain input parameters correspond to a particular target. The output of the training process is an ML model which can then be used to make predictions. In certain embodiments, the training data may provide the basis for the learning algorithm to provide recommendations, perform medical diagnoses, make investment decisions, allow autonomous vehicles to recognize stop signs, and so forth.
Certain embodiments of the invention reflect an appreciation that machine learning is a statistical approach to AI, and as such, may be difficult to interpret and validate. Furthermore, certain embodiments likewise reflect an appreciation that automated learning operations that use inherently biased data will likely lead to biased results. Accordingly, various embodiments of the invention reflect an appreciation that AI bias may unintentionally be inherent in the design of certain ML models used to perform a cognitive computing operation.
Likewise, certain embodiments of the invention reflect an appreciation that artificial agents used in the performance of a cognitive computing operation, described in greater detail herein, may impose systematic disadvantages on subgroups based upon patterns learned via procedures that appear reasonable and nondiscriminatory on face value. Furthermore, certain embodiments of the invention reflect an appreciation that artificial agents may paradoxically learn autonomously from human-derived data, which may in turn result in inadvertently learned human biases, whether good or bad. Moreover, certain embodiments of the invention reflect an appreciation that while autonomous systems, such as anAIS118, might be regarded as neutral or impartial, they may nonetheless employ biased algorithms that result in significant harm that could go unnoticed and uncorrected, possibly until it is too late.
As likewise used herein, and as it relates to AI assurance, AI robustness broadly refers to the ability of an ML model to withstand, and overcome, perturbations that may have an adverse effect on its intended operation. Certain embodiments of the invention reflect an appreciation that there is an inherent level of risk, unpredictability, and volatility in real-world settings where AI systems, such as anAIS118, operate. Accordingly, certain embodiments of the invention likewise reflect an appreciation that ML models typically used by such systems need to be resilient to unforeseen events and adversarial attacks that can result in damage or manipulation. Likewise, certain embodiments of the invention reflect an appreciation that various approaches to achieving AI robustness may include avoiding known risks, self-stabilization, and graceful degradation.
Certain embodiments of the invention likewise reflect an appreciation that examples of challenges to AI robustness include distributional shift, adversarial inputs, and unsafe exploration. Likewise, certain embodiments of the invention reflect an appreciation that ML models are prone to various attacks and threats. For example, deep learning models are known to have performed well when performing image recognition tasks. However, it is also known that such models are prone to adversarial attacks. To continue the example, two images may look essentially the same to a human, but when presented to a model, they may produce different outcomes. In this example, the two images are input data points that may vary slightly, and as such, represent an adversarial attack. Accordingly, while the differences in the two images may seem indistinguishable to a human, they may be different enough to an ML model to result in different outcomes.
Likewise, AI explainability, as used herein and as it relates to AI assurance, broadly refers to transparently conveying to a user the structural and operational details of the ML model(s) used by an AIS, statistical and other descriptive properties of its associated training data, and various evaluation metrics from which its likely behavior may be inferred. Certain embodiments of the invention reflect an appreciation that as AI approaches become more sophisticated, decisions are increasingly being made by ML models whose design, and the rationale of its decision making processes, are opaque to the user. Certain embodiments of the invention likewise reflect an appreciation that the opaqueness of such ML models hinders AI explainability, and by extension, undermines a user's trust of the outcomes it produces. Accordingly, certain embodiments of the invention reflect an appreciation that AI explainability ideally provides a user interpretable insight into how and why an ML model performed certain actions or arrived at a particular decision.
Certain embodiments of the invention reflect an appreciation that many AI applications use ML models that essentially operate as black boxes, offering little if any discernible insight into how they reach their outcomes. Certain embodiments of the invention likewise reflect an appreciation that such opaque operation may be suitable for modest or fairly inconsequential decisions, such as recommending apparel to wear or a movie to view. However, certain embodiments of the invention likewise reflect an appreciation that a user's trust in an opaque ML model begins to diminish when the decision is related to something more complex or important, such as recommendations for healthcare or financial investments. As an example, how many users would trust an opaque ML model's diagnosis rather than a physician's without some degree of clarity regarding how the model arrived at its recommendation? In this example, the model's diagnosis may in fact be more accurate.
However, lack of explainability may lead to a lack of trust. Accordingly, certain embodiments of the invention reflect an appreciation that AI explainability can assist in making a black box ML model's decision making process less opaque in a way that is comprehensible to humans. As used herein, as it relates to a black box ML model's decision making process, less opaque broadly refers to providing sufficient visibility into the method by which a particular decision was made, the factors contributing to the decision, and their respective effect on the decision, such that a user can understand how and why the decision was made. Certain embodiments of the invention reflect an appreciation that the extent of, or degree of detail, such visibility may need to be provided may vary according to the particular needs of the user, the complexity of the decision, the context of the decision, or a combination thereof. Accordingly, the extent of such visibility, and the method by which it is generated and provided, is a matter of design choice.
Referring now toFIG. 13, anAIS118 may be implemented in certain embodiments to include an AIS governance andassurance framework128. In certain embodiments, the AIS governance andassurance framework128 may in turn be implemented to include anAIS assurance engine1330, anopaque model1332, and anoutput module1350. In various embodiments, theAIS assurance engine1330 may be implemented to include acounterfactual engine1336, and certaincognitive applications326. In certain embodiments, theopaque model1332 may be variously implemented as an opaque ML model, an opaque cognitive model, an opaque classifier, black box ML model, a black box classifier, and so forth. Skilled practitioners of the art will recognize that many such embodiments of anopaque model1332 are possible. Accordingly, the foregoing is not intended to limit the spirit, scope or intent of the invention. In certain embodiments, thecounterfactual engine1336 may be implemented as a Counterfactual Explanations for Robustness, Transparency, Interpretability, and Fairness of Artificial Intelligence (CERTIFAI) tool.
In certain embodiments, theAIS assurance engine1330 may be implemented to perform an AIS assurance operation. In certain embodiments, the AIS assurance operation may include the performance of an AIS impartiality assessment operation, an AIS robustness assessment operation, an AIS explainability operation, an AIS explainability with recourse operation, or a combination thereof, as described in greater detail herein. In certain embodiments, the AIS assurance operation may be performed on a service provider server, described in greater detail herein. In certain embodiments, performance of the AIS assurance operation may be provided as an AIS assurance service.
In certain embodiments, the AIS assurance service may be referred to as AIS Trust as a Service. Certain embodiments of the invention reflect an appreciation that trust, as it relates to a anAIS118 used to generate aparticular decision1334, may be subjective. However, certain embodiments of the invention likewise reflect an appreciation that the performance of an AIS assurance operation, whether provided as AIS trust as a service or in some other form, may contribute to establishing, and reinforcing, a user's1306 trust in thedecisions1334 generated by anopaque model1332.
In various embodiments, theAIS assurance engine1330 may be implemented as a foundation layer, described in greater detail herein, for certaincognitive applications326. In certain embodiments, thecognitive applications326 may be implemented to include anAIS impartiality assessment1342 engine, anAIS robustness assessment1344 engine, and anAIS explainability generation1346 engine, or a combination thereof. In certain embodiments, theAIS impartiality assessment1342 engine may be implemented to perform an AIS impartiality assessment operation. In certain embodiments, the AIS impartiality assessment operation may be performed to detect the presence of bias in a particular ML model, such as theopaque model1332, and if detected, assess its effect on the outcome of an associated cognitive computing operation.
In certain embodiments, theAIS robustness assessment1344 module may be implemented to perform an AIS robustness assessment operation. In certain embodiments, the AIS robustness assessment operation may be performed to assess the robustness of a particular ML model, such as theopaque model1332. In certain embodiments, theAIS explainability generation1346 module may be implemented to perform an AIS explainability operation. In certain embodiments, the AIS explainability operation may be performed to provide a user interpretable insight into how and why a particular ML model, such as theopaque model1332, performed certain actions or arrived at aparticular decision1334. In certain embodiments, thedecision1334 may be implemented as a classification, a determination, a conclusion, a prediction, an outcome, or a combination thereof.
In certain embodiments, atraining corpus1302, familiar to those of skill in the art, may be used by amodel trainer1304, likewise familiar to skilled practitioners of the art, to train theopaque model1332. In certain embodiments, thetraining corpus1302 may include one or more datasets pertinent to the training of theopaque model1332. In certain embodiments, themodel trainer1304 may be implemented to perform a classifying operation. In certain embodiments, performing the classifying operation results in certain data elements included in thetraining corpus1302 being trained for use by theopaque model1332. In certain embodiments, anopaque model1332 developer may select, or provide, aparticular training corpus1302 and aparticular model trainer1304 to train theopaque model1332. In these embodiments, the selection of whichtraining corpus1302 andmodel trainer1304 are used to train theopaque model1332 is a matter of design choice.
In certain embodiments, adata point obtainer1310 may be implemented to obtain one or moreinput data points1308 associated with aparticular user1306, a group ofusers1306, or other entity. As used herein, aninput data point1308 broadly refers to any discrete unit of information that may be used by anopaque model1332 to produce adecision1334. In certain embodiments, thedata point obtainer1310 may likewise be implemented to provide one or more obtainedinput data points1308 to theopaque model1332 for processing. In certain embodiments, one ormore decisions1334 may be generated by theopaque model1332 according to the one or more input data points1308.
As described in greater detail herein, certain aspects of the invention reflect an appreciation that the adoption of ML models, including various implementations of anopaque model1332, is currently increasing at an unprecedented pace. Certain aspects of the invention likewise reflect an appreciation that such adoption has led to a variety of considerations related to potential ethical, moral, and social consequences of thedecisions1334 made by such models. For example, one such consideration may be related to being able to determine whether theopaque model1332 been partial to, or biased against, aparticular user1306, group ofusers1306, or other entity.
Another consideration may be related to being able to determine how easily anopaque model1332 might be deceived, broken, or otherwise compromised. Yet another consideration may be related to how auser1306 of such models, or their developer, might be able to understand how a particularopaque model1332 makes itsdecisions1334. Yet still another consideration may be related to what aparticular user1306, group ofusers1306, or other entity, might be able to do to change an unfavorable outcome resulting from adecision1334 made by anopaque model1332.
To provide an example of how such considerations may be applicable to supporting MS assurance for aparticular decision1334 generated by anopaque model1332, auser1306 may have provided certaininput data points1308 in the course of applying for a loan. In this example, theinput data points1308 provided to theopaque model1332 may have resulted in adecision1334 to decline the user's1306 loan application. However, the decision making process of theopaque model1332 is not visible to theuser1306. As a result, theuser1306 may have no way of understanding why their loan application was declined without the provision of corresponding AIS explainability.
In certain embodiments, thecounterfactual engine1336 may be implemented to perform a counterfactual generation operation. In certain embodiments, the counterfactual generation operation may be performed to generate one or more counterfactuals. As used herein, a counterfactual broadly refers to another data point that is close to a particularinput data point1308 whose use would result in an ML model, such as theopaque model1332, producing a different outcome corresponding to theinput data point1308. In certain embodiments, the generation of one or more such counterfactuals by thecounterfactual engine1336 may contribute to the provision of AIS explainability with recourse to one ormore decisions1334, assessing the AIS robustness of theopaque model1332, the extent of any bias it may embody, or a combination thereof.
In certain embodiments, thecounterfactual engine1336 may be implemented to generate one or more counterfactuals, which can then be used by theAIS explainability generation1346 engine to perform an AIS explainability with recourse operation. As used herein, AIS explainability with recourse broadly refers to the provision of AIS explainability to auser1306, in combination with one or more counterfactuals that theuser1306 may employ as a recourse to changing aparticular decision1334 made by theopaque model1332. In certain embodiments, the explainability with recourse operation may be performed by theAIS explainability generation1346 engine as one aspect of an AIS assurance operation.
In certain embodiments, the explainability with recourse operation may be performed to provide an AIS assurance explanation to auser1306. As used herein, an AIS assurance explanation broadly refers to an explanation of how aparticular decision1334 was made by theopaque model1332, the factors contributing to thedecision1334, and their respective effect on thedecision1334, such that auser1306 can be assured of the validity of thedecision1334. In certain embodiments, the AIS assurance explanation provided to theuser1306 may include one or more counterfactuals that may change aparticular decision1334 made by theopaque model1332. In certain embodiments, a counterfactual may be provided to theuser1306 in the form of a recourse. In certain embodiments, the AIS assurance explanation may be implemented to contain one or more assertions related to one or more counterfactuals that may change aparticular decision1334 made by theopaque model1332. In certain embodiments, the AIS assurance explanation may be provided to theuser1306 in the form of acognitive insight1352.
In certain embodiments the AIS assurance explanation provided to theuser1306 may include two or more AIS assurance explanations so they can choose which changes might be made to achieve a desired outcome. For example, as previously described in greater detail herein, theopaque model1332 may have processed certaininput data points1308 submitted by auser1306 in the course of applying for a loan. As likewise described in greater detail herein, the loan application submitted may have been processed by theopaque model1332, resulting in the application being declined.
To further extend the previous example, the AIS assurance explanation may be, “Had your income been $5,000.00 greater per year, or if your credit score had been 30 points higher, your loan would have been approved.” Accordingly, such counterfactuals may be implemented in various embodiments to not only provide a way of explainingdecisions1334 made by anopaque model1332 to auser1306, but also recourses that may be used to identify actionable ways of changing certain behaviors or other factors to obtain favorable outcomes. In certain embodiments, such counterfactuals may be implemented to audit the impartiality and robustness of anopaque model1332.
In certain embodiments, thecounterfactual engine1336 may be implemented to use a genetic algorithm to generate one or more counterfactuals. As used herein, a genetic algorithm broadly refers to a mathematical approach to solving both constrained and unconstrained optimization problems, based upon natural selection, the process that drives biological evolution. In typical implementations, a genetic algorithm repeatedly modifies a population of individual solutions. At each step, the genetic algorithm selects individuals at random from the current population to be parents and uses them to produce the children for the next generation. Over successive generations, the population evolves toward an optimal solution. In certain embodiments, a customized genetic algorithm may be implemented to iteratively improve the set of generated data points such that they become closer to a particularinput data point1308 while simultaneously ensuring theopaque model1332 givesdecisions1334 for the generated data points that differ from adecision1334 corresponding to theinput data point1308.
Skilled practitioners of the art will be aware that genetic algorithms can be applied to solve a variety of optimization problems that are not well suited for standard optimization algorithms, including problems in which the objective function is discontinuous, non-differentiable, stochastic, or highly nonlinear. Likewise, genetic algorithms can be implemented to address problems of mixed integer programming, where some components are restricted to be integer-valued. As typically implemented, a genetic algorithm uses three types of rules at each step of selection to create the next generation from the current population. First, selection rules are used to select certain individuals, referred to as parents, that contribute to the population at the next generation. Second, crossover rules combine two parents to form children for the next generation, and third, mutation rules apply random changes to individual parents to form children.
Certain embodiments of the invention reflect an appreciation that the use of a genetic algorithm to allows the generation of counterfactuals for both linear and non-linear models (e.g. deep networks), and for any form of input data, from mixed tabular data to image data, without any approximations to, or assumptions for, theopaque model1332. In certain embodiments, auser1306 may both define a range for any particular feature and restrict which features can change. As used herein, a feature broadly refers to an individual measurable property or characteristic of a phenomenon being observed. In certain embodiments, thecounterfactual engine1336 may be implemented to constrain the values of sampled points based upon those choices, allowing the generated counterfactuals to reflect a user's1306 understanding of how much it is possible to change their associated features.
Certain embodiments of the invention reflect an appreciation that careful selection of informative, discriminating, and independent features may contribute to the efficacy of algorithms used in pattern recognition, classification, and regression. Certain embodiments of the invention likewise reflect an appreciation that while features are often numeric, structural features such as strings and graphs are often used in syntactic pattern recognition. Likewise, certain embodiments of the invention reflect an appreciation that the concept of such features is related to the concept of an explanatory variable used in statistical techniques such as linear regression. In certain embodiments, theinput data point1308 may be implemented to include multiple features.
In certain embodiments, thedata point obtainer1310 may be implemented to provide a particular input data point1308 x to theopaque model1332, where it is used by the counterfactual engine1336 f to generate a feasible counterfactual c, as follows:
- where d(x, c) is the distance between x and c.
In certain embodiments, thecounterfactual engine1336 may be implemented to avoid using approximations to, or assumptions for, theopaque model1332 by using a customized genetic algorithm to solve the prior equation. In these embodiments, the customized genetic algorithm may be implemented to work for any black box model, such as theopaque model1332, and input data types, such as input data point1308 x. Accordingly, in certain embodiments, the customized genetic algorithm may be implemented to be model-agnostic. Likewise, a certain degree of flexibility in the generation of counterfactuals may be provided in various embodiments of the invention through the use of the customized genetic algorithm.
In certain embodiments, the counterfactual engine may be implemented to solve the optimization problem posed by equation (1) through the process of natural selection, as described in greater detail herein. In certain embodiments, the only mandatory inputs for the customized genetic algorithm are the counterfactual engine1336 f and a particular input data point1308 x. In general, for an n-dimensional input vector x, let W∈□nrepresent the space from which individuals can be generated and P be the set of points with the same prediction as x, as follows:
P={p|f(p)=f(x),p∈W} (2)
- where the possible set of individuals c∈I are defined such that:
I=W\P (3)
- with each individual c∈I being a candidate counterfactual.
Certain embodiments of the invention reflect an appreciation that the goal of this approach is to find the fittest possible c* to x constrained on c*∈I. Accordingly, the fitness for an individual c is defined as:
Here c*will then be the point closest to x such that c*∈I. For a multi-class case, if a user wants the counterfactual c to belong to a particular class j, we define Q as:
Q={q|f(q)=j,q∈W} (5)
- Accordingly, equation (3) then becomes:
I=(W\P)∩Q (6)
In certain embodiments, the customized genetic algorithm is carried out as follows: first, a set Icis built by randomly generating points such that they belong to I. Individuals c∈Icare then evolved through three rules processes: selection, mutation, and crossovers, as described in greater detail herein. Accordingly, the selection rules process chooses individuals that have the best fitness scores resulting from equation (4). A proportion of these individuals, dependent upon pm, the probability of mutation, are then subjected to mutation, which involves arbitrarily changing some feature values. A proportion of individuals, dependent on pc, the probability of crossover, are then subjected to crossover, which involves randomly interchanging some feature values between individuals. The resulting population is then restricted to the individuals that meet the required constraint from equation (3) or equation (6), and the fitness scores of the new individuals are calculated. This process is repeated until the maximum number of generations is reached. Finally, the individual(s) c* with the best fitness scores are chosen as the desired counterfactuals.
In certain embodiments, the choice of distance function used in equation (1) may depend upon details provided by theopaque model1332 creator and the type of data being considered. For example, if the data is tabular, the L1norm normalized by the median absolute deviation (MAD) is better than using the L1or L2norm for counterfactual generation. Accordingly, in certain embodiments the L1norm for continuous features (NormAbs) and a simple matching distance for categorical features (SimpMat) are chosen as a default for tabular data,
In certain embodiments, using MAD for normalization in model development is not possible when training data, such as atraining corpus1302, is unavailable. However, when access to training data is available, normalization is possible, with the distance metric determined as follows:
- where nconand ncatare the number of continuous and categorical features, respectively, and n is the total number of features (ncon+neat=n).
Certain embodiments of the invention reflect an appreciation that for image data, the Euclidean distance and absolute distance between two images are not good measures of image similarity. Accordingly, Structural Similarity Index Measure (SSIM) may be used in certain embodiments for image data, as it generally provides a better measure of what humans consider to be similar images. As typically implemented, SSIM values lie between 0 and 1, where a higher SSIM value means that two images look more similar to each other. Accordingly, forinput data point1308 image x and counterfactual image c, the distance can be determined as follows:
In certain embodiments, the outcomes produced by the customized genetic algorithm used by theopaque model1332 may be improved through the use of additional inputs beyond a particularinput data point1308.
In certain embodiments, auxiliary constraints may be incorporated to ensure feasible solutions by restricting the space defined by the set W which represents the space from which individuals can be generated. As an example, for an n-dimensional input, let W be the Cartesian product of the sets W1, W2. . . Wn. As another example, for continuous features, W can be constrained as Wi∈[Wi min, Wi max], and categorical features can be constrained as Wi∈{W1, W2. . . Wj}. However, in various embodiments certain variables might be immutable (e.g., a person's race). In these embodiments, a feature i for an input x can be muted by setting Wi=xi.
As an example, auser1306 whose loan application was declined may be provided an AIS assurance explanation, described in greater detail herein, that the loan was not approved due to insufficient income. In this example, a counterfactual may have been generated by thecounterfactual engine1336, with a suggested recourse stating the loan may have been granted if the user's1306 income was increased from $10,000 a year to $900,000. To continue the example, such an increase may not be feasible for theuser1306, and as a result, employing the counterfactual is not a practical option for theuser1306. Accordingly, an appropriate constraint might be applied, such as Wi∈[$10,000, $15,000] to constrain the increase in income to an amount that may be achievable. Likewise, the number of counterfactuals k can also be set. To continue the example further, thecounterfactual engine1332 may be configured to choose the top k individuals (with k=1 as default), where different features have changed, such that theuser1306 can be provided multiple and diverse explanations.
In certain embodiments, theAIS robustness assessment1344 engine may be configured to receive the one or more counterfactuals from thecounterfactual engine1336. In certain embodiments, theAIS robustness assessment1344 engine may be implemented to determine distances between aninput data point1308 and a plurality of proximate counterfactuals, as described in greater detail herein. As used herein, as it relates to the distance separating aninput data point1308 and a particular counterfactual, proximate broadly refers to those counterfactuals that are nearest to the input data point1308 (i.e., have the shortest relative distance vectors), as described in greater detail herein. In certain embodiments, theAIS robustness assessment1344 engine may be configured to use such distances to determine the robustness of a targetopaque model1332 based upon a statistical operation performed on the determined distances of the plurality of proximate counterfactuals. For example, a statistic may be a mean of the distances.
Certain embodiments of the invention reflect an appreciation that the maximum distance used to determine whether a particular counterfactual is proximate to the input data point may be subjective. Certain embodiments of the invention likewise reflect an appreciation that the maximum distance selected to determine whether a particular counterfactual is proximate to the input data point may be used to determine which, and how many, counterfactuals are proximate. Accordingly, the maximum distance used in these embodiments to determine whether a particular counterfactual is proximate to the input data point, and the method by which it is selected, is a matter of design choice.
Certain embodiments of the invention reflect an appreciation that given two black-box models, such as theopaque model1332, one network would be more difficult to deceive if the counterfactuals across classes, on average, are farther away from the input instances, such as aninput data point1308, compared to the other network. In certain embodiments, thecounterfactual engine1336 may be implemented to provide a measure of distance d(x,c), which can be used in to generate a Counterfactual Explanation-based Robustness Score (CERScore), for a particularopaque model1332.
As used herein, CERScore is defined herein as the expected distance between the input instances (e.g., input data point1304) and their corresponding counterfactuals, such that:
- where a higher CERScore implies that the associatedopaque model1332 is more robust.
In certain embodiments, thecounterfactual engine1336 may be implemented to provide the CERScore solely through the use of the opaque cognitive model's1332 predictions, ordecisions1334, without a priori knowledge of its internal structure or operation.
In certain embodiments, theAIS robustness assessment1344 engine may be implemented to perform an AIS robustness assessment operation. In certain embodiments, performance of the robustness assessment operation may include the generation of a CERScore for a particularopaque model1332. In certain embodiments, the AIS robustness assessment operation may be performed to provide an AIS assurance explanation to auser1306. In certain embodiments, the AIS assurance explanation provided to auser1306 may be implemented to include a CERScore for a particularopaque model1332. In certain embodiments, the AIS assurance explanation may be provided to theuser1306 in the form of acognitive insight1352.
In certain embodiments, thecognitive insight1352 provided to a user may be in the form of an electronic message, on-screen display, printed page, or the like. In certain embodiments, theoutput module1350 may be implemented to provide thecognitive insight1352 to aparticular user1306. In certain embodiments, the AIS assurance explanation may be presented to the developer of the model, such that the developer can modify the model, such as theopaque model1332, thetraining corpus1302, themodel trainer1304, or a combination thereof. Those of skill in the art will recognize that the described presentation of the AIS assurance explanation as ancognitive insight1352 provides the developer of the opaque model1332 a basis for modifying the model, thetraining corpus1302, themodel trainer1304, or a combination thereof, to achieve more robust results.
In certain embodiments, theAIS impartiality assessment1342 engine may be configured to receive the one or more counterfactuals from thecounterfactual engine1336. In certain embodiments, theAIS impartiality assessment1342 engine may be implemented to contrast features between a subject data point (e.g., input data point1304) and the received counterfactuals and identify significant contrasts between them. As used herein, significant contrast broadly refers to a noteworthy difference in the respective value of a particular feature shared by a subject data point and an associated counterfactual. In various embodiments, the significance of the contrast between the one or more counterfactuals and the subject data point may be determined according to whether a particular threshold is exceeded, or certain features are outside a particular range, or a combination thereof.
Certain embodiments of the invention reflect an appreciation that the determination of what constitutes a significant contrast may be subjective. As an example, a subject data point and an associated counterfactual may share the common feature of “color.” To continue the example, the value of the “color” feature for the subject data point may be “violet,” while the corresponding value of the “color” feature for the counterfactual may be “lilac.” In this example, the respective values of “violet” and “lilac” for the shared “color” feature may be considered to be of significant contrast.
In a variation of the preceding example, the value of the “color” feature for the subject data point may be “lavender,” while its corresponding value for the counterfactual may be “lilac.” In this variation of the example, the respective values of “lavender” and “lilac” for the “color” feature of the subject data point and counterfactual may or may not be considered to be of significant contrast. Accordingly, in certain embodiments, the method by which the respective value of a particular feature shared by a subject data point and an associated counterfactual are considered to be of significant contrast is a matter of design choice.
In certain embodiments, theAIS impartiality assessment1342 engine may be configured to obtain bias ranges of features; compare the identified significant contrasts to obtained bias ranges, and determine which of the identified significant contrasts fall outside the obtained bias ranges. In certain embodiments, the significance of the contrast may be based upon the ranking of greatest absolute or relative differences. In certain embodiments, theAIS impartiality assessment1342 engine may be implemented to present identified significant contrasts as an explanation of the classification of the subject data point.
In certain embodiments, theAIS impartiality assessment1342 engine may be implemented to perform an AIS impartiality assessment operation. In certain embodiments, performance of the AIS impartiality assessment operation may include assessing the impartiality of a particular ML model, such as theopaque model1332. In certain embodiments, the AIS impartiality assessment of a particularopaque model1332 may be provided fordecisions1334 it produces for anindividual user1306, a group ofusers1306, or other entity.
In certain embodiments, performance of the AIS impartiality assessment operation may include the identification of significant contrasts associated with a particularopaque model1332. In certain embodiments, theAIS impartiality assessment1342 engine may be implemented to use a particular CERScore in combination with a corresponding fitness measure resulting from the use of equation (4) to perform the AIS impartiality assessment operation. In certain embodiments, the impartiality assessment operation may be performed to provide an AIS assurance explanation to auser1306. In certain embodiments, the AIS assurance explanation may be provided to theuser1306 in the form of acognitive insight1352.
In certain embodiments, thecognitive insight1352 provided to a user may be in the form of an electronic message, on-screen display, printed page, or the like. In certain embodiments, theoutput module1350 may be implemented to provide thecognitive insight1352 to aparticular user1306. In certain embodiments, the AIS assurance explanation may be presented to the developer of the model, such that the developer can modify the model, such as theopaque model1332, thetraining corpus1302, themodel trainer1304, or a combination thereof. Those of skill in the art will recognize that the described presentation of the AIS assurance explanation as ancognitive insight1352 provides the developer of the opaque model1332 a basis for modifying the model, thetraining corpus1302, themodel trainer1304, or a combination thereof, to achieve more robust results.
Certain embodiments of the invention reflect an appreciation that, for a particular individual instance, the customized genetic algorithm may be implemented to generate different counterfactuals with different values of a protected feature (e.g., race, age). Certain embodiments of the invention likewise reflect an appreciation that auser1306 can achieve a desired outcome, such asdecisions1334, more easily than when those features could not be changed. Accordingly, certain embodiments of the invention reflect an appreciation that the ability of auser1306 to better understand how to achieve a desired outcome lessens the possibility of theuser1306 claiming theopaque model1332 was biased against them.
In certain embodiments, thecounterfactual engine1336 may be configured to determine whether a valid counterfactual can be generated, or aparticular user1306 can achieve a better score, or a combination thereof, by changing one or more protected features. In certain embodiments, theAIS impartiality1342 assessment engine may be configured to compare scores for different groups ofusers1306 according to their association with a protected group (e.g., male, female, etc.) to determine whether it is more difficult for individuals in one group to change aparticular decision1334 than individuals in another group. In certain embodiments, thecounterfactual engine1336 may be implemented for use by a developer of anopaque model1332 to audit the AIS impartiality of theopaque model1332 for various groups of observations. In certain embodiments, thecounterfactual engine1336 may be implemented in combination with theAIS impartiality assessment1342 engine to perform the audit.
In these embodiments, a fitness measure that is markedly different for counterfactuals generated for different partitions of a feature's domain value may indicate theopaque model1332 is biased towards one of the partitions. For example, if the gender feature is partitioned into two values, male and female, and the average fitness values of generated counterfactuals are lower for females than for males, this could be used as evidence that theopaque model1332 may be biased against females.
In certain embodiments, counterfactuals and the distance function may be used in combination to calculate the overall burden for a group, as follows:
- where g is a partition defined by the distinct values for a specified feature set.
Accordingly, Burden is related to CERScore, as it is the expected value over a group. Certain embodiments of the invention reflect an appreciation that certain known impartiality auditing models focus on single features. However, Burden, as implemented in various embodiments, does not have that limitation and can be applied to any combination of features
In certain embodiments, Burden may be implemented to evaluate the impartiality of a particularopaque model1332 for a particular group of individuals. As an example, individuals in thetraining corpus1302 used to train theopaque model1332 may have an associated feature of “race.” In this example, theopaque model1332 may generate anunfavorable decision1334 for a certain group of the individuals who happen to be a particular race, which can be referenced as a Burden value (i.e., a Burden score) for the group. To continue the example, the Burden value for the group may be higher than the Burden value for groups of other races that likewise receive anunfavorable decision1334.
Accordingly, a higher Burden value may be used in certain embodiments as measure of bias inherent in theopaque model1332 used to generate theunfavorable decision1334. Accordingly, theopaque model1332 imposes a greater burden on the group with a higher Burden value. In certain embodiments, a higher Burden value may indicate that an associateduser1306 may have to make more changes to have theopaque model1332 make a morefavorable decision1332 than a user who has a lower Burden value. Those of skill in the art will recognize that there are many ways in which the Burden value described herein may be used to determine the presence of bias within a particularopaque model1332. Accordingly, the foregoing is not intended to limit the spirit, scope, or intent of the invention.
In certain embodiments, theAIS impartiality assessment1342 engine may be implemented to present identified significant contrasts that fall outside the obtained bias ranges of features as acognitive insight1352. In certain embodiments, thecognitive insight1352 may be in the form of an electronic message, an on-screen display, a printed page, or the like. In certain embodiments, theoutput module1350 may be implemented to provide thecognitive insight1352 to aparticular user1306. In certain embodiments, the identified significant contrasts may be presented as acognitive insight1352 to the developer of the model, such that the developer can modify theopaque model1332, thetraining corpus1302, themodel trainer1304, or a combination thereof, to achieve less biased results. Skilled practitioners of the art will recognize that the described presentation of identified significant contrasts as acognitive insight1352 provides the developer of the opaque model1332 a basis for modifying their model, thetraining corpus1302, themodel trainer1304, or a combination thereof.
FIG. 14 shows a subject patient chart provided as an input data point used to generate counterfactuals implemented in accordance with an embodiment of the invention. In certain embodiments, a counterfactual engine, described in greater detail herein, may be implemented to use a genetic algorithm, likewise described in greater detail herein, to generate a counterfactual. As likewise described in greater detail herein, the resulting counterfactual may be used in certain embodiments to provide explainability for decisions generated by a machine learning (ML) model. In certain embodiments, a decision provided by a machine learning model may be in the form of prediction.
In certain embodiments, the ML model may be implemented as an opaque ML model, described in greater detail herein. In certain embodiments, the opaque ML model may be implemented as an opaque cognitive model, likewise described in greater detail herein. In certain embodiments, counterfactuals may be implemented to a user to understand which features have the most bearing on a particular ML model's decision behavior.
As an example, apatient profile1402, which can serve as an input data point, is shown inFIG. 14. In this example, thepatient profile1402 may include a patient identifier (ID)1404, a predicteddiabetic diagnosis1406, various patient attributes1408, and associated results generated by an ML model. To continue the example, certain patient attributes1408 may include non-modifiable1428 and modifiable1430 diabetes factors. Examples of non-modifiable1428 diabetes factors may include the patient's age1415, the number of pregnancies they may have had1414, and the thickness of theirskin1416. Likewise, examples of modifiable1430 diabetes factors may include the patient'sglucose level1418, theirblood pressure1420, theirinsulin level1422, and body mass index (BMI)1424.
In various embodiments, an ML model, such as an opaque cognitive model, may be implemented to process the patient attributes1408, and their associated results generated by the ML model, to arrive at the predicteddiabetic diagnosis1406. For example, as shown in thepatient profile1402, the predicteddiabetic diagnosis1406 for the patient is positive. In certain embodiments, the patient attributes1408 may be processed by a counterfactual engine, as described in greater detail herein, to generate a different set ofresults1434, which may contain one or more counterfactuals, which in turn may result in the predicteddiabetic diagnosis1436 for the patient being negative.
For example, as shown in the counterfactualpatient profile1432, lowering the subject patient's1404glucose level1418 may be the most optimal1440 counterfactual, while lowering theirBMI1424 may be a less optimal1438 counterfactual. In this example, the most optimal1440 and less optimal1442 counterfactuals represent the least amount of changes to the subject patient'sprofile1402 that will lead to a more preferred outcome of the predicteddiabetic diagnosis1436 being negative. Accordingly, lowering the subject patient's1404glucose level1418 may be interpreted as themodifiable diabetes factor1430 most important to change.
In certain embodiments, a counterfactual engine may be implemented to keep certain features constant, such as the non-modifiable1430 diabetes factors, while investigating features that have the ability to change, such as the modifiable1432 diabetes factors shown inFIG. 14. Accordingly, certain embodiments of the invention reflect an appreciation that while the modification of various features, such as the modifiable1432 diabetes factors, may result in a useful counterfactual, while other features, such as the non-modifiable1430 diabetes factors, may likewise result in useful counterfactuals, albeit not as preferred. Furthermore, certain embodiments of the invention reflect an appreciation that a symbiotic relationship may exist between certain features, whether modifiable or not, which could affect the efficacy of a particular counterfactual.
FIGS. 15athrough 15fshow a simplified depiction of the generation of counterfactuals implemented in accordance with an embodiment of the invention. As shown inFIG. 15a, aninput data point1504 and a plurality of associatedpatient data points1506 are respectively mapped to an opaque cognitivemodel feature space1502 according to the values of their associated features. As used herein, a feature space broadly refers to an n-dimensional collection of features used to describe data used by a machine learning (ML) model to generate a decision, as described in greater detail herein. Accordingly, as likewise used herein, an opaque cognitivemodel feature space1502 broadly refers to a feature space used by an opaque cognitive model to generate a decision, as likewise described in greater detail herein.
In this depiction, thedata input point1504 represents a subject patient whose associated features have been used by an opaque cognitive model to generate a predicted diagnosis of being diabetic. Examples of such features may include the subject patient's age, gender, body mass index (BMI), glucose level, and other factors commonly used to predict diabetes in a patient. As likewise shown inFIG. 15a, associatedpatient1506 data points represent individual patients whose associated features can likewise be used by the opaque cognitive model to generate a corresponding predicted diagnosis of whether or not they have diabetes.
Referring now toFIG. 15b, the predicted diagnosis of individual patients may be achieved by the performance of a decision generation operation by an opaque cognitive model that classifies each associatedpatient data point1506 shown in FIG.15aas either a diabetic1508 or non-diabetic1510 data point. Certain embodiments of the invention reflect an appreciation that classification models make predictions based upon some calculated boundary that separates different possible decisions, such as classifications, within in its associated feature space. Certain embodiments of the invention likewise reflect an appreciation that decision boundaries within a feature space, such as the opaque cognitivemodel feature space1502, are typically unknown in advance and are often difficult to discover. In certain embodiments, a counterfactual engine, described in greater detail herein, may be implemented to facilitate the determination of decision boundaries within a feature space by generating and classifying new data points that are proximate to existing classified data points. In certain embodiments, the newly generated and classified points may be used in combination with existing classified data points to provide more granular definition of a decision boundary.
For example, as shown inFIG. 15c, a counterfactual engine may use an opaque cognitive model to generate new diabetic1512 and non-diabetic1514 data points, which a that are respectively plotted to be proximate to previously classified diabetic1508 and non-diabetic1510 data points. In turn, the plotteddata points1512,1514 can then be used in combination with the previously classifieddata points1508,1510 by the counterfactual engine to plot amodel decision boundary1520. As likewise shown inFIG. 15c, the resultingmodel decision boundary1520 separates two outcomes, which are whether a patient has a predicted diagnosis of being diabetic1522 or non-diabetic1524. Certain embodiments of the invention reflect an appreciation that while the resultingmodel decision boundary1520 may be shown as a two-dimensional representation inFIG. 15cfor visualization purposes, themodel decision boundary1520 actually exists in a high-dimensional mathematical space.
In certain embodiments, a counterfactual engine may be implemented to use a genetic algorithm, as described in greater detail herein, to iteratively generate counterfactuals. In certain embodiments, the genetic algorithm may use existing classified data points, such as the existing classified non-diabetic1510 data points shown inFIGS. 15cand 15dto generate a first generation of counterfactuals, such as thefirst generation1516 counterfactuals likewise shown inFIG. 15d.
In certain embodiments, the resultingfirst generation1516 counterfactuals may in turn be used, as depicted inFIG. 15e, by the genetic algorithm to generatesecond generation1518 counterfactuals. In certain embodiments, additional generations of counterfactuals may be iteratively generated by the counterfactual engine over time as needed or desired. In these embodiments, the number of counterfactual generations, and the interval of time over which they may be generated, is a matter of design choice. In certain embodiments, the genetic algorithm may be implemented to generate each generation of counterfactuals through mutations and crossovers, as described in greater detail herein, ultimately producing new, diverse data points.
In certain embodiments, the counterfactual engine may be implemented to search for the minimum feasible changes that can be made such that an opaque cognitive model predicts a different and more preferred outcome. In certain embodiments, such minimum feasible changes are associated with counterfactuals that are proximate to themodel decision boundary1520, as shown inFIG. 15e. In certain embodiments, the most optimal counterfactuals may be selected according to their respective distance vector d from theinput data point1502. As used herein, an optimal counterfactual broadly refers to a counterfactual separated from theinput data point1502 by a distance vector d that does not exceed a particular distance value. In these embodiments, the determination of the number of optimal counterfactuals, and the maximum distance value of the distance vector d used to define them, is a matter of design choice.
For example, as shown inFIG. 15f, counterfactuals ‘1’1530, ‘2’1532, ‘3’1534, and ‘4’1536 have been determined by a counterfactual engine to be closest to themodel decision boundary1520 of the opaque cognitive model feature space150. Furthermore, their associateddistance vectors d11540,d21542,d31544, andd41546 do not exceed a particular distance value. Accordingly, counterfactuals ‘1’1530, ‘2’1532, ‘3’1534, and ‘4’1536 are considered optimal. Furthermore, counterfactual ‘2’1352, has the shortest distance vector d2separating it from theinput data point1502, is considered to be the most optimal. Certain embodiments of the invention reflect an appreciation that while counterfactual ‘2’1352 may be considered to be the most optimal, counterfactuals ‘1’1530, ‘3’1534, and ‘4’1536 may likewise provide meaningful paths to a preferable outcome.
FIG. 16 is a generalized flowchart showing the performance of AIS governance and control operations implemented in accordance with an embodiment of the invention. In this embodiment, AIS assurance operations are beguninstep1602, followed by the receipt of an input data point, described in greater detail herein, in step1604. An opaque cognitive model is then used in step1606 to perform a classification operation to classify the input data point. The resulting classified input data point is then plotted instep1608 within an opaque cognitive model feature space associated with the opaque cognitive model used to perform the classification operation.
The opaque cognitive model is then used instep1610 to plot data points that are associated with the input data point within the opaque cognitive model feature space, as described in greater detail herein. Thereafter, the opaque cognitive model is likewise used to classify the plotted data points in step1612. Once all data points have been classified and plotted, a counterfactual engine is used in step1614, as likewise described in greater detail herein, to generate and classify additional data points that are proximate to the previously classified data points.
As likewise described in greater detail herein, the counterfactual engine is then used instep1616 to generate a model decision boundary in the opaque cognitive model feature space. Thereafter, the counterfactual engine uses a genetic algorithm, as described in greater detail herein, to generate counterfactuals instep1618, followed by a determination being made instep1620 whether to generate an additional generation of counterfactuals. If so, then the previously-generated counterfactuals are used by the genetic algorithm in step1622 to generate a new generation of counterfactuals, which are in turn plotted within the opaque cognitive model feature space instep1624. The process is then continued, proceeding withstep1620.
However, if it was determined instep1620 to not generate an additional generation of counterfactuals, then the most optimal counterfactuals are identified, as described in greater detail herein, by their respective distance from the input data point within the opaque cognitive model feature space. As likewise described in greater detail herein, the optimal counterfactuals are then used in step1628 to generate explainability of their associated decisions, as well as in step1630 to generate recourses as appropriate. In turn, the counterfactuals are used in step1632 to assess the impartiality of the opaque cognitive model, followed by using the impartiality assessment instep1634 to generate an AIS score, as likewise described in greater detail herein. Likewise, as described in greater detail herein, the counterfactuals are then used in step1636 to assess the robustness of the opaque cognitive model, followed by using the robustness assessment in step1638 to generate an AIS robustness score.
The resulting decision explainability, with explainability recourse(s), if appropriate, along with AIS bias and robustness scores, are then provided as a cognitive insight in step1640. A determination is then made instep1642 whether to continue AIS assurance operations. If so, then they are continued, proceeding with step1604. Otherwise, AIS assurance operations are ended instep1644.
Although the present invention has been described in detail, it should be understood that various changes, substitutions and alterations can be made hereto without departing from the spirit and scope of the invention as defined by the appended claims.