WO2020105144A1 - 画像生成装置及び画像生成方法 - Google Patents

画像生成装置及び画像生成方法

Info

Publication number
WO2020105144A1
WO2020105144A1 PCT/JP2018/043000 JP2018043000W WO2020105144A1 WO 2020105144 A1 WO2020105144 A1 WO 2020105144A1 JP 2018043000 W JP2018043000 W JP 2018043000W WO 2020105144 A1 WO2020105144 A1 WO 2020105144A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
unit
filter
convolutional
filters
Prior art date
Application number
PCT/JP2018/043000
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 JP2019553586A priority Critical patent/JPWO2020105144A1/ja
Priority to PCT/JP2018/043000 priority patent/WO2020105144A1/ja
Priority to TW108117638A priority patent/TW202021341A/zh
Publication of WO2020105144A1 publication Critical patent/WO2020105144A1/ja

Links

Images

Classifications

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

Definitions

  • the present invention relates to an image generating apparatus and an image generating method for generating an image corresponding to a real image, which is an image to be generated, from an input signal by using a convolutional neural network having a plurality of convolution filters.
  • Non-Patent Document 1 discloses an image generation device that generates a realistic image from a low-dimensional noise vector by using a hostile generation network (GAN: GENERAL ADVERSAL NETWORK).
  • the image generation apparatus using GAN includes a generator using a convolutional neural network and a discriminator using a convolutional neural network.
  • the generator uses a convolutional neural network to generate an image (hereinafter, referred to as “generated image”) close to an image to be generated (hereinafter referred to as “actual image”) from the noise vector.
  • the classifier uses a convolutional neural network to identify whether the input image is the generated image generated by the generator or the actual image.
  • the generator and the discriminator perform convolutional neural network learning while facing each other. Specifically, the generator learns the convolutional neural network so as to trick the discriminator and generate a realistic image in which it is difficult to discriminate whether the image is a real image or not. ..
  • the discriminator performs learning so that the input image can be discriminated as to whether it is a generated image generated by the generator or an actual image so as not to be deceived by the generator. As the generator and the discriminator repeat learning, the image finally generated by the generator becomes an image in which it is difficult to discriminate whether or not it is a real image.
  • the generator of the image generation device using GAN may use a large-scale convolutional neural network in order to obtain a generated image in which it is difficult to identify whether it is a real image or not. Since the scale of the convolutional neural network used by the generator is directly proportional to the calculation amount of the generator, when the generator uses a large-scale convolutional neural network, the calculation amount of the generator may be extremely large. there were. It should be noted that when the amount of calculation of the generator is large, it is difficult to apply the image generation device to embedded devices that require high-speed image generation, or embedded devices that have limited computational resources such as memory. Is.
  • the present invention has been made to solve the above problems, and an object thereof is to obtain an image generation device and an image generation method capable of reducing the scale of a convolutional neural network used for image generation.
  • the image generation apparatus includes an image generation unit that generates an image corresponding to a real image that is a generation target image from an input signal by using a convolutional neural network having a plurality of convolution filters, and an image generation unit.
  • An image identifying unit that identifies whether or not the generated image is an actual image
  • a filter coefficient updating unit that updates the filter coefficients of the plurality of convolution filters using the identification result of the image identifying unit
  • a plurality of convolution filters and a filter deletion unit that deletes one or more convolutional filters among the plurality of convolutional filters based on the importance of the convolution filter, and the image generation unit includes a plurality of convolutional filters whose filter coefficients are updated by the filter coefficient updating unit.
  • a convolutional neural network having a convolution filter that remains without being deleted by the filter deletion unit is used to generate an image corresponding to an actual image from an input signal.
  • the image generation unit includes the filter deletion unit that deletes one or more convolution filters among the plurality of convolution filters based on the importance of the plurality of convolution filters, and the image generation unit filters the filters by the filter coefficient update unit.
  • the image generation unit filters the filters by the filter coefficient update unit.
  • the image generating apparatus can reduce the scale of the convolutional neural network used for generating the image.
  • FIG. 3 is a configuration diagram showing an image generation apparatus according to the first embodiment.
  • FIG. 3 is a hardware configuration diagram showing hardware of the image generating apparatus according to the first embodiment. It is a hardware block diagram of a computer in case an image generation apparatus is implement
  • 7 is a flowchart showing an image generation method which is a processing procedure when the image generation apparatus is realized by software or firmware. It is explanatory drawing which shows the concept of a convolutional neural network. It is explanatory drawing which shows the multiplication of the scaling coefficient (alpha) 0 , (alpha) 1 , (alpha) 2 , ..., (alpha) J-1 with respect to the output of several convolution filters. 7 is a flowchart showing an operation of the image generation apparatus that gradually deletes the convolution filter F1.
  • FIG. 1 is a configuration diagram showing an image generation apparatus according to the first embodiment.
  • FIG. 2 is a hardware configuration diagram showing hardware of the image generating apparatus according to the first embodiment.
  • the image generation device includes an image processing unit 8 and a control unit 9.
  • the image processing unit 8 includes an input unit 1, an image generating unit 2, an image identifying unit 3, a filter coefficient updating unit 4, a scaling coefficient updating unit 5, a filter deleting unit 6, and an output unit 7.
  • the input unit 1 is realized by, for example, the input circuit 11 shown in FIG.
  • the input unit 1 receives, as an input signal, a noise vector such as a random numerical sequence, or an image such as an image different from the image to be generated (hereinafter referred to as “actual image”).
  • the input unit 1 also receives an input of the actual image.
  • the input unit 1 outputs an input signal to the image generation unit 2 and outputs an actual image to the image identification unit 3.
  • the image generation unit 2 is realized by, for example, the image generation circuit 12 shown in FIG.
  • the image generation unit 2 uses the convolutional neural network N1 having a plurality of convolution filters F1 to generate an image corresponding to a real image (hereinafter, referred to as “generated image”) from the input signal.
  • the image generation unit 2 outputs the generated image to each of the image identification unit 3 and the output unit 7.
  • the convolutional neural network N1 is learned so that a realistic image, which is difficult to identify whether or not it is a real image, is generated as a generated image, and the filter coefficient updating unit 4 causes the convolutional neural network N1 to learn.
  • the filter coefficients of the plurality of convolution filters F1 are updated.
  • the image identification section 3 is realized by, for example, the image identification circuit 13 shown in FIG.
  • the image identifying unit 3 uses a convolutional neural network N2 having a plurality of convolution filters F2 to perform identification processing on whether or not the generated image is a real image.
  • the image identifying unit 3 determines the learning error of the convolutional neural network N1 in the image generating unit 2 from the result of identifying whether or not the generated image is an actual image and each scaling coefficient output from the scaling coefficient updating unit 5. calculate.
  • the image identifying unit 3 outputs the learning error to each of the filter coefficient updating unit 4 and the scaling coefficient updating unit 5.
  • the image identification unit 3 learns the convolutional neural network N2 so that the generated image and the actual image are identified with high accuracy, and the filter coefficient update unit 4 updates the filter coefficients of the plurality of convolution filters F2. ..
  • the filter coefficient updating unit 4 is realized by, for example, the filter coefficient updating circuit 14 shown in FIG.
  • the filter coefficient updating unit 4 updates the filter coefficients of the plurality of convolution filters F1 using the identification result of the image identifying unit 3. Specifically, the filter coefficient updating unit 4 updates the filter coefficients of the plurality of convolution filters F1 so that the learning error calculated by the image identifying unit 3 becomes small.
  • the filter coefficient updating unit 4 outputs the updated filter coefficients of the plurality of convolution filters F1 to the image generating unit 2.
  • the filter coefficient updating unit 4 updates the filter coefficients of the plurality of convolution filters F2 so that the generated image and the actual image are discriminated by the image discriminating unit 3 with high accuracy, and after updating the plurality of convolution filters F2.
  • the filter coefficient of is output to the image identification unit 3.
  • the scaling coefficient updating unit 5 is realized by, for example, the scaling coefficient updating circuit 15 shown in FIG.
  • the scaling coefficient updating unit 5 updates the plurality of scaling coefficients so that the learning error calculated by the image identifying unit 3 becomes small.
  • the scaling coefficient is, for example, a coefficient of 0 to 1.
  • the scaling coefficient updating unit 5 outputs the plurality of updated scaling coefficients to the image generating unit 2, the image identifying unit 3, and the filter deleting unit 6, respectively.
  • the filter deleting unit 6 is realized by, for example, the filter deleting circuit 16 shown in FIG.
  • the filter deletion unit 6 calculates the importance of each convolution filter F1 for all of the plurality of convolution filters F1 based on each scaling coefficient updated by the scaling coefficient update unit 5.
  • the filter deletion unit 6 deletes one or more convolution filters among the plurality of convolution filters F1 based on the importance of the plurality of convolution filters F1.
  • the output unit 7 is realized by, for example, the output circuit 17 illustrated in FIG.
  • the output unit 7 outputs the generated image output from the image generation unit 2 to the outside.
  • the control unit 9 is realized by, for example, the control circuit 18 illustrated in FIG.
  • the control unit 9 controls the processing of the image processing unit 8. Further, the control unit 9 saves the filter coefficient and the scaling coefficient of the convolution filter F1 as the learning result.
  • the input unit 1, the image generating unit 2, the image identifying unit 3, the filter coefficient updating unit 4, the scaling coefficient updating unit 5, the filter deleting unit 6, the output unit 7, and the control unit 9 which are the constituent elements of the image generating apparatus. It is assumed that each of these is realized by dedicated hardware as shown in FIG. That is, the image generation device is realized by the input circuit 11, the image generation circuit 12, the image identification circuit 13, the filter coefficient update circuit 14, the scaling coefficient update circuit 15, the filter deletion circuit 16, the output circuit 17, and the control circuit 18. Is assumed.
  • each of the input circuit 11, the image generation circuit 12, the image identification circuit 13, the filter coefficient update circuit 14, the scaling coefficient update circuit 15, the filter deletion circuit 16, the output circuit 17, and the control circuit 18 is, for example, a single circuit. , A composite circuit, a programmed processor, a parallel programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a combination thereof.
  • the components of the image generation device are not limited to those realized by dedicated hardware, and the image generation device may be realized by software, firmware, or a combination of software and firmware.
  • the software or firmware is stored in the memory of the computer as a program.
  • the computer means hardware that executes a program, and corresponds to, for example, a CPU (Central Processing Unit), a central processing unit, a processing unit, an arithmetic unit, a microprocessor, a microcomputer, a processor, or a DSP (Digital Signal Processor).
  • FIG. 3 is a hardware configuration diagram of a computer when the image generating apparatus is implemented by software or firmware.
  • FIG. 4 is a flowchart showing an image generation method which is a processing procedure when the image generation apparatus is realized by software or firmware.
  • FIG. 2 shows an example in which each component of the image generating apparatus is realized by dedicated hardware
  • FIG. 3 shows an example in which the image generating apparatus is realized by software or firmware.
  • this is merely an example, and some of the constituent elements of the image generating apparatus may be realized by dedicated hardware and the remaining constituent elements may be realized by software or firmware.
  • the input unit 1 receives an input of an input signal and also an input of an actual image.
  • the input unit 1 outputs the received input signal to the image generation unit 2 and outputs the received actual image to the image identification unit 3.
  • the filter coefficient updating unit 4 outputs the initial values of the filter coefficients of the plurality of convolution filters F1 to the image generating unit 2.
  • the initial value of the filter coefficient is determined using, for example, a random number.
  • the scaling coefficient updating unit 5 outputs the initial values of the plurality of scaling coefficients ⁇ 0 , ⁇ 1 , ⁇ 2 , ..., ⁇ J ⁇ 1 to the image generating unit 2.
  • the initial values of the scaling coefficients ⁇ 0 , ⁇ 1 , ⁇ 2 , ..., ⁇ J ⁇ 1 are determined to be 1, for example.
  • the image generation unit 2 Upon receiving the input signal from the input unit 1, the image generation unit 2 uses the convolutional neural network N1 having a plurality of convolution filters F1 to generate a generated image corresponding to the actual image from the input signal (step ST1 in FIG. 4). ). The image generation unit 2 outputs the generated image to the image identification unit 3.
  • FIG. 5 is an explanatory diagram showing the concept of the convolutional neural network.
  • the convolutional neural network is formed by stacking a plurality of convolutional layers with a plurality of convolutional layers configured by a plurality of convolutional filters.
  • the image generation unit 2 extracts the characteristic of the input signal by performing the filtering process on the input signal using the filter coefficients of the plurality of convolution filters included in the convolution layer in each convolution layer. ..
  • the image generation unit 2 performs scaling processing on each of the scaling factors ⁇ 0 , for each of the filtered input signals that are the outputs of the plurality of convolution filters indicating the extracted features. Multiply by ⁇ 1 , ⁇ 2 , ..., ⁇ J-1 .
  • FIG. 6 is an explanatory diagram showing the multiplication of the scaling factors ⁇ 0 , ⁇ 1 , ⁇ 2 , ..., ⁇ J ⁇ 1 with respect to the outputs of the plurality of convolution filters. If the convolutional layer is not the final convolutional layer, the image generation unit 2 outputs the respective input signals after scaling coefficient multiplication to the next convolutional layer as the outputs of the plurality of convolutional filters. If the convolutional layer is the final convolutional layer, each input signal after scaling coefficient multiplication corresponds to the generated image generated by the image generation unit 2, and the image generation unit 2 identifies the generated image as an image. Output to the part 3.
  • the image identifying unit 3 uses the convolutional neural network N2 having a plurality of convolution filters F2 to identify whether the generated image output from the image generating unit 2 is the actual image output from the input unit 1. Is carried out (step ST2 in FIG. 4).
  • Image identification unit 3 as shown in the following equation (1), and whether or not the identification result l GAN or generated image is a real image, the scaling factor alpha 0 for the output of a plurality of convolution filter F1, alpha 1, A learning error S e is calculated from ⁇ 2 , ..., ⁇ J ⁇ 1 (step ST3 in FIG. 4).
  • g ( ⁇ j ) is, for example, a function for calculating the absolute value of the scaling coefficient ⁇ j .
  • J is the number of scaling coefficients corresponding to each of the plurality of convolution filters F1.
  • is a variable for adjusting the degree of influence of the scaling coefficient ⁇ j on the learning error S e , and an arbitrary value such as 10 ⁇ 5 is used.
  • the image identifying unit 3 outputs the learning error S e to each of the filter coefficient updating unit 4 and the scaling coefficient updating unit 5.
  • the filter coefficient updating unit 4 Upon receiving the learning error S e from the image identification unit 3, the filter coefficient updating unit 4 updates the filter coefficients of the plurality of convolution filters F1 so that the learning error S e becomes smaller (step ST4 in FIG. 4).
  • the update process itself of the filter coefficient of the convolutional filter F1 is a known technique, and thus detailed description thereof will be omitted.
  • the filter coefficient updating unit 4 outputs the updated filter coefficients of the plurality of convolution filters F1 to the image generating unit 2.
  • the filter coefficient updating unit 4 updates the filter coefficients of the plurality of convolution filters F2 so that the generated image and the actual image are discriminated by the image discriminating unit 3 with high accuracy, and after updating the plurality of convolution filters F2.
  • the filter coefficient of is output to the image identification unit 3.
  • the update process itself of the filter coefficient of the convolution filter F2 is a known technique, and thus detailed description thereof will be omitted.
  • the scaling coefficient updating unit 5 Upon receiving the learning error S e from the image identification unit 3, the scaling coefficient updating unit 5 updates the plurality of scaling coefficients ⁇ j so that the learning error S e becomes smaller (step ST5 in FIG. 4). Since the updating process of the scaling coefficient ⁇ j itself is a known technique, its detailed description is omitted.
  • the scaling coefficient updating unit 5 outputs the updated scaling coefficients ⁇ j to the image generating unit 2, the image identifying unit 3, and the filter deleting unit 6, respectively.
  • the control unit 9 controls the operations of the image generation unit 2, the image identification unit 3, the filter coefficient updating unit 4, and the scaling coefficient updating unit 5 so that the processes of steps ST1 to ST5 are repeated.
  • the learning error S e gradually decreases. Specifically, if the number of times the processes of steps ST1 to ST5 are repeated is less than the threshold value (step ST6 of FIG. 4: YES), the controller 9 repeats the processes of steps ST1 to ST5.
  • the controller 9 terminates the processes of steps ST1 to ST5.
  • the control unit 9 saves, as a learning result, the filter coefficients of the plurality of convolution filters F1 at the end of the processing and the plurality of scaling coefficients ⁇ j at the end of the processing (see FIG. 4 step ST7).
  • the threshold value may be stored in the internal memory of the control unit 9 or may be given from the outside.
  • the filter deletion unit 6 reduces the scale of the convolutional neural network N1 by deleting the convolutional filter F1 having a low degree of importance among the plurality of convolutional filters F1 included in the convolutional neural network N1 (step ST8 in FIG. 4). ..
  • the convolution filter F1 having a low degree of importance means a convolution filter that does not significantly affect the image generation. The process of reducing the size of the convolutional neural network N1 by the filter deleting unit 6 will be specifically described below.
  • the scaling coefficient ⁇ j is a coefficient by which the output of the convolution filter F1 is multiplied.
  • the larger the scaling coefficient ⁇ j the larger the output of the convolution filter F1.
  • the convolution filter F1 having a large output has a large influence on the image generation, and the convolution filter F1 having a small output has a small influence on the image generation. Therefore, the scaling coefficient ⁇ j is an element that determines the importance of the convolution filter F1.
  • the convolution filter F1 whose output is multiplied by a large scaling coefficient ⁇ j has a high degree of importance
  • the convolution filter F1 whose output is multiplied by a small scaling coefficient ⁇ j has a low degree of importance.
  • the convolution filter F1 having a low degree of importance has a relatively small influence on the image generation, and therefore even if deleted, the influence on the image generation accuracy is relatively small.
  • the filter deletion unit 6 as shown in the following equation (2), based on the scaling factor alpha j, scaling factor alpha j calculates the importance Im j of a convolution filter F1 is multiplied to the output.
  • h ( ⁇ j ) is a function that returns a larger value as ⁇ j increases, for example.
  • the filter deleting unit 6 deletes the other convolutional filters F1 while leaving the upper X% convolutional filters F1 having a higher degree of importance Im j among the plurality of convolutional filters F1 included in the convolutional neural network N1.
  • the filter deleting unit 6 deletes the convolution filter F1 having the importance Im j equal to or lower than the set value, leaving the convolution filter F1 having the importance Im j higher than the set value among the plurality of convolution filters F1.
  • the upper X% and the set value may be stored in the internal memory of the filter deleting unit 6 or may be given from the outside.
  • the control unit 9 saves the filter coefficient of the convolutional filter F1 that remains undeleted as the learning result after the size reduction. Further, the control unit 9 saves the scaling coefficient ⁇ j by which the output of the convolution filter F1 that remains without being deleted is multiplied.
  • the image generation unit 2 acquires the filter coefficient and the scaling coefficient ⁇ j of the convolution filter F1 stored by the control unit 9 as the learning result after the scale reduction.
  • the image generation unit 2 uses the acquired filter coefficient and scaling coefficient ⁇ j to generate a generated image from the input signal.
  • the image generation process itself is the same as the image generation process during learning.
  • the image generation unit 2 outputs the generated image to the output unit 7.
  • the output unit 7 Upon receiving the generated image from the image generation unit 2, the output unit 7 outputs the generated image to the outside.
  • the first embodiment described above includes the filter deletion unit 6 that deletes one or more convolution filters among the plurality of convolution filters F1 based on the importance of the plurality of convolution filters F1.
  • the convolutional neural network N1 having the convolutional filter remaining without being deleted by the filter deleting unit 6 is used to obtain an actual image from the input signal.
  • the image generation apparatus is configured to generate an image corresponding to. Therefore, the image generating apparatus can reduce the scale of the convolutional neural network N1 used for generating the image.
  • the image generation unit 2 generates the learning result after the scale reduction from the input signal using the filter coefficient and the scaling coefficient ⁇ j of the convolution filter F1 stored by the control unit 9. Generating an image.
  • the image generation device may relearn the convolutional neural network N1 before the image generation unit 2 generates a generated image from an input signal.
  • the image generation apparatus performs the processes of steps ST1 to ST7 of FIG. 4 by using the convolution filter F1 that is not deleted by the filter deletion unit 6 to re-convolve the convolutional neural network N1. You may learn.
  • the control unit 9 stores, as the re-learning result, the updated filter coefficient of the convolution filter F1 associated with the re-learning and the updated scaling coefficient ⁇ j associated with the re-learning.
  • the image generation unit 2 generates the generated image from the input signal using the filter coefficient and the scaling coefficient ⁇ j of the convolution filter F1 stored by the control unit 9 as the re-learning result.
  • the image generation device re-learns the convolutional neural network N1 to improve learning accuracy and generate a generated image close to an actual image.
  • the filter deletion unit 6 calculates the importance degree Im j of the convolution filter F1 based on the scaling coefficient ⁇ j .
  • the importance of the plurality of convolution filters F1 may be set in advance, for example.
  • Embodiment 2 In the image generating apparatus according to the first embodiment, the filter deleting unit 6 deletes one or more convolution filters F1 included in the convolutional neural network N1. However, if the filter removing unit 6 significantly reduces the convolution filter F1 at one time, there is a possibility that re-learning of the convolutional neural network N1 may fail.
  • the respective processes in the image generating unit 2, the image identifying unit 3, the filter coefficient updating unit 4, the scaling coefficient updating unit 5, and the scaling coefficient updating unit 5 and the process of the filter deleting unit 6 are alternately repeated. Therefore, an image generating apparatus that gradually deletes the convolution filter F1 will be described.
  • FIG. 7 is a flowchart showing the operation of the image generating apparatus that gradually deletes the convolution filter F1.
  • the configuration of the image generating apparatus according to the second embodiment is the same as that of the image generating apparatus according to the first embodiment, as shown in FIG.
  • the operation of the image generating apparatus according to the second embodiment will be described with reference to FIG. 7.
  • the image generating apparatus performs the processing of steps ST1 to ST7 of FIG. 4 to learn the convolutional neural network N1 (step of FIG. 7). ST11).
  • the filter deletion unit 6 calculates the importance degree Im j of the convolution filter F1 by which the scaling coefficient ⁇ j is multiplied by the output, based on the scaling coefficient ⁇ j , as shown in the above equation (2).
  • the filter deleting unit 6 deletes, for example, the convolution filter F1 having the lowest importance Im j among the plurality of convolution filters F1 included in the convolutional neural network N1 (step ST12 in FIG. 7).
  • the convolution filter F1 having the lowest importance Im j is deleted from the plurality of convolution filters F1.
  • the convolution filter F1 may be deleted stepwise, and the filter deletion unit 6 may, for example, the convolution filter F1 having the lowest importance degree Im j among the plurality of convolution filters F1 and the second lowest.
  • the convolution filter F1 may be deleted.
  • the image generating apparatus executes the processing of steps ST1 to ST7 of FIG. 4 by using the convolution filter F1 that is left without being deleted by the filter deletion unit 6 to re-create the convolutional neural network N1.
  • Learn step ST13 in FIG. 7
  • the filter deleting unit 6 determines, for example, that the convolutional filters F1 that remain are important.
  • the convolution filter F1 having the lowest degree Im j is deleted (step ST12 in FIG. 7).
  • the target number may be stored in the internal memory of the filter deleting unit 6 or may be given from the outside.
  • the control unit 9 determines that the re-learning result after the scale reduction is as follows.
  • the filter coefficient of the convolution filter F1 that remains without being deleted is saved (step ST15 in FIG. 7). Further, the control unit 9 stores the scaling coefficient ⁇ j by which the output of the convolution filter F1 that remains without being deleted is multiplied (step ST15 in FIG. 7).
  • the respective processes in the image generating unit 2, the image identifying unit 3, the filter coefficient updating unit 4, the scaling coefficient updating unit 5, and the scaling coefficient updating unit 5 and the processing in the filter deleting unit 6 are alternately performed.
  • the image generating apparatus is configured such that the convolution filter F1 is deleted stepwise by repeating the above. Therefore, the image generating apparatus according to the second embodiment can reduce the possibility that the re-learning of the convolutional neural network N1 will fail, as compared with the case where the filter deleting unit 6 significantly reduces the convolutional filter F1 at once.
  • the invention of the present application is capable of freely combining the embodiments, modifying any constituent element of each embodiment, or omitting any constituent element in each embodiment. ..
  • the present invention is suitable for an image generating apparatus and an image generating method for generating an image corresponding to a real image from an input signal by using a convolutional neural network having a plurality of convolutional filters.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

