Counterfactual inference management device, counterfactual inference management method, and counterfactual inference management computer program product

The counterfactual inference management apparatus addresses limitations in existing techniques by generating flexible and accurate counterfactual inferences for both tabular and image data, considering feature correlations and user input to achieve desired outcomes.

JP7697891B2Active Publication Date: 2025-06-24HITACHI LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2022000184
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-01-04
Publication Date
2025-06-24
Estimated Expiration
2042-01-04

AI Technical Summary

Technical Problem

Existing counterfactual machine learning techniques fail to consider correlations between features, lack flexibility in user selection, and are limited to tabular data, making them infeasible for diverse data types such as image data.

Method used

A counterfactual inference management apparatus and method that includes a classification unit and a counterfactual inference unit, capable of processing both tabular and image data, which learns to generate counterfactual features by considering correlations and allowing user-driven selection to achieve a predetermined target.

Benefits of technology

Enhances flexibility and scalability by enabling appropriate counterfactual inference generation across different data types, facilitating the elimination of infeasible inferences and improving accuracy through user interaction and correlation analysis.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007697891000002
    Figure 0007697891000002
  • Figure 0007697891000003
    Figure 0007697891000003
  • Figure 0007697891000004
    Figure 0007697891000004
Patent Text Reader

Abstract

To provide a counterfactual reasoning management technique which can have such improved flexibility as to enable a user to select appropriate counterfactual reasoning and give scalability so as to handle tabular data and image data with a single configuration.SOLUTION: A counterfactual reasoning management device includes: a classification unit which learns to determine whether or not a set of input data including a set of data features achieves a predetermined goal; and a counterfactual reasoning unit for producing a set of converted data obtained by changing a subset of the set of data features into counterfactual features. The classification unit processes the set of converted data to determine whether or not the set achieves the predetermined goal and calculates a counterfactual loss. The counterfactual reasoning unit learns to produce a set of converted data including counterfactual features which reduces the counterfactual loss and achieves the predetermined goal.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure generally relates to a counterfactual inference management apparatus, a counterfactual inference management method, and a counterfactual inference management computer program product.

Background Art

[0002] Advances in machine learning models have improved data analysis and prediction capabilities. Counterfactual machine learning models are one of the tools that can be used to analyze the causal relationship between specific inputs and outputs in decision-making scenarios.

[0003] Generally, counterfactual machine learning (CFML) refers to the field of machine learning related to using machine learning techniques to identify what could have happened if the input had been different in a specific scenario. Counterfactual machine learning can sometimes be useful for providing inferences and explanations about why a particular result is returned by a model.

[0004] As an example, an area where CFML technology can be utilized is the area of loan applications. For example, in an individual loan application, applicant information (features such as income, education, age, marital status) may be used in a machine learning classifier to determine whether to approve or reject a loan. When an applicant is rejected for a loan, the applicant may want to know what they can do to increase the likelihood of future loan approval. Here, counterfactual machine learning technology can be used to analyze the relationship between the input features characterizing the applicant and the result, and provide suggestions to the applicant to increase the likelihood of future loan application approval. As an example, the counterfactual machine learning model may provide a suggestion such as "Increasing income by 10% will increase the likelihood of application approval." In this way, by using CFML technology, users can obtain valuable insights useful in various decision-making scenarios.

[0005] Conventionally, many CFML techniques have been proposed. For example, Mahajan et al. (Non-Patent Document 1) propose counterfactual examples that show how the output of a model changes due to small perturbations to the input in order to construct an interpretable explanation that is consistent with the original ML model. This document extends the scope of counterfactual explanations by addressing the issue of feasibility in such examples. For the explanation of ML models in areas with important impacts such as healthcare and finance, counterfactual examples are useful to end-users only when the perturbation of feature inputs is feasible in the real world. Such a feasibility problem is described as maintaining the causal relationship between input features, and a method for generating feasible counterfactuals using (partially) structural causal models is provided. When the feasibility constraints cannot be easily expressed, an alternative mechanism is considered where people can label the feasibility of the generated CF examples, i.e., whether it can be realized by intervening from the original input to the candidate CF examples. To learn from this labeled feasibility data, a modified variational autoencoder loss is proposed to generate CF examples that are optimized for feasibility as people interact with its output. Our experiments on the Bayesian network and the widely used "Adult Income" data set show that the method we propose can generate counterfactual explanations that better satisfy the feasibility constraints than existing methods.

Prior Art Documents

Non-Patent Documents

[0006]

Non-Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0007] Non-Patent Document 1 discloses a technique for generating counterfactual examples regarding tabular data using a modified variational autoencoder loss. Specifically, Non-Patent Document 1 proposes a causal proximity regularization that can be added to any counterfactual generation method. The proposed proximity loss is based on the causal relationships between features, as modeled by a structural causal model (SCM) of the input features. This loss can be derived from a partial SCM or common unary and binary constraints such as monotonic changes between features.

[0008] However, in the technique disclosed in Non-Patent Document 1, only increasing or decreasing the features input to the model is possible, and only monotonic relationships (e.g., when Feature 1 increases, Feature 2 increases) are considered, and the correlations between different features are not considered. Also, Non-Patent Document 1 does not provide a means for the user to flexibly select among various executable suggestions. Finally, Non-Patent Document 1 is limited to tabular data and cannot be applied to image data.

[0009] Therefore, an object of the present disclosure is to provide a counterfactual inference management apparatus, method, and computer program product that can consider the correlations between features in order to facilitate the elimination of infeasible counterfactual inferences, enhance the flexibility for the user to select appropriate counterfactual inferences, and provide scalability for processing tabular data and image data in a single configuration.

Means for Solving the Problems

[0010] One representative example of the present disclosure relates to a counterfactual inference management apparatus including a classification unit that learns to determine whether a set of input data including a set of data features achieves a predetermined target, and a counterfactual inference unit for generating a set of transformed data in which a subset of the set of data features is changed to counterfactual features for the set of input data by processing the set of input data. The classification unit processes the set of transformed data generated by the counterfactual inference unit to determine whether the set of transformed data achieves a predetermined target, calculates a counterfactual loss value associated with a subset of the set of transformed data that does not achieve the predetermined target, and the counterfactual inference unit learns to reduce the counterfactual loss value and generate a second set of transformed data including counterfactual features that achieve the predetermined target.

Advantages of the Invention

[0011] According to the present disclosure, it is possible to provide a counterfactual inference management apparatus, method, and computer program product that enhance flexibility so that a user can select an appropriate counterfactual inference, provide scalability for processing tabular data and image data in a single configuration, and facilitate the elimination of infeasible counterfactual inferences by considering the correlation between features.

[0012] The above and other problems, configurations, and effects will also be clarified by the following description of the embodiments for carrying out the present invention.

Brief Description of the Drawings

[0013]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Embodiments for Carrying Out the Invention

[0014] Hereinafter, embodiments of the present invention will be described with reference to the drawings. It should be understood that the embodiments described in this specification do not limit the invention according to the claims, and each of the elements and combinations related to the embodiments is not strictly necessary for implementing the aspects of the present invention.

[0015] The following description and the related drawings disclose various aspects. These aspects can be changed to alternative aspects without departing from the scope of the present disclosure. Further, well-known elements of the present disclosure may not be described in detail or may be omitted as long as the related matters of the present disclosure are not made unclear.

[0016] In this specification, the terms "exemplary" and / or "example" are used to mean "an example, a real example, or shown as an illustration". Any aspect described in this specification as "exemplary" and / or "example" should not necessarily be construed as being more preferable or advantageous than other aspects. Similarly, the term "aspect of the present disclosure" does not require that all aspects of the present disclosure include a specific feature, advantage, or mode of operation.

[0017] Furthermore, many aspects are described with respect to a sequence of operations to be performed, for example, by elements of a computing device. It will be appreciated that the various operations described herein may be performed by a specific circuit (e.g., an application specific integrated circuit (ASIC)), program instructions executed by one or more processors, or a combination of both. Further, the sequence of operations described herein can be considered to be fully embodied within any form of computer-readable storage medium that stores a corresponding set of computer instructions that cause the associated processor at runtime to perform the features described herein. Accordingly, the various aspects of the present disclosure may be embodied in several different forms, and all of them are considered to be within the scope of the claims.

[0018] Referring to the drawings, FIG. 1 shows a high-level block diagram of a computer system 100 for implementing various embodiments of the present disclosure. The mechanisms and apparatuses of the various embodiments disclosed herein may be applied to any suitable computing system. The main components of the computer system 100 include one or more processors 102, a memory 104, a terminal interface 112, a storage interface 113, an I / O (input / output) device interface 114, and a network interface 115. These components may be communicatively connected directly or indirectly via a memory bus 106, an I / O bus 108, a bus interface unit 109, and an I / O bus interface unit 110.

[0019] The computer system 100 may include one or more general-purpose programmable central processing units (CPUs) 102A and 102B, collectively referred to herein as the processor 102. In certain embodiments, the computer system 100 may comprise multiple processors, and in another embodiment, the computer system 100 may be a single CPU system. Each processor 102 executes instructions stored in the memory 104 and may include one or more levels of on-board cache.

