小编eti*_*edm的帖子

SeparableConv2D 和 Conv2D 层有什么区别?

我没有在网上找到这个问题的明确答案(对不起,如果它存在)。我想了解这两种功能之间(的差异SeparableConv2DConv2D),分步用例如的输入数据集(3,3,3-) (如RGB图像)。

基于 Keras-Tensorflow 运行此脚本:

import numpy as np
from keras.layers import Conv2D, SeparableConv2D
from keras.models import Model
from keras.layers import Input

red   = np.array([1]*9).reshape((3,3))
green = np.array([100]*9).reshape((3,3))
blue  = np.array([10000]*9).reshape((3,3))

img = np.stack([red, green, blue], axis=-1)
img = np.expand_dims(img, axis=0)

inputs = Input((3,3,3))
conv1 = SeparableConv2D(filters=1, 
              strides=1, 
              padding='valid', 
              activation='relu',
              kernel_size=2, 
              depth_multiplier=1,
              depthwise_initializer='ones',
              pointwise_initializer='ones',
              bias_initializer='zeros')(inputs)

conv2 = Conv2D(filters=1, 
              strides=1, 
              padding='valid', 
              activation='relu',
              kernel_size=2, 
              kernel_initializer='ones', 
              bias_initializer='zeros')(inputs)

model1 = Model(inputs,conv1)
model2 = Model(inputs,conv2)
print("Model 1 prediction: ")
print(model1.predict(img)) …
Run Code Online (Sandbox Code Playgroud)

convolution keras keras-layer

7
推荐指数
1
解决办法
8382
查看次数

标签 统计

convolution ×1

keras ×1

keras-layer ×1