排查思路总结(运行机器学习报错)

部署运行你感兴趣的模型镜像

我的环境:

 -   编译器:pycharm
 -   python版本: 3.8
 -   python环境管理:Anaconda创建的虚拟机

看到一个机器学习的示例代码,执行到本地却频繁报错,大部分原因就是环境冲突,本文将提供一些思路

  1. 你导入了别人的示例代码,代码中有一堆import,你的本地环境没有,所以你点击了旁白的灯泡,便捷下载
    在这里插入图片描述
    但运行后一片爆红

  2. 若提示找不到什么类,什么方法这种,必定是你点击小灯泡下载的包有问题。
    python提供了很多的库,这些库有指定的版本,且持续更新

不同版本的库支持不同版本的python环境。

一、 排错示例

1. 产生报错

import numpy as np # 导入Num Py库
import pandas as pd # 导入Pandas库
from keras.datasets import mnist #从Keras中导入MNIST数据集

# 读入训练集和测试集(手写数字灰度图像 6万:1万)
(X_train_image, y_train_lable), (X_test_image,y_test_lable) = mnist.load_data()

print("数据集张量形状:", X_train_image.shape) #用shape方法显示张量的形状
print("第一个数据样本 : \n", X_train_image[0]) # 注 意Python的索引是从0开始的

我运行后报错,提示找不到TensorFlow,首先得查看自己的环境中有无TensorFlow库,在python解释器中去查看

2. 确定报错原因

在这里插入图片描述
编译器没找到,再去Anaconda中找找
在这里插入图片描述
也没找到,当我在Anaconda添加新的库时,会自动同步在pycharm中

这里没有,说明我需要下载一个TensorFlow库

3. 处理报错

打开Anaconda的终端,下载TensorFlow
在这里插入图片描述

// 清华镜像下载
pip install tensorFlow==2.6.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

可以看到,这里我下载了2.6.0版本的tensorFlow,我是如何确定这个版本的呢?

4. 如何下载合适的库版本

百度搜,python版本、keras版本、tensorFlow版本对应关系,找到这么一个图,根据你的python版本下载对应的其他库版本。
发现已存在不合适的版本,删除重新下载指定版本 (根据这个思路,你可以排查一下你用到了哪些库,再去查他们之间的兼容版本)

例如我想要删除keras,重新下载

// 删除keras
pip uninstall keras

keras:这就是你的库名字
在这里插入图片描述

在这里插入图片描述

该卸载的卸载、该下载的下载,弄完点击红框刷新,就可以看到新下载的库和版本,这样我们就统一了起来各个库版本问题。

在这里插入图片描述

成功处理
在这里插入图片描述

5 总结

引用的包有问题,果断查询兼容的版本,该卸载的卸载、该下载的下载

您可能感兴趣的与本文相关的镜像

Python3.11

Python3.11

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

### SAM 报错解决方案 在处理 SAM(Smoothing and Mapping)相关项目的报错问题时,通常可以从以下几个方面入手分析并解决问题: #### 1. **LIO_SAM 运行中的常见错误** 当运行 `roslaunch lio_sam run.launch` 出现问题时,可以尝试以下方法排查: - 确认依赖项是否安装完全。如果某些 ROS 或其他库未正确安装,可能会导致程序无法正常运行[^1]。 - 检查传感器数据流是否正常输入到节点中。如果没有接收到激光雷达或惯性测量单元的数据,可能导致初始化失败。 #### 2. **文件路径相关问题** 有时会因为相对路径设置不当而导致资源加载失败。按照引用描述,建议将涉及的配置文件或数据集改为绝对路径指定方式来验证是否存在此情况[^3]。 #### 3. **网络请求类错误 (URLError)** 如果是远程服务调用引发的问题,则需注意检查本地环境与目标服务器之间的连通状态。例如,在自动化测试框架下使用的 Appium 工具可能出现连接异常提示 `[Errno10061]` ,这通常是由于代理设置冲突或是服务端口尚未开启引起[^4] 。尽管这里讨论的是移动应用界面交互场景下的例子,但对于任何基于 HTTP 协议通信的应用同样适用这些诊断思路。 #### 4. **评估指标计算过程中的特殊状况** 针对机器学习领域内的性能度量环节,比如分类任务里的 precision 和 recall 值测算过程中遇到了除零运算警告 (`UndefinedMetricWarning`) 的情形,这是因为在特定条件下分母部分出现了全零现象所致[^5]。对此可采取如下措施规避风险:调整评价标准加入平滑因子;或者预先筛选掉那些明显不匹配的目标实例后再做进一步统计操作。 ```python from sklearn.metrics import precision_score, recall_score y_true = [0, 1, 0, 1] y_pred = [0, 0, 0, 0] try: prec = precision_score(y_true, y_pred, zero_division=0) except Exception as e: print(f"Error occurred: {e}") recall = recall_score(y_true, y_pred, zero_division=0) print(prec, recall) ``` 上述代码片段展示了如何通过参数选项控制遇到极端案例时不抛出致命性的中断信号而是返回默认数值作为替代结果之一的方法。 --- ### 总结 综上所述,面对不同类型的 SAM 应用所产生的各类错误信息,应当依据具体表现形式逐一剖析根源所在,并运用相应的修复策略加以应对。无论是硬件接口适配还是软件逻辑优化层面都可能存在潜在隐患等待我们去挖掘排除。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值