⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 582.txt

📁 This complete matlab for neural network
💻 TXT
字号:
发信人: GzLi (笑梨), 信区: DataMining
标  题: [合集]做过boosting的高手请进
发信站: 南京大学小百合站 (Tue Oct 29 18:48:18 2002), 站内信件

jeff814 (mimi) 于Thu Oct 24 09:15:51 2002)
提到:

几个问题(在//后面)


AdaBoosting算法如下:

n输入:(X1,Y1), (X2,Y2),…(Xn,Yn) 

              Xi∈X, Yi∈Y={+1,-1} 

    初始化:D1(i)=1/n   

nFor t=1,…,T 

n在Dt下训练,   //(指该轮的训练集的得到,是按每个样本的权重从最初给定的集合中按

概率抽取,对吧?)

n得到弱的假设ht: X->{-1,+1}, 

   错误率:Εt=ΣDt(i)  [ht(Xi)≠Yi]   //是按第一轮的训练集合来算的呢,还是按本

轮的集合来算的?

n选择αt=1/2 ln ( (1- Εt)/ Εt ), 

n更改权值: 

     if ht(Xi)≠Yi , Dt+1(i)=Dt(i)* e αt /Zt 

        if ht(Xi)=Yi  , Dt+1(i)=Dt(i)* e -αt /Zt 

n输出:H(X)=sign( ∑ αtht(X) )    )   //最终的假设是多轮独立假设的加权。这里因

为Y={+1,-1},所以实际上是取权重最大的假设作为最后输出。也就是说,一般的形式应该

是“加权”,“取最大”只是其中的特殊情况而已,对吗?

附:权重——轮数

10.273     第一轮

9.262        二

4.793

4.612

5.599

3.032

0.414

2.742

1.595

1.604

//这样的结果合理吗?


Thanks


zoutao814@sina.com



strawman (独上江楼思渺然) 于Thu Oct 24 09:32:01 2002提到:

如果错误率大于1/2你怎么办?好像算法中没有考虑吧。
                                
                                


strawman (独上江楼思渺然) 于Thu Oct 24 17:34:18 2002提到:

adaboost算法有不同的版本,我知道的就有用于分类的和用于回归估计的。算法的思想都
是一样的,但是具体操作起来还是有些问题需要注意。
譬如说,训练错误率,有可能错误率大于0.5的,这样的component要抛弃,还有可能错误
率等于0的,这样的component的权趋于无穷大。还有,就是随着训练轮数的增加,有些例
子的权值变得很大,这些例子就是那些难学习的例子;有些例子权值变得很小,这些例子
容易学习。这样在正规化的时候,就有可能造成浮点数溢出。
这些都是应该在程序中考虑到的。


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -