如何从零使用 Keras + TensorFlow 开发一个复杂深度学习模型?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从零使用 Keras + TensorFlow 开发一个复杂深度学习模型?相关的知识,希望对你有一定的参考价值。

参考技术A

Keras 是提供一些高可用的 Python API ,能帮助你快速的构建和训练自己的深度学习模型,它的后端是 TensorFlow 或者 Theano 。本文假设你已经熟悉了 TensorFlow 和卷积神经网络,如果,你还没有熟悉,那么可以先看看这个10分钟入门 TensorFlow 教程和卷积神经网络教程,然后再回来阅读这个文章。

在这个教程中,我们将学习以下几个方面:

    为什么选择 Keras?为什么 Keras 被认为是深度学习的未来?

    在Ubuntu上面一步一步安装Keras。

    Keras TensorFlow教程:Keras基础知识。

    了解 Keras 序列模型
    4.1 实际例子讲解线性回归问题

    使用 Keras 保存和回复预训练的模型

    Keras API
    6.1 使用Keras API开发VGG卷积神经网络
    6.2 使用Keras API构建并运行SqueezeNet卷积神经网络。

参考技术B

安装 h5py,用于模型的保存和载入:

pip install h5py

还有一些依赖包也要安装。

pip install numpy scipy

pip install pillow

    为什么选择Keras的原因:

Keras 是 Google 的一位工程师François Chollet 开发的一个框架,可以帮助你在 Theano 上面进行快速原型开发。后来,这被扩展为 TensorFlow 也可以作为后端。并且最近,TensorFlow决定将其作为 contrib 文件中的一部分进行提供。

Keras 被认为是构建神经网络的未来,以下是一些它流行的原因:

轻量级和快速开发:Keras 的目的是在消除样板代码。几行 Keras 代码就能比原生的 TensorFlow 代码实现更多的功能。你也可以很轻松的实现 CNN 和 RNN,并且让它们运行在 CPU 或者 GPU 上面。

    Keras基础知识

在Keras中主要的数据结构是 model ,该结构定义了一个完整的图。你可以向已经存在的图中加入任何的网络结构。import keras

Keras 有两种不同的建模方式:

Sequential models:这种方法用于实现一些简单的模型。你只需要向一些存在的模型中添加层就行了。

Functional API:Keras的API是非常强大的,你可以利用这些API来构造更加复杂的模型,比如多输出模型,有向无环图等等。

以上是关于如何从零使用 Keras + TensorFlow 开发一个复杂深度学习模型?的主要内容,如果未能解决你的问题,请参考以下文章

从零开始,手把手教你使用Keras和TensorFlow构建自己的CNN模型

不怕学不会 | 使用TensorFlow从零开始构建卷积神经网络

如何评价深度学习框架Keras

如何减少 Tensorflow/Keras 使用的 CPU 数量?

如何使用 tensorflow 在 keras 中禁用 GPU?

如何使用 Tensorflow 张量设置 Keras 层的输入?