Erwin Van Lun - Jan 6, 2012:
Is it hot during the summer?
Is ice cream cold?
Was George Washington a president of the United States?
Is 3 times 9 equal to 27?
The first two questions are subjective, it depends on how experience hot and cold and in which context the question was raised.
I think the point was more—how do those input strings get parsed to deduce what the user is asking, and not so much caring about the “correct” answer.
If the input question is subjective, the answer can be subjective… as they say, “garbage in, garbage out”.. or ‘ask a stupid question, get a stupid answer’
Actually, just by the fact that the user specified such a general , broad, and very non-detailed question, implies they would probably be happy with a very general answer. If not, the bot should “educate” the user (that is, give them a list of “parameters” they need to specify for a more useful answer). Perhaps the bot could have two modes “casual conversation” or “scientific mode” !
More importantly than the “correct” answer is understanding what the input question really means.
However, I do agree, that the system should have the functionality to deduce *that* the input was subjective. But again, what is the VITAL thing here? UNDERSTANDING, yes. The system must determine that the input is, first of all , of course, a question, and secondly that it is a subjective question. (‘Hot in the summer, well, depends, how many degrees C or F do you consider ‘hot’?), or be funny (‘actually, compared to the core temperature of the sun, it is extremely cold in the summer), or “general subjective input , general subjective output”, ‘is it hot in the summer’, ‘yes, a lot hotter than the winter’. These answers aren’t wrong, if they are, the input question is ‘wrong’.
The system should also understanding *dependencies*. Hot in the summer.. well, even here in Canada (believe it or not), it -is- ‘hot’, but further south, it is even hotter. Thus, the system, knowing that “location” is a dependency of answering ‘is it hot in the summer’, should ask a clarifying question.
input: [is it hot in summer]
use knowledge base : deduce that “location” is dependency.
return: “Depends, where are you?” , response ‘Canada’
answer - The average summer temperature in Canada varies between 25 and 30 C.
or, perhaps if user entered Mexico, then answer “Average between 35 and 40 C”
This ability, to determine what dependencies are there, and asking to clarify, will be the next generation of search engines. Right now you enter you string into Google and cross your fingers, there is no such functionality—except of course the cool misspell feature they have “Did you mean _____” which I think is great, but a ‘far cry’ from full blown NLU.