https://files.cnblogs.com/files/chinasoft/tf.js-demo-v2.rar?t=1656483198

<script src = "tf.min.js"> </script>
<script>
/* 根据身高推测体重 */ //把数据处理成符合模型要求的格式
function getData() {
//学习数据
const heights = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];
const weights = [3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23]; //验证数据
const testh = [100, 101, 102, 103, 104, 105, 106];
const testw = [201, 203, 205, 207, 208, 210, 212]; //归一化数据
const inputs = tf.tensor(heights);//.sub(150).div(50);
const labels = tf.tensor(weights);//.sub(40).div(60); const xs = tf.tensor(testh);//.;//sub(150).div(50);
const ys = tf.tensor(testw);//.sub(40).div(60); // //绘制图表
// tfvis.render.scatterplot(
// { name: '身高体重' },
// //x轴身高,y轴体重
// { values: heights.map((x, i) => ({ x, y: weights[i] })) },
// //设置x轴范围,设置y轴范围
// { xAxisDomain: [140, 200], yAxisDomain: [40, 110] }
// ); return { inputs, labels, xs, ys };
} async function run(){
const { inputs, labels, xs, ys } = getData(); //设置连续模型
const model = tf.sequential(); //设置全连接层
model.add(tf.layers.dense({
units: 1,
inputShape: [1]
})); // model.add(tf.layers.dense({
// units: 1
// })); //设置损失函数,优化函数学习速率为0.1
model.compile({
loss: tf.losses.meanSquaredError,
optimizer: tf.train.adam(0.1) }); await model.fit(inputs, labels, {
batchSize: 1,
epochs: 20,
//设置验证集
validationData: [xs, ys],
// callbacks: tfvis.show.fitCallbacks(
// { name: '训练过程' },
// ['loss', 'val_loss', 'acc', 'val_acc'],
// { callbacks: ['onEpochEnd'] }
// )
callbacks:function(){
console.log("1");
}
}); //对身高180的体重进行推测
// let res = model.predict(tf.tensor([180]).sub(150).div(50));
// console.log(res.mul(60).add(40).dataSync()[0]); let res = model.predict(tf.tensor([180]));
console.log(res.dataSync()[0]);
//保存模型
window.download = async () => {
await model.save('downloads://my-model');
}
} run(); </script>

  

tf拟合的更多相关文章

  1. tensorflow 莫烦教程

    1,感谢莫烦 2,第一个实例:用tf拟合线性函数 import tensorflow as tf import numpy as np # create data x_data = np.random ...

  2. TensorFlow学习---tf.nn.dropout防止过拟合

    一. Dropout原理简述: tf.nn.dropout是TensorFlow里面为了防止或减轻过拟合而使用的函数,它一般用在全连接层. Dropout就是在不同的训练过程中随机扔掉一部分神经元.也 ...

  3. TensorFlow之tf.nn.dropout():防止模型训练过程中的过拟合问题

    一:适用范围: tf.nn.dropout是TensorFlow里面为了防止或减轻过拟合而使用的函数,它一般用在全连接层 二:原理: dropout就是在不同的训练过程中随机扔掉一部分神经元.也就是让 ...

  4. [深度学习] tf.keras入门4-过拟合和欠拟合

    过拟合和欠拟合 简单来说过拟合就是模型训练集精度高,测试集训练精度低:欠拟合则是模型训练集和测试集训练精度都低. 官方文档地址为 https://tensorflow.google.cn/tutori ...

  5. TensorFlow中使用tf.keras.callbacks.EarlyStopping防止训练过拟合

    TensorFlow tf.keras.callbacks.EarlyStopping 当模型训练次数epoch设置到100甚至更大时,如果模型的效果没有进一步提升,那么训练可以提前停止,继续训练很可 ...

  6. 使用TenforFlow 搭建BP神经网络拟合二次函数

    使用简单BP神经网络拟合二次函数 当拥有两层神经元时候,拟合程度明显比一层好 并出现如下警告: C:\Program Files\Python36\lib\site-packages\matplotl ...

  7. TensorFlow拟合线性函数

    TensorFlow拟合线性函数 简单的TensorFlow图构造 以单个神经元为例 x_data数据为20个随机 [0, 1) 的32位浮点数按照 shape=[20] 组成的张量 y_data为 ...

  8. TensorFlow从1到2(八)过拟合和欠拟合的优化

    <从锅炉工到AI专家(6)>一文中,我们把神经网络模型降维,简单的在二维空间中介绍了过拟合和欠拟合的现象和解决方法.但是因为条件所限,在该文中我们只介绍了理论,并没有实际观察现象和应对. ...

  9. AI - TensorFlow - 过拟合(Overfitting)

    过拟合 过拟合(overfitting,过度学习,过度拟合): 过度准确地拟合了历史数据(精确的区分了所有的训练数据),而对新数据适应性较差,预测时会有很大误差. 过拟合是机器学习中常见的问题,解决方 ...

  10. tensorflow学习之(八)使用dropout解决overfitting(过拟合)问题

    #使用dropout解决overfitting(过拟合)问题 #如果有dropout,在feed_dict的参数中一定要加入dropout的值 import tensorflow as tf from ...

