A completely equivalent alternative, that's ready to use "out of the box"? Probably not. But a lot of the pieces you need to build something like Google's knowledge graph are out there.
For starters, you have things like Wikidata[1] and dbPedia[2] which give you access to Wikipedia data in a structured form. Then you have datasets like OpenCyc[3] and Freebase[4] that you could include.
Then, there are tools like Stanbol[5] which can, to a certain extent, extract structured data from free text. Of course this isn't perfect, since you'd basically need to have solved AGI to do this completely. But you can get some "knowledge" from free text. Combine that with a crawling system like ManifoldCF[6] or Nutch[7] or something, and you could imagine building a pipeline to crawl websites and add to your knowledge-base.
If you decide to use RDF as the representation for the knowledgebase, there are things like Jena[8] that let you store and query your KB and do inference against it. Do all that, and probably add in a little more AI / NLP and you can build your own knowledge graph.
OK, yes, the "add a little more AI" bit is kinda hand-wavy, but that's an area of open research. Still, there are practical things that can be done today... and if you're looking for a thesis topic, well, here ya go. :-)
It seems like a lot of people are moving into the space to be the provider for creating structured data. I haven't seen any applications that are building a knowledge graph like Google for other to build applications on top of. Google turned theirs into a "knowledge vault" in order to build their own applications on top of it. It seems like it would be a good space to do what Google is doing but open it up for other to build apps.
FWIW, the reason I'm familiar with the "stack" mentioned above is exactly because we're working on something like that. Our focus is more in internal knowledge than the general web, but there's no reason that overall methodology couldn't be applied more widely (although making it all scale is a technical challenge to be sure!). I could see us offering a "knowledge graph API" service of some sort down the road, depending on how other initiatives shake out.
@mindcrime has put a pretty extensive list and explanation.
The things is, you are probably looking for a solution that does the reconciliation of data arriving from multiple sources and formats for you and preferably exposes it over an easy to use API.
5 comments
[ 2.6 ms ] story [ 20.3 ms ] threadhttps://www.wikidata.org/wiki/Wikidata:Main_Page
For starters, you have things like Wikidata[1] and dbPedia[2] which give you access to Wikipedia data in a structured form. Then you have datasets like OpenCyc[3] and Freebase[4] that you could include.
Then, there are tools like Stanbol[5] which can, to a certain extent, extract structured data from free text. Of course this isn't perfect, since you'd basically need to have solved AGI to do this completely. But you can get some "knowledge" from free text. Combine that with a crawling system like ManifoldCF[6] or Nutch[7] or something, and you could imagine building a pipeline to crawl websites and add to your knowledge-base.
If you decide to use RDF as the representation for the knowledgebase, there are things like Jena[8] that let you store and query your KB and do inference against it. Do all that, and probably add in a little more AI / NLP and you can build your own knowledge graph.
OK, yes, the "add a little more AI" bit is kinda hand-wavy, but that's an area of open research. Still, there are practical things that can be done today... and if you're looking for a thesis topic, well, here ya go. :-)
[1]: https://www.wikidata.org/wiki/Wikidata:Main_Page
[2]: http://wiki.dbpedia.org/
[3]: http://sw.opencyc.org/
[4]: https://developers.google.com/freebase/
[5]: http://stanbol.apache.org
[6]: http://manifoldcf.apache.org
[7]: http://nutch.apache.org
[8]: http://jena.apache.org
Thanks for the response. Very informative.
The things is, you are probably looking for a solution that does the reconciliation of data arriving from multiple sources and formats for you and preferably exposes it over an easy to use API.
You can try http://unigraph.io, the API Sandbox (GraphQL) is available at: http://u01.unigraph.rocks and an extensive documentation covers it at: https://github.com/unigraph/docs/wiki
Currently Unigraph combines data from:
- wikidata
- geonames
- freebase
- crunchbase
- SEC EDGAR
- Companies House (UK).
A datadump is on its way and more sources will be added soon.
Disclaimer: I am building Unigraph, precisely for the reason of the question: "An open alternative to GKG".