Consider this sentence:
“I am a Giant fan”
Are you talking about the NFL, the MLB, a grocery store…or maybe a person, a place, or even a thing that you just like a lot?
Without any additional clues, which conversation do you think occurred?
“What is your favorite NFL team?”
“I am a Giant fan”
“What baseball team do you follow?”
“I am a Giant fan”
“What grocery store do you shop at?”
“I am a Giant fan”
“What do you think of Eminem?”
“I am a giant fan”
My point is, in real communication, context makes a HUGE difference. And I believe in the absence of context, the human brain actually uses our own personality and opinion to form context.
For example, out of context if I hear the above sentence, I initially think of the New York Giants football team because, I’m personally a huge NFL fan.
It’s only after I hear a bit more, or take a visual cue or two from the person making the statement that my mind is able to shift to one of the other options (oh, the person is talking about music with a friend, they probably mean they are a giant fan of some type of music).
The human brain defaults to these associations and picks up on subtle context very easily and VERY quickly (usually without us even being conscious of doing it)…but if you think about it, it really takes us years to learn these skills (ie. your childhood).
Computers on the other hand have been historically horrible at picking up on context (sadly they don’t get a childhood in which to grow and learn)…and the majority of the attempts to ‘fix’ this problem so far tend to take a statistical or probability approach (since we all agree that the computer is really good at math).
But I think this is ultimately a dead-end approach…or at the very least, a limited solution approach (math is a part of the solution, but really only 'part’ of the solution).
As humans, we generally don’t make decisions during conversation based on statistics or probabilities…if I hear you say “I’m a Giant fan”, my brain doesn’t think “56% of males in NY who say this statement are referring to the New York Giants football team, so I’m going to assume that’s what you mean.”
Instead, I’m going to default to one of two decision paths to determine what you mean.
I’m either going to base it on what I know about you and our current context (ie. what we are actively talking about).
Or barring that information, I’m going to base it on me and what *I* would mean had I said the line.
So - how do we get a computer to make this same type of decision?
It’s a very tough problem, but I think a good solution starts by helping the computer to learn as much as it possibly can about a person or a situation and only *then* applying an algorithm (or other fancy math and logic) to make a decision.
The knowabout.it approach does just that.
We start by collecting as much information as we can about our users and the current situation they are in (who they say they are, what they themselves are talking about, as well as who they follow and what those people are talking about too).
Then with each bit of content that comes through our system, we apply what we’ve learned about each user (on a one-to-one level) to that content to make a 'best guess’ at the context of that content (this is where the fancy math and logic really goes to work).
After all of that, we can then make a decision on how 'relevant’ each bit of content is a user’s current context.
So, going back to our example, on a general level when knowabout.it sees the sentence “I’m a Giant fan”, we can make a reasonable guess on a per-user basis of what the content is referring too and how relevant it might be to their current context.
Sure, it’s not perfect (yet), but the approach has already been producing some amazing results in just helping to point out the things passing through our users streams we think they might want to know about…and that’s just the initial use case we have released for this technology.
As we can adapt and evolve this approach we can start to have knowabout.it make even more interesting and useful decisions (and discoveries).
For example, imagine that we take all the open job listings on the internet and apply our knowledge set to it for each of our users…we should be able to make pretty good decisions on which jobs may or may not interest each user (which could become a great little tool that is always looking out for dream job situations for you, even when you aren’t actively looking for a new job!)
Or, along the same lines, imagine that we throw dating profiles at our system…we could make pretty good suggestions on which profiles are most likely relevant to each of our users…not on a high level, but on a personal, one-to-one level.
And for those of you more interested in money…well…imagine that we took a large set of brand profiles and threw them at our system. Again, we should be able to make pretty good recommendations on brands that would fit well with our users on a one-to-one basis.
Really, once you have a computer driven, contextually relevant, decision process/system…the applications are basically limitless.
Now to be fair, even though we’ve been working on this approach and system for a little over a year now, we are still in the infant stages of how this all needs to work.
Our context gathering system and algorithms are showing great results…but we have millions of improvements in mind already (seriously, and we come up with more every day)…so it’s probably going to be a very long time before we are at a stage that even comes close to what the human brain can do almost effortlessly…but that’s what we are dedicated to working towards and figuring out.
…and that’s why I get so excited thinking about the potential of knowabout.it, the approach Will and I have been working on for the past year, and all the great things we are getting really close to being able start to achieve.
This post has received 40 loves.
Kevin has a day job as CTO of Veritonic and is spending nights & weekends hacking on Share Game Tape. You can also check out some of his open source code on GitHub or connect with him on Twitter @falicon or via email at kevin at falicon.com.
If you have comments, thoughts, or want to respond to something you see here I would encourage you to respond via a post on your own blog (and then let me know about the link via one of the routes mentioned above).