当前位置: 首页 > news >正文

机器学习01

 

 

 dataset.py

from matplotlib import pyplot as plt
import dataset# 权重参数 (可调整)
w = 0.6# 学习率 防止模型图形变化幅度过大,模型(直线)在二维坐标系中上下摆动过大,导致无法实现与实际数据模型拟合 (可调整)
n = 0.5# 获取数据20个样本, xs 和 ys 是一个数组
xs, ys = dataset.get_beans(20)# 训练20个样本拓展2000个样本
for i in range(100):for i in range(20):# 获取一个样本x = xs[i]y = ys[i]# 毒性预测模型y_pre = w * x# 误差 = 实际值 - 预测值e = y - y_pre# 根据误差和学习调整权重参数 (Rosenblatt 感知器算法) 核心功能:就是通过调整w 让这条模型直线尽可能落在坐标系上的点w = w + (n * e * x)# 使用训练完后的w组成模型(函数)进行预测
y_pre = w * xs# 绘图
plt.scatter(xs, ys, label="Data")
plt.plot(xs, y_pre, color='red', label=f"Prediction (w={w})")
plt.title("Size-Toxicity Prediction")
plt.xlabel("Bean Size")
plt.ylabel("Toxicity")
plt.legend()
plt.show()
import numpy as npdef get_beans(n=100):# 生成 [0.0, 1.0) 区间的随机数,加上极小值避免为 0xs = np.random.rand(n)xs = np.clip(xs, 1e-10, None)  # 确保所有值 > 0# 构造近似线性关系 y ≈ 0.8 * x + 0.1,并加一点噪声noise = np.random.uniform(-0.05, 0.05, size=n)ys = 0.8 * xs + 0.1 + noiseys = np.clip(ys, 1e-10, 1.0)  # 确保所有值在 (0, 1] 范围内return xs, ys

 

http://www.lqws.cn/news/522901.html

相关文章:

  • 鸿蒙 GridRow 与 GridCol 组件解析:响应式网格布局指南
  • 局域网环境下浏览器安全限制的实用方法
  • SpringBoot(九)--- HttpClient、Spring Cache、Spring Task、WebSocket
  • RegionServer热点问题解决方案
  • 企业级应用中的编程风格深度剖析与实践指南
  • ROI切割技术详解:从基础到实践
  • Vue计算属性与监视属性
  • 物流涂层科技赋能仓储:创冷科技引领高温环境下的仓储物流安全升级
  • 【GStreamer】减小延时的参数设置、从RTP中获取时间戳
  • npm(或pnpm)时报:证书过期 certificate has expired问题
  • 【网站内容安全检测】之3:获取所有外部域名访问后图像
  • VBA技术资料MF329:获得屏幕分辨率
  • python学习笔记(深度学习)
  • 二维前缀和与差分深度解析
  • Redis:持久化
  • dockerfile命令及构建
  • (C++)vector数组相关基础用法(C++教程)(STL库基础教程)
  • 多线程知识点
  • ffmpeg获取组播中指定视频流、音频流(通过pid、program)首发
  • 盖雅工场 2025 香港 SAP NOW 大会深度解析:AI 重构亚太劳动力管理数字化生态
  • Nginx服务部署与配置
  • DexGraspVLA:面向通用灵巧抓取的分层VLA-2025.5.22-北京大学
  • HTML表格元素
  • Spring 用的是什么动态代理?它是怎么配置的?
  • fluentd + elasticsearch + grafana 不能显示问题
  • 16.7 Prometheus+Grafana实战:容器化监控与日志聚合一站式解决方案
  • Linux远程机器无法连接-------解决方案
  • 开源代码修复新标杆——月之暗面最新开源编程模型Kimi-Dev-72B本地部署教程,自博弈修复 Bug
  • AI知识库搭建需要的开源技术方案
  • C#.Net筑基-优雅LINQ的查询艺术