作家
登录

使用深度学习来预测NBA比赛结果

作者: 来源: 2017-11-23 15:57:08 阅读 我要评论

Tech Neo技巧沙龙 | 11月25号,九州云/ZStack与您一路商量云时代收集界线治理实践


这篇文┞仿,我们来应用深度进修来猜测 NBA 比赛结不雅。经由过程本文,我们可以进修到:

  1. 若何爬取 NBA 技巧统计数据;
  2. 若何预处理数据;
  3. 若何搭建简单的深度收集模型;
  4. 若何猜测比赛结不雅。

应用深度进修来猜测NBA比赛结不雅

最终我们获得一个猜测第二天比赛精确率 100% 的模型。

技巧统计数据收集

要用深度进修来猜测比赛结不雅,须要有大年夜量技巧统计数据作为进修样本。

来看下官方的技巧统计网站:http://stats.nba.com/schedule

应用深度进修来猜测NBA比赛结不雅

打开浏览器的开辟者对象,点击每场比赛右边的 BOX SCORE,我们就能看到会请求如许的一个 json 文件:

应用深度进修来猜测NBA比赛结不雅

具体到我们要找的数据统计,是这个 json 琅绫擎的 hls (主队数据) 和 vls (客队数据):

11 场全部精确,amazing !!

应用深度进修来猜测NBA比赛结不雅

url 是这种格局:

https://data.nba.com/data/10s/v2015/json/mobile_teams/nba/2017/scores/gamedetail/0021700228_gamedetail.json

多测验测验几回就可以发明规律:

  1. https://data.nba.com/data/10s/v2015/json/mobile_teams/nba/ 这个是固定的;
  2. 2017 是赛季开端年份,比瘸老赛季则是 2016;
  3. /scores/gamedetail/ 和 最后的 _gamedetail.json 也是固定的;
  4. 0021700228 则是比赛的 id,规律为 002 是规定的,17 则是赛季开端年份的后两位,如上赛季是 16;00228 则是 5 位的数字,大年夜 1 开端,不足补零,比如该赛季第一场是 00001,而 00228 就是第 228 场比赛;
  5. 抓到的 url 是 https,其实 http 也是支撑的,抓取时比 https 快点。

收集脚本比较简单,就是轮回获取,然后存 redis。

应用深度进修来猜测NBA比赛结不雅

对于我们要用来跑练习的数据,须要整顿成 主队数据 - 客队数据的方法,并增长一个 win or lose 的 label (篮球比赛没有平局)。

  1. 127.0.0.1:6379> HGET gamedetaildiff 0021700228_gamedetail.json 
  2.  
  3. "{u'ast': 2, 'win': 1.0, u'fbptsa': 6, u'tf': 1, u'bpts': -4, 'away': u'LAC', u'pip': -2, 'home': u'CHA', u'dreb': 4, u'fga': 4, u'tmtov': 0, u'scp': 14, 'date': u'2017-11-19', u'fbptsm': 5, u'tpa': -3, u'fgm': 1, u'stl': 2, u'fbpts': 10, u'ble': 13, u'tov': -6, u'oreb': 1, u'potov': 16, u'fta': 10, u'pipm': -1, u'pf': -6, u'tmreb': -2, u'blk': 3, u'reb': 5, u'pipa': -4, u'ftm': 10, u'tpm': 3}" 

数据预处理

我们用 Pandas 来做数据处理,异常便利。

先直接大年夜 redis 里读入数据:

跑下我们模型的猜测结不雅:

  1. import pandas as pd 
  2. import redis 
  3. import ast 
  4.  
  5. cli = redis.Redis() 
  6. data = cli.hgetall("gamedetaildiff"
  7. df = pd.DataFrame([ast.literal_eval(data[k]) for k in data]) 
  8. df = df.fillna(value=http://ai.51cto.com/art/201711/0.0) # 用 0 弥补空白数据
     1/4    1 2 3 4 下一页 尾页

      推荐阅读

      CNN与RNN对中文文本进行分类--基于TENSORFLOW实现

    Tech Neo技巧沙龙 | 11月25号,九州云/ZStack与您一路商量云时代收集界线治理实践运行 python run_cnn.py test 在测试集长进行测试。 练习与验证还可以经由过程进一步的调节参数,来达到更>>>详细阅读


    本文标题:使用深度学习来预测NBA比赛结果

    地址:http://www.17bianji.com/lsqh/39191.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)