こんにちは、エンジニアの中村です。 今回から数回にわたって、ディープラーニング技術の実用上の重要な課題を解決する蒸留という手法について紹介したいと思います。 ディープラーニングは非常に魅力的なモデル学習技術ですが、実際に使用する際には計算リソースがボトルネックとなり、利用可能なシーンが限定されてしまうことがあります。せっかくの魅力的な技術も、そうなってしまうと宝の持ち腐れです。蒸留は、精度を損なわずに計算負荷の小さいモデルを訓練することを可能にし、ディープラーニングが実際に利用できるシーンを拡大します。 また、蒸留はこうした計算リソースに起因する ディープラーニングの実用上の課題を解決するだけでなく、モデルの精度向上、訓練の効率化、敵対的攻撃(Adversarial Attack)に対する防御など、その他のさまざまな用途に使用可能な応用領域の広い手法でもあります。 今回の記事では、モデル圧