News for hackers. Stuff that matters.
Re:How to recognize AI snake oil [pdf] by formalsystem on Tuesday November 19, 2019 @03:07PM (#21577678)
Over the years my heuristic has turned into: "Did the team formulate their problem as a supervised learning problem?" - If not it's probably BS.

In longform if anyone is interested https://medium.com/@marksaroufim/can-deep-learning-solve-my-...

EDIT: I would consider autoencoders, word2vec, Reinforcement Learning examples of turning a different problem into a supervised learning problem

EDIT 2: Social functions like happiness, emotion and fairness are difficult to state - you can't have a supervised learning problem without a loss function

Re:How to recognize AI snake oil [pdf] by drongoking on Tuesday November 19, 2019 @03:41PM (#21578033)
You miss the point of the slides. His point isn't about supervised vs unsupervised, it's about the general areas where AI seems to excel and fail. It's being used to predict social outcomes where it does very poorly, may be inscrutable, and is unaccountable to the public.

Your examples (deep learning applied to perception) are what he argues AI is generally good for.

Re:How to recognize AI snake oil [pdf] by xeRTRex on Tuesday November 19, 2019 @03:54PM (#21578174)
Auto-encoders have been more successful in fraud and anomaly detection then supervised methods. For the uninitiated: the basic concept is to reduce the feature space (i.e. the things you know) to a lower dimensional space, then decode back into the original space. When enough differences arise between the original and reconstructed variables, the event may be flagged for a human to review (or some triage process).
Re:How to recognize AI snake oil [pdf] by amelius on Tuesday November 19, 2019 @05:34PM (#21579054)
I wonder if a similar approach can be used for a classification task where one or more classes have only few training examples (those would be similar to "anomalies", I suppose).
Re:How to recognize AI snake oil [pdf] by chimi on Tuesday November 19, 2019 @05:34PM (#21579060)
It's hard to verbalize this, most of it is "intuition" but I think it boils down to "supervised learning is BS."

Humans are smarter than computers. How can a human teach a computer how to do something when the human itself can't teach another human that something?

We haven't solved that problem. The snake is eating its tail.

You can't teach a human how to do something when the methodology to do that is the student trying something and the teacher saying "Yes" or "No".

Well.... why? Why is it yes or why is it no? What is the difference between what the human or the computer, or in general, the student, did and what is good or correct? And then you still have to define "good" and many times that means waiting, in the case of the PDF linked to above, perhaps many years to determine if the employee the AI picked, turned out to be a good employee or not.

And how do you determine that? How do you know if an employee is good or not? We haven't even figured that out yet.

How can we create an AI to pick good employees if human beings don't know how to do that?

Supervised learning isn't going to solve any problem, if that problem isn't solved or perhaps even solvable at all.

In other words, over the years, my heuristic has turned into, "Has a human being solved this problem?" If not, then AI software that claims to is BS.

Re:How to recognize AI snake oil [pdf] by tensor on Tuesday November 19, 2019 @06:20PM (#21579445)
Supervised learning in machine learning is nothing remotely like a human teaching anyone anything. It's a very clear mathematical formulation of what the objective is and how the algorithm can improve itself against that objective.

The closest analogy for humans would be to define a metric and ask a human to figure out how to maximize that metric. That's something we're often pretty good at doing, often in ways that the person defining the metric didn't actually want us to use.

Re:How to recognize AI snake oil [pdf] by chimi on Tuesday November 19, 2019 @06:43PM (#21579629)
> Supervised learning in machine learning is nothing remotely like a human teaching anyone anything.

I disagree, I think it's exactly the same. As an example, a human teaching a human how to use an orbital sander to smooth out the rough grain of a piece of wood.

The teacher sees the student bearing down really hard with the sander and hears the RPM's of the sander declining as measured by the frequency of the sound.

The teacher would help the student improve by saying, "Decrease pressure such that you maximize the RPM's of the sander. Let the velocity of the sander do the work, not the pressure from your hand."

That's a good application of supervised learning. Hiring the right candidate for your company is not.

Re:How to recognize AI snake oil [pdf] by Thrymr on Tuesday November 19, 2019 @07:49PM (#21580087)
But that's not at all how "supervised learning" works. You would do something like have a thousand sanded pieces of wood and columns of attributes of the sanding parameters that were used, and have a human label the wood pieces that meet the spec. Then you solve for the parameters that were likely to generate those acceptable results. ML is brute force compared with the heuristics that human learning can apply. And ML never* gives you results that can be generalized with simple rules.

* excepting some classes of expert systems

Re:How to recognize AI snake oil [pdf] by chimi on Tuesday November 19, 2019 @09:10PM (#21580520)
One of the columns of sanding parameters is the sound of the sander.
Re:How to recognize AI snake oil [pdf] by bildung on Wednesday November 20, 2019 @06:56AM (#21583096)
Machine learning really almost nothing in common with most types of human learning. The only type of learning that has similarities is associative learning (think Pavlovs dogs studies).

The human learning situation you describe works quite differently, though: The student sees either the device alone or the teacher using the device to demonstrate its functionality. This is the moment most of the actual learning happens: The student creates internal concepts of the device and its interactions with the surroundings. As a result the student can immediately use the decive more or less correctly. What's left is just some finetuning of parameters like movement vectors, movement speed, applied pressure etc.

If the student would work like ML, it would: hold the device in random ways, like on the cord, the disc, the actual grip. After a bunch of right/wrong responses she would settle on using the grip mostly. Then (or in parallel) the student would try out random surfaces to use the device on: the own hand (wrong), the face of the teacher (wrong), the wall (wrong), the wood (right), the table (wrong) etc. After a bunch of retries she would settle on using the device on the wood mostly.

It's easy to overlook the actual cognitive accomplishments of us humans in menial tasks like this one because most of it happens unconsciously. It's not the "I" that is creating the cognitive concepts.

Re:How to recognize AI snake oil [pdf] by scarlatti on Wednesday November 20, 2019 @12:59AM (#21581436)
That is such a horrible metaphor
Re:How to recognize AI snake oil [pdf] by mark-r on Tuesday November 19, 2019 @06:30PM (#21579528)
> You can't teach a human how to do something when the methodology to do that is the student trying something and the teacher saying "Yes" or "No".

Strangely, I recently had to complete a cognitive test that was essentially that process. I was given a series of pages, each of which had a number of shapes and a multiple choice answer. I was told whether I chose the correct answer, then the page was flipped to the next problem. The heuristic for the correct answer was changed at intervals during the test, without any warning from the tester. I'm told I did OK.

Re:How to recognize AI snake oil [pdf] by chimi on Tuesday November 19, 2019 @06:58PM (#21579754)
You're touching on the "difficulty" in verbalizing it. I see what you mean, because you did learn that the heuristic was changing with just a yes or no. I said you can't teach that way, but you clearly learned that way, so I wasn't exactly correct, but I'm not practically wrong either still I don't think.

I wonder, how would an AI perform on the same test.

What is the mathematical minimum number of questions on such a test, subsequent to the heuristic change, that could guarantee that new heuristic has been learned?

I'm curious about the test. Did it have a name? What were they testing you for?

Re:How to recognize AI snake oil [pdf] by visarga on Wednesday November 20, 2019 @02:43AM (#21581892)
> I wonder, how would an AI perform on the same test.

This situation is called Multi-armed Bandit. In this setup you have a number of actions at your disposal and need to maximise rewards by selecting the most efficient actions. But the results are stochastic and the player doesn't know which action is best. They need to 'spend' some time trying out various actions but then focus on those that work better. In a variant of this problem, the rewards associated to actions are also changing in time. It's a very well studied problem, a form of simple reinforcement learning.

Re:How to recognize AI snake oil [pdf] by rusticpenn on Wednesday November 20, 2019 @04:28AM (#21582385)
If the rewards are changing, then isnt it a moving target problem?
Re:How to recognize AI snake oil [pdf] by gbear605 on Tuesday November 19, 2019 @08:23PM (#21580269)
Doesn’t it depend on what you mean by guarantee? The test can’t get 100% certainty, since theoretically you could be flipping a coin each time and miraculously getting it right, for 1000 times in a row. The chance of that is minuscule (1/2^1000), but it’s nonzero. So we’d have to define a cutoff point for guaranteed. The one used generally in many sciences is 1/20 chance (p = 0.05), so that seems like a plausible one, and with that cutoff, I think you’d need five questions passed in a row (1/2^5 = 1/32). Generally, if you want a chance of p, you need log2(1/p) questions in a row passed correctly. However, that only works if your only options are random guessing and having learned the heuristic. If you sorta know the heuristic (eg. right 2/3 of the time), then you’d get the 5 questions right ~13% ((2/3)^5) of the time, which isn’t inside the p = 0.05 range. So you also need to define a range around your heuristic, like knowing it X of the time. Then you’d need log(1/p)/log(1/X) questions. For example, if you wanted to be the same as the heuristic 19/20 times and you wanted to pass the p = 0.05 threshold, you’d need log(1/0.05)/log(1/(19/20)) ~= 59 questions.
Re:How to recognize AI snake oil [pdf] by mark-r on Wednesday November 20, 2019 @09:08AM (#21583983)
There were more than two possible answers to choose from on each page, so the odds of being right were considerably lower.
Re:How to recognize AI snake oil [pdf] by mark-r on Wednesday November 20, 2019 @09:05AM (#21583955)
I'm sure the test was a standard with a name, but I was never told. It was a small part of a 3 hour ordeal, evaluating my healing progress since suffering a brain injury in March.

I would agree that it's a very inefficient way of teaching something. It gave me an unexpected insight into machine learning though.

I'm sure the test was designed so that picking the same answer each time or picking one at random would result in a fail.

Re:How to recognize AI snake oil [pdf] by munin on Tuesday November 19, 2019 @09:30PM (#21580624)
Sounds like Ravens progressive matricies.
Re:How to recognize AI snake oil [pdf] by mark-r on Wednesday November 20, 2019 @03:05PM (#21587890)
Similar but not the same.
Re:How to recognize AI snake oil [pdf] by wilg on Tuesday November 19, 2019 @06:11PM (#21579376)
Well... why is it necessary that we can teach a human to do something in order to teach a machine to do it?
Re:How to recognize AI snake oil [pdf] by mark-r on Tuesday November 19, 2019 @06:23PM (#21579465)
Teaching a human is a heuristic for understanding the problem well enough to teach a machine.
Re:How to recognize AI snake oil [pdf] by chimi on Tuesday November 19, 2019 @07:21PM (#21579904)
I agree and rather than post a sibling response, I'll add that I think it's necessary today, simply because we don't have AGI, yet. And also point out that we are talking about determining if AI is snake oil or not. There may be some scenarios where we can teach a computer to do something we can't teach a human to do, I can't think of any off the top of my head, but if we can't, then I'm going to be super doubtful that an AI software can do it better than a human, if at all.

AGI, in the singularity sense, will be solving problems before we even identify them as problems. Experts in a field can do this for the layman already and I think it's possible. Some don't. I do.

It'll be super interesting when it flips! When the student becomes the master and we, as a species, start learning from the computer. You can kind of get a sense of this from the Deep Mind founder's presentation on their AI learning how to play the old Atari game Breakout. He says when their engineers watched the computer play the game, it had developed techniques the engineers who wrote the program hadn't even thought of.

Even still, the engineers could teach another human how to play Breakout, so yes, I do believe they did in fact create a software to play Breakout better than they could.

Re:How to recognize AI snake oil [pdf] by visarga on Wednesday November 20, 2019 @02:45AM (#21581903)
Same for AlphaGo, but it only works when you have access to cheap simulation (breakout being a game easy to run, Go being just a board). It doesn't work as well in situations where you don't see the full state of the system, or where there is randomness.
Re:How to recognize AI snake oil [pdf] by xorfish on Wednesday November 20, 2019 @08:25AM (#21583665)
AlphaGo did pretty well in Starcraft 2. Even though it is still pretty far from the best players in the world.
Re:How to recognize AI snake oil [pdf] by MaxBarraclough on Thursday November 21, 2019 @05:59PM (#21600686)
This simply isn't true. We know your intuition here is mistaken, as we have plenty of counter-examples.

The best chess AIs can beat any human chess player. They use techniques that were never taught to them by a human.

Another example: a machine-learning-driven computer-vision system predicting the sex of a person based on an image of their iris. No human can do this. [0]

[0] Learning to predict gender from iris images (PDF) https://www3.nd.edu/~nchawla/papers/BTAS07.pdf

Re:How to recognize AI snake oil [pdf] by gok on Tuesday November 19, 2019 @03:44PM (#21578062)
I don't follow that. The recidivism predictor was supervised. Conversely, AlphaZero is unsupervised and certainly not BS.
Re:How to recognize AI snake oil [pdf] by hervature on Tuesday November 19, 2019 @03:59PM (#21578223)
AlphaZero is not unsupervised. It is a reinforcement learning algorithm, it knows exactly what the outcome of the game is.
Re:How to recognize AI snake oil [pdf] by nokcha on Tuesday November 19, 2019 @05:28PM (#21578998)
The terms "supervised machine learning" and "unsupervised machine learning", by their ordinary English meaning, make it sound like all machine learning is partitioned into one or the other. But a lot of the literature in machine learning considers reinforcement learning to be neither 'supervised learning' nor 'unsupervised learning'. See, e.g., section 1.1 of [1].

[1] Richard Sutton and Andrew Barto, Reinforcement Learning: An Introduction, second edition. MIT press, 2018.

Re:How to recognize AI snake oil [pdf] by sanchezdev on Tuesday November 19, 2019 @03:31PM (#21577936)
I basically agree with this rule. I find that my colleagues who overly hype unsupervised approaches typically don't have much experience working on ML problems without labeled data. My suspicion of this comes from the fact that whenever I give a talk on ML I always have a wealth of personal experience to draw on for examples. My colleagues almost always reuse slides from projects they never worked on.
Re:How to recognize AI snake oil [pdf] by sillysaurusx on Tuesday November 19, 2019 @03:33PM (#21577952)
I'm a little surprised to see this sentiment. Some of the most important advances in the field have been unsupervised tasks:

- OpenAI: Dota 2 (PPO), GPT-2...

- NVidia: StyleGAN, BigGAN, ProGAN...

Re:How to recognize AI snake oil [pdf] by sanchezdev on Tuesday November 19, 2019 @03:36PM (#21577987)
Those are certainly important advances, but they don't really apply to most business needs for AI or ML.
Re:How to recognize AI snake oil [pdf] by MiroF on Tuesday November 19, 2019 @03:37PM (#21578007)
I work in the industry on NLP tasks. Unsupervised learning has been behind the largest developments in the last decade in the field.
Re:How to recognize AI snake oil [pdf] by sanchezdev on Tuesday November 19, 2019 @04:17PM (#21578395)
I don't disagree with your point, but the unsupervised aspect of NLP typically isn't useful on its own. Usually it's a form of pre-training to help supervised models perform better with less data.

From Google in 2018:

"One of the biggest challenges in natural language processing (NLP) is the shortage of training data. Because NLP is a diversified field with many distinct tasks, most task-specific datasets contain only a few thousand or a few hundred thousand human-labeled training examples. However, modern deep learning-based NLP models see benefits from much larger amounts of data, improving when trained on millions, or billions, of annotated training examples. To help close this gap in data, researchers have developed a variety of techniques for training general purpose language representation models using the enormous amount of unannotated text on the web (known as pre-training). The pre-trained model can then be fine-tuned on small-data NLP tasks like question answering and sentiment analysis, resulting in substantial accuracy improvements compared to training on these datasets from scratch."

Re:How to recognize AI snake oil [pdf] by MiroF on Tuesday November 19, 2019 @04:25PM (#21578478)
As I said, I'm an NLP researcher and practitioner, so you don't need to quote this at me.

The unsupervised aspect is the engine driving all modern NLP advancements. Your comment suggests that it is incidental, which is far from the case. Yes, it is often ultimately then used for a downstream supervised task, but it wouldn't work at all without unsupervised training.

Indeed, one of the biggest applications of deep NLP in recent times, machine translation, is (somewhat arguably) entirely unsupervised.

Re:How to recognize AI snake oil [pdf] by sanchezdev on Tuesday November 19, 2019 @05:52PM (#21579218)
I didn't mean to make it sound incidental although I do see your point. Just wanted to chime in with how important having a labeled dataset is for a successful ML project.
Re:How to recognize AI snake oil [pdf] by fspeech on Tuesday November 19, 2019 @08:39PM (#21580364)
I think the point is labeling itself is very difficult except for special and limited domains. Manually constructed labels, like feature engineering, are not robust and do not advance the field in general.
Re:How to recognize AI snake oil [pdf] by sanchezdev on Tuesday November 19, 2019 @09:29PM (#21580621)
That makes sense. I'm coming from the angle of applied ML where solutions need to solve a business problem rather than advance the field of ML. In consulting many problems can't be solved well without a labeled dataset and in lieu of one, less credible data scientists will claim they can solve it in an unsupervised manner.
Re:How to recognize AI snake oil [pdf] by MiroF on Tuesday November 19, 2019 @11:14PM (#21581034)
For sure. There are counter-examples however - fully unsupervised machine translation for resource poor languages comes to mind and is increasingly getting business applications.

I think that in the future, more and more clever unsupervised approaches will be the path forward in huge AI advances. We've essentially run out of labeled data for a large variety of tasks.

Re:How to recognize AI snake oil [pdf] by Der_Einzige on Tuesday November 19, 2019 @03:39PM (#21578021)
Echo the other commentator. Unsupervised techniques are the only reason NLP works as well as it does.
Re:How to recognize AI snake oil [pdf] by zamubafoo on Tuesday November 19, 2019 @03:37PM (#21578002)
I would argue that GAN's by definition aren't unsupervised, they just aren't supervised by humans. Additionally, OpenAI's game stuff also has similar arguments against it.
Re:How to recognize AI snake oil [pdf] by MiroF on Tuesday November 19, 2019 @03:38PM (#21578013)
> I would argue that GAN's by definition aren't unsupervised

You can define the terms how you want - but in terms of how they're understood in both industry and academia, you are incorrect.

Re:How to recognize AI snake oil [pdf] by hervature on Tuesday November 19, 2019 @04:02PM (#21578263)
The discriminator definitely is supervised but the generator is unsupervised. I.e., it has no labels on its targets.
Re:How to recognize AI snake oil [pdf] by sillysaurusx on Tuesday November 19, 2019 @04:12PM (#21578342)
I'm not sure that's correct. The discriminator and the generator both learn to match a training set. You don't need to label the training set at all. You can just throw 70,000 aligned photos at it.

I think I see what you're saying, but that might be a different definition of "supervised". It seems impossible for one half of the same algorithm to be supervised and the other to be unsupervised. But I like your definition (if it was renamed to something else) because you're right that the discriminator is the only thing that pays attention to the training data, whereas the generator does not.

Re:How to recognize AI snake oil [pdf] by fyp on Tuesday November 19, 2019 @03:51PM (#21578139)
There's a lot of gray area between unsupervised and supervised learning. For example self-supervised learning: https://www.facebook.com/722677142/posts/10155934004262143/
Re:How to recognize AI snake oil [pdf] by confrnz on Tuesday November 19, 2019 @03:52PM (#21578148)
Ironically, the algorithm you pose in that comment itself, is a BS algorithm in it of itself.

"Formulate the problem as X" - what is your input for how a problem is formulated? That you personally like how it was formulated?

"Probably," - OK, so you assign probability scores? Or do you mean, "likelihood based upon my guess?"

Finally, how do you measure performance? Your own assessment of how good you were at it?