複数の畳み込みフィルタを有する畳み込みニューラルネットワークを用いて、入力信号から、生成目標の画像である実画像に相当する画像を生成する画像生成部(2)と、画像生成部(2)により生成された画像が実画像であるか否かを識別する画像識別部(3)と、画像識別部(3)の識別結果を用いて、複数の畳み込みフィルタのフィルタ係数を更新するフィルタ係数更新部(4)と、複数の畳み込みフィルタの重要度に基づいて、複数の畳み込みフィルタの中の1つ以上の畳み込みフィルタを削除するフィルタ削除部(6)とを備え、画像生成部(2)は、フィルタ係数更新部(4)によりフィルタ係数が更新された複数の畳み込みフィルタのうち、フィルタ削除部(6)により削除されずに残っている畳み込みフィルタを有する畳み込みニューラルネットワークを用いて、入力信号から、実画像に相当する画像を生成するように、画像生成装置を構成した。

Description

画像生成装置及び画像生成方法
 この発明は、複数の畳み込みフィルタを有する畳み込みニューラルネットワークを用いて、入力信号から、生成対象の画像である実画像に相当する画像を生成する画像生成装置及び画像生成方法に関するものである。
 以下の非特許文献1には、敵対的生成ネットワーク(GAN:Generative Adversarial Network)を用いて、低次元のノイズベクトルから写実的な画像を生成する画像生成装置が開示されている。
 GANを用いる画像生成装置は、畳み込みニューラルネットワークを用いる生成器と、畳み込みニューラルネットワークを用いる識別器とを備えている。
 生成器は、畳み込みニューラルネットワークを用いて、ノイズベクトルから、生成目標の画像(以下、「実画像」と称する)に近い画像(以下、「生成画像」と称する)を生成する。
 識別器は、何らかの画像が入力されると、畳み込みニューラルネットワークを用いて、入力された画像が、生成器により生成された生成画像であるのか、実画像であるのかを識別する。
 GANでは、生成器と識別器が、互いに敵対しながら、畳み込みニューラルネットワークの学習を行う。
 具体的には、生成器は、識別器を騙せるように、出来るだけ、実画像であるか否かの識別が困難な写実的な画像が生成されるように、畳み込みニューラルネットワークの学習を行う。
 一方、識別器は、生成器に騙されないように、入力された画像が、生成器により生成された生成画像であるのか、実画像であるのかを識別できるように学習を行う。
 生成器と識別器が学習を繰り返すことで、生成器により最終的に生成される画像は、実画像であるか否かの識別が困難な画像になる。
