Information processing device, learning method, and program

ViLAaD improves source-free domain adaptation by using a vision-language model to enhance prediction consistency and distribution, addressing the performance limitations of conventional methods.

JP2026078888APending Publication Date: 2026-05-15NTT DOCOMO BUSINESS INC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
NTT DOCOMO BUSINESS INC
Filing Date
2024-10-29
Publication Date
2026-05-15

Smart Images

  • Figure 2026078888000001_ABST
    Figure 2026078888000001_ABST
Patent Text Reader

Abstract

Improve performance in source-free domain adaptation. [Solution] An information processing device for training a neural network model, wherein the model is a model pre-trained on a source dataset, and the model acquires a first feature, a second feature adjacent to the first feature, and a third feature not adjacent to the first feature from a target dataset using the model, and the device includes a learning unit that trains the model such that the similarity between a first prediction output by the model using the data of the first feature and a second prediction output by another model using the data of the second feature increases, and the similarity between the first prediction output by the model using the data of the first feature and a third prediction output by the other model using the data of the third feature decreases.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] This invention relates to a technique for domain adaptation of machine learning models. [Background technology]

[0002] It is known that machine learning models trained using supervised learning suffer from performance degradation when the target domain differs from the source domain used for training. To address this problem, a task called Domain Adaptation (DA) is known, which aims to improve the performance (e.g., improve classification performance) of a model trained on a labeled source dataset of a certain domain on an unlabeled target dataset of a different domain.

[0003] In particular, in recent years, "source-free domain adaptation (SFDA)," which aims to adapt a trained model to a target dataset in a different domain without accessing the source dataset used for pre-training, has attracted attention. This method is more practical because it assumes that access to the source dataset is not possible due to privacy concerns or other reasons.

[0004] Among the various approaches to SFDA, "Attracting and Dispersing (AaD)" (Non-Patent Document 1) is known as a simple and effective SFDA algorithm. [Prior art documents] [Non-patent literature]

[0005] [Non-Patent Document 1] Shiqi Yang, Yaxing Wang, Kai Wang, Shangling Jui, and Joost van de Weijer. Attracting and Dispersing: A Simple Approach for Source-free Domain Adaptation. In NeurIPS, 2022. [Non-Patent Document 2] Song Tang, Wenxin Su, Mao Ye, and Xiatian Zhu. Source-Free Domain Adaptation with Frozen Multimodal Foundation Model. In CVPR, 2024. [Overview of the project] [Problems that the invention aims to solve]

[0006] However, the conventional technologies described above have the drawback of not having sufficient performance.

[0007] This invention has been made in view of the above points, and aims to provide a technology for improving performance in source-free domain adaptation. [Means for solving the problem]

[0008] According to the disclosed technology, an information processing device for training a neural network model, The aforementioned model is a model that has been pre-trained on the source dataset. A learning unit that obtains a first feature, a second feature adjacent to the first feature, and a third feature not adjacent to the first feature from the target dataset using the model, and trains the model so that the similarity between the first prediction output by the model using the data of the first feature and the second prediction output by the other model using the data of the second feature increases, and the similarity between the first prediction output by the model using the data of the first feature and the third prediction output by the other model using the data of the third feature decreases. An information processing device equipped with [this feature] is provided. [Effects of the Invention]

[0009] According to the disclosed technology, techniques are provided to improve performance in source-free domain adaptation. [Brief explanation of the drawing]

[0010] [Figure 1] This is a diagram illustrating the SFDA (Survey, Food and Drug Administration) image. [Figure 2] This diagram shows an example configuration of the information processing device 100 (learning device). [Figure 3] This is a flowchart illustrating the operation of the information processing device 100. [Figure 4] This figure shows an example configuration of the information processing device 200 (inference device). [Figure 5] This is a flowchart illustrating the operation of the information processing device 200. [Figure 6] This diagram shows an overview of AaD and the proposed method. [Figure 7] This figure shows algorithm 1 of the proposed method (ViLAaD). [Figure 8] This figure shows algorithm 2 of the proposed method (ViLAaD++). [Figure 9] This figure shows an example of the device's hardware configuration. [Modes for carrying out the invention]

