title: Building a biomedical tokenizer using the token lattice design pattern and the adapted Viterbi algorithm.
abstract: BACKGROUND
  Tokenization is an important component of language processing yet there is no widely accepted tokenization method for English texts, including biomedical texts. Other than rule based techniques, tokenization in the biomedical domain has been regarded as a classification task. Biomedical classifier-based tokenizers either split or join textual objects through classification to form tokens. The idiosyncratic nature of each biomedical tokenizer's output complicates adoption and reuse. Furthermore, biomedical tokenizers generally lack guidance on how to apply an existing tokenizer to a new domain (subdomain). We identify and complete a novel tokenizer design pattern and suggest a systematic approach to tokenizer creation. We implement a tokenizer based on our design pattern that combines regular expressions and machine learning. Our machine learning approach differs from the previous split-join classification approaches. We evaluate our approach against three other tokenizers on the task of tokenizing biomedical text.
  
  
  RESULTS
  Medpost and our adapted Viterbi tokenizer performed best with a 92.9% and 92.4% accuracy respectively.
  
  
  CONCLUSIONS
  Our evaluation of our design pattern and guidelines supports our claim that the design pattern and guidelines are a viable approach to tokenizer construction (producing tokenizers matching leading custom-built tokenizers in a particular domain). Our evaluation also demonstrates that ambiguous tokenizations can be disambiguated through POS tagging. In doing so, POS tag sequences and training data have a significant impact on proper text tokenization.
authors.affiliation: Department of Computer Science, University of Victoria, Victoria, Canada. nbarrett@uvic.ca
authors.forename: Neil
authors.initials: N
authors.lastname: Barrett
authors.forename: Jens
authors.initials: J
authors.lastname: Weber-Jahnke
mesh_terms: D000465:Algorithms; D016247:Information Storage and Retrieval / Q000379:methods*; D009323:Natural Language Processing