Alec Radford, Luke Metz,and Soumith Chintala,"Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks," International Conference on Learning Representations(2016).
 GANを用いる画像生成装置の生成器は、実画像であるか否かの識別が困難な生成画像を得るために、大規模な畳み込みニューラルネットワークを用いることがある。
 生成器が用いる畳み込みニューラルネットワークの規模と、生成器の演算量とは正比例するため、生成器が大規模な畳み込みニューラルネットワークを用いる場合、生成器の演算量が極めて大きくなることがあるという課題があった。
 なお、生成器の演算量が大きい場合、高速の画像生成が必要とされる組み込み機器、あるいは、メモリなどの計算資源が限られている組み込み機器などには、画像生成装置を適用することが困難である。
 この発明は上記のような課題を解決するためになされたもので、画像の生成に用いる畳み込みニューラルネットワークの規模を削減することができる画像生成装置及び画像生成方法を得ることを目的とする。
 この発明に係る画像生成装置は、複数の畳み込みフィルタを有する畳み込みニューラルネットワークを用いて、入力信号から、生成目標の画像である実画像に相当する画像を生成する画像生成部と、画像生成部により生成された画像が実画像であるか否かを識別する画像識別部と、画像識別部の識別結果を用いて、複数の畳み込みフィルタのフィルタ係数を更新するフィルタ係数更新部と、複数の畳み込みフィルタの重要度に基づいて、複数の畳み込みフィルタの中の1つ以上の畳み込みフィルタを削除するフィルタ削除部とを備え、画像生成部が、フィルタ係数更新部によりフィルタ係数が更新された複数の畳み込みフィルタのうち、フィルタ削除部により削除されずに残っている畳み込みフィルタを有する畳み込みニューラルネットワークを用いて、入力信号から、実画像に相当する画像を生成するようにしたものである。
 この発明によれば、複数の畳み込みフィルタの重要度に基づいて、複数の畳み込みフィルタの中の1つ以上の畳み込みフィルタを削除するフィルタ削除部を備え、画像生成部が、フィルタ係数更新部によりフィルタ係数が更新された複数の畳み込みフィルタのうち、フィルタ削除部により削除されずに残っている畳み込みフィルタを有する畳み込みニューラルネットワークを用いて、入力信号から、実画像に相当する画像を生成するように、画像生成装置を構成した。したがって、この発明に係る画像生成装置は、画像の生成に用いる畳み込みニューラルネットワークの規模を削減することができる。
