几种文本向量化方式原理简要介绍

  • TfIdf

          TfIdf向量化是基于TF-IDF算法的一种文本向量化方法;TF-IDF全称:term frequency–inverse document frequency,词频-逆向文件频率,其主要思想是:如果某个单词在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。

  • TfIdf-Decomp

           TfIdf-Decomp是基于TfIdf的向量化方法的变种;通过对初始TfIdf向量进行奇异值分解 (SVD) ,并截断,对初始向量进行线性降维,可以有效地处理稀疏矩阵。

  • Bert

          Bert是一种以多层Attention-based Transformer层堆叠的语言模型结构,并在大规模语料数据上训练字词语义关系的表示能力。基于Bert预训练模型的文本向量化方法支持四种模型输出层池化方式,分别为first-last-avg:取模型第一层和最后一层输出取平均,作为文本向量;last-avg:取模型最后一层输出平均;cls: 直接取模型CLS Token输出;pooler:取模型CLS Token输出,做tanh变换作为输出。支持上述全部Bert系列算法,如Bert-base, Albert, Roberta, FinBERT等模型类型;相较于TfIdf向量化可更好得表达文本的语义特征,缺点是转化性能相对较慢;

  • RoBERTa

          RoBERTa属于BERT的强化版本,在模型规模、算力和数据上,与BERT相比主要有几点改进:更大的模型参数量;更大bacth size;更多的训练数据;在训练方法上有以下改进:去掉NSP任务;动态掩码;文本编码:Byte-Pair Encoding(BPE)是字符级和词级别表征的混合,支持处理自然语言语料库中的众多常见词汇;

  • ERINE

           Enhanced Representation through Knowledge Integration,ERINE是百度发布一个预训练模型,它通过引入三种级别的Knowledge Masking帮助模型学习语言知识,在多项任务上超越了BERT。ERNIE将Knowledge分成了三个类别:token级别(Basic-Level)、短语级别(Phrase-Level) 和 实体级别(Entity-Level)。通过对这三个级别的对象进行Masking,提高模型对字词、短语的知识理解。 

  • Albert

          Albert在Bert基础上,加入3点优化:1-Embedding矩阵分解;2-跨层参数共享;3-替换NSP任务为SOP任务; 

  • SimBert

          SimBert是以Bert模型为基础,基于微软的UniLM思想设计的融检索与生成于一体的任务,来进一步微调后得到的模型;基于UniLM思想的训练方式,使得Simbert不仅和Bert一样,拥有表征文本句子本身语义特征的能力,还可以表征句子上下文语义相似性的能力,使得其同时适用于相似文本检索场景和相似文本生成场景;文本向量化方式同Bert一样,支持以上四种向量输出方式。

  • Bert-Whitening

          Bert-Whitening仍是以Bert模型为基础的文本向量化方法。首先取Bert向量化结果,后针对Bert向量化语义相似性任务中表现欠佳的现象,为了保证余弦相似度效果合理,把向量转化为向量坐标系为标准正交基的向量。结合标准正态分布的均值为0、协方差矩阵为单位阵原理,将句向量的均值变换为0、协方差矩阵变换为单位阵,对初始向量进行线性转换。同时BERT-whitening还支持降维操作,能达到提速又提效的效果降维的效果。文本向量化方式同Bert一样,支持以上四种向量输出方式。

  • Bert-flow

          Bert向量化对文本进行编码的向量存在各向异性,向量值会受文本中词在所有训练语料里的词频影响,导致高频词编码的句向量距离更近,更集中在原点附近。这会导致即使一个高频词和一个低频词的语义是等价的,但词频的差异也会带来很大的距离偏差,从而词向量的距离就不能很好地代表语义相关性。和人判断句子的语义不受词频影响也不符合,所以需要修正句子的向量分布。Bert-flow针对该问题,通过Bert生成的句向量输入到flow模型中,对句向量进行修正,在一定程度上提升了句向量语义相似度的表征能力;

  • SimCSE

          SimCSE是基于对比学习的算法框架,可支持有监督和无监督两种训练模式。针对无监督数据,通过将一句话分两次过同一个模型,但使用两种不同的dropout,这样得到的两个句向量作为模型的正例,而同一个batch中的其他句向量作为负例。SimCSE通过这种简单但有效的数据构造正负例数据方式,进行训练,通过对比学习,以拉近相似数据的距离,拉远不相似数据的距离为目标,更好地学习数据的表征,使得其在文本匹配任务中产生更好的效果;

  • ESimCSE

          ESimCSE是针对上述SimCSE的一个优化版框架;在无监督训练中,SimCSE通过dropout构建的正例对包含相同长度的信息,这会使模型倾向于认为相同或相似长度的句子在语义上更相似。ESimCSE调整构建正例对的方式,通过简单有效的“Word Repetition”数据增强方式,在不改变文本语义前提下,改变正例对句子的长度,有效缓解前述SimCSE的缺陷。并且ESimCSE还通过Momentum Contrast(动量对比学习)扩展负样本对的构建,鼓励模型进行更精细的学习,保证在合适的batch_size的前提下,得到较好的结构,对性能更友好;

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
计数向量是一种常用的文本特征表示方法,也是文本分类中最基本和常用的特征表示方法之一。其基本思想是将每个文档表示为一个向量,向量的每个元素代表一个词在文档中出现的次数。 具体而言,计数向量的构建过程包含以下几个步骤: 1. 构建词表:遍历所有文档,统计其中所有出现的词,形成一个词表。 2. 构建向量:对于每个文档,统计其中每个词的出现次数,并将其组成一个向量。向量的长度等于词表的长度,向量的每个元素表示该词在文档中出现的次数。 3. 特征选择:由于文本中常出现一些高频词汇和停用词,对分类任务没有太大的帮助,因此可以通过一些特征选择方法,如互信息、卡方检验等,筛选出一些具有较好区分度的特征。 4. 归一化:由于不同文档的长度可能不同,因此需要对向量进行归一化,将每个元素的值除以文档的总词数。 计数向量作为文本分类的特征表示方法,具有以下优点: 1. 简单直观:计数向量是一种简单直观的特征表示方法,易于理解和实现。 2. 适用性广泛:计数向量可以应用于各种文本分类任务,如情感分析、主题分类、垃圾邮件过滤等。 3. 特征维度低:由于文本中的词汇量通常较大,但每个文档中出现的词汇量相对较少,因此计数向量的特征维度较低,有利于提高分类器的训练效率。 不过,计数向量也存在一些缺点,如无法处理词序信息、忽略词汇的语义关系等。因此,在实际应用中,可以根据具体情况选择适合的特征表示方法。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值