我需要一段文字并从中提取一个"标签"列表.其中大部分都很直接.但是我现在需要一些帮助来阻止生成的单词列表以避免重复.示例:社区/社区
我已经使用了Porter Stemmer算法的实现(顺便说一下我在PHP中编写):
http://tartarus.org/~martin/PorterStemmer/php.txt
这可以达到一定程度,但不会返回"真实"的单词.上面的例子被称为"commun".
我尝试过"Snowball"(在另一个Stack Overflow线程中建议).
http://snowball.tartarus.org/demo.php
对于我的例子(社区/社区),Snowball源于"社交".
题
有没有其他干扰算法可以做到这一点?还有其他人解决了这个问题吗?
我目前的想法是,我可以使用词干算法来避免重复,然后选择我遇到的最短词是要显示的实际词.
是否有任何函数(VB.NET或C#)可以将英语单词转换为单数形式或复数形式?
我想有一个包含所有英语单词以及复数形式的数据库,但我也认为这是愚蠢的,因为这将是巨大的,除了英语中有关于如何将单词翻译成复数形式的规则,那么为什么不创建一个进行转换的函数呢?