矩阵转置

吴恩达-coursera-机器学习-week2

♀尐吖头ヾ 提交于 2020-03-03 18:30:57
四、多变量线性回归(Linear Regression with Multiple Variables) 4.1 多维特征 4.2 多变量梯度下降 4.3 梯度下降法实践1-特征缩放 4.4 梯度下降法实践2-学习率 4.5 特征和多项式回归 4.6 正规方程 4.7 正规方程及不可逆性(可选) 五、Octave教程(Octave Tutorial) 5.1 基本操作 5.2 移动数据 5.3 计算数据 5.4 绘图数据 5.5 控制语句:for,while,if语句 5.6 向量化 5.7 工作和提交的编程练习 第2周 四、多变量线性回归(Linear Regression with Multiple Variables) 4.1 多维特征 参考视频: 4 - 1 - Multiple Features (8 min).mkv 目前为止,我们探讨了单变量/特征的回归模型,现在我们对房价模型增加更多的特征,例如房间数楼层等,构成一个含有多个变量的模型,模型中的特征为 \(\left( {x_{1}},{x_{1}},...,{x_{n}} \right)\) 。 增添更多特征后,我们引入一系列新的注释: \(n\) 代表特征的数量 \({x^{\left( i \right)}}\) 代表第 \(i\) 个训练实例,是特征矩阵中的第i行,是一个向量(vector)。 比方说,上图的

深度学习知识系列(二) 各种卷积形式

最后都变了- 提交于 2020-03-03 08:01:43
文章目录 一、卷积的本质 二、2D卷积 三、3D卷积 四、转置卷积 五、1x1卷积 六、深度可分离卷积 七、**空洞卷积** 八、图卷积 一、卷积的本质     首先,我们先从数学和图像处理应用的意义上来看一下卷积到底是什么操作。我们先回到数学教科书中来看卷积,在泛函分析中,卷积也叫旋积或者褶积,是一种通过两个函数x(t)和h(t)生成的数学算子。其计算公式如下: 连 续 形 式 : x ( t ) ∗ h ( t ) = ∫ − ∞ ∞ x ( τ ) h ( t − τ ) d t 离 散 形 式 : x ( t ) ∗ h ( t ) = ∑ t = − ∞ ∞ x ( τ ) h ( t − τ ) 连续形式:\ \ \ \ x(t)*h(t) = \int_{-\infty}^{\infty}x(\tau)h(t-\tau)dt \\ 离散形式:\ \ \ \ x(t)*h(t) = \sum_{t=-\infty}^{\infty}x(\tau)h(t-\tau) 连 续 形 式 : x ( t ) ∗ h ( t ) = ∫ − ∞ ∞ ​ x ( τ ) h ( t − τ ) d t 离 散 形 式 : x ( t ) ∗ h ( t ) = t = − ∞ ∑ ∞ ​ x ( τ ) h ( t − τ )     从卷积公式可以看出

Numpy详解

