Andrew Ng机器学习算法入门((五):矩阵和向量
矩阵定义
数学上,一个m×n的矩阵是一个由m行n列元素排列成的矩形阵列

使用Aij来获取矩阵中第i行j列的数据

向量的定义
向量就是n行1列的特殊矩阵

由于向量仅仅只有1行,那么通过一个变量i来指定获取第i行的数据,很容易理解。

矩阵运算
矩阵加法
矩阵的加法,要求两个矩阵或者是多个矩阵,要求所有的矩阵的列和行都是一样的,例如都是3X2的矩阵,或者是5x8矩阵。矩阵的加法就是将对应位置的数值相加即可。

矩阵的乘法
矩阵的乘法,就是使用数字和矩阵相乘,矩阵的乘法对矩阵没有要求。运算法则就是将乘数与矩阵中每一个数字相乘即可。

矩阵向量间的运算
一个m行n列的矩阵和n行向量相乘,最后得到就是一个m行的向量。运算法则就是矩阵中的每一行的数据与向量中的数据相乘,示例如下:

具体的例子为:

矩阵间的运算
一个m行n列的矩阵与一个n行q列的矩阵相乘,最后得到的就是一个m行q列的矩阵。

具体的例子为:

在前面的计算房屋面积与房价之间的关系的线性关系时,如果存在多对theta-0、theta-1,就可以转换为向量的运算。

矩阵乘法的性质
矩阵的乘法不满足交换律

矩阵的乘法满足结合律

单位矩阵
单位矩阵, n阶单位矩阵,是一个nxn的方形矩阵,其主对角线元素为1,其余元素为0。单位矩阵以I_n表示。在某些情况下,单位矩阵可以简写为I。

需要注意的是,如果I为单位矩阵,则有IXA=AXI,上图已经说明了这个情况。
矩阵的转置和逆运算
矩阵的逆,对于一个m行n列的矩阵A,如果存在A-1,满足A*A-1=I(I是单位矩阵),则表示A-1是A的逆。如下

需要注意的是,不是所有的矩阵都存在逆矩阵。例如如果一个矩阵中所有的元素全为0,则不存在逆矩阵,这样的矩阵叫做孤立矩阵。
矩阵的转置,设A为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列元素)。

转置矩阵之前还存在一些性质,

总结
这些知识都是大学里面线性代数最简单的知识,还是比较简单。
为了能到远方,脚下的每一步都不能少
Andrew Ng机器学习算法入门((五):矩阵和向量的更多相关文章
- Andrew Ng机器学习算法入门(一):简介
简介 最近在参加一个利用机器学习来解决安全问题的算法比赛,但是对机器学习的算法一直不了解,所以先了解一下机器学习相关的算法. Andrew Ng就是前段时间从百度离职的吴恩达.关于吴恩达是谁,相信程序 ...
- Andrew Ng机器学习算法入门(二):机器学习分类
机器学习的定义 Arthur Samuel给出的定义,Field of Study that gives computers the ability to learn without being ex ...
- Andrew Ng机器学习算法入门(九):逻辑回归
逻辑回归 先前所讲的线性回归主要是一个预测问题,根据已知的数据去预测接下来的情况.线性回归中的房价的例子就很好地说明了这个问题. 然后在现实世界中,很多问题不是预测问题而是一个分类问题. 如邮件是否为 ...
- Andrew Ng机器学习算法入门(三):线性回归算法
线性回归 线性回归,就是能够用一个直线较为精确地描述数据之间的关系.这样当出现新的数据的时候,就能够预测出一个简单的值. 线性回归中最常见的就是房价的问题.一直存在很多房屋面积和房价的数据,如下图所示 ...
- Andrew Ng机器学习算法入门(十):过拟合问题解决方法
在使用机器学习对训练数据进行学习和分类的时候,会出现欠拟合和过拟合的问题.那么什么是欠拟合和过拟合问题呢?
- Andrew Ng机器学习算法入门(八):正规方程
正规方程 在先学习正规方程之前,先来复习一下之前学过的常规的回归方程的解法. 假设存在如果的代价函数, ,解法也十分的简答. 但是有时候遇到的情况或许会变得相当的复杂. 的数,如果是按照常规的方式进行 ...
- Andrew Ng机器学习算法入门((七):特征选择和多项式回归
特征选择 还是回归到房价的问题.在最开始的问题中,我们假设房价与房屋面积有关,那么最开始对房价预测的时候,回归方程可能如下所示: 其中frontage表示的房子的长,depth表示的是房子的宽. 但长 ...
- Andrew Ng机器学习算法入门((六):多变量线性回归方程求解
多变量线性回归 之前讨论的都是单变量的情况.例如房价与房屋面积之前的关系,但是实际上,房价除了房屋面积之外,还要房间数,楼层等因素相关.那么此时就变成了一个多变量线性回归的问题.在实际问题中,多变量的 ...
- Andrew Ng机器学习算法入门(四):阶梯下降算法
梯度降级算法简介 之前如果需要求出最佳的线性回归模型,就需要求出代价函数的最小值.在上一篇文章中,求解的问题比较简单,只有一个简单的参数.梯度降级算法就可以用来求出代价函数最小值. 梯度降级算法的在维 ...
随机推荐
- 分布式session实现方式
一.背景 在搭建完集群环境后,不得不考虑的一个问题就是用户访问产生的session如何处理. 如果不做任何处理的话,用户将出现频繁登录的现象,比如集群中存在A.B两台服务器,用户在第一次访问网站时,N ...
- Redis之数据类型和持久化及高可用
数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). String(字符串) String是r ...
- 2020-2021 ACM-ICPC, Asia Seoul Regional Contest
C. Dessert Café: 题意: 给你一个N个节点的树,树上有m个房子,问树上有几个节点是在两个房子之间的. 思路:我们发现只要是该节点的子树里包括了所有节点或者只有一个节点,那么这个结点肯定 ...
- 攻防世界 reverse crazy
crazy 百越杯2018 查看main函数: int __cdecl main(int argc, const char **argv, const char **envp) { __int64 v ...
- Spring工程搭建
创建Maven项目 1.下载Maven资源包 http://maven.apache.org/download.cgi 2.打开IDEA创建Maven项目 在新建项目窗口选择Maven项目:检查当前S ...
- SFDC Trigger里before和after的区别
最近项目开始用Trigger来进行Validation Check.也知道可以通过配置Object里的Validation Rule来进行Check,但是项目想如果有Trigger里就都在Trigge ...
- javascript常用方法封装
1,获取链接上的参数 getQueryString = (name, search) => { search = search || window.location.search.substr( ...
- docker部署nodejs项目应用
之前笔者弄了一套nestjs项目放在自己服务器上,并用pm2管理进程. 现在要把pm2停止,尝试一下用docker容器,那么首先要安装docker 一.安装docker 由于笔者服务器的系统是cent ...
- 轻松理解 Spring AOP
目录 Spring AOP 简介 Spring AOP 的基本概念 面向切面编程 AOP 的目的 AOP 术语和流程 术语 流程 五大通知执行顺序 例子 图例 实际的代码 使用 Spring AOP ...
- Vue CLI 是如何实现的 -- 终端命令行工具篇
Vue CLI 是一个基于 Vue.js 进行快速开发的完整系统,提供了终端命令行工具.零配置脚手架.插件体系.图形化管理界面等.本文暂且只分析项目初始化部分,也就是终端命令行工具的实现. 0. 用法 ...