机器学习(二)
线性代数知识回顾 coursera 课程 Lecture3
1. 基础概念
1.1 矩阵 Matrix(二维数组)
- 维度dimension = number of rows * number of columns = 行数 * 列数
- 矩阵元素Matrix Element :Aij = i,j entry in the i th row, j th coloum
1.2 向量 Vector:n*1矩阵(数组)
- yi = i th element
- 1- indexed and 0-indexed
- 数学问题一般用1-indexed
- 机器学习问题一般用0-indexed
- 大写字母表示向量,小写字母表示数字
2.运算
2.1 加减法
仅在维度相同时才可相加减
2.2 乘除法
Scalar Multiplication/division:矩阵与实数相乘或相除
Matrix Multiplication:矩阵相乘
预测房价为例:
prediction = DataMatrix * parameters
House sizes: 2104, 1416, 1534, 852
3 competing hypotheses(h):
h(x) = -40 + 0.25x
h(x) = 200 + 0.1x
- h(x) = -150 + 0.4x
构造预测矩阵:
⎡⎣⎢⎢⎢⎢1111210414161534853⎤⎦⎥⎥⎥⎥∗[−400.252000.1−1500.4]=⎡⎣⎢⎢⎢⎢486314344173410342353285692416464191⎤⎦⎥⎥⎥⎥
其中预测函数一的结果即为
⎡⎣⎢⎢⎢⎢1111210414161534853⎤⎦⎥⎥⎥⎥∗[−400.25]=⎡⎣⎢⎢⎢⎢486314344173⎤⎦⎥⎥⎥⎥
2.3 矩阵乘法的性质
矩阵相乘不满足交换率,但矩阵与实数相乘满足交换率
A×B≠B×A满足结合律
单位矩阵 identity matrix :对角线为1
⎡⎣⎢⎢100010001⎤⎦⎥⎥3×3单位矩阵
对于任何矩阵A
A×I1=I2×A=AA:m×n矩阵I1:n×n单位矩阵I2:m×m单位矩阵逆运算inverse和转置运算transpose
inverse
并非所有数都有倒数(0),因此全0矩阵(奇异矩阵)也没有逆矩阵
矩阵逆运算 A是m*m的方阵
A(A−1)=A−1A=1octave求解逆矩阵的代码
>> A = [3 4; 2 16] A = 3 4 2 16 >> inverseOfA = pinv(A) inverseOfA = 0.400000 -0.100000 -0.050000 0.075000 >> A * inverseOfA ans = 1.0000e+00 5.5511e-17 -2.2204e-16 1.0000e+00 >> inverseOfA * A ans = 1.00000 -0.00000 0.00000 1.00000
transpose
- 行列交换(第一行变为第一列,第二行变成第二列…)
- A为mn矩阵,B是nm矩阵,互为转置矩阵,则Bij = Aji