WO2024057543A1 - 画像データ生成装置、画像データ生成方法、および、画像データ生成プログラム - Google Patents

画像データ生成装置、画像データ生成方法、および、画像データ生成プログラム Download PDF

Info

Publication number
WO2024057543A1
WO2024057543A1 PCT/JP2022/034806 JP2022034806W WO2024057543A1 WO 2024057543 A1 WO2024057543 A1 WO 2024057543A1 JP 2022034806 W JP2022034806 W JP 2022034806W WO 2024057543 A1 WO2024057543 A1 WO 2024057543A1
Authority
WO
WIPO (PCT)
Prior art keywords
image data
augmentation
data generation
input
generation device
Prior art date
Application number
PCT/JP2022/034806
Other languages
English (en)
French (fr)
Inventor
昇平 榎本
モニカ ロスリアナ ブスト
毅晴 江田
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to PCT/JP2022/034806 priority Critical patent/WO2024057543A1/ja
Publication of WO2024057543A1 publication Critical patent/WO2024057543A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis

Definitions

  • the present invention relates to an image data generation device, an image data generation method, and an image data generation program.
  • This technique prepares 12 Augmentation candidates in advance and predicts the classification loss when each Augmentation is performed on the input image. Then, Augmentation (optimal Augmentation) with the lowest predicted classification loss is performed on the input image, and the Augmented image is input to the DNN.
  • the above technology selects and implements one optimal Augmentation from 12 Augmentation candidates for the input image, but in reality, an infinite number of Augmentation candidates exist for the following reasons.
  • Augmentation strength parameters are continuous values. For example, if Augmentation rotates an image, the rotation angle is a continuous value from 0° to 360°.
  • Reason 2 There are many combination patterns of two or more Augmentations. For example, it is possible to sequentially perform Augmentation to rotate the image, Augmentation to change the contrast of the image, and Augmentation to change the sharpness of the image.
  • an object of the present invention is to improve the accuracy of DNN.
  • the present invention includes a reception unit that receives input of image data to be classified by a Deep Neural Network (DNN), intensity parameters for each Augmentation when performing each Augmentation on the image data, and , a parameter output unit that outputs a weight when linearly combining each of the image data subjected to the Augmentation; an Augmentation execution unit that performs Augmentation on the input image data using the intensity parameter for each Augmentation;
  • the present invention is characterized by comprising an image combining unit that generates image data by linearly combining each of the image data subjected to the Augmentation using the weights, and an output processing unit that outputs the generated image data.
  • the accuracy of DNN can be improved.
  • FIG. 1 is a diagram for explaining an example of the operation of the image data generation device.
  • FIG. 2 is a diagram showing a configuration example of an image data generation device.
  • FIG. 3 is a diagram showing an example of Augmentation used by the image data generation device.
  • FIG. 4 is a flowchart illustrating an example of a processing procedure executed by the image data generation device.
  • FIG. 5 is a diagram showing evaluation results of image data generated by the image data generation device.
  • FIG. 6 is a diagram showing evaluation results of image data generated by the image data generation device.
  • FIG. 7 is a diagram showing evaluation results of two ideas used in the image data generation device.
  • FIG. 8 is a diagram showing a computer that executes an image data generation program.
  • the image data generation device performs Augmentation on the image data to be classified by the DNN so as to improve the classification accuracy of the DNN as much as possible.
  • the image data generation device selects and implements an optimal Augmentation (i.e., one that improves the classification accuracy in the DNN as much as possible) from an infinite number of Augmentation candidates for the image data to be classified. Therefore, the image data generation device executes the following processes (1) and (2).
  • the image data generation device should estimate the locally optimal intensity parameter using an optimization algorithm such as gradient descent. Can be done.
  • Blending multiple images that have undergone Augmentation For example, if the blending weight of each image is [1,0,0], the image data generation device performs the first Augmentation on the image. . In addition, if the blending weight of each image is [0,0.5,0.5], the image data generation device divides the image into an image where the second Augmentation has been performed and an image where the third Augmentation has been performed. Blend (combine) each with a weight of 0.5.
  • the image data generation device 10 inputs image data to be classified into the Backbone Network.
  • This Backbone Network implements the intensity parameter m for each Augmentation and each Augmentation in order to improve the classification accuracy of the classification device 20 (a device that classifies images using DNN) as much as possible for the input image data.
  • This is a model trained to output the image blend weight w.
  • the Backbone Network uses the intensity parameter m (m 1 ,...,m k ) for each augmentation when performing augmentation on input image data and the weight (blend weight) w when combining images that have undergone each augmentation.
  • the image data generation device 10 performs each Augmentation on the image data using the intensity parameter m (m 1 ,...,m k ) for each Augmentation output from the Backbone Network. Next, the image data generation device 10 combines (blends) the images on which each Augmentation has been performed (Augmentation images) using the blend weights w (w 1 ,...,w k ) output from the Backbone Network. generate.
  • the classification device 20 performs classification processing on the image data generated by the image data generation device 10, and outputs the classification results.
  • an image data generation device 10 it is possible to perform Augmentation on image data to make it easier for the classification device 20 to classify it even under a distribution shift. As a result, the classification accuracy of image data by the classification device 20 can be improved.
  • the image data generation device 10 includes, for example, an input/output section 11, a storage section 12, and a control section 13.
  • the input/output unit 11 is an interface that controls input/output of various data.
  • the input/output unit 11 receives input of image data to be processed. Further, the input/output unit 11 outputs image data obtained by performing each Augmentation on the input image data, for example, by the control unit 13.
  • the storage unit 12 stores data, programs, etc. that are referenced when the control unit 13 executes various processes.
  • the storage unit 12 is realized by a semiconductor memory element such as a RAM (Random Access Memory) or a flash memory, or a storage device such as a hard disk or an optical disk.
  • the storage unit 12 stores parameters of the Backbone Network used by the control unit 13.
  • the control unit 13 controls the entire image data generation device 10.
  • the functions of the control unit 13 are realized, for example, by a CPU (Central Processing Unit) executing a program stored in the storage unit 12.
  • the control unit 13 includes, for example, a learning unit 131, a reception unit 132, a parameter output unit 133, an augmentation implementation unit 134, an image combination unit 135, and an output processing unit 136.
  • the learning unit 131 performs learning of the Backbone Network used by the parameter output unit 133.
  • Backbone Network calculates the strength parameter m for each Augmentation when performing each Augmentation, and the weight (blend weight) w when combining the images subjected to each Augmentation, for the input image data. This is the model to output.
  • the learning unit 131 uses image data including distribution-shifted image data as learning data, and performs Augmentation for each Augmentation such that the Backbone Network improves the classification accuracy of the classification device 20 as much as possible for the input image data.
  • the Backbone Network is trained to output intensity parameters m (m 1 ,...,m k ) and blend weights w (w 1 ,..., w k ).
  • the loss function used for learning the Backbone Network is, for example, the softmax entropy of the classification model used by the classification device 20.
  • the learning data used for learning the Backbone Network is, for example, data obtained by adding data with an artificial distribution shift to data without a distribution shift (clean data). For example, corruption data (see Reference 1) is used as data whose distribution has been artificially shifted.
  • the learning unit 131 may learn the Backbone Network using, for example, AugMix (see Document 2).
  • the learning of the Backbone Network may be performed by the learning unit 131 within the image data generation device 10, or may be performed by a device outside the image data generation device 10.
  • the receiving unit 132 receives input of image data to be processed.
  • the parameter output unit 133 uses the above-mentioned Backbone Network for the image data received by the reception unit 132 to generate intensity parameters m (m 1 ,...,m k ) for each Augmentation when performing each Augmentation, and The blending weights w (w 1 ,...,w k ) of the images subjected to each Augmentation are output. Note that the parameter output unit 133 does not output the intensity parameter m for Augmentation that does not have an intensity parameter.
  • the Backbone Network is realized by, for example, a DNN.
  • the Backbone Network is realized by a model in which the output layer of ResNet18, which is trained using ImageNet as training data, is changed to an output layer of 2k classes (k: number of augmentations).
  • the Augmentations used by the image data generation device 10 are, for example, 14 types of Augmentations shown in FIG. 3. All functions used in this Augmentation are differentiable functions. Moreover, f act shown in FIG. 3 is an activation function of Augmentation, and M is a range of Augmentation. Note that among the Augmentations shown in FIG. 3, the filter sizes of LPFs and HPFs cannot be determined by optimization, so 19 filter sizes of 0.05 to 0.95 (in 0.05 increments) were prepared in advance. Furthermore, URIE is an image conversion method using DNN (see Document 3 below).
  • the Augmentation implementation unit 134 performs Augmentation on the input image data using the intensity parameters m (m 1 ,...,m k ) for each Augmentation output by the parameter output unit 133.
  • the Augmentation implementation unit 134 converts the intensity parameter m k of the k-th Augmentation using the activation function f k act and range M (see FIG. 3) of the k-th Augmentation. Note that the Augmentation implementation unit 134 does not convert the intensity parameter m for an Augmentation that does not have an intensity parameter (see equation (1)).
  • the Augmentation implementation unit 134 performs each Augmentation on the input image data using the converted intensity parameters m (m 1 ,...,m k ) (see equation (2)). Note that O k in equation (2) indicates the k-th Augmentation operation.
  • the image combination unit 135 linearly combines the image data subjected to each Augmentation using the blend weights w (w 1 , . . . , w k ) output by the parameter output unit 133. For example, first, the image combination unit 135 uses a softmax function to convert the blend weights w (w 1 ,...,w k ) so that the sum of them becomes 1 (see equation (3)).
  • the image combining unit 135 generates image data x out by linearly combining the image data subjected to each Augmentation using the converted blend weights w (w 1 ,...,w k ) (Equation (4) reference).
  • the output processing unit 136 outputs the image data linearly combined by the image combining unit 135 via the input/output unit 11. Thereafter, the classification device 20 performs classification processing on the output image data.
  • an image data generation device 10 it is possible to perform Augmentation on image data to make it easier for the classification device 20 to classify it even under a distribution shift. As a result, the classification accuracy of image data by the classification device 20 can be improved.
  • the receiving unit 132 receives input of image data to be classified (S2). Then, the parameter output unit 133 outputs intensity parameters and weights (blend weights) for each augmentation when performing augmentation on the input image data (S3).
  • the Augmentation implementation unit 134 performs each Augmentation on the image data input in S2 using the intensity parameters for each Augmentation output in S3 (S4).
  • the image combining unit 135 generates image data by linearly combining the image data subjected to each Augmentation in S4 using the weight for each Augmentation output in S3 (S5).
  • the output processing unit 136 outputs the image data generated in S5 (S6).
  • the image data generation device 10 By performing the above processing by the image data generation device 10, it is possible to generate image data that the classification device 20 can easily classify even under a distribution shift. As a result, the classification accuracy of image data by the classification device 20 can be improved.
  • the classification models used in the evaluation are the six classification models shown in FIG. 5.
  • the classification model with "w/AugMix" is a classification model whose robustness has been improved by AugMix (see Document 2).
  • the models (enhancement models) used to generate image data input to each classification model are URIE (see Document 3), Loss Predictor (see Non-Patent Document 1), and AugNet (this embodiment).
  • AugNet was able to generate image data with generally higher classification accuracy than URIE and Loss Predictor for both Clean and Unseen.
  • AugNet can generate image data with higher classification accuracy than URIE and Loss Predictor.
  • image data with higher classification accuracy can be generated using a classification model whose robustness has been improved using AugMix.
  • the classification models used in the evaluation were ResNet50 and DeiT shown in FIG.
  • the numbers in parentheses indicate the difference from the baseline (classification accuracy when classifying only using the classification model).
  • the models (enhancement models) used to generate input image data to each classification model are URIE, Loss Predictor, and AugNet, as in FIG. 5.
  • the comparison target is Loss Predictor. Loss Predictor selects the Augmentation with the lowest loss from 12 Augmentation candidates.
  • Blending is blending multiple Augmentation images.
  • the same 12 augmentations used by Loss Predictor were used, and the images subjected to each augmentation were linearly combined using a blend weight w.
  • Optimization is to estimate the strength parameters of Augmentation using an optimization algorithm.
  • the strength parameters of each augmentation were estimated using an optimization algorithm. Augmentation was then performed on the image data using the estimated intensity parameters.
  • Unseen in FIG. 7 indicates the result of learning and evaluation using the corruption data set. Furthermore, the values of Stylized and Unseen+Seen in FIG. 7 show the results of learning and evaluation using AugMix. Note that the numerical values in parentheses in FIG. 7 indicate the difference from the classification accuracy of the image data generated by the Loss Predictor for each of Blending and Optimization.
  • Blending and Optimization can generate image data with higher classification accuracy than Loss Predictor in all cases of Unseen, Stylized (image data with changed style), and Unseen+Seen. From this, it was confirmed that both Blending and Optimization executed by the image data generation device 10 contribute to improving the classification accuracy of the classification model.
  • each component of each part shown in the drawings is functionally conceptual, and does not necessarily need to be physically configured as shown in the drawings.
  • the specific form of distributing and integrating each device is not limited to what is shown in the diagram, and all or part of the devices can be functionally or physically distributed or integrated in arbitrary units depending on various loads, usage conditions, etc. Can be integrated and configured.
  • all or any part of each processing function performed by each device may be realized by a CPU and a program executed by the CPU, or may be realized as hardware using wired logic.
  • the image data generation device 10 described above can be implemented by installing a program (image data generation program) in a desired computer as packaged software or online software. For example, by causing the information processing device to execute the above program, the information processing device can be made to function as the image data generation device 10.
  • the information processing device referred to here includes mobile communication terminals such as smartphones, mobile phones, and PHSs (Personal Handyphone Systems), as well as terminals such as PDAs (Personal Digital Assistants).
  • FIG. 8 is a diagram showing an example of a computer that executes an image data generation program.
  • Computer 1000 includes, for example, a memory 1010 and a CPU 1020.
  • the computer 1000 also includes a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. These parts are connected by a bus 1080.
  • the memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM (Random Access Memory) 1012.
  • the ROM 1011 stores, for example, a boot program such as BIOS (Basic Input Output System).
  • Hard disk drive interface 1030 is connected to hard disk drive 1090.
  • Disk drive interface 1040 is connected to disk drive 1100.
  • Serial port interface 1050 is connected to, for example, mouse 1110 and keyboard 1120.
  • Video adapter 1060 is connected to display 1130, for example.
  • the hard disk drive 1090 stores, for example, an OS 1091, an application program 1092, a program module 1093, and program data 1094. That is, a program that defines each process executed by the image data generation device 10 described above is implemented as a program module 1093 in which code executable by a computer is written.
  • Program module 1093 is stored in hard disk drive 1090, for example.
  • a program module 1093 for executing processing similar to the functional configuration of the image data generation device 10 is stored in the hard disk drive 1090.
  • the hard disk drive 1090 may be replaced by an SSD (Solid State Drive).
  • the data used in the processing of the embodiment described above is stored as program data 1094 in, for example, the memory 1010 or the hard disk drive 1090. Then, the CPU 1020 reads out the program module 1093 and program data 1094 stored in the memory 1010 and the hard disk drive 1090 to the RAM 1012 as necessary and executes them.
  • program module 1093 and the program data 1094 are not limited to being stored in the hard disk drive 1090, but may be stored in a removable storage medium, for example, and read by the CPU 1020 via the disk drive 1100 or the like.
  • the program module 1093 and the program data 1094 may be stored in another computer connected via a network (LAN (Local Area Network), WAN (Wide Area Network), etc.). The program module 1093 and program data 1094 may then be read by the CPU 1020 from another computer via the network interface 1070.
  • LAN Local Area Network
  • WAN Wide Area Network

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)

