矩阵转置

机器学习_基础数学

☆樱花仙子☆ 提交于 2020-01-05 22:06:58
机器学习中所需要用到的数学知识: 微积分  线性代数  概率论  最优化方法 1.导数 求导公式 (一元)左导数与右导数都存在且相等,此处的导数才存在。 基本函数求导: 两个重要极限:   单调有界的序列必定收敛   夹逼定理 导数四则运算: 复合函数求导: 高阶导数: 导数与函数单调性的关系: :函数在此点单调增 :函数在此点单调减 极值定理: :(驻点)函数在此点是极值点,可能是极大值(二阶导小于零),也可能是极小值(二阶导大于零)可能是拐点(二阶导等于零) 拐点是凹函数与凸函数的交替点。 导数与函数凹凸性的关系: 凸函数:函数内任意两点的连线,大于两点间的任一点的函数值。 凹函数:函数内任意两点的连线,小于两点间的任一点的函数值。 二阶导大于零,是凸函数。 二阶导小于零,是凹函数。 2.一元函数泰勒展开 3.向量 向量与其运算: 向量分为行向量和列向量。 转置:行向量转置变为列向量,列向量转置变为行向量。 加法:对应位置分量相加 减法:对应位置分量相减 数乘:数与每个分量分别相乘 内积:两个向量的对应分量相乘再相加,两个向量转换为一个标量 a=(a1,a2,...,an),b=(b1,b2,...,bn)-------->a与b内积=a1b1+a2b2+...+anbn 向量的范数 L-P:L的P范数: ,P一般取整数。 L-1范数: L-2范数: 3.矩阵 矩阵与其运算

shader_线性代数复习提纲

╄→гoц情女王★ 提交于 2020-01-05 22:06:42
MIT线代教程 http://open.163.com/movie/2010/11/7/3/M6V0BQC4M_M6V29E773.html 《转载》 《线性代数》复习提纲 第一部分:基本要求(计算方面) 四阶行列式的计算; N阶特殊行列式的计算(如有行和、列和相等); 矩阵的运算(包括加、减、数乘、乘法、转置、逆等的混合运算); 求矩阵的秩、逆(两种方法);解矩阵方程; 含参数的线性方程组解的情况的讨论; 齐次、非齐次线性方程组的求解(包括唯一、无穷多解); 讨论一个向量能否用和向量组线性表示; 讨论或证明向量组的相关性; 求向量组的极大无关组,并将多余向量用极大无关组线性表示; 将无关组正交化、单位化; 求方阵的特征值和特征向量; 讨论方阵能否对角化,如能,要能写出相似变换的矩阵及对角阵; 通过正交相似变换(正交矩阵)将对称矩阵对角化; 写出二次型的矩阵,并将二次型标准化,写出变换矩阵; 判定二次型或对称矩阵的正定性。 第二部分:基本知识 一、行列式 1.行列式的定义 用n^2个元素aij组成的记号称为n阶行列式。  (1)它表示所有可能的取自不同行不同列的n个元素乘积的代数和;  (2)展开式共有n!项,其中符号正负各半; 2.行列式的计算 一阶|α|=α行列式,二、三阶行列式有对角线法则; N阶(n>=3)行列式的计算:降阶法  定理:n阶行列式的值等于它的任意一行(列

python---numpy

假如想象 提交于 2020-01-03 02:26:57
一 概述   NumPy 是一个 Python 包。 它代表 “Numeric Python”。 它是一个由多维数组对象和用于处理数组的例程集合组成的库。Numeric,即 NumPy 的前身,是由 Jim Hugunin 开发的。 他也开发了另一个包 Numarray ,它拥有一些额外的功能。 2005年,Travis Oliphant 通过将 Numarray 的功能集成到 Numeric 包中来创建 NumPy 包。 这个开源项目有很多贡献者。 NumPy是 高性能科学计算和数据分析 的基础包。部分功能如下: ndarray, 具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组。 用于对整组数据进行快速运算的标准数学函数(无需编写循环)。 用于读写磁盘数据的工具以及用于操作内存映射文件的工具。 线性代数、随机数生成以及傅里叶变换功能。 用于集成C、C++、Fortran等语言编写的代码的工具。 二 创建矩阵   NumPy 中定义的最重要的对象是称为 ndarray 的 N 维数组类型。 它描述相同类型的元素集合。 可以使用基于零的索引访问集合中的项目。 ndarray 中的每个元素在内存中使用相同大小的块。 ndarray 中的每个元素是数据类型对象的对象(称为 dtype )。从 ndarray 对象提取的任何元素(通过切片)由一个数组标量类型的 Python

numpy 常用方法2