[0011] Hereinafter, embodiments of the present invention (this embodiment) will be described with reference to the drawings. The embodiments described below are merely examples, and the embodiments to which the present invention is applied are not limited to the embodiments described below.

[0012] The following describes techniques for improving performance in the aforementioned source-free domain adaptation. Figure 1 shows an image of source-free domain adaptation. In the example in Figure 1, it is shown that training a model (image classifier) ​​trained on a labeled source dataset with the domain "Real World" using SFDA (which can also be called transfer learning) improves classification performance on the target dataset (domain "Art").

[0013] (Example of device configuration) The following describes an example of the device configuration in this embodiment. In this embodiment, separate devices are used for the learning phase and the inference phase, but the same device may be used for both the learning phase and the inference phase.

[0014] <Equipment configuration for the learning phase> Figure 2 shows an example configuration of the information processing device 100 that performs learning. The information processing device 100 that performs learning may also be called a learning device. Here, "learning" refers to applying source-free domain adaptation to a pre-trained model. Here, "learning" may also be called "transfer learning".

[0015] As shown in Figure 2, the information processing device 100 comprises an input unit 110, a learning unit 120, and an output unit 130. The learning unit 120 holds the model 300 to be learned. The model 300 is a neural network model. For example, a ResNet-50 pre-trained on ImageNet can be used as the model 300.

[0016] The operation of the information processing device 100 will be explained according to the steps in the flowchart in Figure 3. In S101, training data is input from the input unit 110. The training data is an unlabeled target dataset.

[0017] In S102, the learning unit 120 trains the model 300. The training is performed by sequentially updating the parameters of the model 300 so that the objective function, which will be described later, is minimized. Details of the training method will be described later. When training is complete, in S103, the output unit 130 outputs the trained model 300 (specifically, the model parameters, hyperparameters, etc.). The trained model 300 is used in the inference phase.

[0018] <Instrument configuration for the inference phase> Figure 4 shows an example configuration of the information processing device 200 that performs inference. The information processing device 200 that performs inference may also be called an inference device.

[0019] As shown in Figure 4, the information processing device 200 comprises an input unit 210, an inference unit 220, and an output unit 230. The inference unit 220 holds a trained model 300. Alternatively, the inference unit 220 can be considered as the model 300 itself. The trained model 300 is the model 300 trained by the information processing device 100 described above.

[0020] The operation of the information processing device 200 will be explained according to the steps in the flowchart in Figure 5. In S201, input data (e.g., an image) is input from the input unit 210. In S202, the inference unit 220 inputs the input data to the model 300 and obtains output data from the model 300. The output data is passed to the output unit 230. In S203, the output unit 230 outputs the output data.

[0021] For example, if model 300 is a model that performs the task of classifying images, then images are input to model 300, and the classification results are output from model 300.

[0022] (Details of the learning method) The following describes in detail the learning method (referred to as the proposed method) executed by the learning unit 120.

[0023] In the proposed method, first, similar to the settings in a standard SFDA, the learning unit 120 is given Cs A pre-trained model θ learned from a source dataset with a single class s (corresponding to model 300), and an unlabeled target dataset D t ={x t i} N_t i=1 is given. Here, N t is the number of samples. The number of classes C t of the target dataset is equal to C s . This problem setting is called "closed-set SFDA". The purpose of SFDA is to adapt the source model θ s to the target domain without accessing the source dataset.

[0024] Model θ s is assumed to be divided into two parts: a feature extractor f and a classifier g. The output of the feature extractor f is the feature z i =f(x i )∈R h , where h is the dimensional size of the feature. The output of the classifier g is p i =σ(g(z i ))∈R C , where σ is the softmax function.

[0025] In this embodiment, the learning unit 120 further has a vision-language (ViL: Vision-Language) model θ v . Although various ViL models can be used, in this embodiment, CLIP is used as an example. For example, by inputting an image and a prompt into CLIP, CLIP outputs a classification result.

[0026] By using an appropriate prompt r (e.g., "a photo of a [CLS]", [CLS] is set to the class of the target dataset), the softmax of the cosine similarity between the outputs of the image encoder and the text encoder of CLIP is calculated, and the output q i ∈R C of the ViL classifier can be obtained.

[0027] Note that the pre-trained model θ s Using a visual-language model as an alternative to the visual-language model is one example. Other models besides the visual-language model may also be used.

