project1 | cabbage

cabbage

菜鸟写给小白的教程

0%

project1

词2077分析
拼图 预测拼图完成时间

数据清洗

数据格式是2k分辨率图像的url,以及拼好所用的时间(64块,100块)

初步筛掉公司提供的有缺失值的数据

剩下1w张图像,时间对

特征提取(模型训练

模型主体

resnet34,效果不好,

用vit

损失函数

一开始选用mseloss

但是训练效果很差

发现是异常值有点多

mseloss均方误差(又称MSE、L2损失)

回归问题中最常见的损失函数。如果对所有样本点只给出一个预测值,那么这个值就是所有目标值的平均值。

优点:

  • 计算方便,逻辑清晰,衡量误差较准确。
  • MSE 曲线的特点是光滑连续、可导,便于使用梯度下降算法。梯度随着误差增大或减小,收敛效果好

缺点:

  • 对异常点会赋予较大的权重,如果异常点不属于考虑范围,是由于某种错误导致的,则此函数指导方向将出现偏差。模型会更加偏向于惩罚较大的点,赋予其更大的权重,忽略掉较小的点的作用,无法避免离群点可能导致的梯度爆炸问题。如果样本中存在离群点,MSE 会给离群点赋予更高的权重,但是却是以牺牲其他正常数据点的预测效果为代价,因此会导致降低模型的整体性能。

平均绝对值误差(又称MAE,L1损失)

优点:

  • 对异常值具有较好鲁棒性

缺点:

  • 梯度不变是个严重问题,MAE训练中梯度始终很大,且在0点连续但不可导,这意味着即使对于小的损失值,其梯度也是大的。这不利于函数的收敛和模型的学习,模型学习速度慢,同时也会导致使用梯度下降训练模型时,在结束时可能会遗漏全局最小值。

解决办法,可变lr与warmup

容易受离群点影响,也可能是过拟合了,加正则化

lr

https://zhuanlan.zhihu.com/p/524650878

可变学习率

https://blog.csdn.net/qq_37085158/article/details/122536201

pytorch中优化器optimizer.param_groups[0]是什么

https://blog.csdn.net/weixin_36670529/article/details/107531773

参考

https://zhuanlan.zhihu.com/p/378822530

https://mp.weixin.qq.com/s?__biz=MzI1MjQ2OTQ3Ng==&mid=2247582694&idx=1&sn=d8ec63b98581155f90963d4414892b37&chksm=e9e08a6dde97037bdec0781a4481959d94fe8bc961ea57573c22edd41afd1f2ce963e1a53cc8&scene=27

https://blog.csdn.net/weixin_45085051/article/details/127308481

image-20230329222008475