
拓海先生、最近部下から「ネットワークの容量を考えましょう」と言われまして、正直ピンと来ません。これって要するに何を測っているんでしょうか。

素晴らしい着眼点ですね!簡単に言えば「容量(capacity)」とは、そのネットワークがどれだけ多くの異なる判断ルールを内部に記憶して表現できるか、ということなんですよ。現場で言うと倉庫の棚数のようなものです。

棚の数で言うなら、層が多ければ増える、という理解でいいですか。設備投資に例えると、どこに金をかければ効率が上がるのか判断したいのです。

おっしゃる通り、概念的には棚やスペースの話です。ただこの論文は「どういう設計が棚を増やすか」を数式で明確に示した点が革新的なんです。要点を3つにまとめると、1) 容量の定義、2) 各層の大きさが決め手、3) ボトルネック層が全体を制限、です。

なるほど。で、経営判断に直結するのは「どの層に投資すればよいか」ですが、現場は畳み込み(convolution)みたいな仕組みも使っています。それにも当てはまるのでしょうか。

いい質問です。畳み込み層のように重みを共有する仕組みだと「一つの棚を複数場所で使う」イメージになり、理論上は容量の算定方法を少し変える必要があります。ただ論文ではその応用例も提示しており、条件を満たせば拡張可能なんですよ。

これって要するにボトルネックとなる小さい層があると、その分全体の能力が落ちるということ?

その通りです!素晴らしい要約ですよ。論文は層ごとのサイズを組み合わせた多項式で容量を近似しており、特に小さな層が全体の機能数を制限することを示しています。ですから投資判断では、どこがボトルネックかを見極めるのが先決なんです。

分かりました。現場に戻ってサイズを確認し、まずボトルネックを潰すのが先ですね。最後に私の理解を確認させてください。

大丈夫、一緒にやれば必ずできますよ。まとめると、1) 容量は表現できる関数の数の対数で定義、2) 層のサイズ配分が容量に決定的影響、3) 畳み込みなどの特殊構造も理論に拡張できる、の3点を会議で押さえれば説明できますよ。

分かりました。自分の言葉で言うと、「この論文はネットワークが表現できるルールの数を数える方法を示し、特に小さい層が全体の表現力を制限することを示した」ということですね。


