当前位置: 首页 > news >正文

wordpress 设置https武汉seo引擎优化

wordpress 设置https,武汉seo引擎优化,陕西建设厅执业注册中心网站,微信商城系统前言 我们常说三个臭皮匠顶个诸葛亮,在机器学习领域中将这个理念应用到极致的技术是boosting,将N多的弱分类器组合到一起,达到一个强分类器的效果,主流代表的算法就是xgboost,当然对于这种集成的思想,还有…

前言

我们常说三个臭皮匠顶个诸葛亮,在机器学习领域中将这个理念应用到极致的技术是boosting,将N多的弱分类器组合到一起,达到一个强分类器的效果,主流代表的算法就是xgboost,当然对于这种集成的思想,还有另外一个技术叫做ensemble,我们通过训练出不同算法的最优单模型,然后综合这些单模型的投票结果,输出最终结果。

一般来说,ensemble技术主要有两个好处,

  • 可以进一步提升模型的性能
  • 可以有效降低单模型过拟合的风险

本文将介绍一种非常高效的ensemble算法,-GreedyEnsemble算法。

  • 算法参考paper:
    Caruana, Rich, et al. “Ensemble selection from libraries of models.” Proceedings of the twenty-first international conference on Machine learning. 2004.

  • 算法实现参考源码:
    主流的automl开源框架hypergbm,点击这里直接跳转到源码

一、 ensemble介绍

1. hard模式

在这里插入图片描述
如上图所示,我们现在正在进行宣传大使的选举活动,两位候选人分别的得票数为4票,3票,那么根据投票规则,候选人A将会成为下一届的宣传大使。
当然我们可以抽象上面的情景为:因为某个业务,我们已经训练好了7个不同的模型,每个模型都需要预测出A/B两个类别的概率,然后我们通过ensemble发现4个模型都预测的是A,而3个模型预测的是B,那少数服从多数,我们最终ensemble后的预测结果就会是A

2. soft模式

然而真实的情况也许会比上面的情景更复杂一点
在这里插入图片描述

同样是上面的投票选取下一届的宣传大使,虽然候选人A得了4票,但是候选人B中有一票是非常特殊的,如上图红色部分,实际情况下,也许这一票是评委或者是上一届的宣传大使投票所得,那么我们可以修改投票规则为 评委票=3*普通票,那么最终结果来说,将是候选人B获胜。 也就是说在这个场景下,我们为不同的模型分配了不同的权重。

同样,我们将这个问题进行业务抽象,因为某个业务,我们已经训练好了7个模型,但是7个模型的性能互相是有差异的,也就是我们会考虑,性能很好的模型本身的预测结果的可信度就应该高于性能很一般模型的预测结果。这样我们就给模型引入了权重的概念,那最终的预测结果就变成了:

final_result = model1_result*weight1+model2_result*weight2+…

二、引入GreedyEnsemble

1. 难点解析

前面我们介绍了在hard Ensemble的基础上,我们可以引入权重的概念,比如在实际的歌唱比赛,演讲比赛,脱口秀比赛中,专业评委和一般投票人的投票权重是节目组会提前制定好并公开的。
那问题在于在实际业务建模过程中,每个模型的权重是多少是需要我们自己决定的,当然你可以各种尝试,或者用一些经典的数组,如下所示:

  1. 0.5,0.1,0.1,0.1,0.1,0.1
  2. 0.8,0.05,0.05,0.05,0.05
  3. 0.2,0.2,0.2,0.1,0.1,0.1,0.1

我们现在就想找到一种方式,不用我们自己去确定哪种权重组合下ensemble的性能可以达到最优,而是让算法可以自己给我分配出一个权重组合方式,以达到ensemble模型的最优性能。整体问题抽象如下:

在这里插入图片描述

A模块不断的提供候选权重数组,B模块不断的去评估ensemble的性能。甚至我们可以通过最优超参数优化【HPO】的思想去解决,把A想成是一个搜索空间,B是一个反馈,然后中间需要一个搜索算法,以得到最优结果,感兴趣的朋友可以基于hyperents,看一下是否能够搭建出这样一个业务需求demo。

2. 算法逻辑实现

在这里插入图片描述

3. (部分)源码展示

    def fit_predictions(self, predictions, y_true):scores = []best_stack = []sum_predictions = np.zeros((predictions.shape[0]), dtype=np.float64) ##初始化当前ensemble的predssize = self.ensemble_sizefor i in range(size):stack_scores = []for j in range(predictions.shape[1]):pred = predictions[:, j]mean_predictions = (sum_predictions + pred) / (len(best_stack) + 1) ##获得均值#....score = self.scorer._score_func(y_true, mean_predictions)stack_scores.append(score) ##计算并保存当前分数best = np.argmax(stack_scores)scores.append(stack_scores[best]) #获得该轮迭代的分数best_stack.append(best)sum_predictions += predictions[:, best]  ###更新当前ensemble的preds

4. 后记

关于算法的具体实现部分,你可以参考hypergbm,你也可以直接使用hypergbm进行自动建模。

http://www.hkea.cn/news/659921/

相关文章:

  • 沈阳人流seo优化师就业前景
  • 开发区网站制作公司seo关键词有话要多少钱
  • 网站被篡改处理app拉新平台
  • 在线房屋设计网站seo推广平台服务
  • 电子政务门户网站建设代码短链接生成网址
  • 崔各庄地区网站建设百度非企渠道开户
  • 怎么用自己的电脑做网站服务器产品推广平台排行榜
  • 中国做的比较好的电商网站有哪些哈市今日头条最新
  • 微信怎么做网站推广百度网站优化培训
  • 网站开发支持多个币种电子技术培训机构
  • 移动网站设计与制作怎么找关键词
  • 国内移动端网站做的最好的厦门人才网597人才网
  • 建网站收费吗aso关键词覆盖优化
  • 西安的网站设计与制作首页微信视频号怎么推广引流
  • 顺义公司建站多少钱pc端百度
  • wordpress收费资源下载关键词优化的策略
  • 广州做网站建设的公司网站公司
  • 做网络平台的网站有哪些广州网站维护
  • 网页 代码怎么做网站东莞市民最新疫情
  • 电子商务网站设计中影响客户体验的元素有搜索引擎有哪些种类
  • 网站建设难点优化关键词技巧
  • 免费行情网站链接百度知道合伙人官网
  • 餐饮公司网站建设的特点大数据智能营销
  • 济南快速排名刷关键词排名seo软件
  • 系统做网站的地方百度推广登录后台登录入口
  • 集约化网站建设情况广告公司网站制作
  • 网站制作发票字节跳动广告代理商加盟
  • 义乌做网站武汉seo推广优化公司
  • 济宁哪家网站建设公司正规谷歌浏览器 免费下载
  • 有没有女的做任务的网站广东省新闻