前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >矩阵的奇异值分解

矩阵的奇异值分解

作者头像
卡尔曼和玻尔兹曼谁曼
修改于 2019-02-05 22:21:20
修改于 2019-02-05 22:21:20
1.1K0
举报

#定义

A\in C^{m\times n},则矩阵A^{H}An个特征值\lambda _i的算术平方根\delta _{i}=\sqrt {\lambda _i}叫做A的奇异值(Singular Value )。

A\in C^{m\times n},则存在酉矩阵U\in C^{m\times n}V\in C^{m\times n}使得A=U\Sigma V^{H}式中\Sigma = \begin{bmatrix}\Sigma _1 & O\\O & O\\ \end{bmatrix},且\Sigma _{1}=diag(\sigma _{1}, \sigma _{2}, ..., \sigma _{r}),其对角元素按照顺序\sigma _{1}\geqq \sigma _{2}\geqq ...\geqq\sigma _{r}\gt 0, \quad r=rank(A)排列。

这就是所谓的矩阵的奇异值分解(Singular Value Decomposition,SVD)

注:酉矩阵是正交矩阵在复数域的推广。

#求解

有两种求V, U的步骤:

  1. A^{H}A的特征值及对应的特征向量,得到V. 其中非零向量特征值对应的特征向量构成矩阵V_1,由公式U_{1}=AV_{1}S^{-1}得到AA^H的非零特征值所对应的特征向量,其余的特征向量可以由Hermite矩阵的特征向量的正交性获得(显然不唯一)。
  2. AA^{H}的特征值及对应的特征向量,得到U. 其中非零向量特征值对应的特征向量构成矩阵U_1,由公式V_{1}=A^{H}U_{1}S^{-1}得到AA^{H}的非零特征值所对应的特征向量,其余的特征向量可以由Hermite矩阵的特征向量的正交性获得(显然不唯一)。

在Matlab中可使用svd函数进行求解:

代码语言:txt
AI代码解释
复制
>> A = [1 0 1; 0 1 -1];
>> [U, S, V] = svd(A)

U =

   -0.7071    0.7071
    0.7071    0.7071


S =

    1.7321         0         0
         0    1.0000         0


