GDEP Solutions, Inc.
  • Home
    • 新着情報一覧
    • NVIDIA NEWS
    • GPU2021 開催概要 >
      • Day1 AI & GPU セッション
      • Day2 イメージングAI
      • Day3 GPUスパコン
      • 講演レポート | Denso
      • 過去開催 >
        • GPU2020
        • GPU2019
  • GPU製品
    • 即納モデル
    • NVIDIA GPU 一覧 >
      • NVIDIA H100
      • NVIDIA A100
      • NVIDIA RTX スペック比較 >
        • NVIDIA RTX A6000
        • NVIDIA RTX A5000
        • NVIDIA RTX A4500
        • NVIDIA RTX A4000
        • NVIDIA RTX A2000
      • Quadro GV100
    • GPUレンタル一覧
    • GPU年定額プラン
    • AI・データサイエンスおすすめ一覧 >
      • NVIDIA DGX H100
      • NVIDIA DGX A100
      • DGX STATION A100
      • HP Z8 G4 Workstation
      • HP ZBook Fury17G7 Mobile Workstation
      • Dell Precision 7920 Tower
      • DeepLearning BOXⅡ
      • DeepLearning STATION
      • NVIDIA EGX サーバー
      • HITACHI SR24000
    • 数値計算・解析おすすめ一覧 >
      • HP Z4 G4 Workstation
      • HP Z8 G4 解析ソフトウェア動作確認済みモデル
      • Supermicro 7049GP
    • NVIDIA A100搭載 Supermicro 740GP
  • ストレージ
    • Synology
    • DDN STORAGE
    • PURESTORAGE
  • HPC
    • HPC Workstation
    • HPCおすすめGPUサーバー
    • HPC SIサービス
    • AXXE-L by XTREME-D
    • NVIDIA HPC SDK
    • プログラム高速化サービス
  • クラウド製品
    • セキュリティ >
      • KernelCare
    • 仮想化 >
      • Login VSI
      • Login PI
    • リモートアクセス >
      • FastX
      • NiceDCV
      • NoMachine
    • ハイブリッドクラウドNAS >
      • Morro Data
    • クラウドストレージ >
      • クラウドストレージ Wasabi
  • GPUコラム / 導入事例
    • GPUプログラミング >
      • 初級編
      • 中級編 >
        • 第4回:MPI+OpenACC実装における計算と通信のオーバーラップ
        • 第3回:拡散現象シミュレーションのおさらい
        • 第2回:簡単なOpenACC + MPI コードで考える
        • 第1回:複数のGPUを使う方法とは?
    • GPU Technology for CG/AI >
      • 深層学習を利用した画像処理・必要なGPU性能
      • トランスフォーマー 最近流行のニューラルネットワーク
      • GAN Inversion による写実的画像生成の制御
      • 深層学習におけるアノテーションコストを抑えるための取り組み Active Learning
      • 深層学習に基づく人物画像の再照明
      • GPUの起源と進化
      • AlphaGo とその後
      • CUDAを用いたシンプルなパストレーシング
      • 流体シミュレーションの応用
      • GPUを用いた高速レンダリング
      • GPUを基盤としたCG/AIの技術進化
    • シリコンバレー発信 New Technology Report >
      • 最新記事から
    • ツブ子が聞く・見る・行く! >
      • 見る!NVIDIA RTX A6000
      • 聞く!NVIDIA DGX A100
      • 見る!NVIDIA A100 Tensor Core GPU
    • 導入事例 >
      • DGX SYSTEMS >
        • NVIDIA DGX A100 | 金沢大学
      • GPU Computing
  • 会社情報
    • ごあいさつ
    • 会社概要
    • アクセスマップ
    • 採用情報
  • お問い合わせ
深層学習を利用した画像処理・
​​​画像認識と必要なGPU性能
石川 知一 先生
東洋大学 准教授
2022年3月

1. はじめに

ご存じの通り、深層学習(Deep Learning)は様々な分野に応用されています。
この技術発展はGPUの性能向上と共にあります。

本稿では画像処理、画像認識の分野において、最新の研究ではどのようなことを実現できるかと、実際に学習を行うために必要なGPUの性能についてまとめていきます。
​
学習フェーズでどの程度の時間を要するのか、どの程度のデータを学習に用いているのか、実験を行うために最低限必要なスペックの参考にして頂けると幸いです。

2. リフォーカス

一般にリフォーカス技術は、撮影後に写真の焦点を変更することを指します。

