ULMfit for Entity Based Sentiment Analysis

#1

I am interested in NLP and text classification. I tried to use ULMFit for sentiment analysis for Thai language by using my own database and it works as expected. However, I would like to apply the entity/aspect -based sentiment analysis with ULMfit.

Do you guys have any idea that how can we apply and modify the ULMfit algorithm for Entity-based sentiment analysis (Predefined entity such as I have Rex as an entity) ?

Thank you in advance.

1 Like

(nirant) #2

This is a very interesting question. Let me give it a shot.
I would start by doing something like this:

  • Mine/get entities. For English, we could use NER from spaCy
  • Add a layer above ULimFit, which can now learn “correlations” between this entity and your overall phrase/sentence

Additionally, it might be helpful to do some co-reference resolution and mine phrases which “talk about” specific entities. Use ULimFit to mine sentiment of these phrases only.

2 Likes

#3

Thank you nirantk :slight_smile:

I am working on Text Classification for Thai language. I already have entities (words) around 5 words such as I would like to sentiment for only Apple, Amazon, Google, Facebook, and Microsoft.

So I would like to focus on sentiment for these keywords from sentence.

Could you please suggest me about model or method to classify sentiment for only these keywords?

Thank you in advance.

0 Likes

(Sooraj Mangalath Subrahmannian) #4

@nirantk
By adding a layer, would the following work?

  1. Concat the last layer of ULMFiT and embedding from the entity in question
  2. Add a dense layer and softmax to get the sentiment
0 Likes

(Paul Xuereb) #5

Did anyone make any progress with this experiment? I am also interested in the approach of combining NER and sentiment analysis. As @nirantk has pointed out, spaCy could perform NER, but i am interested to learn how then then perform “targeted” sentiment on the entities that were identified.

1 Like

(Li) #6

Using text and entity as input just as the matching model, and the output is the label.

0 Likes