Abstract

画像データ生成装置(10)は、分類装置(20)による分類対象の画像データをBackbone Networkに入力する。Backbone Networkは、当該画像データに対し各Augmentationを実施する際のAugmentationごとの強度パラメータ、および、Augmentationを実施した画像データそれぞれを線形結合する際の重みを出力する。その後、画像データ生成装置(10)は、当該画像データに、Backbone Networkから出力されたAugmentationごとの強度パラメータを用いて各Augmentationを実施し、Augmentationを実施した画像データそれぞれを、Backbone Networkから出力された重みを用いて線形結合する。その後、分類装置(20)は、画像データ生成装置(10)により出力された画像データに対し、分類処理を行う。

Description

画像データ生成装置、画像データ生成方法、および、画像データ生成プログラム
 本発明は、画像データ生成装置、画像データ生成方法、および、画像データ生成プログラムに関する。
 実世界では様々な要因でデータの分布シフトが発生する。分布シフトが発生したデータがDeep Neural Network(DNN)に入力されるとDNNの精度が大幅に劣化する傾向がある。したがって、分布シフト下でもDNNの精度を維持するためのロバスト性向上技術が求められている。
 ここでロバスト性を向上させるため、例えば、DNNへの入力画像についてDNNにとって認識しやすい画像に変換する技術が提案されている(例えば、Test-time Augmentation、非特許文献1参照)。
 この技術は、予め12個のAugmentation候補を用意しておき、入力画像に各Augmentationを実施した場合の分類損失を予測する。そして、予測された分類損失が最も低いAugmentation(最適なAugmentation)を入力画像に対し実施し、Augmentationを実施した画像をDNNに入力する。
