我正在为MATLAB格式的文本分类任务寻找可靠的数据集。我想进行一些实验,不想在预处理文本和创建特征向量上花费太多时间。我需要准备一些东西,以便可以将其插入算法中。我在这里找到了路透社数据集的MATLAB文件:
链接文本
一切准备就绪,但我想使用其中的一部分。在此“特征”中包含每个文档的特征向量。但是,它似乎不是正常矩阵。例如,我想在此“功能”中选择前1000个文档。如果只下载并将其加载到MATLAB中,您将明白我的意思。因此,如果可能,我需要上述数据集或任何其他数据集的解决方案。提前致谢。
回答:
它存储为
稀疏矩阵 。提取前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,:);
更多&回答...