220 likes | 535 Views
Introduction to Natural Language Processing. Phenotype RCN Meeting Feb 2013. What is Natural Language Processing?. Siri. Optical Character Recognition. Speech-to-Text. IBM Watson – Jeopardy. Translation. Spell and Grammar Checks. What is Natural Language Processing?.
E N D
Introduction to Natural Language Processing Phenotype RCN Meeting Feb 2013
What is Natural Language Processing? Siri Optical Character Recognition Speech-to-Text IBM Watson – Jeopardy Translation Spell and Grammar Checks Introduction to NLP
What is Natural Language Processing? • Methods to translate human (natural) language input, allowing computers to derive meaning from. Very general definition. • Context of the Phenotype RCN meeting • Information Extraction (IE)Automatic extraction of structured information from unstructured documents • Text MiningDerive high-quality information from text. Extract features (IE) and use data mining or pattern recognition to find ‘interesting’ facts and relations • BioNLPText mining applied to texts and literature of the biomedical and molecular biology domain Introduction to NLP
Outline Three Questions • What do we want from NLP? • How can we get Facts? What approaches are there? Requirements and what are the costs? • What can you expect? How do we measure quality? Are there limits? Introduction to NLP
Do we know what we want? 1. What do we want from NLP? Introduction to NLP
What do we want from NLP? Speedup: BioCuration for Phenotypes • What is a document talking about? • Named Entity RecognitionPrrx1 with GeneID:18933 • Fact extraction A regulates B, Inhibition of B leads to Phenotype C • Automatic annotation • Find all facts for phenotype annotation • Only highlight most relevant information Introduction to NLP
What do we want to annotate? Documents in the biomedical domain • Publications • Abstracts • Full text (PDF/website) • Results, Methods, Image/Table captions • Supplemental material: Tables • Free form text • E.g. existing databases such as OMIM • Non electronic documents • Books • Scanned documents Introduction to NLP
The long road of finding phenotypes in a text 2. How can we get Facts? Introduction to NLP
How can we get Facts? • NLP is difficult, because Language is: • Ambiguous homonyms, acronyms, … • Variable spelling, synonyms, sentence structure, … • Complex multiple components, chains, options, … • BioNLP: multi step, multi algorithm • Every algorithm has been applied to BioNLP • Ongoing research area Introduction to NLP
Preliminaries Getting the Text • Select a corpus/prioritize documents • Get the document • Repositories (i.e. PubMedCentral) • Local copy • Scan and OCR (Error rate?) • Extract text (PDF, HTML, …) • Language detection • Document SegmentationTitle, Headers, Captions, Literature references Introduction to NLP
Parsing • Goal: Find sentences and phrases, semantic units • Lexical analysis: Define tokens/words • Find: Noun phrases, sentences, units Prrx1knockout mice exhibit malformation of skeletal structures [49]. • Heavy vs. light weight approaches • Heavy: Grammars and parse trees (Traditional NLP) • Computationally expensive, language dependent • Can be high quality • Problematic with text fragments and malformed text • Light: Rules • Heuristics • Chemical formulas and special names can break tokenizer assumptions Introduction to NLP
Entity Recognition • Match text fragments to entities • Multiple approaches • Dictionaries of known entity names • Proteins, Genes (Prrx1) • Ontology terms: skeleton (UBERON:0004288) • Required: Know synonyms a priori • Cannot find new entities, i.e. new ontology term candidates • Rules and patterns • Match entities according to a set of rulesMutation short-hand G121A • How to create the rules? • Machine learning Introduction to NLP
ER – Machine Learning • Transform the text into a feature vector F = {Prrx1_N, exhibit_V, knockout_A, knockout_mice_NP,malformation_N, mice_N, skeletal_A,skeletal_structure_NP, structure_N} • Supervised, unsupervised, hybrid approaches • RequiredA priori knowledge and/or training data • Problems • Training data – Neverenough training data • Overfitting • Only learn to classify the training data • No generalization for new documents Introduction to NLP
From Text Matches to Entities • A text match is not an named (bio-)entity • Require at least an identifier • Try to find supporting evidence • Disambiguation • Multiple candidates for one match • Use context to filter • Prrx1 55 candidate genes species Mus musculus PRRX1_MOUSE GeneID:18933 • False positive matches • Common (English) wordsHAS is a short name for ‘Heme A synthase’ • Fruit fly genes/proteins Ken and Barbie Introduction to NLP
Finding Facts • Facts have multiple components Prrx1 knockout mice exhibit malformation of skeletal structures • PRRX1_MOUSE GeneID:18933 • gene knock out OBI:001148 • MusMusculus NCBITaxon:10090 • malformed PATO:0000646 • skeleton UBERON:0004288 • Use all the input from the previous steps • Named entities • Assign relations • Disambiguate • Remove redundant or known relations • Rank candidates gene_knock_out(PRRX1_MOUSE) has_phenotypemalformed(skeleton) Introduction to NLP
Reality 3. What can you expect? Introduction to NLP
What can you expect? • Every step in the BioNLP process may introduce errors • Many steps • Errors propagate • How do we measure quality? Benchmarks • Ideal benchmark • Large and representative test set of documents • Pre-annotated by experts • Benchmarking with real word problems • BioCreAtIvE: A critical assessment of text mining methods in molecular biology (Next talk) Introduction to NLP
Benchmarks • Common quality measures • Precision Fraction of relevant hits • Recall Fraction of all relevant documents • F-score Harmonic mean of precision and recall • Is that sufficient? • Factually correct, but irrelevant • Partially correct • Incomplete matches • Overeager matches • Ranking: Best matches first? Introduction to NLP
What can you expect? Upper limits Prrx1 knockout mice exhibit malformation of skeletal structures • PRRX1_MOUSE 0.95 • gene knock out 0.8 • MusMusculus0.98 • malformed 0.85 • skeleton 0.95 • 0.95 0.8 0.98 * 0.85 * 0.95 0.60 (On average) 40 of 100 facts will be wrong or missed. Introduction to NLP
What are the costs? • No out-of-the-box solution • All approaches require some sort of customization, training data or at least feedback • Parsing: Language, heuristics (stop words) • Entity Recognition • Dictionaries: Names, synonyms, ontologies, DBs • Rules: Hand-curated, training sets • Machine Learning: Convert text to features, training sets • Disambiguation: As much information as possible • Facts • Define facts • Different algorithms for different facts • Continuous cycle Introduction to NLP
Summary • No magic bullet Many different approaches • BioNLP can be very good with specific tasks Next talks • Remember: Errors propagate • Only as good as the input and feedback • Abstract vs. Full text • High quality vs. high quantity training data Introduction to NLP
Thank you. Introduction to NLP