回复调查问卷的开发者希望 ML 框架不仅可以教会他们如何使用 API,还能传授可以帮助他们将 ML 框架有效应用于解决自身问题的领域技巧。
明确支持修改的预制模型
可以访问规范的 ML 模型库是所有开发者们的共同愿望,一旦心愿达成,开发者便可修改现有模板,不必从头开始新建模板。
目前,预训练模型广泛存在于包括 TensorFlow.js 在内的众多 ML 平台。然而,当前这些模型并未向初学者提供明确的使用支持。例如,在我们的调查中,开发者反馈在他们将现有模型示例转换和修改为自己的用例时往往面临巨大困难。因此,对预制模型 (Pre-made models) 进行配置时,还应提供明确的 修改支持。
将 ML 最佳实践合成到实时提示中
开发者还希望框架能够提供 ML 最佳实践,即可以在设计或调试模型时给出实用提示和窍门。ML 专家可能会从多年的专门试验和错误中获得启发式方法和主要策略,因此在面临如“我应该首先尝试调整哪个参数?”的问题时,可能很快有答案,但非 ML 专家的开发者可能难以负担此类决策成本。为帮助缩小决策所有可能性,ML 框架应当可以将有关的最佳实践,直接在编程工作流中进行提示。目前,如 TensorBoard 和 tfjs-vis 这样的可视化工具可以查看模型内部发生了什么。
将这些工具与实时策略指针(例如是调整预训练模型,还是否从头开始创建模型)或诊断性检查(如在模型未收敛时“降低学习率”的实用提示)结合起来,可以帮助用户获得实用策略。这些提示可以充当支架,有助于解释 ML 所依赖的底层数学理论和术语,并帮助开发者理解与消化。
支持边操作边学习
最后,虽然 ML 框架不是传统的学习平台,但实际上,软件开发者将其视为可以边操作边学习的轻量级工具。
例如,一位调查受访者赞赏将概念理解与框架紧密整合,而不是将概念作为单独资源展示。他认为:“……可以即时编辑和运行的代码段演示,非常有助于实现概念的理解。” 另一位受访者解释道:“我更喜欢边做边学,因此我希望在 ML 框架中看到更多的教程和示例。” 有些开发者很难定期参加正式的在线课程,他们更希望通过动手操作来一点点学习:“由于生活中的种种琐事,我只能利用 5 到 15 分钟的碎片时间学习。”
鉴于这些边操作边学习的需求,ML 框架可能需要更明确地区分针对不同专业水平的一系列资源。尽管许多框架已经提供“hello world”教程,但为了正确设定期望,这些框架应该更精确地予以区分:基于特定于语法的 API 和概念性 ML 的入门教程。