拉布拉多训练工具

特征模型(features model)是人工智能深度学习的灵魂,其优劣程度决定了前端推理结果的成败,包括计算性能与精确度的综合考量,是整个人工智能应用的最关键环节,而提取特征的训练(或称为学习)过程,是创建该项人工智能应用的起点 。
深度学习的模型训练流程是固定的,但以下三个部分是最为耗费开发人员心力的阶段:
(1)选择合适的神经网络算法:
深度学习的发迹也才短短 10 年左右的光景,目前只能算是初步爆发的阶段,至今也有几十种综合指标都相当优异的神经网络结构,大部分的算法都还在持续进化的过程中,到目前为止尚未出现有绝对优势的神经网络 。
这种状况就造成了开发人员的抉择难题,因为各种算法都有不同的处理逻辑与侧重点,具备足够厚实的数学基础的人,才有机会深入分辨不同算法之间的优劣点,准入门槛不低 。
不过从实用性的角度来看,最简单的验证方法就是透过实际的执行,先挑选 2~3 种在性能与精准度都相对优异的神经网络,直接完成从模型训练到推理检测的流程 。
(2)选择执行训练与推理的框架:
这部分通常推荐选择具有雄厚实力的商业单位所维护的通用性框架,例如 Google 的 TensorFlow、FaceBook 的 PyTorch、微软的 MXNet 等等,不仅能确保对更多神经网络算法的支持,在生命周期方面也比较有保障 。
开发人员虽然不一定需要完全理解该神经网络的数学原理,但至少得要掌握网络结构之间的关系、节点内的计算式,以及输入与输出的格式 。
对于框架所支持的神经网络,开发人员可以用比较少的代码去实现模型训练与推理检测的工作,如果遇到框架所不支持的网络,就需要自行撰写代码去实现这个神经网络的完整计算,这是个不小的工程 。
(3)针对终端设备的参数优化:
所有模型的执行效果,都必须在最终推理设备上进行验证后才能确认 。
但是推理设备上的配置与性能并不一致,每个项目对性能与精确度的要求也不尽相同,因此这个调优的过程就必须反反复复的进行,如果某一方面未能达到标准的话,就得回到模型训练步骤去进行参数调整 。

拉布拉多训练工具

文章插图
如果经过各种参数调试之后,仍然无法使性能与精确度都满足要求,可能就需要回到第一步去更换神经网络种类,这样会连带影响所撰写的训练与推理的代码,几乎等于从零开始另一个项目的过程 。
以上三个部分只是整个深度学习应用中比较明显的问题,也是最主要耗费时间的阶段,通常来说都得花费数周到数月的时间去进行 。
针对这些繁琐的问题,英伟达于 2021 年推出的 TAO(Train、Adapt、Optimize) 工具套件,能够非常有效地解决以上的主要困扰,即便是不熟悉神经网络原理与算法的技术人员,也可以在数天内轻松地掌握模型训练工作 。
为了解决上述的主要问题,英伟达为 TAO 工具套件做了以下的处理,非常大幅度地减少开发过程的工作量:
(1)集成功能强大的机器学习框架:
TAO 并非英伟达自行重头开发的模型训练工具,而是紧密集成 TensorFlow 与 Pytorch 这两个业界龙头级框架,并且分别面向“视觉 AI”与“对话 AI”两大领域 。
这个战略思考点是非常明智的,因为人工智能领域的神经网络算法,仍处于高速迭代与翻新的阶段,维护与更新一套通用类深度学习框架,需要足够深厚的领域专业度,与极为庞大的人力与物力成本做支撑 。
这两个分别由 Google 与 Facebook 所维护的框架,不仅更新神经网络支持列表的速度最快,所提供的开发资源也相对充沛,包括所支持的神经网络结构与算法,这样能非常有效地降低开发复杂度 。