标签: sentiment-analysis

情绪分析问题

关于情感分析,我有一个需要帮助的问题。

现在,我已经通过Twitter搜索api收集了一堆推文。因为使用搜索词,所以我知道要查看的主题或实体(人名)。我想知道别人对这些人的看法。

首先,我下载了具有已知价/情感分数的英语单词列表,并根据推文中这些单词的可用性来计算情感(+/-)。问题在于情绪是通过这种方式计算的-实际上,我更多地关注推文的语气,而不是关于此人。

例如,我有这条推文:

"lol... Person A is a joke. lmao!"
Run Code Online (Sandbox Code Playgroud)

该消息显然是正面的,但是人A应该得到负面的。

为了改善情绪分析,我可能可以考虑单词列表中的否定和修饰语。但是,我如何才能准确地进行情绪分析来查看消息的主题(甚至可能是讽刺)?

如果有人可以引导我获得一些资源,那就太好了。

python twitter machine-learning sentiment-analysis

3
推荐指数
1
解决办法
1626
查看次数

用于电子邮件情绪分析的客户支持数据集

我正在客户支持域中寻找带注释的数据集以进行情感分析,以训练我的朴素贝叶斯分类器.互联网上有没有这样的数据集?到目前为止我找不到任何东西.

我该如何解决这个问题.

machine-learning sentiment-analysis

3
推荐指数
1
解决办法
2504
查看次数

在R中找到"near duplicatelicates"字符串

我正在使用R来构建情感分析工具,我遇到了一些重复问题.数据的主要来源是Twitter,看起来许多人通过在每条推文的末尾添加一些随机文本来绕过Twitter自己的垃圾邮件过滤器.例如

Click xxxxx to buy the amazing xxxxx for FREE ugjh
Run Code Online (Sandbox Code Playgroud)

我在最后得到了大量带有不同随机字符串的精确推文.它们来自同一用户或来自不同用户.

是否有任何函数duplicated或者unique哪些函数返回2个字符串的接近程度,如果它们高于某个%,则忽略它们?

我知道这样做最终会删除那些说完全相同的人的真实推文,比如说

I love xxxx !
Run Code Online (Sandbox Code Playgroud)

但是我将来会处理这个问题.

任何正确方向的提示将非常感谢!

nlp r text-analysis sentiment-analysis

3
推荐指数
1
解决办法
1089
查看次数

使用SentiWordNet获得错误的分数

