All Projects → IHTSDO → snomed-owl-toolkit

IHTSDO / snomed-owl-toolkit

Licence: Apache-2.0 license
The official SNOMED CT OWL Toolkit. OWL conversion, classification and authoring support.

Programming Languages

java
68154 projects - #9 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to snomed-owl-toolkit

text classifier
Tensorflow2.3的文本分类项目,支持各种分类模型,支持相关tricks。
Stars: ✭ 135 (+132.76%)
Mutual labels:  classification
InstantDL
InstantDL: An easy and convenient deep learning pipeline for image segmentation and classification
Stars: ✭ 33 (-43.1%)
Mutual labels:  classification
focalloss
Focal Loss of multi-classification in tensorflow
Stars: ✭ 75 (+29.31%)
Mutual labels:  classification
GenderClassifier
Gender_classification_challenge
Stars: ✭ 40 (-31.03%)
Mutual labels:  classification
HRFormer
This is an official implementation of our NeurIPS 2021 paper "HRFormer: High-Resolution Transformer for Dense Prediction".
Stars: ✭ 357 (+515.52%)
Mutual labels:  classification
MLLabelUtils.jl
Utility package for working with classification targets and label-encodings
Stars: ✭ 30 (-48.28%)
Mutual labels:  classification
Aspect-Based-Sentiment-Analysis
A python program that implements Aspect Based Sentiment Analysis classification system for SemEval 2016 Dataset.
Stars: ✭ 57 (-1.72%)
Mutual labels:  classification
ProbQA
Probabilistic question-asking system: the program asks, the users answer. The minimal goal of the program is to identify what the user needs (a target), even if the user is not aware of the existence of such a thing/product/service.
Stars: ✭ 43 (-25.86%)
Mutual labels:  classification
nlp classification
Implementing nlp papers relevant to classification with PyTorch, gluonnlp
Stars: ✭ 224 (+286.21%)
Mutual labels:  classification
eeg-rsenet
Motor Imagery EEG Signal Classification Using Random Subspace Ensemble Network
Stars: ✭ 24 (-58.62%)
Mutual labels:  classification
volkscv
A Python toolbox for computer vision research and project
Stars: ✭ 58 (+0%)
Mutual labels:  classification
pyts-repro
A repository to compare the performance between the algorithms implemented in pyts and the performance reported in the literature
Stars: ✭ 15 (-74.14%)
Mutual labels:  classification
XED
XED multilingual emotion datasets
Stars: ✭ 34 (-41.38%)
Mutual labels:  classification
Skin-Lesion-Recognition.Pytorch
Rank3 Code for ISIC 2018: Skin Lesion Analysis Towards Melanoma Detection, Task 3
Stars: ✭ 37 (-36.21%)
Mutual labels:  classification
Opensource OBIA processing chain
An open-source semi-automated processing chain for urban OBIA classification.
Stars: ✭ 75 (+29.31%)
Mutual labels:  classification
candock
A time series signal analysis and classification framework
Stars: ✭ 56 (-3.45%)
Mutual labels:  classification
Dimensionality-reduction-and-classification-on-Hyperspectral-Images-Using-Python
In this repository, You can find the files which implement dimensionality reduction on the hyperspectral image(Indian Pines) with classification.
Stars: ✭ 63 (+8.62%)
Mutual labels:  classification
neuralBlack
A Multi-Class Brain Tumor Classifier using Convolutional Neural Network with 99% Accuracy achieved by applying the method of Transfer Learning using Python and Pytorch Deep Learning Framework
Stars: ✭ 36 (-37.93%)
Mutual labels:  classification
sklearn-audio-classification
An in-depth analysis of audio classification on the RAVDESS dataset. Feature engineering, hyperparameter optimization, model evaluation, and cross-validation with a variety of ML techniques and MLP
Stars: ✭ 31 (-46.55%)
Mutual labels:  classification
napkinXC
Extremely simple and fast extreme multi-class and multi-label classifiers.
Stars: ✭ 38 (-34.48%)
Mutual labels:  classification

Snomed OWL Toolkit Build Status codecov

An Open Source Toolkit to make SNOMED CT to OWL conversion and classification simple.

This toolkit is used within the SNOMED International Authoring Environment. It is backward compatible with all past RF2 releases and will be forward compatible with all future releases. New versions of this tool will be produced as new description logic features are added to SNOMED CT.

A classification REST API using this toolkit is available, see the Classification Service.

