Python 为什么我们需要在文本生成应用程序中以小写顺序生成句子?还是有必要?

Python 为什么我们需要在文本生成应用程序中以小写顺序生成句子?还是有必要?,python,deep-learning,text-files,Python,Deep Learning,Text Files,显然我在做一个关于文本生成的项目。根据tensorflow.org的代码示例,加载文本文件时,他们不会降低数据中的字母。然而,在其他来源中,例如deeplearningai在序列模型课程中的恐龙岛作业。我不知道降低文本中的字母会有什么效果,或者有什么效果?这是为了简化需要表示多少元素。当您使用大写字母时,如果存在大写字母组合,则需要至少分配26个额外空格[a-Z]或更多。对于文本分类,我认为没有必要保留大写字母,因为这不会影响文本的阅读方式,但如果您试图生成序列中的下一个单词或下一个字母,那么它

显然我在做一个关于文本生成的项目。根据tensorflow.org的代码示例,加载文本文件时,他们不会降低数据中的字母。然而,在其他来源中,例如deeplearningai在序列模型课程中的恐龙岛作业。我不知道降低文本中的字母会有什么效果,或者有什么效果?

这是为了简化需要表示多少元素。当您使用大写字母时,如果存在大写字母组合,则需要至少分配26个额外空格[a-Z]或更多。对于文本分类,我认为没有必要保留大写字母,因为这不会影响文本的阅读方式,但如果您试图生成序列中的下一个单词或下一个字母,那么它就变得很重要。

如果您的数据集很小,则可能需要将文本小写。想象一下,数据集中会出现“惊人”和“惊人”两个词。对于神经网络来说,这两个词是不同的。如果你有一个大数据集,并且这些词在不同的情况下多次出现,它可能会了解到“惊人”和“惊人”是同一件事。但是假设“惊人”这个词在你的训练集中出现了十次,而“惊人”只出现一次。模型很可能无法找出两者之间的关系,这可能会影响网络的性能


下半部的大小写也有助于使用OOV单词。想象一下,如果“惊人”从未出现在训练数据集中,但网络在测试样本中遇到它。如果您将输入值小写,则可以正常工作,但如果您不这样做,则会出现问题。

添加更多的26个大写字母是否会增加计算成本?谢谢你!我猜这取决于词汇表中的单词结构。对于一个使用单个字母的简单问题,它不会增加大量计算时间。您的解释对我来说似乎很清楚,非常感谢!我投票结束这个问题,因为它不是关于中定义的编程,而是关于ML理论和方法。