[0020] In some embodiments, memory 104 may include a random access semiconductor memory, a storage device, or a storage medium (either volatile or non-volatile) for storing or encoding data and programs. In some embodiments, memory 104 represents the entire virtual memory of computer system 100 and may also include the virtual memory of other computer systems coupled to computer system 100 or connected via a network. Memory 104 can conceptually be regarded as a single monolithic entity, but in other embodiments, memory 104 may have a more complex configuration, such as a hierarchical structure consisting of caches and other memory devices. For example, the memory may exist in multiple levels of caches, and these caches may be further divided by characteristics. Thus, one cache may hold instructions, and another cache may hold non-instruction data used by one or more processors. The memory may be further distributed and associated with different CPUs or sets of CPUs, as is known in any of the so-called NUMA (non-uniform memory access) computer architectures.

[0021] Memory 104 can store all or part of various programs, modules, and data structures for processing data transfers, as described herein. For example, memory 104 can store the counterfactual inference management application 150. In some embodiments, the counterfactual inference management application 150 can include instructions or statements interpreted by instructions or statements executed on processor 102 or instructions or statements that execute features further described below when executed on processor 102. In embodiments, the counterfactual inference management application 150 may include instructions or statements executed on processor 102 or instructions or statements interpreted by instructions or statements executed on processor 102 to execute features described later. In some embodiments, the counterfactual inference management application 150 may be implemented in hardware via a semiconductor device, chip, logic gate, circuit, circuit card, and / or other physical hardware devices instead of or in addition to a processor-based system. In some embodiments, the counterfactual inference management application 150 may include data other than instructions or descriptions. In some embodiments, a camera, sensor, or other data input device (not shown) can be provided to communicate directly with the bus interface unit 109, the processor 102, or other hardware of the computer system 100. In such a configuration, the need for the processor 102 to access the memory 104 and the potential factor identification application can be reduced.

[0022] The computer system 100 may include a bus interface unit 109 that facilitates communication between the processor 102, the memory 104, the display system 124, and the I / O bus interface unit 110. The I / O bus interface unit 110 may be coupled to an I / O bus 108 for transferring data between various I / O units. The I / O bus interface unit 110 may communicate via the I / O bus 108 with a plurality of I / O interface units 112, 113, 114, and 115, also known as I / O processors (IOPs) or I / O adapters (IOAs). The display system 124 may include a display controller, display memory, or both. The display controller may be capable of providing video, audio, or both data to the display device 126. Additionally, the computer system 100 may include devices such as one or more sensors configured to collect data and provide the data to the processor 102. As an example, the computer system 100 may include a biosensor that collects heartbeat data, stress level data, etc., an environmental sensor that collects humidity data, temperature data, pressure data, etc., and a motion sensor that collects acceleration data, motion data, etc. Other types of sensors can also be used. The display memory may be a dedicated memory for buffering video data. The display system 124 may be connected to a display device 126 such as a single display screen, a computer monitor, a television, a tablet, or a portable device. In certain embodiments, the display device 126 may include one or more speakers for playing audio. Alternatively, one or more speakers for playing audio may be connected to the I / O interface section. In other embodiments, one or more features provided by the display system 124 may be implemented in an integrated circuit including the processor 102. Further, one or more features provided by the bus interface section 109 may be implemented in an integrated circuit including the processor 102.

[0023] The I / O interface section is characterized by communicating with various storage devices and I / O devices. For example, the terminal interface section 112 can be attached to user I / O devices 116 such as user output devices (e.g., video display devices, speakers, and / or television sets, etc.) and user input devices (keyboards, mice, keypads, touch pads, trackballs, buttons, light pens, or other pointing devices, etc.). The user can use the user interface to input input data and instructions to the user I / O device 116 and the computer system 100 by operating the user input device, or receive output data using the user output device. The user interface may be, for example, displayed on the display device, played by the speaker, or printed via the printer via the user I / O device 116.

[0024] The storage interface 113 can be attached to one or more disk drives and direct access storage devices 117 (usually magnetic disk drive storage devices, but can also be an array of disk drives configured to appear as a single large storage device to the host computer, or other storage devices including solid state drives such as flash memory). In certain embodiments, the storage device 117 may be implemented as any secondary storage device. The contents of the memory 104 may be stored in the storage device 117 and read out as needed. The input / output device interface 114 provides an interface to any of various input / output devices such as printers and fax machines. The network interface 115 provides one or more communication paths from the computer system 100 to other digital devices and computer systems. The communication paths, such as flash memories, may include, for example, one or more networks 130.

[0025] The computer system 100 shown in FIG. 1 shows a specific bus structure that provides a direct communication path between the processor 102, the memory 104, the bus interface unit 109, the display system 124, and the I / O bus interface unit 110. However, in other embodiments, the computer system 100 may be configured in various forms such as a hierarchical configuration, a star configuration, or a web configuration of point-to-point links, multiple hierarchical buses, parallel and redundant paths, or any other suitable type of configuration, and may include different buses or communication paths. Further, although the I / O bus interface unit 110 and the I / O bus 108 are each shown as a single unit, in reality, the computer system 100 may include multiple I / O bus interface units 110 and / or multiple I / O buses 108. Also, a plurality of I / O interface units are shown that separate the I / O bus 108 from other communication paths running to various I / O devices. However, in other embodiments, some or all of the I / O devices are directly connected to one or more system I / O buses.

[0026] In various embodiments, the computer system 100 may be a device that receives requests from other computer systems (clients) without a direct user interface, such as a multi-user mainframe computer system, a single-user system, or a server computer. In other embodiments, the computer system 100 may be implemented as a desktop computer, a portable computer, a laptop or notebook computer, a tablet computer, a pocket computer, a telephone, a smartphone, or any other suitable type of electronic device.

[0027] Next, with reference to FIG. 2, an example of the logical configuration of the counterfactual inference management apparatus according to an embodiment of the present disclosure will be described.

[0028] FIG. 2 is a diagram showing the logical configuration of the counterfactual inference management apparatus 200 according to an embodiment of the present disclosure. As shown in FIG. 2, the counterfactual inference management apparatus 200 mainly includes a classification unit 210, a counterfactual inference unit 220, a preprocessing unit 230, a user interface unit 240, and a feedback unit 250 (hereinafter collectively referred to as "functional units"). Each of these functional units can be implemented, for example, as a software module within the counterfactual inference management application 150 executed by the computer system 100 shown in FIG. 1, or as a dedicated hardware unit.

[0029] In some embodiments, the counterfactual inference management apparatus 200 can be configured by three stages including a classifier learning stage for learning the classification unit 210, a counterfactual inference unit learning stage for learning the counterfactual inference unit 220, and an inference stage in which the learned counterfactual inference unit 220 is used to generate counterfactual inference results.

[0030] First, in the classification unit learning stage, the classification unit 210 learns using the set of training data 202. The classification unit 210 is a functional unit configured to determine whether a set of input data including a set of data features achieves a predetermined goal (e.g., loan approval). Specifically, the classification unit 210 may order or classify the data into one or more sets of classes.

[0031] As an example, the classification unit 210 can include an algorithm configured to classify loan applicants into "approved" or "rejected" classes based on features that define the characteristics of the applicant (income, education level, age, marital status). In this example, applicants who are "approved" are considered to achieve the predetermined goal, and applicants who are "rejected" are considered not to achieve the predetermined goal. The set of training data 202 can include a set of data (image data or tabular data) used to train the classification unit 210 to perform a given classification task. For example, using the example of a loan application, the set of training data 202 can include data containing features that define the characteristics of many applicants that can be used to train the classification unit 210, thereby accurately classifying applicants into the "approved" or "rejected" categories. Generally, "learning" means adjusting the parameters (e.g., hyperparameters, weights, neural connections) of the machine learning unit until it can perform a specific task with a predetermined accuracy. This learning can be repeatedly executed multiple times until the desired accuracy is achieved. The flow of the learning process of the classification unit 210 will be described later, so a detailed description is omitted here.

[0032] In the learning stage of the counterfactual inference unit, the counterfactual inference unit 220 is learned using the set of learning data 204. The counterfactual inference unit 220 is a functional unit configured to perform encoding and decoding operations on the set of input data to generate a set of transformed data that achieves a predetermined goal. The counterfactual inference unit 220 can be implemented, for example, as a variational autoencoder. The set of learning data 204 can include a set of data (image data or tabular data) used to learn the counterfactual inference unit 220. In some embodiments, the set of learning data 204 can substantially correspond to the set of learning data 202 used to learn the classification unit 210. In some embodiments, the counterfactual inference unit 220 can be configured to switch between different operation modes based on the type of input data. For example, an operation configuration for learning to handle image data and an operation configuration for learning to process tabular data can be prepared in advance, and the counterfactual inference unit 220 can load the operation configuration for processing tabular data when the set of input data is tabular data, and can also be configured to load the operation configuration for processing image data when the set of input data is image data. In this way, the counterfactual inference management device 200 can generate counterfactual inference results for both tabular data and image data.

