机器学习入门教学——损失函数(极大似然估计法)

1、前言


2、极大似然估计法

2.1、似然
  • 在了解极大似然估计时,我们先要弄清楚什么是似然。
  • 似然和概率都是统计学中非常重要的概念,了解似然之前,我们先了解什么是概率。
  • 概率是指某个特定环境下某件事情发生的可能性。
    • 例如,在抛硬币前,根据硬币的性质,我们可以推测任何一面朝上的可能性是50%。
  • 似然和概率恰好相反。它是基于已经确定的结果,来推测产生这个结果的可能环境。
    • 例如,我们随机抛1w次硬币,得到8000次人像,2000次数字。从而推断出人像朝上的概率是0.8,数字朝上的概率是0.2。
  • 假设,θ是环境对应的参数(上述案例中,θ为0.8),x是事件发生的结果。
    • 概率:,即在环境参数θ的条件下,x发生的概率。P是关于x的函数。
    • 似然:,即在已知观察结果是x的情况下,去推断环境参数θ。L是关于θ的函数。
2.2、极大似然估计
2.2.1、简介
  • 我们先用简单的抛硬币实验说明一下什么是极大似然估计。
  • 假设,抛了10次硬币,7次人像朝上,3次数字朝上,这是实验的情况;设人像朝上的概率为θ,数字朝上的概率为1-θ,这是真实的情况。
  • 我们要做的就是计算出θ的值。
  • 我们根据假设出的θ,可以得出硬币抛出这种情况的概率为:函数L(θ)被称为θ的似然函数,L(θ)的值被称为似然值。
  • 我们可以枚举θ的值,然后画出L(θ)的图像。
  • ,可以看出θ=0.7时,L(θ)的值最大,即硬币最有可能抛出上述情况。
  • 最大似然估计就是要求环境参数θ等于多少时,观测的结果最可能发生。
  • 【注】理念情况下,θ应该为0.5,与计算的θ不符合。我们可以增加实验次数,例如抛1w次,重新进行计算。
2.2.2、作为损失函数
  • 我们已经了解了极大似然估计,那接下来看看它是如何作为损失函数的呢。
  • 我们还是用之前的这个案例。其中W和b是环境对应的参数,它确定了神经网络中概率模型的样子。这些输入的图片就像抛出的一个个硬币。
  • 在这极大似然估计就是要求W,b等于多少时,观测的结果(输入图片的真实值)最可能发生。
  • 已知似然:是在已知观察结果是x的情况下,去推断环境参数θ。对应到这里,得到似然函数为:
    • (W,b的情况下,发生的概率)
  • 将似然函数写成连乘的形式:
  • 由于W,b在神经网络中是确定值,而是由W,b得到的,所以可以使用代替W,b,即:
    • (W,b隐藏在中)
  • 的概率是真实情况,的概率是理念情况(需要不断逼近的情况)。的概率就是我们需要不断调整的θ。
  • 我们再进行一次替换。由于,设为1的概率为p,为0的概率为1-p,则的概率分布为:
  • 的概率改成**** 的概率,似然函数就可以替换成下面的形式:
    • ,其中p为****为1的概率。
  • 两边同时取对数,把连乘变成连加,进行化简。取对数不影响函数的单调性。
  • 在这个公式基础上添加一个负号,将最大化该公式改为最小化,这就符合损失函数的定义了。即:

3、总结

  • 训练神经网络其实就是要找到适合的W和b。而是现在W和b的产物,我们可以根据的概率得到现有模型和理想模型的差距。当我们在最大化似然函数的时候,就是要求W,b等于多少时,观测的结果(输入图片的真实值)最可能发生,而这里的W,b只是改成了的概率。
相关推荐
python算法(魔法师版)13 分钟前
基于机器学习鉴别中药材的方法
深度学习·线性代数·算法·机器学习·支持向量机·数据挖掘·动态规划
小李学AI34 分钟前
基于YOLO11的遥感影像山体滑坡检测系统
人工智能·深度学习·yolo·目标检测·机器学习·计算机视觉·yolo11
笨小古43 分钟前
保姆级教程:利用Ollama与Open-WebUI本地部署 DeedSeek-R1大模型
人工智能·deepseek
AI浩1 小时前
【Block总结】CPCA,通道优先卷积注意力|即插即用
人工智能·深度学习·目标检测·计算机视觉
HaiLang_IT1 小时前
毕业设计:基于卷积神经网络的鲜花花卉种类检测算法研究
目标检测·机器学习·毕业设计
IT果果日记2 小时前
Ollama+OpenWebUI部署本地大模型
人工智能·ai编程·ollama·openwebui
说私域2 小时前
基于开源2 + 1链动模式AI智能名片S2B2C商城小程序的内容创作与传播效能探究
人工智能·小程序·开源
想拿高薪的韭菜3 小时前
人工智能第2章-知识点与学习笔记
人工智能·笔记·学习
雾岛心情4 小时前
【AIGC专栏】AI在自然语言中的应用场景
人工智能·chatgpt·aigc
deephub4 小时前
Python GIL(全局解释器锁)机制对多线程性能影响的深度分析
python·机器学习·gil