自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(80)
  • 资源 (5)
  • 收藏
  • 关注

原创 MiniCPM-V-2_6如何从输入到输出-代码解析(一)

之前写的等文章还是有不少人看的,NLP基本就是这样的处理流程了(当然有我还没发现的模型架构,比如说RWKV),这次尝试从Minicpm-V出发,将代码改写成我们熟悉的样子。

2025-03-20 16:31:36 336

原创 Qwen1.5-MoE-A2.7B-Chat如何从输入到输出-代码解析

与Qwen1.5-14B-Chat如何从输入到输出-代码解析一致,这里使用的是RepetitionPenaltyLogitsProcessor,Deepseek-llm中的代码要做一下修改从输入到输出的逻辑是没有发生变化的。

2025-03-10 15:30:12 489

原创 Qwen1.5-14B-Chat如何从输入到输出-代码解析

import re把这些代码保存成llama.py,放在Qwen1.5-14B-Chat的代码中,就可以正常使用了prompt = "介绍一下LLM"{"role": "system", "content": "你是一个有用的AI助手"},

2025-03-10 10:28:15 272

原创 Deepseek-MOE-16B-chat如何从输入到输出-代码解析

之前写的几篇关于大模型从输入到输出的代码都是transformer结构的代码,这次挑战一下MOE的代码,我是基于Deepseek-MOE-16B-chat的代码做的修改,这中间关于模型结构deepseek-llm-7b-chat调整的内容不是很多,主要是MOE的部分做了调整。请先阅读上一篇,关于完全一样的内容,这里不再重复

2025-03-06 17:08:52 736

原创 Deepseek-LLM-7B-chat如何从输入到输出-代码解析(一)

到此基本就写完了代码,最后补充上一点import和实际调用的代码import re把这些代码保存成llama.py,放在deepseek-llm-7b-chat的代码中,就可以正常使用了{"role": "user", "content": "你是谁?"}代码量在450行,原始代码量是1100,减少一半的代码的小目标基本实现(成功)

2025-03-04 09:15:11 720

原创 ChatGLM2-6B如何从输入到输出-代码解析(二)

解析了Chatglm2-6b的模型架构,并和Chatglm-6b进行对比,这一篇的目的是讲明白attention和rotaryEmbedding,并实现整体目标,完全替代modeling_chatglm.py,并将代码缩减到一半儿。

2025-02-25 18:25:39 339

原创 ChatGLM2-6B如何从输入到输出-代码解析(一)

上周整理了Chatglm-6b的代码,对模型从输入到输出一目了然,对模型内几个主要的模块更加熟悉了,这周继续出发,对Chatglm2-6b下手,看一下两个版本的代码有哪些改动,这周稍微有点不一样的是,我是直接在modeling_chatglm.py上进行修改的,一起来看一下吧。

2025-02-25 15:54:33 1134

原创 gelu-代码解读

最近写到了chatglm-6B的代码解读,发现gelu这么常用的激活函数的来龙去脉我都没搞明白,所以去翻了一下论文和代码,不翻不知道,一翻吓一跳啊,原来我们经常看到的代码竟然是近似形式,它还有很多的背景知识,一起来看一下吧。

2025-02-21 14:37:25 204

原创 ChatGLM-6B如何从输入到输出-代码解析(二)

已经从输入得到了对应的input_ids、attention_mask、position_ids等模型需要的变量,递归的输入模型也已经能得到输出,模型还是个黑盒子,我们这篇就画一下模型的流程图,在流程图的基础上拆解一下代码,希望代码量少一半,且能正常从输入到输出。

2025-02-21 11:18:13 974

原创 ChatGLM-6B如何从输入到输出-代码解析(一)

将输入得到输出的相关代码摘出来,主要是在使用past_key_values部分比较复杂,因为相对应的attention_mask和position_ids也会发生变化,还没有涉及到模型部分,下一步会进入模型解构部分,期待吧。

2025-02-18 15:22:57 243

原创 MiNicpm-o2.6和MiNicpm-V2.6模型架构对比

MiNicpm-o2.6和MiNicpm-V2.6在哪些方面有变化呢?为什么都是8B模型呢?本文探索了这些问题,且提出了一些自己想不透的问题

2025-01-23 14:19:43 617

原创 手撕RNN代码

简单介绍了RNN,通过三种方法实现RNN

2024-11-21 16:53:54 181

原创 huggingface之tokenization基础结构Trie-代码解读

对字典树的代码进行解读,并对其中发现的一个bug进行标注且修改

2024-10-30 17:25:51 337

原创 attn_mask-代码解读

看到关于attn_mask给出了一个新的源文件,里面包含了创建4d_causal_attention源码,那是怎么实现的呢,一起来看一下吧。

2024-10-22 14:49:10 837

原创 ROPE及各种变体-代码解读

