python nltk 情感分析

文件下载地址:
链接: https://pan.baidu.com/s/1WeEyUKfrYoaZNd-jpl_UCA 提取码: ge7a

"""
    电影评论 情感分析
"""
import nltk.corpus as nc
import nltk.classify as cf
import nltk.classify.util as cu

# 加载正向样本
pos_data = []
fileids = nc.movie_reviews.fileids("pos")

for fileid in fileids:
    sample = {}
    words = nc.movie_reviews.words(fileid)
    for word in words:
        sample[word] = True
    pos_data.append((sample, "POSITIVE"))


print(len(pos_data))

# 加载负向样本
neg_data = []
fileids = nc.movie_reviews.fileids("neg")

for fileid in fileids:
    sample = {}
    words = nc.movie_reviews.words(fileid)
    for word in words:
        sample[word] = True
    neg_data.append((sample, "NEGTIVE"))


# 整理数据集 80%训练 20%测试
pnumb, nnumb = int(len(pos_data) * 0.8), int(len(neg_data) * 0.8)
train_data = pos_data[:pnumb] + neg_data[:nnumb]
test_data = pos_data[pnumb:] + neg_data[nnumb:]

# 创建模型 朴素贝叶斯分类
model = cf.NaiveBayesClassifier.train(train_data)

# 正确率计算
acc = cu.accuracy(model, test_data)
print(acc)

# 模拟业务场景
reviews = [
    'It is an amazing movie.',
    'This is a dull movie. I would never recommend it to anyone.',
    'The cinematography is pretty great in this movie.',
    'The direction was terrible and the story was all over the place.']

for review in reviews:
    sample = {}
    words = review.split()
    for word in words:
        sample[word] = True
    pcls = model.classify(sample)
    print(review, '->', pcls)

在这里插入图片描述

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

廷益--飞鸟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值