How does Facebook Graph Search work?

I assume that I am on thin ice in relation to a question that can be answered, instead of just discussing it with my research, Facebook Graph Search seems to be in stealth mode, while Facebook does not officially share anything other than this.

I am wondering how facebook makes this work. So I played with OpenNLP and POS Tagger (parts of speech). It’s so far with me, but then it became clear how many nuances exist with the natural language, it seemed to know this, but did not respect it until I hacked something together.

So, I got to this -

[Debug] Question :: Friends from France who like England [Debug] Token = Friends :: POS = NNS [Debug] Token = from :: POS = IN [Debug] Token = France :: POS = NNP [Debug] Token = who :: POS = WP [Debug] Token = like :: POS = VBP [Debug] Token = England :: POS = NNP 

Where POS is part of speech as described here

I assume that from there I can take POS tags and where do I have a set of rules for finding similar terms in my scheme? The rules seem fragile. Maybe I should have an ontology to have something connected with a friend, somewhere like? The problem seems to be “easier” for three-dimensional storage, where semantics are already flagged, for example. “James”, “loves”, “England”, and I have one more three, where “James”, “originally from”, “France”, in fact, just simply joins SQL.

This is purely academic, a little hacked in the evenings. I'm just wondering how this works for them. This google search brings up some interesting things.

So specific questions, how does scheduled search work? How does natural language compare with which query / data store they use? Other than Wolfram Alpha, are there other good examples of this kind of thing? Is there something open source? What concepts of computer science are used here, what should I go and read?

Greetings

David

+4
source share

All Articles