粉丝1966获赞2.5万



专注力不够的孩子,这种题一定要常做。你知道专注力不够主要原因是什么呢?他没法专心去想一个问题,怎么才能让他专心去想问题呢?就是这类题特别的好,先收藏 咱们这类题,他的方法是什么?他的方法叫寻找确定性数值。专注力不够的那个孩子一看这道题,他不知道眼睛该放在什么地方,这时候你就启发他,你看哪个是确定性的数值啊?这时候这个孩子你一定要帮他找第一个确定性数值, 要么找这,要么找这哪都行。比如你要找这的话,从这开始啊,那先问他,这是啥?这有可能是二吗?不可能是二,因为这是从这可以看,那它最大就是一个九, 那加上这个进的一,那也,这就是一,然后呢?从这是一确定吗?好了,让孩子开始做了,那这是一,这是多少?必然进了一个零,然后同时这一定是一个九,再有这一定进了一个一,你看,从一个确定性找到了三个 必然。从三个必然,你又导到什么了?让他自己去想啊。这如果是零的情况下,这是四,这是零,那你说这是几啊?进一,对不对?这一定是五,所以这必然是五。 五加四,这必然有一个进一,对不对,你看这必然进一了,那这是多少啊?八,三十一,这一定是八,所以你看到了吗?在整个过程当中,大概他需要十几秒乃至一分钟的时间,是专注的去想这道题的,他的心神就是单一的,这道题呢,就可以锻炼他的专注力。 同样你也有另外一种方法,从后面引导孩子形成专注力,不信你去试试,听懂的点一个关注吧!