実施の形態1に係る画像生成装置を示す構成図である。 実施の形態1に係る画像生成装置のハードウェアを示すハードウェア構成図である。 画像生成装置がソフトウェア又はファームウェアなどで実現される場合のコンピュータのハードウェア構成図である。 画像生成装置がソフトウェア又はファームウェアなどで実現される場合の処理手順である画像生成方法を示すフローチャートである。 畳み込みニューラルネットワークの概念を示す説明図である。 複数の畳み込みフィルタの出力に対するスケーリング係数α,α,α,・・・,αJ-1の乗算を示す説明図である。 畳み込みフィルタF1を段階的に削除する画像生成装置の動作を示すフローチャートである。
 以下、この発明をより詳細に説明するために、この発明を実施するための形態について、添付の図面に従って説明する。
実施の形態1.
 図1は、実施の形態1に係る画像生成装置を示す構成図である。図2は、実施の形態1に係る画像生成装置のハードウェアを示すハードウェア構成図である。
 図1及び図2において、画像生成装置は、画像処理部8及び制御部9を備えている。
 画像処理部8は、入力部1、画像生成部2、画像識別部3、フィルタ係数更新部4、スケーリング係数更新部5、フィルタ削除部6及び出力部7を備えている。
 入力部1は、例えば、図2に示す入力回路11によって実現される。
 入力部1は、入力信号として、ランダム数値列などのノイズベクトル、あるいは、生成目標の画像(以下、「実画像」と称する)と異なる画像などの入力を受け付ける。また、入力部1は、実画像の入力を受け付ける。
 入力部1は、入力信号を画像生成部2に出力し、実画像を画像識別部3に出力する。
 画像生成部2は、例えば、図2に示す画像生成回路12によって実現される。
 画像生成部2は、複数の畳み込みフィルタF1を有する畳み込みニューラルネットワークN1を用いて、入力信号から、実画像に相当する画像(以下、「生成画像」と称する)を生成する。
 画像生成部2は、生成画像を画像識別部3及び出力部7のそれぞれに出力する。
 画像生成部2において、実画像であるか否かの識別が困難な写実的な画像が、生成画像として生成されるように、畳み込みニューラルネットワークN1の学習が行われ、フィルタ係数更新部4によって、複数の畳み込みフィルタF1のフィルタ係数が更新される。
 画像識別部3は、例えば、図2に示す画像識別回路13によって実現される。
 画像識別部3は、複数の畳み込みフィルタF2を有する畳み込みニューラルネットワークN2を用いて、生成画像が実画像であるか否かの識別処理を実施する。
 画像識別部3は、生成画像が実画像であるか否かの識別結果と、スケーリング係数更新部5から出力されたそれぞれのスケーリング係数とから、画像生成部2における畳み込みニューラルネットワークN1の学習誤差を算出する。
 画像識別部3は、学習誤差をフィルタ係数更新部4及びスケーリング係数更新部5のそれぞれに出力する。
 画像識別部3において、生成画像と実画像が高精度に識別されるように、畳み込みニューラルネットワークN2の学習が行われ、フィルタ係数更新部4によって、複数の畳み込みフィルタF2のフィルタ係数が更新される。
 フィルタ係数更新部4は、例えば、図2に示すフィルタ係数更新回路14によって実現される。
 フィルタ係数更新部4は、画像識別部3の識別結果を用いて、複数の畳み込みフィルタF1のフィルタ係数を更新する。
 具体的には、フィルタ係数更新部4は、画像識別部3により算出された学習誤差が小さくなるように、複数の畳み込みフィルタF1のフィルタ係数を更新する。
 フィルタ係数更新部4は、複数の畳み込みフィルタF1の更新後のフィルタ係数を画像生成部2に出力する。
 また、フィルタ係数更新部4は、画像識別部3によって、生成画像と実画像が高精度に識別されるように、複数の畳み込みフィルタF2のフィルタ係数を更新し、複数の畳み込みフィルタF2の更新後のフィルタ係数を画像識別部3に出力する。
 スケーリング係数更新部5は、例えば、図2に示すスケーリング係数更新回路15によって実現される。
 スケーリング係数更新部5は、画像識別部3により算出された学習誤差が小さくなるように、複数のスケーリング係数を更新する。スケーリング係数は、例えば、0~1の係数である。
 スケーリング係数更新部5は、更新後の複数のスケーリング係数を画像生成部2、画像識別部3及びフィルタ削除部6のそれぞれに出力する。
 フィルタ削除部6は、例えば、図2に示すフィルタ削除回路16によって実現される。
 フィルタ削除部6は、スケーリング係数更新部5による更新後のそれぞれのスケーリング係数に基づいて、複数の畳み込みフィルタF1の全てについて、各畳み込みフィルタF1の重要度を算出する。
 フィルタ削除部6は、複数の畳み込みフィルタF1の重要度に基づいて、複数の畳み込みフィルタF1の中の1つ以上の畳み込みフィルタを削除する。
 出力部7は、例えば、図2に示す出力回路17によって実現される。
 出力部7は、画像生成部2から出力された生成画像を外部に出力する。
 制御部9は、例えば、図2に示す制御回路18によって実現される。
 制御部9は、画像処理部8の処理を制御する。また、制御部9は、学習結果として、畳み込みフィルタF1のフィルタ係数及びスケーリング係数などを保存する。
 図1では、画像生成装置の構成要素である入力部1、画像生成部2、画像識別部3、フィルタ係数更新部4、スケーリング係数更新部5、フィルタ削除部6、出力部7及び制御部9のそれぞれが、図2に示すような専用のハードウェアで実現されるものを想定している。即ち、画像生成装置が、入力回路11、画像生成回路12、画像識別回路13、フィルタ係数更新回路14、スケーリング係数更新回路15、フィルタ削除回路16、出力回路17及び制御回路18で実現されるものを想定している。
 ここで、入力回路11、画像生成回路12、画像識別回路13、フィルタ係数更新回路14、スケーリング係数更新回路15、フィルタ削除回路16、出力回路17及び制御回路18のそれぞれは、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、又は、これらを組み合わせたものが該当する。
 画像生成装置の構成要素は、専用のハードウェアで実現されるものに限るものではなく、画像生成装置がソフトウェア、ファームウェア、又は、ソフトウェアとファームウェアとの組み合わせで実現されるものであってもよい。
 ソフトウェア又はファームウェアは、プログラムとして、コンピュータのメモリに格納される。コンピュータは、プログラムを実行するハードウェアを意味し、例えば、CPU(Central Processing Unit)、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサ、あるいは、DSP(Digital Signal Processor)が該当する。
 図3は、画像生成装置がソフトウェア又はファームウェアなどで実現される場合のコンピュータのハードウェア構成図である。
 画像生成装置がソフトウェア又はファームウェアなどで実現される場合、入力部1、画像生成部2、画像識別部3、フィルタ係数更新部4、スケーリング係数更新部5、フィルタ削除部6、出力部7及び制御部9の処理手順をコンピュータに実行させるためのプログラムがメモリ31に格納される。そして、コンピュータのプロセッサ32がメモリ31に格納されているプログラムを実行する。
 図4は、画像生成装置がソフトウェア又はファームウェアなどで実現される場合の処理手順である画像生成方法を示すフローチャートである。
 また、図2では、画像生成装置の構成要素のそれぞれが専用のハードウェアで実現される例を示し、図3では、画像生成装置がソフトウェア又はファームウェアなどで実現される例を示している。しかし、これは一例に過ぎず、画像生成装置における一部の構成要素が専用のハードウェアで実現され、残りの構成要素がソフトウェア又はファームウェアなどで実現されるものであってもよい。
 次に、図1に示す画像生成装置の動作について説明する。
 まず、入力部1は、入力信号の入力を受け付けるほか、実画像の入力を受け付ける。
 入力部1は、受け付けた入力信号を画像生成部2に出力し、受け付けた実画像を画像識別部3に出力する。
 フィルタ係数更新部4は、複数の畳み込みフィルタF1のフィルタ係数の初期値を画像生成部2に出力する。フィルタ係数の初期値は、例えば、乱数を用いて決定される。
 スケーリング係数更新部5は、複数のスケーリング係数α,α,α,・・・,αJ-1の初期値を画像生成部2に出力する。スケーリング係数α,α,α,・・・,αJ-1の初期値は、例えば、1に決定される。
 画像生成部2は、入力部1から入力信号を受けると、複数の畳み込みフィルタF1を有する畳み込みニューラルネットワークN1を用いて、入力信号から実画像に相当する生成画像を生成する(図4のステップST1)。
 画像生成部2は、生成画像を画像識別部3に出力する。
 以下、画像生成部2による生成画像の生成処理を具体的に説明する。
 図5は、畳み込みニューラルネットワークの概念を示す説明図である。
 畳み込みニューラルネットワークは、図5に示すように、複数の畳み込みフィルタによって複数の畳み込み層が構成されて、複数の畳み込み層が積み重ねられたものである。
 まず、画像生成部2は、それぞれの畳み込み層において、当該畳み込み層に含まれる複数の畳み込みフィルタのフィルタ係数を用いて、入力信号に対するフィルタ処理をそれぞれ実施することで、入力信号の特徴を抽出する。
 次に、画像生成部2は、図6に示すように、抽出した特徴を示している複数の畳み込みフィルタの出力であるフィルタ処理後のそれぞれの入力信号に対して、それぞれのスケーリング係数α,α,α,・・・,αJ-1を乗算する。
 図6は、複数の畳み込みフィルタの出力に対するスケーリング係数α,α,α,・・・,αJ-1の乗算を示す説明図である。
 画像生成部2は、当該畳み込み層が、最終段の畳み込み層でなければ、複数の畳み込みフィルタの出力として、スケーリング係数乗算後のそれぞれの入力信号を次段の畳み込み層に出力する。
 当該畳み込み層が、最終段の畳み込み層であれば、スケーリング係数乗算後のそれぞれの入力信号は、画像生成部2により生成された生成画像に相当し、画像生成部2は、生成画像を画像識別部3に出力する。
 画像識別部3は、複数の畳み込みフィルタF2を有する畳み込みニューラルネットワークN2を用いて、画像生成部2から出力された生成画像が、入力部1から出力された実画像であるか否かの識別処理を実施する(図4のステップST2)。
 画像識別部3は、以下の式(1)に示すように、生成画像が実画像であるか否かの識別結果lGANと、複数の畳み込みフィルタF1の出力に対するスケーリング係数α,α,α,・・・,αJ-1とから、学習誤差Sを算出する(図4のステップST3)。
 画像識別部3によって、生成画像が実画像であると識別された場合の識別結果lGANは、例えば、0であり、生成画像が実画像と異なる画像と識別された場合の識別結果lGANは、例えば、1である。

