精华内容
下载资源
问答
  • 基于python情感分析,含有案例分析完整python脚本源码及所用数据。
  • python情感分析代码

    2019-03-27 10:53:14
    python情感分析代码 源码数据源都有 功能比较全 可以下载参考
  • python 情感分析 语料

    2017-08-31 16:48:49
    构造该资源的宗旨是在情感计算领域,为中文文本情感分析和倾向性分析提供一个便捷可靠的辅助手段。中文情感词汇本体可以用于解决多类别情感分类的问题,同时也可以用于解决一般的倾向性分析的问题。
  • 文本情感分析常用词库,可以使用Python的Jieba库进行分析
  • 利用python 实现knn算法的情感分类
  • python实现人工智能中文情感分析
  • PythonPython开发Python语言基于情感词典的python情感分析 近期老师给我们安排了一个大作业,要求根据情感词典对微博语料进行情感分析。于是在网上狂找资料,看相关书籍,终于搞出了这个任务。现在做做笔记,总结...

    Python

    Python开发

    Python语言

    基于情感词典的python情感分析

    CgpOIF5EAWWAQ0y_AAcB-fDz9P0878.png

    近期老师给我们安排了一个大作业,要求根据情感词典对微博语料进行情感分析。于是在网上狂找资料,看相关书籍,终于搞出了这个任务。现在做做笔记,总结一下本次的任务,同时也给遇到有同样需求的人,提供一点帮助。

    2028608-20200511132818868-1394243670.png

    1、情感分析含义

    情感分析指的是对新闻报道、商品评论、电影影评等文本信息进行观点提取、主题分析、情感挖掘。情感分析常用于对某一篇新闻报道积极消极分析、淘宝商品评论情感打分、股评情感分析、电影评论情感挖掘。情感分析的内容包括:情感的持有者分析、态度持有者分析、态度类型分析(一系列类型如喜欢(like),讨厌(hate),珍视(value),渴望(desire)等;或着简单的加权极性如积极(positive),消极(negative)和中性(neutral)并可用具体的权重修饰)、态度的范围分析(包含每句话,某一段、或者全文)。因此,情感分析的目的可以分为:?初级:文章的整体感情是积极/消极的;?进阶:对文章的态度从1-5打分;?高级:检测态度的目标,持有者和类型。

    总的来说,?情感分析就是对文本信息进行情感倾向挖掘?。

    2、情感挖掘方法

    情感挖掘目前主要使用的方法是使用情感词典,对文本进行情感词匹配,汇总情感词进行评分,最后得到文本的情感倾向。本次我主要使用了两种方法进行情感分析。第一种:基于BosonNLP情感词典。该情感词典是由波森自然语言处理公司推出的一款已经做好标注的情感词典。词典中对每个情感词进行情感值评分,bosanNLP情感词典如下图所示:

    YRbYRvA.png!web

    第二种,采用的是知网推出的情感词典,以及极性表进行情感分析。知网提供的情感词典共用12个文件,分为英文和中文。其中中文情感词典包括:评价、情感、主张、程度(正面、负面)的情感文本。本文将评价和情感词整合作为情感词典使用,程度词表中含有的程度词,按照等级区分,分为:most(最高)-very(很、非常)-more(更多、更)-ish(稍、一点点)-insufficiently(欠、不)-over(过多、多分、多)六个情感程度词典。

    MrIJNbe.png!web

    jiiQ7ru.png!web

    BJfIfqm.png!web

    3、原理介绍

    3.1 基于BosonNLP情感分析原理

    基于BosonNLP情感词典的情感分析较为简单。首先,需要对文本进行分句、分词,本文选择的分词工具为哈工大的pyltp。其次,将分词好的列表数据对应BosonNLp词典进行逐个匹配,并记录匹配到的情感词分值。最后,统计计算分值总和,如果分值大于0,表示情感倾向为积极的;如果小于0,则表示情感倾向为消极的。原理框图如下:

    7vm2Mvn.png!web

    3.2 基于BosonNLP情感分析代码:

    # -*- coding:utf-8 -*-

    import pandas as pd

    import jieba

    #基于波森情感词典计算情感值

    def getscore(text):

    df = pd.read_table(r"BosonNLP_dictBosonNLP_sentiment_score.txt", sep=" ", names=['key', 'score'])

    key = df['key'].values.tolist()

    score = df['score'].values.tolist()

    # jieba分词

    segs = jieba.lcut(text,cut_all = False) #返回list

    # 计算得分

    score_list = [score[key.index(x)] for x in segs if(x in key)]

    return sum(score_list)

    #读取文件

    def read_txt(filename):

    with open(filename,'r',encoding='utf-8')as f:

    txt = f.read()

    return txt

    #写入文件

    def write_data(filename,data):

    with open(filename,'a',encoding='utf-8')as f:

    f.write(data)

    if __name__=='__main__':

    text = read_txt('test_data微博.txt')

    lists = text.split('n')

    # al_senti = ['无','积极','消极','消极','中性','消极','积极','消极','积极','积极','积极',

    # '无','积极','积极','中性','积极','消极','积极','消极','积极','消极','积极',

    # '无','中性','消极','中性','消极','积极','消极','消极','消极','消极','积极'

    # ]

    al_senti = read_txt(r'test_data人工情感标注.txt').split('n')

    i = 0

    for list in lists:

    if list != '':

    # print(list)

    sentiments = round(getscore(list),2)

    #情感值为正数,表示积极;为负数表示消极

    print(list)

    print("情感值:",sentiments)

    print('人工标注情感倾向:'+al_senti[i])

    if sentiments > 0:

    print("机器标注情感倾向:积极n")

    s = "机器判断情感倾向:积极n"

    else:

    print('机器标注情感倾向:消极n')

    s = "机器判断情感倾向:消极"+'n'

    sentiment = '情感值:'+str(sentiments)+'n'

    al_sentiment= '人工标注情感倾向:'+al_senti[i]+'n'

    #文件写入

    filename = 'result_dataBosonNLP情感分析结果.txt'

    write_data(filename,'情感分析文本:')

    write_data(filename,list+'n') #写入待处理文本

    write_data(filename,sentiment) #写入情感值

    write_data(filename,al_sentiment) #写入机器判断情感倾向

    write_data(filename,s+'n') #写入人工标注情感

    i = i+1

    相关文件:

    微博语料:?链接:https://pan.baidu.com/s/1Pskzw7bg9qTnXD_QKF-4sg? ?提取码:15bu

    输出结果:

    FziUBj6.png!web

    3.3 基于知网情感词典的情感挖掘原理

    基于知网情感词典的情感分析原理分为以下几步:

    1、首先,需要对文本分句,分句,得到分词分句后的文本语料,并将结果与哈工大的停用词表比对,去除停用词;

    2、其次,对每一句话进行情感分析,分析的方法主要为:判断这段话中的情感词数目,含有积极词,则积极词数目加1,含有消极词,则消极词数目加1。并且再统计的过程中还需要判断该情感词前面是否存在程度副词,如果存在,则需要根据程度副词的种类赋予不同的权重,乘以情感词数。如果句尾存在?!等符号,则情感词数目增加一定值,因为!与?这类的标点往往表示情感情绪的加强,因此需要进行一定处理。

    3、接着统计计算整段话的情感值(积极词值-消极词值),得到该段文本的情感倾向。

    4、最后,统计每一段的情感值,相加得到文章的情感值。

    整体流程框图如下:

    Nfueaei.png!web

    3.4 基于知网情感词典的情感分析代码:

    import pyltp

    from pyltp import Segmentor

    from pyltp import SentenceSplitter

    from pyltp import Postagger

    import numpy as np

    #读取文件,文件读取函数

    def read_file(filename):

    with open(filename, 'r',encoding='utf-8')as f:

    text = f.read()

    #返回list类型数据

    text = text.split('n')

    return text

    #将数据写入文件中

    def write_data(filename,data):

    with open(filename,'a',encoding='utf-8')as f:

    f.write(str(data))

    #文本分句

    def cut_sentence(text):

    sentences = SentenceSplitter.split(text)

    sentence_list = [ w for w in sentences]

    return sentence_list

    #文本分词

    def tokenize(sentence):

    #加载模型

    segmentor = Segmentor() # 初始化实例

    # 加载模型

    segmentor.load(r'E:toolpythonLibsite-packagespyltp-0.2.1.dist-infoltp_datacws.model')

    # 产生分词,segment分词函数

    words = segmentor.segment(sentence)

    words = list(words)

    # 释放模型

    segmentor.release()

    return words

    #词性标注

    def postagger(words):

    # 初始化实例

    postagger = Postagger()

    # 加载模型

    postagger.load(r'E:toolpythonLibsite-packagespyltp-0.2.1.dist-infoltp_datapos.model')

    # 词性标注

    postags = postagger.postag(words)

    # 释放模型

    postagger.release()

    #返回list

    postags = [i for i in postags]

    return postags

    # 分词,词性标注,词和词性构成一个元组

    def intergrad_word(words,postags):

    #拉链算法,两两匹配

    pos_list = zip(words,postags)

    pos_list = [ w for w in pos_list]

    return pos_list

    #去停用词函数

    def del_stopwords(words):

    # 读取停用词表

    stopwords = read_file(r"test_datastopwords.txt")

    # 去除停用词后的句子

    new_words = []

    for word in words:

    if word not in stopwords:

    new_words.append(word)

    return new_words

    # 获取六种权值的词,根据要求返回list,这个函数是为了配合Django的views下的函数使用

    def weighted_value(request):

    result_dict = []

    if request == "one":

    result_dict = read_file(r"E:学习笔记NLP学习NLP code情感分析3degree_dictmost.txt")

    elif request == "two":

    result_dict = read_file(r"E:学习笔记NLP学习NLP code情感分析3degree_dictvery.txt")

    elif request == "three":

    result_dict = read_file(r"E:学习笔记NLP学习NLP code情感分析3degree_dictmore.txt")

    elif request == "four":

    result_dict = read_file(r"E:学习笔记NLP学习NLP code情感分析3degree_dictish.txt")

    elif request == "five":

    result_dict = read_file(r"E:学习笔记NLP学习NLP code情感分析3degree_dictinsufficiently.txt")

    elif request == "six":

    result_dict = read_file(r"E:学习笔记NLP学习NLP code情感分析3degree_dictinverse.txt")

    elif request == 'posdict':

    result_dict = read_file(r"E:学习笔记NLP学习NLP code情感分析3emotion_dictpos_all_dict.txt")

    elif request == 'negdict':

    result_dict = read_file(r"E:学习笔记NLP学习NLP code情感分析3emotion_dictneg_all_dict.txt")

    else:

    pass

    return result_dict

    print("reading sentiment dict .......")

    #读取情感词典

    posdict = weighted_value('posdict')

    negdict = weighted_value('negdict')

    # 读取程度副词词典

    # 权值为2

    mostdict = weighted_value('one')

    # 权值为1.75

    verydict = weighted_value('two')

    # 权值为1.50

    moredict = weighted_value('three')

    # 权值为1.25

    ishdict = weighted_value('four')

    # 权值为0.25

    insufficientdict = weighted_value('five')

    # 权值为-1

    inversedict = weighted_value('six')

    #程度副词处理,对不同的程度副词给予不同的权重

    def match_adverb(word,sentiment_value):

    #最高级权重为

    if word in mostdict:

    sentiment_value *= 8

    #比较级权重

    elif word in verydict:

    sentiment_value *= 6

    #比较级权重

    elif word in moredict:

    sentiment_value *= 4

    #轻微程度词权重

    elif word in ishdict:

    sentiment_value *= 2

    #相对程度词权重

    elif word in insufficientdict:

    sentiment_value *= 0.5

    #否定词权重

    elif word in inversedict:

    sentiment_value *= -1

    else:

    sentiment_value *= 1

    return sentiment_value

    #对每一条微博打分

    def single_sentiment_score(text_sent):

    sentiment_scores = []

    #对单条微博分句

    sentences = cut_sentence(text_sent)

    for sent in sentences:

    #查看分句结果

    # print('分句:',sent)

    #分词

    words = tokenize(sent)

    seg_words = del_stopwords(words)

    #i,s 记录情感词和程度词出现的位置

    i = 0 #记录扫描到的词位子

    s = 0 #记录情感词的位置

    poscount = 0 #记录积极情感词数目

    negcount = 0 #记录消极情感词数目

    #逐个查找情感词

    for word in seg_words:

    #如果为积极词

    if word in posdict:

    poscount += 1 #情感词数目加1

    #在情感词前面寻找程度副词

    for w in seg_words[s:i]:

    poscount = match_adverb(w,poscount)

    s = i+1 #记录情感词位置

    # 如果是消极情感词

    elif word in negdict:

    negcount +=1

    for w in seg_words[s:i]:

    negcount = match_adverb(w,negcount)

    s = i+1

    #如果结尾为感叹号或者问号,表示句子结束,并且倒序查找感叹号前的情感词,权重+4

    elif word =='!' or word =='!' or word =='?' or word == '?':

    for w2 in seg_words[::-1]:

    #如果为积极词,poscount+2

    if w2 in posdict:

    poscount += 4

    break

    #如果是消极词,negcount+2

    elif w2 in negdict:

    negcount += 4

    break

    i += 1 #定位情感词的位置

    #计算情感值

    sentiment_score = poscount - negcount

    sentiment_scores.append(sentiment_score)

    #查看每一句的情感值

    # print('分句分值:',sentiment_score)

    sentiment_sum = 0

    for s in sentiment_scores:

    #计算出一条微博的总得分

    sentiment_sum +=s

    return sentiment_sum

    # 分析test_data.txt 中的所有微博,返回一个列表,列表中元素为(分值,微博)元组

    def run_score(contents):

    内容来源于网络,如有侵权请联系客服删除

    展开全文
  • python 情感分析

    千次阅读 2018-09-07 17:05:05
    使用库:用Python 进行机器学习及情感分析,需要用到两个主要的程序包:nltk 和 scikit-learn nltk 主要负责处理特征提取(双词或多词搭配需要使用nltk 来做)和特征选择(需要nltk 提供的统计方法)。 scikit-learn ...
    转:https://blog.csdn.net/u011001084/article/details/78980299
    

    使用库:用Python 进行机器学习及情感分析,需要用到两个主要的程序包:nltk 和 scikit-learn
    nltk 主要负责处理特征提取(双词或多词搭配需要使用nltk 来做)和特征选择(需要nltk 提供的统计方法)。
    scikit-learn 主要负责分类算法,评价分类效果,进行分类等任务。

    1.特征提取和特征选择(选择最佳特征)
    2.赋予类标签,分割开发集和测试集
    3.构建分类器,检验分类准确度,选择最佳分类算法
    4.存储和使用最佳分类器进行分类,分类结果为概率值
    展开全文
  • python_情感分析基于jieba库,测试python3可直接运行,只需要jieba库,io库和numpy库,这三个基础库,就可以完成python情感分析
  • python实现基于情感词典的情感分析 大数据分析 用python实现基于情感词典的情感分析 大数据分析 用python实现基于情感词典的情感分析 大数据分析 用python实现基于情感词典的情感分析 大数据分析
  • python情感分析(真实案例完整流程)

    万次阅读 多人点赞 2018-01-09 12:52:18
    情感分析:又称为倾向性分析和意见挖掘,它是对带有情感色彩的主观性文本进行分析、处理、归纳和推理的过程,其中情感分析还可以细分为情感极性(倾向)分析,情感程度分析,主客观分析等。 情感极性分析的目的是对...

    情感分析:又称为倾向性分析和意见挖掘,它是对带有情感色彩的主观性文本进行分析、处理、归纳和推理的过程,其中情感分析还可以细分为情感极性(倾向)分析,情感程度分析,主客观分析等。

    情感极性分析的目的是对文本进行褒义、贬义、中性的判断。在大多应用场景下,只分为两类。例如对于“喜爱”和“厌恶”这两个词,就属于不同的情感倾向。

    背景交代:爬虫京东商城某一品牌红酒下所有评论,区分好评和差评,提取特征词,用以区分新的评论【出现品牌名称可以忽视,本文章不涉及打广告哦 o(╯□╰)o】。

    示例1(好评)
    这里写图片描述

    示例2(差评)
    这里写图片描述

    读取文本文件

    def text():
         f1 = open('E:/工作文件/情感分析案例1/good.txt','r',encoding='utf-8') 
         f2 = open('E:/工作文件/情感分析案例1/bad.txt','r',encoding='utf-8')
         line1 = f1.readline()
         line2 = f2.readline()
         str = ''
         while line1:
             str += line1
             line1 = f1.readline()
         while line2:
             str += line2
             line2 = f2.readline()
         f1.close()
         f2.close()
         return str
    

    把单个词作为特征

    def bag_of_words(words):
         return dict([(word,True) for word in words])
    
    print(bag_of_words(text()))
    

    这里写图片描述

    import nltk
    from nltk.collocations import  BigramCollocationFinder
    from nltk.metrics import  BigramAssocMeasures
    

    把双个词作为特征,并使用卡方统计的方法,选择排名前1000的双词

    def  bigram(words,score_fn=BigramAssocMeasures.chi_sq,n=1000):
         bigram_finder=BigramCollocationFinder.from_words(words)  #把文本变成双词搭配的形式
         bigrams = bigram_finder.nbest(score_fn,n)  #使用卡方统计的方法,选择排名前1000的双词
         newBigrams = [u+v for (u,v) in bigrams]
         return bag_of_words(newBigrams)
         
    print(bigram(text(),score_fn=BigramAssocMeasures.chi_sq,n=1000))
    

    这里写图片描述

    把单个词和双个词一起作为特征

    def  bigram_words(words,score_fn=BigramAssocMeasures.chi_sq,n=1000):
         bigram_finder=BigramCollocationFinder.from_words(words)
         bigrams = bigram_finder.nbest(score_fn,n)
         newBigrams = [u+v for (u,v) in bigrams]
         a = bag_of_words(words)
         b = bag_of_words(newBigrams)
         a.update(b)  #把字典b合并到字典a中
         return a 
    
    print(bigram_words(text(),score_fn=BigramAssocMeasures.chi_sq,n=1000))
    

    这里写图片描述

    结巴分词工具进行分词及词性标注
    三种分词模式 :
    A、精确模式:试图将句子最精确地切开,适合文本分析。默认是精确模式。
    B、全模式:把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义
    C、搜索引擎模式:在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词
    注:当指定jieba.cut的参数HMM=True时,就有了新词发现的能力。

    import jieba
    
    def read_file(filename):
         stop = [line.strip() for line in  open('E:/工作文件/情感分析案例1/stop.txt','r',encoding='utf-8').readlines()]  #停用词
         f = open(filename,'r',encoding='utf-8')
         line = f.readline()
         str = []
         while line:
             s = line.split('\t')
             fenci = jieba.cut(s[0],cut_all=False)  #False默认值:精准模式
             str.append(list(set(fenci)-set(stop)))
             line = f.readline()
         return str
    

    安装nltk,pip3 install nltk

    from nltk.probability import  FreqDist,ConditionalFreqDist
    from nltk.metrics import  BigramAssocMeasures
    

    获取信息量最高(前number个)的特征(卡方统计)

    def jieba_feature(number):   
         posWords = []
         negWords = []
         for items in read_file('E:/工作文件/情感分析案例1/good.txt'):#把集合的集合变成集合
             for item in items:
                posWords.append(item)
         for items in read_file('E:/工作文件/情感分析案例1/bad.txt'):
             for item in items:
                negWords.append(item)
      
         word_fd = FreqDist() #可统计所有词的词频
         cond_word_fd = ConditionalFreqDist() #可统计积极文本中的词频和消极文本中的词频
      
         for word in posWords:
             word_fd[word] += 1
             cond_word_fd['pos'][word] += 1
      
         for word in negWords:
             word_fd[word] += 1
             cond_word_fd['neg'][word] += 1
      
         pos_word_count = cond_word_fd['pos'].N() #积极词的数量
         neg_word_count = cond_word_fd['neg'].N() #消极词的数量
         total_word_count = pos_word_count + neg_word_count
      
         word_scores = {}#包括了每个词和这个词的信息量
      
         for word, freq in word_fd.items():
             pos_score = BigramAssocMeasures.chi_sq(cond_word_fd['pos'][word],  (freq, pos_word_count), total_word_count) #计算积极词的卡方统计量,这里也可以计算互信息等其它统计量
             neg_score = BigramAssocMeasures.chi_sq(cond_word_fd['neg'][word],  (freq, neg_word_count), total_word_count) 
             word_scores[word] = pos_score + neg_score #一个词的信息量等于积极卡方统计量加上消极卡方统计量
      
         best_vals = sorted(word_scores.items(), key=lambda item:item[1],  reverse=True)[:number] #把词按信息量倒序排序。number是特征的维度,是可以不断调整直至最优的
         best_words = set([w for w,s in best_vals])
         return dict([(word, True) for word in best_words])
    

    调整设置,分别从四种特征选取方式开展并比较效果

    def build_features():
         #feature = bag_of_words(text())#第一种:单个词
         #feature = bigram(text(),score_fn=BigramAssocMeasures.chi_sq,n=500)#第二种:双词
         #feature =  bigram_words(text(),score_fn=BigramAssocMeasures.chi_sq,n=500)#第三种:单个词和双个词
         feature = jieba_feature(300)#第四种:结巴分词
      
         posFeatures = []
         for items in read_file('E:/工作文件/情感分析案例1/good.txt'):
             a = {}
             for item in items:
                if item in feature.keys():
                    a[item]='True'
             posWords = [a,'pos'] #为积极文本赋予"pos"
             posFeatures.append(posWords)
         negFeatures = []
         for items in read_file('E:/工作文件/情感分析案例1/bad.txt'):
             a = {}
             for item in items:
                if item in feature.keys():
                    a[item]='True'
             negWords = [a,'neg'] #为消极文本赋予"neg"
             negFeatures.append(negWords)
         return posFeatures,negFeatures
    

    获得训练数据

    posFeatures,negFeatures =  build_features()
    
    from random import shuffle
    shuffle(posFeatures) 
    shuffle(negFeatures) #把文本的排列随机化  
    train =  posFeatures[300:]+negFeatures[300:]#训练集(70%)
    test = posFeatures[:300]+negFeatures[:300]#验证集(30%)
    data,tag = zip(*test)#分离测试集合的数据和标签,便于验证和测试
    
    def score(classifier):
         classifier = SklearnClassifier(classifier) 
         classifier.train(train) #训练分类器
         pred = classifier.classify_many(data) #给出预测的标签
         n = 0
         s = len(pred)
         for i in range(0,s):
             if pred[i]==tag[i]:
                n = n+1
         return n/s #分类器准确度
    

    这里需要安装几个模块:scipy、numpy、sklearn
    scipy及numpy模块需要访问http://www.lfd.uci.edu/~gohlke/pythonlibs,找到scipy、numpy,下载对应版本的whl

    import sklearn
    from nltk.classify.scikitlearn import  SklearnClassifier
    from sklearn.svm import SVC, LinearSVC,  NuSVC
    from sklearn.naive_bayes import  MultinomialNB, BernoulliNB
    from sklearn.linear_model import  LogisticRegression
    from sklearn.metrics import  accuracy_score
    
    print('BernoulliNB`s accuracy is %f'  %score(BernoulliNB()))
    print('MultinomiaNB`s accuracy is %f'  %score(MultinomialNB()))
    print('LogisticRegression`s accuracy is  %f' %score(LogisticRegression()))
    print('SVC`s accuracy is %f'  %score(SVC()))
    print('LinearSVC`s accuracy is %f'  %score(LinearSVC()))
    print('NuSVC`s accuracy is %f'  %score(NuSVC()))
    

    检测结果输出1(单个词:每个字为特征)
    这里写图片描述

    检测结果输出2(词[俩字]:2个字为特征,使用卡方统计选取前n个信息量大的作为特征)
    这里写图片描述

    检测结果输出3(单个词和双词:把前面2种特征合并之后的特征)
    这里写图片描述

    检测结果输出4(结巴分词:用结巴分词外加卡方统计选取前n个信息量大的作为特征)
    这里写图片描述

    对比四种特征选取方式可以看出,单字 - 词 - 单字+词 - 结巴分词,效果是越来越好的。

    展开全文
  • 项目介绍,给一段英文文本(英文影评评论)来预测情感是正向还是负向 模型使用的是LSTM+RNN。 代码包括数据处理,模型训练,对新数据做出预测,并将预测结果(正向情感)保存到result.txt中 软件:anaconda3 一.数据...
  • python情感分析

    2021-03-02 15:19:19
    安装 pip install snownlp 主要用法 复制代码 导入SnowNLP库 from snownlp import SnowNLP 需要操作的句子 # 导入SnowNLP库 from snownlp import SnowNLP ...# 需要操作的句子 text = '你站在桥上看风景,看风景的人在...

    参考网站 https://www.cnblogs.com/zhuminghui/p/10953717.html

    安装

    pip install snownlp

    主要用法

    复制代码

    导入SnowNLP库

    from snownlp import SnowNLP

    需要操作的句子

    # 导入SnowNLP库
    from snownlp import SnowNLP
    
    # 需要操作的句子
    text = '你站在桥上看风景,看风景的人在楼上看你。明月装饰了你的窗子,你装饰了别人的梦'
    
    s = SnowNLP(text)
    
    # 分词
    print(s.words)
    
    展开全文
  • hownet+ntusd+python情感分析代码,一份积分三份资源。两份词典与csdn中下载的词典是相同的。情感分析代码加过注释很容易理解,调整文件路径名称就可以直接使用。
  • 文本情感分析(也称为意见挖掘)是指用自然语言处理、文本挖掘以及计算机语言学等方法来识别和提取原素材中的主观信息。 本文使用python来做文本情感分析
  • 利用机器学习方法,对评论进行情感分析,主题提取等。
  • 深度学习,中文情感分析python程序,包含中文酒店用户评论语料数据。
  • 基于情感词典的python情感分析

    千次阅读 2020-10-20 19:15:49
    近期老师给我们安排了一个大作业,要求根据情感词典对微博语料进行情感分析。于是在网上狂找资料,看相关书籍,终于搞出了这个任务。现在做做笔记,总结一下本次的任务,同时也给遇到有同样需求的人,提供一点帮助。...
  • CNN算法分类 1、 特征提取流程: 详细见代码cnews_loader.py。 其中定义了以下函数,即为其整体流程。主要目的就是把文本转为词向量,建立id对应,因为只有数字才能计算。
  • Python 情感分析

    千次阅读 2016-06-14 11:38:52
    今天修改了情感分析的程序发现之前有一些不足。这个最简单的实现一个string情感分析的小函数,加载了积极词典,消极词典,程度词典,以及一些反转词等的词典。这里我没有做符号的分析和判断,因为的东西暂时用不到,...
  • python实现人工智能中文情感分析
  • Python情感分析

    千次阅读 2018-08-21 17:29:30
    1. 英文文本情感分析 借助TextBlob包:GitHub链接 Features Noun phrase extraction Part-of-speech tagging Sentiment analysis Classification (Naive Bayes, Decision Tree) Language translation and ...
  • 情感分析是文本分析的一种,它能够从一段文本描述中理解文本的感情色彩,是褒义、贬义还是中性。常见的情感分析的使用场景就是客户对商品或服务的评价、反馈,传统模式下的人工审核,不仅消耗大量人力,而且效率...
  • 情绪分析 一些使用Python进行情感分析的基础机器学习项目
  • 深度学习,中文情感分析python程序,包含中文酒店用户评论语料数据。
  • 该资料适合学生党学习参考,主要使用知网的情感词典进行情感分析,分析准确率尚可。
  • python情感分类

    2018-04-04 16:01:14
    python机器学习方法进行情感分析,里面含有源码,以及详细的解释,代码测试过,是完全可以调出来运行的
  • Code for Fine-grained Sentiment Analysis of User Reviews of AI Challenger 2018

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 20,980
精华内容 8,392
关键字:

python情感分析

python 订阅