数学基础
- 线性代数
- 概率论与随机过程
- 数值计算
- 蒙特卡洛方法与 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
- 并发
六、QuickThoughts [2018]
在语言领域,
distributional hypothesis
在获得单词的semantic vector representations
的学习方法的发展中是不可或缺的。这个hypothesis
是说:一个单词的意义是由它出现的word-context
所决定的。基于这个hypothesis
的神经网络方法已经成功地从大型文本语料库中学习了高质量的representation
。最近的方法将类似的思想用于学习
sentence representation
。 这些方法是encoder-decoder
模型,学习预测/重构给定句子的context sentence
。尽管它们很成功,但这些方法中存在几个建模问题:用句子的形式来表达一个概念有很多方式。理想的
semantic representation
对表达意义的形式不敏感。现有的模型被训练来重建一个句子的表面形式,这就迫使模型不仅要预测其语义,还要预测与句子的语义无关的方面。与这些模型相关的另一个问题是计算成本。这些方法有一个
word level reconstruction objective
,涉及到对目标句子的单词进行顺序地解码。在整个vocabulary
上用output softmax layer
进行训练是训练速度慢的一个重要原因。这进一步限制了vocabulary
和模型的大小。
论文
《An efficient framework for learning sentence representations》
通过提出一个直接在sentence embedding space
运行的objective
来规避这些问题。generation objective
被一个discriminative approximation
所取代。在这个discriminative approximation
中,模型试图在一组候选句子中识别出一个正确的目标句子。在这个背景下,我们将句子的 "意义" 解释为句子中的信息,这些信息允许它从上下文句子的信息中预测和被预测。作者将该方法命名为quick thoughts: QT
,以表示对thought vectors
的有效学习。论文贡献:
提出了一个简单而通用的框架来有效地学习
sentence representation
。 论文训练了广泛使用的编码器架构,比以前的方法快一个数量级,同时取得更好的性能。在涉及理解句子语义的几个下游任务中建立了一个新的
unsupervised sentence representation learning
的SOTA
。
相关工作:略。(技术过于古老,不用花时间研究相关工作)。
6.1 模型
先前的工作以不同的方式实现了
distributional hypothesis
。下图(a)
展示了一种常见的方法,即encoding
函数计算输入句子的vector representation
,然后decoding
函数试图生成以该representation
为条件的目标句子的单词。在
skip-thought model
中,目标句子是那些出现在输入句子附近的句子。解码器也有一些变体,比如预测
input sentence
而不是邻近句子的自编码器模型(FastSent
)、以及预测input sentence
中的一个窗口的单词(Paragraph Vector
)。
我们没有训练一个模型来重建输入句子或其邻居的表面形式,而是采取了以下方法:使用当前句子的含义来预测相邻句子的含义,其中含义由
encoding
函数计算出的sentence embedding
来表示。尽管这种建模方法很简单,但我们表明,它有利于学习丰富的representation
。 我们的方法如下图(b)
所示。给定一个输入的句子,它像以前一样用一些函数进行编码。但模型不是生成目标句子,而是从一组候选句子中选择正确的目标句子。将generation
视为从所有可能的句子中选择一个句子,这可以被看作是对generation problem
的一种discriminative approximation
。这两种方法的一个关键区别是:在图(b)
中,模型可以选择忽略句子中与构建semantic embedding space
无关的方面。图
(a)
是生成式,图(b)
是判别式。正式地,令
$ f(\cdot) $ 和 $ g(\cdot) $ 为待学习的函数,它们分别将句子编码为一个固定维度的向量。令 $ \mathbf s $ 为一个给定的句子, $ \mathcal S_\text{ctxt} $ 为训练数据中出现在 $ \mathbf s $ 的上下文中的句子集合(对于特定的context size
)。令 $ \mathcal S_\text{cand} $ 为给定上下文句子 $ \mathbf s_\text{ctxt} \in \mathcal S_\text{ctxt} $ 所考虑的候选句子集合。换句话说, $ \mathcal S_\text{cand} $ 包含一个有效的上下文句子 $ \mathbf s_\text{ctxt} $ (ground truth
)和许多其他非上下文句子从而用于分类。对于
$ \mathbf s $ 的上下文中的一个给定的sentence position
(如,next sentence
),一个候选句子 $ \mathbf s_\text{ctxt} \in \mathcal S_\text{ctxt} $ 是该位置的正确句子(即出现在 $ \mathbf s $ 的上下文中)的概率为:其中:
$ c(\cdot,\cdot) $ 为一个评分函数(也叫做分类器)。training objective
是使训练数据 $ \mathcal D $ 中每个句子识别正确上下文句子的概率最大化:该建模方法类似于
SkipGram
方法,区别在于在SkipGram
方法中word
扮演了sentence
的角色。在SkipGram
中,encoding
函数是简单的lookup table
,training objective
是在给定一组负样本的情况下,最大化source word
与target word
(位于source word
上下文中)之间的相似度。我们选择同一个
mini-batch
中的所有sentence
作为 $ \mathcal S_\text{cand} $ 。另一种候选的
training objective
为:类似于SkipGram
的负采样方法,我们使用二分类器的形式,将一组句子作为输入,并将它们分类为可信的和不可信的。然而我们发现前者的objective
效果更好,可能是由于它施加了宽松的约束:它不要求将上下文句子分为正/负两类,而只要求ground-truth context
比contrastive context
更可信。根据经验,前者的objective
也比最大边际损失表现得更好。在我们的实验中,
$ c(\cdot,\cdot) $ 被简单地定义为内积 $ c\left(\mathbf{\vec u}, \mathbf{\vec v}\right)=\mathbf{\vec u}\cdot \mathbf{\vec v} $ 。这是因为考虑到病态解,即模型学习了糟糕的sentence encoder
和优秀的分类器(从而弥补编码器)。这是不可取的,因为分类器将被丢弃,只有句子编码器将被用来为下游任务提取特征。尽量减少分类器中的参数数量,鼓励编码器学习有用的representation
。我们考虑
$ f(\cdot) $ 、 $ g(\cdot) $ 具有不同的参数,尽管它们都是对句子进行编码。一个动机是使用不同的input parameter
和output parameter
来学习word representation
。由于这些模型是在大型语料库中训练的,因此参数共享不是一个重要的问题。在测试期间,对于一个给定的句子 $ \mathbf s $ ,我们认为它的representation
是两个编码器的输出的拼接 $ [f(\mathbf s), g( \mathbf s)] $ 。我们的框架允许使用灵活的编码函数。我们使用
RNN
作为 $ f(\cdot) $ 和 $ g(\cdot) $ ,因为它们在最近的sentence representation learning
方法中被广泛使用。句子的单词被依次馈入到RNN
,最后的hidden state
被解释为句子的representation
。我们使用GRU
作为RNN
单元。
6.2 实验
略。(技术过于古老,不用花时间研究实验细节)。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论