Nlp Ulmfit&x27;s语言模型在应用于文本分类问题时是否有效?

Nlp Ulmfit&x27;s语言模型在应用于文本分类问题时是否有效?,nlp,lstm,text-classification,language-model,fast-ai,Nlp,Lstm,Text Classification,Language Model,Fast Ai,我最近一直在玩弄Ulmfit,但仍然无法理解语言模型对下一个单词做出合理预测的能力如何影响文本分类。我想我真正的问题是,我不明白在网络的底层发生了什么。如果我错了,请纠正我,但程序是这样的,对吗 语言模型经过预训练,然后进行微调。这一部分对我来说似乎很清楚:基于当前和前面的单词,你形成了关于下一个单词的概率。 然后,从softmax层剥离模型,以创建概率分布。 您添加了由一个reLU层(该层实际上在做什么?)和另一个softmax层组成的解码器,该层输出给定文本文档的类成员概率。所以这里有很多我

我最近一直在玩弄Ulmfit,但仍然无法理解语言模型对下一个单词做出合理预测的能力如何影响文本分类。我想我真正的问题是,我不明白在网络的底层发生了什么。如果我错了,请纠正我,但程序是这样的,对吗

语言模型经过预训练,然后进行微调。这一部分对我来说似乎很清楚:基于当前和前面的单词,你形成了关于下一个单词的概率。 然后,从softmax层剥离模型,以创建概率分布。 您添加了由一个reLU层(该层实际上在做什么?)和另一个softmax层组成的解码器,该层输出给定文本文档的类成员概率。所以这里有很多我不明白的事情:文本文档是如何接收和处理的?我想是逐字逐句吧?那么,你最后是如何做出预测的呢?它是所有单词的平均值吗? 嗯,你可以看到我很困惑。我希望你能帮助我更好地理解它!提前谢谢

ULMFiT的模型是“正则LSTM”,它是递归神经网络(RNN)的特例

RNN逐字“吃”输入文本(有时是逐字),每次“咬”后,它们:

  • 产出
  • 更新内部隐藏状态
在文本分类中,输出被丢弃,直到最后。更新后的隐藏状态将被添加到下一个要咬合的单词中。在RNN接受最后一个字后,您可以检查输出层(通常是一个softmax层,其神经元数量与您的标签相同),根据真实标签计算损失,然后相应地更新权重

在培训阶段之后,假设要对新文档进行分类。RNN再次“吃掉”输入,并在每个单词后更新其隐藏状态。忽略输出层,直到看到最后一个字:此时,输出softmax层的max元素将成为预测标签

我觉得这特别有用

ULMFiT的模型是“规则LSTM”,这是递归神经网络(RNN)的特例

RNN逐字“吃”输入文本(有时是逐字),每次“咬”后,它们:

  • 产出
  • 更新内部隐藏状态
在文本分类中,输出被丢弃,直到最后。更新后的隐藏状态将被添加到下一个要咬合的单词中。在RNN接受最后一个字后,您可以检查输出层(通常是一个softmax层,其神经元数量与您的标签相同),根据真实标签计算损失,然后相应地更新权重

在培训阶段之后,假设要对新文档进行分类。RNN再次“吃掉”输入,并在每个单词后更新其隐藏状态。忽略输出层,直到看到最后一个字:此时,输出softmax层的max元素将成为预测标签

我觉得这特别有用


啊,这很有道理!非常感谢:)啊,这很有道理!非常感谢:)