Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> or useable only in specific contexts or with specific words.

A good example of this is the Winograd Schema. You might think you can figure out a good algorithm for anaphoric resolution (i.e. If you see "Sally called and she said hello.", who is "she"?) that just relies on the structure of a sentence, without considering semantics.

But here's a counterexample:

"The city councilmen refused the demonstrators a permit because they feared violence."

Who are 'they'?

"The city councilmen refused the demonstrators a permit because they advocated violence."

Now who are 'they'?

If you're like most people, even though only the verb changed, the binding of 'they' based on the deeper semantic meaning also changed.

These sentences are called Winograd Schema[1], and there are plenty more like it.

[1] https://en.wikipedia.org/wiki/Winograd_Schema_Challenge



This is a recognized problem and is called Word Sense Disambiguation. It's hard but not intractable. One issue is that such sentences are themselves ambiguous and even human readers may disagree on their meaning. A statistical system can make a guess based on a large corpus of word-context pairs, which can approximate what a human does when attempting to disambiguate the meaning. It won't be perfect, but again, part of this is due to the fact that the sentence as it stands alone is insufficient.

Presumably, such sentences would be contained in a paragraph that would provide additional clues as to whom the word 'they' refers. Given additional context, you could then ask, "were the protesters or the councilmen fearing violence?" Document summarization and fact extraction systems could then approximate humans in such a task.

What's interesting is that word sense ambiguity underlies a lot of comedy. For instance, "Time flies like an arrow; fruit flies like a banana." The close juxtaposition of the word "like" being used in two different contexts is what makes this sentence "funny". I think it's not too far off to say that we could eventually teach AI systems to recognize humor.


Just wanted to say thank for a great and interesting comment. Never seen the complexity of NLP summed up so well.


re the council people sentences: I don't understand the problem. they're ill-defined sentences. we use heuristics to parse them but those heuristics can fail (the council denied the demonstrators permit because they feared violence... and the council was obliging). just teach the computer the heuristics like we learn them.


That's exactly the issue. The way we learn them is through world experience, which is sometimes hard to figure out how to transfer into a computer.

Example:

"I dropped the egg on my glass living room table and it broke!"

"I dropped my hammer on my glass living room table and it broke!"

These are both ill-defined semantically, but if you asked most native English speakers "what broke" for each sentence, they'd probably say "egg" for the first and "table" for the second. It could be the other, but it would be surprising. So, to solve just the "Dropped X on Y, Z broke" problem, we'd need to teach the computer to understand the effect of the relative 'fragility scores' of each object. Personally, I never sat down and memorized a chart of these as a human. You could perhaps use machine learning to derive the data by analyzing a large corpus of text[1], and match humans most of the time, but then that's just one sentence type solved, out of any number of other tricky constructions. So the long tail of semantic understanding quickly becomes a very fun set of problems to solve, for certain definitions of fun. :)

A few more examples to consider how you would teach a computer to understand, from a Winograd Schema corpus[2]:

John couldn't see the stage with Billy in front of him because he is so [short/tall]. Who is so [short/tall]?

The sculpture rolled off the shelf because it wasn't [anchored/level]. What wasn't [anchored/level]?

The older students were bullying the younger ones, so we [rescued/punished] them. Whom did we [rescue/punish]?

I tried to paint a picture of an orchard, with lemons in the lemon trees, but they came out looking more like [light bulbs / telephone poles]. What looked like [light bulbs / telephone poles]?

[1] e.g. http://cs.rochester.edu/research/lore/

[2] http://www.cs.nyu.edu/faculty/davise/papers/WinogradSchemas/...


Reading this post, I get the feel that none of the AI training could be as good as humans until we train all human perceivable aspects together. An entire human brain equivalent.

OR are we just well-designed-auto-trained Neural network. :D


That's pretty cool. I wonder if the recent work on caption generation mixed with video understanding can get some sense of likelihood of disambiguated sentences to evaluate possible hypotheses.


I wonder if at least in the context of chat bots these kinds of problems are mitigated or avoided by the conversational nature of these bots.

In the glass table example, the bot could be explicitly 'dumb' or pedantic and ask for clarification. Or perhaps even better, the bot could simulate natural conversation: assume one or the other (with maybe a dash of built-in knowledge about the world), make that assumption explicit to the user, and allow the user to correct it. This might even make the bot more human and pleasant to interact with.


context is everything.

"A violent mob requested a demonstration from the councilmen. The councilmen refused the permit, because they feared the violence."

I suspect, grammar begets normalization, with primary and secondary keys just like in relational databases. People are just not very good at it. EG. I'd contest the consistency of those 1000 grammar rules. Point in case, the word "violence" needs the definite article, because violence is an abstract concept (which the parent missed). All the while the indefinit and definit articles serve other purposes, eg. the quantifiers from logic (for all, there exists) which are at odds with the naive countability of the violence.

So Language is ambiguous, NLP is done probabilistic and thus is hard with at least exponential complexity.

Edit: What I mean is, the problem here is contraction omitting context. Of course databases worked before relational databases, but sometimes you really want the third normal form.


> Point in case, the word "violence" needs the definite article, because violence is an abstract concept (which the parent missed).

No, searching for "inciting violence"/"fearing violence" in Google gives thousands of hits. (Also in Google Books, if you want to claim all these websites are wrong.)

It is perfectly OK to use "violence" without an article.


OK, I'm not a native speaker and admittedly didn't reaffirm my claim before posting. Anywho, the headline and newspaper speak is not exactly the propper grammer I am talking about, right?

Wouldn't omitting the the in my sentence mean, they feared violence in general? Sure, broad contracts are welcome, but then there couldn't be a specific answer to who they are. I guess that's in agreement with what you said.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: