畳み込みの結果を精査する
「非線形関数」
さて、Feature Mapを生成してもそれで終わりではない。Feature Map生成はあくまで元画像から「特徴を抽出」するだけである。その結果として、抽出したFeature Mapが「次のニューロンに伝達するほど明確に特徴が出ているか」を判断させるのが、次の非線形関数である。
先も書いたように「発火」をつかさどる部分である。もともとは、シグモイド関数と呼ばれるものを使っていた。シグモイド関数は下図に示すようなもので、ちょうど入力値xが0のあたりが一番大きく変化する性質を持っている。これが一番、もともとのニューロンの発火の仕組みに近い、ということで採用されたものである。
ただ計算する側にとっては厄介である。なによりexp(-x)という関数の計算には結構時間がかかるからだ。まじめに計算しようとするとテイラー展開(これは確か高校で勉強した記憶がある、と書いたら編集氏より大学じゃないんですか?と突っ込みが入った。そうかもしれない)を使うことになる。
下図がそのテイラー展開であるが、除算が入るうえにどこまで計算するか(定義上は無限に続くが、そんなにやってられないので、適当なところで切り上げる)で処理量が大きく変わる。
除算が問題なのは、そもそも除算のコストが非常に大きいためだ。連載185回で、Pentiumのバグに絡んで除算の方法を説明したが、加減算や乗算に比べて、除算はやるべきことが非常に多い。
例えば“Intel 64 and IA-32 Architectures Optimization Reference Manual”で命令のスループットとレイテンシーを確認すると、汎用命令つまりMMXでもSSEでもAVXでもないx86命令の場合、以下のようになっている(CPUアーキテクチャーによってスループットやレイテンシーは変化する)。
| 汎用命令 | ||||||
|---|---|---|---|---|---|---|
| ADD/SUB(加減算) | スループットは0.25~0.33サイクル/命令、レイテンシーは1サイクル | |||||
| MUL/IMUL(乗算) | スループットは1サイクル/命令、レイテンシーは3~5サイクル | |||||
| DIV/IDIV(除算) | スループット未掲載、レイテンシーは19~26サイクル | |||||
ADD/SUBでスループットが0.25~0.33サイクル/命令というのは、1サイクルで3回ないし4回の演算が可能という話で、乗算は1サイクルあたり1回。
そして除算はスループットなし、というのはパイプライン化されていないという話であって、1回除算を始めたら、それが終わるまで次の除算を開始できない。
そしてレイテンシーは19~26サイクルなので、ざっくり言えば除算は加減算の100倍遅いことになる。したがって、テイラー展開の2!や3!の除算はできる限り避けたい。しかも、シグモイド関数そのものが除算を必要とするから、輪をかけて遅くなるわけだ。
入力値が整数8bitであればテーブル参照という手もなくはないのだろうが、精度を上げるために内部を浮動小数点演算にしていると、テーブル参照にしても大ごとになる。
ところが2012年のAlexNetでは、ここにシグモイド関数を使わなくても、前述した非線形関数のようにMax Pooling(入力値と0を比較し、大きい方を返す)を使っても十分良い結果が得られるとわかったため、これでだいぶ計算負荷が減った形になる。
それもあって、このあとはシグモイド関数を使う頻度がかなり減ったようだが、最近のAI向けアクセラレーターの中にはハードウェアでシグモイド関数を実装しているものがいくつかあるあたり、まだ精度を重視する用途で使われている模様だ。

この連載の記事
-
第852回
PC
Google最新TPU「Ironwood」は前世代比4.7倍の性能向上かつ160Wの低消費電力で圧倒的省エネを実現 -
第851回
PC
Instinct MI400/MI500登場でAI/HPC向けGPUはどう変わる? CoWoS-L採用の詳細も判明 AMD GPUロードマップ -
第850回
デジタル
Zen 6+Zen 6c、そしてZen 7へ! EPYCは256コアへ向かう AMD CPUロードマップ -
第849回
PC
d-MatrixのAIプロセッサーCorsairはNVIDIA GB200に匹敵する性能を600Wの消費電力で実現 -
第848回
PC
消えたTofinoの残響 Intel IPU E2200がつなぐイーサネットの未来 -
第847回
PC
国産プロセッサーのPEZY-SC4sが消費電力わずか212Wで高効率99.2%を記録! 次世代省電力チップの決定版に王手 -
第846回
PC
Eコア288基の次世代Xeon「Clearwater Forest」に見る効率設計の極意 インテル CPUロードマップ -
第845回
PC
最大256MB共有キャッシュ対応で大規模処理も快適! Cuzcoが実現する高性能・拡張自在なRISC-Vプロセッサーの秘密 -
第844回
PC
耐量子暗号対応でセキュリティ強化! IBMのPower11が叶えた高信頼性と高速AI推論 -
第843回
PC
NVIDIAとインテルの協業発表によりGB10のCPUをx86に置き換えた新世代AIチップが登場する? -
第842回
PC
双方向8Tbps伝送の次世代光インターコネクト! AyarLabsのTeraPHYがもたらす革新的光通信の詳細 - この連載の一覧へ














