自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(125)
  • 资源 (6)
  • 收藏
  • 关注

原创 AI大模型入门到实战系列--使用Pytorch实现transformer文本分类

本文介绍了使用PyTorch实现Transformer模型进行文本分类的完整流程。主要内容包括:1) 安装必要的PyTorch和TorchText库及其版本兼容性问题解决;2) 使用IMDB数据集进行文本预处理,包括分词、构建词表和批量数据处理;3) 实现Transformer模型的核心组件,特别是位置编码(PositionalEncoding)和Transformer编码器;4) 构建完整的Transformer分类模型架构。文章提供了详细的代码实现,涵盖了从数据加载、预处理到模型构建的全过程,并解释了关

2025-12-25 14:25:59 356

原创 自然语言处理容易混淆知识点(八)文本向量化

本文系统介绍了文本向量化的方法,分为传统方法和深度学习方法两大类。传统方法包括基于词频的计数方法、TF-IDF和主题模型(如LDA),特点是简单可解释但语义捕捉能力有限。深度学习方法涵盖静态词向量(Word2Vec)、上下文词向量(ELMo)和预训练语言模型(BERT),能更好地捕捉语义和上下文信息。文章对比了各类方法在语义捕捉、向量特性等方面的差异,指出当前主流是预训练模型,并总结了从统计方法到深度语义理解的技术演进趋势。

2025-12-25 10:03:53 312

原创 python易混淆知识点(十六)lambda表达式

Python中的lambda表达式是一种创建匿名函数的简洁方式,主要用于编写小型、一次性函数。其基本语法为lambda 参数:表达式,可接受多个参数但只能包含单个表达式。典型应用场景包括:与map()、filter()、sorted()等内置函数配合进行数据处理;作为高阶函数的返回值;在GUI编程中传递参数等。lambda支持条件表达式和嵌套使用,但应注意避免闭包陷阱。相比普通函数,lambda更简洁但调试困难,适合简单逻辑,复杂操作仍建议使用def定义函数。最佳实践是保持lambda简单易读,避免过度使用

2025-12-24 13:47:23 757

原创 python易混淆知识点(十五)迭代器

Python中的迭代器可以通过两种方式创建:1) 将内置类型转换为迭代器,2) 直接定义自定义迭代器。内置类型如列表、元组、字典、字符串和集合都可以通过iter()函数转换为迭代器,每种类型迭代的内容不同(如字典默认迭代键)。自定义迭代器有三种方法:生成器函数(最常用)、实现__iter__和__next__方法的类、以及生成器表达式。迭代器具有一次性消耗特性,只能前进不能后退,使用next()获取元素,耗尽后会引发StopIteration异常。迭代器在数据处理中非常有用,可以实现批量处理、链式迭代等功能

2025-12-24 11:05:53 500

原创 AI大模型入门到实战系列(十六)增强SBERT微调文本嵌入模型

核心思想是:用计算代价高但精度高的Cross-Encoder生成高质量的相似度分数,然后让计算效率高的Bi-Encoder学习这些分数,从而获得接近Cross-Encoder的性能但保持Bi-Encoder的推理速度。使用训练好的交叉编码器为白银数据集中的句子对预测标签,并应用softmax获取概率分布。与同时使用白银和黄金数据集相比,仅使用黄金数据集会降低模型的性能!初始化模型,使用余弦相似度损失函数,在增强数据集上训练双编码器。合并黄金和白银数据集,移除重复的句子对,创建训练数据集。

2025-12-23 15:44:29 623

原创 自然语言处理容易混淆知识点(七)模型架构 vs 使用方式

方面角色快速筛选者精细裁判员输入单句独立句子对一起输出句子向量相似度分数速度⚡⚡⚡ 非常快⚡ 较慢精度良好优秀缓存可以预计算向量不能预计算适用场景召回、检索、聚类重排序、精细匹配简单说两者都是"BERT医生",但:是分诊台护士,快速判断该去哪个科室是专家会诊,详细分析病情在增强SBERT中,就是让护士(Bi-Encoder)学习专家(CrossEncoder)的判断经验,从而让护士在保持高效率的同时,做出更接近专家水平的判断。

2025-12-23 11:08:13 476

原创 AI大模型入门到实战系列(十五)训练文本嵌入模型