随机推荐

  1. ChatMoney让你变成HR高手!

    本文由 ChatMoney团队出品 在快节奏的现代职场中,招聘是每一个企业都绕不开的重要环节.然而,传统的招聘流程往往繁琐而低效,从海量简历的筛选,再到后续的评估与决策,每一个环节都耗费着HR人员大量 ...

  2. ArkUI-X跨平台技术落地-华为运动健康(一)

    现状与诉求 目前,华为运动健康App在Android 和 iOS均有独立的客户端工程,在原生页面部分,两个客户端独立开发,代码各自维护和演进,会带来各自独立的开发工作量,并且两个端之间的交互体验也无法 ...

  3. Centos设置Redis自启动(Systemd)

    前言 在生产环境中,我们在设置Redis服务自启动时有多种方式,这里采用Systemd管理方式进行设置Redis, Systemd管理起centos7版本中使用了systemd,systemd同时兼容 ...

  4. Golang基础笔记十之goroutine和channel

    本文首发于公众号:Hunter后端 原文链接:Golang基础笔记十之goroutine和channel 这一篇介绍 Golang 里的 goroutine 和 channel 通道. 以下是本篇笔记 ...

  5. AI领域又新增协议: AG-UI

    随着AI的快速发展正在重塑技术生态,协议的演进速度尤为迅猛.一个令人头疼的问题浮现了:不同的AI智能体和前端应用之间就像说着不同语言的人,无法顺畅交流.开发者们需要为每个智能体单独编写接口,维护成本高 ...

  6. 中大ACM个人赛 ABC题题解

    摸完签到题就跑了 A - Maximum Subrectangle 题意:有个C矩阵,C[i][j] = a[i]b[j], 问你在\(\displaystyle\sum_{i=x1}^{x2}\) ...

  7. opengl 学习 03

    opengl 学习 之 03 lesson 简介 使用MVP变换来观察生成的三角形 link http://www.opengl-tutorial.org/uncategorized/2017/06/ ...

  8. SciTech-EECS-Circuits-AGC(Auto Gain Control, 自动增益控制)电路 的几种方式对比: 响应时问、精度、动态范围、线性度、稳定度

    参考 https://www.elecfans.com/article/83/116/2010/20101201227060.html AGC 的几种方式 "误差放大器" 的 AG ...

  9. DVD+R和DVD-R有什么区别?如果选购的话有什么需要注意的?--九五小庞

    DVD-R和DVD + R的区别和比较 表面上看,DVD + R光盘看起来与DVD-R光盘没有区别.它们的直径均为120mm,厚度为1.2mm,包括两个0.6mm的聚碳酸酯基材.但是,DVD + R在 ...

  10. win11升级更新电脑一直蓝屏的问题

    很多雨林木风官网的用户进行更新升级win11专业版以后,出现电脑蓝屏,重启电脑也没有解决这个问题,那么如何解决呢?接下来,雨林木风小编带来详细的处理方法.让我们一起看看吧. 在 Windows 11  ...