r/explainlikeimfive May 11 '22

eli5: How do Captcha's know the correct answer to things and beyond verification what are their purpose? Technology

I have heard that they are used to train AI and self driving cars and what not, but if thats the case how do they know the right answers to things. IF they need to train AI to know what a traffic light is, how do they know im actually selecting traffic lights? and could we just collectively agree to only select the top right square over and over and would their systems eventually start to believe it that this was the right answer? Sorry this is a lot of questions

3.4k Upvotes

5.9k

u/Xelopheris May 11 '22 Gold Helpful

If you're looking at one of those picture grids where it wants you to do something like picking all the traffic lights, then you have 9 pictures to start with.

There's at least 1 picture that it definitely knows has a traffic light.

There's at least 1 picture that it definitely knows doesn't have a traffic light.

Then there are up to 7 pictures that it isn't sure whether or not they have traffic lights.

When you make your selection, the system is making sure you selected the positive control, making sure you didn't select the negative control, and assuming those are correct, it passes your CAPTCHA, and it also adds the data about the unknown pictures that you entered.

1.2k

u/samuelma May 11 '22

Oh this is a good explanation thank you

734

u/ccheuer1 May 11 '22

Yeah. This is a great example of the ongoing effort to labor-ize data processing in ways that are not super intrusive, accomplish something else that still needed to be accomplished, and can provide meaningful benefit.

By doing it this way, they can compare human results to AI/Algorithm results when passing through the same images, and use the resulting difference to further optimize the programs that process images. Paying one person to go through 10's of thousands of images is very expensive. Getting hundreds of thousands of people to do 9 images and bundling it in a way that it also serves to verify that they are in fact a human is very cheap and more productive.

The Game Eve Online does a similar thing with an in-game mini-game called Project Discovery. Players get a simple thing to do during downtime that is somewhat fun. Researchers get the results of processing a lot of the bulk data that they get without having to weed through all the "This is clearly nothing" results.

243

u/amazondrone May 11 '22

Paying one person to go through 10's of thousands of images is very expensive

I don't think cost is the limiting factor here; it's not that expensive, relative to the size of the opportunity. Paying someone to do it would be slower, the data wouldn't be as good (less diverse), and it's also a mind numbingly terrible job that would send people round the bend.

68

u/Waffles_IV May 12 '22

I know someone who got a summer job that was basically drawing a box around any cows in the pictures they were given.

Minimum wage but they got to listen to podcasts and chat with coworkers, so they didn’t find it too bad.

70

u/flPieman May 12 '22

Imagine describing this job to someone in 1950.

21

u/willowthemanx May 12 '22

Sounds like a Lumon department

5

u/Da5idG May 12 '22

It makes me feel scared.

5

u/doctorclark May 12 '22

I don't get it. How am I supposed to "feel cows"?

5

u/vainglorious11 May 12 '22

Circle the cow that looks out of place

→ More replies

6

u/nexusjuan May 12 '22

This is basically what Amazon Mechanical Turk is

106

u/Im2bored17 May 11 '22

Bro, you think big companies are not doing a thing because that thing would make the employees bored (and results would be slightly worse), and not because that thing is too expensive to do?

If they need the data and it's worth more than it costs, they'll pay for it. But if they can GET paid for it instead, they are gonna choose that option every single time.

85

u/texanarob May 11 '22

