《深度学习之图像识别核心技术与案例实战》—2.1.5 Keras简介

举报
华章计算机 发表于 2019/06/01 23:44:04 2019/06/01
【摘要】 本书摘自《深度学习之图像识别核心技术与案例实战》一书中的第2章,第2.1.5节,作者是言有三 。

2.1.5  Keras简介

  Keras是一个高度模块化的神经网络库,使用Python实现,并可以同时运行在Tensor Flow和Theano上。Keras无须额外的文件来定义模型,仅通过编程的方式改变模型结构和调整超参数,旨在让用户进行最快速的原型实验,比较适合在探索阶段快速地尝试各种网络结构。其组件都是可插拔的模块,只需要将一个个组件(比如卷积层、激活函数等)连接起来,但是设计新模块或者新的Layer时则不太方便。在Keras中可通过几行代码就实现MLP,AlexNet的实现也仅需十几行代码。

  Theano和TensorFlow的计算图支持更通用的计算,而Keras则专精于深度学习。它同时支持卷积网络和循环网络,支持级联的模型或任意的图结构的模型,从CPU上计算切换到GPU加速无须任何代码的改动。

  因为底层使用Theano或TensorFlow,用Keras训练模型相比于前两者基本没有性能损耗(还可以享受前两者持续开发带来的性能提升),只是简化了编程的复杂度,节约了尝试新网络结构的时间。可以说模型越复杂,使用Keras的收益就越大,尤其是在高度依赖权值共享、多模型组合、多任务学习等模型上,Keras表现得非常突出。

  Keras也包括绝大部分state-of-the-art的Trick,包括Adam、RMSProp、Batch?Normalization、PReLU、ELU和LeakyReLU等。但目前Keras最大的问题就是不支持多GPU,没有分布式框架。


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。