问题标签 [text-classification]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
847 浏览

rapidminer - 为什么 rapidminer 中的 KNN 会出现内存问题?

我正在对 20NewsGroup 数据集进行文本分类,每个类别中有 100 个文档。我使用 10 倍交叉验证通过朴素贝叶斯对文本文档进行分类,它成功运行并在最后给我结果。

我用 10 倍交叉验证对 KNN 进行了同样的尝试,但它总是以“进程失败”结束,这表明它需要比可用内存更多的内存。我在 build.xml 和 rapidminerGUI.bat 中将 rapidminer 的堆空间从 1GB 增加到 2.5G,但没有任何改善(所以我认为堆空间不是问题),而且它总是需要更多的内存。

请帮助,我坚持下去并尝试了我能想到的所有可能的选择

平台详情:

操作系统:Windows 7(64 位) 软件版本:Rapidminer 5.3(64 位) Java:Java 1.7(64 位)

0 投票
0 回答
363 浏览

machine-learning - 我如何在 weka 中使用除 TF-IDF 之外的特征加权方法?

1)我想应用 IG、MI 等特征加权方法来加权我的特征,但 StringToWordVector 只允许我们使用 TF-IDf 来加权 weka 中的特征。

有没有一种方法可以应用除 TF-IDF 之外的加权方法来加权我的条款?

2)如何访问java代码中每个特征的TF-IDF权重?我调试了代码,发现所有术语都分配了权重 1.0 ?

3) IG 小于 0 的术语是否对分类过程没有帮助,我们应该始终将它们从词汇表中删除?

提前谢谢...

0 投票
1 回答
48 浏览

machine-learning - 如何在快速矿工中将“从文件处理文档”的输出示例集提供给多个分类器?

我正在研究并行分类器组合,并且需要快速矿工将“处理文件中的文档”运算符的输出提供给多个分类器(L1、L2、L3)。一种方法是创建三个不同的进程并分别为每个进程提供文档,但这可能是性能瓶颈,我想避免它。

有没有办法为分类器(L1、L2、L3)提供示例集副本?

0 投票
1 回答
1860 浏览

nlp - 使用 SVM 时是否需要 TF-IDF?

我正在使用支持向量机对短语进行分类。在使用 SVM 之前,我知道我应该对短语向量进行某种标准化。一种流行的方法是 TF-IDF。

具有最高 TF-IDF 分数的术语通常是最能表征文档主题的术语。

但这不正是 SVM 所做的吗?对最能描述文档特征的术语给予最高权重?

提前致谢 :-)

0 投票
0 回答
478 浏览

text - Nltk 分类 - 朴素贝叶斯显示出令人难以置信的 0.996 准确度

我面临一个奇怪的问题。我使用 nltk.classify 中的 NaiveBayesClassifier 对文本进行分类,我的问题是它显示了令人难以置信的 0.9966 精度。我确信这不可能是真的,但我的代码中仍然没有错误。我的输入量很大,40.000 个句子用于训练,80.000 个用于测试。

我正在构建一组由所有负/正/中性标记的训练文本组成的训练特征

以及由所有负/正/中性标记的训练文本组成的一组测试特征

之后我在 trainFeats 上训练分类器

并在所有 testFeats 上进行测试

这是正常的结果,我应该想当然吗?因为它表现得非常好。谢谢!

0 投票
1 回答
625 浏览

machine-learning - 如何在具有单独测试集的 Rapidminer 中应用 InformationGain?

我正在处理 rapidminer 中的文本分类。我有单独的测试和训练拆分。我使用 n 折交叉验证将信息增益应用于数据集,但我对如何将其应用于单独的测试集感到困惑?下面附上图片在此处输入图像描述

在图中,我已将用于训练的第一个“Process Documents From Files”的单词列表输出连接到用于测试的第二个“Processed Documents From Files”,但我想将缩减的功能应用于第二个“Process Documents From文件”,它可能应该是从“按重量选择”(缩小尺寸)操作员返回的文件,但它返回的权重我无法提供给第二个“从文件处理文档”。我搜索了很多,但没有找到任何可以满足我需求的东西?

Rapidminer 真的有可能进行单独的测试/训练拆分并应用特征选择吗?

有没有办法将这些权重转换为单词列表?请不要说写在存储库中(我不能这样做)?