[0028] This document first provides a brief explanation of "Attracting and Dispersing (AaD)" as disclosed in Non-Patent Document 1. Following this, it describes "ViLAaD," a proposed method that enhances AaD using a ViL model. Furthermore, it proposes incorporating ViLAaD into a joint optimization framework for learnable ViL prompts and target models.

[0029] (Regarding AaD) Based on the assumption that a model pre-trained on the source dataset serves as an appropriate initialization for target domain adaptation, AaD addresses the SFDA problem by "attracting" predictions for data with closely spaced features and "dispersing" predictions for data with widely spaced features.

[0030] First, feature z i Features j The probability of obtaining a prediction similar to this is a ij Define a ij It is expressed by the following formula.

[0031]

number

[0032]

number

[0033]

number

[0034]

number

[0035] (Proposed method: ViLAaD (AaD enhanced by ViL)) Next, we will explain our proposed method, ViLAaD. The proposed method enhances the concept of AaD using a ViL model. For this purpose, we make a new assumption that the ViL model can also function as a suitable (or better) initializer for target domain adaptation. This assumption intuitively suggests that predictions of the target model in its local neighborhood within the feature space should be similar to the corresponding predictions made by the ViL model.

[0036] To formalize this intuition, first, b ij This defines the feature z of the target model. i Prediction on data with (i.e., p) i ) is a feature of the ViL model z j Prediction on data with (i.e., q) j This is a probability similar to ) and is defined by the following formula.

[0037]

number

[0038]

number

[0039]

number

[0040]

number

[0041] Figure 6(a) shows the concept of AaD, and Figure 6(b) shows the concept of the proposed method. As mentioned above, AaD trains the target model so that the predictions made by the target model become similar between data with similar features, whereas the proposed method trains the target model so that the predictions made by the target model and the predictions made by the ViL model become similar between data with similar features.

[0042] In other words, the learning unit 120 obtains a first feature, a second feature adjacent to the first feature, and a third feature not adjacent to the first feature from the target dataset using the model, and learns the model such that the similarity between the first prediction output by the model using the data of the first feature and the second prediction output by the other model using the data of the second feature increases, and the similarity between the first prediction output by the model using the data of the first feature and the third prediction output by the other model using the data of the third feature decreases.

[0043] (Algorithm of the proposed method (ViLAaD)) Figure 7 shows Algorithm 1, which is the algorithm of the proposed method (ViLAaD). Algorithm 1 corresponds to the operation procedure of the learning unit 120. In Algorithm 1, three memory banks are used to promote efficient learning, similar to AaD (Non-Patent Literature 1), etc. In other words, the learning unit 120 is equipped with three memory banks.

[0044] B z and Bp Each stores the features and predictions generated by the domain-adapted model, and B q This stores the predictions generated by the ViL model. z and B p This is updated during learning, but B q This will not be updated.

[0045] Algorithm 1 will be explained as the operation of the learning unit 120. The line numbers will also be explained as step numbers.

[0046] The learning unit 120 contains a pre-trained model θ. s Target dataset D t , ViL model θ v The prompt r, epoch number T, and number of iterations per epoch M are input. The learning unit 120 outputs the adapted (learned) target model θ. t The following will be output.

[0047] In step 1, the learning unit 120 is θ t =θ s Let r = 'a photo of a [CLS]'. In step 2, the learning unit 120 is memory bank B z B p B q The learning unit 120 constructs the following. The learning unit 120 executes steps 3 to 9 T times. At each t, ​​the learning unit 120 executes steps 4 to 8 M times.

[0048] In step 5, D t Sample a batch from and model θ t Using this method, features and predictions are calculated from the data, and B is applied to the calculated features and predictions respectively. z and B p Update.

[0049] In step 6, the learning unit 120 processes each feature z in the batch. i In contrast, B z From K-neighbor C i The learning unit 120 obtains θ, which corresponds to the relevant features.t and θ v Let each prediction (i.e., p and q) be B p and B q Obtain from.

[0050] In step 7, the learning unit 120 minimizes equation (6) to θ t Update. In step 10, learning 120 is θ t Outputs.

