News for hackers. Stuff that matters.
Re:How to solve most NLP problems: a step-by-step guide by odonnellryan on Wednesday January 24, 2018 @12:33PM (#16224485)
I am not sure how many people have an issue with this, but it seems to me that computer science, just over the relatively short time I've been paying attention, is becoming more-and-more abstract in a lot of ways.

You can code something incredibly complex that works great without understanding any of the math underneath. Understanding the math arguably makes you a better engineer overall, but isn't required to solve many of these problems.

I think it's pretty cool, but I'm sure a lot of people have a big issue with the "just TRUST the library!" approach.

Re:How to solve most NLP problems: a step-by-step guide by TeMPOraL on Wednesday January 24, 2018 @01:22PM (#16224964)
Layers are good. They allow our limited mind to deal with more and more complex problems. The issue forms when layers are inadequately described, or blackbox things they shouldn't. The worst form of this issue is when people start writing introductory documentation as if it was a marketing copy.

A fair introduction to a library would be like this: "This library lets you make X, Y and Z from A, B and C. It does so using mathematical methods 1, 2, 3 - therefore, it will be great for this-and-that type of A-B-C, but will not perform well for some-other-type." Such a description will tell you where the limits of applicability are, and what to look for if you want to understand more.

(Also, neural network libs should come with a big, bold caveat: "this is magic, only 10 people on the planet know how the whole stack works; the rest of us just perform a ritual on a cluster of GPUs and pray that thus summoned entity will do sorta ok-ish job with our problem (and if it doesn't, you're on your own)".)

Re:How to solve most NLP problems: a step-by-step guide by zzz95 on Wednesday January 24, 2018 @12:49PM (#16224650)
I understand what you are saying and I agree with it too. What you are worried about, is what happens in the short term. But, in the long term, as the technology matures, this is what should be happening. It will become an easy to use black-box which works for almost 99.99% of the cases and gracefully handles the remaining cases. You will no longer need PhDs to use the black-box, only to develop them. For e.g., look at numerical analyses toolboxes, like automatic integrator. Even if you do not understand the underlying system of differential equations, the libraries just work or throw a nice legible error. They encapsulate a ton of ugliness inside, but that is all right as long as the solutions are predictable.
Re:How to solve most NLP problems: a step-by-step guide by has2k1 on Wednesday January 24, 2018 @04:39PM (#16226566)
Really interesting view point. When the convenience of use improves along with the performance of the methods, then we worry less about not understanding how the methods work.

In the broad sense, isn't this an example of how we trust?

Re:How to solve most NLP problems: a step-by-step guide by losteric on Wednesday January 24, 2018 @01:31PM (#16225036)
The key is building the right abstraction layers - clean separation of responsibilities into black boxes. Outside of security, no one complains about trusting the heap of abstractions that interpreted languages depend on... interpreters, compilers, operating systems, hardware... clear layers.

I don't think machine learning and NLP has reached that point. Largely because the field is based on probabilities and tunable parameters which are hard to expose without complexity, and hard to trust when they aren't exposed.

Re:How to solve most NLP problems: a step-by-step guide by IanCal on Wednesday January 24, 2018 @01:09PM (#16224841)
This has been the case throughout the history of computers and many other things.

We build layers on top of layers on top of layers.

Occasionally this causes problems. Often it solves them.

Re:How to solve most NLP problems: a step-by-step guide by hathawsh on Wednesday January 24, 2018 @12:43PM (#16224588)
Surely this is a good thing, though. Computers now span every field and it's not feasible to know the math behind all types of software. It's better to go deep in a few areas and let other people take care of the rest.
Re:How to solve most NLP problems: a step-by-step guide by fnl on Wednesday January 24, 2018 @03:24PM (#16225978)
Well, the 80% accuracy the author reaches isn't anywhere near what you need in production for text classification. Imagine classifying all of Twitter with that... I don't want to make this look bad - the author did a great job at this "introduction to text mining" article. But the results are a far cry form prediction ready, as I hope would be obvious: Anything but a tiny false positive rate will just produce infinite false alarms (or miss all relevant cases).
Re:How to solve most NLP problems: a step-by-step guide by amelius on Wednesday January 24, 2018 @01:25PM (#16224979)
> it seems to me that computer science, just over the relatively short time I've been paying attention, is becoming more-and-more abstract in a lot of ways.

But can we still call it computer science? It seems to me more like linguistics / mathematics / statistics, with the CS only to do the low-level computations and accounting of data.

Of course, if you build a global-scale efficient search engine with it, the role of CS may become bigger.

Re:How to solve most NLP problems: a step-by-step guide by maksimum on Wednesday January 24, 2018 @01:35PM (#16225074)
As a computer scientist I think we benefit as a group from having NLP fit under computer science, so yes I think we should call it computer science. The overarching question is: why does it matter what we classify NLP as?
Re:How to solve most NLP problems: a step-by-step guide by chaoky on Wednesday January 24, 2018 @07:47PM (#16227794)
NLP is a domain specific problem. Of course it shouldn't be under computer science. Pure computer scientists are much less useful than linguists for these things. That's like arguing that building physics simulations is under the realm of computer science. You'd want your team to be mostly linguists, some which specialize in computational linguistics. A vanilla computer scientist, to be frank, is almost useless, especially at the PhD level.
Re:How to solve most NLP problems: a step-by-step guide by amelius on Wednesday January 24, 2018 @01:43PM (#16225154)
I think it matters because it determines what kind of people you would hire to do the R&D.
Re:How to solve most NLP problems: a step-by-step guide by testouts on Wednesday January 24, 2018 @12:41PM (#16224578)
yes , in the new world we will need shitty engineers and good engineers ... and we will not need ditch diggers as cashiers as much

but we ill make the shitty engineering jobs as easy as being a cashier.

and life goes on...