作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想用以下 (text, label)
训练一个 TextCategorizer 模型对。
标签颜色:
textcat = TextCategorizer(nlp.vocab)
losses = {}
optimizer = nlp.begin_training()
textcat.update([doc1, doc2], [gold1, gold2], losses=losses, sgd=optimizer)
nlp("The door is brown.")
等等。什么应该在
gold1
和
gold2
?我猜他们应该是
GoldParse对象,但我没有看到您如何在这些对象中表示文本分类信息。
最佳答案
根据这个例子train_textcat.py它应该类似于 {'cats': {'ANIMAL': 0, 'COLOR': 1}}
如果你想训练一个多标签模型。另外,如果你只有两个类,你可以简单地使用 {'cats': {'ANIMAL': 1}}
用于标签动物和 {'cats': {'ANIMAL': 0}}
用于标签颜色。
您可以使用以下最小工作示例进行单类别文本分类;
import spacy
nlp = spacy.load('en')
train_data = [
(u"That was very bad", {"cats": {"POSITIVE": 0}}),
(u"it is so bad", {"cats": {"POSITIVE": 0}}),
(u"so terrible", {"cats": {"POSITIVE": 0}}),
(u"I like it", {"cats": {"POSITIVE": 1}}),
(u"It is very good.", {"cats": {"POSITIVE": 1}}),
(u"That was great!", {"cats": {"POSITIVE": 1}}),
]
textcat = nlp.create_pipe('textcat')
nlp.add_pipe(textcat, last=True)
textcat.add_label('POSITIVE')
optimizer = nlp.begin_training()
for itn in range(100):
for doc, gold in train_data:
nlp.update([doc], [gold], sgd=optimizer)
doc = nlp(u'It is good.')
print(doc.cats)
关于spacy - 如何为 TextCategorizer 培训创建黄金数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48834832/
我是一名优秀的程序员,十分优秀!