1.逻辑回归
逻辑回归(logistic regression,LR)是一种用来解决分类问题的机器学习算法,用来判断某种事件发生的可能性。该算法主要用于购物预测、邮件过滤、疾病判断等领域。如根据某网上购物用户的年龄、性别、地理位置、购买记录等判断该用户是否计划购买某一商品。
逻辑回归可以用来解决二元分类问题,即分类结果为两种可能。如邮件过滤问题,一封邮件要么属于垃圾邮件,要么不属于垃圾邮件。如果垃圾邮件标记为1,非垃圾邮件标记为0,则针对邮件过滤问题的所有输出值为{0,1}。因此,所有此类二元分类问题输出值的取值范围为{0,1}。逻辑回归也可以用来解决多分类问题,如针对一条网络文本进行归类,可能属于新闻、军事、娱乐、体育、财经5个类别中的一类,如果对这些类别进行编号,如0代表新闻类、1代表军事类,依次类推,则针对某一网络文本,其分类的可能性输出值的范围为{0,1,2,3,4}。从这个例子可以看出,多分类问题其实是二分类问题的推广,即可把一个多分类的问题转换为一个二分类的问题。
针对二分类问题,我们首先描述二分类的分类函数,即对于输入值,需要获取一个分类模型,其输出值为{0,1}。
在逻辑回归中,选择Logistic函数,也称为Sigmoid函数,其作为分类函数,该函数定义如下:
该函数的图形如图8-3所示。
图8-3 Logistic函数
从Logistic函数图上可以看出:
(1)当z值趋近于无穷大时,g()z无限接近于1。
(2)当z值趋近于无穷小时,g()z无限接近于0。
因此,该分类函数就可以获取输出值的范围{0,1},但对于分类问题而言,其输出值也是离散量,因此需要选择一个基准值,根据上图分析,取基准值为0.5:
(1)当g(z)≥0.5时,则可获取类别为1。
(2)当g(z)<0.5时,则可获取类别为0。
这样,就可把输出映射到{0,1}中。
逻辑回归实际上是一种线性回归,可采用线性回归的分类函数:
hθ(x)=θTx
则逻辑回归分类函数就可以表示为:
可获得:
(1)在参数值为θ条件下,输入x时,其分类结果为1类的概率,即y=1的概率:
P(y=1|x,θ)=hθ(x)
(2)在参数值为θ条件下,输入x时,其分类结果为0类的概率,即y=0的概率:
P(y=0|x,θ)=1-hθ(x)
2.LR文本分类的实现过程
为了实现逻辑回归分类算法,我们定义如下函数:
参数:
train_corpus_dir:训练集所在路径。
test_corpus_dir:测试集所在路径。
fs_method:特征选择方法,包括BOW、TF-IDF、IG、CHI等。
fs_num:需要选择特征数量。
f_weight:特征权值计算方法,包含BOW、TF-IDF。
返回值:
返回LR文本分类结果。
(www.xing528.com)
1)采用IG的特征选择方法实现LR文本分类
参数:
特征选择方法:IG。
选择特征数量:1000。
特征权值计算:BOW。
采用IG的特征选择方法实现LR文本分类,其结果混淆矩阵见表8-16。
表8-16 采用IG特征选择方法的LR文本分类混淆矩阵
采用IG的特征选择方法进行LR分类,分类的查准率、查全率和F1值等评价结果见表8-17。
表8-17 分类报告
采用IG的特征选择方法进行LR文本分类,对分类结果从微平均、宏平均和带权平均三个方面进行了对比分析,其结果如下:
查准率对比:
查全率对比:
F1得分对比:
2)采用CHI的特征选择方法实现LR文本分类
参数:
特征选择方法:CHI。
选择特征数量:1000。
特征权值计算:BOW。
采用CHI的特征选择方法进行LR分类,其混淆矩阵见表8-18。
表8-18 采用CHI特征选择方法的LR文本分类混淆矩阵
采用CHI的特征选择方法进行LR分类,分类的查准率、查全率和F1值等评价结果见表8-19。
表8-19 分类报告
采用CHI的特征选择方法进行LR文本分类,对分类结果从微平均、宏平均和带权平均三个方面进行了对比分析,其结果如下:
查准率对比:
查全率对比:
F1得分对比:
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。