Project Information
Featured
Links
| Introduction
YTEX is:
Clinical NLP
In addition to cTAKES' rich feature set YTEX provides the following:
For a high-level overview, refer to our paper: Garla, V. et al. The Yale cTAKES extensions for document classification: architecture and application. Journal of the American Medical Informatics Association (2011). doi:10.1136/amiajnl-2011-000093
Semantic Similarity
YTEX provides a generalizable framework for the computation of semantic similarity measures from any domain ontology; we have tested SNOMED-CT, MeSH, and the UMLS Metathesaurus, and provides programmatic, command line, and a RESTful and XML web services interfaces to users to compute similarity measures. We provide a publicly available web service to compute semantic similarity measures:http://informatics.med.yale.edu/ytex.web/.
For a high-level overview of the semantic similarity methods we've implemented, refer to our paper: Garla, V and Brandt, C. Semantic similarity in the biomedical domain: an evaluation across ontologies and application to word sense disambiguation (submitted).
Data Mining Integration
Data mining tools and statistics packages can access document annotations directly from the database. To support machine learning approaches, YTEX provides tools to extract document features in a bag-of-words representation for use with various data-mining platforms.
Feature Engineering
For a high-level overview of the feature engineering methods we've developed, refer to our paper: Garla, V and Brandt, C. Ontology-Guided Feature Engineering for Clinical Text Classification (2012) http://dx.doi.org/10.1016/j.jbi.2012.04.010.
We developed novel information-theoretic techniques that utilize the taxonomical structure of the Unified Medical Language System (UMLS) to improve feature ranking, and we developed a semantic similarity measure that projects clinical text into a feature space that improves classification. We improved the performance of the top-ranked machine learning-based system from the I2B2 2008 challenge with these methods.
These feature engineering tools are included in YTEX. We illustrate their usage on the I2B2 2008 Challenge dataset; refer toFeature Engineering for a detailed explanation on how to apply these tools.
Semantic Seach
To simplify document retrieval, YTEX includes a semantic search engine, implemented as a web service. This search engine enables document retrieval based on UMLS Concepts and their negation status, patient id, document date, and document type. Try our demo search app: http://informatics.med.yale.edu/ytex.web/semanticSearch.iface
Find UMLS Concepts:
Search Results:
Text ProcessingNegation Detection with Negex
YTEX provides the NegexAnnotator, a drop-in replacement for the cTAKES Negation Detection Annotation algorithm. This annotator is based on the Negex source from the Java GeneralNegex package. Advantages over the cTAKES algorithm include:
SegmentRegexAnnotator
To identify document sections in flat files, YTEX includes an annotator that identifies section headings and boundaries based on regular expressions. This relies on a configurable table of regular expressions and segment ids.
NamedEntityRegexAnnotator
The DictionaryLookup algorithm of cTAKES relies on a lookup table that contains the lexical variants of a named entity. Some concepts have far too many lexical variants to be captured in a lookup table. To address this issue, YTEX includes an annotator that uses regular expressions to identify named entities.
DBConsumer
YTEX tools stores document annotations in a relational database, thereby simplifying document feature extraction: annotations can be retrieved using the structured query language (SQL).
UIMA annotations are limited in complexity and obey a strict class hierarchy. These restrictions on the structure of UIMA annotations facilitate a high-fidelity relational representation. YTEX currently supports MS SQL Server, Oracle, and MySQL.
DBAnnotationViewer
YTEX includes a modified UIMA AnnotationViewer to view document annotations directly from the database. In addition to the relational representation; the DBConsumer stores the XML representation of the UIMA CAS of each document in the database. The DBAnnotationViewer simply retrieves the XML CAS for viewing.
|
Showing posts with label cTAKES. Show all posts
Showing posts with label cTAKES. Show all posts
Wednesday, December 5, 2012
ytex-Clinical NLP, Semantic Similarity, Data Mining
cTAKES GUI
source:
This is the home of the Related Project - NLP cTAKES Project space.
News: cTAKES is now incubating as an Apache Software Foundation Project!
There is a wealth of information within the plain text clinical narrative. The purpose of this cell is to harness the unstructured information by allowing i2b2 users to query and join that information with existing i2b2 concepts. Currently, the entire note is commonly stored as a single row in the observation_blob field in the observation_fact table in i2b2. One of NLP cTAKES’ features is its capability to ‘read’ through and extract concepts from plain text notes and transform them into structured and normalized information. The purpose of this cell is to incorporate cTAKES and i2b2 by formatting the output of cTAKES into the i2b2 observation_fact table format (facts, concepts, modifiers, and values) which can then be easily queried by existing i2b2 interfaces.
There will be 2 main components:
- An administrative tool (cTAKES GUI) that will allow users to specify the input DataSource of the note(s), the output of the notes(s), and the NLP pipeline to be used. The cTAKES GUI will be designed to be a web interface in a self contained package using Jetty- just run startup.sh or startup.bat. (However, it can also be packaged a war file to be easily deployed to other standard servlet containers such as Tomcat). The configuration information will be stored and could be reused for future experiments. The output in this case will be specially formatted in the observation_fact format.

