我已经问过一个 类似的问题 较早,但我没有说我有很大的限制:我正在处理诸如用户推文之类的小文本集来生成标签(关键字)。

而且似乎公认的建议(Point Complual Information Algorithm)旨在处理更大的文档。

有了这个约束(在少量文本上工作),我该如何生成标签?

问候

有帮助吗?

解决方案

多词标签的两个阶段方法

你可以 池所有推文 进入一个较大的文档,然后提取 n 整个推文收藏中的最有趣的搭配。然后,您可以返回并标记每个推文中发生的搭配。使用这种方法, n 将是将为整个数据集生成的多字标签的总数。

对于第一阶段,您可以使用发布的NLTK代码 这里. 。第二阶段可以通过在所有推文上简单地进行循环来完成。但是,如果速度是一个问题,您可以使用 快速找到包含每个搭配的推文。

单字标签的推文级别PMI

正如建议的 这里, ,对于单字标签,您可以计算 关键的相互信息 每个单词和推文本身,即

PMI(term, tweet) = log [ P(term, tweet) / (P(term)*P(tweet)) 

同样,这将大致告诉您,您会在特定文档中遇到整个术语的少得多(或更多),因为Appose可以在较大的收藏中遇到它。然后,您可以用一些最高的术语标记推文 PMI 带有推文。

推文的一般更改

使用推文标记时,您可能想做的一些更改包括:

  • 仅将单词或搭配用作推文的标签,如果它发生在 其他推文的某些数量或百分比. 。否则,PMI倾向于用仅在一条推文中出现的奇数术语标记推文,但在其他任何地方都看不到,例如拼写错误和键盘噪声,例如#@$#@$%!。

  • 扩展每条推文长度的标签数量。您可能可以为更长的推文提取2或3个有趣的标签。但是,对于一个较短的2个字推文,您可能 不想使用每个单词和配置来标记它. 。在推文长度下,您要提取多少标签可能值得尝试进行不同的截止点。

其他提示

我较早地使用了一种方法,用于诸如SMS之类的小文本内容,我只需要两次重复同一行。令人惊讶的是,这对于这个名词很可能是主题的内容都很好。我的意思是,您不需要重复它即可成为主题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top