I. Kim et al. ,"Learning Loss for Test-Time Augmentation", In: Advances in Neural Information Processing Systems (NeurIPS) (2020)
 上記の技術は、入力画像に対して、12個のAugmentationの候補から最適なAugmentationを1つ選択し実施するものであるが、実際にはAugmentation候補は以下の理由で無限に存在する。
 理由1:多くAugmentationの強度パラメータは連続値である。
 例えば、Augmentationが画像の回転を行うものである場合、回転の角度は0°~360°の連続値である。
 理由2:2つ以上のAugmentationの組み合わせパターンは多数存在する。
 例えば、画像を回転するAugmentation、画像のコントラストを変更するAugmentation、画像のシャープネスを変更するAugmentationを連続で実施するということも考えられる。
 したがって、上記の技術で12個のAugmentationの候補から選択されたAugmentationを実施した画像をDNNが認識しても、その認識精度には限界があった。そこで本発明は、DNNの精度を向上させることを課題とする。
 前記した課題を解決するため、本発明は、Deep Neural Network(DNN)による分類対象の画像データの入力を受け付ける受付部と、前記画像データに各Augmentationを実施する際のAugmentationごとの強度パラメータ、および、前記Augmentationを実施した画像データそれぞれを線形結合する際の重みを出力するパラメータ出力部と、前記入力された画像データに、前記Augmentationごとの強度パラメータを用いてAugmentationを実施するAugmentation実施部と、前記Augmentationが実施された画像データそれぞれを、前記重みを用いて線形結合した画像データを生成する画像結合部と、生成した前記画像データを出力する出力処理部とを備えることを特徴とする。
 本発明によれば、DNNの精度を向上させることができる。
