七月算法机器学习笔记4--线性回归与逻辑回归

本文详细介绍了机器学习中的线性回归和逻辑回归,包括概念、损失函数及正则化等内容,并探讨了样本处理、特征处理及算法调优的方法。

这套笔记是跟着七月算法四月机器学习班的学习而记录的,主要记一下我再学习机器学习的时候一些概念比较模糊的地方,具体课程参考七月算法官网:

http://www.julyedu.com/ 

 

1 线性回归

概念:一般做连续值变量的预测,如股票价格走势等

对于预测阶段

举例来说:

房子的面积与价格的关系如下表所示:


可以得到如下图:


可以近似画出右边的直线。

对于多个变量的情况。

总体来说,线性回归做的事情就是在给定一些数据集的情况下,能够学习到一个线性函数f去拟合给定数据


1.1 线性回归ide损失函数:

在回归问题中,我们希望找到一个函数,使得其尽可能好的拟合给定数据,因此,其损失函数就是使得拟合的误差最小。

在假设变量只有一个的情况下,画出损失函数的图:

我们的目标是:最小化损失函数:


求解方法;

梯度下降法: 沿着负梯度方向逐步逼近最低点;


假设有n个特征


1.2 回归与欠/过拟合

对于上图需要说明的是,x和x^2可以看做是两个不同的特征。


通俗点说,欠拟合就是模型想的太少,过拟合就是模型想的太多,对于过拟合的情况,模型的泛化能力太差而很难用与测试数据。


1.3 正则化

在原来的损失函数的后面,加入参数的平方和(L2正则项)



2. 逻辑回归

线性回归无法解决的问题;


在这种情况下,如果使用线性回归,一部分样本点就会被错分,因此,引入sigmoid函数:


sigmoid函数可以把任意一个值映射到【0,1】之间。

1.1 判定边界: -- 逻辑回归的目的就是在寻找判定边界



所谓的判定边界,就是g(x)里面,x=0表示的部分。在过sigmoid后,即h(x) = 0.5。


2.2 损失函数

首先看一下线性回归的损失函数

但是,这个损失函数无法用在逻辑回归中,因为逻辑回归的y值只有0和1,其损失函数是非凸的:


逻辑回归的损失函数具有如下形式:


其损失函数分别为:

则这个损失函数可以写为:


加上正则项


这个函数是一个凸函数,可以使用梯度下降求最优解



3. 关于样本处理

3.1 样本量太大怎么办?
  离散化后用one-hot编码处理成0,1值
  如果要用连续值,注意做scaling

3.2样本的平衡
对样本分布敏感

下采样(样本量足的情况下),上采样(样本数量不太足)

修改loss function,给不同权重

采样后的predict结果,用作排序OK,用作判定请还原

4 关于特征处理

4.1 离散化
   映射到高维空间,用linear的LR(快,且兼具更好的分割性)

   稀疏化,0,1向量内积乘法运算速度快,计算结果方便存储,容易扩展;

   离散化后,给线性模型带来一定的非线性

   模型稳定,收敛度高,鲁棒性好

   在一定程度上降低了过拟合风险

4.2 通过组合特征引入个性化因素

      uuid + tag

      uuid + cluster_id...

4.3 注意特征的频度
     区分特征重要度
     可以产出层次判定模型

4.4 聚类/Hash
    增强了极度稀疏的特征表达力
    减小了模型,加速运算

5. 关于算法调优

假设只看模型
      选择合适的正则化(L1, L2, L1+L2) L2准确度高而训练时间长。L1可以做稀疏化处理。
      正则化系数C
      收敛的阈值e,迭代轮数
      调整loss function给定不同权重
       Bagging或其他方式的模型融合
       最优化算法选择( ‘newton-cg’, ‘lbfgs’, ‘liblinear’, ‘sag’)
                 小样本liblinear,大样本sag,多分类‘newton-cg’和‘lbfgs’(当然你也可以用liblinear和sag的one-vs-rest)


参考资料:

七月算法:机器学习四月班:http://www.julyedu.com/

图片来自于课程PPT


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值