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

关于网站开发网页上传和网站发布深圳服务网站入口

关于网站开发网页上传和网站发布,深圳服务网站入口,企业官网有哪些,为什么网站用静态页面🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 下面这段代码中 predictions 数组在赋值后全为 0 的根本原因是数据类型不匹配导致的隐式类型转换,保存概率值时会被截断为 0 或 1。具体分析如下: import numpy as npsamples …

🍉 CSDN 叶庭云https://yetingyun.blog.csdn.net/


下面这段代码中 predictions 数组在赋值后全为 0 的根本原因是数据类型不匹配导致的隐式类型转换,保存概率值时会被截断为 0 或 1。具体分析如下:

import numpy as npsamples = 100
y = np.random.randint(0, 2, size=samples)
y_pred = np.random.randint(0, 2, size=samples)
y_pred_proba = np.random.rand(samples).astype(np.float32)
print(y, len(y))
print(y_pred, len(y_pred))
print(y_pred_proba, len(y_pred_proba))print("=" * 100)
predictions = np.zeros_like(y_pred)
print(predictions, len(predictions))
predictions[:] = y_pred_proba
print(predictions, len(predictions))

在这里插入图片描述


1. 错误原因分析

  1. 初始化数据类型错误

    • y_prednp.random.randint(0, 2) 生成的,默认数据类型为 int

    • np.zeros_like(y_pred) 会继承 y_predint 类型,因此 predictions 是整型数组。

  2. 浮点数到整型的强制转换

    • y_pred_probanp.random.rand 生成的浮点数组(float32)。

    • 当执行 predictions[:] = y_pred_proba 时,右侧的浮点数会被强制转换为左侧的整型,导致小数部分被截断。例如,0.95 -> 00.19 -> 0

    • 最终,所有 y_pred_proba 中的浮点值都会变成 0,导致 predictions 全为 0。


2. 修正方法

核心思路:确保 predictions 的数据类型与 y_pred_proba 兼容(即浮点类型)。

2.1 高效且精确的修正代码
# 修正后的关键行:显式指定浮点类型
predictions = np.zeros_like(y_pred, dtype=np.float32)  # 强制为浮点类型
predictions[:] = y_pred_proba
2.2 修正原理
  1. 显式指定数据类型

    • np.zeros_like(y_pred, dtype=np.float32) 会创建一个与 y_pred 形状相同但数据类型为 float32 的数组。

    • 此时 predictions 可以正确存储浮点数值,避免类型转换。

  2. 赋值操作保留精度

    • 右侧的 y_pred_probafloat32)可以直接赋值给左侧的浮点数组,无精度损失。

3. 完整修正代码

import numpy as npsamples = 100
y = np.random.randint(0, 2, size=samples)
y_pred = np.random.randint(0, 2, size=samples)
y_pred_proba = np.random.rand(samples).astype(np.float32)
print(y, len(y))
print(y_pred, len(y_pred))
print(y_pred_proba, len(y_pred_proba))print("=" * 100)
predictions = np.zeros_like(y_pred)
print(predictions, len(predictions))
predictions[:] = y_pred_proba
print(predictions, len(predictions))
predictions = np.zeros_like(y_pred, dtype=np.float32)
predictions[:] = y_pred_proba
print(predictions, len(predictions))

4. 其他可行方案

  1. 直接使用浮点初始化
predictions = np.zeros(samples, dtype=np.float32)
  1. 复用 y_pred_proba 的数据类型
predictions = np.zeros_like(y_pred_proba)

5. 总结

  • 根本原因:整型数组无法存储浮点数值,这会引起隐式类型转换。

  • 修正关键:确保目标数组的数据类型与源数据相匹配(浮点数类型:np.float32、np.float64)。


http://www.dtcms.com/wzjs/807906.html

相关文章:

  • App网站建设 高品质网站建设网站开发国外研究状况
  • 如何在网站后台添加商品渠道网官网
  • 天津网站设计网站制作wordpress底部加上自己的版权信息
  • 商业空间设计案例ppt开鲁网站seo免费版
  • 怎么建设幸运28网站wordpress dux5.2
  • 网站建设程序有哪些方面优速网站建设优化seo
  • 怎么做校园表白网站如何做网站的埋点
  • cms 网站后台哪个网站有做阿里巴巴流量
  • 移动端网站如何做导出功能吗软件开发需要什么专业
  • 十大免费cms建站系统介绍县门户网站建设方案
  • 门窗专业设计网站网站后台维护教程
  • 网站排名下降原因做暧嗳xo小视频免费网站
  • 企业网站优化的三层含义阿里巴巴国际站可以做网站吗
  • dede新手做网站多久如何创办一个公众号
  • 国美网站建设的特点端午节网站建设
  • 三层架构做网站还是系统wordpress自定义字段筛选
  • 买了个区域名怎么做网站wordpress 小说 主题
  • 只使用html做简单网站镇江百度网站建设
  • 建设网站的价格分析wordpress 写作主题
  • 搭建网站要多少钱广州微信网站建设费用
  • mysql的网站开发公司部门职责及配置
  • 公司网站手机版设计h5美食制作网站模板
  • 自己做的网站百度收录夏津网站建设费用
  • dz网站首页html代码在哪网站建设的任务规划
  • 网站建设需要软件php网站开发实例教程代码百度云
  • 网站建设安装部署必须买吗专业做运动服装的网站
  • 我做网站编辑写文章很慢怎么办西安烽盈网站建设
  • 医院网站设计模板乡村建设网站
  • 这样可以做网站中信建设有限责任公司中标项目
  • 甘肃省建设工程安质局网站7c框架 网站建设