前言

今天我们聊聊机器学习中出现的非常频繁的问题:过拟合与规则化。我们先简单的来理解下常用的L0、L1、L2和核范数规则化。最后聊下规则化项参数的选择问题。这里因为篇幅比较长,为了不吓到大家,我将这个五个部分分成两篇博文。知识有限,以下都是我一些浅显的看法,如果理解存在错误,希望大家不吝指正。谢谢。

监督机器学习问题无非就是“minimizeyour error while regularizing your parameters”,也就是在规则化参数的同时最小化误差。最小化误差是为了让我们的模型拟合我们的训练数据,而规则化参数是防止我们的模型过分拟合我们的训练数据。因为参数太多,会导致我们的模型复杂度上升,容易过拟合,也就是我们的训练误差会很小。但训练误差小并不是我们的最终目标,我们的目标是希望模型的测试误差小,也就是能准确的预测新的样本。所以,我们需要保证模型“简单”的基础上最小化训练误差,这样得到的参数才具有好的泛化性能(也就是测试误差也小),而模型“简单”就是通过规则函数来实现的。另外,规则项的使用还可以约束我们的模型的特性。这样就可以将人对这个模型的先验知识融入到模型的学习当中,强行地让学习到的模型具有人想要的特性,例如稀疏、低秩、平滑等等。要知道,有时候人的先验是非常重要的。对机器学习也是一样,如果被我们人稍微点拨一下,它肯定能更快的学习相应的任务。只是由于人和机器的交流目前还没有那么直接的方法,目前这个媒介只能由规则项来担当了。

还有几种角度来看待规则化的。规则化符合奥卡姆剃刀(Occam's razor)原理。这名字好霸气,razor!不过它的思想很平易近人:在所有可能选择的模型中,我们应该选择能够很好地解释已知数据并且十分简单的模型。从贝叶斯估计的角度来看࿰

机器学习算法源码全解析(二)-范数规则化之L0、L1与L2范数相关推荐

  1. 机器学习算法源码全解析(三)-范数规则化之核范数与规则项参数选择

    前言 参见上一篇博文,我们聊到了L0,L1和L2范数,这篇我们絮叨絮叨下核范数和规则项参数选择.知识有限,以下都是我一些浅显的看法,如果理解存在错误,希望大家不吝指正.谢谢. 机器学习算法源码全解析( ...

  2. 机器学习算法源码全解析(一)-带你深入理解随机森林(RandomForest)原理及如何防止 Dropout

    前言 要想了解如何增强机器学习模型性能,我们需要知道如何降低模型的误差.所以首先我们必须明白模型误差是由偏差(Bias)和方差(Variance)组成的.偏差是指样本预测值的平均值与样本真实值的差,而 ...

  3. 机器学习算法源码全解析(四)-人工神经网络关键核心知识点汇总

    前言 神经网络里面主要就是单层神经网络学习和多层神经网络学习,涉及到知识点主要就是感知器,线性分割,影藏层,权重校正,误差的平方和等知识点. 感知器:是神经网络最简单的形式,单层双输入感知器的结构如下 ...

  4. 【Camera专题】Camera驱动源码全解析_下

    系列文章 1.手把手撸一份驱动 到 点亮 Camera 2.Camera dtsi 完全解析 3.Camera驱动源码全解析上 4.Camera驱动源码全解析下 上篇文章分析了C文件函数的实现,本文继 ...

  5. 机器学习中的范数规则化之L0、L1、L2范数

    我的博客中参考了大量的文章或者别的作者的博客,有时候疏忽了并未一一标注,本着分享交流知识的目的,如果侵犯您的权利,这并非我的本意,如果您提出来,我会及时改正. 本篇博客主要是为了解决机器学习中的过拟合 ...

  6. l2范数求导_理解L1,L2 范数在机器学习中应用

    理解L1,L2 范数 L1,L2 范数即 L1-norm 和 L2-norm,自然,有L1.L2便也有L0.L3等等.因为在机器学习领域,L1 和 L2 范数应用比较多,比如作为正则项在回归中的使用 ...

  7. Gradle源码全解析,已拿offer

    前言 最近发现大家都喜欢看面试相关的文章,我也跟一波风,总结了一下我面试中所遇到的问题总结,分享一下面试中被问的最多的一些问题. 希望对正在找工作的朋友提供一些帮助. 好了话不多说,进入正题. 基于L ...

  8. Gradle源码全解析,Android开发社招面试经验

    自我介绍 Android开发6年,之前是在美团后来因为个人发展问题以及一些家庭因素,疫情辞职了.没想到遇到了疫情,在家里蹲了几个月,内心其实挺慌得.上个月通过内推跳槽到了腾讯,薪资从15K涨到了30K ...

  9. Android fragment源码全解析

    Fragment 相信基本上每个android developer都用过,但是知晓其原理 用的好的还是不多,今天就从源码的角度上来带着大家分析一下Fragment的源码,对fragment有了更深层次 ...

最新文章

  1. torch.mean
  2. 微信开发直接访问本地调试
  3. 【MFC】选择文件夹时,记忆上一次路径
  4. python中取整数的几种方法
  5. el-date-picker怎样获取选择的时间范围值并判断是否大于7天
  6. 2020HW必备-蜜罐如何在攻防演练中战术部防
  7. 在Sqoop中管理密码的关键提示
  8. 苹果系统怎么降低版本_海信电视系统版本太低怎么升级?
  9. apache commons lang架包介绍
  10. Java什么时候提高境界支持async/await写法啊?
  11. 锐捷服务器虚拟化技术_用它!锐捷“双擎”云桌面助力检察机关统一业务应用系统2.0上线...
  12. Linux调优/优化
  13. 澜舟科技开源轻量级中文语言预训练模型——孟子模型
  14. java 算法递归案例_JAVA 几个递归算法实例
  15. 用文本文档编写c语言程序,c语言程序设计!怎样用程序修改文件(txt文档)里面的内容!?(需要代码,不仅仅是解说)...
  16. 龙之谷手游微信连接授权服务器失败,龙之谷手游ios微信授权失败怎么办_龙之谷手游ios微信授权失败解决办法-66街机网...
  17. jsp实现文件下载,out = pageContext.pushBody();out.close();不用写到jsp中
  18. http://blog.csdn.net/wsj18808050/article/details/62226574
  19. 反入侵体系建设入门-攻击场景梳理
  20. 如何下载BiliBili视频

热门文章

  1. RHEL5系列之三:GNOME桌面的简单管理应用(1)
  2. gcc 优化选项 -O1 -O2 -O3 -Os 优先级
  3. 记一次WiFi芯片W600上的一个浮点运算
  4. Python中try...except...else的用法
  5. Leetcode114二叉树转链表-树中修改
  6. Linux信号 四 异步等待信号与同步等待信号接口
  7. 电信笔试c语言编程,华工电信院电子与通信工程 923复试面试,笔试考什么?复试真题...
  8. java从键盘输入数据斐波那契数_从键盘输入一个正整数n,打印出斐波那契数列的前n个元素...
  9. python视窗版_Python GUI tkinter窗口视窗学习3
  10. linux nginx cdn,linux – Nginx Proxy_Pass到CDN与直接击中CDN. P...