Adaboost有几个难点:

1、弱分类器的权重怎么理解?

  误差大的弱分类器权重小,误差小的弱分类器权重大。这很好理解。在台湾大学林轩田老师的视频中,推导说,这个权值实际上貌似梯度下降,权值定义成1/2ln((1-ε)/ε),实际上是有梯度下降,求梯度取最陡得到。

2、弱分类器怎么通常选啥

  可以选树(不选全树)

3、有了第一个弱分类器模型后,怎么导出其他的弱分类器,怎么理解正确分类的权值变小,错误分类的权值变大?

  形象上讲,忽略正确分类的,重视错误分类的。

  从数学上讲,我们希望各个分类器越不相同越好。弱分类器越不相同(正交就更好,记得垂直和水平切分两类点不?),我们求得的期望错误率会越小。这样,如果我将正确分类的少点重视,错误分类的多点重视,这会导致弱分类器不同程度加大。实际上,这会导致弱分类器会越来越强。(我从例子上看到,因为权值越来越多了)

从信息论的角度讲,我们希望从样例中获取更多的信息。(当然不可能是全部,全部的话,就是完全搜索,信息没有丢失,参数很多,过拟合)。分类正确的,我们已经挖掘出这些样例的“信息”,对于分错的,我们还没有挖掘出它的“信息”。我们仍然希望从分错的样例中挖出更多的“信息”。于是,考虑忽略正确分类的,重视错误分类的。

  补充地是,希望弱分类器不相同,可以从几个方面入手:

  (1)模型

  (2)数据

  (3)参数

  (4)算法(如初始化不同)

4、既然能够通过这样的方式是弱分类器越来越强(感觉是这样,没验证),是否就用最后一个“弱”分类器就可以?

  no,三个凑皮匠赛过一个诸葛亮!

Adaboost新理解的更多相关文章

  1. catalan数的新理解

    catalan数的新理解h[5]==h[4][0]+h[3][1]+h[2][2]+h[1][3]+h[0][4];对于这种递推式就是catalan数

  2. JavaScript——对this指针的新理解

    一直以来对this的理解只在可以用,会用,却没有去深究其本质.这次,借着<JavaScript The Good Parts>,作了一次深刻的理解.(所有调试都可以在控制台中看到,浏览器F ...

  3. 对Delphi控件作用的新理解(控件本身的源代码就是一个很强的工业级源码)

    最近几天,对Delphi控件的含义有了一个新的理解.其实它不仅仅是给程序员提供功能的一个表层调用,控件本身的源代码就是一个很强的工业级源码.而且它的Main例子,往往就已经是半成品.而别的语言里没有那 ...

  4. springMVC新理解

    springmvc 中@Controller和@RestController的区别 1. Controller, RestController的共同点 都是用来表示spring某个类的是否可以接收HT ...

  5. let 、const 、var、function声明关键字的新理解

    今天在群里看到大佬们讨论let .const 的提升问题,有个大佬问  三种声明都在什么阶段提升?  什么阶段?这个真不清楚,以前是只知道let.const存在死区,没有变量提升,一下子就懵了 后经手 ...

  6. quaternion*Vector3的新理解

    原地址:http://www.cnblogs.com/88999660/p/3262656.html using UnityEngine; using System.Collections; publ ...

  7. 关于js参数传递矛盾新理解

    之前看了很多人的解释,说js中,函数的参数传递都是值传递中不理解. 他们无非举了两个例子 在这两个例子中,第二个例子可以看出参数是由值传递的.因为函数内对象的变化没有影响到函数外对象的变化.但是在第一 ...

  8. SVM的新理解

    svm导出的原始问题然后利用KKT条件,为何还需要对偶空间? 一方面,实际上KKT条件怎么得到的?KKT条件的推导是:svm原始问题->极大极小问题(先算极小这步,但极小这步中α是有约束的,不好 ...

  9. 对SSL一个疑问的新理解

    看了很多关于Https/SSL的介绍,关于数字证书部分,我一直有个疑问:如果数字证书文件被别人拿到,那是不是就可以进行通讯了呢?如果这样,那整个安全机制就完全失去作用了.从开发的角度,我拿到别人的数字 ...

随机推荐

  1. shell 输出双引号

    #!/bin/sh your_name='runoob' str="Hello, I know you are \"$your_name\"! \n" echo ...

  2. java数组声明和变式--record1

    ​ java声明数组方式: String[] namelist; int numlist[];//此声明为动态声明,不能指定长度,numlist[10] 静态声明的方式: int a[]={1,2,3 ...

  3. /var/run/dbus/system_bus_socket no such file or directory

    参考:http://fixmyos.blogspot.jp/2011/10/failed-to-connect-to-socket.html /var/run/dbus/system_bus_sock ...

  4. Codeforces 448E - Divisors

    448E - Divisors 思路: dfs.注意如果是1,直接返回,因为1的因子还是1. 因为x因子的因子还是x的因子,所以可以事先处理好x因子的因子在x因子中的位置. 不用这个方法也可以,用ma ...

  5. Codeforces 96C - Hockey

    96C - Hockey 字符串处理 代码: #include<bits/stdc++.h> using namespace std; #define ll long long ; con ...

  6. CAS-自旋锁

    自旋锁 自旋锁(spinlock):是指当一个线程在获取锁的时候,如果锁已经被其它线程获取,那么该线程将循环等待,然后不断的判断锁是否能够被成功获取,直到获取到锁才会退出循环.  获取锁的线程一直处于 ...

  7. Unity如何判断一个对象是不是一件衣服

    判断该对象及其子对象上是否有SkinnedMeshRenderer组价即可 public static bool IsCloth(Transform obj) { bool isCloth = fal ...

  8. springboot入门(一)--快速搭建一个springboot框架

    原文出处 前言在开始之前先简单介绍一下springboot,springboot作为一个微框架,它本身并不提供Spring框架的核心特性以及扩展功能,只是用于快速.敏捷地开发新一代基于Spring框架 ...

  9. Linux 物理内存 buffer cache

    Linux下如何查内存信息,如内存总量.已使用量.可使用量.经常使用Windows操作系统的朋友,已经习惯了如果空闲的内存较多,心里比较踏实.当使用Linux时,可能觉的Linux物理内存很快被用光( ...

  10. Failed to execute operation: No such file or directory(systemctl enable iptables.service)

    在保存Iptables配置时:systemctl enable iptables.service 出现错误: Failed to execute operation: No such file or ...