Python 机器学习案例情感分析(建议收藏)
整体功能概述
这段代码的主要功能是对一组中文文本进行情感分析,将情感细分为“喜”“怒”“哀”“乐”“积极”“消极”“中性”等类别,并输出每段文本的情感倾向和对应的情感得分。代码借助 SnowNLP
库完成基本的情感极性判断,同时结合自定义的情感词典进一步细化情感分类。
代码结构及各部分功能
1. 导入必要的库
from snownlp import SnowNLP
这行代码导入了 SnowNLP
库,它是一个用于中文自然语言处理的 Python 库,可进行文本的情感分析、分词、词性标注等操作。在本代码中,主要使用其情感分析功能。
2. 构建情感词典
joy_words = ["开心", "快乐", "兴奋", "惊喜", "愉悦", "狂喜", "欣喜"]
anger_words = ["生气", "愤怒", "恼火", "气愤", "恼怒", "发火"]
sorrow_words = ["伤心", "难过", "悲痛", "哀伤", "沮丧", "忧郁"]
amusement_words = ["有趣", "好玩", "逗乐", "欢乐"]
这里定义了四个列表,分别存储与“喜”“怒”“哀”“乐”相关的情感词汇。这些词汇将用于后续的情感细分,当文本中出现这些词汇时,会将其情感归为对应的类别。
3. 定义情感分类函数
def classify_emotion(text):
s = SnowNLP(text)
sentiment_score = s.sentiments