Python数据科学入门
Dmitry Zinoviev著
熊子源 译
第10章 机器学习
监督学习 | 尝试从具有标记的训练数据集中推断出预测函数,其中训练数据集中的每一个样本属于哪类都是已知的。(线性回归、逻辑回归、随机决策森林、朴素贝叶斯分类、支持向量机、线性判别分析、神经网络) |
---|---|
无监督学习 | 尝试在没有标记的数据中找出隐藏的结构。(K均值、社区检测、分层聚类、主成分分析) |
第48单元 设计预测试验
完成模型的建立、评估和验证有一下四个步骤:
- 将输入数据分成训练集和测试集(一般占比为7:3);
- 仅使用训练集构建数据模型;
- 将新模型应用于测试集;
- 评估模型质量(通过多方面的评价指标来评估,比如准确度等)。
模型评价指标可有四个方面:准确度、精确度、灵敏度(召回率)和特异性
TP | 模型正确地预测了属性为存在的项目数(真阳) |
---|---|
TN | 模型正确地预测了属性为不存在的项目数(真阴) |
FP | 模型错误地预测了属性为存在的项目数(假阳) |
FN | 模型错误地预测了属性为不存在的项目数(假阴) |
准确度
是正确分类项目的比例:
精确度
是所有阳性分类中真阳所占的比例:
**灵敏度(召回率)**是在所有阳真实值中真阳所占的比例:
特异性
是在所有阴真实值中真阴所占的比例
第49单元 线性回归拟合
普通最小二乘回归(OLS)
训练模型的过程是最小化加权残差的平方和(SSR):
脊回归
模型正则化:
当α=0,脊回归退化为OLS回归。α越大,惩罚越大。
逻辑回归
创建一个逻辑回归对象:
LogisticRegression()
其中包含一个最重要的参数C,参数C是正则化参数的倒数(脊回归的α的倒数)。为了使分类的结果有意义,一般取值至少为20。
第50单元 用K均值聚类实现数据分组
K均值聚类按照下面的算法将样本聚合成k个类:
- 随机选择k个初始矢量作为初始质心(矢量不需要时数据集中的样本);
- 将每个样本分配给它最接近的质心;
- 重新计算质心位置;
- 重复步骤(2)和(3),直到质心不再移动。
《Python数据科学入门》这本书中的主要内容也就概述完了。这本书每个章节后面都有三道习题,本人感觉挺有用的,大家可以自行学习。(
"The more you know who you are and what you want,the less you let things upset you."--《Lost in Translation》
)