GlobalAveragePooling2D层

keras.layers.pooling.GlobalAveragePooling2D(dim_ordering=‘default‘)

为空域信号施加全局平均值池化

参数

  • data_format:字符串,“channels_first”或“channels_last”之一,代表图像的通道维的位置。该参数是Keras 1.x中的image_dim_ordering,“channels_last”对应原本的“tf”,“channels_first”对应原本的“th”。以128x128的RGB图像为例,“channels_first”应将数据组织为(3,128,128),而“channels_last”应将数据组织为(128,128,3)。该参数的默认值是~/.keras/keras.json中设置的值,若从未设置过,则为“channels_last”。

输入shape

‘channels_first’模式下,为形如(samples,channels, rows,cols)的4D张量

‘channels_last’模式下,为形如(samples,rows, cols,channels)的4D张量

输出shape

形如(nb_samples, channels)的2D张量

 

示例代码

keras-finetuning

def build_model(nb_classes):
base_model = InceptionV3(weights='imagenet', include_top=False) # add a global spatial average pooling layer
x = base_model.output
x = GlobalAveragePooling2D()(x)
# let's add a fully-connected layer
x = Dense(1024, activation='relu')(x)
# and a logistic layer
predictions = Dense(nb_classes, activation='softmax')(x) # this is the model we will train
model = Model(input=base_model.input, output=predictions) # first: train only the top layers (which were randomly initialized)
# i.e. freeze all convolutional InceptionV3 layers
for layer in base_model.layers:
layer.trainable = False # compile the model (should be done *after* setting layers to non-trainable)
print "starting model compile"
compile(model)
print "model compile done"
return model

Kaggle-Sea-Lions-Solution

def get_model():
input_shape = (image_size, image_size, 3) model = Sequential() model.add(Conv2D(32, kernel_size=(3, 3), padding='same',
input_shape=input_shape))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Conv2D(64, kernel_size=(3, 3), padding='same'))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Conv2D(128, kernel_size=(3, 3), padding='same'))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Conv2D(n_classes, kernel_size=(3, 3), padding='same'))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2))) model.add(GlobalAveragePooling2D()) print (model.summary())
#sys.exit(0) # model.compile(loss=keras.losses.mean_squared_error,
optimizer= keras.optimizers.Adadelta()) return model
 
 
 
 
 
 

最新文章

  1. 0039 Java学习笔记-多线程-线程控制、线程组
  2. pdf.js pdfdom.js使用(转)
  3. div,li,span自适应宽度换行问题
  4. session保存用户信息
  5. 7、SQL Server索引、表压缩
  6. 钉钉客户端JS-API权限签名算法.NET版
  7. XMLHTTPRequest/Ajax请求 和普通请求的区别
  8. jenkins集成ansible注意事项Failed to connect to the host via ssh.
  9. Eclipse for Mac 常用快捷键
  10. csuoj 1507: 超大型LED显示屏
  11. hdu5314 Happy King
  12. (转)用AGG实现高质量图形输出(一)
  13. rsync同步工具学习笔记
  14. JSP和Servlet的区别。
  15. android 豆瓣客户端 视频
  16. linux的视频学习4(网络配置和rpm)
  17. 如何获得select被选中option的value和text
  18. Windows下Mongodb启动问题
  19. C语言实例:数组与字符串
  20. 使用libvirtAPI打快照原理

热门文章

  1. Openerp负载平衡
  2. 搭建Nuget.Server push时,"Failed to process request. 'Method Not Allowed'"
  3. sql 获取列名
  4. SpringMVC和dubbo简单的整合(附Demo)
  5. java学习-java.lang.Math随机数生成
  6. tensorflow summary
  7. java-TreeSet进行排序的2种方式
  8. Linux C 遍历指定目录
  9. java 之 异常处理小结
  10. tomcat与jboss等容器的区别