机器学习笔记03

1.线性回归(linear regression)

是利用回归方程(函数)对一个或者多个自变量(特征值)和因变量(目标值)之间关系进行建模的一种分析方法。

线性模型:

1.线性关系:y = w1x1 + w2x2 ... + wnxn + b (b为偏置)

2.非线性关系

线性关系一定是线性模型,线性模型不一定是线性关系

损失函数/cost/成本函数/目标函数

最小二乘法

优化损失

正规方程

直接求解

梯度下降

试错,改进

波士顿房价预测(在sklearn1.2中已删除,http://lib.stat.cmu.edu/datasets/boston)

1.获取数据集

2.划分数据集

3.特征工程--标准化

4.预估器流程

fit() coef_(权重系数) intercept_(偏置)

5.模型评估

2.欠拟合和过拟合

欠拟合:学习到的数据特征过少

解决方法:增加数据的特征数量

过拟合:原始特征过多,存在一些嘈杂特征,模型过于复杂为了兼顾各个测试数据点

解决方法:正则化

L1

损失函数 + λ惩罚项 (只是绝对值)

LASSO

L2 更常用

损失函数 + λ惩罚项 (数值的平方)

Ridge - 岭回归

3.逻辑回归的改进-岭回归

带有L2正则化的线性回归-岭回归

逻辑回归的应用场景:

广告点击率 是否会被点击/是否为垃圾邮件

是否患病/是否为金融诈骗/ 是否为虚假账号

原理:线性回归的输出就是逻辑回归的输入

激活函数

sigmoid函数 [0,1]区间中的一个概率值,默认为0.5的阈值

1/(1 + e^(-x))

假设函数/线性模型

1/(1 + e^(-(w1x1 + w2x2 ... + wnxn + b)))

损失函数

(y_predict - y_true)平方和/总数

逻辑回归的真实值/预测值 是否属于某个类别

优化损失

4.分类的评估方法

精确率与召回率

1.混淆矩阵

TP = True Possitive

FN = False Negative

2.精确率(Precision)与召回率(Recall)

精确率

召回率 查的全不全

3.F1-score 模型的稳健性

总共有100人,如果99个样本是癌症,1个样本非癌症 --样本不均衡

复制代码
ROC曲线与AUC指标
	TPR与FPR
	TPR = TP/(TP + FN) - 召回率
		所有真是类别为1的样本中,预测类别为1的比例
	FPR = FP / (FP + TN)
		所有真是类别为0的样本中,预测类别为1的比例
AUC(Area Under Curve):
	被定义为ROC曲线下与坐标轴围成的面积,显然这个面积的数值不会大于1。
又由于ROC曲线一般都处于y=x这条直线的上方,所以AUC的取值范围在0.5和1之间。AUC越接近1.0,
检测方法真实性越高;等于0.5时,则真实性最低,无应用价值
1.AUC只能用来评价二分类
2.AUC非常适合评价样本不均衡中的分类器性能	

5.模型保存与加载

joblib.dump(estimator, 'my_ridge.pkl')

estimator = joblib.load('my_ridge.pkl')

6.无监督学习(没有目标值) -- K-means算法

聚类:K-means(K均值聚类)

降维:PCA

K-means原理:一种基于划分的无监督聚类算法,其核心思想是将数据集划分为k个簇,使得每个数据点都属于最近的簇,

并且簇的中心是所有数据点的平均值。

开发流程:

降维之后的数据

1.预估器流程

2.看结果

3.模型评估

kmeans性能评估指标

轮廓系数

如果b_i >> a_i 趋近于1效果越好,趋近于-1效果不好

轮廓系数的值介于[-1,1]之间

越趋近于1代表内聚度和分离度都相对较优

kmeans总结:采用迭代式算法,直观易懂并且非常实用

缺点:容易收敛到局部最优解

相关推荐
Mountain and sea几秒前
从零搭建工业机器人激光切割+焊接产线:KUKA七轴协同+节卡AGV+视觉检测实战复盘
人工智能·机器人·视觉检测
章鱼丸-1 分钟前
DAY31 文件的拆分和写法
开发语言·python
唐叔在学习14 分钟前
Python桌面端应用最小化托盘开发实践
后端·python·程序员
2501_9454235415 分钟前
使用Fabric自动化你的部署流程
jvm·数据库·python
2401_8463416516 分钟前
用Pandas处理时间序列数据(Time Series)
jvm·数据库·python
K姐研究社23 分钟前
阿里JVS Claw实测 – 手机一键部署 OpenClaw,开箱即用
人工智能·智能手机·aigc·飞书
卷积殉铁子24 分钟前
从“手动挡”到“自动驾驶”:OpenClaw如何让AI开发变成“说话就行”
人工智能
未知鱼27 分钟前
Python安全开发之子域名扫描器(含详细注释)
网络·python·安全·web安全·网络安全
机器之心27 分钟前
扎克伯格正在打造自己的「AI分身」,并计划裁掉1.6万人
人工智能·openai
2401_8318249630 分钟前
编写一个Python脚本自动下载壁纸
jvm·数据库·python