理解平滑

平滑的目的也是正则化的目的之一,它是针对参数w而言,本质上就是要使得w的变化不要那么剧烈,有如下数学模型(假设最小化J):

左侧是一个典型的线性回归模型,(xi,yi)就是实际的观测值,w就是估计的参数,右侧就是一个正则化项。可以直观的感受到,正则化项实际上起到了限制参数w的“变化程度或变化幅值”的作用,具体来说,它可以令w的任何一个分量相比较于剩余分量变化程度保持一致,不至于出现变化特别明显的分量。直接的作用就是防止模型“过拟合”,提高了模型的泛化性能。关于这一点,具体请见http://blog.csdn.net/wsj998689aa/article/details/39547771

拉普拉斯平滑应用在正则化上的时候,往往被称做“拉普拉斯惩罚”,惩罚的参数是w

背景:机器学习中,大部分算法直接将图像(假设为M*N)按行或者列拉成向量,这样肯定会损失结构化信息。结构化信息是指,一个像素本来和它周围8个像素都有关系,你直接给拉成向量了,那么这种关系就直接被你给毁掉了,这就叫空间结构信息。这种信息属于先验信息,NFL定理说的很清楚:能够尽可能利用先验信息的学习算法才是好算法。看来,空间结构信息的破坏,会降低算法的”品味“。此时,拉普拉斯惩罚会帮助找回品味。一幅图像拉成向量x(M*N维),如果我们要通过拉普拉斯惩罚,补偿x上失去的结构信息。很简单,如下式:

那个乘法是Kronecke积,相当于将乘号右边的每个元素替换成为左边矩阵数乘对应元素,如果A是一个 m x n 的矩阵,而B是一个 p x q 的矩阵,克罗内克积则是一个 mp x nq 的矩阵。

上述公式实际上起到的效果是,求一个矩阵中每个元素的水平方向和垂直方向的二阶差分之和,这个矩阵在这里可以被看错参数w的矩阵形式(按列reshape)。进一步,如果对一个线性回归模型加上拉普拉斯惩罚,模型就会变为如下形式:

拉普拉斯惩罚使得模型更加平滑,比简单的2范数(岭回归)要好,因为它考虑了空间结构信息。常被用于PCA,LDA,LPP,NPE等子空间学习算法的改造上面,一般会使算法性能得到提升。

参考文献:Learning a Spatially Smooth Subspace for Face Recognition

原文:https://blog.csdn.net/wsj998689aa/article/details/40303561

原文地址:https://www.cnblogs.com/go-go/p/10426938.html

时间: 2024-11-01 12:27:59

理解平滑的相关文章

Dubbo 源码分析 - 集群容错之 LoadBalance

1.简介 LoadBalance 中文意思为负载均衡,它的职责是将网络请求,或者其他形式的负载"均摊"到不同的机器上.避免集群中部分服务器压力过大,而另一些服务器比较空闲的情况.通过负载均衡,可以让每台服务器获取到适合自己处理能力的负载.在为高负载的服务器分流的同时,还可以避免资源浪费,一举两得.负载均衡可分为软件负载均衡和硬件负载均衡.在我们日常开发中,一般很难接触到硬件负载均衡.但软件负载均衡还是能够接触到一些的,比如 Nginx.在 Dubbo 中,也有负载均衡的概念和相应的实现

标签平滑(label smoothing)的通俗理解

具体公式和思想可以看 https://www.cnblogs.com/itmorn/p/11254448.html 先说结果:label平滑可以减小过拟合 说白了,这个平滑就是一定程度缩小label中min和max的差距.损失函数实际上就是鼓励模型去接近对应的label,越接近loss越小,巴不得label为1的时候output是0.999... 但是这样真的好吗?或者说,是不是太过了,尤其针对像交叉熵这类loss,一旦output有些偏差,loss值就往无穷大走了,就逼迫模型去接近真实的lab

(转载)浅谈我对DDD领域驱动设计的理解

