我使用工具AIDA(一种命名实体工具)来注释语料库并获得如下格式:
2 Germany http://en.wikipedia.org/wiki/Germany 11867 /m/0345h
6 United_Kingdom http://en.wikipedia.org/wiki/United_Kingdom 31717 /m/07ssc
列3是实体的对应维基百科URL,列4是实体的对应维基百科ID。有没有办法将url或id映射到Freebase MID,就像最后一列一样?最后一栏是另一个人的工作。我不知道他是怎么做到的,也无法在其他地方找到方法。
答案 0 :(得分:1)
使用Freebase API或Freebase数据转储,可以轻松地将这两个EN维基百科ID映射到Freebase主题,并使用各种标识符(包括MID)。哪一个最好使用取决于您需要映射的数据量。
所有Wikipedia ID都存储在Freebase中以/authority/wikipedia
为根的名称空间中。数字ID(即文章编号)存储在英语维基百科的/authority/wikipedia/en_id
中,因此您可以使用http://freebase.com/authority/wikipedia/en_id/11867作为德语主题的别名之一。
此处列出了所有其他子命名空间:https://www.freebase.com/authority/wikipedia?ns=但与英语维基百科相关的其他两个命名空间是en
和en_title
,两者都包含使用alpha维基百科的密钥文章名称。后者是规范ID并且是唯一的,而前者包含该ID,以及指向它的所有重定向页面的ID。
这两个网址也是德国的别名:
https://www.freebase.com/authority/wikipedia/en/Germany https://www.freebase.com/authority/wikipedia/en_title/Germany
要使用MQLRead查询API,请构建如下查询:
[{
"id": "/authority/wikipedia/en_id/11867",
"mid": null,
"name": null
}]
并解析生成的JSON
{
"result": [{
"id": "/authority/wikipedia/en_id/11867",
"mid": "/m/0345h",
"name": "Germany"
}]
}
获得MID。完整的查询URL如下所示:
你可以用其他命名空间中的alpha键做同样的事情,但是需要为特殊字符转义密钥,因为你有数字标识符所以不值得描述它。如果其他人需要,则在此处描述MQL密钥转义:http://wiki.freebase.com/wiki/MQL_key_escaping
答案 1 :(得分:0)
您可以使用维基百科信息查询Freebase,请参阅Freebase API docs。查询/ common / topic / topic_equivalent_webpage属性。但是,Freebase现在将在不久的将来关闭,因此我不建议您付出太多努力。