[机器学习基础]矩阵基础和numpy

加法



减法

数乘




乘法
,它的一个元素:





Python numpy
安装:
pip install numpy
使用:
# 创建数组
a = np.array([1, 2, 3, 4])
# 多维数组
b = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
print a
print b
# 数组大小
print a.shape
print b.shape
# 查看类型
c = np.array(['', 22, 33])
print c.dtype
print a.dtype
# 存取方法
print a[:-1]
print a[1:2]
# 其中注意的是通过下标取值产生新的数组雨原始数组共享同一块数据空间
d = a[0:3]
print d
d[2] = 333333
print d
print a
乘积:
乘积中*和dot是不一样,*是数组元素逐个计算,dot是按照矩阵来进行计算
# 创建数组
a = np.array([[1, 2], [5, 6]])
# 多维数组
b = np.array([[1, 2], [5, 6]])
print a
print b
print "*" * 30
c = a * b
print c
print "-" * 30
d = np.dot(a, b)
print d
输出:
[[1 2]
[5 6]]
[[1 2]
[5 6]]
******************************
[[ 1 4]
[25 36]]
------------------------------
[[11 14]
[35 46]]
dot计算公式:
dot(a, b) [i , j, k, m] = sum(a[i, j, :] * b[k, :, m])
inner计算公式:
inner(a, b)[i, j, k, m] = sum(a[i, j, :] * b[k, m, :])
[机器学习基础]矩阵基础和numpy的更多相关文章
- SLAM入门之视觉里程计(4):基础矩阵的估计
在上篇文章中,介绍了三位场景中的同一个三维点在不同视角下的像点存在着一种约束关系:对极约束,基础矩阵是这种约束关系的代数表示,并且这种约束关系独立与场景的结构,只依赖与相机的内参和外参(相对位姿).这 ...
- 【Python矩阵及其基础操作】【numpy matrix】
一.矩阵生成 1.numpy.matrix: import numpy as np x = np.matrix([ [1, 2, 3],[4, 5, 6] ]) y = np.matrix( [1, ...
- SLAM入门之视觉里程计(2):两视图对极约束 基础矩阵
在上篇相机模型中介绍了图像的成像过程,场景中的三维点通过"小孔"映射到二维的图像平面,可以使用下面公式描述: \[ x = MX \]其中,\(c\)是图像中的像点,\(M\)是一 ...
- 2D-2D:对极几何 基础矩阵F 本质矩阵E 单应矩阵H
对极约束 \[ \boldsymbol{x}_{2}^{T} \boldsymbol{F} \boldsymbol{x}_{1}=\boldsymbol{0} \quad \hat{\boldsymb ...
- SLAM入门之视觉里程计(3):两视图对极约束 基础矩阵
在上篇相机模型中介绍了图像的成像过程,场景中的三维点通过"小孔"映射到二维的图像平面,可以使用下面公式描述: \[ x = MX \]其中,\(c\)是图像中的像点,\(M\)是一 ...
- 机器学习:Jupyter Notebook中numpy的使用
一.Jupyter Notebook的魔法命令 # 模块/方法 + ?或者help(模块/方法):查看模块/方法的解释文档: 1)%run # 机械学习中主要应用两个魔法命令:%run.%timeit ...
- [.net 面向对象编程基础] (3) 基础中的基础——数据类型
[.net 面向对象编程基础] (3) 基础中的基础——数据类型 关于数据类型,这是基础中的基础. 基础..基础..基础.基本功必须要扎实. 首先,从使用电脑开始,再到编程,电脑要存储数据,就要按类型 ...
- [.net 面向对象编程基础] (4) 基础中的基础——数据类型转换
[.net面向对象编程基础] (4)基础中的基础——数据类型转换 1.为什么要进行数据转换? 首先,为什么要进行数据转换,拿值类型例子说明一下, 比如:我们要把23角零钱,换成2.30元,就需要把整形 ...
- [.net 面向对象编程基础] (5) 基础中的基础——变量和常量
[.net面向对象编程基础] (5) 基础中的基础——变量和常量 1.常量:在编译时其值能够确定,并且程序运行过程中值不发生变化的量. 通俗来说,就是定义一个不能改变值的量.既然不能变动值,那就必须 ...
随机推荐
- 【bzoj1040】骑士[ZJOI2008](树形dp)
题目传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1040 这道题,很明显根据仇恨关系构造出的图形是一堆环套树.如果是普通的树,就可以马上裸树 ...
- 什么是CDN 域名预热
通常大家理解的预热功能是,缓存预热.将需要预热的资源推送到CDN边缘节点,用户访问时将不需要再回源站,可以直接命中缓存.这样可以加快资源的首次访问,同时缓解突增回源流量给源站造成的压力.这里说的是域名 ...
- session共享个人小结
一.需求问题: 如果你的网站是存放在一个机器上,那么是不存在这个问题的,因为会话数据就在这台机器,但是如果你使用了负载均衡把请求分发到不同的机器呢? 这个时候会话id在客户端是没有问题的, 但是如果用 ...
- Mysql -- SQL常用命令实例
sql: structured query language(结构化查询语言) 用户名和密码:root 创建一个名称为mydb1的数据库. create database mydb1; 查看所有数据库 ...
- Ceilometer Polling Performance Improvement
Ceilometer的数据采集agent会定期对nova/keystone/neutron/cinder等服务调用其API的获取信息,默认是20秒一次, # Polling interval for ...
- Hbase- Hbase客户端读写数据时的路由流程
1.客户端先到zookeeper查找hbase:meta所在的RegionServer服务器 2.去hbase:meta表查找自己所要的数据所在的region server 3.去目标region s ...
- Shiro安全配置
主要还是整合了本地ehcache,集群session管理过段时间放出 <?xml version="1.0" encoding="UTF-8"?> ...
- vue项目组件的全局注册
在vue-cli项目中,我们经常会封装自己的组件,并且要在多个界面中引用它,这个时候就需要全局注册组件. 首先我们会封装自己的组件,比如twoDimensionTable文件夹下的index.vue: ...
- GEF入门实例_总结_03_显示菜单和工具栏
一.前言 本文承接上一节: GEF入门实例_总结_02_新建初始RCP空项目 这一节,我们来给我们的插件加上菜单. 二.基础知识 1.action bar.menubar.coolbar 含义 a ...
- Oracle 11g 客户端连接 oracle 10g 服务端,乱码问题
从网上搜索资料基本确定:字符集错误 Pl/sql 连接到oracle 数据库 “select userenv('language') from dual” 找到服务端的对应的字符集,拷贝之: 到本 ...