返回第268章 最终版本(1 / 2)一碗酸梅汤首页

关灯 护眼     字体:

上一章 目录 下一页

所谓集成学习,就是训练多个机器学习模型,然后组合在一起,让它们协调工作。

俗话说,人多力量大,机器学习算法也是一样。

江寒经过一番认真的设计,确定了一个新的网络拓扑结构。

他从排名415的模型里,精心选择了7种,再加上“唯一优胜者”、“黑马中等生”、“书呆子”,一共10个神经网络。

将它们放在一起,简单地并联起来,组成了一个整体,然后设计了一个投票程序。

一张手写数字的图片输入网络后,会同时传递给10个神经网络模型,让它们各自进行计算,输出自己的预测结果。

如果大家的判断完全一致,那自然没什么问题。

但如果大家意见相左,就会启动投票程序,根据票数来决定最终的输出。

票数并不是平均分配的,在验证集上表现更好的模型,手里的选票也应该更多。

所以,理所当然的,“唯一优胜者”拥有最多的票数。

如果他全票投给自己,那么一般来说,他的意见就基本上接近正解,理应得到采纳。

这种情况下,其他模型就算有不同意见,而且全都统一口径,也不应该推翻优胜者的判断。

这就好比领导班子开会,不能光讲民主,还得适当集中……

但很多时候,优胜者对自己的判断,也并不是十分有把握,这个时候,其他“学生”给出的答案,就很有参考意义了。

如果其他人中,有人认为答案是另一个,并得到了多数人的支持,那么就会对优胜者的答案进行“弹劾”。

如果优胜者投给自己的票数,并不足以驳回大家的“弹劾”,那么就会少数服从多数,将最后输出修改为受到更多人认同的。

举例来说,刚才的那个数字5。

优胜者判断有60%的概率是6,37%的概率是5,2%的可能性是其他数字,这个时候,它就会输出错误的答案:6。

但如果在其他“学生”中,有人经过计算,认为答案应该是5,与优胜者判断不一致,就会启动投票程序。

由于优胜者判断只有60%的概率是数字6,折算后,等于它只肯为自己的答案投6票。

这个时候,只要其他个模型的票数,加一起超过6票,即可弹劾成功。

如果优胜者对自己的判断,有0%以上的把握,那么其他个人加起来,也不足以推翻他的结论。

意思就是这么个意思,具体的折算比例,当然不会这么简单。

还需要十分细致、耐心地进行调整,以使整个模型的输出,更加接近最优解。

当然,这种投票式的做法,无疑也有极小极小的可能性,产生不那么美好的结果。

比如,优胜者本来的判断明明是正确的,只是对自己信心不够充足,也有可能被其他模型给“纠正”成错误的。

但这种情况发生的几率,远远小于优胜者误判的几率。

所以,集成学习的总体性能,仍然领先于每一个单独的神经网络。

这种集成学习的思想,无疑是比较先进的,但实现起来难度也相当大。

尤其是那个投票程序,相当耗费脑细胞。

江寒全力开动脑力,也足足用了四个多小时,才将集成学习网络打造成功。

时间主要浪费在投票程序,折算比例的调整上。

至于10个子模块,已经全部训练完毕,就无需再耗费时间训练了。

也幸亏如此,否则就没办法及时提交上去了。

随后,江寒在最终版本的集成网络上,重新跑了一遍验证集。

结果十分喜人,识别准确率达到了惊人的.62%。

这个成绩已经十分令人满意。

接下来,江寒就按照官网发布的说明,对自己的代码进行了一点处理。

主要是去掉一些调试语句,再将数据文件的接口,改成主办方要求的方式。

『加入书签,方便阅读』

上一章 目录 下一页