向量(Vector)基础概念与应用
1. 什么是向量在数学和计算机科学中向量Vector是一个具有大小和方向的量。它可以用来表示空间中的点、方向、位移或任何具有多个分量的数据。在编程和数据处理中向量通常表示为有序的数字列表数组例如# Python 中的向量表示 vector_2d [3.0, 4.0] # 二维向量 vector_3d [1.0, 2.0, 3.0] # 三维向量2. 向量的基本运算2.1 向量加法两个向量相加对应分量相加def vector_add(v1, v2): return [v1[i] v2[i] for i in range(len(v1))] 示例 v1 [1, 2, 3] v2 [4, 5, 6] result vector_add(v1, v2) # [5, 7, 9]2.2 向量点积内积点积是两个向量对应分量乘积之和结果是一个标量def dot_product(v1, v2): return sum(v1[i] * v2[i] for i in range(len(v1))) 示例 v1 [1, 2, 3] v2 [4, 5, 6] result dot_product(v1, v2) # 322.3 向量范数长度向量的范数表示其大小常用欧几里得范数L2范数import math def vector_norm(v): return math.sqrt(sum(x * x for x in v)) 示例 v [3, 4] length vector_norm(v) # 5.03. 向量在计算机科学中的应用3.1 机器学习与向量嵌入在机器学习中向量常用于表示数据的特征。词向量Word Embeddings将单词映射到高维向量空间# 示例简单的词向量表示 word_vectors { king: [0.2, 0.8, -0.3], queen: [0.3, 0.7, -0.2], man: [0.1, 0.9, -0.4], woman: [0.2, 0.8, -0.3] }3.2 图形学与游戏开发在计算机图形学和游戏开发中向量用于表示位置、速度、加速度和方向class Vector2D: def __init__(self, x, y): self.x x self.y y def add(self, other): return Vector2D(self.x other.x, self.y other.y) def scale(self, scalar): return Vector2D(self.x * scalar, self.y * scalar) 示例游戏中的位置移动 position Vector2D(100, 200) velocity Vector2D(5, 3) new_position position.add(velocity) # 移动到新位置3.3 数据库与向量搜索现代数据库支持向量搜索用于相似性查找-- PostgreSQL 中使用 pgvector 扩展进行向量搜索 CREATE TABLE items ( id SERIAL PRIMARY KEY, name VARCHAR(100), embedding VECTOR(1536) ); -- 查找最相似的物品 SELECT name, embedding [0.1, 0.2, ...] AS distance FROM items ORDER BY distance LIMIT 10;4. 向量数据库简介向量数据库专门用于存储和检索向量数据支持高效的相似性搜索Pinecone云原生向量数据库Weaviate开源向量搜索引擎QdrantRust 编写的高性能向量数据库Milvus开源向量数据库支持大规模向量检索5. 实践建议选择合适的维度根据应用场景选择向量维度平衡精度和性能归一化处理对向量进行归一化可以提高相似性计算的准确性索引优化对于大规模向量数据使用合适的索引结构如 HNSW、IVF距离度量根据应用选择合适的距离度量方式余弦相似度、欧氏距离等6. 总结向量作为表示多维数据的基本工具在人工智能、数据科学和计算机图形学等领域有着广泛的应用。理解向量的基本概念和运算掌握向量在具体场景中的应用方法对于现代软件开发至关重要。

相关新闻

Linux文件管理知识

Linux文件管理知识

/bin:二进制基础命令。存放系统启动和恢复时必需的常用命令,如 ls、cp。现在很多是 /usr/bin 的软链接。 /sbin:系统管理命令。存放供管理员使用的系统级工具,如 fdisk、reboot。普通用户通常没有权限执行。 /boot:启动…

2026/7/24 19:00:19阅读更多 →
智能网络加速:3分钟彻底解决GitHub访问慢的5种专业方案

智能网络加速:3分钟彻底解决GitHub访问慢的5种专业方案

智能网络加速:3分钟彻底解决GitHub访问慢的5种专业方案 【免费下载链接】GitHub520 :kissing_heart: 让你“爱”上 GitHub,解决访问时图裂、加载慢的问题。(无需安装) 项目地址: https://gitcode.com/GitHub_Trending/gi/GitHub…

2026/7/24 19:00:19阅读更多 →
C++与Rust协同静态分析:五大技术突破与实践指南

C++与Rust协同静态分析:五大技术突破与实践指南

1. 项目概述:当C遇见Rust,静态分析的新篇章最近几年,在开发者社区里,一个话题的热度持续攀升:当老牌系统级语言的王者C,遇上后起之秀、以安全著称的Rust,它们之间能碰撞出什么火花?尤…

