Elamur Research⌕
☰
home / papers / 2022 / English Language Spelling Correction as an Information Retrieval Task Using Wikipedia Search Statistics

English Language Spelling Correction as an Information Retrieval Task Using Wikipedia Search Statistics

Paper · 2022 · Kyle Goslin and Markus Hofmann

Summary

Conventional spell checkers depend on fixed dictionaries, which often lack acronyms, new terms and inflected forms, while learned correctors need costly annotated training data. Goslin and Hofmann present WikiSpell, which treats correction as an information retrieval problem and uses the Wikipedia Search API as its only knowledge source. For each query token, the system:

  • sends wildcard variants of the token to the API;
  • builds a small local corpus from the returned article titles and snippets;
  • uses the API's total-hit counts to decide whether a single word, or a sequence of words, is attested and therefore probably correct;
  • picks replacements by combining these frequency signals with Levenshtein distance over a short candidate list.

The authors tested it on queries from the TREC 2009 Million Query Track with randomly inserted letters and compared it against Hunspell. WikiSpell performed comparably and worked best on short, context-dependent sequences. This matters because it needs no training and its vocabulary grows as Wikipedia grows.

Key points

  • Evaluation data: TREC 2009 Million Query Track, queries 20001–22001 (2,000 queries, mostly 1–3 tokens long), giving 4,951 tokens to analyse.
  • Synthetic noise: 1,050 single-letter and 1,911 two-letter insertions of random A–Z characters, averaging 1.67 errors per query. Insertions were capped at two because more could destroy the token's identity.
  • API settings: srlimit=100 caps results at 100, and srinfo=totalhits returns article counts. Titles plus snippets of roughly 25 terms form the local corpus. Tokens are submitted separately to broaden retrieval.
  • Metrics: precision, recall and accuracy. Making a suggestion for a correctly spelled word counts as a false positive. Hunspell served as the baseline, and the code and data are on GitHub.
  • Final selection uses a fixed shortlist of n=5 candidates. The authors suggest making this size adaptive in future work.

Interesting ideas

  • I1. An external corpus's hit count for a word or word sequence can serve as a single cheap signal for both "is this spelled correctly?" and "do these words fit together?", without any trained model.
  • I2. Wildcard queries around a suspect token pull in its morphological relatives as well as spelling neighbours, so the candidate set covers inflected forms a static dictionary would miss.
  • I3. Candidates are shortlisted by frequency and context first, and only then ranked by edit distance on that small set, which keeps the expensive comparison cheap and stops rare look-alikes from winning.
  • I4. The test set is built by injecting controlled random character insertions into clean text, so every noisy item has a known original to score against.
  • I5. The scoring counts a suggestion on an already-correct word as an error, which explicitly penalises over-correction rather than rewarding aggressive changes.

For Mova

How these ideas could serve Mova, our small open language model — its files, stages and tests:

  • I1 (tokens): Out-of-vocabulary tokens could be checked against attested frequencies in a large corpus before tagging, with the hit counts logged as an explainable reason for flagging or normalising a token.
  • I2 (tokens): Lemma and morphology lookup for unknown forms could generate wildcard patterns over a lexicon to propose a lemma plus features, rather than leaving the token unanalysed.
  • I3 (tokens): Repairing typos before parsing could use the same two-stage filter, keeping each correction traceable to a frequency step and a distance step.
  • I4 (learn): The same noise injection could act as a robustness and negative-control check, measuring how much LAS or downstream answers degrade at one versus two inserted characters.
  • I5 (learn): Evaluations of self-induced repair rules should likewise count edits made to already-correct input as failures, so the rules do not learn to "fix" valid text.

Our summary of the paper, in our own words — not its text. The work belongs to its authors; read it at the links above.

 Institutions

 Fields, topics and concepts

Cite

Cite as Kyle Goslin and Markus Hofmann. 2022. English Language Spelling Correction as an Information Retrieval Task Using Wikipedia Search Statistics. Proceedings of the Thirteenth Language Resources and Evaluation Conference.

The paper itself, not this page. BibTeX from the library's record of the work.

