自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 【NLP】隐马尔可夫模型(HMM)与条件随机场(CRF)简介

隐马尔可夫模型(Hidden Markov Model, HMM)是一种用于处理含有隐藏状态的序列数据的统计学习模型。通过建模隐藏状态之间的转移关系以及隐藏状态与观测数据的生成关系,HMM能够在仅观察到部分信息的情况下进行状态推理、概率计算、序列标注以及模型参数学习,从而服务于各种实际应用中的序列数据分析和预测任务。所以,HMM特别适用于那些只能观察到部分信息(即观测序列),而系统的实际状态(即隐藏状态)无法直接观察的情况。

2024-04-07 22:26:43 1663 1

原创 【NLP】关于BERT模型的一些认知

BERT(Bidirectional Encoder Representations from Transformers)模型是由Google在2018年提出的预训练Transformer模型,用于自然语言处理任务。BERT中的Encoder模块是由三种Embedding(词嵌入)共同组成,如下图所示:在BERT模型的训练过程中,位置嵌入会与其他的嵌入(如单词嵌入和段嵌入)一起被模型使用。当模型在处理一个单词时,它会参考该单词的位置嵌入,以理解这个单词在句子中的位置。然后,模型会根据这个位置信息以及其他嵌

2024-04-07 20:59:29 1144

原创 【深度学习】Pytorch中实现交叉熵损失计算的方式总结

虽然在Pytorch架构中,神经网络内流动的数据类型必须是float类型,但是Pytorch也提供了自动处理整数(int类型)标签的交叉熵损失函数(这里的“整数标签”指的是每个样本所属的真实类别,通常是一个从0开始的整数索引,对应着类别数量中的一个),这些函数会自动将整数标签转换为内部使用的one-hot编码格式,并计算交叉熵损失。对于二分类问题,尤其是sigmoid激活函数之后的结果,可以使用带Sigmoid的二元交叉熵损失函数,它同时完成 sigmoid 和 二元交叉熵损失的计算。

2024-03-25 22:22:11 1731

原创 深度学习中的模型蒸馏技术:实现流程、作用及实践案例

在深度学习领域,模型压缩与部署是一项重要的研究课题,而模型蒸馏便是其中一种有效的方法。模型蒸馏(Model Distillation)最初由Hinton等人在2015年提出,其核心思想是通过知识迁移的方式,将一个复杂的大模型(教师模型)的知识传授给一个相对简单的小模型(学生模型),,从而在保持较高预测性能的同时,极大地降低了模型的复杂性和计算资源需求,实现模型的轻量化和高效化。模型蒸馏技术在计算机视觉、自然语言处理等领域均取得了显著的成功。

2024-03-25 21:55:43 5808

原创 检索增强生成(RAG)技术:实现流程、作用及应用案例

在自然语言处理(NLP)领域中,检索增强生成(Retrieval-Augmented Generation, RAG)技术巧妙地结合了信息检索与神经网络生成模型的力量,通过在生成过程中引入相关的外部信息,实现了在大规模知识库基础上的精准、多样且具有上下文关联性的文本生成。RAG技术的目的在于,其关键创新在于打破传统生成模型仅仅依赖自身参数预测输出的限制,转而。这一革新极大地提升了模型在问答、对话系统、文本摘要等多种任务上的表现。

2024-03-24 22:24:29 4649

原创 探索LLaMA模型:架构创新与Transformer模型的进化之路

LLaMA模型代表了一种先进的人工智能技术,能够在自然语言处理(NLP)任务上表现出卓越的能力,如文本生成、问答、对话交互、机器翻译以及其他基于语言的理解和生成任务。LLaMA模型家族的特点在于包含了不同参数规模的多个模型版本,参数量从70亿(7B)至650亿(65B)不等。这些模型设计时借鉴了Chinchilla模型的研究成果,注重在有限的训练数据和计算资源条件下实现最佳性能表现。

2024-03-24 21:37:16 2969 1

原创 【Python】Python中装饰器和魔法方法的区别

在Python中,装饰器(Decorators)和魔法方法(Magic Methods)是两种不同的高级特性,分别服务于不同的目的。

