向量的模

向量空间模型 - 维基百科,自由的百科全书

老子叫甜甜 提交于 2020-03-05 04:57:24
向量空间模型 - 维基百科,自由的百科全书 向量空间模型 维基百科,自由的百科全书 跳转到: 导航 , 搜索 向量空间模型 (或者 词组向量模型 ) 作为 向量 的标识符(比如索引),是一个用来表示文本文件的代数模型。它应用于信息过滤、 信息检索 、 索引 以及关联规则。SMART是第一个使用这个模型的信息检索系统。 目录 [ 隐藏 ] 1 定义 2 应用 3 范例: tf-idf 权重 4 优点 5 局限 6 基于模型的以及扩展的向量空间模型 7 以向量空间模型为工具的软件 7.1 免费开放的软件资源 8 进一步参考 9 另见 10 参考文献 [ 编辑 ] 定义 文档和问题都用向量来表示。 每一维都相当于是一个独立的词组。如果这个术语出现在了文档中,那它在向量中的值就非零。已经有很多不同的方法来计算这些值,这些值叫做(词组)权重。其中一种广为人知的算法就是tf_idf权重(见下面的例子)。 我们是根据应用来定义 词组 的。典型的词组就是一个单一的词、 关键词 、或者较长的短语。如果字被选为词组,那么向量的维数就是出现在词汇表中不同字的个数。 向量运算能通过查询来比较各文档。 [ 编辑 ] 应用 通过文档相似度理论的假设,比较每个文档向量和原始查询向量(两个向量的类型是相同的)之间的角度偏差,使得在文档中搜索关键词的关联规则是能够计算的。 实际上

余弦定理的应用:基于文字的文本相似度计算

那年仲夏 提交于 2020-03-03 23:23:46
最近由于工作项目,需要判断两个txt文本是否相似,于是开始在网上找资料研究,因为在程序中会把文本转换成String再做比较,所以最开始找到了这篇关于 距离编辑算法 Blog写的非常好,受益匪浅。 于是我决定把它用到项目中,来判断两个文本的相似度。但后来实际操作发现有一些问题:直接说就是查询一本书中的相似章节花了我7、8分钟;这是我不能接受…… 于是停下来仔细分析发现,这种算法在此项目中不是特别适用,由于要判断一本书中是否有相同章节,所以每两个章节之间都要比较,若一本书书有x章的话,这里需对比x(x-1)/2次;而此算法采用矩阵的方式,计算两个字符串之间的变化步骤,会遍历两个文本中的每一个字符两两比较,可以推断出时间复杂度至少为 document1.length × document2.length ,我所比较的章节字数平均在几千~一万字;这样计算实在要了老命。 想到Lucene中的评分机制,也是算一个相似度的问题,不过它采用的是计算向量间的夹角(余弦公式),在google黑板报中的: 数学之美(余弦定理和新闻分类) 也有说明,可以通过余弦定理来判断相似度;于是决定自己动手试试。 首相选择向量的模型:在以字为向量还是以词为向量的问题上,纠结了一会;后来还是觉得用字,虽然词更为准确,但分词却需要增加额外的复杂度,并且此项目要求速度,准确率可以放低,于是还是选择字为向量。

【3D数学】之向量

百般思念 提交于 2020-02-27 05:07:34
向量 向量数学定义 从数学角度来看向量就是一个数字列表,对程序而言则是数组。 数学上区分向量和标量,比如“速度”和“位移”是向量,“速率”和“长度”是标量。 向量可以从维度上区分,向量可以是任意维度的。比较特殊的是标量,可以认为是一维的向量。在图形学中,经常用到的是2维、3维和4维向量。 向量可以表示为行向量和列向量。水平书写的称为行向量,比如[1, 2, 3]。垂直书写的称为列向量,比如。 向量的几何意义 一个二维向量如下图所示。由图可以看出,向量的定义有两个要素——大小和方向。向量的大小就是向量的长度(模),向量的方向描述向量在空间的中的指向。 向量所代表的位移可以考虑分解成和坐标轴平行的分量,把分量的位移组合起来就可以得到向量作为整体所代表的位移。如下图所示,向量[1, -3, 4]表示一个位移,可以将此位移想象为向右平移1个单位,向下平移3个单位,向前平移4个单位。这些步骤的执行顺序不重要,不同的顺序会得到同样的位移量。 向量和点 “点”用来描述位置,但没有大小和厚度。“向量”描述位移,有大小和方向但没有位置。 对任意的x和y,下图展示了点(x, y)和向量[x, y]之间的关联。可以看出向量[x, y]描述原点到点(x, y)的位移量。 虽然向量和点在概念上完全不一样,但在数学上等价。两个点之间的距离为从一个点到另一个点的向量长度(模),向量长度的计算在下面会提到。

平面向量学习笔记