V =

   -0.4082    0.7071   -0.5774
    0.4082    0.7071    0.5774
   -0.8165   -0.0000    0.5774
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016年03月24日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
【愚公系列】《循序渐进Vue.js 3.x前端开发实践》064-Pinia 中的一些核心概念
在现代前端开发中,状态管理是确保应用程序高效、可维护的关键因素之一。随着 Vue.js 的普及,Pinia 作为其新一代状态管理库,逐渐成为开发者的热门选择。Pinia 的设计不仅简洁明了,还提供了强大的功能,旨在简化状态管理的复杂性。
愚公搬代码
2025/06/02
310
【愚公系列】《循序渐进Vue.js 3.x前端开发实践》064-Pinia 中的一些核心概念
美团前端vue面试题_2023-05-19
Vue3最重要更新之一就是Composition API,它具有一些列优点,其中不少是针对Options API暴露的一些问题量身打造。是Vue3推荐的写法,因此掌握好Composition API应用对掌握好Vue3至关重要
用户10358241
2023/05/19
1.1K0
简单了解一下pinia的结构
一开始看,是把数据部分变成了 ref,但是仔细一看,原理是toRef。好吧,大概是为了保证响应性,自动结构了。只是还是挺无语的。
用户1174620
2022/05/09
5290
简单了解一下pinia的结构
Pinia入门-实现简单的用户状态管理
在整个应用程序中访问的数据(且不需要被持久化),例如导航栏中显示的用户信息,以及需要通过页面保留的数据,例如一个非常复杂的多步骤表格。
luciozhang
2023/04/22
7750
【vue3】详解单向数据流,大家千万不用为了某某而某某了。
vue的版本一直在不断更新,内部实现方式也是不断的优化,官网也在不断更新。 既然一切皆在不停地发展,那么我们呢?等着官网更新还是有自己的思考? 我觉得我们要走在官网的前面,而不是等官网更新后,才知道原来可以这么实现。。。
用户1174620
2024/08/03
2270
【vue3】详解单向数据流,大家千万不用为了某某而某某了。
pinia
Pinia 介绍: 状态管理工具,代替Vuex 安装: npm install pinia 配置: main.ts: import {createPinia} from 'pinia'//导入 const state = createPinia()// app.use(state)// 初始化仓库 src/store/index.ts import { defineStore } from 'pinia' import { names } from './store_name' export const
kif
2023/02/27
1920
Vue 框架学习系列五:Vue 3 与状态管理库 Pinia 的深度集成
在构建复杂的 Vue.js 应用时,状态管理是一个重要的考虑因素。Vuex 是 Vue.js 官方推荐的状态管理库,但随着 Vue 3 和 Composition API 的发布,一个新的状态管理库 Pinia 开始崭露头角。Pinia 提供了与 Vue 3 和 Composition API 更紧密的集成,同时保持了 Vuex 的核心概念,如 state、mutations、actions 和 getters。本篇文章将探讨如何在 Vue 3 应用中深度集成 Pinia。
china马斯克
2024/10/04
3410
Pinia状态管理器学习笔记,持续记录
官方文档:https://pinia.vuejs.org/ 中文文档:https://pinia.web3doc.top/
房东的狗丶
2023/02/17
1.7K0
Vue项目进阶:再谈Pinia函数式(composition API)用法
Hello大家好,前段时间写了一篇关于Pinia的composition API用法的文章《Pinia进阶:优雅的setup(函数式)写法+封装到你的企业项目》,收到了不少朋友的反馈和建议。笔者也结合最近项目情况和网友们的建议做一次优化,也算是一个比较完整的版本了,这包括:
南山种子外卖跑手
2022/04/21
3.5K0
Vue项目进阶:再谈Pinia函数式(composition API)用法
欧耶!Pinia 正式成为 vuejs 的一员
Pinia 正式成为 vuejs 官方的状态库,意味着 🍍 就是 Vuex 5.x 。 先来看早期 vue 上一个关于 Vuex 5.x 的 RFC : 描述中可以看到,Vue 5.x 主要改善以下几个特性: 同时支持 composition api 和 options api 的语法; 去掉 mutations,只有 state、getters 和 actions; 不支持嵌套的模块,通过组合 store 来代替; 更完善的 Typescript 支持; 清晰、显式的代码拆分; 而 Pinia
码农小余
2022/06/16
6740
欧耶!Pinia 正式成为 vuejs 的一员
vue3了,试试轻量化的Vuex -- Pinia?
Pinia 是 Vue.js 的轻量级状态管理库,最近很受欢迎。它使用 Vue 3 中的新反应系统来构建一个直观且完全类型化的状态管理库。
玖柒的小窝
2021/11/04
1.5K0
vue3了,试试轻量化的Vuex -- Pinia?
Vue3中使用Pinia详解
Pinia是一个专门为Vue.js设计的状态管理库,它提供了一种简单和直观的方式来管理应用程序的状态。在使用Pinia时,可以轻松地创建定义状态的存储,然后将其与Vue组件绑定,使它们能够使用该状态。和上一个博客提到的Vuex相比,Pinia 更加简单易用,体积更小,同时具有更好的 TypeScript 支持和插件系统。
九仞山
2023/10/14
1K0
Vue3之状态管理:Vuex和Pinia,孰强孰弱?
在前端开发中,状态管理器是一种用于管理应用程序全局状态的工具。它通常用于大型应用程序,可以帮助开发者更好地组织和管理状态,并提供一些强大的工具来简化状态的变更和使用。
用户6297767
2023/11/21
2.6K0
Vue3之状态管理:Vuex和Pinia,孰强孰弱?
2021-10-06 vue3-你可能需要pinia来作为状态管理
好久没写博客了,其实我之前和现在写博客的唯一目的,就是为了记录一些不重要,但是以后可能会用但会忘的资料,也就是为了以后方便自己查找。这是其一。
无道
2021/10/08
1.6K0
pinia基本使用介绍
比如开始的时候我们可以使用缓存进行同步数据,虽然很low但是它确实属于一种方案,但是这种方案的实时性很差,也就是很难做到信息的及时同步,虽然你可以写很多监听来达到一个同步的效果,但是代码维护起来就会很笨重
何处锦绣不灰堆
2022/09/21
9110
结合 Vuex 和 Pinia 做一个适合自己的状态管理 nf-state
结合 Vuex 和 Pinia, 保留需要的功能,去掉不需要的功能,修改一下看着不习惯的使用方法,最后得到了一个满足自己需要的轻量级状态管理 —— nf - state。
用户1174620
2022/05/12
9610
结合 Vuex 和 Pinia 做一个适合自己的状态管理 nf-state
Pinia不就是Vuex5?
刚开始使用vue3的时候,全局状态管理器都是使用pinia。还没去了解的时候并不明白为什么要换掉vuex,毕竟是用了好几年的状态管理器,能达到的效果和语法跟vuex几乎一模一样,所以为什么要换?
wade
2022/12/02
5890
Pinia不就是Vuex5?
一文梳理vue面试题知识点
Vue3.x 改用 Proxy 替代 Object.defineProperty。因为 Proxy 可以直接监听对象和数组的变化,并且有多达 13 种拦截方法。
bb_xiaxia1998
2022/10/24
9770
前端常见vue面试题合集
通过webpack的tree-shaking功能,可以将无用模块“剪辑”,仅打包需要的
bb_xiaxia1998
2022/11/09
7600
使用 Vue 3 与 TypeScript 构建 Web 应用: Todo
引言 界面: Vue.js 3 JavaScript 超集: TypeScript 包管理器: pnpm 前端工程化/打包: Vite 路由: Vue Router 状态管理: Pinia CSS 预处理器: Less 代码格式化: Prettier 代码质量: ESLint 预览
yiyun
2023/07/17
1.2K0
使用 Vue 3 与 TypeScript 构建 Web 应用: Todo
推荐阅读
相关推荐
【愚公系列】《循序渐进Vue.js 3.x前端开发实践》064-Pinia 中的一些核心概念
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档