[0033] Here, a set of transformed data (not shown in FIG. 2) is a set of data in which a subset of the set of data features of the set of input data is changed to counterfactual features. The "counterfactual features" mean data features that include values or characteristics different from the actual values or characteristics. Such counterfactual features may be used to represent counterfactual inferences. Here, "counterfactual inference" corresponds to a virtual state defined using one or more counterfactual features. Such counterfactual inferences are useful for users to understand how a given output changes based on virtual changes to the input. As an example, a user associated with the data feature of "Education level: High school graduate" can change this data feature to a counterfactual feature of "Education level: Bachelor of Business Administration" to examine how this affects career options. Also, the set of transformed data can represent the correlation between different clusters of data features (e.g., education level and income).

[0034] The encoding and decoding operations performed on the set of input data generate a model loss 206 associated with the difference between the set of transformed data and the set of learning data 204. The set of transformed data is input to the classifier 210 learned in the classifier learning stage. The learned classifier 210 processes the set of transformed data generated by the counterfactual inference unit 220 to determine whether the set of transformed data achieves a predetermined goal (e.g., loan approval), and calculates a counterfactual loss 208 associated with the portion of the set of transformed data that does not achieve the predetermined goal. Then, the counterfactual inference unit 220 learns to reduce the model loss 206 (including the reconstruction loss). In this way, the counterfactual inference unit 220 learns to generate a set of transformed data that includes counterfactual features that achieve a predetermined goal. The flow of the learning process of the counterfactual inference unit 220 will be described later, so the detailed description thereof is omitted here.

[0035] In the inference stage, the learned counterfactual inference unit 220 is used to generate counterfactual inference results for the set 212 of test data. The set 212 of test data can include a set of data (image data or tabular data) for which a set of counterfactual inferences is to be generated.

[0036] First, the set 212 of test data can be input to the preprocessing unit 230. The preprocessing unit 230 is a functional unit configured to perform one or more preprocessing operations on the set 212 of test data to facilitate the generation of counterfactual inferences. Specifically, in some embodiments, the preprocessing unit 230 can analyze the set 212 of test data to determine whether the set 212 of test data includes a set of tabular data or a set of image data. When it is determined that the set 212 of test data includes a set of tabular data, the preprocessing unit 230 performs tabular data processing operations on the set 212 of test data using the tabular data processing unit 232 (for example, normalizing a set of data features and masking a subset of the data features to prevent changes by the counterfactual inference unit 220 or the like). When it is determined that the set 212 of test data includes a set of image data, the preprocessing unit 230 performs image processing operations on the set 212 of test data using the image processing unit 234 (for example, pixel luminance operations, geometric transformations).

[0037] After the set 212 of test data is processed by the preprocessing unit 230, it is input to the counterfactual inference unit 220 learned in the counterfactual inference unit learning stage described above. The counterfactual inference unit 220 processes the preprocessed set 212 of test data to generate a set of transformed data such that a subset of the set of data features of the set 212 of test data is changed to counterfactual features so that the set of transformed data achieves a predetermined goal (for example, loan approval). Then, the set of transformed data is input to the user interface unit 240.

[0038] The user interface unit 240 is a functional unit configured to display information via a graphical user interface and receive inputs from the user. In some embodiments, the user interface unit 240 can be configured to present a set of transformed data generated by the counterfactual inference unit 220, a set of data features associated with the set of transformed data, and a counterfactual inference result including a goal achievement metric indicating whether the set of transformed data has achieved a predetermined goal. Also, the user interface unit 240 can show the correlation between different clusters of data features. The user interface unit 240 can receive a user input and further change one or more data features of the set of transformed data into counterfactual features selected by the user (for example, the user can change the data features corresponding to their income or education level and observe how this change affects the loan approval result).

[0039] The feedback unit 250 can collect a user input including a set of counterfactual features selected by the user and generate training data for further training the classification unit 210 using the set of counterfactual features selected by this user. Since the flow in the inference stage will be described later, a detailed description thereof is omitted here.

[0040] According to the counterfactual inference management apparatus 200 described above, by considering the correlation between features, it becomes possible to facilitate the elimination of infeasible counterfactual inferences, enhance flexibility so that the user can select appropriate counterfactual inferences, and provide scalability for handling tabular data and image data in a single configuration.

[0041] Next, with reference to FIG. 3, a counterfactual inference management method for tabular data according to an embodiment of the present disclosure will be described.

[0042] FIG. 3 is a flowchart showing the overall flow of a counterfactual inference management method 300 for tabular data according to an embodiment of the present disclosure. As described herein, some aspects of the present disclosure relate to an inference management method capable of generating counterfactual inference results for both tabular data and image data in a single configuration. Therefore, the counterfactual inference management method 300 shown in FIG. 3 shows a method of generating counterfactual inferences for a set of tabular data. This counterfactual inference management method 300 can be executed by various functional units of the counterfactual inference management device 200 shown in FIG. 2. Note that the counterfactual inference management method 300 corresponds to the inference stage of the counterfactual inference management device 200. That is, the classification unit and the counterfactual inference unit are assumed to be already trained. Since the learning processes of the classification unit and the counterfactual inference unit will be described later, a detailed description thereof is omitted here.

[0043] First, in step S310, a preprocessing unit (for example, the preprocessing unit 230 shown in FIG. 2) receives a set of input data. As described herein, this set of input data can be a set of test data for which counterfactual inference results are to be generated. Also, the set of input data can include either a set of tabular data or a set of image data. Here, tabular data means information structured in the form of a table (for example, organized by columns and rows). The set of input data can include a set of data features. Here, the set of data features means a set of properties or attributes that characterize the set of input data. In the case of tabular data, the set of data features can include a set of numerical features or a set of categorical features. As an example, when the set of input data includes personal information provided by a loan applicant for use in determining loan eligibility, the set of data features can include numerical features such as the applicant's age, the applicant's income, and categorical features such as the applicant's gender, the applicant's education level, and the applicant's occupation.

[0044] Next, in step S302, the preprocessing unit performs a mode selection operation to determine whether the set of input data is a set of tabular data or a set of image data. If the set of input data includes a set of tabular data, the process proceeds to step S303. If the set of input data includes a set of image data, the process proceeds to step S403. Here, in order to explain the overall flow of the counterfactual inference management method 400 for image data with reference to FIG. 4, it is assumed here that the set of input data includes a set of tabular data.

[0045] Next, in step S303, the tabular data processing unit (i.e., the tabular data processing unit 232 of the preprocessing unit 230) performs a masking operation on the set of input data. Here, the masking operation means an operation of masking one or more data features of the set of input data (e.g., freezing, locking, holding, maintaining). As will be described later, it prevents the features masked by the processing of the counterfactual inference unit from being changed.

[0046] Next, in step S304, the tabular data processing unit performs a tabular data processing operation on the set of data features of the set of input data that was not masked in step S303. Here, the tabular data processing operation can include operations for facilitating the processing by the counterfactual inference unit. As an example, the tabular data processing unit can normalize the one-hot encoded features representing the numerical features (e.g., age, income, working hours per week) of the set of input data, or the categorical features (e.g., occupation, education level, marital status) of the input data in vector form, using a normalization technique. Performing a tabular data processing operation on the set of input data may improve the accuracy of the counterfactual inference unit.

[0047] In step S305, the classification unit learns to determine whether a set of input data including a set of data features achieves a predetermined goal. Specifically, the classification unit can be learned to order or classify the data into a set of one or more classes. Here, the predetermined goal means a predefined specific goal or classification. As an example, in the case of a loan application scenario, the predetermined goal can be "loan approval". Since the learning process of the classification unit will be described later, a detailed description thereof is omitted here.

[0048] In step S306, the counterfactual inference unit learns to perform encoding and decoding operations on the set of input data to generate a set of transformed data that achieves a predetermined goal. Since the learning process of the counterfactual inference unit will be described later, a detailed description thereof is omitted here. As described in this specification, the learning process of the classification unit in step S305 and the learning process of the counterfactual inference unit in step S306 are independent steps that can be executed in advance and are completed before the preprocessed data is input to the counterfactual inference unit (that is, the counterfactual inference unit learns before receiving the set of preprocessed input data).

[0049] Next, in step S307, the set of input data preprocessed in step S304 is input to the counterfactual inference unit learned in step S306. In step S308, the counterfactual inference unit generates a counterfactual inference result that at least includes a set of transformed data in which a subset of the set of data features of the set of input data is changed to counterfactual features such that the set of transformed data achieves the predetermined goal (for example, loan approval). Since the processing performed by the counterfactual inference unit to generate the set of transformed data will be described later, a detailed description thereof is omitted here.

