
自然语言处理
文章平均质量分 76
大鹏的NLP博客
擅长自然语言处理,知识图谱,人工智能,大数据,K8S,软件工程等领域的技术及管理
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
基于 Transformer robert的情感分类任务实践总结之三——FGM
FGM本质思想:在训练阶段,主动给模型输入加一点"微小扰动"(adversarial perturbation),逼迫模型在 "坏情况" 下也能做出正确预测。原创 2025-06-08 13:19:30 · 763 阅读 · 0 评论 -
基于 Transformer robert的情感分类任务实践总结之二——R-Drop
性能提升:相比基础RoBERTa,改进后模型在测试集上的F1分数提升约1.2%,AUC提升约0.8%,过拟合现象明显缓解。核心价值:R-Drop通过强制模型输出一致性,有效增强了预测稳定性;标签平滑则降低了模型对硬标签的依赖,两者结合显著提升了泛化能力。适用场景:文本分类、情感分析等任务,尤其适合标注数据有限或需提升模型鲁棒性的场景。原创 2025-06-07 15:46:10 · 1162 阅读 · 0 评论 -
基于 Transformer robert的情感分类任务实践总结
本文介绍了使用Transformer模型进行情感分类的完整流程。通过Hugging Face工具加载roberta-base模型和IMDB影评数据集原创 2025-06-07 09:04:41 · 533 阅读 · 0 评论 -
基于 LoRA 和 GRPO 的 Qwen2.5-3B 数学推理模型微调示例
本项目基于Qwen2.5-3B-Instruct模型,结合LoRA和GRPO技术,针对GSM8K数学推理任务进行微调。关键实现包括:1)数据预处理,将问题包装为对话格式并提取正确答案;2)LoRA配置(秩=16,alpha=32)优化关键模块;3)多维度奖励函数设计,分别评估答案正确性和XML格式规范性;4)GRPO训练设置(学习率2e-4,批次16)。目标是通过强化学习引导模型生成符合XML格式的数学推理过程。原创 2025-05-26 21:53:51 · 391 阅读 · 0 评论 -
BGE-M3 文本情感分类实战:预训练模型微调,导出ONNX并测试
本文介绍了如何基于BGE-M3开源模型实现一个简单的二分类情感分析任务,展示了NLP中经典的“预训练 + 微调”范式。首先,加载预训练模型和分词器,并构建分类头整合到模型中。接着,进行数据预处理并构建DataLoader。然后,定义优化器、损失函数和训练循环,进行模型微调。微调过程中,可以选择基于[CLS] token的单特征提取或基于池化策略的多特征融合。最后,通过验证与推理评估模型性能,并导出ONNX模型以适应生产环境。BGE-M3在语义表征任务中表现优异,适合作为文本分类、语义搜索等下游任务的基础模型原创 2025-05-22 20:24:27 · 250 阅读 · 0 评论 -
机器学习指标:准确率、精准率、召回率、F1、ROC曲线、AUC曲线
还是拿之前的例子,总样本中,90% 是正样本,10% 是负样本。这里,TPR 只关注 90% 正样本中有多少是被真正覆盖的,而与那 10% 毫无关系,同理,FPR 只关注 10% 负样本中有多少是被错误覆盖的,也与那 90% 毫无关系,所以可以看出:如果我们从实际表现的各个结果角度出发,就可以避免样本不平衡的问题了,这也是为什么选用 TPR 和 FPR 作为 ROC/AUC 的指标的原因。举个简单的例子,比如在一个总样本中,正样本占 90%,负样本占 10%,样本是严重不平衡的。这样不利于模型的学习。原创 2024-10-19 20:49:21 · 1421 阅读 · 0 评论 -
本地源码方式部署启动MaxKB知识库问答系统
此命令应列出所有可用的扩展。专门查找 pgvector.control .python 版本大于3.11。初始的账号admin 密码。登录之后会提示你修改密码。原创 2024-09-11 16:34:32 · 1006 阅读 · 0 评论 -
fatal: unable to access ‘https://huggingface.co/sentence-transformers/all-MiniLM-L6-v2/‘: Failed to
如果你曾设置过代理,便会在再设置代理时遭遇此错误。使用 --unset-all 替代 --unset 即可解决。原创 2024-07-26 09:26:13 · 699 阅读 · 0 评论 -
文本生成任务的评价方法BLEU 和 ROUGE、BERTScore
BLEU 是 2002 年提出的,而 ROUGE 是 2003 年提出的。这两种指标虽然存在着一些问题,但是仍然是比较主流的评价指标。原创 2024-04-20 20:22:05 · 6152 阅读 · 0 评论 -
gemma 大模型(gemma 2B,gemma 7B)微调及基本使用
Gemma是Google推出的一系列轻量级、最先进的开放模型,基于创建Gemini模型的相同研究和技术构建。提供了 2B 和 7B 两种不同规模的版本,每种都包含了预训练基础版本和经过指令优化的版本。所有版本均可在各类消费级硬件上运行,无需数据量化处理,拥有高达 8K tokens 的处理能力:它们是文本到文本的、仅解码器的大型语言模型,提供英语版本,具有开放的权重、预训练的变体和指令调优的变体。Gemma模型非常适合执行各种文本生成任务,包括问答、摘要和推理。原创 2024-03-28 21:41:31 · 14026 阅读 · 7 评论 -
Transformers 直观解释——不仅是如何工作,而且为什么工作得这么好
查询Q和键K之间的点积计算每对单词之间的相关性。然后将该相关性用作“因子”来计算所有值V的加权和。该加权和作为注意力分数输出。Transformer 学习嵌入等,从而使彼此相关的单词更加对齐。这是引入三个线性层并为查询、键和值创建三个版本的输入序列的原因之一。这为注意力模块提供了更多参数,它可以学习这些参数来调整词向量的创建。原创 2024-03-27 22:36:02 · 913 阅读 · 0 评论 -
传统语音识别系统流程
语音识别传统方法主要分两个阶段:训练和识别,训练阶段主要是生成声学模型和语言模型给识别阶段用。原创 2024-01-19 18:18:34 · 1889 阅读 · 0 评论 -
Paraformer 语音识别原理
模Paraformerr的组成:Encoder(编码器),Predictor(预测器),Sampler(采样器),Decoder(解码器),loss function。原创 2023-11-30 17:23:54 · 4215 阅读 · 0 评论 -
NLP中 大语言模型LLM中的思维链 Chain-of-Thought(CoT) GoT
在过去几年的探索中,业界发现了一个现象,在增大模型参数量和训练数据的同时,在多数任务上,模型的表现会越来越好。因而,现有的大模型LLM,最大参数量已经超过了千亿。然而,增大模型参数规模,对于一些具有挑战的任务(例如算术、常识推理和符号推理)的效果,并没有太大提升。对于算术类推理任务,我们期望模型生成自然语言逻辑依据来指导并生成最终答案,但是获得逻辑依据是比较复杂昂贵的(标注成本层面)。原创 2023-11-24 22:19:47 · 6838 阅读 · 0 评论 -
长短期记忆网络(LSTMs)介绍
长短期记忆网络(LSTMs)介绍1:传统RNN的缺点,LSTM结构解析,LSTM变体简介转载 2022-11-14 18:43:49 · 182 阅读 · 0 评论 -
Bert微调技巧大全
论文摘要这篇论文的主要目的在于在文本分类任务上探索不同的BERT微调方法并提供一种通用的BERT微调解决方法。这篇论文从三种路线进行了探索:(1) BERT自身的微调策略,包括长文本处理、学习率、不同层的选择等方法;(2) 目标任务内、领域内及跨领域的进一步预训练BERT;(3) 多任务学习。微调后的BERT在七个英文数据集及搜狗中文数据集上取得了当前最优的结果。有兴趣的朋友可以点击上面的实验代码,跑一跑玩一玩~见: https://mp.weixin.qq.com/s/uYHYISd72rF_0uQI转载 2021-08-25 10:01:45 · 1443 阅读 · 0 评论 -
中文分词笔记之二:隐马尔科夫模型
总结,隐马尔科夫模型一共有两组状态,三个矩阵 隐藏状态:一个系统的(真实)状态,可以由一个马尔科夫过程进行描述(例如,天气)。 观察状态:在这个过程中‘可视’的状态(例如,海藻的湿度)。 向量:包含了(隐)模型在时间 t=1 时一个特殊的隐藏状态的概率(初始概率)。 状态转移矩阵:包含了一个隐藏状态到另一个隐藏状态的概率 混淆矩阵:包含了给定隐马尔科夫模型的某一个特殊的隐原创 2015-01-29 22:11:04 · 1564 阅读 · 0 评论 -
中文分词笔记之三:示例代码及测试结果
示例代码: /** *g为邻接表 *i为当前节点 */ Iterator it1 = g.getPrev(i);//得到一级前驱词集合 double maxProb = Double.NEGATIVE_INFINITY; int maxPrev1 = -1; int maxPrev2 = -1; while(it1.hasNext()) { CnToken t1原创 2015-01-31 13:46:16 · 1032 阅读 · 0 评论 -
双数组Trie笔记
理论见: http://xudongliang198421.blog.163.com/blog/static/9851503520118155553856另见:http://www.hankcs.com/program/java/%E5%8F%8C%E6%95%B0%E7%BB%84trie%E6%A0%91doublearraytriejava%E5%AE%9E%E7%8E%B0.html例子出自原创 2016-11-04 21:03:13 · 757 阅读 · 0 评论 -
中文分词笔记之二:隐马尔科夫模型
这里以中文分词为例: 在正常的马尔可夫模型中,状态对于观察者来说是直接可见的。这样状态的转换概率便是全部的参数。而在隐马尔可夫模型中,状态并不是直接可见的,但受状态影响的某些变量则是可见的。每一个状态在可能输出的符号上都有一概率分布。因此输出符号的序列能够透露出状态序列的一些信息。隐马尔科夫模型一共有两组状态,三个矩阵: 隐藏状态:一个系统的(真实)状态,可以由一个马尔科夫过原创 2016-12-23 16:12:46 · 1623 阅读 · 0 评论 -
AC自动机算法笔记
AC算法是Alfred V.Aho(《编译原理》(龙书)的作者),和Margaret J.Corasick于1974年提出(与KMP算法同年)的一个经典的多模式匹配算法,可以保证对于给定的长度为n的文本,和模式集合P{p1,p2,...pm}P\{p_1,p_2,...p_m\},在O(n)时间复杂度内,找到文本中的所有目标模式,而与模式集合的规模m无关. AC算法从某种程度上可以说是KMP原创 2016-12-29 17:18:20 · 1533 阅读 · 0 评论 -
python 环境下gensim中的word2vec的使用笔记
centos 7, python2.7, gensim (0.13.1)语料:http://211.136.8.18/files/10940000015A9F94/mattmahoney.net/dc/text8.zip程序:# -*- coding: utf-8 -*-'''Created on 2016年8月29日测试gensim使用@author: root'''from gensi原创 2016-08-29 16:57:44 · 36900 阅读 · 0 评论 -
kaldi安装
利用gcc-6.3.0安装失败,建立软链接也是失败,重启系统不受影响。使用系统gcc安装开始安装cd kaldi-5.0 cd tools extras/check_dependencies.sh result: extras/check_dependencies.sh: all OK.make -j4 extras/install_irstlm.shkaldi目录下 cd sr原创 2017-02-28 12:09:27 · 1005 阅读 · 0 评论 -
自然语言处理语料库
搜狗实验室数据资源http://www.sogou.com/labs/resource/list_pingce.php自然语言处理与信息检索共享平台http://www.nlpir.org/?action-category-catid-28参考:http://blog.youkuaiyun.com/u012052268/article/details/78035272其它语...原创 2018-03-22 14:24:28 · 2298 阅读 · 1 评论 -
pandas 学习笔记
https://ericfu.me/10-minutes-to-pandas/ DataFrame 是由 Series 组成的,内部使用numpy格式存储用 head 和 tail 查看顶端和底端的几列df = pd.DataFrame({ 'A' : 1., 'B' : pd.Timestamp('20130102'), ...原创 2018-08-28 12:26:30 · 340 阅读 · 0 评论 -
pyltp测试笔记
ltp数据地址:http://ltp.ai/download.html分句 def test_split(self):#分句 sents = SentenceSplitter.split('人工智能是一门极富挑战性的科学。从事这项工作的人必须懂得计算机知识,心理学和哲学。') # 分句 print('\n'.join(sents))结果...原创 2018-09-01 18:26:04 · 860 阅读 · 0 评论 -
中文分词笔记之一:概率基础
分词,对于一个字符串C=可以输出多个词串S=,而S中最大的那个,就是我们要的结果。根据贝叶斯公式,其中P(C),可以从语料库统计得出,在这里只是一个固定值;且P(C|S)=1。因此,比较P(S|C)的大小变成比较P(S)的大小: 根据马尔科夫模型可得:P(S) = P(w1,w2,...,wn)= P(w1)P(w2|w1) P(w3|w1,w2原创 2015-01-28 23:07:37 · 7584 阅读 · 0 评论