首页 > 解决方案 > 深度学习中的词嵌入是如何工作的?

问题描述

我对 Word Embeddings 有一个非常基本的疑问。我的理解是,词嵌入用于以数字格式表示文本数据而不会丢失上下文,这对于训练深度模型非常有帮助。

现在我的问题是,词嵌入算法是否需要将所有数据学习一次,然后以数字格式表示每条记录?否则,每个记录将单独表示,并知道其他记录。

张量流代码:

在此处输入图像描述

这是我使用示例代码进行的一个实验,其中嵌入独立地将数据重新构建为指定的维度。

我的理解正确吗?

标签: tensorflowdeep-learningword-embedding

解决方案


不,它不需要一次学习所有数据,然后以数字格式表示每条记录,它是单独完成的。你做的是对的,但是自然语言处理的方法很多,我也可以给你推荐一个好方法,就是把每个字母变成一个数字,所以这里你可以用一个字母一个字母的预测,是真的吗?不会很快,但它可以保证很好的准确性,因为字母的词汇量少于单词的词汇量,它可以是这样的:

vocab = set( your_text ) # extract each distinct letter
vocab_to_int = {l:i for i,l in enumerate(vocab)} # transforms letter to number
int_to_vocab = {i:l for i,l in enumerate(vocab)} # do the inverse

transformed_text = [vocab_to_int[l] for l in your_text] # all text transformed

推荐阅读