【机器学习day03-回归与聚类算法】

回归与聚类算法

1.线性回归

回归问题:目标值是连续型的数据

1.1 线性回归的原理

y = w1x1 + w2x2 + w3x3 + … + wnxn + b
= wTx +b(每个特征值乘上一个权重,加上一个偏置值,拟合一个模型)
广义线性模型:
自变量1次:(线性关系)
y = w1x1 + w2x2 + w3x3 + … + wnxn + b
参数1次:(非线性关系)
y = w1x1 + w2x1^2 + w3x13+w4x23 …
所以:线性关系一定是线性模型,但线性模型不一定是线性关系

1.2 线性回归的损失和优化原理

目标:求模型中的参数,使得其预测的更加准确
真实关系:真实房屋价格=0.02x中心区域位置 + 0.04x附近车流量…
预测关系:预测房屋价格=0.01x中心区域位置 + 0.25x附近车流量…
预测的参数与真实的参数之间是会存在误差的,那我们应该怎么衡量呢?
损失函数/cost/成本函数/目标函数:最小二乘法

a.损失函数
损失函数为什么要使用平方呢?
b.优化算法
1、正规方程:-天才 直接求解出最好的,损失最小的参数
正规方程
2、梯度下降:-勤奋努力的普通人,不断试错、改进,从而得到最好的参数
梯度下降公式阿尔法表示学习率,通俗来说就是步长,控制每次向梯度下降的方向移动多少,后面的那坨表示方向(梯度下降的方向)
在这里插入图片描述

通过这种不断迭代的方式,机器就拥有了“自我学习”的能力。

线性回归API
在这里插入图片描述PS:
1.在使用正规方程优化时,其中LinearRegression(fit_intercept=True),fit_intercept表示是否要设置偏置值,一般都是需要的,如果不设置偏置值,那么所有的模型都会经过原点,而这样的做法显然是具有局限性的。
2.在使用梯度下降优化时,其中learning_rate属性='invscaling’表示一开始移动步幅很大,但越往后迭代走的步幅越小。此外,还可以指定learning_rate='constant’表示每次移动的步幅一致,均为eta0(eta0默认为0.01)
3.由于回归问题最终模型预测出来的值无法用True/False来评价,于是使用真实值和预测值之间误差的大小来评判,从而引申出了----均方误差评价机制
均方误差评价机制ps:其实也就是损失函数多除了一个m而已

总结:正规方程和梯度下降的对比
在这里插入图片描述

2 欠拟合与过拟合

问题:我的模型在训练集上表现得很好,误差也不大,为什么在测试集上出现了问题呢?
答:出现了过拟合问题

2.1 什么是过拟合与欠拟合

欠拟合————学习到的特征太少了
在这里插入图片描述过拟合————学习到的特征太多了
在这里插入图片描述过拟合、欠拟合定义欠拟合解决办法:增加数据的特征数量
过拟合解决办法:正则化(降低高次特征的系数使其接近于0,从而降低其影响力)
在这里插入图片描述为什么L2正则化可以降低过拟合参数的影响?

3.线性回归的改进-岭回归

带有L2正则化的线性回归,也就是岭回归,不过是在算法建立回归方程的时候,多加了一个惩罚项,从而达到解决过拟合的效果。
在这里插入图片描述注意:
在这里插入图片描述在这里插入图片描述原因:
岭回归的损失函数 = 线性回归损失函数 + α*惩罚项(所有参数的平方和)
为了让岭回归损失函数尽量小,我们不得不让参数的平方和变小一些,于是就将拟合出来的模型的高次项的参数变小了,从而降低了模型的弯曲程度
对上图的解释:当alpha惩罚项系数越来越大,所有参数的平方和就得变小,不然会导致损失函数变大。
概括就是:
正则化力度越大,权重系数会越小
正则化力度越小,权重系数会越大

4.分类算法-逻辑回归解决二分类问题

广告点击率——是否会被点击
是否为垃圾邮件
是否患病
是否为金融诈骗
是否为虚假账号
正例 / 反例

逻辑回归的原理

1.输入
在这里插入图片描述逻辑回归的输入就是线性回归的输出
2.sigmoid函数
在这里插入图片描述注意:这里的θTx就是矩阵的表达形式,其实就是h(w),即线性回归的输出。所以sigmoid函数也可以表示为:1 / (1 + e^(-线性回归的输出) ) ,输出结果是在[0,1]区间之中的一个概率值,默认0.5为阈值,即超过0.5就表示有可能。
那么,问题就在于如何得出这样一个假设函数/线性模型:
1 / (1 + e^(-(w1x1 + w2x2 +w3x3 +…+wnxn + b))
如何确定其中的参数,使得这样一个假设函数能够起到二分类的效果
在这里插入图片描述在这里插入图片描述对数似然损失
在这里插入图片描述
3.损失函数:-(y真实*logy预测+(1-y真实)*log(1-y预测))
w在这里插入图片描述在这里插入图片描述在很多场景下,我们不一定只关注预测的准确率!!!!!
比如预测肿瘤的良性/恶性,我们并不关心准确率,而是关注癌症患者有没有被全部检测出来

分类的评估方法

a. 精确率与召回率

  1. 混淆矩阵
    混淆矩阵TP(True Positive):预测值为正例,真实结果也为正例(真正例)
    FP(False Positive):预测值为正例,真实结果为反例(伪正例)
    TN(True Negative):预测值为反例,真实结果也为反例(真反例)
    FN(False Negative):预测值为反例,真是结果为正例(伪反例)
    精确率:
    精确率
    所以,精准率就是“预测为正例的那些数据里预测正确的数据个数”。
    召回率:(常用)
    召回率
    所以,召回率就是“真实为正例的那些数据里预测正确的数据个数”。(查的全不全)

为什么这样起名?

召回率 (Recall):该类样本有多少被找出来了(召回了多少)。
精确率 (Precision):你认为的该类样本,有多少猜对了(猜的精确性如何)。
在这里插入图片描述如果F1高,那么代表精确率和召回率都高,模型稳健性就好

API:
在这里插入图片描述如果样本不均衡呢?例如总共100人,99个样本癌症,1个样本非癌症的情况
不管怎样我都预测正例(默认癌症为正例) ----不负责任的模型(但无法通过目前的指标判断出模型不好)
召回率:99/99 = 100%
精确率:99%
F1-score :2*99% / 199% = 99.497%
无法推测出模型不负责任

ROC曲线和AUC指标 *

在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

无监督学习-K-means算法

在这里插入图片描述API:
在这里插入图片描述
模型训练完了,那么如何评判聚类的效果好不好呢?
在这里插入图片描述SC在 【-1,1】之间,越靠近1表示聚类效果越好,越靠近-1表示聚类效果越差。
在这里插入图片描述API:
在这里插入图片描述cust:所有样本的特征值
pre:模型训练好的已经被分类好了的预测值
在这里插入图片描述
注意:在首次选取聚类中心点时,有可能会选到所有点聚在一起的情况,这是容易得出局部最优解,可以用多次聚类解决此问题。
应用场景:
-没有目标值(先选取一些初试聚类点),先做一次聚类,后续再分类

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ecjtu1417

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值