深度学习
nia_wish
平时学习不深度,深度学习学不深
展开
-
conda 与 pip 安装 pytorch小结
第一种方法,官网命令安装conda 安装 pytorch-gpu=1.8.0 cuda=11.1 版本conda install pytorch torchvision torchaudio cudatoolkit=11.1 -c pytorch -c conda-forgepip 安装 pytorch-gpu=1.8.0 cuda=11.1 版本pip install torch==1.8.0+cu111 torchvision==0.9.0+cu111 torchaudio===0.8.0 -原创 2021-03-23 20:25:52 · 3757 阅读 · 1 评论 -
pytorch 中 in-place
in-placeinplace-选择是否进行覆盖运算Torch 为了提高速度,model:forward() 操作之后赋予的变量是不给这个变量开盘新的存储空间的,而是 引用。就相当于 起了个别名。in-place operation在pytorch中是指改变一个tensor的值的时候,不经过复制操作,而是直接在原来的内存上改变它的值。可以把它成为原地操作符。在pytorch中经常加后缀“”来代表原地in-place operation,比如说.add() 或者.scatter()。python里面的原创 2020-09-28 11:18:55 · 431 阅读 · 0 评论 -
KL散度与交叉熵区别与联系
1. 熵要想明白交叉熵(Cross Entropy)的意义,可以从熵(Entropy) -> KL散度(Kullback-Leibler Divergence) -> 交叉熵这个顺序入手。通用的说,熵(Entropy)被用于描述一个系统中的不确定性(the uncertainty of a system)。 放在信息论的语境里面来说,就是一个事件所包含的信息量。2. KL散度KL散度,有时候也叫KL距离,一般被用于计算两个分布之间的不同。看名字似乎跟计算两个点之间的距离也很像,但实则不原创 2020-09-10 09:48:53 · 5989 阅读 · 0 评论 -
有关Dropout 的小结
1. Dropout可以比较有效的缓解过拟合的发生,在一定程度上达到正则化的效果。2. Dropout说的简单一点就是:我们在前向传播的时候,让某个神经元的激活值以一定的概率p停止工作,这样可以使模型泛化性更强,因为它不会太依赖某些局部的特征,如图1所示。3. 工作原理上面公式中Bernoulli函数是为了生成概率r向量,也就是随机生成一个0、1的向量。4. 普通的dropout 通常适用于 全连接层网络, CNN网络一般不适用Dropout5.Dropout在CNN中的应用 – DropB原创 2020-09-04 15:30:12 · 331 阅读 · 0 评论 -
pytorch 学习遇到的 问题
Relu 和 Leaky_Relu 中 inplace 设置nn.ReLU(inplace=True) #default inplace=False nn.LeakyReLU(inplace=True)#default inplace=False """ 将计算得到的值直接覆盖之前的值 有时能够节省运算内存,不用多存储其他变量,只要不报错 就可以使用 如果出现梯度爆炸 需要将 inplace 设置为 False 目前碰到 nn.原创 2020-08-20 18:51:36 · 770 阅读 · 0 评论 -
Pytorch 模型初始化
在开始阅读下面的内容之前,我们需要牢记参数初始化的目的是为了让神经网络在训练过程中学习到有用的信息,这意味着参数梯度不应该为0。而我们知道在全连接的神经网络中,参数梯度和反向传播得到的状态梯度以及入激活值有关——激活值饱和会导致该层状态梯度信息为0,然后导致下面所有层的参数梯度为0;入激活值为0会导致对应参数梯度为0。所以如果要保证参数梯度不等于0,那么参数初始化应该使得各层激活值不会出现饱和现象且激活值不为0。我们把这两个条件总结为参数初始化条件:初始化必要条件一:各层激活值不会出现饱和现象。初始化必原创 2020-08-12 11:35:04 · 8367 阅读 · 1 评论 -
深度可分离卷积(depthwise separable convolution)简单介绍
1. 普通卷积举个例子,假设有一个3×3大小的卷积层,其输入通道为16、输出通道为32,一般的操作就是用32个3×3的卷积核来分别同输入数据卷积,这样每个卷积核需要3×3×16个参数,得到的输出是只有一个通道的数据。之所以会得到一通道的数据,是因为刚开始3×3×16的卷积核的每个通道会在输入数据的每个对应通道上做卷积,然后叠加每一个通道对应位置的值,使之变成了单通道,那么32个卷积核一共需要(3×3×16)×32 =4068个参数。假设 H x W 为输出feature map的空间大小,N为输入通道数原创 2020-08-04 16:16:17 · 6484 阅读 · 0 评论 -
pytorch 数据读取机制中的Dataloader与Dataset
版权声明:本文为CSDN博主「努力努力努力努力」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/qq_37388085/article/details/102663166怎么建立一个预测模型呢?第一是数据,第二是模型,第三是损失函数,第四是优化器,第五个是迭代训练过程。这里主要学习数据模块当中的数据读取,数据模块通常还会分为四个子模块,数据收集、数据划分、数据读取、数据预处理。在进行实验之前,需要收集数据,数据转载 2020-07-27 18:12:36 · 1460 阅读 · 0 评论 -
librosa 部分 api 介绍
1.导入语音import librosaaudio_path = './1.wav'x , sr = librosa.load(audio_path)print(f'x = {x}')print(f'x.shape = {x.shape}') # (采样率*语音时间,)print(f'sr = {sr}')# 采样率2. 修改采样率y , sr = librosa.load(audio_path, sr=new_sr)3. stft 短时傅里叶变换源码libroas.stft(y,原创 2020-07-24 14:47:22 · 1342 阅读 · 0 评论 -
pydub 部分 api 介绍
读取/导出 语音from pydub import AudioSegmentimport mathfrom pydub.generators import WhiteNoise#读取音频orgin_wav = AudioSegment.from_wav(path_file)#导出音频target_wav.export("D:/data/combin1.wav", format="wav")获取音频信息# 获取音频持续时间 单位 Sduration = orgin_wav.d.原创 2020-07-29 17:57:33 · 294 阅读 · 0 评论