在这种情况下,当我有不同的测试/训练拆分并需要应用特征选择时,我将如何确保测试/训练拆分具有相同的维度向量?

我真的被困在里面了,请帮助...

0 投票
1 回答
96 浏览

machine-learning - 如何从 Rapid Miner 示例集转换为 weka 实例?

我需要一些从 weka 中使用的功能和一些从 rapidminer 中使用的功能。如何将快速矿工示例集转换为 weka 实例执行一些操作,然后再转换回 weka 实例?

我在互联网上发现了一个名为“WekaTools”的类,但它在 rapidminer(5.3.013) 中不存在

谁能告诉我该功能在快速矿工 5.3.013 中的移动位置?或者我如何从 Rapid miner 示例集转换为 weka Instances ?

0 投票
1 回答
10254 浏览

machine-learning - Scikit learn - 测试集上的 fit_transform

我正在努力在 Python 中使用 Scikit learn 中的随机森林。我的问题是我将它用于文本分类(在 3 个类中 - 正/负/中性)并且我提取的特征主要是单词/unigrams,所以我需要将这些转换为数字特征。我找到了一种方法来做到这一点DictVectorizer's fit_transform

我的问题是该fit_transform方法正在处理包含大约 8000 个实例的训练数据集,但是当我尝试将我的测试集也转换为数字特征(大约 80000 个实例)时,我收到一个内存错误说:

什么可能导致这种情况,是否有任何解决方法?非常感谢!

0 投票
0 回答
325 浏览

machine-learning - 关于文本分类的一般问题

我是主题模型、分类等方面的新手……现在我已经在做一个项目并阅读了很多研究论文。我的数据集由人工标记的短消息组成。到目前为止,这是我想出的:

  • 由于我的数据很短,我阅读了有关潜在狄利克雷分配(及其所有变体)的信息,这对于检测文档中的潜在单词很有用。
  • 基于此,我发现了 JGibbLDA http://jgibblda.sourceforge.net的 Java 实现,但是由于我的数据已标记,因此对此进行了改进,称为 JGibbLabeledLDA https://github.com/myleott/JGibbLabeledLDA
  • 在大多数研究论文中,我阅读了关于 Weka 的好评,所以我在我的数据集上搞砸了
  • 然而,我的数据集再次被标记,因此我发现了一个名为 Meka http://sourceforge.net/projects/meka/的 Weka 扩展,它具有多标记数据的实现
  • 阅读多标签数据,我知道最常用的方法,例如一对多和链分类器......

现在我在这里的原因是因为我希望对以下问题有答案:

  1. LDA 是解决我的问题的好方法吗?
  2. LDA 是否应该与分类器(NB、SVM、二元相关性、逻辑回归……)一起使用,或者 LDA 是否“足以”用作新的、看不见的数据的分类器/估计器?
  3. 我需要如何解释来自 JGibbLDA / JGibbLabeledLDA 的输出。我如何从这些文件中获取告诉我哪些单词/标签分配给整个消息(不仅仅是每个单词)的东西
  4. 我如何使用 Weka/Meka 来达到我在上一个问题中想要的(如果 LDA 不是我想要的)

我希望有人,或者不止一个人,可以帮助我弄清楚我需要如何做到这一点。所有的大意都不是这里的问题,我只是不知道如何从文学走向实践。大多数论文都没有对他们如何进行实验给出足够的描述,或者对于我关于这些主题的背景来说过于技术化。

谢谢!

0 投票
1 回答
747 浏览

machine-learning - 对 LibSVM 格式的文件使用 LibShortText

我正在尝试使用LibShortText,但我并不完全了解它是如何工作的。

README看来,它的功能是针对文本文件的。但是,我需要对已经是 LibSVM 格式的文件进行分类,所以我认为函数就像text-train.py并且text-predict.py不会......?

README还指出:

有谁知道什么preprocessor directory是...?

LibShortText 文档中,我看到有一个“中级分类模型 - 学习者”适用于我的文件。但是,我不明白它是如何工作的!例如,它没有 LIBSVM 所具有的所有参数......而且我还没有成功找到如何保存或理解结果(权重和预测在哪里?)。

如果有人能解释这件事的话,我会非常感激(我已经测试了好几个小时了)......谢谢!