逻辑回归Logistic Regression

2017年竞赛网站进行统计

下面是除了军事和安全的领域机器学习算法

逻辑回归Logistic Regression

逻辑回归是使用最多的,比第二名决策树高出20多个百分点

可见逻辑回归这种算法,虽然本身很简单,但是非常有用的

很多时候对于机器学习算法,并不是越复杂越好,要根据实际使用场景

来选择最合适的算法

没有免费的午餐定理:并没有某一种算法比另一种算法更好

CNN和RNN都是深度学习,他们排名是很靠后的

其实使用深度学习对数据要求很高的,需要有非常大的数据量

对于计算能力要求也很高,有些情况数据并不大,这些所谓简单的方法也是非常有效的


逻辑回归:解决分类问题

回归算法怎么解决分类问题?

实际上它是将样本的特征和样本发生的概率联系在一起,概率是一个数,所以可以讲座回归问题

逻辑回归Logistic Regression

逻辑回归中y是一个概率值

逻辑回归Logistic Regression

样本x进来了计算出概率值p

逻辑回归Logistic Regression

对概率值p进行分类

如果p大于等于0.5,有50%以上的概率发生的话,我们将y的预测值为1

如果p的值小于等于0.5我们将y的值为0

当然了这个1和0在实际问题中可能是不同的意思比如说

1代表恶性的肿瘤患者,0代表良性肿瘤患者

比如说银行用户信用,1代表有一定风险,0代表没有风险

 我们通过遇到的概率值再多做一轮操作得到最终的结果


逻辑回归其实既可以看作回归算法,也可以看做分类算法    

通常作为分类算法用,只可以解决二分类问题

多分类逻辑回归本身是不支持的

我可以对逻辑回归进行改进使得支持多分类问题


而对于kNN算法他天生就可以支持多分类问题



对于我们之前学习的线性回归算法

逻辑回归Logistic Regression

对于线性回归来说

由于存在逻辑回归Logistic Regression0所以我们的x用xb来表示 

就是每来一个样本这个样本还要加一个1

这个1和逻辑回归Logistic Regression0去相乘得到的是截距

这样怎样我们y的值的值域

逻辑回归Logistic Regression

也就是说我们线性回归的方式可以求得任意的值


概率来讲他会有一个限定我们概率的值域是[0,1]

所以直接使用线性回归方式,我们找到一组逻辑回归Logistic Regression


这组逻辑回归Logistic Regression和我们的特征X相乘之后得到的y值相应的就来表达这个事件发生的概率 呢?

其实从应用角度来讲可以这么做,但单单这样做不够好,就是因为由于概率有值域的限制,

而我们直接使用线性回归没有值域的限制,使得我们最终拟合出的直线也好,多项式回归拟合出的曲线也好

他的可信程度非常的差为此我们的解决方案非常简单,我们就是用线性回归的方式依然找一些逻辑回归Logistic Regression


逻辑回归Logistic Regression

这个逻辑回归Logistic Regression和我们xb进行点乘, 

只不过我们将得到的结果在作为一个特征值,送给一个逻辑回归Logistic Regression这个函数

经过我们逻辑回归Logistic Regression 转换,转换成一个值域在[0,1]之间这样一个值

这样我们就得到了Xb发生的特定时间,相应的概率是多少

我们来找我们的逻辑回归Logistic Regression

通常我们用Sigmoid函数

逻辑回归Logistic Regression

对于这个函数他的表达式是这个样子

逻辑回归Logistic Regression

我们绘制一下这个函数来看看

逻辑回归Logistic Regression

逻辑回归Logistic Regression

这就是绘制的结果

表达式复杂,图像很简单的

图片分析就不记录了,,,太简单了。。

逻辑回归Logistic Regression

变成了这样一个式子

逻辑回归Logistic Regression

比如说我们要预测良性或者恶性肿瘤

我们需要训练得到一组逻辑回归Logistic Regression值,这样每来一组新的病人数据我们就用这组数据前面加上一个1求出来的逻辑回归Logistic Regression

做点乘,点乘的结果就得到了一个数我们把这个数扔给Sigmoid函数函数,得到的就是我们说这个病人患有恶性肿瘤的概率

然后大于0.5就是1,小于0.5就是0


我们训练的过程就是解决,对于给定的样本数据集X,y

我们找到参数逻辑回归Logistic Regression,使得用这样的方式

可以最大程度获得样本数据集X

对应的分类输出y