Information processing device, information processing method, program, and recording medium

JP2026127494APending Publication Date: 2026-08-06NAT AGRI & FOOD RES ORG
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
NAT AGRI & FOOD RES ORG
Filing Date
2025-01-27
Publication Date
2026-08-06

Smart Images

  • Figure 2026127494000001_ABST
    Figure 2026127494000001_ABST
Patent Text Reader

Abstract

We provide efficient learning techniques. [Solution] The information processing device (1) includes an acquisition unit (11) that acquires a target image, and an image generation unit (16) that generates an image by referring to a feature vector obtained by referring to the output of a trained model into which the target image is input, and a shift vector having a non-zero component as a component corresponding to at least one of the multiple activated components among the multiple components included in the feature vector. An information processing device equipped with the following features.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an information processing apparatus, an information processing method, a program, and a recording medium. [Background technology]

[0002] In recent years, the use of image diagnostic technology utilizing deep learning has advanced. However, when using deep learning, the diagnostic process is a black box, and it is generally known that the explainability is low. This low explainability hinders further improvements in accuracy and generalization performance.

[0003] On the other hand, in recent years, generative models called StyleGANs have come into frequent use, and proposals have been made to improve the explainability using these generative models (Non-Patent Documents 1, 2). [Prior art documents] [Non-patent literature]

[0004] [Non-Patent Document 1] O. Lang, et al., Explaining in Style: Training a GAN to explain a classifier in StyleSpace, arXiv:2104.13369 (2021) [Non-Patent Document 2] MH Wehrheim, et al., Linking in Style: Understanding learned features in deep learning models, arXiv:2409.16865 (2024) [Overview of the project] [Problems that the invention aims to solve]

[0005] In configurations using generative models, explainability can be improved compared to configurations that do not use generative models. However, the conventional technologies described above still have room for improvement from the standpoint of further enhancing explainability. One aspect of the present invention is to provide a technology that can suitably improve explainability in a configuration using generative models. [Means for solving the problem]

[0006] To solve the above problems, an information processing device according to one aspect of the present invention includes an image generation unit that generates an image by referring to a feature vector obtained by referring to the output of a trained model into which the target image is input, and a shift vector having a non-zero component as a component corresponding to at least one of the activated components among the plurality of components included in the feature vector. To solve the above problems, an information processing device according to one aspect of the present invention includes: an acquisition unit that acquires a training image; an image generation unit that generates an image by referring to a feature vector obtained by referring to the output of a trained model into which the training image has been input, and a shift vector having a non-zero component as a component corresponding to at least one of the activated components among the plurality of components included in the feature vector; and a learning unit that trains the image generation unit by referring to the image generated by the image generation unit.

[0007] To solve the above problems, an information processing method according to one aspect of the present invention includes an acquisition step of acquiring a target image, and an image generation step of generating an image by referring to a feature vector obtained by referring to the output of a trained model into which the target image was input, and a shift vector having a non-zero component as a component corresponding to at least one of the activated components among the plurality of components included in the feature vector.

[0008] In order to solve the above problems, an information processing method according to an aspect of the present invention includes an acquisition step of acquiring a learning image, a feature vector obtained by referring to the output of a learned model into which the learning image is input, and a shift vector having a non-zero component as a component corresponding to at least any one of a plurality of activated components among a plurality of components included in the feature vector, and an image generation step of generating an image by an image generation model by referring to the shift vector, and a learning step of learning the image generation model by referring to the image generated in the image generation step.

[0009] Each information processing apparatus according to an aspect of the present invention may be realized by a computer. In this case, a program for realizing the information processing apparatus by operating the computer as each part (software element) included in the information processing apparatus, and a computer-readable recording medium on which the program is recorded also fall within the scope of the present invention.

Advantages of the Invention

[0010] According to one aspect of the present invention, in a configuration using a generation model, the explanatory power can be suitably improved.

Brief Description of the Drawings

[0011] [Figure 1] It is a block diagram showing a configuration example of an information processing apparatus according to an embodiment of the present invention. [Figure 2] It is a diagram for explaining the processing by the information processing apparatus according to an embodiment of the present invention. [Figure 3] It is a flowchart showing the flow of processing by the information processing apparatus according to an embodiment of the present invention. [Figure 4] It is a diagram for explaining the processing by the information processing apparatus according to an embodiment of the present invention. [Figure 5] It is a flowchart showing the flow of processing by the information processing apparatus according to an embodiment of the present invention. [Figure 6] It is a flowchart showing the flow of processing by the information processing apparatus according to an embodiment of the present invention. [Figure 7] This is a diagram illustrating the processing performed by an information processing device according to an embodiment of the present invention. [Figure 8] This is a diagram illustrating the processing performed by an information processing device according to an embodiment of the present invention. [Figure 9] This is a diagram illustrating the processing performed by an information processing device according to an embodiment of the present invention. [Figure 10] This is a diagram illustrating the processing performed by an information processing device according to an embodiment of the present invention. [Figure 11] This is a diagram illustrating the information output by an information processing device according to an embodiment of the present invention. [Figure 12] This block diagram shows a specific configuration example and processing example of an information processing device according to an embodiment of the present invention. [Figure 13] This block diagram shows a specific configuration example and processing example of an information processing device according to an embodiment of the present invention. [Modes for carrying out the invention]

[0012] [Embodiment 1] <Overview of Information Processing Devices> First, let's describe the information processing device 1 according to this embodiment. The information processing device 1 according to this embodiment can be described in general terms as follows: • Classification or prediction processing of input images • Generation process of output information (explanatory information) to improve the explainability of the above classification or prediction process. • Training process for each model to perform the above classification, prediction, and generation processes. It is a device that performs the following functions. For this reason, the information processing device 1 may also be called a classification device, a prediction device, an explanatory information generation device, or a learning device.

[0013] In the following explanation, the phase in which classification or prediction processing is performed on the input image will also be referred to as the classification phase or prediction phase. The phase in which output information (explanatory information) is generated will also be referred to as the explanation phase. Furthermore, the phase in which the learning processing of each of the above models is performed will also be referred to as the learning phase. However, these phases are not mutually exclusive. Parts of one phase may constitute parts of other phases.

[0014] The images input to the information processing device 1 are not particularly limited, but in the following description, plant images may be used as an example. Furthermore, specific examples of classification or prediction processing by the information processing device 1 are not limited to this embodiment, but in the following description, a process for predicting (classifying) the level of water stress in plants, or the type and level of plant diseases, may be used as an example.

[0015] <Details of the information processing device> The information processing device 1 according to this embodiment will be described in detail below. Figure 1 is a block diagram showing an example of the configuration of the information processing device 1 according to this embodiment. As shown in Figure 1, the information processing device 1 includes, as an example, a control unit 10, a storage unit 20, a communication unit 30, and an input / output unit 40.

[0016] (Communications Section 30) The communication unit 30 communicates with one or more external devices of the information processing device 1. The communication unit 30 transmits data supplied from the control unit 10 to the external device, and supplies data received from the external device to the control unit 10. For example, the communication unit 30 supplies the training image IMG_L and the target image IMG_T acquired from the external device to the control unit 10, and transmits the output information (explanatory information) OUT generated by the control unit 10 to the external device. The training image IMG_L and the target image IMG_T are examples of input images accepted by the information processing device 1.

[0017] (Input / output section 40) The input / output unit 40 is configured to include, for example, at least one of the following input / output devices: a keyboard, mouse, display, printer, touch panel, etc. Alternatively, the input / output unit 40 may be configured to have input / output devices such as a keyboard, mouse, display, printer, touch panel, etc. connected to it. In this configuration, the input / output unit 40 receives various types of information from the connected input device to the information processing device 1. The input / output unit 40 also outputs various types of information to the connected output device under the control of the control unit 10. An interface such as USB (Universal Serial Bus) can be used as an example of the input / output unit 40.

[0018] (Storage unit 20) The storage unit 20 stores various data referenced by the control unit 10, as well as various data generated by the control unit 10. For example, the storage unit 20 stores: • Learning image IMG_L • Target image IMG_T • First feature vector FV1 • Second feature vector FV2 • Third feature: Vector FV3 • NV vector • Generated image IMG_G • Output information OUT • Model parameter group MPG These are stored there.

