基于您的数据评估模型表现
在本练习中,您将练习在自己的数据上评估现有模型。这里的目标是检查模型在特定实体标签 PRODUCT 上的表现。如果模型能够准确分类较大比例的 PRODUCT 实体(例如超过 75%),则无需在 PRODUCT 实体示例上继续训练模型;否则,您应考虑对模型进行训练,以提升其在 PRODUCT 实体预测上的表现。
本练习将使用 Amazon Fine Food Reviews 数据集中的两条评论。您可以通过 texts 列表访问这些评论。
en_core_web_sm 模型已为您加载,可通过调用 nlp() 访问。模型也已经在 texts 列表上运行完毕,documents(一个由 Doc 容器组成的列表)可供您使用。
本练习是课程的一部分
使用 spaCy 的自然语言处理
练习说明
- 构建一个
target_entities列表,包含每个documents中的所有实体;仅当实体文本中包含Jumbo时,向列表追加一个二元组(实体文本,实体标签)。 - 对于
target_entities中的任一元组:如果其实体标签(元组的第二个元素)为PRODUCT,则向correct_labels列表追加True,否则追加False。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Append a tuple of (entities text, entities label) if Jumbo is in the entity
target_entities = []
for doc in ____:
target_entities.extend([(ent.____, ent.____) for ent in doc.____ if "Jumbo" in ent.text])
print(target_entities)
# Append True to the correct_labels list if the entity label is `PRODUCT`
correct_labels = []
for ent in target_entities:
if ____[1] == "PRODUCT":
correct_labels.append(____)
else:
correct_labels.append(____)
print(correct_labels)