java - Java 中的文本分类

标签 java classification

我需要某种 Java 解决方案来满足以下要求:

  1. 在文本中搜索某些术语(每个术语可以是 1-3 个单词)。例如:{“ Hello World ”,“你好”}。匹配需要精确。
  2. 术语组约有 500 种,每个术语组包含约 30 个术语。
  3. 每个文本最多可包含 4000 个单词。

性能是一个重要问题。

谢谢, 杆

最佳答案

我已经为定制的垃圾邮件过滤器做了类似的事情。

我发现既简单又快速的技术是:

  1. 首先将输入文件拆分为单词。
  2. 对每个单词调用 intern(),以简化第 3 步中的比较。
  3. 创建一个 Term 类,封装最多包含三个字符串的数组。它的equals()方法可以对字符串进行指针比较,而不是调用String.equals()。为输入中的每组 2 或 3 个连续单词创建一个 Term 实例。
  4. 使用Multimap(来自 Google Collections)将每个术语映射到它出现的文件集。

关于java - Java 中的文本分类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1567598/

相关文章:

Java 8,流查找重复元素

java - 使用 sardine 从 java 应用程序访问 sharepoint 网站

algorithm - 最先进的分类算法

java - 从自定义 IStorage 实现获取 IProject

java - 使用 Scanner 类读取输入数据

python - 如何将字符串数据分类为整数?

matlab - 朴素贝叶斯 : the within-class variance in each feature of TRAINING must be positive

java - 具有真正有值(value)特征的斯坦福分类器

java - java中的正则表达式,共享符号

algorithm - 增量最大熵分类器