【机器学习|数学基础】Mathematics for Machine Learning系列之线性代数(1):二阶与三阶行列式、全排列及其逆序数
@
前言
Hello!小伙伴!
非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出~
自我介绍 ଘ(੭ˊᵕˋ)੭
昵称:海轰
标签:程序猿|C++选手|学生
简介:因C语言结识编程,随后转入计算机专业,有幸拿过一些国奖、省奖...已保研。目前正在学习C++/Linux/Python
学习经验:扎实基础 + 多做笔记 + 多敲代码 + 多思考 + 学好英语!
机器学习小白阶段
文章仅作为自己的学习笔记 用于知识体系建立以及复习
知其然 知其所以然!
二阶与三阶行列式
二阶行列式
记作
\(\begin{vmatrix}
a_{11} & a_{12}\\
a_{21} & a_{22}
\end{vmatrix}=a_{11}*a_{22}-a_{12}*a_{21}\)
定义
主对角线上的两元素之积减去副对角线上两元素之积所得的差,即:\(a_{11}*a_{22}-a_{12}*a_{21}\)
注:行列式本质是一个数值,比如\(\begin{vmatrix}
1 & 2\\
3 &4
\end{vmatrix}\)代表的就是数值(-2=1×4-2×3)
举例
\(\begin{vmatrix}
3 & -2\\
2 & 1
\end{vmatrix} = ?\)
答:
\(\begin{vmatrix}
3 & -2\\
2 & 1
\end{vmatrix}=3*1-(-2)*2=3-(-4)=7\)
三阶行列式
记作
\(\begin{vmatrix}
a_{11} & a_{12} & a_{13}\\
a_{21} & a_{22} & a_{23}\\
a_{31} & a_{32} & a_{33}\\
\end{vmatrix}=a_{11}*a_{22}*a_{33}+a_{12}*a_{23}*a_{31}+a_{13}*a_{21}*a_{32}-a_{11}*a_{23}*a_{32}-a_{12}*a_{21}*a_{33}-a_{13}*a_{22}*a_{31}\)
举例
\(\begin{vmatrix}
1 & 2 & -4\\
-2 & 2 & 1\\
-3 & 4 & -2\\
\end{vmatrix} = ?\)
答:
\(\begin{vmatrix}
1 & 2 & -4\\
-2 & 2 & 1\\
-3 & 4 & -2
\end{vmatrix}=1*2*(-2)+2*1*(-3)+(-4)*(-2)*4-1*1*4-2*(-2)*(-2)-(-4)*2*(-3)=-14\)
全排列及其逆序数
全排列
定义
从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。
当m=n时所有的排列情况叫全排列。
公式
全排列数f(n)=n!(定义0!=1)
举例
用1、2、3三个数字,可以组成多少个没有重复数字的三位数 ?
答:3×2×1=6种。
假设先放百位,有三种可能,再放十位,有两种可能,最后放个位,只有一种可能了。
故为3×2×1=6种
从上面例子可以发现:
当有n个不同数字进行排列时
第一个位置有(n)选择,第二个位置有(n-1)种选择...第n个位置有1种选择,一共有n(n-1)(n-2)...2*1种可能,也就是n!种排列方式。
我们用\(P_{n}\)表示n种不同元素的所有排列的种数,则
\(P_n=n*(n-1)*(n-2)*...*3*2*1=n!\)
逆序数
概念
- 标准次序:n个不同的数字,我们可以规定从小到大为标准次序
- 逆序:与标准排列次序相反(比如两个元素排序是从大到小,与标准次序相反,则视为逆序)
- 排列的逆序数:一个排列中所有逆序的总数
计算排列的逆序数的方法
n个元素(依次为1,2,3...n-1,n),规定从小到大为标准次序
设\(p_1p_2...p_n\)为这n个元素的一个排列,对于元素\(p_i\)(i=1,2...,n),如果比\(p_i\)大的且排在\(p_i\)前面的元素有\(t_i\)个,那么就说\(p_i\)这个元素的逆序数是\(t_i\)。
全体元素的逆序数总和为t,那么
\(t=t_2+t_2+...+t_n=\sum_{t=1}^nt_i\)
即是这个排列的逆序数。
举例
求排列32514的逆序数
答:3在第一位,前面没有数,逆序数为0
2在第二位,前面的数中,有一个数3比2大,所以逆序数为1
5的前面没有比5的数,逆序数为0
1的前面比1大的数有:3、2、5,所以逆序数为3
4的前面比4大的只有5,所以逆序数为1
综上,该排列的逆序数t=0+1+0+3+1=5
补充概念
- 齐排列:逆序数为奇数的排列
- 偶排列:逆序数为偶数的排列
结语
文章仅作为学习笔记,记录从0到1的一个过程
希望对您有所帮助,如有错误欢迎小伙伴指正~
我是 海轰ଘ(੭ˊᵕˋ)੭
如果您觉得写得可以的话,请点个赞吧
谢谢支持 ️

