目录
1.One-hot表示方式/词袋模型
优点:
- 解决了分类器不好处理离散数据的问题
- 在一定程度上也起到了扩充特征的作用
缺点:
- 不考虑词与词之间的顺序
- 他假设词与词之间相互独立(大多数情况下,词与词之间是相互有关联的)
- 得到的特征是离散稀疏的
2.文档-词条矩阵/d2m矩阵
sklearn中的CountVectorizer可以实现将文本转换为稀疏矩阵,此处输入的中文文本必须是要先分好词再按空格分隔,合并为一个字符串才可以。参数min_df=5表示词必须要在至少5个文档中出现过,否则就不考虑。
# 5.向量化
# 词袋模型
from sklearn.feature_extraction.text import CountVectorizer
# 取出所有分词
words_list = list(chap.words_list)
countvec = CountVectorizer(min_df=5) # 在5个以上章节中出现才保留
words_vec = countvec.fit_transform(words_list) # 得到一个稀疏矩阵
words_vec.todense() # 转换为d2m矩阵
countvec.get_feat