All Projects → xuuuluuu → Position-Aware-Tagging-for-ASTE

xuuuluuu / Position-Aware-Tagging-for-ASTE

Licence: other
Code and models for the paper " Position-Aware Tagging for Aspect Sentiment Triplet Extraction", EMNLP 2020.

Programming Languages

python
139335 projects - #7 most used programming language
Roff
2310 projects

Projects that are alternatives of or similar to Position-Aware-Tagging-for-ASTE

Tmsu
TMSU lets you tags your files and then access them through a nifty virtual filesystem from any other application.
Stars: ✭ 1,588 (+2168.57%)
Mutual labels:  tagging
Tageditor
A tag editor with Qt GUI and command-line interface supporting MP4/M4A/AAC (iTunes), ID3, Vorbis, Opus, FLAC and Matroska
Stars: ✭ 229 (+227.14%)
Mutual labels:  tagging
SA-DL
Sentiment Analysis with Deep Learning models. Implemented with Tensorflow and Keras.
Stars: ✭ 35 (-50%)
Mutual labels:  aspect-based-sentiment-analysis
Make Sense
Free to use online tool for labelling photos. https://makesense.ai
Stars: ✭ 2,087 (+2881.43%)
Mutual labels:  tagging
React Native Tag Input
A simple React Native component that creates an input for tags, emails, etc.
Stars: ✭ 217 (+210%)
Mutual labels:  tagging
sticker-finder
⚡ A telegram bot for searching all the stickers (just like @gif).
Stars: ✭ 90 (+28.57%)
Mutual labels:  tagging
Tagify
🔖 lightweight, efficient Tags input component in Vanilla JS / React / Angular / Vue
Stars: ✭ 2,305 (+3192.86%)
Mutual labels:  tagging
gogtags
GNU global compatible source code tagging for golang
Stars: ✭ 42 (-40%)
Mutual labels:  tagging
Pymystem3
A Python wrapper of the Yandex Mystem 3.1 morphological analyzer (http://api.yandex.ru/mystem). The original tool is shipped as a binary and this library makes it easy to integrate it in Python projects. Let us know in the issues if you would like to be involved into the developments or maintenance of this project. If you have any fix or suggestion, please make a pull request. We are very open to accepting any contributions.
Stars: ✭ 224 (+220%)
Mutual labels:  tagging
mongoid taggable on
Taggable on custom fields for Mongoid
Stars: ✭ 16 (-77.14%)
Mutual labels:  tagging
Selectize.js
Selectize is the hybrid of a textbox and <select> box. It's jQuery based, and it has autocomplete and native-feeling keyboard navigation; useful for tagging, contact lists, etc.
Stars: ✭ 12,744 (+18105.71%)
Mutual labels:  tagging
Cachingframework.redis
Distributed caching based on StackExchange.Redis and Redis. Includes support for tagging and is cluster-compatible.
Stars: ✭ 209 (+198.57%)
Mutual labels:  tagging
MGAN
Exploiting Coarse-to-Fine Task Transfer for Aspect-level Sentiment Classification (AAAI'19)
Stars: ✭ 44 (-37.14%)
Mutual labels:  aspect-based-sentiment-analysis
Hypertag
Knowledge Management for Humans using Machine Learning & Tags
Stars: ✭ 116 (+65.71%)
Mutual labels:  tagging
HAST
Aspect Term Extraction with History Attention and Selective Transformation (IJCAI 2018)
Stars: ✭ 53 (-24.29%)
Mutual labels:  aspect-based-sentiment-analysis
Onenotetaggingkit
OneNote (desktop) add-in to manage OneNote pages by page tags
Stars: ✭ 106 (+51.43%)
Mutual labels:  tagging
Tagsistant
Semantic filesystem for Linux, with relation reasoner, autotagging plugins and a deduplication service
Stars: ✭ 244 (+248.57%)
Mutual labels:  tagging
Covolution over Dependency Tree EMNLP2019
Here is the code for the paper ``Aspect-Level Sentiment Analysis via Convolution over Dependency Tree'' accepted by EMNLP2019.
Stars: ✭ 17 (-75.71%)
Mutual labels:  aspect-based-sentiment-analysis
Alturos.ImageAnnotation
A collaborative tool for labeling image data for yolo
Stars: ✭ 47 (-32.86%)
Mutual labels:  tagging
meta-audio
A PHP library to read and write metadata tags to audio files (MP3, ID3, APE, etc)
Stars: ✭ 32 (-54.29%)
Mutual labels:  tagging

[UPDATE] Please also check our recent paper Learning Span-Level Interactions for Aspect Sentiment Triplet Extraction (In ACL 2021)

Position-Aware-Tagging-for-ASTE

[EMNLP 2020] Position-Aware Tagging for Aspect Sentiment Triplet Extraction (In EMNLP 2020)

Task Description

Aspect Sentiment Triplet Extraction (ASTE) is the task of extracting the triplets of target entities, their associated sentiment, and opinion spans explaining the reason for the sentiment. This task is firstly proposed by (Peng et al., 2020) in the paper publised in AAAI 2020, Knowing What, How and Why: A Near Complete Solution for Aspect-based Sentiment Analysis (In AAAI 2020)

For Example:

Given the sentence:

The screen is very large and crystal clear with amazing colors and resolution .

The objective of the Aspect Sentiment Triplet Extraction (ASTE) task is to predict the triplets:

[('screen', 'large', 'Positive'), ('screen', 'clear', 'Positive'), ('colors', 'amazing', 'Positive'), ('resolution', 'amazing', 'Positive')]

where a triplet consists of (target, opinion, sentiment).

Requirement

conda create -n JET python=3.7 anaconda

conda install pytorch==1.4.0 torchvision==0.5.0 cudatoolkit=10.1 -c pytorch

Python 3.7.3

Pytorch 1.4

termcolor

networkx=2.6.3

matplotlib

PYEVALB

sentencepiece

Transformers

Bert-as-service

Running with GloVe

python jet_o.py  

By default, the model runs on 2014 laptop dataset with provided hyper-parameters (M=2) without BERT. Change line 20-27 for different datasets.

python jet_t.py  

By default, the model runs on 2015 reataurant dataset with provided hyper-parameters (M=2) without BERT. Change line 20-27 for different datasets.

Running with BERT

Please install bert-as-service before Start the BERT service:

bert-serving-start -pooling_layer -1 -model_dir uncased_L-12_H-768_A-12 -max_seq_len=NONE -num_worker=2 -port=8880 -pooling_strategy=NONE -cpu -show_tokens_to_client

Then,

python jet_o.py  

Change line 27 in the current file to True to runs on 2014 laptop dataset with provided hyper-parameters (M=2) with BERT. Change line 20-27 for different datasets.

python jet_t.py  

Change line 27 in the current file to True to runs on 2015 reataurant dataset with provided hyper-parameters (M=2) with BERT. Change line 20-27 for different datasets.

Task Lists

  • The current framwork only support BATCH_SIZE=1, more work need to be done to support batch calculation.

Related Repo

The code are created based on the StatNLP framework.

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].