1. pad_sequence pad_sequence 函数通过填充的方式,将同一个 batch 中的 sequences 通过默认填充 0 的方式,变成最长 sequence 的长度,如下所示: ...
PyTorch 提供了两种损失函数的使用方法:函数形式、模块形式,函数形式的损失函数定义在 torch.nn.functional 库中,使用时传入神经网络的预测值和目标值来计算损失,模型形式是通过构...
Transformer 是谷歌在 2017 年的论文 《Attention Is All you Need》中提出的一种新架构,它在多项 NLP 任务上效果很不错,训练速度也比 RNN 更快。目前 T...
神经网络的训练有时需要几天、几周、甚至几个月,为了在每次使用模型时避免高代价的重复训练,我们就需要将模型序列化到磁盘中,使用的时候反序列化到内存中。 PyTorch 提供了两种保存模型的方法: 直接序...
传统的梯度下降优化算法中,可能会碰到以下情况: 碰到平缓区域,梯度值较小,参数优化变慢 碰到 “鞍点” ,梯度为 0,参数无法优化 碰到局部最小值 对于这些问题, 出现了一些对...
在 Python 中使用 ctypes 模块可以很轻松定义 C 类型的变量,以及调用 C/C++ 函数. 1. 基础类型变量 程序输出结果: 2. 指针类型变量 程序输出结果: 3. Python 调...
我们简单介绍下,C/C++ 编写的扩展函数,导入到 Python 中使用。步骤如下: 编写使用 Python/C API 编写 C/C++ 函数 编写 setup.py 文件 编译安装 C/C++ 扩...
https://docs.python.org/3.8/c-api/ 导出函数: setup.py 文件: Python 调用文件: 程序运行结果:
神经网络模型一般都是靠随机梯度下降算法进行训练和参数更新。网络的收敛效果很大程度上受到网络参数初值的影响。不合理的网络参数初始化,可能会导致 “梯度消失” 或者 “...
网络参数初始化的优劣在极大程度上决定了网络的最终性能。比较推荐的初始化方式有 He 初始化是,将参数初始化为服从高斯分布或均匀分布的较小随机整数,同时对参数方差加以规范化。 处于稳定状态下的神经网络,...
自然语言是用来表达含义的系统,词是其基本单元。在计算机处理中,我们需要把自然语言中的词进行数值化,才能够让计算机识别处理。 最简单的将词进行词嵌入的方法是:one hot 编码。根据词的数量 N,构建...
卷积核(Convolution Kernel)是卷积神经网络(CNN)中的核心组件之一,通常用于图像处理和深度学习模型中。它是一个小的矩阵,用于对输入图像进行卷积操作,从而提取图像中的特征。卷积核通过...
池化层(Pooling Layer)是卷积神经网络(CNN)中的一种层结构,主要用于对特征图进行降采样,以减小数据的空间尺寸,降低模型的计算量和参数数量,从而在一定程度上防止过拟合。池化层的主要作用包...