nlp - opinion mining vs sentiment analysis I have been told that nlp possibly holds the key for allowing researchers to infer the affective state of a person when writing. For instance, by using nlp analysis on online note taking you could infer whether a student is stressed. I work in educational cognitive science, so if this were the case it would be a valuable resource for me, however I am struggling to find evidence that this is indeed the case.

I have begun preliminary research and am trying to learn a bit about the technical aspects of nlp - I'm taking an online course by Jurafsky and Manning, another by Michael Collins - and I have been reading about what what can be inferred using nlp, specifically around opinion mining and sentiment analysis.

My question is two part:


Firstly, most resources I have come across say something along the
lines of nlp can be used for opinion mining and sentiment analysis
and we will talk about the implications for opinion mining'. Can
someone point me in the direction of more sentiment analysis oriented
resources?
Secondly, as I understand it, sentiment analysis is deriving the
stated sentiment within text, e.g. I was happy with, I loved, was tasty, enjoyed, hated, frustrated, etc. Can nlp, or something else,
be used to derive unstated affect? And is this the same thing as
sentiment analysis?


[Apologies if this is asked in the wrong exchange. I've been trying to find the best fit, but there were a few candidates and I wasn't sure which would be most appropriate.]
Can someone point me in the direction of more sentiment analysis
  oriented resources?


There are tonnes of exceptionally good papers on sentiment analysis for your reference. Especially the ones on social network sites like Twitter.

However, I think the book by Manning and his course are a nice start as references to NLP and opinion mining.


  Can nlp, or something else, be used to derive unstated affect?


Yes, it can be. This would be my approach:

(Consider I already have a hand-classified training data) Using the bag of words approach, the most used words and phrases for a mood (stressful, jovial, etc) can be captured, and the subsequent training data can be ranked accordingly as (60% stressful, 40% jovial).

Additionally, you can also define thresholds for getting a single mood. Like:

if mood[score] &gt; .5:
    current_mood = mood