文章目录

  • 模型评估
    • 评估方法
    • 性能度量
  • 线性模型
    • 线性回归
    • 多元线性回归
    • 对数几率回归
    • 线性判别分析
  • 决策树
    • 信息增益
    • 增益率
    • 基尼系数
    • 剪枝、连续值及缺失值
      • 剪枝处理
  • 神经网络
    • 神经元模型
    • 感知机和多层网络
    • 误差传播算法

模型评估

由于前两章内容比较熟悉,只简单总结一下公式

评估方法

  1. 留出法

  2. 交叉验证法

  3. 自助法

性能度量

1.均方误差:
E ( f ; D ) = 1 m ∑ i = 1 m ( f ( x i ) − y i ) 2 E(f;D)=\frac {1}{m}\sum_{i=1}^{m}(f(x_i)-y_i)^{2} E(f;D)=m1​i=1∑m​(f(xi​)−yi​)2
更一般的,
E ( f ; D ) = ∫ x ∽ D ( f ( x i ) − y i ) 2 p ( x ) d x E(f;D)=\int_{x\backsim\ D}(f(x_i)-y_i)^{2}p(x)dx E(f;D)=∫x∽ D​(f(xi​)−yi​)2p(x)dx

  1. 错误率

E ( f ; D ) = 1 m ∑ i = 1 m ∏ ( f ( x i ) ≠ y i ) 2 E(f;D)=\frac {1}{m}\sum_{i=1}^{m}\prod(f(x_i)\neq\ y_i)^{2} E(f;D)=m1​i=1∑m​∏(f(xi​)​= yi​)2

  1. 精度

a c c ( f ; D ) = 1 − E ( f ; D ) acc(f;D)=1-E(f;D) acc(f;D)=1−E(f;D)

  1. 查准率和查全率

查准率:
P = T P T P + F P P=\frac {TP}{TP+FP} P=TP+FPTP​
查全率:
R = T P T P + F N R=\frac {TP}{TP+FN} R=TP+FNTP​

F1度量:
F 1 = 2 × P × R P + R = 2 × T P 样 例 总 数 + T P − T N F1=\frac{2\times P\times R}{P+R}=\frac{2\times TP}{样例总数+TP-TN} F1=P+R2×P×R​=样例总数+TP−TN2×TP​

F1度量的一般形式:
F β = ( 1 + β 2 ) × P × R ( β 2 × P ) + R F_\beta =\frac{(1+\beta ^2)\times P\times R}{(\beta ^2\times P)+R} Fβ​=(β2×P)+R(1+β2)×P×R​

  1. ROC和AUC曲线

    真正利率(True Positive Rate)
    T P R = T P T P + F N TPR=\frac{TP}{TP+FN} TPR=TP+FNTP​
    假正利率(False Positive Rate)
    F P R = F P T N + F P FPR=\frac{FP}{TN+FP} FPR=TN+FPFP​

A U C = 1 2 ∑ i = 1 m − 1 ( x i + 1 − x i ) ( y i + y i + 1 ) = 1 − ℓ r a n k AUC=\frac{1}{2}\sum_{i=1}^{m-1}(x_{i+1-x_i})(y_i+y_{i+1})=1-\ell_{rank} AUC=21​i=1∑m−1​(xi+1−xi​​)(yi​+yi+1​)=1−ℓrank​

线性模型

线性组合基本形式一般用向量表示:
f ( x ) = w T x + b f(x)=w^Tx+b f(x)=wTx+b
w和b学得后,模型就得以确认。w可以直观的表示各属性在预测中的重要性。

线性回归

给定数据集
D = ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . . ( x m , y m ) D={(x_1,y_1),(x_2,y_2),....(x_m,y_m)} D=(x1​,y1​),(x2​,y2​),....(xm​,ym​)
,其中
x i = ( x i 1 ; x i 2 ; . . . . ; x i d ) , y i ∈ R x_i=(x_{i1};x_{i2};....;x_{id}),y_i\in \Bbb{R} xi​=(xi1​;xi2​;....;xid​),yi​∈R
其中i是x在第i个属性上的取值。假设输入的属性数目只有一个,对于离散属性,若属性值间存在order,通过连续化将其转化成连续值,比如“高”“矮”转化为{1,0};如果不存在order,假定有k个属性,则转化为k维向量,如“瓜”类取值“西瓜”,“南瓜”,“黄瓜”转化为1(0,0,1),(0,1,0),(1,0,0)。