[0050] Next, in step S309, the user interface unit (for example, the user interface unit 240 shown in FIG. 2) presents to the user, via the user interface unit, a set of converted data generated by the counterfactual inference unit in step S308, a set of data features associated with the set of converted data, and a counterfactual inference result including a goal achievement index indicating whether the set of converted data achieves a predetermined goal. Further, the user interface unit can show the correlation between different clusters of data features. The user interface unit can receive a user input and further change one or more data features of the set of converted data into counterfactual features selected by the user (for example, the user can change the data features corresponding to their income or education level and observe how this change affects the loan approval result). Also, the feedback unit 250 can collect a user input including a set of counterfactual features selected by the user and generate training data for further training the classification unit using the set of counterfactual features selected by this user.

[0051] According to the counterfactual inference management method 300 for the above tabular data, it becomes possible to generate a counterfactual inference result of tabular data so as to improve flexibility to allow the user to select an appropriate counterfactual inference and further improve the accuracy of the counterfactual inference management device using the user input.

[0052] Next, with reference to FIG. 4, a counterfactual inference management method for image data according to an embodiment of the present disclosure will be described.

[0053] Figure 4 is a flowchart showing the overall flow of a counterfactual inference management method 400 for image data according to an embodiment of the present disclosure. As described herein, aspects of the present disclosure relate to an inference management method capable of generating counterfactual inferences for both tabular data and image data in a single configuration. The counterfactual inference management method 400 shown in FIG. 4 shows a method of generating counterfactual inferences for a set of image data. The counterfactual inference management method 400 can be performed by various functional units of the counterfactual inference management apparatus 200 shown in FIG. 2. Note that the counterfactual inference management method 400 corresponds to the inference stage of the counterfactual inference management apparatus 200. That is, it is assumed that the classification unit and the counterfactual inference unit are already trained. Since the learning processes of the classification unit and the counterfactual inference unit will be described later, detailed descriptions thereof are omitted here.

[0054] First, in step S401, a preprocessing unit (for example, the preprocessing unit 230 shown in FIG. 2) receives a set of input data. As described herein, the set of input data can be a set of test data for which counterfactual inference results are generated. Also, the set of input data can include either a set of tabular data or a set of image data. Here, image data means information represented in a graphical or image format. The set of input data can include a set of data features. Here, the set of data features means a set of properties or attributes that characterize the set of input data. In the case of image data, the set of data features can include a set of image features. As an example, when the set of input data includes an image of a bedroom, the set of data features can include image features such as room lighting, image angle, image spatial configuration, class of objects present in the image, and color of the objects. However, the set of image features is not limited here, and other image features such as weather can also be used.

[0055] Next, in step S402, the preprocessing unit performs a mode selection operation to determine whether the set of input data is a set of tabular data or a set of image data. If the set of input data includes a set of tabular data, the process proceeds to step S303. If the set of input data includes a set of image data, the process proceeds to step S403. Note that the overall flow of the counterfactual inference management method 300 for tabular data has already been described with reference to FIG. 3, so here it is assumed that the set of input data includes a set of image data.

[0056] Next, in step S403, the image processing unit (i.e., the image processing unit 234 of the preprocessing unit 230) performs an image processing operation on the set of input data. Here, the image processing operation means an operation that facilitates the processing by the counterfactual inference unit. As an example, the image processing unit can change the set of image data by using pixel luminance conversion or geometric conversion. Performing an image processing operation on the set of input data may improve the accuracy of the counterfactual inference unit.

[0057] In step S404, the classification unit learns to determine whether the set of input data including the set of data features achieves a predetermined goal (e.g., whether there is indoor lighting in a bedroom image, whether there is a cat in the image). Specifically, the classification unit can be learned to order or classify the data into a set of one or more classes. Since the learning process of the classification unit will be described later, a detailed description thereof is omitted here.

[0058] In step S405, the counterfactual inference unit learns to perform encoding and decoding operations on the set of input data to generate a set of transformed data that achieves a predetermined target. Since the learning process of the counterfactual inference unit will be described later, a detailed description thereof is omitted here. As described in this specification, the learning process of the classification unit in step S404 and the learning process of the counterfactual inference unit in step S405 are independent steps that can be executed in advance and are completed before the preprocessed data is input to the counterfactual inference unit (that is, it is assumed that the counterfactual inference unit learns before receiving the set of preprocessed input data).

[0059] Next, in step S406, the set of input data preprocessed in step S403 is input to the counterfactual inference unit learned in step S405. In step S407, the counterfactual inference unit changes a subset of the set of data features of the set of input data to counterfactual features (for example, an image of a bedroom without indoor lighting is converted to an image with indoor lighting) so that the set of the transformed data achieves a predetermined target, and generates a counterfactual inference result that includes at least the transformed data. Since the process performed by the counterfactual inference unit to generate the set of transformed data will be described later, a detailed description thereof is omitted here.

[0060] Next, in step S408, the user interface unit (for example, the user interface unit 240 shown in FIG. 2) presents to the user a counterfactual inference result including a set of converted data generated by the counterfactual inference unit in step S406 and a set of data characteristics associated with the set of converted data via the user interface unit. The user interface unit can receive user input and further change one or more data characteristics of the set of converted data into counterfactual characteristics selected by the user (for example, the user can change the data characteristic corresponding to the luminance of the image and observe how this change affects visibility). Also, the feedback unit 250 can collect user input including a set of counterfactual characteristics selected by the user and generate training data for further training the classification unit using the set of counterfactual characteristics selected by this user.

[0061] According to the above counterfactual inference management method 400 for image data, it becomes possible to generate a counterfactual inference result of image data such that the flexibility to select an appropriate counterfactual inference for the user is improved and the accuracy of the counterfactual inference management apparatus can be improved using user input. In this way, a preprocessing for performing a mode selection operation to determine whether the set of input data is tabular data or image data is executed, and then, by processing tabular data such as numerical characteristics and category characteristics using the tabular data processing unit, or alternatively, by processing image data characteristics using the image data processing unit, it becomes possible to generate counterfactual inferences for both tabular data and image data in a single configuration.

[0062] Next, a method for generating a counterfactual inference for tabular data according to an embodiment of the present disclosure will be described with reference to FIG. 5.

[0063] FIG. 5 is a flowchart showing a detailed flow of a counterfactual inference generation method 500 for tabular data according to an embodiment of the present disclosure. The counterfactual inference generation method 500 for tabular data shows detailed steps for generating a counterfactual inference result for tabular data, which substantially corresponds to steps S304 to S309 shown in FIG. 3. Here, for convenience of explanation, an example of the counterfactual inference generation method 500 for tabular data related to a loan application scenario will be described, but the present disclosure is not limited thereto, and counterfactual inference generation can be applied to various use cases.

[0064] First, in step S502, a preprocessing unit (for example, the preprocessing unit 230 shown in FIG. 2) receives a set 501 of tabular data as a set of input data. As described in this specification, the set 501 of tabular data means information structured in a table form (for example, organized in columns and rows). The set 501 of tabular data can include a set of numerical features and / or a set of categorical features as a set of data features. For example, as shown in FIG. 5, when the set 501 of tabular data includes personal information provided by a loan applicant for use in determining loan eligibility, the set of data features can include numerical features such as the applicant's age, the applicant's working hours per week, and categorical features such as the applicant's job class, the applicant's education level, the applicant's marital status, the applicant's occupation, and the applicant's gender.

[0065] When receiving the set 501 of tabular data, the tabular data processing unit performs tabular data processing operations on the set of data characteristics of the set 501 of tabular data (for example, the set of data characteristics for which masking was not specified in step S303 shown in FIG. 3). Here, the tabular data processing operations can include operations for facilitating processing by the counterfactual inference unit. As an example, the tabular data processing unit can utilize normalization techniques to normalize one-hot encoded features representing numerical features (for example, age, income, working hours per week) of the set 501 of tabular data, or categorical features (for example, occupation, education level, marital status) of the set 501 of tabular data in vector form.

[0066] Next, in step S503, the set 501 of tabular data preprocessed in step S502 is input to the encoder of the counterfactual inference unit. Here, the encoder is a neural network configured to compress and reduce the dimension of the set 501 of tabular data to generate the latent space representation 504 of the set 501 of tabular data. Specifically, in step S503A, the encoder performs downsampling on the set 501 of tabular data. This downsampling can be performed by the downsampling layer of the neural network used as the encoder. By performing downsampling on the set 501 of tabular data, it is possible to reduce the overall size of the set 501 of tabular data, suppress noise, and maintain the essential data characteristics of the set 501 of tabular data. Next, in step S503B, the encoder processes the set of tabular data in a non-linear layer. The non-linear layer can utilize a non-linear activation function such as a rectified linear unit (ReLU) activation function to introduce non-linearity into the set 501 of tabular data.

[0067] By processing the set 501 of tabular data, the encoder generates a latent space representation 504 of the set 501 of tabular data. Here, the latent space representation 504 is a dimensionality-reduced representation of the set 501 of tabular data. In some embodiments, the latent space representation 504 can include a multi-dimensional vector that characterizes the main data features of the set 501 of tabular data.

