2019独角兽企业重金招聘Python工程师标准>>>

文:guan394077759 更多人工智能相关文章:http://siligence.ai

def get_model(): n_classes = 6#要分的类别 inp=Input(shape=(40, 80))#输入data的形状 reshape=Reshape((1,40,80))(inp)#开始建模,这是keras的一种方式,这种方式比较好操作,另外一种神经网络简单,但是不好拓展,推荐这种。

pre=ZeroPadding2D(padding=(1, 1))(reshape)#DCNN开始,这实在一种网络,你可以随意修改。

# 1
conv1=Convolution2D(32, 3, 3, border_mode='same',init='glorot_uniform')(reshape)
#model.add(Activation('relu'))
l1=LeakyReLU(alpha=0.33)(conv1)conv2=ZeroPadding2D(padding=(1, 1))(l1)
conv2=Convolution2D(32, 3, 3, border_mode='same',init='glorot_uniform')(conv2)
#model.add(Activation('relu'))
l2=LeakyReLU(alpha=0.33)(conv2)m2=MaxPooling2D((3, 3), strides=(3, 3))(l2)
d2=Dropout(0.25)(m2)
# 2
conv3=ZeroPadding2D(padding=(1, 1))(d2)
conv3=Convolution2D(64, 3, 3, border_mode='same',init='glorot_uniform')(conv3)
#model.add(Activation('relu'))
l3=LeakyReLU(alpha=0.33)(conv3)conv4=ZeroPadding2D(padding=(1, 1))(l3)
conv4=Convolution2D(64, 3, 3, border_mode='same',init='glorot_uniform')(conv4)
#model.add(Activation('relu'))
l4=LeakyReLU(alpha=0.33)(conv4)m4=MaxPooling2D((3, 3), strides=(3, 3))(l4)
d4=Dropout(0.25)(m4)
# 3
conv5=ZeroPadding2D(padding=(1, 1))(d4)
conv5=Convolution2D(128, 3, 3, border_mode='same',init='glorot_uniform')(conv5)
#model.add(Activation('relu'))
l5=LeakyReLU(alpha=0.33)(conv5)conv6=ZeroPadding2D(padding=(1, 1))(l5)
conv6=Convolution2D(128, 3, 3, border_mode='same',init='glorot_uniform')(conv6)
#model.add(Activation('relu'))
l6=LeakyReLU(alpha=0.33)(conv6)m6=MaxPooling2D((3, 3), strides=(3, 3))(l6)
d6=Dropout(0.25)(m6)
# 4
conv7=ZeroPadding2D(padding=(1, 1))(d6)
conv7=Convolution2D(256, 3, 3, border_mode='same',init='glorot_uniform')(conv7)
#model.add(Activation('relu'))
l7=LeakyReLU(alpha=0.33)(conv7)conv8=ZeroPadding2D(padding=(1, 1))(l7)
conv8=Convolution2D(256, 3, 3, border_mode='same',init='glorot_uniform')(conv8)
#model.add(Activation('relu'))
l8=LeakyReLU(alpha=0.33)(conv8)
g=GlobalMaxPooling2D()(l8)#DCNN结束,需要把其搞成二维的data
print("g=",g)
#g1=Flatten()(g)
lstm1=LSTM(#lstm这里直接连接输入层,你也可以吧dcnn结果输入,只是要一位时间一位特征。input_shape=(40,80),output_dim=256,activation='tanh',return_sequences=False)(inp)
dl1=Dropout(0.3)(lstm1)den1=Dense(200,activation="relu")(dl1)
#model.add(Activation('relu'))
#l11=LeakyReLU(alpha=0.33)(d11)
dl2=Dropout(0.3)(den1)

lstm2=LSTM(

256,activation='tanh',

return_sequences=False)(lstm1)

dl2=Dropout(0.5)(lstm2)

print("dl2=",dl1)
g2=concatenate([g2,dl2],axis=1)#拼接DCNN和LSTM
d10=Dense(1024)(g2)
#model.add(Activation('relu'))
l10=LeakyReLU(alpha=0.33)(d10)
l10=Dropout(0.5)(l10)
l11=Dense(n_classes, activation='softmax')(l10)model=Model(input=inp,outputs=l11)
model.summary()
#编译model
adam = keras.optimizers.Adam(lr = 0.0005, beta_1=0.95, beta_2=0.999,epsilon=1e-08)
#adam = keras.optimizers.Adam(lr = 0.001, beta_1=0.95, beta_2=0.999,epsilon=1e-08)
#sgd = keras.optimizers.SGD(lr = 0.001, decay = 1e-06, momentum = 0.9, nesterov = False)#reduce_lr = ReduceLROnPlateau(monitor = 'loss', factor = 0.1, patience = 2,verbose = 1, min_lr = 0.00000001, mode = 'min')
model.compile(loss='categorical_crossentropy', optimizer=adam, metrics=['accuracy'])return model

转载于:https://my.oschina.net/u/3999598/blog/3054901

Keras中CNN联合LSTM进行分类相关推荐

  1. python cnn 实例_在Keras中CNN联合LSTM进行分类实例

    我就废话不多说,大家还是直接看代码吧~ def get_model(): n_classes = 6 inp=Input(shape=(40, 80)) reshape=Reshape((1,40,8 ...

  2. Keras中RNN、LSTM、GRU等输入形状batch_input_shape=(batch_size,time_steps,input_dim)及TimeseriesGenerator详解

    最近在使用Keras进行项目实战时,在RNN这块迷惑了,迷惑就是这个输入数据的形状以及如何定义自己的输入数据,因此系统的学习了一下,把学习的总结一下,感觉会有很多人在这里迷惑,如果对你有帮助记得点赞哈 ...

  3. 对文本进行分类方法python_pytorch实现用CNN和LSTM对文本进行分类方式

    model.py: #!/usr/bin/python # -*- coding: utf-8 -*- import torch from torch import nn import numpy a ...

  4. 使用keras进行深度学习_如何在Keras中通过深度学习对蝴蝶进行分类

    使用keras进行深度学习 A while ago I read an interesting blog post on the website of the Dutch organization V ...

  5. 人工智能框架实战精讲:Keras项目-英文语料的DNN、Word2Vec、CNN、LSTM文本分类实战与调参优化

    Keras项目-英文语料的文本分类实战 一.机器学习模型 1.1 数据简介 1.2 数据读取与预处理 1.3 数据切分与逻辑回归模型构建 二.全连接神经网络模型 2.1 模型训练 2.2 模型结果展示 ...

  6. 看图说话——CNN和LSTM的联合应用

    看图说话是深度学习波及的领域之一.其基本思想是利用卷积神经网络来做图像的特征提取,利用LSTM来生成描述.但这算是深度学习中热门的两大模型为数不多的联合应用了. 本文是参考文献[1]的笔记,论文是比较 ...

  7. CNN在Keras中的实践|机器学习你会遇到的“坑”

    2018-12-16 23:43:37 本文作为上一节<卷积之上的新操作>的补充篇,将会关注一些读者关心的问题,和一些已经提到但并未解决的问题: 到底该如何理解padding中的valid ...

  8. 神经网络在Keras中不work!博士小哥证明何恺明的初始化方法堪比“CNN还魂丹”...

    铜灵 发自 凹非寺 量子位 出品 | 公众号 QbitAI 南巴黎电信学院(Télécom SudParis)的在读博士生Nathan Hubens在训练CNN时遇到点难题. 使用在CIFAR10数据 ...

  9. keras中文文档_【DL项目实战02】图像识别分类——Keras框架+卷积神经网络CNN(使用VGGNet)

    版权声明:小博主水平有限,希望大家多多指导. 目录: [使用传统DNN] BG大龍:[DL项目实战02]图像分类--Keras框架+使用传统神经网络DNN​zhuanlan.zhihu.com [使用 ...

  10. keras中一个LSTM的具体例子

    keras中一个LSTM的具体例子 LSTM:long short-term memory-保存信息以便后面使用,从而防止较早期的信号在处理过程中逐渐消失.SimpleRNN并不是Keras中唯一可用 ...

最新文章

  1. autowired 与 resources 注解的区别
  2. csrf攻击防御 php,Yii2.0防御csrf攻击方法
  3. 剑指 Offer 52. 两个链表的第一个公共节点(C语言)
  4. 深入理解最大池化为什么能够实现不变性?
  5. 关于类、抽象类和接口的继承关系
  6. centos7 网卡命名
  7. xp sp3 java_windows xp sp3简体中文正式版官网下载
  8. Windows10清理C盘
  9. OPENWRT,爱快等软路由推荐
  10. 【翻译】Real-Time High-Resolution Background Matting
  11. xadsafe做暗刷_XADsafe去广告热心网友共享规则库部分开源(11月13更新)
  12. Wordpress中wp-admim管理后台(404)无法进入,无限循环跳出解决方法
  13. 天载配资关注这个转折点机会
  14. PDF Expert|全能宝藏PDF编辑器
  15. 专有名词或英文缩写释义
  16. 人工智能之Python人脸对比、人脸检测
  17. Linux/服务器中文件下载
  18. 关于惠普打印机驱动解压时候出现的问题
  19. 三星 WLAN AP WEA453e路由器 远程命令执行漏洞
  20. 网络营销大咖#李俊超大婚#

热门文章

  1. Flutter之EdgeInsetsGeometry简析
  2. Retrofit工作原理总结
  3. Okhttp对http2的支持简单分析
  4. php 依赖注入 数据库切换_通俗易懂理解PHP依赖注入容器
  5. redhat linux查看进程cpu,Redhat Linux 查看cpu、memory 等命令
  6. python某行某列读取数据_使用python获取csv文本的某行或某列数据的实例
  7. 个推的appid是指什么_私人教练要注意胸肌更快增厚的4个方法
  8. python开发环境有哪些_python开发环境哪个好用?如何搭建?
  9. php 字符串合并,如何在PHP中将两个字符串组合在一起?
  10. android的opencv调试,Android opencv 2.3.1 调试及应用(第一篇)