解决matlab2019b吴恩达机器学习提交失败的问题

解决matlab2019b吴恩达机器学习提交失败的问题

matlab2019b

之前在网上看到2019对深度学习方向(神经网络)有相应的功能优化,又碰巧系统盘不够了就重装了matlab,想试一试新功能。结果发现在原先已经成功的coursera提交出现了问题。故尝试解决一下。

问题复现

使用submit函数提交作业的时候,报错如下:
解决matlab2019b吴恩达机器学习提交失败的问题
问题就在于parts函数未识别,看报错parts=parts(conf)觉得有些奇怪。由于报错的提示是递归的,所以看最下方的报错,打开相应文件。

ctrl+F搜索parts函数,找到后将函数名修改为part(别的也可以,改函数名的代价要小于改返回值名的代价)。之前2018b的时候不存在提交问题,我猜想是matlab2019b对变量和函数的命名上要求更加严格了——即不允许函数和变量名(返回值)相同。
注意,有两个地方需要修改,分别是函数定义处和函数调用处。

问题没完

再次提交submit,看起来好像在能跑,但发现实在本地跑的结果然后传给评判系统,报错如下:
解决matlab2019b吴恩达机器学习提交失败的问题
同样的函数名和变量重复问题,根据filename的提示找到文件后修改即可。如法炮制。

这样就完了?

其实差不多了,唯独需要注意下matlab不支持中文字符在函数名里,改第二个的时候我一开始改成了submission-Url(),问题仍在。经过试验改成了submission_Url()。 Problem solved。

大功告成

解决matlab2019b吴恩达机器学习提交失败的问题
求点赞,收藏~