図1は、画像データ生成装置の動作例を説明するための図である。 図2は、画像データ生成装置の構成例を示す図である。 図3は、画像データ生成装置が用いるAugmentationの例を示す図である。 図4は、画像データ生成装置が実行する処理手順の例を示すフローチャートである。 図5は、画像データ生成装置が生成した画像データの評価結果を示す図である。 図6は、画像データ生成装置が生成した画像データの評価結果を示す図である。 図7は、画像データ生成装置に用いられる2つのアイディアの評価結果を示す図である。 図8は、画像データ生成プログラムを実行するコンピュータを示す図である。
 以下、図面を参照しながら、本発明を実施するための形態(実施形態)について説明する。本発明は、本実施形態に限定されない。
[概要]
 まず、本実施形態の画像データ生成装置の概要を説明する。画像データ生成装置は、DNNが分類対象とする画像データに対し、DNNにおける分類精度をできるだけ向上させるようなAugmentationを実施する。ここで画像データ生成装置は、分類対象の画像データに対し、無限に存在するAugmentation候補から最適な(=DNNにおける分類精度をできるだけ向上させるような)Augmentationを選択し、実施する。そのため、画像データ生成装置は、以下の(1)、(2)の処理を実行する。
(1)最適化アルゴリズムによりAugmentationの強度パラメータ(magnitude paramerter)を推定する
 多くのAugmentationは微分可能なため、画像データ生成装置は局所最適な強度パラメータを勾配降下法等の最適化アルゴリズムにより推定することができる。
