首页 > 其他分享 >model.save() model. save_weights ()

model.save() model. save_weights ()

时间:2023-10-07 11:13:12浏览次数:35  
标签:bn strides weights model save Conv2D prelu

 

model.save_weights('./saved_models/8.h5')

 

===========================================================================

model.save()保存了模型的图结构和模型的参数,保存模型的后缀是.hdf5。

model. save_weights ()只保存了模型的参数,并没有保存模型的图结构,保存模型的后缀使用.h5。

所以使用save_weights保存的模型比使用save() 保存的模型的大小要小。同时加载模型时的方法也不同。model.save()保存了模型的图结构,直接使用load_model()方法就可加载模型然后做测试,例:

from  tensorflow.keras.models import load_model

model=load_model("my_model_.hdf5")

加载save_weights保存的模型就稍微复杂了一些,还需要再次描述模型结构信息才能加载模型。例:

 

def bn_prelu(x):

    x = BatchNormalization(epsilon=1e-5)(x)

    x = PReLU()(x)

    return x

 

def build_model(out_dims, input_shape=(norm_size, norm_size, 3)):

    inputs_dim = Input(input_shape)

    x = Conv2D(32, (3, 3), strides=(2, 2), padding='same')(inputs_dim)

    x = bn_prelu(x)

    x = Conv2D(32, (3, 3), strides=(1, 1), padding='same')(x)

    x = bn_prelu(x)

    x = MaxPooling2D(pool_size=(2, 2))(x)

    x = Conv2D(64, (3, 3), strides=(1, 1), padding='same')(x)

    x = bn_prelu(x)

    x = Conv2D(64, (3, 3), strides=(1, 1), padding='same')(x)

    x = bn_prelu(x)

    x = MaxPooling2D(pool_size=(2, 2))(x)

    x = Conv2D(128, (3, 3), strides=(1, 1), padding='same')(x)

    x = bn_prelu(x)

    x = Conv2D(128, (3, 3), strides=(1, 1), padding='same')(x)

    x = bn_prelu(x)

    x = MaxPooling2D(pool_size=(2, 2))(x)

    x = Conv2D(256, (3, 3), strides=(1, 1), padding='same')(x)

    x = bn_prelu(x)

    x = Conv2D(256, (3, 3), strides=(1, 1), padding='same')(x)

    x = bn_prelu(x)

    x = GlobalAveragePooling2D()(x)

    dp_1 = Dropout(0.5)(x)

    fc2 = Dense(out_dims)(dp_1)

    fc2 = Activation('softmax')(fc2) #此处注意,为sigmoid函数

    model = Model(inputs=inputs_dim, outputs=fc2)

    return model

model=build_model(labelnum)

model. load_weights(“my_model_.h5”);
————————————————

原文链接:https://blog.csdn.net/hhhhhhhhhhwwwwwwwwww/article/details/109557652

 

标签:bn,strides,weights,model,save,Conv2D,prelu
From: https://www.cnblogs.com/emanlee/p/17694785.html

相关文章

  • [知识管理] Obsidian + Remotely Save插件 + 第三方存储/OSS(七牛云)的同步方案
    0序言在几经选择、对比之后,我选择:Obsidian+RemotelySave插件+第三方存储/OSS(七牛云)的方案来搭建自己的【知识管理系统】。对比分析知识管理工具的过程,详情参见:[知识管理]个人知识管理之知识管理工具的全面分析-博客园/千千寰宇【推荐】知识管理与数据管理系......
  • Depth Camera-based 3D Modeling
    基于深度相机的3D建模受到夏同学和王希同学的启发,我这几天看了下深度相机这一块,用于三维重建三维重建的pipeline是:深度图采集(主动式和被动式)->深度图预处理(噪音)->场景表示(立体/表面表示)->深度图像融合(相邻帧,涉及到点对匹配和位姿联合优化)->纹理重建。trade-offs有:基于体素的......
  • odoo中用javascript调用model中定义好的方法
    odoo中如果前端界面要调用后台model中写好的方法,很简单。使用do_action即可,比如要调用改res.users的默认语言后执行的方法odoo.define('switch_language.SwitchLanguageMenu',function(require){"usestrict";varModel=require('web.Model');varsession......
  • SAP Virtual Data Model 和 CDS View 的关联关系
    VirtualDataModel是SAPHANA的一种设计模式,它描述了数据应如何组织和访问以满足业务需求。VDM的目标是提供统一的、一致的数据访问视图,隐藏底层数据源的复杂性。VDM由基本视图(InterfaceViews)、复合视图(CompositeViews)和消费视图(ConsumptionViews)组成,以满足不同层级的业......
  • 如何查找Model的state_dict和ckpt的state_dict之间的差距
    参考资料:[自己摸索][chatgpt3.5]众所周知,Huggingface团队的transformers库是一个非常优秀非常方便的库,它使得很多模型实现了“开箱即用”。但是,由于transformers这个库的快速迭代,也导致了很多兼容性上的问题。比如今天我发现一个现象:我使用老板的transformers......
  • FastAPI学习-25.response_model 定义响应模型
    你可以在任意的_路径操作_中使用 response_model 参数来声明用于响应的模型:@app.get()@app.post()@app.put()@app.delete()fromtypingimportAny,List,UnionfromfastapiimportFastAPIfrompydanticimportBaseModelapp=FastAPI()classItem(BaseModel)......
  • --save、--save-dev的区别及相关知识
    package.json文件:项目的清单它可以做很多完全互不相关的事情。例如,它是用于工具的配置中心。它也是npm和yarn存储所有已安装软件包的名称和版本的地方。对于应用程序,package.json文件中的内容没有固定的要求。唯一的要求是必须遵守JSON格式,否则,尝试以编程的方式访问其属......
  • CSS 入门 - Box Model 盒模型
    CSS入门-BoxModel盒模型网页布局:先学习BoxModel,然后Flexbox/Grid/Float三选一即可搞定网页布局,推荐Flexbox!BOXModel四大属性:Content、Padding、Border、MarginContent:内容Border:边框线padding:内容与边框的距离margin:边框与其他元素的距离margin与padding......
  • Mac故障排查系列:redis删除key报错MISCONF Redis is configured to save RDB snapshots
    背景:Mac下使用AnotherRedisDesktopManager客户端,删除key,遇到报错:MISCONFRedisisconfiguredtosaveRDBsnapshots,butit'scurrentlyunabletopersisttodisk.Commandsthatmaymodifythedatasetaredisabled,becausethisinstanceisconfiguredtoreporte......
  • [WPF] 随笔1:MVVM在ViewModel更新Image控件的BitmapImage值时报:必须在与 DependencyObj
    MVVM在ViewModel更新Image控件的BitmapImage值时报:必须在与DependencyObject相同的线程上创建DependencySource原因:必须在UI线程创建BitmapImage=>链接解决方案:使用MemoryStream加载图片,并在UI线程转换成BitmapImage=>链接接下来是我的写法Tip:我用的是MVVMLightViewM......