09-特殊的向量

  • 0 向量 就是分量全为 0 的向量
    (0 0 … 0)
  • 单位向量 就是 L2 范数/模/长度为 1 的向量

如果一个向量大部分的位置为0, 少部分为非0的数, 那这样的向量我们就称之为稀疏向量, 反之为稠密向量, 它们是数学里面的一种叫法。稀疏向量和稠密向量在计算机程序里面在存储的时候是有差异的。对于系数项来说, 它只需要存这个向量的长度以及哪些位置, 它对应的就是要去存索引, 就是那些位置是非零的以及非零的位置, 它的值是多少,实际上就够了, 只需要存长度。 然后哪些位置有值, 然后知道那些值是多少就OK了, 剩下那些0的位置可以不用去存。 对于稠密线来说, 它就相当于是老老实实的把一个线段里面的每一个索引号所定的数值位置全部都要存下来,全部都要存下来, 对于计算机来说就是占内存多少的差异, 它们也属于特殊的向量

另外还有一种稀疏向量, 比如说咱们有些位置大部分通常都是0, 比如说有一个位置是1,其他的位置都是0, 那这种向量我们称之为one-hot编码, 中文叫独热编码, 就是单独一个位置是1的, 其他位置为0的向量, 也是比较特殊的一个向量。这个东西在机器学习里面经常会用到, 比如说晴天, 雨天, 多云这三种天气,如果这一天是这个雨天,那我们可以把雨天这块儿写1其他位置写0,如果是晴天,那我们在晴天位置写1其他的位置写0,它只会出现一个1, 也就是同一天, 只会有一种天气这种其实就是做了one-hot编码,那这个东西在机器学习里面,我们叫做离散数据的离散化,那对离散型的。就这一列是离散型的数据去做离散化,那实际上我可以去使用这种特殊的向量one-hot编码去做。

单位向量

单位向量是指长度为1的特殊向量,也称为L2范数或模为1的向量。在二维空间中,它指向原点(0, 0)的欧式距离为1的向量;在三维空间中,它指向原点(0, 0, 0)的欧式距离为1的向量。

单位向量可以通过将向量x除以它的模来获得。简单来说,单位向量就是把一个向量除以它的模,从而得到一个长度为1的向量。单位向量在欧式空间中有无数个,因为它可以指向无数个方向。

单位向量的重要作用之一是代表方向。通过单位向量,我们可以表示一个向量的方向。换句话说,任何向量都可以表示为它对应的单位向量乘上一个特定的值。

单位向量的计算很简单,对于一个非零向量x,要得到与其方向相同且长度为1的单位向量,只需将向量x除以其模长(长度)。数学表达式为:

单位向量 u = x / ||x||

其中,u为单位向量,x为非零向量,||x||表示向量x的模长(长度)。

单位向量的用途广泛,其中一个重要的应用是在机器学习和向量表示中。在向量空间模型中,可以使用单位向量来表示词向量、文本向量等,从而更好地捕捉词语或文本之间的语义关系和相似性。

下面是一个例子:

In [1]: import numpy as npIn [4]: W = np.array([3, 5, 6, 7, 8])In [5]: np.sqrt(np.sum(np.square(W)))
Out[5]: 13.527749258468683In [6]: L2 = np.sqrt(np.sum(np.square(W)))In [7]: e = W/L2In [8]: e
Out[8]: array([0.22176638, 0.36961064, 0.44353276, 0.51745489, 0.59137702])In [9]: L = np.sqrt(np.sum(np.square(e)))In [10]: L
Out[10]: 1.0

参数说明:w指的是一个向量,L2指的是L2范数, L是模长, e在数学和物理中常被用来代表单位向量;
在这里当e乘以一个数值后,我们得到一个新的向量 w,相当于在w向量的方向上取模长为1(也就是1/(w的模长))的向量,这个向量的方向与原来的单位向量是一致的。因此,单位向量更多地代表了一个方向。通过将一个向量与单位向量进行比较,我们可以得知它们是否指向相同的方向,或者它们之间的夹角是多少。这种方法不一定非要使用原始向量进行计算,我们也可以通过单位向量来进行推导。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/15045.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

5、VMWARE安装、MobaXterm SSH连接 、Ubuntu xrdp安装使用

以下是在VMware中安装Ubuntu 22.04的详细步骤: 下载Ubuntu 22.04镜像文件: 前往Ubuntu官方网站或其他可信来源,下载Ubuntu 22.04的镜像文件(.iso格式)。 创建虚拟机: 打开VMware Workstation软件&#xf…

Servlet文件的下载

第一种方法直接在前端使用超链接,也就是a标签 浏览器不能识别会直接下载(像压缩文件不能直接下载),浏览器能识别,想要下载加一个download属性。download可以不写任何信息。 首先在web下建一个文件,放需要…

在Windows 10和11中恢复已删除的照片

可以在Windows 10或11上恢复已删除的照片吗? 随着技术的发展,越来越多的用户习惯在电子设备上存储照片。如果这些照片被删除,可能会给用户带来重大损失。当照片丢失时,您可能会想是否可以恢复已删除的照片? …

Kafka原理剖析

一、简介 Kafka是一个分布式的、分区的、多副本的消息发布-订阅系统,它提供了类似于JMS的特性,但在设计上完全不同,它具有消息持久化、高吞吐、分布式、多客户端支持、实时等特性,适用于离线和在线的消息消费,如常规的…

内网隧道代理技术(十五)之 Earthworm的使用(二级代理)

Earthworm的使用(二级代理) 本文紧接着上一篇文章继续讲解Earthworm工具的使用 (二级代理)正向连接 二级正向代理发生在如下的情况: 1、Web服务器在公网,黑客可以直接访问 2、B机器在内网,黑客不能直接访问 3、Web服务器可以访问内网机器B 4、内网机器B可以访问公司…

