高级优化理论与方法(七)

高级优化理论与方法(七)

  • Solving Linear Equations
    • Case 2
      • Theorem
      • Kaczmarz's Algorithm
        • Theorem
        • Example
    • Pseudoinverse
      • Definition
        • Special Case 1
        • Special Case 2
      • Properties of Pseudoinverse
        • Lemma 1: Unique pseudoinverse
        • Lemma 2: Full Rank Factorization
        • Lemma 3
          • Example
    • Case 3
      • Theorem
  • Neural Networks
    • Single neuron
      • Case 1
      • Case 2
    • Multiple Layers
  • 总结

Solving Linear Equations

Case 2

A x = b , A ∈ R m × n , m ≤ n , r a n k A = m , x ∈ R n , b ∈ R m Ax=b, A\in \mathbb{R}^{m\times n}, m\leq n, rank A=m, x\in \mathbb{R}^n, b\in \mathbb{R}^m Ax=b,ARm×n,mn,rankA=m,xRn,bRm

⇒ \Rightarrow infinite many solutions

⇒ m i n ∣ ∣ x ∣ ∣ \Rightarrow min ||x|| min∣∣x∣∣
s.t. A x = b Ax=b Ax=b

注:在此情形下,由于有无穷多解,可以将 A x = b Ax=b Ax=b看成是优化问题的约束条件,而这个问题可以看成有限子条件的优化问题。

Theorem

Thm: The unique solution x ∗ x^* x of A x = b Ax=b Ax=b that minimizes ∣ ∣ x ∣ ∣ ||x|| ∣∣x∣∣ is given by x ∗ = A T ( A A T ) − 1 b x^*=A^T (AA^T)^{-1}b x=AT(AAT)1b .

Kaczmarz’s Algorithm

为了避免计算逆矩阵,我们介绍Kaczmarz算法。

  1. Set i = 0 , x 0 i=0, x^0 i=0,x0
  2. For j = 1 , ⋯ , m j=1,\cdots, m j=1,,m do
    x i m + j = x i m + j − 1 + μ ( b j − a j T x i m + j − 1 ) a j a j T a j x^{im+j}=x^{im+j-1}+\mu(b_j-{a_j}^Tx^{im+j-1})\frac{a_j}{{a_j}^Ta_j} xim+j=xim+j1+μ(bjajTxim+j1)ajTajaj
  3. i i i++, goto 2

注: 0 < μ < 2 0<\mu<2 0<μ<2。由于带限制的优化问题较为复杂,故在本门课程中对带限制的优化问题算法的收敛速度不进行研究。

Theorem

In Kaczmarz’s Algorithm, if x 0 = 0 x^0=0 x0=0, then x k → x ∗ = A T ( A A T ) − 1 b x^k\to x^*=A^T (AA^T)^{-1}b xkx=AT(AAT)1b as k → ∞ k\to \infty k.

Example

A = [ 1 − 1 0 1 ] A=\begin{bmatrix} 1&-1 \\ 0&1 \end{bmatrix} A=[1011]

b = [ 2 3 ] b=\begin{bmatrix} 2 \\ 3 \end{bmatrix} b=[23]

μ = 1 , x 0 = [ 0 0 ] \mu=1, x^0=\begin{bmatrix} 0 \\ 0 \end{bmatrix} μ=1,x0=[00]

a 1 = [ 1 − 1 ] a_1=\begin{bmatrix} 1 \\ -1 \end{bmatrix} a1=[11]

a 2 = [ 0 1 ] a_2=\begin{bmatrix} 0 \\ 1 \end{bmatrix} a2=[01]

b 1 = 2 , b 2 = 3 b_1=2, b_2=3 b1=2,b2=3

i = 0 , j = 1 : x 1 = [ 0 0 ] + ( 2 − [ 1 , − 1 ] ⋅ [ 0 0 ] ) [ 1 − 1 ] [ 1 , − 1 ] ⋅ [ 1 − 1 ] = [ 1 − 1 ] i=0, j=1: x^1=\begin{bmatrix} 0 \\ 0 \end{bmatrix}+\left(2-[1,-1]\cdot \begin{bmatrix} 0 \\ 0 \end{bmatrix}\right)\frac{\begin{bmatrix} 1 \\ -1 \end{bmatrix}}{[1,-1]\cdot \begin{bmatrix} 1 \\ -1 \end{bmatrix}}=\begin{bmatrix} 1 \\ -1 \end{bmatrix} i=0,j=1:x1=[00]+(2[1,1][00])[1,1][11][11]=[11]

