首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏全栈程序员必看

    模型矩阵、视图矩阵、投影矩阵

    总而言之,模型视图投影矩阵=投影矩阵×视图矩阵×模型矩阵模型矩阵将顶点从局部坐标系转化到世界坐标系中,视图矩阵将顶点从世界坐标系转化到视图坐标系下,而投影矩阵将顶点从视图坐标系转化到规范立方体中。 这个表示整个世界变换的矩阵又称为「视图矩阵」,因为他们经常一起工作,所以将视图矩阵乘以模型矩阵得到的矩阵称为「模型视图矩阵」。 视图矩阵实际上就是整个世界的模型矩阵,这给我一点启发:一个模型可能由多个较小的子模型组成,模型自身有其模型矩阵,而子模型也有自己的局部模型矩阵。 考虑一辆行驶中的汽车的轮胎,其模型视图矩阵是局部模型矩阵(描述轮胎的旋转)左乘汽车的模型矩阵(描述汽车的行驶)再左乘视图矩阵得到的。 投影矩阵 投影矩阵将视图坐标系中的顶点转化到平面上。 实际上,投影矩阵先把顶点坐标转化到规范立方体坐标系(Xc-Yc-Zc)中,也就是将四棱锥台体空间映射到规范立方体中。规范立方体是x,y,z都处在区间[-1,1]之间的边长为2的立方体,如下所示。

    3.5K20编辑于 2022-08-27
  • 来自专栏GIS与遥感开发平台

    分类模型的评估指标 | 混淆矩阵2

    放到混淆矩阵中就是真实情况为A类的像元数中有多少像元数被分类器分为了别的类别。 2 ---结果 kappa系数的计算结果处于(-1,1)之间,但一般情况下其结果处于(0,1)之间,且可分为五个级别来表示一致性: (0,0.2】表现为极低一致性; (0.2,0.4】表现为一般一致性; 除总体分类精度和kappa系数外,其他指标以A类为例: 1 ---总体分类精度 overall accuracy=(20+15+18)/100=53% 2 ---生产者精度 producer accuracy =20/(20+5+2)≈74% 3 ---用户精度 user accuracy=20/(10+10+20)=50% 4 ---错分误差 commission error =(10+10)/40 =1 -user accuracy=50% 5 ---漏分误差 omission error =(5+2)/27 =1-producer accuracy ≈26% 6 ---kappa系数 Po=0.53

    3.8K30编辑于 2022-04-29
  • 来自专栏OpenTK

    OpenTK投影矩阵模型矩阵

    二维平面只包含缩放和平移的模型矩阵 [ sx 0 0 tx ] ← X轴缩放(sx)与X轴平移(tx) [ 0 sy 0 ty ] ← Y轴缩放(sy)与Y轴平移 ty) [ 0 0 1 0 ] ← Z轴不缩放、不平移(保持1) [ 0 0 0 1 ] ← 齐次坐标标识(固定为1) 二维平面包含缩放、旋转和平移的模型矩阵 : [ 2/windowWidth 0 0 -(windowWidth)/(windowWidth) ] [ 0 -2/windowHeight 0 (windowHeight)/(windowHeight) ] [ 0 0 -2/(1+1) 0 窗口大小适配:当窗口大小改变时,需重新计算投影矩阵(通常在 OnResize 事件中更新)。

    29510编辑于 2025-09-03
  • 来自专栏代码编写世界

    模型矩阵分解

    正文 2. 参考 1. 正文 通常来说,模型矩阵(R)的一种比较好的级联方式为:先缩放(S),再旋转(R),最后平移(T): \textbf{R} = \textbf{T} * \textbf{R} * \textbf{S} 如果不考虑缩放变换,那么模型变换实际上是一种刚体变换。 此时四维模型矩阵的左上角3X3矩阵就是旋转矩阵,第四列就是平移量。但是加上缩放变换,就变成一个复杂的问题了。 除了缩放、旋转和平移,GLM提供的模型矩阵分解的函数接口glm::decompose()还提供一个skew参数和perspective参数,暂时没弄明白其具体含义,留待以后研究。 2.

    1.1K20编辑于 2022-05-07
  • 来自专栏全栈程序员必看

    矩阵分解模型

    矩阵分解模型做如下假设: 1.每个用户可描述为n个属性或特征。比如,第一个特征可以对应某个用户对动作片的喜好程度。 2.每个物品可描述为n个属性或特征。 假设我们的用户和物品数目分别是U和I,那对应的“用户-物品”矩阵的维度为U*I。那对应的两个低阶矩阵分别是用户的U*k矩阵,和物品的I*k矩阵。这两个矩阵也被称为因子矩阵。因子矩阵通常是稠密的。 由于对“用户-物品”矩阵直接建模,用这些模型进行预测也相对直接:要计算给定用户对某个物品的预计评级,就从用户因子矩阵和物品因子矩阵分别选取相应的行(用户因子向量)与列(物品因子向量),然后计算两者的点积即可 因子分解类模型的的利弊: 利:求解容易,表现出色 弊:不好解释,吃资源(因子向量多,训练阶段计算量大) 2.隐式矩阵分解 隐式矩阵就是针对隐式反馈数据。 它将输入的评级数据视为两个矩阵:一个二元偏好矩阵P和一个信心权重矩阵C。 隐式模型仍然会创建一个用户因子矩阵和一个物品因子矩阵。但是,模型所求解的是偏好矩阵而非评级矩阵的近似。

    67730编辑于 2022-08-28
  • 来自专栏数据猿

    模型时代,腾讯翻盘需要混元DiT

    业内之所以如此关注,最核心的原因在于这是一个开源的DiT模型。 又能像扩散模型一样,减少了直接在高分辨率像素空间训练的计算负担,还促进了对图像特征的更高效学习和生成过程的控制。 OpenAI在2024年2月15日发布的Sora,使用的正是DiT模型。 随后的一段日子里,英文DiT模型确实不少,但是一直没有一款中文DiT模型问世。 随后,腾讯AI Lab不断投入研发,逐步完善模型的性能和功能,混元大模型也就此诞生。 混元DiT将要如何发展? 目前在混元DiT的GitHub页面上可以看到,混元DiT还需要处理一些问题。 大模型企业往往都藏着一些技术更先进的大模型,是为了在技术路线不暴露的前提下,验证模型的性能。比如实则为ChatGPT-4o的ChatGPT-2

    65210编辑于 2024-05-28
  • 来自专栏全栈程序员必看

    模型视图矩阵和投影矩阵_马尔可夫模型

    2 小孔成像 机器视觉成像采用小孔成像模型,如下图所示 再次简化为下图 图中 X X X是一个空间点, x x x为该空间点在图像中的成像点, C C C为镜头光心(camera centre 后面的各个坐标系及其相互关系都是基于这个小孔成像模型推出。 3 坐标系 说到机器视觉测量模型,就少不了先要了解整个模型中涉及的几个坐标系。 ⎣⎢⎢⎡​XW​YW​ZW​1​⎦⎥⎥⎤​ 这就是世界坐标系与相机坐标系的转换关系,其中的矩阵 M 2 M_2 M2​与相机的位姿有关,称为外参矩阵。 ⎣⎢⎢⎡​XW​YW​ZW​1​⎦⎥⎥⎤​ 4 机器视觉投影矩阵 至此,我们就得到了像素坐标系与世界坐标系的映射关系,即机器视觉投影矩阵 [ u v 1 ] = 1 Z C M 1 M 2 [ X M_2 M2​——外参矩阵,4×4矩阵, M 2 = [ r 11 r 12 r 13 t x r 21 r 22 r 23 t y r 31 r 32 r 33 t z 0 0 0 1 ] M_2=\

    1K10编辑于 2022-11-09
  • 来自专栏全栈程序员必看

    投影矩阵 视图模型矩阵「建议收藏」

    OpenGL在设置场景时,要用到两个矩阵:投影矩阵模型视图矩阵通过glMatrixMode来指定下面的矩阵操作是针对哪一个矩阵进行的。 />gluLookAtUp(); // E 视点矩阵
    glTranslate(); // T 模型矩阵
    glScale(); // S 模型矩阵
    glRotate(); // R 模型矩阵
    因为实际的变换顺序与代码的顺序是相反的,设顶点v 模型视图矩阵的顺序依次为 I, E, ET, ETS, ETSR, 经过变换的顶点是 如视点位于(0,0,5),at点位于(0,0,10),up不变,near 为 -2 ,far 为 -5,则此时的观察方向为Z轴正向,视锥体在三维空间中的实际near far 平面为 Z = 3, Z = (相对于(0,0,0),near平面为Z = 2, far平面为Z = 5,变换到视点位置(0,0,5),near 平面为Z = 3, far平面为Z = 0 ,) 发布者:全栈程序员栈长,转载请注明出处

    81420编辑于 2022-08-27
  • 来自专栏阿黎逸阳的代码

    模型效果评价—混淆矩阵

    混淆矩阵是用于评价分类模型效果的NxN矩阵,其中N是目标类别的数目。矩阵将实际类别和模型预测类别进行比较,评价模型的预测效果。 TP(True Positive):真实值是positive,模型认为是positive的数量,即模型预测正确的正例数量。 2. 2 二级指标 对于预测性分类模型,我们希望模型的预测结果越准越好,即混淆矩阵中TP、TN的值越大越好,相应FP、FN的值越小越好。 TP(True Positive):真实值是买产品,模型认为是买产品的顾客数量,即模型预测正确的正例数量,在该例中值为800。 2. 4.TN(True Negative):真实值是不买产品,模型认为是不买产品的数量,即模型预测正确的负例数量,在该例中值为100。 2 二级指标 1.

    2.8K10发布于 2020-09-07
  • 来自专栏全栈程序员必看

    模型评估之混淆矩阵

    在前面的文章中我们讲到了回归模型和分类模型的评估指标,区分了准确率和精确率的区别,并且比较了精确率和召回率内在的联系。 混淆矩阵是机器学习中总结分类模型预测结果的情形分析表,以矩阵形式将数据集中的记录按照真实的类别与分类模型预测的类别判断两个标准进行汇总。 ["cat", "dog", "cat", "cat", "dog", "rebit"] y_pred = ["dog", "dog", "rebit", "cat", "dog", "cat"] C2= confusion_matrix(y_true, y_pred, labels=["dog", "rebit", "cat"]) sns.heatmap(C2,annot=True) 多分类混淆矩阵 至此,关于模型评估个各指标已全部介绍完毕,后面的文章我们将开始讲解一些经典算法的推导及使用,喜欢的小伙伴请点击关注!

    2.4K10编辑于 2022-08-27
  • 来自专栏机器学习养成记

    推荐算法|矩阵分解模型

    导读:在《推荐算法概述》一文中,我们介绍了推荐算法分为基于用户、基于物品、基于模型的协同过滤方法,矩阵分解模型是典型的基于模型的方法之一,本文将从基本概念、原理、实践几个角度进行介绍。 2 原理简述 矩阵分解指将一个大的矩阵转化为两个小矩阵相乘: ? 对应在推荐场景中,大矩阵表示用户对物品的评分,将大矩阵转化为用户矩阵和物品矩阵相乘,小矩阵的维度k解释为隐含的兴趣点,原本缺失的地方通过两个矩阵相乘也得到了取值,该取值就是预测的分数。 ? 模型训练的目标是使输入输出矩阵误差最小,并且为了避免过拟合加入了正则项。应用显示信息和隐式信息的目标函数分别如下: ? ? lambda p: Row(userId=int(p[0]), movieId=int(p[1]), rating=float(p[2]

    1.3K10发布于 2021-06-21
  • 来自专栏又见苍岚

    OpenCV - 矩阵操作 Part 2

    内容列表 序号 函数 描述 1 cv2.exp() 实现矩阵的逐元素求指数幂 2 cv2.flip() 绕选定的轴翻转矩阵 3 cv2.gemm() 实现广义矩阵乘法 4 cv2.idct() 计算矩阵的离散余弦逆变换 5 cv2.idft() 计算矩阵的离散傅里叶逆变换 6 cv2.inRange() 测试矩阵的元素是否在两个其他矩阵的值之间 7 cv2.invert() 求方阵的逆 8 cv2.log() 计算矩阵逐元素的自然对数 ) 计算两个矩阵逐元素的最大值 13 cv2.mean() 计算矩阵元素的平均值 14 cv2.meanStdDev() 计算矩阵元素的均值和标准差 15 cv2.merge() 将多个单通道矩阵合并成一个多通道矩阵 16 cv2.min() 计算两个矩阵逐元素的最小值 17 cv2.minMaxLoc() 在矩阵中寻找最小值和最大值 18 cv2.mixChannels() 打乱从输入矩阵到输出矩阵的通道 19 cv2.multiply() 计算两个矩阵的逐元素乘积 20 cv2.mulTransposed() 计算矩阵矩阵的转置的乘积 21 cv2.norm() 计算矩阵/矩阵差的范数 22 cv2.normalize

    2.7K20编辑于 2022-08-09
  • 来自专栏Python机器学习算法说书人

    SciPy 稀疏矩阵2):COO

    三元组的存储策略 如果存储一个稀疏矩阵对应的多个三元组可以有非常多的实现方式,针对每一种都进行讲解是非常不现实的,而且完全没有这个必要,因为三元组的存储策略可以分为 2 大类:三元组容器法以及三个序列法 2 种方法:三个序列法。 : >>> row = np.array([0, 3, 1, 0]) >>> col = np.array([0, 3, 1, 2]) >>> data = np.array([4, 5, 7, 9]) 我们来看一下遇到这种情况会不会有什么问题: >>> row = np.array([0, 0, 1, 3, 1, 0, 0]) >>> col = np.array([0, 2, 1, 3, 1, 0, 这 2 个方法都是原地操作,无返回值。现在方法有了,怎么消除零元素以及重复的行列索引无非就是两个方法的调用顺序的问题。显然我们应该先消除重复的行列索引,再消除零元素。

    1K20编辑于 2023-08-28
  • 来自专栏LET

    坐标系与矩阵(6)模型视图投影矩阵

    模型视图投影矩阵,也就是常说的MVP,有很多的书和资料,参考资料中会列出我推荐的相关资料,会详细介绍推导过程。之所以还要写这一篇,是因为它比较重要,也为了保证‘坐标系与矩阵’系列文章的完整性。 ,我们称为模型矩阵,记为 ? : ? 不难理解, ? 和 ? 在不同场景下都有意义和不同的优势。装饰后我们拍一张家居图,就要选一个合适的角度来拍摄了,所谓的横看成岭侧成峰。 至此,我们介绍了模型视图矩阵,这里,多插一句,就是法线的转换。已知: ? 此时,已知一点 ? ,对应的法线 ? 。该点经过矩阵 ? 转换到新的坐标系下,对应的法线 ? : ? 两个公式可得,法线变化对应的矩阵是逆矩阵: ? 下面进入投影部分,既然是投影,就是一种降维求近似解的过程,我们可以理解为洗照片,把3D空间降维到2D,最主要的有两种方式:正交投影和透视投影。 ? 这样,最终的透视投影矩阵以及投影矩阵有两种情况: ? 这样,我们可以得到最终的模型视图投影矩阵,实现将3D空间下的 ? 映射到2D平面: ?

    1.5K30发布于 2021-07-20
  • CacheDiT、TaylorSeer 与 SCM:DiT 扩散模型推理加速到底在加速什么?

    不要把 Diffusion Cache 和 LLM KV Cache 混淆 2. few-step 模型收益有限 3. 总结 在图像、视频生成模型里, Diffusion Transformer,简称 DiT DiT 的推理不是一个 token 接一个 token 地生成,而是从纯噪声开始,经过多个 denoising DiT 是什么? DiT = Diffusion Transformer。 它的核心思想是:把传统扩散模型里的 U-Net 去噪网络替换成 Transformer。 taylorseer_order=2 或 3: 可能提升预测精度,但会增加计算开销。 few-step 模型: 不建议开 TaylorSeer。 3. few-step 模型收益有限 如果模型本来只跑 4–9 steps,cache 空间很小。

    19710编辑于 2026-05-26
  • 来自专栏AI星球

    推荐系统之矩阵分解模型

    前言 最近在整理Embedding技术在推荐系统中的应用,总结了获取各类item2vec的方法,推荐系统中的矩阵分解作为解决item2vec问题初期技术方法之一,虽已在推荐领域摸爬滚打了十几年,但至今仍旧在工业界的推荐场景中扮演着重要的角色 Model,LFM) 矩阵分解(MF) LSA、pLSA、LDA 基于贝叶斯网络 基于SVM 协同过滤方法分为两大类,一类为上述基于邻域的方法,第二类为基于模型的方法,其中有基于隐语义模型的,而矩阵分解模型是隐语义模型最为成功的一种实现 ,这也使得矩阵分解成为了当时个性化推荐研究领域中的主流模型之一,时至今日仍旧在推荐领域发光发热。 ,这便是该有监督模型的目标函数,具体的目前函数形式如下所示: 其中rui为User-Item矩阵中的原始评分值,pu是用户矩阵,qi是商品矩阵,pu · qi 是代表两个矩阵进行点积,获得其预测的评分值 (这里特指矩阵分解)两种的比较: 矩阵分解技术为作为初期解决item2vec的方法之一就先介绍到这里,后续计划更新的文章将正式进入万物皆可Embedding,概述各种item2vec技术在推荐系统中的应用

    1.8K10发布于 2020-04-24
  • 来自专栏Java项目实战

    腾讯混元-3D-2首个开源高质量3D-DIT模型 建模利器

    高清几何,高清纹理,同时上线文生3D,图生3D,在目前来说,已经公开的3D生成模型领域中属于第一梯队,与主流模型相比具有显著优势。 仓库地址:https://github.com/Tencent/Hunyuan3D-2 kijai:https://github.com/kijai/ComfyUI-Hunyuan3DWrapper 在线体验 ,回复关键字【H3D】领取本期资料~~码字不易,希望大家点赞收藏在看~~ 2.0模型架构图 5个3D模型一次开源 模型差异:谁负责什么? 多视图版本模型:例如Hunyuan3D-2-MV,通过结合多个视图的输入信息,能够更好地捕捉细节并生成符合用户预期的 3D 资产。 轻量级 mini 系列模型:通过模型架构优化与运行效率提升,可进一步降低算力成本,其几何模型可以部署在4080显卡甚至苹果M1 Pro芯片上,为模型的应用扩展了场景。

    1.3K10编辑于 2025-03-19
  • 来自专栏单细胞天地

    根据表达矩阵进行分群-2

    3 使用Seurat进行tSNE 上面我们使用了RPKM矩阵,下面的Seurat将会使用原始表达矩阵。 当然也是推荐使用原始矩阵进行分析的 3.1 下载原始表达矩阵 链接在:https://raw.githubusercontent.com/IStevant/XX-XY-mouse-gonad-scRNA-seq 2],cluster2[,1]) 0 1 2 3 C1 224 3 13 0 C2 6 0 84 0 C3 12 177 0 1 FF0000FF 190 43 90 240 # 取前1000个sd最大的基因作为HVGs choosed_count <- females # 表达矩阵过滤 3 4 1 2 0 0 206 0 2 1 106 0 0 0 3 0 93 10 0 0 4 1 138 0 1 5

    1K40发布于 2020-03-30
  • 来自专栏叶子的开发者社区

    CSP 202305-2 矩阵运算

    样例输入 3 2 1 2 3 4 5 6 10 10 -20 -20 30 30 6 5 4 3 2 1 4 0 -5 样例输出 480 240 0 0 -2200 -1100 答题 注意数值范围用 int已经不行了,必须要用long long 而且矩阵运算涉及到三层循环,可以利用cache机制减少取值时间,先将右矩阵转置再计算 最关键的是由于d远远小于n,所以先计算KTV得到的dxd大小的矩阵要远远小于先计算 QKT得到的nxn大小的矩阵,无论是存储上还是计算上都会大大减少时间 #include <iostream> using namespace std; long long** makeMatrix(int

    51820编辑于 2023-09-06
  • 来自专栏全栈程序员必看

    MATLAB(2)–MATLAB矩阵的表示

    MATLAB–MATLAB矩阵的表示 矩阵的建立 冒号表达式 linspace 结构矩阵 单元矩阵 最后 矩阵的建立 利用直接输入法建立矩阵:将矩阵的元素用中括号括起来,按矩阵的顺序输入各元素,同一行的各元素之间用逗号或者空格分隔 冒号表达式的一般格式为:e1:e2:e3其中,e1为初始值,e2为步长,e3为终止值(e3>e1)。冒号表达式可产生一个由a开始到c结束,以步长b自增的行向量,如果省略步长,默认步长为1。 例如输出0到5,步长为1,如下所示: linspace linspace(x1,x2,N) linspace是Matlab中的均分计算指令,用于产生x1,x2之间的N点行线性的矢量。 其基本形式为: 结构矩阵元素.成员名 = 表达式 a(1).x1 = 55;a(1).x2 = 'Ben';a(1).x3 = [ 1, 2; 3, 4]; a(2).x1 = 66;a(2).x2 = 'Tim';a(2).x3 = [ 5, 6; 7, 8]; a(3).x1 = 77;a(3).x2 = 'Ken';a(3).x3 = [ 9,10;11,12]; 单元矩阵 建立单元矩阵和一般矩阵相似

    2K30编辑于 2022-09-12
领券