返回介绍

2.5 范数

发布于 2024-01-20 12:27:18 字数 2848 浏览 0 评论 0 收藏 0

有时我们需要衡量一个向量的大小。在机器学习中,我们经常使用称为范数(norm)的函数来衡量向量大小。形式上,Lp范数定义如下

其中

范数(包括Lp范数)是将向量映射到非负值的函数。直观上来说,向量x的范数衡量从原点到点x的距离。更严格地说,范数是满足下列性质的任意函数:

三角不等式(triangle inequality));

当p=2时,L2范数称为欧几里得范数(Euclidean norm)。它表示从原点出发到向量x确定的点的欧几里得距离。L2范数在机器学习中出现得十分频繁,经常简化表示为,略去了下标2。平方L2范数也经常用来衡量向量的大小,可以简单地通过点积计算。

平方L2范数在数学和计算上都比L2范数本身更方便。例如,平方L2范数对x中每个元素的导数只取决于对应的元素,而L2范数对每个元素的导数和整个向量相关。但是在很多情况下,平方L2范数也可能不受欢迎,因为它在原点附近增长得十分缓慢。在某些机器学习应用中,区分恰好是零的元素和非零但值很小的元素是很重要的。在这些情况下,我们转而使用在各个位置斜率相同,同时保持简单的数学形式的函数:L1范数。L1范数可以简化如下

当机器学习问题中零和非零元素之间的差异非常重要时,通常会使用L1范数。每当x中某个元素从0增加,对应的L1范数也会增加

有时候我们会统计向量中非零元素的个数来衡量向量的大小。有些作者将这种函数称为“L0范数”,但是这个术语在数学意义上是不对的。向量的非零元素的数目不是范数,因为对向量缩放α倍不会改变该向量非零元素的数目。因此,L1范数经常作为表示非零元素数目的替代函数。

另外一个经常在机器学习中出现的范数是L范数,也被称为最大范数(max norm)。这个范数表示向量中具有最大幅值的元素的绝对值:

有时候我们可能也希望衡量矩阵的大小。在深度学习中,最常见的做法是使用Frobenius范数(Frobenius norm),即

其类似于向量的L2范数。

两个向量的点积可以用范数来表示,具体如下

其中θ表示xy之间的夹角。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文