AI学习记录 - L2正则化详细解释(权重衰减) 在神经网络训练的时候,权重可能会变得很大,或者变得很小,因为我们没有制定任何的限制,导致模型变很复杂,例如出现99,-100这种极端权重出现,因为可能拟合了奇怪的数据。一般情况下我看到权重大概都在-5到5之间。
AI学习记录 - 线性代数(3Blue1Brown) 一天更新一点点,只更新重点内容,一句话定义,简单的定义,避免脑子及记太多向量的加法就是一种趋势运动向量的延长缩短,就是分量的延长缩短基向量就是在平面或者任意维度空间随便定义的一个向量多个基向量的组合可以构成其它向量两个基向量可以组合成平面的所有向量,三个基向量可以组合成空间的所有向量
AI学习记录 - 对抗性神经网络 学习机器学习到一定程度之后,一般会先看他的损失函数是什么,看他的训练集是什么,训练集是什么,代表我使用模型的时候,输入是什么类型的数据。对抗神经网络其实可以这样子理解,网上一直说生成器和判别器的概念,没有触及到本质。
AI学习记录 - 怎么理解 torch 的 torch.nn.BatchNorm2d 计算归一化是需要参考值的,因为需要知道最大值最小值,已经参与计算的数量,参考值来自于哪里呢,如下。形状为 (batch_size, num_channels, height, width)合并起来,可以看到 num_channels = 3,所以计算3次。sigmoid函数,归一化,这就有差异了,充分发挥了激活函数的作用。num_channels: 通道(什么是通道看上一章节)假设一批数字为 [3, 7, 2, 9, 4]sigmoid函数,不进行归一化。创建了个下面这样子的东西。
AI学习记录 - 如何快速构造一个简单的token词汇表 但是实际上当你训练好模型之后,就算你要求用户使用英语法语西班牙语,但是用户可能会使用其它语言去提问,不在我们上面的区间,所以我们要兼容用户输入一些其他语言,但是由于我们没有对其他语言独立给一个位置,所以当使用其他语言去跟模型提问的时候,效果可能不会很好,但我们针对的用户主要是英文法语西班牙语。”)就是获取一个字符在unicode编码世界中的一个下标,可以看到对你重要的字符都在下面,你可以随意更改上面的字符。原先已经拥有字符的下标,我们不去改它了,继续让他使用unicode编码的下标即可。
AI学习记录 - transformers 的 linear 词映射层的详细分析, CrossEntropyLoss 函数解析 词汇表:假设词汇表包含四个词汇:[token_0, token_1, token_2, token_3]。模型的输出概率分布:模型的输出经过 Softmax 转换后,得到概率分布:[0.1,0.5,0.2,0.2]
AI学习记录 - decoder层如何与ecoder层结合 接下来讲的如下 decoder层如何与ecoder层怎么使用注意力机制结合的公式为:先生成掩码,然后把随机权重放进去,重点是这个掩码形状是固定的,负无穷大动态生成的,因为用户输入的句子长度不固定,有空余的位置我们需要填充 [PAD], [PAD], 都是负无穷大,下面红色交叉都设置成[PAD]将encoder的output的语义按照 权重 叠加到 START 和 h 上面,每次decoder的第一个token都是 START,固定的.得出新的矩阵,叠加上了输入词: abcd[PAD][PAD
AI学习记录 - transformers的decoder和encoder中的自注意力矩阵和掩码矩阵的数据处理 在实际计算的过程中,掩码不仅仅只是生成一半就可以了,我都知道GPT其实有限制token长度这一说法,假如限制50个token,我们最后生成的注意力矩阵就是长宽都是50个,但是当我们的句子不够50的时候,剩下的位置需要用指定字符去填充。
AI学习记录 - 自注意力机制之权重矩阵和查询向量V矩阵的计算方式的补充 如果我们熟悉自注意力的话,就会发现Q和K矩阵结合的时候,会有一个长度为句子长度的权重矩阵,假如有句子abc,求abc的注意力权重矩阵的话,那就是一个3*3的矩阵如下矩阵。我们假设了句子长度为3,那么V矩阵肯定也是宽为3,因为有三个词汇痲,长度为n的矩阵,假设n为5,每一行都是一个词向量。如下图直接使用矩阵乘法将这两个矩阵相称即可,得到一个一样的矩阵,这就是新的词向量。为什么使用矩阵乘法相乘就可以了呢,意义在哪里?意义:原来的abc词向量就是对应上面每一行,自注意之后变成新的词向量为a1b2b3。
AI学习记录 - torch 的 matmul和dot的关联,也就是点乘和点积的联系 二维矩阵点乘# 定义两个二维矩阵[3, 4]])[2, 4]])# 使用 matmul 计算展平向量的点积三维矩阵点乘# 定义两个二维矩阵[1, 2],[3, 4]],[1, 2],[3, 4]])[1, 3],[2, 4]],[1, 3],[2, 4]])# 使用 matmul 计算展平向量的点积。
AI学习记录 - torch 的 view 函数画图解释 假设我们一次性训练两个句子,batch_size = 2.i want a beer . // 5个tokeni want a coke . // 5个token我们的矩阵是下图的上面这个大长方块,经过view函数,切割成多个块,这是为了满足多头自注意力的计算方式。