現在、スマートフォンに搭載されているリフォーカス技術は、スマートフォンに搭載されている2つ以上のカメラを使用して撮影された複数上の画像から距離画像を推定し、焦点を変更する方法(ステレオマッチング)か、距離センサーを利用して深度情報も撮影時に同時に取得する方法が一般的です。
画像
図1:DeepLens の概要図
ここで紹介するリフォーカスは、深層学習を用いて1枚の画像から焦点位置を変更する技術 DeepLens です[1]。(論文タイトルで命名されていた技術名で,AWS DeepLensとは別の技術です)

概要を図1に示します。
学習用にはデュアルレンズカメラで収集したRGB-D データセットを用い、畳み込みニューラルネットワーク(Convolutional Neural Network のことで以下、CNN)で深度マップを推定し、アーティファクトのない合成データセットでトレーニングされたニューラルネットワークを使用し、アーティファクトの少ない結果を生成します。
深度予測モジュールは図1に示すように全焦点入 から低解像度の深度マップD を予測します。
D,とフォーカスパラメータは、低解像度の浅い被写界深度画像 L を生成するために用いられ、これは最終的に高解像度出力 H にアップサンプリングされます。
深度予測モジュールでは を受け取り、深度 D とセグメンテーション S マップを共同で予測しています。レンズブラーモジュールは空間的に変化するカーネル K を計算し、これを縮小された次元の特徴マップ F に適用して L を生成します。
ガイドアップサンプリングモジュールは被写界深度画像を元の解像度に達するまで2倍の繰り返し超解像を行います。
このアプローチは学習フェーズで時間はかかりますが、学習後のネットワークを利用して画像処理を行う過程では計算時間がかからないため、既存のアルゴリズム[2]よりも高速に(リアルタイムに)出力を確認できます。

著者らのプロジェクトサイトによると、学習もCUDAを使用できるGPUであることが要件になっているくらいで、機械学習を行う準備ができていれば問題なく動作確認できると思います。
​私の研究室では NVIDIA GeForce GTX 1050Tiでも動作可能であることを確認しています。
画像
図2:DeepLens の結果例(左が入力画像,右が手前の人物にリフォーカスした結果)
DeepLensの技術を用いてリフォーカスした結果を図2に示します。

​その他の結果例はこちらのYouTubeから確認できます。
​最初の方にはインタラクティブなデモの様子があります。推定された奥行き情報や,マウスクリックした場所にフォーカスを合わせることができるツールは実用性を感じます。

3. デブラー

デブラー技術とは、画像上のボケを取り除くことです。
ここでは焦点ボケではなく、露光時間に対して物体の速度が速いためにボケが発生するモーションブラーを取り上げます。

昔から研究されているコンピュテーショナルフォトグラフィ(レンズに入射する光線から,光学系と画像処理の2段階の情報処理を介して所望の画像をつくる技術)では、カメラの可変露光を利用してモーションブラーを除去します。

最新の深層学習では、事前にブラーを含んだ画像と、ブラーの無い画像のセットを用意し、CGAN(Conditional Generative Adversarial Network:条件付き敵対的生成ネットワーク)の技術を利用することで、1枚の写真からでもデブラーを施す方法が提案されています。(GANについては金森先生のコラムで詳しく説明されています)
画像
図3:Deblur GAN のネットワーク構造
OrsetらのDeblur GAN [3]のネットワーク構造を図3に示します。

この場合のジェネレーターはシャープな画像を再現することを目的としています。ネットワークはResNetブロック[4]に基づいています。ディスクリミネーターの目的は入力画像が人為的に作られたものかどうかを判断することです。

損失は2種類で、1つ目は知覚損失です。
知覚損失によりGANモデルがブラー除去タスクに向けられます。

2つ目はワッサースタイン損失です。ワッサースタイン損失は2つの画像の差の平均を取ります。損失関数はコンテンツ損失と敵対的損失の組み合わせとして定式化されています。

実装については、こちらのサイトで詳しく解説されています。
Orsetらの論文によると、学習では NVIDIA GeForce GTX Titan-X (Maxwell) 1枚を使用して行っていましたが、私の研究室ではAMD Radeon 540Xで学習させたところ、10エポックの学習でも約1.5日かかりました。
学習時の条件にもよりますが、より高性能なGPUを使用すると、この時間は短縮できそうです。

デブラーの結果を図4に示します。
​ブラーがかかっている場所がより鮮明になっていることが見て取れると思います。アーティファクトが残ることは問題で、図4では全体に規則的に格子状の模様が入っているように見えます。​右上の空の部分に顕著に見られると思います。
画像
図4:Deblur GAN によるデブラー結果(左が入力画像,右がデブラー後の画像)
著者らはこの研究を発展させて、DeblurGAN-v2を発表しています[5]。
計算がより速く、結果がより良くなっており、このときの学習には NVIDIA Tesla P100 を使っています。
この精度向上は、ジェネレーターにFPN(Feature Pyramid Network)を導入したことによると論文中では述べられています。

