世界杯足彩怎么买划算?机器学习AI告诉你答案(含预测)
本文首发于InfoQ公众号头条。

引言
概率赔率基本知识
足彩赔率推导及返还率推导
定义问题,特征选取,数据抓取
# coding=utf-8
import urllib.parse
import urllib.request
import gzip
from bs4 import BeautifulSoup class Game:
def __str__(self):
return '%s,%s,%s,%s,%s,%s,%s,%s,%s' %(self.race,self.turn,self.time,self.host,self.guest,self.rate_w,self.rate_tie,self.rate_lose,self.rate_back) def getHtml(url,values):
user_agent='Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36'
headers = {'User-Agent':user_agent}
data = urllib.parse.urlencode(values)
response_result = urllib.request.urlopen(url+'?'+data).read()
#压缩过的数据,一般不需要unzip 视具体网页决定
html = gzip.decompress(response_result)
html = html.decode('gbk')
return html
#return "" #获取数据
def requestOdds(index):
print('向足彩数据网站请求数据')
url = 'http://odds.500.com/#!league=%5B40%2C109%2C352%5D'
value= {
}
result = getHtml(url,value)
return result if __name__ == '__main__':
print("start parse")
text = requestOdds(1)
soup = BeautifulSoup(text, 'html.parser')
items = soup.find_all('tr', attrs={'': ''}, limit=1000)
size = 15
for item in items:
#print(item)
tds = item.find_all('td')
games = []
#只抓世界杯比赛
if len(tds)>=size and tds[1].string=='世界杯':
game = Game()
game.race = tds[1].string
game.turn = tds[2].string
game.time = tds[3].string
game.host = tds[4].string
game.guest = tds[6].string
game.rate_w = tds[11].string
game.rate_tie = tds[12].string
game.rate_lose = tds[13].string
game.rate_back= tds[14].string
games.append(game)
模型建立,程序回测,预测胜率
from numpy import *
def sigmoid(inX):
return 1.0/(1+exp(-inX)) def stocGradAscent1(dataMatrix, classLabels, numIter=500):
m,n = shape(dataMatrix)
weights = ones(n) #initialize to all ones
for j in range(numIter):
dataIndex = list(range(m))
for i in range(m):
alpha = 4/(1.0+j+i)+0.0001 #apha decreases with iteration, does not
randIndex = int(random.uniform(0,len(dataIndex)))#go to 0 because of the constant
h = sigmoid(sum(dataMatrix[randIndex]*weights))
error = classLabels[randIndex] - h
weights = weights + alpha * error * dataMatrix[randIndex]
del(dataIndex[randIndex])
return weights
足球的迷人地方,包含了韩国对德国这个超大冷门,我们的程序预测韩国胜率几乎为0。。。
用这个模型预测28日及以后的8场比赛, 步长改为更小,到时看看是否能达到72%的胜率:
日 本 VS 波 兰,0
塞内加 VS 哥伦比,0
英格兰 VS 比利时,0.95
巴拿马 VS 突尼斯,0.001
法 国 VS 阿根廷,0
乌拉圭 VS 葡萄牙,0.869032
俄罗斯 VS 西班牙,0.001
克罗地 VS 丹 麦,0.77
爆冷让人心慌?如何让「下注」稳赚不赔?https://mp.weixin.qq.com/s/baftxbdQQKTP-SEutM4uhw
世界杯足彩怎么买划算?机器学习AI告诉你答案(含预测)的更多相关文章
- 零起点PYTHON足彩大数据与机器学习实盘分析
零起点PYTHON足彩大数据与机器学习实盘分析 第1章 足彩与数据分析 1 1.1 “阿尔法狗”与足彩 1 1.2 案例1-1:可怕的英国足球 3 1.3 关于足彩的几个误区 7 1.4 足彩·大事件 ...
- zw版足彩大数据&报价
zw版足彩大数据&报价 ::zw增强版足彩大数据,文件名后缀是'.dat' ::文件格式是标准文本格式,逗号分隔 ::zw增强版,在标准版赔率基础上,增加了倒数.比率两组归一化数据 ::zw版 ...
- [TJOI2007] 足彩投注
足彩投注 题目概述 题目背景 了解足球彩票的人可能知道,足球彩票中有一种游戏叫做"胜负彩",意为猜比赛的胜负.下面是一些与胜负彩有关的术语 注 :每一组有效组合数据. 投 注:彩民 ...
- 人工智能和机器学习 AI&ML howto
我关心的AI.ML的分支领域: 我的博客:Deep Learning 和 Knowledge Graph howto (有关DL&KG的资料都在这里) https://www.cnblogs. ...
- 机器学习 AI 谷歌ML Kit 与苹果Core ML
概述 移动端所说的AI,通常是指"机器学习". 定义:机器学习其实就是研究计算机怎样模拟人类的学习行为,以获取新的知识或技能,并重新组织已有的知识结构使之不断改善自身.从实践的意义 ...
- 互联网,IT,大数据,机器学习,AI知识tag云
互联网基础: tcp/ip网络,linux运维,DNS,ipv6 web前端: javascript, es6, 组件化开发, vuejs, angularjs, react html5, css3, ...
- c# 模拟网易足彩算法
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using S ...
- zw黑天鹅足彩实盘测试5月数据包
[文件说明] $mx1,是单日数据:$mx9,是日数据和 入选率:2%, 准确度:40% 盈利率:120%左右 目前在测试稳定性 5月1日-6月14日,实盘数据 $mx9,15061409x15061 ...
- 这届 Showgirl行不行?AI告诉你谁是ChinaJoy上最漂亮的小姐姐
摘要: CJ开幕,顶着三伏天的酷暑高温,暴走一整天,就为了拍点漂亮小姐姐给大家看看. 一年一度的游戏视觉盛宴又来了! 作为一个游戏动漫控的肥宅,去CJ现场是必须的.除了看看游戏和动漫,各大游戏展台漂亮 ...
随机推荐
- 2048总结 JavaScript+jQuery(取元素方便,.css,text方法)
Html部分(界面):1.开始新游戏:2.返回上一步:3.记分栏: 4.16个小格组成: 其中1,2由链接形式实现. a标签中href属性调用js方法: <a href="javasc ...
- Kali-linux系统指纹识别
现在一些便携式计算机操作系统使用指纹识别来验证密码进行登录.指纹识别是识别系统的一个典型模式,包括指纹图像获取.处理.特征提取和对等模块.如果要做渗透测试,需要了解要渗透测试的操作系统的类型才可以.本 ...
- Spring(十)之自定义事件
编写自定义事件的简单流程如下: (1)编写CustomEvent.java package com.tutorialspoint; import org.springframework.context ...
- Android-应用性能测试
参考了文章:http://www.cnblogs.com/mliangchen/p/5125114.html 问题一:使用真机在DDMS下,查看不到应用进程,logcat也不全 最后,只能使用Geny ...
- Vue学习—Vue写一个图片轮播组件
1.先看效果: 熟悉的图片轮播,只要是个网站,百分之90以上会有个图片轮播.我认为使用图片轮播. 第一可以给人以一种美观的感受,而不会显得网站那么呆板, 第二可以增加显示内容,同样的区域可以显示更多内 ...
- LeetCode40.组合总和|| JavaScript
给定一个数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合. candidates 中的每个数字在每个组合中只能使用一次. ...
- HashMap源码阅读与解析
目录结构 导入语 HashMap构造方法 put()方法解析 addEntry()方法解析 get()方法解析 remove()解析 HashMap如何进行遍历 一.导入语 HashMap是我们最常见 ...
- 基于Centos7系统部署cobbler批量安装系统
前言 cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本 系统环境的准备及下载cobbler 一 ...
- Docker学习系列(一)-CentOS7下安装Docker
CentOS7下Docker的安装 一.操作系统要求 CentOS 7 64位 Kernel 3.10+ 本机系统信息 二.卸载旧版本 如果之前安排过旧版本的Docker,先卸载掉旧版Docker以及 ...
- MySQL数据库创建用户并实现远程登录
创建用户 CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 2.授权 GRANT privileges_name privileges O ...