Java Library Capabilities

  • Convert Snomed RF2 to an OWL Ontology
    • Works on the command line
    • Uses MRCM Attribute Domain Reference Set for grouping information
    • Uses OWL Axiom Reference Set
    • Includes all descriptions:
      • Fully Specified Names as rdfs:label
      • Preferred Synonyms as skos:prefLabel
      • Other Synonyms as skos:altLabel
      • Text Definitions as skos:definition
      • Language and dialect markup
    • Support for Snomed Editions and Extensions
    • For Java integration see RF2ToOWLService.java
  • Classify Snomed
    • Uses RF2 to OWL conversion
      • Optionally load an RF2 Delta archive on top of the Snapshot
    • RF2 delta output of relationship changes (no identifier generation)
    • Any OWL API Reasoner supported (default is ELK)
    • See SnomedReasonerService.java
  • Authoring Environment UI Support
    • Convert relationships to axioms
    • Convert axioms to relationships
    • Support for General Concept Axioms
    • See AxiomRelationshipConversionService.java

Stated Relationships and Axioms

The toolkit is capable of working with stated relationships and/or axioms from the OWL Axiom reference set.

These should only be used when modelling concepts. The inferred relationships should nearly always be used in SNOMED CT implementations. The inferred relationships contain the attributes of any stated relationships or axioms present.

Concept model information will be loaded from all active relationships and all active axioms. Either format can be used or both in combination. All the stated relationships of a single concept will form a single new axiom. If there are any axioms in the reference set for the same concept these will be treated as additional axioms. Stated relationships are never merged into an axiom from the reference set.

If there are only axioms in the International Edition and only stated relationships in an extension then classification or conversion to the OWL file will still work. The extension can add modelling for its own concepts using stated relationships or axioms. If the extension wants to override the modelling of an International Axiom then a new state of that entire axiom must be in the extension using the same OWL Axiom reference set member id.

Documentation

Command Line Use

This toolkit has been developed for use in other Java applications as a library but some functionality can be used via the command line.

The 'executable' jar file is available on the latest release page for use on the command line.

Command line options:

Usage:
 -help                                  Print this help message.

 -classify                              Run classification process.
                                        Results are written to an RF2 delta archive.

 -rf2-to-owl                            (Default mode) Convert RF2 to OWL Functional Syntax.
                                        Results are written to an .owl file.

 -rf2-stated-to-complete-owl            Convert RF2 snapshot stated relationships to complete OWL Axiom reference set preview.
                                        Stated relationships are converted to OWL Axiom reference set entries.
                                        Existing stated relationships are marked as inactive.
                                        Results are written to a zip file containing:
                                         - OWL Axiom reference set delta of all axioms which were previously stated relationships
                                         - Stated relationship delta with all relationships which were previously active marked as inactive.

 -rf2-snapshot-archives <path>          Comma separated paths of zip files containing RF2 Snapshot files to be loaded.
                                        At least one Snapshot archive is required.

 -rf2-authoring-delta-archive <path>    (Optional) Path to a zip file containing RF2 Delta files to be applied on top
                                        of the Snapshots. This is helpful during an authoring cycle.

 -debug                                 Additional output for debugging.


Optional parameters for OWL conversion:
 -uri <uri>                             (Optional) URI for the ontology identifier.
                                        Defaults to the id within the header entry of the OWL Ontology reference set.
                                        If no entry found defaults to http://snomed.info/sct/900000000000207008.

 -version <version>                     (Optional) Date for the ontology version e.g. 20180731.
                                        Defaults to today's date.

 -without-annotations                   (Optional) Flag to omit description annotations from the ontology
                                        resulting in a smaller file size.

Snomed RF2 to OWL File Conversion

Convert Snomed RF2 files to an OWL ontology file with functional syntax.

Using the executable jar supply a zip file which contains RF2 snapshot files as an argument.

java -Xms4g -jar snomed-owl-toolkit*executable.jar -rf2-to-owl -rf2-snapshot-archives SnomedCT_InternationalRF2.zip

After about a minute the OWL ontology file will be written to ontology-xxxx.owl including a timestamp in the name.

Description dialects will be set for language reference sets included in the language-refset-dialect-map.properties file. The jar file will need rebuilding in order for changes to that file to be included. Feel free to raise a pull request to add your language reference sets to this project.

Snomed RF2 Classification

Run the classification process.

Using the executable jar supply a zip file which contains RF2 snapshot files as an argument.

java -Xms4g -jar snomed-owl-toolkit*executable.jar -classify -rf2-snapshot-archives SnomedCT_InternationalRF2.zip

After about one and a half minutes an RF2 delta archive will be written to classification-results-xxxx.zip including a timestamp in the name.

This archive contains a relationship file with active rows for new inferences and inactive rows for redundant relationships.

The archive also has a reference set containing any sets of concepts which the reasoner found to be logically equivalent. This refset should be empty.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].