(2)Augmentationが実施された複数の画像をブレンドする
 例えば、各画像のブレンドの重みが[1,0,0]の場合、画像データ生成装置は、画像に対し1つ目のAugmentationを実施する。また、各画像のブレンドの重みが[0,0.5,0.5]の場合、画像データ生成装置は、画像に対し、2つ目のAugmentationを実施した画像と3つ目のAugmentationを実施した画像とをそれぞれ0.5の重みでブレンド(結合)する。
 次に、図1を用いて本実施形態の画像データ生成装置10の動作例を説明する。例えば、画像データ生成装置10は、分類対象の画像データをBackbone Networkに入力する。このBackbone Networkは、入力された画像データに対し、分類装置20(DNNにより画像の分類を行う装置)における分類精度をできるだけ向上させるような、Augmentationごとの強度パラメータm、および、各Augmentationを実施した画像のブレンド重みwを出力するよう学習されたモデルである。
 Backbone Networkは、入力された画像データに対しAugmentationを実施する際のAugmentationごとの強度パラメータm(m1,…,mk)および各Augmentationを実施した画像を結合する際の重み(ブレンド重み)w(w1,…,wk)を出力する。
 画像データ生成装置10は、Backbone Networkから出力されたAugmentationごとの強度パラメータm(m1,…,mk)を使用して、画像データに対し各Augmentationを実施する。次に、画像データ生成装置10は、各Augmentationが実施された画像(Augmentation画像)を、Backbone Networkから出力されたブレンド重みw(w1,…,wk)で結合(ブレンディング)した画像データを生成する。
 その後、分類装置20は、画像データ生成装置10により生成された画像データに対し分類処理を行い、その分類結果を出力する。
 このような画像データ生成装置10によれば、分布シフト下でも画像データに対し、分類装置20が分類しやすいAugmentationを実施することができる。その結果、分類装置20による画像データの分類精度を向上させることができる。
[構成例]
 次に、図2を用いて、画像データ生成装置10の構成例を説明する。画像データ生成装置10は、例えば、入出力部11、記憶部12、および、制御部13を備える。
 入出力部11は、各種データの入出力を司るインタフェースである。例えば、入出力部11は、処理対象の画像データの入力を受け付ける。また、入出力部11は、例えば、制御部13により、入力された画像データに対し各Augmentationが実施された画像データを出力する。
 記憶部12は、制御部13が各種処理を実行する際に参照されるデータ、プログラム等を記憶する。記憶部12は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。例えば、記憶部12は、制御部13が用いるBackbone Networkのパラメータを記憶する。
 制御部13は、画像データ生成装置10全体の制御を司る。制御部13の機能は、例えば、CPU(Central Processing Unit)が、記憶部12に記憶されるプログラムを実行することにより実現される。制御部13は、例えば、学習部131、受付部132、パラメータ出力部133、Augmentation実施部134、画像結合部135、および、出力処理部136を備える。
 学習部131は、パラメータ出力部133が用いるBackbone Networkの学習を行う。前記したとおり、Backbone Networkは、入力された画像データに対し、各Augmentationを実施する際のAugmentationごとの強度パラメータm、および、各Augmentationを実施した画像を結合する際の重み(ブレンド重み)wを出力するモデルである。
 例えば、学習部131は、分布シフトされた画像データを含む画像データを学習データとして用いて、Backbone Networkが、入力画像データに対し、分類装置20における分類精度をできるだけ向上させるような、Augmentationごとの強度パラメータm(m1,…,mk)およびブレンド重みw(w1,…,wk)を出力するようBackbone Networkの学習を行う。
 Backbone Networkの学習に用いる損失関数は、例えば、分類装置20が用いる分類モデルのソフトマックスエントロピーである。また、Backbone Networkの学習に用いる学習データは、例えば、分布シフトの起きていないデータ(Clean data)に人工的に分布シフトを発生させたデータを加えたデータである。人工的に分布シフトを起こしたデータは、例えば、corruptionデータ(文献1参照)を用いる。
 文献1:Hendrycks, D., Dietterich, T.: BENCHMARKING NEURAL NETWORK ROBUSTNESS TO COMMON CORRUPTIONS AND PERTURBATIONS. In: International Conference on Learning Representations (ICLR) (2019)
 なお、学習部131は、例えば、AugMix(文献2参照)を用いてBackbone Networkを学習してもよい。
 文献2:Hendrycks, Dan, et al.: AugMix: A Simple DATA PROCESSING METHOD TO IMPROVE ROBUSTNESS AND UNCERTAINTY, International Conference on Learning Representations. 2019.
 なお、Backbone Networkの学習は、画像データ生成装置10内の学習部131が行ってもよいし、画像データ生成装置10外の装置が行ってもよい。
 受付部132は、処理対象の画像データの入力を受け付ける。パラメータ出力部133は、受付部132で受け付けた画像データに対し、上記のBackbone Networkを用いて、各Augmentationを実施する際のAugmentationごとの強度パラメータm(m1,…,mk)、および、各Augmentationを実施した画像のブレンド重みw(w1,…,wk)を出力する。なお、パラメータ出力部133は、強度パラメータを持たないAugmentationについては強度パラメータmを出力しない。
 Backbone Networkは、例えば、DNNにより実現される。例えば、Backbone Networkは、ImageNetを学習データとして学習したResNet18の出力層を2kクラス(k:Augmentationの数)の出力層に変更したモデルにより実現される。
 なお、画像データ生成装置10が用いるAugmentationは、例えば、図3に示す14種類のAugmentationである。このAugmentationに用いられる関数はいずれも微分可能な関数である。また、図3に示す、factはAugmentationの活性化関数であり、MはAugmentationのレンジである。なお、図3に示すAugmentationのうち、LPFsおよびHPFsはフィルタサイズを最適化で求められないので、事前にフィルタサイズを0.05‐0.95(0.05刻み)の19個を用意したものである。さらに、URIEは、DNNによる画像変換手法である(以下の文献3参照)。
 文献3:Son, T., Kang, J., Kim, N., Cho, S., Kwak, S.: Urie: Universal Image Enhancement for Visual Recognition in the Wild. In: European Conference on Computer Vision (ECCV) (2020)
 図2の説明に戻る。Augmentation実施部134は、入力された画像データに対し、パラメータ出力部133により出力されたAugmentationごとの強度パラメータm(m1,…,mk)を用いてAugmentationを実施する。
 例えば、Augmentation実施部134は、k番目のAugmentationの強度パラメータmkを、k番目のAugmentationの活性化関数fk actおよびレンジM(図3参照)を用いて変換する。なお、Augmentation実施部134は、強度パラメータを持たないAugmentationについては強度パラメータmの変換は行わない(式(1)参照)。
