I wonder how Google find the exact word, even if we mistyped it in search box. I want to know if such open source algorithm is available?
-
1Possible duplicate: stackoverflow.com/questions/307291/…jamesaharvey– jamesaharvey2009-10-12 11:50:52 +00:00Commented Oct 12, 2009 at 11:50
-
2Google actually collects information about users who search for a mistyped word, don't find what they search for and then correct the word. They simply crush the problem with tons and tons of data. So if 100 people mistype "searech", find nothing and then type "search", then Google knows that "search" is a very probably correct spelling of "searech".Joachim Sauer– Joachim Sauer2009-10-12 11:51:32 +00:00Commented Oct 12, 2009 at 11:51
-
1@vipin k., @Damien - was that missspellling of the tittle deliberete?Dominic Rodger– Dominic Rodger2009-10-12 12:01:59 +00:00Commented Oct 12, 2009 at 12:01
5 Answers
Check out Peter Norvig's How to Write a Spelling Corrector article.
1 Comment
Reading the Wikipedia entry on Levenshtein distance should give you a better idea of how to detect misspellings.
1 Comment
Take a look at this Python Implementation of a suggester, which implements something similar (though no doubt not as clever as Google's) to what Google does.
Comments
Or if you're using java, check out Compass's support of the "Did you mean feature", and also this blogpost containing an improvement to the original feature.
Comments
Actually Google uses a different algorithm. How does the Google "Did you mean?" Algorithm work?
If I search for poeple, I will probably realize my mistake and then search for people. Google tracks these trends and when you search for a word that many people usually look for a similar word afterward it suggests this word to you on your first search.