向量的L2范数求导
回归中最为基础的方法, 最小二乘法.
\[
\begin{align*}
J_{LS}{(\theta)} &= \frac { 1 }{ 2 } { \left\| A\vec { x } -\vec { b } \right\| }^{ 2 }\quad \\
\end{align*}
\]
向量的范数定义
\[
\begin{align*}
\vec x &= [x_1,\cdots,x_n]^{\rm T}\\
\|\vec x\|_p &= \left( \sum_{i=1}^m{|x_i|^p}\right)^\frac{1}{p}, \space p<+\infty
\end{align*}
\]
\(L_2\)范数具体为
\[
\|\vec x\|_2 = (|x_1|^2 + \cdots+|x_m|^2)^{\frac{1}2} = \sqrt{\vec x ^{\rm T}\vec x }
\]
矩阵求导
采用列向量形式定义的偏导算子称为列向量偏导算子, 习惯称为\(\color {red} {梯度算子}\), n x 1 列向量偏导算子即梯度算子记作 \(\nabla_x\), 定义为
\[
\nabla_x = \frac{\partial}{\partial x} = \left[ \frac{\partial}{\partial x_1}, \cdots, \frac{\partial}{\partial x_m}\right] ^{\rm T}
\]
如果\(\vec x 是一个n\times 1\text{的列向量}\), 那么
\[
\begin{eqnarray}
\frac{\partial y x}{\partial x}=y^T \\
\frac{\partial(x^TA x)}{\partial x}=(A+A^T)x \\
\end{eqnarray}
\]
更多参照wiki矩阵计算
通过以上准备, 我们下面进行求解
\[
\begin{align*}
\therefore \quad J_{LS}{(\theta)} &= \frac { 1 }{ 2 } { \left\| A{ x } -\vec { b } \right\| }^{ 2 } \\
&= \frac{1}{2} (Ax-b)^T (Ax-b) \\
&= \frac{1}{2} (x^TA^T-b^T)(Ax-b) \\
&= \frac{1}{2}(x^TA^TAx-2b^TAx+b^Tb)
\end{align*} \\
\]
需要注意的 b, x 都是列向量, 那么 \(b^T Ax\) 是个标量, 标量的转置等于自身, \(b^T Ax =x^TA^Tb\)
对\(\vec x\)求导得:
\[J_{LS}'{(\theta)}=A^TA x-A^Tb=A^T(Ax-b)\]
向量的L2范数求导的更多相关文章
- 正则化的L1范数和L2范数
范数介绍:https://www.zhihu.com/question/20473040?utm_campaign=rss&utm_medium=rss&utm_source=rss& ...
- L2范数归一化概念和优势
1 归一化处理 归一化是一种数理统计中常用的数据预处理手段,在机器学习中归一化通常将数据向量每个维度的数据映射到(0,1)或(-1,1)之间的区间或者将数据向量的某个范数映射为1,归一化 ...
- [深度学习] pytorch学习笔记(1)(数据类型、基础使用、自动求导、矩阵操作、维度变换、广播、拼接拆分、基本运算、范数、argmax、矩阵比较、where、gather)
一.Pytorch安装 安装cuda和cudnn,例如cuda10,cudnn7.5 官网下载torch:https://pytorch.org/ 选择下载相应版本的torch 和torchvisio ...
- python 库 Numpy 中如何求取向量范数 np.linalg.norm(求范数)(向量的第二范数为传统意义上的向量长度),(如何求取向量的单位向量)
求取向量二范数,并求取单位向量(行向量计算) import numpy as np x=np.array([[0, 3, 4], [2, 6, 4]]) y=np.linalg.norm(x, axi ...
- paper 126:[转载] 机器学习中的范数规则化之(一)L0、L1与L2范数
机器学习中的范数规则化之(一)L0.L1与L2范数 zouxy09@qq.com http://blog.csdn.net/zouxy09 今天我们聊聊机器学习中出现的非常频繁的问题:过拟合与规则化. ...
- 机器学习中的范数规则化之(一)L0、L1与L2范数(转)
http://blog.csdn.net/zouxy09/article/details/24971995 机器学习中的范数规则化之(一)L0.L1与L2范数 zouxy09@qq.com http: ...
- L0、L1与L2范数、核范数(转)
L0.L1与L2范数.核范数 今天我们聊聊机器学习中出现的非常频繁的问题:过拟合与规则化.我们先简单的来理解下常用的L0.L1.L2和核范数规则化.最后聊下规则化项参数的选择问题.这里因为篇幅比较庞大 ...
- 机器学习中的范数规则化之(一)L0、L1与L2范数 非常好,必看
机器学习中的范数规则化之(一)L0.L1与L2范数 zouxy09@qq.com http://blog.csdn.net/zouxy09 今天我们聊聊机器学习中出现的非常频繁的问题:过拟合与规则化. ...
- L0/L1/L2范数(转载)
一.首先说一下范数的概念: 向量的范数可以简单形象的理解为向量的长度,或者向量到零点的距离,或者相应的两个点之间的距离. 向量的范数定义:向量的范数是一个函数||x||,满足非负性||x|| > ...
随机推荐
- data_type
import logging logger = logging.getLogger("simple_example") logger.setLevel(logging.DEBUG) ...
- Memcached入门学习
Memcached入门学习 学习网址:http://www.runoob.com/Memcached/Memcached-tutorial.html
- git的那些事
前言:记得在想学习git的时候,一直停留在思想的层面,总没有弄清楚它的运行机制,经常与github混淆,还好找到了一个好的教程,带我领略了git的风采 (一)git的优点 git的优点:版本控制在本地 ...
- jsp页面的共用
我们经常希望一个网页,根据不同得请求显示不同得数据. 方法就是在session中添加一个变量,根据不同得值区分不同得请求类型. 后台:request.getSession().setAttribute ...
- JMETER压力测试报错:JAVA.NET.BINDEXCEPTION: ADDRESS ALREADY IN USE: CONNECT
最近在实现接口压力测试的时候遇到这样的一个问题 当线程数持续上升到一个点的时候,运行脚本的时候有很多报错,如图: java.net.BindException: Address already in ...
- SQL Server进阶(八)查询——开窗函数、四大排名函数、透视数据、逆透视数据
概述 ROW_NUMBER() OVER(PARTITION BY CustId ORDER BY ID DESC) https://www.jb51.net/article/75533.htm 开窗 ...
- 20155324 《Java程序设计》实验五 网络编程与安全
20155324 <Java程序设计>实验五 网络编程与安全 实验内容 任务一 编写MyBC.java实现中缀表达式转后缀表达式的功能 编写MyDC.java实现从上面功能中获取的表达式中 ...
- Java SE之正则表达式六:匹配规则
注释: 1.[]表示的字符集,不表示包含 ()表捕获和成组 Eg: 只能是QQ邮箱/GMail邮箱/Outlook邮箱/163邮箱之一 (qq|gmail|163){1}\.com 与 [(qq)|( ...
- Python读取导入非安装文件库的方法
一.将文件库放到和.py文件同一目录下: 二..py文件头导入文件库的格式为(以导入CIFAR-10数据的类为例)[其实就在文件库前面加个.]: from .cifar10 import cifar1 ...
- nnet3中的数据类型
目标与背景 之前的nnet1和nnet2基于Component对象,是一个组件的堆栈.每个组件对应一个神经网络层,为简便起见,将一个仿射变换后接一个非线性表示为一层网络,因此每层网络有两个组件.这些旧 ...