1、extract_image_patches函数的使用:

假设Eigen::Tensor形状为(3,8,8,9),现在要对第二维、第三维根据size大小为(2,2),stride=(2,2),那么如果tensor类型是rowmajor类型,那么经过extract_image_patches后的数据就是(3,4*4,2,2,9)的5维数组,如果tensor类型是colmajor类型,那么得到的数据就是(3,2,2,4*4,9)的五维数组。

     Eigen::array<int, 2> reduction_dims{2,3};Tensor5xf patches = bottom.extract_image_patches(m_hksize, m_wksize, m_hstride, m_wstride, 1,1, Eigen::PADDING_VALID);//std::cout << "post_reduce_dims"<<  post_reduce_dims << std::endl;Tensor3xf pooling.device() = patches.maximum(reduction_dims); top=pooling.reshape(post_reduce_dims);

另外需要注意的是如果size大小为(3,2),那么如果是rowmajor那么数组的形状将是(3,*,2,3,9);如果是colmajor那么数组的形状将是(3,*,3,2,9)

2、降维统计

Eigen::array<int, 2> reduction_dims{2,3};
patches.mean(reduction_dims);//求取第2、3维度的平均值
patches.maximum(reduction_dims);//求取第2、3维度的最大值

3、数据存储方式交换:swap_layout()

比如如果Tensor变量是 colmajor,可以调用该函数,返回的新tensor就是rowmajor格式。

4、

从零开始编写深度学习库(五)Eigen Tensor学习笔记2.0相关推荐

  1. 从零开始编写深度学习库(四)Eigen::Tensor学习使用及代码重构

    从零开始编写深度学习库(四)Eigen::Tensor学习使用及代码重构 博客:http://blog.csdn.net/hjimce 微博:黄锦池-hjimce   qq:1393852684 一. ...

  2. 从零开始编写深度学习库(三)ActivationLayer网络层CPU实现

    从零开始编写深度学习库(三)ActivationLayer网络层CPU实现 博客:http://blog.csdn.net/hjimce 微博:黄锦池-hjimce   qq:1393852684 一 ...

  3. 从零开始编写深度学习库(二)FullyconnecteLayer CPU编写

    从零开始编写深度学习库(二)FullyconnecteLayer CPU编写 博客:http://blog.csdn.net/hjimce 微博:黄锦池-hjimce   qq:1393852684 ...

  4. 从零开始编写深度学习库(一)SoftmaxWithLoss CPU编写

    从零开始编写深度学习库(一)SoftmaxWithLoss CPU编写 博客:http://blog.csdn.net/hjimce 微博:黄锦池-hjimce   qq:1393852684 一.C ...

  5. 从零开始编写深度学习库(五)PoolingLayer 网络层CPU编写

    记录:编写卷积层和池化层,比较需要注意的细节就是边界问题,还有另外一个就是重叠池化的情况,这两个小细节比较重要,边界问题pad在反向求导的时候,由于tensorflow是没有计算的,另外一个比较烦人的 ...

  6. 从零开始编写深度学习库(五)ConvolutionLayer CPU编写

    对于池化层来说,需要注意的问题是:重叠池化,还有边界处理模式:valid.same模式这两个细节.由于我采用的边界处理方式,与tensorflow 在same模式下边界处理方式不同,valid模式下是 ...

  7. 小样本点云深度学习库_论文 | 小样本学习综述

    转自:专知[https://www.zhuanzhi.ai/] [导读]现有的机器学习方法在很多场景下需要依赖大量的训练样本.但机器学习方法是否可以模仿人类,基于先验知识等,只基于少量的样本就可以进行 ...

  8. 梅科尔工作室-深度学习第五节-CNN学习

    目录 1.什么是CNN(卷积神经网络) 2.卷积层与池化层 2.1卷积层 2.2池化层 3.卷积神经网络的输入与输出 4.卷积神经网络之层级结构 5.激活函数 6.计算公式 1.什么是CNN(卷积神经 ...

  9. 深度学习第五课-训练注意事项与框架使用

    说明:本文是七月算法5月深度学习班第五次课听课笔记.黄色标注的部分为自己不太确定的部分. 训练 mini-batch SGD 神经网络使用mini-batch SGD训练得到最优权重.训练过程如下:( ...

最新文章

  1. JAVA-JSP Scriptlets(JSP小脚本)
  2. Docker网络模型(八)
  3. 白盒测试工具 - sonar报告常见示例分析,sonar代码质量问题分析演示
  4. 泽西岛/贾克斯RS:流式JSON
  5. spring的基本知识
  6. (王道408考研操作系统)第二章进程管理-第四节2:死锁处理策略之避免死锁(银行家算法)
  7. The differences between SOAP1.1 and SOAP1.2
  8. Mybatis Generator 逆向生成器
  9. js 跨域的问题 (同一个主域名不同的二级域名下的跨域问题) 解决 WdatePicker.js my97日期选择控件
  10. KVM console 连接虚拟机注意的位置
  11. python基础学习笔记(七)
  12. 自适应盲信号处理的经典
  13. 软考高级 真题 2011年上半年 信息系统项目管理师 案例分析
  14. 【老九学堂】【Java】初级编码规范
  15. 用切片实现一个简陋的Map
  16. [java] java语言基础
  17. oracle创建序列号
  18. hibernate查询方式总结(四)之QBC,QBE查询
  19. 专项测试之Web测试
  20. ios关于GPUImage图片拍摄及视频录制

热门文章

  1. 汇编指令mrs_专题1:电子工程师 之 软件】 之 【8.arm指令】
  2. python 获取网页表格数据_python实战4获取tushare数据
  3. python求1到n的乘积_Python如何计算列表中所有数字的乘积?(代码示例)
  4. php多站点共享用户表,php – Zend_Auth:允许用户登录到多个表/身份
  5. CF125E MST company (凸优化+MST)
  6. 使用CXF发布WebService服务简单实例
  7. PHPExcel+phalcon+yii批量导入
  8. 常见的注册界面实现的效果
  9. 超极本认知六大误区详解:不只是轻薄+长续航
  10. 速进!2000核实计算资源免费领取,名额有限,即开即送!