我们能否推导出b/w一个词向量的维度与其所代表的语言特征之间的关系呢?
Can we deduce the relationship b/w a dimension of a word vector with the linguistic characteristic it represents?
假设我们使用任何预训练的词模型 ('hello') 生成了一个 200 维的词向量,如下图所示。
那么,我们是否可以通过任何方式判断该向量的每个 d_i 代表哪个语言特征?
例如,d1 可能正在查看单词是否是名词; d2 可能会判断这个词是否是命名实体等等。
因为这些词向量是密集的分布表示,通常很难/不可能解释单个神经元,并且此类模型通常不会将可解释的特征定位到单个神经元(尽管这是一个活跃的研究领域)。例如,参见 分析 Pre-trained 语言模型中的单个神经元
关于 pre-trained 语言模型的讨论)。
研究单个维度如何影响特定现象/感兴趣任务的常用方法是训练线性模型(即,如果任务是分类,则使用逻辑回归)从固定向量执行任务,然后进行分析训练好的线性模型的权重。
例如,如果您对词性感兴趣,您可以训练一个线性模型来从词向量映射到 POS [1]。然后,线性模型的权重表示可预测特征的维度的线性组合。例如,如果第 5 个神经元的权重幅度很大(非常正或非常负),您可能会认为该神经元与感兴趣的现象有些相关。
[1]:请注意,为特定单词定义 POS 并非易事,因为 POS 通常取决于上下文。例如,“玩”可以是名词(“他看了一场戏”)或动词(“我会在草地上玩”)。
假设我们使用任何预训练的词模型 ('hello') 生成了一个 200 维的词向量,如下图所示。
那么,我们是否可以通过任何方式判断该向量的每个 d_i 代表哪个语言特征?
例如,d1 可能正在查看单词是否是名词; d2 可能会判断这个词是否是命名实体等等。
因为这些词向量是密集的分布表示,通常很难/不可能解释单个神经元,并且此类模型通常不会将可解释的特征定位到单个神经元(尽管这是一个活跃的研究领域)。例如,参见 分析 Pre-trained 语言模型中的单个神经元 关于 pre-trained 语言模型的讨论)。
研究单个维度如何影响特定现象/感兴趣任务的常用方法是训练线性模型(即,如果任务是分类,则使用逻辑回归)从固定向量执行任务,然后进行分析训练好的线性模型的权重。
例如,如果您对词性感兴趣,您可以训练一个线性模型来从词向量映射到 POS [1]。然后,线性模型的权重表示可预测特征的维度的线性组合。例如,如果第 5 个神经元的权重幅度很大(非常正或非常负),您可能会认为该神经元与感兴趣的现象有些相关。
[1]:请注意,为特定单词定义 POS 并非易事,因为 POS 通常取决于上下文。例如,“玩”可以是名词(“他看了一场戏”)或动词(“我会在草地上玩”)。