传统高精度机器视觉与深度学习机器视觉如何结合?

[复制链接]
查看78978 | 回复0 | 2024-9-7 10:09:37 | 显示全部楼层 |阅读模式
从一定角度来说,在某些方面比如目标检测,使用深度学习方式应该是全面压倒使用传统高精度的算法的。理由有以下几点:

1. 在某些确定情形下,或许传统算法可能表现得优于深度学习算法,但是其鲁棒性从原理角度来说是无法媲美深度学习算法的,因为特征是人为设定的,在面对“噪声”干扰时,除了进行人为修正设定特征这种办法外没有其他方法论可使用;反观深度学习算法,由于是端到端思想,特征的设置完全由网络去学习,一般而言其包含的特征数目要远大于人为设计的传统特征,那么从理论上来讲它的鲁棒性就更强;另外,即便出现异常数据的情况,从理论上来讲只需要做数据增广即可,难度上较之人为设计特征修正要简便的多。

2. 从使用的硬件消耗来说,由于深度学习模型存在共享参数等有利机制,并且还可以结合推理等手段来降低消耗,目前经典的模型其计算消耗已经很小了;而与之对应的,完成类似功能,达到相当水准的传统算法有一些则很难以加速优化。

3. 使用传统算法可解释性虽然很强,但是传统算法存在着算法本身理解难度较大(相对的),调参复杂,上手困难的特点,不利于初学者;深度学习模型基本上搞清楚输入,输出,在参数未经细致调节的情况下也可以获得一个马马虎虎的结果,但传统算法就算了。

总结一下:在简单、固定的情形里面,传统算法或许能在计算资源消耗上优于深度学习,但是算法的表现最多只能是媲美训练perfect的深度学习模型;但是在复杂且干扰甚多的情形下,传统算法综合来说无法媲美深度学习模型。

那么传统算法如何同深度学习结合了?我根据工作经验认为主要有以下几点:



    数据预处理, 深度学习算法的前期数据预处理阶段需要使用传统算法进行增强,比如对某些有“缺陷”的样本进行初步筛选,比如对有些你需要网络学习的特征进行增强处理等等。

    在某些深度学习模型中提供参考,比如在某些condition GAN 里面,使用传统算法提取出的某些特征也作为输入参量一并输入

    设计loss 函数,比如在图像风格转换、超分辨领域,使用SSIM等loss。


因此作为合格的图像算法工程师,对于传统算法和深度学习算法都应该有所了解。


您需要登录后才可以回帖 登录 | 注册哦

本版积分规则