交叉熵的本质是极大似然估计

转载自 https://www.zhihu.com/question/65288314/answer/849294209

交叉熵这东西你如果理解为两个概率分布会发现它就是nonsense,你得把对数里面那个分布理解为真实的随机变量分布,而将对数外面那个理解为观察到的频率。然后你就会发现它就是最最原始的MLE(最大似然估计)套了个时髦的壳而已。

比如说现在有一个真实分布为 P(x) 的随机变量,我们对它进行了N次独立同分布实验,对于每个可能的结果x观察到的次数为 N(x) ,那么它的似然值就可以写成
在这里插入图片描述
很好理解对吧,乘法公式,把每次实验的概率乘起来,然后合并相同的项写成幂次。这是个乘积的形式,取个对数可以得到求和的形式:
在这里插入图片描述
这个式子有两个缺点,第一它是个负数,第二它的数值跟样本数有关,样本越多数值越小,因此除以一下总的样本数归一化,再取个相反数,然后改用频率表示:在这里插入图片描述
这就齐活了。因此可以看出,交叉熵最小实质上就是似然值最大。我们可以证明,在给定 Po 的情况下,使交叉熵最小的分布P一定有 P=Po ,只需要用拉格朗日乘子法就可以: 求偏导得到在这里插入图片描述
即 Po 和 P 成比例,再根据归一化条件得到 P=Po 因此在有模型约束的条件下求交叉熵最小值,也就是让模型输出的分布尽量能接近训练数据的分布。

### 最大似然估计的定义 最大似然估计(Maximum Likelihood Estimation, MLE)是一种常用的参数估计方法,其核心思想是通过最大化数据集合的概率来估计未知参数。换句话说,目标是找到一组参数值,使得给定的数据集在其下发生的概率达到最大[^1]。 公式表示如下: 假设有一个独立同分布的数据样本 \(X_1, X_2, \ldots, X_n\),它们来自某个已知分布族 \(f(x|\theta)\),其中 \(\theta\) 是待估参数,则该样本的联合概率密度函数可以写成: \[ L(\theta | x_1, x_2, \ldots, x_n) = f(x_1|\theta)f(x_2|\theta)\cdots f(x_n|\theta) \] 为了简化计算,通常取对数形式得到对数似然函数: \[ l(\theta|x_1,x_2,\ldots,x_n)=\sum_{i=1}^{n}\log(f(x_i|\theta)) \] 最终的目标是最优化此对数似然函数以求得最优参数 \(\hat{\theta}\)[^4]: \[ \hat{\theta}=\arg\max_\theta l(\theta|x_1,x_2,\ldots,x_n) \] ### 应用场景 最大似然估计广泛应用于统计学和机器学习领域中的多种模型和算法中。以下是几个典型的应用场景: #### 1. **线性回归** 在线性回归中,当误差项服从高斯分布时,最小化均方误差实际上等价于最大化似然函数。这是因为高斯分布下的负对数似然正好对应着平方损失函数的形式。 #### 2. **逻辑回归 (Logistic Regression)** 对于分类问题,特别是二元分类,逻辑回归利用sigmoid函数建模类别条件概率,并采用交叉熵作为损失函数。这一过程本质上也是基于最大似然原理构建的[^4]。 ```python import numpy as np from scipy.optimize import minimize def log_likelihood(theta, X, y): """ 计算逻辑回归的对数似然 """ z = np.dot(X, theta) ll = np.sum(y*z - np.log(1 + np.exp(z))) return -ll # 负号是因为我们使用minimize函数找极小值 # 示例:随机生成一些训练数据并拟合模型 np.random.seed(0) X_train = np.random.rand(100, 2) y_train = ((X_train[:, 0] + X_train[:, 1]) > 1).astype(int) initial_theta = np.zeros(X_train.shape[1]) result = minimize(log_likelihood, initial_theta, args=(X_train, y_train), method='BFGS') print(result.x) ``` #### 3. **朴素贝叶斯分类器** 在朴素贝叶斯分类器中,先验概率以及类条件概率都可以通过对训练集中频率的最大似然估计获得[^3]。 --- ### 性质与特点 除了上述应用外,最大似然估计还具备若干优良性质,比如一致性、渐近正态性和效率高等特性,这些都使其成为一种强大的工具[^3]。然而需要注意的是,在实际操作过程中可能存在局部最优解等问题,因此需谨慎处理复杂情况下的最优化步骤[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值