1. RNN 模型

  • Embedding

    • Embedding(input_dim, output_dim,input_length)

      • input_dim 表示字典的大小;
      • outpu_dim 则表示嵌入的维度;
    • 训练参数的数目为:input_dim✖️output_dim;
    model = Sequential()
    model.add(Embedding(10000, 64, input_length=10))
    input_array = np.random.randint(10000, size=(32, 10))# batch_size 为 32,每一条样本的长度为 10,input_array 的最大值不超过 10000-1,
    model.compile('rmsprop', 'mse')
    output_array = model.predict(input_array)
    assert output_array.shape == (32, 10, 64)# 32 仍为 batch_size# 10,64:则表示输入样本的每一维均映射为 64 维的嵌入向量;
    
  • SimpleRNN

    • https://www.cnblogs.com/wdmx/p/9284037.html
    • SimpleRNN(units,input_shape)
      • units:该层神经元的数目;
    • 对于 RNN

    st=tanh⁡(Uxt+Wst−1)ot=Softmax(Vst)\begin{array}{l} s_t=\tanh(Ux_t+Ws_{t-1})\\ o_t=\text{Softmax}(Vs_t) \end{array} st=tanh(Uxt+Wst1)ot=Softmax(Vst)

    则训练参数的数目为:dim(U)+dim(W)+dim(V),如果隐层神经元的数目为 n,输出的维数为 k,输入的维度为 m,也即 Un×m,Wn×n,Vn×kU_{n\times m}, W_{n\times n}, V_{n\times k}Un×m,Wn×n,Vn×k,训练参数的数目为:n2+nm+knn^2+nm+knn2+nm+kn,如果考虑到biases,还需加上 nnn

    • 对于 SimpleRNN,计算其可训练参数时,并未计入到输出层的矩阵VVV,此时训练参数的数目为 n2+nm+nn^2+nm+nn2+nm+n
    model = Sequential()
    model.add(Embedding(1000, 64))# 1000*64 ⇒ 64000
    model.add(SimpleRNN(32))# 64*32+32*32+32=3104
    model.summary()
    

    https://stackoverflow.com/questions/50134334/number-of-parameters-for-keras-simplernn

  • GRU

    • 3×(n2+nm+n)3 \times (n^2 + nm + n)3×(n2+nm+n)
    • 3 倍于 SimpleRNN 参数的数目;
    • https://stats.stackexchange.com/questions/328926/how-many-parameters-are-in-a-gated-recurrent-unit-gru-recurrent-neural-network
  • LSTM

    • input_dim: m, units: n
    • 可训练参数数目为:4(nm+n+n^2)
    model = Sequential()
    model.add(LSTM(256, input_shape=(16, 4096)))# 4*(4096*256+256+256**2)
    model.summary()
    

2. CNN

  • Conv1D

    • (None, 500, 128),经过 (32, 7)(32 表示 filter 的数量,7 为 kernel size)的一维卷积之后的大小为:(None, 494, 32),训练参数的数目为:712832+32 ⇒ 28704;

