weka: best first search

ASSearch                 搜索算法类

ASEvaluation              特征结果集评价算法类。该类有接口接受样本输入

AttributeEvaluation        单个特征的评价类

AttributeSetEvaluation    特征集的评价类

AttributeSelection          特征选择类, 接受ASSearchASEvaluation作为输入

AttributeTransformer     数据转换类

 

Best First Search

m_bestMerit 记录评价最高的得分

m_cacheSize 已评价了多少组不同的特征; lookup记录已评价属性集及其评价分的集合

m_searchDirection 搜索方向:正向,后向,双向

m_starting 初始结果集

m_totalEvals 已评价次数>= m_cacheSize

 

1)    初始化

如果已给出初始结果集,则此轮结果集就是初始结果集;若未给出初始结果集且为双向搜索,则此轮结果集就是所有的属性集。

计算此轮结果集的评价得分, 将该结果集与得分放入已查数据中; 将该结果集放入待搜索队列中

 

 

2)    迭代搜索

迭代退出条件是, 如果连续多次扩展得到的结果集都没有比当前最好的更优,则退出,Stale < m_max_stale  或者待扩展队列已为空。

2.0)取得待扩展队列头

2.1)根据搜索方向扩展该属性集得到新的属性集:顺序扫描每个属性,如果未处理过该属性, 则将该属性增加到待扩展集中。(如果是backward搜索, 则是将该属性从待扩展集中移除;后面类同)

2.2)如果该新的属性集未曾处理过, 则计算其评价分、将其增加到lookup中; 将该属性集加入到待扩展集中。 判断此次扩展是否比当前最好的更优、更优则记录相关信息。

2.3)恢复到迭代2.0)状态时的属性集,迭代2.1)中扫描下一个未曾处理的属性

Notes:如果是双向搜索时,则步骤2中,都是在步骤2.0)的基础之上先正向对所有属性做测试;然后逆向对所有属性做测试。就是把双向分为了先正向后逆向两个完全分开的过程。

 

3)步骤2退出时, 得到了最佳属性集合

 

code

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值