Figure JPOXMLDOC01-appb-M000001
 次に、Augmentation実施部134は、変換後の強度パラメータm(m1,…,mk)を用いて、入力された画像データに対し各Augmentationを実施する(式(2)参照)。なお、式(2)におけるOkは、k番目のAugmentation操作を示す。
Figure JPOXMLDOC01-appb-M000002
 画像結合部135は、各Augmentationが実施された画像データを、パラメータ出力部133により出力されたブレンド重みw(w1,…,wk)で線形結合する。例えば、まず、画像結合部135は、ソフトマックス関数により、上記のブレンド重みw(w1,…,wk)の合計が1になるように変換する(式(3)参照)。
Figure JPOXMLDOC01-appb-M000003
 そして、画像結合部135は、変換したブレンド重みw(w1,…,wk)を用いて、各Augmentationが実施された画像データを線形結合した画像データxoutを生成する(式(4)参照)。
Figure JPOXMLDOC01-appb-M000004
 出力処理部136は、画像結合部135により線形結合された画像データを入出力部11経由で出力する。その後、分類装置20は、出力された画像データに対し分類処理を行う。
 このような画像データ生成装置10によれば、分布シフト下でも画像データに対し、分類装置20が分類しやすいAugmentationを実施することができる。その結果、分類装置20による画像データの分類精度を向上させることができる。
[処理手順の例]
 次に、図4を用いて画像データ生成装置10が実行する処理手順の例を説明する。まず、画像データ生成装置10の学習部131は、学習データを用いてBackbone Networkの学習を行う(S1)。
 S1の後、受付部132は、分類対象の画像データの入力を受け付ける(S2)。そして、パラメータ出力部133は、入力された画像データに対しAugmentationを行う際の、Augmentationごとの強度パラメータ、重み(ブレンド重み)を出力する(S3)。
 次に、Augmentation実施部134は、S2で入力された画像データに対し、S3で出力されたAugmentationごとの強度パラメータを用いて各Augmentationを実施する(S4)。その後、画像結合部135は、S4で各Augmentationが実施された画像データを、S3で出力されたAugmentationごとの重みで線形結合した画像データを生成する(S5)。そして、出力処理部136は、S5で生成された画像データを出力する(S6)。
 画像データ生成装置10が上記の処理を行うことで、分布シフト下でも分類装置20が分類しやすい画像データを生成することができる。その結果、分類装置20による画像データの分類精度を向上させることができる。
