Skip to main content

The human synergy

After nearly two and half years of inactiveness, I'm reloaded back to throw more ramblings in the open space of internet.

The plan is to have a weekly journal on an idea or a product, that I understand or learnt that week.

Let's get started and this week's cynosure is "reCAPTCHA"

We, often, see sites that ask us to enter the content of a distorted or skewed image of letters or numbers, that is known as CAPTCHA.


The widely known fact is that it enables the site to distinguish a human from any automated bots or scripts.

It is so reliable, that vast number of sites are using it, and about 200 million captchas are answered by humans in a day. Roughly it takes about 10 seconds per person to answer a captcha. In summation, each day more than 150,000 hours of human effort is consumed by these Captchas, which does nothing more than confirming that the detail is entered by a human.

Could this human effort be used for a higher purpose? Yes. The answer is reCAPTCHA.


reCAPTCHA uses this humongous human effort to digitize books.

At present, OCR technology, that is used to extract content from scanned material including books, is not perfect and the success ratio is only about 60 percent. reCAPTCHA is used to fill the gap by making the humans to identify and correct the word.



Here is how it works.
  1. reCAPTCHA shows two words to the user. One that is known to the computer and the other one that the computer is not sure about.
  2. The computer authenticates the user based on input for the word that it knows correct.
  3. The computer records the user input for the word that it is not sure about
Same reCAPTCHA is shown to multiple users and their input for the word, that computer is not sure about, is aggregated and the most common occurrence is the suitable match.

This method is found to be producing very accurate results, where the success rate is about 99.5% and has been used to digitize the old editions of New York Times and books from Google books.

In India, there is an active research on OCR for digitizing old transcripts in Indian Languages. Having reCAPTCHA in Indian Languages will help significantly for these projects. Thanks to Google transliteration, typing in Indian Languages is no more an irksome job. Also, choice could be given to the user to choose the conversant language.

So, every time a reCAPTCHA is solved, we can be glad that we augment the human knowledge by synergy.

Reference:
Interesting TED video about reCAPTCHA:

Comments

Popular posts from this blog

Six ways to land rovers on Mars.

Six ways to land robotic rovers on Mars Mars Rover problem is a popular problem statement used by companies to check object orientation and test-driven development skills. In this article, we'll take the core problem statement and see how the solution evolves through six different levels. Knowledge of high school level maths and little python helps to follow this article. The actual Problem Statement: A squad of robotic rovers is to be landed by NASA on a plateau on Mars. This plateau, which is curiously rectangular, must be navigated by the rovers so that their on-board cameras can get a complete view of the surrounding terrain to send back to Earth. A rover's position is represented by a combination of x and y coordinates and a letter representing one of the four cardinal compass points. The plateau is divided up into a grid to simplify navigation. An example position might be 0, 0, N, which means the rover is in the bottom left corner facing North. In order t...

Import 1 billion records from Oracle to HDFS in a record time

The problem: A large scale manufacturing organization aggregates data from different sources, maintains it in a single Oracle table, and the number of records is in the order of a little over a billion. A monthly process has to fetch the data from Oracle to HDFS.  The constraint: Ideally, only the difference for each month could be fetched. But, there is little to no control over the Oracle data source and there is no reliable way to identify the delta. Hence, all the data have to be fetched all the time. To give a perspective, if the table is exported as a CSV from a SQL Client (say, SQL Developer), it takes more than 20 hours to download the table. The tool: Sqoop is the standard tool used to import data from the relational database to HDFS. The solution: $ sqoop import -D **oracle.row.fetch.size=50000 --fetch-size 15000 --num-mappers 40** --table ` <schema>.<table_name> ` -connect ` <jdbc_connection_url> `   --username ` <user> ` -P --target-dir...