吃可爱长大的小学妹 提交于 2020-03-02 03:48:59
NumPy 简介 Python并没有提供数组功能。虽然列表可以完成基本的数组功能,但它不是真正的数组,而且在数据量比较大时,使用列表的速度会很慢。为此,Numpy提供了真正的数组功能,以及对数据进行快速处理的函数。 NumPy的主要对象是同种元素的多维数组。这是一个所有的元素都是一种类型、通过一个正整数元组索引的元素表格(通常是元素是数字)。在NumPy中维度(dimensions)叫做轴(axes),轴的个数叫做秩(rank)。 例如,在3D空间一个点的坐标 [1, 2, 3] 是一个秩为1的数组,因为它只有一个轴。那个轴长度为3.又例如,在以下例子中,数组的秩为2(它有两个维度).第一个维度长度为2,第二个维度长度为3. [[ 1., 0., 0.], [ 0., 1., 2.]] NumPy的数组类被称作 ndarray 。通常被称作数组。注意numpy.array和标准Python库类array.array并不相同,后者只处理一维数组和提供少量功能。 数据类型 numpy的数据类型有下面的几个 数据类型 描述 bool_ 以字节存储的布尔值(True 或 False) int_ 默认的整数类型(和 C 的 long 一样,是 int64 或者 int32) intc 和 C 的 int 相同(一般为 int64 或 int32) intp 用于下标的整数(和 C 的

IplImage 、cvMat 、Mat三者比较

半世苍凉 提交于 2020-03-02 03:42:10
IplImage, CvMat, Mat 的关系 opencv中常见的与图像操作有关的数据容器有Mat,cvMat和IplImage,这三种类型都可以代表和显示图像,但是,Mat类型侧重于计算,数学性较高,openCV对Mat类型的计算也进行了优化。而CvMat和IplImage类型更侧重于“图像”,opencv对其中的图像操作(缩放、单通道提取、图像阈值操作等)进行了优化。在opencv2.0之前,opencv是完全用C实现的,但是,IplImage类型与CvMat类型的关系类似于面向对象中的继承关系。实际上,CvMat之上还有一个更抽象的基类----CvArr,这在源代码中会常见。 1. IplImage opencv中的图像信息头,该结构体定义: typedef struct _IplImage { int nSize; /* IplImage大小 */ int ID; /* 版本 (=0)*/ int nChannels; /* 大多数OPENCV函数支持1,2,3 或 4 个通道 */ int alphaChannel; /* 被OpenCV忽略 */ int depth; /* 像素的位深度: IPL_DEPTH_8U, IPL_DEPTH_8S, IPL_DEPTH_16U, IPL_DEPTH_16S, IPL_DEPTH_32S, IPL_DEPTH_32F

数据结构(十七)数组和矩阵

点点圈 提交于 2020-03-01 06:55:49
  一、数组的定义:数组是n(n>=1)个相同数据类型的数据元素构成的占用一块地址连续的内存单元的有限集合。所有的线性结构(包括线性表、堆栈、队列、串、数组和矩阵)的顺序存储结构实际上就是使用数组来存储。可见,数组是其他数据结构实现存续存储结构的基础,数组这种数据结构是软件设计中最基础的数据结构。   二、数组的实现机制:数组通常以字节为计数单位,同时根据内存单元地址映像公式来分配内存。用高级语言定义数组时,数组在内存中的首地址由系统动态分配并保存。高级语言通常用数组名保存在内存中的首地址。一旦确定了一个数组的首地址,系统就可计算出该数组中任意一个数组元素的内存地址。由于计算数组各个元素内存地址的时间相等,所以存取数组中任意一个元素的时间也相等,通常称具有这种特性的存储结构为随机存储结构。所以说数组具有随机存储结构的特性。   三、在数值分析中,常常会出现一些拥有许多相同数据元素或零元素的高阶矩阵。将具有许多相同元素或者零元素,且数据分布具有一定规律的矩阵称为特殊矩阵,例如,对称矩阵、三角矩阵和对角矩阵。为了节省存储空间,需要对这类矩阵进行压缩存储。压缩存储的原则是:多个值相同的矩阵元素分配同一个存储空间,零元素不分配存储空间。对于对称矩阵、三角矩阵和对角矩阵来说,首先根据矩阵中任意一个元素与压缩后一位数组的下标的对应关系得到每一个数据元素在数组中存储的位置

SVD 奇异值分解与word embedding

血红的双手。 提交于 2020-02-29 22:21:35
在研究NLP的过程中,遇到了word embedding, 经过一系列学习,发现它最初的原理之一来自奇异值分解。于是对奇异值分解做一个简单的记录。 资料中比较好的资料: https://www.cnblogs.com/endlesscoding/p/10033527.html 原理讲解简单,demo做的十分好! https://www.cnblogs.com/litaotao-doctor/p/5320521.html 这篇把特征值和奇异值放在一起讲,十分到位。 看完上面的资料后,我觉得自己没必要记录公式原理了,自惭形秽。好,下面开始: SVD: Sigular Value Decomposition 个人认为奇异值和特征值应该可以有相同的理解,这里我们先谈特征值: 特征值的定义为对矩阵A存在特征值 λ,特征向量x,使下式成立: 而对A的所有特征值,我们称为A的谱,记为λ(A)。 那么我们该如何理解这个式子? 有几个相关的关系可以给我们参考:矩阵A的秩不小于A的非零特征值数;如果矩阵A不满秩,则一定存在0特征值;若矩阵A可对角化,则rankA = A的非零特征值数。 也就是说 矩阵的特征值与矩阵的线性相关性是有关系的。 则我们对特征值的理解可以为: 任意矩阵A对向量x的矩阵乘法,可以理解为对x向量的表换(旋转、平移、缩放),那么Ax可以理解为一次表换,而特征值λ与x的相乘

斯坦福大学机器学习课程第一周笔记

你。 提交于 2020-02-28 19:26:53
课程地址: https://www.coursera.org/learn/machine-learning/home/welcome 简记 机器学习mechine learning 监督学习Supervised learning 回归问题regression problem 分类问题classification problem 无监督学习Unsupervised learning 聚类问题clustering 非聚类non-clustering 线性回归linear regression 代价函数cost function 梯度下降算法gradient descent---第一个算法 线性代数知识 矩阵matrix 矩阵加addition 实数矩阵乘scalar Multipliction 矩阵矩阵乘matrix matrix multipliction 向量vector 矩阵标量乘matrix vector multipliction 标量identity matrix 方阵square matrix 奇异矩阵singular/退化矩阵degenerate 逆矩阵inverse 转置矩阵transponse 乘法性质 不符合交换律和结合律(除标量外) 来源: https://www.cnblogs.com/ephemerid/p/10838329.html

科学计算库Numpy基础操作

社会主义新天地 提交于 2020-02-27 03:22:17
pycharm,python3.7,numpy版本1.15.1 2018年9月11日04:23:06 """ 科学计算库Numpy基础操作 时间:2018\9\11 0011 """ import numpy print("""\n------以矩阵的方式读取数据------\n ------------genfromtxt函数('文件路径',delimiter = '分隔符',dtype = 读取方式)---------------------""") """ numpy.ndarray可以当做一个矩阵 """ np_test = numpy.genfromtxt('Numpy_test.txt', delimiter = ',', dtype = str) # 通常以str方式读取,如果有float,再进行转换 print(type(np_test)) print(np_test) # print(help(numpy.genfromtxt)) # 打印帮助文档 print("""\n------numpy.array------\n ------------numpy中最核心的结构------------------------------------------""") # 传入list结构,转换为ndarray格式 vector = numpy.array([5, 10,

python学习笔记(2):科学计算及数据可视化入门

拈花ヽ惹草 提交于 2020-02-26 22:10:08
一、NumPy   1.NumPy:Numberical Python   2.高性能科学计算和数据分析的基础包   3.ndarray,多维数组(矩阵),具有矢量运算的能力,快速、节省空间     (1)ndarray,N维数组对象(矩阵)     (2)所有元素必须是相同类型     (3)ndim属性,维度个数     (4)shape属性,各维度的大小     (5)dtype属性,数据类型   4.矩阵运算,无需循环,可完成类似Matlab中的矢量计算   5.线性代数、随机数生成   6.import numpy as np narray多维数组 import numpy as np #生成指定维度的随机多维数组 data = np.random.rand(2,3) //生成一个两行三列的多维数组 print dataprint type(data)      //查看数据类型,这个地方数据类型是numpy.ndarray的数据类型 [[0.16088508 0.86321185 0.25653982] [0.42456419 0.33277194 0.30046417]] <class 'numpy.ndarray'># print '维度个数', data.ndim    //维度个数 2     维度个数有两个,第0个维度大小是2,第一个维度大小是3print

层次分析法

萝らか妹 提交于 2020-02-26 00:14:48
title: 层次分析法 date: 2020-02-25 19:14:41 categories: 数学建模 tags: [MATLAB, 评价模型] mathjax: true 定义 ​ 层次分析法(The Analytic Hierarchy Process即AHP)是由美国运筹学家、 匹兹堡大学教授T . L. Saaty于20世纪70年代创立的一种系统分析与决策的综合 评价方法,是在充分研究了人类思维过程的基础上提出来的,它较合理地解 决了定性问题定量化的处理过程。 ​ AHP的主要特点是通过建立递阶层次结构,把人类的判断转化到若干因 素两两之间重要度的比较上,从而把难于量化的定性判断转化为可操作的重 要度的比较上面。在许多情况下,决策者可以直接使用AHP进行决策,极大 地提高了决策的有效性、可靠性和可行性,但其本质是一种思维方式,它把 复杂问题分解成多个组成因素,又将这些因素按支配关系分别形成递阶层次 结构,通过两两比较的方法确定决策方案相对重要度的总排序。整个过程体 现了人类决策思维的基本特征,即分解、判断、综合,克服了其他方法回避 决策者主观判断的缺点。 步骤 第一步递阶层次结构 分析系统中各因素之间的关系,建立系统的递阶层次结构。 第二步构造判断矩阵 {1,2,3,...,9}:代表重要程度,逐渐递增 得到一个方阵,我们记为A,对应的元素为 \(a_{ij}\)