当前位置:网站首页>深度学习 段错误(Segment Core/ Exit code 139)情况记录
深度学习 段错误(Segment Core/ Exit code 139)情况记录
2022-07-25 09:23:00 【Tobi_Obito】
前言
使用python搞深度学习经常会遇到抽风的段错误,但一直未找到原因在哪,都是玄学发生,玄学修复,现在终于发现了一些“线索”,发布此文用于记录积累导致段错误的原因及解决方法。
线索发现
>>> import tensorflow as tf
>>> tf.ones([3,4]).numpy() # 测试tensorflow是否正确安装,成功执行并得到正确结果
>>> exit() # 距离上一行之间无任何执行代码,按理说应该正常退出,但Segment Core(即段错误exit code 139)注:个人的环境中几个主要的库是tensorflow-gpu 2.3.0 numpy scikit-learn
分析
深度学习往往涉及相关库(numpy、scikit-learn、tensorflow等)较多,并且每个库又有各种版本,我在很早前就了解到这些库有时看上去是顺利安装了,但实际上仍存在一定的“兼容”问题,比如曾遇到sklearn的import必须在tensorflow之前,否则就会报错退出-_-||。
通过短短3行代码分析,想到这样一点:虽然没有显式import numpy,但是tensorflow一定依赖numpy吧?(毕竟.numpy()都出来了= =)。那么是不是跟上面提到的情况类似?难道也是因为库之间的依赖兼容性的问题?于是我做了如下尝试:
>>> import numpy as np
>>> import tensorflow as tf
>>> tf.ones([3,4]).numpy()
>>> exit() # exit with code 0,成功结束了!果不其然,在显式import numpy之后段错误就消失了。似乎是这个原因,然后再联想到之前在项目中遇到的创建keras自带的EarlyStop callback时报段错误的问题:首先,我之前是顺利使用过Early Stop callback的;第二,import时并未报错。那么就可能是在创建callback时“隐式涉及”到相关库,从而因为上述原因出现段错误。
思考
这一点确实很可能是段错误的很大一部分原因,因为正是由于这种复杂的“隐式”的库间关联,才导致发生段错误的“玄学”性。
边栏推荐
- 本地存储待办事项(在待办事项上进行改进)
- @1-1 CCF 2021-04-1 gray histogram
- matlab如何导入大量数据
- Some usages of Matlab's find() function (quickly find qualified values)
- [code source] add brackets to the daily question
- First acquaintance with opencv4.x --- ROI interception
- [code source] daily question simple fields and
- CUDA 解释 - 深度学习为何使用 GPU
- Kotlin协程:协程的基础与使用
- kotlin基础知识点
猜你喜欢

matlab绘图|坐标轴axis的一些常用设置

CUDA 解释 - 深度学习为何使用 GPU

初识Opencv4.X----为图像添加高斯噪声

【Android studio】批量数据导入到android 本地数据库

【数据挖掘】第四章 分类任务(决策树)

OC -- category extension agreement and delegation

*7-1 CCF 2015-09-1 sequence segmentation

¥ 1-3 SWUST OJ 942: reverse sequence table

Mixed supervision for surface-defect detection: from weakly to fully supervised learning:表面缺陷检测的混合监督

自定义Dialog 实现 仿网易云音乐的隐私条款声明弹框
随机推荐
[data mining] Chapter 2 understanding data
初识Opencv4.X----图像直方图绘制
chmod和chown对挂载的分区的文件失效
初识Opencv4.X----在图像上绘制形状
kotlin基础知识点
初识Opencv4.X----为图像添加高斯噪声
Chmod and chown invalidate the files of the mounted partition
Save pdf2image PDF file as JPG nodejs implementation
单目深度估计自监督模型Featdepth解读(上)——论文理解和核心源码分析
[code source] I have a big head for a problem every day
Raspberry sect door ban system based on face recognition
Kotlin collaboration: foundation and use of collaboration
CDA LEVELⅠ2021新版模拟题一(附答案)
初识Opencv4.X----图像直方图匹配
【Android studio】批量数据导入到android 本地数据库
[deep learning] self encoder
Segmentation-based deep-learning approach for surface-defectdetection(基于分割的表面缺陷深度学习检测方法)
微信小程序实现轮播图(自动切换&手动切换)
缺陷检测网络--混合监督(kolektor缺陷数据集复现)
[deep learning] convolutional neural network