摘要:
这个神经网络主要是针对图像的。 图像卷积 信号卷积本质上就是:$t$ 时刻的系统输出应该为 $t$ 时刻之前冲击信号在 $t$ 时刻响应的叠加。如果不懂可先去阅读博客:信号卷积。 信号卷积的离散形式定义为 $$(f*g)(t) = \sum_{\tau = -\infty}^{+\infty}f(\ 阅读全文
摘要:
这个主要是查 $API$,不涉及原理,如果用到新的功能,则更新此博客。 import cv2 img = cv2.imread('1.jpg') shape = img.shape # 返回图片的高度、宽度、深度组成的 tuple,高度和宽度指的是像素点个数 size = img.size # 获取 阅读全文
摘要:
Dataset 是 PyTorch 中用来表示数据集的一个抽象类,我们的数据集可以用这个类来表示,至少需要覆写下面两个方法: 1)__len__:一般用来返回数据集大小。 2)__getitem__:实现这个方法后,可以通过下标的方式 dataset[i] 的来取得第 $i$ 个数据。 DataLo 阅读全文
摘要:
相对熵(relative entropy)就是 KL 散度(Kullback–Leibler divergence),用于衡量两个概率分布之间的差异。 举个例子:假设我们发现了一些太空蠕虫,这些太空蠕虫的牙齿数量各不相同。现在我们需要将这些信息发回地球。但从太空向地球发送信息的成本很高, 所以我们需 阅读全文
摘要:
加权移动平均法:是对观察值分别给予不同的权数,按不同权数求得移动平均值,并以最后的移动平均值为基础,确定预测值的方法。 采用加权移动平均法,是因为观察期的近期观察值对预测值有较大影响,它更能反映近期变化的趋势。 指数移动加权平均法:是指各数值的加权系数随时间呈指数式递减,越靠近当前时刻的数值加权系数 阅读全文
摘要:
批梯度下降: 1)采用所有数据来梯度下降,在样本量很大的时,学习速度较慢,因为处理完全部数据,我们仅执行了一次参数的更新。 2)在学习过程中,我们会陷入损失函数的局部最小值,而永远无法达到神经网络获得最佳结果的全局最优值。这是因为我们计算的梯度大致相同。 所以,我们实际上需要的是一些嘈杂的渐变。方向 阅读全文
摘要:
1. torch.nn.MSELoss 均方损失函数,一般损失函数都是计算一个 batch 数据总的损失,而不是计算单个样本的损失。 $$L = (x - y)^{2}$$ 这里 $L, x, y$ 的维度是一样的,可以是向量或者矩阵(有多个样本组合),这里的平方是针对 Tensor 的每个元素,即 阅读全文
摘要:
在 pytorch 中提供了 torch.optim 方法优化我们的神经网络,torch.optim 是实现各种优化算法的包。 1. torch.optim.SGD 这个优化器实现的是实现随机梯度下降算法。 SGD 是最基础的优化方法,普通的梯度下降法, 需要重复不断的把整套数据放入神经网络 NN 阅读全文
摘要:
1. Sigmod 函数 Sigmoid 函数是应用最广泛的非线性激活函数之一,它可以将值转换为 $0$ 和 $1$ 之间,如果原来的输出具有这样的特点:值越大,归为某类的可能性越大, 那么经过 Sigmod 函数处理的输出就可以代表属于某一类别的概率。其数学表达式为: $$y = \frac{1} 阅读全文
摘要:
1. torch.nn.Linear PyTorch 中的 nn.linear() 是用于设置网络中的全连接层的,需要注意的是全连接层的输入与输出都是二维张量,一般形状为 [batch_size, size]。 """ in_features: 指的是输入矩阵的列数,即输入二维张量形状 [batch 阅读全文