web-dev-qa-db-ja.com

ディープラーニングの分野でFLOPSとは何ですか?

ディープラーニングの分野でFLOPSとは何ですか?なぜ私たちはただFloという用語を使わないのですか?

凍結深部学習ネットワークの操作数を測定するために、FLOPSを使用します。

Wikipediaの後、FLOPS =毎秒浮動小数点演算。コンピューティングユニットをテストするとき、私たちは時間を考慮する必要があります。しかし、深部学習ネットワークを測定する場合は、この時間の概念をどのように理解できますか?単にFLO(浮動小数点業務)という用語を使用しないでください。

なぜ人々はその用語を使っていますか?私が知らないことがあるならば、それは何ですか?

====添付ファイル===

私が言及した凍った深い学習ネットワークは単なる一種のソフトウェアです。ハードウェアではありません。深い学習の分野では、人々はFLOPSを使用してネットワークモデルを実行するために必要な操作を測定します。この場合、私の意見では、私たちはTERMを使うべきです。私は人々がFLOPSについて混乱していると思った、他の人が同じことを考えるかどうか、あるいは間違っているのであれば知りたいのです。

これらのケースを見てください。

CNNのネットのフロップの計算方法

https://iq.opengenus.org/floating-point-operations-per-second-flops-per-second-flops-second-models/

9
ladofa

ディープラーニングの分野でFLOPSとは何ですか?なぜ私たちはただFloという用語を使わないのですか?

フロップ(1秒あたりの浮動小数点演算)は、ほとんどのフィールドで同じです。ハードウェアが(あなたが非常にラッキーだったら)可能性があるかもしれない浮動小数点演算の最大数(理論的).

FLOは常に無限大になるため、FLOを使用しません(無限の時間ハードウェアが無限の浮動小数点演算を実行できます)。

1つの「浮動小数点操作」は1つの乗算、1つの分割、...通常(現代のCPUの場合)FLOPSは「融合多重化」命令の繰り返し使用から計算されます。その命令は2の浮動小数点演算としてカウントされます。 SIMDと組み合わせると、単一の命令(8インプル、並列に追加する)が16の浮動小数点命令としてカウントされる可能性があります。もちろん、これは計算された理論的価値であるので、メモリアクセス、枝、IRQSなどのようなものを無視します。これが、「理論的フロップ」が実際には達成可能ではない理由です。

なぜ人々はその用語を使っていますか?私が知らないことがあるならば、それは何ですか?

主にそれは、マーケティング目的のための強力なハードウェアのためのものを説明するために使用されます(例えば、私たちの新しいCPUは5 GFLOPS!」)。

3
Brendan