CoolFace
Datasetpublic

mevol/protein_structure_NER_model_v3.1

Overview This data was used to train model: https://huggingface.co/mevol/BiomedNLP-PubMedBERT-ProteinStructure-NER-v3.1 There are 20 different entity types in this dataset: "bond_interaction", "chemical", "complex_assembly", "evidence", "experimental_method", "gene", "mutant", "oligomeric_state", "protein", "protein_state", "protein_type", "ptm", "residue_name", "residue_name_number","residue_number", "residue_range", "site", "species", "structure_element", "taxonomy_domain"… See the full description on the dataset page: https://huggingface.co/datasets/mevol/protein_structure_NER_model_v3.1.

sourceHugging Facemitupdated 2y agoView on Hugging Face
0likes205downloads
Dataset Card

Overview

This data was used to train model: https://huggingface.co/mevol/BiomedNLP-PubMedBERT-ProteinStructure-NER-v3.1

There are 20 different entity types in this dataset: "bondinteraction", "chemical", "complexassembly", "evidence", "experimentalmethod", "gene", "mutant", "oligomericstate", "protein", "proteinstate", "proteintype", "ptm", "residuename", "residuenamenumber","residuenumber", "residuerange", "site", "species", "structureelement", "taxonomy_domain"

The data prepared as IOB formated input has been used during training, develiopment and testing. Additional data formats such as JSON and XML as well as CSV files are also available and are described below.