2026/7/24 19:00:19阅读更多 →
FastAPI做项目的后端准备

FastAPI做项目的后端准备

FastAPI做项目的后端准备 文章目录FastAPI做项目的后端准备前言一、理解框架之间的关系?二、Main里面的配置定义 lifespan 生命周期函数1. 引入必要的库代码说明:2. 多环境配置依赖相关文件一览三个环境对照表配置实现步骤1. 创建配置文件2. 创建环境文件…

2026/7/24 23:31:09阅读更多 →
JavaSE 基础语法 - 方法的使用 - ②

JavaSE 基础语法 - 方法的使用 - ②

接上节 JavaSE 基础语法 - 方法的使用 - ① 的内容。 十一、方法签名 在学习方法重载之前,我们需要先了解一个非常重要的概念——方法签名(Method Signature)。 很多初学者都有这样的疑问: 为什么下面三个方法都叫 sum()&#xff…

2026/7/24 23:31:09阅读更多 →
基于SPN结构的抗量子分组加密算法GiantWhale

基于SPN结构的抗量子分组加密算法GiantWhale

基于SPN结构的抗量子分组加密算法GiantWhale我们知道,量子计算机对RSA和ECC等非对称加密算法的威胁非常大,对AES、ARIA和SM4等对称加密算法的威胁则较小。就目前来说,量子算法对对称加密算法分支之一的分组加密算法有两大威胁:&am…

2026/7/24 23:31:09阅读更多 →
MonkeyCode 多模型调度与云端开发环境解析

MonkeyCode 多模型调度与云端开发环境解析

不同大模型各有所长,让任务决定模型,比让团队绑定单一模型更合理。同时,云端开发环境让“打开浏览器就能验证需求”成为现实。## 一、为什么需要多模型调度| 模型方向 | 更适合的场景 | 特点 ||---|---|---|| 通用推理型 | 需求澄清、方案讨论…

2026/7/24 23:31:09阅读更多 →
MonkeyCode 架构深度解析:SDD 规范驱动开发的工程哲学

MonkeyCode 架构深度解析:SDD 规范驱动开发的工程哲学

> AI 编程工具正在从“Vibe Coding”走向“工程化开发”,MonkeyCode 首创的 SDD 规范驱动开发模式,正在重新定义 AI 写代码的方式。## 一、AI 编程的“屎山代码”危机你是否遇到过这样的场景?开发者A:“帮我实现用户登录”→ A…

2026/7/24 23:31:09阅读更多 →
灵境1911 短剧工业化系统:AI短剧量产工作流全解析

灵境1911 短剧工业化系统:AI短剧量产工作流全解析

AI短剧正从"单条手工制作"向"工业化批量生产"演进。据《中国网络视听发展研究报告(2026)》数据显示,2026年Q1全行业上线微短剧约12.8万部,其中AI短剧约12.2万部,占比超过95%。AI短剧占整个AI行业算…

2026/7/24 23:29:09阅读更多 →
Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/24 0:58:53阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/24 0:58:53阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/24 0:58:53阅读更多 →
我的编程之路:第一篇博客

我的编程之路:第一篇博客

大家好,我是一名编程初学者,同时这也是我编程学习之路上的第一篇博客。在这里,我想要向大家介绍我的一些想法和规划。a.自我介绍我是一个刚刚接触编程的新手,目前在学习c语言,我对编程世界充满了强烈的好奇。当然&…

2026/7/24 0:00:06阅读更多 →
【LeetCode 54】螺旋矩阵

【LeetCode 54】螺旋矩阵

问题描述: 解法: 1、模拟(参考自【LeetCode 54】螺旋矩阵-CSDN博客) int *spiralOrder(int **matrix, int matrixSize, int *matrixColSize, int *returnSize) {static const int dirs[4][2] {{0, 1}, {1, 0}, {0, -1}, {-1, …

2026/7/24 0:00:06阅读更多 →
2026 WAIC:模型隐身、智能体疯野,厂商竞赛聚焦办公场景与商业闭环

2026 WAIC:模型隐身、智能体疯野,厂商竞赛聚焦办公场景与商业闭环

知春路不相信模型领先今年WAIC大会,昔日AI六小龙来了五家,分别是Kimi、阶跃星辰、Minimax、百川智能、零一万物。连放弃基模的百川和零一万物都来了,唯一缺席的竟是近几个月来风光无限的智谱。(DeepSeek一直不参加)WAI…

2026/7/24 0:00:06阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/24 23:01:03阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/24 19:00:40阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/24 19:00:40阅读更多 →