我的文档中有多个提及概念(例如" Gold")。然而,概念见解'概念搜索将返回Gold作为概念,并且只返回该概念的一个文本索引(通常是第一次出现,但并非总是如此)。有没有具体的理由为什么概念见解'概念搜索忽略了其他提及" Gold"在文件中?我有兴趣在所有概念的出现周围提取文本片段。如果我得到该概念的所有提及的文本索引,那将是很棒的。有没有办法得到它,除了在我的结束时进行字符串匹配。
提前感谢您的帮助!
答案 0 :(得分:0)
Concept Insights的概念搜索不会忽略文档中相同(或相关)概念的几个提及。事实上,该服务使用这些信息来加强系统对每个文档中涵盖的概念领域的理解。
然而,在文档与文档相关的“解释”中,/conceptual_search
端点返回一组精选概念。因为系统试图显示概念的多样性,证明查询和文档之间的联系是合理的,所以它可以省略重复的概念作为“解释”的一部分(你可以考虑这个“解释”类似于一段文本,传统的搜索引擎可能会向用户建议文档可能相关的原因;它不文档中找到的关联的完整故事。)
话虽如此,您可以使用/ annotations端点获取文档中提取的所有概念:GET /v2/corpora/{account_id}/{corpus}/documents/{document}/annotations
。
(文件:https://watson-api-explorer.mybluemix.net/apis/concept-insights-v2#!/corpora/getDocumentAnnotations)
对于文档中的每个注释,您将获得概念ID以及文本中文档中发生位置的位置。因此,对于上面的示例,您可以:
1)调用/conceptual_search
端点以检索与查询相关的文档,以及一些解释概念(将文档与查询联系起来的概念);说你发现概念问题是Gold
。
2)为返回的文档调用/{document}/annotations
,在所选文档中查找“解释概念”(Gold
)的其他实例。您应该能够构建Gold
次出现的列表(以及其他解释概念的列表),其中涵盖整个文档。