词作为网络的输入

数据挖掘 神经网络
2022-01-29 23:15:51

我想建立神经网络,我的输入将是一个单词(而不是一个句子)。我的单词集有很多不同长度的单词(字符数)。我的想法是使用预定义字典将字符转换为数字,然后将其用作输入。输入层中的神经元数量设置为我集中最长单词中的字符数。在向量中,女巫更短,我将用零填充它们。

我的一组词看起来是:

1. head
2. hello
3. butterfly
4. hotel
5. fly
6. spy

所以对于这个集合,我对 netowrk 的输入应该有 9 个神经元。当我转换“头”时,我将得到带有 4 个数字和 5 个零的向量。

是个好主意?或者,也许您有另一个更好的想法,这个网络的输入可能看起来如何。

编辑:

我的任务在这里描述:ML 模型来转换单词:我想构建 GAN 作为答案建议。所以这个词将是我的“真实词”,我想生成假词。

2个回答

这里最简单的方法是对字母进行一次性处理。因此,您将有许多包含 1 和 0 的列。现在,这可能是您的 nn 的输入层。

虽然您的方法听起来合乎逻辑,但它与大多数基于语言的模型的创建方式完全不同。一旦你训练了它,你真的需要告诉我们你希望你的模型学习和预测什么。你为什么对单词的长度感兴趣;输入层具有与最长单词中的字符相同数量的神经元的意义是什么?这听起来像是某种性能优化。

因为我们通常对单词的含义感兴趣,所以已经开发了编码含义的方法。有诸如Word2Vec 之类的模型,它们将文本作为输入,并以向量的形式为每个单词生成语义。在此处查看教程

当我们将图像作为模型的输入时,我们通常对诸如“图片中有什么?”、“图片在哪里?”之类的东西感兴趣。和“什么旁边是什么?”。这意味着空间信息很重要。

词向量和图像都是数字形式,可以传递到网络中。我们仍然需要知道我们希望我们的模型学习什么,知道我们想要优化什么;我们必须决定losserror的定义,因为这是通过反向传播训练模型的。