【机器学习|数学基础】Mathematics for Machine Learning系列之线性代数(1):二阶与三阶行列式、全排列及其逆序数的更多相关文章
- 机器学习系统设计(Building Machine Learning Systems with Python)- Willi Richert Luis Pedro Coelho
机器学习系统设计(Building Machine Learning Systems with Python)- Willi Richert Luis Pedro Coelho 总述 本书是 2014 ...
- How do I learn mathematics for machine learning?
https://www.quora.com/How-do-I-learn-mathematics-for-machine-learning How do I learn mathematics f ...
- [C5/C6] 机器学习诊断和系统设计(Machine learning Diagnostic and System Desig
机器学习诊断(Machine learning diagnostic) Diagnostic : A test that you can run to gain insight what is / i ...
- 大规模机器学习(Large Scale Machine Learning)
本博客是针对Andrew Ng在Coursera上的machine learning课程的学习笔记. 目录 在大数据集上进行学习(Learning with Large Data Sets) 随机梯度 ...
- 吴恩达《深度学习》-课后测验-第三门课 结构化机器学习项目(Structuring Machine Learning Projects)-Week1 Bird recognition in the city of Peacetopia (case study)( 和平之城中的鸟类识别(案例研究))
Week1 Bird recognition in the city of Peacetopia (case study)( 和平之城中的鸟类识别(案例研究)) 1.Problem Statement ...
- Machine Learning系列--CRF条件随机场总结
根据<统计学习方法>一书中的描述,条件随机场(conditional random field, CRF)是给定一组输入随机变量条件下另一组输出随机变量的条件概率分布模型,其特点是假设输出 ...
- Machine Learning系列--L0、L1、L2范数
今天我们聊聊机器学习中出现的非常频繁的问题:过拟合与规则化.我们先简单的来理解下常用的L0.L1.L2和核范数规则化.最后聊下规则化项参数的选择问题.这里因为篇幅比较庞大,为了不吓到大家,我将这个五个 ...
- 斯坦福第十一课:机器学习系统的设计(Machine Learning System Design)
11.1 首先要做什么 11.2 误差分析 11.3 类偏斜的误差度量 11.4 查全率和查准率之间的权衡 11.5 机器学习的数据 11.1 首先要做什么 在接下来的视频中,我将谈到机器 ...
- Python机器学习介绍(Python Machine Learning 中文版)
Python机器学习 机器学习,如今最令人振奋的计算机领域之一.看看那些大公司,Google.Facebook.Apple.Amazon早已展开了一场关于机器学习的军备竞赛.从手机上的语音助手.垃圾邮 ...
随机推荐
- Java 反射(二)运行时获取类的信息
目录 一.获得类的运行时结构 1. 获得类的名字 2. 获得类的属性 获取属性列表 获取指定属性 3. 获取类的方法 获得类的方法列表 获得指定方法 4. 获得的构造器 获得构造器列表 获得指定构造器 ...
- 2019.06.28 MERGE INTO备忘
--保存主表 MERGE INTO dbo.DeliveryReceiving AS t USING @ReceiveMainDt AS s ON t.Id=s.id WHEN MATCHED THE ...
- Leetcode_丑数问题
1. 263. 丑数 给你一个整数 n ,请你判断 n 是否为 丑数 .如果是,返回 true :否则,返回 false . 丑数 就是只包含质因数 2.3 或 5 的正整数. 示例 1: 输入:n ...
- Python入门:ChainMap 有效管理多个上下文
摘要: Python的ChainMap从collections模块提供用于管理多个词典作为单个的有效工具. 本文分享自华为云社区<从零开始学python | ChainMap 有效管理多个上下文 ...
- Python--构建发布自己的模块
参考博客https://www.cnblogs.com/simple-free/p/8283263.html 1. 新建一个模块(名称自定义),存放要发布的模块代码. 2. 新建一个setup ...
- MySQL-17-MHA高可用技术
环境准备 环境准备 至少准备3台独立的虚拟机数据库实例,建议4台 这里实验只准备3台,需要配置好 基于GTID的主从复制,具体怎么配置可以参看前面的章节 db01 10.0.0.51 主库 db02 ...
- Docker小白到实战之常用命令演示,通俗易懂
前言 上一篇大概认识了Docker,主要是从概念.架构.优点及流程方面进行阐述,并进行安装和体验: 接下来就开始进行实操学习,在演示过程中会针对关键的知识点进行归纳和总结,这里先从常用命令说起,来吧, ...
- CVE-2021-21972 vSphere Client RCE复现,附POC & EXP
漏洞简介 vSphere 是 VMware 推出的虚拟化平台套件,包含 ESXi.vCenter Server 等一系列的软件.其中 vCenter Server 为 ESXi 的控制中心,可从单一控 ...
- 006 PCI总线的桥与配置(一)
在PCI体系结构中,含有两类桥片,一个是HOST主桥,另一个是PCI桥.在每一个PCI设备中(包括PCI桥)都含有一个配置空间.这个配置空间由HOST主桥管理,而PCI桥可以转发来自HOST主桥的配置 ...
- Innodb中怎么查看锁信息
一.前言 上一篇说了下innodb中锁的大概意思, 这篇说说怎么查看加的哪些锁.不然后续出现死锁或者锁等待都不知道为什么. 二.底层基础表信息 在学会如何查看有哪些锁信息时, 需要了解一些基础表信息, ...