[机器学习入门笔记] 1. 周志华. 《机器学习》

前言

本篇主要总结了机器学习入门知识,内容摘自《机器学习公式详解》配套视频,如有不足,恳请指正,欢迎交流~

第 1 章 线性模型

0. 机器学习三要素

  1. 模型:根据问题,确定假设空间
  2. 策略:根据评价标准,确定选取最优模型的策略
  3. 算法:求解损失函数,确定最优模型

1. 一元线性回归

1.1 最小二乘法估计

最小二乘法:基于均方误差最小化来进行模型求解的方法,试图找到一条直线,使所有样本到直线上的欧氏距离之和最小。

线性回归试图学得
f ( x i ) = w x i + b ,使得 f ( x i ) ≈ y i f(x_{i})=wx_{i}+b,使得f(x_{i})≈y_{i} f(xi)=wxi+b,使得f(xi)yi
要想确定w和b,关键在于衡量f(x)与y之间的差别,可以考虑使均方误差最小化,即
均方误差最小化

1.2 极大似然估计

极大似然估计
极大似然估计
极大似然估计

极大似然估计在一元线性回归模型的应用

极大似然估计应用
极大似然估计应用
极大似然估计应用

1.3 求解 w 和 b

求解参数

凸集

凸集
注*:此处的凸函数与《高等数学》中的凸函数是相反的概念,类似《高等数学》中的凹函数
[推荐教材:王燕军.《最优化基础理论与方法》]

梯度

梯度

Hessian 矩阵

海塞矩阵

凸函数判定

凸函数判定

求解关于 w 的一阶偏导数

关于w的一阶偏导

求解关于 w 的二阶偏导数

关于w的二阶偏导数

求解关于 w 和 b 的混合偏导数

w和b的混合偏导数

求解关于 b 的二阶偏导数

关于b的二阶偏导数

证明凸函数

组合海塞矩阵证明凸函数
证明凸函数

一阶偏导数为 0 的点为最小值点的依据

依据

求解参数 w 和 b

求解参数

1.4 向量化

向量化

2. 多元线性回归

2.1 导出 Ew hat

最小二乘法

拆解
最小二乘法
最小二乘法

2.2 向量化 Ew hat

向量化
向量化
向量化

2.3 求解 w hat

推导思路

推导思路

求解 Hessian 矩阵

海塞矩阵

[标量-向量] 矩阵微分公式

矩阵微分公式
[推荐教材:张贤达. 《矩阵分析与应用》]

[推荐手册:https://en.wikipedia.org/wiki/Matrix_calculus]

关于 w hat 求解一阶偏导数

一阶偏导数
假设正定
公式3.11

3. 对数几率回归(逻辑回归)

[拓展阅读:https://sm1les.com/2019/01/17/logistic-regression-and-maximum-entropy/]

3.1 极大似然估计

确定概率密度函数

第一步 确定概率密度函数
第一步 确定概率密度函数

写出似然函数

写出似然函数

求解损失函数

损失函数
损失函数

3.2 信息论

信息论和信息熵

信息论和信息熵

相对熵

相对熵

最优分布

最优分布
对数几率回归

单个样本的交叉熵

单样本交叉熵

全体样本的交叉熵

全体样本的交叉熵
全体样本的交叉熵

对数几率回归三要素

  1. 模型:线性模型,输出值的范围是[0, 1],近似阶跃的单调可微函数
  2. 策略:极大似然估计,信息论
  3. 算法:梯度下降,牛顿法

4. 二分类线性判别分析

4.1 算法原理

从几何的角度,让全体训练样本经过投影后

  • 异类样本的中心尽可能远
  • 同类样本的方差尽可能小
4.2 损失函数推导

原理
目标函数
目标函数

4.3 拉格朗日乘子法

拉格朗日乘子法

4.4 求解 w

拉格朗日函数

拉格朗日函数
拉格朗日函数

拉格朗日函数

疑难解答

疑难解答

4.5 广义特征值

广义特征值

4.6 广义瑞利商

广义瑞利商
广义瑞利商

未完待续~

### 周志华机器学习》书籍复习指南 为了有效准备期末考试,建议采用结构化的复习方法来理解周志华所著《机器学习》的核心概念。这本书籍涵盖了广泛的理论和技术细节,在复习过程中应当注重以下几个方面: #### 1. 掌握基础概念 确保对监督学习、无监督学习和支持向量机等基本术语的理解深入透彻[^1]。 #### 2. 关键算法详解 重点研究书中提到的关键算法,比如决策树、朴素贝叶斯分类器以及K近邻算法等。对于每种算法,不仅要了解其工作原理,还要熟悉如何应用这些算法解决实际问题。 #### 3. 数学推导的重要性 注意书中涉及的各种数学公式的推导过程,特别是概率论、线性代数和最优化方面的知识。这部分内容虽然可能较为抽象复杂,但对于构建坚实的理论基础至关重要。 #### 4. 实践练习不可或缺 通过编程实现一些简单的机器学习项目或实验可以帮助加深理解和记忆。尝试使用Python或其他工具包重现书本上的案例,并探索不同参数设置下模型性能的变化[^2]。 ```python from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split from sklearn.neighbors import KNeighborsClassifier # 加载鸢尾花数据集 data = load_iris() X_train, X_test, y_train, y_test = train_test_split(data.data, data.target) # 创建并训练kNN分类器 clf = KNeighborsClassifier(n_neighbors=3).fit(X_train, y_train) print(f'Accuracy on test set: {clf.score(X_test, y_test):.2f}') ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Cyan Chau

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

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

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

打赏作者

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

抵扣说明:

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

余额充值