How to extract information from unstructured biomedical data and text.
What is BioIE? It includes any effort to extract structured information from unstructured (or, at least inconsistently structured) biological, clinical, or other biomedical data. The data source is often some collection of text documents written in technical language. If the resulting information is verifiable and consistent across sources, we may then consider it knowledge. Extracting information and producing knowledge from bio data requires adaptations upon methods developed for other types of unstructured data.
Resources included here are preferentially those available at no monetary cost and limited license requirements. Methods and datasets should be publicly accessible and actively maintained.
- Research Overviews
- Groups Active in the Field
- Journals and Events
- Code Libraries
- Tools, Platforms, and Services
- Ontologies and Controlled Vocabularies
- Data Models
- Biomedical Informatics on the Cloud: A Treasure Hunt for Advancing Cardiovascular Medicine - An overview of how BioIE and bioinformatics workflows can be applied to questions in cardiovascular health and medicine research.
- Clinical information extraction applications: A literature review - A review of clinical IE papers published as of September 2016. From Mayo Clinic group (see below).
- Literature Based Discovery: Models, methods, and trends - A review of Literature Based Discovery (LBD), or the philosophy that meaningful connections may be found between seemingly unrelated scientific literature.
- For some historical context on LBD, see papers by University of Chicago's Don Swanson and Neil Smalheiser, including Undiscovered Public Knowledge (paywalled) and Rediscovering Don Swanson: the Past, Present and Future of Literature-Based Discovery.
- Mining Electronic Health Records (EHRs): A Survey - A review of the methods and philosophy behind mining electronic health records, including using them for adverse event detection. See Table 2 for a list of relevant papers as of mid-2017.
- Capturing the Patient's Perspective: a Review of Advances in Natural Language Processing of Health-Related Text - A 2017 review of natural language processing methods applied to information extraction in health records and social media text. An important note from this review: "One of the main challenges in the field is the availability of data that can be shared and which can be used by the community to push the development of methods based on comparable and reproducible studies".
Groups Active in the Field
- Boston Children's Hospital Natural Language Processing Laboratory - Led by Dr. Guergana Savova, formerly at Mayo Clinic and the Apache cTAKES project.
- BD2K - The U.S. National Institutes of Health (NIH) funded 13 Centers of Excellence through their Big Data to Knowledge (BD2K) program, several of which developed tools and resources for BioIE.
- Brown Center for Biomedical Informatics - Based at Brown University and directed by Dr. Neil Sarkar, whose research group works on topics in clinical NLP and IE.
- Center for Computational Pharmacology NLP Group - based at University of Colorado, Denver and led by Larry Hunter - see their GitHub repos here.
- Groups at U.S. National Institutes of Health (NIH) / National Library of Medicine (NLM):
- JensenLab - Based at the Novo Nordisk Foundation Center for Protein Research at the University of Copenhagen, Denmark.
- National Centre for Text Mining (NaCTeM) - Based at the University of Manchester and led by Prof. Sophia Ananiadou, NaCTeM is concerned with text mining in general but has a particular focus on biomedical applications.
- Mayo Clinic's clinical natural language processing program - Several groups at Mayo Clinic have made major contributions to BioIE (for example, the Apache cTAKES platform) over the past 20 years.
- Monarch Initiative - A joint effort between groups at Oregon State University, Oregon Health & Science University, Lawrence Berkeley National Lab, The Jackson Laboratory, and several others, seeking to "integrate biological information using semantics, and present it in a novel way, leveraging phenotypes to bridge the knowledge gap".
- TurkuNLP - Based at the University of Turku and concerned with NLP in general with a focus on BioNLP and clinical applications.
- UTHealth Houston Biomedical Natural Language Processing Lab - Based in the University of Texas Health Science Center at Houston, School of Biomedical Informatics and led by Dr. Hua Xu.
- VCU Natural Language Processing Lab - Based at Virginia Commonwealth University and led by Dr. Bridget McInnes.
- Zaklab - Group led by Dr. Isaac Kohane at Harvard Medical School's Department of Biomedical Informatics (Dr. Kohane is also a steward of the n2c2 (formerly i2b2) datasets - see Datasets below).
- Columbia University Department of Biomedical Informatics - Led by Drs. George Hripcsak and Noémie Elhadad.
- AMIA - Many—but certainly not all—individuals studying biomedical informatics are members of the American Medical Informatics Association. AMIA publishes a journal, JAMIA (see below).
- IMIA - The International Medical Informatics Association. Publishes the IMIA Yearbook of Medical Informatics.
Journals and Events
The interdisciplinary nature of BioIE means researchers in this space may share their findings and tools in a variety of ways. They may publish papers in journals, as is common in the biomedical and life sciences. They may publish conference papers and, upon acceptance, give a poster and/or oral presentation at an event; this is common practice in computer science and engineering fields. Conference papers are often published in collections of proceedings. Preprint publication is an increasingly popular and institutionally-accepted way to publish findings as well. Surrounding these formal, written products are the ideas of open science, open data, and open source: the code, data, and software BioIE researchers develop are valuable resources to the community.
- Database - Its subtitle is "The Journal of Biological Databases and Curation". Open access.
- NAR - Nucleic Acids Research. Has a broad biomolecular focus but is particularly notable for its annual database issue.
- JAMIA - The Journal of the American Medical Informatics Association. Concerns "articles in the areas of clinical care, clinical research, translational science, implementation science, imaging, education, consumer health, public health, and policy".
- JBI - The Journal of Biomedical Informatics. Not open access by default, though it does have an open-access "X" version.
- Scientific Data - An open-access Springer Nature journal publishing "descriptions of scientifically valuable datasets, and research that advances the sharing and reuse of scientific data".
Conferences and Other Events
- ACM-BCB - The ACM Conference on Bioinformatics, Computational Biology, and Health Informatics. Held annually since 2010.
- BIBM - The IEEE International Conference on Bioinformatics and Biomedicine.
- ISMB - The International Conference on Intelligent Systems for Molecular Biology is an annual conference hosted by the International Society for Computational Biology since 1993. Much of its focus has concerned bioinformatics and computational biology without an explicit clinical focus, though it has included an increasing amount of text mining content (e.g., the 2019 meeting included a full-day special session on Text Mining for Biology and Healthcare). The meeting is combined with that of the European Conference on Computational Biology (ECCB) on odd-numbered years.
- PSB - The Pacific Symposium on Biocomputing.
Some events in BioIE are organized around formal tasks and challenges in which groups develop their own computational solutions, given a dataset.
- BioASQ - Challenges on biomedical semantic indexing and question answering. Challenges and workshops held annually since 2013.
- BioCreAtIvE workshop - These workshops have been organized since 2004, with BioCreative VI happening February 2017 and the BioCreative/OHNLP Challenge held in 2018. See Datasets below.
- SemEval workshop - Tasks and evaluations in computational semantic analysis. Tasks vary by year but frequently cover scientific and/or biomedical language, e.g. the SemEval-2019 Task 12 on Toponym Resolution in Scientific Papers.
- eHealth-KD - Challenges for encouraging "development of software technologies to automatically extract a large variety of knowledge from eHealth documents written in the Spanish Language". Previously held as part of TASS, an annual workshop for semantic analysis in Spanish.
- EHR DREAM Challenge - Held along with several other more bioinformatics-focused challenges, this challenge opened in October 2019 and focuses on using electronic health record data to predict patient mortality. Uses a synthetic data set rather than real EHR contents.
The field changes rapidly enough that tutorials any older than a few years are missing crucial details. A few more recent educational resources are listed below. A good foundational understanding of text mining techniques is very helpful, as is some basic experience with the Python and or R languages. Starting with the NLTK tutorials and then trying out the tutorials for the Flair framework will provide excellent examples of natural language processing, text mining, and modern machine learning-driven methods, all in Python. Most of the examples don't include anything biomedical, however, so the best option may be to learn by doing.
- Getting Started in Text Mining - A brief introduction to bio-text mining from Cohen and Hunter. More than ten years old but still quite relevant. See also an earlier paper by the same authors.
- Biomedical Literature Mining - A (non-free) volume of Methods in Molecular Biology from 2014. Chapters covers introductory principles in text mining, applications in the biological sciences, and potential for use in clinical or medical safety scenarios.
Video Lectures and Online Courses
- Coursera - Foundations of mining non-structured medical data - About three hours worth of video lectures on working with medical data of various types and structures, including text and image data. Appears fairly high-level and intended for beginners.
- JensenLab text mining exercises
- VIB text mining and curation training - This training workshop happenened in 2013 but the slides are still online.
- Biopython - paper - code - Python tools primarily intended for bioinformatics and computational molecular biology purposes, but also a convenient way to obtain data, including documents/abstracts from PubMed (see Chapter 9 of the documentation).
- Bio-SCoRes - paper - A framework for biomedical coreference resolution.
- medaCy - A system for building predictive medical natural language processing models. Built on the spaCy framework.
- ScispaCy - paper - A version of the spaCy framework for scientific and biomedical documents.
- rentrez - R utilities for accessing NCBI resources, including PubMed.
- Med7 - paper - code - a Python package and model (for use with spaCy) for doing NER with medication-related concepts.
Repos for Specific Datasets
- mimic-code - Code associated with the MIMIC-III dataset (see below). Includes some helpful tutorials.
Tools, Platforms, and Services
- cTAKES - paper - code - A system for processing the text in electronic medical records. Widely used and open source.
- CLAMP - paper - A natural language processing toolkit intended for use with the text in clinical reports. Check out their live demo first to see what it does. Usable at no cost for academic research.
- DeepPhe - A system for processing documents describing cancer presentations. Based on cTAKES (see above).
- DNorm - paper - A method for disease normalization, i.e., linking mentions of disease names and acronyms to unique concept identifiers. Downloadable version includes the NCBI Disease Corpus and BC5CDR (see Annotated Text Data below).
- PubTator Central - paper - A web platform that identifies five different types of biomedical concepts in PubMed articles and PubMed Central full texts. The full annotation sets are downloadable (see Annotated Text Data below).
- Pubrunner - A framework for running text mining tools on the newest set(s) of documents from PubMed.
- SemEHR - paper - an IE infrastructure for electronic health records (EHR). Built on the CogStack project.
- TaggerOne - paper - Performs concept normalization (see also DNorm above). Can be trained for specific concept types and can perform NER independent of other normalization functions.
- TabInOut - paper - a framework for IE from tables in the literature.
- Anafora - paper - An annotation tool with adjudication and progress tracking features.
- brat - paper - code - The brat rapid annotation tool. Supports producing text annotations visually, through the browser. Not subject specific; appropriate for many annotation projects. Visualization is based on that of the stav tool.
This paper from Hongfang Liu's group at Mayo Clinic demonstrates how text embeddings trained on biomedical or clinical text can, but don't always, perform better on biomedical natural language processing tasks. That being said, pre-trained embeddings may be appropriate for your needs, especially as training domain-specific embeddings can be computationally intensive.
- BioASQword2vec - paper - Qord embeddings derived from biomedical text (>10 million PubMed abstracts) using the popular word2vec tool.
- BioWordVec - paper - code - Word embeddings derived from biomedical text (>27 million PubMed titles and abstracts), including subword embedding model based on MeSH.
- BioBERT - paper - code - A PubMed and PubMed Central-trained version of the BERT language model.
- ClinicalBERT - Two language models trained on clinical text have similar names. Both are BERT models trained on the text of clinical notes from the MIMIC-III dataset.
- Flair embeddings from PubMed - A language model available through the Flair framework and embedding method. Trained over a 5% sample of PubMed abstracts until 2015, or > 1.2 million abstracts in total.
- SciBERT - paper - A BERT model trained on >1M papers from the Semantic Scholar database.
- BlueBERT - paper - A BERT model pre-trained on PubMed text and MIMIC-III notes.
- PubMedBERT - paper - A BERT model trained from scratch on PubMed, with versions trained on abstracts+full texts and on abstracts alone.
Some of the datasets listed below require a UMLS Terminology Services (UTS) account to access. Please note that the license granted with the UTS account requires users to submit an annual report about their use of UMLS resources. This is less challenging than it sounds.
Biomedical Text Sources
The following resources contain indexed text documents in the biomedical sciences.
- OHSUMED - paper - 348,566 MEDLINE entries (title and sometimes abstract) from between 1987 and 1991. Includes MeSH labels. Primarily of historical significance.
- PubMed Central Open Access Subset - A set of PubMed Central articles usable under licenses other than traditional copyright, though the exact licenses vary by publication and source. Articles are available as PDF and XML.
- CORD-19 - A corpus of scholarly manuscripts concerning COVID-19. Articles are primarily from PubMed Central and preprint servers, though the set also includes metadata on papers without full-text availability.
Annotated Text Data
- SPL-ADR-200db - paper - A pilot dataset containing standardised information, and annotations of occurence in text, about ~5,000 known adverse reactions for 200 FDA-approved drugs.
- BioCreAtIvE 1 - paper - 15,000 sentences (10,000 training and 5,000 test) annotated for protein and gene names. 1,000 full text biomedical research articles annotated with protein names and Gene Ontology terms.
- BioCreAtIvE 2 - paper - 15,000 sentences (10,000 training and 5,000 test, different from the first corpus) annotated for protein and gene names. 542 abstracts linked to EntrezGene identifiers. A variety of research articles annotated for features of protein–protein interactions.
- BioCreAtIvE V CDR Task Corpus (BC5CDR) - paper - 1,500 articles (title and abstract) published in 2014 or later, annotated for 4,409 chemicals, 5,818 diseases and 3116 chemical–disease interactions. Requires registration.
- BioCreative VI CHEMPROT Corpus - paper - >2,400 articles annotated with chemical-protein interactions of a variety of relation types. Requires registration.
- CRAFT - paper - 67 full-text biomedical articles annotated in a variety of ways, including for concepts and coreferences. Now on version 5, including annotations linking concepts to the MONDO disease ontology.
- n2c2 (formerly i2b2) Data - The Department of Biomedical Informatics (DBMI) at Harvard Medical School manages data for the National NLP Clinical Challenges and the Informatics for Integrating Biology and the Bedside challenges running since 2006. They require registration before access and use. Datasets include a variety of topics. See the list of data challenges for individual descriptions.
- NCBI Disease Corpus - paper - A corpus of 793 biomedical abstracts annotated with names of diseases and related concepts from MeSH and OMIM.
- PubTator Central datasets - paper - Accessible through a RESTful API or FTP download. Includes annotations for >29 million abstracts and ∼3 million full text documents.
- Word Sense Disambiguation (WSD) - paper - 203 ambiguous words and 37,888 automatically extracted instances of their use in biomedical research publications. Requires UTS account.
- Clinical Questions Collection - also known as CQC or the Iowa collection, these are several thousand questions posed by physicians during office visits along with the associated answers.
- BioNLP ST 2013 datasets - data from six shared tasks, though some may not be easily accessible; try the CG task set (BioNLP2013CG) for extensive entity and event annotations.
- BioScope - paper - a corpus of sentences from medical and biological documents, annotated for negation, speculation, and linguistic scope.
Protein-protein Interaction Annotated Corpora
Protein-protein interactions are abbreviated as PPI. The following sets are available in BioC format. The older sets (AIMed, BioInfer, HPRD50, IEPA, and LLL) are available courtesy of the WBI corpora repository and were originally derived from the original sets by a group at Turku University.
- AIMed - paper - 225 MEDLINE abstracts annotated for PPI.
- BioC-BioGRID - paper - 120 full text articles annotated for PPI and genetic interactions. Used in the BioCreative V BioC task.
- BioInfer - paper - 1,100 sentences from biomedical research abstracts annotated for relationships (including PPI), named entities, and syntactic dependencies. Additional information and download links are here.
- HPRD50 - paper - 50 scientific abstracts referenced by the Human Protein Reference Database, annotated for PPI.
- IEPA - paper - 486 sentences from biomedical research abstracts annotated for pairs of co-occurring chemicals, including proteins (hence, PPI annotations).
- LLL - paper - 77 sentences from research articles about the bacterium Bacillus subtilis, annotated for protein–gene interactions (so, fairly close to PPI annotations). Additional information is here.
- Columbia Open Health Data - paper - A database of prevalence and co-occurrence frequencies of conditions, drugs, procedures, and patient demographics extracted from electronic health records. Does not include original record text.
- Comparative Toxicogenomics Database - paper - A database of manually curated associations between chemicals, gene products, phenotypes, diseases, and environmental exposures. Useful for assembling ontologies of the related concepts, such as types of chemicals.
- MIMIC-III - paper - Deidentified health data from ~60,000 intensive care unit admissions. Requires completion of an online training course (CITI training) and acceptance of a data use agreement prior to use.
- MIMIC-CXR - The MIMIC Chest X-Ray database. Contains more than 377,000 radiographic images and accompanying free-text radiology reports. As with MIMIC-III, requires acceptance of a data use agreement.
- UMLS Knowledge Sources - reference manual - A large and comprehensive collection of biomedical terminology and identifiers, as well as accompanying tools and scripts. Depending on your purposes, the single file MRCONSO.RRF may be sufficient, as this file contains unique identifiers and names for all concepts in the UMLS Metathesaurus. See also the Ontologies and Controlled Vocabularies section below.
- MIMIC-IV - An update to MIMIC-III's multimodal patient data, now covering more recent years of admissions, plus a new data structure, emergency department records, and links to MIMIC-CXR images.
- eICU Collaborative Research Database - paper - a database of observations from more than 200 thousand intensive care unit admissions, with consistent structure. Requires registration, training course completion, and data use agreement.
Ontologies and Controlled Vocabularies
- Disease Ontology - paper - An ontology of human diseases. Has cross-links to MeSH, ICD, NCI Thesaurus, SNOMED, and OMIM. Public domain. Available on GitHub and on the OBO Foundry.
- RxNorm - paper - Normalized names for clinical drugs and drug packs, with combined ingredients, strengths, and form, and assigned types from the Semantic Network (see below). Released monthly.
- SPECIALIST Lexicon - paper - A general English lexicon that includes many biomedical terms. Updated yearly since 1994 and still updated as of 2019. Part of UMLS but does not require UTS account to download.
- UMLS Metathesaurus - paper - Mappings between >3.8 million concepts, 14 million concept names, and >200 sources of biomedical vocabulary and identifiers. It's big. It may help to prepare a subset of the Metathesaurus with the MetamorphoSys installation tool but we're still talking about ~30 Gb of disk space required for the 2019 release. See the manual here. Requires UTS account.
- UMLS Semantic Network - paper - Lists of 133 semantic types and 54 semantic relationships covering biomedical concepts and vocabulary. Is the Metathesaurus too complex for your needs? Try this. Does not require UTS account to download.
Do you need a data model? If you are working with biomedical data, then the answer is probably "Yes".
- Biolink - code - A data model of biological entities. Provided as a YAML file.
- BioUML - paper - An architecture for biomedical data analysis, integration, and visualization. Conceptually based on the visual modeling language UML.
- OMOP Common Data Model - a standard for observational healthcare data.
Credits for curators and sources.
Contribute to this list: https://github.com/caufieldjh/awesome-bioie