ARM将常数加载到寄存器方法之LDR伪指令

一、是什么? LDR Rd,const伪指令可在单个指令中构造任何32位数字常数,使用伪指令可以生成超过MOV和MVN指令 允许范围的常数. 实现原理: (1)如果可以用MOV或MVN指令构造该常数,则汇编程序会生成适当的指令 (2)如果不能用MOV或MVN指令构造该常数,则汇编程序会执行下列…

【UE5】快速认识入门

目录 🌟1. 快速安装🌟2. 简单快捷键操作🌟3. 切换默认的打开场景🌟4. 虚幻引擎术语 🌟1. 快速安装 进入Unreal Engine 5官网进行下载即可:UE5 📝官方帮助文档 打开后在启动器里创建5.2.1引擎…

Vue2 第七节 Vue监测数据更新原理

(1)Vue会监视data中所有层次的数据 (2)如何监测对象中的数据 通过setter实现监视,且要在new Vue时传入要监测的数据对象中后追加的属性,Vue默认不做响应式处理如果要给后添加的属性做响应式,使…

【雕爷学编程】MicroPython动手做(18)——掌控板之声光传感器2

知识点:什么是掌控板? 掌控板是一块普及STEAM创客教育、人工智能教育、机器人编程教育的开源智能硬件。它集成ESP-32高性能双核芯片,支持WiFi和蓝牙双模通信,可作为物联网节点,实现物联网应用。同时掌控板上集成了OLED…

小研究 - 基于解析树的 Java Web 灰盒模糊测试(二)

由于 Java Web 应用业务场景复杂, 且对输入数据的结构有效性要求较高, 现有的测试方法和工具在测试Java Web 时存在测试用例的有效率较低的问题. 为了解决上述问题, 本文提出了基于解析树的 Java Web 应用灰盒模糊测试方法. 首先为 Java Web 应用程序的输入数据包进行语法建模创…

【C++】模板

前言 在我们平时的代码中经常会有不同类型的变量去执行效果差不多的函数。比如:swap(交换),sort(排序)。这些函数里其实会有大部分重复的段落,在这种情况下我们会使用重载函数,但是函数重载会有如下的问题: 1. 重载的函…

测试开源C#人脸识别模块ViewFaceCore(4:口罩检测、性别预测、年龄预测)

ViewFaceCore模块中的MaskDetector类支持识别人脸是否戴了口罩或有遮挡&#xff0c;主要调用PlotMask函数执行口罩检测操作&#xff0c;其函数原型如下所示&#xff1a; PlotMaskResult PlotMask<T>(T image, FaceInfo info)public class PlotMaskResult{//// 摘要:// …

RabbitMQ 教程 | 第2章 RabbitMQ 入门

&#x1f468;&#x1f3fb;‍&#x1f4bb; 热爱摄影的程序员 &#x1f468;&#x1f3fb;‍&#x1f3a8; 喜欢编码的设计师 &#x1f9d5;&#x1f3fb; 擅长设计的剪辑师 &#x1f9d1;&#x1f3fb;‍&#x1f3eb; 一位高冷无情的编码爱好者 大家好&#xff0c;我是 DevO…

VMware Linux 可视化增加磁盘

1、VMware 增加磁盘 2、disks挂载磁盘 此处我挂载的是20G磁盘&#xff0c;截图只是用5G的做过程演示例子。 3、验证挂载磁盘

动手学深度学习v2笔记 —— 线性回归 + 基础优化算法

二 动手学深度学习v2 —— 线性回归 基础优化算法 目录: 线性回归基础优化方法 1. 线性回归 总结 线性回归是对n维输入的加权&#xff0c;外加偏差使用平方损失来衡量预测值和真实值的差异线性回归有显示解线性回归可以看作是单层神经网络 2. 基础优化方法 梯度下降 小批量…

Spring的创建及使用

文章目录 什么是SpringSpring项目的创建存储Bean对象读取Bean对象getBean()方法 更简单的读取和存储对象的方式路径配置使用类注解存储Bean对象关于五大类注解使用方法注解Bean存储对象Bean重命名 Bean对象的读取 使用Resource注入对象Resource VS Autowired同一类型多个bean对…

echart折线图,调节折线点和y轴的间距(亲测可用)

options代码&#xff1a; options {tooltip: {trigger: axis, //坐标轴触发&#xff0c;主要在柱状图&#xff0c;折线图等会使用类目轴的图表中使用。},xAxis: {type: category,//类目轴&#xff0c;适用于离散的类目数据&#xff0c;为该类型时必须通过 data 设置类目数据。…

iOS开发-启动页广告实现

iOS开发-启动页广告实现 启动页广告实现是一个非常常见的广告展示模式。 就是在启动时候显示广告&#xff0c;之后点击跳转到广告页面或者其他APP。 一、实现启动页广告 启动页广告控件实现&#xff0c;将View放置在keyWindow上&#xff0c;显示广告图片&#xff0c;点击广告…

Pytorch(二)

一、分类任务 构建分类网络模型 必须继承nn.Module且在其构造函数中需调用nn.Module的构造函数无需写反向传播函数&#xff0c;nn.Module能够利用autograd自动实现反向传播Module中的可学习参数可以通过named_parameters()返回迭代器 from torch import nn import torch.nn.f…

Kubernetes(K8s)从入门到精通系列之五:K8s的基本概念和术语之应用类

Kubernetes K8s从入门到精通系列之五:K8s的基本概念和术语之应用类 一、Service与Pod二、Label与标签选择器三、Pod与Deployment四、Service的ClusterIP地址五、Service的外网访问问题六、有状态的应用集群七、批处理应用八、应用配置问题九、应用的运维一、Service与Pod Ser…