zoukankan      html  css  js  c++  java
  • 深度学习中Flatten层的作用

    深度学习中Flatten层的作用

    一、总结

    一句话总结:

    Flatten层用来将输入“压平”,即把多维的输入一维化,常用在从卷积层到全连接层的过渡。Flatten不影响batch的大小。
    # now:model.output_shape==(None,64,32,32)
    
    model.add(Flatten())
    # now: model.output_shape==(None,65536)

    1、从tensorflow2的keras下引入东西不能from keras.models import Sequential?

    可以加上tensorflow:from tensorflow.keras import layers, Sequential

    二、深度学习中Flatten层的作用

    转自或参考:深度学习中Flatten层的作用
    https://blog.csdn.net/program_developer/article/details/80853425


    Flatten层的实现在Keras.layers.core.Flatten()类中。

    作用:

    Flatten层用来将输入“压平”,即把多维的输入一维化,常用在从卷积层到全连接层的过渡。Flatten不影响batch的大小。

    例子:

    from keras.models import Sequential
    from keras.layers.core import Flatten
    from keras.layers.convolutional import Convolution2D
    from keras.utils.vis_utils import plot_model
    
    
    model = Sequential()
    model.add(Convolution2D(64,3,3,border_mode="same",input_shape=(3,32,32)))
    # now:model.output_shape==(None,64,32,32)
    
    model.add(Flatten())
    # now: model.output_shape==(None,65536)
    
    plot_model(model, to_file='Flatten.png', show_shapes=True)

    为了更好的理解Flatten层作用,我把这个神经网络进行可视化如下图:

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

    作者相关推荐

  • 相关阅读:
    SQLite 的连接串
    输入数组长度大于此表中的列数
    MVC3.0入门学习笔记页面传值ViewData
    MVC3.0入门学习笔记页面传值TempData
    在控制台程序中显示进度
    WCF学习笔记(1) 一个简单的wcf实例
    webBrowser 操作无ID元素
    webBrowser 设置文本框
    cookie总结
    checkbox是否被选择
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/13475439.html
Copyright © 2011-2022 走看看