向量范数

声明: 仅个人小记
前言:范数在不同场合下可以有不同的解释,利用范数优良的抽象性质,在不同的场合下可以解释为不同的东西。于我而言,学习范数概念使我意会到 “高度抽象的距离” 这个概念。而“距离”这个概念在机器学习等领域随处可见

一、向量范数总体定义

∥ v ⃗ ∥ p = ( ∣ v 1 ∣ p + ∣ v 2 ∣ p + . . . + ∣ v n ∣ p ) 1 p \left \| \vec{v}\right\|_p = {({|v_1|}^{p}+{|v_2|}^{p}+...+{|v_n|}^{p})}^{\frac{1}{p}} v p=(v1p+v2p+...+vnp)p1

二、向量范数效果展示

绘制 ∥ v ⃗ ∥ p = 1 \left \| \vec{v}\right \|_p = 1 v p=1的图像如下

  1. 当 p = 0
  2. 当 p = 1
3. 当 p = 2
  1. 当 p = + ∞ \infty
  2. 随着p的大小的演变过程,如下
上述绘图编制的python代码
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(-1,1,10000)
fig = plt.figure()
ax = fig.add_subplot(111)
ax.set_aspect('equal')
P = 5
for p in np.arange(0.3,P,0.2):
    y = np.power(1-np.power(np.abs(x),p),1/p)
    # 注意plot 是连点绘图方法,所以注意避免额外的连线产生
    ax.plot(np.hstack([x,x[::-1]]),np.hstack([y,-y[::-1]]))
    plt.title('p = '+str(p))
    plt.pause(0.8)
三、向量范数细究
根据总体定义具体分析几个特殊定义

(1) 0范数 ∣ ∣ v ⃗ ∣ ∣ 0 = 非 零 元 素 个 数 ||\vec{v}||_0=非零元素个数 v 0=
(2) 1范数 ∥ v ⃗ ∥ 1 = ( ∣ v 1 ∣ 1 + ∣ v 2 ∣ 1 + . . . + ∣ v n ∣ 1 ) 1 = ∣ v 1 ∣ + ∣ v 2 ∣ + . . . + ∣ v n ∣ \left\| \vec{v}\right\|_1 = (|v_1|^1+|v_2|^1+...+|v_n|^1)^1 \\=| v_1|+|v_2|+...+|v_n| v 1=(v11+v21+...+vn1)1=v1+v2+...+vn1范数可以用来表示曼哈顿距离,示意图如下,规定:只允许上下左右移动,不允许斜着移动,在这种情景下,1范数就可以很好的用来作为两点之间的距离的测度。

图中AB两点的曼哈顿距离为8,即 ∣ ∣ A B ⃗ ∣ ∣ 1 = 8 ||\vec{AB}||_1=8 AB 1=8,图(1)、(2)和(4)的虚线都是A到B点的最短距离轨迹。
(3) 2范数 ∥ v ⃗ ∥ 2 = ( v 1 2 + v 2 2 + . . . + v n 2 ) 1 2 \left\|\vec{v}\right\|_2={(v_1^2+v_2^2+...+v_n^2)}^{\frac{1}{2}} v 2=(v12+v22+...+vn2)21显然,2范数可以用来表示欧式距离

(4)无穷范数 ∥ v ⃗ ∥ ∞ = ( ∣ v 1 ∣ ∞ + ∣ v 2 ∣ ∞ + . . . + ∣ v n ∣ ∞ ) 1 ∞ = ( ( ∣ v 1 ∣ ∞ m a x ∣ v i ∣ ∞ + ∣ v 2 ∣ ∞ ) m a x ∣ v i ∣ ∞ + . . . + ∣ v n ∣ ∞ m a x ∣ v i ∣ ∞ ) m a x ∣ v i ∣ ∞ ) 1 ∞ = ( ∣ v 1 ∣ ∞ m a x ∣ v i ∣ ∞ + ∣ v 2 ∣ ∞ ) m a x ∣ v i ∣ ∞ + . . . + ∣ v n ∣ ∞ m a x ∣ v i ∣ ∞ ) 1 ∞ m a x ∣ v i ∣ = k 1 ∞ m a x ∣ v i ∣ \left\|\vec{v}\right\|_\infty={(|v_1|^\infty+|v_2|^\infty+...+|v_n|^\infty )}^{\frac{1}{\infty}}\\={((\frac{|v_1|^\infty}{max|v_i|^\infty}+\frac{|v_2|^\infty)}{max|v_i|^\infty}+...+\frac{|v_n|^\infty}{max|v_i|^\infty}){max|v_i|^\infty})}^{\frac{1}{\infty}}\\={(\frac{|v_1|^\infty}{max|v_i|^\infty}+\frac{|v_2|^\infty)}{max|v_i|^\infty}+...+\frac{|v_n|^\infty}{max|v_i|^\infty})^{\frac{1}{\infty}}{max|v_i|}}=k^\frac{1}{\infty }max|v_i| v =(v1+v2+...+vn)1=((maxviv1+maxviv2)+...+maxvivn)maxvi)1=(maxviv1+maxviv2)+...+maxvivn)1maxvi=k1maxvik为正整数,所以 ∣ ∣ v ⃗ ∣ ∣ ∞ = m a x ∣ v i ∣ ||\vec{v}||_\infty=max|v_i| v =maxvi无穷范数可以表示向量的最大元素

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值