Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 

README.md

TagEditor(v2.2.4) annotation tool

TagEditor is a desktop application (tested on Windows 10, 64-bit) designed to annotate text for training with spaCy library.
With TagEditor you can label dependencies, parts of speech, Named entities, text categories and Coreference resolution.

Installation

No installation required.
Download and unpack TagEditor.7z
Run 'TagEditor.exe' in the main folder.

Usage

alt text

  Insert your text or open a text file and press Start tagging (or choose one of the options in Menu/Tools). Choose types of annotation and labels like in the screenshot below and press Ok.
alt text
Select a tag in TAG SET pannel then select a word to assign the tag. Select a head tag to assign dependency if you are working in the Dependencies window .
  Right-click on a word to edit, delete, insert word, merge or split sentences. To merge sentences right-click on the first word of sentence. It is checked as Sentence start. Uncheck it and the sentence will merge with the previous sentence.
  To delete all newline characters and extra whitespaces in the text, select the tab Words and press Remove Whitespaces.
Press button Create DATA to create training data in "simple training style" or JSON. You can save it in a simple text format or as a python file...
Save project for future editing. Load project to continue where you left.

If you don't have a pretrained model for a given language, select the language from the list for a proper tokenization:

alt text

Try NeuralGym to train spaCy model with your training data.

Co-reference tagger
 Coreference annotation is according to PreCo 'Data Format'.
Compatible with NeuralCoref 4.0. To use NeuralCoref for annotating select "Enable NeuralCoref" after 'Start tagging'. Set parameter 'greedyness' 0,55.

https://preschool-lab.github.io/PreCo/
https://arxiv.org/abs/1810.09807
"sentences" - is a list of sentences. Each sentence is a list of tokens. Each token is a string, which can be a word or a punctuation mark.
"mention_clusters" - is a list of mention clusters. Each mention cluster is a list of mentions. Each mention is a tuple of integers [sentence_idx, begin_idx, end_idx]. Sentence_idx is the index of the sentence of the mention. Begin_idx is the index of the first token of the mention in the sentence. End_index is the index of the last token of the mention in the sentence plus one. All indices are zero-based.
  Select in the editor window a word or a span of words. It will be a singleton(single entity) with no connection to other entities and framed with dash line. Then select another span. Everytime you select an entity it is highlighted by green color frame. While it is in selected state click on another entity and they will be linked together and highligted by same color and get same coref number (a num in the right corner of frame). That simple!
To deselect just click on empty space in the main window.
To unlink a span from the entity , select it and then click on it again. It will turn into singleton. You can also use the table on the right side. If the text is long and you don't want to scroll it just click on an entity in the table to get spans linked. Entities which are not singletons are added to the table automatically. Though you can add singletons too. Entity color can be changed except for singleton.
You can load data from PreCo dataset to TagEditor directly. Unzip PreCo dataset , run tagEditor and select menu File->Load PreCO/Coref->(select file). You can test it with the file coref_example.jsonl
alt text alt text

Dependencies
Select a tag in TAG SET pannel then click on a word in the editor window to assign the tag. Click on another word(token) to assign a head tag. Click on the word again to remove the tag. alt text

How to use Text Categories
In the Text Categories you can assign labels to sentences (default mode) or to spans (see below).
  Select the score in the TAG SET pannel - True or False(i.e 1.0 or 0.0) and select a category label. Go to the editor window and click on sentence. Category and score will be added. You can easily switch the score True/False by just clicking on the score label in editor window. Supports multiple, non-mutually exclusive labels.
Use check button Assign/unassign all to assign/unassign all labels to all sentences in one click. Then you can manually change True/False status of each label or delete a label in the editor window.
For demo purporses the text classifier of this tool was trained on the IMDB dataset with labels 'POSITIVE NEGATIVE'
https://spacy.io/usage/training#textcat
alt text 'Spans classification mode' allows multiple overlapping labels. Can be used as an all-purporse text tagger with the data format (index of first token, index of last token+1, label name). Zero based.
alt text

Named Entities
First click on a label in the Tag Set pannel then select text in the main window. To delete assigned label from text just click on it. alt text POS tags
alt text

Try NeuralGym to train spaCy model with your training data.

To use your pretrained models with TagEditor or other spacy models, acquire the full version of TagEditor.

*You have any suggestions on improving the program, adding extra feature, feel free to leave a comment or email at gitprojects5@gmail.com

You can’t perform that action at this time.