4. 画像認識

ここでは画像認識の中でも深層学習の導入が盛んな画像分類タスクについて紹介します。

画像分類タスクは、画像に写っている物体が「ネコ」、「飛行機」、「鳥」など事前に定義されたラベルのうちどれに適するかを識別する問題のことです。
自然言語処理の分野でTransformerが注目されてから程なくして、画像分類タスクにTransformerを適用しようという流れがあり、ViT(Vision Transformer)という技術が登場しました。(Transformerについては北岡さんのコラムで詳しく説明されています)
​
Dosovitskiy らによって提案されたViTは、画像を平坦なパッチに分解し、それらのパッチを線形に埋め込むシーケンスをTransformer に入力値として与え、画像分類ではトークンの出力をMLP(Multilayer perceptron) に入力することで最終的な予測を行うモデルでした[6]。

しかし、ViT は Imagenet-1k [7] のデータセットで良好な結果を得るために、より大規模なJFT-300M [8] のデータセットで事前に学習する必要があるという課題がありました。

Zhou らはViTのネットワークの深さが増すにつれViTの性能が飽和することを発見し、最小の計算量とメモリで解決するための再注意層(Re-Attention)を提案しました[9]。
Re-Attentionは、式で示すと次のようになります。
画像
Q,K,VはそれぞれTransformerのquery,key,valueを表し,Θは学習可能なヘッド数×ヘッド数の変換行列を新たに定義してVと乗算しています。
​この効果は、異なるヘッド間の相互作用を利用して、attention mapの多様性を向上させることです。この概要図を図5に示します。
​

​32層のViTモデルのMHSAをRe-Attentionに置き換えることで、精度が1.6%向上したと報告しています。​
画像
図5:オリジナルのViT(左)とDeep ViT(右)の構造の比較
この研究では、8枚のNVIDIA Telsa V100を用いて学習を行っています。
バッチサイズを256として、Transformerの層を32層重ねる実験ではGPU側へのデータ転送も膨大になるため、私の研究室にあるようなデスクトップPCに搭載できるGPUの範囲では再現実験することは難しかったです。

5. 物体追跡

物体追跡タスクは、与えられた動画像から指定した対象がどのように移動するかを推定する問題のことです。

物体追跡タスクの応用例として、動画内の移動物体に対してのオートフォーカスや、動画像内の追跡対象物に対してバウンディングボックスで強調表示をする編集を行うことで、スポーツのリプレイ映像で選手を強調表示させられることができます。

古典的な(深層学習の応用以前は)物体追跡タスク手法で代表的な技術はテンプレートマッチング、アクティブ探索、MeanShift法を利用したもの、Particle Filter、オプティカルフロー、背景差分法が提案されていました。

しかし、人物の重なりが頻繁に発生する動画像や細かい形の違いが重要になるような動画像に対してうまく追跡を行うことができないという課題が残されていました。
2021年にZhao らは物体追跡タスクにTransformer を適用したTracker with Transformer(以下、TrTr と略す)を提案しました[10]。
​図6はTrTrの概要図です。
画像
図6:TrTrの概要図
TrTr の構造は主にオフラインで追跡を行うオフライントラッキング部(図6の上部)とオンラインで分類モデルを更新するオンライン更新部(図6の下部)から構成されています。

オフライン部には、特徴抽出構造・Transformer 構造・物体の位置特定を行うヘッドで構成されています。
TrTr ではテンプレート画像とサーチ画像の2 つの画像を入力としています。

テンプレート画像は入力動画の最初のフレームの中から追跡対象となる物体を中心とした画像パッチを表します。サーチ画像はテンプレート画像よりも画像サイズが大きく、入力動画の後続のフレームにおける探索領域を表しています。サーチ画像とテンプレート画像の特徴抽出には、改良されたResNet-50 バックボーンが利用されています。

TrTr で利用されているTransformer はテンプレート画像の特徴を持つエンコーダとサーチ画像の特徴を持つデコーダの2 つで構成されています。またTrTr で利用されているTransformer のモデルではオリジナルのTransformerとは異なり1 つの層で学習を行っています。

TrTrで使用しているGPUは論文中に記載が無かったため著者に尋ねたところ、8枚のNVIDIA GeForce RTX 3090を用いて学習しているとのことでした。
学習の時間はオンラインもオフラインも20epochで、10時間程度かかるそうです。