Figure JPOXMLDOC01-appb-I000001
 式(1)において、g(α)は、例えば、スケーリング係数αの絶対値計算を行う関数である。Jは、複数の畳み込みフィルタF1のそれぞれに対応するスケーリング係数の数である。
 λは、学習誤差Sに対するスケーリング係数αの影響度を調整するための変数であり、10-5などの任意の値が用いられる。
 画像識別部3は、学習誤差Sをフィルタ係数更新部4及びスケーリング係数更新部5のそれぞれに出力する。
 フィルタ係数更新部4は、画像識別部3から学習誤差Sを受けると、学習誤差Sが小さくなるように、複数の畳み込みフィルタF1のフィルタ係数を更新する(図4のステップST4)。畳み込みフィルタF1のフィルタ係数の更新処理自体は、公知の技術であるため詳細な説明を省略する。
 フィルタ係数更新部4は、複数の畳み込みフィルタF1の更新後のフィルタ係数を画像生成部2に出力する。
 また、フィルタ係数更新部4は、画像識別部3によって、生成画像と実画像が高精度に識別されるように、複数の畳み込みフィルタF2のフィルタ係数を更新し、複数の畳み込みフィルタF2の更新後のフィルタ係数を画像識別部3に出力する。畳み込みフィルタF2のフィルタ係数の更新処理自体は、公知の技術であるため詳細な説明を省略する。
 スケーリング係数更新部5は、画像識別部3から学習誤差Sを受けると、学習誤差Sが小さくなるように、複数のスケーリング係数αを更新する(図4のステップST5)。スケーリング係数αの更新処理自体は、公知の技術であるため詳細な説明を省略する。
 スケーリング係数更新部5は、更新後の複数のスケーリング係数αを画像生成部2、画像識別部3及びフィルタ削除部6のそれぞれに出力する。
 制御部9は、ステップST1~ST5の処理が反復されるように、画像生成部2、画像識別部3、フィルタ係数更新部4及びスケーリング係数更新部5の動作を制御する。
 ステップST1~ST5の処理が反復されることで、徐々に、学習誤差Sが小さくなっていく。
 具体的には、制御部9は、ステップST1~ST5の処理の反復回数が閾値未満であれば(図4のステップST6:YESの場合)、ステップST1~ST5の処理を繰り返し実施させる。
 制御部9は、ステップST1~ST5の処理の反復回数が閾値に到達すると(図4のステップST6:NOの場合)、ステップST1~ST5の処理を終了させる。
 制御部9は、ステップST1~ST5の処理を終了させると、学習結果として、処理終了時における複数の畳み込みフィルタF1のフィルタ係数及び処理終了時における複数のスケーリング係数αのそれぞれを保存する(図4のステップST7)。
 なお、閾値は、制御部9の内部メモリに記憶されているものであってもよいし、外部から与えられるものであってもよい。
 フィルタ削除部6は、畳み込みニューラルネットワークN1が有する複数の畳み込みフィルタF1の中で、重要度が低い畳み込みフィルタF1を削除することで、畳み込みニューラルネットワークN1の規模を削減する(図4のステップST8)。
 重要度が低い畳み込みフィルタF1は、画像の生成に大きな影響を与えない畳み込みフィルタを意味する。
 以下、フィルタ削除部6による畳み込みニューラルネットワークN1の規模の削減処理を具体的に説明する。
 フィルタ削除部6は、制御部9により保存されている複数のスケーリング係数α(j=0,1,2,・・・,J-1)を取得する。
 スケーリング係数αは、畳み込みフィルタF1の出力に乗算される係数であり、スケーリング係数αが大きい程、畳み込みフィルタF1の出力が大きくなる。出力が大きい畳み込みフィルタF1は、画像の生成に大きな影響を与え、出力が小さい畳み込みフィルタF1は、画像の生成に与える影響が小さい。
 したがって、スケーリング係数αは、畳み込みフィルタF1の重要度を決定する要素となる。つまり、大きいスケーリング係数αが、出力に乗算される畳み込みフィルタF1は、重要度が高く、小さいスケーリング係数αが、出力に乗算される畳み込みフィルタF1は、重要度が低いと考えられる。
 重要度が低い畳み込みフィルタF1は、画像の生成に与える影響が相対的に小さいため、削除されても、画像の生成精度に対する影響が相対的に小さい。
 そこで、フィルタ削除部6は、以下の式(2)に示すように、スケーリング係数αに基づいて、スケーリング係数αが、出力に乗算される畳み込みフィルタF1の重要度Imを算出する。

