动手学深度学习-加载数据集时报错(d2l.load_data)

发布于:2023-01-04 ⋅ 阅读:(609) ⋅ 点赞:(0)

一般来说存在两个问题,1.权限上 2.源码上

1.权限:permission上的报错

直接讲,权限出现问题显示如下

 

或者你在下载一些东西时会遇到permission上的报错

直接上链接(54条消息) PermissionError: [WinError 5] 拒绝访问。: ‘../data‘_WZWWZW0430的博客-CSDN博客

很多人直接是对Windows上的各种操作,如果你看过其它博客试过就知道没有用

我认为这样做有用的原因是在于用什么权限操作,管理员的权限当然高了

我也看见上述引用博客的评论下面有人不知道怎么操作

下面手把手演示

Windows熟系的页面

 既然你会报错,肯定知道怎么用jupyter notebook对吧,不知道就自己查一查

下面最关键的来了,不是直接启动jupyter notebook而是    右键jupyter notebook,不要点错了

 熟系的cmd就会出来,

再试着跑一下代码,应该不会出现permission报错了

当然有些人 是用cmd 命令行输入jupyter notebook启动的,我不知道能不能实现,你可以尝试用管理员启动cmd试一下(我的好像不太行,但是我不确定你们可不可以)

2.源码上(举个例子,并不是代表所有,'gbk' codec can't decode byte 0xaf )

看完你就知道该怎么弄了

什么叫源码上,就是这个代码在你电脑上跑就是有问题

我在学李沐老师的动手学深度学习时,他会先手动实现一些常用的基础源码,然后后面的课程就是直接调包了,常常遇到前面手动敲得代码能跑但是掉包的跑不了

其实就是源码有一点小问题,比如

'gbk' codec can't decode byte 0xaf in position 33: illegal multibyte sequence

是不是又似曾相识,别担心,其实你已经上网查过,大概如下

open(data_path,"r",encoding='UTF-8')在open函数里面加上编码格式encoding='UTF-8'

这样做,没有错!!!

但是你不知道在哪里改,总不能每次都去实现一次基本的源码,然后复制粘贴上去,

咱们来一个一劳永逸的操作!!!!

我们都是去调用d2l里面的方法对吧,所以我们应该找到d2l在哪里,就算你不知道也没关系

你知道自己的anaconda装在哪里的吧,我的是装在 anacondaAAA文件夹里面的,

估计大多数人是装在anaconda文件夹,这个是没关系的

如你不想看后面: 直接找到D:\anacondaAAA\Lib\site-packages\d2l\torch.py

但是如果你想学习这种方法,或许你可以看一下下面

直接搜索,上图(你不知道在哪里就试着查找一下)

我搜索出来了两个文件,是下面这个 

废话少说,点进去,我用的是pytorch,听李沐老师课的应该都是torch

如果你用的是其它的理论上应该是一样的

 点进去第一眼非常陌生,

不慌,往下面划一下,

只要你听过课就知道这些方法是李沐老师书上的,熟悉吧,现在知道怎么改了吧

这篇文章的价值,不是在于怎么解决这两个问题,

或许很多时候你知道你知道怎么改代码,但是不知道该怎么找到你以前调的包在哪里!!!

这样很无奈

我相信,

你在听动手学深度学习课程的时候,常常很多东西报错,

代码的问题都是解决了,但是一点d2l.的某些方法就报错,

那就找到它的源码!!!

发挥你的想象力!!1

希望对你会有帮助!!!

本文含有隐藏内容,请 开通VIP 后查看