Skip to main content

How Google uses Auto Correct

Google has been helping us in each and every way, but at the downside, it has also seeded a bad habit in us, i.e. Being lazy!!

Google's auto correct feature has really made us forget how to spell words. Being so accurate and fast, that people now ignore to spell a word properly.

If you use Google has your search engine for Web browsing you will observe that it has a powerful, fast feature of predicting the words that we are typing.

How does Google manages to read our minds and get the correct word and that too within a 10th of a second?
The answer to this lies in the Auto-Check Algorithm of Google.

The alogrithm is simple but the key to it is "The huge Database" and frequent updation that Google has managed.

Auto correction, simply means suggesting a word that's near to your input word in the Dictionary( the new word might the input word itself).

Google's auto-correct algorithm uses technology that AT&T Bell Laboratories
developed in the 1990s, according to The New York Times.

The algorithm concept is simple and straight forward. When you type a query in the search box of Google, the software searches for the closest match word in the dictionary. But, the twist that Google has is, it has a virtual dictionary and not a static one, it's dynamic.

Google's dictionary being virtual means that it is updated by anyone that uses the Google Search engine. It learns each and every time any query is inserted and if it does not matches any of the word already in it, the dictionary adds that word to the database.

We have already learned Dictionary Data Type in our Python (PyLove) section at Papsolutions. Basics of that can be used to understand the technical part behind how Google Algorithm works.

So for example we can have a var search=[value:freqn]

The user will input his search and it will be saved in value variable and the number of time it has entered is stored in freqn variable. Also, as the database goes on increasing new words which are nearby to the previous value will be added to the dictionary. For example,

if you type in fog but the database as a dictionary like this:
dict=[frog:5,fof:2], then
frog will be shown up instead of fog. This is too simple, Google has a huge database i.e. Updating each second.

If you opt for writing a short Auto corrector in python, this would be a great way .

Also, this Quoro  thread gives us
a detail look up at Google's search algorithm.

While auto-correct features are
useful, computers are fallible
and they won't always predict
the word you're seeking
correctly. But still it's always good to know how Google keeps reading your mind.

Comments

Popular posts from this blog

Microsoft BizTalk Server | Interview Questions | Set 1

Hi Folks, Below is list of Some important questions that you may want to go through for a Biztalk developer role opening. Sharing the set 1 now just with questions. Will be sharing more soon. What is BizTalk Server? List down components of Biztalk server Biztalk architecture how is it? Types of schemas Document schema vs Envelope schema How to create envelope schema and its properties What is Property schema , how to create and its basic properties Purpose of using Flat file schema How to create a Flat file schema What do you mean by Canonical Schema What's is a message type Can a schema be without namespace What is min max and group min max property in a schema Explain Block default property Property promotion and types Distinguished field vs Promoted field Is it possible to promote XML record of complex content What is <Any> element in a schema Max length Promoted field and distinguished field What's Auto mapping and Default mapping  Can w

Microsoft BizTalk Server| Interview Questions| Set 2

Hi folks, We are back with set 2 of Biztalk server developer Interview Questions. Let's have a look then. State and explain stages of receive and send pipeline. Difference Between XML receive pipeline and passThru pipeline. State minimum components required in a pipeline. State maximum components used in a pipeline. Which property is required using Flat file dissambler and what happens if it is not set. What are the base types of pipeline components. What Interfaces are used for developing a general custom component pipeline. What Interfaces are used for implementing a dissambler custom pipeline component. How to execute a pipeline in an Orchestration. How to set properties of an adaptor dynamically in an Orchestration. What is message box and its purpose in Biztalk server. Types of subscription in Biztalk. Is it possible to have more than one port with same name. In which state can a send port do not subscribe to a message. Why multiple receive locations can

Microsoft C# - Basics

What is C#? We'll Take this definition from Wiki: Basic Points we should cover up: We would be learning following points in this Post: Writing and Reading from Console Variables, Data Types and Conversions Operators Conditions Passing Values to methods Handling Nullables Arrays, String, Struct and Enums Let's Code: The below Program will help you understand the basics of the above points listed. Go through each region separately and get to know the syntax of C#. We Believe, it's always better to Code and Learn than Read and Learn! If you want theoretical help related the basics, please visit here: C# Basics   Hope this helps to get you to start off with C# Coding! We would be adding more to this soon! And don't forget to visit  Joodle  to compile your codes online. Thanks! 😀