尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

generative-ai-for-beginners RAG 课程语料深读:神经网络框架(TensorFlow vs PyTorch)与过拟合的完整解析

generative-ai-for-beginners RAG 课程语料深读:神经网络框架(TensorFlow vs PyTorch)与过拟合的完整解析 generative-ai-for-beginners RAG 课程语料深读神经网络框架TensorFlow vs PyTorch与过拟合的完整解析【免费下载链接】generative-ai-for-beginners21 Lessons, Get Started Building with Generative AI项目地址: https://gitcode.com/GitHub_Trending/ge/generative-ai-for-beginners本篇以 generative-ai-for-beginners 仓库中爱沙尼亚语et版第 15 课 RAG 与向量数据库的语料文件frameworks.md为核心完整解读其两大技术主题神经网络框架的低层/高层 API 对比以及过拟合与偏差-方差权衡并结合该文件在仓库配套 Notebook 中的真实用途说明它如何作为 RAG 检索语料被切分、嵌入和查询。读完后你将掌握框架 API 选型的判断依据、过拟合的识别与缓解手段以及该文档在 RAG 演示流水线中的端到端角色。文档在仓库中的定位与角色frameworks.md位于爱沙尼亚语翻译目录下的第 15 课数据语料中翻译版本文主体translations/et/15-rag-and-vector-databases/data/frameworks.md英文原版15-rag-and-vector-databases/data/frameworks.md同目录语料own_framework.md多层感知机与自研框架、perceptron.md感知器从源码结构看这三个文件并非孤立的讲义而是第 15 课 RAG 演示的核心知识库。在 notebook-rag-vector-databases.ipynb 中data/frameworks.md、data/own_framework.md、data/perceptron.md被依次读取构建出含path与text两列的 DataFrame随后按max_length400, min_length300的字符阈值调用split_text切分成 chunk用嵌入模型环境变量AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT指定部署转成向量最终通过NearestNeighbors(n_neighbors5, algorithmball_tree)建立近邻索引实现用户提问 → 向量检索 → 将命中的 chunk 注入对话上下文的 RAG 闭环。因此本文所解析的每一段技术内容都是该 RAG 应用被检索、被问答的最小语义单元之一。高效训练神经网络的两项前提文档开篇指出要高效训练神经网络必须同时解决两件事对张量tensor做运算乘法、加法以及计算 sigmoid、softmax 等函数计算所有表达式的梯度以便执行梯度下降优化。numpy可以完成第一点但梯度计算需要专门机制。文档回顾了一个关键痛点在先前章节自研的迷你框架中所有导数函数都必须手工编写进执行反向传播的backward方法。理想中的框架应当能对任意可定义表达式自动求梯度——这正是自动微分autograd能力成为现代框架标配的动机。第三项隐含前提是在 GPU 或其他专用计算单元如 TPU上执行计算。深度神经网络训练需要海量计算而这些计算能在 GPU 上并行parallelize即把计算分布到多个设备执行至关重要。两大主流框架低层 API 与高层 API 的对比文档给出当前最流行的两个神经网络框架及其 API 分层层级TensorFlow 系PyTorch 系低层 APITensorFlowPyTorch高层 APIKerasPyTorch Lightning两个框架的低层 API 都支持在 CPU 和 GPU 上操作张量高层 API 则构建在低层 API 之上。二者的定位差异可概括为低层 API 构建计算图computational graph。该图定义了给定输入参数下如何计算输出通常是损失函数并可整体推送到 GPU 上执行。框架提供对计算图求导的函数算出的梯度随即用于优化模型参数。这种先定义完整计算、再求导执行的模式给训练过程提供了细粒度控制。高层 API 把神经网络看作层的序列sequence of layers使绝大多数网络的结构搭建变得简单。训练通常只需两步准备数据然后调用fit函数完成其余工作。取舍很清晰——高层 API 让你不必纠结细节就能快速搭建典型网络低层 API 则提供更强的控制力因此在探索新型网络架构的研究场景中被大量使用。两者可以组合使用文档特别强调这一点用低层 API 开发自己的网络层架构再把它嵌入由高层 API 构建和训练的大网络中或用高层 API 以层序列方式定义网络再用自己的低层训练循环来执行优化。两套 API 共享相同的基础概念设计上就是配合工作的。关于学习路径文档给出的建议是课程多数内容同时提供 PyTorch 和 TensorFlow 两种 Notebook可任选一个框架学习若不确定选型可先阅读社区中PyTorch vs TensorFlow的讨论也可以两个都看看加深理解。课程本身优先使用高层 API 以保证简洁但仍会从低层 API 和张量操作讲起——如果想快速上手、不愿在这些细节上花时间可以直接跳到高层 API 的 Notebook。对应到同目录语料own_framework.md 展示了不用现成框架的另一条路径从梯度下降的更新式w^(i1) w^(i) − η·∂L/∂w出发推导多层感知机在链式法则下的反向传播梯度∂L/∂w₂ (∂L/∂σ)(∂σ/∂z₂)(∂z₂/∂w₂)等解释了为什么低层 API 值得理解。过拟合机器学习中最不能搞错的概念文档的第二大主题过拟合overfitting以一个对照实验引入对 5 个数据点图中以x表示做近似拟合——线性模型2 个参数非线性模型7 个参数训练误差 5.3训练误差 0验证误差 5.1验证误差 20左侧模型参数数量与数据规模相称学到了点分布的本质规律右侧模型过强——仅 5 个点却有 7 个参数它可以调整到穿过所有点使训练误差归零但这恰恰阻止了模型理解数据背后的真实模式导致验证误差飙高。文档的核心结论是模型丰富度参数量与训练样本量之间的平衡至关重要。过拟合为什么会发生三个成因训练数据量不足模型过于强大输入数据噪声过大。如何检测过拟合判据是训练误差极低 验证误差很高。典型训练曲线表现为训练误差和验证误差先同步下降随后验证误差停止下降转为上升——这个拐点就是过拟合信号提示应在此处停止训练至少保存一个模型快照。如何预防过拟合发现过拟合时可采取三招增加训练数据量降低模型复杂度使用正则化技术如后文会讲的 Dropout。过拟合与偏差-方差权衡Bias-Variance Tradeoff文档进一步把过拟合归入统计学中更一般的问题。模型的误差来源有两类偏差误差bias errors算法无法正确捕捉训练数据中的真实关系所致往往源于模型不够强即欠拟合underfitting方差误差variance errors模型拟合了输入数据的噪声而非有意义的关系所致即过拟合。训练过程中偏差误差持续下降模型学习近似数据方差误差持续上升。因此必须适时停止训练——要么人工发现过拟合后手动停止要么通过引入正则化自动约束——以防过拟合。练习、挑战与自研究问题文档保留了完整的课程配套要素练习在配套 NotebookTensorFlowKeras / PyTorch及高层的 Keras / PyTorch Lightning中继续框架学习挑战完成各 Notebook 末尾的tasks任务自研究围绕 TensorFlow、PyTorch、过拟合三个主题做调研并回答两个自测问题——TensorFlow 与 PyTorch 的区别过拟合与欠拟合的区别作业用 PyTorch 或 TensorFlow 的单层与多层全连接网络分别解决两个分类问题。关于爱沙尼亚语版本的说明需要指出的是translations/et/15-rag-and-vector-databases/data/frameworks.md 末尾附有翻译免责说明该文档由 AI 翻译服务 Co-op Translator 生成可能含自动翻译错误或偏差英文原版应视为权威来源。因此涉及技术细节的严谨引用时建议以 15-rag-and-vector-databases/data/frameworks.md 为准et 版可视为同一内容在 RAG 多语言语料场景下的等价副本。小结与延伸阅读这份语料文件浓缩了框架为什么存在自动梯度 并行计算→ 如何分层设计计算图 vs 层序列→ 训练时最容易犯什么错过拟合与偏差-方差权衡的完整认知链条并在仓库中承担 RAG 知识检索的实际职能它被 notebook-rag-vector-databases.ipynb 切分、嵌入、索引成为第 15 课用自有笔记增强 LLM场景详见 translations/et/15-rag-and-vector-databases/README.md 与英文版 15-rag-and-vector-databases/README.md中可被问答的真实数据。想动手验证时可直接运行该 Notebook需配置AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT等环境变量观察what is a perceptron?这类问题如何命中data/perceptron.md的对应 chunk——这正是本文语料在向量检索中的真实运行方式。【免费下载链接】generative-ai-for-beginners21 Lessons, Get Started Building with Generative AI项目地址: https://gitcode.com/GitHub_Trending/ge/generative-ai-for-beginners创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表