点积

hahalala 2021-11-23 原文

原文:https://baike.baidu.com/item/%E7%82%B9%E7%A7%AF/9648528

在数学中,数量积(dot product; scalar product,也称为点积)是接受在实数R上的两个向量并返回一个实数值标量二元运算。它是欧几里得空间的标准内积[1]
两个向量a = [a1, a2,…, an]和b = [b1, b2,…, bn]的点积定义为:
a·b=a1b1+a2b2+……+anbn。
使用矩阵乘法并把(纵列)向量当作n×1 矩阵,点积还可以写为:
a·b=a^T*b,这里的a^T指示矩阵a的转置
中文名
数量积
外文名
dot product; scalar product
别    名
标量积、点积、内积、向量的积
运算类型
二元运算
点积的三个值
u、v、u,v夹角的余弦
点积的值
u,v的点积=|u||v|cos<u,v>
应用学科
线性代数

点积定义

点积有两种定义方式:代数方式和几何方式。通过在欧氏空间中引入笛卡尔坐标系,向量之间的点积既可以由向量坐标的代数运算得出,也可以通过引入两个向量的长度角度等几何概念来求解。[1]

点积广义定义

在一个向量空间V中,定义在

上的正定对称双线性形式函数即是V的数量积,而添加有一个数量积的向量空间即是内积空间

点积代数定义

设二维空间内有两个向量

,定义它们的数量积(又叫内积、点积)为以下实数:

更一般地,n维向量的内积定义如下:[1] 

点积几何定义

设二维空间内有两个向量

,它们的夹角为

,则内积定义为以下实数:[2]

该定义只对二维和三维空间有效。
这个运算可以简单地理解为:在点积运算中,第一个向量投影到第二个向量上(这里,向量的顺序是不重要的,点积运算是可交换的),然后通过除以它们的标量长度来“标准化”。这样,这个分数一定是小于等于1的,可以简单地转化成一个角度值。

点积定义的等价性

以三维空间为例子。
①几何定义推导代数定义

,根据向量坐标的意义可知

根据点乘的分配律得

所以

注意:点乘分配律在空间内可通过几何证明,无需藉助向量关系,因此不属于循环推导。
 
②代数定义推导几何定义

,它们的终点分别为

,原点为O,

夹角为

。则

在△OAB中,由余弦定理得:

利用距离公式对这个等式稍作处理,得

去括号、合并得

注意:余弦定理和距离公式亦无需向量知识。

点积点积的值

u的大小、v的大小、u,v夹角的余弦。在u,v非零的前提下,点积如果为负,则u,v形成的角大于90度;如果为零,那么u,v垂直;如果为正,那么u,v形成的角为锐角。[2]

点积


点积
两个单位向量的点积得到两个向量的夹角的cos值,通过它可以知道两个向量的相似性,利用点积可判断一个多边形是否面向摄像机还是背向摄像机。
向量的点积与它们夹角的余弦成正比,因此在聚光灯的效果计算中,可以根据点积来得到光照效果,如果点积越大,说明夹角越小,则物体离光照的轴线越近,光照越强。

点积运算律

交换律:

分配律:

结合律:

,其中m是实数。

点积应用

平面向量的数量积a·b是一个非常重要的概念,利用它可以很容易地证明平面几何的许多命题,例如勾股定理、菱形的对角线相互垂直、矩形的对角线相等等。如证明:[3] 
(1)勾股定理: Rt△ABC中,∠C=90°,则

|CA|²+|CB|²=|AB|²。

AB = CBCA
AB²=(CBCA)²= CB·CB-2CA·CB+CA·CA
又∵ ∠C=90°,有CA⊥CB,于是CA·CB=0
∴ AB²=AC²+BC²
(2)菱形对角线相互垂直:菱形ABCD中,点O为对角线AC、BD的交点,求证AC⊥BD。
设 |AB|=|BC|=|CD|=|DA|=a
AC=(AB+BC),BD=(BC+CD)
AC·BD=(AB+BC)·(BC+CD)=a²cos(π-α)+a²-a²+a²cosα
又∵ cosα=-cos(π-α)

AC·BD=(AB+BC)·(BC+CD)=0

∴AC⊥BD
在生产生活中,点积同样应用广泛。利用点积可判断一个多边形是否面向摄像机还是背向摄像机。向量的点积与它们夹角的余弦成正比,因此在聚光灯的效果计算中,可以根据点积来得到光照效果,如果点积越大,说明夹角越小,则物理离光照的轴线越近,光照越强。物理中,点积可以用来计算合力和功。若b为单位矢量,则点积即为a在方向b的投影,即给出了力在这个方向上的分解。功即是力和位移的点积。计算机图形学常用来进行方向性判断,如两矢量点积大于0,则它们的方向朝向相近;如果小于0,则方向相反。矢量内积是人工智能领域中的神经网络技术的数学基础之一,此方法还被用于动画渲染(Animation-Rendering)。
线性变换中点积的意义:
根据点积的代数公式:a·b=a1b1+a2b2+……+anbn,假设a为给定权重向量,b为特征向量,则a·b其实为一种线性组合,函数F(a·b)则可以构建一个基于a·b+c = 0 (c为偏移)的某一超平面的线性分类器,F是个简单函数,会将超过一定阈值的值对应到第一类,其它的值对应到第二类。
 
词条图片
词条图片(5)
参考资料

版权声明:本文为hahalala原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/hahalala/p/8082161.html

点积的更多相关文章

  1. 凸包算法的应用——数一数图形中共有多少三角形

    一、问题引入 网络上经常会遇到判断图形个数的题目,如下例: 如果我们要把图中所有三角形一个一个选出来,在已知每 […]...

  2. 点积、叉积、行列式

    点积、叉积、行列式 http://www.cnblogs.com/ysjxw/archive/2008/07/ […]...

随机推荐

  1. 第十章:Python高级编程-多线程、多进程和线程池编程

    第十章:Python高级编程-多线程、多进程和线程池编程 Python3高级核心技术97讲 笔记 目录 第十章 […]...

  2. BesLyric 全新版本下载 ( Windows \\ macOS \\ Linux )

    导读 BesLyric , 一款专门制作 网易云音乐 LRC 滚动歌词的软件! 搜索、下载、制作 歌词更方便! […]...

  3. 理解与学习深度卷积生成对抗网络

    一.GAN 引言:生成对抗网络GAN,是当今的一大热门研究方向。在2014年,被Goodfellow大神提出来 […]...

  4. DG重启之后主备数据不同步

    DG重启之后主备数据不同步 问题描述:本来配置好的DG第二天重启之后,发现主备库数据不能同步,在主库上执行日志 […]...

  5. Eclipse项目推送至github

    0. 安装好git,配置正确 网上教程很多,略 1. 将eclipse中的项目放入git本地库 1.右键项目& […]...

  6. 初学者摸索之算法学习

    此文转自我个人微信公众号,时间虽然过去已经四个多月了,但是我个人认为还是能够给大家带来启发意义,所以借这个时间 […]...

  7. Asp.Net Core使用NLog+Mysql的几个小问题

    项目中使用NLog记录日志,很好用,之前一直放在文本文件中,准备放到db中,方便查询。 项目使用了Mysql, […]...

  8. Linux rsyslog日志管理系统

    日志数据记录了系统软件执行过程中的运行状态及所有系统行为,通过日志分析,可以感知过去发生了什么,继而帮助开发进 […]...

展开目录

目录导航