[0019] The training image IMG_L is, for example, an image referenced to train at least one of the feature extraction unit 12, classification unit 13, encoder 14, noise generation unit 15, and image generation unit 16, which will be described later. The training image IMG_L may also have a correct label attached to it, for example. On the other hand, the target image IMG_T is, for example, • Prediction (classification) processing using the feature extraction unit 12 and the classification unit 13, which will be described later. • Generation process of output information OUT using encoder 14, noise generation unit 15, and image generation unit 16 This is an image referenced in at least one of the following. The terms "training image" and "target image" do not limit this embodiment in any way. At least a portion of the training image IMG_L may be included in the target image IMG_T, or vice versa.

[0020] The first feature vector FV1 is a vector whose components are features generated by the feature extraction unit 12. The second feature vector FV2 is a vector whose components are features generated by the embedding unit 161, which will be described later. The third feature vector FV3 is a vector whose components are features generated by the encoder 14. The noise vector NV is a vector whose components are noise generated by the noise generation unit 15. The noise vector NV is sometimes referred to as a shift vector or interpolation vector. The term shift vector originates from the fact that it changes the components (features) of the target vector, and in this sense, a shift vector may also be referred to as a perturbation or perturbation vector. Specific examples of the first to third feature vectors FV1 to 3 and the noise vector NV will be described later. Feature vectors are also sometimes referred to as feature vectors.

[0021] The generated image IMG_G is an image generated by the image generation unit 16. The generated image IMG is sometimes simply referred to as image IMG_G. The output information OUT is information generated by the output information generation unit 18, which will be described later. The output information OUT is sometimes also called explanatory information. Specific examples of the output information OUT will be described later.

[0022] The model parameter group MPG includes parameters that define various models used by the control unit 10. For example, the model parameter group MPG includes: • One or more parameters of the CNN (Convolutional Neural Network) used by the feature extraction unit 12 • One or more parameters of the fully connected network (FC) used by the classification unit 13 • One or more parameters of the encoder 14 • One or more parameters of the noise network used by the noise generation unit 15 • One or more parameters of the Embedder used by the embedded portion 161 • One or more parameters of the Generative Network used by the generation unit 162 described later These may include, but these examples do not limit this embodiment.

[0023] (Control Unit 10) As shown in Figure 1, the control unit 10 includes an acquisition unit 11, a feature extraction unit 12, a classification unit (prediction unit) 13, an encoder 14, a noise generation unit 15, an image generation unit 16, a learning unit 17, and an output information generation unit 18.

[0024] (Acquisition part 11) The acquisition unit 11 acquires the target image IMG_T during the prediction phase or explanation phase. The acquisition unit 11 also acquires the training image IMG_L during the training phase. Here, the target image IMG_T and the training image IMG_L may be acquired, for example, from a device equipped with a camera via the communication unit 30 described above, or they may be acquired from the user via the input / output unit 40.

[0025] (Feature extraction unit 12) The feature extraction unit 12 extracts high-level features HLF from the training image IMG_L during the learning phase. The feature extraction unit 12 then generates a first feature vector FV1 using features with relatively high activation levels or features with activation levels higher than a predetermined threshold from among the high-level features HLF.

[0026] As an example, the feature extraction unit 12 extracts multiple high-level feature matrices having a predetermined matrix size from the training image IMG_L as the high-level feature HLF. Then, it extracts the component with the largest value from each high-level feature matrix as the "feature with a relatively high degree of activation or a feature with an activation degree higher than a predetermined threshold," and generates a first feature vector FV1 composed of the extracted components.

[0027] To give a more specific example, the feature extraction unit 12 uses a pre-trained model, a CNN (Convolutional Neural Network), to extract 512 high-level feature matrices of a predetermined size from the training image IMG_L. Then, it extracts the component with the largest value from each high-level feature matrix and generates a first feature vector FV1 composed of the extracted components (512 components).

[0028] Similarly, the feature extraction unit 12 extracts high-level features HLF from the target image IMG_T during the prediction (classification) phase or the explanation phase. The feature extraction unit 12 also generates a first feature vector FV1 using features with relatively high activation levels or features with activation levels higher than a predetermined threshold from among the high-level features HLF. The process for generating high-level features HLF and the first feature vector FV1 is the same as in the learning phase, so redundant explanations are omitted. The first feature vector FV1 is sometimes referred to as a thresholded activation vector (ifv).

[0029] (Classification section 13) The classification unit 13 generates a classification result or prediction result by referring to the first feature vector FV1 generated by the feature extraction unit 12. For example, the classification unit 13 inputs the first feature vector FV1 into a Fully-Connected Network (FC) and generates the classification result or prediction result using the output of the FC.

[0030] The specific classification or prediction processing performed by the classification unit 13 is not limited to this embodiment, but as an example, if the learning image IMG_L or target image IMG_T is an image of a plant, the processing may include classifying or predicting the level of water stress of the plant, or the type and level of disease affecting the plant.

[0031] (Encoder 14) In the training phase, encoder 14 generates a third feature vector FV3 from the training image IMG_L. Similarly, in the prediction (classification) phase or explanation phase, encoder 14 generates a third feature vector FV3 from the target image IMG_T. The specific processing by encoder 14 is not limited to this embodiment, but as an example, encoder 14 may input the training image IMG_L or the target image IMG_T into an autoencoder and generate a third feature vector using the output of the autoencoder. Alternatively, encoder 14 may use a variational autoencoder (VAE) or other encoding network instead of an autoencoder.

[0032] In this embodiment, the encoder 14 is trained independently of the trained CNN model and the embedder 161 described later. As a result, the encoder 14 is configured to generate a third feature vector FV3 that does not contribute to the classification or prediction process using the trained CNN model by encoding the training image IMG_L or the target image IMG_T. In other words, the encoder 14 may be described as being configured to encode information that does not contribute to the classification process using the trained model (CNN).

[0033] (Noise generation unit 15) The noise generation unit 15 generates a noise vector NV. For example, the noise generation unit 15 generates a noise vector NV that has a non-zero component corresponding to at least one of the activated components among the multiple components included in the first feature vector FV1 generated by the feature extraction unit 12.

[0034] As an example, the noise generation unit 15 generates a noise vector NV that has non-zero components, corresponding to the top predetermined number of components (for example, the top 16) with a high degree of activation (in other words, large values) among the 512 components included in the first feature vector FV1 generated by the feature extraction unit 12, using a noise generation model.

[0035] As a more specific example, the first feature vector FV1 has 8 components. FV1=(0,0,4,7,6,2,1,0) In the case where, and a noise vector NV is generated that has non-zero components corresponding to the top four components with the highest activation levels, the noise generation unit 15, as an example, NV=(0,0,n1,n2,n3,n4,0,0) A noise vector NV is generated as shown above. Here, each of n1 to n4 represents a noise value generated by the noise generation unit 15.

[0036] The noise generation process of the noise vector NV by the noise generation unit 15 is not limited to the above example. For example, the noise generation unit 15 may be configured to randomly select a target component from multiple components of the first feature vector FV1, or from a predetermined number of top components with high activation levels, and generate a noise vector NV having a non-zero component as the component corresponding to the selected component. Alternatively, the noise generation unit 15 may be configured as a noise generation network that generates the above noise vector NV from seed data. The noise vector NV is also called a shift vector because it is a vector that shifts the first feature vector FV1.

[0037] The process of generating the first feature vector FV1 by the feature extraction unit 12 and the process of generating the noise vector NV by the noise generation unit 15 can also be expressed as follows. As an example, consider the case where the high-level feature HLF is a three-component vector (H[1], H[2], H[3]), and the components of the vector are given as follows for four training images IMG_L or target images IMG_T, namely Image1 to Image4. Sample H[1] H[2] H[3] Image1 0 10 -2 Image2 2 25 1 Image3 5 22 0 Image4 1 7 -20

[0038] The feature extraction unit 12 sets the second largest value among the values ​​corresponding to each of Image1 to Image4 for each component (H[1], H[2], H[3]) of the high-level feature HLF as the threshold (Thereshold). In the above example, the feature extraction unit 12 sets the threshold (Thereshold) as follows: H[1] H[2] H[3] Thereshold 2 22 0 Set to this.

[0039] The feature extraction unit 12 then generates the first feature vector FV1 by retaining only the components of the high-level feature HLF that are greater than the set threshold, and setting the other components to 0. In the above example, the feature extraction unit 12 determines the components of the first feature vector FV1 (FV1[1], FV1[2], FV1[3]) as follows. Sample FV1[1] FV1[2] FV1[3] Image1 0 0 0 Image2 0 25 1 Image3 5 0 0 Image4 0 0 0

