1

我正在使用来自 tensorflow hub 的 ELMO 模型。

import tensorflow as tf
import tensorflow_hub as hub
from tensorflow.contrib import predictor

elmo = hub.Module("https://tfhub.dev/google/elmo/3", trainable=False)

默认输出维度是 1024。有没有可能的方法可以在128不使用 PCA/丢失信息的情况下将 ELMO 嵌入的维度减少到?

4

1 回答 1

1

由于是由allennlpELMo发布的预训练模型,因此这些模型将基于1024的训练给出固定的输出维度。

降低输出维度的一种方法是尝试降维技术,例如PCA, tSNE, UMAP,但正如您所说,这将以丢失信息为代价。

相反,您可以ELMo从头开始训练,提供大量数据和设备进行训练。
你可以关注这篇文章,它解释了ELMo从头开始的训练。
要更改输出维度等超参数,可以在此文件中完成。

于 2020-10-19T16:18:51.230 回答