2024-03-21 21:33:34 392 1

原创 【NLP】多头注意力(Multi-Head Attention)的概念解析

多头注意力(Multi-Head Attention)是一种在Transformer模型中被广泛采用的注意力机制扩展形式,它通过并行地运行多个独立的注意力机制来获取输入序列的不同子空间的注意力分布,从而更全面地捕获序列中潜在的多种语义关联。在多头注意力中,输入序列首先通过三个不同的线性变换层分别得到Query、Key和Value。然后,这些变换后的向量被划分为若干个“头”,每个头都有自己独立的Query、Key和Value矩阵。

2024-03-20 22:00:17 6559 2

原创 取消fasttext警告:`load_model` does not return WordVectorModel or SupervisedModel any more, but ......

这行代码的作用是将原本可能打印错误信息的eprint方法替换为一个“空操作”函数,从而达到抑制FastText库在运行过程中输出错误或调试信息的目的。在实际使用中,这样的做法可能会隐藏掉一些潜在的错误信息和警告,因此除非有特殊需求,一般不建议这样做。查了下GitHub上相同的问题,提到上面的fasttext的警告信息将会在下一个官方版本。加载训练好的文本分类模型,完成输入文本的分类预测任务。中被解决(大概率直接删除)。(截止目前是最新版本)导包时添加下面这行代码。

2024-03-20 20:46:10 482 1

原创 【NLP】含注意力机制的Seq2Seq模型简介及代码示例

序列到序列(Sequence-to-Sequence,简称Seq2Seq)模型是一种深度学习架构,主要用于处理输入和输出都是变长序列的任务,例如机器翻译、文本摘要、语音识别转文字、聊天机器人对话等自然语言处理任务。Seq2Seq模型的核心思想是使用两个主要部分组成的神经网络框架:编码器(Encoder)和解码器(Decoder)。

2024-03-19 22:07:00 2422 1

原创 【NLP】小结:fasttext模型中的层次softmax策略

普通softmax函数接收一个向量作为输入,并将其转换为一个归一化的概率分布。每个输入单元对应一个类别,输出的是属于各个类别的概率值,且所有类别的概率和为1。公式表示为:其中,

2024-03-19 17:16:24 1326 1

原创 【Python数据结构】反转链表的方法

反转链表是指改变单链表中节点之间的连接关系,使得原本的正向顺序变为反向顺序。以下是反转单链表的常见方法:迭代法反转链表的流程:使用三个指针,通常命名为 prev、current 和 next:下面是具体的代码实现:二. 递归法设定递归函数,传入当前节点作为参数:当前节点为空或只有一个节点时,直接返回该节点(此时无需反转);否则,递归调用函数处理下一个节点,得到反转后的下一个节点;然后修改当前节点的 next 指针,使之指向反转后返回的节点;最后返回当前节点作为新的子链表的头节点。请注

2024-03-18 21:21:22 1605

原创 【深度解析】在训练机器学习模型时如何优雅地展示训练进度条

在机器学习实践中,特别是在训练大型数据集或者复杂的深度学习模型时,一个直观且实时更新的训练进度条对于跟踪模型训练进程至关重要。它不仅可以帮助我们估算训练完成所需的时间,还可以实时反馈每个训练批次或周期的损失变化,从而更好地监控模型训练状态和性能。本文将深入探讨如何在训练机器学习模型时实现这样一个进度条功能,并附上Python编程语言下的代码示例。总之,在机器学习模型训练过程中,巧妙运用进度条工具不仅能增强用户体验,提高训练过程的透明度,还能辅助调试和优化模型训练流程。

2024-03-18 18:44:51 1962

原创 【NLP】关于Transformer模型的一些认知

Transformer模型是深度学习领域中的一种革命性架构,尤其在自然语言处理(NLP)任务中产生了深远影响。该模型由谷歌的研究团队在2017年的论文《Attention is All You Need》中首次提出,完全摒弃了循环神经网络(RNN)和卷积神经网络(CNN),转而采用自注意力(Self-Attention)机制为核心构建而成。

2024-03-17 22:03:52 947 1

