【吴恩达深度学习课后作业】编程作业遇到的问题及解决办法(课程1)第二周

参考编程作业的学习地址:【吴恩达课后编程作业】Course 1 - 神经网络和深度学习 - 第二周作业 - 具有神经网络思维的Logistic回归
原文链接:https://blog.csdn.net/u013733326/article/details/79639509

lr_utils.pydatasets是原始文件,我们需要将其相关数据从中提取出来。区别于利用jupyter,我使用PyCharm2020.1.3作为操作平台。

1. 保存的文件目录中不得含有中文,会报错。且两个原始文件需保存在同一个workspace中。

2. 除却导入lr_utils.py、h5py和numpy外,还需导入matplotlib.pyplot作为Python中绘制图表的库,否则在调试代码的过程中无法显示相应的运行图片。

3. train_set_y和train_set_x_orig的含义:

# train_set_y对应图片的二进制保存形式,是1*n的数组;.shape[0]表示1,.shape[1]表示n
# train_set_x_orig.shape[0]代表图片的维数(数量);train_set_x_orig.shape[1]代表图片的高度;train_set_x_orig.shape[2]代表图片的宽度

但是通常情况下,img.shape[0]表示图片的垂直尺寸(高度);img.shape[1]表示图片的水平尺寸(宽度);img.shape[2]表示图片的通道数。

4. 已导入matplotlib库,但是plt.imshow(train_set_x_orig[index])不显示图像。在其下方添加plt.show()函数,将plt.imshow()处理后的函数显示出来。

5. np.squeeze及utf-8的含义:

使用np.squeeze的目的是压缩维度,【未压缩】train_set_y[:,index]的值为[1] , 【压缩后】np.squeeze(train_set_y[:,index])的值为1
# # print("【使用np.squeeze:" + str(np.squeeze(train_set_y[:,index])) + ",不使用np.squeeze: " + str(train_set_y[:,index]) + "】")
# # 只有压缩后的值才能进行解码操作
# print("y=" + str(train_set_y[:,index]) + ", it's a " + classes[np.squeeze(train_set_y[:,index])].decode("utf-8") + "' picture")

# utf-8编码是多字符集编码,支持多国语言,可以实现在同一页面上同时显示多国语言。在UTF-8中,英文编码是8位(1字节),中文编码是24位(3字节)。

6. 编译时报错“IndentationError:unexpected indent”。代码的缩进有问题。

7. 编译时报错“SyntaxError: 'return' outside function”。return关键字只能在def自定义函数中使用,没有自定义函数不能出现return这个关键字,可检查代码。

8. Pycharm误删代码。在菜单栏的“VCS”中选择第一项Local history,进一步选择show history,即可看到本地保存的不同版本的代码。

 选择自己需要的版本,将删除的代码通过箭头选取插入到现存的代码中,保存关闭。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

五十赫兹小透明

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值