字节抖音搜算法
bg:多模态和大模型出身
一面
-
一、ppl的计算与物理含义
在自然语言处理(NLP)中,PPL 是 Perplexity(困惑度)的缩写,通常用于衡量语言模型(如神经网络语言模型)在给定文本上的表现。PPL 是一种评估语言模型好坏的指标,它在很多任务中被广泛应用,比如机器翻译、自动文本生成等。- 1.PPL 的计算
- 2.PPL的物理含义
PPL 的物理含义可以通过其定义来理解。实际上,PPL 是对语言模型预测性能的度量,它量化了模型对给定文本的不确定性或困惑程度。- 低困惑度:如果模型对文本的预测非常准确,即每个词的预测概率都比较高,PPL 会较低。低困惑度意味着模型对文本的理解较好,能够更有效地预测下一个词。
- 高困惑度:如果模型对文本的预测不准确,预测的概率较低,那么 PPL 会较高。这表示模型在预测下一个词时“困惑”,即它在给定上下文时的不确定性较大。
- 1.PPL 的计算
-
二、Transformer的结构
- 1.encoder
- 2.decoder
- 3.Self-Attention
- 4.Multi-Head Attention
- 5.Positional Encoding
-
三、self Attention为什么要除以根号dk
- 1.避免点积值过大:
在 Self-Attention 中,查询(Query)与键(Key)的点积会得到一个标量值,表示两个向量之间的相似性。假设查询和键是高维向量,当维度 d k {\sqrt{d_k}} dk 很大时,查询向量和键向量的点积值会变得非常大。为了保持数值的稳定性并防止点积值变得过大,论文《Attention Is All You Need》采用了 1 d k \frac{1}{\sqrt{d_k}} dk 1的缩放因子来平衡点积值的大小。这个缩放因子使得随着维度的增加,点积结果的大小不会过度增大,从而使得 softmax 函数的输出更加平滑,避免了过于极端的权重分布。 - 2.Softmax 与大数值问题:
在 Self-Attention 计算中,我们首先会对查询和键的点积结果应用 softmax 操作。Softmax 是一个指数函数,具有将较大数值映射为接近 1 的值、较小数值映射为接近 0 的性质。当输入的数值过大时,softmax 的输出会趋向极端(例如接近 1 或 0),这会导致模型学习到不平衡的注意力分布。为了避免这种情况,缩放点积的结果可以使得 softmax 在数值上更加稳定,避免了大数值导致的梯度消失或爆炸问题。
- 1.避免点积值过大:
-
四、神经网络能否用全0或全1初始化
-
- 全 0 初始化:
问题:如果将神经网络的权重初始化为全 0,那么每个神经元在前向传播过程中会计算相同的加权和,并且在反向传播时会得到相同的梯度。这会导致每个神经元在训练过程中执行相同的更新,无法学习到不同的特征。换句话说,网络中的每个神经元会变得“相同”,这大大削弱了网络的表达能力。
结论:全 0 初始化不是一个好的选择,尤其是对于深度神经网络。
- 全 0 初始化:
-
- 全 1 初始化:
问题:如果将权重初始化为全 1,虽然每个神经元不会完全相同,但仍然会面临梯度消失或梯度爆炸的问题,尤其是在深度网络中。具体来说,反向传播过程中,权重的梯度可能会变得过大或过小,从而导致优化过程的效率下降。此外,权重为全 1 时,网络的收敛性可能受到影响。
结论:全 1 初始化通常也不是一个好的选择。
- 全 1 初始化:
- 正确的初始化方法:
-
-
五、算法题:编辑距离的实现(力扣72-hard)
class Solution:
def minDistance(self, word1: str, word2: str) -> int:
n = len(word1)
m = len(word2)
# 有一个字符串为空串
if n * m == 0:
return n + m
# DP 数组
D = [ [0] * (m + 1) for _ in range(n + 1)]
# 边界状态初始化
for i in range(n + 1):
D[i][0] = i
for j in range(m + 1):
D[0][j] = j
# 计算所有 DP 值
for i in range(1, n + 1):
for j in range(1, m + 1):
left = D[i - 1][j] + 1
down = D[i][j - 1] + 1
left_down = D[i - 1][j - 1]
if word1[i - 1] != word2[j - 1]:
left_down += 1
D[i][j] = min(left, down, left_down)
return D[n][m]
标签:初始化,搜广,模型,经一,PPL,down,range,推校,left
From: https://blog.csdn.net/yin2567588841/article/details/144969862