Annotation was carried out with the free annotation tool TeamTat (https://www.teamtat.org/) and documents were downloaded as BioC XML before converting them to IOB, annotation only JSON and CSV format.

The number of annotations and sentences in each file is given below:

document IDnumber of annotations in BioC XMLnumber of annotations in IOB/JSON/CSVnumber of sentences
PMC485027311291129205
PMC4784909868868204
PMC4850288717709146
PMC4887326942942152
PMC483386210441044192
PMC4832331739718134
PMC485259812391228250
PMC478678415731573232
PMC48480901000998192
PMC479296212971297256
PMC484154414601459274
PMC4772114824824165
PMC487211012831283250
PMC4848761888884252
PMC491946916361624336
PMC4880283783783166
PMC496811312451245292
PMC4937829633633181
PMC4854314498488139
PMC487174941141179
PMC4869123922922195
PMC4888278580580102
PMC479555114751475297
PMC483158810871070224
PMC491876610271027210
PMC480204214411441264
PMC489674826522638480
PMC478197611511324
PMC4802085983983193
PMC4887163856856196
PMC4918759803803175
PMC4855620563563122
PMC482205015211521249
PMC482256136736684
PMC488550257757797
PMC474670111301130245
PMC4820378733733170
PMC477309513231323252
PMC485700613581358249
PMC4774019532530117
total40254401498042

Documents and annotations are easiest viewed by using the BioC XML files and opening them in free annotation tool TeamTat. More about the BioC format can be found here: https://bioc.sourceforge.net/

Raw BioC XML files

These are the raw, un-annotated XML files for the publications in the dataset in BioC format. The files are found in the directory: "rawBioCXML". There is one file for each document and they follow standard naming "unique PubMedCentral ID"_raw.xml.

Annotations in IOB format

The IOB formated files can be found in the directory: "annotation_IOB" The four files are as follows:

  • all.tsv --> all sentences and annotations used to create model "mevol/BiomedNLP-PubMedBERT-ProteinStructure-NER-v3.1"; 8042 sentences
  • train.tsv --> training subset of the data; 5629 sentences
  • dev.tsv --> development subset of the data; 1206 sentences
  • test.tsv --> testing subset of the data; 1207 sentences

The total number of annotations is: 40149

Annotations in BioC JSON

The BioC formated JSON files of the publications have been downloaded from the annotation tool TeamTat. The files are found in the directory: "annotatedBioCJSON" There is one file for each document and they follow standard naming "unique PubMedCentral ID"_ann.json

Each document JSON contains the following relevant keys:

  • "sourceid" --> giving the numerical part of the unique PubMedCentral ID
  • "text" --> containing the complete raw text of the publication as a string
  • "denotations" --> containing a list of all the annotations for the text

Each annotation is a dictionary with the following keys:

  • "span" --> gives the start and end of the annotatiom span defined by sub keys:
  • "begin" --> character start position of annotation
  • "end" --> character end position of annotation
  • "obj" --> a string containing a number of terms that can be separated by ","; the order of the terms gives the following: entity type, reference to ontology, annotator, time stamp
  • "id" --> unique annotation ID

Here an example:

json
[{"sourceid":"4784909",
  "sourcedb":"",
  "project":"",
  "target":"",
  "text":"",
  "denotations":[{"span":{"begin":24,
                          "end":34},
                  "obj":"chemical,CHEBI:,melaniev@ebi.ac.uk,2023-03-21T15:19:42Z",
                  "id":"4500"},
                 {"span":{"begin":50,
                          "end":59},
                  "obj":"taxonomy_domain,DUMMY:,melaniev@ebi.ac.uk,2023-03-21T15:15:03Z",
                  "id":"1281"}]
  }
]

Annotations in BioC XML

The BioC formated XML files of the publications have been downloaded from the annotation tool TeamTat. The files are found in the directory: "annotatedBioCXML" There is one file for each document and they follow standard naming "unique PubMedCentral ID_ann.xml

The key XML tags to be able to visualise the annotations in TeamTat as well as extracting them to create the training data are "passage" and "offset". The "passage" tag encloses a text passage or paragraph to which the annotations are linked. "Offset" gives the passage/ paragraph offset and allows to determine the character starting and ending postions of the annotations. The tag "text" encloses the raw text of the passage.

Each annotation in the XML file is tagged as below:

  • "annotation id=" --> giving the unique ID of the annotation
  • "infon key="type"" --> giving the entity type of the annotation
  • "infon key="identifier"" --> giving a reference to an ontology for the annotation
  • "infon key="annotator"" --> giving the annotator
  • "infon key="updated_at"" --> providing a time stamp for annotation creation/update
  • "location" --> start and end character positions for the annotated text span
  • "offset" --> start character position as defined by offset value
  • "length" --> length of the annotation span; sum of "offset" and "length" creates the end character position

Here is a basic example of what the BioC XML looks like. Additional tags for document management are not given. Please refer to the documenttation to find out more.

xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE collection SYSTEM "BioC.dtd">
<collection>
  <source>PMC</source>
  <date>20140719</date>
  <key>pmc.key</key>
  <document>
    <id>4784909</id>
    <passage>
      <offset>0</offset>
      <text>The Structural Basis of Coenzyme A Recycling in a Bacterial Organelle</text>
      <annotation id="4500">
        <infon key="type">chemical</infon>
        <infon key="identifier">CHEBI:</infon>
        <infon key="annotator">melaniev@ebi.ac.uk</infon>
        <infon key="updated_at">2023-03-21T15:19:42Z</infon>
        <location offset="24" length="10"/>
        <text>Coenzyme A</text>
      </annotation>
    </passage>
  </document>
</collection>

Annotations in CSV

The annotations and the relevant sentences they have been found in have also been made available as tab-separated CSV files, one for each publication in the dataset. The files can be found in directory "annotation_CSV". Each file is named as "unique PubMedCentral ID".csv.

The column labels in the CSV files are as follows:

  • "anno_start" --> character start position of the annotation
  • "anno_end" --> character end position of the annotation
  • "anno_text" --> text covered by the annotation
  • "entity_type" --> entity type of the annotation
  • "sentence" --> sentence text in which the annotation was found
  • "section" --> publication section in which the annotation was found

Annotations in JSON

A combined JSON file was created only containing the relevant sentences and associated annotations for each publication in the dataset. The file can be found in directory "annotation_JSON" under the name "annotations.json".

The following keys are used:

  • "PMC4850273" --> unique PubMedCentral of the publication
  • "annotations" --> list of dictionaries for the relevant, annotated sentences of the document; each dictionary has the following sub keys
  • "sid" --> unique sentence ID
  • "sent" --> sentence text as string
  • "section" --> publication section the sentence is in
  • "ner" --> nested list of annotations; each sublist contains the following items: start character position, end character position, annotation text, entity type

Here is an example of a sentence and its annotations:

json
{"PMC4850273": {"annotations":
                [{"sid": 0,
                  "sent": "Molecular Dissection of Xyloglucan Recognition in a Prominent Human Gut Symbiont",
                  "section": "TITLE",
                  "ner": [
                    [24,34,"Xyloglucan","chemical"],
                    [62,67,"Human","species"],]
                 },]
}}

Citation

Vollmar, M., Tirunagari, S., Harrus, D. et al. Dataset from a human-in-the-loop approach to identify functionally important protein residues from literature. Sci Data 11, 1032 2024 https://doi.org/10.1038/s41597-024-03841-9