Re: [闲聊] Riot版上校? 设计师证实正在开发胜率演算

楼主: MoriNakamura (森)   2019-10-04 16:52:05
回个文简单分享一下个人见解好了 虽然很懒得改论文不过至少稍微做点动脑的事
文中提到的胜率分析基本上是黑客松的产物,看作者的部落格看起来重点更放在各种技术
的串接还有后续要做的即时串流分析,预测模型本身只是个雏形,也没有时间做微调
文中有提到使用的模型是random forest而不是神经网络
当然也不是说一定得用神经网络才是好,很多时候简单的模型就能得到好结果,训练也快
不过看原始码,除了决策树的数量(22)之外也没改其他参数了
至于为什么那四个因子会这么废话,重点还是在输入到底有哪些
原始码里面可以看到,模型的输入有:
游戏时间(ms)
双方最低牌位
双方最高牌位
双方巴龙击杀数
双方小龙击杀数
双方推塔数
双方金钱量
双方击杀数
双方死亡数
双方助攻数
双方整队等级
双方CS数
这边可以看到两个重点
第一,资料几乎都是以"整队"为单位
击杀数、金钱量、CS数甚至等级都是整队加起来
而虽然原始资料有给两边英雄的ID,不过也没喂进模型
所以只能看出来整体哪边比较肥而已,看不出来肥的到底是寇格魔还是瑟雷西
第二,上述资料完全没有前处理,就是喂进去而已
牌位对电脑来说就是不同字串,没有谁比谁高的概念
双方击杀数和死亡数几乎是重复的资料
而很多资料(金钱量、击杀死亡推塔等)是相对的,必须互相比较才有意义
而这些数据也都和游戏时间有关
但是很多预测模型,包含random forest,都不会去做这种比较
因此必须要自行做资料前处理
例如把双方的金钱量相减,变成"双方经济差"再喂进去,绝对会比各自喂有用的多
因为这样模型就可以根据这个差距有多大做预测
而不是像原始作法,模型很可能会变成看到"蓝方经济>50K"就猜蓝方会赢
却没注意到红方经济70K了
除此之外,没有把经济量对游戏时间做调整(变成金钱/时间)也会对模型有很不好的影响
我猜这就是这四个废话因子里面有两个重复的东西(击杀/死亡),却没有经济量的原因
而且只要猜哪队赢的二元预测,正确率只有到75%,说实在也没高到哪去
不过就像一开始说的,他们的project重点在短时间内搞出这么多技术的串接
多花点时间做资料前处理和微调的话,预测结果一定能做得更好
而他们也在github上放了原始码还有资料,有闲的乡民可以自己fork下来试着调调看
感觉满有趣的,我毕业完也会考虑来玩玩看
https://github.com/igwp/igwp
大概是这样
※ 引述《turningright (Right)》之铭言:
: Reddit原串:https://redd.it/dcpli3
: 来源:https://reurl.cc/9zG0aO
: 擅长在《英雄联盟》中抓出各种 Bug 的知名人物 Vandril 日前又抓到了一只大虫,当他
: 在测试服务器玩阿福快打的时候,游戏内的聊天室突然跳出一大串有着 DEBUG 字眼的字
: 串,而这些字串似乎有着一些不同凡响的意义。
: https://youtu.be/5DuLPpScQhs
: 这些字串显示出的资料包含双方队伍的经济量、经济差距、赏金分析,甚至还会显示出个
: 别英雄的弱点以及目前的胜率。
: Vandril 的 Bug 影片被转载到 Reddit 之后获得官方人员的回复,名为 RiotBoatStuff
: 的 Rioter 承认他们确实在用机器学习来试着能否分析出胜率,透过输入经济差距、地图
: 物件、队伍组成等参数来训练模型。
: https://i.imgur.com/gQ48Npa.png
: 不过其实早在 2016 年时就有类似的东西了,当时有人在 Riot 自办的黑客松中以实时胜
: 率为主题制作了一个分析程式,以三万场钻石积分场作基底去喂机器,并得出了死亡数、
: 击杀数、推塔数和击杀的小龙数是影响胜利的四个重要因子。
: RiotBoatStuff 在转贴文章底下也提到了推荐出装的系统,目前仍有些英雄的资料仍未更
: 新到最新版,若可透过AI分析战况来进行自动化的话应该会很棒,他也打趣的表示如果在
: 玩达瑞文时送掉首杀,系统有可能会误推荐你买六水滴。

Links booklink

Contact Us: admin [ a t ] ucptt.com