i = 0 , j = 2 : x 2 = [ 1 − 1 ] + ( 3 − [ 0 , − 1 ] ⋅ [ 1 − 1 ] ) [ 0 1 ] [ 0 , 1 ] ⋅ [ 0 1 ] = [ 1 3 ] i=0, j=2: x^2=\begin{bmatrix} 1 \\ -1 \end{bmatrix}+\left(3-[0,-1]\cdot \begin{bmatrix} 1 \\ -1 \end{bmatrix}\right)\frac{\begin{bmatrix} 0 \\ 1 \end{bmatrix}}{[0,1]\cdot \begin{bmatrix} 0 \\ 1 \end{bmatrix}}=\begin{bmatrix} 1 \\ 3 \end{bmatrix} i=0,j=2:x2=[11]+(3[0,1][11])[0,1][01][01]=[13]

i = 1 , j = 1 : x 3 = [ 1 3 ] + ( 2 − [ 1 , − 1 ] ⋅ [ 1 3 ] ) [ 1 − 1 ] [ 1 , − 1 ] ⋅ [ 1 − 1 ] = [ 3 1 ] i=1, j=1: x^3=\begin{bmatrix} 1 \\ 3 \end{bmatrix}+\left(2-[1,-1]\cdot \begin{bmatrix} 1 \\ 3 \end{bmatrix}\right)\frac{\begin{bmatrix} 1 \\ -1 \end{bmatrix}}{[1,-1]\cdot \begin{bmatrix} 1 \\ -1 \end{bmatrix}}=\begin{bmatrix} 3 \\ 1 \end{bmatrix} i=1,j=1:x3=[13]+(2[1,1][13])[1,1][11][11]=[31]

⋯ \cdots

x ∗ = [ 5 3 ] x^*=\begin{bmatrix} 5 \\ 3 \end{bmatrix} x=[53]

Pseudoinverse

Definition

A + ∈ R m × n A^+\in\mathbb{R}^{m\times n} A+Rm×n is a pseudoinverse of A A A, if A A T A = A AA^TA=A AATA=A and ∃ U ∈ R n × n , V ∈ R m × m \exist U\in \mathbb{R}^{n\times n}, V\in \mathbb{R}^{m\times m} URn×n,VRm×m s.t. A + = U A T , A + = A T V A^+=UA^T, A^+=A^TV A+=UAT,A+=ATV
注:pseudoinverse表示伪逆,是矩阵逆的一种广义形式。

Special Case 1

m ≥ n , r a n k A = n m\geq n, rank A=n mn,rankA=n

A + = ( A T A ) − 1 A T → A A + A = A A^+=(A^TA)^{-1}A^T\rightarrow AA^+A=A A+=(ATA)1ATAA+A=A

U = ( A T A ) − 1 , V = A ( A T A ) − 1 ( A T A ) − 1 A T U=(A^TA)^{-1}, V=A(A^TA)^{-1}(A^TA)^{-1}A^T U=(ATA)1,V=A(ATA)1(ATA)1AT

A + = U A T , A + = A T V A^+=UA^T, A^+=A^TV A+=UAT,A+=ATV

Special Case 2

m ≤ n , r a n k A = m m\leq n, rank A=m mn,rankA=m

A + = A T ( A A T ) − 1 → A A + A = A A^+=A^T(AA^T)^{-1}\rightarrow AA^+A=A A+=AT(AAT)1AA+A=A

U = A T ( A A T ) − 1 ( A A T ) − 1 A , V = ( A A T ) − 1 U=A^T(AA^T)^{-1}(AA^T)^{-1}A, V=(AA^T)^{-1} U=AT(AAT)1(AAT)1A,V=(AAT)1

A + = U A T , A + = A T V A^+=UA^T, A^+=A^TV A+=UAT,A+=ATV

Properties of Pseudoinverse

Lemma 1: Unique pseudoinverse