[0068] Next, in step S505, the latent space representation 504 is input to the decoder of the counterfactual inference unit. Here, the decoder is a neural network configured to decode the latent space representation 504 to generate a reconstructed version of the set 501 of tabular data. Specifically, in step S505A, the decoder performs upsampling on the latent space representation 504. This upsampling can be performed in the upsampling layer of the neural network used as the decoder. Performing upsampling on the latent space representation 504 decodes the latent space representation 504 to generate a set 507 of transformed data in which a subset of the set of data features has been changed to counterfactual features with respect to the set 501 of tabular data.

[0069] Also, in step S505B, the decoder determines the correlation between the data features of the set of transformed data 507 using a probabilistic learning layer. The probabilistic learning layer can predict data features that are likely to show a correlation with one or other data features of the set of transformed data 507 using statistical analysis techniques. Here, "correlation" means a co-dependency relationship between two or more data features such that a change in one data feature results in a change in another data feature. As an example, the probabilistic learning layer may identify a correlation between the data features of "age" and "education level", and since it often takes time to change an individual's education level, it may result in a change in the individual's age. Also, in step S505C, the decoder applies a mask to the subset of data features selected for mask application in step S303 as described above. Here, applying a mask to a subset of data features can involve changing the values of the subset of data features selected to be mask-applied to the same values as in the set of tabular data 501, and thus can involve maintaining them at their original values. As an example, the decoder can apply a mask to data features that the user cannot change (e.g., race, gender).

[0070] The decoder outputs a counterfactual inference result that includes at least the set 507 of transformed data, along with the cluster result 508 generated by the probabilistic learner in step S505B. As described herein, since the counterfactual inference unit used here has been trained to perform encoding and decoding operations on the set 501 of tabular data to generate a set of transformed data that achieves a predetermined goal, the set 507 of transformed data is such that a subset of the set of data features of the set of tabular data has been changed to counterfactual features so as to increase the likelihood that the set of transformed data achieves a predetermined goal (e.g., loan approval). For example, as shown in FIG. 5, in the set 507 of transformed data, the data feature of "occupation: salesman" has been changed to the counterfactual feature of "occupation: sales manager". That is, by changing the occupation from "salesman" to "sales manager", the likelihood of the applicant's loan being approved can be increased. Therefore, the applicant can use this counterfactual inference as a suggestion for increasing the likelihood of loan approval. Also, the cluster result 508 shows data features determined to be correlated with each other. As will be described later, the user can use this correlation to exclude infeasible counterfactual inferences and select more feasible counterfactual inferences.

[0071] According to the counterfactual inference generation method 500 for tabular data described above, it is possible to generate a counterfactual inference result for tabular data that provides a suggestion to the user regarding which attribute (e.g., data feature) to change in order to increase the likelihood of achieving a predetermined goal.

[0072] Next, a method for generating counterfactual inferences regarding image data according to an embodiment of the present disclosure will be described with reference to FIG. 6.

[0073] FIG. 6 is a flowchart showing a detailed flow of a counterfactual inference generation method 600 for image data according to an embodiment of the present disclosure. The counterfactual inference generation method 600 for image data shows detailed steps for generating a counterfactual inference result for the image data, which substantially corresponds to steps S403 to S408 shown in FIG. 4. Here, for the sake of convenience of explanation, an example of the counterfactual inference generation method 600 for image data showing a bedroom will be described, but the present disclosure is not limited thereto, and counterfactual inference generation can be applied to various use cases.

[0074] First, in step S602, a preprocessing unit (for example, the preprocessing unit 230 shown in FIG. 2) receives a set 601 of image data as a set of input data. As described in this specification, the set 601 of image data means information represented in the form of a graphic or a picture. The set 601 of image data can include a set of image features as a set of data features. For example, as shown in FIG. 6, when the set 601 of image data is an image of a bedroom, the set of data features can include image features such as room lighting, image angle, spatial composition of the image, class of objects existing in the image, and color of the objects. When receiving the set 601 of image data, an image processing unit (that is, the image processing unit 234 of the preprocessing unit 230) performs an image processing operation on the set 601 of image data. Here, the image processing operation means an operation that facilitates processing by the counterfactual inference unit. As an example, the image processing unit can use pixel luminance conversion or geometric conversion to change the set of image data. Performing an image processing operation on the set of input data can improve the accuracy of the counterfactual inference unit.

[0075] Next, in step S603, the set 601 of image data preprocessed in step S602 is input into the encoder of the counterfactual inference unit. Here, the encoder is a neural network configured to compress and reduce the dimension of the set 601 of image data to generate a latent space representation 604 of the set 601 of image data. Specifically, in step S603A, the encoder performs downsampling on the set 601 of image data. This downsampling can be performed by the downsampling layer of the neural network used as the encoder. By performing downsampling on the set 601 of image data, the overall size of the set 601 of image data can be reduced, noise can be suppressed, and the substantial data features of the set 601 of image data can be maintained. Next, in step S603B, the encoder processes the set 601 of image data using a convolutional layer. Here, the convolutional layer is a neural network layer configured to process the set of image data and extract a feature map. The feature map is a vector representation of the set 601 of image data. As an example, convolutional networks can include LeNet, AlexNet, VGG-16 Net, Resnet, InceptionNet, and the like.

[0076] By processing the set 601 of image data, the encoder generates a latent space representation 604 of the set 601 of image data. Here, the latent space representation 604 is a dimensionality-reduced representation of the set 601 of image data. In some embodiments, the latent space representation 604 can include a multi-dimensional vector characterizing the main data features of the set 601 of image data.

[0077] Next, in step S605, the latent space representation 604 is input to the decoder of the counterfactual inference unit. Here, the decoder is a neural network configured to decode the latent space representation 604 to generate a reconstructed version of the set of image data 601. Specifically, in step S6505A, a convolutional layer is used to reconstruct an image from the latent space representation 604. Thereafter, in step S605B, the decoder upsamples the image generated by the convolutional network from the latent space representation 604. This upsampling can be performed by an upsampling layer of the neural network used as the decoder.

[0078] In this way, the decoder can generate a counterfactual inference result that includes at least a set of transformed data 606 in which a subset of the set of image features has been changed to counterfactual features. As described herein, the counterfactual inference unit used here has been trained to perform encoding and decoding operations on the set of image data 601 to generate a set of transformed data that achieves a predetermined goal. Therefore, the set of transformed data 606 is a set of data in which a subset of the set of data features of the set of image data 601 has been changed to counterfactual features so as to increase the likelihood that the set of transformed data achieves a predetermined goal (for example, an image without indoor lighting is changed to an image of a room with indoor lighting). For example, as shown in FIG. 6, in the set of transformed data 606, the data feature of "indoor lighting: off" is changed to the counterfactual feature of "indoor lighting: on". In this way, it becomes possible to generate a set of transformed data 606 that includes an image depicting a scenario different from that depicted in the original set of image data 601.

[0079] According to the counterfactual inference generation method 600 for the above-described image data, it becomes possible to generate a counterfactual inference result of the image data that provides the user with a transformed image that achieves a predetermined goal. In some embodiments, these transformed images can be used as training data for other machine learning models. For example, a transformed image depicting a rare scenario (e.g., a bear crossing a road) can be generated from an input image depicting a more common scenario (e.g., a dog crossing a road). These transformed images can be used to complement machine learning in situations where data availability is a problem.

[0080] Next, an example of the learning process of the classification unit and the counterfactual inference unit for tabular data will be described with reference to FIG. 7.

[0081] FIG. 7 is a diagram showing an example of a learning process 700 for a classification unit and a counterfactual inference unit according to an embodiment of the present disclosure. The learning processes 700 of the classification unit and the counterfactual inference unit shown in FIG. 7 respectively correspond to step S306 and step S306 shown in FIG. 3, or step S404 and step S405 shown in FIG. 4.

[0082] First, the learning management unit 703 receives a set 701 of training data. Here, the learning management unit 703 can include a software module or dedicated hardware configured to perform the learning process 700 on the classification unit and the counterfactual inference unit. The set 701 of training data can include a set of tabular data or a set of image data for training the classification unit to perform a given classification task. As an example, in the case of a classification task in which the classification unit learns to predict individuals whose income is greater than a threshold value, the set of training data can include information regarding the age, education level, gender, nationality, and occupation of many individuals, together with ground truth data indicating the correct classification label results for each individual.

