博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
入门tensorflow.js,写一个双色求预测程序!梦想要有的,万一中了呢!
阅读量:7232 次
发布时间:2019-06-29

本文共 3108 字,大约阅读时间需要 10 分钟。

小菜鸟前端码农一枚

准备数据

export const data = [  {    data: 2018009,    value: [[5, 10, 17, 23, 26, 32], [7]]  },  {    data: 2018010,    value: [[1, 8, 17, 20, 21, 22], [3]]  },  {    data: 2018011,    value: [[3, 10, 21, 23, 27, 33], [11]]  },  {    data: 2018012,    value: [[11, 12, 13, 19, 26, 28], [12]]  }];复制代码

核心代码

import { Component, OnInit } from "@angular/core";import { data } from "../../data/shuangseqiu";import * as tf from "@tensorflow/tfjs";@Component({  selector: "shuangseqiu",  templateUrl: "./shuangseqiu.component.html",  styleUrls: ["./shuangseqiu.component.scss"]})export class ShuangseqiuComponent implements OnInit {  items: any[] = data;  redResults: number[] = [0, 0, 0, 0, 0, 0];  blowResults: number[] = [0];  constructor() {}  ngOnInit() {    this.handler();  }  handler() {    // 创建模型    let model = tf.sequential();    model.add(tf.layers.dense({ units: 7, inputShape: [7] }));    model.compile({ loss: "meanSquaredError", optimizer: "SGD" });    // 格式化数据    let r = this.formatData();    // 输入数据    let x = tf.tensor(r.input);    // 输出数据    let y = tf.tensor(r.output);    model.compile({ loss: "meanSquaredError", optimizer: "sgd" });    // 训练模型    model.fit(x, y);    let u = tf.tensor(r.use);    // 预测    (
model.predict(u)).data().then((res: any) => { res.map((r, index) => { if (index < 6) { let re = Math.abs(parseInt(r)); // 红球 数据二次检测 if (re === 0) { re = 1; } if (re > 35) { re = 35; } this.redResults[index] = re; } else { // 蓝球 数据二次检测 let re = Math.abs(parseInt(r)); if (re === 0) { re = 1; } if (re > 16) { re = 16; } this.blowResults[0] = re; } }); // 计算结果排序 this.redResults.sort((a, b): any => { return a > b; }); }); } formatData() { let handedXs = []; let handedYs = []; let use = []; this.items.map((res, index) => { if (index !== 0) { let m = [...res.value[0], ...res.value[1]]; handedYs.push(m); } else { let m = [...res.value[0], ...res.value[1]]; } if (index !== this.items.length - 1) { let m = [...res.value[0], ...res.value[1]]; handedXs.push(m); } else { let m = [...res.value[0], ...res.value[1]]; use.push(m); } }); return { input: handedXs, output: handedYs, use: use }; }}复制代码

建html用于展示数据

双色球预测
添加
期号 红球1 红球2 红球3 红球4 红球5 红球6 篮球
{ {item.data}} { {it}} { {it}}
预测下期结果
重新计算
{
{item}}
{
{item}}
复制代码

转载地址:http://dgpfm.baihongyu.com/

你可能感兴趣的文章
《.NET最佳实践》与Ext JS/Touch的团队开发
查看>>
虚拟磁盘工具vmkfstools的使用
查看>>
职场思想分享005 | 别让背后抱怨说别人坏话成为聊天习惯
查看>>
oracle11gR2 DataGuard switchover切换的两个错误状态解决
查看>>
不登陆数据库执行mysql命令小结
查看>>
SQL Server 2014 许可证(一)版本区别
查看>>
话里话外:成功CEO的用人之道——按需激励
查看>>
使用Visual Studio迁移远程网站到Micorosft Azure
查看>>
Dr.Elephant mysql connection error
查看>>
Tomcat网络输出数据流图
查看>>
Cloudera CDH 离线安装与使用
查看>>
安装 SQL Server 客户端驱动程序
查看>>
<北京青年>--思考
查看>>
Linux Bash Shell高级重定向操作--深入了解标准错误输出和标准输出
查看>>
HP LaserJet Pro P1106网络打印机64位驱动安装
查看>>
JDK和JAXB的对应
查看>>
Numpy快速入门
查看>>
Nginx查看 并发连接数
查看>>
Hyper-V虚拟机快照占用磁盘空间过多,导致虚拟机不能启动怎么办
查看>>
LAMP下http跳转到 https
查看>>