Figure JPOXMLDOC01-appb-I000002
 式(2)において、h(α)は、例えば、αが大きい程、大きな値を返す関数である。
 フィルタ削除部6は、畳み込みニューラルネットワークN1が有する複数の畳み込みフィルタF1のうち、重要度Imが高い上位X%の畳み込みフィルタF1を残して、他の畳み込みフィルタF1を削除する。
 あるいは、フィルタ削除部6は、複数の畳み込みフィルタF1のうち、重要度Imが設定値よりも高い畳み込みフィルタF1を残して、重要度Imが設定値以下の畳み込みフィルタF1を削除する。
 ここで、上位X%及び設定値は、フィルタ削除部6の内部メモリに記憶されているものであってもよいし、外部から与えられるものであってもよい。
 制御部9は、フィルタ削除部6による畳み込みニューラルネットワークN1の規模の削減処理が終了すると、規模削減後の学習結果として、削除されずに残っている畳み込みフィルタF1のフィルタ係数を保存する。また、制御部9は、削除されずに残っている畳み込みフィルタF1の出力に乗算するスケーリング係数αを保存する。
 以上により、図1に示す画像生成装置の学習が完了する。
 以降、入力部1が、入力信号の入力を受け付けると、画像生成部2が、学習が完了している畳み込みニューラルネットワークN1を用いて、入力信号から生成画像を生成する。
 以下、画像生成部2による画像の生成処理を具体的に説明する。
 まず、画像生成部2は、規模削減後の学習結果として、制御部9により保存されている畳み込みフィルタF1のフィルタ係数及びスケーリング係数αを取得する。
 次に、画像生成部2は、取得したフィルタ係数及びスケーリング係数αを用いて、入力信号から生成画像を生成する。画像の生成処理自体は、学習時における画像の生成処理と同様である。
 画像生成部2は、生成画像を出力部7に出力する。
 出力部7は、画像生成部2から生成画像を受けると、生成画像を外部に出力する。
 以上の実施の形態1は、複数の畳み込みフィルタF1の重要度に基づいて、複数の畳み込みフィルタF1の中の1つ以上の畳み込みフィルタを削除するフィルタ削除部6を備え、画像生成部2が、フィルタ係数更新部4によりフィルタ係数が更新された複数の畳み込みフィルタF1のうち、フィルタ削除部6により削除されずに残っている畳み込みフィルタを有する畳み込みニューラルネットワークN1を用いて、入力信号から、実画像に相当する画像を生成するように、画像生成装置を構成した。したがって、画像生成装置は、画像の生成に用いる畳み込みニューラルネットワークN1の規模を削減することができる。
 図1に示す画像生成装置では、画像生成部2が、規模削減後の学習結果として、制御部9により保存されている畳み込みフィルタF1のフィルタ係数及びスケーリング係数αを用いて、入力信号から生成画像を生成している。
 しかし、これは一例に過ぎず、画像生成部2が、入力信号から生成画像を生成する前に、画像生成装置が、畳み込みニューラルネットワークN1を再学習するようにしてもよい。
 具体的には、画像生成装置が、フィルタ削除部6により削除されずに残っている畳み込みフィルタF1を用いて、図4のステップST1~ST7の処理を実施することで、畳み込みニューラルネットワークN1を再学習するようにしてもよい。
 制御部9は、再学習結果として、再学習に伴う畳み込みフィルタF1の更新後のフィルタ係数と、再学習に伴う更新後のスケーリング係数αとを保存する。
 画像生成部2は、再学習結果として、制御部9により保存されている畳み込みフィルタF1のフィルタ係数及びスケーリング係数αを用いて、入力信号から生成画像を生成する。
 画像生成装置が、畳み込みニューラルネットワークN1を再学習することで、学習精度が高まり、さらに、実画像に近い生成画像を生成することができる。
 図1に示す画像生成装置では、フィルタ削除部6が、スケーリング係数αに基づいて、畳み込みフィルタF1の重要度Imを算出している。しかし、これは一例に過ぎず、例えば、複数の畳み込みフィルタF1の重要度が事前に設定されているものであってもよい。
