awessome
Project description
AWESSOME
A Word Embedding Sentiment Scorer Of Many Emotions (AWESSOME) is a framework with the purpose of predicting the sentiment intensity of sentences.
AWESSOME relies on sentiment seed-words and word embedding, where the similarity between the vector representation of two sentences is considered as a reflection of their sentiment similarity.
AWESSOME capitalizes on pre-existing lexicons ([VADER](https://github.com/cjhutto/vaderSentiment) , [LabMT](https://trinker.github.io/qdapDictionaries/labMT.html)), but custom lexicons can also be used, and created using AWESSOME.
AWESSOME also draws upon the recent advances in language model by using the Transformers from HuggingFace, to create word embeddings using BERT, RoBERTa, etc.
AWESSOME is scalable, and does not require any training data, while providing more fine grained (and accurate) sentiment intensity scores of words, phrases and text.
Citation Information
If you use the AWESSOME sentiment analysis tools in your research, please cite the following paper. For example:
Htait, A. & Azzopardi, L. (2020). …… 2020.
Installation
To install AWESSOME:
The simplest is to use the command line to do an installation from [PyPI] using pip, e.g., pip install awessome
If you already have AWESSOME and simply need to upgrade to the latest version, e.g., pip install –upgrade awessome
You could also clone this [GitHub repository] : https://github.com/cumulative-revelations/awessome
You could download and unzip the [full master branch zip file] : https://github.com/cumulative-revelations/awessome/archive/master.zip
In addition to the AWESSOME Python module, you will also be downloading two lexicon dictionaries ([VADER](https://github.com/cjhutto/vaderSentiment) , [LabMT](https://trinker.github.io/qdapDictionaries/labMT.html)).
Python Demo and Code Examples
The AWESSOME framework can be flexibility adapted to cater for different seed lexicons and different neural word embeddings models in order to produce corpus specific lexicons without the need for extensive supervised learning and retraining.
Through parameters, AWESSOME gives the possibility to:
Choose between different available pre-trained language models, such as: BERT (bert-base-nli-mean-tokens) and Distilbert (distilbert-base-nli-stsb-mean-tokens) Note: some pre-trained language models would need GPU.
Employ different aggregation methods on the similarity scores of the sentence with each term in the seeds lists: Average (avg), Maximum (max) and Sum (sum).
Select one of two possible similarity measures, provided by [scipy](https://www.scipy.org/): cosine and euclidean. Note: if no similarity measure is provided, cosine is applied as a default measure.
Select a source of positive and negative seeds lists, where the user can provide a new lexicon file, or used the pre-built lexicons: vader or labmt (built based on VADER and LabMT sentiment lexicons). Note: if no lexicon file is provided, vader is applied as a default seeds lists source.
Choose the size of seeds lists, created based on the lexicon files. Note: if no size is provided, the value of 500 is used as default seeds lists size.
In addition, AWESSOME gives the possiblity to apply a “Weighted Similarity” to seeds, by multiplying the similarity score by the sentiment score of the seeds. users have the option to use that feature of note by simply choosing “weighted” as True or False. Note: if the weighted value is not provided, it is considered by default as False.
An example Demo is added under the name of : awessome_demo.py
Change log
0.0.1 (20/10/2020)
First Release
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file awessome-0.0.14.tar.gz
.
File metadata
- Download URL: awessome-0.0.14.tar.gz
- Upload date:
- Size: 36.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.22.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c60f63c658f5a72043ec2df06b9f0f860c010db6eb39f0e05ba2ae72ccc782d |
|
MD5 | 242cfa429aac7702e0fbf33351b3a0ec |
|
BLAKE2b-256 | 3ac31f6741652a639c510c7688be123e882d4c3d5e8d3ea34f1c536d1547cbc2 |
File details
Details for the file awessome-0.0.14-py2.py3-none-any.whl
.
File metadata
- Download URL: awessome-0.0.14-py2.py3-none-any.whl
- Upload date:
- Size: 34.2 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.22.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e15ec9bdc50983f339549425a41d6598c463d92945e0ee6a9fff59700ef9e812 |
|
MD5 | d71f73abcc19894174800268caffdd69 |
|
BLAKE2b-256 | ce3547922a2044d9737f5a138d53cfd1cdc5a518188ebf73e0b2a869afcd0d55 |