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 Feb. 25, 2013 Introduction to NLP 2 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 Mining Derive high-quality information from text. Extract features (IE) and use data mining or pattern recognition to find ‘interesting’ facts and relations – BioNLP Text mining applied to texts and literature of the biomedical and molecular biology domain Feb. 25, 2013 Introduction to NLP 3 Outline Three Questions 1. What do we want from NLP? 2. How can we get Facts? What approaches are there? Requirements and what are the costs? 3. What can you expect? How do we measure quality? Are there limits? Feb. 25, 2013 Introduction to NLP 4 Do we know what we want? 1. WHAT DO WE WANT FROM NLP? Feb. 25, 2013 Introduction to NLP 5 What do we want from NLP? Speedup: BioCuration for Phenotypes • What is a document talking about? – Named Entity Recognition Prrx1 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 Feb. 25, 2013 Introduction to NLP 6 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 Feb. 25, 2013 Introduction to NLP 7 The long road of finding phenotypes in a text 2. HOW CAN WE GET FACTS? Feb. 25, 2013 Introduction to NLP 8 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 Feb. 25, 2013 Introduction to NLP 9 Preliminaries Getting the Text 1. Select a corpus/prioritize documents 2. Get the document – Repositories (i.e. PubMedCentral) – Local copy – Scan and OCR (Error rate?) 3. Extract text (PDF, HTML, …) 4. Language detection 5. Document Segmentation Title, Headers, Captions, Literature references Feb. 25, 2013 Introduction to NLP 10 Parsing • Goal: Find sentences and phrases, semantic units 1. 2. Lexical analysis: Define tokens/words Find: Noun phrases, sentences, units Prrx1 knockout 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 Feb. 25, 2013 Introduction to NLP 11 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 rules Mutation short-hand G121A • How to create the rules? – Machine learning Feb. 25, 2013 Introduction to NLP 12 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 • Required A priori knowledge and/or training data • Problems – Training data – Never enough training data – Overfitting • Only learn to classify the training data • No generalization for new documents Feb. 25, 2013 Introduction to NLP 13 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) words HAS is a short name for ‘Heme A synthase’ • Fruit fly genes/proteins Ken and Barbie Feb. 25, 2013 Introduction to NLP 14 Finding Facts • Facts have multiple components Prrx1 knockout mice exhibit malformation of skeletal structures PRRX1_MOUSE GeneID:18933 gene knock out OBI:001148 Mus Musculus 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_phenotype malformed(skeleton) Feb. 25, 2013 Introduction to NLP 15 Reality 3. WHAT CAN YOU EXPECT? Feb. 25, 2013 Introduction to NLP 16 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) Feb. 25, 2013 Introduction to NLP 17 Benchmarks • Common quality measures – Precision – Recall – F-score Fraction of relevant hits Fraction of all relevant documents Harmonic mean of precision and recall • Is that sufficient? – Factually correct, but irrelevant – Partially correct • Incomplete matches • Overeager matches – Ranking: Best matches first? Feb. 25, 2013 Introduction to NLP 18 What can you expect? Upper limits Prrx1 knockout mice exhibit malformation of skeletal structures PRRX1_MOUSE 0.95 gene knock out 0.8 Mus Musculus 0.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. Feb. 25, 2013 Introduction to NLP 19 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 Feb. 25, 2013 Introduction to NLP 20 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 Feb. 25, 2013 Introduction to NLP 21 THANK YOU. Feb. 25, 2013 Introduction to NLP 22