[0051] (Regarding the proposed method (ViLAaD++)) The proposed method (ViLAaD) above replaces the objective function of AaD (equation (3)) with equation (6). To further improve the performance of SFDA, an alternating optimization framework between a learnable ViL prompt and a target model may be introduced into ViLAaD. This method is called ViLAaD++.

[0052] Specifically, ViLAaD++ is created by making the following three modifications to the ViLAaD algorithm.

[0053] Alternating optimization of ViL prompts and target models: ViLAaD can be seamlessly integrated into the alternating optimization framework presented in DIFO (Non-Patent Literature 2). In this framework, the parameters of the ViL model are fixed, and the learnable prompts used as input to the ViL text encoder are optimized alternately with the target model. To optimize the prompt r, the same objective function proposed in DIFO (Non-Patent Literature 2) is used, as shown below.

[0054]

number

[0055] Auxiliary objective function: Similar to DIFO (Non-Patent Document 2), the following predictive consistency loss is incorporated into the objective function of ViLAaD.

[0056]

Number

[0057]

Number

[0058] (Algorithm of the proposed method (ViLAaD++)) Fig. 8 shows Algorithm 2 which is the algorithm of the proposed method (ViLAaD++). Algorithm 2 corresponds to the operation procedure of the learning unit 120. Algorithm 2 also uses three memory banks B z , B p , B q and each of the three memory banks is updated during learning.

[0059] Algorithm 2 is described as the operation of the learning unit 120. Also, the line numbers are described as step numbers.

[0060] The learning unit 120 receives a pre-trained model θ s , a target dataset D t , a ViL model θ v , a learnable prompt r, the number of epochs T, and the number of repetitions M per epoch. The learning unit 120 outputs an adapted (learned) target model θ t .

[0061] In step 1, the learning unit 120 sets θ t = θ s, let r = 'a photo of a [CLS]'. In step 2, the learning unit 120 constructs memory banks B z , B p , B q . The learning unit 120 executes steps 3 to 14 for T times. At each t, the learning unit 120 executes steps 5 to 7 (the updation loop of learnable prompts) and steps 9 to 13 (the updation loop of the target model) for M times respectively.

[0062] In step 6, the learning unit 120 updates r by minimizing equation (8), and updates B v by obtaining the prediction by the ViL model θ q using the updated r.

[0063] In step 10, sample a batch from D t , calculate features and predictions from the data using the model θ t , and the learning unit 120 updates B z and B p with the calculated features and predictions respectively.

[0064] In step 11, for each feature z i in the batch, the learning unit 120 obtains the K - nearest neighbors C z from B i . Also, the learning unit 120 obtains the respective predictions (i.e., p and q) of θ t and θ v corresponding to the related features from B p , B q respectively.

[0065] In step 12, the learning unit 120 updates θ t by minimizing equation (9). In step 15, the learning unit 120 outputs θ t .

[0066] (Hardware configuration example) Any of the devices (information processing devices 100, 200) described in this embodiment can be realized, for example, by having a computer execute a program. This computer may be a physical computer or a virtual machine on the cloud. Note that the model is not included in the program. However, the model may be included in the program.

[0067] In other words, the device can be realized by using hardware resources such as the CPU and memory built into a computer to execute a program corresponding to the processing performed by the device. The program can be recorded on a computer-readable recording medium (such as portable memory), saved, and distributed. It can also be provided via a network, such as the Internet or email.

[0068] Figure 9 shows an example of the hardware configuration of the computer described above. The computer in Figure 9 has a drive device 1000, an auxiliary storage device 1002, a memory device 1003, a CPU 1004, an interface device 1005, a display device 1006, an input device 1007, an output device 1008, etc., all of which are interconnected by bus B. The computer may also be equipped with a GPU.

[0069] The program that enables processing on the computer is provided, for example, on a recording medium 1001 such as a CD-ROM or memory card. When the recording medium 1001 containing the program is set in the drive device 1000, the program is installed from the recording medium 1001 to the auxiliary storage device 1002 via the drive device 1000. However, the program does not necessarily have to be installed from the recording medium 1001; it may also be downloaded from another computer via a network. The auxiliary storage device 1002 stores the installed program as well as necessary files and data.