∥☆過路亽.° 提交于 2020-02-26 11:58:16
平面向量学习笔记 第一节 一、向量的背景——位移、速度、力 1、特点:向量、位移、力都既有大小、又有方向。 2、既有大小、又有方向的量在物理上成为矢量。 二、向量及其表示 1、概念:既有大小、又有方向的量统称为向量。其中,大小与方向是向量的二要素。 2、表示方法: (1)几何表示——有向线段 若规定线段 \(AB\) 端点 \(A\) 为起点,端点 \(B\) 为终点,则线段 \(AB\) 就有了从起点 \(A\) 到终点 \(B\) 的方向和长度。这种具有方向和长度的线段叫做有向线段,记作 $ \overrightarrow {AB} \(,其长度为\) |\overrightarrow {AB}| $。 此时,有向线段表示向量,有向线段的长度表示向量的大小,有向线段箭头所指方向表示向量的方向。 (2)字母表示 ​ ①用有向线段的起点和终点表示$ \overrightarrow {AB} $。 ​ ②用小写字母 \(a,b,c...\) 表示,书写表示为$ \overrightarrow {a},\overrightarrow {b},\overrightarrow {c}... $ 3、向量的模 \(|\overrightarrow {AB}|\) (或 \(|{a}|\) )表示 \(\overrightarrow {AB}\) (或 \({a}\) )的大小,即长度(或模)

游戏 图形方面 面试题

∥☆過路亽.° 提交于 2020-02-23 19:34:49
图形学渲染流程(管线)说一下 答: 传统的前向渲染管线流程是这样的 顶点和索引到顶点着色器,这里主要是对顶点进行变换,然后是光栅化,这里将剔除视锥体之外的元素,光栅化后三角形内的像素将进入到片元着色器(像素着色器),经过深度测试(模板测试)后写入到Target缓冲区内。 其实还有计算shader,用于曲面细分的三个shader,几何shader,RayTrace shader等,不展开了。 BDRF函数 答:BRDF函数是射出光线的辐照度和摄入光线辐射率的比值,在现代引擎中BRDF一般使用Cook-Torrance 的公式,定义为F菲涅尔(F0,NV) G(L,N,V) 几何函数 D(N,H,Roughness) 法线分布函数(H为L,V的半角向量) 除以4*(NL)*(NV) IBL基本原理 答: 在PBR渲染公式中,我们不仅仅算直接光源,也要考虑来自环境的间接光源,因此把来自环境光的信息储存在cubeMap中供计算,这就是IBL,基于图形的光照,在这种情况下需要对光照方程进行分割,分为环境光和镜面光两部分,为了提高速度一般都会把这些卷积的结果存储在贴图里面,对于漫反射,存不同法线下的卷积结果,对于高光需要先分拆为 预滤波环境贴图和预计算BRDF,这里有一个N=V=R的假设,基于重要性采样,可以把第二项看为参数为NWi和Roughness参数的二维函数,就可以预计算贴图

自我高数学习笔记——知识点