[亡魂溺海] 提交于 2020-01-03 02:26:42
Python之Numpy基础 一个栗子 >>> import numpy as np >>> a = np.arange(15).reshape(3, 5) >>> a array([[ 0, 1, 2, 3, 4], [ 5, 6, 7, 8, 9], [10, 11, 12, 13, 14]]) >>> a.shape (3, 5) >>> a.ndim # 数组轴的个数,在python的世界中,轴的个数被称作秩 2 >>> a.dtype.name 'int64' >>> a.itemsize # 数组中每个元素的字节大小。 8 >>> a.size 15 >>> type(a) <type 'numpy.ndarray'> >>> b = np.array([6, 7, 8]) >>> b array([6, 7, 8]) >>> type(b) <type 'numpy.ndarray'> 创建矩阵 对于Python中的numpy模块,一般用其提供的ndarray对象。 创建一个ndarray对象很简单,只要将一个list作为参数即可。 例如: >>> import numpy as np #创建一维的narray对象 >>> a = np.array([2,3,4]) >>> a array([2, 3, 4]) >>> a.dtype dtype('int64') #

numpy库常用基本操作

此生再无相见时 提交于 2020-01-03 02:26:23
NumPy数组的维数称为秩(rank),一维数组的秩为1,二维数组的秩为2,以此类推。在NumPy中,每一个线性的数组称为是一个轴(axes),秩其实是描述轴的数量。比如说,二维数组相当于是一个一维数组,而这个一维数组中每个元素又是一个一维数组。所以这个一维数组就是NumPy中的轴(axes),而轴的数量——秩,就是数组的维数。 1、创建矩阵 Numpy库中的矩阵模块为ndarray对象,有很多属性:T,data, dtype,flags,flat,imag,real,size, itemsize,nbytes,ndim,shape,strides,ctypes,base等等。 1.1采用ndarray对象 import numpy as np #引入numpy库 #创建一维的narray对象 a = np.array([1,2,3,4,5]) #创建二维的narray对象 a2 = np.array([[1,2,3,4,5],[6,7,8,9,10]]) #创建多维对象以其类推 1.2通过函数创建矩阵 1.2.1 arange 1 import numpy as np 2 3 a = np.arange(10) # 默认从0开始到10(不包括10),步长为1 4 print(a) # 返回 [0 1 2 3 4 5 6 7 8 9] 5 6 a1 = np.arange(5,10

numpy模块介绍

回眸只為那壹抹淺笑 提交于 2020-01-03 02:25:26
import numpy as np np.array([1,2,3]) array([1, 2, 3]) np.array([[1,2,3],[4,5,6]]) array([[1, 2, 3], [4, 5, 6]]) arr = np.array([[1,2,3],[4,5,6],[7,8,9]]) arr array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) 把它给看成一个矩阵,或者看成一个ndarray数组的话,我们去获取他的形状. arr = np.array([[1,2,3],[4,5,6],[7,8,9],[10,11,12]]) arr.shape (4, 3) arr.shape[0] print(arr.shape[0]) 20 arr.shape[1] 3 切割矩阵 arr = np.array([1,2,3]) arr arr[:] array([1, 2, 3]) arr = np.array([[1,2,3],[4,5,6],[7,8,9],[10,11,12]]) arr array([[ 1, 2, 3], [ 4, 5, 6], [ 7, 8, 9], [10, 11, 12]]) arr[:,:] array([[ 1, 2, 3], [ 4, 5, 6], [ 7, 8, 9], [10, 11, 12]])

4.A=LU的矩阵分解(消元法的另一种求解方式)

烈酒焚心 提交于 2020-01-01 01:10:48
一.了解A=LU 其实简单的说A=LU是高斯消元法的另一种求解形式。 从上一节中,我们知道高斯消元法的形式主要是 EA=U。 其中 E 我们称其为消元矩阵。通过 进行变换,其中 。通过上边的变换,我们可以得到 A=LU。 在这里 L 就是英文单词lower,代表着下三角; U 的英文单词就是upper代表着上三角。 举个例子:2X2的例子 E x A = U 通过变换得到: A = L x U 我们还可以通过进一步的分解U,来进行LDU分解,把主元提出来: A = L x D x U 其中 D 是英文单词(diagonal)。表示对角矩阵的意思。通过LDU的分解产生的作用是很多的,接下来的博客会介绍。 二. 为什么要进行LU分解消元法 1.方便计算 举个3x3矩阵的例子。 对于一个矩阵A,假如需要通过三次消元才能得到U,这三次消元分别是 。所以 。 例如: 则 转换成 A=LU 的形式: . 通过上边我们发现通过普通消元法得到的初等矩阵在第三行有个数10,这是因为把第一行的-2倍加到了第二行,新的第二行的-5倍加到了第三行,所以第三行的10倍第一行加到第三行。这个10的出现大大降低了我们消元矩阵的可读性,特别是对于大型矩阵来说,也加大了他的存储和处理。而我们观察 L, 他首先是个下三角形的对角矩阵,对角全是1,同时他的其他元素刚好是我们要对各行处理的倍数

