Skip to main content

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:

  1. The simplest is to use the command line to do an installation from [PyPI] using pip, e.g., pip install awessome

  2. If you already have AWESSOME and simply need to upgrade to the latest version, e.g., pip install –upgrade awessome

  3. You could also clone this [GitHub repository] : https://github.com/cumulative-revelations/awessome

  4. 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:

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

  2. 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).

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

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

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

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

awessome-0.0.14.tar.gz (36.6 kB view details)

Uploaded Source

Built Distribution

awessome-0.0.14-py2.py3-none-any.whl (34.2 kB view details)

Uploaded Python 2 Python 3

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

Hashes for awessome-0.0.14.tar.gz
Algorithm Hash digest
SHA256 0c60f63c658f5a72043ec2df06b9f0f860c010db6eb39f0e05ba2ae72ccc782d
MD5 242cfa429aac7702e0fbf33351b3a0ec
BLAKE2b-256 3ac31f6741652a639c510c7688be123e882d4c3d5e8d3ea34f1c536d1547cbc2

See more details on using hashes here.

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

Hashes for awessome-0.0.14-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e15ec9bdc50983f339549425a41d6598c463d92945e0ee6a9fff59700ef9e812
MD5 d71f73abcc19894174800268caffdd69
BLAKE2b-256 ce3547922a2044d9737f5a138d53cfd1cdc5a518188ebf73e0b2a869afcd0d55

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page