実施の形態2.
 実施の形態1の画像生成装置では、フィルタ削除部6が、畳み込みニューラルネットワークN1が有する畳み込みフィルタF1を1つ以上削除している。
 しかし、フィルタ削除部6が、畳み込みフィルタF1を一度に大幅削減すると、畳み込みニューラルネットワークN1の再学習を失敗する可能性がある。
 実施の形態2では、画像生成部2、画像識別部3、フィルタ係数更新部4、スケーリング係数更新部5及びスケーリング係数更新部5におけるそれぞれの処理と、フィルタ削除部6の処理とを交互に繰り返すことで、畳み込みフィルタF1を段階的に削除する画像生成装置について説明する。
 図7は、畳み込みフィルタF1を段階的に削除する画像生成装置の動作を示すフローチャートである。実施の形態2の画像生成装置の構成は、実施の形態1の画像生成装置と同様に、図1である。
 以下、図7を参照しながら、実施の形態2の画像生成装置の動作を説明する。
 実施の形態2の画像生成装置は、実施の形態1の画像生成装置と同様に、図4のステップST1~ST7の処理を実施することで、畳み込みニューラルネットワークN1の学習を行う(図7のステップST11)。
 フィルタ削除部6は、実施の形態1と同様に、制御部9により保存されている複数のスケーリング係数α(j=0,1,2,・・・,J-1)を取得する。
 フィルタ削除部6は、上記の式(2)に示すように、スケーリング係数αに基づいて、スケーリング係数αが、出力に乗算される畳み込みフィルタF1の重要度Imを算出する。
 フィルタ削除部6は、畳み込みニューラルネットワークN1が有する複数の畳み込みフィルタF1の中で、例えば、重要度Imが最も低い畳み込みフィルタF1を削除する(図7のステップST12)。
 ここでは、複数の畳み込みフィルタF1の中で、重要度Imが最も低い畳み込みフィルタF1を削除している。しかし、畳み込みフィルタF1を段階的に削除するものであればよく、フィルタ削除部6が、例えば、複数の畳み込みフィルタF1の中で、重要度Imが最も低い畳み込みフィルタF1と、2番目に低い畳み込みフィルタF1とを削除するようにしてもよい。
 実施の形態2の画像生成装置は、フィルタ削除部6により削除されずに残っている畳み込みフィルタF1を用いて、図4のステップST1~ST7の処理を実施することで、畳み込みニューラルネットワークN1を再学習する(図7のステップST13)。
 フィルタ削除部6は、削除せずに残っている畳み込みフィルタF1の数が目標数よりも多ければ(図7のステップST14:YESの場合)、残っている畳み込みフィルタF1の中で、例えば、重要度Imが最も低い畳み込みフィルタF1を削除する(図7のステップST12)。
 目標数は、フィルタ削除部6の内部メモリに記憶されているものであってもよいし、外部から与えられるものであってもよい。
 制御部9は、フィルタ削除部6により削除されずに残っている畳み込みフィルタF1の数が目標数以下であれば(図7のステップST14:NOの場合)、規模削減後の再学習結果として、削除されずに残っている畳み込みフィルタF1のフィルタ係数を保存する(図7のステップST15)。また、制御部9は、削除されずに残っている畳み込みフィルタF1の出力に乗算するスケーリング係数αを保存する(図7のステップST15)。
 以上により、実施の形態2の画像生成装置の学習が完了する。
 以上の実施の形態2は、画像生成部2、画像識別部3、フィルタ係数更新部4、スケーリング係数更新部5及びスケーリング係数更新部5におけるそれぞれの処理と、フィルタ削除部6の処理とを交互に繰り返すことで、畳み込みフィルタF1を段階的に削除するように、画像生成装置を構成した。したがって、実施の形態2の画像生成装置は、フィルタ削除部6が、畳み込みフィルタF1を一度に大幅削減する場合よりも、畳み込みニューラルネットワークN1の再学習を失敗する可能性を低減することができる。
 なお、本願発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
 この発明は、複数の畳み込みフィルタを有する畳み込みニューラルネットワークを用いて、入力信号から、実画像に相当する画像を生成する画像生成装置及び画像生成方法に適している。
 1 入力部、2 画像生成部、3 画像識別部、4 フィルタ係数更新部、5 スケーリング係数更新部、6 フィルタ削除部、7 出力部、8 画像処理部、9 制御部、11 入力回路、12 画像生成回路、13 画像識別回路、14 フィルタ係数更新回路、15 スケーリング係数更新回路、16 フィルタ削除回路、17 出力回路、18 制御回路、31 メモリ、32 プロセッサ。

