jerryxjr1220 发表于 2017-3-26 21:44:37

python小练习(082):基于keras快速搭建神经网络(提高篇)

本帖最后由 jerryxjr1220 于 2017-3-26 21:49 编辑

之前在python小练习(062)和(063)中分别简单介绍了怎样搭建简单的神经网络,已经基础的神经网络是如何运作的,并且介绍了google的开源项目tensorflow的基本使用方法。

今天的小练习作为前2篇的提高篇,我介绍一个新的python扩展系统keras,以及如何用keras快速搭建神经网络。

这个是keras的官方中文版的地址:https://keras-cn.readthedocs.io/en/latest/

Keras:基于Theano和TensorFlow的深度学习库

Keras是一个高层神经网络库,Keras由纯Python编写而成并基Tensorflow或Theano。Keras 为支持快速实验而生,能够把你的idea迅速转换为结果,如果你有如下需求,请选择Keras:

简易和快速的原型设计(keras具有高度模块化,极简,和可扩充特性)
支持CNN和RNN,或二者的结合
支持任意的链接方案(包括多输入和多输出训练)
无缝CPU和GPU切换
Keras适用的Python版本是:Python 2.7-3.5

Keras的设计原则是

模块性:模型可理解为一个独立的序列或图,完全可配置的模块以最少的代价自由组合在一起。具体而言,网络层、损失函数、优化器、初始化策略、激活函数、正则化方法都是独立的模块,你可以使用它们来构建自己的模型。
极简主义:每个模块都应该尽量的简洁。每一段代码都应该在初次阅读时都显得直观易懂。没有黑魔法,因为它将给迭代和创新带来麻烦。
易扩展性:添加新模块超级简单的容易,只需要仿照现有的模块编写新的类或函数即可。创建新模块的便利性使得Keras更适合于先进的研究工作。
与Python协作:Keras没有单独的模型配置文件类型(作为对比,caffe有),模型由python代码描述,使其更紧凑和更易debug,并提供了扩展的便利性。


从官方介绍可以看到keras其实后台调用的也是tensorflow(或者theano)的神经网络,只是keras更模块化,对于我们普通使用者来说,搭建神经网络更简单,不需要很多代码就能完成组建。

同样用之前小练习类似的例子,来看看keras是怎么搭建的吧。

题目:
有一组输入X(200个数据),一组输出Y(同样200个数据), Y = 0.5 * X + 2。 为了增加训练难度,我故意增加了一些随机数,使得输出值有些波动。然后通过keras的机器学习,看看能否准确估计出我们预设的0.5和2的参数。

开始:
**** Hidden Message *****
我们看到一个是0.479,一个是2.002,非常接近0.5和2的(注意:原始数据中我故意增加了随机扰动)

这就是强大的keras神经网络,只有10来行代码就能快速帮助我们组建神经网络。
后面,我还将陆续介绍keras在其他神经网络运用方面的例子,比如自动图像识别等等,敬请期待!

千山暮雪归人晚 发表于 2017-3-27 09:08:42

楼主我来顶一下!

chip 发表于 2017-3-27 15:53:21

才学到第四集的我表示暂时还看不懂,先马一下{:10_254:}

sophist 发表于 2017-4-7 13:07:29

MARK一下

大补的小甲鱼粉 发表于 2017-4-17 15:32:13

看的有点吃力,不过还是坚持看下去

龙骑战龙 发表于 2017-4-18 21:12:53

大神!!

黄修添 发表于 2017-4-28 09:13:43

第一天学习,加油

z6112539 发表于 2017-4-28 19:08:05

朝聖!!!

新手·ing 发表于 2017-5-3 21:51:13

看看~

s406228 发表于 2017-5-13 16:23:38

支持

小云子墨 发表于 2017-5-18 17:54:26

过来学习 大神的代码

小馨缘 发表于 2017-5-30 15:13:02

慢慢和你一起学习神经网络的搭建

V587 发表于 2017-6-12 14:31:26

学习keras   

小馨缘 发表于 2017-6-15 12:51:30

楼主,我按照中文教程在虚拟机上安装,怎么都没有办法搭建成功,尴尬了啊

jerryxjr1220 发表于 2017-6-15 13:10:08

小馨缘 发表于 2017-6-15 12:51
楼主,我按照中文教程在虚拟机上安装,怎么都没有办法搭建成功,尴尬了啊

keras的安装应该是很简单的,直接pip install keras就好了

P先生 发表于 2017-6-26 09:58:57

EX、EK 发表于 2017-8-23 15:46:56

版本是python3的吗

三道杠 发表于 2017-11-17 16:07:49

学习学习

arhat 发表于 2017-11-17 22:10:35

赶来学习一下,很厉害的性子

yyf900524 发表于 2017-12-12 09:55:23

回复学习
页: [1] 2 3
查看完整版本: python小练习(082):基于keras快速搭建神经网络(提高篇)