zoukankan      html  css  js  c++  java
  • 《python深度学习》笔记---3.2-3.3、Keras 简介

    《python深度学习》笔记---3.2-3.3、Keras 简介

    一、总结

    一句话总结:

    不处理张量操作:Keras 是一个模型级(model-level)的库,为开发深度学习模型提供了高层次的构建模块。 它不处理张量操作、求微分等低层次的运算
    Keras张量操作由后端引擎实现:Keras 有三个后端实现:TensorFlow 后端、 Theano 后端和微软认知工具包(CNTK,Microsoft cognitive toolkit)后端。

    1、TensorFlow运算库?

    CPU:Eigen:在 CPU 上运行 时,TensorFlow 本身封装了一个低层次的张量运算库,叫作Eigen;
    GPU:cuDNN:在GPU 上运行时,TensorFlow 封装了一个高度优化的深度学习运算库,叫作 NVIDIA CUDA 深度神经网络库(cuDNN)。

    2、Keras定义模型两种方法?

    Sequential类-线性堆叠:一种是使用 Sequential 类(仅用于层的线性堆叠,这是目前最常 见的网络架构)
    函数式API-有向无环图:另一种是函数式 API(functional API,用于层组成的有向无环图,让你可以构 建任意形式的架构)。
    这是一个利用 Sequential 类定义的两层模型(注意,我们向第一层传入了输 入数据的预期形状)。
    from keras import models 
    from keras import layers 
    model = models.Sequential() 
    model.add(layers.Dense(32, activation='relu', input_shape=(784,))) 
    model.add(layers.Dense(10, activation='softmax')) 
    
    用函数式 API 定义的相同模型
    input_tensor = layers.Input(shape=(784,)) 
    x = layers.Dense(32, activation='relu')(input_tensor) 
    output_tensor = layers.Dense(10, activation='softmax')(x) 
    model = models.Model(inputs=input_tensor, outputs=output_tensor) 
    利用函数式API,你可以操纵模型处理的数据张量,并将层应用于这个张量,就好像这些 层是函数一样。

    3、keras函数式API 特点?

    操纵数据张量:利用函数式API,你可以操纵模型处理的数据张量,并将层应用于这个张量,就好像这些 层是函数一样。
    input_tensor = layers.Input(shape=(784,)) 
    x = layers.Dense(32, activation='relu')(input_tensor) 
    output_tensor = layers.Dense(10, activation='softmax')(x) 
    model = models.Model(inputs=input_tensor, outputs=output_tensor) 

    4、keras函数式API 代码特点?

    就是需要指定输入:x = layers.Dense(32, activation='relu')(input_tensor)
    input_tensor = layers.Input(shape=(784,)) 
    x = layers.Dense(32, activation='relu')(input_tensor) 
    output_tensor = layers.Dense(10, activation='softmax')(x) 
    model = models.Model(inputs=input_tensor, outputs=output_tensor) 

    5、建立深度学习工作站?

    推荐使用unix系统:无论在本地还是在云端运行,最好都使用UNIX 工作站。这看起来可能有点麻烦,但从长远来看,使用 Ubuntu 将会为你省去大量时间和麻烦。
    三个后端皆可:使用 Keras 需要安装 TensorFlow、CNTK 或Theano(如果你希望能够在三个后端之间 来回切换,那么可以安装三个

    二、内容在总结中

    博客对应课程的视频位置:

     
    我的旨在学过的东西不再忘记(主要使用艾宾浩斯遗忘曲线算法及其它智能学习复习算法)的偏公益性质的完全免费的编程视频学习网站: fanrenyi.com;有各种前端、后端、算法、大数据、人工智能等课程。
    博主25岁,前端后端算法大数据人工智能都有兴趣。
    大家有啥都可以加博主联系方式(qq404006308,微信fan404006308)互相交流。工作、生活、心境,可以互相启迪。
    聊技术,交朋友,修心境,qq404006308,微信fan404006308
    26岁,真心找女朋友,非诚勿扰,微信fan404006308,qq404006308
    人工智能群:939687837

    作者相关推荐

  • 相关阅读:
    关于gulp的压缩js和css
    关于vant的定制主题问题
    关于jquery-Validate
    关于bootstrap-table插件的问题
    Windows下sass无法编译
    Hibernate基础知识整理(三)
    Hibernate基础知识整理(二)
    Hibernate基础知识整理(一)
    学习Hibernate之Eclipse安装hibernate tools插件
    JDBC连接池的cvalidationQuery设置 (参考)
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/13770219.html
Copyright © 2011-2022 走看看