Claims (8)

  1.  複数の畳み込みフィルタを有する畳み込みニューラルネットワークを用いて、入力信号から、生成目標の画像である実画像に相当する画像を生成する画像生成部と、
     前記画像生成部により生成された画像が前記実画像であるか否かを識別する画像識別部と、
     前記画像識別部の識別結果を用いて、前記複数の畳み込みフィルタのフィルタ係数を更新するフィルタ係数更新部と、
     前記複数の畳み込みフィルタの重要度に基づいて、前記複数の畳み込みフィルタの中の1つ以上の畳み込みフィルタを削除するフィルタ削除部とを備え、
     前記画像生成部は、前記フィルタ係数更新部によりフィルタ係数が更新された複数の畳み込みフィルタのうち、前記フィルタ削除部により削除されずに残っている畳み込みフィルタを有する畳み込みニューラルネットワークを用いて、入力信号から、前記実画像に相当する画像を生成することを特徴とする画像生成装置。
  2.  前記画像生成部は、
     前記畳み込みニューラルネットワークにおけるそれぞれの畳み込み層において、
     当該畳み込み層に含まれる複数の畳み込みフィルタのそれぞれを用いて、入力信号に対するフィルタ処理をそれぞれ実施したのち、フィルタ処理後のそれぞれの入力信号に対して、それぞれのスケーリング係数を乗算し、
     当該畳み込み層が最終段の畳み込み層でなければ、当該畳み込み層に含まれる複数の畳み込みフィルタが、スケーリング係数乗算後のそれぞれの入力信号を次段の畳み込み層に出力し、
     当該畳み込み層が最終段の畳み込み層であれば、当該畳み込み層に含まれる複数の畳み込みフィルタが、生成した画像として、スケーリング係数乗算後のそれぞれの入力信号を前記画像識別部に出力することを特徴とする請求項1記載の画像生成装置。
  3.  前記画像識別部は、前記画像生成部により生成された画像が前記実画像であるか否かの識別結果と、それぞれのスケーリング係数とから、前記画像生成部における前記畳み込みニューラルネットワークの学習誤差を算出し、
     前記フィルタ係数更新部は、前記画像識別部により算出された学習誤差が小さくなるように、前記複数の畳み込みフィルタのフィルタ係数を更新することを特徴とする請求項1記載の画像生成装置。
  4.  前記画像識別部により算出された学習誤差が小さくなるように、それぞれのスケーリング係数を更新するスケーリング係数更新部を備えたことを特徴とする請求項3記載の画像生成装置。
  5.  前記フィルタ削除部は、前記スケーリング係数更新部による更新後のそれぞれのスケーリング係数に基づいて、前記複数の畳み込みフィルタの重要度を算出することを特徴とする請求項4記載の画像生成装置。
  6.  前記画像識別部は、複数の畳み込みフィルタを有する畳み込みニューラルネットワークを用いて、前記画像生成部により生成された画像が前記実画像であるか否かを識別することを特徴とする請求項1記載の画像生成装置。
  7.  前記画像生成部、前記画像識別部及び前記フィルタ係数更新部におけるそれぞれの処理と、前記フィルタ削除部の処理とを交互に繰り返すことで、前記畳み込みニューラルネットワークが有する畳み込みフィルタを段階的に削除することを特徴とする請求項1記載の画像生成装置。
  8.  画像生成部が、複数の畳み込みフィルタを有する畳み込みニューラルネットワークを用いて、入力信号から、生成目標の画像である実画像に相当する画像を生成し、
     画像識別部が、前記画像生成部により生成された画像が前記実画像であるか否かを識別し、
     フィルタ係数更新部が、前記画像識別部の識別結果を用いて、前記複数の畳み込みフィルタのフィルタ係数を更新し、
     フィルタ削除部が、前記複数の畳み込みフィルタの重要度に基づいて、前記複数の畳み込みフィルタの中の1つ以上の畳み込みフィルタを削除するものであり、
     前記画像生成部は、前記フィルタ係数更新部によりフィルタ係数が更新された複数の畳み込みフィルタのうち、前記フィルタ削除部により削除されずに残っている畳み込みフィルタを有する畳み込みニューラルネットワークを用いて、入力信号から、前記実画像に相当する画像を生成することを特徴とする画像生成方法。
PCT/JP2018/043000 2018-11-21 2018-11-21 画像生成装置及び画像生成方法 WO2020105144A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019553586A JPWO2020105144A1 (ja) 2018-11-21 2018-11-21 画像生成装置及び画像生成方法
PCT/JP2018/043000 WO2020105144A1 (ja) 2018-11-21 2018-11-21 画像生成装置及び画像生成方法
TW108117638A TW202021341A (zh) 2018-11-21 2019-05-22 畫像生成裝置及畫像生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/043000 WO2020105144A1 (ja) 2018-11-21 2018-11-21 画像生成装置及び画像生成方法

Publications (1)

Publication Number Publication Date
WO2020105144A1 true WO2020105144A1 (ja) 2020-05-28

Family

ID=70774657

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/043000 WO2020105144A1 (ja) 2018-11-21 2018-11-21 画像生成装置及び画像生成方法

Country Status (3)

Country Link
JP (1) JPWO2020105144A1 (ja)
TW (1) TW202021341A (ja)
WO (1) WO2020105144A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230034655A (ko) * 2021-09-03 2023-03-10 연세대학교 산학협력단 n차원 텐서 곱 연산을 이용한 합성곱 신경망 압축 방법 및 장치
WO2024111476A1 (ja) * 2022-11-25 2024-05-30 ソニーセミコンダクタソリューションズ株式会社 情報処理方法、ニューラルネットワーク、情報処理装置、情報処理システム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018520404A (ja) * 2015-04-28 2018-07-26 クゥアルコム・インコーポレイテッドQualcomm Incorporated ニューラルネットワークのためのトレーニング基準としてのフィルタ特異性

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018520404A (ja) * 2015-04-28 2018-07-26 クゥアルコム・インコーポレイテッドQualcomm Incorporated ニューラルネットワークのためのトレーニング基準としてのフィルタ特異性

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"An illustrated guide to deep learning, revised second edition", 10 November 2018, KODANSHA LTD., JP, ISBN: 978-4-06-513331-6, article YAMASHITA, TAKAYOSHI: "Passages, An illustrated guide to deep learning, revised second edition", pages: 81-83,169 - 192, XP009521324 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230034655A (ko) * 2021-09-03 2023-03-10 연세대학교 산학협력단 n차원 텐서 곱 연산을 이용한 합성곱 신경망 압축 방법 및 장치
KR102597079B1 (ko) * 2021-09-03 2023-10-31 연세대학교 산학협력단 n차원 텐서 곱 연산을 이용한 합성곱 신경망 압축 방법 및 장치
WO2024111476A1 (ja) * 2022-11-25 2024-05-30 ソニーセミコンダクタソリューションズ株式会社 情報処理方法、ニューラルネットワーク、情報処理装置、情報処理システム

Also Published As

Publication number Publication date
JPWO2020105144A1 (ja) 2021-02-15
TW202021341A (zh) 2020-06-01

Similar Documents

Publication Publication Date Title
JP6656111B2 (ja) 画像のノイズを除去する方法及びシステム
JP7242903B2 (ja) 畳み込みニューラルネットワークに基づく発話源分離のための方法および装置
KR20190118387A (ko) 합성곱 신경망 기반 이미지 처리 시스템 및 방법
JP6724869B2 (ja) 多層ニューラルネットワークのニューロンの出力レベル調整方法
CN107516290B (zh) 图像转换网络获取方法、装置、计算设备及存储介质
WO2016107426A1 (en) Systems and methods to adaptively select execution modes
CN110598717B (zh) 图像特征的提取方法、装置及电子设备
WO2019194299A1 (ja) 学習装置、学習方法および学習プログラム
WO2020105144A1 (ja) 画像生成装置及び画像生成方法
CN106875345B (zh) 基于奇异值权重函数的非局部tv模型图像去噪方法
JP2019185127A5 (ja) ニューラルネットワークの学習装置およびその制御方法
JP2020191096A5 (ja) 推論方法、推論プログラム、モデル生成方法、モデル生成プログラム、推論装置及び学習装置
Wei et al. Deep unfolding with normalizing flow priors for inverse problems
US11620514B2 (en) Training artificial neural networks with reduced computational complexity
CN110692032A (zh) 用于自动的手势识别的方法以及装置
WO2020168796A1 (zh) 一种基于高维空间采样的数据增强方法
KR20220083833A (ko) 강인한 딥 생성 모델을 갖는 시스템 및 방법
Israelsen et al. Generalized Laguerre reduction of the Volterra kernel for practical identification of nonlinear dynamic systems
WO2004090782A1 (en) Accurate linear parameter estimation with noisy inputs
CN111630530B (zh) 数据处理系统、数据处理方法和计算机可读存储介质
US20210397962A1 (en) Effective network compression using simulation-guided iterative pruning
CN116304569A (zh) 一种用于分布式光纤传感器缺失数据的填补方法
JP2023078578A (ja) 画像処理装置、学習システム、および、学習方法
KR20240009759A (ko) 영상 복원 방법 및 장치
JP7438544B2 (ja) ニューラルネットワーク処理装置、コンピュータプログラム、ニューラルネットワーク製造方法、ニューラルネットワークデータの製造方法、ニューラルネットワーク利用装置、及びニューラルネットワーク小規模化方法

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2019553586

Country of ref document: JP

Kind code of ref document: A

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

Ref document number: 18940658

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18940658

Country of ref document: EP

Kind code of ref document: A1