脚本专栏 
首页 > 脚本专栏 > 浏览文章

keras获得model中某一层的某一个Tensor的输出维度教程

(编辑:jimmy 日期: 2025/1/18 浏览:3 次 )

获得某层tensor的输出维度

代码如下所示:

from keras import backend as K

@wraps(Conv2D)
def my_conv(*args,**kwargs):
  new_kwargs={'kernel_regularizer':l2(5e-6)}
  new_kwargs['padding']='valid' #'same'
  new_kwargs['strides']=(2,2) if kwargs.get('strides')==(2,2) else (1,1)
  # new_kwargs['kernel_initializer']=keras.initializers.glorot_uniform(seed=0)
  new_kwargs.update(kwargs)
  return Conv2D(*args,**new_kwargs)
def conv(x,**kwargs):
  x=my_conv(**kwargs)(x)
  x=BatchNormalization(axis=-1)(x)
  x=LeakyReLU(alpha=0.05)(x)
  return x

def inception_resnet_a(x_input):
  x_short=x_input
  s1=conv(x_input,filters=32,kernel_size=(1,1))

  s2=conv(x_input,filters=32,kernel_size=(1,1))
  s2=conv(s2,filters=32,kernel_size=(3,3),padding='same')

  s3=conv(x_input,filters=32,kernel_size=(1,1))
  s3=conv(s3,filters=48,kernel_size=(3,3),padding='same')
  s3=conv(s3,filters=64,kernel_size=(3,3),padding='same')
  x=keras.layers.concatenate([s1,s2,s3])
  x=conv(x,filters=384,kernel_size=(1,1))
  x=layers.Add()([x_short,x])
  x=LeakyReLU(alpha=0.05)(x)
  
  print(K.int_shape(x))

使用K.int_shape(tensor_name)即可得到对应tensor的维度

以上这篇keras获得model中某一层的某一个Tensor的输出维度教程就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

上一篇:使用Python爬虫库requests发送表单数据和JSON数据
下一篇:使用Tensorflow实现可视化中间层和卷积层
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。