[0083] When receiving the set 701 of learning data, the learning management unit 703 can select an appropriate model type from the group 702 of base models to perform a desired classification task. Here, the group 702 of base models can include a set of machine learning models, networks, or algorithms that can be trained to perform a desired classification task. In some embodiments, the learning management unit 703 can receive a model selection instruction along with the set 701 of learning data indicating the specific model to be used. As an example, the group 702 of base models can include artificial neural networks, deep learning algorithms, learning classifiers, Bayesian networks, and the like. When selecting a base model from the group 702 of base models, the learning management unit 703 uses the set 701 of learning data to train the selected base model to perform a desired classification task (e.g., predicting whether an individual's income exceeds a threshold). The learning process 700 can be repeated until the base model achieves a desired level of accuracy and is then saved as the trained classification unit 704.

[0084] Next, the counterfactual inference unit 706 learns using the set of learning data 705. The set of learning data 705 can include a set of tabular data or image data used to train the counterfactual inference unit 220. In some embodiments, the set of learning data 204 can substantially correspond to the set of learning data 701 used to train the trained classification unit 704. Here, the counterfactual inference unit 706 learns to perform encoding and decoding operations on the set of input data to generate a set of transformed data that achieves a predetermined goal of the trained classification unit 704. As an example, when the trained classification unit 704 is trained to predict individuals with income greater than a threshold, the counterfactual inference unit 706 learns to generate a set of transformed data such that a subset of the set of data features of the set of input data is changed to counterfactual features (e.g., changes to data features such as occupation, working hours per week) such that the set of transformed data is classified as corresponding to individuals with income greater than the threshold. As described herein, the learning of the counterfactual inference unit 706 is associated with the model loss 708. This model loss 708 will be described below.

[0085] The set of transformed data generated by the counterfactual inference unit 706 is input to the trained classification unit 704. The trained classification unit 704 processes the set of transformed data generated by the counterfactual inference unit 706 to determine whether the set of transformed data achieves a predetermined goal (e.g., having income greater than a threshold) and calculates the associated counterfactual loss 707. This counterfactual loss 707 is incurred by samples of the set of transformed data that are determined not to achieve the predetermined goal.

[0086] As described above, the counterfactual inference unit 220 learns to reduce the model loss 708. Here, as shown in Equation 1, the model loss 708 (L v ) is represented as the sum of a plurality of loss values.

Equation

[0087] By adjusting the parameters of the counterfactual inference unit 706 so as to minimize this model loss 708 (L v ), the counterfactual inference unit 706 learns to generate a set of transformed data that achieves a predetermined target of the learned classifier 704. Also, in the learning process 700, the masking operation described herein is not performed so as to mask a subset of the set of data features of the learning data. That is, the learning process 700 is performed without masking any data features. By executing the learning process 700 without masking any of the data features of the learning data, local convergence of the model can be prevented.

[0088] According to the learning process 700 of the above-described classifier and counterfactual inference unit, the counterfactual inference unit can be learned to generate a set of transformed data such that a subset of the set of data features of the set of input data is changed to counterfactual features such that the set of the transformed data achieves a predetermined target. Using these counterfactual features, insights regarding actions to be executed to increase the likelihood of achieving a predetermined target can be provided to the user (for example, having an income greater than a threshold for loan approval).

[0089] Next, with reference to FIG. 8, an example of the feedback process of the counterfactual inference management device will be described.

[0090] FIG. 8 is a diagram showing an example of a feedback process 800 of a counterfactual inference management apparatus according to an embodiment of the present disclosure. By executing the feedback process 800 in the inference stage of the counterfactual inference management apparatus and using the counterfactual inference result as learning data, the accuracy of the classification unit can be further improved.

[0091] As shown in FIG. 8, first, the counterfactual inference unit 706 receives a set 805 of test data and generates a counterfactual inference result 807. In some embodiments, the user can input user input using a user interface unit (not shown in FIG. 8) to change one or more data features of the set of converted data included in the counterfactual inference result 807 into counterfactual features selected by the user (for example, the user can change the data features corresponding to income or education level and observe how this change affects the loan approval result).

[0092] Thereafter, this counterfactual inference result 807 can be aggregated as a set 810 of learning data together with the user input and input to the learning management unit 703. Then, the learning management unit 703 can select an appropriate model type from the group 702 of base models to execute a desired classification task, and train the selected model using the set 810 of learning data to generate a trained classification unit 704.

[0093] According to the feedback process 800 of the counterfactual inference management apparatus, the classification unit can be trained using the counterfactual inference result 807 and the user input received from the user. Thereafter, the counterfactual inference unit can be trained as described above using this trained classification unit. In this way, by training the classification unit and the counterfactual inference unit based on the counterfactual inference result 807 and the user input received from the user, it becomes possible to generate a flexible counterfactual inference result that provides various options for customization based on the user's preferences.

[0094] Next, an example of a mask selection window according to an embodiment of the present disclosure will be described with reference to FIG. 9.

[0095] FIG. 9 is a diagram showing an example of a mask selection window 900 according to an embodiment of the present disclosure. As described herein, aspects of the present disclosure relate to performing a masking operation (e.g., freezing, locking, holding, maintaining) to mask one or more data features of a set of input data. In some embodiments, the user can select which data features of a set of input data to mask via a mask selection window 900 presented in a graphical user interface by a user interface part (e.g., the user interface part 240 shown in FIG. 2).

[0096] As shown in FIG. 9, the mask selection window 900 includes a file import button 901, a mode selection button 902, and a mask selection button 903. By selecting the file import button 901, the user can select a set of input data (e.g., a set of test data used in a counterfactual inference generation process) including the set of data features to be masked. By selecting the mode selection button 902, the user can select between a tabular mode for specifying tabular data processing operations (e.g., mask selection, data normalization) and an image mode for specifying image processing operations (e.g., pixel luminance operations, geometric transformations). By selecting the mask selection button 903, the user can select the specific data features to which the mask is to be assigned. In some embodiments, it may be preferable to assign a mask to data features that the user cannot freely change. As an example, as shown in FIG. 9, the user can assign a mask to the data features of "race", "gender", and "country of origin". This is because these are data features that the user cannot freely change.

[0097] Using the mask selection window 900, the user can assign masks to any number of data features of a set of data features. In this way, by assigning a mask to a data feature that the user cannot freely change, it is possible to suppress the generation of infeasible counterfactual inferences that require changing the data feature corresponding to an attribute that the user cannot change.

[0098] Next, with reference to FIG. 10, an example of an image import window according to an embodiment of the present disclosure will be described.

[0099] FIG. 10 is a diagram showing an example of an image import window 1000 according to an embodiment of the present disclosure. As described herein, aspects of the present disclosure relate to performing a counterfactual inference management method on a set of image data. In some embodiments, it may be desirable to perform an image processing operation on a set of image data before the set of image data is input to a learned counterfactual inference unit. Therefore, the user can select a set of image data using the image import window 1000 and specify one or more image processing operations to be performed on the set of image data.

[0100] As shown in FIG. 10, the image import window 1000 includes a file import button 1001, a mode selection button 1002, a pixel luminance operation button 1003, a geometric transformation button 1004, and an image display area 1005. By selecting the file import button 1001, the user can select a set of image data to be used in the counterfactual inference generation process. By selecting the mode selection button 1002, the user can select between a tabular mode for specifying tabular data processing operations (e.g., mask selection, data normalization) and an image mode for specifying image processing operations (e.g., pixel luminance operation, geometric transformation). By selecting the pixel luminance operation button 1003, the user can select one or more pixel luminance operations to be performed on the set of image data. The pixel luminance operation can include an operation of increasing or decreasing the luminance of one or more pixels of the set of image data. By selecting the geometric transformation button 1004, the user can select one or more geometric transformation operations to be performed on the set of image data. As an example, the geometric transformation operation can include translational motion, Euclidean transformation, resizing, scaling, or other operations for adjusting the geometric features of the elements of the set of image data. A preview of the set of image data selected by the user via the file import button 1001 is displayed in the image display area 1005. As an example, as shown in FIG. 10, the set of image data can include an image of a bedroom scene.

[0101] Using the image import window 1000, the user can select a set of image data to be used in the counterfactual inference process. Also, the user can specify one or more image processing operations to be performed on the set of image data. Performing one or more image processing operations on the set of image data can improve the accuracy of the counterfactual inference results generated by the counterfactual inference process.

[0102] Next, with reference to FIG. 11, an example of the display of counterfactual inference results for tabular data will be described.

[0103] FIG. 11 is a diagram showing an example of a counterfactual inference result display 1100 of tabular data according to an embodiment of the present disclosure. The counterfactual inference result display 1100 is a graphical user interface configured to display a counterfactual inference result generated by the counterfactual inference unit of the present disclosure. As described in this specification, the counterfactual inference result can include a set of converted data, a goal achievement index indicating whether the set of converted data achieves a predetermined goal, and a correlation index indicating a correlation between specific data characteristics of the set of converted data. Further, the counterfactual inference result display 1100 can be configured to receive user input and change one or more data characteristics of the set of converted data. In some embodiments, the counterfactual inference result display 1100 shown in FIG. 11 can be presented via a user interface unit.

[0104] As shown in FIG. 11, the counterfactual inference result display 1100 mainly includes a feature display area 1110, a goal achievement index area 1120, and a correlation index area 1130.

[0105] The feature display area 1110 is a graphical user interface element for showing data characteristics of a set of converted data. As described in this specification, in the case of tabular data, the set of converted data can include a set of numerical characteristics and a set of categorical characteristics. As an example, in FIG. 11, numerical characteristics such as feature 1, feature 2, and feature 3 may be represented using sliders, and categorical characteristics such as feature 4, feature 5, and feature 6 can be represented using dropdown boxes.

[0106] As described herein, in some embodiments, a user of the counterfactual inference result display 1100 can input user input to change one or more data features of the set of transformed data. As an example, when feature 1 represents "income", the user can use the slider for feature 1 to change their income value to a counterfactual value and observe how this change affects the counterfactual inference result. Similarly, when feature 4 represents "occupation", the user can use the drop-down box to change their occupation and observe how this change affects the result of the counterfactual inference.

[0107] The goal achievement indicator region 1120 is a graphical user interface element for indicating whether the set of transformed data achieves a predetermined goal. As an example, when the predetermined goal is "loan approval", the goal achievement indicator region 1120 can indicate whether the loan applicant "succeeds" or "fails" regarding loan approval. In some embodiments, the goal achievement indicator region 1120 can be configured to automatically update in real time in response to changes made by the user to the data features. Thus, the user can observe in real time how the changes to the data features affect the counterfactual inference result.

[0108] The correlation indicator region 1130 is a graphical user interface element for indicating the correlation between specific data features of the set of transformed data. For example, as shown in FIG. 11, features identified as being correlated with each other can be grouped as each cluster in the correlation indicator region 1130. As an example, the correlation indicator region 1130 can group feature 1 and feature 4 within the same cluster to show the correlation between "income" and "occupation". Thus, the user can change the data features considering the correlations shown in the correlation indicator region.

[0109] Furthermore, the counterfactual inference result display 1100 can include a save button 1135. By selecting the save button 1135, the user can save the counterfactual inference result in a predetermined storage area. In some embodiments, when saving the counterfactual inference result, the counterfactual inference result can be transmitted to the learning management unit for use as learning data for training the classification unit.

[0110] According to the counterfactual inference result display 1100 shown in FIG. 11, the user can display and check the counterfactual inference result generated by the counterfactual inference management device for tabular data. Also, the user can change the data features of the set of converted data to counterfactual values to examine how the changes to the input data affect the counterfactual inference result.

[0111] Next, with reference to FIG. 12, an example of the counterfactual inference result display for image data will be described.

[0112] FIG. 12 is a diagram showing an example of a counterfactual inference result display 1200 for image data according to an embodiment of the present disclosure. The counterfactual inference result display 1200 is a graphical user interface configured to display the counterfactual inference result generated by the counterfactual inference unit of the present disclosure. As described in this specification, the counterfactual inference result can be displayed together with the data features of the converted data and a set of converted data (for example, a converted image). Also, the counterfactual inference result display 1200 can be configured to receive user input and change one or more data features of the set of converted data. In some embodiments, the counterfactual inference result display 1200 shown in FIG. 12 can be presented via the user interface unit.

[0113] As shown in FIG. 12, the counterfactual inference result display 1200 mainly includes a feature display area 1210 and a converted image display area 1220.

[0114] The feature display area 1210 is a graphical user interface element for showing the data features of a set of transformed data. As described in this specification, in the case of image data, the set of transformed data can include transformed images characterized by a set of image features. As an example, in FIG. 12, image features such as features 1 to 6 can be represented using sliders.

[0115] As described in this specification, in some embodiments, a user of the counterfactual inference result display 1200 can input user input to change one or more data features of the set of transformed data. As an example, when feature 1 represents "brightness", the user can use the slider of feature 1 to change the brightness level to a counterfactual value and observe how this change affects the transformed image.

[0116] The transformed image display area 1220 is a graphical user interface element for showing the transformed image generated by the counterfactual inference unit. As an example, as shown in FIG. 12, in the case of an input image of a bedroom scene without indoor lighting, the transformed image display area 1220 can display a transformed image in which the image features are changed to show a bedroom scene with indoor lighting. In some embodiments, the transformed image display area 1220 can be configured to automatically update in real time in response to changes made by the user to the data features. Therefore, the user can observe in real time how the changes to the data features affect the counterfactual inference results.

[0117] Also, the counterfactual inference result display 1200 can include a save button 1235. By selecting the save button 1135, the user can save the counterfactual inference result in a predetermined storage area. In some embodiments, when saving the counterfactual inference result, the counterfactual inference result can be sent to the learning management unit for use as learning data for training the classification unit.

[0118] According to the counterfactual inference result display 1200 shown in FIG. 11, the user can display and check the counterfactual inference result generated by the counterfactual inference management device for the image data. Further, the user can change the data characteristics of the set of converted data to counterfactual values to investigate how the change to the input data affects the counterfactual inference result.

[0119] As described in this specification, according to the counterfactual inference management device, counterfactual inference management method, and counterfactual inference management computer program product of the present disclosure, various advantageous effects can be achieved.

[0120] For example, since the counterfactual inference unit learns based on the output of the learned classification unit, the learned counterfactual inference unit can generate a counterfactual inference result including a set of converted data in which one or more data characteristics are changed to counterfactual data such that the data characteristics achieve a predetermined target of the classification unit. These counterfactual inference results can serve as advice to provide the user with insights into how a specific result changes when the input factors are virtually changed.

[0121] Further, since the counterfactual inference management unit learns based on the counterfactual features selected by the user, the learned counterfactual inference unit can generate a flexible counterfactual inference result that enables the user to explore various virtual cases for achieving a predetermined target.

[0122] Also, since the counterfactual inference unit uses statistical analysis techniques to predict data characteristics that are likely to be correlated with one or other data characteristics of the set of converted data, the user can easily rule out infeasible counterfactual inferences (for example, there may be cases where a counterfactual inference that requires changing a certain data characteristic but not changing another correlated characteristic cannot be executed).

[0123] Further, the counterfactual inference unit can be configured to switch between different operation modes and execute special processing steps based on whether the input data is tabular data or image data. Therefore, the counterfactual inference management device can generate counterfactual inference results regarding both tabular format data and image data.

[0124] The present invention can be a system, method, and / or computer program product. The computer program product may include a computer-readable storage medium having computer-readable program instructions for causing a processor to execute aspects of the present invention.

[0125] The computer-readable storage medium may be a tangible device that can hold and store instructions used by an instruction execution device. The computer-readable storage medium can be, for example, 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, but is not limited thereto. A non-exhaustive list of more specific examples of the computer-readable storage medium includes: portable computer diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disk read-only memory (CD-ROM), digital versatile disks (DVD), memory sticks, floppy disks, mechanically encoded devices such as punch cards and raised structures in which instructions are recorded in grooves, and any suitable combination of the foregoing. The computer-readable storage medium as used herein should not be construed to be an electromagnetic wave propagating through radio waves or other freely propagating electromagnetic waves, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., an optical pulse passing through an optical fiber cable), or an electrical digital signal itself transmitted through a wire.

