深度学习-03-NLP强化训练

🚀 Day03 - NLP强化训练

📖 导读

第三天,强化训练,掌握更多细节。


🔄 核心知识点回顾

1. 分词与向量化

python 复制代码
import jieba
from tensorflow.keras.preprocessing.text import Tokenizer

# 分词
words = jieba.lcut("自然语言处理")

# 向量化
tokenizer = Tokenizer()
tokenizer.fit_on_texts(corpus)
X = tokenizer.texts_to_sequences(texts)

💪 深入RNN系列

2.1 双向RNN

python 复制代码
bi_rnn = nn.RNN(input_size, hidden_size, num_layers=2, bidirectional=True)
output, hidden = bi_rnn(x, h0)
# output.shape: (seq, batch, hidden*2)

2.2 深层RNN

python 复制代码
deep_rnn = nn.RNN(input_size, hidden_size, num_layers=3)
# 层数越多,梯度传播越困难

🎯 注意力机制详解

3.1 注意力公式

复制代码
Attention(Q, K, V) = softmax(QK^T / √d) * V

3.2 矩阵乘法BMM

python 复制代码
A = torch.randn(3, 4, 5)
B = torch.randn(3, 5, 6)
C = torch.bmm(A, B)  # (3, 4, 6)

🔥 Transformer深化

4.1 多头注意力

python 复制代码
class MultiHeadAttention(nn.Module):
    def __init__(self, embed_size, heads):
        super().__init__()
        self.heads = heads
        self.head_dim = embed_size // heads
        
        self.W_q = nn.Linear(embed_size, embed_size)
        self.W_k = nn.Linear(embed_size, embed_size)
        self.W_v = nn.Linear(embed_size, embed_size)
        
    def forward(self, q, k, v, mask=None):
        # 分头 -> 注意力 -> 拼接
        return output

4.2 位置编码

python 复制代码
class PositionalEncoding(nn.Module):
    def __init__(self, embed_size, max_len=5000):
        super().__init__()
        pe = torch.zeros(max_len, embed_size)
        position = torch.arange(0, max_len).unsqueeze(1)
        div_term = torch.exp(torch.arange(0, embed_size, 2) * (-math.log(10000.0) / embed_size))
        pe[:, 0::2] = torch.sin(position * div_term)
        pe[:, 1::2] = torch.cos(position * div_term)
        self.register_buffer('pe', pe)
    
    def forward(self, x):
        return x + self.pe[:x.size(0)]

🚀 实战技巧

5.1 梯度裁剪

python 复制代码
torch.nn.utils.clip_grad_norm_(model.parameters(), max_norm=1.0)

5.2 学习率调度

python 复制代码
scheduler = torch.optim.lr_scheduler.StepLR(optimizer, step_size=2, gamma=0.1)

📝 总结

Day03深入RNN系列和Transformer核心机制。

相关推荐
涤生大数据11 小时前
AI时代,SQL该何去何从?
数据库·人工智能·sql
冬奇Lab11 小时前
RAG 系列(十一):Rerank——让检索结果按重要性排队
人工智能·llm·源码
冬奇Lab11 小时前
一天一个开源项目(第96篇):OpenHarness - 轻量级 AI 代理基础设施框架
人工智能·开源·资讯
lulu121654407812 小时前
JetBrains IDE 终极AI编程方案:CC GUI插件让Claude Code和Codex丝滑运行
java·ide·人工智能·python·ai编程
TENSORTEC腾视科技12 小时前
腾视科技重磅推出AI NAS,重塑数据管理方式,开启智能高效新时代
人工智能·ai·七牛云存储·nas·企业存储·ainas·家庭存储
tanis_207712 小时前
MinerU2.5-Pro 中文 PDF 识别准确率全解:OmniDocBench v1.6 权威基准数据
人工智能·python·pdf
我是发哥哈12 小时前
跨AI模型生成视频的五大维度对比:选型避坑指南
大数据·人工智能·学习·机器学习·chatgpt·音视频
如去12 小时前
第四篇《AI+教育:个性化学习的实现路径与教育公平的再平衡》
人工智能
Elastic 中国社区官方博客12 小时前
Elastic 9.4:Workflows 正式发布、Agent Builder 更新,以及 Prometheus / PromQL 支持
运维·数据库·人工智能·elasticsearch·搜索引擎·信息可视化·prometheus
DragonnAi13 小时前
猫咪如厕检测与分类识别系统系列【十四】 项目结构重新整理-即将开源完整算法
算法·开源