模型训练部署过程中的报错处理

文章目录

      • 一、Allocation of X exceeds 10% of system memory 解决方式
      • 二、wget 下载文件报错:connection reset by peer
      • 三、报错:ERROR (theano.sandbox.cuda): Failed to compile cuda_ndarray.cu: libcublas.so.8.0: cannot open shared object file: No such file or directory
      • 四、报错:Attempting to fetch value instead of handling error Failed precondition: could not dlopen DSO: libcupti.so.10.0; dlerror: libcupti.so.10.0: cannot open shared object file: No such file or directory
      • 五、报错:tensorflow.python.framework.errors_impl.InvalidArgumentError: Saw a non-null label (index >= num_classes - 1) following a null label, batch: 14 num_classes: 4563 labels: 2819,2524,3491,3526,2672 [[{{node CTCLoss}}]] [[{{node gradients/CTCLoss_grad/mul}}]]
      • 六、报错:tensorflow.python.framework.errors_impl.UnknownError: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above.

一、Allocation of X exceeds 10% of system memory 解决方式

  1. 杀死所有正在运行的进程,以确保GPU具有足够的内存。使用命令“nvidia-smi”查看正在运行的进程,并使用命令“kill -9 id”来终止它。
  2. 确保您的网络不是很大,检查是否有超大的完全连接层。
  3. 检查是否使用了float64会使内存翻倍。
  4. 检查是否使用了adam / RMSprop优化算法。这些优化算法将记录历史梯度,并将使内存使用量翻倍。

二、wget 下载文件报错:connection reset by peer

关闭连接
Connection closed by peer 的一般理解是连接被目标机器(或其他访问路线)故意关闭
如果下载功能是完好的,可能是因为服务设置了下载量或者下载者的数量限制
解决办法:伪装主浏览器的代理用户

wget --user-agent "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Ubuntu Chromium/25.0.1364.160 Chrome/25.0.1364.160 Safari/537.22"

文件损坏
每次下载都是到同样的大小发生这种中断,可能是因为文件开始部分是损坏的,在下载的时候需要等待几秒钟
解决办法:设置合理的随机等待时间

wget  --wait=15 --random-wait 

三、报错:ERROR (theano.sandbox.cuda): Failed to compile cuda_ndarray.cu: libcublas.so.8.0: cannot open shared object file: No such file or directory

网上查到的解决方案都是确认环境变量:

LD_LIBRARY_PATH: /usr/local/cuda/lib64/

可能是由于ml机器上cudnn的安装目录嵌套了软连接,设置环境变量并没有解决问题,这时候需要ldconfig,执行:

sudo ldconfig /user/local/cuda-8.0/lib64

四、报错:Attempting to fetch value instead of handling error Failed precondition: could not dlopen DSO: libcupti.so.10.0; dlerror: libcupti.so.10.0: cannot open shared object file: No such file or directory

执行:export LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/extras/CUPTI/lib64"
添加环境变量

五、报错:tensorflow.python.framework.errors_impl.InvalidArgumentError: Saw a non-null label (index >= num_classes - 1) following a null label, batch: 14 num_classes: 4563 labels: 2819,2524,3491,3526,2672 [[{{node CTCLoss}}]] [[{{node gradients/CTCLoss_grad/mul}}]]

问题原因:theano后端的情况下索引从1开始,tensorflow为后端的情况下索引从0开始
问题解决:将字典的最后一个字的索引改为0

六、报错:tensorflow.python.framework.errors_impl.UnknownError: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above.

百度的结果都是说cuda+cuDNN+TensorFlow的版本不匹配,当环境确认没有问题或者没有改动的情况下,
可能是因为指定显存使用的时候不能有小数点
bad casa:config.gpu_options.per_process_gpu_memory_fraction = 0.95
正确:config.gpu_options.per_process_gpu_memory_fraction = 0.9

你可能感兴趣的:(ASR,深度语音)