0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

机器学习笔记之高斯过程(上)

jf_78858299 来源:人工智能大讲堂 作者:人工智能大讲堂 2023-05-30 16:49 次阅读

高斯分布

我们定义一个将输入x映射到输出y的函数图片,在统计学中,我们使用随机模型来定义这种关系的概率分布。例如,一个3.8 GPA的学生可以获得平均$60K的薪水,方差(σ2)为$10K。

图片

p(Salary=x|GPA=3.8)(一个均值为$60K,方差为$10k的高斯分布)

概率密度函数(Probability density function,PDF)

在下面的图表中,p(X=x) 服从高斯分布:

图片

图片

在高斯分布中,68%的数据在距离μ 1σ之内,95%的数据在距离μ 2σ之内。我们可以根据概率分布来进行数据采样。从分布图片中采样数据的符号表示为:

图片

在现实生活中,许多数据都遵循高斯分布。

例如,让我们建立旧金山居民身高和体重之间的关系模型。我们从1000名成年居民中收集信息,并将数据绘制如下图所示,每个红点代表1个人:

图片

对应的三维概率密度函数(PDF)如下图所示:

图片

让我们首先将模型推广到多元高斯分布,即概率密度函数取决于多个变量。

一个多元向量:

图片

多元高斯分布的概率密度函数定义如下:

图片

其中,Σ表示协方差矩阵:

图片

让我们回到身高和体重的例子中,来说明这个公式的应用。

图片

从我们的训练数据中,我们计算得到图片=190,图片=70:

图片

协方差矩阵Σ是用来做什么的?协方差矩阵中的每个元素都代表着两个变量之间的关系。例如,图片表示身高(图片)与体重(图片)的相关性。如果体重随身高的增加而增加,那么图片为正值。

图片

让我们详细介绍如何计算上述的图片。为了简化,我们假设我们只有两个数据点(150磅,66英寸)和(200磅,72英寸)。

图片

在计算了所有1000个数据之后,协方差矩阵Σ的值如下所示:

图片

协方差矩阵Σ中的正元素值表示两个变量呈正相关关系。不出所料,图片是正值,因为体重随身高的增加而增加。如果两个变量彼此独立,则值应为0,如下所示:

图片

计算图片的概率

计算在给定图片的条件下图片的概率:

图片

其中,Φ是累积分布函数(cumulative distribution function,CDF):

图片

我们将协方差变量Σ重写为以下形式:

图片

代码

我们从一个二元高斯分布中采样数据。从协方差矩阵中,我们可以看出x和y呈正相关关系,因为图片图片是正的。

mean = [0, 2]
cov = [[1, 2], [3, 1]]


x, y = np.random.multivariate_normal(mean, cov, 5000).T
plt.plot(x, y, 'x')
plt.axis('equal')
plt.show()

图片

下面绘制(y,x)的概率分布图:

from scipy.stats import multivariate_normal


x, y = np.mgrid[-1:1:.01, -1:1:.01]  # x (200, 200) y (200, 200)
pos = np.empty(x.shape + (2,))
pos[:, :, 0] = x; pos[:, :, 1] = y   # pos (200, 200, 2)


mean = [-0.4, -0.3]
cov = [[2.1, 0.2], [0.4, 0.5]]
rv = multivariate_normal(mean, cov)
p = rv.pdf(pos)                      # (200, 200)
plt.contourf(x, y, p)
plt.show()

图片

多元高斯分布定理

给定一个高斯分布:

图片

后验条件概率图片的计算公式如下所示。这个公式在后面的高斯过程中非常重要。例如,如果我们有1000个毕业生的GPA和薪水样本,我们可以使用这个定理通过1000个训练数据点创建一个高斯分布模型来预测给定GPA情况下的薪水P(salary|GPA),

这里不详细介绍公式的推理过程。但是假设x服从高斯分布。图片图片之间的相关性由μ和Σ定义。因此,给定图片的值,我们可以计算出图片的概率分布:p(图片|图片)。

图片

例如,我们知道旧金山居民的身高服从高斯分布。在下一节中,我们将应用高斯过程来预测在给定身高的情况下体重的值。

高斯过程

高斯过程(Gaussian Process,GP)的直观理解很简单。如果两个点具有相似的输入,那么它们的输出也应该相似。对于有两个数据点的情况,如果一个数据点比另一个数据点更接近已知的训练数据点,那么它的预测结果会更加可靠。

例如,如果一个GPA为3.5的学生一年挣$70K,那么另一个GPA为3.45的学生应该会挣类似的薪水。在高斯过程中,我们使用训练数据集来构建高斯分布,以进行预测。对于每个预测,我们输出一个均值和一个σ。例如,使用高斯过程,我们可以预测一个GPA为3.3的学生可以挣到μ=$65K,σ=$5K,而一个GPA为2.5的学生可以挣到μ=$50K和σ=$15K。σ衡量了我们预测的不确定性。因为3.3 GPA更接近于我们的3.5 GPA训练数据,所以我们对于3.3 GPA学生的薪水预测比2.5 GPA学生更有信心。

在高斯过程中,我们不是计算Σ,而是计算K来衡量数据点图片图片之间的相似性。

图片

其中,核函数k是一个度量两个数据点相似性的函数(值为1表示相同)。有许多可能的核函数,我们将使用指数平方距离作为核函数。

图片

注意:上面的图片表示数据点的体重。图片表示数据点1。

有了所有的训练数据,我们可以创建一个高斯模型:

图片

让我们再次用两个训练数据点(150磅,66英寸)和(200磅,72英寸)来演示。这里我们正在为我们的训练数据构建一个高斯模型。

