对于一个刚接触机器学习的小白来说,这个论文和代码中要学习的东西太多了。最近就是把代码中的内容查了查,然后想着把遥感图像带进去试试看,结果出现了很多错误,在这里记录一下。
1、因为原代码中是自动生成的圆形数据集,然后训练数据的两维特征就是它的横坐标和纵坐标。对于图像来说的话,我用每个点的像素值作为其第一个特征,将灰度直方图作为第二个特征(初步打算用这个,后期可能会换)。
2、出现的第一个错误:
Expected object of scalar type Long but got scalar type Float for argument #2 ‘target’
出错原因:label数据的类型不对 https://blog.csdn.net/shangxiaqiusuo1/article/details/95749684
解决办法:https://blog.csdn.net/coding_zhang/article/details/89643594
3、改完类型以后,出现了第二个错误:
RuntimeError: Assertion `cur_target >= 0 && cur_target < n_classes' failed.
出错原因:断言函数报错,要求目标类大于等于0并且小于等于输入的类别,一般来说在我们网络中输出的种类数和你label设置的种类数量不同的时候就会出现这个错误
解决办法:https://blog.csdn.net/weixin_35479108/article/details/84951318
但是这个还没具体解决,因为感觉自己代码内部还是没有真正看懂,所以还不敢瞎改。准备去具体看看xgBoost和交叉熵这一块的知识代码。