原文地址:http://www.cnblogs.com/netfocus/p/5548025.html 从遇到问题开始 当人们要做一个软件系统时,一般总是因为遇到了什么问题,然后希望通过一个软件系统来解决. 比如,我是一家企业,然后我觉得我现在线下销售自己的产品还不够,我希望能够在线上也能销售自己的产品.所以,自然而然就想到要做一个普通电商系统,用于实现在线销售自己企业产品的目的. 再比如,我是一家互联网公司,公司有很多系统对外提供服务,面向很多客户端设备.但是最近由于各种原因,导致服务经常出故

互联网体系结构的理解

一.网络体系结构的概念 计算机网络就是一组通过一定形式连接起来的计算机系统,它需要四个要素的支持,即通信线路和通信设备.有独立功能的计算机.网络软件的支持.能实现数据通 信与资源共享.计算机网络具有两大参考模型,分别为OSI模型和TCP/IP模型,其中OSI模型为理论模型,而TCP/IP模型则已成为互联网事实的工业标准,现在的通信网络一般都是采用TCP/IP协议簇,而应用编程都是采用socket套接字进行编程.  二.网络分层模型 分层能使复杂的问题简单化,网络分层也是基于此原理.网络分层简化了

Atitit 图像处理之理解卷积attilax总结

Atitit 图像处理之理解卷积attilax总结 卷积的运算可以分为反转.平移,相乘,求和. 在图像处理中,图像是一个大矩阵,卷积模板是一个小矩阵.按照上述过程,就是先把小矩阵反转,然后平移到某一位置,小矩阵的每一个小格对应大矩阵里面的一个小格,然后把对应小格里面的数相乘,把所有对应小格相乘的结果相加求和,得出的最后结果赋值给小矩阵中央小格对应的图像中小格的值,替换原来的值.就是上述说到的,反转.平移.相乘.求和.        一般图像卷积就是从第一个像素(小格)开始遍历到最后一个像素(小格

iOS开发:深入理解GCD 第一篇

最近把其他书籍都放下了,主要是在研究GCD.如果是为了工作,以我以前所学的GCD.NSOperation等知识已经足够用了,但学习并不仅仅知识满足于用它,要知其然.并且知其所以然,这样才可以不断的提高自身技术水平. 本文主要参考http://www.raywenderlich.com/60749/grand-central-dispatch-in-depth-part-1 和 <iOS与OS X 多线程和内存管理>,以及其他一些杂七杂八的书籍或者博客. GCD已经面世很久了,基于GCD面向对象

GCD 深入理解:第一部分

虽然 GCD 已经出现过一段时间了,但不是每个人都明了其主要内容.这是可以理解的:并发一直很棘手,而 GCD 是基于 C 的 API ,它们就像一组尖锐的棱角戳进 Objective-C 的平滑世界.我们将分两个部分的教程来深入学习 GCD . 在这两部分的系列中,第一个部分的将解释 GCD 是做什么的,并从许多基本的 GCD 函数中找出几个来展示.在第二部分,你将学到几个 GCD 提供的高级函数. 什么是 GCD GCD 是 libdispatch 的市场名称,而 libdispatch 作为

JS平滑无缝滚动实现

本文我们实现纯JS方式的滚动广告效果. 先show一下成品: 首先是网页样式: 1. #demo { 2. background: #FFF; 3. overflow:hidden; 4. border: 1px dashed #CCC; 5. width: 1280px; 6. height:200px; 7. } 8. #demo img { 9. border: 3px solid #F2F2F2; 10. } 11. #indemo { 12. float: left; 13. widt

【浅墨Unity3D Shader编程】之九 深入理解Unity5中的Standard Shader (一)&amp;屏幕水幕特效的实现

本系列文章由@浅墨_毛星云 出品,转载请注明出处.   文章链接:http://blog.csdn.net/poem_qianmo/article/details/49556461 作者:毛星云(浅墨)    微博:http://weibo.com/u/1723155442 本文工程使用的Unity3D版本: 5.2.1 概要:本文主要介绍了Unity5中的标准着色器,并且也涉及到了基于物理的着色.延迟渲染等高级着色技术,而在文章后半部分,也对屏幕水幕特效的实现方法进行了讲解与分析. 依然是附上