【寫在最前面】如果你不相信統計學,不相信數字,卡洛或是采樣你認為足球比賽無法基于戰(zhàn)績來預測,或者你認為所有比賽都是預測被操控的,那請你讀到這里就好,冠前這篇文章在浪費你時間,景分去看別的析及帖子謝謝。如果你對概率論感興趣,強潛也愿意花點時間在這些算法和數字上,對手歡迎提出寶貴的蒙特們歐意見。
【背景】年初的卡洛時候我用python建了一個歐冠第一階段最后一輪的模擬器,用于概率分布+蒙特卡洛采樣法來預測我廠16強的采樣對手。https://m.hupu.com/bbs-share/630144549.html?預測share=share&euid=255286098447065&cid=133419209
我現在覺得當初的模型太弱雞了,完全就是冠前初中生水平的數學。今年花了一點時間改進了一下那個模型,景分讓比賽預測概率分布更貼近現實一些,包括用更加合理的概率分布基礎、革新進球/失球期望值的計算,以及加入主場優(yōu)勢的影響。我用這個進階版模型為基礎,用蒙特卡洛采樣法跑1萬次,模擬了最后兩輪的歐冠比賽的結果,以及預測了我廠潛在的16強對手。
【先說結論】
1.(見圖1-2)不考慮最后兩輪歐冠比賽時球隊狀態(tài)、球員傷病、對手狀態(tài)、聯賽消耗、輪換程度、冬窗操作、塔子哥的神智清醒度、厄德高是否首發(fā)等等因素的影響,我廠最終的預期排名為第一,預期積分為22.77,極大概率(97.5%)鎖定第一,只存在理論上的可能性掉出前二。
2.(見圖3)說點大家不知道的:根據模擬結果,十六強最有可能遇到的5個對手包括勒沃庫森、尤文圖斯(去年也有他,沒想到竟被psv翻了)、馬賽、加拉塔薩雷、多特。但是說實話,16強對手預測是個概率套概率套概率的事情,虛無縹緲,很有可能打完第七輪之后也會發(fā)生巨大變化,看完樂呵樂呵就好,請別較真。
【算法解析】(見圖4-5)這版預測模型最大的變動在于單場比賽的概率分布模型:相較于之前直接用預期進球丟球作為預測均值,我用一個非線性的冪次結構算法來引入雙方的攻防強度,把極強和極弱壓縮,也能減少有限場次的非正常數據帶來的失真。然后我引入了由過往六輪比賽賽果算得的HFA(home factor of advantage)來提升主隊的進攻效率比例,和聯賽基準進球率做冪次項里的分母,最后調參alpha=beta=0.7,求得比賽雙方進球預期值。最后用Poissondistribution模擬實際進球數,得到比賽比分、算勝平負、模擬完成。經過對剩下36場比賽進行1萬次模擬,我們可以求得每場比賽/每支球隊的預期積分、進球失球、凈勝球變化,得到圖1的8輪后預期積分榜,也可得到圖2的我廠排名概率。對于9-24名參與附加賽的球隊,我們進行五五開模擬晉級結果,再按照規(guī)則對上前八名球隊,使得所有參加16強的球隊獲得一個16強對戰(zhàn)模擬,這樣就有了圖3的我廠對戰(zhàn)球隊概率分布。但是說實話,16強對手預測是個概率套概率套概率的事情,虛無縹緲,很有可能打完第七輪之后也會發(fā)生巨大變化,看完樂呵樂呵就好,請別較真。
【提升與總結】寫出來這個模型之后發(fā)現還有很多可以加的參數,比如球隊傷病啊,身價啊,聯賽數據啊,兩對過往戰(zhàn)績啊等等。可惜時間不夠熬不動了。這個模型我會在第七輪結束之后再跑一次,期待到時候的結果。





【寫在最前面】如果你不相信統計學,不相信數字,或是你認為足球比賽無法基于戰(zhàn)績來預測,或者你認為所有比賽都是被操控的,那請你讀到這里就好,這篇文章在浪費你時間,去看別的帖子謝謝。如果你對概率論感興趣,也愿意花點時間在這些算法和數字上,歡迎提出寶貴的意見。
【背景】年初的時候我用python建了一個歐冠第一階段最后一輪的模擬器,用于概率分布+蒙特卡洛采樣法來預測我廠16強的對手。https://m.hupu.com/bbs-share/630144549.html?share=share&euid=255286098447065&cid=133419209
我現在覺得當初的模型太弱雞了,完全就是初中生水平的數學。今年花了一點時間改進了一下那個模型,讓比賽預測概率分布更貼近現實一些,包括用更加合理的概率分布基礎、革新進球/失球期望值的計算,以及加入主場優(yōu)勢的影響。我用這個進階版模型為基礎,用蒙特卡洛采樣法跑1萬次,模擬了最后兩輪的歐冠比賽的結果,以及預測了我廠潛在的16強對手。
【先說結論】
1.(見圖1-2)不考慮最后兩輪歐冠比賽時球隊狀態(tài)、球員傷病、對手狀態(tài)、聯賽消耗、輪換程度、冬窗操作、塔子哥的神智清醒度、厄德高是否首發(fā)等等因素的影響,我廠最終的預期排名為第一,預期積分為22.77,極大概率(97.5%)鎖定第一,只存在理論上的可能性掉出前二。
2.(見圖3)說點大家不知道的:根據模擬結果,十六強最有可能遇到的5個對手包括勒沃庫森、尤文圖斯(去年也有他,沒想到竟被psv翻了)、馬賽、加拉塔薩雷、多特。但是說實話,16強對手預測是個概率套概率套概率的事情,虛無縹緲,很有可能打完第七輪之后也會發(fā)生巨大變化,看完樂呵樂呵就好,請別較真。
【算法解析】(見圖4-5)這版預測模型最大的變動在于單場比賽的概率分布模型:相較于之前直接用預期進球丟球作為預測均值,我用一個非線性的冪次結構算法來引入雙方的攻防強度,把極強和極弱壓縮,也能減少有限場次的非正常數據帶來的失真。然后我引入了由過往六輪比賽賽果算得的HFA(home factor of advantage)來提升主隊的進攻效率比例,和聯賽基準進球率做冪次項里的分母,最后調參alpha=beta=0.7,求得比賽雙方進球預期值。最后用Poissondistribution模擬實際進球數,得到比賽比分、算勝平負、模擬完成。經過對剩下36場比賽進行1萬次模擬,我們可以求得每場比賽/每支球隊的預期積分、進球失球、凈勝球變化,得到圖1的8輪后預期積分榜,也可得到圖2的我廠排名概率。對于9-24名參與附加賽的球隊,我們進行五五開模擬晉級結果,再按照規(guī)則對上前八名球隊,使得所有參加16強的球隊獲得一個16強對戰(zhàn)模擬,這樣就有了圖3的我廠對戰(zhàn)球隊概率分布。但是說實話,16強對手預測是個概率套概率套概率的事情,虛無縹緲,很有可能打完第七輪之后也會發(fā)生巨大變化,看完樂呵樂呵就好,請別較真。
【提升與總結】寫出來這個模型之后發(fā)現還有很多可以加的參數,比如球隊傷病啊,身價啊,聯賽數據啊,兩對過往戰(zhàn)績啊等等。可惜時間不夠熬不動了。這個模型我會在第七輪結束之后再跑一次,期待到時候的結果。






章節(jié)評論
段評