查看keras各种网络结构各层的名字方式


Posted in Python onJune 11, 2020

举例

base_model = ResNet50(weights=‘imagenet', include_top=True)
print(base_model.summary())

得到这个结果

查看keras各种网络结构各层的名字方式

补充知识:使用keras,在load_model()时,出现NameError: name '***' is not defined

是因为在构造模型是,使用了自定义的层,如Lambda()

# 文本相似度评估方式
def exponent_neg_manhattan_distance(sent_left, sent_middle, sent_right):
  '''基于曼哈顿空间距离计算两个字符串语义空间表示相似度计算'''
  return ((K.exp(-K.sum(K.abs(sent_left - sent_middle), axis=1, keepdims=True)) - K.exp(-K.sum(K.abs(sent_left - sent_right), axis=1, keepdims=True))) + 1) / 2
 
def bilstm_siamese_model():
  '''搭建孪生网络'''
  #可以在这里调参
  embedding_layer = Embedding(VOCAB_SIZE + 1,
                EMBEDDING_DIM,
                weights=[embedding_matrix],
                input_length=MAX_LENGTH,
                trainable=True, #原本为False
                mask_zero=True)
  #输入层
  left_input = Input(shape=(MAX_LENGTH,), dtype='float32', name="left_x") #(?, 25)
  middle_input = Input(shape=(MAX_LENGTH,), dtype='float32', name="middle_x") #(?, 25)
  right_input = Input(shape=(MAX_LENGTH,), dtype='float32', name='right_x')
  #嵌入层
  encoded_left = embedding_layer(left_input) #(?, 25, 300)
  encoded_middle = embedding_layer(middle_input) #(?, 25, 300)
  encoded_right = embedding_layer(right_input)
  # print(encoded_left)
  #孪生网络
  shared_lstm = create_base_network(input_shape=(MAX_LENGTH, EMBEDDING_DIM))
  left_output = shared_lstm(encoded_left)
  middle_output = shared_lstm(encoded_middle)
  right_output = shared_lstm(encoded_right)
 
  # 文本相似度评估方式
  distance = Lambda(lambda x: exponent_neg_manhattan_distance(x[0], x[1], x[2]),output_shape=lambda x: (x[0][0], 1))([left_output, middle_output, right_output]) #第二个lambda函数的输入参数不清楚,x[0][0]
  print('distance',distance)
  model = Model([left_input, middle_input, right_input], distance)
  model.compile(loss='binary_crossentropy',
         optimizer='nadam',
         metrics=['accuracy'])
  model.summary()
  return model

虽然之前已经定义好了exponent_neg_manhattan_distance(),但是在load_model()依然会报NameError: name 'exponent_neg_manhattan_distance' is not defined

解决办法:

查看keras各种网络结构各层的名字方式

在load_model的时候,加一个custom_objects参数就可以了,即

model = load_model(model_path,custom_objects={'exponent_neg_manhattan_distance': exponent_neg_manhattan_distance}) #对自定义层一定要说明

注:用Google搜bug比用baidu搜质量会高不少。

以上这篇查看keras各种网络结构各层的名字方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python集合类型用法分析
Apr 08 Python
python实现八大排序算法(1)
Sep 14 Python
Python numpy实现数组合并实例(vstack,hstack)
Jan 09 Python
python Celery定时任务的示例
Mar 13 Python
python正则表达式之对号入座篇
Jul 24 Python
使用python绘制3维正态分布图的方法
Dec 29 Python
Python实现计算字符串中出现次数最多的字符示例
Jan 21 Python
python matplotlib画图库学习绘制常用的图
Mar 19 Python
Python 保持登录状态进行接口测试的方法示例
Aug 06 Python
使用pymysql查询数据库,把结果保存为列表并获取指定元素下标实例
May 15 Python
Django-celery-beat动态添加周期性任务实现过程解析
Nov 26 Python
Ubuntu16安装Python3.9的实现步骤
Dec 15 Python
python datetime时间格式的相互转换问题
Jun 11 #Python
完美解决keras保存好的model不能成功加载问题
Jun 11 #Python
keras load model时出现Missing Layer错误的解决方式
Jun 11 #Python
Pyinstaller加密打包应用的示例代码
Jun 11 #Python
解决keras加入lambda层时shape的问题
Jun 11 #Python
python opencv把一张图片嵌入(叠加)到另一张图片上的实现代码
Jun 11 #Python
keras slice layer 层实现方式
Jun 11 #Python
You might like
php对gzip文件或者字符串解压实例参考
2008/07/25 PHP
Linux下创建nginx脚本-start、stop、reload…
2014/08/03 PHP
php获取ajax的headers方法与内容实例
2017/12/27 PHP
JavaScript获取对象在页面中位置坐标的方法
2016/02/03 Javascript
JavaScript DOM 对象深入了解
2016/07/20 Javascript
详解AngularJS ng-class样式切换
2017/06/27 Javascript
详解vue + vuex + directives实现权限按钮的思路
2017/10/24 Javascript
使用Ajax和Jquery配合数据库实现下拉框的二级联动的示例
2018/01/25 jQuery
jQuery实现获取动态添加的标签对象示例
2018/06/28 jQuery
Vue中图片Src使用变量的方法
2019/10/30 Javascript
手把手教你如何编译打包video.js
2020/12/09 Javascript
python计算书页码的统计数字问题实例
2014/09/26 Python
跟老齐学Python之使用Python查询更新数据库
2014/11/25 Python
以Flask为例讲解Python的框架的使用方法
2015/04/29 Python
在PyCharm下使用 ipython 交互式编程的方法
2019/01/17 Python
python gensim使用word2vec词向量处理中文语料的方法
2019/07/05 Python
基于pytorch padding=SAME的解决方式
2020/02/18 Python
Python sorted对list和dict排序
2020/06/09 Python
Python闭包装饰器使用方法汇总
2020/06/29 Python
python全栈开发语法总结
2020/11/22 Python
利用html5 canvas动态画饼状图的示例代码
2018/04/02 HTML / CSS
加拿大床上用品、家居装饰、厨房和浴室产品购物网站:Linen Chest
2018/06/05 全球购物
英国婴儿产品专家:Samuel Johnston
2020/04/20 全球购物
市场营销专业大学生职业生涯规划文
2014/03/06 职场文书
招聘专员岗位职责
2014/03/07 职场文书
表彰大会主持词
2014/03/26 职场文书
助理政工师申报材料
2014/06/03 职场文书
机票销售员态度不好检讨书
2014/09/27 职场文书
见习期个人总结
2015/03/05 职场文书
关于倡议书的范文
2015/04/29 职场文书
医院见习总结
2015/06/24 职场文书
关于党风廉政建设宣传教育月的活动总结!
2019/08/08 职场文书
MySQL系列之七 MySQL存储引擎
2021/07/02 MySQL
opencv用VS2013调试时用Image Watch插件查看图片
2021/07/26 Python
在Spring-Boot中如何使用@Value注解注入集合类
2021/08/02 Java/Android
单机多实例部署 MySQL8.0.20
2022/05/15 MySQL