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

My point is, for any given computer program, a human, given enough time, can sit down with pencil+paper and figure out the output given an input.

If humans can't yet detect sarcasm accurately, that is evidence that it will be near impossible to do it programmatically.

Edit: I'm not saying to not try. Clark's first law says we should always try things, even the crazy stuff. (as you can tell I like my eponymous laws).



> My point is, for any given computer program, a human, given enough time, can sit down with pencil+paper and figure out the output given an input.

No human is ever given enough time. If you're not done in a hundred years (tops) -- you'll never get done.

It's an interesting thought that a program that has access to a "Total Intelligence Awareness" feed, might actually have more context than any one human has (and can possibly have) -- and by extension be better at detecting sarcasm.


You have missed the point it seems. The actual amount of time is irrelevant. If a program can get an answer given some input, so can a human (given infinite time). If a human can not get reliably get an accurate answer to something (given infinite time), no machine can. That isn't a guess or a hypothesis, that is just how programming works.


    >> No human is ever given enough time.
    >
    > You have missed the point it seems. The actual amount of time is
    > irrelevant. If a program can get an answer given some input, so
    > can a human (given infinite time).
I'm not entirely sure what you mean by "a human (given infinite time)" -- what does that mean in terms of contrast to a (Turing) machine?

We do absolutely know that humans are fallible, so even if a human has enough time, and enough paper -- there is no guarantee that a human can duplicate the effort of a machine in following an algorithm.

You are assuming both the human and machine are given the same input (perhaps you think of only looking at the tweet in isolation). This might be how a human would intuitively try to determine if a given tweet is sarcastic. The machine might be able to look at and review the authors entire corpus of written statements, the authors movements in the past 20 years, analyse all tv programs and other writings the author has ever referenced along with an exhaustive study of all events in the authors life --- In short --- a human might not have "enough time" to "figure it out with pencil and paper" in the same way the machine can.

So, I agree with your initial point: If we cannot define what it means to tell if something is sarcasm or not (do we for instance care what the author meant, or only how the author was perceived? Can we be certain that the author knows if he/she is being sarcastic?) --- then how can a we program a machine to tell the difference?

On the other hand, if we can agree on some rules for what we might more likely consider to be sarcastic, it isn't entirely impossible that that algorithm can use so much data to draw its conclusions, that it would in effect be impossible for a human to verify -- because a human doesn't have infinite time. Or in other words: it's not inconceivable that we could create a system, that ends up being better at telling sarcasm from honest opinion than humans are. But it is likely that such a system would come to its decision in a very different way than a human would.


You are getting hung up on the practical. The rule that "if a program can compute something, then so can a human" is theoretical. It has nothing to do with how long it would actually take a human to do something. Obviously humans make mistakes and won't live long enough to completely walk through even some of the more basic sorting algorithms given a large enough list.

The rule is one method to determine if a program is theoretically possible or not.

For example, writing a program to determine if a given piece of code contains an infinite loop is impossible.

Read up on Computability and Decidability for more examples of things that are impossible to write programs for.


Yes, I'm familiar with the theory of computation, I'm just not sure it applies to the ability to determine if a tweet is sarcasm or not. Or, put it another way, if a human had enough time and the ability to access the amount of data a computer system can, perhaps the human would better be able to determine if a given tweet is sarcasm, than the same human without such help.

I do agree (with you and Pope) that sarcasm might be indeterminable in the general case. Now, if a computer system that has superhuman domain knowledge of the author can tell if a tweet is sarcastic, but a human can not -- is the tweet then, in fact, sarcastic? I'd say that's an open question.


That's not necessarily true. We have already written programs which are able to come to conclusions which are not obvious from a human perspective. This is fairly common with big-data algorithms where a human just can't see the same pattern because we have different limitations in our ability to process mass amounts of data. My point was that it is human nature to build tools which allow us to exceed our own limitations. Sure, from my vantage point I see little reason to be optimistic about an algorithmic solution to sarcasm detection, but "if man were meant to fly he would have been given wings."

Also, the example I gave is a simple solution: mind reading is a trivial solution to sarcasm detection, and it is not inconceivable from our current point of technology.




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

Search: