1.基于IG模型的特征选择函数
我们建立基于信息增益的特征选择函数描述如下:
参数:
class_doc_num_list:各类中的文档数列表。
term_set:文本集词典。
term_class_matrix:类别中含有包含特定特征词的文档数矩阵。
返回值:
term_set_r:排序后的特征集
2.案例分析
由于信息增益适合文本分类系统中的特征选择,我们仍然采用清华大学自然语言处理与社会人文计算实验室提供的新闻语料库中的文本数据,采用原来我们已经处理好的数据集格式,并选择5个类别,每个类别包含4条数据,总共20条数据进行分析。
(1)利用数据获取函数get_data()实现数据读取,获得文本数据集中的文本记录和文本对应的类别标签。
(2)需要根据文本数据集获取feature_selection_ig()函数的4个参数,然后调用该函数实现特征选择,于是定义了相应的函数feature_selection(train_doc_term,train_labels,train_label_dict,fs_method),其描述如下。(www.xing528.com)
参数:
train_doc_term:分词后的文本集。
train_labels:文本文档类别标签。
train_label_dict:文本文档类别词典。
fs_method:特征选择方法。
返回值:
sorted_term_set:返回按照IG值降序排列的特征集。
(3)我们可根据自己的需求,选择若干特征作为最终的文本分类特征,本例中选择IG值排序靠前的10个特征。
则运行结果为:
同时,我们也获得对应的IG值:
通过上述特征选择方法,我们获取了IG值比较大的10个特征作为最终的特征集,减少了特征个数,文本集中的文档就可以表示为10维向量,降低了向量维度。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。