描述
电子发烧友网报道(文/李弯弯)近些年AI模型的应用场景飞速扩展,包括自动驾驶、智慧城市、教育、医疗、金融等等,行业的多样性和应用场景的分散,使得AI模型爆炸式增长。
在日前某论坛上,商汤科技联合创始人兼大装置首席科学家林大华谈到,商汤科技每年要生产几万个AI模型,然而模型丰富,算子的长尾效应也很明显,10% 经典算子虽然占据90% AI芯片算力,而90%长尾算子却占据大量计算时间。
多元化的应用催生了多样的算法框架,算法支持应用,而算法框架是将算法用于解决实际问题,助力AI芯片算力价值体现,充当AI芯片与应用的桥梁。
比如说算法就是诸如LR、GBDT、DNN、DeepFM这样的实际解决某个数学问题的公式实现。算法框架可以让算法执行更高效,比如最早玩深度学习的人都用Theano,基于Theano去开发算法很困难,后来有了PyTorch和TensorFlow,让基于深度学习的算法开发更方便。
目前算法框架已经非常丰富,包括PyTorch、TensorFlow,还有商汤科技开源的Sense Parrots,华为开源的昇思MindSpore,百度飞桨PaddlePaddle等等。
算法工程师其实是基于算法框架开发AI算法的,也就是说深度学习框架衔接起了硬件芯片算力和上面AI算法应用,然而AI训练框架逐渐丰富,但未形成统一的芯片接口,这使得AI训练芯片对框架逐一适配的成本高昂,这也阻碍了AI芯片在市场应用上的快速迭代。
为此,商汤科技希望基于已经开源开放的算法体系,构建统一的接口,把大家协同在一起,在软件层面,在算法的结构分解出一些标准算子,表明哪些算子在哪些应用场景中最为重要,这样可以让大家能够把有限的适配资源,投放到更有用的地方。
商汤给出的软件解决方案包括了算法分级体系和标准算子接口体系。据林大华介绍,算法分级体系首先是从影响力、性能、部署特性三个维度,即算法模型在学术界和工业界的影响力,算法模型的精度和速度,以及算法模型的部署友好性,将AI算法进行分级,这样可以给出方向性的应用参考。
接着是卷积输入配置频率统计,每个算法模型在实际训练中存在不同的卷积输入参数配置,不同参数配置的卷积算子使用频率存在较大的差异。
再得出高优Spec优化清单,从算法模型优先级评估+模型卷积输入配置频率,得到模型重要性和卷积输入配置频率加权评分,再得到高优Spec优化清单,芯片厂商可参考优化的清单进行针对性优化。
总之,基于算法分级体系的算子优化方法可以助力挖掘高优Spec,确认常用卷积输入配置优化优先级,提高芯片厂商适配能效。
长尾算子在实际应用中占比非常高,但却不在标准算法库里面,因此需要建立标准算子接口来提升芯片和框架的适配。
标准算子接口体系,包括统一算子接口及函数签名和一致性测试套件。主要特点是,不依赖具体的框架和芯片,逻辑简单、易阅读、易扩展,与标准接口定义保持一致,具有可移植性和强适用性,提供一致性的错误处理机制,支持主流开发框架和应用模型。
传统芯片和框架适配流程,存在这样的问题:1、厂商合作前沟通成本高;2、适配工作量难度高,风险难以控制;3、适配案例和经验难以复用到其它芯片和框架适配场景中。而接入标准算子接口体系的芯片和框架适配流程,有几个优点:1、厂商合作前没有额外沟通成本;2、工作量小、难度低,风险可控;3、一次接入即可完成对主流芯片、框架适配场景的支持。
整体而言,近些年AI产业在芯片算力、算法、框架,以及应用方面都有很大的进步,然而如果AI产业要长期健康的发展,还需要上下游机构、厂商一起,携手合作构建出一个繁荣的生态,这中间的算法框架在连接起底层芯片和上层业务方面,承担着重要责任。
打开APP阅读更多精彩内容