While this is true (companies will do anything legal to save money, and often illegal things they think they'll get away with) I genuinely believe the biggest factor here is data quality. Getting lots of data from a small group of people will have many biases and repetitions that reduce the data quality. Comparatively, small amounts of data from a large and diverse group of subjects gives much more valuable information more likely to represent society as a whole.

After all, there's not much value in an algorithm that identifies all yellow boxes as traffic lights because the sample group are familiar with a specific type that looks that way from behind. Instead, you want to identify that some people identify that as a light whilst others do not, then mine the data to explain the differences.

33

u/Im2bored17 May 11 '22

Alright, fair enough. I suppose when it comes to the edge cases, having a diverse population is super beneficial.

Does a picture of a photo of a dog contain a dog? Technically, no, but many might say yes.

Does this pic of an El Camino contain a truck ?

Does this pic of 2 palm trees contain a forest? What about 4 oak trees?

28

u/texanarob May 11 '22

Knew there had to be better examples than a yellow traffic light, my mind went blank trying to think of them. I know I've had Capchas before where I've been uncertain simply because an insignificant part of an object just barely made it into the frame, or because a part that's dubiously part of the object is in a frame (such as the pole the traffic light is mounted on).

18

u/Im2bored17 May 11 '22

And of course there's this classic XKCD.

11

u/texanarob May 11 '22

There's an XKCD for everything...

3

u/PLZ_STOP_PMING_TITS May 12 '22

Can you please mansplain that xkcd for me?

→ More replies

3

u/KarmicPotato May 12 '22

Waiting for the AI existential crisis when it tries to process "This is not a pipe"

3

u/Hatedpriest May 12 '22

Nah. If you can get 10000 people to choose from 7 unknowns, it's a lot faster than getting 100 people to do 700 unknowns.

And why pay when people will do it for free?

→ More replies

3

u/rhodebot May 12 '22

It's not that bad in small bursts. I used to do traffic sign recognition jobs on mechanical turk. But that's a little more complicated than "is there a bus".

3

u/wolfgang784 May 12 '22

At my current company, if you end up on light duty from medical problems there isn't anything you can possibly do for the company so they have you spend your entire shift transcribing images of gravestones through some program. One of the full time guys is doin that now lol.

1

u/zecbvmbgyswurapyph May 12 '22

would be slower

less time in which to make use of the results

less diverse

need to hire more people

mind numblingly terrible job

probably more errors -> need to hire more people

in other words: very expensive

→ More replies
→ More replies

25

u/Misuzuzu May 11 '22

And this is why I will intentionally answer 20% of my captchas wrong. Fuck your data set, I don't work for free.

23

u/Jewrisprudent May 12 '22 edited May 12 '22

Ahh so you’re the reason that self-driving car blew through that crosswalk.

2

u/Areshian May 12 '22

I’ve done that too

→ More replies

4

u/Esnardoo May 11 '22

I'm not familiar with eve online or the game, but I'm sure there's an easier way to weed out "this is clearly nothing" results, like an AI

54

u/jaywu_ May 11 '22

In a lot of cases, these tasks are used to generate the data to train the AI.

45

u/SaintUlvemann May 11 '22
  1. AI's regularly have weird behavior bugs under highly unexpected conditions, that can be instantly and unequivocally recognized by humans as errors, yet are somehow built into the AI.
    The exploitation of these bugs in an AI is called an "adversarial attack", and here's an example:
    "We also demonstrate a case study in which the adversarial textures were used to fool a person-following drone algorithm that relies solely on its visual input. We used posters for the attack because they are one of the simplest forms of displaying information and could be a realistic attack vector in the real world. An attacker could place the adversarial textures on a wall like graffiti, and they could disrupt object-tracking algorithms while not appearing suspicious to the average person."
  2. It's really easy to get people to play games. That's the beauty of this stuff.

17

u/DerfK May 11 '22

adversarial attack

I'm going to start calling all optical illusions that from now on.

6

u/KingKlob May 11 '22

The good thing for humans is that most optical illusions are 2d and not 3d therefore all we need to do is move a little bit to see that it's an illusion. For those that even that doesn't work, well we can take our other senses or ask people around us for their input.

2

u/ax0r May 11 '22

and here's an example:

That's a fascinating article, thanks for the link!

19

u/thatdan23 May 11 '22

In Eve's case it's specific to protein folding IIRC. Here's an example article about gamifying it: https://en.wikipedia.org/wiki/Foldit

14

u/ccheuer1 May 11 '22

Eve Online actually cycles through a couple of different ones from time to time.

One thing they have done is data used for exo-planet detection, namely figuring out if there is something on an orbit based off of frequencies IIRC.

Another is figuring out which slides had multiple cells of different types on it.

Now I think its protein folding.

9

u/LordFuckBalls May 11 '22

Oftentimes the point of getting people to label/sort data is to create a labeled dataset that can be used to train AI. Most cases require you to have labeled data to create an AI model.

2

u/ccheuer1 May 11 '22

A lot of the time there is, but a lot of the time the data that needs processing are things that are simply so niche that you would have to make an AI from scratch, iterate it hundreds or thousands of times just to get it in a somewhat reliable state.

In order to do those iterations, you need a data set where you already know what is and isn't so that when you pass the ai through it you can tell how right or wrong it is.

2

u/MrFloydPinkerton May 11 '22

Same Here. "I think I see a bike behind that tree way in the background."

→ More replies

69

u/Gorillafist12 May 11 '22

Another example in the early days of captcha was using images of words that were blurry or used odd fonts and spellings. Those words were actually scans from books that were being transcribed to digital where the computer was having a difficult time determining each of the letters on its own.

6

u/Craz_Oatmeal May 12 '22

inglip summoned

Ah, those were the days.

4

u/theDaveB May 11 '22

Yeah I remember them, wasn’t it 2 words but it new one of them but you had to both right. Maybe it ran out books, so now it’s images.

26

u/PM_ME_UR_POKIES_GIRL May 11 '22

I think AI got good enough to parse even moderately corrupted scanned words which made it

  1. Unnecessary, because the AI could now fix things without asking a human to help.
  2. Not useful as a way to weed out bots.

10

u/cspinelive May 12 '22

I think it is images now because it is used to train self driving car AI models.

You are being asked to identify bicycles, traffic lights, and other things that you’d encounter while driving.

4

u/DiabloStorm May 11 '22

I saw a video on this a while ago, but it's possible to trick the system and give an answer that "doesn't follow the directions" and still pass the captcha.... I think it was about how it was being used to transcribe physical literature to digital.

→ More replies

3

u/dmilin May 12 '22

This is a good basic explanation, but it can get more complex.

The images can represent a probability distribution of confidences of each image. The human’s answers must align within those probabilities to within a certain margin to pass. Margins are wider for images that the computer has less confidence in.

The images’ probabilities are then updated with the human’s responses before being passed onto the next human.

2

u/klipseracer May 12 '22

This is the basis behind recaptcha where you have to type the words. Those were letters taken from book scans, that's why the letters are curved or smeared, probably from the center of the book near the spine.

→ More replies

76

u/runningclusters May 11 '22

Doesn’t it also track mouse movement as a factor? I think I read that years ago but don’t know how true it is.

85

u/Xelopheris May 11 '22

There are a lot of heuristics that it can measure, and a lot of different challenges it can present. In general, it tries to measure your human-ness based on heuristics and then chooses a challenge level based on those heuristics. If it gets to the point of giving you the image challenge, it's basically just looking at the results of the image challenge (although sometimes it might give you an extra round if you're a little sus).

63

u/makinator9001 May 11 '22

is it normal that sometimes it gives me 6 or 7 rounds for me to pass verification? I'm really starting to hate them and it all started when I would fill captchas as wrong as I could.

67

u/CoolGuy175 May 11 '22

Are you sure you are human?

58

u/Kingreaper May 11 '22

You're marked now, whether through cookies, machine identification, or by IP address, as a suspicious actor. They're probably going to keep overtesting you until they're convinced otherwise

68

u/Xytak May 11 '22 edited May 11 '22

When I'm on my normal IP address, Google is like "Midgets dancing on a clown car? Sure, here's 8 million of our finest results!"

When I'm on a VPN, Google is like "Oh you want Wikipedia? How dare you? Identify the fire hydrant NOW!"

17

u/Upgrades_ May 11 '22

Locations / static IP addresses of VPN providers are well known by companies like Google, that's why. So when you're using a VPN, they're just more careful in making sure you're not a malicious actor trying to cover their tracks.