本文介绍了两种训练文本嵌入模型的损失函数:余弦相似度损失和多负样本排序损失。对于余弦相似度损失,实验使用MNLI数据集进行二元分类训练,结果显示模型在STS任务上的Pearson相关系数达到0.71。多负样本排序损失则通过构建正负样本对(如"前提-假设"对和随机负样本),采用InfoNCE Loss实现高效训练,重点关注样本间的相对排序而非绝对分值。两种方法各具优势:余弦损失简单直接,而多负样本方法更适合需要区分大量负例的场景,如推荐系统和自监督学习。实验代码展示了从数据准备到模型训练评

2025-12-22 10:15:59 746

原创 python易混淆知识点(十四)三引号

Python中的三引号(""")主要用于定义多行字符串,特别适合编写长文本和保持格式。相比单引号/双引号,三引号可以直接包含换行和引号而无需转义,极大提高了代码可读性。在Prompt工程中,三引号是标准做法,能清晰定义对话模板、few-shot示例等复杂提示词结构,比使用\n拼接字符串更直观易维护。三引号支持f-string等功能,是处理多行文本和提示词模板的首选语法。

2025-12-22 09:08:47 447

原创 自然语言处理容易混淆知识点(六)SentenceTransformer的训练参数

本文详细介绍了Hugging Face Transformers库中SentenceTransformer的关键训练参数及其作用。主要包括输出目录(output_dir)、训练轮数(num_train_epochs)、批次大小(per_device_train_batch_size/eval_batch_size)、热身步数(warmup_steps)、混合精度训练(fp16)以及评估日志参数(eval_steps/logging_steps)。文章还提供了不同场景下的参数调优建议,如小型/大型数据集和有限

2025-12-21 11:11:59 829

原创 AI大模型入门到实战系列(十四)创建文本嵌入模型

本文介绍了如何创建和微调文本嵌入模型,使用BERT-base-uncased作为基础模型。首先从GLUE基准数据集加载MNLI任务的50,000条训练数据,然后配置SoftmaxLoss损失函数和余弦相似度评估器。通过设置训练参数(1个epoch、32的批次大小等),使用SentenceTransformerTrainer进行模型训练,并在STS-B验证集上评估性能。最终模型在余弦相似度上获得0.509的斯皮尔曼相关系数。文中还提供了离线下载数据集和模型的方法,以及解决版本兼容性问题的方案。整个过程展示了从

2025-12-20 21:19:20 952

原创 AI大模型入门到实战系列(十三)多模态大语言模型

本文介绍了使用多模态大语言模型CLIP和SBERT进行图像与文本匹配的方法。首先通过CLIP模型处理雪地小狗图片和文本描述,分别生成512维的嵌入向量并计算相似度。随后扩展至多组图像和文本,计算余弦相似度矩阵并通过热力图可视化匹配结果。实验展示了CLIP模型在多模态任务中的有效应用,为图像-文本跨模态检索提供了实用解决方案。

2025-12-19 09:18:43 1055

原创 AI大模型入门到实战系列(十二)语义搜索与检索增强生成

语义搜索与检索增强生成摘要 本文演示了两种信息检索方法:稠密向量检索和关键词搜索(BM25)。稠密检索部分展示了如何使用Cohere API将文本转换为向量嵌入,通过FAISS索引实现语义相似性搜索。关键词搜索部分则采用BM25算法进行基于词频的检索,包含分词处理和停用词过滤。两种方法都能有效匹配查询与文档,其中语义搜索更适合处理语义相关但词汇不匹配的情况,而关键词搜索则擅长精确匹配术语。文章提供了完整的代码实现,包括文本预处理、嵌入生成、索引构建和查询处理流程。

2025-12-19 09:16:26 692

原创 python易混淆知识点(十三)f具体的用法

Python中的f-string(格式化字符串字面值)是Python 3.6+引入的高效字符串格式化方法。它允许在字符串中直接嵌入变量和表达式,语法简洁直观,比传统的%格式化和str.format()更高效。f-string支持多行字符串、数字格式化、对齐填充、日期时间处理等高级功能,还能嵌套使用条件表达式和函数调用。在AI/ML领域常用于构建动态提示词和生成日志信息。虽然功能强大,但需注意引号转义问题,且仅适用于字符串字面量。性能测试表明f-string是最快的字符串格式化方式。

2025-12-18 09:37:33 610

原创 AI大模型入门到实战系列(十一)高级文本生成技术与工具

本文介绍了高级文本生成技术的实现方法,重点展示了如何构建离线LLM模型和实现链式调用工作流。首先通过安装必要的Python包并下载Phi-3-mini模型,然后演示了两种模型构造方式(基础引擎和LangChain集成)。文章详细讲解了如何创建提示模板链和多链组合应用,通过故事生成示例展示了从标题创建到完整故事输出的全流程。最后指出了无记忆机制的局限性,为后续实现对话记忆功能奠定了基础。这些技术可应用于智能写作、对话系统等场景,特别适合需要离线运行或定制化文本生成的开发者。

2025-12-18 09:36:31 814

原创 自然语言处理容易混淆知识点(五)PyTorch 和 Safetensors格式

摘要: PyTorch格式(.pth/.bin)和Safetensors(.safetensors)是两种模型权重存储格式,核心区别在于安全性和性能。Safetensors由Hugging Face开发,纯数据无代码风险,加载更快(内存映射),支持多框架;PyTorch格式可能含可执行代码,但能保存完整训练状态。Hugging Face生态优先使用Safetensors,生产环境推荐转换(save_file/load_file)。关键建议:优先选择Safetensors确保安全,仅需完整训练状态时使用PyT

2025-12-17 08:25:57 566

原创 自然语言处理容易混淆知识点(四)GGUF格式

GGUF格式是专为llama.cpp设计的模型存储格式,相比原始PyTorch/Safetensors格式具有显著优势。以Phi-3-mini-4k-instruct模型为例,GGUF格式(FP16)文件大小缩减33%(2.8GB vs 4.2GB),支持CPU/GPU推理且内存需求更低。该格式提供多种量化版本,从无损FP16(2.8GB)到极致压缩Q2_K(900MB),满足不同场景需求:FP16适合质量优先,Q4_K_M(1.8GB)是性价比之选,而原始格式则保留用于训练微调。GGUF格式简化了部署流程

2025-12-17 08:25:11 996

原创 AI大模型入门到实战系列(十)提示工程

本文介绍了大语言模型提示工程的基本实践。首先说明了安装必要依赖包的方法,特别强调了启用GPU运算的注意事项。接着展示了如何加载Phi-3-mini模型并创建文本生成管道。文章通过多个示例演示了提示工程的关键技术:从基本提示示例开始,介绍了提示模板的应用方法,展示了不同采样参数对输出的影响,最后阐述了结构化提示的组成部分。这些实践包括角色设定、指令细化、上下文整合、格式要求等要素,旨在帮助开发者更好地引导模型生成高质量、相关性强的输出内容。

2025-12-16 12:18:31 705

原创 自然语言处理容易混淆知识点(三)大模型中的参数

大模型参数规模解析 摘要:本文系统介绍了大模型中的参数概念,7B/13B等参数规模的含义及其实际影响。参数指神经网络中的权重数量,主要由词嵌入层、注意力层和前馈网络构成。不同参数规模对应不同能力级别:7B模型具备基础推理能力,13B可处理复杂任务,70B+接近专家水平。参数量直接影响硬件需求(7B模型需约16.8GB显存)、推理速度(7B模型每秒生成50-100个token)和训练成本(7B模型训练需数万美元)。实际应用中需权衡任务需求与硬件限制,7B-13B量化版是性价比最优选。参数量并非唯一指标,模型架

2025-12-16 09:17:05 818

原创 自然语言处理容易混淆知识点(二)BERT和BERTopic的区别

BERT是Google提出的预训练语言模型,用于生成上下文感知的文本向量表示,适用于各类NLP任务。BERTopic则是基于BERT等嵌入模型的主题建模框架,通过模块化流程(嵌入→降维→聚类→表示)实现文档主题发现。两者的关系类似"引擎与整车":BERT提供基础语义理解能力,BERTopic组织完整分析流程。虽然名称相关,但BERTopic可兼容多种嵌入模型,二者既可独立使用也可协同工作,分别服务于语言表示学习和文本挖掘两大目标。

2025-12-15 10:42:42 855

原创 自然语言处理容易混淆知识点(一)c-TF-IDF和TF-IDF的区别

摘要:c-TF-IDF是BERTopic主题模型的核心创新,它将传统TF-IDF从文档级别扩展到主题级别。与基于单个文档的传统TF-IDF不同,c-TF-IDF将每个主题视为一个文档类,计算词语在整个主题中的区分度。其公式为词频乘以log(1+主题总数/包含该词的主题数),能有效识别最具代表性的主题关键词。BERTopic通过文档聚类后应用c-TF-IDF提取主题特征,支持BM25加权等参数调整,相比传统方法具有更好的主题导向性、去噪能力和可解释性。这种结合语义嵌入和统计显著性的方法,使BERTopic能生

2025-12-15 10:36:24 890

原创 AI大模型入门到实战系列(九)主题建模

本文介绍了BERTopic模块化主题建模框架的应用。首先展示了如何使用BERTopic进行主题建模训练,包括模型初始化、嵌入降维和聚类过程。然后详细说明了查看主题信息、获取特定主题关键词、搜索相关主题等功能的使用方法。文章还提供了多种可视化分析技术,如文档分布图、关键词条形图、主题相似度热力图和层次聚类图。最后介绍了三种改进主题表示的增强方法:KeyBERT启发式算法、最大边际相关性(MMR)和基于Flan-T5的文本生成技术,这些方法可以提升主题关键词的质量和多样性。整个流程涵盖了从基础建模到高级优化的完

2025-12-14 20:56:52 944

原创 AI大模型入门到实战系列(八)文本聚类

本文介绍了使用语言模型进行文本聚类和主题建模的完整流程。首先安装必要的依赖包并应用版本兼容补丁,然后加载arXiv NLP领域论文数据集。接着使用SentenceTransformer将文本摘要转换为384维向量表示,通过UMAP算法降维到5维,最后采用HDBSCAN聚类算法生成150个主题簇。文中详细说明了各步骤的实现代码和参数配置,包括处理版本兼容问题、离线加载数据集和模型的方法,以及聚类过程中可能遇到的问题解决方案。整个流程实现了从原始文本到主题聚类的完整分析过程。

2025-12-14 18:55:37 1440

原创 AI大模型入门到实战系列(七)文本分类进阶

本文探索了三种无需训练分类器的文本分类方法:1) 基于平均嵌入向量的余弦相似度分类,通过计算训练集类别嵌入向量的均值实现分类;2) 零样本分类,直接使用标签描述文本的嵌入向量进行相似度匹配;3) 基于生成模型(如T5)的提示学习分类。实验表明,这些方法在情感分析任务中均能达到不错效果,其中零样本分类准确率可达83.3%,而优化标签描述可提升至85.8%。这些方法特别适用于标注数据稀缺的场景,展示了预训练模型强大的迁移学习能力。

2025-12-13 13:01:59 956

原创 AI大模型入门到实战系列(六)文本分类

如果你有足够的计算资源,可能会有想要自己微调模型的时候。上面代码如果网络不给力的话,可能没办法把模型下载下来,可以在网络行得通的电脑上用下面电脑下载下来后离线加载。充当的就是前面讲的通用嵌入模型进行冻结也就是不进行训练,只是用它来提取特征并将输入文本转换为嵌入向量。我们将通用嵌入模型进行冻结也就是不进行训练,只是用它来提取特征并将输入文本转换为嵌入向量。原因是因为网络不能下载,可以引入梯子端口,代理端口的查看方式如下。在前面的示例中,我们使用了预训练的特定任务模型。和之前我们做的入门实验一样,不过之前的。

2025-12-12 21:32:04 1116

原创 AI大模型入门到实战系列(五)手搓transformer编码器代码

本文展示了从输入嵌入到上下文嵌入的完整过程。通过简化版Transformer处理句子"I love AI":1)初始化设置模型参数;2)输入嵌入层结合词嵌入和位置编码生成初始表示;3)生成Q、K、V矩阵用于注意力计算。关键步骤包括词向量与位置信息的融合,以及多头注意力机制的参数准备。代码示例演示了每个阶段的张量形状变化和数值特征,帮助理解Transformer内部工作机制。

2025-12-11 21:47:15 666

原创 AI大模型入门到实战系列(四)深入理解 Transformer 大语言模型

本文深入解析了Transformer大语言模型的自回归特性与核心组件。自回归模型通过早期预测结果进行后续预测,典型应用如文本生成。模型架构包含分词器(将文本转换为词元序列)、神经网络(Transformer块堆叠)和语言建模头(输出概率分布)。文章演示了如何使用Hugging Face库加载phi3模型,并详细分析了模型结构(32层解码器、3072维嵌入)。通过代码示例展示了从输入到输出的完整流程,包括分词、前向传播和token选择。特别强调了KV缓存机制的重要性,测试显示启用缓存可提速3倍以上(6.66秒

2025-12-10 19:24:45 1143

原创 综合项目案例:基于YOLOV11的车牌识别项目(二)数据集与数据预处理

本文介绍了将CCPD2019中文车牌数据集转换为YOLO格式的方法。CCPD2019包含多种复杂场景下的车牌图像,如模糊、倾斜、夜间等。转换过程主要包括解析CCPD文件名中的边界框坐标,转换为YOLO格式的归一化坐标(中心点x,y和宽高w,h),并按7:2:1比例划分训练集、验证集和测试集。代码实现了自动创建YOLO标准目录结构、解析坐标转换和数据集划分功能。最终生成包含images和labels子目录的YOLO格式数据集,便于直接用于目标检测模型训练。

2025-12-09 15:48:38 687

原创 AI大模型入门到实战系列(三)词元(token)和嵌入(embedding)

本文介绍了AI大模型中词元(token)和嵌入(embedding)的核心概念及其实现过程。词元是将文本拆解为最小可处理单元的数字ID,解决"是什么"的问题;嵌入则是赋予这些ID语义信息的向量表示,解决"意味着什么"的问题。通过Hugging Face的transformers库,文章展示了如何加载Phi-3模型,将输入提示转换为词元ID序列,并解码观察分词细节(如"tutoring"被拆分为"t"+"utor&quo

2025-12-09 08:56:56 630

原创 AI大模型入门到实战系列(二)入门案例使用第一个模型

本文介绍了如何使用Hugging Face的transformers库加载和运行Phi-3-mini语言模型。首先在Google Colab中配置GPU环境并安装必要库,然后加载预训练的Phi-3-mini模型和分词器到GPU上。接着创建文本生成管道,设置参数如最大生成长度和解码方式。最后通过输入提示语"讲一个关于狗的笑话"调用模型,成功生成并输出一个关于狗的有趣笑话。整个过程展示了如何快速部署和使用开源大语言模型进行文本生成任务。

2025-12-08 13:42:04 434

原创 AI大模型入门到实战系列(一)环境准备

本文介绍了在Linux系统下使用Docker搭建AI开发环境的完整流程。首先拉取包含CUDA和cuDNN的Ubuntu20.04基础镜像,然后创建并运行容器,配置端口映射、目录挂载和GPU支持。接着详细说明了如何在容器内配置Jupyter Lab开发环境,包括设置清华PyPI镜像源、生成Jupyter配置文件、设置访问密码、安装notedown插件等步骤。最后通过浏览器访问映射端口即可使用配置好的Jupyter Lab开发环境。整个过程涵盖了从容器创建到开发环境配置的关键步骤,为后续AI开发工作提供了基础环

2025-12-08 12:27:00 374

原创 综合项目案例:基于YOLOV11的车牌识别项目(一)环境准备

摘要: 本文详细介绍了在Windows和Linux系统下搭建YOLOv11开发环境的步骤。Windows环境下,通过Anaconda创建虚拟环境,安装PyTorch(CPU/GPU版本)及相关依赖库,并配置PyCharm编译器。Linux环境下,基于Ubuntu 18.04和Docker,拉取预置镜像创建容器,配置SSH服务实现远程连接,最终通过PyCharm关联容器内的Python环境。两种方式均提供完整的工具链支持,确保项目依赖隔离与高效开发。关键步骤包括镜像加速、环境隔离、端口映射及IDE配置,适用于

2025-12-07 15:17:32 1072

原创 Pytorch的计算图

PyTorch的计算图是自动微分系统的核心,采用动态图机制实时构建。计算图记录张量操作过程,支持前向传播和反向传播。节点代表张量或操作,边表示数据流向。PyTorch默认跟踪requires_grad=True的张量,可通过no_grad()或detach()禁用梯度计算。动态图特性允许每次前向传播新建计算图,相比静态图更灵活。反向传播时,计算图自动应用链式法则计算梯度。该机制使PyTorch能高效处理复杂神经网络训练任务。

2025-12-07 15:12:06 967

原创 python易混淆知识点(十二)[:]具体的用法

v[:]在Python和PyTorch中用于对数组/张量进行原位修改,保持对象ID不变。在PyTorch优化算法(如Adam)中,v[:]能确保动量状态更新时维持计算图连接,避免创建新张量导致梯度计算中断。关键区别在于:直接赋值会创建新对象,而v[:]仅修改原对象内容。这在优化器实现中尤为重要,能正确累积梯度信息。示例显示,使用v[:]可保持状态张量的内存引用,而直接赋值会破坏优化过程。

2025-12-06 09:25:35 911

原创 深度学习实战(基于pytroch)系列(五十一)Adam算法

Adam算法是深度学习中广泛使用的优化方法,结合了动量法和RMSProp的优点,通过自适应调整学习率提高训练效率。其核心在于计算梯度的一阶矩(均值)和二阶矩(方差)的指数加权移动平均,并引入偏差修正机制解决初始估计偏差问题。算法步骤包括初始化参数、迭代更新梯度、计算偏差修正后的矩估计,并据此更新模型参数。PyTorch中可通过自定义实现或直接调用内置优化器使用Adam,适用于线性回归等任务,能有效加速模型收敛并提高训练稳定性。

2025-12-06 09:24:43 1010

原创 深度学习实战(基于pytroch)系列(五十)AdaDelta优化算法

AdaDelta算法是一种自适应学习率优化方法,改进了AdaGrad在迭代后期学习率过小的缺陷。其核心创新在于完全消除了学习率超参数,通过维护两个状态变量(梯度平方的指数加权平均和参数更新量的平方累积)来自适应调整步长。算法步骤包括:计算梯度平方的指数加权平均、利用历史更新量计算自适应步长、更新参数并记录更新量。PyTorch实现展示了从零开始的代码和内置优化器的使用,验证了该算法能有效自动调整学习率。AdaDelta特别适合处理不同特征尺度差异大的数据,避免了手动调参的麻烦。

2025-12-05 08:38:46 1103

原创 深度学习实战(基于pytroch)系列(四十九) RMSProp优化算法

RMSProp优化算法通过引入指数加权移动平均改进AdaGrad,解决了学习率持续衰减的问题。核心公式包括梯度平方的指数加权平均计算(s_t = γs_{t-1} + (1-γ)g_t^2)和参数更新(x_t = x_{t-1} - η/(√s_t + ε)·g_t)。相比AdaGrad的简单累加,RMSProp赋予近期梯度更大权重,使学习率自适应调整而不单调下降。实验对比显示,RMSProp在优化目标函数时表现更优,能有效处理不同参数的不同梯度规模。

2025-12-05 08:38:02 732

原创 深度学习实战(基于pytroch)系列(四十八)AdaGrad优化算法

AdaGrad是一种自适应学习率优化算法,通过为每个参数维度维护平方梯度累加变量来自适应调整学习率。算法核心是:梯度较大的参数获得较小学习率,梯度较小的参数获得较大学习率。其流程包括累积平方梯度和参数更新两步。AdaGrad能有效处理不同维度梯度差异大的问题,但学习率单调递减的特性可能导致后期收敛困难。实验显示,在二维目标函数优化中,AdaGrad能自适应调整各维度学习率,使优化轨迹更合理。算法实现时需注意数值稳定性常数ε的添加。

2025-12-04 08:21:13 859

原创 深度学习实战(基于pytroch)系列(四十七)momentum(动量法)

本文介绍了梯度下降法的局限性以及动量法的改进方案。梯度下降在目标函数不同方向梯度差异较大时,需要较小的学习率以避免振荡,但会导致收敛缓慢。动量法通过引入速度变量,结合当前梯度和历史速度信息(公式:vₜ=γvₜ₋₁+ηgₜ),有效缓解了这一问题。实验显示,动量法能使优化路径更平滑,允许使用更大学习率而不会发散。文中还详细解释了指数加权移动平均的数学原理,说明动量法本质是对最近1/(1-γ)个梯度进行加权平均,近期梯度权重更高(如γ=0.9时约65%权重集中于最近10步)。这种机制使动量法兼具快速响应和稳定收敛

2025-12-04 08:19:36 852

原创 python易混淆知识点(十一)__init__.py

Python中的__init__.py文件用于标识和初始化包,主要功能包括:1)标记目录为Python包;2)执行包初始化代码;3)控制导入行为(如定义__all__列表)。Python 3.3+支持无__init__.py的命名空间包,但显式使用该文件仍是推荐做法,能提供更好的控制和清晰的包结构。常规包(含__init__.py)适合大多数项目,而命名空间包适用于需要跨多目录组合的特殊场景。最佳实践建议在项目中保持一致性,优先使用__init__.py以确保代码清晰性和可维护性。

2025-12-03 10:13:15 909

原创 python易混淆知识点(十)yield和return的区别

Python中yield和return的关键区别:return立即终止函数并返回值,而yield暂停函数执行并保留状态,生成可迭代的生成器对象。yield适合处理大数据集(节省内存)、流式数据和无限序列,通过惰性计算提高效率;return则用于常规函数返回值。生成器(yield)会保存局部变量和执行位置,实现状态保持,而return每次调用都重新执行函数。根据数据规模和计算需求选择:小数据用return,大数据或流处理用yield。

2025-12-03 10:11:59 351

Unity 框架开发案例教程.docx

Unity 框架开发案例教程.docx

2024-12-07

项目开发案例教程.docx

项目开发案例教程.docx

2024-12-07

通用PPT用户使用手册.docx

通用PPT用户使用手册.docx

2024-12-07

OpenSceneGraph.docx

osg

2024-11-27

Proteus8.9使用手册.docx

proteus8.9

2024-11-27

Multisim14安装教程.docx

multisim14.0安装教程

2024-11-27

Django开发入门案例.docx

Django开发入门案例.docx

2024-11-27

GitHub 是一个基于Git的版本控制和协作平台(简易手册).docx

github

2024-11-26

以下是一个简单的C语言文件读写操作示例代码.docx

c语言文件读写操作代码

2024-11-26

常用的 Linux 命令大全.docx

linux常用命令大全

2024-11-26

计算机网络的知识体系.docx

计算机网络的知识体系.docx

2024-11-26

数据结构课程设计.docx

数据结构课程设计

2024-11-25

空瓶换水问题c语言pta.docx

空瓶换水c语言pta

2024-11-25

Python绘制高级爱心代码.docx

python爱心代码高级

2024-11-25

Android 开发.docx

Android 开发.docx

2024-11-25

raw文件如何打开.docx

raw文件如何打开

2024-11-24

在Android Studio中创建一个简单的计算器应用.docx

android studio计算器

2024-11-24

西安电子科技大学的微机原理实验.docx

西电微机原理实验

2024-11-24

OpenCV入门教程及案例.docx

OpenCV入门教程及案例.docx

2024-11-24

ARIMA模型用户手册.docx

arima模型

2024-11-23

C语言编写一个简单的俄罗斯方块游戏.docx

俄罗斯方块c语言

2025-01-13

YOLO入门案例教程.docx

yolo

2025-01-10

WebSocket 入门案例教程.docx

websocket

2025-01-10

JavaScript入门案例教程.docx

javascript

2025-01-10

Ubuntu20安装教程.docx

ubuntu20.04安装教程

2025-01-08

MATLAB入门教程.docx

MATLAB入门教程.docx

2025-01-08

用Python创建圣诞树和圣诞卡片.docx

用Python创建圣诞树和圣诞卡片.docx

2025-01-08

计算机专业学习心得与技巧.docx

计算机专业学习心得与技巧.docx

2025-01-08

适合初学者的Java入门案例教程.docx

适合初学者的Java入门案例教程.docx

2025-01-08

毕业设计报告《基于深度学习的手势识别系统》.docx

毕业设计报告《基于深度学习的手势识别系统》.docx

2025-01-08

在VSCode中配置C\C++.docx

vscode配置c/c++ 环境

2025-01-08

Anaconda安装教程.docx

anaconda安装

2025-01-08

毕业设计开发资源推荐.docx

毕业设计开发资源推荐.docx

2025-01-08

关于新年主题的简单Python代码教程.docx

关于新年主题的简单Python代码教程.docx

2025-01-08

适合初学者的 Python 入门案例教程.docx

适合初学者的 Python 入门案例教程.docx

2025-01-08

清华源各种用法.docx

清华源

2024-12-07

适合初学者的神经网络入门案例教程.docx

适合初学者的神经网络入门案例教程.docx

2024-12-07

鸿蒙系统入门手册.docx

鸿蒙

2024-12-07

Vue框架开发案例入门教程.docx

Vue框架开发案例入门教程.docx

2024-12-07

使用matplotlib和numpy绘制动态 3D 圣诞树的 Python 示例代.docx

python圣诞树代码动态3d

2024-12-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除