草庐IT

线性代数的本质

线性代数的本质将只停留在数值运算和公式的线性代数推进到可视化几何直观(VisualGeometricIntuition)的理解领悟上,本文为https://www.3blue1brown.com/的学习笔记。1.向量究竟是什么线性代数中最基础,最根源的组成部分就是向量。一般来说有三种看待向量的观点,看似不同却有所关联,分别为在物理学,数学,计算机上的观点。[1]从物理学角度向量是空间中的箭头决定一个向量的是:它的长度和它所指的方向向量可以在空间中如何位置落脚(起点),但是在线性代数中向量(通常以坐标系中的原点为起点)[2]从计算机专业角度向量是有序的数字列表向量不过是“列表”一个花哨的说法向量

本质矩阵(Essential Matrix)E进行分解的过程

分解本质矩阵的过程遵循以下步骤:使用奇异值分解(SVD)计算本质矩阵E的分解。SVD分解是一种将矩阵分解为三个矩阵的乘积的方法,它的形式为E=UΣV^T,其中U和V是正交矩阵,Σ是对角矩阵。此步骤的结果存储在u、w和vt中。把U矩阵的第三列复制到t,并进行归一化。t代表相机的平移向量。定义W矩阵。在某些情况下,W也被称为"旋转矩阵",它是由本质矩阵E的属性决定的。计算两个可能的旋转矩阵R1和R2。这两个矩阵代表相机的旋转。检查R1和R2的行列式。如果行列式为负,则将对应的旋转矩阵取反。因为在计算机视觉中,我们通常希望旋转矩阵具有正的行列式,这意味着它们代表了一个右手坐标系的旋转。根据本质矩阵E

从内核世界透视 mmap 内存映射的本质(源码实现篇)

本文基于内核5.4版本源码讨论通过上篇文章《从内核世界透视mmap内存映射的本质(原理篇)》的介绍,我们现在已经非常清楚了mmap背后的映射原理以及它的使用方法,其核心就是在进程虚拟内存空间中分配一段虚拟内存出来,然后将这段虚拟内存与磁盘文件映射起来,整个mmap系统调用就结束了。而在mmap内存映射的整个过程中,最为核心且复杂烧脑的环节其实不是内存映射的逻辑,而是虚拟内存分配的整个流程。笔者曾在之前的文章《深入理解Linux物理内存分配全链路实现》中详细地为大家介绍了物理内存的分配过程,那么虚拟内存的分配过程又是什么样的呢?本文我们将进入到内核源码实现中,来看一下虚拟内存分配的过程,在这个过

金丝雀发布的本质

理解“金丝雀发布”定义金丝雀发布在国内也经常被叫做灰度发布。下文将使用”金丝雀发布“这一术语。金丝雀发布是发布模式的一种。“发布”是什么意思?发布:即宣布,发表。有向外公开的意思。说到“发布”,就不得不说“部署”。不少人将“发布”与“部署”两个概念混淆。“部署”又是什么意思?在软件工程领域,“部署”指的是将(编译)打包好的程序发送到目标服务器上,并启动执行。就是说,部署了,并不一定代表着向用户发布。如果把软件产品比喻成一舞台剧。部署是将舞台提前布置好,但是幕布是拉上的。而发布则是把观众放进剧场,然后拉开幕布。注意:只有真正“拉开幕布”,才称为发布。那金丝雀发布又是什么?接着刚刚说的比喻,指的是

LLMs:《A Survey on Evaluation of Large Language Models大型语言模型评估综述》理解智能本质(具备推理能力)、AI评估的重要性(识别当前算法的局限性+设

LLMs:《ASurveyonEvaluationofLargeLanguageModels大型语言模型评估综述》翻译与解读导读:该文章首先介绍了人工智能(AI)对机器智能的专注,并探讨了评估AI模型的方法。随后,重点介绍了大语言模型(LLMs)的背景和特点,以及它们在自然语言处理、推理、生成等各类任务中的表现。文章还详细探讨了现有的评估基准和评估方式,包括自动评估和人工评估。在总结部分,突出了LLMs在不同任务中的成功与失败案例,并提出了未来评估LLMs的挑战与机遇,包括设计AGI基准、完整行为评估、鲁棒性评估、动态演进评估、可信度评估等。该文章为评估和提升AI模型提供了全面概述和指导。LL

【人工智能】大模型的涌现能力:概念、原理、本质和未来发展趋势

目录人工智能中的大模型大模型的涌现能力的原理大模型的涌现能力的本质涌现能力的定义

线性代数的本质(一)——向量空间

文章目录向量空间向量及其性质基与维数向量的坐标运算《线性代数的本质》-3blue1brown高中数学A版选修4-2矩阵与变换《线性代数及其应用》(第五版)《高等代数简明教程》-蓝以中向量空间InthebeginningGrantcreatedthespace.AndGrantsaid,Lettherebevector:andtherewasvector.向量及其性质三维几何空间中的一个有向线段称为向量(vector)。本文统一用a,b,c,k,λa,b,c,k,\lambdaa,b,c,k,λ表示标量,小写黑体字母u,v,w,a,b,x\mathbfu,\mathbfv,\mathbfw,\m

编程语言:类型系统的本质

0.引子我一直对编写更好的代码有浓厚的兴趣。如果你能真正理解什么是抽象,什么是具象,就能理解为什么现代编程语言中,接口和函数类型为什么那么普遍存在了。在使用函数式语言进行编程后,就能够很清晰地理解为什么随着时间的推移,更主流的语言开始采用函数式语言中的一些被认为理所当然的特性。我将多年间学习类型系统和编程语言开发的经验汇聚起来,加以提炼,并辅以现实世界的应用,撰写了这篇文章。本文脉络如下:概述:什么是类型?为什么要引入类型的概念?编程语言中的基本类型类型组合OOP与接口类型函数类型函子(Functor)和单子(Monad)1.概述:什么是类型?为什么要引入类型的概念?类型系统设计的理论与日常生

线性代数的本质(四)——行列式

文章目录行列式二阶行列式nnn阶行列式行列式的性质克拉默法则行列式的几何理解行列式二阶行列式行列式引自对线性方程组的求解。考虑两个方程的二元线性方程组{a11x1+a12x2=b1a21x1+a22x2=b2\begin{cases}a_{11}x_1+a_{12}x_2=b_1\\a_{21}x_1+a_{22}x_2=b_2\end{cases}{a11​x1​+a12​x2​=b1​a21​x1​+a22​x2​=b2​​可使用消元法,得(a11a22−a12a21)x1=b1a22−a12b2(a11a22−a12a21)x2=a11b2−b1a21(a_{11}a_{22}-a_{1

【科大讯飞星火】如果说数据结构统治着整个计算机程序的世界,那么算法就可以被看作是程序员的全部装备。一般的来看的话,计算机本质就是信息的存储和处理的技术

文章目录第一章:计算机科学基础1.1计算机硬件1.2计算机软件1.3计算机程序1.4数据表示与处理1.5算法与数据结构第二章:编程语言2.1Python2.2Java2.3C++变量和数据类型函数类和对象模板异常处理并发编程泛型编程函数式编程第三章:数据结构的基本概念什么是数据结构?数据结构的分类1.按照存储方式分类2.按照操作方式分类2.3.1数组2.3.2链表2.3.3栈2.3.4队列2.3.5树2.3.6图2.3.7散列表2.3.8图论算法2.3.9动态规划2.4数据结构的优缺点数组链表栈队列2.4.1堆2.4.2二叉搜索树2.4.3AVL树2.4.4B树2.4.5B+树2.4.6Tri