原创 【Pandas】将DataFrame对象转换为字典或列表的方法

不指定索引时,默认直接使用df对象的行索引充当键。输出格式为字典嵌套字典。

2024-03-17 19:37:51 2606 1

原创 【Python】用weasyprint实现将html文件转成pdf文件

最近在工作中经常遇到html文件无法在手机端、pad上无法查看的苦恼,但又不想装一些乱七八糟的app,所以想到把html文件保存成pdf文件,以方便随时随地方便的查看文件。

2024-03-03 23:57:33 1840

原创 【Python】map()函数在使用过程中的小问题记录

map()函数在使用过程中的小问题记录

2024-03-03 22:52:06 369

原创 成功解决:ERROR: Could not build wheels for fasttext, which is required to install pyproject.toml-based

成功解决:ERROR: Could not build wheels for fasttext, which is required to install pyproject.toml-based

2024-03-01 11:55:16 5814 5

原创 深度学习神经网络的4个基础激活函数的特性说明

一. 激活函数激活函数(Activation Function)是人工神经网络中至关重要的组成部分,它负责在神经元节点上对输入信号进行非线性转换。在神经网络模型的计算过程中,激活函数被应用于每个神经元的输出以引入非线性特性,使得网络模型可以逼近任意函数, 从而提升网络对复杂问题的拟合能力,这对于解决复杂、非线性的问题至关重要。二. 激活函数的基本作用 非线性映射:如果神经网络中没有激活函数,每一层都只是执行矩阵乘法和加法等线性操作,无论堆叠多少层,整个网络都无法学习到非线性的模式,其表达能

2024-02-21 16:26:06 1189

原创 机器学习算法关于解决分类问题与回归问题的总结

机器学习算法(不含深度学习部分)关于解决分类问题与回归问题的总结:

2024-02-04 08:50:59 436 1

原创 集成学习常见算法(RF、AdaBoost、GBDT和XGBoost)特点及对比

集成学习(Ensemble Learning)是一种机器学习范式,它通过构建并结合多个基学习器(或称为弱学习器)的预测结果来改善整体模型的性能。其基本思想是“三个臭皮匠赛过诸葛亮”,即虽然单个学习器可能只有有限的学习能力或泛化能力,但通过合理地将它们的预测结果聚合起来,可以创建一个更强大、更稳健且具有更好泛化性能的集成模型。在集成学习中,个体学习器通常是同质的或者异质的,可以基于不同的算法训练而成,也可以在数据的不同子集上训练得到。

2024-01-24 18:37:36 1044 1

原创 使用python制作九宫格切图器

九宫格切图器主要使用了Python第三方图像处理模块Pillow,它是Python Imaging Library (PIL) 的一个活跃分支,专门为Python 3.x环境提供了全面的支持。图像读取与写入:支持多种图像格式的读取和保存,如JPEG、PNG、BMP、GIF、TIFF、PPM、WebP等。图像操作:可以对图像进行裁剪、缩放、旋转、翻转等基本几何变换,并且可以调整图像尺寸、颜色模式(如RGB到灰度)以及像素级的操作。图像处理。

2024-01-17 16:14:43 1272

原创 如何一键提取Python文件或SQL文件中的注释(包含单行注释及多行注释)

导包:使用正则表达式要用到re模块import re# 定义函数,用于获取Python文件的单行注释,find single_line comments# 用正则表达式定义字符串匹配的模式pattern,或者说规则# 定义函数,用于获取Python文件的多行注释,find multiline comments:""")(.*?)(?方法用于返回字符串中所有不重叠的匹配项的列表。如果模式中存在一个或多个匹配组,会返回一个组列表;如果模式有多个组,则会返回一个元组列表,即列表嵌套元组。

2023-12-20 22:30:06 827 1

原创 Python中多线程的执行顺序

Python多线程的执行顺序

2023-12-10 16:08:33 1923 2

原创 Mysql基础查询语句练习题——Northwind 34题参考答案

northwind34题:MySQL数据查询练习题参考答案

2023-11-28 21:56:25 560 1

空空如也

空空如也

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

TA关注的人

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