在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 相关文章推荐
在Django的模型中添加自定义方法的示例
Jul 21 Python
浅谈Python的异常处理
Jun 19 Python
Anaconda多环境多版本python配置操作方法
Sep 12 Python
Python实现改变与矩形橡胶的线条的颜色代码示例
Jan 05 Python
Win10下python 2.7.13 安装配置方法图文教程
Sep 18 Python
符合语言习惯的 Python 优雅编程技巧【推荐】
Sep 25 Python
Django框架模板文件使用及模板文件加载顺序分析
May 23 Python
python定间隔取点(np.linspace)的实现
Nov 27 Python
pytorch中的transforms模块实例详解
Dec 31 Python
Python使用文件操作实现一个XX信息管理系统的示例
Jul 02 Python
python爬取网易云音乐热歌榜实例代码
Aug 07 Python
Python 可迭代对象 iterable的具体使用
Aug 07 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
PDO的安全处理与事物处理方法
2016/10/31 PHP
php和nginx交互实例讲解
2019/09/24 PHP
Javascript学习笔记8 用JSON做原型
2010/01/11 Javascript
动态加载dtree.js树treeview(示例代码)
2013/12/17 Javascript
将form表单中的元素转换成对象的方法适用表单提交
2014/05/02 Javascript
简单易用的倒计时js代码
2014/08/04 Javascript
JS辨别访问浏览器判断是android还是ios系统
2014/08/19 Javascript
jquery div模态窗口的简单实例
2016/05/28 Javascript
微信小程序 picker-view 组件详解及简单实例
2017/01/10 Javascript
Angular.js初始化之ng-app的自动绑定与手动绑定详解
2017/07/31 Javascript
一个Js文件函数中调用另一个Js文件函数的方法演示
2017/08/14 Javascript
Node.JS 循环递归复制文件夹目录及其子文件夹下的所有文件
2017/09/18 Javascript
最后说说Vue2 SSR 的 Cookies 问题
2018/05/25 Javascript
小程序实现列表点赞功能
2018/11/02 Javascript
详解async/await 异步应用的常用场景
2019/05/13 Javascript
一次微信小程序内地图的使用实战记录
2019/09/09 Javascript
基于脚手架创建Vue项目实现步骤详解
2020/08/03 Javascript
vue3.0 自适应不同分辨率电脑的操作
2021/02/06 Vue.js
python教程之用py2exe将PY文件转成EXE文件
2014/06/12 Python
Python实现的FTP通信客户端与服务器端功能示例
2018/03/28 Python
python爬虫正则表达式之处理换行符
2018/06/08 Python
Python3数据库操作包pymysql的操作方法
2018/07/16 Python
Python pip使用超时问题解决方案
2020/08/03 Python
CSS3盒子模型详解
2013/04/24 HTML / CSS
HTML5实现移动端复制功能
2018/04/19 HTML / CSS
办公室驾驶员岗位职责
2013/11/15 职场文书
《金色的脚印》教后反思
2014/04/23 职场文书
演讲稿格式
2014/04/30 职场文书
陈胜吴广起义口号
2014/06/20 职场文书
相亲活动方案
2014/08/26 职场文书
绿色环保家庭事迹材料
2014/08/31 职场文书
房屋认购协议书
2015/01/29 职场文书
暂住证证明
2015/06/19 职场文书
《夜莺的歌声》教学反思
2016/02/22 职场文书
幼儿园科学课教学反思
2016/03/03 职场文书
SONY AN-LP1 短波有源天线放大器图
2022/04/05 无线电