zoukankan      html  css  js  c++  java
  • 机器学习技法 --- 融合模型

    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课程2222
    屏幕亮度软件和一些自己必用的软件设置
    ahk保存
    天天洗一次澡还真是好方法
    自动化测试 就这两张图
    python __init__.py用途
    bash检查文件格式
    cygwin中运行命令提示command not found的解决方法
    Python批量插入SQL Server数据库
    怎样去掉FireFox的导入向导
  • 原文地址:https://www.cnblogs.com/daguankele/p/6486615.html
Copyright © 2011-2022 走看看