![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
机器学习
文章平均质量分 94
机器学习相关整理
Bigcrab__
没回消息可以直接加我vx讨论 我的vx:woyaolz
展开
-
[GPT-1]论文实现:Improving Language Understanding by Generative Pre-Training
模型结构很简单,但是在实现过程中出现了和Bert一样的问题;原创 2023-12-03 03:40:38 · 1260 阅读 · 0 评论 -
[Linformer]论文实现:Linformer: Self-Attention with Linear Complexity
这是一篇介绍的优化模型的论文,其对普通的模型进行了优化,把时间复杂度和空间复杂度都从O(n^2)降低为了O(n);论文推出的模型叫Linformer,其主要思想利用到了两个思想,JL和SVD原创 2023-12-14 23:53:29 · 2077 阅读 · 3 评论 -
[UIM]论文解读:subword Regularization: Multiple Subword Candidates
subwords是一个解决NMT中的oov问题有效的方法,但是其在切词的时候会出现一个问题,就是说单个词可能被切割成多种形式,这给切割带来了模糊性,这里论文考虑能否利用切割的模糊性作为噪声来增强结果的鲁棒性;原创 2023-12-06 17:00:40 · 1240 阅读 · 0 评论 -
Transformer:中英文翻译
transformer模型架构起初是由Vaswani等人在2017年一篇名为 "Attention is all you need"的论文中提出来的;其本质是利用self-attention去代替循环神经网络RNN和卷积神经网络CNN的一种sequence-to-sequence,encoder-decoder神经网络模型原创 2023-11-27 02:03:40 · 632 阅读 · 3 评论 -
[DistilBERT]论文实现:DistilBERT:a distilled version of BERT: smaller, faster, cheaper and lighter
这篇论文引入了一种结合语言建模,蒸馏,余弦距离损失的三重损失,利用该损失在预训练阶段使用知识蒸馏,可以减少模型的大小,保持的能力,同时加快的速度;虽然说和类的模型在处理任务时带来了极大的改进;但是NLP领域出现了一种现象,就是在模型越大的时候,模型的效果就越好,我估计这也是大厂疯狂卷算力的原因吧;原创 2023-12-12 14:30:36 · 1311 阅读 · 0 评论 -
【ChatIE】论文解读:Zero-Shot Information Extraction via Chatting with ChatGPT
首先information extration 的目的是从非结构化的文本中提取出结构化的信息,并将结构化的信息转化为结构化的数据格式,信息提取主要由三块任务构成:三元组提取,实体命名识别,事件提取 entity-relation triple extract (RE), named entity recognition (NER), event extraction (EE);在一般的处理工作中,以RE任务中PURE模型举例子。原创 2024-02-17 17:42:13 · 1528 阅读 · 2 评论 -
[transformer]论文实现:Attention Is All You Need
transformer模型架构起初是由Vaswani等人在2017年一篇名为 "Attention is all you need" 的论文中提出来的;其本质是利用self-attention去代替循环神经网络RNN和卷积神经网络CNN的一种sequence-to-sequence,encoder-decoder神经网络模型;原创 2023-11-27 14:14:45 · 515 阅读 · 0 评论 -
[NNLM]论文实现:A Neural Probabilistic Language Model [Yoshua Bengio, Rejean Ducharme, Pascal Vincent]
这篇论文的目的是:已知一段文本序列,求文本序列下一个词出现的概率,这里我们很容易就想到一个概率公式..原创 2023-11-09 14:46:40 · 128 阅读 · 0 评论 -
[Bert]论文实现:BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
基于Transformer模型的BERT,建立起来很简单;这里代码似乎有问题,需要解答;原创 2023-12-02 21:55:57 · 881 阅读 · 0 评论 -
[FNet]论文实现:FNet:Mixing Tokens with Fourier Transform
transformer encode架构可以通过很多种方式进行加速,毫无例外的都是对attention mechanism 进行处理,通过把平方项的复杂度缩小到线性项的复杂度;FNet没有用什么former后缀就表明,FNet并不是传统意义上transformer架构的优化,并不是在attention mechanism的优化;这里一个替换,利用线性的傅里叶变化替换掉注意力机制,在处理长文本的时候降低少许性能而巨大的提升训练推理速度和内存效率;原创 2023-12-20 00:49:46 · 1050 阅读 · 0 评论 -
[wordpiece]论文分析:Google’s Neural Machine Translation System
这篇论文的框架已经过时,在量化和分词上面有借鉴性原创 2023-12-05 01:24:03 · 1275 阅读 · 0 评论 -
[FastText in Word Representations]论文实现:Enriching Word Vectors with Subword Information*
这里重要的难点是P的概念,其实P的概念搞懂,模型一下子就懂了;论文中P指的是word dictionary的维度,不包含n-grams的维度;较小的P值会使模型更加关注n-gram特征,所以P值用于控制模型对n-gram特征的重视程度,从而提高模型的性能。为什么会提高计算量呢?原创 2023-11-15 15:09:02 · 59 阅读 · 0 评论 -
[XLNet]论文解读:XLNet:Generalized Autoregressive Pretraining for Language Understanding
XLNet主要就是两个东西,一个是Permutation Language Modeling,一个是transformer-xl;感觉性能相对于roberta也没提升多少,这个模型的架构应该是不太行;原创 2023-12-10 16:37:55 · 1007 阅读 · 0 评论 -
[CBOW and Skip-gram]论文实现:Efficient Estimation of Word Representations in Vector Space
这篇论文主要介绍了两个框架,另外在这里再介绍两种加速手段两个框架:CBOW和Skip-gram,其中CBOW全称为 Continuous Bag-of-Words Model,Skip-gram全称为Continuous Skip-gram Model;这两个框架试图最小化计算复杂度的同时解决数据量由于在这两个框架之前,主要用的是类NNLM模型,在使用加速策略优化了softmax层后,其中大部分的复杂性是由模型中的隐藏层引起的。为了简化模型加快训练速度,同时为了更好的拓展,这两种框架都把隐藏原创 2023-11-09 18:52:10 · 145 阅读 · 0 评论 -
[RoBERTa]论文实现:RoBERTa: A Robustly Optimized BERT Pretraining Approach
RoBERTa只是对transformer的一种探索,结果是模型越大效果越好;原创 2023-12-09 20:42:11 · 1178 阅读 · 2 评论 -
[FastText in Text Classification]论文实现:Bag of Tricks for Efficient Text Classification
其实现很简单,用subwords包含词内部信息,然后使用cbow模型,利用标签计算损失原创 2023-11-20 11:58:24 · 60 阅读 · 0 评论 -
[seq2seq]论文实现:Effective Approaches to Attention-based Neural Machine Translation
效果还不错!训练一定时长后能够正确的翻译,好像相较于Transformer逊色了一点,但是毕竟这个模型结构比Transformer早两年;原创 2023-12-01 17:05:42 · 954 阅读 · 0 评论 -
RNN:文本生成
RNN结合unicode分词能进行文本生成但是效果一言难尽!原创 2023-11-30 20:00:33 · 863 阅读 · 0 评论 -
[Initial Image Segmentation Generator]论文实现:Efficient Graph-Based Image Segmentation
正如论文题目所说,这个方法是基于Graph的图像分割技术,是用图G=(V,E)来表达问题并对问题进行分析的,在此问题中,G是无向图,其V中每一个节点对应于图中每一个像素点的位置,E中的每一条边表示相邻的两个节点的信息以及其差异值即权重。原创 2023-11-03 21:43:00 · 153 阅读 · 0 评论 -
[Bart]论文实现:Denoising Sequence-to-Sequence Pre-training for Natural Language Generation...
论文好水,就是几个regularization结合在一起;原创 2023-12-08 23:00:02 · 870 阅读 · 0 评论 -
[UNILM]论文实现:Unified Language Model Pre-training for Natural Language.........
这篇论文主要讲的是一个统一的语言模型的预训练;前者的代表是GPT;中间的代表是BERT;后面很新奇,但是其本质也很简单,类似于GPT在mask加掩码;这里并不是一个模型中包含这三种层来进行训练,而是共享参数然后对每一个语言模型的要求进行mask再来训练;一个语言模型对应一个或几个下游任务,让模型理解这个下游任务,然后叠加,这个就是UNILM;这篇文章最重要一点就是结合多种模型来适配多种任务得到的效果要比单一的模型要好;原创 2023-12-09 11:00:22 · 1196 阅读 · 0 评论 -
WordPiece词表的创建
wordpiece的目的是:通过考虑单词内部构造,充分利用subwords的优势,在把长word转化为短word提高文字的灵活性以及提高word转化的效率这两处之间取得一个良好的平衡;前者会增加词表大小,后者会减少词表大小。原创 2023-12-06 02:01:37 · 1380 阅读 · 0 评论 -
23.10.02更新 Windows下CUDA和CUDNN的安装和配置(图多详细)
CUDA是可以向下兼容的,我最高支持版本为12.2,表示我也可以使用11.8的版本。但是CUDNN必须要和CUDA对应,使用了11版本的CUDA,必须使用11版本的CUDNN;这里我以11.8的版本为例子。可以看到CUDA Version 为 12.2. 如果没有得到如下结果,说明没有NVIDIA驱动(前提要是NVIDIA显卡1050卡以上),需要去官网下载(魔法),或者百度云。首先安装cuda,右键打开cuda文件,为了方便,我们把安装路径放置在根目录下。快捷键打开运行并输入cmd打开命令行窗口。原创 2023-10-01 22:47:18 · 768 阅读 · 0 评论 -
【RetNet】论文解读:Retentive Network: A Successor to Transformer for Large Language Models
论文开头提出了一个不可能三角,分别是training parallelism, low-cost inference, good performance;以往的架构只能获得三种优势中的两种,而RetNet可以全部获得;首先是Linear Transformer :其主要处理的方式是对k和v进行处理,例如[Linformer]论文实现:Linformer: Self-Attention with Linear Complexity_linformer网络结构-CSDN博客。原创 2024-02-18 23:40:39 · 1333 阅读 · 0 评论 -
23.10.02更新 windows系统下的Tensorflow安装(图多详细)
用快捷方式win+r打开运行,在运行里面输入cmd打开命令行窗口,运行下面代码。设置用户名和密码,我这里是已经安装了的. 如果界面出不来,上面代码多试几次。可以看到下载速度很快啊,很快,安装结束后我们设置默认配置,在命令行输入。如果第二个pip命令安装速度慢可以在命令后面加上清华源。按要求输入回车,看到证书要求信息,一直回车直到出现。找到适合自己的驱动,并下载安装,可能需要魔法。完成,输入exit退出Ubuntu系统.然后输入以下代码,创建虚拟环境。在wsl系统中输入下面代码。可以看到,速度是非常快的!原创 2023-09-28 11:43:45 · 937 阅读 · 0 评论 -
[Big Bird]论文解读:Big Bird: Transformers for Longer Sequences
结合的模型毫无疑问是NLP领域最热的模型,但是普通的注意力机制收到了平方次计算量的限制,为了解决这个问题,这里论文推出了BigBird,去结合把平方次计算变为线性计算;Big Bird保留了完全注意力机制的特性,同时论文还解释了全局token的用处,例如bert中的CLS,在中可以对整体序列进行交互,利用这个模型可以在保持硬件不发生改变的情况下处理比原来高8x的序列长度,像QA任务和任务这些长序列任务可以在Big Bird中得到显著的改善;并不能够记忆sequence。原创 2023-12-17 14:45:34 · 1137 阅读 · 0 评论 -
[BPE]论文实现:Neural Machine Translation of Rare Words with Subword Units
使用subwords而不是word,可以有效的提高NMT的能力;利用压缩算法BPE来构建词汇表;原创 2023-12-06 06:04:24 · 1512 阅读 · 0 评论 -
[Highway]论文实现:Highway Networks
有大量的理论和经验证据表明,神经网络的深度是其成功的关键因素。然而,随着深度的增加,网络训练变得更加困难,而深度网络的训练仍然是一个开放的问题。在这个扩展的摘要中,论文引入了一种新的体系结构,旨在简化对非常深的网络的基于梯度的训练。论文将具有这种架构的网络称为**Highway Networks**,因为它们允许信息不受阻碍地流过**Highway Networks**上的几层。该架构的特点是使用门控单元,以学习调节通过网络的信息流。具有数百层的**Highway Networks**可以通过随机梯度下降和原创 2023-11-22 20:18:25 · 84 阅读 · 0 评论 -
[Transformer-XL]论文实现:Transformer-XL: Attentive Language Models Beyond a Fixed-Length Context
Transformer-XL利用recurrent和relative position embedding解决了context fragment的问题,同时大大加快了inference的速度;原创 2023-12-03 17:37:12 · 1010 阅读 · 0 评论 -
seq2seq:中英文翻译
效果还不错!训练一定时长后能够正确的翻译,好像相较于Transformer逊色了一点,但是毕竟这个模型结构比Transformer早两年;原创 2023-12-01 17:07:13 · 972 阅读 · 0 评论 -
[Knowledge Distillation]论文分析:Distilling the Knowledge in a Neural Network
使用一系列模型预测概率的平均值即软投票机制能显著改善模型的性能,但是部署起来是比较不方便的:因为要预测很多的模型结果,再求平均;论文中提到可以把所有模型预测结果的平均值部署在一个模型里面,然后利用这一个模型来预测,这样就可以大大减少部署的难度,这种方法被称为,即知识蒸馏;在知识蒸馏中,我们不需要关心参数数量和大小的变化,我们只需要关心经过这一系列的参数得到的结果变化,如果参数变少,一般来说100%复刻这个结果是很难的;但是我们可以以一定的比例如80%可以很好的表达原来的模型结果就可以;原创 2023-12-15 23:26:30 · 1021 阅读 · 0 评论 -
[Longformer]论文实现:Longformer: The Long-Document Transformer
论文中提出了三种模型,一种是类似于`BERT`,利用滑动窗口注意和全局注意处理长文本序列;一种类似于`GPT`,利用膨胀滑动窗口注意抓取上下文获取长文本序列;一种是 `Longformer-Encoder-Decoder(LED)`,利用类似于`BERT`的机制做`encoder`,利用全注意力机制做`decoder`的`seq2seq`架构,在`arXiv`上超过了`bigbird`取得了`SOTA`原创 2023-12-13 03:14:40 · 1265 阅读 · 0 评论 -
[ELMo]论文实现:Deep contextualized word representations
传统的词向量表示其位置是固定了,不会因为上下文语句不同而产生变化,但是在日常生活中,一词多义是非常常见的,例如“apple”这个词,既可以表示苹果,也可以表示公司;这篇论文解决了单词的一词多义问题,即词的位置可以通过上下文的不同而发生改变; ELMo具有深层次的网络结构,其使用了多层的LSTM,这比仅仅使用单层LSTM层显著提高了性能;同时由于LSTM是循环神经网络,其可以捕捉单词意义的上下文;大量的实验表明,ELMo表示在实践中工作得非常好。,它可以很容易地添加到现有的模型原创 2023-11-21 20:36:18 · 134 阅读 · 0 评论 -
[Character Embedding]论文实现:Text Understanding from Scratch
这篇论文展示了文本理解可以通过深度学习系统来处理,而不需要人工嵌入关于单词、短语、句子或任何其他与一种语言相关的句法或语义结构的知识。原创 2023-11-22 10:43:46 · 72 阅读 · 0 评论 -
[GPT-2]论文解读:Language Models are Unsupervised Multitask Learners
GPT-2 是一个有15亿参数的模型,GPT-2的想法是转向一个通用的系统,不需要进行数据集的标注就可以执行许多的任务;因为数据集的创建是很难的,我们很难继续将数据集的创建和目标的设计扩大到可能需要用现有的技术推动我们前进的程度。这促使我们去探索执行多任务学习的额外设置。当前性能最好的语言模型系统是通过预训练模型和微调完成的,预训练主要是自注意力模块去识别字符串的语意,而微调主要是通过语意去得出不同的结果;这样一来,我们在执行不同的任务时,只需要替换掉微调的那部分结构就可以;原创 2024-02-17 15:52:28 · 1795 阅读 · 0 评论 -
[GloVe]论文实现:GloVe: Global Vectors for Word Representation*
word2vec的两个主要处理方法: 1)Matrix Factorization Methods,如潜在语义分析(LSA)2)Shallow Window-Based Methods,如CBOW和Skip-gram;目前,这两个模型方法都存在明显的缺陷。虽然像LSA这样的方法很有效地利用了统计信息,但它们在单词类比任务上做得相对较差,这表明了一个次优的向量空间结构。像skip-gram这样的方法可能在类比任务上做得更原创 2023-11-15 14:17:32 · 105 阅读 · 0 评论 -
[RoFormer]论文实现:ROFORMER: ENHANCED TRANSFORMER WITH ROTARY POSITION EMBEDDING
RoPE通过其特性优先于现有的位置编码方法,包括序列长度的灵活性、随着相对距离的增加而减少的标记间依赖性,以及用相对位置编码装备线性自注意的能力。在各种长文本分类基准数据集上的实验结果表明,具有RoPE嵌入的Transformer,即RoFormer,具有更好的性能;RoPE的关键思想是通过将上下文表示与一个旋转矩阵相乘来获取元素的相对位置;原创 2023-12-04 03:24:29 · 1063 阅读 · 0 评论 -
[Dict2vec]论文实现:Dict2vec : Learning Word Embeddings using Lexical Dictionaries
无监督学习的词向量有一个经典缺陷:在一个单词和那些在相关上下文中出现的单词之间缺乏监督。例如,近义词无法在一句话中同时出现,这里使用dict2vec通过字典中词的定义来优化这一步骤;单词的定义是一组解释其意义的单词或句子。字典是针对几个单词的一组元组(单词、定义)。car从定义中我们可以发现car中有vehicle,road,engine等等词语;通过这样的词的出现,可以说明使用词定义来获得弱监督的相关性,允许我们得到语义上相关的词对是可行的;这里我们定义两个东西,weak pairs和;原创 2023-11-21 13:51:37 · 37 阅读 · 0 评论 -
关于RoPE旋转位置编码的理解
这里直接贴的原文,转置的原因为我这里的顺序与原文相反;从某种意义上来说相当于拓维,所以我们可以两两构成。,从某种意义上拓展了其维度,这也是我使用。这里我以自己的理解解释一下这张图以及等式。首先我们以二维为例子,为了方便我们令。,单数取实部,双数取虚部这里有。是可以对应平面直角坐标系的,即。,从欧拉函数中我们可以发现。表示的是标量,如果使用。这里是原文中出现的错误。,采取的处理方式是先。上面说了,标量直接与。原创 2024-02-19 10:44:55 · 915 阅读 · 0 评论