现在我正在建立一个中国股票的知识图谱,并想建立一个新闻推荐系统。我想使用 TransE 算法进行实体嵌入和关系嵌入。但是我没有数据集,也不清楚如何使用自己的知识图谱构建数据集?
1 回答
一个开始是使用来自 Wikidata 的数据。它有一些关于中国公司的信息(我想你指的是在中国证券交易所上市的公司)。例如, https://www.wikidata.org/wiki/Q831445显示有关中国石化的信息。
来自 Wikidata 的数据可以从 API、https://dumps.wikimedia.org/wikidatawiki/ 的大型转储文件或https://query.wikidata.org/的 SPARQL 端点下载。
您可以通过SPARQL查询获得深交所上市公司名单:
SELECT
?company ?companyLabel
?industry ?industryLabel
{
?company wdt:P414 wd:Q517750 .
OPTIONAL { ?company wdt:P452 ?industry }
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en,zh". }
}
结果(也)可在https://w.wiki/9DM获得。这个结果可以通过修改查询来扩展,并且可以以各种格式下载。使用 DESCRIBE SPARQL 关键字,您可以获得可能对 TransE 算法有用的三元组格式,例如,DESCRIBE wd:Q831445
结果位于https://w.wiki/9DN。
可以使用 Gensim 的 Word2Vec 处理大型转储文件并进行知识图嵌入,请参阅 https://arxiv.org/abs/1710.04099 上的“Wembedder:Wikidata 实体嵌入 Web 服务”。您可以使用 Wembedder webapp 探索这种方法的一个结果,例如,https: //tools.wmflabs.org/wembedder/most-similar/Q51747显示嵌入中国国航的知识图谱中“最相似”查询的结果