• 机器学习技法 --- 融合模型


    1、主要内容

      在已经使用某个模型的情况下,如何将这些模型进行融合使得模型更好的预测,这种技术就是融合模型技术。

    2、融合模型的引入

      你要买股票,有T个朋友做参考你听谁的?买还是不买?

      

      你可以采取的措施:

    • 选择最有价值的朋友的推荐---对应到机器学习就是一个模型的选择,就是验证(validation)选择性能最好的那个模型
    • 或者认为他们的预测性能都相同,那么就让他们投票选出一个,缺点是他们的性能必然不一样
    • 使用投票表决但是每个人的权重不同
    • 根据不同人在不同的专长领域,将他们都结合起来,然后根据自己的情况进行选择

      

      融合模型就是混合或者联合每个人的预测,进行综合考虑;以上的选择对应到数学模型上可以是:

      

      融合和模型选择的区别:

    • 选择是在一个已经有很好的模型的情况下进行选择,如果所有的模型表现的都不好,那么选择的模型也不怎么样,可以用“优胜劣汰”
    • 融合是在一群不强的模型中组合起来整体成为一个比较强劲的模型,可以用“三个臭皮匠赛过诸葛亮”。

      

    3、融合的方法

      3.1 unifrom blening(平均混合)

      3.1.1 分类问题的平均混合

        每个模型都进行投票按照投票结果做出最终决定,就是blending(混合)。使用每一个模型的预测左最终的预         测。已知的模型每个都有一票,权重都相同:

      

      存在问题:

      如果所有的gt都相同,那么混合就没有什么意义了,与原有的gt是相同的。

      如果gt不相同并且可以民主投票,那么就很有可能修正错误。

      

      对于多分类问题情况类似:

      

      最后投票的那个K最多就是那个结果。

      3.1.2 回归的平均混合

        每个预测值的求和平均。

      

        存在的问题和分类的情况类似;

        同样如何每个gt都不同,并且也是民主投票,有的gt预测偏大有的 预测偏小,那么整体求和可能会使结果更           好;

      

      综上两种不同的场景,如果假设函数不相同,即使是很简单的平均混合也可以得到比单个假设函数要好的结果。

      

      简单的理论证明

      

      投票的物理意义:尽量减少模型的varience,加强了模型的泛化能力。

        3.2 线性混合

      相比与平均混合此处每个模型的票数都不相同:

      

      3.3 bagging

      差异的重要性:

      

      blending使采用不同的g进行组合,每个g的训练数据都不相同。当只有一份数据时可以采用bootstarp方法产生N组资料:

      

      简单来说就是又放回的去取N笔资料。

      

       

      

  • 相关阅读:
    Java学习-021-Properties 获取配置项对应的值
    Java学习-020-Properties 判断是否存在对应的 key 项
    Java学习-019-Properties 文件读取实例源代码
    Java学习-018-EXCEL 文件写入实例源代码
    Redis进阶实践之九 独立封装的RedisClient客户端工具类
    Redis进阶实践之八Lua的Cjson在Linux下安装、使用和用C#调用Lua脚本
    Redis进阶实践之七Redis和Lua初步整合使用
    Redis进阶实践之六Redis Desktop Manager连接Windows和Linux系统上的Redis服务
    Redis进阶实践之五Redis的高级特性
    Redis进阶实践之四Redis的基本数据类型
  • 原文地址:https://www.cnblogs.com/daguankele/p/6486615.html
Copyright © 2020-2023  润新知