分析句子时的平均类型

数据挖掘 Python nlp 词嵌入
2022-03-02 11:12:44

我有一个文本语料库中的单词列表及其频率。因此,诸如“a”、“what”、“some”之类的词具有非常高的频率,而其他诸如“neurodegeneration”之类的词则不太受欢迎。

我想通过为每个单词分配分数来分析句子,然后确定一个句子是否更“技术性”,或者比其他句子更具体。例如:

“我有一只狗和一只猫。” “线粒体是细胞的动力源。”

我想只计算这些频率的平均值,但有时我有这样一句话:

“偏头痛是一种严重的头痛。” , 平均为 640, 和

“非全纯连续函数的典型例子是复共轭和取实部。” ,平均有 600 个,因为有很多很短、很常用的词。

有没有更好的方法来评估这些句子以给出更真实的分数或平均值,这将表明它们有多“利基”?

1个回答

这可能取决于您将使用分数的目的。例如,即使三个句子的技术词密度相同,一个长句子的得分是否应该高于两个较短的句子?如果是这样,添加而不是平均分数?或者添加,然后对句子长度进行调整。

当你取平均值时,另一种让技术性更强的词更有分量的方法是将它们的分数提高到一个幂。功率成为您可以调整的超参数,但简单地对分数进行平方就足以测试这个想法。

我还会提到https://en.wikipedia.org/wiki/Tf%E2%80%93idf,以防您不知道;另请参阅部分也可能会提出一些想法。