@inproceedings{goslin2022english,
  title = {{English Language Spelling Correction as an Information Retrieval Task Using Wikipedia Search Statistics}},
  author = {Kyle Goslin and Markus Hofmann},
  booktitle = {Proceedings of the Thirteenth Language Resources and Evaluation Conference},
  year = {2022},
  doi = {10.63317/4o6byujewowg},
  url = {https://doi.org/10.63317/4o6byujewowg}
}

References

24 references, 2 of them with a card of ours. ↗ leads to the work, «find» searches for one we have no id for yet.

  1. Hládek, D., Staš, J. and Pleva, M. (2020) Survey of Automatic Spelling Correction. Electronics. 9(10): 1670. https://doi.org/10.3390/electronics9101670. ↗
  2. Hagen, M., Potthast, M., Gohsen, M., Rathgeber, A., & Stein, B. (2017) A large-scale query spelling correction corpus. In Proceedings of the 40th International ACM SIGIR Conference on Research and Development in Information Retrieval, pp. 1261–1264. find
  3. Brill, E. and Moore, R.C. (2000) An improved error model for noisy channel spelling correction. In Proceedings of the 38th annual meeting of the association for computational linguistics, pp. 286-293.
  4. Gong, H., Li, Y., Bhat, S. and Viswanath, P. (2019) Context-sensitive malicious spelling error correction. In: The World Wide Web Conference Proceedings, pp. 2771-2777. find
  5. Lagunes-García, G., Rodríguez-González, A., Prieto-Santamaría, L., del Valle, E.P.G., Zanin, M. and Menasalvas-Ruiz, E. (2020) How Wikipedia disease information evolve over time? An analysis of disease-based articles changes. Information Processing & Management. 57(3): 102225. find
  6. Goslin, K. and Hofmann, M. (2018) A Wikipedia powered state-based approach to automatic search query enhancement. Information Processing & Management. 54(4):726-739. ↗
  7. Cheon, J. and Ko, Y. (2021) Parallel sentence extraction to improve cross-language information retrieval from Wikipedia. Journal of Information Science, 47(2): 281-293. ↗
  8. Chen, D., Fisch, A., Weston, J. and Bordes, A. (2017) Reading Wikipedia to answer open-domain questions. Computing Research Repository.
  9. Gupta, J., Qin, Z., Bendersky, M. and Metzler, D. (2019) Personalized online spell correction for personal search. In The World Wide Web Conference, pp. 2785-2791. find
  10. Mays, E., Damerau, F.J. and Mercer, R.L. (1999) Context based spelling correction. Information Processing & Management, 27(5):517-522. find
  11. O’Neill, E., Young, R., Thiaville, E., MacCarthy, M., Carson-Berndsen, J. and Ventresque, A. (2020) S-Capade: Spelling Correction Aimed at Particularly Deviant Errors. In International Conference on Statistical Language and Speech Processing. pp. 85-96. find
  12. Etoori, P., Chinnakotla, M. and Mamidi, R. (2018) Automatic spelling correction for resource-scarce languages using deep learning. In Proceedings of ACL Conference 2018. Student Research Workshop, pp. 146-152. find
  13. Beeksma, M., Van Gompel, M., Kunneman, F., Onrust, L., Regnerus, B., Vinke, D., Brito, E., Bauckhage, C. and Sifa, R. (2018) Detecting and correcting spelling errors in high-quality Dutch Wikipedia text. Computational Linguistics in the Netherlands Journal. 8:122-137. find
  14. Grundkiewicz, R. and Junczys-Dowmunt, M. (2014) The wiked error corpus: A corpus of corrective Wikipedia edits and its application to grammatical error correction. In International Conference on Natural Language Processing, pp. 478-490. find
  15. Pirinen, T.A. and Lindén, K. (2014) State-of-the-art in weighted finite-state spell-checking. In Proceedings of the International Conference on Intelligent Text Processing and Computational Linguistics, Berlin, Heidelberg. find
  16. Park, C., Kim, K., Yang, Y., Kang, M. and Lim, H. (2020) Neural spelling correction: translating incorrect sentences to correct sentences for multimedia. Multimedia Tools and Applications, pp.1-18. ↗
  17. Li, X., Liu, H. and Huang, L. (2020) Context-aware Standalone Neural Spelling Correction. In arXiv preprint. find
  18. Hládek, D., Staš, J. and Pleva, M. (2020) Survey of Automatic Spelling Correction. Electronics. 9(10), 1670. https://doi.org/10.3390/electronics9101670. ↗
  19. Vardi, E., Muchnik, L., Conway, A. and Breakstone, M. (2021) WikiShark: An Online Tool for Analyzing Wikipedia Traffic and Trends. In Companion Proceedings of the Web Conference. find
  20. De Toni, G., Consonni, C. and Montresor, A. (2021) A general method for estimating the prevalence of influenza-like-symptoms with Wikipedia data. PloS. 16(8). ↗
  21. Boyd, A. (2018) Using Wikipedia edits in low resource grammatical error correction. In Proceedings of the 2018 EMNLP Workshop W-NUT: The 4th Workshop on Noisy User-generated Text. find
  22. Karve, S., Shende, V. and Hople, S. (2019) Semantic Relatedness Measurement from Wikipedia and WordNet Using Modified Normalized Google Distance. In Data Analytics and Learning. ↗
  23. Lewoniewski, W., Węcel, K. and Abramowicz, W. (2019) Multilingual ranking of Wikipedia articles with quality and popularity assessment in different topics. Computers. 8(3):60. ↗
  24. Hussain, M.J., Wasti, S.H., Huang, G., Wei, L., Jiang, Y. and Tang, Y. (2020) An approach for measuring semantic similarity between Wikipedia concepts using multiple inheritances. Information Processing & Management. 57(3): 102188. ↗

Updated

↑ back to top

This page in Markdown → https://md.research.elamur.ai/free/en/papers/goslin-2022-english-language-spelling-correction-as/