在keras下实现多个模型的融合方式


Posted in Python onMay 23, 2020

在网上搜过发现关于keras下的模型融合框架其实很简单,奈何网上说了一大堆,这个东西官方文档上就有,自己写了个demo:

# Function:基于keras框架下实现,多个独立任务分类
# Writer: PQF
# Time: 2019/9/29

import numpy as np
from keras.layers import Input, Dense
from keras.models import Model
import tensorflow as tf

# 生成训练集
dataset_size = 128*3
rdm = np.random.RandomState(1)
X = rdm.rand(dataset_size,2)
Y1 = [[int(x1+x2<1)] for (x1,x2) in X]
Y2 = [[int(x1+x2*x2<0.5)] for (x1,x2) in X]

X_train = X[:-2]
Y_train1 = Y1[:-2]
Y_train2 = Y2[:-2]

X_test = X[-2:dataset_size]
Y_test1 = Y1[-2:dataset_size]
Y_test2 = Y2[-2:dataset_size]

#网络一
input = Input(shape=(2,))
x = Dense(units=16,activation='relu')(input)
output = Dense(units=1,activation='sigmoid',name='output1')(x)

#网络二
input2 = Input(shape=(2,))
x2 = Dense(units=16,activation='relu')(input2)
output2 = Dense(units=1,activation='sigmoid',name='output2')(x2)

#模型合并
model = Model(inputs=[input,input2],outputs=[output,output2])
model.summary()

model.compile(optimizer='rmsprop',loss='binary_crossentropy',loss_weights=[1.0,1.0])
model.fit([X_train,X_train],[Y_train1,Y_train2],batch_size=48,epochs=200)

print('x_test is :\n')
print(X_test)
print('y_test1 is :\n')
print(Y_test1)
print('y_test2 is :\n')
print(Y_test2)

predict = model.predict([X_test,X_test])
print('prediction is : \n')
print(predict[0])
print(predict[1])

补充知识:keras的融合层使用理解

最近开始研究U-net网络,其中接触到了融合层的概念,做个笔记。

在keras下实现多个模型的融合方式

上图为U-net网络,其中上采样层(绿色箭头)需要与下采样层池化层(红色箭头)层进行融合,要求每层的图片大小一致,维度依照融合的方式可以不同,融合之后输出的图片相较于没有融合层的网络,边缘处要清晰很多!

这时候就要用到keras的融合层概念(Keras中文文档https://keras.io/zh/)

文档中分别讲述了加减乘除的四中融合方式,这种方式要求两层之间shape必须一致。

重点讲述一下Concatenate(拼接)方式

拼接方式默认依照最后一维也就是通道来进行拼接

在keras下实现多个模型的融合方式

如同上图(128*128*64)与(128*128*128)进行Concatenate之后的shape为128*128*192

ps:

中文文档为老版本,最新版本的keras.layers.merge方法进行了整合

在keras下实现多个模型的融合方式

上图为新版本整合之后的方法,具体使用方法一看就懂,不再赘述。

以上这篇在keras下实现多个模型的融合方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python异步任务队列示例
Apr 01 Python
Python实现简单状态框架的方法
Mar 19 Python
使用PDB模式调试Python程序介绍
Apr 05 Python
Python实现的下载网页源码功能示例
Jun 13 Python
Win7 64位下python3.6.5安装配置图文教程
Oct 27 Python
python 异或加密字符串的实例
Oct 14 Python
详解Python匿名函数(lambda函数)
Apr 19 Python
python 根据字典的键值进行排序的方法
Jul 24 Python
pytorch masked_fill报错的解决
Feb 18 Python
Python多线程:主线程等待所有子线程结束代码
Apr 25 Python
keras实现调用自己训练的模型,并去掉全连接层
Jun 09 Python
Keras官方中文文档:性能评估Metrices详解
Jun 15 Python
Keras使用ImageNet上预训练的模型方式
May 23 #Python
使用Keras预训练模型ResNet50进行图像分类方式
May 23 #Python
基于Python中random.sample()的替代方案
May 23 #Python
keras 自定义loss损失函数,sample在loss上的加权和metric详解
May 23 #Python
keras中模型训练class_weight,sample_weight区别说明
May 23 #Python
浅谈keras中的Merge层(实现层的相加、相减、相乘实例)
May 23 #Python
Keras实现将两个模型连接到一起
May 23 #Python
You might like
重置版游戏视频
2020/04/09 魔兽争霸
功能强大的PHP发邮件类
2016/08/29 PHP
PHP7多线程搭建教程
2017/04/21 PHP
php ActiveMQ的安装与使用方法图文教程
2020/02/23 PHP
双击滚屏-常用推荐
2006/11/29 Javascript
javaScript parseInt字符转化为数字函数使用小结
2009/11/05 Javascript
js图片预加载示例
2014/04/30 Javascript
node.js 开发指南 ? Node.js 连接 MySQL 并进行数据库操作
2014/07/29 Javascript
javascript实现右下角广告框效果
2017/02/01 Javascript
解决ionic和angular上拉加载的问题
2017/08/03 Javascript
Vue自定义指令使用方法详解
2017/08/21 Javascript
JS实现的计数排序与基数排序算法示例
2017/12/04 Javascript
解决jQuery使用append添加的元素事件无效的问题
2018/08/30 jQuery
vue-cli 3.0 版本与3.0以下版本在搭建项目时的区别详解
2018/12/11 Javascript
vue 详情跳转至列表页实现列表页缓存
2019/03/27 Javascript
layui的布局和表格的渲染以及动态生成表格的方法
2019/09/18 Javascript
24行JavaScript代码实现Redux的方法实例
2019/11/17 Javascript
解决vue中的无限循环问题
2020/07/27 Javascript
微信小程序完美解决scroll-view高度自适应问题的方法
2020/08/08 Javascript
vue使用require.context实现动态注册路由
2020/12/25 Vue.js
python使用mailbox打印电子邮件的方法
2015/04/30 Python
Python中使用haystack实现django全文检索搜索引擎功能
2017/08/26 Python
python装饰器相当于函数的调用方式
2019/12/27 Python
django 连接数据库出现1045错误的解决方式
2020/05/14 Python
keras中模型训练class_weight,sample_weight区别说明
2020/05/23 Python
Python matplotlib可视化实例解析
2020/06/01 Python
PyCharm2020.1.2社区版安装,配置及使用教程详解(Windows)
2020/08/07 Python
Python Matplotlib绘图基础知识代码解析
2020/08/31 Python
海淘母婴商城:国际妈咪
2016/07/23 全球购物
英国旅行箱包和行李箱购物网站:Travel Luggage & Cabin Bags
2019/08/26 全球购物
职业规划书如何设计?
2014/01/09 职场文书
秋季婚礼证婚词
2014/01/11 职场文书
2014新课程改革心得体会
2014/03/10 职场文书
行政管理专业求职信
2014/07/06 职场文书
师德师风建设整改措施思想汇报
2014/10/11 职场文书
2016春季运动会通讯稿
2015/07/18 职场文书