图片

其中175是体重的平均值,图片衡量了数据点图片图片之间身高的相似性。上面的符号表示我们可以在体重上采样一个向量f。

图片

从由数据点(150,66)和(200,72)建模的图片中进行采样。

现在假设我们要预测输入图片,图片时的图片,图片。模型变为:

图片

让我们再次理解一下这是什么意思。例如,我们有一个包含4个人身高的向量:

图片

我们可以使用图片来采样这些人可能的体重:

图片

我们知道前两个值来自训练数据,我们尝试计算出图片图片的分布(它们的μ和σ是多少)。现在,我们不仅可以预测2个值,还可以对一系列输入值进行预测。

图片

然后使用图片来采样向量:

图片

例如,我们从图片中采样的第一个输出样本是:

图片

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 函数
    +关注

    关注

    3

    文章

    3911

    浏览量

    61355
  • 随机
    +关注

    关注

    0

    文章

    12

    浏览量

    9699
  • 映射
    +关注

    关注

    0

    文章

    42

    浏览量

    15728
  • 高斯分布
    +关注

    关注

    0

    文章

    6

    浏览量

    2715
收藏 人收藏

    评论

    相关推荐

    吴恩达机器学习笔记分享

    【吴恩达机器学习笔记】第八章:正则化
    发表于 05-25 08:49

    机器学习基石笔记

    3)机器学习基石笔记 Lecture3:Types of Learning
    发表于 05-26 14:53

    机器学习基石笔记分享

    机器学习基石笔记01
    发表于 06-03 08:14

    吴恩达机器学习笔记分享

    吴恩达机器学习笔记 —— 1 绪论:初识机器学习
    发表于 06-05 17:42

    机器学习笔记之BP推导

    机器学习笔记:BP推导
    发表于 06-15 17:11

    高斯过程回归GPR和多任务高斯过程MTGP

    文章目录高斯过程回归多任务高斯过程文献阅读文献[1]文献[2]文献[3]文献[4]文献[5]文献[6]编程实现参考文献和资料本文介绍了高斯
    发表于 06-30 06:59

    基于狄利克雷过程的可扩展高斯混合模型

    ,以提升其可解释性。此外,对高斯混合模型的推理过程进行优化,给出一种基于批次处理方式的可扩展变分推理算法,求解图像去噪中所有隐变量的变分后验分布,实现先验学习。实验结果表明,该模型在图像去噪任务中较巸PLL等传
    发表于 04-29 11:17 7次下载
    基于狄利克雷<b class='flag-5'>过程</b>的可扩展<b class='flag-5'>高斯</b>混合模型

    什么是高斯过程 神经网络高斯过程解析

    神经网络是怎么和高斯过程联系在一起的呢?Lee et al. [1] and Neal [2] 指出,随机初始化无限宽网络的参数会产生一个高斯过程,称作神经网络
    发表于 08-10 11:25 3877次阅读

    机器学习笔记之高斯过程(下)

    高斯分布 我们定义一个将输入x映射到输出y的函数图片,在统计学中,我们使用随机模型来定义这种关系的概率分布。例如,一个3.8 GPA的学生可以获得平均$60K的薪水,方差(σ2)为$10K
    的头像 发表于 05-30 16:50 1160次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>学习</b><b class='flag-5'>笔记</b><b class='flag-5'>之高斯</b><b class='flag-5'>过程</b>(下)

    PyTorch教程18.1之高斯过程简介

    电子发烧友网站提供《PyTorch教程18.1之高斯过程简介.pdf》资料免费下载
    发表于 06-05 10:46 0次下载
    PyTorch教程18.1<b class='flag-5'>之高斯</b><b class='flag-5'>过程</b>简介

    PyTorch教程18.2之高斯过程先验

    电子发烧友网站提供《PyTorch教程18.2之高斯过程先验.pdf》资料免费下载
    发表于 06-05 10:47 0次下载
    PyTorch教程18.2<b class='flag-5'>之高斯</b><b class='flag-5'>过程</b>先验

    PyTorch教程18.3之高斯过程推理

    电子发烧友网站提供《PyTorch教程18.3之高斯过程推理.pdf》资料免费下载
    发表于 06-05 10:48 0次下载
    PyTorch教程18.3<b class='flag-5'>之高斯</b><b class='flag-5'>过程</b>推理

    PyTorch教程-18.1. 高斯过程简介

    在 SageMaker Studio Lab 中打开笔记本 在许多情况下,机器学习相当于从数据中估计参数。这些参数通常很多且相对难以解释——例如神经网络的权重。相比之下,高斯
    的头像 发表于 06-05 15:44 594次阅读
    PyTorch教程-18.1. <b class='flag-5'>高斯</b><b class='flag-5'>过程</b>简介

    PyTorch教程-18.2. 高斯过程先验

    在 SageMaker Studio Lab 中打开笔记本 了解高斯过程 (GP) 对于推理模型构建和泛化以及在各种应用中实现最先进的性能非常重要,包括主动学习和深度
    的头像 发表于 06-05 15:44 560次阅读
    PyTorch教程-18.2. <b class='flag-5'>高斯</b><b class='flag-5'>过程</b>先验

    PyTorch教程-18.3。高斯过程推理

    18.3。高斯过程推理¶ Colab [火炬]在 Colab 中打开笔记本 Colab [mxnet] Open the notebook in Colab Colab [jax
    的头像 发表于 06-05 15:44 724次阅读
    PyTorch教程-18.3。<b class='flag-5'>高斯</b><b class='flag-5'>过程</b>推理