TrTrもバッチサイズによってGPUの容量で制限がかかったのですが、私の研究室では2枚のNVIDIA Quadro RTX 4000を利用して学習を行うことができました。この環境だと学習には18時間を要しました。

6. ​おわりに

いかがでしたでしょうか。(まとめサイト風)

深層学習を利用した画像処理・画像認識の研究と、それぞれに使用されたGPUについて紹介してきました。

紹介したGPUの性能(メモリとFLOPS(FLoating-point Operations Per Second))について図7にまとめます。
​FLOPSは単精度浮動小数点数でテラ単位です。

紹介したGPUのメモリとTFLOPS(単精度)

画像
図7:本稿で紹介したGPUの性能
画像のデータセットの容量は、自然言語や音声と比べても大きいため、よりハイスペックなGPUが必要となります。

特に、層を重ねると精度が上がると言われているTransformerや、物体追跡タスクのような動画を使用する研究では、GPUを何枚も接続することが通例となっています。

深層学習の最新研究はソースコードも公開されていることが多いのですが、実験を行う場合は、GPU性能を確認してから計画的に行うことをお勧めします。
参考文献
[1] L. Wang, X. Shen, J. Zhang, O. Wang, Z. Lin, C. Y. Hsieh, S. Kong, and H. Lu, "DeepLens: Shallow Depth of Field from a Single Image," In Proc. of SIGGRAPH Asia 2018.

[2] S. Lee, E. Eisemann, and H-P. Seidel, "Depth-of-field Rendering with Multiview Synthesis.," In Proc. of SIGGRAPH Asia 2009.

[3] O. Kupyn, V. Budzan, M. Mykhailych, D. Mishkin, and J. Matas, "DeblurGAN: Blind Motion Deblurring Using Conditional Adversarial Networks," In Proc. of CVPR 2018, pp. 8183-8192.

[4] K. He, X. Zhang, S. Ren and J. Sun, "Deep Residual Learning for Image Recognition," In Proc. of CVPR 2016, pp. 770-778.

[5] O. Kupyn, T. Martyniuk, J. Wu and Z. Wang, "DeblurGAN-v2: Deblurring (Orders-of-Magnitude) Faster and Better," In Proc. of ICCV 2019, pp. 8878-8887.

[6] A. Dosovitskiy, L. Beyer, A. Kolesnikov, D. Weissenborn, X. Zhai, T. Unterthiner, M. Dehghani, M. Minderer, G. Heigold, S. Gelly, J. Uszkoreit and N. Houlsby, "An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale," arXiv preprint arXiv:2010.11929, 2020.

[7] J. Deng, W. Dong, R. Socher, L-J. Li, K. Li and L. Fei-Fei, "Imagenet: A Large-scale Hierarchical Image Database,". In Proc. of CVPR 2009, pp. 248-255.

[8] C. Sun, A. Shrivastava, S. Singh and A. Gupta. "Revisiting Unreasonable Effectiveness of Data in Deep Learning Era," In Proc. of ICCV 2017, pp. 843-852.

[9] D. Zhou, B. Kang, X. Jin, L. Yang, X. Lian, Q. Hou and J. Feng. "Deepvit: Towards Deeper Vision Transformer". arXiv preprint arXiv:2103.11886, 2021.
​
[10] M. Zhao, K. Okada and M. Inaba. "TrTr: Visual Tracking with Transformer," arXiv preprint arXiv:2105.03817, 2021.

GPUコラム「GPU Technology for CG/AI」

一覧ページを見る
Picture
GDEPソリューションズ株式会社
東京都文京区本郷三丁目34番3号 本郷第一ビル8階
TEL:03-5802-7050
・NVIDIA認定 Elite Partner [最上位レベル]
・NVIDIA Advanced Technology Program 達成  [DGX 販売資格]
・東京都公安委員会 古物営業許可番号
 第305471905562号
≫ 新着情報
≫ GPU2021開催概要
​
GPU製品
​≫ 即納モデル
≫ NVIDIA GPU一覧
 ≫NVDIA RTX スペック比較

≫ GPUレンタル一覧
≫ GPU年定額プラン
≫ AI・データサイエンスおすすめ
≫ 数値計算・解析おすすめ一覧
≫ NVIDIA A100搭載 SM740GP


​ストレージ
​≫ Synology
≫ DDN STORAGE
≫ PURESTORAGE
​
HPC
≫ HPC Workstation
≫ HPCおすすめGPUサーバー
≫ AXXE-L by XTREME-D
≫ NVIDIA HPC SDK
≫ プログラム高速化サービス
クラウド製品
​≫ セキュリティ
≫ 仮想化
≫ リモートアクセス

