TensorFlow相关学习(包括Keras)

一、TensorFlow简介

TensorFlow框架是目前主流的卷积神经网络开源框架之一。由Google Brain团队开发,对卷积神经网络模型进行构建和训练。

Tensor Flow也是深度学习的一个基础类库,可以用于直接创建深度学习的模型,或者使用**TensorFlow的封装(如Keras)**来实现深度学习的模型。

二、Keras简介

Keras是一个高级神经网络API(开放源码的高级深度学习程序库),使用python编程。使用TensorFlow、Theano及CNTK作为后端。(基于python的深度学习库)
Keras 兼容的 Python 版本: Python 2.7-3.6。
Keras的中文文档(官方)

1、keras的设计原则

  1. 用户友好:提供一致而简洁的API,极大地减少一般应用下用户的工作量,同时,keras提供清晰和具有实践意义的bug反馈机制。
  2. 模块性:网络层,损失函数,优化器,初始策略,激活函数,正则化方法都是独立的模块。
  3. 易扩展性:添加新模块容易,只需要仿照现有的模块编写新的类或函数。

2、keras的工作方式

keras是一个模型即的深度学习链接库,keras只处理模型的建立、训练、预测等功能。深度学习的底层运行,如张量的运算,keras必须配合后端引擎进行运算。目前keras提供了两种 后端引擎:Theano和TensorFlow
kreas会把底层操作细节转化位Theano和TensorFlow相对指令。

3、keras深度学习链接库的特色

  1. 简单快速的建立原型prototyping:keras具备友好的用户界面、模块化设计、可扩充性。
  2. 已经内建各种类神经网络层级,例如卷积层CNN , RNN,可以帮助我们快速建立神经网络模型。
  3. 通过后端引擎Theano和TensorFlow,可以在CPU 与GPU上运行。
  4. 以keras开发的程序代码更简洁,可读性更高,更容易维护,更具有生产力。
  5. keras的说明文件非常齐全,官网上提供的范例也非常浅显易懂。

4、使用Keras建立多层感知器

Keras大致建立一个简单的多层感知器很简单,具体步骤如下。

1、建立Sequential模型
Sequential模型是多个神经网络层的线性堆叠。可以想象Sequential模型是一个蛋糕架,接下来可以加入一层一层的蛋糕。

2、加入“输入层”与“隐藏层”到模型中
Keras已经内建各种神经网络层(例如Dense层、Conv2d层等),只要在之前建立的模型上加入我们选择的神经网络层就可以了(就好像在“蛋糕架”加入“蛋糕层”一样简单)。

3、加入“输出层”到模型
加入输出层到模型中,就好像再加入一层蛋糕。

以上基本就完成了多层感知器模型的建立。

三、keras和TensorFlow

TensorFlow功能强大,执行效率高,支持各种平台,然而属于低级的深度学习链接库,学习门槛高。keras是高级的深度学习链接库,对初学者的学习门槛低,可以很容易的建立深度学习模型,并且进行训练、预测。TensorFlow需要自行设计张量(矩阵)的运算,做很多底层操作。(简单说,Keras比TensorFlow更高级,使用起来更方便简单)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值