看到有个搞工业视觉大模型的程序员在那吹,说自己公司所使用的工业视觉大模型都是经过百万、千万甚至是上亿数据训练的,识别准确率超过99.3%,我看了笑了笑,别说99.3%了,就算是99.8%,在我们公司都是不合格的!
而他另一套纯技术思维的说法就更让我无语了,说什么:“准确率高的,大概率都是小模型!”
咱抛开使用场景,只看训练的数据集,不看准确率,这不是妥妥得耍流氓嘛!况且,工业视觉基本上都是非标视觉,恰恰是很看使用场景的东西,所以,为什么很多大的工业视觉项目都看不到通用工业视觉大模型的身影?是我们做不出来吗?是那套通用视觉大模型没用,或者准确率不高,好吧!
的确,现在工业视觉行业内有很多通用型产品,比如说检个小螺丝,贴个标签什么的,这都是简单的工业视觉场景,遇到复杂的检测场景,即使是上亿数据集的工业视觉大模型,它也得针对单个场景单独训练,该花多长时间就得花多长时间,本来应该训练多少数据集,它就应该训练多少数据集!
比如说,你是上亿级工业视觉大模型,我是从0开始训练的工业视觉大模型,甲方生产时需要检测一个叫作“螺母”的东西,那大概率是上亿级的工业视觉大模型省时间,前提是它训练过“螺母”这个东西,如果没有,那其实它和我这个从0开始训练的大模型其实是一样的!我需要训练几十万次,那它同样也得训练几十万次,没有什么捷径可走。
这时候,如果我训练后的准确率控制在99.8%以上,而这个号称用了上亿数据集训练的工业大模型的识别准确率最高只有99.3%,您认为客户会使用哪个?您跟他吹自己上亿数据集,他不需要又有什么用?
对于客户来说,抛开“螺母”这个东西,其他的训练对他都没用,在代码的世界里,我们管这个叫作“冗余”!
换个角度说,别说99.3%了,哪怕是99.9%,工业视觉项目能顺利通过验收都是很难的,因为客户要的,其实是100%!但是,大家都知道,只要是视觉,不管是工业视觉还是消费市场的视觉,没有谁能够保证检测100%的准确率。
我做过的几乎所有工业视觉项目,基本上合同上写的识别准确率就没有低于千分之一的即99.9%,最夸张的一次,客户直接要求识别准确率要在万分之一即99.99%,这个项目四年了,还没有通过验收!我想未来只要客户坚持这个数字,估计大概率也是验收不掉了!
所以,工业视觉模型数据集大小其实并不重要,客户看的,只是能给他节省多少事,客户的要求其实就是替代人工或者极少数的人工干预。
假设甲方是一个生产螺丝的工厂,引进了一台视觉设备,检测准确率这里假设是90%,要求很低,对于生产的螺丝,只要检测不合格,直接吹走或者推到瑕疵品区域即可,只要瑕疵品区域足够大,即使是识别准确率不高,那么产线在完全没有人工干预的情况下,跑个个把小时甚至是一天都没有问题。
但是,如果甲方是一个生产轮胎的工厂呢?同样是90%的话,意味着每生产10个轮胎就有一个轮胎检测不到,那视觉设备基本上就离不开人工了!
那假设如果我们的视觉设备能够把识别准确率提高到99.9%呢?对于生产螺丝的企业来说,其实影响不大,因为即使是90%,人工干预的情况也很少,但是,对于生产轮胎的企业来说,作用就大了,假设3分钟检测一个轮胎,那么原来90%的识别率,每30分钟就得人工干预一下,现在变成了2天!
所以,抛开使用场景光谈模型数据集大小那就是本末倒置!工业视觉的本其实就是准确率,而不是所谓的通用性!
结语
为什么现在很多通用型的工业视觉软件产品价格卷到了几乎没利润,很多价格都卷到了千元以内,原因也是在这,过分讲究模型的多样性,实际上看似训练的数据集很大,但是解决不了客户的实际问题,自然卖不动!不管工业视觉产品怎么吹上天,终究还是以解决客户问题为主,你解决不了客户的问题或者解决的不够彻底,自然不会被市场所接受!
包括我在内的很多程序员,其实都有一个通病,那就是很喜欢搞通用的东西,这个本身没错,通用,意味着低耦合,拿来即用,不用即抛,这在代码的世界里面其实是个好东西,但是,抛开业务只看代码,难怪你做不好!
热门跟贴