- An interface for users to query the extracted data. We plan to reuse the existing i2b2 web client tool by adding an ‘NLP’ ontology which contains all of the concepts that could be used to filter and joined with other ontologies such as demographics or codified data.

Documentation
Quick Start Guide:
In addition to deploying the cTAKES GUI as a war file to a managed servlet container such as JBoss or Tomcat, cTAKES provides a standalone web server version running Jetty out of the box.
- Java JDK (not JRE) 1.6+ is required. Feel free to download and install the Java JDK from:http://www.oracle.com/technetwork/java/javase/downloads/index.html
- Download the cTAKES GUI code (currently in beta) from https://ohnlp.svn.sourceforge.net/svnroot/ohnlp/branches/cTAKES-GUI-0.0.1/ctakes-gui-0.0.1.zip
- Unzip the contents to a local directory
- If required, modify the startup.bat or startup.sh with the path to your JAVA_HOME environment variable. Also available as an environment variable is the JETTY_PORT (defaults to 9998).
- Open a command line window/terminal and execute startup.sh or startup.bat
- Wait for the message "Jetty running on http://localhost:9998/index.jsp"
- Open your favorite web browser and point the url to: http://localhost:9998/index.jsp
- cTAKES GUI Quick Reference Guide.pdf
Open Health Natural Language Processing (OHNLP) Consortium
source: https://wiki.nci.nih.gov/display/VKC/Open+Health+Natural+Language+Processing+(OHNLP)+Consortium
Skip to end of metadata
Go to start of metadata
- Added by Stephen Reilly, last edited by Troy Bleeker on Mar 19, 2012 (view change)
- show comment
Open Health Natural Language Processing (OHNLP) Consortium
What is the Goal of NLP?
The goal of the Open Health Natural Language Processing Consortium is to establish an open source consortium to promote past and current development efforts and to encourage participation in advancing future efforts. The purpose of this consortium is to facilitate and encourage new annotator and pipeline development, exchange insights and collaborate on novel biomedical natural language processing systems and develop gold-standard corpora for development and testing. The Consortium promotes the open source UIMA framework and SDK as the basis for biomedical NLP systems. Applications created within UIMA consist of software components (referred to as annotators) and their associated configuration files and external resources. Within the framework, one can also create complete pipelines composed of a sequence of annotators and the data flow between them.
Why use NLP?
The clinical and research medical community creates, manages and uses a wide variety of semi-structured and unstructured textual documents. To perform research, to improve standards of care and to evaluate treatment outcomes easily — and ideally, in an automated fashion — access to the content of these documents is required. The knowledge contained in unstructured textual documents (e.g., pathology reports, clinical notes), is critical to achieving all of these goals. For instance, clinical research usually requires the identification of cohorts that follow precisely defined patient- and disease-related inclusion and exclusion parameters. Biomedical NLP systems extract structured information from textual reports, facilitating searching, comparing and summarization.
What is NLP?
Natural language processing (NLP) is a field of computer science and linguistics concerned with the interactions between computers and human (natural) languages. Natural language generation systems convert information from computer databases into readable human language. Natural language understanding systems convert samples of human language into more formal representations such as parse trees or first order logic that are easier for computer programs to manipulate.
NLP is used to classify, extract, encode and summarize from text documents. An NLP application will unlock the text to be used for decision support, outbreak detection and quality review.
NLP applications in the biomedical domain include:
- mining of information from biomedical documents and publications
- retrieval of information from large, unorganized collections
- communication with clinicians, patients, and scientists through natural language
Examples of NLP tasks are:
- classifying chief complaints into syndrome categories, for example the chief complaint of cough or SOB into the category of respiratory system
- extracting a problem list from a history and physical examination of patient
- determining change in a tumor size over a period of time (example of encoding)
- summarizing pages of past clinical notes such as family history, chronic conditions, new complaints and test results
Use application examples of NLP include:
- identifying unreported MRSA infections
- extracting information on pacemaker implantation procedures
- identifying family history diagnoses
- generating a problem list
- identifying adverse events
- matching patients to clinical trials
There are two main approaches to NLP use application, the symbolic approach and the statistical approach.
Symbolic NLP includes:
- Morphological Knowledge (how words are created)
- Lexical Knowledge (string matching)
- Syntactic Knowledge (how words can be combine to form sentences)
- Semantic Knowledge (what words mean)
- Pragmatic Knowledge (how sentences are used in different situations)
- Discourse Knowledge (how the preceding sentences affect interpretation of next sentences)
Statistical NLP includes:
- Modeling document content as bag-of-words (if “cough” appears > fluid)
- Modeling probabilistic relationships among words and phrases (“purulent discharge” > fluid; “upon discharge > release)
- Modeling probabilistic relationships between words and concepts (caries, cavity, abrasion > caries)
Where do I find out more?
Page: OHNLP Documentation and DownloadsPage: OHNLP External LinksPage: OHNLP Getting InvolvedPage: OHNLP GovernancePage: OHNLP LicensingPage: OHNLP PublicationsPage: OHNLP News
Subscribe to:
Posts (Atom)
