GTC 2015 - Deep Learning用のCUDAライブラリ「cuDNN」
NVIDIAはGPUに最適化したライブラリを各種、開発、提供しているが、その一環として、Deep Neural Network(DNN)開発用の「cuDDN」というライブラリがある。このcuDNNの概要がGTC 2015で発表された。なお、cuDDNは昨年9月に第1版がリリースされ、現在は改良版の第2版がリリースされているという状態である。
DNNの開発は、U.C.BerkeleyのCaffe、モントリオール大のTheanoなどのフレームワークを使えば、基本的な機能はライブラリの呼び出しだけで記述でき、詳細な機能をプログラムする必要はないので、大幅に省力化できる。しかし、これまでは、それぞれのフレームワークのGPU対応は個別に行われており、効率が悪かった。
cuDNNはDNNで使われる基本的な機能をまとめたCUDAライブラリであり、すべてのフレームワークから簡単に呼び出して使えるということを目的としている。これにより、フレームワークごとにCUDAコードを書くという無駄が省け、NVIDIAが最適化したライブラリを提供するので、性能的にもよいものができる。
DNNの各層の処理は、入力画像とフィルタのConvolutionを計算し、2×2や3×3の小領域の最大値を取るMax Poolingを行い、その値をActivation関数という非線形な関数で変換するという処理となる。