[0126] Aspects of the present invention are described herein with reference to flowchart illustrations and / or block diagrams that illustrate methods, apparatuses (systems), and computer program products according to embodiments of the present invention. It should 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.

[0127] These computer-readable program instructions are provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to be executed via the processor of the computer or other programmable data processing apparatus to implement means for realizing features / operations specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions may be stored in a computer-readable storage medium that can direct a computer, programmable data processing apparatus, and / or other devices to function in a particular manner, such that the computer-readable storage medium storing the instructions becomes a manufacture including instructions for implementing aspects of the features / operations specified in the blocks or block combinations of the flowchart and / or block diagram.

[0128] 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 executed on the computer, other programmable apparatus, or other device so that the instructions executed on the computer, other programmable apparatus, or other device implement the features / operations specified in one or more blocks of the flowchart and / or block diagram, thereby generating a computer-implemented process.

[0129] Embodiments in accordance with the present disclosure may be provided to an end user via a cloud computing infrastructure. Cloud computing generally refers to providing scalable computing resources as services over a network. More formally, cloud computing may be defined as a computing capability that provides an abstraction between computing resources and the underlying technical architecture (e.g., servers, storage, network), enabling convenient on-demand network access to a shared pool of configurable computing resources that can be rapidly deployed and released with minimal management effort or service provider intervention. Thus, according to cloud computing, a user can access virtual computing resources (storage, data, applications, or even a complete virtualized computing system, etc.) within the "cloud" regardless of the physical systems (or their locations) underlying the computing resources being used to provide them.

[0130] The flowcharts and block diagrams in the figures illustrate the architecture, features, and operations 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 diagram may represent a module, segment, or portion of one or more executable instructions for implementing the specified logical feature. In some alternative implementations, the features described in the blocks may be executed in an order different from that shown in the figures. For example, two blocks shown in succession may actually be executed substantially simultaneously, or depending on the related features, the blocks may be executed in the reverse order. It should also be noted that each block of the block diagrams and / or flowchart diagrams, and combinations of blocks in the block diagrams and / or flowchart diagrams, may be implemented by a special-purpose hardware-based system that performs the specified feature or operation, or a combination of special-purpose hardware and computer instructions.