线性回归试图学得
f ( x i ) = w i T x + b , 使 得 f ( x i ) ≂ y i f(x_i)=w_i^Tx+b,使得f(x_i)\eqsim y_i f(xi​)=wiT​x+b,使得f(xi​)≂yi​
如果我们试图让均方误差最小化,即可度量f(x)和y之间的差,此刻使用最小二乘法使样本到所找的直线上的欧氏距离之和最小。
( w ∗ , b ∗ ) = arg ⁡ min ⁡ ( w , b ) ∑ i = 1 m ( f ( x i ) − y i ) 2 = arg ⁡ min ⁡ ( w , b ) ∑ i = 1 m ( y i − w x i − b ) 2 (w^*,b^*)=\arg\min_{(w,b)}\sum_{i=1}^{m}(f(x_i)-y_i)^2=\arg\min_{(w,b)}\sum_{i=1}^{m}(y_i-wx_i-b)^2 (w∗,b∗)=arg(w,b)min​i=1∑m​(f(xi​)−yi​)2=arg(w,b)min​i=1∑m​(yi​−wxi​−b)2


E w , b = ∑ i = 1 m ( y i − w x i − b ) 2 E_{w,b}=\sum_{i=1}^{m}(y_i-wx_i-b)^2 Ew,b​=i=1∑m​(yi​−wxi​−b)2
分别对w,b求导,得出
w = ∑ i = 1 m y i ( x i − x ˉ ) ∑ i = 1 m x i 2 − 1 m ( ∑ i = 1 m x i ) 2 w=\frac{\sum_{i=1}^my_i(x_i-\bar x)}{\sum_{i=1}^mx_i^2-\frac{1}{m}(\sum_{i=1}^mx_i)^2} w=∑i=1m​xi2​−m1​(∑i=1m​xi​)2∑i=1m​yi​(xi​−xˉ)​

b = 1 m ∑ i = 1 m ( y i − w x i ) b=\frac{1}{m}\sum_{i=1}^m(y_i-wx_i) b=m1​i=1∑m​(yi​−wxi​)

多元线性回归

类似的,当有d个属性描述时,
w ^ ∗ = arg ⁡ min ⁡ w ^ ( y − X w ^ ) T ( y − X w ^ ) \hat{w}^*=\arg\min_{\hat{w}}(y-X\hat{w})^T(y-X\hat{w}) w^∗=argw^min​(y−Xw^)T(y−Xw^)

令 E w ^ = ( y − X w ^ ) T ( y − X w ^ ) , 对 w ^ 求 导 : 令E\hat{w}=(y-X\hat{w})^T(y-X\hat{w}),对\hat{w}求导: 令Ew^=(y−Xw^)T(y−Xw^),对w^求导:

∂ E w ^ ∂ w ^ = 2 X T ( X w ^ − y ) \frac{\partial E\hat{w}}{\partial \hat{w}}=2X^T(X\hat{w}-y) ∂w^∂Ew^​=2XT(Xw^−y)

当 X T X 为 满 秩 矩 阵 时 , 令 上 式 为 0 , 得 w ^ ∗ = ( X T X ) − 1 X T y 当X^TX为满秩矩阵时,令上式为0,得 \hat{w}^*=(X^TX)^{-1}X^Ty 当XTX为满秩矩阵时,令上式为0,得w^∗=(XTX)−1XTy

令 x ^ i = ( x i , 1 ) , 则 最 终 多 元 线 性 回 归 模 型 为 : f ( x ^ i ) = x 1 ^ T ( X T X ) − 1 X T y 令\hat{x}_i=(x_i,1),则最终多元线性回归模型为:f(\hat{x}_i)=\hat{x_1}^T(X^TX)^{-1}X^Ty 令x^i​=(xi​,1),则最终多元线性回归模型为:f(x^i​)=x1​^​T(XTX)−1XTy

