新的系列文章開啓了,本系列文章主要是定位於【算法工程師的數學基礎】,將會從線性代數、微積分、數值優化、概率論、信息論五個方面進行介紹,感興趣的歡迎關注【搜索與推薦Wiki】公衆號,獲得最新文章。
《算法工程師的數學基礎》已更新:
- 1、算法工程師的數學基礎|線性代數中的向量和向量空間
線性代數主要包含向量、向量空間(或稱線性空間)以及向量的線性變換和有限維的線性方程組。本篇文章主要介紹線性代數部分中的向量和向量空間。
向量和向量空間
向量
標量(Scalar)是一個實數,只有大小,沒有方向。而向量(Vector)是由一組實數組成的有序數組,同時具有大小和方向。
一個n維向量a是由n個有序實數組成,表示爲:
a=[a1,a2,...,an]
其中ai稱爲向量的第i個分量,或者第i維。向量符號一般用黑色小寫字母a、b、c或者小寫字母α、β、γ表示。
爲了書寫方便期見,本系列文章向量並沒有進行黑色加粗,但讀者也要進行區分。
向量空間
向量空間(Vector Space) 也稱爲線性空間(Linear Space),是指由向量組成的集合,並滿足以下的兩個條件:
- 向量加法+:向量空間V中的兩個向量a、b,他們的和a+b也屬於向量空間
- 標量乘法⋅:向量空間V中的任一向量a和任一標量c,他們的乘積c⋅a也屬於向量空間
歐式空間(Euclidean Space) 是一個常用的線性空間,通常表示爲Rn,其中n爲空間維度(Dimension)。歐式空間中向量加法和標量乘法定義爲:
[a1,a2,...,an]+[b1,b2,...,bn]=[a1+b1,a2+b2,...,an+bn]c[a1,a2,...,an]=[ca1,ca2,...,can]
其中向量加法需要滿足兩個向量的維度必須一致。
線性子空間 向量空間V的線性子空間U是V的一個子集,並且滿足向量空間的兩個條件(向量加法和標量乘法)。
線性無關 線性空間V中的一組向量{v1,v2,....,vn},如果對任意的一組標量λ1,λ2,...,λn,滿足λ1v1+λ2v2,...,λnvn=0,則必然λ1=λ2=...=λn=0,那麼{v1,v2,...,vn}是線性無關的,也稱爲線性獨立。
注意λ1v1+λ2v2,...,λnvn=0 中 0 表示 n維的0向量
線性相關性是線性代數的重要概念,因爲線性無關的一組向量可以生成一個向量空間,而這組向量則是這向量空間的基。
補充wiki上的線性相關性判斷:
- 含有零向量的向量組,必定線性相關。若有向量組a1,a2,...,as,其中a1=0,則a1=0⋅a2+...+0⋅as。
- 含有兩個相等向量的向量組,必定線性相關。若有向量組a1,a2,...,as,其中a1=a2,則a1=1⋅a2+0⋅a3+...+0⋅as。
- 若一向量組相關,則加上任意個向量後,仍然線性相關;即局部線性相關,整體必線性相關。
- 整體線性無關,局部必線性無關。
- 向量個數大於向量維數,則此向量組線性相關。
- 若一向量組線性無關,即使每一向量都在同一位置處增加一分量,仍然線性無關。
- 若一向量組線性相關,即使每一向量都在同一位置處減去一分量,仍然線性相關。
- 若a1,a2,...,as線性無關,而b,a1,a2,...,as線性相關,則b,b必可由a1,a2,...,as線性表示,且表示係數唯一。
- 有向量組I{a1,a2,...,as}和II{b1,b2,...,bt},其中t>s,且II中每個向量都可由I線性表示,則向量組II必線性相關。即向量個數多的向量組,若可被向量個數少的向量組線性表示,則向量個數多的向量組必線性相關。
- 若一向量組b1,b2,...,bt可由向量組a1,a2,...,as線性表示,且b1,b2,...,bt線性無關,則t≤s。即線性無關的向量組,無法以向量個數較少的向量組線性表示。
基向量
向量空間V的基(bases)B={e1,e2,e3,...,en}是V的有限子集,其元素之間線性無關。向量空間V所有的向量都可以按唯一的方式表達爲B中向量的線性組合。對任意v∈V,存在一組標量(λ1,λ2,...,λn)使得:
v=λ1e1+λ2e2+...+λnen
其中基B中的向量稱爲基向量(base vector)。如果基向量是有序的,則標量(λ1,λ2,...,λn)稱爲向量v關於基B的座標(coordinates)。
n維空間V的一組標準基(standard basis) 爲:
e1=[1,0,0,...,0]e2=[0,1,0,...,0]...en=[0,0,0,...,1]
V中的任一向量v=[v1,v2,v3,..,vn]可以唯一表示爲:
[v1,v2,v3,..,vn]=v1e1+v2e2+...vnen
v1,v2,v3,..,vn 也稱爲向量v的笛卡爾座標(Carterian coordinates)。
向量空間中的每個向量可以看作是一個線性空間中的笛卡兒座標。
內積 一個n 維線性空間中的兩個向量a,b,其內積爲:
<a,b>=i=1∑naibi
正交 如果向量空間中兩個向量的內積爲0,則他們正交(orthogonal)。如果向量空間中一個向量v與子空間U中的每個向量都正交,那麼向量v和子空間U正交。
範數
範數(norm)是一個表示向量長度得函數,爲向量空間內得所有向量賦予非零得正長度或大小。對於一個n維向量v,一個常見得範數函數爲lp範數
lp(v)=∥v∥p=(i=1∑n∣vi∣p)1/p
其中p≥0爲一個標量的參數。常用的p的取值有1,2,∞等。
l1範數 爲向量各個元素的絕對值之和。
∥v∥1=i=1∑n∣vi∣
l2範數 爲向量各個元素的平方和再開方
∥v∥2=i=1∑nvi2=vTv
l2範數又稱爲Euclidean範數或者Frobenius。從幾何角度,向量也可以表示爲從原點出發的一個帶箭頭的有向線段,其l2範數爲線段的長度,也常稱爲向量的模。
l∞範數 爲向量各個元素的最大絕對值。
∥v∥∞=max{v1,v2,...,vn}
下圖給出了常見的不同範數示例。
常見的向量
全0向量 指所有元素都爲0的向量,用0表示。全0向量爲笛卡爾座標系中的原點。
全1向量 指所有元素都爲1的向量,用1表示。
one-hot向量 爲有且已有一個元素爲1,其餘元素都爲0的向量。
下一篇文章將會詳細介紹線性代數中的矩陣相關的知識,敬請期待!
掃一掃 關注微信公衆號!號主 專注於搜索和推薦系統,嘗試使用算法去更好的服務於用戶,包括但不侷限於機器學習,深度學習,強化學習,自然語言理解,知識圖譜,還不定時分享技術,資料,思考等文章!