標籤:進一步 形式 學習 分包 比賽結果 小夥伴 部分 過程 .com
有些事情受萬眾矚目,它不是說受某一個行業,某一類人,而是全人類。6月份就有一件大事,那就是“世界盃”!
有些熱愛足球的小夥伴肯定關心的是比賽的過程、結果,自己喜歡的足球運動員是否能在比賽場上,馳聘風雲,大展雄風。然而我們卻都知道除此以外,還有些光明正大的足球菠菜存在,對於有些資深的玩家,甚至說給我一百塊,我就可以買房。。。(文末三段話,必看!)
你以為你是Python程式員嗎?你有科學的依據證明到底誰能勝場,比賽結果是幾比幾嗎?你只能靠經驗,比一般人強一點。就跟我聽到的一個笑話一樣:“世界盃論翻數有1000翻,如果你有三塊錢,你買了世界盃,那麼你三塊錢就沒了!”
有資料才可信,Python人工智慧預測一波“世界盃”比賽結果。
原理:
第一步:對兩個資料集深度分析
第二步:做特徵工程用來選擇最相關的特徵進行預測
第三步:資料處理,選擇一個機器學習模型
第四步:把它部署到資料集上
預測的比賽記錄:
葡萄牙:
C羅,戰神一般的存在。速度、意識,技巧等方面都是頂尖的存在,更加值得尊敬的是年紀這麼大卻仍然保持一顆不服輸的心。葡萄牙隊的其它隊員也是極強的,對於球機的把握,對於配合方面也是頂尖的,畢竟貴為新科歐洲杯冠軍!
西班牙:
經曆過失敗後,即使走掉了許多優秀的球員,也能夠苦思失敗的原因,艱難的重組戰隊,由此看出他們也是不好惹的存在,精神與意志力堅不可摧。各年輕的戰隊隊員呈現崛起之勢,成為了“預選賽之王”,誰與爭鋒?
載入資料集
深度分析
深度分析與特徵工程:最費時間的是分析出哪些特徵和機器學習模型相關。把目標的差異與結果列添加到結果資料集裡面,詳細的Python原始碼如下:
處理一部分包括僅有尼日利亞參加比賽的資料。有利於我們知道那些國家球隊的特色,然後拓展到參加世界盃的其它國家。具體代碼如下:
建立一個年份的列表,選擇自從1930年創辦“世界盃”之後的所有比賽,Python代碼如下:
和所有參加比賽的戰隊合并成一個資料框,代碼:
過濾一下結果資料框,顯示從1930年起僅在2018年世界盃上的戰隊,刪除無用元素。
Python實現代碼:
羅吉斯迴歸演算法:估計機率,測量分類因變數與一個或多個自變數之間的關係,就是累計物流配送。
建立學習模型:學習怎麼用每種資料的形式對遊戲結果產生積極,消極等影響遊戲結果的程度。給它真實準確的資料,填入其中,你就擁有一個預測以後結果的模型。
將最終資料框傳遞給羅吉斯迴歸演算法,Python實現代碼:
這樣的模型在訓練集上的準確率為僅有60%左右的準確率,這肯定不符合我們的要求,我們要進一步訓練模型,建立一個資料框,部署我們的模型。
將模型部署到資料集,從把模型部署到小組比賽開始進行比較。代碼和結果如下:
【小組賽預測的結果】
時間2:00
小組: 西班牙 、葡萄牙
預測的勝利小組:西班牙
時間18:00
小組: 法國、澳大利亞
預測的勝利小組:法國
時間21:00
小組:冰島、阿根延
預測的勝利小組: 阿根廷
賽事時間如所示:
其實線性迴歸,我們在高中的數學教材中就學到過,還記得嗎?在座標中,密密麻麻的一些點,讓你去尋找它們最相關的一個運算式?所有的點,最接近的哪條線,讓你列出運算式,所以Python演算法也沒想象中的那麼難,關鍵在於你的聯想,以及你曾經的知識儲備。
既然是最接近那條線,所以只能說預測的結果正確的機率會大一點。那麼,你們都懂了,何為預測?表示結果還是不確定的嘛!
利用Python演算世界盃比賽結果,程式員氣的拍桌子,後悔晚了!