妖精的绣舞 提交于 2020-02-19 22:00:40
高数学习笔记 第七章 向量代数与空间解析几何 本章难点 1、数量积、向量积的运算; 2、平面方程和直线方程及其求法; 3、平面与平面、直线与直线、平面与直线之间相互位置关系的判定; 4、二次曲面图形; 5、旋转曲面的方程。 本章内容 一、空间直角坐标系及向量 (一)空间两点间的距离 设空间有两点,坐标为 P 1 ( x 1 , y 1 , z 1 ) , Q ( x 2 , y 2 , z 2 ) P_1(x_1,y_1,z_1),Q(x_2,y_2,z_2) P 1 ​ ( x 1 ​ , y 1 ​ , z 1 ​ ) , Q ( x 2 ​ , y 2 ​ , z 2 ​ ) ,有: ∣ P 1 P 2 → ∣ = ( x 2 − x 1 ) 2 + ( y 2 − y 1 ) 2 + ( z 2 − z 1 ) 2 |\overrightarrow{P_1P_2}|=\sqrt{(x_2-x_1)^2+(y_2-y_1)^2+(z_2-z_1)^2} ∣ P 1 ​ P 2 ​ ​ ∣ = ( x 2 ​ − x 1 ​ ) 2 + ( y 2 ​ − y 1 ​ ) 2 + ( z 2 ​ − z 1 ​ ) 2 ​ 任意一点 M ( x , y , z ) M(x,y,z) M ( x , y , z ) 到原点 O ( 0 , 0 , 0 ) O(0,0,0) O (

unity中shader常用方法

自古美人都是妖i 提交于 2020-01-22 19:07:16
今天给大家列出来shader中常用的一些函数,函数后面有释义,大家可以打印出来,或者在写shader的时候来这篇文章查阅,看看你需要用到哪些。 Cg提供了一系列内建的标准函数。这些函数用于执行数学上的通用计算或通用算法(纹理映射等), 有些函数直接和 GPU 指令相对应,所以执行效率非常高。 这些函数来源于文档,我为大家筛选出了常用的,去掉了基本用不到的函数。 数学函数: abs(x) 返回输入参数的绝对值 acos(x) 反余切函数,输入参数范围为[-1,1],返回[0,π]区间的角度值 all(x) 如果输入参数均不为0,则返回 ture;否则返回 flase。&&运算 any(x) 输入参数只要有其中一个不为0,则返回 true。||运算 asin(x) 反正弦函数,输入参数取值区间为[−1,1],返回角度值范围为[−π/2 ,π/2 ] atan(x) 反正切函数,返回角度值范围为⎡−π/2 ,π/2⎤ atan2(y,x) 计算y/x 的反正切值。实际上和atan(x)函数功能完全一样,至少输入参数不同。atan(x) = atan2(x, float(1)) ceil(x) 对输入参数向上取整。例如:ceil(float(1.3)),其返回值为 2.0 clamp(x,a,b) 如果x 值小于 a,则返回a;如果 x 值大于 b,返回b;否则,返回 x cos(x)

模式识别系列之特征降维(1)主成分分析

半城伤御伤魂 提交于 2020-01-19 11:54:20
目录 1-PCA概述 2-理论推导 2.1-向量的内积与投影: 2.2-基的表示与变换: 2.3-协方差矩阵: 2.4-PCA推导 3-几何理解 4-计算过程 4.1-样本数小于特征数时的计算 4.2-matlab代码 5-实例 参考 1-PCA概述 主成分分析是一种常用的降维方法,它不使用标签信息,通过将原始坐标空间的数据( d × 1 d\times 1 d × 1 )投影到新的正交空间( k × 1 k\times 1 k × 1 )中实现数据降维,所谓的主成分就是指数据在新空间的基的方向。PCA以方差作为信息损失衡量的标准,使得数据降维过程中信息损失最小,即降维后数据的方差要尽量大。PCA首先找到所有数据方差最大的方向,并将其作为新的坐标空间的第一个轴的方向,然后在这个方向的垂直超平面上寻找第二个方差最大的方向,并作为新坐标空间第二个轴的方向,以此类推,直到找到需要的k个方向,也就是K个主成分,显然这k个新的基方向是两两垂直的。PCA的主要过程可以用“扭动坐标轴,保留K个轴”来形容。 为什么要以方差最大为依据呢?降维是为了数据更好地表示与计算,显然我们不希望降维后的数据成了一坨,使得原本分界明显的数据掺和在一起。例如,将数据投影到一维坐标系中,显然绿色的投影更好一些,因为其分散程度大,也就是方差更大。 对n个d维数据构成的数据集 X X X ( d × n d\times

“等一下,我碰!”——常见的2D碰撞检测

不羁的心 提交于 2020-01-01 22:05:06
转自:https://aotu.io/notes/2017/02/16/2d-collision-detection/ 在 2D 环境下,常见的碰撞检测方法如下: 外接图形判别法 轴对称包围盒(Axis-Aligned Bounding Box),即无旋转矩形。 圆形碰撞 圆形与矩形(无旋转) 圆形与旋转矩形(以矩形中心点为旋转轴) 光线投射法 分离轴定理 其他 地图格子划分 像素检测 下文将由易到难的顺序介绍上述各种碰撞检测方法:外接图形判别法 > 其他 > 光线投射法 > 分离轴定理。 另外,有一些场景只要我们约定好限定条件,也能实现我们想要的碰撞,如下面的碰壁反弹: 当球碰到边框就反弹(如 x/y轴方向速度取反 )。 if(ball.left < 0 || ball.right > rect.width) ball.velocityX = -ball.velocityX if(ball.top < 0 || ball.bottom > rect.height) ball.velocityY = -ball.velocityY 再例如当一个人走到 100px 位置时不进行跳跃,就会碰到石头等等。 因此,某些场景只需通过设定到适当的参数即可实现碰撞检测。 外接图形判别法 轴对称包围盒(Axis-Aligned Bounding Box) 概念:判断任意两个(无旋转

PCA降维及SVD

荒凉一梦 提交于 2019-12-23 12:37:36
PCA降维 1.相关背景 我们在实际工作中经常需要分析不同组呈现来的成千上百个指标的数据,这些指标之间经常有一些相关性指标,比如厘米和英尺,这样的指标我们只要保留一个就可以,还有一些隐藏的高度相关的特征,以通过降维方法来进行数据预处理。 2. 数据降维 主成分分析(Principal Component Analysis,简称PCA)是一种常用的降维方法,属于无监督学习。所谓降维就是将数据指标从高维度减到低维度,因为低维度的数据有如下优点: 1) 更容易进行数据分析和数据可视化 2)更容易进行数据存储 3)降低算法的运行成本 3.PCA原理 样本点分布在正交属性空间中,我们如何找到一个超平面(直线的高维推广)对所有样本点最合适的表达? 1.最近重构性:样本点到这个超平面的距离足够近(类似线性回归) 2.最大可分性:样本点到这个超平面的投影尽可能分开(方差最大化) 以上两种方式得到的主成分分析的推导是等价的,下面从”最大可分析“进行推导PCA的过程。 3.1 向量的表示及基变换 3.1.1 向量的內积 a ⃗ ⋅ b ⃗ = ∣ a ⃗ ∣ ∣ b ⃗ ∣ c o s α ( α 为 两 个 向 量 的 夹 角 ) \vec a\cdot\vec b = |\vec a||\vec b|cos\alpha(\alpha为两个向量的夹角) a ⋅ b = ∣ a ∣ ∣ b ∣ c o