对两个flatten函数的探究

简介: 对两个flatten函数的探究

1 问题

对torch.nn.flatten()和torch.flatten()两个函数的理解。


2 方法

对于torch.nn.Flatten():
其默认参数为start_dim = 1 , end_dim = -1,即从第1维(第0维不变)开始到最后一维结束将每个batch拉伸成一维:


当仅设置一个参数时,该参数表示 start_dim 的值,即从该维度开始到最后一个维度结束,将每个batch拉伸成一维,其余维度不变:


当设置两个参数时,两个参数分别表示开始维度和结束维度:


Torch.nn.flatten()函数官方文档:

对于torch.flatten():
torch.flatten()函数默认start_dim = 0 , 其余与torch.nn.flatten()相同。


torch.flatten()函数官方文档:

3 结语

通过对照实验,对两个函数的参数进行比照分析,得出结论。

目录
相关文章
|
8月前
|
机器学习/深度学习 PyTorch 算法框架/工具
PyTorch基础之激活函数模块中Sigmoid、Tanh、ReLU、LeakyReLU函数讲解(附源码)
PyTorch基础之激活函数模块中Sigmoid、Tanh、ReLU、LeakyReLU函数讲解(附源码)
396 0
|
3月前
|
PyTorch 算法框架/工具
Pytorch学习笔记(七):F.softmax()和F.log_softmax函数详解
本文介绍了PyTorch中的F.softmax()和F.log_softmax()函数的语法、参数和使用示例,解释了它们在进行归一化处理时的作用和区别。
582 1
Pytorch学习笔记(七):F.softmax()和F.log_softmax函数详解
WK
|
4月前
|
机器学习/深度学习 算法
为什么Sigmoid函数比Tanh函数更好
在神经网络中,Sigmoid和Tanh函数各有优劣,选择取决于具体应用场景。Sigmoid函数输出范围为(0,1),适合二分类问题,但存在梯度消失和非零中心化的问题;Tanh函数输出范围为(-1,1),以0为中心,有利于加速收敛,但同样涉及较大的计算复杂度。两者均存在梯度消失风险,但在多数情况下,Tanh梯度问题较轻。随着技术发展,ReLU等新型激活函数因能有效缓解梯度消失并提高计算效率,已成为许多任务的首选。因此,不能简单地说Sigmoid比Tanh更好,需依据任务需求和网络结构进行选择。
WK
213 1
|
机器学习/深度学习 人工智能 资源调度
深度学习入门基础CNN系列——批归一化(Batch Normalization)和丢弃法(dropout)
批归一化方法(Batch Normalization,BatchNorm)是由Ioffe和Szegedy于2015年提出的,已被广泛应用在深度学习中,其目的是对神经网络中间层的输出进行标准化处理,使得中间层的输出更加稳定。丢弃法(Dropout)是深度学习中一种常用的抑制过拟合的方法,其做法是在神经网络学习过程中,随机删除一部分神经元。训练时,随机选出一部分神经元,将其输出设置为0,这些神经元将不对外传递信号。
666 1
深度学习入门基础CNN系列——批归一化(Batch Normalization)和丢弃法(dropout)
|
存储 PyTorch 算法框架/工具
聊一聊pytorch中的张量基本方法
聊一聊pytorch中的张量基本方法
149 0
|
Python
numpy 的newaxis 和 concatenate函数应用解释及应用举例
numpy 的newaxis 和 concatenate函数应用解释及应用举例
216 0
numpy 的newaxis 和 concatenate函数应用解释及应用举例
|
机器学习/深度学习 算法框架/工具
5分钟入门GANS:原理解释和keras代码实现
5分钟入门GANS:原理解释和keras代码实现
237 0
5分钟入门GANS:原理解释和keras代码实现
|
机器学习/深度学习 缓存 自然语言处理
【40】torch.nn汇总(各类与函数接口的解释说明)
【40】torch.nn汇总(各类与函数接口的解释说明)
478 0
【40】torch.nn汇总(各类与函数接口的解释说明)
|
机器学习/深度学习 存储 算法
【Multi-NN】解析参考:Numpy手写的多层神经网络
【Multi-NN】解析参考:Numpy手写的多层神经网络
【Multi-NN】解析参考:Numpy手写的多层神经网络