| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 西瓜书笔记7:贝叶斯分类器 -> 正文阅读 |
|
[人工智能]西瓜书笔记7:贝叶斯分类器 |
目录 相关概率知识贝叶斯-全概率公式参考之前笔记中的生成式模型: https://blog.csdn.net/lagoon_lala/article/details/116674811 已知, 能成功做A1的概率P(A1), A1做成后能成功做B的概率P(B|A1), 根据概率乘法, 从A这条路径到B的概率P(A1) P(B|A1). 这两个公式基于同一个模型. 全概率为所有路径相加, 贝叶斯已知结果B求某条路径概率(这一条路径/所有路概率之和) 这一坨一坨都是路径的概率. 全概率求的是B: p1+ p2+…+ pn, 贝叶斯求的是A: p1/( p1+ p2+…+ pn) 先验概率、后验概率、似然概率条件概率P(A|B): B已经发生条件下A发生的概率 先验概率P(A): 无任何已知条件下事件A的概率 后验概率P(果y|因x): 给定因x, 在此条件下果y概率 对于多个候选果y,选择使后验概率P(y|x)最大的一个y,称为最大后验MAP(maximum a posteriori)估计 似然概率P(因x|果y): 已知发生因x,在果y条件下x的概率.(在哪个果的条件下有这样的因) 对于多个候选果y,选择使似然概率P(x|y)最大的那一个,称为最大似然ML (maximum likelihood)估计 7.1 贝叶斯决策论贝叶斯决策论(Bayesian decision theory) : 概率框架下决策. 基于概率和误判损失选择最优的类别标记. 多分类任务, 类别有N种: $$ \mathcal{Y}=\{c_1,c_2,\cdots ,c_N\} $$ 损失: λ_ij(真实标记c_j误分类为c_i) 在单个样本x上的条件风险 (conditional risk)=样本x分类为c_i的期望损失(expected loss). (各分类情况损失λ*对应后验概率P, 即所有损失的平均值): $$ R(c_i|\boldsymbol x)=\sum_{j=1}^n \lambda_{ij} P(c_i|\boldsymbol x) $$ 判定准则h即每种样本x对应哪个类别标记y: $$ h: \mathcal{X}\mapsto\mathcal{Y} $$ 总体风险, 对整个数据集D所有样本的期望: $$ R(h)=\mathbb E_x[R(h(\boldsymbol x)|\boldsymbol x)]=\sum_{x\in D} R(h(\boldsymbol x)|\boldsymbol x)P(\boldsymbol x) $$ 目标: 寻找判定准则h以最小化总体风险R(h) 贝叶斯判定准则 (Bayes decision rule): 要最小化总体风险,只需在每个样本上使条件风险 R(c|x)最小, 即选择条件风险最小的类别标记. 此时得到的判定准则h即贝叶斯最优分类器(Bayes optimal classifier): $$ h^*(\boldsymbol x)=\arg\min_{c\in\mathcal Y}R(c|\boldsymbol x) $$ 贝叶斯风险(Bayes risk): 最小总体风险R(h^*) . 分类器模型精度的理论上限为1-R(h^*). 误判损失λ_ij: $$ \lambda_{ij}=\left\{\begin{array}{c} 0,&\text{if}~i=j\\1, &\text{otherwise}\end{array}\right. $$ 0/1损失的条件风险: $$ R(c|\boldsymbol x)=1?P(c|\boldsymbol x) $$ 即将0/1损失λ的表达式代入条件风险的一般式: $$ R(c_i|\boldsymbol x)=1*P(c_1|\boldsymbol x)+...+1*P(c_{i-1}|\boldsymbol x)+0*P(c_i|\boldsymbol x)+1*P(c_{i+1}|\boldsymbol x)+...+1*P(c_N|\boldsymbol x) $$ 其中只有判断正确的一项没有损失, 根据概率和为1: $$ \sum_{j=1}^{N}P(c_j|\boldsymbol x)=1 $$ 即可得到0/1损失的条件风险. 因此每个样本选择后验概率P最大的类别, 得0/1损失的贝叶斯最优分类器: $$ h^{*}(\boldsymbol{x})=\underset{c \in \mathcal{Y}}{\arg \max } P(c | \boldsymbol{x}) $$ 其中的后验概率P(cIx)难以直接获得, 有两种策略估计: (参考之前判别v.s.生成笔记: https://blog.csdn.net/lagoon_lala/article/details/117000342) 1.判别式(discriminative models): 给定x, 直接对P(cIx)建模预测c. 如决策树、 BP 神经网络、支持向量机、对率回归. 2.生成式(generative models): 对联合概率分布P(x,c)建模,再计算得P(cIx). 如高斯/朴素贝叶斯描述后验概率, 对概率分布进行假设. 高斯则假设为高斯分布, 朴素贝叶斯则假设相互独立. 根据条件概率基本求解公式: $$ P(\boldsymbol x,c)=P(c|\boldsymbol x)P(\boldsymbol x)=P(\boldsymbol x|c)P(c) $$ 得贝叶斯定理, 生成式模型中, 通过估计先验概率P(c)和似然概率P(x|c), 得联合概率分布P(x,c), 来估计后验概率P(cIx). 贝叶斯公式: $$ P(c|\boldsymbol x)=\frac{P(\boldsymbol x,c)}{P(\boldsymbol x)}=\frac{P(\boldsymbol x|c)P(c)}{P(\boldsymbol x)} $$ 其中, P(x)为常量, 不随类别标记而改变. 所以最大化P(x,c)/P(x)可以等价为最大化P(x,c). P(c): 类别先验(prior) 概率 P(xIc): 似然(likelihood)概率=样本x对类别标记c的类别条件概率(class-conditional probability) P(x): 证据(evidence)因子. 用于归一化. 似然概率P(xIc)涉及x所有属性联合概率, 可能很多样本没有出现过, 难以通过样本出现频率估计. 7.2 极大似然估计估计似然概率(类c条件概率) P(xIc)即P(x|θ_c)策略: 假定P的概率分布形式(此时被参数向量θ_c唯一确定),基于训练集D估计参数θ_c. 优点: 参数化使似然概率P(xIc)估计变简单 缺点: 假设分布形式是否符合真实分布, 决定估计结果准确性. 需任务本身经验知识. 概率模型训练=参数估计(parameter estimation)两方法: 1. 极大似然估计MLE(Maximum Likelihood Estimation) 频率主义学派(Frequentist)认为参数是固定值. 通过优化似然函数等准则来确定参数值. 2. 贝叶斯估计 贝叶斯学派(Bayesian)对参数的点估计法. 认为参数是有分布的随机变量. 假定参数服从一个先验分布,基于观测到的数据计算参数的后验分布. 主要包括: 最大后验估计MAP(Maximum A Posteriori Estimation)、后验中位数估计(Median)和后验期望值估计(Mean). 极大似然估计公式D_c: 训练集D中第c类样本,样本独立同分布. 第c类的似然概率: $$ P\left(D_c | \boldsymbol{\theta}_{c}\right)=\prod_{\boldsymbol{x}\in D_c} P\left(\boldsymbol{x} | \boldsymbol{\theta}_{c}\right) $$ 上式的连乘容易造成下溢(P(x|θ_c)均小于1, 太小无法表达), 取对数, 将连乘变为累加. 即对数似然(log-likelihood): $$ \begin{aligned} LL\left(\boldsymbol{\theta}_{c}\right)&=\log P\left(D_c | \boldsymbol{\theta}_{c}\right)\\ &=\sum_{\boldsymbol{x} \in D_{c}}\log P\left(\boldsymbol{x} | \boldsymbol{\theta}_{c}\right)\\? \end{aligned} $$ 对θ_c进行极大似然估计: 寻找参数值hat θ_c, 使似然概率 P(D_c|θ_c)最大化. (即使数据出现"可能性"最大) 参数θ_c的极大似然估计hat θ_c: $$ \hat {\boldsymbol{\theta}_{c}}=\arg\max_{\boldsymbol{\theta}_{c}}LL\left(\boldsymbol{\theta}_{c}\right) $$ 求极大的方法就是求偏导, 令导数为0. 假设概率密度函数为正态分布p(x|c)~ N(μ_c,σ_c^2), 则其两个参数均值与方差的极大似然估计公式: $$ \hat{\boldsymbol{\mu}}_{c}=\frac{1}{\left|D_{c}\right|} \sum_{\boldsymbol{x} \in D_{c}} \boldsymbol{x}\\ \hat{\boldsymbol{\sigma}}_{c}^{2}=\frac{1}{\left|D_{c}\right|} \sum_{\boldsymbol{x} \in D_{c}}\left(\boldsymbol{x}-\hat{\boldsymbol{\mu}}_{c}\right)\left(\boldsymbol{x}-\hat{\boldsymbol{\mu}}_{c}\right)^{\mathrm{T}} $$ 相关知识: 高斯分布, 对高斯分布进行最大似然估计 均值方差估计公式推导根据对数似然LL公式, 与极大似然估计公式取argmax. 目标参数求解式为: $$ \begin{aligned} \hat{\boldsymbol{\theta}}_{c}&=\underset{\boldsymbol{\theta}_{c}}{\arg \max } LL\left(\boldsymbol{\theta}_{c}\right) \\ &=\underset{\boldsymbol{\theta}_{c}}{\arg \min } -LL\left(\boldsymbol{\theta}_{c}\right) \\ &= \underset{\boldsymbol{\theta}_{c}}{\arg \min }-\sum_{\boldsymbol{x} \in D_{c}} \log P\left(\boldsymbol{x} | \boldsymbol{\theta}_{c}\right) \end{aligned} $$ 将P代入概率密度函数: $$ p(\boldsymbol{x} | c) \sim \mathcal{N}\left(\boldsymbol{\mu}_{c}, \boldsymbol{\sigma}_{c}^{2}\right)p $$ 得: $$ P\left(\boldsymbol{x} | \boldsymbol{\theta}_{c}\right)=P\left(\boldsymbol{x} | \boldsymbol{\mu}_{c}, \boldsymbol{\sigma}_{c}^{2}\right)=\frac{1}{\sqrt{(2 \pi)^{d}|\boldsymbol{\Sigma}_c|}} \exp \left(-\frac{1}{2}(\boldsymbol{x}-\boldsymbol{\mu}_c)^{\mathrm{T}} \boldsymbol{\Sigma}_c^{-1}(\boldsymbol{x}-\boldsymbol{\mu}_c)\right) $$ 其中,d为x维数,Σ_c=σ_c^2为对称正定协方差矩阵,|Σ_c|表示Σ_c的行列式。将P代入参数求解公式可得: $$ \begin{aligned} (\hat{\boldsymbol{\mu}}_{c}, \hat{\boldsymbol{\Sigma}}_{c})&= \underset{(\boldsymbol{\mu}_{c},\boldsymbol{\Sigma}_c)}{\arg \min }-\sum_{\boldsymbol{x} \in D_{c}} \log\left[\frac{1}{\sqrt{(2 \pi)^{d}|\boldsymbol{\Sigma}_c|}} \exp \left(-\frac{1}{2}(\boldsymbol{x}-\boldsymbol{\mu}_c)^{\mathrm{T}} \boldsymbol{\Sigma}_c^{-1}(\boldsymbol{x}-\boldsymbol{\mu}_c)\right)\right] \\ &= \underset{(\boldsymbol{\mu}_{c},\boldsymbol{\Sigma}_c)}{\arg \min }-\sum_{\boldsymbol{x} \in D_{c}} \left[-\frac{d}{2}\log(2 \pi)-\frac{1}{2}\log|\boldsymbol{\Sigma}_c|-\frac{1}{2}(\boldsymbol{x}-\boldsymbol{\mu}_c)^{\mathrm{T}} \boldsymbol{\Sigma}_c^{-1}(\boldsymbol{x}-\boldsymbol{\mu}_c)\right] \\ &= \underset{(\boldsymbol{\mu}_{c},\boldsymbol{\Sigma}_c)}{\arg \min }\sum_{\boldsymbol{x} \in D_{c}} \left[\frac{d}{2}\log(2 \pi)+\frac{1}{2}\log|\boldsymbol{\Sigma}_c|+\frac{1}{2}(\boldsymbol{x}-\boldsymbol{\mu}_c)^{\mathrm{T}} \boldsymbol{\Sigma}_c^{-1}(\boldsymbol{x}-\boldsymbol{\mu}_c)\right] \\ &= \underset{(\boldsymbol{\mu}_{c},\boldsymbol{\Sigma}_c)}{\arg \min }\sum_{\boldsymbol{x} \in D_{c}} \left[\frac{1}{2}\log|\boldsymbol{\Sigma}_c|+\frac{1}{2}(\boldsymbol{x}-\boldsymbol{\mu}_c)^{\mathrm{T}} \boldsymbol{\Sigma}_c^{-1}(\boldsymbol{x}-\boldsymbol{\mu}_c)\right] \\ \end{aligned} $$ 假设数据集D_c样本个数|D_c|=n, 上式改写: $$ (\hat{\boldsymbol{\mu}}_{c}, \hat{\boldsymbol{\Sigma}}_{c})=\underset{(\boldsymbol{\mu}_{c},\boldsymbol{\Sigma}_c)}{\arg \min }\sum_{i=1}^{n} \left[\frac{1}{2}\log|\boldsymbol{\Sigma}_c|+\frac{1}{2}(\boldsymbol{x}_{i}-\boldsymbol{\mu}_c)^{\mathrm{T}} \boldsymbol{\Sigma}_c^{-1}(\boldsymbol{x}_{i}-\boldsymbol{\mu}_c)\right] $$ 其中只有x_i与i有关, Σ和μ与i无关, 可以直接化为n: $$ (\hat{\boldsymbol{\mu}}_{c}, \hat{\boldsymbol{\Sigma}}_{c})=\underset{(\boldsymbol{\mu}_{c},\boldsymbol{\Sigma}_c)}{\arg \min }\frac{n}{2}\log|\boldsymbol{\Sigma}_c|+\sum_{i=1}^{n}\frac{1}{2}(\boldsymbol{x}_i-\boldsymbol{\mu}_c)^{\mathrm{T}} \boldsymbol{\Sigma}_c^{-1}(\boldsymbol{x}_i-\boldsymbol{\mu}_c) $$ 上式最后一项化简, 分别用到正定二次型矩阵计算公式, 与概率论公式: $$ \boldsymbol{x}^{\mathrm{T}}\mathbf{A}\boldsymbol{x}=\operatorname{tr}(\mathbf{A}\boldsymbol{x}\boldsymbol{x}^{\mathrm{T}}),\\ \bar{\boldsymbol{x}}=\frac{1}{n}\sum_{i=1}^{n}\boldsymbol{x}_i $$ 化简后为: $$ \begin{aligned} &\sum_{i=1}^{n}\frac{1}{2}(\boldsymbol{x}_i-\boldsymbol{\mu}_c)^{\mathrm{T}} \boldsymbol{\Sigma}_c^{-1}(\boldsymbol{x}_i-\boldsymbol{\mu}_c)\\ =&\frac{1}{2}\operatorname{tr}\left[\boldsymbol{\Sigma}_c^{-1}\sum_{i=1}^{n}(\boldsymbol{x}_i-\boldsymbol{\mu}_c)(\boldsymbol{x}_i-\boldsymbol{\mu}_c)^{\mathrm{T}}\right]\\ =&\frac{1}{2}\operatorname{tr}\left[\boldsymbol{\Sigma}_c^{-1}\sum_{i=1}^{n}\left(\boldsymbol{x}_i\boldsymbol{x}_i^{\mathrm{T}}-\boldsymbol{x}_i\boldsymbol{\mu}_c^{\mathrm{T}}-\boldsymbol{\mu}_c\boldsymbol{x}_i^{\mathrm{T}}+\boldsymbol{\mu}_c\boldsymbol{\mu}_c^{\mathrm{T}}\right)\right]\\ =&\frac{1}{2}\operatorname{tr}\left[\boldsymbol{\Sigma}_c^{-1}\left(\sum_{i=1}^{n}\boldsymbol{x}_i\boldsymbol{x}_i^{\mathrm{T}}-n\bar{\boldsymbol{x}}\boldsymbol{\mu}_c^{\mathrm{T}}-n\boldsymbol{\mu}_c\bar{\boldsymbol{x}}^{\mathrm{T}}+n\boldsymbol{\mu}_c\boldsymbol{\mu}_c^{\mathrm{T}}\right)\right]\\ =&\frac{1}{2}\operatorname{tr}\left[\boldsymbol{\Sigma}_c^{-1}\left(\sum_{i=1}^{n}\boldsymbol{x}_i\boldsymbol{x}_i^{\mathrm{T}}-2n\bar{\boldsymbol{x}}\boldsymbol{\mu}_c^{\mathrm{T}}+n\boldsymbol{\mu}_c\boldsymbol{\mu}_c^{\mathrm{T}}+2n\bar{\boldsymbol{x}}\bar{\boldsymbol{x}}^{\mathrm{T}}-2n\bar{\boldsymbol{x}}\bar{\boldsymbol{x}}^{\mathrm{T}}\right)\right]\\ =&\frac{1}{2}\operatorname{tr}\left[\boldsymbol{\Sigma}_c^{-1}\left(\left(\sum_{i=1}^{n}\boldsymbol{x}_i\boldsymbol{x}_i^{\mathrm{T}}-2n\bar{\boldsymbol{x}}\bar{\boldsymbol{x}}^{\mathrm{T}}+n\bar{\boldsymbol{x}}\bar{\boldsymbol{x}}^{\mathrm{T}}\right)+\left(n\boldsymbol{\mu}_c\boldsymbol{\mu}_c^{\mathrm{T}}-2n\bar{\boldsymbol{x}}\boldsymbol{\mu}_c^{\mathrm{T}}+n\bar{\boldsymbol{x}}\bar{\boldsymbol{x}}^{\mathrm{T}}\right)\right)\right]\\ =&\frac{1}{2}\operatorname{tr}\left[\boldsymbol{\Sigma}_c^{-1}\left(\sum_{i=1}^{n}(\boldsymbol{x}_i-\bar{\boldsymbol{x}})(\boldsymbol{x}_i-\bar{\boldsymbol{x}})^{\mathrm{T}}+\sum_{i=1}^{n}(\boldsymbol{\mu}_c-\bar{\boldsymbol{x}})(\boldsymbol{\mu}_c-\bar{\boldsymbol{x}})^{\mathrm{T}}\right)\right]\\ =&\frac{1}{2}\operatorname{tr}\left[\boldsymbol{\Sigma}_c^{-1}\sum_{i=1}^{n}(\boldsymbol{x}_i-\bar{\boldsymbol{x}})(\boldsymbol{x}_i-\bar{\boldsymbol{x}})^{\mathrm{T}}\right]+\frac{1}{2}\operatorname{tr}\left[\boldsymbol{\Sigma}_c^{-1}\sum_{i=1}^{n}(\boldsymbol{\mu}_c-\bar{\boldsymbol{x}})(\boldsymbol{\mu}_c-\bar{\boldsymbol{x}})^{\mathrm{T}}\right]\\ =&\frac{1}{2}\operatorname{tr}\left[\boldsymbol{\Sigma}_c^{-1}\sum_{i=1}^{n}(\boldsymbol{x}_i-\bar{\boldsymbol{x}})(\boldsymbol{x}_i-\bar{\boldsymbol{x}})^{\mathrm{T}}\right]+\frac{1}{2}\operatorname{tr}\left[n\cdot\boldsymbol{\Sigma}_c^{-1}(\boldsymbol{\mu}_c-\bar{\boldsymbol{x}})(\boldsymbol{\mu}_c-\bar{\boldsymbol{x}})^{\mathrm{T}}\right]\\ =&\frac{1}{2}\operatorname{tr}\left[\boldsymbol{\Sigma}_c^{-1}\sum_{i=1}^{n}(\boldsymbol{x}_i-\bar{\boldsymbol{x}})(\boldsymbol{x}_i-\bar{\boldsymbol{x}})^{\mathrm{T}}\right]+\frac{n}{2}\operatorname{tr}\left[\boldsymbol{\Sigma}_c^{-1}(\boldsymbol{\mu}_c-\bar{\boldsymbol{x}})(\boldsymbol{\mu}_c-\bar{\boldsymbol{x}})^{\mathrm{T}}\right]\\ =&\frac{1}{2}\operatorname{tr}\left[\boldsymbol{\Sigma}_c^{-1}\sum_{i=1}^{n}(\boldsymbol{x}_i-\bar{\boldsymbol{x}})(\boldsymbol{x}_i-\bar{\boldsymbol{x}})^{\mathrm{T}}\right]+\frac{n}{2}(\boldsymbol{\mu}_c-\bar{\boldsymbol{x}})^{\mathrm{T}} \boldsymbol{\Sigma}_c^{-1}(\boldsymbol{\mu}_c-\bar{\boldsymbol{x}}) \end{aligned} $$ 代入原式最后一项得: $$ (\hat{\boldsymbol{\mu}}_{c}, \hat{\boldsymbol{\Sigma}}_{c})=\underset{(\boldsymbol{\mu}_{c},\boldsymbol{\Sigma}_c)}{\arg \min }\frac{n}{2}\log|\boldsymbol{\Sigma}_c|+\frac{1}{2}\operatorname{tr}\left[\boldsymbol{\Sigma}_{c}^{-1}\sum_{i=1}^{n}(\boldsymbol{x}_i-\bar{\boldsymbol{x}})(\boldsymbol{x}_i-\bar{\boldsymbol{x}})^{\mathrm{T}}\right]+\frac{n}{2}(\boldsymbol{\mu}_c-\bar{\boldsymbol{x}})^{\mathrm{T}} \boldsymbol{\Sigma}_c^{-1}(\boldsymbol{\mu}_c-\bar{\boldsymbol{x}}) $$ 先求μ的估计, 最后一项为正定二次型, 只有当x=0时, x^TAx能取到最小值0, 即取最小值时: $$ \hat{\boldsymbol{\mu}}_{c}=\bar{\boldsymbol{x}}=\frac{1}{n}\sum_{i=1}^{n}\boldsymbol{x}_i $$ 代入μ的值, 再求Σ的估计: $$ \hat{\boldsymbol{\Sigma}}_{c}=\underset{\boldsymbol{\Sigma}_c}{\arg \min }\frac{n}{2}\log|\boldsymbol{\Sigma}_c|+\frac{1}{2}\operatorname{tr}\left[\boldsymbol{\Sigma}_{c}^{-1}\sum_{i=1}^{n}(\boldsymbol{x}_i-\bar{\boldsymbol{x}})(\boldsymbol{x}_i-\bar{\boldsymbol{x}})^{\mathrm{T}}\right] $$ 这里用了一个临时冒出来奇奇怪怪的引理极小值点, 总之最后是: $$ \boldsymbol{\Sigma}_c=\frac{1}{n}\sum_{i=1}^{n}(\boldsymbol{x}_i-\bar{\boldsymbol{x}})(\boldsymbol{x}_i-\bar{\boldsymbol{x}})^{\mathrm{T}} $$ 概率知识复习高斯分布附录C.1.7 高斯分布(Gaussian distribution) =正态分布(normal distribution) 单变量高斯分布 $$ p(x | \mu, \sigma^{2})=\mathcal{N}(x | \mu, \sigma^{2})=\frac{1}{\sqrt{2 \pi \sigma^{2}}} e^{-\frac{({x}-{\mu})^2}{2\sigma^{2}}}\\ \mathbb E[x]=\mu\\ \text {var}[x]=\sigma^{2} $$ 多元高斯分布 $$ p(\boldsymbol{x} | \boldsymbol{\mu}, \boldsymbol{\Sigma})=\mathcal N(\boldsymbol{x} | \boldsymbol{\mu}, \boldsymbol{\Sigma})\\ =\frac{1}{\sqrt{(2 \pi)^{d}|\boldsymbol{\Sigma}|}} \exp \left(-\frac{1}{2}(\boldsymbol{x}-\boldsymbol{\mu})^{\mathrm{T}} \boldsymbol{\Sigma}^{-1}(\boldsymbol{x}-\boldsymbol{\mu})\right)\\ \mathbb E[\boldsymbol x]=\boldsymbol\mu\\ \text {cov}[\boldsymbol x]=\boldsymbol{\Sigma} $$ 其中μ为d维向量, Σ为d*d对称正定协方差矩阵. 求Σ的行列式|Σ|也可写作det(Σ). 概率密度函数图像 高斯分布在x_i=μ_i处取得最大值: $$ \frac{1}{\sqrt{2\pi}\sigma_i}?$$ 标准正态分布的概率密度函数N(x|0, 1), 在x=0处取得最大值(p代入x与各参数): $$ \frac{1}{\sqrt{2\pi}}\approx 0.4?$$ 最大似然估计高斯分布的最大似然估计, 参考: https://www.bilibili.com/video/BV1aE411o7qd?p=4&spm_id_from=pageDriver 给定N个数据X, 其中每一个样本x有p维特征, 且独立同分布(简写为iid), 服从正态. $$ Data: X=(\boldsymbol x_1,\boldsymbol x_2,\cdots,\boldsymbol x_N)^T=\left(\begin{array}{c}\boldsymbol x_1^T\\ \boldsymbol x_2^T\\ \vdots \\ \boldsymbol x_N^T\end{array}\right)_{N\times p}\\ \boldsymbol x_i\in\mathbb R^p\\ \boldsymbol x_i\mathop{\sim}^{iid}\mathcal{N}(\boldsymbol \mu,\boldsymbol \Sigma) $$ 该分布的最大似然估计MLE: $$ \theta_{MLE}=\mathop{\arg\max}\limits _{\theta} P(X|\theta) $$ 以一维高斯分布为例, 进行计算. 此时维度p为1, 概率密度函数p为: $$ p(x)=\frac{1}{\sqrt{2 \pi \sigma^{2}}} e^{-\frac{({x}-{\mu})^2}{2\sigma^{2}}}\\ p=1,\theta=(\mu, \sigma^{2}) $$ 对数似然为: $$ \log P(X|\theta)=\log\prod_{i=1}^{N} p(x_{i}|\theta)\\ =\sum_{i=1}^{N}\log p(x_{i}|\theta)\\ =\sum_{i=1}^{N}\log\frac{1}{\sqrt{2\pi}\sigma}\exp(-\frac{(x_{i}-\mu)^{2}}{2\sigma^{2}}) $$ 首先求最大似然的μ值, 进行化简: $$ \mu_{MLE}=\mathop{\arg\max}_{\mu}\log P(X|\theta)\\=\mathop{\arg\max}_{\mu}\sum_{i=1}^{N}-\frac{(x_{i}-\mu)^{2}}{2\sigma^{2}}\\ =\mathop{\arg\min}_{\mu}\sum_{i=1}^{N}(x_{i}-\mu)^{2} $$ 对μ求偏导可得该式极值点, 即最大似然时的μ值: $$ \frac{\partial}{\partial\mu}\sum_{i=1}^{N}(x_{i}-\mu)^{2}=0\\ \Rightarrow\mu_{MLE}=\frac{1}{N}\sum_{i=1}^{N}x_{i} $$ 接着将μ代入目标函数求σ: $$ ?\begin{align} \sigma^2_{MLE}&=\mathop{\arg\max}_{\sigma}\log P(X|\theta)\\&=\mathop{\arg\max}_{\sigma}\sum_{i=1}^{N}[-\log\sigma-\frac{1}{2\sigma^{2}}(x_{i}-\mu)^{2}]\nonumber\ \\ &=\mathop{\arg\min}_{\sigma}\sum_{i=1}^{N}[\log\sigma+\frac{1}{2\sigma^{2}}(x_{i}-\mu)^{2}] \end{align} $$ 对σ求偏导: $$ \frac{\partial}{\partial\sigma}\sum_{i=1}^{N}[\log\sigma+\frac{1}{2\sigma^{2}}(x{i}-\mu)^{2}]=0\\ \Rightarrow\sum_{i=1}^{N}[\frac{1}{\sigma}+(x_{i}-\mu)^{2}\sigma^{-3}]=0\\ \sum_{i=1}^{N}[{\sigma}^2+(x_{i}-\mu)^{2}]=0\\ \sum_{i=1}^{N}{\sigma}^2+\sum_{i=1}^{N}(x_{i}-\mu)^{2}=0\\ \Rightarrow\sigma_{MLE}^{2}=\frac{1}{N}\sum_{i=1}^{N}(x_{i}-\mu_{MLE})^{2} $$ 样本估计期望等于总体期望, 则为无偏估计.? 极大似然对高斯的均值估计是无偏的, 对方差估计是偏小的. up主推导非常详细! 美中不足就是总说高斯分布的极大似然估计是高中内容(╯▔皿▔)╯? 之前李宏毅讲解生成式模型时, 也提到高斯分布的极大似然估计: https://blog.csdn.net/lagoon_lala/article/details/116674811 但没有对参数估计公式进行推导, 而是直接给出了公式 7.3 朴素贝叶斯分类器朴素贝叶斯分类器的概念线性分类的软输出分为1.概率判别 2.概率生成. 概率生成模型中, 主要有1.高斯判别分析 2.朴素贝叶斯. 朴素贝叶斯假设=条件独立假设(attribute conditional independence assumption): 每个属性独立地对分类结果发生影响(基向量的正交性): ?$$ x_i\perp x_j|y,(i\neq j)\\ P(\boldsymbol x|y)=\prod_{j=1}^pP(x_j|y) $$ 朴素贝叶斯分类器(naive Bayes classifier)为最简单的有向概率图模型. 假设动机: 简化运算. 估计后验概率 P(cIx) 的主要困难在于类别条件概率P(xIc). 有限样本估计联合概率, 会遭遇组合爆炸, 样本稀疏. 基于属性条件独立性假设(上式),贝叶斯公式可展开: $$ P(c|\boldsymbol x)=\frac{P(\boldsymbol x|c)P(c)}{P(\boldsymbol x)}=\frac{P(c)}{P(\boldsymbol x)}\prod_{i=1}^d P(x_i|c) $$ 其中d为属性数目,x_i为x第i个属性的值. (因为P(x)为常量, 且有贝叶斯判定准则: 最小化总体->最小化每个样本)用属性条件独立性假设, 将贝叶斯最优分类器公式展开, 得朴素贝叶斯分类器表达式: $$ h_{nb}(\boldsymbol x)=\arg\min_{c\in\mathcal Y}P(c)\prod_{i=1}^d P(x_i|c) $$ 该分类器的训练即估计式中两项: 类先验概率P(c), 每个属性的条件概率P(x_i I c). 该式的计算常取对数防止下溢. 条件概率估计方法类先验概率: $$ P(c)=\frac{|D_c|}{|D|} $$ 条件概率P(x_i I c): $$ P(x_i|c)=\frac{|D_{c,x_i}|}{|D|}\\ 其中,D_{c,x_i}为D_{c}中, i属性取值为x_i的样本集 $$ 连续属性需要对该属性的分布假设一个概率密度函数, 此处设为高斯(注意p不是P, 则为密度函数, 而非条件概率): $$ p(x_i|c)=\frac{1}{\sqrt{2 \pi \sigma^{2}_{c,i}}} e^{-\frac{({x}-{\mu_{c,i}})^2}{2\sigma^{2}_{c,i}}} $$ 拉普拉斯修正若该类中无某属性值样本, 则有分子为零问题. 未被观测到≠出现概率为零, 进行平滑处理(smoothing), 常用拉普拉斯修正. 拉普拉斯修正引入关于数据的先验(prior): 假设属性值与类别均匀分布. 数据集变大时, 该先验影响减小. 修正后类先验概率, 条件概率分别为: $$ \hat P(c)=\frac{|D_c|+1}{|D|+N}\\ \hat P(x_i|c)=\frac{|D_{c,x_i}|+1}{|D|+N_i} $$ 其中, N为类别数, N_i为第i个属性可取值有几种. 此处南瓜书解释的为拉普拉斯公式的推广(一般形式), 比较复杂, 难以短时间吸收. 其中提到的几种分布还是可以了解一下.
狄利克雷分布(Dirichlet distribution)是beta分布的泛化形式, 其共轭分布为多项分布. 后验分布p(θ|x)与先验概率分布p(θ)在同一概率分布族中, 称为共轭分布. 参考: https://github.com/graykode/distribution-is-all-you-need 7.4半朴素贝叶斯分类器ODE基本思想属性条件独立性假设很难成立, 放松假设. 半朴素贝叶斯分类器(semi-na?ve Bayes classifiers)基本想法: 考虑一部分属性问的相互依赖信息. 独依赖估计ODE (One-Dependent Estimator)最常用: 假设每个属性在类别外依赖一个其他属性. $$ P(\boldsymbol x|c)=\prod_{i=1}^d P(x_i|c,pa_i)\\ 其中,pa_i为x_i的父属性 $$ 独依赖假设: $$ P(c|\boldsymbol x)\propto P(\boldsymbol x|c)P(c)=P(c)\prod_{i=1}^d P(x_i|c,pa_i)\\ 其中,\propto代表正比 $$ 确定父属性后, 类先验概率P(c)估计方法同上节. 条件概率P(x_i I c,pa_i)的估计, 先挑出类别为c、父属性值为pa_i的样本. 父属性的确定主要有以下3中策略. SPODESPODE (Super-Parent ODE)方法假设: 所有属性都依赖于同一个"超父"(super-parent)属性. 超父的确定: 模型选择方法, 如交叉验证. TANTAN (Tree Augmented naive Bayes)基于最大带权生成树(maximum weighted panning tree)算法确定属性依赖关系, 仅保留强相关属性间依赖. 确定属性依赖关系步骤: 1. 计算任意两个属性间的条件互信息 (conditional mutual information) $$ \text{I}(x_i,x_j|y) = \sum_{n=1}^N{ P(x_i,x_j|c_n) \log{ \left(\frac{P(x_i,x_j|c_n)}{P(x_i|c_n)P(x_j|c_n)} \right) }} $$ 其中, N为类别个数. 每对属性一个I, 共d(d-1)/2个. 2. 属性为点, 构建完全图, 边的权重设为条件互信息I. 3. 完全图->最大带权生成树,挑选根变量, 边置为有向. 4. 加入类别结点y, 增加从y到每个属性的有向边. 相关知识: 条件互信息 之前在决策树中用到互信息 信息增益(互信息)=信息熵-条件熵 $$ \mathrm {I}(Y;X) = \mathrm {Ent}(Y) - \mathrm {Ent}(Y|X) $$ 其实互信息的概率角度公式, 与本节条件互信息相似(由随机变量X,Y的联合概率分布p(x,y)和边缘概率分布p(x)p(y)得出): $$ \text{I}(X;Y) = \sum_{y \in \mathcal Y} \sum_{x \in \mathcal X}???? { p(x,y) \log{ \left(\frac{p(x,y)}{p(x)\,p(y)} \right) }} $$ AODEAODE (Averaged One-Dependent Estimator) 将每个属性作为超父构建 SPODE,选择数据足够的SPODE利用集成学习得最终结果: $$ P(c|\boldsymbol x)\propto \sum_{i=1, |D_{x_i}|\geq m'}^dP(c,x_i)\prod_{j=1}^d P(x_j|c,x_i) $$ 其中,D_{x_i}为属性i取值为x_i的样本集, m'=30为阈值常数,确保参与集成的SPODE数据足够. 与独依赖假设公式比较, 因为父属性不再固定, 而是随SPODE不同而改变, pa_i变为x_i. 同时, P(c)中也多了x_i的身影, 猜测父属性固定时, 即便对应改为P(c, pa_i)也是多乘个常量, 不对独依赖假设公式产生影响. Σ代表将d个SPODE集成. 类先验概率, 条件概率(拉普拉斯修正在AODE的使用方法): 通过计数训练, 无需模型选择的分类器(如NB, AODE): 能预计算(节省预测时间), 取懒惰学习(预测时再计数), 增量学习. kDE: 考虑高阶依赖, 父属性包含k个. 优点,泛化性能有可能提升. 缺点, 重新需要估计高阶联合概率. |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/17 20:28:11- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |