假设你团队正在开发一个文本分类模型,用于将客户评论分类为正面或负面。由于文本数据具有高维度的特性,模型训练和预测的效率受到影响。你提议使用卡方检验进行特征选择,挑选出与分类任务最相关的词汇,降低数据的维度,从而提高模型的性能。
请你编写一个程序,使用卡方检验对给定的文本数据集进行特征选择。
具体要求如下:
1.读取输入数据集,包含多篇标注了类别的文本文档。
给定包含 N 篇文档的文本数据集,每篇文档由一个类别标签(取值为 "positive"
或 "negative"
)和文本内容构成。要求使用 Bag-of-Words 模型提取文本特征,利用卡方检验计算每个单词与类别标签之间的相关性。卡方统计量的计算公式为
χ2= ∑i=12 ∑j=12 Eij(Oij−Eij)2
其中 Oij 表示观察到的频数,Eij 表示在独立性假设下计算的期望频数,计算公式为
具体步骤如下: