Google键盘使用哪种算法来自动建议(包括个人演唱)?

问题描述 投票:0回答:1

我很困惑,因为Google无法用每个人的个人词汇训练他们的文本生成模型。

我试图开发类似的东西,但是当神经网络训练期间课程数量变得动态时,我陷入了困境。

如果我不知道类的数量,如何1给出层的大小和输入的大小。

让Google知道英语vocab中的单词,我把from语中的一些单词包含在我的个人词典中,将来可以向我建议这些单词。

假设google vocab由10个单词组成,我按顺序给它5个单词,将其热编码为大小为1和0的(5x10)向量。

然后我加入4个新词。现在vocab的总大小= 14

但是RNN(如果使用的话)仅使用10个单词的词汇来训练。它不能对那些新词进行编码,因为在训练时那些词不属于词汇。

是否使用大小为(5x14)的向量重新训练其文本生成模型?

algorithm machine-learning nlp artificial-intelligence recurrent-neural-network
1个回答
0
投票

根据此Google AI article,他们结合使用了两种方法:

  • 神经空间模型:在字符级别解决认知和运动错误(表现为拼写错误,字符插入,删除或交换等)。他们使用了字符级LSTM模型,该模型使用了受语音处理启发的CTC损失函数进行训练。
  • Finite-State Transducers:提供语言词汇约束(一种语言中出现的单词)和语法约束(哪些单词可能跟随其他单词)。后者是使用概率n元语法模型表示键盘的语言模型来完成的。

根据您的情况,我建议以下内容:

  • 您的RNN需要在字符级别而不是单词级别上进行训练以跟踪拼写错误。
  • 使用n元语法模型来跟踪哪些单词通常伴随哪些单词。这需要根据您惯用的词汇进行培训。
  • 最后,这不容易,但是可行!
© www.soinside.com 2019 - 2024. All rights reserved.