[0131] The above is directed to exemplary embodiments, but other / further embodiments of the present invention can be devised without departing from the basic scope of the present invention, and the scope of the present invention is defined by the following claims. The descriptions of the various embodiments of the present disclosure have been presented for purposes of illustration, but are not intended to be exhaustive or limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terms used herein are selected to explain the principles of the embodiments or the practical application or technical improvement of the technologies found in the market, or to enable those skilled in the art to easily understand the embodiments disclosed herein.

[0132] The terms used herein are for the purpose of describing particular embodiments only and are not intended to limit the various embodiments. Terms such as "set", "group", "group" are intended to include one or more. As used herein, the terms "comprising" and / or "may include" specify the presence of the described features, integers, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof. In the foregoing detailed description of the exemplary aspects of the various embodiments, reference has been made to the accompanying drawings (like reference numerals represent like elements) which are a part hereof and which illustrate specific exemplary embodiments for implementing the various aspects. These embodiments have been described in sufficient detail to enable those skilled in the art to implement the embodiments, but other embodiments may also be used and logical, mechanical, electrical, etc. changes can be made without departing from the scope of the various embodiments. In the above description, many specific details have been set forth in order to fully understand the various embodiments. However, the various embodiments can be implemented without these specific details. Also, in other places, well-known circuits, structures, and technologies are not shown in detail so as not to obscure the embodiments.

Explanation of Reference Numerals

[0133] 100 Computer system 102 Processor 104 Memory 106 Memory bus 108 I / O bus 109 Bus interface 110 I / O bus interface 112 Terminal interface 113 Storage interface 114 I / O device interface 115 Network interface 116 User I / O device 117 Storage device 124 Display system 126 Screen 130 Communication network 150 Counterfactual inference management application 200 Counterfactual inference management device 210 Classification unit 220 Counterfactual inference unit 230 Preprocessing unit 232 Tabular data processing unit 234 Image processing unit 240 User interface unit 250 Feedback unit

Claims

1. A classification unit trained to determine whether a set of input data including a set of data features achieves a predetermined goal, and A counterfactual inference unit for generating a set of transformed data in which a subset of the set of data features is changed to counterfactual features for the set of input data by processing the set of input data A counterfactual inference management apparatus comprising: The classification unit processes the set of transformed data generated by the counterfactual inference unit to determine whether the set of transformed data achieves a predetermined goal, and calculates a counterfactual loss value associated with a subset of the set of transformed data that does not achieve the predetermined goal, The counterfactual inference unit learns to reduce the counterfactual loss value and generate a second set of transformed data including counterfactual features that achieve the predetermined goal, A counterfactual inference management apparatus characterized by the above.

2. The set of input data includes A set of tabular data including a set of data features including a set of numerical features or a set of categorical features, or An image data set including a set of data features including a set of image features, The counterfactual inference management apparatus according to claim 1, characterized by the above.

3. Determine whether the set of input data includes a set of tabular data or a set of image data, When it is determined that the set of input data includes a set of tabular data, perform a tabular data processing operation on the set of input data, The counterfactual inference management apparatus according to claim 2, further comprising a preprocessing unit configured to perform an image processing operation on the set of input data when it is determined that the set of input data includes a set of image data.

4. The preprocessing unit As the tabular data processing operation, perform normalization on a set of numerical features and perform one-hot encoding on a set of categorical features, The counterfactual inference management apparatus according to claim 3, characterized by the above.

5. The preprocessing unit As the tabular data processing operation, perform a masking operation to prevent changes to a subset of the set of numerical features or a subset of the set of categorical features, The counterfactual inference management apparatus according to claim 4, characterized by the above.

6. In generating the set of the converted data, when it is determined that the set of the input data includes a set of tabular data, by processing the set of the tabular data using an encoder model, a latent space representation of the set of the input data with dimensionality reduction for the set of the tabular data is generated, by processing the latent space representation using a decoder model, a set of converted data is generated in which a subset of the set of the data features is changed to counterfactual features with respect to the set of the tabular data, by performing statistical analysis on the set of the converted data, a set of clustering results indicating the correlation between the data features of the set of the tabular data is generated, The counterfactual inference management device according to claim 5, characterized in that.

7. The preprocessing unit, as the image processing operation, performs one or both of pixel luminance conversion and geometric conversion, The counterfactual inference management device according to claim 3, characterized in that.

8. In generating the set of the converted data, when it is determined that the set of the input data includes the set of the image data, by processing the set of the image data using an encoder model including a convolutional layer, a latent space representation of the set of the image data with dimensionality reduction for the set of the image data is generated, by processing the latent space representation using a decoder model including a convolutional layer, a set of converted data is generated in which a subset of the set of the data features is changed to counterfactual features with respect to the set of the image data, The counterfactual inference management device according to claim 7, characterized in that.

9. Present a counterfactual inference result including the set of the second converted data, the set of the second data features characterizing the set of the second converted data, and a goal achievement index indicating whether the set of the second converted data achieves the predetermined goal, A user interface unit configured to receive a user input for changing a subset of the set of the second data features of the set of the second converted data to a set of counterfactual features selected by a user is provided, The counterfactual inference management device according to claim 1, characterized in that.

10. A feedback unit configured to use the counterfactual inference result together with a set of counterfactual features selected by the user as learning data for training the classification unit is further provided. The counterfactual inference management apparatus according to claim 9, characterized in that.

11. In the counterfactual inference management method in the counterfactual inference management apparatus according to claim 1, a step of training the classification unit to determine whether a set of input data including a set of data features achieves a predetermined target; a step in which the counterfactual inference unit generates a set of transformed data in which a subset of the set of data features is changed to counterfactual features for the set of input data by processing the set of input data; a step in which the classification unit processes the set of transformed data generated by the counterfactual inference unit to determine whether the set of transformed data achieves the predetermined target, and calculates a counterfactual loss value associated with a subset of the set of transformed data that does not achieve the predetermined target; a step of training the counterfactual inference unit to generate a second set of transformed data including counterfactual features that reduce the counterfactual loss value and achieve the predetermined target; A counterfactual inference management method characterized by including.

12. The counterfactual inference unit, a step of receiving a set of test data; a step of determining whether the set of test data includes a set of tabular data or a set of image data; when it is determined that the set of test data includes a set of tabular data, a step of performing a tabular data processing operation on the set of test data; when it is determined that the set of test data includes a set of image data, a step of performing an image processing operation on the set of test data; a step of generating a third set of transformed data including counterfactual features that achieve the predetermined target by processing the set of test data using the counterfactual inference unit; a step of presenting to the user via a graphical user interface the third set of transformed data, a third set of data features characterizing the third set of transformed data, and a target achievement indicator indicating whether the third set of transformed data achieves the predetermined target; Receiving user input via the graphical user interface to change a subset of the set of third data features of the set of third transformed data into a set of counterfactual features selected by the user; Training the classification unit using the counterfactual inference result together with the set of counterfactual features selected by the user; The counterfactual inference management method according to claim 11, characterized by including performing the above.

13. A computer-readable storage medium storing counterfactual inference management computer program instructions, The computer-readable storage medium itself is not a temporary signal, The counterfactual inference management computer program instructions, Training a classification unit to determine whether a set of input data including a set of data features achieves a predetermined goal; Generating a set of transformed data in which a subset of the set of data features is changed to counterfactual features for the set of input data by processing the set of input data using a counterfactual inference unit; Processing the set of transformed data generated by the counterfactual inference unit using the classification unit to determine whether the set of transformed data achieves the predetermined goal, and calculating a counterfactual loss value associated with a subset of the set of transformed data that does not achieve the predetermined goal; Training the counterfactual inference unit to generate a second set of transformed data including counterfactual features that reduce the counterfactual loss value and achieve the predetermined goal; A computer-readable storage medium storing counterfactual inference management computer program instructions executable by a processor, including the counterfactual inference management method described above.

14. The counterfactual inference management method includes: Receiving a set of test data; Determining whether the set of test data includes a set of tabular data or a set of image data; When it is determined that the set of test data includes a set of tabular data, performing a tabular data processing operation on the set of test data; When it is determined that the set of test data includes a set of image data, performing an image processing operation on the set of test data; Generating a set of third transformed data including counterfactual features that achieve the predetermined goal by processing the set of test data using the counterfactual inference unit; Presenting to the user via a graphical user interface the set of third transformed data, a set of third data features characterizing the set of third transformed data, and a goal achievement indicator indicating whether the third transformed data achieves the predetermined goal; Receiving user input via a graphical user interface to change a subset of the set of third data features of the set of third transformed data into a set of counterfactual features selected by the user; Further including the step of training the classification unit using the counterfactual inference result together with the set of counterfactual features selected by the user. A computer-readable storage medium storing the counterfactual inference management computer program instructions according to claim 13, characterized in that.

Citation Information

Patent Citations

  • Deduction device, learning device, deduction method, learning method and program

    JP2021114265A

  • Using imager with on-purpose controlled distortion for inference or training of an artificial intelligence neural network

    WO2021099942A1