对数几率回归

在二分类任务中,输出标记
$$
y\in { { 0,1 } }\

由此产生的z=W^Tx+b是实值,将z转换为0/1
$$
则设想理想的单位阶跃函数

y = { 0 , z < 0 0.5 , z = 0 1 , z > 0 y=\begin{cases} 0, z<0 \\ 0.5, z=0 \\ 1, z>0 \end{cases} y=⎩⎪⎨⎪⎧​0,z<00.5,z=01,z>0​
若预测值z大于0为正例,依次类推。但是因为单位越阶函数不连续,我们寻找可替代的近似的对数几率函数
y = 1 1 + e − z y=\frac{1}{1+e^{-z}} y=1+e−z1​
代入并变化得:
ln ⁡ y 1 − y = w T x + b \ln\frac{y}{1-y}=w^Tx+b ln1−yy​=wTx+b
将y视为后验概率估计,则改写为:
ln ⁡ ( y = 1 ∣ x ) ( y = 0 ∣ x ) = w T x + b \ln\frac{(y=1|x)}{(y=0|x)}=w^Tx+b ln(y=0∣x)(y=1∣x)​=wTx+b
然后通过极大似然法等等连续计算。

线性判别分析

决策树

信息增益

信息熵是度量样本集合纯度最常用的指标。
假 定 当 前 样 本 集 合 D 中 第 K 类 样 本 所 占 的 比 例 为 p k ( k = 1 , 2 , . . . , ∣ y ∣ ) , 则 D 的 信 息 熵 比 例 为 E n t ( D ) = − ∑ k = 1 ∣ y ∣ p k log ⁡ 2 p k 假定当前样本集合D中第K类样本所占的比例为p_k(k=1,2,...,|y|),则D的信息熵比例为\\ Ent(D)=-\sum_{k=1}^{|y|}p_k\log_2p_k\\ 假定当前样本集合D中第K类样本所占的比例为pk​(k=1,2,...,∣y∣),则D的信息熵比例为Ent(D)=−k=1∑∣y∣​pk​log2​pk​
Ent(D)的值越小,D的纯度越高。
假 设 离 散 属 性 a 有 V 个 可 能 取 值 { a 1 , a 2 , . . . , a v } , 如 果 使 用 a 对 样 本 集 D 进 行 划 分 , 会 产 生 V 个 分 支 节 点 。 其 中 第 v 个 分 支 节 点 包 含 了 D 中 所 有 在 属 性 a 上 取 值 为 a v 。 根 据 上 式 计 算 出 D v 的 信 息 熵 , 再 考 虑 到 不 同 分 支 节 点 包 含 的 样 本 数 不 同 , 给 此 分 支 节 点 赋 予 权 重 ∣ D v ∣ ∣ D ∣ , 计 算 属 性 a 对 样 本 集 D 进 行 划 分 的 信 息 增 益 。 G a i n ( D , a ) = E n t ( D ) − ∑ v = 1 V ∣ D v ∣ ∣ D ∣ E n t ( D v ) 假设离散属性a有V个可能取值{\{a^1,a^2,...,a^v\} },如果使用a对样本集D进行划分,会产生V个分支节点。\\其中第v个分支节点包含了D中所有在属性a上取值为 a^v。根据上式计算出D^v的信息熵,再考虑到不同分支节点包\\含的样本数不同,给此分支节点赋予权重\frac{|D^v|}{|D|},计算属性a对样本集D进行划分的信息增益。\\ Gain(D,a)=Ent(D)-\sum_{v=1}^V\frac{|D^v|}{|D|}Ent(D^v) 假设离散属性a有V个可能取值{a1,a2,...,av},如果使用a对样本集D进行划分,会产生V个分支节点。其中第v个分支节点包含了D中所有在属性a上取值为av。根据上式计算出Dv的信息熵,再考虑到不同分支节点包含的样本数不同,给此分支节点赋予权重∣D∣∣Dv∣​,计算属性a对样本集D进行划分的信息增益。Gain(D,a)=Ent(D)−v=1∑V​∣D∣∣Dv∣​Ent(Dv)

最 优 划 分 属 性 : a ∗ = arg ⁡ max ⁡ a ∈ A G a i n ( D , a ) 最优划分属性: a_*=\arg \max_{a\in A}Gain(D,a) 最优划分属性:a∗​=arga∈Amax​Gain(D,a)

信息增益越大,则使用属性a来划分所获得的的纯度提升越大。

增益率

信息增益对可取纸数目较多的属性有所偏好,为减少这种偏好可能带来的不利影响,可以使用增益率旋转最优划分属性。
G a i n _ r a t i o ( D , a ) = G r a i n ( D , a ) I V ( a ) ​ 其 中 I V ( a ) = − ∑ v = 1 V ∣ D v ∣ D l o g 2 ∣ D v ∣ ∣ D ∣ Gain\_ratio(D,a)=\frac{Grain(D,a)}{IV(a)}\\​其中IV(a)=-\sum_{v=1}^V\frac{|D^v|}{D}log_2\frac{|D^v|}{|D|} Gain_ratio(D,a)=IV(a)Grain(D,a)​​其中IV(a)=−v=1∑V​D∣Dv∣​log2​∣D∣∣Dv∣​

基尼系数

CART决策树使用基尼系数来选择划分属性。数据集D的纯度可用基尼值来度量:
G i n i ( D ) = ∑ k = 1 ∣ y ∣ ∑ k ′ ≠ k p k p k ′ = 1 − ∑ k = 1 ∣ y ∣ p k 2 Gini(D)=\sum_{k=1}^{|y|}\sum_{k'\neq k}p_kp_{k'}=1-\sum_{k=1}^{|y|}{p_k}^2 Gini(D)=k=1∑∣y∣​k′​=k∑​pk​pk′​=1−k=1∑∣y∣​pk​2
Gini(D)反应从数据集D中随机抽取两个样本,类别标记不一致的概率,越小则数据集D的纯度越高。
基 尼 指 数 : G i n i _ i n d e x ( D , a ) = ∑ v = 1 V ∣ D v ∣ D G i n i ( D v ) 基尼指数:Gini\_index(D,a)=\sum_{v=1}^V\frac{|D^v|}{D}Gini(D^v) 基尼指数:Gini_index(D,a)=v=1∑V​D∣Dv∣​Gini(Dv)

最 优 划 分 属 性 a ∗ = arg ⁡ min ⁡ a ∈ A G i n i _ i n d e x ( D , a ) 最优划分属性a_*=\arg\min_{a\in A} Gini\_index(D,a) 最优划分属性a∗​=arga∈Amin​Gini_index(D,a)

剪枝、连续值及缺失值

剪枝处理

为防止过拟合,可以主动去掉一些分支,两种方法:预剪枝(每个节点划分前先估计,若不能带来泛化性提升,停止划分当前并标记为叶节点)和后剪枝(先从训练集生成完整决策树,然后自底向上判断非叶节点的子树替换为叶节点是否带来泛华性提升。

连续值

可以基于划分点t(如从小到大排列后相邻中位点)将D分为属性a上取值不大于t或者大于t的的样本。

神经网络

神经元模型

神经网络是由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应。

神经网络中最基本的成分是神经元模型,每个神经元和其他神经元相连,当它兴奋时向相邻的神经元发送化学物质以改变其电位,当某神经元电位超过一定阈值则其会被激活,接着向其他神经元发送化学物质。

M-P神经元模型:神经元接收到来自n个其他神经元传递过来的通过带权重的连接传递的输入信号,神经元将接收到的总收入值与神经元阈值进行比较,通过激活函数处理产生神经元输出。

理想的激活函数是阶跃函数,但是由于不连续不光滑,实际中一般用Sigmoid函数作为激活函数。

感知机和多层网络

感知机由两层神经元组成,输入层接收外界输入信号后传递给输出层,输出层是M-P神经元。


一层功能神经元学习能力非常有限,而与,或,非问题都是线性可分的,如果要解决非线性问题,需考虑使用多功能神经元,比如输出层与输入层之间加拥有激活函数的隐含层。更一般的是多层前馈神经网络。

误差传播算法

一 个 拥 有 d 个 输 入 神 经 元 , l 个 输 出 神 经 元 , q 个 隐 层 神 经 元 的 多 层 前 馈 网 络 神 经 结 构 , 其 中 输 出 层 第 j 个 神 经 元 的 阈 值 用 θ j 表 示 , 隐 层 第 h 个 神 经 元 的 阈 值 用 γ h 表 示 输 入 层 第 i 个 神 经 元 与 隐 层 第 h 个 神 经 元 之 间 的 连 接 权 为 v i h 一个拥有d个输入神经元,l个输出神经元,q个隐层神经元的多层前馈网络神经结构,\\ 其中输出层第j个神经元的阈值用\theta_j表示,\\隐层第h个神经元的阈值用\gamma_h表示\\输入层第i个神经元与隐层第h个神经元之间的连接权为v_{ih}\\ 一个拥有d个输入神经元,l个输出神经元,q个隐层神经元的多层前馈网络神经结构,其中输出层第j个神经元的阈值用θj​表示,隐层第h个神经元的阈值用γh​表示输入层第i个神经元与隐层第h个神经元之间的连接权为vih​ 输 出 层 第 i 个 神 经 元 与 隐 层 第 h 个 神 经 元 之 间 的 连 接 权 为 w h j 隐 层 第 h 个 神 经 元 接 收 到 的 输 入 为 α h = ∑ i = 1 d v i h x i 输 出 层 第 j 个 神 经 元 接 收 到 的 输 入 为 β = ∑ h = 1 q w h j b h 假 设 隐 层 和 输 出 层 神 经 元 都 用 S i g m o i d 函 数 训 练 例 ( x k , y k ) , 假 定 神 经 网 络 输 出 为 y ^ k = ( y 1 k ^ , y 2 k ^ , . . . , y l k ^ ) 有 y ^ j k = f ( β j − θ j ) 网 络 在 ( x k , y k ) 上 的 均 方 差 为 E k = 1 2 ∑ j = 1 l ( y 1 k ^ − y j k ) 2 输出层第i个神经元与隐层第h个神经元之间的连接权为w_{hj}\\隐层第h个神经元接收到的输入为 \alpha_h=\sum_{i=1}^dv_{ih}x_i\\输出层第j个神经元接收到的输入为 \beta=\sum_{h=1}^{q}w_{hj}b_h\\假设隐层和输出层神经元都用Sigmoid函数\\训练例(x_k,y_k),假定神经网络输出为 \hat{y}_k=(\hat{y_1^k},\hat{y_2^k},...,\hat{y_l^k})\\有\hat{y}_j^k=f(\beta_j-\theta_j)\\网络在(x_k,y_k)上的均方差为E_k=\frac{1}{2}\sum_{j=1}^l(\hat{y_1^k}-y_j^k)^2 输出层第i个神经元与隐层第h个神经元之间的连接权为whj​隐层第h个神经元接收到的输入为αh​=i=1∑d​vih​xi​输出层第j个神经元接收到的输入为β=h=1∑q​whj​bh​假设隐层和输出层神经元都用Sigmoid函数训练例(xk​,yk​),假定神经网络输出为y^​k​=(y1k​^​,y2k​^​,...,ylk​^​)有y^​jk​=f(βj​−θj​)网络在(xk​,yk​)上的均方差为Ek​=21​j=1∑l​(y1k​^​−yjk​)2

证明:略

周志华西瓜南瓜书学习(一)相关推荐

  1. 周志华西瓜书学习笔记(一)

    周志华西瓜书学习笔记 第一章 绪论 数据处理分为三个阶段:收集,分析,预测. 一.基本概念 机器学习致力于研究如何通过计算的手段,利用经验来改善系统自身的性能. Mitchell给出的更形式化的定义为 ...

  2. 周志华西瓜书课后习题答案总目录

    https://blog.csdn.net/icefire_tyh/article/details/52064910 机器学习(周志华西瓜书)参考答案总目录 从刚开始学习机器学习到现在也有几个月了,期 ...

  3. 周志华西瓜书3.4题——用十折交叉验证法和留一法估计对率回归的误差

    周志华西瓜书3.4题. 本文所编写的代码均使用python3.7进行调试,依靠的sklearn进行的实验. 第一步,导入iris数据集,数据集使用sklearn包里面自带的. from sklearn ...

  4. 《机器学习》(周志华)西瓜书读书笔记

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 第1章 绪论 第2章 模型评估与选择 第3章 线性模型 第4章 决策树 第5章 神经网络 第6章 神经网络 第7章 贝 ...

  5. 周志华西瓜书《机器学习》习题提示——第2章

    2.1:分层采样, [ ( 500 500 × 70 % ) ] 2 \left[ \binom{500}{500\times 70\%} \right]^2 [(500×70%500​)]2 2.2 ...

  6. 周志华教授关于深度学习的专访

    这是周志华教授关于深度学习的专访,值得静下心来看一看,寻找迷失的自己. 导读 周志华教授是蜚声国内外的机器学习专家,也是本届中国人工智能大会的主席之一.他的<机器学习>2016年1月出版之 ...

  7. 周志华西瓜书第三章学习笔记

    第三章学习笔记 文章目录 第三章学习笔记 1.知识脉络 2.我的笔记 参考 1.知识脉络 2.我的笔记 这一章公式推导实在太多了,需要补充的推导过程也有很多,就不写电子档了.扩展公式推导和LDA部分补 ...

  8. 周志华西瓜书公式勘误(一)之公式2.27勘误

    刚开始读周志华老师的机器学习西瓜书,读到第38页时感觉公式2.27的公式有误,照书上的理解怎么也说不通,网上搜一下,果然发现知乎上有人提问.可惜知乎上的回答也不能让人满意,不仅罗里吧嗦,还满屏公式让人 ...

  9. 算法还是算力?周志华微博引爆深度学习的“鸡生蛋,蛋生鸡”问题

    来源:AI科技大本营 上周,由强化学习加持的AlphaZero,把DeepMind在围棋上的突破成功泛化到其他棋类游戏:8小时打败李世石版AlphaGo,4小时击败国际象棋最强AI--Stockfis ...

最新文章

  1. 在机器学习中处理大量数据!
  2. 0bjective-c 之 NSString 使用详解
  3. DWR推送的一些随笔
  4. 【计算机科学基础】计算机不需要整数减法器的原因
  5. layUI日期格式转换
  6. Python 访问限制 private public
  7. Java做一个弹出表,至少有两个字段的简单的弹出窗体java表单
  8. java netbeans教程_Netbeans下载安装教程教程
  9. 小米路由器梅林_小米路由器刷Merlin
  10. 算法与数据结构1800题
  11. 纯真数据库mysql_纯真数据库下载或自动更新实现
  12. React移动端适配方案
  13. WORD 用tab实现居中和右对齐
  14. 【线性DP】跳格子问题 + 光签题(取石子游戏)
  15. vue输入框禁止输入表情的实现方法
  16. Lattice原理及在通信中的应用 2 Packing, Covering, Quantization, Modulation
  17. 压缩效果超越deflate的压缩算法(版本9.1)
  18. DOM操作(增删改查)详解
  19. 2020年第四轮计算机科学与技术学科评估排名结果
  20. jpa常用查询方法使用总结自定义sql查询

热门文章

  1. 万事俱备,只欠价格? — 华为 MateBook 13 长测
  2. 【颜纠日记】加密U盘(保密)方案
  3. Kindle电子书资源网站汇总 转自豆瓣
  4. Dom型xss的理解和反射型xss实战操作
  5. 【虚拟化】virsh指令大全
  6. JDK1.8安装教程
  7. 苹果iOS 13.5越狱unc0ver来了
  8. css基础--弹性布局
  9. vue3.0 + elementPlus 后台管理系统模板
  10. uni-app云打包