[実験結果]
 次に、画像データ生成装置10により生成された画像データを、分類モデルで分類した際の分類精度の評価結果を説明する。
 まず、図5を用いてCUBデータセットでの評価結果を説明する。評価に用いた分類モデル(Classification model)は、図5に示す6つの分類モデルである。なお、6つの分類モデルのうち、「w/AugMix」が付された分類モデルは、AugMix(文献2参照)によりロバスト性を向上させた分類モデルである。また、各分類モデルへ入力する画像データの生成に用いたモデル(Enhancement model)は、URIE(文献3参照)、Loss Predictor(非特許文献1参照)、AugNet(本実施形態)である。
 なお、図5に示すCleanの値は、分布シフトの起きていない画像データに対する分類精度を示す。また、Unseenの値は、人工的に分布シフトを起こした画像データに対する分類精度を示す。()内の数値は、ベースライン(分類モデルのみで分類した場合の分類精度)との差分を示す。
 図5に示すように、AugNetは、Clean、Unseenともに概ね、URIE、Loss Predictorよりも分類精度の高い画像データを生成できることが確認できた。特に、Unseenについては、AugNetは、URIE、Loss Predictorより確実に分類精度の高い画像データを生成できることが確認できた。また、AugMixによりロバスト性を向上させた分類モデルに対しても、より分類精度の高い画像データを生成できることが確認できた。
 次に、図6を用いてImageNetデータセットでの評価結果を説明する。評価に用いた分類モデルは、図6に示すResNet50およびDeiTである。ここでは人工的に分布シフトを起こした画像データを対象に評価を行った。()内の数値は、図5と同様に、ベースライン(分類モデルのみで分類した場合の分類精度)との差分を示す。各分類モデルへの入力画像データの生成に用いたモデル(Enhancement model)は、図5と同様に、URIE、Loss Predictor、AugNetである。
 図6に示すように、ImageNetデータセットの場合も、AugNetは、Unseenについて、URIE、Loss Predictorよりも、分類モデルにおける分類精度の高い画像データを生成できることが確認できた。
 次に、本実施形態の画像データ生成装置10における2つのアイディア(BlendingとOptimization)の効果を確認した(図7参照)。比較対象はLoss Predictorである。Loss Predictorは12個のAugmentation候補から最も損失が低いAugmentationを選択する。
 Blendingは、複数のAugmentation画像をブレンドすることである。ここでは、Loss Predictorが用いる12個のAugmentationと同じAugmentationを用い、各Augmentationが実施された画像をブレンド重みwで線形結合した。
 Optimizationは、最適化アルゴリズムによりAugmentationの強度パラメータを推定することである。ここでは、Loss Predictorが用いる12個のAugmentationと同じAugmentationについて、最適化アルゴリズムによりAugmentationそれぞれの強度パラメータを推定した。そして、推定した強度パラメータで画像データにAugmentationを実施した。
 なお、図7におけるUnseenの値はcorruptionデータセットで学習して評価した結果を示す。また、図7におけるStylizedの値とUnseen+Seenの値はAugMixで学習して評価した結果を示す。なお、図7における()内の数値は、Blending、Optimizationそれぞれについて、Loss Predictorより生成された画像データの分類精度との差分を示している。
 図7に示すように、Blending、Optimizationは、Unseen、Stylized(スタイルを変更した画像データ)、Unseen+Seenいずれの場合も、Loss Predictorよりも分類精度の高い画像データを生成できることが確認できた。このことから、画像データ生成装置10が実行するBlendingおよびOptimizationのいずれも、分類モデルにおける分類精度の向上に貢献することが確認できた。
[システム構成等]
 また、図示した各部の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
 また、前記した実施形態において説明した処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
 前記した画像データ生成装置10は、パッケージソフトウェアやオンラインソフトウェアとしてプログラム(画像データ生成プログラム)を所望のコンピュータにインストールさせることによって実装できる。例えば、上記のプログラムを情報処理装置に実行させることにより、情報処理装置を画像データ生成装置10として機能させることができる。ここで言う情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等の端末等がその範疇に含まれる。
 図8は、画像データ生成プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
 メモリ1010は、ROM(Read Only Memory)1011及びRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
 ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、上記の画像データ生成装置10が実行する各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、画像データ生成装置10における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
 また、上述した実施形態の処理で用いられるデータは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。
 なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続される他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
 10 画像データ生成装置
 11 入出力部
 12 記憶部
 13 制御部
 20 分類装置
 131 学習部
 132 受付部
 133 パラメータ出力部
 134 Augmentation実施部
 135 画像結合部
 136 出力処理部

Claims (5)

  1.  Deep Neural Network(DNN)による分類対象の画像データの入力を受け付ける受付部と、
     前記画像データに各Augmentationを実施する際のAugmentationごとの強度パラメータ、および、前記Augmentationを実施した画像データそれぞれを線形結合する際の重みを出力するパラメータ出力部と、
     前記入力された画像データに、前記Augmentationごとの強度パラメータを用いてAugmentationを実施するAugmentation実施部と、
     前記Augmentationが実施された画像データそれぞれを、前記重みを用いて線形結合した画像データを生成する画像結合部と、
     生成した前記画像データを出力する出力処理部と
     を備えることを特徴とする画像データ生成装置。
  2.  分布シフトされた画像データを含む画像データを学習データとして用いて、前記DNNにおける分類精度をできるだけ向上させるような、前記Augmentationごとの強度パラメータ、および、前記Augmentationを実施した画像データそれぞれを線形結合する際の重みを出力するモデルを学習する学習部をさらに備え、
     前記パラメータ出力部は、
     学習された前記モデルを用いて、前記Augmentationごとの強度パラメータ、および、前記Augmentationを実施した画像データそれぞれを線形結合する際の重みを出力する
     ことを特徴とする請求項1に記載の画像データ生成装置。
  3.  前記各Augmentationに用いられる関数は、微分可能な関数である
     ことを特徴とする請求項1に記載の画像データ生成装置。
  4.  画像データ生成装置により実行される画像データ生成方法であって、
     Deep Neural Network(DNN)による分類対象の画像データの入力を受け付ける工程と、
     前記画像データの入力を受け付けると、前記画像データにAugmentationを実施する際のAugmentationごとの強度パラメータ、および、前記Augmentationを実施した画像データそれぞれを線形結合する際の重みを出力する工程と、
     前記入力された画像データに、前記Augmentationごとの強度パラメータを用いてAugmentationを実施する工程と、
     前記Augmentationが実施された画像データそれぞれを、前記重みを用いて線形結合した画像データを生成する工程と、
     生成した前記画像データを出力する工程と
     を含むことを特徴とする画像データ生成方法。
  5.  Deep Neural Network(DNN)による分類対象の画像データの入力を受け付ける工程と、
     前記画像データの入力を受け付けると、前記画像データにAugmentationを実施する際のAugmentationごとの強度パラメータ、および、前記Augmentationを実施した画像データそれぞれを線形結合する際の重みを出力する工程と、
     前記入力された画像データに、前記Augmentationごとの強度パラメータを用いてAugmentationを実施する工程と、
     前記Augmentationが実施された画像データそれぞれを、前記重みを用いて線形結合した画像データを生成する工程と、
     生成した前記画像データを出力する工程と、
     をコンピュータに実行させるための画像データ生成プログラム。