看到关于rope给出了一个新的源文件,里面包含了rope及多种变体的源码,那都有哪些变体呢,又是怎么实现的呢,各个变体之间的区别和联系是什么呢,一起来看一下吧。

2024-10-17 11:57:52 956 3

原创 MINICPM-V2_6图像+文本得到embedding-代码解读

基于将不同长度的图片patch embedding通过resampler变换成固定长度的patch embedding,那这个patch embedding是怎么和文本embedding到一起的呢?本篇从此出发,一起来看一下吧。

2024-09-25 17:22:42 830

原创 MINICPM-V2_6之图像embedding的resampler-代码解读

既然是attention,那其中必然有位置embedding,这里使用的是ROPE,只是因为是2D,所以这里也要处理一下得到2D的位置embedding"""输入:embed_dim: 向量维度输出:demo:"""else:grid = np.meshgrid(grid_w, grid_h) # 生成网格,但是这里是w在前;torch.meshgrid是h在前grid = np.stack(grid, axis=0)# 在第0维拼接"""输入:embed_dim: 向量维度。

2024-09-13 11:53:03 1180

原创 MINICPM-V2_6图像得到embedding-代码解读

通过阅读代码,找到MINICPM-V2_6由图片得到embedding(位置编码和像素编码)的过程,并将代码本地化,每个代码都有对应的输入和输出,并详细的介绍了2D位置编码得到的过程。

2024-09-11 17:38:26 1015

原创 MINICPM-V2_6图像预处理流程-代码解读

通过阅读多个代码,找到MINICPM-V2_6对应的图片切片的过程,并将代码本地化,每个代码块都有完整的输入输出,且解读了代码的每一步流程

2024-09-10 16:57:16 1575

原创 All mistakes are not equal: Comprehensive Hierarchy Aware Multi-label Predictions (CHAMP)

多层级loss函数

2022-08-15 16:31:09 482

原创 representation learning for resource-constrained keyphrase generation

关键词生成2022

2022-08-01 17:05:23 327

原创 InferSent

Supervised Learning of Universal Sentence Representations from Natural Language Inference DataGitHub论文目的NLP系统基于word embedding作为base features,却很少有成功的sentence embedding。本论文基于Stanford NLI数据得到好的sentence representations,也可以转换到其它数据集。相关工作word2vecgloveSkip

2022-01-27 16:59:04 977

原创 ERNIE-DOC

ERNIE-DOC: A Retrospective Long-Document Modeling TransformerGitHub论文目的因为随着长度的增加,transformer的内存和时间消耗成倍增加,所以transformer不适合处理长文本。简单的截断文档或使用稀疏attention并不能解决这个问题,提出ERNIE-DOC:一种基于循环transformer的文档级语言预训练模型,由两种技术组成:retrospective feed mechanism(回溯) and the enhan

2022-01-20 16:40:59 1314

原创 GATER

Heterogeneous Graph Neural Networks for Keyphrase GenerationGitHub论文目的keyphrase generation(KG)同时预测present keyphrases和absent keyphrases,但是仅依靠source document会产生不可控和不准确的absent keyphrases。为了解决这个问题,本论文基于图从相关的参考文献中获取显式的信息,首先从预定义的索引中找到与source document相似的文档-关键词

2022-01-18 16:55:48 1026

原创 HiDEC

HIERARCHY DECODER IS ALL YOU NEED TO TEXT CLASSIFICATIONGitHub论文目的Hierarchical text classification (HTC) 会有数据不平衡和层级依赖的缺点,有local和global两种改进方向,hierarchy decoder (HiDEC)基于编码器、解码器的层次递归解码,The key idea of the HiDEC involves decoding a context matrix into a su

2022-01-12 15:36:23 402

原创 TRANS-ENCODER

TRANS-ENCODER: UNSUPERVISED SENTENCE-PAIR MODELLING THROUGH SELF- AND MUTUAL-DISTILLATIONSGitHub论文目的sentence similarity and paraphrase identification 两句话进行对比有两种常见的方法: bi-encoders and cross-encoders。Bi-encoders产生固定维度的句子表达,效果不如cross-encoders好,cross-encode

2022-01-08 16:22:27 1050

原创 Fast, Effective, and Self-Supervised:Mirror-BERT

Fast, Effective, and Self-Supervised: Transforming Masked LanguageModels into Universal Lexical and Sentence Encoders论文目的没有经过特定任务微调的预训练MLMs对句子编码是无效的,本论文想基于自监督将MLMs在不引入新数据的前提下对句子编码。提出Mirror-BERT:简单、快速、有效,通过对字符串进行小的修改形成正样本进行微调,有些数据集上效果与sentence-bert可媲美相关

2022-01-05 16:27:10 738

原创 开源数据集