≫ ハイブリッドクラウドNAS
≫ クラウドストレージ
​
​GPUコラム
≫ GPUプログラミング入門
≫ GPU Technology for CG/AI
≫ シリコンバレー発信 New Technology Repot
≫ ツブ子が聞く・見る・行く
​

導入事例
≫ DGX SYSTEMS
≫ GPU Computing
会社情報
≫ ごあいさつ
≫ 会社概要
≫ アクセスマップ
≫ 採用情報
​
≫ お問い合わせ
​
≫ 個人情報の取扱いについて
≫ 利用規約

​
≫ メルマガを購読する
グループ会社
Prometech Softwareサイト
©2021 GDEP Solutions,Inc.
  • Home
    • 新着情報一覧
    • NVIDIA NEWS
    • GPU2021 開催概要 >
      • Day1 AI & GPU セッション
      • Day2 イメージングAI
      • Day3 GPUスパコン
      • 講演レポート | Denso
      • 過去開催 >
        • GPU2020
        • GPU2019
  • GPU製品
    • 即納モデル
    • NVIDIA GPU 一覧 >
      • NVIDIA H100
      • NVIDIA A100
      • NVIDIA RTX スペック比較 >
        • NVIDIA RTX A6000
        • NVIDIA RTX A5000
        • NVIDIA RTX A4500
        • NVIDIA RTX A4000
        • NVIDIA RTX A2000
      • Quadro GV100
    • GPUレンタル一覧
    • GPU年定額プラン
    • AI・データサイエンスおすすめ一覧 >
      • NVIDIA DGX H100
      • NVIDIA DGX A100
      • DGX STATION A100
      • HP Z8 G4 Workstation
      • HP ZBook Fury17G7 Mobile Workstation
      • Dell Precision 7920 Tower
      • DeepLearning BOXⅡ
      • DeepLearning STATION
      • NVIDIA EGX サーバー
      • HITACHI SR24000
    • 数値計算・解析おすすめ一覧 >
      • HP Z4 G4 Workstation
      • HP Z8 G4 解析ソフトウェア動作確認済みモデル
      • Supermicro 7049GP
    • NVIDIA A100搭載 Supermicro 740GP
  • ストレージ
    • Synology
    • DDN STORAGE
    • PURESTORAGE
  • HPC
    • HPC Workstation
    • HPCおすすめGPUサーバー
    • HPC SIサービス
    • AXXE-L by XTREME-D
    • NVIDIA HPC SDK
    • プログラム高速化サービス
  • クラウド製品
    • セキュリティ >
      • KernelCare
    • 仮想化 >
      • Login VSI
      • Login PI
    • リモートアクセス >
      • FastX
      • NiceDCV
      • NoMachine
    • ハイブリッドクラウドNAS >
      • Morro Data
    • クラウドストレージ >
      • クラウドストレージ Wasabi
  • GPUコラム / 導入事例
    • GPUプログラミング >
      • 初級編
      • 中級編 >
        • 第4回:MPI+OpenACC実装における計算と通信のオーバーラップ
        • 第3回:拡散現象シミュレーションのおさらい
        • 第2回:簡単なOpenACC + MPI コードで考える
        • 第1回:複数のGPUを使う方法とは?
    • GPU Technology for CG/AI >
      • 深層学習を利用した画像処理・必要なGPU性能
      • トランスフォーマー 最近流行のニューラルネットワーク
      • GAN Inversion による写実的画像生成の制御
      • 深層学習におけるアノテーションコストを抑えるための取り組み Active Learning
      • 深層学習に基づく人物画像の再照明
      • GPUの起源と進化
      • AlphaGo とその後
      • CUDAを用いたシンプルなパストレーシング
      • 流体シミュレーションの応用
      • GPUを用いた高速レンダリング
      • GPUを基盤としたCG/AIの技術進化
    • シリコンバレー発信 New Technology Report >
      • 最新記事から
    • ツブ子が聞く・見る・行く! >
      • 見る!NVIDIA RTX A6000
      • 聞く!NVIDIA DGX A100
      • 見る!NVIDIA A100 Tensor Core GPU
    • 導入事例 >
      • DGX SYSTEMS >
        • NVIDIA DGX A100 | 金沢大学
      • GPU Computing
  • 会社情報
    • ごあいさつ
    • 会社概要
    • アクセスマップ
    • 採用情報
  • お問い合わせ