#深層学習における、畳み込み
深層学習における「畳み込み」の意味は、比較的わかりにくい、かもしれない。
「畳み込み」の説明として、wikipadiaの説明が引用されている例もよくみる。
この記事では、「畳み込み」と「相互相関」の違いを強調されている例があったので、備忘のため、記事にする。
ここにこだわる人の意図は、CNNが、相関のかたまりのようにとらえる立場のような気がする。
ワタシの理解では、あまり、その差を強調しすぎるより、「相互相関」も「畳み込み」の一種ぐらいの理解でもいいような気がする。
#CNNは、畳み込みではく、相互相関である
Wikipediaの英語のほうのconvolutionの記事によると、以下のように説明されている。
引用
Convolutional neural networks apply multiple cascaded convolution kernels with applications in machine vision and artificial intelligence. Though these are actually cross correlations rather than convolutions.
↓DeepL翻訳
畳み込みニューラルネットワークは、マシンビジョンや人工知能に応用されている複数のカスケード畳み込みカーネルを適用しています。しかし、これらは実際には畳み込みではなく相互相関である。
#np.convolve, np.correlate。
np.convolve, np.correlateの例を示す。向き、符号の差であることが理解できるのでは。
##np.convolve
2つ目の山のみが非常に大きくなることを期待しましたが、、、、それほど、差はないですが、一応、2つ目のが一番高い!!(2つ目は、逆向きです。)
#まとめ
特にありません。
以前、以下の記事を書きました。この記事は、単なる言葉に対する違和感でした。
深層学習のCNNのConvolution(畳み込み)の意味がどうしても納得できなかったが。。。
今後、ちょっと、留意したいのが、
「畳み込み」は、ある分野の技術者には、とっても馴染みがあるはずで、それに馴染んでいないワタシと馴染んでいる人では、ちょっと、頭に浮かぶものが違う可能性あり、ということなど。