数学基础
- 线性代数
- 概率论与随机过程
- 数值计算
- 蒙特卡洛方法与 MCMC 采样
- 机器学习方法概论
统计学习
深度学习
- 深度学习简介
- 深度前馈网络
- 反向传播算法
- 正则化
- 深度学习中的最优化问题
- 卷积神经网络
- CNN:图像分类
- 循环神经网络 RNN
- Transformer
- 一、Transformer [2017]
- 二、Universal Transformer [2018]
- 三、Transformer-XL [2019]
- 四、GPT1 [2018]
- 五、GPT2 [2019]
- 六、GPT3 [2020]
- 七、OPT [2022]
- 八、BERT [2018]
- 九、XLNet [2019]
- 十、RoBERTa [2019]
- 十一、ERNIE 1.0 [2019]
- 十二、ERNIE 2.0 [2019]
- 十三、ERNIE 3.0 [2021]
- 十四、ERNIE-Huawei [2019]
- 十五、MT-DNN [2019]
- 十六、BART [2019]
- 十七、mBART [2020]
- 十八、SpanBERT [2019]
- 十九、ALBERT [2019]
- 二十、UniLM [2019]
- 二十一、MASS [2019]
- 二十二、MacBERT [2019]
- 二十三、Fine-Tuning Language Models from Human Preferences [2019]
- 二十四 Learning to summarize from human feedback [2020]
- 二十五、InstructGPT [2022]
- 二十六、T5 [2020]
- 二十七、mT5 [2020]
- 二十八、ExT5 [2021]
- 二十九、Muppet [2021]
- 三十、Self-Attention with Relative Position Representations [2018]
- 三十一、USE [2018]
- 三十二、Sentence-BERT [2019]
- 三十三、SimCSE [2021]
- 三十四、BERT-Flow [2020]
- 三十五、BERT-Whitening [2021]
- 三十六、Comparing the Geometry of BERT, ELMo, and GPT-2 Embeddings [2019]
- 三十七、CERT [2020]
- 三十八、DeCLUTR [2020]
- 三十九、CLEAR [2020]
- 四十、ConSERT [2021]
- 四十一、Sentence-T5 [2021]
- 四十二、ULMFiT [2018]
- 四十三、Scaling Laws for Neural Language Models [2020]
- 四十四、Chinchilla [2022]
- 四十七、GLM-130B [2022]
- 四十八、GPT-NeoX-20B [2022]
- 四十九、Bloom [2022]
- 五十、PaLM [2022] (粗读)
- 五十一、PaLM2 [2023](粗读)
- 五十二、Self-Instruct [2022]
- 句子向量
- 词向量
- 传统CTR 预估模型
- CTR 预估模型
- 一、DSSM [2013]
- 二、FNN [2016]
- 三、PNN [2016]
- 四、DeepCrossing [2016]
- 五、Wide 和 Deep [2016]
- 六、DCN [2017]
- 七、DeepFM [2017]
- 八、NFM [2017]
- 九、AFM [2017]
- 十、xDeepFM [2018]
- 十一、ESMM [2018]
- 十二、DIN [2017]
- 十三、DIEN [2019]
- 十四、DSIN [2019]
- 十五、DICM [2017]
- 十六、DeepMCP [2019]
- 十七、MIMN [2019]
- 十八、DMR [2020]
- 十九、MiNet [2020]
- 二十、DSTN [2019]
- 二十一、BST [2019]
- 二十二、SIM [2020]
- 二十三、ESM2 [2019]
- 二十四、MV-DNN [2015]
- 二十五、CAN [2020]
- 二十六、AutoInt [2018]
- 二十七、Fi-GNN [2019]
- 二十八、FwFM [2018]
- 二十九、FM2 [2021]
- 三十、FiBiNET [2019]
- 三十一、AutoFIS [2020]
- 三十三、AFN [2020]
- 三十四、FGCNN [2019]
- 三十五、AutoCross [2019]
- 三十六、InterHAt [2020]
- 三十七、xDeepInt [2023]
- 三十九、AutoDis [2021]
- 四十、MDE [2020]
- 四十一、NIS [2020]
- 四十二、AutoEmb [2020]
- 四十三、AutoDim [2021]
- 四十四、PEP [2021]
- 四十五、DeepLight [2021]
- 图的表达
- 一、DeepWalk [2014]
- 二、LINE [2015]
- 三、GraRep [2015]
- 四、TADW [2015]
- 五、DNGR [2016]
- 六、Node2Vec [2016]
- 七、WALKLETS [2016]
- 八、SDNE [2016]
- 九、CANE [2017]
- 十、EOE [2017]
- 十一、metapath2vec [2017]
- 十二、GraphGAN [2018]
- 十三、struc2vec [2017]
- 十四、GraphWave [2018]
- 十五、NetMF [2017]
- 十六、NetSMF [2019]
- 十七、PTE [2015]
- 十八、HNE [2015]
- 十九、AANE [2017]
- 二十、LANE [2017]
- 二十一、MVE [2017]
- 二十二、PMNE [2017]
- 二十三、ANRL [2018]
- 二十四、DANE [2018]
- 二十五、HERec [2018]
- 二十六、GATNE [2019]
- 二十七、MNE [2018]
- 二十八、MVN2VEC [2018]
- 二十九、SNE [2018]
- 三十、ProNE [2019]
- Graph Embedding 综述
- 图神经网络
- 一、GNN [2009]
- 二、Spectral Networks 和 Deep Locally Connected Networks [2013]
- 三、Fast Localized Spectral Filtering On Graph [2016]
- 四、GCN [2016]
- 五、神经图指纹 [2015]
- 六、GGS-NN [2016]
- 七、PATCHY-SAN [2016]
- 八、GraphSAGE [2017]
- 九、GAT [2017]
- 十、R-GCN [2017]
- 十一、 AGCN [2018]
- 十二、FastGCN [2018]
- 十三、PinSage [2018]
- 十四、GCMC [2017]
- 十五、JK-Net [2018]
- 十六、PPNP [2018]
- 十七、VRGCN [2017]
- 十八、ClusterGCN [2019]
- 十九、LDS-GNN [2019]
- 二十、DIAL-GNN [2019]
- 二十一、HAN [2019]
- 二十二、HetGNN [2019]
- 二十三、HGT [2020]
- 二十四、GPT-GNN [2020]
- 二十五、Geom-GCN [2020]
- 二十六、Graph Network [2018]
- 二十七、GIN [2019]
- 二十八、MPNN [2017]
- 二十九、UniMP [2020]
- 三十、Correct and Smooth [2020]
- 三十一、LGCN [2018]
- 三十二、DGCNN [2018]
- 三十三、AS-GCN
- 三十四、DGI [2018]
- 三十五、DIFFPOLL [2018]
- 三十六、DCNN [2016]
- 三十七、IN [2016]
- 图神经网络 2
- 图神经网络 3
- 推荐算法(传统方法)
- 一、Tapestry [1992]
- 二、GroupLens [1994]
- 三、ItemBased CF [2001]
- 四、Amazon I-2-I CF [2003]
- 五、Slope One Rating-Based CF [2005]
- 六、Bipartite Network Projection [2007]
- 七、Implicit Feedback CF [2008]
- 八、PMF [2008]
- 九、SVD++ [2008]
- 十、MMMF 扩展 [2008]
- 十一、OCCF [2008]
- 十二、BPR [2009]
- 十三、MF for RS [2009]
- 十四、 Netflix BellKor Solution [2009]
- 推荐算法(神经网络方法 1)
- 一、MIND [2019](用于召回)
- 二、DNN For YouTube [2016]
- 三、Recommending What Video to Watch Next [2019]
- 四、ESAM [2020]
- 五、Facebook Embedding Based Retrieval [2020](用于检索)
- 六、Airbnb Search Ranking [2018]
- 七、MOBIUS [2019](用于召回)
- 八、TDM [2018](用于检索)
- 九、DR [2020](用于检索)
- 十、JTM [2019](用于检索)
- 十一、Pinterest Recommender System [2017]
- 十二、DLRM [2019]
- 十三、Applying Deep Learning To Airbnb Search [2018]
- 十四、Improving Deep Learning For Airbnb Search [2020]
- 十五、HOP-Rec [2018]
- 十六、NCF [2017]
- 十七、NGCF [2019]
- 十八、LightGCN [2020]
- 十九、Sampling-Bias-Corrected Neural Modeling [2019](检索)
- 二十、EGES [2018](Matching 阶段)
- 二十一、SDM [2019](Matching 阶段)
- 二十二、COLD [2020 ] (Pre-Ranking 模型)
- 二十三、ComiRec [2020](https://www.wenjiangs.com/doc/0b4e1736-ac78)
- 二十四、EdgeRec [2020]
- 二十五、DPSR [2020](检索)
- 二十六、PDN [2021](mathcing)
- 二十七、时空周期兴趣学习网络ST-PIL [2021]
- 推荐算法之序列推荐
- 一、FPMC [2010]
- 二、GRU4Rec [2015]
- 三、HRM [2015]
- 四、DREAM [2016]
- 五、Improved GRU4Rec [2016]
- 六、NARM [2017]
- 七、HRNN [2017]
- 八、RRN [2017]
- 九、Caser [2018]
- 十、p-RNN [2016]
- 十一、GRU4Rec Top-k Gains [2018]
- 十二、SASRec [2018]
- 十三、RUM [2018]
- 十四、SHAN [2018]
- 十五、Phased LSTM [2016]
- 十六、Time-LSTM [2017]
- 十七、STAMP [2018]
- 十八、Latent Cross [2018]
- 十九、CSRM [2019]
- 二十、SR-GNN [2019]
- 二十一、GC-SAN [2019]
- 二十二、BERT4Rec [2019]
- 二十三、MCPRN [2019]
- 二十四、RepeatNet [2019]
- 二十五、LINet(2019)
- 二十六、NextItNet [2019]
- 二十七、GCE-GNN [2020]
- 二十八、LESSR [2020]
- 二十九、HyperRec [2020]
- 三十、DHCN [2021]
- 三十一、TiSASRec [2020]
- 推荐算法(综述)
- 多任务学习
- 系统架构
- 实践方法论
- 深度强化学习 1
- 自动代码生成
工具
- CRF
- lightgbm
- xgboost
- scikit-learn
- spark
- numpy
- matplotlib
- pandas
- huggingface_transformer
- 一、Tokenizer
- 二、Datasets
- 三、Model
- 四、Trainer
- 五、Evaluator
- 六、Pipeline
- 七、Accelerate
- 八、Autoclass
- 九、应用
- 十、Gradio
Scala
- 环境搭建
- 基础知识
- 函数
- 类
- 样例类和模式匹配
- 测试和注解
- 集合 collection(一)
- 集合collection(二)
- 集成 Java
- 并发
三十五、BERT-Whitening [2021]
sentence embedding
已被证明不能很好地捕获句子的基本语义,因为之前的工作表明,word representations of all words
都不是各向同性isotropic
的:它们在方向上不是均匀分布的。相反,它们在向量空间中占据一个狭窄的锥体,因此是各向异性anisotropic
的。《How contextual are contextualized word representations? comparing the geometry of BERT, ELMo, and GPT-2 embeddings》
已经证明,来自pre-trained model
的contextual word embeddings
是如此的各向异性,任何两个word embedding
的余弦相似度平均为0.99
。BERT-Flow
进一步调查发现,BERT sentence embedding
空间存在两个问题,即word frequency biases the embedding space
、以及低频词稀疏地分散开,这为直接使用BERT sentence embedding
来计算相似度带来了困难。
为了解决上述问题,
《How contextual are contextualized word representations? comparing the geometry of BERT, ELMo, and GPT-2 embeddings》
阐述了导致各向异性问题的理论原因,这个原因在预训练的模型中观察到。《Representation degeneration problem in training natural language generation models》
设计了一种新的方法,通过正则化word embedding matrix
来缓解degeneration
问题。最近提出的BERT-flow
通过normalizing flow
将BERT sentence embedding distribution
转化为平滑的、各向同性的高斯分布,这是一个由神经网络参数化的可逆函数。在论文
《Whitening Sentence Representations for Better Semantics and Faster Retrieval》
中,作者没有像以前的尝试那样设计一个复杂的方法,而是发现一个简单而有效的后处理技术,白化whitening
,足以解决sentence embedding
的各向异性问题。具体而言,作者将sentence vectors
的平均值转化为0
、将协方差矩阵转化为单位矩阵。此外,论文还引入了降维策略,以促进白化操作,进一步提高效果。在
7
个标准的语义文本相似性benchmark
数据集上的实验结果表明,论文的方法可以普遍提高模型性能,并在大多数数据集上达到SOTA
的效果。同时,通过加入降维操作,论文的方法可以进一步提高模型性能,并自然地优化内存存储、加快检索速度。论文贡献如下:
论文探讨了
BERT-based sentence embedding
在相似性匹配任务中表现不佳的原因,即它不在标准正交基standard orthogonal basis
上。论文提出了一种后处理方法,白化,将
BERT-based sentence embedding
转化为标准正交基,同时降维。在七个语义文本相似性任务上的实验结果表明,论文的方法不仅可以显著提高模型性能,而且还可以减少向量的维度。
相关工作:
在特定的
NLP
上下文中,已经出现了关于解决各向异性问题的早期尝试。《A simple but tough-to-beat baseline for sentence embeddings》
首先为整个semantic textual similarity dataset
计算sentence representation
,然后从这些sentence representation
中提取top direction
,最后将sentence representation
投射到top direction
之外(即,仅保留tail direction
)。通过这样做,top direction
将固有地编码整个数据集的common information
。《All-but-the-top: Simple and effective postprocessing for word representations》
提出了一种后处理操作:在具有正值和负值的dense low-dimensional representation
上,他们从word vectors
中消除了common mean vector
、和一些top dominating directions
,这样就使处理后的representation
更加强大。《Representation degeneration problem in training natural language generation models》
提出了一种新颖的正则化方法来解决在训练自然语言生成模型中的各向异性问题。他们设计了一种新颖的方法,通过正则化word embedding matrix
来缓解degeneration
问题。由于观察到word embedding
被局限在一个狭窄的锥体中,所提出的方法直接增加了锥体的孔径大小,这可以简单地通过降低individual word embedding
之间的相似度来实现。《How contextual are contextualized word representations? comparing the geometry of BERT, ELMo, and GPT-2 embeddings》
研究了contextual contextualized word representation
的内在机制。他们发现,ELMo
、BERT
和GPT-2
的upper layers
比lower layers
产生更加context-specific
的representation
。 这种context-specificity
的增加总是伴随着各向异性的增加。《On the sentence embeddings from pre-trained language models》
提出了BERT-flow
,它通过用无监督目标学到的normalizing flow
将各向异性的sentence embedding distribution
转变为平滑的、各向同性的高斯分布。
谈到
SOTA
的sentence embedding
方法,以前的工作发现SNLI
数据集适合训练sentence embedding
。《Learning semantic textual similarity from conversations》
提出了一种使用siamese DAN network
和siamese transformer network
对来自Reddit
的对话进行训练的方法,该方法在STS benchmark
数据集上取得了良好效果。《Universal sentence encoder》
提出了一个所谓的Universal Sentence Encoder
,它训练了一个transformer
网络,并通过在SNLI
数据集上的训练来augment
无监督学习。在预训练方法的时代,
《Real-time inference in multi-sentence tasks with deep pretrained transformers》
解决了来自BERT
的cross-encoder
的运行时间开销,并提出了一种方法(poly-encoders
),利用注意力计算context vectors
和预先计算的candidate embeddings
之间的分数。《SBERT: Sentence embeddings using Siamese BERT networks》
是对pretrained BERT network
的修改,使用siamese network
和triplet network
结构来推导出有语义的sentence embedding
,可以使用sentence embedding
的余弦相似度来计算句子之间的相似性。
35.1 方法
通常我们计算
sentence embedding
的余弦相似度,从而衡量句子之间的相似性。一个问题是:余弦相似度对输入向量做了什么假设?换句话说,什么前提条件适合用余弦相似度进行比较?我们通过研究余弦相似度的几何原理来回答这个问题。给定两个向量
$ \mathbf{\vec x}\in \mathbb R^d $ 和 $ \mathbf{\vec y}\in \mathbb R^d $ ,它们之间的余弦相似度定义为:然而,只有当坐标基为标准正交基时,上式才成立。
BERT-Flow
验证了BERT sentence embedding
已经包含了足够的语义,尽管它没有被正确利用。在这种情况下,如果根据上式来计算语义相似性的余弦值时,sentence embedding
表现不佳,原因可能是sentence vector
所属的坐标基不是标准正交基。从统计学的角度来看,我们可以推断,当我们为一组向量选择basis
时,应该保证每个基向量都是独立的、统一的。如果这组基是标准正交基,那么相应的一组向量就应该显示出各向同性。总而言之,上述启发式假设阐述了:如果一组向量满足各向同性,我们可以认为它是由标准正交基派生出来的,其中也表明我们可以通过上述公式计算余弦相似度。否则,如果它是各向异性的,我们需要对
sentence embedding
进行转换,以强制其成为各向异性,然后使用上述公式来计算余弦相似性。BERT-Whitening
认为各向同性问题并不是embedding
向量带来的,而是空间的基向量带来的(基向量不是标准正交基)。Whitening Transformation
:BERT-flow
通过采用flow-based
的方法来解决上述假设。我们发现,利用机器学习中普遍采用的白化操作,也可以取得相当的收益。众所周知,关于标准正态分布的均值为零、协方差矩阵为单位矩阵。因此,我们的目标是将
sentence vector
的平均值转换成0
、将协方差矩阵转换成单位矩阵。假设我们有一组sentence embedding
$ \left\{\mathbf{\vec x}_i\right\}_{i=1}^{N} $ ,然后我们进行线性变换,使得变换后的sentence embedding
满足均值为零、协方差矩阵为单位矩阵:该变换实际上对应于机器学习中的白化
whitening
操作,其中 $ \vec\mu = \frac {1}{N} \sum_{i=1}^N \mathbf{\vec x}_i\in \mathbb R^{1\times d} $ , $ d $ 为原始的维度, $ \mathbf W\in \mathbb R^{d\times d} $ 为投影矩阵。注意,这里的向量为 ”行向量“。
最困难的部分是求解矩阵
$ \mathbf W $ 。我们将 $ \left\{\mathbf{\vec x}_i\right\}_{i=1}^{N} $ 的协方差矩阵表示为:变换之后的协方差矩阵为
$ \tilde{\mathbf\Sigma} = \mathbf W ^\top\mathbf\Sigma\mathbf W $ ,因此 $ \mathbf W ^\top\mathbf\Sigma\mathbf W = \mathbf I $ ,因此:因此,协方差矩阵是一个正定对称矩阵,满足如下形式的
SVD
分解:其中:
$ \mathbf U $ 为正交矩阵, $ \mathbf\Lambda $ 为对角矩阵且对角线元素都是正的。正交矩阵:各行是单位矩阵且两两正交;各列是单位矩阵且两两正交,即
$ \mathbf U\mathbf U^\top = \mathbf U^\top\mathbf U = \mathbf I $ 。令
$ \mathbf W^{-1} =\sqrt{\mathbf\Lambda}\mathbf U^\top $ ,则我们可以得到解: $ \mathbf W =\mathbf U\sqrt{\mathbf\Lambda^{-1}} $ 。 $ \mathbf W^{-1}\mathbf W = \mathbf W\mathbf W^{-1} = \mathbf I $ 。降维:众所周知,对角矩阵
$ \mathbf\Lambda $ 的每个对角线元素衡量的是该元素所在的一维数据的变化。如果对角线元素的值很小,则代表该维度特征的变化也很小,不重要,甚至接近于常数。因此可以进行降维从而去除这个维度特征,使得原始的sentence vector
被嵌入到一个较低维度的空间中。这样可以使余弦相似度的结果更加合理,并自然地加快向量检索的速度,因为检索速度与向量维度成正比。事实上,从奇异值分解得出的对角矩阵
$ \mathbf\Lambda $ 中的元素已经按降序排序了。因此,我们只需要保留 $ \mathbf W $ 的top k
列就可以达到这种降维效果,这在理论上等同于主成分分析Principal Component Analysis: PCA
。这里, $ k $ 是一个超参数。我们将整个转换工作流程称为Whitening-k
。Whitening-k Workflow
算法:输入:已有的
embedding
集合 $ \left\{\mathbf{\vec x}_i\right\}_{i=1}^{N} $ ,降维之后的维度 $ k $输出:转换后的
embedding
$ \left\{\tilde{\mathbf{\vec x}}_i\right\}_{i=1}^{N} $算法步骤:
根据
$ \left\{\mathbf{\vec x}_i\right\}_{i=1}^{N} $ 计算均值 $ \vec\mu $ 和协方差矩阵 $ \mathbf\Sigma $ 。对
$ \mathbf\Sigma $ 进行SVD
分解,从而得到 $ \mathbf U,\mathbf\Lambda $ : $ \mathbf\Sigma = \mathbf U\mathbf\Lambda \mathbf U^\top $ 。计算
$ \mathbf W =\left(\mathbf U\sqrt{\mathbf\Lambda^{-1}}\right)[:,:k] $ 。对每个
$ \mathbf{\vec x}_i $ 计算: $ \tilde{\mathbf{\vec x}}_i = (\mathbf{\vec x}_i - \vec\mu)\mathbf W $ 。
该算法只能作为后处理从而优化现有
sentence embedding
集合,无法处理unseen
的sentence embedding
。这是因为SVD
作用在现有的sentence embedding
集合所对应的均值、协方差矩阵上。BERT-Flow
可以作用到unseen
的sentence embedding
上,因为BERT-Flow
学习的是embedding
空间到高斯空间的一个可逆映射。计算复杂度:均值
$ \vec\mu $ 和协方差矩阵 $ \mathbf\Lambda $ 都可以被递归地计算:因此,计算
$ \vec\mu $ 和 $ \mathbf\Lambda $ 的空间复杂度都是 $ O(1) $ ,时间复杂度都是 $ O(N) $ 。由于
$ \mathbf \Sigma \in \mathbb R^{d\times d} $ ,通常是一个很小的规模,因此对它进行SVD
分解的时间复杂度几乎可以忽略不计。
35.2 实验
为了我们的方法的有效性,我们提出了在多种配置下与语义文本相似性(
semantic textual similarity: STS
)任务相关的各种任务的实验结果。数据集:类似于
SBERT
,我们在没有任何specific training data
的情况下,将模型性能与STS
任务的baseline
进行比较。评估的数据集包括:STS 2012-2016 tasks
、STS benchmark
、SICK-Relatedness dataset
一共七个数据集。对于每个sentence pair
,这些数据集提供了一个标准的语义相似度指标,范围从0
到5
。我们采用
sentence embeddings
的余弦相似度和gold labels
之间的Spearman’s rank correlation
,因为SBERT
认为它是STS
任务中最合理的指标。评估过程与BERT-flow
保持一致:我们首先将每个原始句子文本编码为sentence embedding
,然后计算input sentence embedding pairs
之间的余弦相似度来作为我们预测的相似度分数。baseline
:无监督的
STS
:Avg. GloVe embeddings
:采用GloVe
作为sentence embedding
。Avg. BERT embeddings
和BERT CLS-vector
:使用原始BERT embedding
的均值、或者CLS-token
的output
。
监督的
STS
:USE
:Universal Sentence Encoder
,其中用Transformer
取代了LSTM
。SBERT-NLI
和SRoBERTa-NLI
:在NLI
组合数据集(包含SNLI
和MNLI
)上用SBERT
训练方法来训练的BERT
和RoBERTa
。
实验配置:由于
BERTflow( NLI/target)
是我们要比较的主要baseline
,所以我们基本上与他们的实验配置和符号保持一致。具体来说:我们在实验中也同时使用
BERT_base
和BERT_large
。我们选择
-first-last-avg
作为我们的默认配置,因为与只对最后一层取平均相比,对BERT
的第一层和最后一层取平均可以稳定地实现更好的性能。我们利用完整的
target
数据集(包括训练集、验证集和测试集中的所有句子,但不包括所有标签)来计算白化参数 $ \mathbf W $ 和 $ \vec\mu $ 。这些模型被记做-whitening(target)
。此外,
-whitening(NLI)
表示白化参数是在NLI
语料库中获得的。-whitening-256(target/NLI)
和-whitening-384(target/NLI)
表示通过我们的白化方法,输出的embedding size
分别(从768
维)降维到256
和384
。实验中发现:降维之后的效果可能更好。
没有
NLI
监督的结果如下表所示:虽然没有
NLI
监督信息,但是仍然有NLI
的样本数据(而没有label
)。原始的
BERT sentence embedding
和GloVe sentence embedding
毫无悬念地获得了最差的性能。在
BERT_base
下,我们的方法(具有256
维的sentence embedding
)一直优于BERT-flow
,并在STS-B, STS-12, STS-13, STS-14, STS-15
数据集上分别达到了SOTA
效果。在
BERT_large
下,如果将sentence embedding
的维度设置为384
,就会取得更好的结果。与BERT-flow
相比,我们的方法在大多数数据集上仍然获得了有竞争力的结果,并在STS-B, STS-13, STS-14
数据集上达到了SOTA
效果。
有
NLI
监督的结果如下表所示,其中SBERT_base
和SBERT_large
是通过SBERT
中的方法在有监督标签的NLI
数据集上训练的。我们的
SBERT_base-whitening
在STS-13, STS-14, STS-15, STS-16
任务上的表现优于BERT_base-flow
。我们的
SBERT_large-whitening
在STS-B, STS-14, STS-15, STS-16
任务上的表现优于BERT_large-flow
。
这些实验结果表明,我们的白化方法可以进一步提高
SBERT
的性能,尽管它是在NLI
数据集的监督下训练的。维度
$ k $ 的影响:维度 $ k $ 是一个超参数,它能以较大的幅度影响我们的模型的性能。因此,我们进行了实验,测试模型的Spearman
相关系数与维度 $ k $ 的关系。下图是BERT_base embedding
和BERT_large embedding
下模型性能的变化曲线。对于大多数任务来说,将sentence vector
的维度降维到三分之一是一个相对最优的解决方案。在
Table 1
的SICK-R
结果中,虽然我们的BERT_base-whitening-256(NLI)
不如BERT_base-flow(NLI)
有效,但我们的模型有竞争优势,即embedding size
较小(256 vs. 768
)。此外,如
Figure 1(a)
所示,当embedding size
设置为109
时,我们的BERT_base-whitening(NLI)
的相关性得分提高到了66.52
,比BERT_base-flow(NLI)
高出了1.08
个点。此外,其他任务也可以通过谨慎选择
$ k $ 来实现更好的性能。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论