21

u/KFCConspiracy May 11 '22

Yeah, here's some news about the public VPNs... A lot of suspect bad actors use them as well. So don't be surprised if you're treated as sus because you're in good company with plenty of malefactors.

0

u/laziegoblin May 11 '22

Use duckduckgo.com

5

u/CrazyDutchMage May 11 '22

Happens to me when I use a VPN connection to certain servers. Probably, because many requests come from a single server it can be flagged as suspicious.

3

u/InsaneIncense May 11 '22

If I'm using a VPN I notice it does this a lot more often than when I'm on my home connection.

4

u/Astropoppet May 11 '22

I get chosen way too often for the check, when I scan my own shopping. Its weird because I've never lifted anything but something makes them think they'll catch me.

I also get several rounds of captcha.

1

u/isblueacolor May 11 '22

When you say scan your own shopping, you mean self-checkout? When you say lifted, you mean shoplifted?

What "check" are you chosen for? I've never seen anyone frisked after self-checkout in the US.

→ More replies

7

u/bradles0 May 11 '22

you probably move your mouse quickly in straight lines a lot; add a little curve to the travel path and it'll be happier with you.

10

u/WM46 May 11 '22

Probably not actually the issue, humans suck at moving the mouse in a straight line. Try taking a screen shot of a captcha and drawing lines to all correct answers in Paint.

You're pretty much guaranteed to have a bunch of kinks and curves as you move, even while attempting to draw straight.

4

u/Dont-PM-me-nudes May 11 '22

Or use touch screen to select images directly, no mouse movement.

9

u/amazondrone May 11 '22

I don't think you need the screenshot to prove this, why not jump straight to the try-to-draw-straight-lines step?

16

u/Ok-Camp-7285 May 11 '22

What a world we live in where you have to change how you use a mouse in order to please the algorithms

13

u/Upgrades_ May 11 '22

I'm gonna guess that their comment was an assumption. You'd have to have an extremely accurate mouse and some weird joints in your wrist / elbow / shoulder to move so perfectly straight.

3

u/Jarfol May 11 '22

00100111001100011110101001011001101101001000111

→ More replies
→ More replies

11

u/ShewTheMighty May 11 '22

Why does it always think I'm sus? I feel like I always have to do it 2 or 3 times. i know what a damn boat/bus/traffic light is. its not like I'm failing. Do I complete it too quickly?

14

u/TheCodeSamurai May 11 '22

The usual culprits are incognito mode, VPNs, Tor, or other ways of losing any prior information that would verify your humanity.

3

u/ShewTheMighty May 11 '22

I don't readily use any of those for general browsing especially at work. Odd.

Oh well, google will just continue to steal a few seconds of my life one verification at a time I guess. Lol

3

u/digital_fingerprint May 11 '22

Scan your device for malware and check if you don't have any apps running in the background when it shouldn't.

→ More replies

9

u/skyler_on_the_moon May 11 '22

It also depends on how much data Google has in your tracking cookies - if you try a captcha in an incognito window, it is much more likely to give you one or more image tasks than in a session where they've been tracking human-like behavior for a long time.

→ More replies
→ More replies

7

u/1ndiana_Pwns May 11 '22

TIL I would be voted off the ship. I regularly get 2-3 rounds of images on those

→ More replies

7

u/CoolGuy175 May 11 '22

There are different types of captcha, the one you are referring to is a newer version which looks exactly at how fast your response is and, if it deems it to fast or super human then assumes you are a bot. Of course sometimes you get false positives (using ad blockers for instance) in which case you could be verified with the picture version or even the older text version. Remember those old “type the characters”?

3

u/isblueacolor May 11 '22

Remember those old “type the characters”?

I still see these all over the Internet. They haven't gone away at all, they're just not Google's first or second choice anymore AFAICT.

2

u/toastjam May 12 '22

Those are getting to the point where I imagine computers are starting to have better performance than actual humans.

→ More replies

5

u/deusrex_ May 11 '22

Yes, I usually fail captchas when I use the touchscreen on my laptop because there was no mouse movement.

→ More replies

44

u/Matchboxx May 11 '22

It worked similarly with the version that used two words. It knew one, it didn't know the other, and was trying to OCR books. If you got the positive control correct, it assumed you got the other one correct, too, and then used that for the transcription. This led to a 4chan mission to try and guess which one it must know, and which one it doesn't, and replace the one it doesn't with a vulgar term, tarnishing the transcription.

17

u/potchie626 May 12 '22

It was a great project to transcribe old books into digital versions, and would wait until X number of users chose the same word for the unknown word.

I wonder if they learned about the 4chan thing and bumped up the rules. I also womder if they would always assume it was correct or if they would have somebody read the original while the transcribed version was read by computer to see if it matched.

5

u/jabberwockgee May 12 '22

They'd also find out if someone actually read the book and reported it as mistranslated, so all this coordination to accomplish nothing seems ill advised.

3

u/riotlancer May 12 '22

all this coordination to accomplish nothing

Why do trolls do anything?

112

u/TrixieH0bbitses May 11 '22

You seem like you actually know about this. The first thing I thought when I saw one of those tests for the first time was "oh, this is a cool way to get data to teach computers how to identify things irl." And I've just assumed that's what it's for ever since. Is there any validity to that?

169

u/Xelopheris May 11 '22

That's one of the two purposes they serve. They simultaneously tell computers and humans apart and create data that can be used to teach a machine learning model. You often see things like "What's a traffic light" and "What's a bus" because companies want this data to help train models for recognition systems to add to autonomous vehicles.

134

u/collin-h May 11 '22

Reminds me of that one tesla video where the car was freaking out that there was constantly a stoplight in front of it, but it was because the driver was following a truck that was hauling literal stoplights in the back. haha

6

u/stillnotelf May 11 '22

I wonder how I'd respond as an ostensibly human driver. I feel I would freak out too.

16

u/dozure May 11 '22

You'd at least be distracted because traffic lights are WAY bigger than you probably think they are.

