【问题标题】:Restricting a freebase search query to results that have only the type "/common/topic"将 freebase 搜索查询限制为只有“/common/topic”类型的结果
【发布时间】:2012-11-16 00:27:42
【问题描述】:

我正在尝试从搜索中查找结果,其中结果中的所有主题都只有以下类型:“/common/type”。例如,如果我搜索“BBQ Chicken”,我想返回 "/en/barbecue_chicken" 作为第一个,也许是唯一的结果,因为它没有与其他类型相关联除了“/common/topic”

我确实在以下位置看到了类似问题的答案: Freebase search_api and excluding results by specified type 但我知道新 api 不再支持 mql_filter。 另外,我发现了一个 mql 查询,它返回所有在 MQL Cookbook 中只有类型“/common/topic”的主题,但无法找到在搜索中使用它的方法。

http://wiki.freebase.com/wiki/MQL_Cookbook#Find_untyped_topics_.28or_which_only_have_a_given_type.29

【问题讨论】:

    标签: api search filter freebase


    【解决方案1】:

    Freebase 是一个免费的开放式数据库,任何人都可以参与其中。假设“BBQ Chicken”永远不会分配另一种类型,这不是一个好的假设。事实上,您可能应该假设随着时间的推移,大多数 Freebase 主题将获得除 /common/topic 之外的某种类型。

    我已经添加了 /food/dish 类型,这样您现在就可以使用 Search API 可靠地找到 BBQ Chicken,如下所示:

    https://www.googleapis.com/freebase/v1/search?query=BBQ+Chicken&type=/food/dish

    【讨论】:

    • 谢谢肖恩!我真的在尝试使用有关我正在寻找的信息类型的一些附加信息将关键字与 FB 中的实体进行匹配。在我的示例中,我正在搜索食物/饮料/菜单项,并且在我的一般查询中,我将结果限制为包括相关类型(/food/beverage、/food/food 等)。这在大多数情况下都很好用,但是有几个例子,其中 Freebase 中的最佳答案是只有 /common/topic 的主题,我希望能够识别这些情况,但包括 /common/topic在查询过滤器中使限制过于笼统。
    • 随时登录 Freebase 并将相关类型添加到缺少它们的主题中。它不仅可以改进您的应用程序,还可以为每个人提高 Freebase 数据的质量。
    • 当然,我打算这样做,但我需要先找到这些主题的方法。我一直在查看一些比赛的结果,这首先让我注意到了这个问题,但我正在寻找一种以编程方式找到它们的方法。然后我可以决定这些主题是否相关,并向它们添加适当的类型。这有意义吗?
    • 是的,这是有道理的。您可能还对专为该任务设计的 Refine Reconciliation API (code.google.com/p/google-refine/wiki/ReconciliationServiceApi) 感兴趣。或者,您可以找出不兼容类型的列表并在搜索查询中过滤掉。
    • 酷,我会试试 Refine API,它看起来正是我需要的。再次感谢你的帮助!但可以肯定的是,我认为没有简单的方法可以以编程方式将搜索结果限制为仅具有 /common/topic 类型的主题?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多