逻辑回归模型

不打扰是莪最后的温柔 提交于 2019-12-30 12:02:19
逻辑回归模型 - zgw21cn - 博客园 逻辑回归模型 1. 逻辑 回 归 模型 1.1逻辑回归模型 考虑具有p个独立变量的向量 ,设条件概率 为根据观测量相对于某事件发生的概率。逻辑回归模型可表示为 (1.1) 上式右侧形式的函数称为称为逻辑函数。下图给出其函数图象形式。 其中 。如果含有名义变量,则将其变为dummy变量。一个具有k个取值的名义变量,将变为k-1个dummy变量。这样,有 (1.2) 定义不发生事件的条件概率为 (1.3) 那么,事件发生与事件不发生的概率之比为 (1.4) 这个比值称为事件的发生比(the odds of experiencing an event),简称为odds。因为0<p<1,故odds>0。对odds取对数,即得到线性函数, (1.5) 1.2极大似然函数 假设有n个观测样本,观测值分别为 设 为给定条件下得到 的概率。在同样条件下得到 的条件概率为 。于是,得到一个观测值的概率为 (1.6) 因为各项观测独立,所以它们的联合分布可以表示为各边际分布的乘积。 (1.7) 上式称为n个观测的似然函数。我们的目标是能够求出使这一似然函数的值最大的参数估计。于是,最大似然估计的关键就是求出参数 ,使上式取得最大值。 对上述函数求对数 (1.8) 上式称为对数似然函数。为了估计能使 取得最大的参数 的值。 对此函数求导,得到p+1个似然方程

R语言矩阵运算

主宰稳场 提交于 2019-12-30 02:45:36
R语言矩阵运算 主要包括以下内容: 创建矩阵向量;矩阵加减,乘积;矩阵的逆;行列式的值;特征值与特征向量;QR分解;奇异值分解;广义逆;backsolve与fowardsolve函数;取矩阵的上下三角元素;向量化算子等. 1 创建一个向量 在R中可以用函数 c() 来创建一个向量,例如: > x=c(1,2,3,4) > x [1] 1 2 3 4 2 创建一个矩阵 在R中可以用函数 matrix() 来创建一个矩阵,应用该函数时需要输入必要的参数值。 > args(matrix) function (data = NA, nrow = 1, ncol = 1, byrow = FALSE, dimnames = NULL) data 项为必要的矩阵元素, nrow 为行数, ncol 为列数,注意 nrow 与 ncol 的乘积应为矩阵元素个数, byrow 项控制排列元素时是否按行进行, dimnames 给定行和列的名称。例如: > matrix(1:12,nrow=3,ncol=4) [,1] [,2] [,3] [,4] [1,] 1 4 7 10 [2,] 2 5 8 11 [3,] 3 6 9 12 > matrix(1:12,nrow=4,ncol=3) [,1] [,2] [,3] [1,] 1 5 9 [2,] 2 6 10 [3,] 3 7 11 [4,] 4

矩阵论

自古美人都是妖i 提交于 2019-12-28 15:47:50
矩阵论 矩阵论札记. 梁昌洪 . 2014学习概要 文章目录 矩阵论 第1部分 线性基础 第2部分 矩阵代数 第3部分 线性方程组 第4部分 矩阵空间 第5部分 本征问题与二次型 第6部分 矩阵变换 第7部分 矩阵应用 第1部分 线性基础 矩阵3大特点 : 矩阵是线性的 矩阵是离散的 矩阵是代数和几何交融的 行列式 n n n 阶 行列式 D D D 的值为 D = ∣ a 11 a 12 ⋯ a 1 n a 21 a 22 ⋯ a 2 n ⋮ ⋮ ⋮ a n 1 a n 2 ⋯ a n n ∣ = ∑ t = 0 n ! ( − 1 ) t a 1 p 1 a 2 p 2 ⋯ a n p n D = \left| \begin{matrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & &\vdots \\ a_{n1} & a_{n2} & \cdots &a_{nn} \end{matrix} \right | = \sum_{t=0}^{n!} (-1)^ta_{1p_1}a_{2p_2}\cdots a_{np_n} D = ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ​ a 1 1 ​ a 2 1 ​ ⋮ a n 1 ​ ​ a 1 2 ​