[0040] Furthermore, in the above example, the noise generation unit 15 may generate the noise vector NV(NV[1],NV[2],NV[3]) as follows, for example. Sample FV1[1] FV1[2] FV1[3] Image1 0 0 0 Image2 0 n22 n23 Image3 n31 0 0 Image4 0 0 0 Here, n22, n23, and n31 each represent the noise value.

[0041] (Image generation unit 16) The image generation unit 16 generates an image by referring to a feature vector obtained by referring to the output of a trained model to which the training image IMG_L or target image IMG_T has been input, and a shift vector having a non-zero component as a component corresponding to at least one of the multiple activated components among the multiple components included in the feature vector.

[0042] As an example, the image generation unit 16 is: • Referencing the training image IMG_L or the target image IMG_T, the first feature vector FV1 generated by the feature extraction unit 12 using a machine learning-trained CNN, • A noise vector NV generated by the noise generation unit 15, wherein the noise vector (shift vector) NV has a non-zero component corresponding to at least one of the activated components among the multiple components included in the feature vector FV1. The image (generated image) IMG_G is generated by referring to the third feature vector generated by the encoder 14.

[0043] The image generation unit 16 includes, for example, an embedding unit 161 and a generation unit 162, as shown in Figure 1. Here, the embedding unit 161 is implemented as an embedding model that receives, for example, a first feature vector FV1 generated by the feature extraction unit 12 and a noise vector (shift vector) NV generated by the noise generation unit 15 as inputs. More specifically, the embedding unit 161 generates a second feature vector FV2 by embedding the first feature vector FV1 and the noise vector (shift vector) NV into the feature space.

[0044] On the other hand, the generation unit 162 is implemented as a generation model that, for example, receives the second feature vector FV2, which is the output of the embedding unit (embedded model) 161, and the third feature vector FV3, which is the output of the encoder 14, and generates the image IMG_G. Here, the specific configuration of the generation model used by the generation unit 162 is not limited to this embodiment, but as an example, • A generator that produces images, • Discriminator for identifying the image in question It may also be a Generative Adversarial Network (GAN) configured to generate higher-precision images. As a workpiece, a configuration using a Conditional Diagonal GAN ​​(CDiGAN) may also be used.

[0045] (Learning Section 17) In the learning phase, the learning unit 17 • The third feature vector FV3 generated by encoder 14, or Image generated by the image generation unit 16: IMG_G Referring to the above, at least one of the models used by the feature extraction unit 12, classification unit 13, encoder 14, noise generation unit 15, and image generation unit 16 is trained. The specific training process by the learning unit 17 will be described later.

[0046] (Output information generation unit 18) The output information generation unit 18 generates output information (explanatory information) OUT by referring to the image (generated image) IMG_G generated by the image generation unit 16. For example, the output information generation unit 18 inputs the image IMG_G generated by the image generation unit 16 into a trained CNN used by the feature extraction unit 12, and generates output information OUT by referring to the output of the CNN. The process of generating output information (explanatory information) OUT by the image generation unit 16 will be described later.

[0047] (Learning Phase) The learning phase of the information processing device 1 will be explained below with reference to Figures 2 to 7.

[0048] (Example of learning process for feature extraction unit 12 and classification unit 13) First, we will explain an example of the learning process of the feature extraction unit 12 and the classification unit 13 with reference to Figures 2 and 3. Figure 2 is a schematic diagram showing the learning process of the feature extraction unit 12 and the classification unit 13, and Figure 3 is a flowchart showing the flow of the learning process of the feature extraction unit 12 and the classification unit 13.

[0049] In this example, the acquisition unit 11 acquires the training image IMG_L and the ground truth label associated with the training image IMG_L (step S11 in Figure 3). Then, as shown in Figure 2, the training image IMG_L is input to the CNN provided by the feature extraction unit 12. The CNN extracts a predetermined number of high-level features (HLFs) from the training image IMG_L (step S121 in Figure 3). In the example shown in Figure 2, the CNN extracts (generates) four high-level feature matrices with predetermined matrix sizes from the training image IMG_L.

[0050] The feature extraction unit 12 then generates a first feature vector FV1 from the high-level feature matrix HLF (step S122 in Figure 3). The method for generating the first feature vector FV1 is as described above. In the example shown in Figure 2, as an example, the feature with the highest activation degree (largest value) is extracted from each of the four high-level feature matrices, and the first feature vector FV1 is generated with these four extracted features as components. The first feature vector FV1 generated by the feature extraction unit 12 is supplied to the classification unit 13. In the example shown in Figure 2, the classification unit 13 inputs the first feature vector FV1 to the fully connected network FC and generates the classification result as the output of the fully connected network FC (step S131 in Figure 3).

[0051] The learning unit 17 trains the CNN and FC so that the difference between the classification result of the classification unit 13 for the training image IMG_L and the correct label associated with the training image IMG_L is reduced (step S132 in Figure 3). In other words, the learning unit 17 updates the parameters of the CNN and FC so that the difference between the classification result of the classification unit 13 and the correct label is reduced. Here, the learning unit 17 can perform the above processing by referring to a loss function that includes the classification result of the classification unit 13 and the correct label as arguments, for example. The learned (updated) parameters of the CNN and FC are stored in the storage unit 20 as part of the model parameter group MPG described above.

[0052] (Example of learning process for image generation unit 16 and encoder 14) Next, with reference to Figures 4 and 5, an example of the learning process for the image generation unit 16 and the encoder 14 will be described. Note that this example of the learning process may also include the learning process for the noise generation unit 15. Figure 4 is a schematic diagram showing the learning process for the image generation unit 16 and the encoder 14, Figure 5 is a flowchart showing the flow of the learning process for the image generation unit 16, and Figure 6 is a flowchart showing the flow of the learning process for the encoder 14.

[0053] In this example, first, the acquisition unit 11 acquires the training image IMG_L (step S11 in Figure 5). The acquired training image IMG_L is supplied to the feature extraction unit 12 and the encoder 14, and the image generation unit 16 and the encoder 14 are trained independently.

[0054] In the learning process of the image generation unit 16, the training image IMG_L is first input to the CNN provided by the feature extraction unit 12. This CNN is a model that has undergone the learning process described above, and it extracts a predetermined number of high-level features HLF from the training image IMG_L (step S121 in Figure 5). In the example shown in Figure 4, this CNN extracts (generates) four high-level feature matrices with predetermined matrix sizes from the training image IMG_L.

[0055] Then, the feature extraction unit 12 generates a first feature vector FV1 from the high-level feature matrix HLF (step S122 in Figure 5). The method for generating the first feature vector FV1 is as described above. In the example shown in Figure 4, as an example, the feature with the highest activation degree (largest value) is extracted from each of the four high-level feature matrices, and the first feature vector FV1 is generated with the four extracted features as its components.

[0056] Furthermore, during the learning process of the image generation unit 16, the noise generation unit 15 (Noise Net in Figure 4) generates a noise vector NV (step S15 in Figure 5).

[0057] Then, the first feature vector FV1 and the noise vector NV are input to the embedding unit 161 (Embedder in Figure 4), and the Embedder generates the second feature vector FV2 (step S161 in Figure 5). Then, the second feature vector FV2 is input to the generation unit 162 (CDiGAN in Figure 4), and the image IMG_G is generated (step S162 in Figure 5).

[0058] The learning unit 17 trains the image generation unit 16 by referring to the generated image IMG_G (step S163 in Figure 5). For example, the learning unit 17 updates the parameters of each model (Embedder and CDiGAN) used by the image generation unit 16 by referring to the generated image IMG_G. The learning unit 17 may also update the parameters of the model (Noise net) used by the noise generation unit 15 by referring to the generated image IMG_G. The learned (updated) parameters of each model are stored in the storage unit 20 as part of the model parameter group MPG described above.

[0059] Furthermore, to generate the image IMG_G, the generation unit 162 (CDiGAN in Figure 4) may be configured to receive the third feature vector FV3 generated by the encoder 14. However, the encoder 14 is not trained during the learning process of the image generation unit 16. In other words, the parameters of the encoder 14 are not updated.

