支付宝|软件工程师如何转行做人工智能?

支付宝|软件工程师如何转行做人工智能?

文章图片

支付宝|软件工程师如何转行做人工智能?

软件工程师角色的重要组成部分要求与时俱进的框架 , 标准和范例保持最新 。软件工程师努力不断学习 , 以便始终使用最佳工具来完成工作 。机器学习每天都在更多应用程序中立足 , 因此自然已经成为许多工程师想要掌握的话题 。
然而 , 机器学习比新框架更难掌握 。 要成为一名高效的实践者 , 你需要对该领域的理论有扎实的理解 , 对当前技术状况有广泛的了解 , 并具有以非确定性的方式构建问题的能力 。
【支付宝|软件工程师如何转行做人工智能?】你能在网上找到的许多指南只是简单地教你如何在一个精心策划的数据集上训练一个开箱即用的模型 , 以达到良好的准确性 , 然后就结束了 。 事实上 , 要想成为一名高效的机器学习工程师 , 更广泛的技能组合是必不可少的 。

过渡到应用人工智能之前 , 你需要获得的5大技能1 — 统计
为了理解机器学习 , 扎实的统计学基础知识是必不可少的 。 这需要理解以下几点:

  • 衡量模型成功的不同方法(精度、召回率、ROC曲线下面积等) 。 你选择的损失函数和评估度量如何使你的模型的输出产生偏差 。
  • 如何理解过拟合和欠拟合 , 以及偏差/方差的权衡 。
2 — 机器学习理论
当你训练一个神经网络时 , 会发生什么呢?是什么让某些任务可行而其他任务不可行?一个好的方法可能是 , 在深入研究理论之前 , 首先尝试通过图形和示例来理解机器学习 。
要理解的概念包括不同的损失函数是如何工作的 , 为什么反向传播是有用的 , 或者计算图是什么 。 深刻的理解对于构建功能模型以及与组织的其他部门有效地进行沟通都是至关重要的 。
另一项基本技能是阅读、理解和执行研究论文的能力 。 乍一看 , 这似乎是一项艰巨的任务 , 所以开始的一个好方法是查阅一篇已经附带了代码的论文 , 并尝试深入理解实现 。

3 — 数据整理
问任何一个数据科学家 , 他们都会告诉你他们90%的工作都是数据搜集 。 这对于应用AI来说同样重要 , 因为你的模型的成功与你的数据的质量(和数量)密切相关 。 数据工作有很多方面 , 可以分为以下几类:
  • 数据获取(查找良好的数据源 , 准确地衡量数据的质量和分类 , 获取和推断标签)
  • 数据预处理(缺少数据插补 , 特征工程 , 数据扩充 , 数据归一化 , 交叉验证拆分)
  • 数据后处理(使模型的输出可用 , 清除不可用数据 , 处理特殊情况和异常值)
4 — 调试/优化模型
调试无法收敛或不能给出合理结果的机器学习算法涉及到一个与调试代码完全不同的过程 。同样 , 找到正确的体系结构和超参数需要扎实的理论基础 , 而且还需要出色的基础架构工作才能测试出不同的配置 。 由于领域的发展速度 , 调试模型的方法也在不断发展 。
如果你决定训练一个更复杂的东西以在该基线上进行改进 , 请首先训练它以适合数据集的一个很小的子部分 。这样可以确保你的模型至少具有学习能力 。迭代模型 , 直到可以过度拟合5%的数据为止 。

5 — 软件工程
大量的机器学习应用将使你能够利用软件工程技能 , 有时会稍作改动 。这些技能包括:
  • 测试管道的各个方面(数据预处理和扩充 , 输入和输出清理 , 模型推断时间) 。
  • 以模块化和可重用的方式构建代码 , 以加快开发速度 。
  • 建立分布式基础架构以更有效地运行训练 , 超参数搜索或推理 。
上面的信息将帮助你解决实际的机器学习问题 。但是 , 应用AI领域的变化非常迅速 , 最好的学习方法是动手实践 , 并尝试建立端对端解决方案来解决实际问题 。


    推荐阅读