python模型集成知识点总结

说明

1、模型集成是指将一系列不同模型的预测结果集成在一起,从而获得更好的预测结果。

2、对于模型集成来说,模型的多样性非常重要。Diversityisstrength.用于集成的模型应尽可能好,同时应尽可能不同。

同一的网络,使用不同的随机初始化,多次独立训练,然后集成,意义不大。更好的方法是使用结构非常不同的模型进行集成,这样每个模型的偏差就会在不同的方向上相互抵消,结果就会更加稳定准确。

实例

可以用多种不同的方法来集成它们,最简单的办法是,取平均:

final_preds = 0.25 * (preds_a + preds_b + preds_c + preds_d)

由于每一个模型的性能会有差距,所以更好的办法是加权平均:

final_preds = 0.5 * preds_a + 0.25 * preds_b + 0.1 * preds_c + 0.15 * preds_d

知识点扩充:

当我们想在数据集上构建许多个模型,便可考虑使用集成的方法:

1. 挂袋法:并行进行,挂袋法集成中的每一个模型只使用训练集的一部分,它们的思路是减少对数据产生过度拟合,但前提是每个模型的差别不能太大,挂袋法对如线性回归之类的线性预测器无效。对于一些很稳定的模型,挂袋法的效果不明显,它适合那些对很小的改变也十分敏感的分类器,例如决策树,它很不稳定,未剪枝决策树就十分适合挂袋法。而KNN分类器则是一种很稳定的模型,不过我们可以使用随机子空间方法,为最近邻方法引入不稳定性。

2. 赋权重提升法:顺序进行,产生一个逐步复杂的模型序列,它按顺序基于前一个模型的错误训练新的模型,每次训练得到的模型被赋予一个权重,这个权重依据模型再给定数据的效果而定。最终的预测值产生时,这些权重值就是每个特定模型对于最终输出结果的影响力的判据。整体来说就是把错误率低的分类器赋予更大的权重。