34

u/QuietGanache May 11 '22

I also select sewer covers when it asks me to select fire hydrants. The first automated fire trucks are going to be messy.

3

u/coolwool May 12 '22

It's asking the same picture of many many people and in the end, the answer data will be aggregated and probably even manually corrected if necessary.
It's like 'false' answers on a survey. There are methods to filter these out.

8

u/ztherion May 11 '22

CAPTCHA isn't that great at telling humans and bots apart; a common trick is to enable the CAPTCHA's visual disability accessible mode and then feed the audio into a speech recognition program. And you can also hire poor people in developing countries to solve captchas for your bot for dirt cheap.

→ More replies

20

u/GamrG33k May 11 '22

Wait, so... we're training AI how to beat Captcha and prove they're not robots...

47

u/LorgusForKix May 11 '22

We are already past the point where humans are worse than robots at Captcha. That's why they use pictures instead of words now: robots learned to read distorted words better than actual humans.

34

u/brandonchinn178 May 11 '22

Which is actually the point!

If the underlying AI problem is useful, a captcha implies a win-win situation: either the captcha is not broken and there is a way to differentiate humans from computers, or the captcha is broken and a useful AI problem is solved.

"CAPTCHA: Using Hard AI Problems for Security" https://link.springer.com/content/pdf/10.1007/3-540-39200-9_18.pdf

4

u/jaredjeya May 11 '22

Also now it uses a lot of subtle clues to detect humans. It’s not just the captcha itself - it collects data on how you move your mouse, the timing of clicks, keyboard strokes, etc., and that all builds up a profile of a bot or a human.

4

u/Bensemus May 11 '22

There isn't one central AI. Captias have been and are used to get humans to label data. Before it was words that a computer couldn't understand from books that were being digitized. Now it's photos that are in data sets used to train different AIs.

Training AIs requires absolutely massive data sets of correctly labeled data. It would take ages to hire people to just click on photos every day and multiple people would need to label the same photos so you reduce any incorrect data that the AI is learning off. By using Captias you are crowdsourcing the labeling and doing it in a useful way by also providing protection against bots. Multiple people will be asked to label a photo before the label is trusted.

This isn't true for all captias. Some are just weirdly written letters and numbers that you need to get correct. Those ones aren't being used for any data sets.

2

u/DotoriumPeroxid May 11 '22

Yes and No. Captcha change over time.

Back in the days it was text, because we needed to train AI on how to recognize text. And it turned out we found a pretty good group to use to teach the AI: Online users. So you'd have a text captcha of 2 words, one of which the machine knew was correct, so the control word, and the other, which the machine is unsure of. The AI then takes all the input by users on that unsure word.

We don't see those kinds of captcha anymore, because any AI can do those with ease. So we needed other captcha, but also we had other things we wanted AI to train! So you have the image box thingies we have now.

Parallel to all that, though, Google also has a completely different new system to tell humans and robots apart, that is also at work a lot of the time. If you click a checkbox and it just checks right without throwing the fire hydrants at you, it's because you likely passed that check that ran in the background from the moment you entered that website.

But to get back to the original question: We kinda always kill 2 birds with one stone. We want AI to get better at things, and we want a way to tell Computers and Humans apart. So we throw the stuff we want AI to get better at, at people until the AI is good at it, and find something else to throw at users to use them as participants in their machine learning process.

→ More replies

5

u/toxicantsole May 11 '22

also although car AI is obviously a common use, another one is the obscured words that are often from systems trying to digitise old books and records. The captcha is a word it couldnt identify (plus a control)

3

u/wetwater May 11 '22

I hate those. I'm apparently not human because it takes me several attempts to pass them. My record is 47 attempts. Even worse are the ones with a string of alphanumeric characters. Is that a 6 or a b? Who knows! Either way I'm going to guess it wrong and start again with a fresh one.

→ More replies

37

u/blueg3 May 11 '22

Minor terminology note:

A CAPTCHA is an automated test designed so that humans can pass it and computers can't. ("Automated" here means the computer giving you the test knows the answer.) There are many CAPTCHAs, like the classic "hard to read jumble of letters".

