快捷搜索:  汽车  科技

keras 详细教程(Keras新手入坑指南)

keras 详细教程(Keras新手入坑指南)3、在CPU和GPU上无缝运行。2、支持卷积网络和循环网络,以及两者的组合。首先,Keras到底是什么?Keras是一个高级神经网络API,用Python编写,能够在TensorFlow、CNTK或Theano上面运行。它的开发重点是支持快速实验,能够以最短的时间从想法到结果。如果你需要有如下特点的深度学习库:1、允许简单快速的原型设计(友好性、模块性和可扩展性)。

摘要: 你对学习使用Keras感兴趣吗?你是否已经对神经网络的工作方式有一定的了解?看看这个精简的七步计划,从新手开始尽快地掌握Keras基础知识。

keras 详细教程(Keras新手入坑指南)(1)

对于所有想要开始深度学习的人来说,有很多神经网络框架、库和api等都是非常重要的。可是…为什么要用Keras呢?

Keras是一种高级的神经网络API,它运行在许多底层库之上,这些库被用作后端,包括TensorFlow、Theano、CNTK和PlaidML等。Keras代码是可移植的,这意味着你可以使用Keras 实现一个神经网络,然后使用Theano作为一个备份,再指定后端在TensorFlow上运行,并且不需要对代码进行进一步的更改。数据科学家和机器学习专家Charles Martin总结了这样一句话:

我们已经使用这些算法超过10年了。这并不容易,但对一个好的黑客来说是足够的。对我来说,Keras使得那些被认为不可用的人工智能产品能够发挥它们的价值。

步骤二:Keras基础知识

首先,Keras到底是什么?

Keras是一个高级神经网络API,用Python编写,能够在TensorFlow、CNTK或Theano上面运行。它的开发重点是支持快速实验,能够以最短的时间从想法到结果。如果你需要有如下特点的深度学习库:

1、允许简单快速的原型设计(友好性、模块性和可扩展性)。

2、支持卷积网络和循环网络,以及两者的组合。

3、在CPU和GPU上无缝运行。

那么你就可以使用Keras。

步骤三:Keras的概述

Valerio Maggio于2017年在伦敦的PyData举行了一场精彩的演讲,题为“十个步骤学习Keras”。为了对Keras更深入的理解,可以拿Keras与其他库相比,以及使用它来完成事情,请花上90分钟看视频。然后看看下面链接的几页文档,以了解Keras是如何处理模型实现的。

1、Keras模型

2、开始使用ker序列化的顺序模型

3、开始使用kerapi函数API

如果你仍然有疑问,为什么你会选择Keras而不是TensorFlow,请读一下这篇文章:

TensorFlow还是Keras?我应该学哪一个?

https://medium.com/implodinggradients/tensorflow-or-keras-which-one-should-i-learn-5dd7fa3f9ca0?spm=5176.100239.blogcont241621.16.dZ1R2e

最后,关于更改Keras后端,请参阅这个文档页面:

Keras后端 https://keras.io/backend/?spm=5176.100239.blogcont241621.17.dZ1R2e

步骤四:慢慢地学习Keras

让我们做一件事:当人们开始使用一个新的深度学习库时,首先要做的事情之一就是:实现一个简单的逻辑回归模型。

如果你在之前的步骤中观看了Valerio的视频,那么你可能已经得到了你需要的东西。如果没有,那就从谈话中引用他的笔记。一般情况下,你可以阅读整个过程,再对TensorFlow、Theano和Keras的实现代码进行比较。如果你只对Keras 代码感兴趣,那么可以跳过大约一半。

多层完全连接网络

首先,确保你已经查看了下面的Keras文档页面,这些文档页面描述了这两种模式(已经在上面提到的)和层。

1、开始使用keras序列化的顺序模型

2、关于Keras的层

3、Keras的核心层

现在,请遵循这个基础,通过使用神经网络去实现一些关于三连棋游戏的东西。

Keras教程:使用神经网络识别三连棋游戏的胜利者。

完成了这些步骤之后,你就应该准备好实现一些更复杂的架构了。

步骤五:实现卷积神经网络

要在Keras中实现卷积神经网络(CNN),首先要阅读它的卷积层的文档:

Keras卷积层

在此之后,请查看在Keras中关于CNNs的以下教程。第一种方法采用了较慢的方法,并且涵盖了你现在应该知道的大部分内容,而第二种则考虑了一些额外的主题,例如避免过度使用。这并不一定是一种非此即彼的方法;你可能会在两种模式中发现各自的价值:

Keras教程:Python的终极初学者指南,高级数据科学

麦克欧文的卷积神经网络的介绍

阅读附带的博客文章。

步骤六:实现一个循环的神经网络

要在Keras中实现一个循环的神经网络(RNN),首先要阅读它的循环层的文档:

Keras循环层

在此之后,尝试看Chris Albon的教程:实现一个长期的短期记忆(LSTM)网络——一种主要的RNN:

LSTM循环性神经网络

阅读附带的幻灯片。

步骤七:接下来该做什么?

在这一点上,你应该对Keras有一个坚实的理解,包括为什么要使用它,它在某些情况下优于其他库的优点,并使用它来实现各种网络架构。你现在是个专家,对吧?

好吧 也许不是。但希望你已经掌握了基本知识。当你想要超越基本的时候,最好的方法就是阅读Keras的官方教程:

Keras教程

在此之后,查看Keras示例,其中包括了远景模型示例、文本和序列示例、生成模型示例等等。

Keras的示例

另外,如何挑战你自己,对你在之前的步骤中实现的一些模型进行微调呢?更改优化器,添加扩展层,使用激活函数。或者使用一些Keras量度标准来回顾并判断你的模型的性能。Keras文档是一个很好的开始:

Keras指标

Keras的常见问题

原文链接:https://www.kdnuggets.com/2017/10/seven-steps-deep-learning-keras.htm

猜您喜欢: