苏宁易购网站风格焦作网站建设哪家权威
2026/6/10 10:12:11 网站建设 项目流程
苏宁易购网站风格,焦作网站建设哪家权威,湛江做网站优化,全国的网站建设原文#xff1a;towardsdatascience.com/hands-on-optimization-with-expected-improvement-and-gaussian-process-regression-in-python-3c416eaa84f3 免责声明#xff1a;高斯出生于 1777 年#xff0c;他比我聪明得多。在我之前#xff0c;很多人已经写过关于这个话题的…原文towardsdatascience.com/hands-on-optimization-with-expected-improvement-and-gaussian-process-regression-in-python-3c416eaa84f3免责声明高斯出生于 1777 年他比我聪明得多。在我之前很多人已经写过关于这个话题的文章并且做得非常出色。这篇文章的一个很好的参考是这篇由okanyenigun 写得非常好。我的妻子是商业专业的如果你问她“什么是人工智能”她说“被传授了大量信息以发展思想和她没有说…我不知道…想法。”我会说这与人们对人工智能的描述非常吻合。经过调整这也并不离事实太远。现在如果你和一个数学家或物理学家交谈答案可能会更加技术化和可能很无聊我是一名物理学家所以我可以说这个。如果我要定义人工智能我会说“人工智能是一系列使用数据最小化损失函数的算法”…我告诉你这更无聊。我这是什么意思0. 机器学习作为最小化问题假设我们正在使用人工智能来预测房子的价格。在你进行任何人工智能之前有一个人类根据多个参数如位置、大小、建造年份等实际评估房子的价格。众所周知人工智能需要数据所以这件事必须大量进行以形成我们的训练集。类似于这样https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/0761e87288e5e28e74917e5b62490b0b.png作者图片这组房屋及其对应的价格被用来优化机器学习模型。例如让我们假设在我们非常简单的想象世界中房子的价格仅取决于大小。例如如果大小是x相应的价格是y我们就有https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/a8d8bd27e7819592ac3f179e7717858b.png所以一个大小为 x 2 的大房子价格为 50×2 100任意单位。现在让我们假设我们正在使用一个像这样的机器学习模型https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/29bb5e040077226a8a82ac825db28293.png对于一个给定的新房子大小为 x 1例如我们有误差与 w 的关系图如下https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/d406b6dda8f993b8297a9e84bb35f498.png作者制作的图片现在当然我们希望我们的误差为 0。我们希望有一个机器学习模型能够准确预测房子的价格。事情是这样的在现实生活中我们并没有像你在图片中看到的那种情节。现实生活中发生的事情是我们随机选择一个 w或者一个随机向量w然后我们优化以找到最小误差。如果你是一个机器学习爱好者这个故事对你来说并不陌生。例如你可能听说过叫做梯度下降的东西。1. 梯度下降及其局限性梯度下降是一种技术通过迭代地跟随梯度的反方向来最小化函数的误差。有点像这样https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/105fbd9b4c1a9fa53ad00b10c7f2ad74.png作者制作的图片我不想用任何方程式来让你感到无聊但算法的逻辑如下从一个随机参数向量开始。在上面的例子中参数只有一个1D 向量但模型的维度通常要大得多数百万或数十亿维向量估计损失函数相对于随机参数的梯度。朝着梯度方向迈出一步就像你在上面的图中看到的那样如果“达到收敛”则中断否则重复步骤 2 和 3。从图片中我们可以看到简而言之这意味着如果梯度告诉我们函数在哪里增长“负梯度”告诉我们函数在哪里减少如果我们跟随损失函数即要最小化的函数的减少路径我们就赢得了比赛。但我们想过吗并不完全是这样或者至少并不总是。关键在于步骤 4 中的“达到收敛”语句。我们所说的“收敛”是什么意思我们指的是“局部收敛”或者如果你愿意的话“收敛到局部最小值”。非常令人困惑。我知道。我会尽量用人类语言来说明。你上面看到的函数有很多简化。一个简化是它只有 1D我们之前已经讨论过。另一个更大的简化是那个函数只有一个最小值。在机器学习的许多我可以说所有情况下损失函数都有多个最小值当我们运行梯度下降算法时我们会“陷入局部最小值”就像我们从这里的非凸函数中看到的那样https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/46d714a12f35f27f0b48c718a7ce6531.png作者制作的图片所以在红色情况下蓝色的十字算法的终点确实是一个最小值但它是一个局部最小值。换句话说如果我们试图最小化误差我们只是部分地做到了我们无法找到问题的全局最小值。这是在机器学习社区中一个非常著名的问题但实际上它是一个更普遍的问题“当我们没有解析方法来描述它时我们如何找到非凸函数的最小值”在这篇文章中我们使用期望改进方法来实现。欢迎加入2. 高斯过程回归在进行实际的全球最小值搜索之前我们需要熟悉一个叫做高斯过程回归GPR也称为克里金Kriging的朋友。从其名称中可以看出GPR 是一种回归算法意味着这个模型的输入是一个向量输出是一个实数不一定是整数。我对高斯过程回归GPR如此热爱以至于如果我不停止谈论它我的妻子会离开我。我还写了一篇关于如何使用高斯过程回归作为异常检测算法以及如何将其作为生成模型使用的文章。高斯过程如此迷人以至于可以围绕它写一篇完整的博士论文但为了在 Medium 文章中向您介绍 GPR 的美丽世界我将使用使 GPR 在机器学习社区闻名的人的话克里斯托弗·K·I·威廉姆斯和卡尔·爱德华·拉斯穆森“高斯过程是一种随机过程可以通过其均值函数和协方差函数完全定义。均值函数表示为()代表过程在任意点的期望值(**)[()]。协方差函数(,′)描述了过程在不同点和′的值是如何相关的(,′)[(()−())((′)−(′))].真的是乱七八糟的对吧让我们来简化一下。你知道我之前告诉你的事情吗关于输入是一个向量输出是一个实数想象一下输出不仅仅是一个实数而是一个平均值均值和方差。你的输入训练点集将用于概率的条件术语中从(), (,′)和训练点开始预测下一个点的 y 值。让我用一个例子来解释给您听这样我们就能达成共识。2.1 高斯过程回归实现让我们从这里这个非常简单的方程开始…/Images/92c9a6790f0add0bfc82959a9077eaff.png由作者[1]制作如果我们用Python和一些库来绘制这个图我们得到了这个图cdn.embedly.com/widgets/media.html?srchttps%3A%2F%2Fjovian.com%2Fembed%3Furl%3Dhttps%3A%2F%2Fjovian.ml%2Fpiero-paialunga%2Fxgb-notebook-4e208%2Fv%2F1%26cellId%3D1dntp1display_nameJovianurlhttps%3A%2F%2Fjovian.ml%2Fpiero-paialunga%2Fxgb-notebook-4e208%2Fv%2F1%26cellId%3D1imagehttps%3A%2F%2Fstorage.googleapis.com%2Fjvn-asia%2Fassets2%2Fpiero-paialunga%2Fprofile_images%2F51dc688db2d84699b24e9e68eb5260d8%2Fmedium.jpgkeya19fcc184b9711e1b4764040d3dc5c07typetext%2Fhtmlscrollautoschemajovian正如我们之前所说的我们可以假设一个随机过程通过一个均值为 0 的均值函数和之前描述的协方差函数来模拟数据。很美。现在我们将用新的数据告知先验概率。我知道这听起来我现在像是在做哲学但我的真正意思是我们写出先验概率上面定义了平均值和协方差和训练集之间的条件概率。对于像我这样的数学爱好者来说这就是这个想法…/Images/f12077cd7e8278a7080d5a4ce71f65be.png由作者[2]制作的照片其中 f_{x*}是所有可能的输出k∗是测试点和训练点之间的协方差向量其元素为∗()(,∗)K 是协方差矩阵sigma_{n}²是噪声的值。简而言之就像往常一样我们需要一个训练集和测试集。这只需要几行代码就能完成cdn.embedly.com/widgets/media.html?srchttps%3A%2F%2Fjovian.com%2Fembed%3Furl%3Dhttps%3A%2F%2Fjovian.ml%2Fpiero-paialunga%2Fxgb-notebook-4e208%2Fv%2F11%26cellId%3D3dntp1display_nameJovianurlhttps%3A%2F%2Fjovian.ml%2Fpiero-paialunga%2Fxgb-notebook-4e208%2Fv%2F11%26cellId%3D3imagehttps%3A%2F%2Fstorage.googleapis.com%2Fjvn-asia%2Fassets2%2Fpiero-paialunga%2Fprofile_images%2F51dc688db2d84699b24e9e68eb5260d8%2Fmedium.jpgkeya19fcc184b9711e1b4764040d3dc5c07typetext%2Fhtmlscrollautoschemajovian这就是图表cdn.embedly.com/widgets/media.html?srchttps%3A%2F%2Fjovian.com%2Fembed%3Furl%3Dhttps%3A%2F%2Fjovian.ml%2Fpiero-paialunga%2Fxgb-notebook-4e208%2Fv%2F11%26cellId%3D4dntp1display_nameJovianurlhttps%3A%2F%2Fjovian.ml%2Fpiero-paialunga%2Fxgb-notebook-4e208%2Fv%2F11%26cellId%3D4imagehttps%3A%2F%2Fstorage.googleapis.com%2Fjvn-asia%2Fassets2%2Fpiero-paialunga%2Fprofile_images%2F51dc688db2d84699b24e9e68eb5260d8%2Fmedium.jpgkeya19fcc184b9711e1b4764040d3dc5c07typetext%2Fhtmlscrollautoschemajovian现在假设这是我们试图最小化的函数。我们应用方程式[2]来获得相应的平均值和方差。这只需要非常非常少的几行代码cdn.embedly.com/widgets/media.html?srchttps%3A%2F%2Fjovian.com%2Fembed%3Furl%3Dhttps%3A%2F%2Fjovian.ml%2Fpiero-paialunga%2Fxgb-notebook-4e208%2Fv%2F11%26cellId%3D5dntp1display_nameJovianurlhttps%3A%2F%2Fjovian.ml%2Fpiero-paialunga%2Fxgb-notebook-4e208%2Fv%2F11%26cellId%3D5imagehttps%3A%2F%2Fstorage.googleapis.com%2Fjvn-asia%2Fassets2%2Fpiero-paialunga%2Fprofile_images%2F51dc688db2d84699b24e9e68eb5260d8%2Fmedium.jpgkeya19fcc184b9711e1b4764040d3dc5c07typetext%2Fhtmlscrollautoschemajovian在图片中橙色函数是目标我们试图建模的未知函数在现实生活中它是未知的深蓝色线和阴影是平均值和 2 倍标准差这相当于大约 95%的不确定性。这意味着我们可以预期橙色线位于蓝色阴影之间。训练集是红色十字的集合。在红色十字处不确定性始终为 0。测试集是蓝色十字的集合。3. 全局优化好吧但我答应过你一个优化问题。那个在哪里如果我们看之前的预测图有一个预测的最小值但它是一个局部最小值它不是正确的全局最小值。这是因为蓝色线的最小值在 2 到 4 之间。橙色线的最小值在 0 到 2 之间。我们如何找到它诀窍在于你看到中间的大不确定性大阴影区域了吗这意味着我们对该区域发生的事情一无所知因为不确定性如此之大。我们应该探索那里发生的事情有一个量可以告诉我们我们可以改进估计的区域。这被称为期望改进EI。我不想用数学它很简单来烦你但 EI 是通过以下量计算的cdn.embedly.com/widgets/media.html?srchttps%3A%2F%2Fjovian.com%2Fembed%3Furl%3Dhttps%3A%2F%2Fjovian.ml%2Fpiero-paialunga%2Fxgb-notebook-4e208%2Fv%2F7%26cellId%3D6dntp1display_nameJovianurlhttps%3A%2F%2Fjovian.ml%2Fpiero-paialunga%2Fxgb-notebook-4e208%2Fv%2F7%26cellId%3D6imagehttps%3A%2F%2Fstorage.googleapis.com%2Fjvn-asia%2Fassets2%2Fpiero-paialunga%2Fprofile_images%2F51dc688db2d84699b24e9e68eb5260d8%2Fmedium.jpgkeya19fcc184b9711e1b4764040d3dc5c07typetext%2Fhtmlscrollautoschemajovian让我们绘制这个cdn.embedly.com/widgets/media.html?srchttps%3A%2F%2Fjovian.com%2Fembed%3Furl%3Dhttps%3A%2F%2Fjovian.ml%2Fpiero-paialunga%2Fxgb-notebook-4e208%2Fv%2F11%26cellId%3D7dntp1display_nameJovianurlhttps%3A%2F%2Fjovian.ml%2Fpiero-paialunga%2Fxgb-notebook-4e208%2Fv%2F11%26cellId%3D7imagehttps%3A%2F%2Fstorage.googleapis.com%2Fjvn-asia%2Fassets2%2Fpiero-paialunga%2Fprofile_images%2F51dc688db2d84699b24e9e68eb5260d8%2Fmedium.jpgkeya19fcc184b9711e1b4764040d3dc5c07typetext%2Fhtmlscrollautoschemajovian如果我们看绿色线并与上面的 GPR 图进行比较我们会注意到存在一个不确定性很大的区域其中边界非常大并且预期改进也因此很大。 Bingo这正是我们所需要的。我们将在预期改进最大的区域添加一个额外的点。我们继续这样做直到我们不再在最小值方面发现任何重大变化。让我用一个包含 9 次迭代的例子来展示让我们先定义这个我们将要使用的黑盒函数cdn.embedly.com/widgets/media.html?srchttps%3A%2F%2Fjovian.com%2Fembed%3Furl%3Dhttps%3A%2F%2Fjovian.ml%2Fpiero-paialunga%2Fxgb-notebook-4e208%2Fv%2F9%26cellId%3D8dntp1display_nameJovianurlhttps%3A%2F%2Fjovian.ml%2Fpiero-paialunga%2Fxgb-notebook-4e208%2Fv%2F9%26cellId%3D8imagehttps%3A%2F%2Fstorage.googleapis.com%2Fjvn-asia%2Fassets2%2Fpiero-paialunga%2Fprofile_images%2F51dc688db2d84699b24e9e68eb5260d8%2Fmedium.jpgkeya19fcc184b9711e1b4764040d3dc5c07typetext%2Fhtmlscrollautoschemajovian这篇博客文章的整个想法都体现在以下代码行中cdn.embedly.com/widgets/media.html?srchttps%3A%2F%2Fjovian.com%2Fembed%3Furl%3Dhttps%3A%2F%2Fjovian.ml%2Fpiero-paialunga%2Fxgb-notebook-4e208%2Fv%2F11%26cellId%3D9%26hideOutput%3Dtruedntp1display_nameJovianurlhttps%3A%2F%2Fjovian.ml%2Fpiero-paialunga%2Fxgb-notebook-4e208%2Fv%2F11%26cellId%3D9%26hideOutput%3Dtrueimagehttps%3A%2F%2Fstorage.googleapis.com%2Fjvn-asia%2Fassets2%2Fpiero-paialunga%2Fprofile_images%2F51dc688db2d84699b24e9e68eb5260d8%2Fmedium.jpgkeya19fcc184b9711e1b4764040d3dc5c07typetext%2Fhtmlscrollautoschemajovianhttps://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/12b86fb5a16a4e3cbbc87d2b7d48486f.png让我们分析结果。红色的点是之前的点用于训练 GPR 预测蓝色线和不确定性边界蓝色阴影。黑盒函数在现实中未知是橙色的。下一个点是绿色的点。第一张图显示我们在一个局部最小值中添加了新点。第二张图显示了对域远右侧部分的探索这部分大部分未被探索。第三张图显示算法如何继续探索空间找到局部最小值。第四张图显示我们如何探索域的左侧。从第五张图到第九张图我们可以看到算法如何在 0 到 2 之间找到最小值。这是我们全局最小值。我们做到了4. 结论在这篇博客文章中我们讨论了全局优化问题。我们按照以下步骤进行我们将机器学习定义为优化问题。特别是通过房价线性回归的简单示例我们展示了如何将机器学习算法形式化为误差函数的最小化。我们描述了梯度下降算法。梯度下降是一种旨在使用梯度定义数值最小化误差函数的技术。不幸的是这种方法可能导致算法表现不佳因为我们可能会陷入一个局部而不是全局最小值。我们介绍了 GPR一种不仅能够预测结果还能测量不确定性的酷方法。非常酷。十全十美。 我们定义了期望改进EI它引导我们探索我们最不确定的区域。这最终帮助我们探索可能存在局部最小值的地方增加了找到全局最小值的概率。我们实现了全局最小值搜索算法我们展示了如何使用 Python 中的 GPR 和 EI 逐步找到函数的最小值并通过可视化使其清晰易懂。7. 关于我再次感谢你花时间。这对我们意义重大 ❤我叫 Piero Paialunga我就是这里这个人https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/319b5efdd33e473d5f508cd94bb80243.png我是辛辛那提大学航空航天工程系的博士候选人同时也是 Gen Nine 的机器学习工程师。我在博客文章和领英上谈论人工智能和机器学习。如果你喜欢这篇文章并想了解更多关于机器学习的内容以及跟随我的研究你可以A. 在**领英上关注我我在那里发布所有故事。B. 订阅我的通讯。这将让您了解新故事并有机会给我发信息以接收您可能有的所有更正或疑问。C. 成为推荐会员这样您就不会有“每月故事最大数量”的限制您可以阅读我以及成千上万的机器学习和数据科学顶级作家关于最新技术的所有文章。D. 想和我一起工作请查看我在Upwork**上的费率和项目如果你想向我提问或开始合作请在这里或**领英**上留言[邮箱地址]

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询