Dataset:包含1500数据的Csv文件,列为(文本、标签),其中文本是尼泊尔语的新闻文章,Label是其类型(健康、世界、旅游、天气等)。
我正在使用空间性来训练我的文本分类模型。到目前为止,我已经将数据集转换为如下所示的数据格式

然后通过代码转换成可接受的空间格式。
dataset['tuples'] = dataset.apply(
lambda row: (row['Text'],row['Labels']), axis=1)
training_data = dataset['tuples'].tolist()这给了我训练数据集中的元组列表,如(文本.,标签.),(文本.,标签.)
现在,我如何在这里进行文本分类?
在斯派西的文件里,我发现
textcat.add_label("POSITIVE")
textcat.add_label("NEGATIVE")我们是否必须根据标签添加标签,还是应该使用正/负标签?培训后,spacy是否根据我们的数据集生成标签?
有什么建议吗?
发布于 2020-06-10 20:51:15
你得加上你自己的标签。所以,在你的例子中:
textcat.add_label('Health')
textcat.add_label('World')
textcat.add_label('Tourism')
...然后,spacy将只能预测那些类别,您在上面的代码块中添加了这些类别。
培训数据有一种特殊的格式:包含数据的列表中的每个元素都是包含以下内容的元组:
cats是一个键,另一个字典是一个值。另一个字典包含所有类别作为键,1或0作为值,指示此类别是否正确。因此,您的数据应该如下所示:
[('text1', {'cats' : {'category1' : 1, 'category2' : 0, ...}}), ('text2', {'cats' : {'category1' : 0, 'category2' : 1, ...}}), ...]
https://stackoverflow.com/questions/62278996
复制相似问题