keras + tensorflow —— 训练参数数目的计算相关推荐

  1. Convolutional Neurons Network 训练参数与连接数计算过程

     1.C1层是一个卷积层(为什么是卷积?卷积运算一个重要的特点就是,通过卷积运算,可以使原信号特征增强,并且降低噪音),由6个特征图Feature Map构成.特征图中每个神经元与输入中5*5的邻 ...

  2. TensorFlow训练参数存为npy格式并调用——线性回归

    模型训练并保存 # -*- coding: utf-8 -*- """ Created on Sun Mar 15 10:27:32 2020@author: weixi ...

  3. tensorflow官方Blog-使用Keras Tuner超参数优化框架 进行超参数调整 ,具体实现版本

    文章目录 进入正题,keras tuner超参数优化框架 模型构建def build_model(hp): 实例化tuner 加载数据集,进行超参数搜索tuner.search() 找到最佳的模型tu ...

  4. 存储Tensorflow训练网络的参数

    正文共3565个字,预计阅读时间10分钟. 上海站 | 高性能计算之GPU CUDA培训 4月13-15日 三天密集式训练 带你快速晋级 阅读全文 > 训练一个神经网络的目的是啥?不就是有朝一日 ...

  5. Keras自定义可训练参数

    Keras自定义可训练参数是在自定义层中实现的,因此需要我们自己编写一个层来实现我们需要的功能.话不多说,直接上实例. 假设我们需要自定义一个可学习的权重矩阵来对某一层的数据进行转换,则可以通过下面代 ...

  6. LeNet-5网络结构及训练参数计算

     经典神经网络诞生记: 1.LeNet,1998年 2.AlexNet,2012年 3.ZF-net,2013年 4.GoogleNet,2014年 5.VGG,2014年 6.ResNet,20 ...

  7. tensorflow.keras lstm 部分参数整理units input_size

    参考博客: (11条消息) 关于LSTM的units参数_LeoRainy的博客-CSDN博客_lstm units怎么设置 Keras LSTM的参数input_shape, units等的理解_y ...

  8. 【前沿】何恺明大神ICCV2017最佳论文Mask R-CNN的Keras/TensorFlow/Pytorch 代码实现

    我们提出了一个概念上简单.灵活和通用的用于目标实例分割(object instance segmentation)的框架.我们的方法能够有效地检测图像中的目标,同时还能为每个实例生成一个高质量的分割掩 ...

  9. 深度学习 卷积层与全连接层权重参数个数的计算

    1.卷积网络实例分析 构建卷积网络如下: from tensorflow.python.keras import datasets, models, layers class CNN(object): ...

最新文章

  1. 如何做一名优秀的博士生--施一公教授
  2. 记一次 .NET 某智慧水厂API 非托管内存泄漏分析
  3. android cpu 压力测试,两个古董级压力测试工具 leakyapp.exe 和 cpustre.exe
  4. mysql数据库教程全解_MySQL数据库基础教程详解
  5. JAVA零碎要点008---tomcat启动的时候报错了严重: End event threw exception java.lang.reflect.InvocationTargetExcepti
  6. Yam旗下Degenerative Finance明日将上线uSTONKS和uGAS奖励计划
  7. 华为发布全容器化 5G 核心网;余承东评小米 MIX Aphla 手机无实用价值;PHP 新版本更新 | 极客头条...
  8. 使用自定义功能构建Mamdani系统
  9. 服务器地图不显示图片,传奇小地图不显示怎么办 传奇服务端小地图制作教程...
  10. 微信小程序-实现保存图片功能的3种方式
  11. echarts飞机航线图修改飞机的样式
  12. java solr group by_solr高级查询——group和facet
  13. UML建模之用例图(重点讲extend和include关系)
  14. 解决socket通信时TIME_WAIT的socket过多
  15. 微信小程序如何让storage过期
  16. 炉石一直显示连接服务器,炉石传说无法连接战网服务器怎么办 处理方法详解...
  17. IntelliJ IDEA 注册码(phpstorm等IDE)
  18. [学习笔记]Min-25筛
  19. 高架桥隔音墙厂家价格@平衡生命
  20. 笔记---怪诞行为学

热门文章

  1. 理解lua中的metatable和__index
  2. MFC 教程【10_内存分配方式和调试机制 】
  3. 中文手册_Etherscan API中文手册
  4. 签名验签服务器性能测试,签名验签服务器 功率
  5. html的代码作用域,JavaScript作用域的全面解析(附代码)
  6. JavaScript(三)数值类型
  7. jqGrid中时间控件input的值赋给点开后的laydate控件
  8. Object类的使用
  9. java懒加载注解_在springboot中实现个别bean懒加载的操作
  10. python实训报告5000字_20193420 实验一 《Python程序设计》实验一报告