pf: Assume: A 1 + , A 2 + A_1^+, A_2^+ A1+,A2+ pseudoinverse of A A A.
A A 1 + A = A A 2 + A = A AA_1^+A=AA_2^+A=A AA1+A=AA2+A=A
And U 1 , U 2 ∈ R n × n , V 1 , V 2 ∈ R m × m U_1,U_2\in \mathbb{R}^{n\times n}, V_1,V_2\in \mathbb{R}^{m\times m} U1,U2Rn×n,V1,V2Rm×m

A 1 + = U 1 A T = A T V 1 , A 2 + = U 2 A T = A T V 2 A_1^+=U_1A^T=A^TV_1, A_2^+=U_2A^T=A^TV_2 A1+=U1AT=ATV1,A2+=U2AT=ATV2

Let D = A 2 + − A 1 + , U = U 2 − U 1 , V = V 2 − V 1 D=A_2^+-A_1^+, U=U_2-U_1, V=V_2-V_1 D=A2+A1+,U=U2U1,V=V2V1

Then O = A D A , D = U A T = A T V O=ADA, D=UA^T=A^TV O=ADA,D=UAT=ATV

⇒ ( D A ) T D A = A T D T D A = A T V T A D A = O \Rightarrow (DA)^TDA=A^TD^TDA=A^TV^TADA=O (DA)TDA=ATDTDA=ATVTADA=O

⇒ D A = O \Rightarrow DA=O DA=O

⇒ D D T = D A U T = O ⇒ D = O \Rightarrow DD^T=DAU^T=O\Rightarrow D=O DDT=DAUT=OD=O

Lemma 2: Full Rank Factorization

Let A ∈ R m × n , r a n k A = r ≤ m i n ( m , n ) A\in \mathbb{R}^{m\times n}, rank A=r\leq min(m,n) ARm×n,rankA=rmin(m,n). Then exist B ∈ R m × r B\in\mathbb{R}^{m\times r} BRm×r and C ∈ R r × n C\in\mathbb{R}^{r\times n} CRr×n, with r a n k B = r a n k C = r rankB=rankC=r rankB=rankC=r and A = B C A=BC A=BC.

Lemma 3

Let A ∈ R m × n A\in \mathbb{R}^{m\times n} ARm×n have full rank factorization A = B C A=BC A=BC, Then A + = C + B + A^+=C^+B^+ A+=C+B+.

Example

A = [ 2 1 − 2 5 1 0 − 3 2 3 − 1 − 13 5 ] A=\begin{bmatrix} 2&1&-2&5 \\ 1&0&-3&2\\ 3&-1&-13&5 \end{bmatrix} A= 2131012313525

r a n k A = 2 rankA=2 rankA=2

B = [ 2 1 1 0 3 − 1 ] B=\begin{bmatrix} 2&1 \\ 1&0 \\ 3&-1 \end{bmatrix} B= 213101

C = [ 0 1 − 3 2 1 0 4 1 ] C=\begin{bmatrix} 0&1&-3&2 \\ 1&0&4&1 \end{bmatrix} C=[01103421]

A = B C , A + = C + B + A=BC, A^+=C^+B^+ A=BC,A+=C+B+

Case 3

A x = b , A ⊆ R m × n , r a n k A ≤ m i n ( m , n ) Ax=b, A\subseteq \mathbb{R}^{m\times n}, rankA\leq min(m,n) Ax=b,ARm×n,rankAmin(m,n)

x x x minimize ∣ ∣ A x − b ∣ ∣ 2 ||Ax-b||^2 ∣∣Axb2

x x x minimize ∣ ∣ x ∣ ∣ ||x|| ∣∣x∣∣

注:Case 1和Case 2的主要区别在于 m m m n n n的大小关系,此时 A A A满秩。Case 3则表示了 A A A不满秩的更为一般的情形。在 m = n m=n m=n时,Case 1和Case 2两种情况均适用。在 A A A满秩的时候,Case 3也适用。故在分类条件中,并没有严格分类讨论,而是把该结论适用的最大范围写了上去。

Theorem

