Skip to content

This project will involve knowledge in many fields. Deep neural networks; Markov chain; Reinforcement learning; The Book of Changes; the user's personal luck.

Notifications You must be signed in to change notification settings

lancewliang/lottery_prediction

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

彩票预测系统

我在少年时期一个亲戚对彩票有执着的兴趣,当时就为其开发一个彩票的筛选程序。以及长大后亲戚因为彩票而输了很多钱导致家庭产生了重大的危机。这个项目的初衷并不是赚钱,对AI技术的尝试以及对彩票问题的一种探索。完成后我想把他公开给我的亲戚,给他们一个惊喜吧。相比彩票我觉得这些技术用于股票可能实用性更大一些。由于我是一个中文开发者所以我的底稿会用中文书写,然后翻译成英文。readme中我会将主要的设计思路记录下来,我会用更加通俗的方式来解释我的想法,不要和我讨论学术。那些希望通过本项目赚钱的可以离开了,娱乐性质的朋友是可以考虑使用或者继续开发下去。我也将会把这个项目变成一个有趣的网站放在公网使用(如果能赚一些广告或者捐助那就更好了,希望能把设备和网络费用给维持下来)。
彩票的预测本来就是一个随机和运气以及博弈问题。我将方面讲述这个问题需要面对那些不可控的因素。
* 所有的数学公式都不能准确的预测随机问题
* 随机问题带来了运气这个因素,而运气每个人又不一样,为什么小概率时间会发生在你身上呢?
* 贩卖彩票的机构是否本身就作弊,避免了中奖的小概率事件

那么如何预测彩票呢?在说我的实现思路之前需要先了解下大爷们是怎么选彩票的,在论坛中瞎逛几年发现几种思路,偶尔吃瓜看看:

  • 瞎猜杀号法,各种奇怪的规则杀号。用上期的首尾和除以3的得数视为杀码,注意取整。这些规则需要对历史数据进行统计,可能有用,我们可以测试这些规则,哪些还有用,我们可以考虑使用。
  • 看图选号法,根据连续出现的数据组合,绘制成图形进行选号,这个和股票k线路有点类似,看不懂果断放弃。图像识别或许是一个方法,之后我学习更多牛逼的技术了,或许可以尝试一下。
  • 基于数学特性数据分布维度的选号规则,单双数,数字和,数字分布分类,连续性,离散性等。这种数据的维度特征作为筛选数字非常有用,因此我将保留这些维度使用。
  • 基于历史数据的数字出现热度来杀号或者选号。最近7次,出现了3次的数字要杀掉等等。这个其实也可以作为一种特征来看待,需要保留这种特征。
  • 选学选号法,生日啦,天气啦,八字,占卜拉,纯靠大自然力量来选号。

那么接下来是我基本思考思路:

  1. AI选择特征
  2. 江湖神奇杀号规则
  3. 八卦加分排序

具体步骤:

  • 步骤1:我们可以用数学维度来筛选彩票号码池,这里我

    • 选择的维度(特征就是维度)有
      • 数字和, 具体怎么分档次适合需要从数据中观察一下再决定。
      • 单数个数
      • 分布情况
      • 连续个数
      • 含有热门数字号码个数
      • 中位数
      • 特殊数字个数
      • 第几组
      • 将数字转换成八卦,再根据八卦转换成五行的属性,计算出本组数据的相克与相生的数值
    • 那我们怎么预测下一次会开出什么样的特征呢。这我们就要用万能的深度神经网络了。
    • 这里我选择时序神经网络LSTM, 步长我选择8,相当于8期
    • 训练数据为:
      • 输入是: 7个数字;上述的所有特征; 时序;
      • 输出的标签是下一次开奖的的特征:上述的所有特征
      • 相克与相生的数值代表了数据在玄学中的混沌值。(我为我自己的离谱感到震惊!)
    • 到这里为止大家会发现我预测的是特征,而不是具体的数字。如果特征预测错误了,那么这次预测已经失败了。特征越多失败率越高,因为粗错的概率越大。没办法!!
  • 步骤2:在选择好特征之后我们会发现一个问题,这些特征筛选出的号段依然很多,可能几万组。这个时候网上一些杀号手段可以用起来。具体规则如下:

    • 连续出现3次的数字杀掉
    • 特别数字一起出现3次的杀掉
  • 步骤3:依然有大量的号码。让我们祖先的周易上场吧。我们每个人都是有运气的,每个数字对每个人可能从运气上不同的,我们应该选择对我个人来说最幸运的一些数字。

    • 根据用户的姓名换算为三财五格中的总格,量化成数值,再换算成五行的属性。
    • 根据用户的生日换算为五行属性。
    • 将用户的五行属性和和数字组合(包含期数,代表时间)的五行属性进行计算。如果相生就加分,如果相克就减分。
    • 将开奖期数的五行属性和和数字组合(包含期数,代表时间)的五行属性进行计算。如果相生就加分,如果相克就减分。
    • 将历史数据和加减分一起用强化学习的算法进行训练,让模型帮助我选择最适合我的属性的数字组合。
    • 如果历史上这个彩票出现过,并且与你相克。这怎么办!说明你那天你没有中彩票的命。这有点解释不符合逻辑了对不对。在这个点上我思考了很久,我解释不了。。。。忽略吧。
  • 步骤4:以上步骤实际上就是3个算法取交集,将彩票的组合缩小到最小。如果还剩下的步骤就是,请把这些号段打印出来,物理摸吧。。。。

About

This project will involve knowledge in many fields. Deep neural networks; Markov chain; Reinforcement learning; The Book of Changes; the user's personal luck.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages