当前位置: 首页 > 知识库问答 >
问题:

功能vs实词

马承
2023-03-14

我已经在使用StanfordCoreNLP,所以如果可能的话,我想利用它。

更具体地说,我应该使用哪一个注释器,它将如何标记内容/词汇词?

我试过pos,但它没有区分功能词和内容词。

PPS.我使用pyconlp

共有1个答案

耿珂
2023-03-14

虚词(停用词)通常是手工整理的,因为它们因域而异。您可以在NLTK中找到一个通用列表。CoreNLP这里也有一个

from nltk.corpus import stopwords
stops = stopwords.words('english')

但是,您仍然应该查看它们,看看它们对您的用例是否有意义。我最近一直在使用技术语言,所以我从我的列表中删除了“it”,因为“it”是这个领域的首字母缩略词,因此是一个内容词。

对于您的注释器,您可以使用通用的TokenizerAnnotator,它将您的文本拆分为“单词”。然后,您可以检查每个单词,看看它是否存在于停止词列表中。如果您正在使用字符串,只需尝试在空格上拆分它们,并移除或标记停顿字,作为一种内脏检查。

 类似资料:
  • 在专用应用程序服务计划上运行Azure功能时,主机实例和VM实例之间是否存在差异?因为根据这一点,应用服务计划使用现有的VM实例。但在我的函数应用程序的扩展计划中,我可以看到增加实例数的选项。根据这一点,它表示扩展将添加新的VM实例。但根据这一点,主机实例就是功能齐全的应用程序实例。 那么,增加实例数量,是否会在应用程序服务计划下启动新的VM实例?如果没有,那么如果可能的话,是否将在同一个VM实例

  • 问题内容: 昨天我们遇到了一个场景,其中必须获取a的类型,并且在此基础上我们必须编写该字段的描述。喜欢 我建议编写一个db函数而不是case语句,因为那样会更可重用。喜欢 有趣的是,使用数据库的功能将是一个说我们的开发人员的 效率低下 的是 慢 比。我在互联网上搜索了答案,这在效率方面是更好的方法,但是不幸的是,我没有发现任何可以满足的答案。请您的想法启发我,哪种方法更好? 问题答案: UDF f

  • 我正在从ndk-build迁移到CMake(它更好地与Android Studio集成,并使我们能够为所有平台提供一个CMakelists.txt)。 不幸的是,我们的项目使用了Android.mk的一些特性,我无法在CMake中复制这些特性。更具体地说: > target_arch:我们使用它来包括不同的预编译二进制文件。如何用CMAKE找到目标拱门? local_arm_mode:这在CMak

  • 对于刚开始正式接触契约测试的团队,对于契约测试和功能测试之间的区别经常会存在争论。难就难在其实并不存在什么非黑即白的答案,更为重要的应该是逐渐加深对契约测试的理解和使用。 使用契约测试常见的场景,是验证规则或者处理错误请求。例如,我们有一个用户服务,允许消费者使用POST请求注册新用户,并在HTTP Body中包含所创建用户的详细信息。 一个简单的消费者与提供者交互的常规场景如下所示: Given

  • Backbone.noConflictvar backbone = Backbone.noConflict(); 返回 Backbone 对象的原始值。 您可以使用Backbone.noConflict()的返回值以保持局部引用Backbone。 通常用于在第三方网站上引入了多个 Backbone 文件,避免冲突。 var localBackbone = Backbone.noConflict()

  • Navicat Data Modeler 提供数种在创建模型时能改善用户体验的工具。 模型转换 自动布局 打印和导出模型 搜索筛选 全屏模式