【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 3_Linear Algebra Review
Lecture3 Linear Algebra Review 线性代数回顾
3.1 矩阵和向量
3.2 加法和标量乘法
3.3 矩阵向量乘法
3.4 矩阵乘法
3.5 矩阵乘法的性质
3.6 逆、转置
3.1 矩阵和向量
参考视频: 3 - 1 - Matrices and Vectors (9 min).mkv
3.2 加法和标量乘法
参考视频: 3 - 2 - Addition and Scalar Multiplication (7 min).mkv
3.3 矩阵向量乘法
参考视频: 3 - 3 - Matrix Vector Multiplication (14 min).mkv
3.4 矩阵乘法
参考视频: 3 - 4 - Matrix Matrix Multiplication (11 min).mkv
3.5 矩阵乘法的性质
参考视频: 3 - 5 - Matrix Multiplication Properties (9 min).mkv
矩阵的乘法有以下规律:
1、不符合交换律 commutative A × B ≠ B× A 【但是对于单位矩阵,有AI = IA = A】
2、符合组合律 associative A ×(B× C) =(A × B)× C
3.6 逆、转置
3.6.1 矩阵的逆 Inverse Matrix
矩阵的逆 A-1 Inverse Matrix。如矩阵 A 是一个 m× m 矩阵(方阵), 如果有逆矩阵A-1 ,则:
I 称为 单位矩阵 Identity Matrix
没有逆矩阵的矩阵称为 奇异矩阵singular matrix 或者 退化矩阵 degenerate matrix。
规则:
1、只有方阵有逆矩阵。
2、零矩阵没有逆矩阵 (还有其他一些矩阵没有逆矩阵,可以想成是一些特别接近零矩阵的矩阵)
3.6.2 使用 Octave 计算矩阵的逆
计算矩阵的逆通常使用MATLAB 或者 Octave,打开Octave的bash界面。
以下是在Octave里计算逆矩阵的过程:
Please contribute if you find this software useful.
For more information, visit https://www.octave.org/get-involved.html Read https://www.octave.org/bugs.html to learn how to submit bug reports.
For information about changes from previous versions, type 'news'. octave:> A = [ ; ] // 输入一个矩阵 A
A = octave:> pinv(A) // 计算其逆矩阵 InverseOfA
ans = 0.400000 -0.100000
-0.050000 0.075000 octave:> inverseOfA = pinv(A)
inverseOfA = 0.400000 -0.100000
-0.050000 0.075000 octave:> A * pinv(A)
ans = 1.0000e+00 5.5511e-17 // 由于计算精度的问题, 四舍五入导致次对角线元素不是0,而是10的-17方、10的-16方,可以近似于0
-2.2204e-16 1.0000e+00 octave:> A * inverseOfA // 计算 A * InverseOfA
ans = 1.0000e+00 5.5511e-17
-2.2204e-16 1.0000e+00 octave:> inverseOfA * A // 计算 InverseOfA * A
ans = 1.00000 -0.00000
0.00000 1.00000 octave:>
3.6.3 矩阵的转置
矩阵转置 Transpose Matrix ,符号为AT 。
定义:设 A 为 m× n 阶矩阵(即 m 行 n 列),第 i 行 j 列的元素是 a(i,j),即:A = a(i,j)。定义 A 的转置为这样一个 n× m 阶矩阵 B,满足 B=a(j,i),即 b (i,j)=a (j,i)(B 的第 i 行第 j 列元素是 A 的第 j 行第 i 列元素),记 AT=B。 (有些书记为 A'=B)
直观来看,将 A 的所有元素绕着一条从第 1 行第 1 列元素出发的右下方 45 度的射线作镜面反转,即得到 A 的转置。
矩阵的转置基本性质:
(A ± B) T = AT ± BT
(A × B) T= BT × AT
(AT) T = A
(KA) T = KAT
MATLAB 和 Octave 中矩阵转置:直接打一撇, B = A'。
octave:> B = A'
B =
术语
up to the numerical precision 由于计算精度的问题
essentially 根本上
ten to the minus seventeen 10的-17次方
round off 四舍五入
optimal matrices 最优矩阵
【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 3_Linear Algebra Review的更多相关文章
- 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 15—Anomaly Detection异常检测
Lecture 15 Anomaly Detection 异常检测 15.1 异常检测问题的动机 Problem Motivation 异常检测(Anomaly detection)问题是机器学习算法 ...
- 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 16—Recommender Systems 推荐系统
Lecture 16 Recommender Systems 推荐系统 16.1 问题形式化 Problem Formulation 在机器学习领域,对于一些问题存在一些算法, 能试图自动地替你学习到 ...
- 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 14—Dimensionality Reduction 降维
Lecture 14 Dimensionality Reduction 降维 14.1 降维的动机一:数据压缩 Data Compression 现在讨论第二种无监督学习问题:降维. 降维的一个作用是 ...
- 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 13—Clustering 聚类
Lecture 13 聚类 Clustering 13.1 无监督学习简介 Unsupervised Learning Introduction 现在开始学习第一个无监督学习算法:聚类.我们的数据没 ...
- 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 12—Support Vector Machines 支持向量机
Lecture 12 支持向量机 Support Vector Machines 12.1 优化目标 Optimization Objective 支持向量机(Support Vector Machi ...
- 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 11—Machine Learning System Design 机器学习系统设计
Lecture 11—Machine Learning System Design 11.1 垃圾邮件分类 本章中用一个实际例子: 垃圾邮件Spam的分类 来描述机器学习系统设计方法.首先来看两封邮件 ...
- 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 10—Advice for applying machine learning 机器学习应用建议
Lecture 10—Advice for applying machine learning 10.1 如何调试一个机器学习算法? 有多种方案: 1.获得更多训练数据:2.尝试更少特征:3.尝试更多 ...
- 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 1_Introduction and Basic Concepts 介绍和基本概念
目录 1.1 欢迎1.2 机器学习是什么 1.2.1 机器学习定义 1.2.2 机器学习算法 - Supervised learning 监督学习 - Unsupervised learning 无 ...
- 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 18—Photo OCR 应用实例:图片文字识别
Lecture 18—Photo OCR 应用实例:图片文字识别 18.1 问题描述和流程图 Problem Description and Pipeline 图像文字识别需要如下步骤: 1.文字侦测 ...
随机推荐
- Linux系统下的shutdown命令用于安全的关闭/重启计算机
Linux系统下的shutdown命令用于安全的关闭/重启计算机,它不仅可以方便的实现定时关机,还可以由用户决定关机时的相关参数.在执行shutdown命令时,系统会给每个终端(用户)发送一条屏显,提 ...
- java事务(二)——本地事务
本地事务 事务类型 事务可以分为本地事务和分布式事务两种类型.这两种事务类型是根据访问并更新的数据资源的多少来进行区分的.本地事务是在单个数据源上进行数据的访问和更新,而分布式事务是跨越多个数据源来进 ...
- ORM 模型层
一个模型就是一个单独的,确定的数据的信息源,包含了数据的字段和操作方法.通常,每个模型映射为一张数据库中的表 基本原则: 每个模型在Django中的存在形式为一个python类 每个模型都是djang ...
- [css小技巧]input去除边框问题
border:none;是不够的 (1)在谷歌浏览器添加 outline: none;去除点击后产生的边框; (2)IE7下border: none;还会有边框存在,改用border: 0;即可,同时 ...
- python笔记-5(内置函数)
一.内置函数 1.abs()--取绝对值函数 print(abs(-0.11)) x=-0.01 y=0.11 print(abs(x),abs(y)) ----------------------- ...
- Intent详解以及实例
Android中统一用Intent来封装程序的“调用意图“.不管程序想启动一个Activity,一个Servicer,还是一个BroadcastReceiver.使用Intent提供了一个统一的编程模 ...
- UIImage+PYJAnimatedGIF
UIImage+PYJAnimatedGIF.h: #import <UIKit/UIKit.h> @interface UIImage (PYJAnimatedGIF) + (UIIma ...
- 监听Documents文件夹内文件发生改变
// 当Documents内文件发生改变时,启动计时器,每秒计算一次大小,当大小不发生改变时说明传输完毕,就开始刷新. @property (nonatomic, strong) NSTimer *t ...
- LOJ2823 「BalticOI 2014 Day 1」三个朋友
题意 给定一个字符串 S,先将字符串 S 复制一次(变成双倍快乐),得到字符串 T,然后在 T 中插入一个字符,得到字符串 U. 给出字符串 U,重新构造出字符串 S. 所有字符串只包含大写英文字母. ...
- C#处理不规范的时间字符串
这样的一个情景,数据中 出生日期 是存的时间方便计算,但是前台来的数据五花八门 20170101 2017.01 2017-01-01 2017年01月1日 由于特殊原因现在确实没办法规范用户输入 ...