遇到哪个加哪个NLPSTSSTS中的训练、测试、验证集的数量,语义文本相似性基准数据集,常用于无监督模型训练的测试集,使用Spearman correlation作为评价指标。STS-B http://ixa2.si.ehu.eus/stswiki/index.php/STSbenchmarkmain-captionsMSRvid2012test00005.000A man with a hard hat is dancing.A man wearin

2022-01-04 16:20:17 803

原创 ESimCSE: Enhanced Sample Building Method for Contrastive Learning of Unsupervised Sentence Embedding

论文目的SimCSE 使用dropout作为数据增强的最小方法,因为transformer使用位置embedding,句子的长度信息会被编码到句子embedding中,所以unsup-SimCSE的正对包含相同的长度信息。所以unsup-SimCSE训练的正样本对估计是有偏的,会倾向于将有相同或类似长度的句子是相似的,通过统计观察,发现unsup-SimCSE的确有这个问题。为了缓解它,使用一个简单的重复操作来修改句子,然后将句子和修改后的句子输入transformer来得到正对,且从CV中引入momen

2022-01-04 14:46:08 1074

原创 R-Drop: Regularized Dropout for Neural Networks

论文目的dropout会给训练和测试的过程中带来不一致,regularize dropout 简单的一致性训练策略,迫使dropout产生的子模型输出分布一致,这是通过约束每个样本两个子模型的输出的双向KL散度来达到的。在 neural machine translation, abstractive summarization, language understanding, language modeling, and image classification五个任务上做了实验。方法R-Drop

2021-12-31 15:54:17 1095

原创 SimCSE: Simple Contrastive Learning of Sentence Embeddings

论文目的SimCSE:simple contrastive sentence embedding framework首先提出一种无监督的方法,仅使用dropout作为噪声,进行对比训练。与有监督的方法效果类似,dropout充当了最小的数据增强的方法,删除它模型会崩溃。然后提出一种有监督的方法,使用自然语言推理(NLI)中的蕴含作为正对、矛盾作为负例,在STS任务上评估SimCSE,在无监督和有监督的任务上都有提升。还在理论和试验上证明了对比学习目标将预训练嵌入的各向异性空间正则化,使其更加均匀。

2021-12-24 18:00:12 1874

原创 Simple Contrastive Representation Adversarial Learning for NLP Tasks

这里写自定义目录标题论文目的相关工作contrastive learningAdversarial Training and Adversarial Attack本文方法Adversarial Training And Adversarial Attack MethodsSelf-supervised Contrastive LearningSupervised Contrastive Adversarial LearningUnsupervised Contrastive Adversarial Lear

2021-12-24 15:35:49 2184 4

翻译 attention

seq2seq_3

2021-02-02 17:47:17 118

原创 XLNet

XLNet:Generalized Autogressive Pretraining for Language Understanding摘要类似于Bert基于上下文进行建模的DAE(denoising autoencoding)的预训练模型比基于AR(autoRegressive)的语言模型得到了更好的效果。然而,Bert乎是了mask之间的依赖关系,并且预训练和微调之间的不一致(微调的时候没有mask),基于这样的优缺点,我们提出XLNet,通过最大化排列组合的因式分解的极大似然估计学习上下文的信息

2021-01-19 17:02:17 222

原创 FastBert

FastBert:a self-distilling bert with adaptive inference time摘要类似Bert的预训练语言模型已经被证明有很好的效果,但是计算昂贵,模型很难加载。Fastbert在微调时使用自适应机制,确保模型性能的前提下,提高效率,根据不同需求,灵活调整速度,同时避免了样本的冗余计算。1. introduction在未标注的文本上预训练,标注的样本上进行微调,预训练模型Bert、gpt、xlnet在很多nlp任务上有了很大的效果提升。缺点:计算量大、推

2021-01-06 10:54:34 1027

原创 leetcode-乘积最大子序列

2019-06-21 14:15:21 163

原创 leetcode-最大子序和

2019-06-20 10:03:12 124

原创 leetcode-4sum II

2019-06-18 10:29:55 154

原创 leetcode-4sum

2019-06-17 11:09:21 142

原创 leetcode-add two numbers

2019-06-14 09:46:21 128

normal_estimation_using_integral_images

normal_estimation_using_integral_images

2017-04-24

passthrough

里面包含cmake文件和vs2015的可执行文件

2017-04-21

orb-surf-brisk-freak

包含orb-surf-brisk-freak四种特征提取方法,以及时间的计算,并在识别到物体以后,进行跟踪。

2017-04-14

opencv+Meanshift

使用opencv的Meanshift函数写的一个小demo,需要自己cmake一下,链接到自己的opencv库

2017-03-30

PCLDebug.props

pcl1.8.0配置vs2015属性列表

2017-03-13

空空如也

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

TA关注的人

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