Sentimental Analysis using Stanford CoreNLP - stanford-nlp

I am new to Machine Learning and NLP space. My requirement is to convert audio calls to text for Sentimental analysis.
Flow :-
1) Audio files -->> Text (using Speech recognitions API )
2) Perform Sentimental analysis of the output text
Since having a strong background on Java, thought of using Stanford CoreNLP. But, fine to use tensorflow or others if they have good benefits than CoreNLP.
Exposing a rest service which takes text( complete conversation ) as an input for sentimental analysis. Using CoreNLP for sentimental analysis. Not getting results as expected.
Not sure how to train this for my needs? Is it possible to train at run time with different context and the result should be based on the context and customers?
Is there any other better API for Sentimental analysis of a chat?
Thanks,

I would have chosen python's NLTK sentiment analysis:
NLTK's sentiment analysis
and you can find an example here:
example

Related

Is there a smaller version of Stanford CoreNLP?

I am trying to reduce the size of a plugin (written in java) I am working on and we use CoreNLP to parse some text. We don't use too many features of CoreNLP, but it is by far the largest component of the plugin and makes downloading it more burdensome than desired for the end user. I am aware of the Simple CoreNLP API as well as the Client/Server functionality that is featured with CoreNLP, but it still seems to require downloading the entire package along with the models. Is there another version that is smaller, or has someone else made something smaller with a little less functionality? The only annotators we use are the tokenizer, ssplit, parse, sentiment analysis, the part of speech tagger, and the lemmatizer.
I will just add in that if you make a jar with just the models for the annotators you are using you can cut the size down a lot. The models are what take up most of the space, and you only need the ones you are using.

What I can use to process video sentiment analysis on a video stream?

I want to make an app,maybe web, that performs a sentiment analysis on a video stream during a web interview.Do you have any recommendations ?
I want to mention that I'm good with java and c#.
The solution might be different for different use cases. You mentioned during web interview. Are you looking for real time processing? How do you capture video - which format? Do you need spoken words analysis or face emotions analysis? And your budget for the same.

Sentiment towards a keyword

I have been looking around for Sentiment and text analysis services but most of them seem to analyse the whole text and provide one result for it.
Is there a way of analysing the same piece of text against two different keywords? For example, the same article could be talking about two entities, positively towards one and negatively towards the other.
How could one get these two sentiments within the same text? Is there a service or API already for that?
I have found IBM's AlchemyAPI but doesn't seem to return accurate results...
What you want is aspect-based sentiment analysis. There are lots of algorithms with different precisions and recalls for this aspect-based sentiment analysis.
You can use Aylien's text analysis api.

what is typical way to improve model precision/recall for text classification

I am working on a data mining project that try to auto classify text into t category.
it is a multi-class supervised learning, the input feature include title and body (both are text).
Current accuracy rate is not good, could you please advise some method to improve accuracy?
here is something i have already tried.
Pre-processing: Term (could you please suggest a method to extract
term automatically)
Stopword removal (could you please suggest some stop
word set for English)
Stemming
Lemmatization
N-gram
Feature Selection (Information Gain Ratio)
Algorithms: GBDT, LR, SVM and others.
There are plenty of tools you can use in order to extract sensible linguistically-grounded feature types. It depends on what is your favourite programming language/environment and if you want to use a machine learning suite which has some text mining components in it, or a text mining component only.
Have a look at:
Java: Weka (video about text classification), OpenNLP
Python: Scikit-learn and NLTK.
About the stopword lists:
http://jmlr.org/papers/volume5/lewis04a/a11-smart-stop-list/english.stop
http://www.ranks.nl/stopwords
http://www.textfixer.com/resources/common-english-words.txt
http://norm.al/2009/04/14/list-of-english-stop-words/
http://snowball.tartarus.org/algorithms/english/stop.txt

What platform / tool / software / language should i use for text mining?

I am a begineer to the field of text mining .
I need to perform work on the document similarity .I aim at comparing two documents and then providing the similarity between them in terms of a number. I have read a lot of theory about this . I am planning to start with the cosine similarity
Can any of you help me with these basics questions :
1. What platform ? (windows/linux)
2. What tool (People talk about weka / mahout / hadoop ) - i have no idea on what to use
3. What language ?
Some questions might sound absurd , but i have to start from scratch and i need some help
For software, I highly recommend RapidMiner, which you can grab from http://rapid-i.com. Some quick pros:
Open source and implemented in Java (works on any platform)
Intuitive graphical "operator pipeline" for hundreds of data mining tasks
Excellent text mining support. See this video tutorial
In my experience data mining requires some real discipline to achieve desirable results. RapidMiner should help.
Document similarity, as in the context of text search? Then Solr will fit the bill. It is a open source enterprise search platform with all features necessary for text search, including 'more like this', which can fetch n documents which are textually similar.
A couple relavent features that may interest you:
it can be easily deployed as a Java web app on Tomcat, if Hadoop setup intimidates you.
facets and numerical comparisons which can augment text comparisons.
Platform - Linux (mostly preferred)
Tool - Open NLP , Lucene , Solr(Text-Search) , Mahout , Matlab TMG( Not for advance level)
Language - R ( I will prefer ), Python+SciPy

Resources