LoginSignup
2
2

More than 3 years have passed since last update.

深層学習における、畳み込み、相互相関。np.convolve, np.correlate。

Posted at

深層学習における、畳み込み

深層学習における「畳み込み」の意味は、比較的わかりにくい、かもしれない。
「畳み込み」の説明として、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の例を示す。向き、符号の差であることが理解できるのでは。

f

image.png

g

image.png

np.convolve

2つ目の山のみが非常に大きくなることを期待しましたが、、、、それほど、差はないですが、一応、2つ目のが一番高い!!(2つ目は、逆向きです。)
image.png

np.correlate

image.png

まとめ

特にありません。

以前、以下の記事を書きました。この記事は、単なる言葉に対する違和感でした。

深層学習のCNNのConvolution(畳み込み)の意味がどうしても納得できなかったが。。。

今後、ちょっと、留意したいのが、
「畳み込み」は、ある分野の技術者には、とっても馴染みがあるはずで、それに馴染んでいないワタシと馴染んでいる人では、ちょっと、頭に浮かぶものが違う可能性あり、ということなど。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2