[0060] On the other hand, during the learning process of encoder 14, the learning image IMG_L is input to encoder 14, and a third feature vector FV3 is generated by encoder 14 (steps S11 and S14 in Figure 6). Then, the learning unit 17 trains encoder 14 by referring to the third feature vector FV3. For example, the learning unit 17 trains encoder 14 so that the difference between the third feature vector FV3 and the comparison feature vector becomes small. In other words, the learning unit 17 updates the parameters of encoder 14 so that the difference between the third feature vector FV3 and the comparison feature vector becomes small. Furthermore, as an example, the learning unit 17 can perform the above processing by referring to a loss function that includes at least a part of the third feature vector FV3 and at least a part of the comparison feature vector as arguments.

[0061] The specific examples of the feature vectors used for comparison described above are not limited to this embodiment, but as an example, feature vectors output by a predetermined network can be used as the feature vectors used for comparison. More specific examples of feature vectors used for comparison will be described later. The learned (updated) encoder 14 parameters are stored in the storage unit 20 as part of the model parameter group MPG described above.

[0062] (Regarding the loss function) In the learning process performed by the learning unit 17, • Disentanglement between features • Disentanglement between features shifted by noise variables. Feature consistency The learning process is performed using a loss function that promotes such processes. Figure 7 is a diagram illustrating the learning process that references such a loss function.