PCT/JP2022/034806 2022-09-16 2022-09-16 画像データ生成装置、画像データ生成方法、および、画像データ生成プログラム WO2024057543A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/034806 WO2024057543A1 (ja) 2022-09-16 2022-09-16 画像データ生成装置、画像データ生成方法、および、画像データ生成プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/034806 WO2024057543A1 (ja) 2022-09-16 2022-09-16 画像データ生成装置、画像データ生成方法、および、画像データ生成プログラム

Publications (1)

Publication Number Publication Date
WO2024057543A1 true WO2024057543A1 (ja) 2024-03-21

Family

ID=90274682

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/034806 WO2024057543A1 (ja) 2022-09-16 2022-09-16 画像データ生成装置、画像データ生成方法、および、画像データ生成プログラム

Country Status (1)

Country Link
WO (1) WO2024057543A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020038664A (ja) * 2018-09-04 2020-03-12 株式会社ストラドビジョン コンボリューションニューラルネットワークから複数の出力のアンサンブルを利用して統合された特徴マップを提供するための方法及び装置{method and device for providing integrated feature map using ensemble of multiple outputs from convolutional neural network}
JP2020144735A (ja) * 2019-03-08 2020-09-10 富士ゼロックス株式会社 画像処理装置及びプログラム
JP2021009571A (ja) * 2019-07-01 2021-01-28 日本放送協会 顔認識装置、学習装置及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020038664A (ja) * 2018-09-04 2020-03-12 株式会社ストラドビジョン コンボリューションニューラルネットワークから複数の出力のアンサンブルを利用して統合された特徴マップを提供するための方法及び装置{method and device for providing integrated feature map using ensemble of multiple outputs from convolutional neural network}
JP2020144735A (ja) * 2019-03-08 2020-09-10 富士ゼロックス株式会社 画像処理装置及びプログラム
JP2021009571A (ja) * 2019-07-01 2021-01-28 日本放送協会 顔認識装置、学習装置及びプログラム

Similar Documents

Publication Publication Date Title
CN109711426B (zh) 一种基于gan和迁移学习的病理图片分类装置及方法
CA3123509A1 (en) Automated semantic segmentation of non-euclidean 3d data sets using deep learning
JP2020194560A (ja) 因果関係分析方法および電子デバイス
CN113168559A (zh) 机器学习模型的自动化生成
WO2021059388A1 (ja) 学習装置、画像処理装置、学習方法及び学習プログラム
JP6870508B2 (ja) 学習プログラム、学習方法及び学習装置
KR20220038907A (ko) 생성적 대립 신경망(gan) 기반의 데이터 예측 방법, 그리고 이를 구현하기 위한 장치
CN112836820A (zh) 用于图像分类任务的深度卷积网络训方法、装置及系统
US11501037B2 (en) Microstructures using generative adversarial networks
Dengpan et al. Faster and transferable deep learning steganalysis on GPU
Kothari et al. Implementation of grey scale normalization in machine learning & artificial intelligence for bioinformatics using convolutional neural networks
US10943037B2 (en) Generating a CAD model from a finite element mesh
CN110852351A (zh) 基于图像的垃圾分类方法、装置、终端设备和存储介质
WO2024057543A1 (ja) 画像データ生成装置、画像データ生成方法、および、画像データ生成プログラム
Kharinov et al. Object detection in color image
CN115412401B (zh) 训练虚拟网络嵌入模型及虚拟网络嵌入的方法和装置
CN109635839B (zh) 一种基于机器学习的非平衡数据集的处理方法和装置
KR20200134813A (ko) 기계 학습을 위한 이미지 처리 장치 및 방법
US9336498B2 (en) Method and apparatus for improving resilience in customized program learning network computational environments
Di Pietro Optimising evolutionary strategies for problems with varying noise strength
WO2021220343A1 (ja) データ生成装置、データ生成方法、学習装置及び記録媒体
CN115438575A (zh) 一种用于高精度翼型流场预测的分析方法
CN115601629A (zh) 模型训练方法、图像识别方法、介质、装置和计算设备
JP7396505B2 (ja) モデル生成プログラム、モデル生成方法及びモデル生成装置
Zhang et al. PM-ARNN: 2D-TO-3D reconstruction paradigm for microstructure of porous media via adversarial recurrent neural network

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22958862

Country of ref document: EP

Kind code of ref document: A1