第六章——情感分析
6.1 情感分析任务与流程
6.2 文本预处理技术
6.3 文本表示与TF-IDF
6.4 词向量在二维空间的可视化
6.1 情感分析任务与流程
任务:分析输入文本的情感分类,如正面、负面、中性。
1、运用场景
监控舆情、竞品分析、量化投资等等。
2、文本分析流程图
; 6.2 文本预处理技术
1、文本分词(常用jieba分词)
2、停用词的过滤
3、过滤出现频率低的单词
4、标准化操作。
1、文本分词(常用jieba 分词)
实例一:
import jieba
seg_list = jieba.cut("SZTU is a university~", cut_all=False)
print("Default Mode: " + "/ ".join(seg_list))
2、 停用词的过滤
停用词(Stop Words):对句子贡献不大的词。过滤掉这些词可以大大增加搜索效率。使用时可以导入现有的停用词库。
单词的过滤:将停用词或使用频率很低的词过滤(使用频率一般小于10到20次)
网上的停用词库资源:NLTK(Natural Language Tool Kit)
3、符号的处理:
- 处理特殊符号;
- 处理数字:将数字用其他字符串表示例如”NUM”,一般不直接去掉,因为数字本身是有意义。
4、标准化操作
课堂关键词:Stemming、Porter Stemmer
6.3 文本表示与TF-IDF(本章重点)
1、单词和句子的表示
- 单词的表示(独热编码,One-hot)
举例:词典=[机器,学习,有,意思,人工智能,是,未来]
单词的表示:
机器:(1,0,0,0,0,0,0) (词库中的第一位有”机器”,则一位为1,其他位全为0)
学习:(0,1,0,0,0,0,0)
人工智能:(0,0,0,0,1,0,0) - 句子的表示(此处仅列举三个常见方法):
-1. Boolean表示
-2. Count表示
-3. TF-IDF的表示
2、TF-IDF的表示
tf-idf(w) = tf(d, w) * idf(w)
tf(d, w) = w在文档d中出现的次数
idf(w) = log(N/N(w)) (N为个数事先定好的了,N(w)为w在文档中出现的次数)
举例:
N = 3
V = (机器学习, 课程, 有, 意思, 数据)
机器学习 课程:(1 _log(3/2)), 1_log(3/3), 0,0,0)
3、文本相似度比较
两种计算方法:
- 计算欧氏距离:用Count得到的一列矩阵,它们两行的1和0相距的距离,直接用点到点的距离公式计算距离即可,距离越大相似度越小。
- 计算余弦相似度:与距离相似,这里是算两个数值的夹角余弦,基于相似度的计算。
6.4 词向量在二维空间的可视化
1、单词独热编码的问题
2、从独热编码到分布式表示
3、词向量在二维空间中的可视化
词向量的学习:语料库 –> Word2Vec模型 –> 分布式表示
4、词向量的学习
5、从词向量到句子向量
Original: https://blog.csdn.net/studyplayhappy/article/details/121355155
Author: 陈皮皮_mas
Title: 2021-11-16 情感分析
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/531752/
转载文章受原作者版权保护。转载请注明原作者出处!