Add. 特征变换映射(全数字列表)

master
ben.guo 1 year ago
parent 402c314191
commit c5f8939a4a

BIN
.DS_Store vendored

Binary file not shown.

@ -76,7 +76,7 @@
### 语义关系学习(多头注意力) ### 语义关系学习(多头注意力)
> Multi-HeadAttention > Multi-Head Self-Attention
> >
> WHY捕捉多种语义关系提高模型的表达能力。如LLM是大模型的缩写同时也是法学硕士的缩写。亦或者冬天里的能穿多少穿多少跟夏天里的能穿多少穿多少。 > WHY捕捉多种语义关系提高模型的表达能力。如LLM是大模型的缩写同时也是法学硕士的缩写。亦或者冬天里的能穿多少穿多少跟夏天里的能穿多少穿多少。
@ -92,7 +92,7 @@
### 数值缩放 ### 数值缩放
> Add & Norm > Addition and Normalization
> >
> WHY前面我们讲到矩阵里的数字越大表示跟其它词的语义关系越紧密如果两个大值相加很可能就造成大的值特别大小的值特别小。所以要统一到一个维度特别是深度学习场景里由于深度学习是矩阵乘法 所以大值或者小值都会被无限放大,导致模型不稳定。 > WHY前面我们讲到矩阵里的数字越大表示跟其它词的语义关系越紧密如果两个大值相加很可能就造成大的值特别大小的值特别小。所以要统一到一个维度特别是深度学习场景里由于深度学习是矩阵乘法 所以大值或者小值都会被无限放大,导致模型不稳定。
@ -106,6 +106,8 @@ Add & Norm的过程可以理解为相同位置元素相加再做层归一化
### 前馈神经网络 ### 前馈神经网络
> Feed Forward Neural Network
>
> WHAT数学上对于每个位置的输入向量`x`FFNN可以表示为 > WHAT数学上对于每个位置的输入向量`x`FFNN可以表示为
> >
> ~~~ > ~~~
@ -122,3 +124,51 @@ Add & Norm的过程可以理解为相同位置元素相加再做层归一化
当数据输入到神经网络后经过一系列运算点积输出的数据一般是非线形的。而且维度输出的维度与输入的维度是不变的。种设计允许FFN在不改变输入和输出维度的情况下增加网络的非线性和复杂性从而使模型能够学习更加复杂的特征表示。 当数据输入到神经网络后经过一系列运算点积输出的数据一般是非线形的。而且维度输出的维度与输入的维度是不变的。种设计允许FFN在不改变输入和输出维度的情况下增加网络的非线性和复杂性从而使模型能够学习更加复杂的特征表示。
### 最后一个数据缩放
同样当数据进行点积后大值会越来越大小值也会越来越小所以再做一次数值缩放。另外整个子模块会进行多次叠加即前面说到的如GPT叠加了175层。
### 特征变换映射(全数字列表)
> Linear
前面数据经过最后一次缩放后,线形变换用于将模型的内部表示转换为最终输出,通常是一个预测任务,如语言模型中的下一个词(话)预测。
里面包含着我们输入的文字如果是3个就会有3个字的列表1万个字就是1万个字的列表每个字都有一个概率。预测下一个字就是找出3个字里概率最高的。当然训练过程肯定不止3个字如GPT就有xxx个字那么"LLM with me"的下一个词的概率,一般展示如下:
```
{
"is": 0.10,
"the": 0.05,
"a": 0.03,
...
"learning": 0.07,
...
}
```
如果是预测下一个句子,通常会采用一种称为“自回归语言生成”的方法,在这种方法中,模型会一次生成一个词,然后将生成的词作为下一个预测的上下文的一部分。这个过程会重复进行,直到生成一个终止符号(如句号或特殊的结束标记),或者达到预设的最大长度限制。中间阶段的展示一般如下:
~~~
[
{"sequence": "The cat is", "probability": 0.09, "next_words": {"sitting": 0.5, "sleeping": 0.3, ...}},
{"sequence": "She went to", "probability": 0.07, "next_words": {"the store": 0.4, "school": 0.2, ...}},
...
]
~~~
> 当然模型一般会采用某种策略如贪婪搜索、束搜索beam search或采样来逐步构建句子而不是会生成这么庞大的组合因为一个句子可能有几千甚至几万个词。
每个条目包含了当前的候选序列("sequence"),该序列的累积概率("probability"),以及下一个可能的词及其概率("next_words")。模型会在每一步更新这些候选序列,直到生成完整的句子。
~~~
[
{"sequence": "The cat is sitting by the window.", "probability": 0.08},
{"sequence": "She went to the store to buy some groceries.", "probability": 0.06},
...
]
~~~

Loading…
Cancel
Save