您当前的位置: 首页 >  逻辑回归

凌云时刻

暂无认证

  • 0浏览

    0关注

    1437博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

机器学习笔记(二十二):逻辑回归中使用模型正则化

凌云时刻 发布时间:2020-07-14 18:30:00 ,浏览量:0

凌云时刻 · 技术

导读:上一节中,我们讲了使用多项式的方式使得逻辑回归可以解决非线性分类的问题,那么既然使用了多项式方法,那势必模型就会变的很复杂,继而产生过拟合的问题。所以和多项式解决回归问题一样,在逻辑回归中使用多项式也要使用模型正则化来避免过拟合的问题。

作者 | 计缘

来源 | 凌云时刻(微信号:linuxpk)

逻辑回归中使用模型正则化

‍‍‍‍‍‍‍‍‍‍这一节我们使用Scikit Learn中提供的逻辑回归来看一下如何使用模型正则化。在这之前先来复习一下模型正则化。所谓模型正则化,就是在损失函数中加一个带有系数的正则模型,那么此时如果想让损失函数尽可能的小,就要兼顾原始损失函数和正则模型中的   值,从而做以权衡,起到约束多项式系数大小的作用。正则模型前的系数‍‍   ‍‍决定了新的损失函数中每一个   ‍‍都尽可能的小,这个小的程度占整个优化损失函数的多少。

   ‍‍范数请参见机器学习笔记九之交叉验证、模型正则化 。

‍‍‍‍但是这种方式有一个问题,那就是可以刻意回避模型正则化,也就是将   ‍‍取值为0的时候。所以还有另一种模型正则化的方式是将这个系数加在原始损失函数前面,这种情况的话相当于正则模型前的系数永远是1,无论如何都要进行模型正则化。‍‍‍‍

   

Scikit Learn中的逻辑回归就自带这种形式的模型正则化,下面我们来看一下:

 

import numpy as np
import matplotlib.pyplot as plt

# 构建样本数据,构建200行2列的矩阵,均值为0,标准差为1,既200个样本,每个样本2个特征
X = np.random.normal(0, 1, size=(200, 2))
# 构建y的方程,曲线为抛物线
y = np.array(X[:, 0]**2 + X[:, 1]             
关注
打赏
1663816507
查看更多评论
0.0765s