我正在使用SentiWordNet进行一些情绪分析,我在这里的帖子中提到了如何使用SentiWordNet.然而,尽管我尝试了各种输入,但我得到的分数为0.0.我有什么问题吗?谢谢!

    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileReader;
    import java.util.HashMap;
    import java.util.Iterator;
    import java.util.Set;
    import java.util.Vector;

    public class SWN3 {
        private String pathToSWN = "C:\\Users\\Malcolm\\Desktop\\SentiWordNet_3.0.0\\home\\swn\\www\\admin\\dump\\SentiWordNet_3.0.0.txt";
        private HashMap<String, Double> _dict;

        public SWN3(){

            _dict = new HashMap<String, Double>();
            HashMap<String, Vector<Double>> _temp = new HashMap<String, Vector<Double>>();
            try{
                BufferedReader csv =  new BufferedReader(new FileReader(pathToSWN));
                String line = "";           
                while((line = csv.readLine()) != null)
                {
                    String[] data = line.split("\t");
                    Double score = Double.parseDouble(data[2])-Double.parseDouble(data[3]);
                    String[] words = data[4].split(" ");
                    for(String w:words)
                    {
                        String[] w_n = …
Run Code Online (Sandbox Code Playgroud)

java twitter sentiment-analysis

3
推荐指数
1
解决办法
2259
查看次数

西班牙语 - 词典中的情感分析

我有兴趣用西班牙语做情绪分析.我已经在网上查找了一个意见字典,看起来似乎不可能找到与英语中现有类似的东西.例如,http://www.cs.uic.edu/~liub/FBS/sentiment-analysis.html#lexicon

我是这个领域的新手,对一些指导感兴趣,所以我愿意接受建议.例如,标准的西班牙语词典有多大用处?

研究对象是与政治有关的推特帖子.

谢谢你的帮助!

sentiment-analysis

3
推荐指数
1
解决办法
2431
查看次数

依赖于情感的节点依赖于斯坦福CoreNLP解析?

我想对一组句子执行依赖解析,并查看单个节点的情绪评级,如Stanford Sentiment Treebank(http://nlp.stanford.edu/sentiment/treebank.html).

我是CoreNLP API的新手,在摆弄后我仍然不知道如何获得排名节点的依赖解析.CoreNLP甚至可以实现这一点,如果是这样,有没有人有这方面的经验?

nlp text-parsing stanford-nlp sentiment-analysis

3
推荐指数
1
解决办法
1335
查看次数

懒惰解析斯坦福CoreNLP只能获得特定句子的情感

我正在寻找优化斯坦福CoreNLP情绪管道性能的方法.结果,想要得到句子的情感,但只有那些包含作为输入的特定关键词的句子.

我尝试了两种方法:

方法1:StanfordCoreNLP管道用情绪注释整个文本

我已经定义了一个注释器管道:tokenize,ssplit,parse,sentiment.我在整篇文章中运行它,然后在每个句子中查找关键字,如果它们存在,则运行返回关键字值的方法.虽然处理需要几秒钟,但我并不满意.

这是代码:

List<String> keywords = ...;
String text = ...;
Map<Integer,Integer> sentenceSentiment = new HashMap<>();

Properties props = new Properties();
props.setProperty("annotators", "tokenize, ssplit, parse, sentiment");
props.setProperty("parse.maxlen", "20");
props.setProperty("tokenize.options", "untokenizable=noneDelete");
StanfordCoreNLP pipeline = new StanfordCoreNLP(props);

Annotation annotation = pipeline.process(text); // takes 2 seconds!!!!
List<CoreMap> sentences = annotation.get(CoreAnnotations.SentencesAnnotation.class);
for (int i=0; i<sentences.size(); i++) {
    CoreMap sentence = sentences.get(i);
    if(sentenceContainsKeywords(sentence,keywords) {
        int sentiment = RNNCoreAnnotations.getPredictedClass(sentence.get(SentimentCoreAnnotations.SentimentAnnotatedTree.class));
        sentenceSentiment.put(sentence,sentiment);
    }
}
Run Code Online (Sandbox Code Playgroud)

方法2:StanfordCoreNLP管道用句子注释整个文本,分离在感兴趣的句子上运行的注释器

由于第一个解决方案的性能较弱,我已经定义了第二个解决方案.我已经使用注释器定义了一个管道:tokenize,ssplit.我在每个句子中查找了关键字,如果它们存在,我只为这个句子创建了一个注释并在其上运行下一个注释器:ParserAnnotator,BinarizerAnnotator和SentimentAnnotator.

由于ParserAnnotator,结果真的不令人满意.即使我用相同的属性初始化它.在方法1中,有时花费的时间比整个管道在文档上运行的时间更长.

List<String> keywords = ...;
String text = ...;
Map<Integer,Integer> …
Run Code Online (Sandbox Code Playgroud)

java performance parsing stanford-nlp sentiment-analysis

3
推荐指数
1
解决办法
1146
查看次数

句子的情感分析-正面,负面和中性

我正在使用NLTK设计Python中的文本分类器。每个句子中考虑的特征之一就是它的情感。我想对具有正面或负面情绪的句子比没有任何情绪(中性句子)的句子加权。将电影评论语料库与朴素贝叶斯分类器一起使用只会导致正面和负面的标签。我尝试在nltk.sentiment.utils中使用demo_liu_hu_lexicon,但是该函数不返回任何值,而是将其打印到输出中,并且非常慢。有谁知道图书馆根据情感对句子赋予某种权重?

谢谢!

nltk python-3.x sentiment-analysis

3
推荐指数
1
解决办法
4803
查看次数

从英语单词中删除字母重复的正确方法?

正如标题清楚地描述的那样,我想知道消除英语中人物重复的正确方法是什么,这种重复在社交媒体中常用来夸大这种感觉.由于我正在开发一种软​​件解决方案以纠正错误的单词,我需要一种可应用于大多数英语单词的全局算法.那么,我要求专家学习如何在不使用基于学习的方法的情况下消除英语单词中的其他字母的正确方法?

PS.(1)我使用WordNet 3.0数据库以编程方式检查单词是否有效.到目前为止,除了一些例子,例如在WordNet 3.0中veery定义的单词之外,这么好tawny brown North American trush noted for its song.当在WordNet中找到该单词时,我会中断字母消除过程.那么有没有其他知识库可以用来代替WordNet?

PS.(2)其实我在英语语言和使用社区问了这个问题.但是他们引导我在这里问问题.

一些例子:

haappyy --> happy
amaaazzinng --> amazing
veeerry --> very
Run Code Online (Sandbox Code Playgroud)

正如你在例子中看到的那样,字母重复的地方各不相同.

nlp linguistics sentiment-analysis

3
推荐指数
1
解决办法
110
查看次数

斯坦福大学CoreNLP的详细情感得分

在StanfordCore NLP网站上有以下演示:http : //nlp.stanford.edu : 8080/sentiment/rntnDemo.html

该演示为句子提供了详细的情感评分,范围从0到4。

我了解如何使用命令行获得“积极”或“消极”评估,类似于以下内容: corenlp.run的屏幕截图显示了积极的情绪分析

我已经看到了这个问题,但是我对如何创建所附屏幕快照中显示的分析感兴趣。使用Stanford Core NLP Java代码获取情感分析结果

在Stanford CoreNLP中,有没有一种方法可以返回给定句子的分数(即0-4),从而显示其阳性或阴性程度?

谢谢!

java stanford-nlp sentiment-analysis

3
推荐指数
1
解决办法
2349
查看次数