[0070] The memory device 1003 reads and stores a program from the auxiliary storage device 1002 when a program startup command is received. The CPU 1004 implements the functions related to the memory device 1003 according to the program stored in the memory device 1003. The interface device 1005 is used as an interface for connecting to a network, etc. The display device 1006 displays a GUI (Graphical User Interface) etc. generated by a program. The input device 1007 consists of a keyboard and mouse, buttons, or a touch panel etc., and is used to input various operation commands. The output device 1008 outputs the calculation results.

[0071] (Effects of the embodiment) As described above, the technology described in this embodiment makes it possible to improve performance in source-free domain adaptation.

[0072] Experiments comparing the proposed methods (ViLAaD, ViLAaD++) with AaD confirmed that the proposed methods (ViLAaD, ViLAaD++) achieve higher performance than AaD.

[0073] The following additional information is disclosed regarding the embodiments described above.

[0074] <Note> (Additional note 1) An information processing device for training a neural network model, The aforementioned model is a model that has been pre-trained on the source dataset. A learning unit that obtains a first feature, a second feature adjacent to the first feature, and a third feature not adjacent to the first feature from the target dataset using the model, and trains the model so that the similarity between the first prediction output by the model using the data of the first feature and the second prediction output by the other model using the data of the second feature increases, and the similarity between the first prediction output by the model using the data of the first feature and the third prediction output by the other model using the data of the third feature decreases. An information processing device equipped with the following features. (Additional note 2) The source dataset and the target dataset are two image datasets from different domains, the prediction by the model is the result of image classification, and the other model is a visual language model. The information processing device described in Appendix 1. (Additional note 3) The learning unit performs the learning while updating the prompts for obtaining predictions from the other models. The information processing device described in Appendix 1. (Additional note 4) A learning method executed by an information processing device that trains a neural network model, The aforementioned model is a model that has been pre-trained on the source dataset. The model obtains a first feature, a second feature adjacent to the first feature, and a third feature not adjacent to the first feature from the target dataset. The model is trained so that the similarity between the first prediction output by the model using the data of the first feature and the second prediction output by the other model using the data of the second feature increases, and the similarity between the first prediction output by the model using the data of the first feature and the third prediction output by the other model using the data of the third feature decreases. Learning methods. (Additional note 5) A non-temporary storage medium storing a program for causing a computer to function as a learning unit in an information processing device described in any one of the appendices 1 to 3.

[0075] Although this embodiment has been described above, the present invention is not limited to this specific embodiment, and various modifications and changes are possible within the scope of the gist of the invention as described in the claims. [Explanation of Symbols]

[0076] 100, 200 Information Processing Devices 110, 210 Input Section 120 Learning Department 130, 230 Output section 220 Reasoning Department 300 Models 1000 drive unit 1001 Recording media 1002 Auxiliary storage 1003 Memory device 1004 CPU 1005 Interface device 1006 Display device 1007 Input device 1008 Output device

Claims

1. An information processing device for training a neural network model, The aforementioned model is a model that has been pre-trained on the source dataset. A learning unit that obtains a first feature, a second feature adjacent to the first feature, and a third feature not adjacent to the first feature from the target dataset using the model, and trains the model so that the similarity between the first prediction output by the model using the data of the first feature and the second prediction output by the other model using the data of the second feature increases, and the similarity between the first prediction output by the model using the data of the first feature and the third prediction output by the other model using the data of the third feature decreases. An information processing device equipped with the following features.

2. The source dataset and the target dataset are two image datasets from different domains, the prediction by the model is the result of image classification, and the other model is a visual language model. The information processing apparatus according to claim 1.

3. The learning unit performs the learning while updating the prompts for obtaining predictions from the other models. The information processing apparatus according to claim 1.

4. A learning method executed by an information processing device that trains a neural network model, The aforementioned model is a model that has been pre-trained on the source dataset. The model obtains a first feature, a second feature adjacent to the first feature, and a third feature not adjacent to the first feature from the target dataset. The model is trained so that the similarity between the first prediction output by the model using the data of the first feature and the second prediction output by the other model using the data of the second feature increases, and the similarity between the first prediction output by the model using the data of the first feature and the third prediction output by the other model using the data of the third feature decreases. Learning methods.

5. A program for causing a computer to function as a learning unit in an information processing device according to any one of claims 1 to 3.