Basic Linear Algebra (ตอน 1)

Linear algebra คือคณิตศาสตร์สาขาหนึ่งว่าด้วยเรื่องของ continuous mathematics และนับเป็นพื้นฐานสำคัญในการทำความเข้าใจเรื่อง machine learning

Objects

1. Scalar 
หมายถึงตัวเลขโดดทั่วไป เช่น 1, -10, 0.005,π, ฯลฯ

2. Vector 
คือ array 1 มิติ ของ Scalar  จะเป็น row vector เช่น
v=[0.21.0π] v คือ row vector  และ v1=0.2,v2=1.0,v3=π
 u=[0.21.0π] u คือ column vector และ u1=0.2,u2=1.0,u3=π

3. Matrix
คือ array 2 มิติของ Scalar จึงมีได้สอง index โดย index แรกหมายถึงมิติหรือตำแหน่งของ row  index ที่สองหมายถึงตำแหน่งในมิติของ column เช่น
M=[123456] มีจำนวน rows = 3 และ column = 2 และ M11=1,M12=2,M21=3,M22=4,M31=5,M32=6

4. Tensor 
มีโครงสร้างแบบ Multi-dimension หรืออาจมองว่าเป็น general form ของทั้ง Vector และ Matrix ก็ได้ ยกตัวอย่าง


Tensor ที่มีมิติเดียว  Axis = 0 หรือ Column Vector 
Tensor ที่มีสองมิติ  Axis = 0,1 หรือ Matrix

Tensor สามมิติ Axis = 0,1,2


กฏการคำนวณ
 คูณ Matrix หรือ Vector กับ Scalar

M=[123456],a=10
Ma=[110210310410510610]
Ma=[102030405060]

 การบวก Matrix
ถ้า  A, B เป็น matrix ที่มีขนาด m x n เหมือนกันแล้ว

A + B  = C

โดยที่  C มีขนาดเหมือน A และ B และ
cij=aij+bij
เมื่อ cij เป็น element ของ C,aij เป็น element ของ A,bij เป็น element ของ B
 เช่น
 A=[1234],B=[5678]
A+B=[1+52+63+74+8]=[681012]


การลบ Matrix
ถ้า  A, B เป็น matrix ที่มีขนาด m x n เท่ากันแล้ว และ C แทน A - B แล้ว จะได้
cij=aijbij,i1,2,3,..m,j1,2,3,..n โดยที่ aijA,bijB,cijC


Matrix Product (การคูณ Matrix)
A เป็น matrix ขนาด m x n และ B เป็น matrix ขนาด p x q แล้ว A X B  (A product B) จะกระทำได้ก็ต่อเมื่อ n = p ผลลัพธ์ที่ได้คือ matrix C ที่มีขนาด m x q โดยที่

cij=k=1naik×bkj
i{1,2,3,..,m},j{1,2,3,..,q}


เช่น
A=[1234],B=[5678] A x B หาได้จาก
c11=[12][57]=(5×1)+(2×7)=19
c21=[34][57]=(5×3)+(4×7)=43
c12=[12][68]=(1×6)+(2×8)=22
c22=[34][68]=(3×6)+(4×8)=50

จะได้ C=[19224350]


Dot product ของ 2 Vector

ถ้ากำหนดให้ vRn×1,uRn×1 นั่นคือ
v=[v1v2v3...vn] u=[u1u2u3...un]

Dot product ระหว่าง v  กับ u คือ  vu=k=1nvkuk ผลลัพธ์ที่ได้คือ scalar value
เช่น
v=[12],u=[34]
vu=(1×3)+(2×4)=3+8=11


คูณ Matrix ด้วย Vector 
ถ้าให้ A=[abcdefghi] เราอาจพิจารณา A ประกอบด้วย column vector ดังนี้ [adi],[beh],[cfi]
และถ้านำเอา v=[v1v2v3] คูณกับ Matrix A แล้วจะได้
Av=[abcdefghi][v1v2v3]
Av=v1[adg]+v2[bch]+v3[cfi]
Av=[v1a+v2b+v3cv1d+v2e+v3fv1g+v2h+v3i]

จะเห็นได้ว่าเมื่อนำ Matrix มาคูณกับ Vector
1. ผลลัพธ์คือ vector
2.  matrix ต้องมีจำนวน column vector เท่ากับจำนวน element ใน vector ตัวคูณ

เช่น
[123456]×[223]=2[14]+2[25]+3[36]
=[28]+[410]+[918]
=[2+4+98+10+18]
=[1536]


Identity Matrix คือ Matrix ที่มีลักษณะเฉพาะตัวคือ
1. เป็น Square Matrix คือมีจำนวน row = column
2. ค่าของ element ในตำแหน่ง ij เมื่อ i =j  มีค่าเป็น 1  และมีค่าเป็น 0 เมื่อ ij
 I=[1001],I=[100010001],...

Inverse Matrix
จำนวนจริงทุกจำนวนยกเว้น 0 จะมี inverse ของตัวเอง Inverse ของตัวเลขใดคือตัวเลขที่คูณตัวเองแล้วได้ 1 ซึ่งเป็น identity ของจำนวนจริง ในระบบ Matrix ก็เช่นเดียวกัน Inverse ของ Matrix ใด ๆ คือ  Matrix ที่คูณตัวเองแล้วได้ Identity Matrix แต่ Identity Matrix ต้องเป็น Square Matrix ดังนั้นไม่ใช่ทุก Matrix จะมี Inverse Matrix
ถ้า M เป็น Matrix แล้ว Inverse ของ M เขียนแทนด้วย M1 และ M×M1=I




Transpose Matrix
ถ้า  A เป็น matrix ขนาด m x n แล้ว transpose  ของ A เขียนแทนด้วย AT เป็น matrix ที่มีขนาด  n x m  หรือมองว่าการ transpose คือการเปลี่ยน column vector ไปเป็น row vector ของ matrix A นั่นเอง
aji=aij,i{1,2,3,..,m}j{1,2,3,..,n}
เมื่อ  ajiAT และ aijA
เช่น
A=[123456],AT=[135246]
A=[123456],AT=[142536]

คุณสมบัติที่ควรทราบ
1. Not Commutative  : 
ถ้า M และ N เป็น Matrix แล้ว M×NN×M

2. Associative : 
ถ้า M , N  และ O เป็น Matrix แล้ว (M×N)×O=M×(N×O)

3. Distributive : 
ถ้า M , N  และ O เป็น Matrix แล้ว (M+N)×O=(M+O)×(N+O)

4. Identity :
ถ้า M เป็น Matrix และ I เป็น Identity Matrix แล้ว M×I=I×M=M

ความคิดเห็น