2019/12/26
《No.25: p193-p200》《增强型分析-AI驱动的
数据分析、业务决策与案例实践》读书笔记
第6章 深入探讨CNN
6.4 一个例子,文本分类
文本分类的运用场景: 包括情感分析(正面/负面情绪);类别划分(网络上发言属于何种类型);人机对话等。
6.4.1 采用传统分类模型实现文本分类
1.基于TF-IDF构建文本分类模型,比较常用的是多项式朴素贝叶斯,这种算法是基于”所有词汇都是相对于其他词汇而独立的假设”。
2.若出现的概率为0,要用”拉普拉斯平滑”算法来估算。
3.采用sklearn工具提供的朴素贝叶斯算法MultinomialNB来进行文本分类。
4.使用混淆矩阵进行可视化检视。遇到多类别分类时很好用。
6.4.2 采用CNN进行文本分类
1.目标变量向量化: 目标变量由一列数据转换为一个向量,Keras有工具包。
2.利用词汇表进行字符转换: 用词汇表中每个词的索引将文本数据转换为数值数据。
3.文本数据补齐: 每个文本长度需补齐为相同长度。Keras有工具包。
4.定义CNN的结构: 按照预先的构想来定义CNN结构。
5.CNN的模型训练
6.模型预测结果的转换: 利用numpy工具将预测结果转换为一列类别数据
6.4.3 采用FastText进行文本分类
1.FastText是开源工具,运行速度极快。模型效果不差。
2.数据处理工作简单,只要按其格式要求,将类别标识放置在文本的前面即可。
3.FastText并没有用
深度学习的技术,可能是未来算法的技术趋势。