Given A x = b Ax=b Ax=b with r a n k A = r rankA=r rankA=r, the unique vector x ∗ = A + b x^*=A^+b x=A+b minimizes ∣ ∣ A x − b ∣ ∣ 2 ||Ax-b||^2 ∣∣Axb2. Furthermore, among all vectors that minimize ∣ ∣ A x − b ∣ ∣ 2 ||Ax-b||^2 ∣∣Axb2, x ∗ x^* x is the unique one with minimal norm.

Neural Networks

神经网络结构图

Single neuron

单层神经网络

Task: data fitting

Training data: < x d , y d > , x d ∈ R s × n , y d ∈ R s <x^d,y^d>, x^d\in \mathbb{R}^{s\times n}, y^d\in\mathbb{R}^s <xd,yd>,xdRs×n,ydRs

f ( x ) = ∑ i = 1 m ω i x i = ω T x f(x)=\sum_{i=1}^m \omega_ix_i=\omega^Tx f(x)=i=1mωixi=ωTx

Find ω ∈ R n \omega\in\mathbb{R}^n ωRn minimizing 1 2 ∑ i = 1 n ( y i d − x i d T ω i ) 2 = 1 2 ∣ ∣ y d − x d T ω ∣ ∣ 2 \frac{1}{2}\sum_{i=1}^n (y_i^d-{x_i^d}^T\omega_i)^2=\frac{1}{2}||y^d-{x^d}^T\omega||^2 21i=1n(yidxidTωi)2=21∣∣ydxdTω2

Case 1

r a n k X = s ≤ n rank X=s\leq n rankX=sn

⇒ ∃ \Rightarrow \exist infinite ω : y d = x d T ω \omega: y^d={x^d}^T\omega ω:yd=xdTω

⇒ m i n ∣ ∣ ω ∣ ∣ \Rightarrow min ||\omega|| min∣∣ω∣∣
s.t. y d = x d T ω y^d={x^d}^T\omega yd=xdTω

⇒ ω ∗ = x d ( x d T x d ) − 1 y d \Rightarrow \omega^*=x^d({x^d}^Tx^d)^{-1}y^d ω=xd(xdTxd)1yd

⇒ \Rightarrow Kaczmarz’s Algorithm

Case 2

r a n k X = n ≤ s rank X=n\leq s rankX=ns

⇒ ω ∗ = ( x d T x d ) − 1 x d T y d \Rightarrow \omega^*=({x^d}^Tx^d)^{-1}{x^d}^Ty^d ω=(xdTxd)1xdTyd

⇒ \Rightarrow Gradient algorithm

ω k + 1 = ω k − α k ∇ f ( ω k ) \omega^{k+1}=\omega^k-\alpha^k \nabla f(\omega^k) ωk+1=ωkαkf(ωk)

⇒ ω k + 1 = ω k + α k x d e k \Rightarrow \omega^{k+1}=\omega^k+\alpha^kx^de^k ωk+1=ωk+αkxdek, where e k = y d − x d T ω k e^k=y^d-{x^d}^T\omega^k ek=ydxdTωk

y = f ( ∑ i = 1 m ω i x i ) ⇒ m i n 1 2 ∣ ∣ y d − f ( ∑ i = 1 m ω i x i ) ∣ ∣ 2 y=f(\sum_{i=1}^m \omega_ix_i) \Rightarrow min\frac{1}{2}||y^d-f(\sum_{i=1}^m \omega_ix_i)||^2 y=f(i=1mωixi)min21∣∣ydf(i=1mωixi)2

ω k + 1 = ω k + α k x d e k ∣ ∣ x d ∣ ∣ 2 \omega^{k+1}=\omega^k+\alpha^k\frac{x^de^k}{||x^d||^2} ωk+1=ωk+αk∣∣xd2xdek

[only one < x d , y d > <x^d,y^d> <xd,yd>]

e k = y d − f ( x d T ω k ) e^k=y^d-f({x^d}^T\omega^k) ek=ydf(xdTωk)

Multiple Layers

backpropagation algorithm(反向传播算法)
由于情况比较复杂,此处不作展开。

总结

上节课介绍了解线性方程组的第一种情况,这节课介绍了第二种和第三种情况。为了使结论更具一般性,还引入了矩阵的伪逆概念。接下来开始介绍神经网络。对神经网络做了一些数学上的简化,为了便于理论研究。主要介绍了最简单的单层神经网络。还提及了多层神经网络的反向传播算法,但由于过于复杂,于是没有具体展开计算。

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

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