[0063] In the process shown in the upper part of Figure 7, first, the training image IMG_L (also denoted as x in Figure 7) is input to the CNN of the feature extraction unit 12, and the first feature vector FV1 (also denoted as fv) is generated by referring to the output of the CNN. Then, this feature vector fv and the noise vector NV (also denoted as n) generated by the noise generation unit 15 are input to the image generation unit 16, and the generated image IMG_G (also denoted as x') is generated.

[0064] Then, as shown in the upper part of Figure 7, the generated image x' is input again to the CNN of the feature extraction unit 12, and the feature vector fv' is generated by referring to the output of the CNN.

[0065] On the other hand, in the process shown in the middle of Figure 7, a feature vector fva obtained by adding random noise (shift) to the first feature vector fv is input to the image generation unit 16, and the generated image IMG_G(x) is generated by referring to this feature vector fva. a A (also written as ') is generated. Here, in the process of generating the feature vector fva, as an example, the feature extraction unit 12 adds noise exceeding a predetermined threshold to the feature vector fv.

[0066] Then, as shown in the middle of Figure 7, the generated image x a The data is then input again into the CNN of the feature extraction unit 12, and the feature vector fva is generated by referring to the output of the CNN.

[0067] Learning section 17 is, as an example, The difference between feature vector fv and feature vector fv' (the first difference) is made smaller, and • The difference (second difference) between feature vector fv and feature vector fva' should be made larger. The image generation unit 16 trains each model (Embedder and CDiGAN). In other words, the learning unit 17 performs a learning process that refers to a loss function in which the first difference and the second difference contribute with opposite signs to each other.

[0068] By performing the learning process described above, the learning unit 17 can facilitate the disentanglement of activated components in the first feature vector FV1 (or high-level feature HLF) generated by the feature extraction unit 12. Furthermore, by performing the learning process described above, the learning unit 17 can facilitate the independent changes in the features generated by the feature extraction unit 12 according to their activation levels.

[0069] On the other hand, in the process shown in the lower part of Figure 7, the noise generation unit 15 randomly sets the noise vector NV (also called the noise variable) to 0. In the lower part of Figure 7, the noise vectors that can be randomly set to 0 in this way are n ndis described. In the process shown in the lower part of FIG. 7, the above-described feature vector fva and the noise vector n nd are input into the image generation unit 16, and a generated image IMG_G(x and ’ is also denoted) is generated.

[0070] Then, as shown in the lower part of FIG. 7, the generated image x and ’ is input into the CNN of the feature extraction unit 12 again, and a feature vector fva nd ’ is generated by referring to the output of the CNN. The learning unit 17, as an example, · The noise vector n set to 0 nd so that the difference between the corresponding feature vector fva nd ’ and the feature vector fva becomes smaller, and · The noise vector n not set to 0 nd so that the difference between the corresponding feature vector fva nd ’ and the feature vector fva becomes larger learns each model (Embedder and CDiGAN) of the image generation unit 16. In other words, a loss function is configured so that the above learning can be performed. By performing such learning, it is guaranteed that only non-zero noise components cause a generated image by the noise vector. Also, through contrastive learning, feature disentanglement in visualization is guaranteed.

[0071] Thus, in the learning process by the information processing apparatus 1, the image generation unit 16 · Among the plurality of components included in the first feature vector FV1, at least any one of the activated components, and · The component corresponding to at least any one of the components in the shift vector (noise vector NV) generate the image IMG_G after setting them to 0 is included.

[0072] Furthermore, the learning unit 17 may perform a learning process to reduce the difference between the feature vectors fva and fva' described above. This ensures that only features with high activity are generated, thereby promoting the resolution of disentanglement between features. It also ensures feature consistency between the input image and the generated image.

[0073] Furthermore, the learning unit 17 may perform a learning process that references a loss function that includes constraints to reduce irrelevant differences in features between the training image x and the generated image x'. This prevents non-classifiable features that do not contribute to the classification process by the classification unit 13 from causing changes in the image (differences between the training image x and the generated image x').

[0074] Furthermore, the learning unit 17 may set a loss function so that the classification process by the classification unit 13 is executed appropriately. For example, if the number of classes to be classified is two or more, a loss function including the KL (Kullback-Leibler) loss between the activation features in the input image x and the activation features in the generated image x' may be used. Also, if the classification unit 13 performs regression analysis, the Mean Squared Error (MSE) may be used.

[0075] (Explanation Phase) The following describes the explanatory phase of the information processing device 1 with reference to Figures 8 to 10. As explained below, this explanatory phase includes classification processing or prediction processing by the classification unit 13, so the following explanation can also be considered as relating to the classification phase or prediction phase.

[0076] Figure 8 is a schematic diagram illustrating the processing in the explanatory phase of the information processing device 1. In this example, first, the target image IMG_T is acquired by the acquisition unit 11. The acquired target image IMG_T is supplied to the feature extraction unit 12 and the encoder 14. More specifically, the target image IMG_T is first input to the CNN provided by the feature extraction unit 12. This CNN is a model that has undergone the training process described above, and it extracts a predetermined number of high-level feature vectors (HLFs) from the target image IMG_T. In the example shown in Figure 8, the CNN extracts (generates) four high-level feature matrices with predetermined matrix sizes from the target image IMG_T.

[0077] The feature extraction unit 12 then generates a first feature vector FV1 from the high-level feature matrix HLF. The method for generating the first feature vector FV1 is as described above. In the example shown in Figure 8, as an example, the feature with the highest activation degree (largest value) is extracted from each of the four high-level feature matrices, and the first feature vector FV1 is generated with these four extracted features as components.

[0078] In this example as well, the noise generation unit 15 (Noise Net in Figure 8) generates a noise vector NV. However, in this example, at least one component of the noise vector NV generated by the noise generation unit 15 may be changed to provide suitable explainability to the user. For this reason, in this example (explanation phase), it is also preferable to refer to the noise vector NV as a shift vector, perturbation vector, or interpolation vector. Furthermore, in relation to the noise vector (shift vector) NV generation process in this example (explanation phase), it is preferable to keep the feature components that are not subject to shifting or interpolation constant. As an example, the components (subsamples) from the noise vector (shift vector) NV may be averaged, and the averaged components may be used as the values ​​of the interpolated vector components. Then, the magnitude of the interpolation to the interpolated vector component may be determined (confirmed) by changing the interpolated vector element. Thus, in this example (explanation phase), the averaged noise vector NV (ANV) is used as an example of a shift vector.

[0079] The first feature vector FV1 and the noise vector NV are then input to the embedding unit 161 (Embedder in Figure 8), which has undergone the learning process described above, and the Embedder generates the second feature vector FV2. The second feature vector FV2 is then input to the generation unit 162 (CDiGAN in Figure 8), which has undergone the learning process described above. The third feature vector FV3, generated by the encoder 14, which has undergone the learning process described above, is also input to the generation unit 162. The generation unit 162 then generates the image IMG_G by referencing the second feature vector FV2 and the third feature vector FV3. In this example, the image generation unit 16 may also be configured to generate a heatmap HM corresponding to the image IMG_G. The heatmap HM generation process will be described later. The generated image IMG_G and heatmap HM are visually presented to the user via the output information generation unit 18 and the display of the input / output unit 40.

[0080] In this example, as partially described above, the information processing device 1 is configured to change the value of at least one component (the "important element" in Figure 8) of the noise vector NV generated by the noise generation unit 15. For example, the input / output unit 40 of the information processing device 1 may be configured to accept user input regarding the value of at least one component of the noise vector NV, and the image generation unit 16 may generate a generated image IMG_G for each value of the component specified by the user. Alternatively, the image generation unit 16 may be configured to change the value of at least one component of the noise vector NV and generate a generated image IMG_G corresponding to each value.

[0081] The choice of which component of the noise vector NV can be modified is not limited to this example, but as an example, the configuration may allow modification of the component with the largest value among the multiple components of the noise vector NV. For example, if the largest value among the multiple components of the noise vector NV is 30, the configuration may allow modification of the value of that component from 20 to 40, and the image generation unit 16 may generate generated images IMG_G corresponding to each modified value.

[0082] In the noise vector NV generated by the noise generation unit 15 after the learning process described above, larger components contribute significantly to the classification or prediction processing by the classification unit 13. Therefore, components with relatively large values ​​are considered to correspond to relatively important elements. With the configuration of this example, by changing the noise vector NV, it is possible to present to the user the changes in these important elements in comparison with the changes in the generated image IMG_G, making it easy to show the user how each component in the feature vector contributes to the classification or prediction processing by the classification unit 13.

[0083] (Example of output information 1) Figure 9 shows a specific example 1 of the output information OUT generated by the output information generation unit 18 in this example. As described above, the image generation unit 16 changes the values ​​of components that have relatively large values ​​in the noise vector NV, and generates generated images IMG_G corresponding to each value. The series of generated images IMG_G thus generated are included in the output information OUT by the output information generation unit 18.

[0084] In the example in Figure 9, the first row from the top shows the series of generated images IMG_G produced in this manner. In Figure 9, "Interpolation" refers to the change in the value of the noise vector NV described above, and "Original" refers to the image generated by the image generation unit 16 when the noise vector NV is not changed.

[0085] Furthermore, as shown in the lower part of Figure 9, the output information OUT also includes information obtained by inputting each of the above-mentioned series of generated images IMG_G back into the feature extraction unit 12 or the classification unit 13. More specifically, the output information OUT includes, as shown in the lower left part of Figure 9, • Changes in the values ​​of the above components in the noise vector NV (interpolation), The degree of activation of the first feature vector FV1 obtained by inputting the generated image IMG_G corresponding to each of the above values ​​into the feature extraction unit 12 and The graph includes a representation of the correspondence between the two. Here, the degree of activation of the first feature vector FV1 refers, for example, to the degree of activation of the component in the first feature vector FV1 that corresponds to the component in the noise vector NV.

[0086] By including the above graph in the output information OUT, it is possible to clearly show the user how the activation level of the corresponding component in the feature vector changes when the above component in the noise vector NV is changed.

[0087] Furthermore, the output information OUT is as shown in the lower right of Figure 9, • Changes in the values ​​of the above components in the noise vector NV (interpolation), The generated image IMG_G corresponding to each of the above values ​​is input to the feature extraction unit 12, and the prediction result (Water Stress) obtained as the output of the classification unit 13 is... The document includes a graph showing the correspondence between the two.

[0088] By including the above graph in the output information OUT, it is possible to clearly show the user how the prediction results by the classification unit 13 change when the above components in the noise vector NV are changed.

[0089] Furthermore, the output information OUT may be configured to include a series of heat maps (HM) and a series of difference maps (DM), corresponding to the series of generated images IMG_G, as shown in the second and third rows from the top of Figure 9. Here, the difference map DM is: • When the noise vector NV is not changed, the image IMG_G(Original) generated by the image generation unit 16 is, • When the noise vector NV is changed, the image IMG_G generated by the image generation unit 16 This image shows the difference between the two, and is generated by the image generation unit 16 as an example.

[0090] On the other hand, Heatmap HM is, • The generated image IMG_G when Feature Activation is smaller (for example, the smallest case) is used as the reference image. • Uses a Gradient Integration algorithm (also called the Integrated Gradient algorithm) that references the above reference image and the generated image IMG_G where Feature Activation is set to a different value. This is the image (map) obtained by doing so. Here, Grad-CAM can be used as a concrete example of the Gradient Integration algorithm described above.

[0091] Thus, the output information OUT generated by the output information generation unit 18 includes: - Multiple images (a series of generated images IMG_G) generated by the image generation unit 16 by referencing each of several different shift vectors (noise vector NV), - One or more metrics (Feature Activation, Water Stress) obtained by referring to the output of the trained model (CNN of the feature extraction unit 12, FC of the classification unit 13) on which each of the aforementioned multiple images (a series of generated images IMG_G) is input. It includes.

[0092] By adopting this configuration, • Changes in key elements of the noise vector NV, • Changes in the generated image IMG_G, • Changes in the above indicators (Feature Activation, Water Stress) and Since the features can be presented to the user in a comparative manner, it is possible to clearly show the user how each component of the feature vector contributes to the classification or prediction processing performed by the classification unit 13.

[0093] (Example of output information 2) Figure 10 shows a specific example 2 of the output information OUT generated by the output information generation unit 18 in this example. This example of output information shows the output information OUT when the classification unit 13 determines plant diseases. In this example of output information as well, the image generation unit 16 generates generated images IMG_G corresponding to each value while changing the values ​​of components that have relatively large values ​​in the noise vector NV. Then, as shown in the first row from the top of Figure 10, the output information OUT includes a series of generated images IMG_G generated in this way.

[0094] Furthermore, as shown in the lower part of Figure 10, the output information OUT contains: • Changes in the values ​​of the above components in the noise vector NV (interpolation), The degree of activation of the first feature vector FV1 obtained by inputting the generated image IMG_G corresponding to each of the above values ​​into the feature extraction unit 12 and The document includes a graph showing the correspondence between the two.

[0095] Furthermore, the output information OUT may be configured to include a series of heat maps (HM) and a series of difference maps (DM), corresponding to the series of generated images IMG_G, as shown in the second and third rows from the top of Figure 10. Since heat maps and difference maps have been described above, a redundant explanation will be omitted.

[0096] (Comparison between the original image and the generated image when the noise vector NV is not changed) Figure 11 is a diagram illustrating the comparison between the original image (target image IMG_T) and the generated image IMG_G generated by the image generation unit 16 when the noise vector NV is not changed. More specifically, the graph on the left side of Figure 11, • The actual water stress associated with the original image (target image IMG_T), • When the noise vector NV is not changed, the classification unit 13 predicts the water stress (Generated Water Stress) by referring to the generated image IMG_G generated by the image generation unit 16. This shows a correlation. As can be seen from the graph, there is a high correlation between actual water stress and water stress predicted from generated images.

[0097] The graph on the right side of Figure 11 shows the results when using the image set (Plant Village). • Original image (target image IMG_T), • When the noise vector NV is not changed, the generated image IMG_G generated by the image generation unit 16 and This shows a correlation.

[0098] (Specific configuration example of image generation unit 16 and learning process example 1) Next, with reference to Figure 12, a specific configuration example of the image generation unit 16 and learning process example 1 will be described. As shown in Figure 12, the generation unit 162 of the image generation unit 16 includes, as an example, a first mapper 1621, a second mapper 1622, a third mapper 1623, a fourth mapper 1624, a first generation network 1625, and a second generation network 1626.

[0099] (First Mappa 1621, Second Mappa 1622) The first mapper 1621 and the second mapper 1622, in general terms, are noise z s The feature space W s This is a network for mapping to the noise z. s This refers to style noise z s It is sometimes referred to as the feature space W. s This refers to Style Space W s It is sometimes referred to as such.

[0100] The first mapper 1621 includes multiple fully connected layers (FCs) as shown in Figure 12. The first mapper 1621 receives style noise z input to the first mapper 1621. s From, SubW s Two feature quantities are generated in the (Sub-Ws) space. One of these two feature quantities is input to the noise generation unit (Noise Net) 15, and the other feature quantity is input directly to the second mapper 1622.

[0101] The second mapper 1622 also includes multiple fully-connected network layers (FCs), as shown in Figure 12. The second mapper 1622 is subW s From two features in the (Sub-Ws) space, the style space W s The feature quantity s is generated in the following: Here, the second mapper 1622 has, as shown in Figure 12, • Of the two feature quantities included in the concatenated second feature vector FV2 output by the embedder 161, one feature quantity is used with the other. • The features output by the first mapper 1621 and The above features are input. Here, the above features output from the Embedder 161 and input to the second mapper 1622 include, as an example, the contributions of style features and noise.

[0102] Style space W, generated by the second mapper 1622. s The feature quantities s in this process are input to the first generative network 1625 and the second generative network 1626, which will be described later, via processing by the transformation matrix A, as shown in Figure 12.

[0103] (Third Mappa 1623, Fourth Mappa 1624) The third mapper 1623 and the fourth mapper 1624, in general terms, are noise z c The feature space W cThis is a network for mapping to the noise z. c This refers to content noise z c It is sometimes referred to as the feature space W. c This refers to the content space W c It is sometimes referred to as such.

[0104] The third mapper 1623 includes multiple fully-connected layers (FC) as shown in Figure 12. The third mapper 1623 receives content noise z input to the third mapper 1623. c From, SubW c Two feature quantities are generated in the (Sub-Wc) space. One of these two feature quantities is input to the noise generation unit (Noise Net) 15, and the other feature quantity is input directly to the fourth mapper 1624.

[0105] The fourth mapper 1624 also includes multiple fully-connected network layers (FCs), as shown in Figure 12. The fourth mapper 1624 is subW c From two features in the (Sub-Wc) space, the content space W c The feature c is generated in the following: Here, the fourth mapper 1624 has, as shown in Figure 12, • Of the two feature quantities included in the concatenated second feature vector FV2 output by the embedder 161, the other feature quantity and • The features output by the third mapper 1623 and The above features are input. Here, the above features output from the Embedder 161 and input to the fourth mapper 1624 include, as an example, the contribution of content features and noise.

[0106] Content space W generated by the fourth mapper 1624 cThe feature c in this process is input to the first generative network 1625 and the second generative network 1626, which will be described later, via a process that includes an attention map M, as shown in Figure 12.

[0107] (First generative network 1625, second generative network 1626) The first generative network 1625 consists of a constant tensor (Const), a DAT layer, an AdaIN layer, a Conv layer, another DAT layer, and another AdaIN layer, in that order. Here, the constant tensor (Const) is, for example, a 4x4x512 component constant tensor to be learned (pre-trained), and is the tensor input to the DAT layer. The DAT layer is a layer that performs diagonal attention processing, the AdaIN layer is a layer that performs adaptive instance normalization, and the Conv layer is a layer that performs convolution.

[0108] As shown in Figure 12, the two DAT layers of the first generation network 1625 contain the content space W generated by the fourth mapper 1624. c The feature c in is input via a process that includes an attention map M. Also, as shown in Figure 12, the two AdaIN layers of the first generative network 1625 are input by the style space W generated by the second mapper 1622. s The feature vector s is input via processing by the transformation matrix A. The output from the first generative network 1625 is input to the second generative network 1626.

[0109] The second generative network 1626 is composed of layers in the following order, as shown in Figure 12: Upsample layer, Conv layer, DAT layer, AdaIN layer, Conv layer, DAT layer, and AdaIN layer. The Upsample layer is the layer that performs upsampling, and the output from the first generative network 1625 is input to it. The Conv layer, DAT layer, and AdaIN layer have been explained in the description of the first generative network 1625, so a redundant explanation will be omitted.

[0110] The second generative network 1626 outputs the output image ING_G (image x' in Figure 12). Then, as described above, the learning unit 17 refers to this output image x' and trains at least one of the models used by the feature extraction unit 12, the classification unit 13, the noise generation unit 15, and the image generation unit 16.

[0111] (Specific configuration example of image generation unit 16 and learning process example 2) Next, with reference to Figure 13, a specific configuration example of the image generation unit 16 and learning process example 2 will be described. The configuration of the generation unit 162 included in the image generation unit 16 has been described above, so a redundant explanation will be omitted.

[0112] In this example, • The first mapper 1621 outputs subW s Of the two features in the (Sub-Ws) space, the feature input to the second mapper 1622 is, • The third mapper 1623 outputs subW c Of the two features in the (Sub-Wc) space, the feature input to the fourth mapper 1624 is The encoder 14 is trained by referring to this. More specifically, The difference between one of the two feature quantities output by the encoder 14 and the above feature quantity output by the first mapper 1621, and The difference between one of the two feature quantities output by the encoder 14 and the above feature quantity output by the third mapper 1623. The parameters of encoder 14 are updated so that the value becomes smaller. In other words, the parameters of encoder 14 are updated so that the output of encoder 14 approaches the above-mentioned features output by the first mapper 1621 and the above-mentioned features output by the third mapper 1623. As a result, encoder 14 generates a third feature vector FV3 that does not contribute to the classification or prediction process using the trained model CNN by encoding the training image IMG_L or the target image IMG_T. In other words, encoder 14 encodes information that does not contribute to the classification process using the trained model (CNN).

[0113] By training the encoder 14 in this manner, non-classifiable features that do not contribute to the classification process performed by the classification unit 13 can be suitably separated from classifiable features that do contribute to the classification process.

[0114] (Explanation of comparison with conventional technology and the effects of the information processing device 1, etc.) The following sections will provide further explanations regarding the comparison with conventional technologies, as well as the configuration and effects of the information processing device 1.

[0115] (introduction) While several methods for explainable AI (XAI) have been known, all of them have limitations. For example, the heatmap method shows where a specific feature (feature quantity) is located (which region it resides in) within a target image, but it cannot show which attribute contributes to that feature within that region.

[0116] On the other hand, counterfactual methods have been proposed as techniques for understanding features. These methods involve investigating the behavior of features while changing their attributes. Changing the attributes of an image is not easy, as there are many possible changes, and it is necessary to find out what kind of shifts (perturbations, changes) are meaningful.

[0117] Numerous attempts have been made to find meaningful shifts (perturbations). In this application, the inventors have focused on a generation algorithm and constructed an information processing device 1. The generation algorithm can model the distribution of data, and by changing, interpolating, and interpolating the latent space (feature space) vectors, it is possible to visualize which factors (attributes) represent the data meaningfully.

[0118] According to the Information Processing Device 1, the behavior of the most important features can be identified and isolated in practical applications such as feature engineering. Furthermore, the Information Processing Device 1 provides a framework that makes high-level features of general classifiers user-friendly by using counterfactual explanations.

[0119] (Conventional method) In recent years, a generative algorithm called StyleGAN has become known. StyleGAN can generate realistic images within a given image distribution. One known method using StyleGAN involves encoding an image into a vector and assigning a class output to that vector to generate a latent vector for StyleGAN. StyleGAN is then trained to generate an image similar to the original in both reconstruction and class activation. In the test stage, the components of the latent vector are perturbed (interpolated) to determine which element has the greatest effect in class activation.

[0120] Another method using StyleGAN involves directly mapping the high-level features output by the classifier into StyleGAN's W-space, thereby using StyleGAN to explain the features. In this method, a perturbation is applied to specific activation features, and the changes in the image are visualized.

[0121] However, the conventional approach described above has a problem in that it does not work as expected for several reasons.

[0122] 1. High-level features are highly filtered versions of the original image and may behave like a binarized output that does not contain information from the original image. However, the information from the original image is necessary to reconstruct meaningful variations in the features.

[0123] 2. The conventional approaches described above do not provide a method for separating latent features (latent style features) that are not important in classification.

[0124] 3. StyleGAN uses noise injection to represent image content, but this noise injection can interfere with explainability. If the classifier uses the content of the image to be classified, that content may not be represented by the basic StyleGAN explanation. Furthermore, randomness can cause entanglement of multiple features, where different noise injections produce different explanations.

[0125] 4. The high-level features of a classifier are highly entangled, and entangled features are very likely to appear together. This phenomenon can occur especially when the classifier is not sufficiently trained. Therefore, in order to explain the classifier, it must be sufficiently trained. 5. We can assume that a good representation exists in the classifier's features only when there is a high degree of activation in the features. Since highly activated features do not occur often, we can assume that feature disentanglement has occurred when high activation is present.

[0126] 6. Problems can arise when only highly impactful features are targeted without a logical way of linking the CNN's feature map with the feature changes performed by StyleGAN.

[0127] (Configuration adopted in this embodiment) Based on the above-described concerns, the inventors have constructed the information processing device 1 described in the above-described embodiment. The following explanation may include some overlap with what has already been explained, but will be presented again under the same concerns.

[0128] (Learning Phase) First, as explained using Figures 2 and 4, the information processing device 1 employs a conditional approach. This is to resolve problem 1 mentioned above. In this approach, the information processing device 1 uses conditional variables. Specifically, a set of noise variables corresponding to each high-level feature obtained by the classification unit 13 is used.

[0129] These noise variables (noise features) represent the variability in the activation of each high-level feature and represent the features related to the high-level features as determined by the classification unit 13.

[0130] Furthermore, the information processing device 1 trained the latent space so that non-classifiable features, which are not important in classification, become separated features. This is achieved by the encoder 14 shown in Figure 4. As mentioned above, the encoder 14 is trained without using a loss function related to the classification unit 13. Also, as mentioned above, only the most activated features were used as conditional input to the image generation unit 16 (equivalent to StyleGAN).

[0131] (Testing phase (prediction phase, explanation phase)) In the test phase (prediction phase, explanation phase), as explained with reference to Figures 8 to 10, the image x (image IMG_T) is input to the CNN and encoder 14 of the feature extraction unit 12. The CNN outputs high-level features. From these high-level features, the user selects a feature of interest, and the information processing device 1 generates the generated image x' while interpolating and changing the value of the noise vector corresponding to that feature.

[0132] As described above, the generated image x' can be used as input to the CNN to visualize which specific feature changes are related to the activation of features and the activation in classification. Furthermore, the information processing device 1 encourages changes in feature activation associated with high activation. This ensures that other features that are appropriate (relevant) to other high-level features remain constant (without activation).

[0133] (architecture) As explained using Figures 12 and 13, the image generation unit 16 in the information processing device 1 is configured by replacing the conventionally used StyleGAN configuration with a DiagonalGAN configuration. In this configuration, the noise-related components are replaced with Diagonal Spatial Attention (DAT) layers. This configuration eliminates the randomness introduced in the content-related components of StyleGAN. Furthermore, this content contains classifiable information that is important for classification.

[0134] (Loss function) Regarding the loss function, as partially described above with reference to Figure 7, a loss function is employed that promotes the resolution of feature disentanglement and the resolution of feature disentanglement shifted by noise variables (disentanglement between features conditioned (or perturbed) depending on noise variables) (related to problem 4 above). When features are entangled, changing one high-level feature causes other high-level features related to that feature to also change in the target image. The loss function in the information processing device 1 is configured to suppress such phenomena. More specifically, as explained with reference to Figure 7, in the information processing device 1, 4-1. Promote the resolution of feature entanglement, 4-2. Promote the resolution of entanglement of noise variables, 4-3. Promote the consistency of features, 4-4. Features that do not contribute to the classification process by the classification unit 13 (non-classifiable) are prevented from causing changes in the image. 4-5. To ensure that the classification process by the classification unit 13 is executed appropriately. The following loss function is used. Furthermore, regarding entanglement resolution, 4-6. The information processing device 1 is configured such that the difference between the vector (also called the concatenated vector) of the two feature quantities (two concatenated feature quantities) output by the Embedder 162 in Figure 12 and the corresponding noise vector is minimized, which also contributes to the entanglement resolution mentioned above. The concatenated vector output by the Embedder 162 is used for the shift (perturbation) and visualization mentioned above, and represents independent feature quantities generated in the classification process. These independent feature quantities do not need to correspond to the feature map (high-level feature quantities) of the final layer of the CNN; they are independent.

[0135] Furthermore, regarding the learning of non-classifiable features that do not contribute to the classification process by the classification unit 13, 4-7. As explained with reference to Figure 13, etc., non-classifiable features are learned without referring to the loss from classifiable features. More specifically, learning is performed so that the Mean Squared Error (MSE) between the third feature vector (ev) output by the encoder 14 shown in Figure 13 and the feature vector ev' generated by the generator 162 becomes smaller. As a result, non-classifiable features that do not contribute to the classification process are learned in the sub-W space (sub-W s Space, SubW c A vector of features that changes with space will be encoded.

[0136] Then, in the test phase (prediction phase, explanation phase), the feature vector ev shown in Figure 13 is input as feature vector ev' to the second mapper 1622 and the fourth mapper 1624 provided in the generation unit 162.

[0137] (Generating a heatmap) Many heatmap methods use a reference image (base image) to generate the heatmap. In the information processing device 1, as described above... • Adopts the GradientOs method • Using the image with the lowest activation level for a given high-level feature as the reference image (base image), • Generate heatmaps of other images This is the structure. As an example, in the example shown in Figure 13, the image in the first row of the column where the Difference Map is outlined in white in the third row from the top corresponds to the above reference image (base image).

[0138] (Identifying important features) As described above, the information processing device 1 generates image x' (IMG_G) from the target image x (IMG_T) and applies the Grad-Cam algorithm to the generated image x'. Then, by generating a heatmap for the high-level feature map, the most important features are selected and the feature with the highest contribution (maximum heat feature) is identified. The information processing device 1 can perform this process for all datasets and determine the most appropriate feature (best feature). The control unit 10 of the information processing device 1 can be configured to perform the processing related to the selection, identification, and determination of the features described above.

[0139] By using the generated image x' instead of the target image x, it is possible to avoid creating features with low activation levels. Using the generated image x' generated by the information processing device 1, it was shown that it is possible to reconstruct the correct activation using only features with high activation levels, as shown in Figure 11. In other words, the most important features identified by the information processing device 1 were confirmed to be reasonable features through the visualization provided by the information processing device 1.

[0140] Thus, the information processing device 1 provides a new method for identifying (discovering) important features. More specifically, • Use only the high-value features to reconstruct the features (in other words, generate image x'(IMG_G)), • Apply Grad-Cam to the reconstruction result (image x') and generate a heatmap using only the high-featured features. This method is provided. The image generation unit 16 generates a heatmap by referring to the image x'(IMG_G) it generated. It can also be expressed as follows.

[0141] Furthermore, as described above, in the information processing device 1, • Visualize important features by changing the area of ​​interest in the classification process performed by the classification unit 13. This configuration is adopted. This allows for the effective execution of feature engineering. Non-patent document 2 focuses on visualization and makes little mention of feature engineering. On the other hand, as mentioned above, information processing device 1 uses a unique loss function that promotes disentanglement, making it highly suitable for feature engineering. The inventors have confirmed that changing an image actually changes the corresponding high-level features, an aspect not seen in previous research.

[0142] Thus, by constructing an architecture in which learning and image generation are independent, the information processing device 1 can, for example, be trained using a superior external classifier (such as ResNet). Furthermore, even if the learning accuracy is increased, the explanatory accuracy does not decrease, and it becomes possible to visualize more detailed reasoning. It also becomes possible to analyze smaller parts of an image. In addition, for example, users such as farmers can visually understand the reasoning behind the diagnosis, enabling them to make appropriate judgments based on the diagnosis results.

[0143] [Examples of implementation using software] The functions of the information processing device 1 (hereinafter referred to as "the device") are programs that cause the device to function as a computer, and these programs can be realized by programs that cause each control block of the device (particularly each part included in the control unit 10) to function as a computer.

[0144] In this case, the device includes a computer having at least one control device (e.g., a processor) and at least one storage device (e.g., memory) as hardware for executing the program. By executing the program using this control device and storage device, the functions described in each of the embodiments are realized.

[0145] The above program may be recorded on one or more computer-readable recording media, not temporary ones. These recording media may or may not be provided by the above device. In the latter case, the program may be supplied to the above device via any wired or wireless transmission medium.

[0146] Furthermore, some or all of the functions of each of the above control blocks can also be realized by logic circuits. For example, an integrated circuit in which logic circuits functioning as each of the above control blocks are formed is also included in the scope of the present invention. In addition, it is also possible to realize the functions of each of the above control blocks by, for example, a quantum computer.

[0147] (summary) This specification describes at least the following configurations:

[0148] (Configuration A1) The acquisition unit acquires the target image, An image generation unit generates an image by referring to a feature vector obtained by referring to the output of a trained model into which the target image is input, and a shift vector having a non-zero component as a component corresponding to at least one of the activated components among the multiple components included in the feature vector. An information processing device equipped with the following features.

[0149] (Configuration A2) The encoder further comprises the input of the aforementioned target image. The image generation unit further references the output of the encoder to generate the image. The information processing device described in configuration A1.

[0150] (Configuration A3) The encoder generates feature vectors that do not contribute to the classification process using the trained model by encoding the target image. The information processing device described in configuration A2.

[0151] (Configuration A4) The image generation unit, An embedding model into which the feature vector and the shift vector are input, The output of the embedded model and the output of the encoder are input to a generating model that outputs the image. It is equipped with The information processing device described in configuration A2.

[0152] (Configuration A5) The image generated by the image generation unit is input to the trained model, and the output information generation unit generates output information by referring to the output of the trained model. Furthermore, it is equipped with Information processing device as described in Configuration A4.

[0153] (Configuration A6) The output information includes: Multiple images generated by the image generation unit by referring to each of the multiple shift vectors which are different from each other, Each of the aforementioned plurality of images is input to one or more indices obtained by referring to the output of the trained model, The information processing device described in configuration A5 includes the following:

[0154] (Configuration A7) The one or more of the above indicators include the output of a predictive model to which the output of the trained model is input. The information processing device described in configuration A6.

[0155] (Configuration A8) The output information includes a heatmap generated by referencing the output of the trained model to which the image generated by the image generation unit was input. The information processing device described in configuration A7.

[0156] (Configuration A9) The one or more of the above indicators include the degree of activation in the output of the trained model, The heatmap is generated using the image with the lowest degree of activation among the multiple images as the reference image. The information processing device described in configuration A8.

[0157] (Configuration A10) A learning unit that trains the image generation unit by referring to the images generated by the image generation unit. It also has An information processing device as described in any one of items A1 to A9.

[0158] (Configuration A11) An acquisition unit that acquires training images, An image generation unit generates an image by referring to a feature vector obtained by referring to the output of a trained model into which the aforementioned training image is input, and a shift vector having a non-zero component as a component corresponding to at least one of the activated components among the multiple components included in the feature vector. A learning unit that teaches the image generation unit by referring to the images generated by the image generation unit. An information processing device equipped with the following features.

[0159] (Configuration A12) The encoder further comprises the aforementioned training image being input. The image generation unit further references the output of the encoder to generate the image. The information processing device described in configuration A11.

[0160] (Configuration A13) The image generation unit, An embedding model into which the feature vector and the shift vector are input, The output of the embedded model and the output of the encoder are input to a generating model that outputs the image. Equipped with, The learning unit trains the encoder independently of the embedded model. The information processing device described in configuration A12.

[0161] (Configuration A14) The image generation unit further includes a noise generation model for generating the shift vector. An information processing device as described in any one of items A11 to A13.

[0162] (Composition A15) The image generation unit, Among the multiple components included in the feature vector, at least one of the multiple activated components, In the shift vector, the component corresponding to at least one of the components and The image is generated after setting the value to 0. An information processing device as described in any one of items A11 to A13.

[0163] (Configuration A16) The acquisition step for obtaining the target image, Image generation step: An image is generated by referencing a feature vector obtained by referencing the output of a trained model into which the target image is input, and a shift vector having a non-zero component as a component corresponding to at least one of the activated components among the multiple components included in the feature vector. An information processing method that includes this.

[0164] (Configuration A17) The acquisition steps for obtaining training images, Image generation step: An image generation step in which an image is generated by an image generation model by referring to a feature vector obtained by referring to the output of a trained model into which the aforementioned training image is input, and a shift vector having a non-zero component as a component corresponding to at least one of the activated components among the multiple components included in the feature vector, A learning step in which the image generation model is trained by referring to the image generated in the image generation step. An information processing device that includes this.

[0165] (Configuration A18) A program for causing a computer to function as an information processing device as described in configuration A1, wherein the program causes the computer to function as the acquisition unit and the image generation unit.

[0166] (Configuration A19) A program for causing a computer to function as an information processing device as described in configuration A11, wherein the program causes the computer to function as the acquisition unit, the image generation unit, and the learning unit.

[0167] (Configuration A20) A computer-readable recording medium on which the program described in configuration A18 is recorded.

[0168] (Configuration A21) A computer-readable recording medium on which the program described in Configuration A19 is recorded.

[0169] The present invention is not limited to the embodiments described above, and various modifications are possible within the scope of the claims. Embodiments obtained by appropriately combining the technical means disclosed in different embodiments are also included in the technical scope of the present invention. [Explanation of Symbols]

[0170] 1. Information Processing Device 11...Acquisition part 12 ···Feature extraction section 13...Classification section 14 ··· encoder 15. Noise generation section 16 ···Image generation unit 161 ···Embedded section 162...Generation part 17 ···Learning Department 18 ···Output Image Generation Unit

Claims

1. The acquisition unit acquires the target image, An image generation unit generates an image by referring to a feature vector obtained by referring to the output of a trained model into which the target image is input, and a shift vector having a non-zero component as a component corresponding to at least one of the activated components among the multiple components included in the feature vector. An information processing device equipped with the following features.

2. The encoder further comprises the input of the aforementioned target image. The image generation unit further references the output of the encoder to generate the image. The information processing apparatus according to claim 1.

3. The encoder generates feature vectors that do not contribute to the classification process using the trained model by encoding the target image. The information processing apparatus according to claim 2.

4. The image generation unit, An embedding model into which the feature vector and the shift vector are input, The output of the embedded model and the output of the encoder are input to a generating model that outputs the image. It is equipped with The information processing apparatus according to claim 2.

5. The image generated by the image generation unit is input to the trained model, and the output information generation unit generates output information by referring to the output of the trained model. Furthermore, it is equipped with The information processing apparatus according to claim 3.

6. The output information includes: Multiple images generated by the image generation unit by referring to each of the multiple shift vectors which are different from each other, Each of the aforementioned plurality of images is an input to the output of the trained model, and one or more indices are obtained by referring to the output of the trained model. The information processing apparatus according to claim 5, which includes the following:

7. The one or more of the above indicators include the output of a predictive model to which the output of the trained model is input. The information processing apparatus according to claim 6.

8. The output information includes a heatmap generated by referencing the output of the trained model to which the image generated by the image generation unit was input. The information processing apparatus according to claim 7.

9. The one or more of the above indicators include the degree of activation in the output of the trained model, The heatmap is generated using the image with the lowest degree of activation among the multiple images as the reference image. The information processing apparatus according to claim 8.

10. A learning unit that trains the image generation unit by referring to the images generated by the image generation unit. It also has An information processing apparatus according to any one of claims 1 to 9.

11. An acquisition unit that acquires training images, An image generation unit generates an image by referring to a feature vector obtained by referring to the output of a trained model into which the aforementioned training image is input, and a shift vector having a non-zero component as a component corresponding to at least one of the activated components among the multiple components included in the feature vector. A learning unit that teaches the image generation unit by referring to the images generated by the image generation unit. An information processing device equipped with the following features.

12. The encoder further comprises the aforementioned training image being input. The image generation unit further references the output of the encoder to generate the image. The information processing apparatus according to claim 11.

13. The image generation unit, An embedding model into which the feature vector and the shift vector are input, The output of the embedded model and the output of the encoder are input to a generating model that outputs the image. Equipped with, The learning unit trains the encoder independently of the embedded model. The information processing apparatus according to claim 12.

14. The image generation unit further includes a noise generation model for generating the shift vector. The information processing apparatus according to any one of claims 11 to 13.

15. The image generation unit, Among the multiple components included in the feature vector, at least one of the multiple activated components, In the shift vector, the component corresponding to at least one of the components and The image is generated after setting the value to 0. The information processing apparatus according to any one of claims 11 to 13.

16. The acquisition step for obtaining the target image, Image generation step: An image is generated by referencing a feature vector obtained by referencing the output of a trained model into which the target image is input, and a shift vector having a non-zero component as a component corresponding to at least one of the activated components among the multiple components included in the feature vector. An information processing method that includes this.

17. The acquisition steps for obtaining training images, Image generation step: An image generation step in which an image is generated by an image generation model by referring to a feature vector obtained by referring to the output of a trained model into which the aforementioned training image is input, and a shift vector having a non-zero component as a component corresponding to at least one of the activated components among the multiple components included in the feature vector, A learning step in which the image generation model is trained by referring to the image generated in the image generation step. An information processing method that includes this.

18. A program for causing a computer to function as an information processing device according to claim 1, wherein the program causes the computer to function as the acquisition unit and the image generation unit.

19. A program for causing a computer to function as an information processing device according to claim 11, wherein the computer functions as the acquisition unit, the image generation unit, and the learning unit.

20. A computer-readable recording medium having the program described in claim 18 recorded on it.

21. A computer-readable recording medium on which the program described in claim 19 is recorded.