3. 梯度提升法:由于赋权提升法使根据赋予错误实例更大的权重,然后是的下一个模型更可能选中这些错误分类的实例再次训练,而这也存在不足之处,这里梯度提升法采用梯度而不是权重来鉴别缺陷,基于调整残差(真实值y与预测值y')来完善上一个模型的缺陷。

到此这篇关于python模型集成知识点总结的文章就介绍到这了,更多相关python模型集成是什么内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • python模型集成知识点总结

    说明 1.模型集成是指将一系列不同模型的预测结果集成在一起,从而获得更好的预测结果. 2.对于模型集成来说,模型的多样性非常重要.Diversityisstrength.用于集成的模型应尽可能好,同时应尽可能不同. 同一的网络,使用不同的随机初始化,多次独立训练,然后集成,意义不大.更好的方法是使用结构非常不同的模型进行集成,这样每个模型的偏差就会在不同的方向上相互抵消,结果就会更加稳定准确. 实例 可以用多种不同的方法来集成它们,最简单的办法是,取平均: final_preds = 0.25

  • Python爬虫教程知识点总结

    一.为什么使用Python进行网络爬虫? 由于Python语言十分简洁,使用起来又非常简单.易学,通过Python 进行编写就像使用英语进行写作一样.另外Python 在使用中十分方便,并不需要IDE,而仅仅通过sublime text 就能够对大部分的中小应用进行开发:除此之外Python 爬虫的框架功能十分强大,它的框架能够对网络数据进行爬取,还能对结构性的数据进行提取,经常用在数据的挖掘.历史数据的存储和信息的处理等程序内:Python网络的支持库和html的解析器功能十分强大,借助网络的

  • 使用IronPython把Python脚本集成到.NET程序中的教程

    从两个优秀的世界各取所需,更高效的复用代码.想想就醉了,.NET和python融合了."懒惰"的程序员们,还等什么? Jesse Smith为您展示如何两个语言来服务同一个.NET程序.你能集两家所长:Python和.NET一起工作,提供可重用的代码功能而不需要你为了一个环境重写代码库. 通过使用IronPython 运行时库,你可以让Python脚本运行在你的.NET程序中.本文向你展示如何使用一个.NET程序中的python脚本获取并展示用户反馈. 如果你曾经有在一个.NET程序中

  • 详解Python数据分析--Pandas知识点

    本文主要是总结学习pandas过程中用到的函数和方法, 在此记录, 防止遗忘 1. 重复值的处理 利用drop_duplicates()函数删除数据表中重复多余的记录, 比如删除重复多余的ID. import pandas as pd df = pd.DataFrame({"ID": ["A1000","A1001","A1002", "A1002"], "departmentId":

  • Python模块相关知识点小结

    本文实例讲述了Python模块相关知识点.分享给大家供大家参考,具体如下: 1.模块: 定义:用来从逻辑上组织python代码(变量,函数,类,逻辑:实现一个功能),本质就是以.py结尾的python文件(文件名:test.py,对应的模块名:test). 包:用来从逻辑上组织模块的,本质就是文件夹(目录),必须带有一个__init__.py文件. 导入包的本质就是解释这个包下面的__init__.py文件. 在某个模块下需要导入某一个包下面的内容,需要在包下面的__init__.py文件中修改

  • Python 面向对象部分知识点小结

    本文实例讲述了Python 面向对象部分知识点.分享给大家供大家参考,具体如下: 面向对象: 世间万物,皆可分类.--------------------手机<--------------某一个分类 世间万物,皆为对象.--------------------我的手机<---------有具体指向 只要是对象,就肯定属于某种品类. 只要是对象,就肯定有属性. 类的相同点一起写,不同点分开写. 1.Python类中self的来源: 通常函数的执行方式为: 调用函数-->执行函数----&g

  • 关于Python解包知识点总结

    解包 在英文里叫做 Unpacking,就是将容器里面的元素逐个取出来放在其它地方,好比你父母去菜市场买了一袋苹果回来分别发给家里的每个成员,这个过程就是解包.Python 中的解包是自动完成的,例如: student = ['xiaoqiang','man','22'] name,sex,age = student print(name,sex,age) 结果:xiaoqiang man 22 如果列表中有3个元素,那么刚好可以分配给3个变量.除了列表对象可以解包之外,任何可迭代对象都支持解包

  • python爬虫基础知识点整理

    首先爬虫是什么? 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本. 根据我的经验,要学习Python爬虫,我们要学习的共有以下几点: Python基础知识 Python中urllib和urllib2库的用法 Python正则表达式 Python爬虫框架Scrapy Python爬虫更高级的功能 1.Python基础学习 首先,我们要用Python写爬虫,肯定要了解Python的基础吧,万丈高楼平地起,

  • cookies应对python反爬虫知识点详解

    在保持合理的数据采集上,使用python爬虫也并不是一件坏事情,因为在信息的交流上加快了流通的频率.今天小编为大家带来了一个稍微复杂一点的应对反爬虫的方法,那就是我们自己构造cookies.在开始正式的构造之前,我们先进行简单的分析如果不构造cookies爬虫时会出现的一些情况,相信这样更能体会出cookies的作用. 网站需要cookies才能正常返回,但是该网站的cookies过期很快,我总不能用浏览器开发者工具获取cookies,然后让程序跑一会儿,每隔几分钟再手动获取cookies,再让

  • python unichr函数知识点总结

    在进制学习时候,细心的小伙伴不免都发现unicher函数的存在,没错能够经常看到的,也就是关于进制的转化,那肯定有小伙伴要开心起来了,因为进制一直都是编写里比较头疼的事情,如果有专门服务的函数,一定可以解决进制换算里这个头疼的问题,小编就是要为大家解决问题的,答案在下文. 1.描述: 返回unicode 的字符. 2.语法: unichr() 3.参数: 返回是进制的数字 4.类型: unichr(x ) 将一个整数转换为Unicode字符 5.实例演示: >>> unichr(109)

随机推荐