相关文章

MySQL8.3.0 主从复制方案(master/slave)

一 、什么是MySQL主从 MySQL主从&#xff08;Master-Slave&#xff09;复制是一种数据复制机制&#xff0c;用于将一个MySQL数据库服务器&#xff08;主服务器&#xff09;的数据复制到其他一个或多个MySQL数据库服务器&#xff08;从服务器&#xff09;。这种复制机制可以提供…

如何让阿里云AI001号员工帮我写代码(含IDEA插件使用)

国内首个AI程序员入职阿里云&#xff1a;专属工号AI001&#xff0c;KPI是一人写完公司20%代码。 不管是真是假&#xff0c;AI 程序员发展的趋势是无法改变的&#xff0c;小米汽车发布会上&#xff0c;雷军说到小米汽车工厂的自动化率达到90%以上&#xff0c;有些车间甚至100%的…

手术麻醉系统源码 医疗信息管理系统源码C#.net6.0+ vs2022,vscode+BS网页版 手麻系统源码

手术麻醉系统源码 医疗信息管理系统源码C#.net6.0 vs2022,vscodeB/S网页版 手麻系统源码 手术麻醉管理系统是应用于医院手术室、麻醉科室的计算机软件系统。该系统针对整个围术期&#xff0c;对病人进行全程跟踪与信息管理&#xff0c;自动集成病人HIS、LIS、RIS、PACS信息&…

jdk8新特性 方法引用