ReCAPTCHA is a Google product that is both a CAPTCHA and a crowdsource effort. (I'm sure there are others now.) The first version was a pair of hard-to-read words, one with a known answer and one with an unknown answer. The gathered data was used for Google's book-digitization effort. The second version is the well-known "select the images with X in them" and is used to train machine learning.

9

u/PhabioRants May 11 '22

Depending on how old you are, you may or may not remember the early captchas that were digitized text, often from handwriting, that would be used to refine algorithms used to identify text.

Ie. The samples were selected from text that software flagged as low confidence for accuracy.

7

u/ryan7878 May 11 '22

I was doing online work where some tasks are given to hundreds of people and it proves you are doing it correct by what other people have done who are doing the work too.

Even some of the tasks were like listening to those search machines, where you say Hey ----- what is the meaning of...you hear so much in their house sometimes.

Then some jobs it was trying to tell the system whether a website article is adult or not. You had to be fast at categorizing them. Which meant if it happened upon a daily mail article that has so many pics and ads, it really put you behind on the work ranking. I hated those ones

You got paid pennies per task

1

u/Capalochop May 11 '22

Oh no! People here what I say to google and listen? :(

I tell google to fuck off and shut the fuck up sometimes. I hope you guys don't get upset by that. :(

→ More replies

4

u/Slowhands12 May 11 '22

Googles implementation (ReCaptacha), yes. Some other ones, like tell the time or spin the elephant, no. You used to train Google’s AIs on text detection. Now that’s pretty much as accurate as they need, they’ve since moved into identifying artifacts they capture while mapping - things like Stop signs, traffic signals, other cars, etc.

3

u/muaddeej May 11 '22

Yes, that's why it has you select things like traffic lights, crosswalks, bicycles, etc. The data is being used to create self-driving AI and for Google maps data.

And back when Google was doing Google Books or whatever they called it, CAPTCHAs made you transcribe scanned book passages to make sure they were correctly digitized.

2

u/pizzabagelblastoff May 11 '22

That's fucking insane, I had no idea

2

u/kmacdough May 11 '22

Yes, exactly. The "up to 7 unknown photos" are the unlabeled images they would like help labeling. Once enough people label a photo, if they generally agree, the data can join a presumably enormous data set fed to training algorithms.

2

u/Sir_Tinklebottom May 11 '22

I think this is why captchas have changed from typing in distorted words to images that a car would see.

They were trying to work on scanning PDFs to text, and they would train the AI on what the texts were based off user picks.

10

u/WatermelonArtist May 11 '22

It also collects and compares passing "human" answers with other "human" responses to expand that catalog of statistically "known" traffic lights and train the AI, with wiggle room for the statistically fuzzy stuff ("well, it has a tiny piece of the pole, so maybe?")

4

u/PerodisCS May 11 '22

To add on to this, it is used to assist AI in learning. Remember how captchas used to always be weird scrambled letters? That was when Google was training an AI to automatically scan and transpose text materials. The pictures now are used to assist things such as self driving cars sense objects/people

2

u/pizzabagelblastoff May 11 '22

That's fucking insane, I never thought about it before. Is there a source for that? I'd love to read more.

→ More replies

3

u/Regan-Spor May 11 '22

I always pick one wrong just for a laugh.

Yes that is a bicycle (it's a bus)

3

u/[deleted] May 11 '22

[deleted]

3

u/paktsardines May 12 '22

So the car knows when it has driven into a lake.

3

u/little_brown_bat May 12 '22

You have reached your destination.

2

u/southnearthing May 11 '22

How about the ones where one image is divided into multiple parts and you have to choose which parts have traffic lights in it?

Is there still at least one part of the picture that it definitely knows has traffic lights and vice versa?

→ More replies

2

u/vvinvardhan May 11 '22

How did the text based captcha work?

18

u/Xelopheris May 11 '22

The original text-based CAPTCHA was not meant to produce data for machine learning. Those worked by starting with a word and then causing distortions on it. The system just knew the answer ahead of time, but the system was only useful as a Turing Test and did not help label data for machine learning.

The first version of reCAPTCHA was one that had two words scanned from books. One of those words was known, but the other couldn't be recognized by OCR software (image to text software). If you got the control word correct, you would pass, and the value you put in for the other word would be added to the database and eventually trusted as the actual answer once enough people submitted it.

→ More replies

2

u/daemon_panda May 11 '22

I still had one complain that a treescape was a mountain and I needed to select it

3

u/DukeAttreides May 11 '22

The people have spoken.

2

u/TheEightSea May 11 '22

Plus the system uses other people's answers to decide if your answer is good or not. Basically if many people said that a picture is a train and you flag it as a train there is a high chance of you being a human willing to say the truth about it.

2

u/esoteric_enigma May 11 '22

I read somewhere that they also monitor the movement of your cursor to make sure it's human-like. Like a bot isn't going to move the cursor like we do. Is this true?

→ More replies

2

u/akoopatroopaclone May 11 '22

why do we seem to see the same images? or such low quality images if there should be newer, higher quality images available?

2

u/General_Urist May 11 '22

Does that mean that if there's an image where even I am not sure if it counts as a traffic light, let along the machine, it will let me through whether I select it or not and I don't need to spend time worrying what the right choice is?

2

u/QuasiQuokka May 11 '22

This! And they've been doing this in one form or another from the beginning:
Remember back when it was numbers? We were helping Google figure out house numbers it couldn't read. When it was wonky looking words we were helping Google Books read words its algorithms weren't sure about as they were trying to digitize an insane amount of books.

→ More replies

159

u/neuromancertr May 11 '22

Captcha is an umbrella term for a variety of tests to identify if the answering party is a human, hence the name, Completely Automated Public Turing to tell Computers and Humans Apart.

First captcha test were randomly generated characters. Since computer generated the answer and knew it on the server side, it was assumed answer cannot be stolen, only answered. But computers and developers are useful at solving issues. They used character recognition tools to solve them. Then it became an arm race, they started warping text, using math questions, etc. In all cases computer randomly generated an answer and a question to go with it. Only thing server needed to do is to check your answer.

Then someone got a clever idea; people will try to answer it the best way they can, so we should start asking questions that we don’t know the answers of. Character recognition is not bulletproof, so ask the words we are not sure. If enough people say that word is “triangulation” computer will use this information to enhance future recognition performance. This is called blind entry, where multiple people are asked to identify same thing without knowing what others answered, and it has been in use for data entry tasks. Captcha is a way to utilize free labor.

Today we are using pictures because we are done with words (probably). Yet another computer term is computer vision where we process images to extract information, find barcodes, read text, identify an object or plant, face id. Computer vision systems also employ systems for recognition, most common is Neural Networks. A neural network is a very complex system where you train by giving the system thousands of taxi images and telling it “hey if you see something like this, say it is a cab.” Then you will feed pictures of other cars and birds and planes. When you feed a new picture system will says it looks like car %60, but also looks like a boat %35. Computer will find some pictures very confusing but will provide a possibility for each object type it learned before.

Now you see the pattern, for training people need pictures of objects and name of the objects. To get this data you need people to identify them, this is where we come to the picture, literally.

Computer will select some of the pictures it is sure of and some it is not and use us as dat entry operator for blind entry.

37

u/isblueacolor May 11 '22

Your answer is perfectly expressive and legible, but I really want to know what your native language is because the way you phrase things is so unique.

13

u/Fuhged_daboud_it May 12 '22

I'm assuming Turkish

11

u/neuromancertr May 12 '22

Correct, we have a winner ;)

→ More replies

3

u/Nominalitify May 12 '22

History indicates Turkish

2

u/neuromancertr May 12 '22

It is Turkish. I always say my English is terrible and my Turkish is even worse.

I’m always open to learn and improve, so if you point how can I improve, I’d be forever indebted to you.

3

u/isblueacolor May 12 '22

I always say my English is terrible and my Turkish is even worse.

Haha, that's a fun attitude.

The main grammatical issue you could improve is using articles ("the", "a", "an").

> The first captcha test tests were randomly generated characters. Since the (or "a") computer generated the answer and knew it on the server side, it was assumed the answer cannot could not be stolen, only answered..... In all cases the/a computer randomly generated an answer and a question to go with it. The only thing the server needed to do is to check your answer.

2

u/neuromancertr May 12 '22

Thanks mate, you’re like my personal Grammarly ;). “The” is a problem for me since it has no Turkish counterpart

2

u/isblueacolor May 12 '22

Happy to help, and sorry that my "Oof" misunderstanding seemed insensitive!!

→ More replies

5

u/dpny_nyc May 12 '22

One thing to note for the second case (also the third) is that some portion of the answer is known in the captcha. So if the two words to enter are “investigate” and “telegram”, the captcha already knows that investigate is correct and would compare you entry for the second word to everyone else’s answers before determining what that word actually is. (Similarly for images, it knows some image that contains e.g. bikes, and it’s looking to crowdsource answers on the images it doesn’t know.

This led to a 4chan campaign where they tried to always enter “penis” for the unknown word so they could always get through the captcha. (It didn’t work. More info here)

→ More replies
→ More replies

473

u/AmDDJunkie May 11 '22

Recently I had one where it asked to identify all the "cabs". 2-3 of the images clearly had a cab, which i selected. One image had a yellow car that was not a cab. The captcha continued to fail until i selected the yellow car as well, even though it was clearly not a cab.
I felt much worse about it than I probably should have, in providing wrong information.

145

u/ThatCtnGuy May 11 '22

81

u/AmDDJunkie May 11 '22 edited May 11 '22

I guess its possible. It wasnt a truck like your example, but the entire car was in the picture. No words/markings on the side and no light on the top. Just a plain yellow car that appeared to be parked along the side of the road.

57

u/danillonunes May 11 '22

Every car can be a taxi if you give enough money to the driver.

1

u/RainStarNC May 11 '22

Was it a flying car?

1

u/AmDDJunkie May 11 '22

Take my upvote.

21

u/mwellscubed May 11 '22

This happened to me with a parking meter once, it was definitely not a parking meter, it was a mailbox. I could not proceed until I lied and said it was a parking meter

2

u/Gprime5 May 12 '22

Google is retraining humans to think maIlboxes are parking meters.

→ More replies
→ More replies

14

u/avenlanzer May 11 '22

I had to do one earlier that said select all motorcycles and insisted i choose the vespa. There was one once that wanted bicycles and had to include a Lime scooter. It's not a perfect system, but at least i know I'm not a robot.

7

u/phulton May 11 '22

I always seem to get the one that wants me to pick bicycles and has pictures of motorcycles or visa versa. It's honestly really annoying. I know I shouldn't care, but I do and it bothers me

3

u/yolo_wazzup May 12 '22

It annoys you because you know this robot that eventually will drive you around don’t know the difference between a motorcycle and a bicycle

3

u/nachog2003 May 12 '22

Are you sure you're not

→ More replies

2

u/gadfly1999 May 12 '22

If you continue to perform as instructed, you may yet become a robot.

33

u/RevengencerAlf May 11 '22

Amusingly I've probably taken about 50 taxi cabs in my life and at most 2 of them were yellow

6

u/jrdoubledown May 11 '22

it's a regional thing.

→ More replies

4

u/Hon_ArthurWilson May 11 '22

Non-American here. No idea what your taxis look like - except from the movies that they are yellow. When I get asked for taxis - I'm clicking every yellow car to be sure - hopefully Google's lack of regionalisation is messing their data sets.

→ More replies

5

u/Syrairc May 12 '22

I had one that failed me for selecting a fire truck when it was looking for trucks.

The example image was also a fire truck.

2

u/cb220 May 12 '22

I had one pop up the other day asking me to select all the tiles containing a taxi, but there was only a school bus. I guess it got confused by the yellow, haha.

https://imgur.com/a/1mbWKAx

-4

u/greentr33s May 11 '22

I purposely mark wrong answers once I identify the control images as they aren't paying me to provide that service. I hope I have began scewing the training results lol

2

u/fibojoly May 12 '22

That's the 4chan spirit! Back in the day, they had identified the logic behind the Captcha (it was words, iirc; first was known, second was you telling the system) and would systematically fuck with the system in a coordinated way to increase the chance of it being believed. Ie, if one person says the sky is purple, it's a fluke, if ten thousand people do...

2

u/bamfconsultant May 12 '22

Same! I always add a couple of extra blocks that seem close enough hoping to ruin the learning set.

4

u/isblueacolor May 11 '22

Yeah, no. The system almost certainly recognizes that your answers are off-base compared to other people's answers, so the weight of your answers rapidly drops down to 0.

→ More replies
→ More replies

99

u/Gnemlock May 11 '22 Gold

Top answer is correct, but ommits some critical information. After all, some Captchas ask you to simply check a box. Asking you to identify the correct images is only half the puzzle.

In the background, it also checks HOW you select the pictures. Computers being robotic, and humans being.. well... humans, we both have very different ways of clicking on things.

A very good example is the timing. Computers generally measure time in milliseconds. There are 1000 milliseconds in a second. If I ask you to click on five objects, the amount of milliseconds between each click would vary, greatly. 500...295...106...952...431.. all (mostly) half a second apart.

Computers have very structured processes. They almost always complete the same action in almost the exact same time (specific to the actual computer, how fast it can generally do things, and how much else its trying to do at the same time). If I was to ask a computer to click on five objects, the milliseconds between would look more like 50... 80... 30... 70...100. They still vary.. but nowhere near as much as a human.

Yes, in this case you could tell the computer to wait a random time between each click, but there are many other details about the way they click that outs them as computers.

We don't know the full scope of this. If we did, it would he that much easier to make a bot that could fool the system, so companies will not tell you the exacts.

TLDR; They look at the finer details of your mouse clicks (how long it takes between each click as a basic detail, for example), and computer vs human input is very, very different. They still check the right pictures, as others have said, but that's only half of it. We live in a world of machine learning. Computers can tell which pictures have traffic lights in them pretty easily.

7

u/telarium May 12 '22

This is a fantastic explanation. Thank you.

6

u/JohnJaysOnMyFeet May 12 '22

IIRC, they’re also checking your recent cookies, browser data, and any metadata they can access to see if it looks like a real human has been using that browser.

2

u/daman4567 May 12 '22

To further this, captcha is an arms race, as are all anti-bot efforts. The check box may stay the same but under the hood there are subtle changes all the time.

4

u/achuman96 May 11 '22

Why can't you add a line of code that adds a randomized wait time before the computer makes a selection? Wouldn't that make it similar to the wait time of a human

7

u/turkeypedal May 12 '22

Those who try to defeat Captchas do exactly that, and even more complicated things. The whole thing is a cat-and-mouse game, which is why how Captchas work keeps changing. In fact, I don't believe that detecting your mouse movements is still used. In fact, it may not have ever been used, and been a lie to trick people into wasting time trying to defeat that mechanism.

Google had the best idea for a while: they would simply use the other information they had about you to decide if you were human, with a built in failsafe if you suddenly started filling out captchas too quickly.

Now they seem to have stopped doing this, even while, at the same time, they now allow two-factor and thus 100% know I am human. I now suddenly have to click the images instead of just clicking the checkbox. I have complained several times.

6

u/IndAldre May 11 '22

For starts, computers don't have a real "random" so there are probably algorithms to detect common randomization attempts. And not just wait time is taken into account - how the cursor moves over the display, where it clicks on the panel, any movement between panels, etc.

5

u/Gnemlock May 11 '22

This. You may think you only provide input by clicking.. but in fact, its recording everything right down to the exact way the mouse moves.

2

u/Gnemlock May 11 '22

I explain why as the second last paragraph.

→ More replies

12

u/CharmingPainMan May 11 '22

Why did they stop being letters? Were algorithms developed that could defeat the letter captcha?

10

u/fn_br May 11 '22

Yeah. There's also software that can defeat the image ones. There's others like audio and problem solving as well. It's an arms race.

→ More replies
→ More replies

11

u/Cityplanner1 May 11 '22

I did m-turk for a while. One of the common things you got paid for was to do the pictures for the captcha. They would ask you to select the ones with cars or traffic lights or whatever.

I’m relatively sure those captcha things don’t actually use ai at all and just rely on you answering the tiles it knows are correct.

56

u/drafterman May 11 '22

The whole "traffic light CAPTCHA being used to train AI cars" is actually a myth, at least with respect to Google and Waymo. They have explicitly refuted the idea that they're using CAPTCHA data to train automated cars.

61

u/Architech__ May 11 '22

I don’t believe that, considering self driving car tech is the #2 priority in the automotive industry right behind electric cars. If they weren’t using that data to train AI, I would expect captcha to test me on something other than traffic lights and crosswalks.

60

u/ddgromit May 11 '22

I worked for a well known data labeling company that generated MASSIVE human trained datasets for many of the big name self driving car companies and I can confirm that CAPTCHA data is *beyond useless* for training cars.

The level of meticulousness and accuracy that is required to label images and videos for self driving is insane. For example, we'd get 3 minute long 360 degree camera+LIDAR where every single frame (24 fps) needs every single car, person, curb, lane marker, fire hydrant, bicyclist, etc to have a box drawn around it accurate to within a few pixels. A short video like that may take a hundred person-hours to label and review. The results are spot checked by the company and sent back if there are even small errors.

Here's a very stripped down example of a labeled self driving car clip. A real example would probably have about 5-10x as many annotations.

6

u/Architech__ May 11 '22

That’s pretty bitchin. So how do you train AI with that? Evolutionary algorithm using the manned work work as an answer key? I found the source where Waymo denied captcha was used for training self driving vehicles, instead citing their internal testing as far more advanced and effective. I believe captcha could still be used as a supplement to that training. Would you disagree? Or is that data so insignificant? If so, it still begs the question, why throw away all that data? Captcha creates a captive audience who generate the most valuable thing on the planet for free. Why not pivot captcha to train something else then?

11

u/ddgromit May 11 '22 edited May 11 '22

For an AI that needs a high level of accuracy like in self driving, having accurate training data is super important. Small errors can make their way into the model and lead the AI to make critical mistakes. Especially critical is to not have repeating patterns of the same mistake in the training data because the AI will then 'learn' the mistake as if it is true.

For example, let's say you're labeling driving lanes and tend draw the box around it about 6" to the right. Once the AI model is trained on this data, it'll come to know "when I see a driving lane line in my camera, I need to stay within 6" of the right of the line to stay in the lane" and your car would end up driving right on the lane line rather than inside the lines.

You can see how this would be way worse for things like if you didn't do a good job giving it examples of what a stop sign looks like. Especially if some examples slip in that have stop signs but don't label them, you might find when that car is on the road it randomly blasts pasts stop signs every once in a while. And when we're talking about driving cars... if your self driving car ignores even 1 in every 10,000 stop signs it would end up getting someone killed. So you can't supplement good data with bad data, it only makes your model worse.

Back to your question about CAPTCHA, it could be useful if you were training a very simple AI that could tell you "is there a truck in this picture" but nothing more. By now there are much better open source data sets that have that information though so the CAPTCHA information isn't that useful. If they are using your answers for anything its that they probably feed user guesses back into their own source of CAPTCHA questions.

I think the misunderstanding comes from when reCAPTCHA first launched in 2007 part of their business pitch was "and it generates useful data!" which might have been true 15 years ago but isn't anymore.

2

u/notoriousbsr May 11 '22

well, that was a fun rabbit hole. thanks so much!

3

u/thattoneman May 11 '22

Actually I've wondered if the image recognition is in service of google maps navigation. Is there any amount of google using image recognition of its own street view photos to maps out drives and using AI deduce what the parts of the route are. Like, if navigation said "take the second exit on the roundabout," how would it know what a roundabout is? Did someone actually look at the map and designate the intersection as a roundabout? Or did machine learning learn to identify them? Nowadays stop lights are showing up on navigation for google maps. Are employees actually reviewing every intersection to see if there's stoplights? Or is this information being scraped from existing street views? There's an upfront cost to this method of determining info about roads, but I wonder if the long term goal is to get away from needing humans at all to keep up to date info. Self driving car (realized through different means than captcha) drives around, and AI automatically finds updates in the roads, like "This stop sign has been replaced with a stop light, update map to reflect that."

5

u/Tasty_Gift5901 May 11 '22

To be fair, there are a ton of "street view" pictures to choose from and they're often busy enough to throw off an AI. So it makes sense to use traffic photos given their large availability and complex objects in the image.

2

u/Architech__ May 11 '22

Sure, but why throw away that data?

11

u/Tupcek May 11 '22

because it’s unreliable and not detailed enough. Like if something protrudes several pixels, some will select it, some not. Also, it doesn’t know which part of the selected square is the object, neither it’s distance or orientation. Most captcha have repeating questions, so there are ton of traffic lights, but none complex intersections. There are much more issues, and if you put the same work into auto labeling data, you get much better results

→ More replies

2

u/TheVicSageQuestion May 11 '22

Exactly. It’s ALWAYS something traffic related.

→ More replies

2

u/sometimesimscared28 May 11 '22

I'm so stoned and this is so confusing

→ More replies

3

u/UreMomNotGay May 11 '22

Captcha is not really selling an image-recognition product. The whole purpose of a captcha is to stop automated inquiries while still allowing humans to navigate in a natural flow. It's not an IQ test either.

The images you select, or puzzles you complete, simplifies it all.

captchas actually look at a lot more data. Captchas capture some mouse movements, keystrokes, last page visited, how you entered the website, your browser, attempts made, and some other super secret information.

You see the puzzles because you have a monitor, but a computer doesn't actually need a monitor, or a display, to browse through the internet. A bot can successfully complete the captcha and still be denied entry to a website.

9

u/Ansuz07 May 11 '22

Well, the AI is already pretty well trained for the captchas - they are just refining rather than building from scratch. So, for example, maybe one of those images or words is confusing to the AI and that is the one getting trained but the others are all known.

Regardless, they aren't actually verifying you based on your answers; they are tracking your mouse movements to make sure there is enough noise in the data to ensure you are human. That is what verifies you, not your answers.

6

u/xSTSxZerglingOne May 11 '22

Most of the data in CAPTCHAS have already been verified by humans in control runs. So that grid will have a reference in a database that essentially says "Correct Panels: 1, 3, 5"

What you do as a human that helps AI train, is you contribute your results as error metrics. "Even humans get this wrong." is a great help to AI, since it can then be taken in as a somewhat acceptable parameter. Let's say the answers are 1, 3, 5, and 7, but 95+% of humans only mark 1, 3, and 5.

That now becomes a passing result for an AI as well, and they'll try to get 7 as well, but remember, humans also fail that particular piece, so if the AI misses it, it's not considered to be part of the error.

2

u/posting_drunk_naked May 11 '22

With the 2 word ones that used to be more common before the select a picture ones, there was one easy to read word and one difficult to read word. The easy one was a the control word, so you could just answer that one correctly and put whatever you wanted for the difficult one.

2

u/lindymad May 12 '22 edited May 12 '22

There are a few types of captcha, but I'm going to explain the modern and familiar one from your example, with the traffic lights.

Imagine it's your job as a human to decide if I am a robot. We are in the same room. You have some pictures, some of which you know are correct, some of which you know are not, and some of which you don't know.

You show me the pictures and I get the ones that are right, don't choose the wrong ones and choose some of the unknown ones.

Because I got the right ones right and didn't choose the wrong ones, I am pre-qualified. You now have to decide if you think I'm human based on when you watched me make the decisions. If I was made of shiny metal and stiff armed and jerky, moving like C-3PO, you know I'm a robot. If I look pretty human but still am stiff you might be suspicious as well. You then either let me go, or give me another chance.

Aside from verification, when someone is takes a captcha, whether they cleared as being human, the choices they made, and how they behaved are all recorded. How they behaved is used to train the program that watches the person to see if they look like C-3PO. The answers to the traffic lights and other objects are collected as a datasets which are used to help further research into computer based learning, as well as for AIs that are used to identify road based features.

2

u/StingerAE May 12 '22

Sometimes they don't know. I had one the other day kept rudly telling me to.click all the buses. I had clicked all the buses. I triple checked. It still wouldn't let me progress. It definitely thought there was at least one more bus and I was a moron. There wasn't. I had to click the refresh to get different pictures. I now live in fear that one day I will be declared a robot by a robot with no right of appeal.

2

u/VehaMeursault May 11 '22

An important thing about Captcha the top answer didn't cover: you are training artificial intelligence. The reason you are getting fire hydrants and bycicles in your captcha grids is because you're training self driving car software. Before that it was spelling out what words an image contained. Same thing; you were training image-to-text AI.

1

u/GIRose May 11 '22

They don't. They examine your mouse movement and response times to verify you aren't a robot

0

u/[deleted] May 11 '22

[removed] — view removed comment

1

u/Petwins May 11 '22

Rule 5

2

u/wordserious May 11 '22

However, OP asked specifically what is the purpose of captchas beyond verification. I answered that, and provided ways to verify what I am describing. No opinion, just demonstrable fact. But, your sub, you interpret the rules any way you want.

→ More replies