登录论坛

查看完整版本 : MATLAB的文本分类数据集


poster
2019-12-10, 20:48
我正在为MATLAB格式的文本分类任务寻找可靠的数据集。我想进行一些实验,不想在预处理文本和创建特征向量上花费太多时间。我需要准备一些东西,以便可以将其插入算法中。我在这里找到了路透社数据集的MATLAB文件: 链接文本 (http://www.zjucadcg.cn/dengcai/Data/TextData.html)

一切准备就绪,但我想使用其中的一部分。在此“特征”中包含每个文档的特征向量。但是,它似乎不是正常矩阵。例如,我想在此“功能”中选择前1000个文档。如果只下载并将其加载到MATLAB中,您将明白我的意思。因此,如果可能,我需要上述数据集或任何其他数据集的解决方案。提前致谢。



回答:

它存储为稀疏矩阵 (http://www.mathworks.com/help/techdoc/math/f6-32006.html) 。提取前1000个文档(行),如果有足够的空间,则可以将其转换为完全密集的矩阵:

load Reuters21578.mat TF = full( fea(1:1000,:) ); 让我们检查一下我们拥有的变量:

>> whos Name Size Bytes Class Attributes TF 1000x18933 151464000 double fea 8293x18933 4749196 double sparse gnd 8293x1 66344 double testIdx 2347x1 18776 double trainIdx 5946x1 47568 double 因此您可以看到TF现在约为150MB。

除此之外,其余内容不言自明:


fea :术语频率矩阵,行是文档,列是术语
gnd :每个文档的类别,其中numel(unique(gnd)) == 65
trainIdx / testIdx :出于分类目的对实例(文档)进行拆分,包含行的索引,用作: tr = fea(trainIdx,:); tt = fea(testIdx,:);


更多&回答... (https://stackoverflow.com/questions/4314740)