我想知道如何将SVN分类器产生的标签与数据集中的标签进行匹配。然后我意识到问题从一开始就开始了:加载数据集时,我得到了一个具有以下属性的数据集:
.data = the news text
.target_names = label used in the dataset e.g. ["positive", "negative"]
.target = A matrix with a number for each news with a label.
但是我想知道不同数据集(具有相同标签但新闻不同)中target_names的顺序是否不同,以及.data元素的顺序是否会影响这一点。
有什么方法可以轻松知道.target矩阵中的数字标签吗?(我的意思是,0或1在这样的矩阵中代表什么)
最好,
条目i
中的相应标签.target
可用.target_names[i]
。在您的示例中:.target_names[1]
为“负”。
只要标签完全相同,跨不同数据集的目标名称的顺序将相同。这是因为sklearn.datasets.load_files()
如我们在源代码(v.20.x)中看到的那样,从排序后的文件夹名称创建标签:
[...]
folders = [f for f in sorted(listdir(container_path))
if isdir(join(container_path, f))]
if categories is not None:
folders = [f for f in folders if f in categories]
for label, folder in enumerate(folders):
target_names.append(folder)
[...]
我仍然建议始终从target_names
当前数据集中检索标签,以确保安全(实现可能会随时间变化等)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句