Taxamatch, an Algorithm for Near (‘Fuzzy’) Matching of Scientific Names in Taxonomic Databases

Misspellings of organism scientific names create barriers to optimal storage and organization of biological data, reconciliation of data stored under different spelling variants of the same name, and appropriate responses from user queries to taxonomic data systems. This study presents an analysis of the nature of the problem from first principles, reviews some available algorithmic approaches, and describes Taxamatch, an improved name matching solution for this information domain. Taxamatch employs a custom Modified Damerau-Levenshtein Distance algorithm in tandem with a phonetic algorithm, together with a rule-based approach incorporating a suite of heuristic filters, to produce improved levels of recall, precision and execution time over the existing dynamic programming algorithms n-grams (as bigrams and trigrams) and standard edit distance. Although entirely phonetic methods are faster than Taxamatch, they are inferior in the area of recall since many real-world errors are non-phonetic in nature. Excellent performance of Taxamatch (as recall, precision and execution time) is demonstrated against a reference database of over 465,000 genus names and 1.6 million species names, as well as against a range of error types as present at both genus and species levels in three sets of sample data for species and four for genera alone. An ancillary authority matching component is included which can be used both for misspelled names and for otherwise matching names where the associated cited authorities are not identical.

[1]  IRRI’s Upland,et al.  Consultative Group on international aGriCultural researCh , 2005 .

[2]  Christopher D. Manning,et al.  Introduction to Information Retrieval , 2010, J. Assoc. Inf. Sci. Technol..

[3]  D. Raup Biological extinction in earth history. , 1986, Science.

[4]  Vladimir I. Levenshtein,et al.  Binary codes capable of correcting deletions, insertions, and reversals , 1965 .

[5]  Emmanuel J. Yannakoudakis,et al.  The rules of spelling errors , 1983, Inf. Process. Manag..

[6]  Karen Kukich,et al.  Techniques for automatically correcting words in text , 1992, CSUR.

[7]  D J Patterson,et al.  Names are key to the big new biology. , 2010, Trends in ecology & evolution.

[8]  Alexander Dekhtyar,et al.  Information Retrieval , 2018, Lecture Notes in Computer Science.

[9]  William E. Winkler,et al.  Approximate String Comparison and its Effect on an Advanced Record Linkage System , 1997 .

[10]  Salvatore J. Stolfo,et al.  Real-world Data is Dirty: Data Cleansing and The Merge/Purge Problem , 1998, Data Mining and Knowledge Discovery.

[11]  Emmanuel J. Yannakoudakis,et al.  An intelligent spelling error corrector , 1983, Inf. Process. Manag..

[12]  Thomas A Kluyver,et al.  Taxonome: a software package for linking biological species data , 2013, Ecology and evolution.

[13]  Walter E. Haefeli,et al.  Misspellings in drug information system queries: Characteristics of drug name spelling errors and strategies for their prevention , 2010, Int. J. Medical Informatics.

[14]  Carla Cicero,et al.  FORTY-THIRD SUPPLEMENT TO THE AMERICAN ORNITHOLOGISTS' UNION CHECK-LIST OF NORTH AMERICAN BIRDS , 2002 .

[15]  Normandy David,et al.  Gender agreement of avian species names , 2002 .

[16]  Peter Christen,et al.  A Comparison of Personal Name Matching: Techniques and Practical Issues , 2006, Sixth IEEE International Conference on Data Mining - Workshops (ICDMW'06).

[17]  Fred J. Damerau,et al.  A technique for computer detection and correction of spelling errors , 1964, CACM.

[18]  R. Froese An algorithm for identifying misspellings and synonyms in lists of scientific names of fishes , 1997 .

[19]  Robert A. Wagner,et al.  An Extension of the String-to-String Correction Problem , 1975, JACM.

[20]  Justin Zobel,et al.  Finding approximate matches in large lexicons , 1995, Softw. Pract. Exp..

[21]  Eduardo Couto Dalcin,et al.  Data quality concepts and techniques applied to taxonomic databases , 2005 .

[22]  Michael J. Fischer,et al.  The String-to-String Correction Problem , 1974, JACM.

[23]  Klaus U. Schulz,et al.  Fast Selection of Small and Precise Candidate Sets from Dictionaries for Text Correction Tasks , 2007, Ninth International Conference on Document Analysis and Recognition (ICDAR 2007).

[24]  Pradeep Ravikumar,et al.  A Comparison of String Distance Metrics for Name-Matching Tasks , 2003, IIWeb.

[25]  Sebastian Deorowicz,et al.  Correcting Spelling Errors by Modelling Their Causes , 2005 .

[26]  Zhenyuan Lu,et al.  The taxonomic name resolution service: an online tool for automated standardization of plant names , 2013, BMC Bioinformatics.

[27]  Patrick A. V. Hall,et al.  Approximate String Matching , 1994, Encyclopedia of Algorithms.

[28]  Luis Cayuela,et al.  taxonstand: An r package for species names standardisation in vegetation databases , 2012 .

[29]  Gonzalo Navarro,et al.  A guided tour to approximate string matching , 2001, CSUR.

[30]  Peter Willett,et al.  Applications of n-grams in textual information systems , 1998, J. Documentation.

[31]  Klaus U. Schulz,et al.  Fast string correction with Levenshtein automata , 2002, International Journal on Document Analysis and Recognition.

[32]  Kevin Winker,et al.  Fifty-Fourth Supplement to the American Ornithologists' Union Check-list of North American Birds , 2003, The Auk.

[33]  Gustavo Henrique Carvalho,et al.  Plantminer: A web tool for checking and gathering plant species taxonomic information , 2010, Environ. Model. Softw..