好的,欢迎回来,我们讲完了 i m s 归一化,讲完了旋转位置编码,我们来看一下 addition 类是怎么实现的。首先第一步还是定义一个类,然后继承这个 n n 点 mod, 对 吧?然后进行抽象,然后选用一些就是刚才定义好的参数, ok, 然后定义它就是头是哪一些,对吧?就头的数量,然后 seven 点,头的维度数是不是等于总的维度数除以头的数量。 这五一二啊,不是,这个五一二等于六十四啊,这,这就是头的数量就是八,对吧? n n 点 linear 呢?就是直接创建这个参数矩阵啊,它是一个方正,也没有偏置,对吧?然后用 n n 点 linear, 它会管进行很多很多管理,它会自动构建计算图啊,自动啊,进行这个传播啊,这样就会很方便。然后它内部实现这个括函数,这些东西不光是一些这个抽象的定义,而且还能当做函数去调用, 直接里面放括号呢, x 呢,就是相当于 x 直接跟这个东西相乘啊,之后会用到的。好,这附近我们马上就要用到。 ok, 然后这里还定义了一个变换矩阵啊,这四个东西全都一样,这四个东西目前全都一样,没有任何区别,他都促使化了这个东西, 然后注意他这个每个元素都被定义为了这个啊,促使化了均值为零,方差为一的独立随机变量啊,这东西就可以用来最大四人,估计嘛,对吧? ok, 就是 构建对数四人。 好,我们继续往下看。好了,一样的,这里来到计算环节,计算环节的话就需要 for 的 函数,对吧?返回的方法,这里面引入一些量的话,就是啊, self 呢,就是必须一个方法自己的东西,然后一个实力,对吧?然后 s 呢,就是 那个直矩阵 c i s c i s 呢,就是那个旋转位置编码的矩阵,直接沉一下就 ok 了,对吧? mask 就是 一个掩码,掩码的话会用到,就是防止模型偷看,接下来的词等会会讲到。好,然后我们来看一下具体内部是什么。 percent size 呢?就是啊, percent size, 然后这个 segments 是 行数,然后下划线呢,是维度数,维度数我们提取出来,但是用不到,所以就直接一个下划线就行。好,然后我们已经提到了,就是 x q s k s b 就是 构建这个 啊, q k v 嘛, q k v 就 直接用这个刚才构建的 w q 乘上一个 x 嘛,这个我说了,这个东西是可以当函数用的,所以直接把 x 丢到里面,它相当于 x q 等于 x self x 乘 self 减 w q 啊, x 呢,是二乘五一二乘五一二的矩阵,然后 w q 呢,是五一二乘五一二的矩阵,然后乘完之后 x q 还是二乘五一二乘五一二的矩阵啊,这样的话维度数就不变好, 然后我们要将它重塑为这种多头形式,因为要分别开始抽象嘛,对吧?抽象的时候要分别进行抽象。 h q 呢,就是看作是什么呢? best size, second size, 然后 self 点 n head, 然后 self 点 head dimension, 就是 把这个最后这个五一二变成这个八乘六十四的样子,哎,这个就是八嘛,这就是六十四嘛,大家明白就可以。 ok, 这句话也也讲了,这这么个意思。好,然后我们只对 x q 和 x k 进行旋转编码,我们直接调用上一节,就是上一小节定义的这个函数, apply node 就 直接一步完成啊,直接完成旋转编码注入, ok, 好 的,我们有了 x q, 对 吧?一开始现在这个 x q, x d, 我 们以 x k 为例。好了,这步在干什么呢?在进行一个就是维度的,就是接受的调换,如果我们不进行这步接受调换转置操作的话,啊,它的维度长这样子。二乘五一,二乘八乘六十四,对不对? 我们希望的是什么呢?我们希望的是他构成一个二乘八乘五一,二乘六十四,就是把这两个维度要调换一下,哎,这两个调换之下,就是每一个头他都不负责一部分的语义信息,然后之后再把这些头给拼拼起来,哎,他每个头都应该有五一二乘六十四这么多的信息量,对吧?五一二是词的数量,然后六十四的话是这个每一个头负责的语义语义数量。 那点 transpose 一 二呢?就是把第二节和第三节调换了一下,就是这个,所以是一嘛,这个所以是二嘛?这两个去调换一下就实现了调换,所以相当于把 sk 转置变成了二乘八乘五一二乘六十四的矩阵,便于接下来做矩阵乘法。 哎,这一步结束之后,其实就是 x q, s k, s v 对 头进行的分配,然后 but 等于二,进行两个 had, 等于八八个头,每个头都有五百一十二行次矩阵,每个次矩阵啊,每列就是六十四个列,就表示六十四个词义。 ok, 好 的,接下来就是进行这个 score 计算的注意力,每个词值,每个词值就表示六十四个词义, ok, 好 的,接下来就是进行这个 score 计算的注意力得分了。 score 等于 q 乘 k 的 转置,对不对? 好,那对 k 呢?我们还要进行一个转置操作,否则它这个维度对不上,对吧?我们就是还是要进行一个 transpose, 你 可以看到这个 x box x k transpose, 把最后两维换一下,就是 x k 的 这两维要换一下,不然矩阵乘法乘不了,对吧?好,那 squos 现在就是就是 max maximum, 就是 matrix multiply, 就是 矩阵乘法,然后这两个东西进行乘法。矩阵 multiply 的 话,会把两矩阵的两个前两维度理解为并行计算,这样就会很方便 x q 乘 x k 直接计算出来, 然后公式的话,这里是直接贴下来的,我们可以写一下这个数学公式。 ok, 这一步进行操作,就是 scores 等于 q 乘 k 的 转置,除以根号 d k。 好, 这个东西有了之后,我们是不是接下来进步进行一步 south max 操作就就 ok 了,这样的话我们就能得到这个注意力,就是啊,概率分布就是提取权重了,对吧?好的,得到注意力得分之后,我们还需要进行一个操作,就是 对,就是进行一个野马操作,哎,这是我们一 p 二提到的文字接龙的逻辑,哎,我们要加上一个因果野马,就是通常是因果野马将未来的位置置为负无穷,哎, max mask 呢?是五百一十二乘五百一十二的矩阵,矩阵左下角和对角线它都是零啊,右上角是负无穷。我们举个这个三乘三 举例好了啊,就是零零零,然后零零零,然后负 i n f, 负 i n f 啊,他长这个样子,这是对角线,这是一个三乘三的哈啊,就是我这个负 f 长得有点抽象,大家能明白我意思就可以了。就是对角线和左下角这一块都是零,然后右上角是负 f, 就 表示他看不到后面的词啊,后面的词为负无穷大,所以说明他看不能把就是后面的词的信息给加入到自己身体里,这样就防止他作弊啊,这种屏蔽作用就是 不让词用还没读到的词去更新自己,防止作弊,强迫他行,学会推理。你比如说你输入床前,我们希望他输入出明月光嘛,对吧?结果他一看正确答案就在后面,他直接把后面字给搬过来了,而且不考虑后面字是什么啊,这样的话就非常危险,非常致命,他学不到任何东西。 有了这个之后,我们就可以进行 softmax 归一化了,对吧? squo 就 等于 f d n, 这个 f 呢?是 function, 就是 刚才提到的。就是 啊,那个类,它里面有很多很多很多不需要参数的一个计算。 softmax, 它就是一个不需要参数的公式嘛,直接对 scores 进行这个啊,归一化,反面选等于负一呢,表示对列进行压扁,那也就是行归一化了,对吧?就走这么一个逻辑,然后 type pass 呢?还是保证精度,这样的话我们就得到这个啊,注意力矩阵了。这个其实就是注意力矩阵 啊,这一步就完成了,这个天数注意力得举矩阵啊,计算完毕之后,然后再拿这个东西去乘上一个 x v, 然后 x 天数 q p v 的 话,就是 啊,长这个样子对不对?好的,那我们注意啊,我们是分头行动对吧?分了好多个头,八个头对吧?每个头都注计算得到这些东西, 我们要给这八个头首尾相接,给他拼起来。好的,接下来我们就要开始进行一个拼接操作,我们得到了八个注意力,全举胜得分,每个都是五一二乘六十四,我们要给他拼起来。 ok, 首先第一步呢,先把头给他丢到后面去啊,头是我们要拼的东西对不对?我们必须把它给拼起放起来, 就是进行一个 transpose, 还是一样的,就相当于复原操作了,就是每个词有八个,八个专家的意见。 ok, 然后这一步是要整理内存,这东西其实非常关键,因为 transpose 这个东西,它只是一个偷懒操作,它只是改变了计算机的读取逻辑的步长,比方说它本来是一个个读的,你 transpose 之后它就改成了比方五个一读,六个一读,这样的 它,它虽然看上去逻辑上改变了,但数据是在计算机里是乱序的,转之前它是 c 到 c p u, 你 读一位往下读,转之后它就读一个数,别管隔壁,你先跳过三位数再去读。哎,所以 dangerous 呢,就是把它这个东西 啊,它这个数据在内存里真的重新排一次,就变成紧密的这个数组逻辑了。 ok, 好 的,那这一步操作结束之后,那我们就进行一个拼接操作, output 等于 output view percent seconds 负一,重新给它拼成这个五百一十二,就是不是有八个头吗?每个头负责六十四列对不对?现在给它最后一列自己去拼起来,这个负一还是之前提到过的自动计算逻辑, ok, 听起来之后就得到了八乘五百一十二,就是二乘八乘五百一五百以上,就是刚刚二乘五百一十二乘五百以上,就跟我们一开始输入的词组的那个尺寸是一模一样的,然后 return 最后还要进行一个融合操作,就是啊,乘上一个 w, 对 吧?然后输出了就可以,这样我们的注意力机制就 ok 了。
![小学生静态专注力训练《小小计算家》
小朋友根据老师说的数字快速计算出数字后根据数字大小拿对应的数字颜色[玫瑰]
增强孩子听觉专注同时,提升心算能力以及信息转换反应能力[玫瑰]对于不爱动脑的小朋友可以经常练习哦[玫瑰][愉快]](https://p3-pc-sign.douyinpic.com/tos-cn-p-0015/oEQSQELz3h09yI7RCNGAgFIk2ClAeEKDffIKeo~tplv-dy-resize-origshort-autoq-75:330.jpeg?lk3s=138a59ce&x-expires=2087316000&x-signature=%2FDQWf1SwonzZuVsSOPyfB85POjE%3D&from=327834062&s=PackSourceEnum_AWEME_DETAIL&se=false&sc=cover&biz_tag=pcweb_cover&l=20260225020243FAADC8D0EF14BF0037EC)
数起来说啊,来,三七九一十二六。今天我们玩的这个游戏叫做小小计算家,小朋友们要根据老师说的数字将两个数字加在一起,如果这两个数字大于十,我们就拿红色,两个数字加起来,小于十我们就拿蓝色。 当两个数字加起来等于十的时候,我们需要来拍手。通过这个游戏可以提升孩子的计算能力以及反应能力,同时还可以增强孩子的信息转化能力。三九对好,六八 七九七六对正好。来,三三二五八五 十加二七。


现在大模型这么火,一切的起源都是来自谷歌二零一七年提出的 transformer 架构。今天我们就来拆解一下 transformer 的 原理。 首先来看 transformer 的 核心优势,主要体现在并行计算和全局依赖这两方面。第一是并行计算,它的训练速度能提升十倍,依靠 gpu 或者 tpu 就 能实现加速。传统的 rnn 必须按照序列顺序一步步计算,而 transformer 的 自注意力机制可以同时处理序列里的所有位置。 第二是局依赖,它能捕捉序列里任意位置的关联,还能解决梯度消失的问题,因为自注意力可以直接计算任意两个位置之间的关联,理论上能捕捉无限长距离的依赖关系。简单来说, transformer 就 像是从竹字阅读变成了一目十行。 接下来我们看 transformer 的 架构核心,它由编码器和解码器两部分组成。编码器包含六层相同的子层,主要由多头字注意力和前馈神经网络构成,作用是处理输入系列生成对应的语义表示。 解码器同样有六层相同的子层,包含掩码、多头字注意力和编码器解码器注意力,它会基于编码器输出的结果生成目标系列。总结来说就是编码器负责编码、理解输入、解码、生成输出。 下面我们来看 transformer 的 关键机制,分别是自注意力与位置编码。首先是自注意力机制,它的作用是计算词与词之间的相关性,具体是通过查询键值三个向量来计算注意力权重。对应的公式是 attention q k v 等于 softmax q k 的 转置,除以根号 d k 乘以 v, 然后是位置编码。因为 transformer 本身无法感知词序,所以需要用正弦或者余弦函数生成位置编码,把虚列的位置信息注入到模型中,解决这一问题。可以说注意力就是 transformer 的 核心。 现在我们来梳理几个面试高频考点。第一个是多头注意力,它会通过多个头并行计算,这样就能捕捉不同子空间的语义信息。 第二个是残差连接,他就像一座桥梁,能够缓解梯度消失的问题,还允许网络选择性的学习增量信息。第三个是层皈依化,他可以稳定并加速训练的收敛过程,具体是对每个样本的特征维度进行皈依化处理。 第四个是前馈网络,他就像齿轮一样负责非限性变换,会对每个位置独立应用,两层全连接网络。最后我们来做一个核心要点总结, 第一, transformers 基于自注意力机制,实现了并行计算和全局依赖。第二,它由编码器和解码器组成,包含多头注意力、未知编码等核心组建。第三,它是 bird、 gpt 等现代大语言模型的基础架构。