简介 lambda表达式是用来简化匿名内部类的方法引用 使用来简化 lambda表达式的 方法引用的标志 两个冒号 静态方法 静态方法 class CompareByAge {public static int compare(Student o1, Student o2) {return o1.getAge() - o2.getAge();} }静态方法引用 Arrays.sort(students…

表格比对作业指导书 使用access对excel表格数据进行比对

初级代码游戏的专栏介绍与文章目录-CSDN博客 &#xff08;注&#xff1a;这是以前给秘书写的作业指导书&#xff0c;用来处理两个表格中哪些人存在、哪些人不存在。看起来当时使用的access版本是2016。access是微软office套件中的一个软件&#xff0c;存在于家庭版&#xff0c…

​SCP收容物041~050​

注 &#xff1a;此文接SCP收容物031~040,本文只供开玩笑 ,与steve_gqq_MC合作。 --------------------------------------------------------------------------------------------------------------------------------- 目录 scp-041 scp-042 scp-043 scp-044 scp-045…

二维相位解包理论算法和软件【全文翻译- 噪声滤波(3.53.6)】

3.5 噪音过滤 在本节中,我们将简要讨论相位数据的滤波问题。除了提高信噪比之外,噪声滤波还有助于减少残差的数量,从而大大简化相位解包过程。不过,我们必须注意到一个重要的问题。正如我们在第 1 章中指出的,相位本身并不是信号。它只是信号的一种属性。因此,应该过滤的…

JSON字符串中获取一个特定字段的值

JSON字符串中获取一个特定字段的值 一、方式一&#xff0c;引用gson工具二、方式二&#xff0c;使用jackson三、方式三&#xff0c;使用jackson转换Object四、方式四&#xff0c;使用hutool&#xff0c;获取报文数组数据 一、方式一&#xff0c;引用gson工具 测试报文&#xf…

表单流程管理系统:推进数字化转型理想助手

在数字化转型新时代&#xff0c;谁拥有理想的软件平台助手&#xff0c;谁就能在流程化管理新进程中迈出坚实的步伐。面对激烈的市场竞争&#xff0c;低代码技术平台及表单流程管理系统正在广阔的市场环境中越扎越稳&#xff0c;成为助力企业数字化转型升级的重要利器设备。想要…

使用PyCharm安装并运行python程序(小白专属教程,建议收藏)

本文将介绍如何使用pycharm安装python环境并运行第一个python程序&#xff0c;适合刚接触python的童鞋参考。 Python的安装 python是一门跨平台的语言&#xff0c;如Windows、Linux、MacOS等平台都能完美兼容&#xff0c;以下只对Windows平台安装做详细介绍。 &#xff11;.…

开创加密资产新纪元:深度解析ERC-314协议

随着加密资产市场的不断发展和区块链技术的日益成熟&#xff0c;新的协议和标准不断涌现&#xff0c;其中包括了ERC-314协议。本文将深入分析ERC-314协议的特点、功能以及对加密资产市场可能产生的影响。 1. ERC-314协议简介 ERC-314协议是一项建立在以太坊区块链上的新提案&a…

鲁大师2024年Q1季度电动车报告:新老品牌角逐电自市场,九号699分夺魁

鲁大师2024年Q1季报正式发布&#xff0c;本次季报包含电动车智能排行&#xff0c;测试的车型为市面上主流品牌的主流车型&#xff0c;共计12款&#xff0c;全部按照评测维度更广、更专业的鲁大师电动车智慧评测2.0进行评分&#xff0c;测试的成绩均来自于鲁大师智慧硬件实验室。…

新规解读 | 被网信办豁免数据出境申报义务的企业,还需要做什么?

为了促进数据依法有序自由流动&#xff0c;激发数据要素价值&#xff0c;扩大高水平对外开放&#xff0c;《促进和规范数据跨境流动规定》&#xff08;以下简称《规定》&#xff09;对数据出境安全评估、个人信息出境标准合同、个人信息保护认证等数据出境制度作出优化调整。 …

QAnything-1.3.0,支持纯python笔记本运行,支持混合检索

QAnything 1.3.0 更新了&#xff0c;这次带来两个主要功能&#xff0c;一个是纯python的安装&#xff0c;另一个是混合检索。更多详情见&#xff1a; https://github.com/netease-youdao/QAnything/releases 纯python安装 我们刚发布qanything开源的时候&#xff0c;希望用户…

冯喜运:4.8晚间黄金原油走势分析及操作建议

黄金走势分析&#xff1a;      金价在亚洲大国市场开盘后突然飙升约30美元至历史新高&#xff0c;触发了交易员的积极反应。这一行情主要是因为亚洲大国央行持续增加黄金储备的预期所致&#xff0c;而且市场对全球央行今年可能的大规模黄金购买提前建立了多头头寸。数据显…

数据转换 | Matlab基于GADF格拉姆角差场一维数据转二维图像方法

目录 效果分析基本介绍程序设计参考资料获取方式 效果分析 基本介绍 GADF&#xff08;Gramian Angular Difference Field&#xff09;是一种将时间序列数据转换为二维图像的方法之一。它可以用于提取时间序列数据的特征&#xff0c;并可应用于各种领域&#xff0c;如时间序列分…

【深入理解Java IO流0x05】Java缓冲流:为提高IO效率而生

1. 引言 我们都知道&#xff0c;内存与硬盘的交互是比较耗时的&#xff0c;因此适当得减少IO的操作次数&#xff0c;能提升整体的效率。 Java 的缓冲流是对字节流和字符流的一种封装&#xff08;装饰器模式&#xff0c;关于IO流中的一些设计模式&#xff0c;后续会再出博客来讲…

详解简单的shell脚本 --- 命令行解释器【Linux后端开发】

首先附上完整代码 #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <string.h> #include <sys/types.h> #include <sys/wait.h> //命令行解释器 //shell 运行原理&#xff1a;通过让子进程执行命令&#xff0c;父进…

谷歌浏览器插件开发速成指南:弹窗

诸神缄默不语-个人CSDN博文目录 本文介绍谷歌浏览器插件开发的入门教程&#xff0c;阅读完本文后应该就能开发一个简单的“hello world”插件&#xff0c;效果是出现写有“Hello Extensions”的弹窗。 作为系列文章的第一篇&#xff0c;本文还希望读者阅读后能够简要了解在此基…

电影特效渲染为什么费时间?「瑞云渲染」

影视特效渲染过程通常耗时且资源密集&#xff0c;因为它涉及处理复杂的视觉元素和光影效果。瑞云渲染通过云技术提供解决方案&#xff0c;加快渲染速度并降低成本。简而言之&#xff0c;电影特效渲染之所以费时&#xff0c;是因为其对计算机资源的高需求。 电影特效渲染费时间原…