Transformer 简介
# 背景
给定一个翻译任务:将 I love you baby 翻译为中文。
先把每一个词转换成对应的 词向量,考虑按照下面方式处理:
直接丢到 MLP 中,那么:
每个词都会失去上下文信息,且长度只能一一对应
用 RNN,那么:
会面临串行计算
句子太长会导致记不住长距离的信息
# 注意力机制 Attention
上面两个方法都有缺陷,可以考虑按照下面的方法处理:
首先,给每个 词向量加上各自的 位置编码(表示该词出现在整个句子中的位置),现在这个词向量就具备了位置信息
但现在每个词都还没有其他词的上下文信息(注意不到其他词的存在)。用权重矩阵 W_qW\_
more...长短期记忆 LSTM
长短期记忆(Long Short-Term Memory,LSTM) 是 RNN 最重要的变体,也是深度学习 NLP 发展史上的里程碑。在 Transformer 出现之前(2017 年),LSTM 是序列建模的绝对王者。
# 背景:RNN 梯度消失
句子:"我住在法国,...(中间 200 个字)... 所以我会说___"
空格应该填 “法语”
RNN 的问题:
需要记住 200 个字前的"法国"。反向传播 时,梯度要连乘 200 次,导致前面的信息传不过来。
如果每次乘 0.9 → 0.9^200 ≈ 0.000000001 → 梯度消失
#
more...循环神经网络 RNN
# 背景及推导
需求:输入一句话,输出每个单词的褒贬性
假设对于上面 5 个单词,每个单词采用 300 维的 词向量,那么输入端就需要 1500 个词向量,这会带来几个缺点:
输入层的节点太多了,并且是变长的,会随着句子的长短发生变化
无法体现词语之间的先后顺序,仅仅只是把他们拉直展开成一个大向量,直接送入输入层(类似于 MLP)
为了解决上述缺点,可以让上一步的信息参与下一步的运算,具体可以这样做:
第一个词 X<1>X^{<1>}X<1> 经过非线性变换 g(cdot\\cdotcdot) 后得到一个中间结果(隐藏状态) h<1>
more...Word2Vec
Word2Vec 其实就是一个没有隐藏层激活函数的 2 层神经网络(浅层神经网络),用来将单词映射为低维稠密向量。
# 1. 核心原理
基于分布假设。通过大量文本语料学习词语的共现规律,将语义相似的词映射到向量空间中彼此靠近的位置
分布假设
"A word is characterized by the company it keeps."
(一个词是由它周围的词决定的。)
Word2Vec 包含两种浅层神经网络结构,核心目标是学习词向量,输入层到隐藏层为词嵌入映射,隐藏层到输出层为概率预测。
# 2.1 CBOW(Continuous Bag-of-Words,
more...自然语言和单词的分布式表示
核心问题:神经网络只能处理数字,但人类语言是文字。
如下,怎么把"我"、"喜欢"、"深度"、"学习"变成向量?
人类: "我喜欢深度学习"
↓ ???
计算机: [?, ?, ?, ?, ?, ?]
# 表示方法的演进
# 1️⃣ 最早期:One-Hot 编码(独热编码)
方法:每个词用一个超长向量表示,只有一个位置是 1,其他都是 0。
词典:["我", "喜欢", "讨厌", "深度", "学习&
more...自然语言处理 NLP
自然语言处理(Natural Language Processing,NLP) = 让计算机理解、生成、处理人类语言的技术。NLP 的核心任务著有可以分为 3 类:理解类、生成类、其他类。
# NLP 技术演进史
# 1️⃣ 规则系统时代(1950s-1990s)
方法:人工编写语法规则、词典
例子:ELIZA 聊天机器人(1966)
缺点:规则太多,维护困难,无法处理例外
# 2️⃣ 统计机器学习时代(1990s-2010s)
方法:HMM、CRF、SVM 等统计模型
优点:可以从数据中学习,不需要手工写规则
缺点:特征工程复杂,需要大量人工设计特征
# 3️⃣ 深度学习
more...NetworkPolicy
NetworkPolicy = Kubernetes 里 Pod 级别的网络防火墙,它基于标签选择器定义允许的入站(Ingress)和出站(Egress)流量,默认遵循“白名单”原则:一旦某个 Pod 被任何 NetworkPolicy 选中,未明确允许的流量都会被拒绝。
实验要求:
从提供的 YAML 样本中查看并应用适当的 NetworkPolicy。
确保选择的 NetworkPolicy 不过于宽松,同时允许运行在 frontend 和 backend namespaces 中的 frontend 和 backend Deployment 之间的通信。
首先,分析 fr
more...